diff --git a/CMakeLists.txt b/CMakeLists.txt index 90162fe29..85c3d1b44 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,6 +50,7 @@ if(MSVC) set(CMAKE_STATIC_LINKER_FLAGS ${MSVC_LINKER_FLAGS}) endif() +set(CMAKE_POSITION_INDEPENDENT_CODE ON) set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${CMAKE_CURRENT_SOURCE_DIR}/cmake") include(GtsamMakeConfigFile) include(GNUInstallDirs) diff --git a/cmake/GtsamBuildTypes.cmake b/cmake/GtsamBuildTypes.cmake index 19314cd31..76c04a2f9 100644 --- a/cmake/GtsamBuildTypes.cmake +++ b/cmake/GtsamBuildTypes.cmake @@ -130,7 +130,6 @@ else() set(GTSAM_COMPILE_OPTIONS_PRIVATE_COMMON -Wall # Enable common warnings - -fPIC # ensure proper code generation for shared libraries $<$:-Wreturn-local-addr -Werror=return-local-addr> # Error: return local address $<$:-Wreturn-stack-address -Werror=return-stack-address> # Error: return local address $<$:-Wno-weak-template-vtables> # TODO(dellaert): don't know how to resolve diff --git a/gtsam/3rdparty/metis/libmetis/CMakeLists.txt b/gtsam/3rdparty/metis/libmetis/CMakeLists.txt index e0a178c5b..96ec59f64 100644 --- a/gtsam/3rdparty/metis/libmetis/CMakeLists.txt +++ b/gtsam/3rdparty/metis/libmetis/CMakeLists.txt @@ -3,7 +3,6 @@ include_directories(.) # Find sources. file(GLOB metis_sources *.c) # Build libmetis. -add_definitions(-fPIC) add_library(metis-gtsam ${METIS_LIBRARY_TYPE} ${GKlib_sources} ${metis_sources}) if(UNIX) target_link_libraries(metis-gtsam m)