SET(RVC_COMMON_INCLUDE_DIR ${CONAN_RVCFRAMEWORK_ROOT}/include/Common)
SET(RVC_TOOLKIT_INCLUDE_DIR ${CONAN_RVCFRAMEWORK_ROOT}/include/libtoolkit)
# $(MSBuildProjectDirectory)\..\..\ThirdParty\Release
SET(ThirdPartyLib "${PROJECT_SOURCE_DIR}/ThirdParty/Release")
# $(MSBuildProjectDirectory)\..\..\ThirdParty\Include
SET(ThirdPartyHeadRoot "${PROJECT_SOURCE_DIR}/ThirdParty/Include")
# $(MSBuildProjectDirectory)\..\..\Framework\Release
#SET(FrameworkLib "${PROJECT_SOURCE_DIR}/third_party")
# $(MSBuildProjectDirectory)\..\..\Framework\Include
#SET(FrameworkHeadRoot "${PROJECT_SOURCE_DIR}/third_party")
macro(rvc_set_library_output_dir _dir)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${_dir})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${_dir})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${_dir})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${_dir})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${_dir})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${_dir})
endmacro(rvc_set_library_output_dir)
macro(rvc_target_add_definitions _target _def)
get_target_property(EXISTED_PROPERTIES ${_target} COMPILE_DEFINITIONS)
message(STATUS "EXISTED_PROPERTIES: ${EXISTED_PROPERTIES}")
string(LENGTH ${EXISTED_PROPERTIES} var)
if(${var})
set_target_properties(${MODULE_NAME} PROPERTIES COMPILE_DEFINITIONS "${EXISTED_PROPERTIES};${_def}")
else()
set_target_properties(${MODULE_NAME} PROPERTIES COMPILE_DEFINITIONS "${_def}")
endif()
endmacro(rvc_target_add_definitions)
macro(rvc_add_all_cmake_subdirectory)
file(GLOB all_valid_subdirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/CMakeLists.txt")
foreach(dir ${all_valid_subdirs})
if(${dir} MATCHES "^([^/]*)/+CMakeLists.txt")
string(REGEX REPLACE "^([^/]*)/+CMakeLists.txt" "\\1" dir_trimmed ${dir})
message(STATUS "Adding other component ${dir_trimmed}")
add_subdirectory(${dir_trimmed})
endif()
endforeach(dir)
endmacro(rvc_add_all_cmake_subdirectory)
macro(rvc_record_build_number)
if(WITH_CI_NUMBER)
set(CURRENT_BUILD_TIMES 1)
math(EXPR DAYS "100 * ${BUILD_MONTH} + ${BUILD_DAY}" OUTPUT_FORMAT DECIMAL)
if(EXISTS "${PROJECT_BINARY_DIR}/BuildNumber.txt")
file(STRINGS "${PROJECT_BINARY_DIR}/BuildNumber.txt" BUILD_STORE_NUMBER)
message(STATUS "string: ${BUILD_STORE_NUMBER}")
if(BUILD_STORE_NUMBER)
set(VERSION_REGEX "^([0-9]+)-([0-9]+)")
string(REGEX REPLACE "${VERSION_REGEX}" "\\1" LAST_BUILD_DAYS "${BUILD_STORE_NUMBER}")
string(REGEX REPLACE "${VERSION_REGEX}" "\\2" LAST_BUILD_TIMES "${BUILD_STORE_NUMBER}")
message(STATUS "splited number: ${LAST_BUILD_DAYS}-${LAST_BUILD_TIMES}")
set(CURRENT_BUILD_DAYS "${DAYS}")
string(COMPARE EQUAL ${LAST_BUILD_DAYS} ${CURRENT_BUILD_DAYS} THE_SAME_DAY)
if(THE_SAME_DAY)
math(EXPR INCRE_DAYS "${LAST_BUILD_TIMES} + 1" OUTPUT_FORMAT DECIMAL)
set(CURRENT_BUILD_TIMES ${INCRE_DAYS})
endif(THE_SAME_DAY)
endif(BUILD_STORE_NUMBER)
endif()
set(BUILD_NUMBER ${DAYS})
file(WRITE "${PROJECT_BINARY_DIR}/BuildNumber.txt" "${DAYS}-${CURRENT_BUILD_TIMES}")
endif(WITH_CI_NUMBER)
endmacro(rvc_record_build_number)