diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/bin_cct.cmake | 2 | ||||
| -rw-r--r-- | src/bin_cs2cs.cmake | 2 | ||||
| -rw-r--r-- | src/bin_geod.cmake | 3 | ||||
| -rw-r--r-- | src/bin_geodtest.cmake | 5 | ||||
| -rw-r--r-- | src/bin_gie.cmake | 2 | ||||
| -rw-r--r-- | src/bin_proj.cmake | 3 | ||||
| -rw-r--r-- | src/bin_projinfo.cmake | 3 | ||||
| -rw-r--r-- | src/lib_proj.cmake | 18 |
8 files changed, 26 insertions, 12 deletions
diff --git a/src/bin_cct.cmake b/src/bin_cct.cmake index 9c4b0804..d2d61cf5 100644 --- a/src/bin_cct.cmake +++ b/src/bin_cct.cmake @@ -9,6 +9,8 @@ source_group("Source Files\\Bin" FILES ${CCT_SRC}) add_executable(cct ${CCT_SRC} ${CCT_INCLUDE}) target_link_libraries(cct ${PROJ_LIBRARIES}) +target_compile_options(cct PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS cct RUNTIME DESTINATION ${BINDIR}) diff --git a/src/bin_cs2cs.cmake b/src/bin_cs2cs.cmake index 9b2f2f4f..7ee26673 100644 --- a/src/bin_cs2cs.cmake +++ b/src/bin_cs2cs.cmake @@ -7,6 +7,8 @@ source_group("Source Files\\Bin" FILES ${CS2CS_SRC}) add_executable(cs2cs ${CS2CS_SRC} ${CS2CS_INCLUDE}) target_link_libraries(cs2cs ${PROJ_LIBRARIES}) +target_compile_options(cs2cs PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS cs2cs RUNTIME DESTINATION ${BINDIR}) diff --git a/src/bin_geod.cmake b/src/bin_geod.cmake index 7221958a..84d2cd5b 100644 --- a/src/bin_geod.cmake +++ b/src/bin_geod.cmake @@ -8,9 +8,10 @@ set(GEOD_INCLUDE apps/geod_interface.h) source_group("Source Files\\Bin" FILES ${GEOD_SRC} ${GEOD_INCLUDE}) -#Executable add_executable(geod ${GEOD_SRC} ${GEOD_INCLUDE}) target_link_libraries(geod ${PROJ_LIBRARIES}) +target_compile_options(geod PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS geod RUNTIME DESTINATION ${BINDIR}) diff --git a/src/bin_geodtest.cmake b/src/bin_geodtest.cmake index 4cc98197..c911e95f 100644 --- a/src/bin_geodtest.cmake +++ b/src/bin_geodtest.cmake @@ -3,12 +3,11 @@ set(GEODTEST_INCLUDE) source_group("Source Files\\Bin" FILES ${GEODTEST_SRC} ${GEODTEST_INCLUDE}) -#Executable add_executable(geodtest ${GEODTEST_SRC} ${GEODTEST_INCLUDE}) target_link_libraries(geodtest ${PROJ_LIBRARIES}) -# Do not install +target_compile_options(geodtest PRIVATE ${PROJ_CXX_WARN_FLAGS}) -# Instead run as a test +# Do not install, instead run as a test add_test(NAME geodesic-test COMMAND geodtest) if(MSVC AND BUILD_LIBPROJ_SHARED) diff --git a/src/bin_gie.cmake b/src/bin_gie.cmake index a96c4c1c..49c57483 100644 --- a/src/bin_gie.cmake +++ b/src/bin_gie.cmake @@ -9,6 +9,8 @@ source_group("Source Files\\Bin" FILES ${GIE_SRC}) add_executable(gie ${GIE_SRC} ${GIE_INCLUDE}) target_link_libraries(gie ${PROJ_LIBRARIES}) +target_compile_options(gie PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS gie RUNTIME DESTINATION ${BINDIR}) diff --git a/src/bin_proj.cmake b/src/bin_proj.cmake index c55ccfda..b9ae03e5 100644 --- a/src/bin_proj.cmake +++ b/src/bin_proj.cmake @@ -5,12 +5,13 @@ set(PROJ_SRC source_group("Source Files\\Bin" FILES ${PROJ_SRC}) -#Executable add_executable(binproj ${PROJ_SRC}) set_target_properties(binproj PROPERTIES OUTPUT_NAME proj) target_link_libraries(binproj ${PROJ_LIBRARIES}) +target_compile_options(binproj PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS binproj RUNTIME DESTINATION ${BINDIR}) diff --git a/src/bin_projinfo.cmake b/src/bin_projinfo.cmake index 0691d739..c2447262 100644 --- a/src/bin_projinfo.cmake +++ b/src/bin_projinfo.cmake @@ -2,12 +2,13 @@ set(PROJINFO_SRC apps/projinfo.cpp) source_group("Source Files\\Bin" FILES ${PROJINFO_SRC}) -#Executable add_executable(binprojinfo ${PROJINFO_SRC}) set_target_properties(binprojinfo PROPERTIES OUTPUT_NAME projinfo) target_link_libraries(binprojinfo ${PROJ_LIBRARIES}) +target_compile_options(binprojinfo PRIVATE ${PROJ_CXX_WARN_FLAGS}) + install(TARGETS binprojinfo RUNTIME DESTINATION ${BINDIR}) diff --git a/src/lib_proj.cmake b/src/lib_proj.cmake index 38bc05d8..635992e4 100644 --- a/src/lib_proj.cmake +++ b/src/lib_proj.cmake @@ -42,15 +42,9 @@ if(ENABLE_LTO) set(CMAKE_REQUIRED_FLAGS "-Wl,-flto") check_cxx_source_compiles("int main(){ return 0; }" COMPILER_SUPPORTS_FLTO_FLAG) - if(COMPILER_SUPPORTS_FLTO_FLAG) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto") - endif() else() include(CheckCXXCompilerFlag) check_cxx_compiler_flag("-flto" COMPILER_SUPPORTS_FLTO_FLAG) - if(COMPILER_SUPPORTS_FLTO_FLAG) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto") - endif() endif() endif() @@ -351,6 +345,18 @@ add_library( ${ALL_LIBPROJ_HEADERS} ${PROJ_RESOURCES} ) +target_compile_options(${PROJ_CORE_TARGET} + PRIVATE $<$<COMPILE_LANGUAGE:C>:${PROJ_C_WARN_FLAGS}> + PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${PROJ_CXX_WARN_FLAGS}> +) + +if(COMPILER_SUPPORTS_FLTO_FLAG) + # See https://gitlab.kitware.com/cmake/cmake/issues/15245 + # CMake v3.9: + # set_property(TARGET ${PROJ_CORE_TARGET} + # PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) + target_compile_options(${PROJ_CORE_TARGET} PRIVATE -flto) +endif() if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) target_include_directories(${PROJ_CORE_TARGET} INTERFACE |
