diff options
56 files changed, 314 insertions, 153 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f1fd23c..f6550334 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,10 @@ A feature release on top of `1.1.0`, backwards compatible. inspect parts of a tree. - `just-mr` now supports unpacking 7zip archives (with default compression) when provided as `"zip"` type repositories. +- The configuration variable `COMPILER_FAMILY` is replaced by the more + flexible `TOOLCHAIN_CONFIG`, an object which may contain the field + `FAMILY`. From now on, this object is used to set the compiler family + (e.g., for GNU, set `{"TOOLCHAIN_CONFIG":{"FAMILY":"gnu"}}`). ### Fixes @@ -31,7 +31,7 @@ variables. The full list can be obtained via `just-mr describe`. | ARCH | x86, x86_64, arm, arm64 | x86_64 | | HOST_ARCH | x86, x86_64, arm, arm64 | *derived from ARCH* | | TARGET_ARCH | x86, x86_64, arm, arm64 | *derived from ARCH* | -| COMPILER_FAMILY | gnu, clang, unknown | unknown | +| TOOLCHAIN_CONFIG["FAMILY"] | gnu, clang, unknown | unknown | | DEBUG | true, false | false | | BUILD_STATIC_BINARY | true, false | false | @@ -92,7 +92,7 @@ Additionally, if `SOURCE_DATE_EPOCH` is set in the build environment, it is forwarded to the build configuration as well. If, on the other hand, `CC` or `CXX` are set in the build configuration, those are also used for the initial steps of the bootstrap procedure. Remember that setting -one of those variables also requires the `COMPILER_FAMILY` to +one of those variables also requires the `TOOLCHAIN_CONFIG["FAMILY"]` to ensure the proper flags are used (if in doubt, set to `"unknown"`). In any case, the resulting binary is self contained and can be moved @@ -10,7 +10,6 @@ , "BUILD_STATIC_BINARY" , "FINAL_LDFLAGS" , "CC" - , "COMPILER_FAMILY" , "CXX" , "DEBUG" , "ENV" @@ -18,6 +17,7 @@ , "OS" , "SOURCE_DATE_EPOCH" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" , "VERSION_EXTRA_SUFFIX" , "PKG_CONFIG_ARGS" ] @@ -30,9 +30,10 @@ , "HOST_ARCH": ["The architecture on which the build actions are carried out."] , "TARGET_ARCH": ["The architecture for which to build the binary."] - , "COMPILER_FAMILY": - [ "The compiler family to use as (cross) toolchain." + , "TOOLCHAIN_CONFIG": + [ "The toolchain configuration." , "" + , "Use field \"FAMILY\" to specify the compiler family." , "Supported values are \"unknown\" (the default), \"clang\", and \"gnu\"." , "The unknown compiler family tries to not make any assumptions on the" , "used C and C++ compilers and uses the generic \"cc\" and \"c++\" as" @@ -77,7 +78,7 @@ , "HOST_ARCH" , "TARGET_ARCH" , "DEBUG" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "CC" , "CXX" , "ADD_CXXFLAGS" @@ -93,8 +94,7 @@ } , "just": { "type": "configure" - , "arguments_config": - ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] + , "arguments_config": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH"] , "target": "exported-just" , "config": { "type": "let*" @@ -113,14 +113,9 @@ , "default": {"type": "var", "name": "ARCH"} } ] - , [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} - ] ] , "body": - { "type": "env" - , "vars": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] - } + {"type": "env", "vars": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH"]} } } , "installed just-mr": @@ -134,7 +129,7 @@ , "HOST_ARCH" , "TARGET_ARCH" , "DEBUG" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "CC" , "CXX" , "ADD_CXXFLAGS" @@ -149,8 +144,7 @@ } , "just-mr": { "type": "configure" - , "arguments_config": - ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] + , "arguments_config": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH"] , "target": "exported-just-mr" , "config": { "type": "let*" @@ -169,14 +163,9 @@ , "default": {"type": "var", "name": "ARCH"} } ] - , [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "clang"} - ] ] , "body": - { "type": "env" - , "vars": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] - } + {"type": "env", "vars": ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH"]} } } , "libgit2": diff --git a/bin/bootstrap.py b/bin/bootstrap.py index 17c60e48..654f931f 100755 --- a/bin/bootstrap.py +++ b/bin/bootstrap.py @@ -91,11 +91,11 @@ CFLAGS = [] CXXFLAGS = [] FINAL_LDFLAGS = ["-Wl,-z,stack-size=8388608"] -if "COMPILER_FAMILY" in CONF: - if CONF["COMPILER_FAMILY"] == "gnu": +if "TOOLCHAIN_CONFIG" in CONF and "FAMILY" in CONF["TOOLCHAIN_CONFIG"]: + if CONF["TOOLCHAIN_CONFIG"]["FAMILY"] == "gnu": CC="gcc" CXX="g++" - elif CONF["COMPILER_FAMILY"] == "clang": + elif CONF["TOOLCHAIN_CONFIG"]["FAMILY"] == "clang": CC="clang" CXX="clang++" diff --git a/etc/defaults/CC/TARGETS b/etc/defaults/CC/TARGETS index 1b3d6a1f..f6e13ea6 100644 --- a/etc/defaults/CC/TARGETS +++ b/etc/defaults/CC/TARGETS @@ -1,10 +1,19 @@ { "defaults": { "type": ["CC", "defaults"] - , "arguments_config": ["COMPILER_FAMILY", "DEBUG"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "DEBUG"] , "base": [["@", "toolchain", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "case" - , "expr": {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } , "case": { "msvc": { "type": "if" @@ -22,7 +31,16 @@ } , "ADD_CXXFLAGS": { "type": "case" - , "expr": {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } , "case": { "msvc": { "type": "if" diff --git a/etc/defaults/CC/TARGETS.absl b/etc/defaults/CC/TARGETS.absl index 7985d990..266709c9 100644 --- a/etc/defaults/CC/TARGETS.absl +++ b/etc/defaults/CC/TARGETS.absl @@ -1,12 +1,20 @@ { "defaults": { "type": ["CC", "defaults"] - , "arguments_config": ["COMPILER_FAMILY", "OS", "ARCH", "TARGET_ARCH"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "OS", "ARCH", "TARGET_ARCH"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CXXFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "OS" , { "type": "var" diff --git a/etc/defaults/CC/TARGETS.archive b/etc/defaults/CC/TARGETS.archive index f5a792a8..1aa19fb6 100644 --- a/etc/defaults/CC/TARGETS.archive +++ b/etc/defaults/CC/TARGETS.archive @@ -1,7 +1,7 @@ { "defaults": { "type": ["CC", "defaults"] , "arguments_config": - ["OS", "COMPILER_FAMILY", "DEBUG", "ENABLE_BZip2", "HIDE_SYMBOLS"] + ["OS", "TOOLCHAIN_CONFIG", "DEBUG", "ENABLE_BZip2", "HIDE_SYMBOLS"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "let*" @@ -14,7 +14,15 @@ } ] , [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , ["DEBUG", {"type": "var", "name": "DEBUG", "default": false}] ] diff --git a/etc/defaults/CC/TARGETS.curl b/etc/defaults/CC/TARGETS.curl index 233c3b6f..e57d38bc 100644 --- a/etc/defaults/CC/TARGETS.curl +++ b/etc/defaults/CC/TARGETS.curl @@ -1,13 +1,21 @@ { "defaults": { "type": ["CC", "defaults"] , "arguments_config": - ["COMPILER_FAMILY", "CURL_ENABLE_SSL", "ARCH", "TARGET_ARCH"] + ["TOOLCHAIN_CONFIG", "CURL_ENABLE_SSL", "ARCH", "TARGET_ARCH"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "CURL_ENABLE_SSL" , {"type": "var", "name": "CURL_ENABLE_SSL", "default": true} diff --git a/etc/defaults/CC/TARGETS.git2 b/etc/defaults/CC/TARGETS.git2 index 595cee1f..12320267 100644 --- a/etc/defaults/CC/TARGETS.git2 +++ b/etc/defaults/CC/TARGETS.git2 @@ -1,12 +1,20 @@ { "defaults": { "type": ["CC", "defaults"] - , "arguments_config": ["COMPILER_FAMILY", "OS"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "OS"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "OS" , { "type": "var" diff --git a/etc/defaults/CC/TARGETS.grpc b/etc/defaults/CC/TARGETS.grpc index fbafa136..86cf6e19 100644 --- a/etc/defaults/CC/TARGETS.grpc +++ b/etc/defaults/CC/TARGETS.grpc @@ -1,13 +1,21 @@ { "defaults": { "type": ["CC", "defaults"] , "arguments_config": - ["DEBUG", "OS", "ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] + ["DEBUG", "OS", "ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "OS" , { "type": "var" @@ -73,7 +81,15 @@ { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "OS" , { "type": "var" diff --git a/etc/defaults/CC/TARGETS.protobuf b/etc/defaults/CC/TARGETS.protobuf index f2ae56d6..229c8f31 100644 --- a/etc/defaults/CC/TARGETS.protobuf +++ b/etc/defaults/CC/TARGETS.protobuf @@ -1,13 +1,21 @@ { "defaults": { "type": ["CC", "defaults"] - , "arguments_config": ["ARCH", "TARGET_ARCH", "COMPILER_FAMILY"] + , "arguments_config": ["ARCH", "TARGET_ARCH", "TOOLCHAIN_CONFIG"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": ["-std=gnu17"] , "ADD_CXXFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] ] , "body": diff --git a/etc/import/TARGETS.archive b/etc/import/TARGETS.archive index af2dc82b..3b1cc98c 100644 --- a/etc/import/TARGETS.archive +++ b/etc/import/TARGETS.archive @@ -6,7 +6,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "USE_SYSTEM_LIBS" , "DEBUG" , "CC" @@ -109,7 +109,8 @@ , "HIDE_SYMBOLS": [ "Boolean. Default value: true." , "Hide all symbols not officially external." - , "Has effect if ~COMPILER_FAMILY~==\"clang\"|\"gnu\"|\"intel\"." + , "Has effect if" + , "TOOLCHAIN_CONFIG[\"FAMILY\"] == \"clang\"|\"gnu\"|\"intel\"." ] } } @@ -119,7 +120,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "USE_SYSTEM_LIBS" , "DEBUG" , "HIDE_SYMBOLS" @@ -160,7 +161,15 @@ } ] , [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } ] , [ "TARGET_ARCH" , { "type": "var" diff --git a/etc/import/TARGETS.boringssl b/etc/import/TARGETS.boringssl index 62defd2e..2c95bc0f 100644 --- a/etc/import/TARGETS.boringssl +++ b/etc/import/TARGETS.boringssl @@ -22,7 +22,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" @@ -38,7 +38,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" diff --git a/etc/import/TARGETS.bzip2 b/etc/import/TARGETS.bzip2 index 0da3c9f7..d125001f 100644 --- a/etc/import/TARGETS.bzip2 +++ b/etc/import/TARGETS.bzip2 @@ -6,7 +6,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" @@ -22,7 +22,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" @@ -40,7 +40,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" diff --git a/etc/import/TARGETS.cares b/etc/import/TARGETS.cares index ac27e698..7889b3c9 100644 --- a/etc/import/TARGETS.cares +++ b/etc/import/TARGETS.cares @@ -5,7 +5,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" diff --git a/etc/import/TARGETS.catch2 b/etc/import/TARGETS.catch2 index 9be5ce16..1182d854 100644 --- a/etc/import/TARGETS.catch2 +++ b/etc/import/TARGETS.catch2 @@ -30,7 +30,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -38,6 +37,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "catch2_internal": diff --git a/etc/import/TARGETS.curl b/etc/import/TARGETS.curl index 988f905d..230066f3 100644 --- a/etc/import/TARGETS.curl +++ b/etc/import/TARGETS.curl @@ -6,7 +6,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "USE_SYSTEM_LIBS" , "DEBUG" , "CC" @@ -198,7 +198,6 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" , "USE_SYSTEM_LIBS" , "CURL_HIDDEN_SYMBOLS" , "USE_ZLIB" diff --git a/etc/import/TARGETS.fmt b/etc/import/TARGETS.fmt index df4f426a..79986398 100644 --- a/etc/import/TARGETS.fmt +++ b/etc/import/TARGETS.fmt @@ -11,7 +11,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" diff --git a/etc/import/TARGETS.git2 b/etc/import/TARGETS.git2 index 486eb0e0..b712223e 100644 --- a/etc/import/TARGETS.git2 +++ b/etc/import/TARGETS.git2 @@ -6,7 +6,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" diff --git a/etc/import/TARGETS.grpc b/etc/import/TARGETS.grpc index b6ef81bb..186dce7c 100644 --- a/etc/import/TARGETS.grpc +++ b/etc/import/TARGETS.grpc @@ -92,7 +92,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CXX" @@ -189,7 +189,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CXX" @@ -361,7 +361,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CXX" @@ -2883,7 +2883,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CXX" diff --git a/etc/import/TARGETS.lzma b/etc/import/TARGETS.lzma index d760e48e..ddb87d41 100644 --- a/etc/import/TARGETS.lzma +++ b/etc/import/TARGETS.lzma @@ -6,7 +6,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" diff --git a/etc/import/TARGETS.protobuf b/etc/import/TARGETS.protobuf index 6492a383..76466ebc 100644 --- a/etc/import/TARGETS.protobuf +++ b/etc/import/TARGETS.protobuf @@ -12,7 +12,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" @@ -34,7 +34,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" @@ -55,7 +55,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" @@ -76,7 +76,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" diff --git a/etc/import/TARGETS.re2 b/etc/import/TARGETS.re2 index 95775dea..83f12755 100644 --- a/etc/import/TARGETS.re2 +++ b/etc/import/TARGETS.re2 @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "re2_internal": diff --git a/etc/import/TARGETS.zlib b/etc/import/TARGETS.zlib index 0b85bea6..7c18eab1 100644 --- a/etc/import/TARGETS.zlib +++ b/etc/import/TARGETS.zlib @@ -22,7 +22,7 @@ [ "OS" , "ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CC" , "CFLAGS" diff --git a/etc/import/absl/algorithm/TARGETS.absl b/etc/import/absl/algorithm/TARGETS.absl index 810dfa02..b01f6667 100644 --- a/etc/import/absl/algorithm/TARGETS.absl +++ b/etc/import/absl/algorithm/TARGETS.absl @@ -15,7 +15,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -23,6 +22,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "container_internal": diff --git a/etc/import/absl/base/TARGETS.absl b/etc/import/absl/base/TARGETS.absl index 9d6a6f14..90e1b579 100644 --- a/etc/import/absl/base/TARGETS.absl +++ b/etc/import/absl/base/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,11 +15,12 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "base_internal_": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["OS", "COMPILER_FAMILY", "ARCH", "TARGET_ARCH"] + , "arguments_config": ["OS", "TOOLCHAIN_CONFIG", "ARCH", "TARGET_ARCH"] , "name": ["base"] , "stage": ["absl", "base"] , "hdrs": @@ -49,7 +49,15 @@ , "$1": [ ["-pthread"] , { "type": "case*" - , "expr": {"type": "var", "name": "COMPILER_FAMILY"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "case": [["mingw", ["-ladvapi32"]]] } , { "type": "case*" @@ -135,7 +143,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -143,6 +150,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "core_headers_internal": @@ -178,7 +186,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -186,6 +193,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "dynamic_annotations_internal": @@ -205,7 +213,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -213,6 +220,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "log_severity_internal": @@ -233,7 +241,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -241,6 +248,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "raw_logging_internal (unexported)": diff --git a/etc/import/absl/cleanup/TARGETS.absl b/etc/import/absl/cleanup/TARGETS.absl index f6f9b111..5aa16c75 100644 --- a/etc/import/absl/cleanup/TARGETS.absl +++ b/etc/import/absl/cleanup/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "cleanup_internal_": diff --git a/etc/import/absl/container/TARGETS.absl b/etc/import/absl/container/TARGETS.absl index e74c658d..96165d82 100644 --- a/etc/import/absl/container/TARGETS.absl +++ b/etc/import/absl/container/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "inlined_vector_internal_": @@ -103,7 +103,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -111,6 +110,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "flat_hash_map_internal": @@ -237,7 +237,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -245,6 +244,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "flat_hash_set_internal": @@ -271,7 +271,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -279,6 +278,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "btree_internal": diff --git a/etc/import/absl/debugging/TARGETS.absl b/etc/import/absl/debugging/TARGETS.absl index 658ec06d..56cd8da6 100644 --- a/etc/import/absl/debugging/TARGETS.absl +++ b/etc/import/absl/debugging/TARGETS.absl @@ -1,6 +1,6 @@ { "symbolize": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["COMPILER_FAMILY", "ARCH", "TARGET_ARCH"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "ARCH", "TARGET_ARCH"] , "name": ["symbolize"] , "stage": ["absl", "debugging"] , "hdrs": ["internal/symbolize.h", "symbolize.h"] @@ -30,7 +30,15 @@ { "type": "++" , "$1": [ { "type": "case*" - , "expr": {"type": "var", "name": "COMPILER_FAMILY"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "case": [["mingw", ["-ladvapi32"]]] } , { "type": "case" diff --git a/etc/import/absl/flags/TARGETS.absl b/etc/import/absl/flags/TARGETS.absl index 0ebca782..76370c9c 100644 --- a/etc/import/absl/flags/TARGETS.absl +++ b/etc/import/absl/flags/TARGETS.absl @@ -44,7 +44,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -52,6 +51,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "marshalling_internal": @@ -155,7 +155,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -163,6 +162,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "flag_": diff --git a/etc/import/absl/functional/TARGETS.absl b/etc/import/absl/functional/TARGETS.absl index cbf5adcc..be3a96ec 100644 --- a/etc/import/absl/functional/TARGETS.absl +++ b/etc/import/absl/functional/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "function_ref_internal": @@ -39,7 +39,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -47,6 +46,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "any_invocable_internal": @@ -72,7 +72,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -80,6 +79,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "bind_front_internal": diff --git a/etc/import/absl/hash/TARGETS.absl b/etc/import/absl/hash/TARGETS.absl index b2c56ac4..526faa70 100644 --- a/etc/import/absl/hash/TARGETS.absl +++ b/etc/import/absl/hash/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "hash_internal": diff --git a/etc/import/absl/log/TARGETS.absl b/etc/import/absl/log/TARGETS.absl index 67f0f3dc..df213b23 100644 --- a/etc/import/absl/log/TARGETS.absl +++ b/etc/import/absl/log/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "absl_check_internal": @@ -35,7 +35,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -43,6 +42,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "absl_log_internal": @@ -62,7 +62,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -70,6 +69,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "die_if_null_internal": @@ -110,7 +110,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -118,6 +117,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "initialize_internal": diff --git a/etc/import/absl/memory/TARGETS.absl b/etc/import/absl/memory/TARGETS.absl index c8ca115c..efb89a0f 100644 --- a/etc/import/absl/memory/TARGETS.absl +++ b/etc/import/absl/memory/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "memory_internal": diff --git a/etc/import/absl/meta/TARGETS.absl b/etc/import/absl/meta/TARGETS.absl index 4ccf97c9..a6199106 100644 --- a/etc/import/absl/meta/TARGETS.absl +++ b/etc/import/absl/meta/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "type_traits_internal": diff --git a/etc/import/absl/numeric/TARGETS.absl b/etc/import/absl/numeric/TARGETS.absl index 4ebf47a6..ed778e60 100644 --- a/etc/import/absl/numeric/TARGETS.absl +++ b/etc/import/absl/numeric/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "int128_internal": @@ -37,7 +37,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -45,6 +44,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "bits_internal": diff --git a/etc/import/absl/random/TARGETS.absl b/etc/import/absl/random/TARGETS.absl index 2407f1f6..c32ecb3a 100644 --- a/etc/import/absl/random/TARGETS.absl +++ b/etc/import/absl/random/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" , "USE_SYSTEM_LIBS" ] } @@ -43,7 +43,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -51,6 +50,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" , "USE_SYSTEM_LIBS" ] } @@ -328,7 +328,6 @@ , "internal_randen_hwaes": { "type": ["@", "rules", "CC", "library"] , "name": ["internal_randen_hwaes"] - , "arguments_config": ["TARGET_ARCH", "COMPILER_FAMILY"] , "stage": ["absl", "random"] , "hdrs": ["internal/randen_detect.h", "internal/randen_hwaes.h"] , "srcs": ["internal/randen_detect.cc"] @@ -355,7 +354,7 @@ , "internal_randen_hwaes_impl": { "type": ["@", "rules", "CC", "library"] , "name": ["internal_randen_hwaes_impl"] - , "arguments_config": ["TARGET_ARCH", "COMPILER_FAMILY"] + , "arguments_config": ["TARGET_ARCH", "TOOLCHAIN_CONFIG"] , "stage": ["absl", "random"] , "private-hdrs": ["internal/randen_hwaes.h"] , "srcs": ["internal/randen_hwaes.cc"] @@ -367,7 +366,15 @@ , ["arm64", ["-march=armv8-a+crypto"]] , [ "x86_64" , { "type": "case*" - , "expr": {"type": "var", "name": "COMPILER_FAMILY"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "case": [["msvc", []]] , "default": ["-maes", "-msse4.1"] } diff --git a/etc/import/absl/status/TARGETS.absl b/etc/import/absl/status/TARGETS.absl index 245ea40e..5b6a13d2 100644 --- a/etc/import/absl/status/TARGETS.absl +++ b/etc/import/absl/status/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "status_internal": @@ -50,7 +50,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -58,6 +57,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "statusor_internal": diff --git a/etc/import/absl/strings/TARGETS.absl b/etc/import/absl/strings/TARGETS.absl index 81f5a839..129a48f6 100644 --- a/etc/import/absl/strings/TARGETS.absl +++ b/etc/import/absl/strings/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "strings_internal": @@ -89,7 +89,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -97,6 +96,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "internal_": @@ -130,7 +130,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -138,6 +137,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "cord_internal_": @@ -314,7 +314,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -322,6 +321,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "str_format_internal_": diff --git a/etc/import/absl/synchronization/TARGETS.absl b/etc/import/absl/synchronization/TARGETS.absl index bffd7ea6..3ca1d759 100644 --- a/etc/import/absl/synchronization/TARGETS.absl +++ b/etc/import/absl/synchronization/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "synchronization_internal": diff --git a/etc/import/absl/time/TARGETS.absl b/etc/import/absl/time/TARGETS.absl index e08a1fac..aafe343f 100644 --- a/etc/import/absl/time/TARGETS.absl +++ b/etc/import/absl/time/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "time_internal": diff --git a/etc/import/absl/types/TARGETS.absl b/etc/import/absl/types/TARGETS.absl index a6de1d33..0dc84c40 100644 --- a/etc/import/absl/types/TARGETS.absl +++ b/etc/import/absl/types/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "optional_internal": @@ -51,7 +51,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -59,6 +58,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "variant_internal": @@ -93,7 +93,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -101,6 +100,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "span_internal": diff --git a/etc/import/absl/utility/TARGETS.absl b/etc/import/absl/utility/TARGETS.absl index 91197dcc..209cd13e 100644 --- a/etc/import/absl/utility/TARGETS.absl +++ b/etc/import/absl/utility/TARGETS.absl @@ -8,7 +8,6 @@ , "ARCH" , "CC" , "CFLAGS" - , "COMPILER_FAMILY" , "CXX" , "CXXFLAGS" , "DEBUG" @@ -16,6 +15,7 @@ , "HOST_ARCH" , "OS" , "TARGET_ARCH" + , "TOOLCHAIN_CONFIG" ] } , "utility_internal": diff --git a/etc/import/deps/http-parser/TARGETS.git2 b/etc/import/deps/http-parser/TARGETS.git2 index ad48f2c2..80f4ffc6 100644 --- a/etc/import/deps/http-parser/TARGETS.git2 +++ b/etc/import/deps/http-parser/TARGETS.git2 @@ -1,13 +1,22 @@ { "git2_http_parser": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["COMPILER_FAMILY"] + , "arguments_config": ["TOOLCHAIN_CONFIG"] , "name": ["git2_http_parser"] , "pure C": ["yes"] , "srcs": ["http_parser.c"] , "hdrs": ["http_parser.h"] , "private-cflags": { "type": "case" - , "expr": {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } , "case": {"gnu": ["-Wimplicit-fallthrough=1"]} } } diff --git a/etc/import/lib/TARGETS.curl b/etc/import/lib/TARGETS.curl index 397f1474..5e5ec9b0 100644 --- a/etc/import/lib/TARGETS.curl +++ b/etc/import/lib/TARGETS.curl @@ -3,7 +3,7 @@ , "arguments_config": [ "OS" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "CURL_HIDDEN_SYMBOLS" , "USE_ZLIB" , "ENABLE_ARES" @@ -51,7 +51,17 @@ , "config": { "type": "let*" , "bindings": - [ [ "sys_hdrs" + [ [ "COMPILER_FAMILY" + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } + ] + , [ "sys_hdrs" , [ "windows.h" , "ws2tcpip.h" , "winsock2.h" diff --git a/etc/import/libarchive/TARGETS.archive b/etc/import/libarchive/TARGETS.archive index de471234..cde2b465 100644 --- a/etc/import/libarchive/TARGETS.archive +++ b/etc/import/libarchive/TARGETS.archive @@ -3,7 +3,7 @@ , "arguments_config": [ "OS" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "ENABLE_MBEDTLS" , "ENABLE_NETTLE" @@ -34,7 +34,17 @@ , "config": { "type": "let*" , "bindings": - [ [ "sys_hdrs" + [ [ "COMPILER_FAMILY" + , { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } + ] + , [ "sys_hdrs" , [ "zlib.h" , "bzlib.h" , "lzma.h" diff --git a/etc/import/src/TARGETS.archive b/etc/import/src/TARGETS.archive index ee3ff78b..b71c4f89 100644 --- a/etc/import/src/TARGETS.archive +++ b/etc/import/src/TARGETS.archive @@ -520,13 +520,21 @@ } , "archive_hidden_symbols": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["COMPILER_FAMILY", "HIDE_SYMBOLS"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "HIDE_SYMBOLS"] , "name": ["archive_hidden_symbols"] , "private-ldflags": { "type": "if" , "cond": { "type": "==" - , "$1": {"type": "var", "name": "COMPILER_FAMILY"} + , "$1": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "$2": "msvc" } , "then": [] @@ -535,7 +543,15 @@ , "cond": {"type": "var", "name": "HIDE_SYMBOLS"} , "then": { "type": "case*" - , "expr": {"type": "var", "name": "COMPILER_FAMILY"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "case": [ ["clang", ["-fvisibility=hidden"]] , ["gnu", ["-fvisibility=hidden"]] diff --git a/etc/import/src/TARGETS.curl b/etc/import/src/TARGETS.curl index 1bfd750a..29fd9706 100644 --- a/etc/import/src/TARGETS.curl +++ b/etc/import/src/TARGETS.curl @@ -429,13 +429,21 @@ } , "curl_hidden_symbols": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["COMPILER_FAMILY", "CURL_HIDDEN_SYMBOLS"] + , "arguments_config": ["TOOLCHAIN_CONFIG", "CURL_HIDDEN_SYMBOLS"] , "name": ["curl_hidden_symbols"] , "private-ldflags": { "type": "if" , "cond": { "type": "==" - , "$1": {"type": "var", "name": "COMPILER_FAMILY"} + , "$1": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "$2": "msvc" } , "then": [] @@ -444,7 +452,15 @@ , "cond": {"type": "var", "name": "CURL_HIDDEN_SYMBOLS"} , "then": { "type": "case*" - , "expr": {"type": "var", "name": "COMPILER_FAMILY"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "case": [ ["clang", ["-fvisibility=hidden"]] , ["gnu", ["-fvisibility=hidden"]] diff --git a/etc/import/src/google/protobuf/TARGETS.protobuf b/etc/import/src/google/protobuf/TARGETS.protobuf index 0589f938..7add3c15 100644 --- a/etc/import/src/google/protobuf/TARGETS.protobuf +++ b/etc/import/src/google/protobuf/TARGETS.protobuf @@ -266,11 +266,20 @@ } , "libprotobuf_lite": { "type": ["@", "rules", "CC", "library"] - , "arguments_config": ["COMPILER_FAMILY"] + , "arguments_config": ["TOOLCHAIN_CONFIG"] , "name": ["protobuf-lite"] , "cflags": { "type": "case" - , "expr": {"type": "var", "name": "COMPILER_FAMILY", "default": "unknown"} + , "expr": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + , "default": "unknown" + } , "case": { "gnu": [ "-Wno-sign-compare" diff --git a/etc/import/third_party/utf8_range/TARGETS.protobuf b/etc/import/third_party/utf8_range/TARGETS.protobuf index 44c5340a..bcd4d3dd 100644 --- a/etc/import/third_party/utf8_range/TARGETS.protobuf +++ b/etc/import/third_party/utf8_range/TARGETS.protobuf @@ -6,7 +6,7 @@ , "ARCH" , "HOST_ARCH" , "TARGET_ARCH" - , "COMPILER_FAMILY" + , "TOOLCHAIN_CONFIG" , "DEBUG" , "CXX" , "CXXFLAGS" diff --git a/etc/toolchain/CC/TARGETS b/etc/toolchain/CC/TARGETS index 3ad0ef3d..e5e5351c 100644 --- a/etc/toolchain/CC/TARGETS +++ b/etc/toolchain/CC/TARGETS @@ -1,6 +1,6 @@ { "defaults": { "type": ["CC", "defaults"] - , "arguments_config": ["OS", "ARCH", "COMPILER_FAMILY"] + , "arguments_config": ["OS", "ARCH", "TOOLCHAIN_CONFIG"] , "base": { "type": "let*" , "bindings": @@ -11,7 +11,15 @@ , "$1": [{"type": "var", "name": "OS"}, {"type": "var", "name": "ARCH"}] } - , "then": {"type": "var", "name": "COMPILER_FAMILY"} + , "then": + { "type": "lookup" + , "map": + { "type": "var" + , "name": "TOOLCHAIN_CONFIG" + , "default": {"type": "empty_map"} + } + , "key": "FAMILY" + } , "else": "unknown" } ] @@ -24,7 +32,7 @@ , "default": { "type": "fail" , "msg": - [ "Unsupported COMPILER_FAMILY" + [ "Unsupported TOOLCHAIN_CONFIG[FAMILY]" , {"type": "var", "name": "COMPILER_FAMILY"} ] } diff --git a/test/TARGETS b/test/TARGETS index 0b1dbefd..9054bd75 100644 --- a/test/TARGETS +++ b/test/TARGETS @@ -32,13 +32,7 @@ , "ALL": { "type": "configure" , "arguments_config": - [ "OS" - , "ARCH" - , "HOST_ARCH" - , "TARGET_ARCH" - , "COMPILER_FAMILY" - , "TEST_BOOTSTRAP_JUST_MR" - ] + ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "TEST_BOOTSTRAP_JUST_MR"] , "tainted": ["test"] , "target": "TESTS" , "config": @@ -58,20 +52,11 @@ , "default": {"type": "var", "name": "ARCH"} } ] - , [ "COMPILER_FAMILY" - , {"type": "var", "name": "COMPILER_FAMILY", "default": "clang"} - ] ] , "body": { "type": "env" , "vars": - [ "OS" - , "ARCH" - , "HOST_ARCH" - , "TARGET_ARCH" - , "COMPILER_FAMILY" - , "TEST_BOOTSTRAP_JUST_MR" - ] + ["OS", "ARCH", "HOST_ARCH", "TARGET_ARCH", "TEST_BOOTSTRAP_JUST_MR"] } } } diff --git a/test/bootstrap/TARGETS b/test/bootstrap/TARGETS index ab8ae1e6..039dec92 100644 --- a/test/bootstrap/TARGETS +++ b/test/bootstrap/TARGETS @@ -36,7 +36,7 @@ , [ "TEST_ENV" , { "type": "singleton_map" , "key": "JUST_BUILD_CONF" - , "value": "{\"COMPILER_FAMILY\": \"gnu\", \"CC\": \"gcc\", \"CXX\": \"g++\"}" + , "value": "{\"TOOLCHAIN_CONFIG\":{\"FAMILY\": \"gnu\"}, \"CC\": \"gcc\", \"CXX\": \"g++\"}" } ] ] diff --git a/test/bootstrap/test-bootstrap-pkgconfig.sh b/test/bootstrap/test-bootstrap-pkgconfig.sh index 3087d380..d9e0da02 100755 --- a/test/bootstrap/test-bootstrap-pkgconfig.sh +++ b/test/bootstrap/test-bootstrap-pkgconfig.sh @@ -35,7 +35,7 @@ mkdir -p ${TEST_OUT_DIR} env LOCALBASE=${LOCALBASE} \ PACKAGE=YES \ - JUST_BUILD_CONF='{"COMPILER_FAMILY":"clang", "PKG_CONFIG_ARGS":["--define-prefix"]}' \ + JUST_BUILD_CONF='{"TOOLCHAIN_CONFIG":{"FAMILY": "clang"}, "PKG_CONFIG_ARGS":["--define-prefix"]}' \ python3 ${WRKSRC}/bin/bootstrap.py ${WRKSRC} ${WRKDIR} 2>&1 # Do some sanity checks with the binary diff --git a/test/bootstrap/test-mixed-bootstrap.sh b/test/bootstrap/test-mixed-bootstrap.sh index 981116c4..2a665445 100755 --- a/test/bootstrap/test-mixed-bootstrap.sh +++ b/test/bootstrap/test-mixed-bootstrap.sh @@ -51,7 +51,7 @@ cp distdir/fmt-10.0.0.zip "${DISTDIR}" env LOCALBASE=${LOCALBASE} \ PACKAGE=YES \ NON_LOCAL_DEPS='["com_github_microsoft_gsl", "fmt"]' \ - JUST_BUILD_CONF='{"COMPILER_FAMILY":"clang", "PKG_CONFIG_ARGS":["--define-prefix"]}' \ + JUST_BUILD_CONF='{"TOOLCHAIN_CONFIG":{"FAMILY":"clang"}, "PKG_CONFIG_ARGS":["--define-prefix"]}' \ python3 ${WRKSRC}/bin/bootstrap.py ${WRKSRC} ${WRKDIR} ${DISTDIR} 2>&1 # Do some sanity checks with the binary diff --git a/test/bootstrap/test-symlink-bootstrap.sh b/test/bootstrap/test-symlink-bootstrap.sh index dc541fe4..49554cf3 100755 --- a/test/bootstrap/test-symlink-bootstrap.sh +++ b/test/bootstrap/test-symlink-bootstrap.sh @@ -50,7 +50,7 @@ ln -s ${UNRELATED_FILE} ${LOCALBASE}/lib/libfoo.so env LOCALBASE=${LOCALBASE} \ PACKAGE=YES \ - JUST_BUILD_CONF='{"COMPILER_FAMILY":"clang", "PKG_CONFIG_ARGS":["--define-prefix"]}' \ + JUST_BUILD_CONF='{"TOOLCHAIN_CONFIG":{"FAMILY":"clang"}, "PKG_CONFIG_ARGS":["--define-prefix"]}' \ python3 ${WRKSRC}/bin/bootstrap.py ${WRKSRC} ${WRKDIR} 2>&1 # Do some sanity checks with the binary |