1# securec arm library 2# 3# 4# SECUREC_ARM_LIBRARY 5# 6 7if(NOT TARGET securec_arm) 8 set(_ms_tmp_CMAKE_POSITION_INDEPENDENT_CODE ${CMAKE_POSITION_INDEPENDENT_CODE}) 9 set(_ms_tmp_CMAKE_C_FLAGS ${CMAKE_C_FLAGS}) 10 11 if(TARGET_OHOS_LITE) 12 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SECURE_CXX_FLAGS}") 13 else() 14 set(CMAKE_C_FLAGS "${SECURE_CXX_FLAGS}") 15 endif() 16 if(CMAKE_SYSTEM_NAME MATCHES "Windows") 17 add_compile_definitions(SECUREC_ONLY_DECLARE_MEMSET) 18 endif() 19 set(CMAKE_POSITION_INDEPENDENT_CODE ${_ms_tmp_CMAKE_POSITION_INDEPENDENT_CODE}) 20 set(CMAKE_C_FLAGS ${_ms_tmp_CMAKE_C_FLAGS}) 21endif() 22 23if(NOT MSVC) 24 if(CMAKE_SYSTEM_NAME MATCHES "Windows") 25 SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -fPIC -O2 -Wall -Wno-deprecated-declarations \ 26 -fno-inline-functions -fno-omit-frame-pointer -fstack-protector-all") 27 else() 28 SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -Wno-nullability-completeness -fPIC -O2 -Wall \ 29 -Wno-deprecated-declarations -fno-inline-functions -fno-omit-frame-pointer \ 30 -fstack-protector-all -D_LIBCPP_INLINE_VISIBILITY='' -D'_LIBCPP_EXTERN_TEMPLATE(...)='") 31 endif() 32 set(CMAKE_EXPORT_COMPILE_COMMANDS ON) 33 34 #add flags 35 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -I/usr/local/include -Werror") 36endif() 37 38include_directories(${PROJECT_SOURCE_DIR}/third_party/securec/include) 39if(CMAKE_SYSTEM_NAME MATCHES "Windows") 40 list(APPEND SECUREC_ARM_LIBRARY "memset_s.c") 41else() 42 aux_source_directory(${PROJECT_SOURCE_DIR}/third_party/securec/src SECUREC_ARM_LIBRARY) 43endif() 44add_library(securec_arm STATIC ${SECUREC_ARM_LIBRARY}) 45set(SECUREC_ARM_LIBRARY securec_arm) 46