forked from gary/ems
2
0
Fork 0
sun_ems/ems_c/CMakeLists.txt

78 lines
1.8 KiB
CMake

cmake_minimum_required(VERSION 3.10)
#x86平台
#set(CMAKE_C_COMPILER gcc)
#set(CMAKE_CXX_COMPILER g++)
#交叉编译
set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)
#if(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
# add_definitions(-IF_RUNIN_VM=1)
#endif()
set(CMAKE_BUILD_TYPE "Debug")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -Wall -g")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -Wall -g")
# 设置一个字符串变量,用与编译文件名称生成
set(ProjectName "EMS_C_V1.0.0")
project(${ProjectName})
# 添加包含的头文件目录
include_directories(
/usr/include/libxml2
/usr/include/libxml2/libxml
/usr/include/cjson
/usr/local/include
${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/app
${PROJECT_SOURCE_DIR}/kernel
${PROJECT_SOURCE_DIR}/bsp
${PROJECT_SOURCE_DIR}/driver
${PROJECT_SOURCE_DIR}/lib
${PROJECT_SOURCE_DIR}/logic
${PROJECT_SOURCE_DIR}/mw
)
# 连接库的位置
link_directories(/usr/local/lib ${CMAKE_SOURCE_DIR}/clib/x86)
link_directories(${CMAKE_SOURCE_DIR}/clib/aarch64)
add_executable(${ProjectName}
main.c
argparse.c
daemon.c
app/app_parse.c
app/app_task_regedit.c
bsp/bsp_data_mode.c
bsp/bsp_msgQueue.c
driver/drv_tcp_client.c
driver/drv_uart.c
driver/drv_gpio.c
driver/drv_4g.c
driver/drv_wifi.c
driver/forlinux_fcu2601/drv_gpio_forlinux_fcu2601.c
kernel/kit_math.c
kernel/kit_string.c
kernel/kit_time2.c
kernel/kit_log.c
kernel/kit_core.c
mw/mw_schedule_handle.c
)
# 添加编译选项
target_compile_options(${ProjectName} PRIVATE -fno-stack-protector)
target_link_libraries(${ProjectName} csunmodbus csunshmrtdb csundb csunntp sqlite3 paho-mqtt3c pthread cjson paho-mqtt3a)