summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2020-06-11 17:11:53 +0200
committerSlávek Banko <slavek.banko@axis.cz>2020-06-12 13:34:52 +0200
commitd504c98bb7342c38764c83f3f3c0c31eb6834f18 (patch)
tree8ce71496e37132793a7547701d99c1f999d19ffc
parent2a847be412bd1dc66e53ea4652cc42f24a412d0f (diff)
downloadtde-cmake-d504c98b.tar.gz
tde-cmake-d504c98b.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.cmake18
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" )