|
@@ -26,6 +26,12 @@ set(CMAKE_CXX_STANDARD 11)
|
|
|
|
|
|
option(BUILD_TESTING "Build the project test case." OFF)
|
|
|
|
|
|
+option(WITH_DEBUG_SYMBOLS "Pack debug symbols to installer" ON)
|
|
|
+
|
|
|
+option(INSTALL_DEVELOP_FILES "install and pack develops header and libs files" OFF)
|
|
|
+
|
|
|
+option(WITH_THIRD_PARTY "Build third-party components" ON)
|
|
|
+
|
|
|
set(SIMULATE_DEV_AND_TEST_TEMP ON)
|
|
|
|
|
|
# Include extend cmake scripts
|
|
@@ -78,6 +84,10 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
|
|
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
|
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
|
|
|
|
|
|
+if(NOT DEFINED BUILD_SHARED_LIBS)
|
|
|
+ set(BUILD_SHARED_LIBS ON)
|
|
|
+endif()
|
|
|
+
|
|
|
if(MSVC)
|
|
|
set(LIB_PREFIX "")
|
|
|
set(LIB_SUFFIX ".dll")
|
|
@@ -331,6 +341,13 @@ include_directories("${CMAKE_BINARY_DIR}/winpr/include")
|
|
|
|
|
|
include_directories(Common)
|
|
|
add_subdirectory(third_party)
|
|
|
+if(WITH_THIRD_PARTY)
|
|
|
+
|
|
|
+ if (NOT "${THIRD_PARTY_INCLUDES}" STREQUAL "")
|
|
|
+ include_directories(${THIRD_PARTY_INCLUDES})
|
|
|
+ endif()
|
|
|
+endif(WITH_THIRD_PARTY)
|
|
|
+
|
|
|
add_subdirectory(winpr)
|
|
|
add_subdirectory(libtoolkit)
|
|
|
add_subdirectory(RVCComm)
|
|
@@ -406,9 +423,11 @@ if(MSVC)
|
|
|
endif()
|
|
|
endif()
|
|
|
|
|
|
-#
|
|
|
-install(DIRECTORY Common DESTINATION ${RVC_INCLUDE_PATH} COMPONENT headers FILES_MATCHING PATTERN "*.h")
|
|
|
-install(FILES "${PROJECT_BINARY_DIR}/spbase/version.h" DESTINATION "${RVC_INCLUDE_PATH}/Common" COMPONENT headers)
|
|
|
+#
|
|
|
+if(INSTALL_DEVELOP_FILES)
|
|
|
+ install(DIRECTORY Common DESTINATION ${RVC_INCLUDE_PATH} COMPONENT headers FILES_MATCHING PATTERN "*.h")
|
|
|
+ install(FILES "${PROJECT_BINARY_DIR}/spbase/version.h" DESTINATION "${RVC_INCLUDE_PATH}/Common" COMPONENT headers)
|
|
|
+endif(INSTALL_DEVELOP_FILES)
|
|
|
|
|
|
if(MSVC)
|
|
|
file(GLOB BIN_FILES "${CMAKE_SOURCE_DIR}/addin/din/win/*")
|
|
@@ -439,14 +458,24 @@ install(FILES "${CMAKE_SOURCE_DIR}/addin/hardwarecfg/${ROOT_INI_NAME}"
|
|
|
install(PROGRAMS ${BAT_SCRIPTS} DESTINATION "${PACK_INSTALL_PREFIX_VERSION}" COMPONENT scripts)
|
|
|
|
|
|
#appoint the component to install , except header file here.
|
|
|
+ #set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
|
|
|
+set(CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE TRUE)
|
|
|
+
|
|
|
GET_CMAKE_PROPERTY(PACK_COMPONENTS_ALL COMPONENTS)
|
|
|
FOREACH(item ${PACK_COMPONENTS_ALL})
|
|
|
message(STATUS "component: ${item}")
|
|
|
ENDFOREACH()
|
|
|
-list(REMOVE_ITEM PACK_COMPONENTS_ALL "headers" "tools" "symbols")
|
|
|
-#个人推断:该功能对 Release 版本才有效?
|
|
|
+list(REMOVE_ITEM PACK_COMPONENTS_ALL "headers" "tools" "symbols")
|
|
|
set(CPACK_COMPONENTS_ALL ${PACK_COMPONENTS_ALL})
|
|
|
|
|
|
+set_property(GLOBAL PROPERTY COMPONENTS ${PACK_COMPONENTS_ALL})
|
|
|
+GET_CMAKE_PROPERTY(PACK_COMPONENTS_ALL COMPONENTS)
|
|
|
+FOREACH(item ${PACK_COMPONENTS_ALL})
|
|
|
+message(STATUS "after component: ${item}")
|
|
|
+ENDFOREACH()
|
|
|
+
|
|
|
+set(CPACK_COMPONENT_headers_DISABLED TRUE)
|
|
|
+
|
|
|
include(CPack)
|
|
|
|
|
|
#install(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E make_directory ${OUTPUT_VERSION_DIR_PATH})")
|