a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

博客專欄

EEPW首頁 > 博客 > CMake通過外部傳參執行不同邏輯的2種方案

CMake通過外部傳參執行不同邏輯的2種方案

發布人:電子禪石 時間:2024-11-15 來源:工程師 發布文章

有時候一些場景需要在執行cmake指令時傳入一些參數的值,使得CMakeLists.txt文件中的程序執行不同的邏輯,下面給出2種方案。

1、SET指令給參數默認值

SET(BUILD_PLATFORM "x86" CACHE STRING "select build cpu type")
 # 外部用cmake . -DBUILD_PLATFORM=arm進行值傳入,便可以執行不同的邏輯
if (BUILD_PLATFORM STREQUAL arm)
  message("this is arm platform")
else()
  message("this is x86 platform")
endif()

   默認情況下會執行else,打印“this is x86 platform”,但可以更改,比如運行cmake指令時如下:

        cmake . -DBUILD_PLATFORM=arm

  那么打印出來的是“this is arm platform”。

2、OPTION指令開關

option(USE_AEC "Set to switch to build use AEC"  OFF)
# 外部用cmake . -DUSE_AEC=ON進行值傳入,便可以執行不同的邏輯
if (USE_AEC) #根據宏開關判斷邏輯
    message("use aec to restrict audio echo")
else()
    message("do not use aec")
endif()

  默認情況下會執行else,打印“do not use aec”,但若運行cmake指令時如下:

        cmake . -DUSE_AEC=ON

    則會打印出“use aec to restrict audio echo”。


*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



關鍵詞: cmake

技術專區

關閉