You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.4 KiB
41 lines
1.4 KiB
#CMake 版本 |
|
cmake_minimum_required(VERSION 2.8) |
|
|
|
#项目名称 |
|
project(CCM_APP) |
|
|
|
#编译平台及编译架构 |
|
set(CMAKE_SYSTEM_NAME Linux) |
|
set(CMAKE_SYSTEM_PROCESSOR arm) |
|
|
|
#编译工具 |
|
set(CMAKE_C_COMPILER /opt/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-gcc) |
|
set(CMAKE_CXX_COMPILER /opt/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-g++) |
|
#set(CMAKE_C_COMPILER gcc) |
|
#set(CMAKE_CXX_COMPILER g++) |
|
|
|
#编译选项 |
|
add_compile_options(-Wno-psabi) |
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -pthread -lmodbus ") |
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -std=gnu++0x -pthread -lmodbus ") |
|
|
|
#头文件目录 include本级目录以及二级目录 |
|
INCLUDE_DIRECTORIES("./include/") |
|
|
|
INCLUDE_DIRECTORIES("./include/libmodbus/") |
|
INCLUDE_DIRECTORIES("./include/tinyxml2/") |
|
|
|
#源文件目录 src本级目录 libs本级目录以及二级目录 |
|
FILE(GLOB SRC_C "./src/*.c") |
|
FILE(GLOB SRC_CPP "./src/*.cpp") |
|
FILE(GLOB LIBS_C "./libs/*.c") |
|
FILE(GLOB LIBS_CPP "./libs/*.cpp") |
|
|
|
FILE(GLOB LIBS_TINYXML2_C "./libs/tinyxml2/*.c") |
|
FILE(GLOB LIBS_TINYXML2_CPP "./libs/tinyxml2/*.cpp") |
|
FILE(GLOB LIBS_LIBMODBUS_C "./libs/libmodbus/*.c") |
|
FILE(GLOB LIBS_LIBMODBUS_CPP "./libs/libmodbus/*.cpp") |
|
|
|
#依靠依赖 |
|
add_executable(${PROJECT_NAME} ${SRC_C} ${SRC_CPP} ${LIBS_C} ${LIBS_CPP} ${LIBS_TINYXML2_C} ${LIBS_TINYXML2_CPP} ${LIBS_LIBMODBUS_C} ${LIBS_LIBMODBUS_CPP}) |
|
#target_link_libraries(${PROJECT_NAME} /usr/lib/libmodbus.so.5.1.0) |