summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreroen2012-10-24 12:20:26 +0200
committereroen2012-10-24 12:43:40 +0200
commit3ecda6dbba4f8f8de89e7e1efd8ee40d00e5bb87 (patch)
treee285915882a90eab52db0ac9128bc1a7c3126a7c
parentd9cd427121d0edd2fb4f1983fe30ac629a03c2f7 (diff)
downloaddfhack-to-upstream.tar.gz
dfhack-to-upstream.tar.bz2
dfhack-to-upstream.tar.xz
Compile static dependency libraries as PIC.to-upstream
Otherwise, we get position dependent textrels in the shared libraries that link against them, which is slightly bad for performance (and very bad for portability). Cross-platform support for handling this was added in cmake 2.8.9.
-rw-r--r--CMakeLists.txt2
-rw-r--r--depends/md5/CMakeLists.txt3
-rw-r--r--depends/tinyxml/CMakeLists.txt3
-rw-r--r--depends/tthread/CMakeLists.txt3
4 files changed, 7 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 14436dcf..31f63cd3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ else(CMAKE_CONFIGURATION_TYPES)
endif(CMAKE_CONFIGURATION_TYPES)
## some generic CMake magic
-cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
+cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR)
project(dfhack)
if(MSVC)
diff --git a/depends/md5/CMakeLists.txt b/depends/md5/CMakeLists.txt
index 69e0cf0b..df14e3c5 100644
--- a/depends/md5/CMakeLists.txt
+++ b/depends/md5/CMakeLists.txt
@@ -1,3 +1,4 @@
project(dfhack-md5)
ADD_LIBRARY(dfhack-md5 STATIC EXCLUDE_FROM_ALL md5.cpp md5wrapper.cpp)
-IDE_FOLDER(dfhack-md5 "Depends") \ No newline at end of file
+set_target_properties(dfhack-md5 PROPERTIES POSITION_INDEPENDENT_CODE True)
+IDE_FOLDER(dfhack-md5 "Depends")
diff --git a/depends/tinyxml/CMakeLists.txt b/depends/tinyxml/CMakeLists.txt
index 7d924924..f97f4bc0 100644
--- a/depends/tinyxml/CMakeLists.txt
+++ b/depends/tinyxml/CMakeLists.txt
@@ -1,3 +1,4 @@
project(dfhack-tinyxml)
ADD_LIBRARY(dfhack-tinyxml STATIC EXCLUDE_FROM_ALL tinystr.cpp tinyxml.cpp tinyxmlerror.cpp tinyxmlparser.cpp)
-IDE_FOLDER(dfhack-tinyxml "Depends") \ No newline at end of file
+set_target_properties(dfhack-tinyxml PROPERTIES POSITION_INDEPENDENT_CODE True)
+IDE_FOLDER(dfhack-tinyxml "Depends")
diff --git a/depends/tthread/CMakeLists.txt b/depends/tthread/CMakeLists.txt
index d34c19c8..2757a6ed 100644
--- a/depends/tthread/CMakeLists.txt
+++ b/depends/tthread/CMakeLists.txt
@@ -1,6 +1,7 @@
PROJECT(dfhack-tinythread)
ADD_LIBRARY(dfhack-tinythread STATIC EXCLUDE_FROM_ALL tinythread.cpp)
+set_target_properties(dfhack-tinythread PROPERTIES POSITION_INDEPENDENT_CODE True)
if(UNIX)
target_link_libraries(dfhack-tinythread pthread)
endif()
-IDE_FOLDER(dfhack-tinythread "Depends") \ No newline at end of file
+IDE_FOLDER(dfhack-tinythread "Depends")