summaryrefslogtreecommitdiff
path: root/CC/foreign/EXPRESSIONS
diff options
context:
space:
mode:
Diffstat (limited to 'CC/foreign/EXPRESSIONS')
-rw-r--r--CC/foreign/EXPRESSIONS31
1 files changed, 31 insertions, 0 deletions
diff --git a/CC/foreign/EXPRESSIONS b/CC/foreign/EXPRESSIONS
index 64e0e27..1692f83 100644
--- a/CC/foreign/EXPRESSIONS
+++ b/CC/foreign/EXPRESSIONS
@@ -43,6 +43,7 @@
, "imports":
{ "compiler-cc": ["CC", "compiler-cc"]
, "default-ENV": ["CC", "default-ENV"]
+ , "default-PATH": ["CC", "default-PATH"]
, "default-TOOLCHAIN": ["CC", "default-TOOLCHAIN"]
, "default-NON_SYSTEM_TOOLS": ["CC", "default-NON_SYSTEM_TOOLS"]
}
@@ -69,6 +70,36 @@
]
}
]
+ , [ "ENV_PATH"
+ , { "type": "lookup"
+ , "map": {"type": "var", "name": "ENV"}
+ , "key": "PATH"
+ }
+ ]
+ , [ "ENV"
+ , { "type": "map_union"
+ , "$1":
+ [ {"type": "var", "name": "ENV"}
+ , { "type": "singleton_map"
+ , "key": "PATH"
+ , "value":
+ { "type": "join"
+ , "separator": ":"
+ , "$1":
+ { "type": "++"
+ , "$1":
+ [ {"type": "CALL_EXPRESSION", "name": "default-PATH"}
+ , { "type": "if"
+ , "cond": {"type": "var", "name": "ENV_PATH"}
+ , "then": [{"type": "var", "name": "ENV_PATH"}]
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ ]
, [ "expand_exec.c"
, { "type": "singleton_map"
, "key": "expand_exec.c"