規則
objc_import
查看規則來源objc_import(name, deps, hdrs, alwayslink, archives, compatible_with, deprecation, exec_compatible_with, exec_group_compatible_with, exec_properties, features, includes, package_metadata, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
這項規則會以 .a
檔案的形式,封裝已編譯的靜態程式庫。此外,您還能使用 objc_library
支援的相同屬性匯出標頭和資源。
引數
屬性 | |
---|---|
name |
名稱:必填 這個目標的專屬名稱。 |
deps
|
標籤清單;預設值為 |
hdrs
|
標籤清單;預設值為 這些標頭會說明程式庫的公開介面,並提供給這個規則或依附規則中的來源納入。不應由這個程式庫的用戶端納入的標頭,應改為列在 srcs 屬性中。 如果啟用模組,這些項目會與來源分開編譯。 |
alwayslink
|
布林值;預設值為 srcs 和 non_arc_srcs 中列出的所有檔案物件,即使部分檔案不含二進位檔參照的符號也一樣。如果二進位檔中的程式碼未明確呼叫您的程式碼,例如您的程式碼註冊接收某項服務提供的某些回呼,這就很有用。 |
archives
|
標籤清單 (必要) 提供給依附於這個目標的 Objective-C 目標的.a 檔案清單。 |
includes
|
字串清單;預設值為 #include/#import 搜尋路徑清單。
這是為了支援未在 #import/#include 陳述式中指定完整工作區路徑的第三方和開放原始碼程式庫。
路徑會根據套件目錄解讀,且除了實際的用戶端根目錄外,還會納入 genfiles 和 bin 根目錄 (例如 與 COPTS 不同,這些標記會新增至這項規則和所有依附於這項規則的規則。(注意:不是規則所依據的規則!)請務必謹慎操作,因為這項設定可能影響範圍廣泛。如有疑問,請改為在 COPTS 中加入「-iquote」標記。 |
sdk_dylibs
|
字串清單;預設值為 |
sdk_frameworks
|
字串清單;預設值為 連結頂層 Apple 二進位檔時,系統會連結該二進位檔的遞移依附元件圖中列出的所有 SDK 架構。 |
sdk_includes
|
字串清單;預設值為 #include/#import 搜尋路徑清單,其中每個路徑都與 $(SDKROOT)/usr/include 相關。
|
textual_hdrs
|
標籤清單;預設值為 |
weak_sdk_frameworks
|
字串清單;預設值為 |
objc_library
查看規則來源objc_library(name, deps, srcs, data, hdrs, alwayslink, compatible_with, conlyopts, copts, cxxopts, defines, deprecation, enable_modules, exec_compatible_with, exec_group_compatible_with, exec_properties, features, implementation_deps, includes, linkopts, module_map, module_name, non_arc_srcs, package_metadata, pch, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, stamp, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
這項規則會從指定的 Objective-C 來源檔案產生靜態程式庫。
引數
屬性 | |
---|---|
name |
名稱:必填 這個目標的專屬名稱。 |
deps
|
標籤清單;預設值為 |
srcs
|
標籤清單;預設值為 |
hdrs
|
標籤清單;預設值為 這些標頭會說明程式庫的公開介面,並提供給這個規則或依附規則中的來源納入。不應由這個程式庫的用戶端納入的標頭,應改為列在 srcs 屬性中。 如果啟用模組,這些項目會與來源分開編譯。 |
alwayslink
|
布林值;預設值為 srcs 和 non_arc_srcs 中列出的所有檔案物件,即使部分檔案不含二進位檔參照的符號也一樣。如果二進位檔中的程式碼未明確呼叫您的程式碼,例如您的程式碼註冊接收某項服務提供的某些回呼,這就很有用。 |
conlyopts
|
字串清單;預設值為 請注意,對於產生的 Xcode 專案,系統會剖析 copts 中使用「-I」標記指定的目錄路徑,如果這些路徑是相對路徑,則會加上「$(WORKSPACE_ROOT)/」,並新增至相關聯 Xcode 目標的標頭搜尋路徑。 |
copts
|
字串清單;預設值為 請注意,對於產生的 Xcode 專案,系統會剖析 copts 中使用「-I」標記指定的目錄路徑,如果這些路徑是相對路徑,則會加上「$(WORKSPACE_ROOT)/」,並新增至相關聯 Xcode 目標的標頭搜尋路徑。 |
cxxopts
|
字串清單;預設值為 請注意,對於產生的 Xcode 專案,系統會剖析 copts 中使用「-I」標記指定的目錄路徑,如果這些路徑是相對路徑,則會加上「$(WORKSPACE_ROOT)/」,並新增至相關聯 Xcode 目標的標頭搜尋路徑。 |
defines
|
字串清單;預設值為 -D 旗標。這些標記應採用 KEY=VALUE 或 KEY 形式,不僅會傳遞至這個目標的編譯器 (如 copts ),也會傳遞至這個目標的所有 objc_ 依附元件。須遵守「製作變數」替代和 Bourne Shell 權杖化。
|
enable_modules
|
布林值;預設值為 |
implementation_deps
|
標籤清單;預設值為 deps 不同,這些程式庫 (以及所有遞移依附元件) 的標頭和包含路徑僅用於編譯這個程式庫,而非依附於這個程式庫的程式庫。以 implementation_deps 指定的程式庫仍會連結至依附於這個程式庫的二進位目標。 |
includes
|
字串清單;預設值為 #include/#import 搜尋路徑清單。
這是為了支援未在 #import/#include 陳述式中指定完整工作區路徑的第三方和開放原始碼程式庫。
路徑會根據套件目錄解讀,且除了實際的用戶端根目錄外,還會納入 genfiles 和 bin 根目錄 (例如 與 COPTS 不同,這些標記會新增至這項規則和所有依附於這項規則的規則。(注意:不是規則所依據的規則!)請務必謹慎操作,因為這項設定可能影響範圍廣泛。如有疑問,請改為在 COPTS 中加入「-iquote」標記。 |
linkopts
|
字串清單;預設值為 |
module_map
|
標籤;預設值為 |
module_name
|
字串;預設值為 |
non_arc_srcs
|
標籤清單;預設值為 |
pch
|
標籤;預設值為 |
sdk_dylibs
|
字串清單;預設值為 |
sdk_frameworks
|
字串清單;預設值為 連結頂層 Apple 二進位檔時,系統會連結該二進位檔的遞移依附元件圖中列出的所有 SDK 架構。 |
sdk_includes
|
字串清單;預設值為 #include/#import 搜尋路徑清單,其中每個路徑都與 $(SDKROOT)/usr/include 相關。
|
stamp
|
布林值;預設值為 |
textual_hdrs
|
標籤清單;預設值為 |
weak_sdk_frameworks
|
字串清單;預設值為 |