12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- set(MODULE_NAME "RVCComm")
- set(MODULE_PREFIX "RVCCOMM")
- if(MSVC)
- # add_definitions(-DRVCCOMM_EXPORTS)
- endif(MSVC)
- message(STATUS "PROJECT_SOURCE_DIR: ${PROJECT_SOURCE_DIR}")
- include_directories(${PROJECT_SOURCE_DIR}/third_party/openssl-1.1.1d/include/openssl)
- include_directories(.)
- file(GLOB ${MODULE_PREFIX}_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.cpp" "*.h" "*.c")
- # remove the no use file at all platform so far
- list(REMOVE_ITEM ${MODULE_PREFIX}_SRCS
- ClientBase.h
- ClientBase.cpp
- ServerComm.h
- ServerComm.cpp
- )
- if (NOT WIN32)
- list(REMOVE_ITEM ${MODULE_PREFIX}_SRCS
- XZip.h
- XZip.cpp
- XUnzip.h
- XUnzip.cpp
- )
- endif()
- if (WIN32)
- set (RC_VERSION_MAJOR ${RVC_VERSION_MAJOR})
- set (RC_VERSION_MINOR ${RVC_VERSION_MINOR})
- set (RC_VERSION_BUILD ${RVC_VERSION_REVISION})
- configure_file(
- ${CMAKE_SOURCE_DIR}/Version.rc.in
- ${CMAKE_CURRENT_BINARY_DIR}/version.rc
- @ONLY)
- set ( ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/version.rc)
- endif()
- add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
- target_link_libraries(${MODULE_NAME} ssl winpr)
- target_compile_definitions(${MODULE_NAME} PRIVATE "-DRVCCOMM_EXPORTS=1")
- if (BUILD_TESTING)
- add_library(${MODULE_NAME}_a STATIC ${${MODULE_PREFIX}_SRCS})
- target_link_libraries(${MODULE_NAME}_a ssl winpr)
- target_compile_definitions(${MODULE_NAME}_a PRIVATE "-DRVCCOMM_LINKED_AS_STATIC_LIBRARY")
- add_subdirectory(test)
- endif()
- install(TARGETS ${MODULE_NAME}
- RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
- ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
- LIBRARY DESTINATION "${RVC_LIBRARY_PATH}"
- COMPONENT libraries)
- if (WITH_DEBUG_SYMBOLS AND MSVC AND BUILD_SHARED_LIBS)
- install(FILES ${CMAKE_PDB_BINARY_DIR}/${MODULE_NAME}.pdb DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT symbols)
- endif()
|