diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2020-06-11 17:11:53 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2020-06-12 13:34:52 +0200 |
commit | d504c98bb7342c38764c83f3f3c0c31eb6834f18 (patch) | |
tree | 8ce71496e37132793a7547701d99c1f999d19ffc | |
parent | 2a847be412bd1dc66e53ea4652cc42f24a412d0f (diff) | |
download | tde-cmake-d504c98bb7342c38764c83f3f3c0c31eb6834f18.tar.gz tde-cmake-d504c98bb7342c38764c83f3f3c0c31eb6834f18.zip |
tde_add_library: Add the ability to link libraries as private.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r-- | modules/TDEMacros.cmake | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake index e45de66..7f5a30f 100644 --- a/modules/TDEMacros.cmake +++ b/modules/TDEMacros.cmake @@ -787,6 +787,7 @@ macro( tde_add_library _arg_target ) unset( _destination ) unset( _embed ) unset( _link ) + unset( _link_private ) unset( _dependencies ) unset( _storage ) unset( _exclude_from_all ) @@ -881,6 +882,12 @@ macro( tde_add_library _arg_target ) set( _storage "_link" ) endif( "+${_arg}" STREQUAL "+LINK" ) + # found directive "LINK_PRIVATE" + if( "+${_arg}" STREQUAL "+LINK_PRIVATE" ) + set( _skip_store 1 ) + set( _storage "_link_private" ) + endif( "+${_arg}" STREQUAL "+LINK_PRIVATE" ) + # found directive "DEPENDENCIES" if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) set( _skip_store 1 ) @@ -1044,6 +1051,17 @@ macro( tde_add_library _arg_target ) endif( ) endif( _embed ) + # set private linked libraries + if( _link_private ) + if( NOT ${CMAKE_VERSION} VERSION_LESS "2.8.12" ) + if( _link ) + list( INSERT _link 0 "PUBLIC" ) + endif() + list( APPEND _link "PRIVATE" ) + endif() + list( APPEND _link ${_link_private} ) + endif( _link_private ) + # set link libraries if( _link ) if( _embed AND ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) |