jda/tools/ipscan_tool/CMakeLists.txt
2025-04-30 15:28:08 +08:00

54 lines
1.5 KiB
CMake

if(LILIAN)
cmake_minimum_required(VERSION 3.10)
elseif(YUANJING)
cmake_minimum_required(VERSION 3.0)
else()
cmake_minimum_required(VERSION 3.10)
endif()
# 项目名称
project(ipscan LANGUAGES C)
# 设置 C 标准
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS OFF) # 不禁用 C 语言扩展
# 指定编译器
if(LILIAN)
message(STATUS "Enable SZR303 compiler")
add_definitions(-DSZR303=1)
set(CMAKE_C_COMPILER "/usr/local/arm/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc")
set(CMAKE_STRIP "/usr/local/arm/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-strip")
elseif(YUANJING)
add_definitions(-DAZL5083=1)
message(STATUS "Enable AZL5083 compiler")
set(CMAKE_C_COMPILER "arm-none-linux-gnueabi-gcc")
set(CMAKE_STRIP "arm-none-linux-gnueabi-strip")
else()
message(STATUS "Enable default gcc compiler")
set(CMAKE_C_COMPILER "/usr/bin/gcc")
set(CMAKE_STRIP "/usr/bin/strip")
endif()
# 设置输出路径
set(HOME ${CMAKE_CURRENT_SOURCE_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${HOME}/build/bin) # 可执行文件输出目录
# 添加头文件搜索
include_directories(${HOME}/include)
# 添加源文件
file(GLOB_RECURSE SOURCES ${HOME}/src/*.c)
# 设置可执行文件
add_executable(ipscan ${SOURCES})
# 添加自定义命令用于 strip
add_custom_command(
TARGET ${PROJECT_NAME}
POST_BUILD
COMMAND ${CMAKE_STRIP} -s $<TARGET_FILE:${PROJECT_NAME}>
COMMENT "Stripping symbols from the executable"
)