diff options
Diffstat (limited to 'rules/CC/foreign/cmake/RULES')
-rw-r--r-- | rules/CC/foreign/cmake/RULES | 59 |
1 files changed, 55 insertions, 4 deletions
diff --git a/rules/CC/foreign/cmake/RULES b/rules/CC/foreign/cmake/RULES index 166e2d6..b7fd406 100644 --- a/rules/CC/foreign/cmake/RULES +++ b/rules/CC/foreign/cmake/RULES @@ -39,6 +39,7 @@ , "implicit": { "defaults": [["CC", "defaults"]] , "foreign-defaults": [["CC/foreign", "defaults"]] + , "shell defaults": [["shell", "defaults"]] , "expand_exec": [["./", "..", "expand_exec"]] } , "field_doc": @@ -158,6 +159,8 @@ , "cmake-build": "cmake-build" , "strip-prefix": ["./", "..", "strip-prefix"] , "for host": ["transitions", "for host"] + , "map_provider": ["", "field_map_provider"] + , "sh": ["shell", "sh"] } , "config_transitions": { "defaults": @@ -224,10 +227,33 @@ , [ "full_install_dir" , {"type": "CALL_EXPRESSION", "name": "cmake-build"} ] + , ["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"} + } + ] , [ "install_dir" , { "type": "ACTION" - , "inputs": {"type": "var", "name": "full_install_dir"} - , "cmd": ["/bin/sh", "-c", ":"] + , "inputs": + { "type": "map_union" + , "$1": + [ {"type": "var", "name": "shell TOOLCHAIN"} + , {"type": "var", "name": "full_install_dir"} + ] + } + , "cmd": [{"type": "var", "name": "sh"}, "-c", ":"] , "outs": {"type": "var", "name": "installed_out_files"} , "out_dirs": {"type": "var", "name": "installed_out_dirs"} } @@ -318,6 +344,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"]] } @@ -479,6 +506,8 @@ , "prebuilt result": ["CC/prebuilt", "prebuilt result"] , "install-deps": ["CC", "install-with-deps stage"] , "for host": ["transitions", "for host"] + , "map_provider": ["", "field_map_provider"] + , "sh": ["shell", "sh"] } , "config_transitions": { "defaults": @@ -633,10 +662,32 @@ , [ "full_install_dir" , {"type": "CALL_EXPRESSION", "name": "cmake-build"} ] + , [ "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"} + } + ] , [ "install_dir" , { "type": "ACTION" - , "inputs": {"type": "var", "name": "full_install_dir"} - , "cmd": ["/bin/sh", "-c", ":"] + , "inputs": + { "type": "map_union" + , "$1": + [ {"type": "var", "name": "shell TOOLCHAIN"} + , {"type": "var", "name": "full_install_dir"} + ] + } + , "cmd": [{"type": "var", "name": "sh"}, "-c", ":"] , "outs": {"type": "var", "name": "installed_files"} , "out_dirs": {"type": "var", "name": "installed_dirs"} } |