diff options
author | Modestas Vainius <modax@debian.org> | 2011-05-25 18:15:13 +0300 |
---|---|---|
committer | Modestas Vainius <modax@debian.org> | 2011-05-25 22:37:49 +0300 |
commit | 68df2c172b738952b4df6e6b47893c73ec9d503e (patch) | |
tree | 8963ee75a3c33862a87a153ff38ee45096683052 | |
parent | ff44cb7ba7f13559af90fd09ca20d8dc5f58566d (diff) | |
download | pkg-kde-tools-68df2c172b738952b4df6e6b47893c73ec9d503e.tar.gz |
Fix a problem with target_link_directories().
target_link_libraries() can't be used outside a directory the target is defined
in. Use LINK_FLAGS target property instead.
-rw-r--r-- | dlrestrictions/DLRestrictionsConfig.cmake | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/dlrestrictions/DLRestrictionsConfig.cmake b/dlrestrictions/DLRestrictionsConfig.cmake index 87bd2f2..24a1c3e 100644 --- a/dlrestrictions/DLRestrictionsConfig.cmake +++ b/dlrestrictions/DLRestrictionsConfig.cmake @@ -34,9 +34,14 @@ function(DLRESTRICTIONS_PROCESS_TARGETS) if (${dlr_target_type} MATCHES "^(SHARED|MODULE)_LIBRARY$") set_property(TARGET ${dlr_target} PROPERTY COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}" APPEND) endif (${dlr_target_type} MATCHES "^(SHARED|MODULE)_LIBRARY$") + add_dependencies(${target} ${dlr_target}) set_property(TARGET ${dlr_target} PROPERTY EchoString "Adding DLRestrictions (=${dlr_expression}) for ${target}") + get_property(dlr_target_location TARGET ${dlr_target} PROPERTY LOCATION) + get_property(target_link_flags TARGET ${target} PROPERTY LINK_FLAGS) # FIXME: not portable - target_link_libraries(${target} "-Wl,--whole-archive" ${dlr_target} "-Wl,--no-whole-archive") + # NOTE: target_link_libraries() can't be used outside a directory the target is defined in + set_property(TARGET ${target} PROPERTY LINK_FLAGS + "${target_link_flags} -Wl,--whole-archive '${dlr_target_location}' -Wl,--no-whole-archive") endif (dlr_expression) endforeach(target ${ARGN}) endfunction(DLRESTRICTIONS_PROCESS_TARGETS) |