1 Star 0 Fork 0

guo / envMonitor_zz

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
CMakeLists.txt 6.14 KB
一键复制 编辑 原始数据 按行查看 历史
guo 提交于 2024-03-24 14:54 . 增加m240上报
# CMakeLists.txt
# create by whl 2021-03-20 12:03:22
# compile target app
#CMake 最低版本要求
cmake_minimum_required(VERSION 2.8)
## 允许外部传入期望的项目名称,eg:<cmake .. -DmyProName=hashDemo>
SET(myProName "demo" CACHE STRING "my project name")
SET(myHardPlatName "hardplat_unk" CACHE STRING "hard platformat name.")
message(STATUS "pro name is ${myProName}; hard platformat name is ${myHardPlatName}")
#编译程序所属cpu架构
SET(ARCH arm)
#SET(ARCH x86)
#编译哪个app
SET(APPNAME ${myProName})
message(STATUS "${APPNAME} CMakeLists.txt")
#项目信息
project(${APPNAME})
SET(CMAKE_SYSTEM_NAME Linux)
#输出gcc的编译链接信息
SET(CMAKE_VERBOSE_MAKEFILE ON)
include(CheckCCompilerFlag)
message(STATUS "<compile app from ${ARCH}, cpmpiler: ${CMAKE_C_COMPILER}>")
#编译选项设置 CFLAGS
SET(myVal_CFLAGS)
list(APPEND myVal_CFLAGS
-Wall
-O0
-g
-fPIC
-Wl,-rpath=.:../lib:/home/zxlib/libsskr:/root/cont-share/zxlib/libsskr:/lib:/lib/hal_lib
)
#apply custom compiler flags
foreach(compiler_flag ${myVal_CFLAGS})
#remove problematic characters
string(REGEX REPLACE "[^a-zA-Z0-9]" "" current_variable ${compiler_flag})
CHECK_C_COMPILER_FLAG(${compiler_flag} "FLAG_SUPPORTED_${current_variable}")
if (FLAG_SUPPORTED_${current_variable})
list(APPEND supported_compiler_flags)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${compiler_flag}")
endif()
endforeach()
MESSAGE( STATUS "CMAKE_C_FLAGS this var key = ${CMAKE_C_FLAGS}")
#添加依赖库目录
link_directories("/${CMAKE_SOURCE_DIR}/lib/"
)
#添加头文件目录
#添加头文件目录
MESSAGE( STATUS "++CMAKE_C_INCLUDE_PATH this var key = ${CMAKE_C_INCLUDE_PATH}")
#set(CMAKE_C_INCLUDE_PATH "/home/forlinx/3568/OK3568-linux-source/buildroot/output/OK3568/build/linux-headers-custom/include")
MESSAGE( STATUS "--CMAKE_C_INCLUDE_PATH this var key = ${CMAKE_C_INCLUDE_PATH}")
#include_directories(/home/forlinx/3568/OK3568-linux-source/buildroot/output/OK3568/build/linux-custom/include/)
#include_directories(/home/forlinx/3568/OK3568-linux-source/buildroot/output/OK3568/build/linux-headers-custom/include/)
#include_directories(/usr/src/linux-headers-5.3.0-61/include/)
include_directories(./include/)
include_directories(./include/MQTT)
include_directories(./include/cJson)
include_directories(./include/smiTypes)
include_directories(./include/Flats)
include_directories(./include/Configs)
include_directories(./include/md_log)
include_directories(./include/mmu)
include_directories(./include/os_platform)
include_directories(./include/os_platform/timer)
include_directories(./include/gy_port)
include_directories(./include/gy_port/gybase)
include_directories(./include/gy_port/port)
include_directories(./include/gybase_645)
include_directories(./include/gybase_698)
include_directories(./include/ipc)
include_directories(./include/ipc/mqtt)
include_directories(./include/ipc/unsocket)
include_directories(./include/systemManager)
include_directories(./include/utils)
include_directories(./include/ipcMsgManager/)
include_directories(./include/ipcMsgManager/api_asn)
include_directories(./include/ipcMsgManager/api_json)
include_directories(./include/uartManager/)
include_directories(./include/dataCenter/)
include_directories(./include/dataCenter/api_asn)
include_directories(./include/dataCenter/api_json)
include_directories(./include/ccoRouter/)
include_directories(./include/ccoRouter/api_asn)
include_directories(./include/ccoRouter/api_json)
include_directories(./include/iot/)
include_directories(./include/iot/api_json)
include_directories(./include/mydb/)
include_directories(./include/modbus/)
include_directories(./include/mpManager/)
include_directories(./include/md_privateDC)
include_directories(./include/md_privateDC/database)
include_directories(./include/md_privateDC/fileBin)
include_directories(./include/md_privateDC/fileBin/Flats)
include_directories(./include/md_privateDC/fileBin/fun)
include_directories(./include/md_privateDC/fileBin/Para)
include_directories(./include/md_mediator/)
include_directories(./include/md_mediator/dataForward)
include_directories(./include/md_mediator/dcm)
include_directories(./include/md_mediator/dcm/commonDC/cdc_peidian)
include_directories(./include/md_mediator/dcm/commonDC/cdc_peidian/pointTbl)
include_directories(./include/md_mediator/dcm/privateDC)
include_directories(./include/md_mediator/event/)
include_directories(./include/md_mediator/lcd/)
include_directories(./include/md_daemon/)
include_directories(./include/md_mpManager/)
include_directories(./include/md_schemeTask/)
include_directories(./include/md_modbus/)
include_directories(./include/md_64507Master/)
include_directories(./include/md_3762/)
include_directories(./include/md_iot/)
include_directories(./include/md_698Client/)
include_directories(./include/md_698Server/)
include_directories(./src/)
include_directories(./src/apps)
include_directories(./src/md_log)
include_directories(./src/md_daemon)
include_directories(./src/md_mpManager)
include_directories(./src/md_privateDC)
include_directories(./src/md_mediator)
include_directories(./src/modbus)
include_directories(./src/m240)
include_directories(./src/md_uartLcd)
#添加子目录
add_subdirectory(./src/bsp)
add_subdirectory(./src/md_log)
add_subdirectory(./src/md_daemon)
add_subdirectory(./src/md_mpManager)
add_subdirectory(./src/md_privateDC)
add_subdirectory(./src/md_mediator)
add_subdirectory(./src/modbus)
add_subdirectory(./src/m240)
add_subdirectory(./src/md_uartLcd)
aux_source_directory(./src/ dir_srcs)
MESSAGE( STATUS "dir_srcs = ${dir_srcs}")
##指定生成目标
add_executable(${APPNAME} ${dir_srcs})
# 依赖库
## 依赖的开源库
SET(myVal_LIB_SO -lpthread -lzlog -lpaho-mqtt3a -lcjson -lsqlite3)
## 依赖的内部库
SET(myVal_LIB_SO_2 -lmmu -los_platform -lgy_port -lmydb -lgybase_645 -lgybase_698 -lutils -lipc -lmpManager )
if(${myHardPlatName} STREQUAL "ttu_zx")
else()
#SET(myVal_LIB_SO_2 ${myVal_LIB_SO_2} -luartManager)
endif()
## 依赖的app模块
SET(myVal_LIB_A bsp md_log md_daemon md_mpManager md_privateDC md_mediator modbus m240 md_uartLcd)
# 添加链接库
MESSAGE( STATUS "this var key = ${APPNAME} ${myVal_LIB_A} ${myVal_LIB_SO_2} ${myVal_LIB_SO}")
target_link_libraries(${APPNAME} -Wl,--start-group ${myVal_LIB_A} ${myVal_LIB_SO_2} -Wl,--end-group ${myVal_LIB_SO})
1
https://gitee.com/guozhongwl/envMonitor_zz.git
git@gitee.com:guozhongwl/envMonitor_zz.git
guozhongwl
envMonitor_zz
envMonitor_zz
master

搜索帮助