mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-20 04:28:10 +00:00
74 lines
2 KiB
Text
74 lines
2 KiB
Text
cmake_minimum_required(VERSION 3.0)
|
|
|
|
project(LinphoneCxx VERSION @LINPHONE_VERSION@)
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
find_package(BelleSIP REQUIRED)
|
|
|
|
set(CMAKE_CXX_STANDARD 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_definitions("-DLINPHONECXX_EXPORTS")
|
|
add_library(linphone++ SHARED ${SOURCES})
|
|
if(WIN32)
|
|
target_link_libraries(linphone++ PRIVATE @PROJECT_BINARY_DIR@/coreapi/${CMAKE_BUILD_TYPE}/linphone.lib ${BELLESIP_LIBRARIES})
|
|
elseif(APPLE)
|
|
target_link_libraries(linphone++ PRIVATE @PROJECT_BINARY_DIR@/coreapi/liblinphone.@LINPHONE_SO_VERSION@.dylib ${BELLESIP_LIBRARIES})
|
|
else()
|
|
target_link_libraries(linphone++ PRIVATE @PROJECT_BINARY_DIR@/coreapi/liblinphone.so.@LINPHONE_SO_VERSION@ ${BELLESIP_LIBRARIES})
|
|
endif()
|
|
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
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
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
|
|
)
|