cmake命令行传参数示例

#编译  说明 cmake -D BUILD_PLATFROM="aarch64" ..  赋值为aarch64 表示为arm平台
cmake_minimum_required(VERSION 3.0)
project(onviftest)
set(CMAKE_C_FLAGS  "-Wall  -DWITH_OPENSSL -DWITH_DOM")
#add_compile_options(-g)

#设置编译平台,提供x86和arm 两种编译架构,默认值为X86
set(BUILD_PLATFROM "x86" CACHE STRING "default")

if(BUILD_PLATFROM STREQUAL "x86")
message("构建x86平台")
set(CMAKE_C_COMPILER "/usr/bin/gcc")  
elseif(BUILD_PLATFROM STREQUAL "aarch64")
message("构建aarch64平台")
set(CMAKE_C_COMPILER "/usr/bin/aarch64-linux-gnu-gcc")  
include_directories(.)
include_directories(./openssl)
# 添加库路径
link_directories(${CMAKE_CURRENT_SOURCE_DIR}/lib)
else()
message("构建其他平台")
endif()
message("now build--->${BUILD_PLATFROM}")
# 添加可执行文件并指定头文件和源文件
FILE(GLOB HEAD_FILE "./*.h")
FILE(GLOB SRC_FILE "./*.c")

# 添加资源文件路径
add_executable(onviftest ${SRC_FILE} ${HEAD_FILE})

# 链接 OpenSSL 库
target_link_libraries(onviftest  libssl.so libcrypto.so)

你可能感兴趣的:(c++)