2016-04-16 00:50:16 +02:00
@ P A C K A G E _ I N I T @
2016-08-29 15:35:48 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_HAS_SHARED_LIB "@BUILD_SHARED_LIBS@" )
2016-09-29 20:28:02 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_SHARED_LIB "@TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@" )
2016-08-29 15:35:48 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_SHARED_LIB_COMPILE_DEFINITIONS @META_SHARED_LIB_COMPILE_DEFINITIONS@ )
set ( @META_PROJECT_VARNAME_UPPER@_HAS_STATIC_LIB "@BUILD_STATIC_LIBS@" )
2016-09-29 20:28:02 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_STATIC_LIB "@TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@.a" )
2016-08-29 15:35:48 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_STATIC_LIB_DEPENDS @META_STATIC_LIB_DEPENDS@ )
set ( @META_PROJECT_VARNAME_UPPER@_STATIC_LIB_COMPILE_DEFINITIONS @META_STATIC_LIB_COMPILE_DEFINITIONS@ )
set ( @META_PROJECT_VARNAME_UPPER@_INCLUDE_DIRS "@PACKAGE_HEADER_INSTALL_DESTINATION@" )
set ( @META_PROJECT_VARNAME_UPPER@_BIN_DIR "@PACKAGE_BIN_INSTALL_DESTINATION@" )
set ( @META_PROJECT_VARNAME_UPPER@_LIB_DIR "@PACKAGE_LIB_INSTALL_DESTINATION@" )
set ( @META_PROJECT_VARNAME_UPPER@_MODULE_DIRS "@PACKAGE_CMAKE_MODULE_INSTALL_DESTINATION@" )
set ( @META_PROJECT_VARNAME_UPPER@_CONFIG_DIRS "@PACKAGE_CMAKE_CONFIG_INSTALL_DESTINATION@" )
2016-04-16 00:50:16 +02:00
2016-08-29 15:35:48 +02:00
if ( @META_PROJECT_VARNAME_UPPER@_HAS_SHARED_LIB )
set ( @META_PROJECT_VARNAME_UPPER@_LIB "${@META_PROJECT_VARNAME_UPPER@_SHARED_LIB}" )
2016-08-19 16:13:41 +02:00
else ( )
2016-08-29 15:35:48 +02:00
set ( @META_PROJECT_VARNAME_UPPER@_LIB "${@META_PROJECT_VARNAME_UPPER@_STATIC_LIB}" )
2016-08-19 16:13:41 +02:00
endif ( )
2016-09-29 20:28:02 +02:00
macro ( use_@META_PROJECT_VARNAME@ )
2016-08-29 15:35:48 +02:00
include_directories ( BEFORE SYSTEM ${ @META_PROJECT_VARNAME_UPPER@_INCLUDE_DIRS } )
link_directories ( ${ @META_PROJECT_VARNAME_UPPER@_LIB_DIR } )
2016-07-22 01:35:32 +02:00
# add library to list of libraries to link against when building dynamic libraries or applications
2016-08-29 15:35:48 +02:00
if ( @META_PROJECT_VARNAME_UPPER@_HAS_STATIC_LIB AND ( ( NOT ARGV0 AND ( ( STATIC_LINKAGE AND "${META_PROJECT_TYPE}" STREQUAL "application" ) OR ( STATIC_LIBRARY_LINKAGE AND ( "${META_PROJECT_TYPE}" STREQUAL "" OR "${META_PROJECT_TYPE}" STREQUAL "library" ) ) ) ) OR ( "${ARGV0}" STREQUAL "STATIC" ) OR ( NOT ARGV0 AND NOT @META_PROJECT_VARNAME_UPPER@_HAS_SHARED_LIB ) ) )
list ( APPEND LIBRARIES ${ @META_PROJECT_VARNAME_UPPER@_STATIC_LIB } ${ @META_PROJECT_VARNAME_UPPER@_STATIC_LIB_DEPENDS } )
2016-09-29 20:28:02 +02:00
message ( STATUS "Linking ${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} statically against @TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@ (${@META_PROJECT_VARNAME_UPPER@_STATIC_LIB} ${@META_PROJECT_VARNAME_UPPER@_STATIC_LIB_DEPENDS})." )
2016-08-29 15:35:48 +02:00
list ( APPEND ADDITIONAL_STATIC_COMPILE_DEFINITIONS ${ @META_PROJECT_VARNAME_UPPER@_STATIC_LIB_COMPILE_DEFINITIONS } )
elseif ( @META_PROJECT_VARNAME_UPPER@_HAS_SHARED_LIB AND ( NOT ARGV0 OR ( "${ARGV0}" STREQUAL "SHARED" ) ) )
list ( APPEND LIBRARIES ${ @META_PROJECT_VARNAME_UPPER@_SHARED_LIB } )
2016-09-29 20:28:02 +02:00
message ( STATUS "Linking ${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} dynamically against @TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@ (${@META_PROJECT_VARNAME_UPPER@_SHARED_LIB})." )
2016-08-29 15:35:48 +02:00
list ( APPEND ADDITIONAL_SHARED_COMPILE_DEFINITIONS ${ @META_PROJECT_VARNAME_UPPER@_SHARED_LIB_COMPILE_DEFINITIONS } )
2016-08-19 16:13:41 +02:00
elseif ( ARGV0 )
2016-09-29 20:28:02 +02:00
message ( FATAL_ERROR "Can not link ${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} against @TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@ with the specified linkage ${ARGV0}." )
2016-07-22 01:35:32 +02:00
else ( )
2016-09-29 20:28:02 +02:00
message ( FATAL_ERROR "Can not link ${TARGET_PREFIX}${META_PROJECT_NAME}${TARGET_SUFFIX} against @TARGET_PREFIX@@META_PROJECT_NAME@@TARGET_SUFFIX@." )
2016-07-22 01:35:32 +02:00
endif ( )
2016-07-27 18:16:51 +02:00
# add library (including dependencies) to list of libraries to be provided as transitive dependencies when building static libraries
2016-08-29 15:35:48 +02:00
list ( APPEND STATIC_LIBRARIES ${ @META_PROJECT_VARNAME_UPPER@_STATIC_LIB } ${ @META_PROJECT_VARNAME_UPPER@_STATIC_LIB_DEPENDS } )
message ( STATUS "Adding ${@META_PROJECT_VARNAME_UPPER@_STATIC_LIB} ${@META_PROJECT_VARNAME_UPPER@_STATIC_LIB_DEPENDS} to static library dependencies of ${META_PROJECT_NAME}." )
2016-07-22 01:35:32 +02:00
# make CMake modules of the project available
2016-08-29 15:35:48 +02:00
list ( APPEND CMAKE_MODULE_PATH ${ @META_PROJECT_VARNAME_UPPER@_MODULE_DIRS } )
2016-04-16 00:50:16 +02:00
endmacro ( )