From 31e13ec946e62db8fab80d911be0ad1728a16adb Mon Sep 17 00:00:00 2001 From: Martin Hierholzer <martin.hierholzer@desy.de> Date: Mon, 12 Dec 2016 09:40:58 +0100 Subject: [PATCH] Fixed the confusing and inconsistently used names *_LINK_FLAGS and *_LINKER_FLAGS by always setting and getting both variables --- cmake/FindPROJECT_NAME.cmake.in.in | 3 ++- cmake/Modules/FindDOOCS.cmake | 3 ++- cmake/add_dependency.cmake | 3 ++- cmake/create_cmake_config_files.cmake | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/cmake/FindPROJECT_NAME.cmake.in.in b/cmake/FindPROJECT_NAME.cmake.in.in index 2190bb2..2102790 100644 --- a/cmake/FindPROJECT_NAME.cmake.in.in +++ b/cmake/FindPROJECT_NAME.cmake.in.in @@ -41,7 +41,8 @@ set(@PROJECT_NAME@_INCLUDE_DIRS @@PROJECT_NAME@_INCLUDE_DIRS@) set(@PROJECT_NAME@_LIBRARY_DIRS @@PROJECT_NAME@_LIBRARY_DIRS@) set(@PROJECT_NAME@_LIBRARIES ${@PROJECT_NAME@_LIBRARY} @@PROJECT_NAME@_LIBRARIES@) set(@PROJECT_NAME@_CXX_FLAGS "@@PROJECT_NAME@_CXX_FLAGS@") -set(@PROJECT_NAME@_LINKER_FLAGS "@@PROJECT_NAME@_LINKER_FLAGS@") +set(@PROJECT_NAME@_LINKER_FLAGS "@@PROJECT_NAME@_LINKER_FLAGS@ @@PROJECT_NAME@_LINK_FLAGS@") +set(@PROJECT_NAME@_LINK_FLAGS "@@PROJECT_NAME@_LINKER_FLAGS@ @@PROJECT_NAME@_LINK_FLAGS@") set(@PROJECT_NAME@_PREFIX "@CMAKE_INSTALL_PREFIX@") # Use a macro provided by CMake to check if all the listed arguments are valid and set @PROJECT_NAME@_FOUND accordingly. diff --git a/cmake/Modules/FindDOOCS.cmake b/cmake/Modules/FindDOOCS.cmake index ee08754..50510f6 100644 --- a/cmake/Modules/FindDOOCS.cmake +++ b/cmake/Modules/FindDOOCS.cmake @@ -65,7 +65,8 @@ set(DOOCS_INCLUDE_DIRS ${DOOCS_DIR}/include) set(DOOCS_LIBRARY_DIRS ${DOOCS_DIR}/) set(DOOCS_CXX_FLAGS "-Wall -fPIC -D_REENTRANT -DLINUX -D__LINUX__ -DDMSG -DTINE_EXPORT=\" \"") -set(DOOCS_LINK_FLAGS "-Wl,--no-as-needed") +set(DOOCS_LINKER_FLAGS "-Wl,--no-as-needed") +set(DOOCS_LINK_FLAGS "${DOOCS_LINKER_FLAGS}") # extract DOOCS version from librar so symlink. Note: This is platform dependent and only works # if DOOCS was installed from the Debian pagackes. Find a better version detection scheme! diff --git a/cmake/add_dependency.cmake b/cmake/add_dependency.cmake index 5c3b4e6..fcbecdf 100644 --- a/cmake/add_dependency.cmake +++ b/cmake/add_dependency.cmake @@ -38,7 +38,8 @@ FUNCTION(add_dependency dependency_project_name required_version) link_directories(${${dependency_project_name}_LIBRARY_DIR}) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${${dependency_project_name}_CXX_FLAGS}" PARENT_SCOPE) SET(${dependency_project_name}_LIBRARIES ${${dependency_project_name}_LIBRARIES} PARENT_SCOPE) - SET(${dependency_project_name}_LINK_FLAGS ${${dependency_project_name}_LINK_FLAGS} PARENT_SCOPE) + SET(${dependency_project_name}_LINKER_FLAGS "${${dependency_project_name}_LINKER_FLAGS} ${${dependency_project_name}_LINK_FLAGS}" PARENT_SCOPE) + SET(${dependency_project_name}_LINK_FLAGS "${${dependency_project_name}_LINKER_FLAGS} ${${dependency_project_name}_LINK_FLAGS}" PARENT_SCOPE) SET(${dependency_project_name}_CXX_FLAGS ${${dependency_project_name}_CXX_FLAGS} PARENT_SCOPE) SET(${dependency_project_name}_FOUND ${${dependency_project_name}_FOUND} PARENT_SCOPE) diff --git a/cmake/create_cmake_config_files.cmake b/cmake/create_cmake_config_files.cmake index 86b6377..deda9ac 100644 --- a/cmake/create_cmake_config_files.cmake +++ b/cmake/create_cmake_config_files.cmake @@ -35,7 +35,7 @@ foreach(INCLUDE_DIR ${LIST}) set(${PROJECT_NAME}_CXX_FLAGS_MAKEFILE "${${PROJECT_NAME}_CXX_FLAGS_MAKEFILE} -I${INCLUDE_DIR}") endforeach() -set(${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE "${${PROJECT_NAME}_LINKER_FLAGS}") +set(${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE "${${PROJECT_NAME}_LINKER_FLAGS} ${${PROJECT_NAME}_LINK_FLAGS}") string(REPLACE " " ";" LIST "${${PROJECT_NAME}_LIBRARY_DIRS}") foreach(LIBRARY_DIR ${LIST}) -- GitLab