scribus-9999-fpic.patch (7,530 bytes)
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
)
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
+
INCLUDE_DIRECTORIES( ${LCMS2_INCLUDE_DIR} )
SET(SCRIBUS_LCMS_IMPL_SOURCES
sclcms2colormgmtengineimpl.cpp
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
SET(2GEOM_VERSION 0.1.0)
-# 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 "${CMAKE_CXX_FLAGS} -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)
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
OPTION(2GEOM_BUILD_SHARED
"Build lib2geom and libtoy as shared libraries."
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}
${CMAKE_SOURCE_DIR}/scribus
)
+
SET(LIB_TYPE STATIC)
-IF (ARCH_X86_64 EQUAL 1)
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
-ENDIF (ARCH_X86_64 EQUAL 1)
+
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_FPIC}")
+
SET(WPG_SOURCES
WPG1Parser.cpp
WPG2Parser.cpp
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