linphone-iphone/wrappers/cpp/c_make_lists.mustache.in
2017-01-26 17:07:55 +01:00

64 lines
1.5 KiB
Text

cmake_minimum_required(VERSION 3.0)
project(LinphoneCxx VERSION @LINPHONE_VERSION@)
include(GNUInstallDirs)
set(CMAKE_CXX_STRANDARD 11)
set(GENERATED_SOURCES
{{#classes}}
src/{{{source}}}
{{/classes}}
)
set(SOURCES
${GENERATED_SOURCES}
src/object.cc
)
set(GENERATED_HEADERS
{{#classes}}
include/{{{header}}}
{{/classes}}
{{#interfaces}}
include/{{{header}}}
{{/interfaces}}
include/linphone.hh
include/enums.hh
)
set(HEADERS
${GENERATED_HEADERS}
${CMAKE_CURRENT_SOURCE_DIR}/include/object.hh
)
add_library(linphone++ SHARED ${SOURCES})
target_link_libraries(linphone++ PRIVATE @PROJECT_BINARY_DIR@/coreapi/liblinphone.so.@LINPHONE_SO_VERSION@)
target_include_directories(linphone++
PUBLIC include
PRIVATE @PROJECT_SOURCE_DIR@/include
PRIVATE @BELLESIP_INCLUDE_DIRS@
)
set_target_properties(linphone++
PROPERTIES SOVERSION @LINPHONE_SO_VERSION@
)
install(TARGETS linphone++ EXPORT LinphoneCxxTargets
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
install(FILES ${HEADERS}
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/linphone++
)
include(CMakePackageConfigHelpers)
write_basic_package_version_file(
"${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxVersion.cmake"
VERSION ${PROJECT_VERSION}
COMPATIBILITY AnyNewerVersion
)
export(EXPORT LinphoneCxxTargets
FILE "${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxTargets.cmake"
)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxVersion.cmake
${CMAKE_CURRENT_BINARY_DIR}/LinphoneCxxTargets.cmake
${CMAKE_CURRENT_SOURCE_DIR}/LinphoneCxxConfig.cmake
DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake
)