diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-05-22 17:20:15 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-05-22 17:20:15 +0200 |
commit | b355f8ef08863c26286ada40bcc7ffd04c4b5dc8 (patch) | |
tree | 90976bf338d190796e73fd1f422b209f27d8c8d1 /rules/CC/foreign/cmake/EXPRESSIONS | |
parent | 2eafcd6f473910331f38c029cdb268eb4eae68ae (diff) | |
parent | 4537ee61fc503d6471946f26966095a029f1303c (diff) | |
download | rules-cc-b355f8ef08863c26286ada40bcc7ffd04c4b5dc8.tar.gz |
Merge subtree 'rules' into rules-cc
Diffstat (limited to 'rules/CC/foreign/cmake/EXPRESSIONS')
-rw-r--r-- | rules/CC/foreign/cmake/EXPRESSIONS | 44 |
1 files changed, 43 insertions, 1 deletions
diff --git a/rules/CC/foreign/cmake/EXPRESSIONS b/rules/CC/foreign/cmake/EXPRESSIONS index 9b264d8..ee7c595 100644 --- a/rules/CC/foreign/cmake/EXPRESSIONS +++ b/rules/CC/foreign/cmake/EXPRESSIONS @@ -45,17 +45,37 @@ , "foreign-PATH": ["CC/foreign", "default-PATH"] , "foreign-TOOLCHAIN": ["CC/foreign", "default-TOOLCHAIN"] , "foreign-NON_SYSTEM_TOOLS": ["CC/foreign", "default-NON_SYSTEM_TOOLS"] + , "map_provider": ["", "field_map_provider"] + , "sh": ["shell", "sh"] + , "sh-PATH": ["shell", "PATH"] } , "expression": { "type": "let*" , "bindings": [ ["TOOLCHAIN_DIR", "toolchain"] + , [ "shell TOOLCHAIN" + , { "type": "let*" + , "bindings": + [ ["fieldname", "shell defaults"] + , ["provider", "TOOLCHAIN"] + , ["default", {"type": "empty_map"}] + ] + , "body": {"type": "CALL_EXPRESSION", "name": "map_provider"} + } + ] + , [ "sh" + , { "type": "let*" + , "bindings": [["fieldname", "shell defaults"]] + , "body": {"type": "CALL_EXPRESSION", "name": "sh"} + } + ] , [ "TOOLCHAIN" , { "type": "disjoint_map_union" , "msg": "Toolchain trees may not overlap" , "$1": [ {"type": "CALL_EXPRESSION", "name": "foreign-TOOLCHAIN"} , {"type": "CALL_EXPRESSION", "name": "default-TOOLCHAIN"} + , {"type": "var", "name": "shell TOOLCHAIN"} ] } ] @@ -183,6 +203,27 @@ } } ] + , [ "sh-PATH" + , { "type": "join" + , "separator": ":" + , "$1": + { "type": "let*" + , "bindings": [["fieldname", "shell defaults"]] + , "body": {"type": "CALL_EXPRESSION", "name": "sh-PATH"} + } + } + ] + , [ "sh-ENV" + , { "type": "if" + , "cond": {"type": "var", "name": "sh-PATH"} + , "then": + { "type": "singleton_map" + , "key": "PATH" + , "value": {"type": "var", "name": "sh-PATH"} + } + , "else": {"type": "empty_map"} + } + ] , [ "PATH" , { "type": "join" , "separator": ":" @@ -217,6 +258,7 @@ , "CMAKE" ] } + , {"type": "var", "name": "sh-ENV"} , {"type": "CALL_EXPRESSION", "name": "default-ENV"} , {"type": "CALL_EXPRESSION", "name": "foreign-ENV"} , {"type": "var", "name": "ENV", "default": {"type": "empty_map"}} @@ -385,7 +427,7 @@ , "cmd": { "type": "++" , "$1": - [ [ "sh" + [ [ {"type": "var", "name": "sh"} , "run_cmake.sh" , {"type": "var", "name": "CMAKE_SUBDIR"} , {"type": "var", "name": "AR"} |