diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-06-11 09:45:30 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-06-11 17:03:32 +0200 |
commit | d8bc5a10b5cd97fb69c3e05d93884986d566dc60 (patch) | |
tree | 048af90b7df05cb74f99ca7c679da362f4ca838a /rules | |
parent | 32c961b53e1cbb3b57ca39174986b5d1f26b307a (diff) | |
download | rules-cc-d8bc5a10b5cd97fb69c3e05d93884986d566dc60.tar.gz |
["CC/foreign/shell", "data"] honor shell toolchain
Diffstat (limited to 'rules')
-rw-r--r-- | rules/CC/foreign/shell/EXPRESSIONS | 33 | ||||
-rw-r--r-- | rules/CC/foreign/shell/RULES | 2 |
2 files changed, 33 insertions, 2 deletions
diff --git a/rules/CC/foreign/shell/EXPRESSIONS b/rules/CC/foreign/shell/EXPRESSIONS index bf0ecdb..a0a9a00 100644 --- a/rules/CC/foreign/shell/EXPRESSIONS +++ b/rules/CC/foreign/shell/EXPRESSIONS @@ -38,17 +38,38 @@ , "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"] + , "sh prolog": ["shell", "prolog"] } , "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"} ] } ] @@ -181,6 +202,10 @@ , "$1": [ {"type": "CALL_EXPRESSION", "name": "foreign-PATH"} , {"type": "CALL_EXPRESSION", "name": "default-PATH"} + , { "type": "let*" + , "bindings": [["fieldname", "shell defaults"]] + , "body": {"type": "CALL_EXPRESSION", "name": "sh-PATH"} + } ] } ] @@ -232,7 +257,11 @@ , "$1": { "type": "++" , "$1": - [ [ "set -eu" + [ { "type": "let*" + , "bindings": [["fieldname", "shell defaults"]] + , "body": {"type": "CALL_EXPRESSION", "name": "sh prolog"} + } + , [ "set -eu" , "mkdir -p scratch work install" , "export ACTION_DIR=\"$(pwd)\"" , "export TMPDIR=\"$(pwd)/scratch\"" @@ -323,7 +352,7 @@ , {"type": "var", "name": "expand_exec"} ] } - , "cmd": ["sh", "run_cmds.sh"] + , "cmd": [{"type": "var", "name": "sh"}, "run_cmds.sh"] , "outs": {"type": "var", "name": "installed_files"} , "out_dirs": {"type": "var", "name": "installed_dirs"} , "env": {"type": "var", "name": "ENV"} diff --git a/rules/CC/foreign/shell/RULES b/rules/CC/foreign/shell/RULES index 5c85955..6a5d8ec 100644 --- a/rules/CC/foreign/shell/RULES +++ b/rules/CC/foreign/shell/RULES @@ -29,6 +29,7 @@ , "implicit": { "defaults": [["CC", "defaults"]] , "foreign-defaults": [["CC/foreign", "defaults"]] + , "shell defaults": [["shell", "defaults"]] , "expand_exec": [["./", "..", "expand_exec"]] } , "field_doc": @@ -268,6 +269,7 @@ , "implicit": { "defaults": [["CC", "defaults"]] , "foreign-defaults": [["CC/foreign", "defaults"]] + , "shell defaults": [["shell", "defaults"]] , "config_reader": [["CC", "prebuilt/read_pkgconfig.py"]] , "expand_exec": [["./", "..", "expand_exec"]] } |