cmake (2)指令说明
1. 語法規(guī)則
- 變量使用${}方式取值,但是在 IF 控制語句中是直接使用變量名
- 指令(參數(shù) 1 參數(shù) 2…)
- 參數(shù)使用括弧括起,參數(shù)之間使用空格或分號分開。
 eg. 以 ADD_EXECUTABLE 為例,如果存在另外一個 func.c 源文件,可寫成:
 ADD_EXECUTABLE(hello main.c func.c)或者
 ADD_EXECUTABLE(hello main.c;func.c)
- 指令是大小寫無關的,參數(shù)和變量是大小寫相關的
1.1 項目名稱PROJECT()
這個指令隱式的定義了兩個 cmake 變量:
 _BINARY_DIR 以及_SOURCE_DIR,
PROJECT_BINARY_DIR 和 PROJECT_SOURCE_DIR變量,他們的值分別跟 HELLO_BINARY_DIR 與 HELLO_SOURCE_DIR 一致
eg.
PROJECT(HELLO) #項目名稱 會引入兩個變量: HELLO_BINARY_DIR, HELLO_SOURCE_DIR 同時也會定義兩個等價的變量: PROJECT_BINARY_DIR, PROJECT_SOURCE_DIR因為采用的是內部編譯,兩個變量目前指的都是工程所在路徑/backup/cmake/t1,
1.2. 加入文件 AUX_SOURCE_DIRECTORY()
eg.
 #把當前目錄(.)下所有源代碼文件和頭文件加入變量SRC_LIST
 AUX_SOURCE_DIRECTORY(. SRC_LIST)
1.3. set 指令用來顯式定義變量
SET 指令的語法是:
 SET(VAR [VALUE] [CACHE TYPE DOCSTRING [FORCE]])
 現(xiàn)階段,你只需要了解 SET。
 eg. 我們用到的是 SET(SRC_LIST main.c),如果有多個源文件,也可以定義成:
 SET(SRC_LIST main.c t1.c t2.c)
1.4. message
MESSAGE([SEND_ERROR | STATUS | FATAL_ERROR] “message to display”…)
這個指令用于向終端輸出用戶定義的信息,包含了三種類型:
- SEND_ERROR 產生錯誤,生成過程被跳過。
- SATUS 輸出前綴為—的信息
- FATAL_ERROR 立即終止所有 cmake 過程
總結
以上是生活随笔為你收集整理的cmake (2)指令说明的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: std::get(std::tuple)
- 下一篇: cmake (2)build方面的指令
