108 lines
3.4 KiB
CMake
108 lines
3.4 KiB
CMake
#需要交叉编译时 include
|
||
include (cross.cmake)
|
||
#CMake最低版本号要求
|
||
cmake_minimum_required(VERSION 3.5.1 FATAL_ERROR)
|
||
#项目信息
|
||
project(DevicePortGetApp)
|
||
#message(STATUS "Project: SERVER")
|
||
|
||
message(STATUS "DevicePortGetApp CMake version: " ${CMAKE_VERSION})
|
||
message(STATUS "DevicePortGetApp CMake system name: " ${CMAKE_SYSTEM_NAME})
|
||
message(STATUS "DevicePortGetApp CMake system processor: " ${CMAKE_SYSTEM_PROCESSOR})
|
||
|
||
|
||
# 加入一个配置头文件,用于处理 CMake 对源码的设置
|
||
#configure_file (
|
||
# "${PROJECT_SOURCE_DIR}/config.h.in"
|
||
# "${PROJECT_BINARY_DIR}/config.h"
|
||
# )
|
||
|
||
|
||
#add_definitions("-Wall -g")
|
||
SET(CMAKE_C_FLAGS "-std=c99 ${CMAKE_C_FLAGS}")
|
||
SET(CMAKE_C_FLAGS "-DWITH_NO_C_LOCALE")
|
||
message("${PROJECT_SOURCE_DIR}")
|
||
message("${PROJECT_BINARY_DIR}")
|
||
message(STATUS "${CMAKE_C_FLAGS}")
|
||
|
||
#SET(CMAKE_BUILD_TYPE Release)
|
||
set(CMAKE_BUILD_TYPE Debug)
|
||
|
||
#添加头文件目录(类是于 -I)
|
||
include_directories("src")
|
||
#新增 20230915
|
||
include_directories("src/mslog")
|
||
include_directories("src/koolootest")
|
||
include_directories("src/FuncConfigType")
|
||
#错误用法
|
||
#include_directories("src/TimeAligned_Src")
|
||
#include_directories("src/MainProcess_Src")
|
||
|
||
include_directories("Public_Src")
|
||
include_directories("Public_Src/cjson")
|
||
#Mqtt
|
||
include_directories("Mqtt_src")
|
||
|
||
include_directories("lib/sqlite3/include")
|
||
include_directories("lib/libmodbus/include")
|
||
include_directories("soap_sc")
|
||
include_directories("lib/goahead/include")
|
||
#将Mqtt库放在工作区 kooloo add 20230925
|
||
include_directories("lib/paho.mqtt.c-1.3.12/install/include")
|
||
|
||
#添加需要链接的库文件目录(-L)
|
||
link_directories("lib/sqlite3/lib")
|
||
link_directories("lib/libmodbus/lib")
|
||
link_directories("lib/paho.mqtt.c-1.3.12/install/lib")
|
||
|
||
#链接库文件(-l)
|
||
#link_libraries("sqlite3")
|
||
|
||
#查找目录下的所有源文件,并将名称保存到 SRC_LIST 变量
|
||
aux_source_directory(src SRC_LIST)
|
||
#新增 20230915
|
||
aux_source_directory(src/mslog SRC_LIST)
|
||
aux_source_directory(src/koolootest SRC_LIST)
|
||
|
||
aux_source_directory(src/FuncConfigType SRC_LIST)
|
||
#错误用法 内部有main 重复 暂时不动
|
||
#aux_source_directory(src/TimeAligned_Src SRC_LIST)
|
||
#aux_source_directory(MainProcess_Src SRC_LIST)
|
||
|
||
aux_source_directory(Public_Src SRC_LIST)
|
||
aux_source_directory(Public_Src/cjson SRC_LIST)
|
||
aux_source_directory(soap_sc SRC_LIST)
|
||
|
||
|
||
# 指定生成目标
|
||
ADD_EXECUTABLE(DevicePortGetApp ${SRC_LIST})
|
||
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
|
||
|
||
# 添加链接库(dl:动态库加载、pthread:线程库、rt:运行时函数库(#include<time.h>)、m:数学库)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp dl)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp pthread)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp ${CMAKE_CURRENT_SOURCE_DIR}/lib/sqlite3/lib/libsqlite3.so)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp ${CMAKE_CURRENT_SOURCE_DIR}/lib/libmodbus/lib/libmodbus.so)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp ${CMAKE_CURRENT_SOURCE_DIR}/lib/paho.mqtt.c-1.3.12/install/lib/libpaho-mqtt3c.so)
|
||
TARGET_LINK_LIBRARIES(DevicePortGetApp rt)
|
||
#TARGET_LINK_LIBRARIES(DevicePortGetApp m)
|
||
#MQTT库文件搜索路径
|
||
#target_link_libraries(mqttClient PRIVATE paho-mqtt3c) #MQTT链接库 libpaho-mqtt3c.so
|
||
|
||
|
||
|
||
#添加子目录(子目录编译为库或子程序时使用)
|
||
ADD_SUBDIRECTORY(soap_sc)
|
||
ADD_SUBDIRECTORY(web_src)
|
||
ADD_SUBDIRECTORY(Mqtt_src)
|
||
ADD_SUBDIRECTORY(TimeAligned_Src)
|
||
ADD_SUBDIRECTORY(MainProcess_Src)
|
||
ADD_SUBDIRECTORY(Uart_passthrough)
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|