# Author: Kang Lin (kl222@126.com) project(turnclient) find_package(OpenSSL REQUIRED) set(HEADER_FILES ${CMAKE_SOURCE_DIR}/src/ns_turn_defs.h ${CMAKE_SOURCE_DIR}/src/client++/TurnMsgLib.h ns_turn_ioaddr.h ns_turn_msg.h ns_turn_msg_defs.h ns_turn_msg_defs_experimental.h ns_turn_msg_addr.h ) set(SOURCE_FILES ns_turn_ioaddr.c ns_turn_msg_addr.c ns_turn_msg.c ) add_library(${PROJECT_NAME} ${SOURCE_FILES} ${HEADER_FILES}) target_link_libraries(${PROJECT_NAME} PUBLIC turncommon OpenSSL::SSL OpenSSL::Crypto) # Install head files set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER "${HEADER_FILES}" VERSION ${VERSION} ) INSTALL(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}Config RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/turn/client INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ${CMAKE_INSTALL_INCLUDEDIR}/turn ${CMAKE_INSTALL_INCLUDEDIR}/turn/client ) export(TARGETS ${PROJECT_NAME} APPEND FILE ${CMAKE_BINARY_DIR}/${PROJECT_NAME}Config.cmake ) # Install cmake configure files install(EXPORT ${PROJECT_NAME}Config DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake" ) # Install cmake version configure file if(DEFINED VERSION) write_basic_package_version_file( "${CMAKE_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake" VERSION ${VERSION} COMPATIBILITY AnyNewerVersion) install(FILES "${CMAKE_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake") endif()