--- /dev/null
+ Scribus/CMakeLists.txt | 15 +++++++++++++++
+ Scribus/scribus/colormgmt/CMakeLists.txt | 2 ++
+ Scribus/scribus/desaxe/CMakeLists.txt | 1 +
+ Scribus/scribus/fonts/CMakeLists.txt | 1 +
+ Scribus/scribus/styles/CMakeLists.txt | 2 ++
+ Scribus/scribus/text/CMakeLists.txt | 1 +
+ Scribus/scribus/third_party/lib2geom/CMakeLists.txt | 8 +-------
+ Scribus/scribus/third_party/pgf/CMakeLists.txt | 2 ++
+ Scribus/scribus/third_party/prc/CMakeLists.txt | 2 ++
+ Scribus/scribus/third_party/rtf-qt/CMakeLists.txt | 2 ++
+ Scribus/scribus/third_party/wpg/CMakeLists.txt | 7 ++++---
+ Scribus/scribus/third_party/zip/CMakeLists.txt | 2 ++
+ 12 files changed, 35 insertions(+), 10 deletions(-)
+
+diff --git a/Scribus/CMakeLists.txt b/Scribus/CMakeLists.txt
+index 8ab9525..f2ebf64 100644
+--- a/Scribus/CMakeLists.txt
++++ b/Scribus/CMakeLists.txt
+@@ -131,6 +131,21 @@ IF (_machine_sparc64)
+ SET(ARCH64BIT 1)
+ ENDIF (_machine_sparc64)
+
++STRING(REGEX MATCH "(hppa*)" _machine_hppa "${MACHINE}")
++IF (_machine_hppa)
++ MESSAGE(STATUS "Found target Hppa")
++ SET(ARCH_HPPA 1)
++ENDIF (_machine_hppa)
++
++
++# We need to pass -fPIC to lib2geom on amd64, mips, mipsel, and hppa. See:
++# http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3 and
++# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559133
++
++IF (ARCH_X86_64 EQUAL 1 OR ARCH_HPPA EQUAL 1 OR ARCH_MIPS EQUAL 1 OR ARCH_MIPS_64 EQUAL 1 OR ARCH_PPC_64 EQUAL 1)
++ SET(CMAKE_CXX_FLAGS_FPIC "-fPIC")
++ENDIF (ARCH_X86_64 EQUAL 1 OR ARCH_HPPA EQUAL 1 OR ARCH_MIPS EQUAL 1 OR ARCH_MIPS_64 EQUAL 1 OR ARCH_PPC_64 EQUAL 1)
++
+ ## Do our Apple OSX version setup
+ IF (APPLE AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND (ARCH_X86 EQUAL 1 OR ARCH_X86_64 EQUAL 1))
+ STRING(REGEX REPLACE ".*-darwin([0-9]+).*" "\\1" _apple_ver "${MACHINE}")
+diff --git a/Scribus/scribus/colormgmt/CMakeLists.txt b/Scribus/scribus/colormgmt/CMakeLists.txt
+index 7298a28..87c4f5e 100644
+--- a/Scribus/scribus/colormgmt/CMakeLists.txt
++++ b/Scribus/scribus/colormgmt/CMakeLists.txt
+@@ -3,6 +3,8 @@ ${CMAKE_SOURCE_DIR}
+ ${CMAKE_SOURCE_DIR}/scribus\r
+ )\r
+ \r
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")\r
++\r
+ INCLUDE_DIRECTORIES( ${LCMS2_INCLUDE_DIR} )\r
+ SET(SCRIBUS_LCMS_IMPL_SOURCES\r
+ sclcms2colormgmtengineimpl.cpp\r
+diff --git a/Scribus/scribus/desaxe/CMakeLists.txt b/Scribus/scribus/desaxe/CMakeLists.txt
+index 0098028..85e76b6 100644
+--- a/Scribus/scribus/desaxe/CMakeLists.txt
++++ b/Scribus/scribus/desaxe/CMakeLists.txt
+@@ -4,6 +4,7 @@ ${CMAKE_SOURCE_DIR}/scribus
+ ${FREETYPE_INCLUDE_DIRS}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
+
+ SET(SCRIBUS_DESAXE_LIB_SOURCES
+ saxXML.cpp
+diff --git a/Scribus/scribus/fonts/CMakeLists.txt b/Scribus/scribus/fonts/CMakeLists.txt
+index a8f0e8d..beade2e 100644
+--- a/Scribus/scribus/fonts/CMakeLists.txt
++++ b/Scribus/scribus/fonts/CMakeLists.txt
+@@ -4,6 +4,7 @@ ${CMAKE_SOURCE_DIR}/scribus
+ ${FREETYPE_INCLUDE_DIRS}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
+
+ SET(SCRIBUS_FONTS_LIB_SOURCES
+ scface.cpp
+diff --git a/Scribus/scribus/styles/CMakeLists.txt b/Scribus/scribus/styles/CMakeLists.txt
+index 6e0cf0a..2839689 100644
+--- a/Scribus/scribus/styles/CMakeLists.txt
++++ b/Scribus/scribus/styles/CMakeLists.txt
+@@ -4,6 +4,8 @@ INCLUDE_DIRECTORIES(
+ ${FREETYPE_INCLUDE_DIRS}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
++
+ SET(SCRIBUS_STYLES_MOC_CLASSES
+ )
+
+diff --git a/Scribus/scribus/text/CMakeLists.txt b/Scribus/scribus/text/CMakeLists.txt
+index 1cd112f..4f658e3 100644
+--- a/Scribus/scribus/text/CMakeLists.txt
++++ b/Scribus/scribus/text/CMakeLists.txt
+@@ -4,6 +4,7 @@ INCLUDE_DIRECTORIES(
+ ${FREETYPE_INCLUDE_DIRS}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
+
+ SET(SCRIBUS_TEXT_MOC_CLASSES
+ storytext.h
+diff --git a/Scribus/scribus/third_party/lib2geom/CMakeLists.txt b/Scribus/scribus/third_party/lib2geom/CMakeLists.txt
+index 6187d96..3106f6e 100755
+--- a/Scribus/scribus/third_party/lib2geom/CMakeLists.txt
++++ b/Scribus/scribus/third_party/lib2geom/CMakeLists.txt
+@@ -5,13 +5,7 @@ ${CMAKE_SOURCE_DIR}/scribus
+ \r
+ SET(2GEOM_VERSION 0.1.0)\r
+ \r
+-# We need to pass -fPIC to lib2geom on amd64, mips, mipsel, and hppa. See:\r
+-# http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3 and\r
+-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559133\r
+-\r
+-IF (ARCH_X86_64 EQUAL 1 OR ARCH_HPPA EQUAL 1 OR ARCH_MIPS EQUAL 1 OR ARCH_MIPS_64 EQUAL 1 OR ARCH_PPC_64 EQUAL 1)\r
+- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")\r
+-ENDIF (ARCH_X86_64 EQUAL 1 OR ARCH_HPPA EQUAL 1 OR ARCH_MIPS EQUAL 1 OR ARCH_MIPS_64 EQUAL 1 OR ARCH_PPC_64 EQUAL 1)\r
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")\r
+ \r
+ OPTION(2GEOM_BUILD_SHARED\r
+ "Build lib2geom and libtoy as shared libraries."\r
+diff --git a/Scribus/scribus/third_party/pgf/CMakeLists.txt b/Scribus/scribus/third_party/pgf/CMakeLists.txt
+index f84b3d4..d3b1db6 100644
+--- a/Scribus/scribus/third_party/pgf/CMakeLists.txt
++++ b/Scribus/scribus/third_party/pgf/CMakeLists.txt
+@@ -3,6 +3,8 @@ ${CMAKE_SOURCE_DIR}
+ ${CMAKE_SOURCE_DIR}/scribus
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
++
+ SET(SCRIBUS_PGF_LIB_SOURCES
+ Decoder.cpp
+ Encoder.cpp
+diff --git a/Scribus/scribus/third_party/prc/CMakeLists.txt b/Scribus/scribus/third_party/prc/CMakeLists.txt
+index 5f7c2c6..1da7177 100644
+--- a/Scribus/scribus/third_party/prc/CMakeLists.txt
++++ b/Scribus/scribus/third_party/prc/CMakeLists.txt
+@@ -5,6 +5,8 @@ ${OPENGL_INCLUDE_DIR}
+ ${FREETYPE_INCLUDE_DIRS}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
++
+ SET(SCRIBUS_PRC_LIB_SOURCES
+ oPRCFile.cc
+ PRCbitStream.cc
+diff --git a/Scribus/scribus/third_party/rtf-qt/CMakeLists.txt b/Scribus/scribus/third_party/rtf-qt/CMakeLists.txt
+index 4124cef..0ef7560 100644
+--- a/Scribus/scribus/third_party/rtf-qt/CMakeLists.txt
++++ b/Scribus/scribus/third_party/rtf-qt/CMakeLists.txt
+@@ -45,6 +45,8 @@ SET(SCRIBUS_RTF_LIB_MOC_CLASSES
+
+ QT5_WRAP_CPP(SCRIBUS_RTF_LIB_MOC_SOURCES ${SCRIBUS_RTF_LIB_MOC_CLASSES})
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
++
+ SET(SCRIBUS_RTF_LIB "scribus_rtf_lib")
+ ADD_LIBRARY(${SCRIBUS_RTF_LIB} STATIC ${SCRIBUS_RTF_LIB_SOURCES} ${SCRIBUS_RTF_LIB_MOC_SOURCES})
+ SET_TARGET_PROPERTIES(${SCRIBUS_ZIB_LIB}
+diff --git a/Scribus/scribus/third_party/wpg/CMakeLists.txt b/Scribus/scribus/third_party/wpg/CMakeLists.txt
+index ff31e9f..fbc5cd4 100644
+--- a/Scribus/scribus/third_party/wpg/CMakeLists.txt
++++ b/Scribus/scribus/third_party/wpg/CMakeLists.txt
+@@ -2,10 +2,11 @@ INCLUDE_DIRECTORIES(
+ ${CMAKE_SOURCE_DIR}\r
+ ${CMAKE_SOURCE_DIR}/scribus\r
+ )\r
++\r
+ SET(LIB_TYPE STATIC)\r
+-IF (ARCH_X86_64 EQUAL 1)\r
+- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")\r
+-ENDIF (ARCH_X86_64 EQUAL 1)\r
++\r
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")\r
++\r
+ SET(WPG_SOURCES\r
+ WPG1Parser.cpp\r
+ WPG2Parser.cpp\r
+diff --git a/Scribus/scribus/third_party/zip/CMakeLists.txt b/Scribus/scribus/third_party/zip/CMakeLists.txt
+index edf9683..f7676ab 100644
+--- a/Scribus/scribus/third_party/zip/CMakeLists.txt
++++ b/Scribus/scribus/third_party/zip/CMakeLists.txt
+@@ -4,6 +4,8 @@ ${CMAKE_SOURCE_DIR}/scribus
+ ${ZLIB_INCLUDE_DIR}
+ )
+
++SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
++
+ SET(SCRIBUS_ZIP_LIB_SOURCES
+ unzip.cpp
+ zip.cpp