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 $ COMMENT "Stripping symbols from the executable" )