diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-11-06 14:45:05 +0100 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-11-06 14:45:05 +0100 |
commit | 9daa85fed4535baecc092133aab337bd27726ff2 (patch) | |
tree | 0629c28148d2944e49ecdacf1fa1424a0e17ea0a | |
parent | 02490fb528ed90702eb4b71917f33ec9aa894252 (diff) | |
parent | 2b07a15b20ed814f253ec3bc7f0ee089ccd066f2 (diff) | |
download | rules-cc-9daa85fed4535baecc092133aab337bd27726ff2.tar.gz |
Merge subtree 'rules' into rules-cc
-rw-r--r-- | rules/CC/EXPRESSIONS | 12 | ||||
-rw-r--r-- | rules/CC/RULES | 18 | ||||
-rw-r--r-- | rules/CC/foreign/RULES | 18 | ||||
-rw-r--r-- | rules/CC/foreign/cmake/EXPRESSIONS | 19 | ||||
-rw-r--r-- | rules/CC/foreign/make/EXPRESSIONS | 19 | ||||
-rw-r--r-- | rules/CC/foreign/shell/EXPRESSIONS | 25 | ||||
-rw-r--r-- | rules/CC/pkgconfig/RULES | 35 | ||||
-rw-r--r-- | rules/CC/proto/RULES | 18 | ||||
-rw-r--r-- | rules/CC/test/EXPRESSIONS | 17 | ||||
-rw-r--r-- | rules/EXPRESSIONS | 16 | ||||
-rw-r--r-- | rules/lint/RULES | 25 | ||||
-rw-r--r-- | rules/patch/RULES | 18 | ||||
-rw-r--r-- | rules/shell/RULES | 44 | ||||
-rw-r--r-- | rules/shell/test/RULES | 17 |
14 files changed, 108 insertions, 193 deletions
diff --git a/rules/CC/EXPRESSIONS b/rules/CC/EXPRESSIONS index fe6f9cb..c616dfa 100644 --- a/rules/CC/EXPRESSIONS +++ b/rules/CC/EXPRESSIONS @@ -2829,16 +2829,8 @@ } ] } - , "cmd": - [ "sh" - , "-c" - , { "type": "join" - , "$1": - [ "cd work && " - , {"type": "join_cmd", "$1": {"type": "var", "name": "cmd"}} - ] - } - ] + , "cmd": {"type": "var", "name": "cmd"} + , "cwd": "work" , "env": {"type": "var", "name": "ENV"} } ] diff --git a/rules/CC/RULES b/rules/CC/RULES index 51b2578..6c07275 100644 --- a/rules/CC/RULES +++ b/rules/CC/RULES @@ -99,7 +99,6 @@ , "base-provides-++": "defaults-base-provides-++" , "base-provides-list": "defaults-base-provides-list" , "artifacts_list": ["./", "..", "field_artifacts_list"] - , "nub_left": ["", "nub_left"] , "compile-deps": "compile-deps" , "compile-args-deps": "compile-args-deps" , "link-deps": "link-deps" @@ -182,17 +181,14 @@ ] , ["provider", "PATH"] , [ "PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] , ["provider", "ENV"] diff --git a/rules/CC/foreign/RULES b/rules/CC/foreign/RULES index 935d477..e6463f8 100644 --- a/rules/CC/foreign/RULES +++ b/rules/CC/foreign/RULES @@ -31,7 +31,6 @@ , "base-provides-++": ["./", "..", "defaults-base-provides-++"] , "base-provides-list": ["./", "..", "defaults-base-provides-list"] , "artifacts_list": ["./", "../..", "field_artifacts_list"] - , "nub_left": ["", "nub_left"] , "for host": ["transitions", "for host"] } , "config_transitions": @@ -60,17 +59,14 @@ ] , ["provider", "PATH"] , [ "PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] , ["provider", "ENV"] diff --git a/rules/CC/foreign/cmake/EXPRESSIONS b/rules/CC/foreign/cmake/EXPRESSIONS index c8f6dc1..a36725b 100644 --- a/rules/CC/foreign/cmake/EXPRESSIONS +++ b/rules/CC/foreign/cmake/EXPRESSIONS @@ -28,7 +28,6 @@ ] , "imports": { "artifacts": ["", "field_artifacts"] - , "nub_left": ["", "nub_left"] , "flags-cc": ["CC", "flags-cc"] , "flags-cxx": ["CC", "flags-cxx"] , "compiler-cc": ["CC", "compiler-cc"] @@ -228,18 +227,14 @@ , { "type": "join" , "separator": ":" , "$1": - { "type": "let*" - , "bindings": - [ [ "list" - , { "type": "++" - , "$1": - [ {"type": "CALL_EXPRESSION", "name": "foreign-PATH"} - , {"type": "CALL_EXPRESSION", "name": "default-PATH"} - ] - } + { "type": "nub_left" + , "$1": + { "type": "++" + , "$1": + [ {"type": "CALL_EXPRESSION", "name": "foreign-PATH"} + , {"type": "CALL_EXPRESSION", "name": "default-PATH"} ] - ] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + } } } ] diff --git a/rules/CC/foreign/make/EXPRESSIONS b/rules/CC/foreign/make/EXPRESSIONS index 1707104..68aa728 100644 --- a/rules/CC/foreign/make/EXPRESSIONS +++ b/rules/CC/foreign/make/EXPRESSIONS @@ -30,7 +30,6 @@ ] , "imports": { "artifacts": ["", "field_artifacts"] - , "nub_left": ["", "nub_left"] , "flags-cc": ["CC", "flags-cc"] , "flags-cxx": ["CC", "flags-cxx"] , "compiler-cc": ["CC", "compiler-cc"] @@ -205,18 +204,14 @@ , { "type": "join" , "separator": ":" , "$1": - { "type": "let*" - , "bindings": - [ [ "list" - , { "type": "++" - , "$1": - [ {"type": "CALL_EXPRESSION", "name": "foreign-PATH"} - , {"type": "CALL_EXPRESSION", "name": "default-PATH"} - ] - } + { "type": "nub_left" + , "$1": + { "type": "++" + , "$1": + [ {"type": "CALL_EXPRESSION", "name": "foreign-PATH"} + , {"type": "CALL_EXPRESSION", "name": "default-PATH"} ] - ] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + } } } ] diff --git a/rules/CC/foreign/shell/EXPRESSIONS b/rules/CC/foreign/shell/EXPRESSIONS index a1dcd0c..a37d315 100644 --- a/rules/CC/foreign/shell/EXPRESSIONS +++ b/rules/CC/foreign/shell/EXPRESSIONS @@ -22,7 +22,6 @@ ] , "imports": { "artifacts": ["", "field_artifacts"] - , "nub_left": ["", "nub_left"] , "flags-cc": ["CC", "flags-cc"] , "flags-cxx": ["CC", "flags-cxx"] , "compiler-cc": ["CC", "compiler-cc"] @@ -194,22 +193,18 @@ , { "type": "join" , "separator": ":" , "$1": - { "type": "let*" - , "bindings": - [ [ "list" - , { "type": "++" - , "$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"} - } - ] + { "type": "nub_left" + , "$1": + { "type": "++" + , "$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"} } ] - ] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + } } } ] diff --git a/rules/CC/pkgconfig/RULES b/rules/CC/pkgconfig/RULES index 363136f..f72fdf6 100644 --- a/rules/CC/pkgconfig/RULES +++ b/rules/CC/pkgconfig/RULES @@ -14,7 +14,6 @@ , "imports": { "base-provides": ["./", "..", "defaults-base-provides"] , "base-provides-++": ["./", "..", "defaults-base-provides-++"] - , "nub_left": ["", "nub_left"] } , "expression": { "type": "let*" @@ -31,33 +30,27 @@ , ["PATH", {"type": "FIELD", "name": "PATH"}] , ["provider", "PATH"] , [ "PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] , ["PKG_CONFIG_PATH", {"type": "FIELD", "name": "PKG_CONFIG_PATH"}] , ["provider", "PKG_CONFIG_PATH"] , [ "PKG_CONFIG_PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PKG_CONFIG_PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PKG_CONFIG_PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PKG_CONFIG_PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PKG_CONFIG_PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] ] diff --git a/rules/CC/proto/RULES b/rules/CC/proto/RULES index 6fb0f40..e7a2f46 100644 --- a/rules/CC/proto/RULES +++ b/rules/CC/proto/RULES @@ -83,7 +83,6 @@ , "base-provides-++": ["./", "..", "defaults-base-provides-++"] , "base-provides-list": ["./", "..", "defaults-base-provides-list"] , "artifacts_list": ["", "field_artifacts_list"] - , "nub_left": ["", "nub_left"] , "compile-deps": ["CC", "compile-deps"] , "compile-args-deps": ["CC", "compile-args-deps"] , "link-deps": ["CC", "link-deps"] @@ -139,17 +138,14 @@ ] , ["provider", "PATH"] , [ "PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] , ["provider", "ENV"] diff --git a/rules/CC/test/EXPRESSIONS b/rules/CC/test/EXPRESSIONS index b12b80d..1389bbc 100644 --- a/rules/CC/test/EXPRESSIONS +++ b/rules/CC/test/EXPRESSIONS @@ -377,19 +377,16 @@ } ] , [ "artifacts" - , { "type": "map_union" + , { "type": "`" , "$1": - [ { "type": "singleton_map" - , "key": "pwd" - , "value": {"type": "BLOB", "data": "/summary"} - } - , {"type": "var", "name": "summary"} - , { "type": "singleton_map" - , "key": "work" - , "value": + { "pwd": + {"type": ",", "$1": {"type": "BLOB", "data": "/summary"}} + , "work": + { "type": "," + , "$1": {"type": "TREE", "$1": {"type": "var", "name": "attempts"}} } - ] + } } ] , [ "runfiles" diff --git a/rules/EXPRESSIONS b/rules/EXPRESSIONS index 52a381f..0c1f611 100644 --- a/rules/EXPRESSIONS +++ b/rules/EXPRESSIONS @@ -126,7 +126,7 @@ , "expression": { "type": "map_union" , "$1": - [ {"type": "singleton_map", "key": "PATH", "value": "/bin:/usr/bin"} + [ {"type": "'", "$1": {"PATH": "/bin:/usr/bin"}} , {"type": "var", "name": "ENV", "default": {"type": "empty_map"}} ] } @@ -226,18 +226,4 @@ } } } -, "nub_left": - { "doc": ["Removes all but the leftmost duplicate from the list."] - , "vars": ["list"] - , "vars_doc": {"list": ["The list to remove duplicates from."]} - , "expression": - { "type": "let*" - , "bindings": - [ ["list", {"type": "reverse", "$1": {"type": "var", "name": "list"}}] - , ["list", {"type": "nub_right", "$1": {"type": "var", "name": "list"}}] - , ["list", {"type": "reverse", "$1": {"type": "var", "name": "list"}}] - ] - , "body": {"type": "var", "name": "list"} - } - } } diff --git a/rules/lint/RULES b/rules/lint/RULES index e1000d9..0da42d2 100644 --- a/rules/lint/RULES +++ b/rules/lint/RULES @@ -21,23 +21,17 @@ { "type": "let*" , "bindings": [ [ "PATH" - , { "type": "reverse" + , { "type": "nub_left" , "$1": - { "type": "nub_right" + { "type": "++" , "$1": - { "type": "reverse" - , "$1": - { "type": "++" - , "$1": - [ {"type": "FIELD", "name": "PATH"} - , { "type": "let*" - , "bindings": [["provider", "PATH"]] - , "body": - {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - } - ] + [ {"type": "FIELD", "name": "PATH"} + , { "type": "let*" + , "bindings": [["provider", "PATH"]] + , "body": + {"type": "CALL_EXPRESSION", "name": "base-provides-++"} } - } + ] } } ] @@ -99,8 +93,7 @@ , "call_lint": ["call_lint"] , "call_summary": ["call_summary"] } - , "config_transitions": - {"targets": [{"type": "singleton_map", "key": "LINT", "value": true}]} + , "config_transitions": {"targets": [{"type": "'", "$1": {"LINT": true}}]} , "anonymous": {"lint": {"target": "targets", "provider": "lint", "rule_map": {}}} , "imports": diff --git a/rules/patch/RULES b/rules/patch/RULES index c55de58..ea495f0 100644 --- a/rules/patch/RULES +++ b/rules/patch/RULES @@ -32,7 +32,6 @@ , "base-provides-++": ["CC", "defaults-base-provides-++"] , "base-provides-list": ["CC", "defaults-base-provides-list"] , "artifacts_list": ["", "field_artifacts_list"] - , "nub_left": ["", "nub_left"] , "for host": ["transitions", "for host"] } , "config_transitions": @@ -52,17 +51,14 @@ ] , ["provider", "PATH"] , [ "PATH" - , { "type": "++" + , { "type": "nub_left" , "$1": - [ {"type": "var", "name": "PATH"} - , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - ] - } - ] - , [ "PATH" - , { "type": "let*" - , "bindings": [["list", {"type": "var", "name": "PATH"}]] - , "body": {"type": "CALL_EXPRESSION", "name": "nub_left"} + { "type": "++" + , "$1": + [ {"type": "var", "name": "PATH"} + , {"type": "CALL_EXPRESSION", "name": "base-provides-++"} + ] + } } ] , ["provider", "ENV"] diff --git a/rules/shell/RULES b/rules/shell/RULES index 29b670e..7f53a4b 100644 --- a/rules/shell/RULES +++ b/rules/shell/RULES @@ -116,44 +116,32 @@ } ] , [ "PATH" - , { "type": "reverse" + , { "type": "nub_left" , "$1": - { "type": "nub_right" + { "type": "++" , "$1": - { "type": "reverse" - , "$1": - { "type": "++" - , "$1": - [ {"type": "FIELD", "name": "PATH"} - , { "type": "let*" - , "bindings": [["provider", "PATH"]] - , "body": - {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - } - ] + [ {"type": "FIELD", "name": "PATH"} + , { "type": "let*" + , "bindings": [["provider", "PATH"]] + , "body": + {"type": "CALL_EXPRESSION", "name": "base-provides-++"} } - } + ] } } ] , [ "bin dirs" - , { "type": "reverse" + , { "type": "nub_left" , "$1": - { "type": "nub_right" + { "type": "++" , "$1": - { "type": "reverse" - , "$1": - { "type": "++" - , "$1": - [ {"type": "FIELD", "name": "bin dirs"} - , { "type": "let*" - , "bindings": [["provider", "bin dirs"]] - , "body": - {"type": "CALL_EXPRESSION", "name": "base-provides-++"} - } - ] + [ {"type": "FIELD", "name": "bin dirs"} + , { "type": "let*" + , "bindings": [["provider", "bin dirs"]] + , "body": + {"type": "CALL_EXPRESSION", "name": "base-provides-++"} } - } + ] } } ] diff --git a/rules/shell/test/RULES b/rules/shell/test/RULES index 1c069dc..bab1d8b 100644 --- a/rules/shell/test/RULES +++ b/rules/shell/test/RULES @@ -331,19 +331,16 @@ } ] , [ "artifacts" - , { "type": "map_union" + , { "type": "`" , "$1": - [ { "type": "singleton_map" - , "key": "pwd" - , "value": {"type": "BLOB", "data": "/summary"} - } - , {"type": "var", "name": "summary"} - , { "type": "singleton_map" - , "key": "work" - , "value": + { "pwd": + {"type": ",", "$1": {"type": "BLOB", "data": "/summary"}} + , "work": + { "type": "," + , "$1": {"type": "TREE", "$1": {"type": "var", "name": "attempts"}} } - ] + } } ] , [ "runfiles" |