set(PLATFORM_DIR ${TOP_DIR}/platform)
set(COLLECT_DIR ${TOP_DIR}/collector)
########################### securec ############################
set(SECUREC_DIR ${PLATFORM_DIR}/securec)
file(GLOB_RECURSE SECUREC_SRC ${SECUREC_DIR}/src/*.c)
add_library(c_sec_static STATIC
${SECUREC_SRC}
)
target_include_directories(c_sec_static PRIVATE
${SECUREC_DIR}/include
)
target_compile_options(c_sec_static PRIVATE
-fPIC
-fstack-protector-all
-fno-common
-fno-strict-aliasing
-Wfloat-equal
-Wextra
)
target_link_options(c_sec_static PRIVATE
-Wl,-z,relro,-z,now,-z,noexecstack
-s
)
##################################### run_llt_test ###############################
function(run_llt_test)
cmake_parse_arguments(${PACKAGE} "" "TARGET;TASK_NUM;ENV_FILE" "" ${ARGN})
if (( PACKAGE STREQUAL "ut") OR (PACKAGE STREQUAL "st"))
add_custom_target(${PACKAGE}_${${PACKAGE}_TARGET} ALL DEPENDS ${CMAKE_INSTALL_PREFIX}/${${PACKAGE}_TARGET}.timestamp)
if(NOT DEFINED ${PACKAGE}_TASK_NUM)
set(${PACKAGE}_TASK_NUM 1)
endif()
if((NOT DEFINED LLT_RUN_MOD) OR (LLT_RUN_MOD STREQUAL ""))
set(LLT_RUN_MOD single)
endif()
if((NOT DEFINED ${PACKAGE}_ENV_FILE) OR (${PACKAGE}_ENV_FILE STREQUAL ""))
set(${PACKAGE}_ENV_FILE \"\")
endif()
add_custom_command(
OUTPUT ${CMAKE_INSTALL_PREFIX}/${${PACKAGE}_TARGET}.timestamp
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_INSTALL_PREFIX}/${PACKAGE}_report
COMMAND echo "execute ${${PACKAGE}_TARGET} begin:"
COMMAND bash ${TOP_DIR}/test/cmake/tools/llt_run_and_check.sh ${CMAKE_INSTALL_PREFIX}/${PACKAGE}_report $<TARGET_FILE:${${PACKAGE}_TARGET}>
${${PACKAGE}_TASK_NUM} 1200 "${LLT_RUN_MOD}" ${${PACKAGE}_ENV_FILE}
COMMAND echo "execute ${${PACKAGE}_TARGET} successfully"
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_INSTALL_PREFIX}
DEPENDS ${${PACKAGE}_TARGET}
WORKING_DIRECTORY ${TOP_DIR}
)
endif()
endfunction(run_llt_test)