diff options
Diffstat (limited to 'rules/CC/EXPRESSIONS')
-rw-r--r-- | rules/CC/EXPRESSIONS | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/rules/CC/EXPRESSIONS b/rules/CC/EXPRESSIONS index 9c64cff..b3b07fe 100644 --- a/rules/CC/EXPRESSIONS +++ b/rules/CC/EXPRESSIONS @@ -61,6 +61,27 @@ , "body": {"type": "var", "name": "AR"} } } +, "default-ARFLAGS": + { "vars": ["defaults-transition"] + , "imports": {"list_provider": ["./", "..", "field_list_provider"]} + , "expression": + { "type": "let*" + , "bindings": + [ ["fieldname", "defaults"] + , ["provider", "ARFLAGS"] + , ["transition", {"type": "var", "name": "defaults-transition"}] + , ["ARFLAGS", {"type": "CALL_EXPRESSION", "name": "list_provider"}] + , [ "ARFLAGS" + , { "type": "if" + , "cond": {"type": "var", "name": "ARFLAGS"} + , "then": {"type": "var", "name": "ARFLAGS"} + , "else": ["cqs"] + } + ] + ] + , "body": {"type": "var", "name": "ARFLAGS"} + } + } , "default-CFLAGS": { "vars": ["defaults-transition"] , "imports": {"list_provider": ["./", "..", "field_list_provider"]} @@ -1179,6 +1200,7 @@ , "flags": "flags" , "objects": "objects" , "default-AR": "default-AR" + , "default-ARFLAGS": "default-ARFLAGS" , "default-ENV": "default-ENV" , "default-PATH": "default-PATH" , "default-TOOLCHAIN": "default-TOOLCHAIN" @@ -1230,6 +1252,7 @@ } } ] + , ["ARFLAGS", {"type": "CALL_EXPRESSION", "name": "default-ARFLAGS"}] , [ "ENV" , { "type": "map_union" , "$1": @@ -1335,10 +1358,9 @@ , "cmd": { "type": "++" , "$1": - [ [ {"type": "var", "name": "AR", "default": "ar"} - , "cqs" - , {"type": "var", "name": "staged libpath"} - ] + [ [{"type": "var", "name": "AR", "default": "ar"}] + , {"type": "var", "name": "ARFLAGS"} + , [{"type": "var", "name": "staged libpath"}] , { "type": "keys" , "$1": {"type": "var", "name": "staged objects"} } |