aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/osx/crosstool
diff options
context:
space:
mode:
Diffstat (limited to 'tools/osx/crosstool')
-rw-r--r--tools/osx/crosstool/BUILD.tpl71
-rw-r--r--tools/osx/crosstool/CROSSTOOL.tpl9856
-rw-r--r--tools/osx/crosstool/osx_archs.bzl28
-rw-r--r--tools/osx/crosstool/wrapped_clang.tpl10
-rw-r--r--tools/osx/crosstool/wrapped_clang_pp.tpl10
5 files changed, 4933 insertions, 5042 deletions
diff --git a/tools/osx/crosstool/BUILD.tpl b/tools/osx/crosstool/BUILD.tpl
deleted file mode 100644
index 8f6ff4d2b4..0000000000
--- a/tools/osx/crosstool/BUILD.tpl
+++ /dev/null
@@ -1,71 +0,0 @@
-package(default_visibility = ["//visibility:public"])
-
-load(":osx_archs.bzl", "OSX_TOOLS_ARCHS")
-
-CC_TOOLCHAINS = [(
- cpu + "|compiler",
- ":cc-compiler-" + cpu,
-) for cpu in OSX_TOOLS_ARCHS]
-
-cc_library(
- name = "malloc",
-)
-
-cc_library(
- name = "stl",
-)
-
-filegroup(
- name = "empty",
- srcs = [],
-)
-
-filegroup(
- name = "cc_wrapper",
- srcs = ["cc_wrapper.sh"],
-)
-
-sh_binary(
- name = "wrapped_clang_sh",
- srcs = ["wrapped_clang"],
- data = [
- "@bazel_tools//tools/objc:xcrunwrapper",
- ],
- visibility = ["//visibility:public"],
-)
-
-cc_toolchain_suite(
- name = "toolchain",
- toolchains = dict(CC_TOOLCHAINS),
-)
-
-[
- filegroup(
- name = "osx_tools_" + arch,
- srcs = [
- ":cc_wrapper",
- ":libtool",
- ":make_hashed_objlist.py",
- ":wrapped_clang",
- ":xcrunwrapper.sh",
- ],
- )
- for arch in OSX_TOOLS_ARCHS
-]
-
-[
- apple_cc_toolchain(
- name = "cc-compiler-" + arch,
- all_files = ":osx_tools_" + arch,
- compiler_files = ":osx_tools_" + arch,
- cpu = arch,
- dwp_files = ":empty",
- dynamic_runtime_libs = [":empty"],
- linker_files = ":osx_tools_" + arch,
- objcopy_files = ":empty",
- static_runtime_libs = [":empty"],
- strip_files = ":osx_tools_" + arch,
- supports_param_files = 0,
- )
- for arch in OSX_TOOLS_ARCHS
-]
diff --git a/tools/osx/crosstool/CROSSTOOL.tpl b/tools/osx/crosstool/CROSSTOOL.tpl
index 9ca6ceacd5..0d0fc02d63 100644
--- a/tools/osx/crosstool/CROSSTOOL.tpl
+++ b/tools/osx/crosstool/CROSSTOOL.tpl
@@ -149,6 +149,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -160,174 +161,211 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_MACOSX"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -336,21 +374,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -517,390 +565,341 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "link_cocoa"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-framework Cocoa"
}
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
}
- }
- feature {
- name: "no_enable_modules"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-fmodule-maps"
+ flag: "@%{linker_param_file}"
}
- }
- requires {
- feature: "use_objc_modules"
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "apply_default_warnings"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "preprocessor_defines"
+ name: "llvm_coverage_map_format"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
+ requires {
+ feature: "run_coverage"
+ }
}
feature {
- name: "framework_paths"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
flag_group {
- flag: "-F%{framework_paths}"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "coverage"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
- }
- }
- flag_set {
- action: "c++-link-interface-dynamic-library"
- action: "c++-link-dynamic-library"
- action: "c++-link-executable"
- flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- flag_group {
- flag: "-DOS_MACOSX"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "include_system_dirs"
+ name: "objc_arc"
flag_set {
action: "c-compile"
action: "c++-compile"
action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
action: "assemble"
action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
}
feature {
- name: "bitcode_embedded"
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode-marker"
+ flag: "-o"
+ }
+ expand_if_all_available: "output_execpath"
+ }
+ flag_set {
+ action: "c++-link-executable"
+ flag_group {
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
+ }
+ flag_set {
+ action: "c++-link-executable"
+ flag_group {
+ flag: "%{output_execpath}"
+ }
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "objc_arc"
+ name: "pch"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
+ action: "c-compile"
+ action: "c++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
- }
- }
- requires {
- feature: "run_coverage"
- }
- }
- feature {
- name: "apply_implicit_frameworks"
- flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-framework Foundation"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
}
feature {
- name: "link_cocoa"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-framework Cocoa"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -918,8 +917,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -932,8 +931,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -946,83 +945,122 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "x86_64"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "x86_64"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -1035,36 +1073,43 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "x86_64"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "x86_64"
}
@@ -1114,17 +1159,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "x86_64"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
+ }
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "x86_64"
}
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "x86_64"
@@ -1175,106 +1262,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -1303,6 +1290,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -1401,6 +1402,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -1414,174 +1416,225 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_warnings"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_simulator_compiler_flags"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-fexceptions"
+ flag: "-fasm-blocks"
+ flag: "-fobjc-abi-version=2"
+ flag: "-fobjc-legacy-dispatch"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -1590,21 +1643,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -1771,395 +1834,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mios-simulator-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
- flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
- }
- }
- }
- feature {
- name: "apply_simulator_compiler_flags"
- flag_set {
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fexceptions"
- flag: "-fasm-blocks"
- flag: "-fobjc-abi-version=2"
- flag: "-fobjc-legacy-dispatch"
+ flag: "-mios-simulator-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -2177,8 +2177,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -2191,8 +2191,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -2205,8 +2205,108 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
+ tool {
+ tool_path: "wrapped_clang"
+ }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -2219,29 +2319,18 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "x86_64"
- }
- }
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
implies: "preprocessor_defines"
implies: "include_system_dirs"
implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
implies: "apple_env"
- implies: "apply_simulator_compiler_flags"
}
action_config {
config_name: "objc++-compile"
@@ -2270,61 +2359,17 @@ toolchain {
implies: "apply_simulator_compiler_flags"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "include_system_dirs"
- implies: "apple_env"
- }
- action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
- flag: "x86_64"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
- }
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- flag_set {
flag_group {
flag: "-arch"
flag: "x86_64"
@@ -2375,17 +2420,60 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "x86_64"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "x86_64"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "apply_simulator_compiler_flags"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "x86_64"
@@ -2436,106 +2524,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -2564,6 +2552,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -2662,6 +2664,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -2675,174 +2678,225 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_warnings"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_simulator_compiler_flags"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-fexceptions"
+ flag: "-fasm-blocks"
+ flag: "-fobjc-abi-version=2"
+ flag: "-fobjc-legacy-dispatch"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -2851,21 +2905,33 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
+ flag: "-F%{sdk_framework_dir}"
+ flag: "-F%{platform_developer_framework_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -3032,397 +3098,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
- flag: "-F%{sdk_framework_dir}"
- flag: "-F%{platform_developer_framework_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mwatchos-simulator-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
- flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
- }
- }
- }
- feature {
- name: "apply_simulator_compiler_flags"
- flag_set {
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fexceptions"
- flag: "-fasm-blocks"
- flag: "-fobjc-abi-version=2"
- flag: "-fobjc-legacy-dispatch"
+ flag: "-mwatchos-simulator-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -3440,8 +3441,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -3454,8 +3455,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -3468,8 +3469,108 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
+ tool {
+ tool_path: "wrapped_clang"
+ }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -3482,29 +3583,18 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "i386"
- }
- }
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
implies: "preprocessor_defines"
implies: "include_system_dirs"
implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
implies: "apple_env"
- implies: "apply_simulator_compiler_flags"
}
action_config {
config_name: "objc++-compile"
@@ -3533,61 +3623,17 @@ toolchain {
implies: "apply_simulator_compiler_flags"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "include_system_dirs"
- implies: "apple_env"
- }
- action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
- flag: "i386"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
- }
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- flag_set {
flag_group {
flag: "-arch"
flag: "i386"
@@ -3638,17 +3684,60 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "i386"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "i386"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "apply_simulator_compiler_flags"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "i386"
@@ -3699,106 +3788,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -3827,6 +3816,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -3906,6 +3909,10 @@ toolchain {
compiler_flag: "-DDEBUG"
}
compilation_mode_flags {
+ mode: DBG
+ compiler_flag: "-g"
+ }
+ compilation_mode_flags {
mode: OPT
compiler_flag: "-g0"
compiler_flag: "-O2"
@@ -3915,10 +3922,6 @@ toolchain {
compiler_flag: "-fdata-sections"
compiler_flag: "-DNS_BLOCK_ASSERTIONS=1"
}
- compilation_mode_flags {
- mode: DBG
- compiler_flag: "-g"
- }
linking_mode_flags {
mode: DYNAMIC
}
@@ -3926,6 +3929,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -3939,186 +3943,239 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_TVOS"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_warnings"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_simulator_compiler_flags"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-fexceptions"
+ flag: "-fasm-blocks"
+ flag: "-fobjc-abi-version=2"
+ flag: "-fobjc-legacy-dispatch"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "cpp_linker_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "%{output_execpath}"
+ flag: "-lc++"
+ flag: "-undefined"
+ flag: "dynamic_lookup"
+ flag: "-target"
+ flag: "x86_64-apple-tvos"
}
- expand_if_all_available: "output_execpath"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "global_whole_archive"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c++-link-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-pie"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "runtime_root_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ }
+ feature {
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_root_flags"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -4127,9 +4184,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-Wl,-all_load"
+ }
+ expand_if_all_available: "global_whole_archive"
+ }
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
+ flag_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
+ flag_group {
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -4296,424 +4375,347 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_TVOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mtvos-simulator-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "unfiltered_cxx_flags"
flag_set {
action: "c-compile"
action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
- flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
- }
- }
- requires {
- feature: "run_coverage"
- }
- }
- feature {
- name: "apply_implicit_frameworks"
- flag_set {
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-no-canonical-prefixes"
+ flag: "-pthread"
}
}
}
feature {
- name: "apply_simulator_compiler_flags"
+ name: "use_objc_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fexceptions"
- flag: "-fasm-blocks"
- flag: "-fobjc-abi-version=2"
- flag: "-fobjc-legacy-dispatch"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
}
feature {
- name: "unfiltered_cxx_flags"
+ name: "version_min"
flag_set {
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
- action: "assemble"
- action: "preprocess-assemble"
- flag_group {
- flag: "-no-canonical-prefixes"
- flag: "-pthread"
- }
- }
- }
- feature {
- name: "cpp_linker_flags"
- flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-lc++"
- flag: "-undefined"
- flag: "dynamic_lookup"
- flag: "-target"
- flag: "x86_64-apple-tvos"
+ flag: "-mtvos-simulator-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
implies: "unfiltered_cxx_flags"
}
@@ -4733,8 +4735,8 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -4748,8 +4750,8 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -4763,87 +4765,125 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
- implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "x86_64"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ implies: "cpp_linker_flags"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
- implies: "apply_simulator_compiler_flags"
+ implies: "cpp_linker_flags"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "x86_64"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
- implies: "apply_simulator_compiler_flags"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -4857,36 +4897,44 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "x86_64"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
+ implies: "apply_simulator_compiler_flags"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "x86_64"
}
@@ -4936,17 +4984,60 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "x86_64"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
+ }
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "x86_64"
}
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "apply_simulator_compiler_flags"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "x86_64"
@@ -4997,108 +5088,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- implies: "cpp_linker_flags"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- implies: "cpp_linker_flags"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -5127,6 +5116,21 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "unfiltered_cxx_flags"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -5225,6 +5229,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -5238,174 +5243,225 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_warnings"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_simulator_compiler_flags"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-fexceptions"
+ flag: "-fasm-blocks"
+ flag: "-fobjc-abi-version=2"
+ flag: "-fobjc-legacy-dispatch"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -5414,21 +5470,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -5595,395 +5661,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mios-simulator-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
- }
- feature {
- name: "run_coverage"
}
feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
- flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
- }
- }
- }
- feature {
- name: "apply_simulator_compiler_flags"
- flag_set {
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fexceptions"
- flag: "-fasm-blocks"
- flag: "-fobjc-abi-version=2"
- flag: "-fobjc-legacy-dispatch"
+ flag: "-mios-simulator-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -6001,8 +6004,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -6015,8 +6018,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -6029,8 +6032,108 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
+ tool {
+ tool_path: "wrapped_clang"
+ }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
+ tool {
+ tool_path: "DUMMY_TOOL"
+ }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -6043,29 +6146,18 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "i386"
- }
- }
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
implies: "preprocessor_defines"
implies: "include_system_dirs"
implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
implies: "apple_env"
- implies: "apply_simulator_compiler_flags"
}
action_config {
config_name: "objc++-compile"
@@ -6094,61 +6186,17 @@ toolchain {
implies: "apply_simulator_compiler_flags"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "include_system_dirs"
- implies: "apple_env"
- }
- action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
- flag: "i386"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
- }
- implies: "apple_env"
- }
- action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
- tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
- }
- flag_set {
flag_group {
flag: "-arch"
flag: "i386"
@@ -6199,17 +6247,60 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "i386"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "i386"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "apply_simulator_compiler_flags"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "i386"
@@ -6260,106 +6351,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -6388,6 +6379,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -6486,6 +6491,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -6499,174 +6505,212 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -6675,21 +6719,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -6856,382 +6910,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-miphoneos-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
- }
- feature {
- name: "run_coverage"
}
feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-miphoneos-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -7249,8 +7253,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -7263,8 +7267,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -7277,83 +7281,122 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "armv7"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "armv7"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -7366,36 +7409,43 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "armv7"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "armv7"
}
@@ -7445,17 +7495,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "armv7"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "armv7"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "armv7"
@@ -7506,106 +7598,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -7634,6 +7626,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -7732,6 +7738,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -7745,174 +7752,212 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -7921,21 +7966,33 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
+ flag: "-F%{sdk_framework_dir}"
+ flag: "-F%{platform_developer_framework_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -8102,384 +8159,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
- flag: "-F%{sdk_framework_dir}"
- flag: "-F%{platform_developer_framework_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mwatchos-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-mwatchos-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -8497,8 +8502,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -8511,8 +8516,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -8525,83 +8530,122 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "armv7k"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "armv7k"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -8614,36 +8658,43 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "armv7k"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "armv7k"
}
@@ -8693,17 +8744,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "armv7k"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "armv7k"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "armv7k"
@@ -8754,106 +8847,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -8882,6 +8875,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -8961,6 +8968,10 @@ toolchain {
compiler_flag: "-DDEBUG"
}
compilation_mode_flags {
+ mode: DBG
+ compiler_flag: "-g"
+ }
+ compilation_mode_flags {
mode: OPT
compiler_flag: "-g0"
compiler_flag: "-O2"
@@ -8970,10 +8981,6 @@ toolchain {
compiler_flag: "-fdata-sections"
compiler_flag: "-DNS_BLOCK_ASSERTIONS=1"
}
- compilation_mode_flags {
- mode: DBG
- compiler_flag: "-g"
- }
linking_mode_flags {
mode: DYNAMIC
}
@@ -8981,6 +8988,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -8994,186 +9002,226 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_TVOS"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "cpp_linker_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "%{output_execpath}"
+ flag: "-lc++"
+ flag: "-undefined"
+ flag: "dynamic_lookup"
+ flag: "-target"
+ flag: "arm64-apple-tvos"
}
- expand_if_all_available: "output_execpath"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "global_whole_archive"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c++-link-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-pie"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "runtime_root_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ }
+ feature {
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_root_flags"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -9182,9 +9230,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-Wl,-all_load"
+ }
+ expand_if_all_available: "global_whole_archive"
+ }
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
+ flag_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
+ flag_group {
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -9351,368 +9421,287 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_TVOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-mtvos-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
- }
- }
- requires {
- feature: "opt"
- }
- }
- feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
- flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
- flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
- }
- }
- requires {
- feature: "run_coverage"
- }
- }
- feature {
- name: "gcc_coverage_map_format"
- flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
- flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "symbol_counts"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
@@ -9731,31 +9720,48 @@ toolchain {
}
}
feature {
- name: "cpp_linker_flags"
+ name: "use_objc_modules"
flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
+ }
+ }
+ }
+ feature {
+ name: "version_min"
+ flag_set {
+ action: "objc-executable"
+ action: "objc++-executable"
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-lc++"
- flag: "-undefined"
- flag: "dynamic_lookup"
- flag: "-target"
- flag: "arm64-apple-tvos"
+ flag: "-mtvos-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
implies: "unfiltered_cxx_flags"
}
@@ -9775,8 +9781,8 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -9790,8 +9796,8 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -9805,85 +9811,125 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
- implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "arm64"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ implies: "cpp_linker_flags"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
+ implies: "cpp_linker_flags"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "arm64"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -9897,36 +9943,43 @@ toolchain {
implies: "unfiltered_cxx_flags"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "arm64"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "arm64"
}
@@ -9976,17 +10029,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "arm64"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
+ }
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "arm64"
}
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "arm64"
@@ -10037,108 +10132,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- implies: "cpp_linker_flags"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- implies: "cpp_linker_flags"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -10167,6 +10160,21 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ implies: "unfiltered_cxx_flags"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -10265,6 +10273,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -10278,174 +10287,212 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -10454,21 +10501,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -10635,382 +10692,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-miphoneos-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
}
feature {
- name: "run_coverage"
- }
- feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-miphoneos-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -11028,8 +11035,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -11042,8 +11049,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -11056,83 +11063,122 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "arm64"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "arm64"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -11145,36 +11191,43 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "arm64"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "arm64"
}
@@ -11224,17 +11277,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "arm64"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
}
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "arm64"
+ }
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "arm64"
@@ -11285,106 +11380,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -11413,6 +11408,20 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
toolchain {
@@ -11491,6 +11500,10 @@ toolchain {
compiler_flag: "-DDEBUG"
}
compilation_mode_flags {
+ mode: DBG
+ compiler_flag: "-g"
+ }
+ compilation_mode_flags {
mode: OPT
compiler_flag: "-g0"
compiler_flag: "-O2"
@@ -11500,10 +11513,6 @@ toolchain {
compiler_flag: "-fdata-sections"
compiler_flag: "-DNS_BLOCK_ASSERTIONS=1"
}
- compilation_mode_flags {
- mode: DBG
- compiler_flag: "-g"
- }
linking_mode_flags {
mode: DYNAMIC
}
@@ -11514,6 +11523,7 @@ toolchain {
name: "STACK_FRAME_UNLIMITED"
value: "-Wframe-larger-than=100000000 -Wno-vla"
}
+ cxx_builtin_include_directory: "/"
builtin_sysroot: ""
unfiltered_cxx_flag: "-no-canonical-prefixes"
unfiltered_cxx_flag: "-Wno-builtin-macro-redefined"
@@ -11530,174 +11540,212 @@ toolchain {
ar_flag: "-s"
ar_flag: "-o"
feature {
- name: "fastbuild"
- }
- feature {
- name: "opt"
- }
- feature {
- name: "dbg"
- }
- feature {
- name: "compile_all_modules"
- }
- feature {
- name: "exclude_private_headers_in_module_maps"
- }
- feature {
- name: "has_configured_linker_path"
- }
- feature {
- name: "only_doth_headers_in_module_maps"
+ name: "apple_env"
+ env_set {
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "assemble"
+ action: "preprocess-assemble"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-archive"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-executable"
+ action: "objc++-executable"
+ env_entry {
+ key: "XCODE_VERSION_OVERRIDE"
+ value: "%{xcode_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_VERSION_OVERRIDE"
+ value: "%{apple_sdk_version_override_value}"
+ }
+ env_entry {
+ key: "APPLE_SDK_PLATFORM"
+ value: "%{apple_sdk_platform_value}"
+ }
+ }
}
feature {
- name: "objc_actions"
- implies: "objc-compile"
- implies: "objc++-compile"
- implies: "objc-fully-link"
- implies: "objc-archive"
- implies: "objc-executable"
- implies: "objc++-executable"
- implies: "assemble"
- implies: "preprocess-assemble"
- implies: "c-compile"
- implies: "c++-compile"
- implies: "c++-link-static-library"
- implies: "c++-link-pic-static-library"
- implies: "c++-link-interface-dynamic-library"
- implies: "c++-link-dynamic-library"
- implies: "c++-link-alwayslink-static-library"
- implies: "c++-link-alwayslink-pic-static-library"
- implies: "c++-link-executable"
+ name: "apply_default_compiler_flags"
+ flag_set {
+ action: "objc-compile"
+ action: "objc++-compile"
+ flag_group {
+ flag: "-DOS_IOS"
+ }
+ }
}
feature {
- name: "strip_debug_symbols"
+ name: "apply_default_warnings"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-interface-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-S"
- expand_if_all_available: "strip_debug_symbols"
+ flag: "-Wshorten-64-to-32"
+ flag: "-Wbool-conversion"
+ flag: "-Wconstant-conversion"
+ flag: "-Wduplicate-method-match"
+ flag: "-Wempty-body"
+ flag: "-Wenum-conversion"
+ flag: "-Wint-conversion"
+ flag: "-Wunreachable-code"
+ flag: "-Wmismatched-return-types"
+ flag: "-Wundeclared-selector"
+ flag: "-Wuninitialized"
+ flag: "-Wunused-function"
+ flag: "-Wunused-variable"
}
}
}
feature {
- name: "symbol_counts"
+ name: "apply_implicit_frameworks"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
+ flag: "-framework Foundation"
+ flag: "-framework UIKit"
}
- expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "shared_flag"
+ name: "bitcode_embedded"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-shared"
+ flag: "-fembed-bitcode"
}
}
}
feature {
- name: "linkstamps"
+ name: "bitcode_embedded_markers"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "%{linkstamp_paths}"
+ flag: "-fembed-bitcode-marker"
}
- expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "output_execpath_flags"
+ name: "cc_archiver_flags"
flag_set {
- action: "c++-link-dynamic-library"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-o"
+ flag: "rcs"
flag: "%{output_execpath}"
}
expand_if_all_available: "output_execpath"
+ expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "output_execpath_flags_executable"
+ name: "compile_all_modules"
+ }
+ feature {
+ name: "coverage"
flag_set {
- action: "c++-link-executable"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-o"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
- expand_if_all_available: "output_execpath"
}
flag_set {
+ action: "c++-link-interface-dynamic-library"
+ action: "c++-link-dynamic-library"
action: "c++-link-executable"
flag_group {
- flag: "/dev/null"
- flag: "-MMD"
- flag: "-MF"
+ flag: "-fprofile-instr-generate"
}
- expand_if_all_available: "skip_mostly_static"
- expand_if_all_available: "output_execpath"
}
+ provides: "profile"
+ }
+ feature {
+ name: "dbg"
+ }
+ feature {
+ name: "dead_strip"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "%{output_execpath}"
+ flag: "--dead_strip"
+ flag: "--no_dead_strip_inits_and_terms"
}
- expand_if_all_available: "output_execpath"
+ }
+ requires {
+ feature: "opt"
}
}
feature {
- name: "global_whole_archive_open"
+ name: "exclude_private_headers_in_module_maps"
+ }
+ feature {
+ name: "fastbuild"
+ }
+ feature {
+ name: "force_pic_flags"
flag_set {
action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "-Wl,-all_load"
+ flag: "-pie"
}
- expand_if_all_available: "global_whole_archive"
+ expand_if_all_available: "force_pic"
}
}
feature {
- name: "cc_archiver_flags"
+ name: "framework_paths"
flag_set {
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "rcs"
- flag: "%{output_execpath}"
+ flag: "-F%{framework_paths}"
}
- expand_if_all_available: "output_execpath"
- expand_if_all_available: "uses_action_configs_for_cc_archiver"
}
}
feature {
- name: "runtime_root_flags"
+ name: "gcc_coverage_map_format"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
- iterate_over: "runtime_library_search_directories"
+ flag: "-fprofile-arcs"
+ flag: "-ftest-coverage"
}
- expand_if_all_available: "runtime_library_search_directories"
}
+ requires {
+ feature: "run_coverage"
+ }
+ }
+ feature {
+ name: "global_whole_archive_open"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
@@ -11706,21 +11754,31 @@ toolchain {
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{runtime_root_flags}"
+ flag: "-Wl,-all_load"
}
- expand_if_all_available: "runtime_root_flags"
+ expand_if_all_available: "global_whole_archive"
}
+ }
+ feature {
+ name: "has_configured_linker_path"
+ }
+ feature {
+ name: "include_system_dirs"
flag_set {
- action: "c++-link-executable"
- action: "c++-link-dynamic-library"
- action: "c++-link-static-library"
- action: "c++-link-alwayslink-static-library"
- action: "c++-link-pic-static-library"
- action: "c++-link-alwayslink-pic-static-library"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-module-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "objc-compile"
+ action: "objc++-compile"
+ action: "objc-executable"
+ action: "objc++-executable"
+ action: "assemble"
+ action: "preprocess-assemble"
flag_group {
- flag: "%{runtime_root_entries}"
+ flag: "-isysroot %{sdk_dir}"
}
- expand_if_all_available: "runtime_root_entries"
}
}
feature {
@@ -11887,382 +11945,332 @@ toolchain {
}
}
feature {
- name: "force_pic_flags"
+ name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "objc-executable"
+ action: "objc++-executable"
flag_group {
- flag: "-pie"
+ flag: "%{legacy_link_flags}"
+ iterate_over: "legacy_link_flags"
}
- expand_if_all_available: "force_pic"
+ expand_if_all_available: "legacy_link_flags"
}
}
feature {
- name: "pch"
+ name: "linker_param_file"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "c-compile"
- action: "c++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-include"
- flag: "%{pch_file}"
+ flag: "-Wl,@%{linker_param_file}"
}
+ expand_if_all_available: "linker_param_file"
+ }
+ flag_set {
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
+ flag_group {
+ flag: "@%{linker_param_file}"
+ }
+ expand_if_all_available: "linker_param_file"
}
}
feature {
- name: "module_maps"
- }
- feature {
- name: "use_objc_modules"
+ name: "linkstamps"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fmodule-name=%{module_name}"
- flag: "-iquote"
- flag: "%{module_maps_dir}"
- flag: "-fmodules-cache-path=%{modules_cache_path}"
+ flag: "%{linkstamp_paths}"
}
+ expand_if_all_available: "linkstamp_paths"
}
}
feature {
- name: "no_enable_modules"
+ name: "llvm_coverage_map_format"
flag_set {
+ action: "c-compile"
+ action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fmodule-maps"
+ flag: "-fprofile-instr-generate"
+ flag: "-fcoverage-mapping"
}
}
requires {
- feature: "use_objc_modules"
+ feature: "run_coverage"
}
}
feature {
- name: "apply_default_warnings"
+ name: "module_maps"
+ }
+ feature {
+ name: "no_enable_modules"
flag_set {
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-Wshorten-64-to-32"
- flag: "-Wbool-conversion"
- flag: "-Wconstant-conversion"
- flag: "-Wduplicate-method-match"
- flag: "-Wempty-body"
- flag: "-Wenum-conversion"
- flag: "-Wint-conversion"
- flag: "-Wunreachable-code"
- flag: "-Wmismatched-return-types"
- flag: "-Wundeclared-selector"
- flag: "-Wuninitialized"
- flag: "-Wunused-function"
- flag: "-Wunused-variable"
+ flag: "-fmodule-maps"
}
}
+ requires {
+ feature: "use_objc_modules"
+ }
}
feature {
- name: "preprocessor_defines"
+ name: "no_objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-D%{preprocessor_defines}"
+ flag: "-fno-objc-arc"
}
+ expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "framework_paths"
- flag_set {
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- flag_group {
- flag: "-F%{framework_paths}"
- }
- }
+ name: "objc_actions"
+ implies: "objc-compile"
+ implies: "objc++-compile"
+ implies: "objc-fully-link"
+ implies: "objc-archive"
+ implies: "objc-executable"
+ implies: "objc++-executable"
+ implies: "assemble"
+ implies: "preprocess-assemble"
+ implies: "c-compile"
+ implies: "c++-compile"
+ implies: "c++-link-static-library"
+ implies: "c++-link-pic-static-library"
+ implies: "c++-link-interface-dynamic-library"
+ implies: "c++-link-dynamic-library"
+ implies: "c++-link-alwayslink-static-library"
+ implies: "c++-link-alwayslink-pic-static-library"
+ implies: "c++-link-executable"
}
feature {
- name: "coverage"
+ name: "objc_arc"
flag_set {
- action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
+ action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "c++-module-compile"
+ action: "assemble"
+ action: "preprocess-assemble"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-fobjc-arc"
}
+ expand_if_all_available: "objc_arc"
}
+ }
+ feature {
+ name: "only_doth_headers_in_module_maps"
+ }
+ feature {
+ name: "opt"
+ }
+ feature {
+ name: "output_execpath_flags"
flag_set {
- action: "c++-link-interface-dynamic-library"
action: "c++-link-dynamic-library"
- action: "c++-link-executable"
flag_group {
- flag: "-fprofile-instr-generate"
+ flag: "-o"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
- provides: "profile"
}
feature {
- name: "apply_default_compiler_flags"
+ name: "output_execpath_flags_executable"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-DOS_IOS"
+ flag: "-o"
}
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "include_system_dirs"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-executable"
- action: "objc++-executable"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-link-executable"
flag_group {
- flag: "-isysroot %{sdk_dir}"
+ flag: "/dev/null"
+ flag: "-MMD"
+ flag: "-MF"
}
+ expand_if_all_available: "skip_mostly_static"
+ expand_if_all_available: "output_execpath"
}
- }
- feature {
- name: "bitcode_embedded"
flag_set {
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
flag_group {
- flag: "-fembed-bitcode"
+ flag: "%{output_execpath}"
}
+ expand_if_all_available: "output_execpath"
}
}
feature {
- name: "bitcode_embedded_markers"
+ name: "pch"
flag_set {
action: "objc-compile"
action: "objc++-compile"
- flag_group {
- flag: "-fembed-bitcode-marker"
- }
- }
- }
- feature {
- name: "objc_arc"
- flag_set {
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-fobjc-arc"
+ flag: "-include"
+ flag: "%{pch_file}"
}
- expand_if_all_available: "objc_arc"
}
}
feature {
- name: "no_objc_arc"
+ name: "preprocessor_defines"
flag_set {
+ action: "preprocess-assemble"
action: "c-compile"
action: "c++-compile"
- action: "c++-module-compile"
action: "c++-header-parsing"
action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
+ action: "c++-module-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fno-objc-arc"
+ flag: "-D%{preprocessor_defines}"
}
- expand_if_all_available: "no_objc_arc"
}
}
feature {
- name: "apple_env"
- env_set {
- action: "c-compile"
- action: "c++-compile"
- action: "c++-module-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "assemble"
- action: "preprocess-assemble"
- action: "objc-compile"
- action: "objc++-compile"
- action: "objc-archive"
+ name: "run_coverage"
+ }
+ feature {
+ name: "runtime_root_flags"
+ flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
- action: "objc-executable"
- action: "objc++-executable"
- env_entry {
- key: "XCODE_VERSION_OVERRIDE"
- value: "%{xcode_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_VERSION_OVERRIDE"
- value: "%{apple_sdk_version_override_value}"
- }
- env_entry {
- key: "APPLE_SDK_PLATFORM"
- value: "%{apple_sdk_platform_value}"
+ flag_group {
+ flag: "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}"
+ iterate_over: "runtime_library_search_directories"
}
+ expand_if_all_available: "runtime_library_search_directories"
}
- }
- feature {
- name: "legacy_link_flags"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "objc-executable"
- action: "objc++-executable"
+ action: "c++-link-static-library"
+ action: "c++-link-alwayslink-static-library"
+ action: "c++-link-pic-static-library"
+ action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "%{legacy_link_flags}"
- iterate_over: "legacy_link_flags"
+ flag: "%{runtime_root_flags}"
}
- expand_if_all_available: "legacy_link_flags"
+ expand_if_all_available: "runtime_root_flags"
}
- }
- feature {
- name: "linker_param_file"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
- flag_group {
- flag: "-Wl,@%{linker_param_file}"
- }
- expand_if_all_available: "linker_param_file"
- }
- flag_set {
action: "c++-link-static-library"
action: "c++-link-alwayslink-static-library"
action: "c++-link-pic-static-library"
action: "c++-link-alwayslink-pic-static-library"
flag_group {
- flag: "@%{linker_param_file}"
+ flag: "%{runtime_root_entries}"
}
- expand_if_all_available: "linker_param_file"
+ expand_if_all_available: "runtime_root_entries"
}
}
feature {
- name: "version_min"
+ name: "shared_flag"
flag_set {
- action: "objc-executable"
- action: "objc++-executable"
- action: "c++-link-executable"
action: "c++-link-dynamic-library"
- action: "preprocess-assemble"
- action: "c-compile"
- action: "c++-compile"
- action: "c++-header-parsing"
- action: "c++-header-preprocessing"
- action: "c++-module-compile"
- action: "objc-compile"
- action: "objc++-compile"
flag_group {
- flag: "-m<platform_for_version_min>-version-min=%{version_min}"
+ flag: "-shared"
}
}
}
feature {
- name: "dead_strip"
+ name: "strip_debug_symbols"
flag_set {
action: "c++-link-executable"
action: "c++-link-dynamic-library"
+ action: "c++-link-interface-dynamic-library"
action: "objc-executable"
action: "objc++-executable"
flag_group {
- flag: "--dead_strip"
- flag: "--no_dead_strip_inits_and_terms"
+ flag: "-Wl,-S"
+ expand_if_all_available: "strip_debug_symbols"
}
}
- requires {
- feature: "opt"
- }
- }
- feature {
- name: "run_coverage"
}
feature {
- name: "llvm_coverage_map_format"
+ name: "symbol_counts"
flag_set {
- action: "c-compile"
- action: "c++-compile"
- action: "objc-compile"
- action: "objc++-compile"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
flag_group {
- flag: "-fprofile-instr-generate"
- flag: "-fcoverage-mapping"
+ flag: "-Wl,--print-symbol-counts=%{symbol_counts_output}"
}
- }
- requires {
- feature: "run_coverage"
+ expand_if_all_available: "symbol_counts_output"
}
}
feature {
- name: "gcc_coverage_map_format"
+ name: "use_objc_modules"
flag_set {
- action: "c-compile"
- action: "c++-compile"
action: "objc-compile"
action: "objc++-compile"
flag_group {
- flag: "-fprofile-arcs"
- flag: "-ftest-coverage"
+ flag: "-fmodule-name=%{module_name}"
+ flag: "-iquote"
+ flag: "%{module_maps_dir}"
+ flag: "-fmodules-cache-path=%{modules_cache_path}"
}
}
- requires {
- feature: "run_coverage"
- }
}
feature {
- name: "apply_implicit_frameworks"
+ name: "version_min"
flag_set {
action: "objc-executable"
action: "objc++-executable"
+ action: "c++-link-executable"
+ action: "c++-link-dynamic-library"
+ action: "preprocess-assemble"
+ action: "c-compile"
+ action: "c++-compile"
+ action: "c++-header-parsing"
+ action: "c++-header-preprocessing"
+ action: "c++-module-compile"
+ action: "objc-compile"
+ action: "objc++-compile"
flag_group {
- flag: "-framework Foundation"
- flag: "-framework UIKit"
+ flag: "-m<platform_for_version_min>-version-min=%{version_min}"
}
}
}
action_config {
- config_name: "c-compile"
- action_name: "c-compile"
+ config_name: "assemble"
+ action_name: "assemble"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
+ implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
@@ -12280,8 +12288,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-module-compile"
- action_name: "c++-module-compile"
+ config_name: "c++-header-parsing"
+ action_name: "c++-header-parsing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -12294,8 +12302,8 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-parsing"
- action_name: "c++-header-parsing"
+ config_name: "c++-header-preprocessing"
+ action_name: "c++-header-preprocessing"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -12308,83 +12316,122 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "c++-header-preprocessing"
- action_name: "c++-header-preprocessing"
+ config_name: "c++-link-alwayslink-pic-static-library"
+ action_name: "c++-link-alwayslink-pic-static-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "/usr/bin/ar"
}
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "objc-compile"
- action_name: "objc-compile"
+ config_name: "c++-link-alwayslink-static-library"
+ action_name: "c++-link-alwayslink-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-dynamic-library"
+ action_name: "c++-link-dynamic-library"
tool {
tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "<architecture>"
- }
+ implies: "has_configured_linker_path"
+ implies: "symbol_counts"
+ implies: "shared_flag"
+ implies: "linkstamps"
+ implies: "output_execpath_flags"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
+ implies: "version_min"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-executable"
+ action_name: "c++-link-executable"
+ tool {
+ tool_path: "DUMMY_TOOL"
}
- implies: "objc_actions"
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
+ implies: "symbol_counts"
+ implies: "linkstamps"
+ implies: "output_execpath_flags_executable"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "input_param_flags"
+ implies: "force_pic_flags"
+ implies: "legacy_link_flags"
+ implies: "strip_debug_symbols"
+ implies: "linker_param_file"
implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc++-compile"
- action_name: "objc++-compile"
+ config_name: "c++-link-interface-dynamic-library"
+ action_name: "c++-link-interface-dynamic-library"
tool {
- tool_path: "wrapped_clang"
- execution_requirement: "requires-darwin"
+ tool_path: "DUMMY_TOOL"
}
- flag_set {
- flag_group {
- flag: "-arch"
- flag: "<architecture>"
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
- }
+ implies: "strip_debug_symbols"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-link-pic-static-library"
+ action_name: "c++-link-pic-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
}
- implies: "apply_default_compiler_flags"
- implies: "apply_default_warnings"
- implies: "framework_paths"
- implies: "preprocessor_defines"
- implies: "include_system_dirs"
- implies: "version_min"
- implies: "objc_arc"
- implies: "no_objc_arc"
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
implies: "apple_env"
}
action_config {
- config_name: "assemble"
- action_name: "assemble"
+ config_name: "c++-link-static-library"
+ action_name: "c++-link-static-library"
+ tool {
+ tool_path: "/usr/bin/ar"
+ }
+ implies: "global_whole_archive_open"
+ implies: "runtime_root_flags"
+ implies: "cc_archiver_flags"
+ implies: "input_param_flags"
+ implies: "linker_param_file"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "c++-module-compile"
+ action_name: "c++-module-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
implies: "objc_arc"
implies: "no_objc_arc"
- implies: "include_system_dirs"
implies: "apple_env"
}
action_config {
- config_name: "preprocess-assemble"
- action_name: "preprocess-assemble"
+ config_name: "c-compile"
+ action_name: "c-compile"
tool {
tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
@@ -12397,36 +12444,43 @@ toolchain {
implies: "apple_env"
}
action_config {
- config_name: "objc-archive"
- action_name: "objc-archive"
+ config_name: "objc++-compile"
+ action_name: "objc++-compile"
tool {
- tool_path: "libtool"
+ tool_path: "wrapped_clang"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-static"
- flag: "-filelist"
- flag: "%{obj_list_path}"
- flag: "-arch_only"
+ flag: "-arch"
flag: "<architecture>"
- flag: "-syslibroot"
- flag: "%{sdk_dir}"
- flag: "-o"
- flag: "%{archive_path}"
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
}
}
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
implies: "apple_env"
}
action_config {
- config_name: "objc-executable"
- action_name: "objc-executable"
+ config_name: "objc++-executable"
+ action_name: "objc++-executable"
tool {
- tool_path: "wrapped_clang"
+ tool_path: "wrapped_clang_pp"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
+ flag: "-stdlib=libc++"
+ flag: "-std=gnu++11"
+ }
+ flag_group {
flag: "-arch"
flag: "<architecture>"
}
@@ -12476,17 +12530,59 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "objc++-executable"
- action_name: "objc++-executable"
+ config_name: "objc-archive"
+ action_name: "objc-archive"
tool {
- tool_path: "wrapped_clang_pp"
+ tool_path: "libtool"
execution_requirement: "requires-darwin"
}
flag_set {
flag_group {
- flag: "-stdlib=libc++"
- flag: "-std=gnu++11"
+ flag: "-static"
+ flag: "-filelist"
+ flag: "%{obj_list_path}"
+ flag: "-arch_only"
+ flag: "<architecture>"
+ flag: "-syslibroot"
+ flag: "%{sdk_dir}"
+ flag: "-o"
+ flag: "%{archive_path}"
+ }
+ }
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-compile"
+ action_name: "objc-compile"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
+ flag_group {
+ flag: "-arch"
+ flag: "<architecture>"
}
+ }
+ implies: "objc_actions"
+ implies: "apply_default_compiler_flags"
+ implies: "apply_default_warnings"
+ implies: "framework_paths"
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
+ action_config {
+ config_name: "objc-executable"
+ action_name: "objc-executable"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ flag_set {
flag_group {
flag: "-arch"
flag: "<architecture>"
@@ -12537,106 +12633,6 @@ toolchain {
implies: "apply_implicit_frameworks"
}
action_config {
- config_name: "c++-link-executable"
- action_name: "c++-link-executable"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "symbol_counts"
- implies: "linkstamps"
- implies: "output_execpath_flags_executable"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "force_pic_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-dynamic-library"
- action_name: "c++-link-dynamic-library"
- tool {
- tool_path: "wrapped_clang"
- }
- implies: "has_configured_linker_path"
- implies: "symbol_counts"
- implies: "shared_flag"
- implies: "linkstamps"
- implies: "output_execpath_flags"
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "input_param_flags"
- implies: "legacy_link_flags"
- implies: "strip_debug_symbols"
- implies: "linker_param_file"
- implies: "version_min"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-static-library"
- action_name: "c++-link-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-static-library"
- action_name: "c++-link-alwayslink-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-pic-static-library"
- action_name: "c++-link-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-alwayslink-pic-static-library"
- action_name: "c++-link-alwayslink-pic-static-library"
- tool {
- tool_path: "/usr/bin/ar"
- }
- implies: "global_whole_archive_open"
- implies: "runtime_root_flags"
- implies: "cc_archiver_flags"
- implies: "input_param_flags"
- implies: "linker_param_file"
- implies: "apple_env"
- }
- action_config {
- config_name: "c++-link-interface-dynamic-library"
- action_name: "c++-link-interface-dynamic-library"
- tool {
- tool_path: "DUMMY_TOOL"
- }
- implies: "strip_debug_symbols"
- implies: "apple_env"
- }
- action_config {
config_name: "objc-fully-link"
action_name: "objc-fully-link"
tool {
@@ -12665,5 +12661,19 @@ toolchain {
}
implies: "apple_env"
}
+ action_config {
+ config_name: "preprocess-assemble"
+ action_name: "preprocess-assemble"
+ tool {
+ tool_path: "wrapped_clang"
+ execution_requirement: "requires-darwin"
+ }
+ implies: "preprocessor_defines"
+ implies: "include_system_dirs"
+ implies: "version_min"
+ implies: "objc_arc"
+ implies: "no_objc_arc"
+ implies: "apple_env"
+ }
cc_target_os: "apple"
}
diff --git a/tools/osx/crosstool/osx_archs.bzl b/tools/osx/crosstool/osx_archs.bzl
deleted file mode 100644
index 5ee87c6173..0000000000
--- a/tools/osx/crosstool/osx_archs.bzl
+++ /dev/null
@@ -1,28 +0,0 @@
-"""Information regarding crosstool-supported architectures."""
-# Copyright 2017 The Bazel Authors. All rights reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# List of architectures supported by osx crosstool.
-OSX_TOOLS_ARCHS = [
- "armeabi-v7a",
- "darwin_x86_64",
- "ios_x86_64",
- "ios_i386",
- "ios_armv7",
- "ios_arm64",
- "watchos_i386",
- "watchos_armv7k",
- "tvos_x86_64",
- "tvos_arm64",
-]
diff --git a/tools/osx/crosstool/wrapped_clang.tpl b/tools/osx/crosstool/wrapped_clang.tpl
deleted file mode 100644
index 3a523d2280..0000000000
--- a/tools/osx/crosstool/wrapped_clang.tpl
+++ /dev/null
@@ -1,10 +0,0 @@
-# A trick to allow invoking this script in multiple contexts.
-if [ -z ${MY_LOCATION+x} ]; then
- if [ -d "$0.runfiles/" ]; then
- MY_LOCATION="$0.runfiles/bazel_tools/tools/objc"
- else
- MY_LOCATION="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- fi
-fi
-
-"${MY_LOCATION}"/xcrunwrapper.sh clang $@
diff --git a/tools/osx/crosstool/wrapped_clang_pp.tpl b/tools/osx/crosstool/wrapped_clang_pp.tpl
deleted file mode 100644
index 4afc7b056e..0000000000
--- a/tools/osx/crosstool/wrapped_clang_pp.tpl
+++ /dev/null
@@ -1,10 +0,0 @@
-# A trick to allow invoking this script in multiple contexts.
-if [ -z ${MY_LOCATION+x} ]; then
- if [ -d "$0.runfiles/" ]; then
- MY_LOCATION="$0.runfiles/bazel_tools/tools/objc"
- else
- MY_LOCATION="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- fi
-fi
-
-"${MY_LOCATION}"/xcrunwrapper.sh clang++ $@