source_group¶
為 IDE 專案產生中的原始碼檔案定義分組。 有兩種不同的簽名來建立原始碼群組。
source_group(<name> [FILES <src>...] [REGULAR_EXPRESSION <regex>])
source_group(TREE <root> [PREFIX <prefix>] [FILES <src>...])
定義一個群組,原始碼將放置在專案檔案中。 這旨在設定 Visual Studio 中的檔案索引標籤。 該群組的作用範圍在呼叫命令的目錄中,並適用於在該目錄中建立的目標中的原始碼。
選項如下
TREE
在版本 3.8 中新增。
CMake 將從
<src>
檔案路徑自動偵測它需要建立的原始碼群組,以保持原始碼群組的結構與專案中實際檔案和目錄結構類似。<src>
檔案的路徑將被截斷為相對於<root>
。如果src
內的路徑不是以root
開頭,則命令會失敗。PREFIX
在版本 3.8 中新增。
位於
<root>
路徑中且直接位於其中的原始碼群組和檔案將放置在<prefix>
原始碼群組中。FILES
任何明確指定的原始碼檔案都將放置在
<name>
群組中。 相對路徑是相對於目前原始碼目錄解釋的。REGULAR_EXPRESSION
名稱與正規表示式相符的任何原始碼檔案都將放置在
<name>
群組中。
如果一個原始碼檔案符合多個群組,則會優先選擇最後一個使用 FILES
明確列出檔案的群組(如果有的話)。 如果沒有群組明確列出該檔案,則會優先選擇最後一個與該檔案相符的正規表示式的群組。
群組的 <name>
和 <prefix>
引數可以包含正斜線或反斜線以指定子群組。 反斜線需要適當逸出。
source_group(base/subdir ...)
source_group(outer\\inner ...)
source_group(TREE <root> PREFIX sources\\inc ...)
在版本 3.18 中新增:允許使用正斜線 (/
) 來指定子群組。
為了向後相容性,簡短的簽名
source_group(<name> <regex>)
等同於
source_group(<name> REGULAR_EXPRESSION <regex>)