diff options
Diffstat (limited to 'transitions')
-rw-r--r-- | transitions/EXPRESSIONS | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/transitions/EXPRESSIONS b/transitions/EXPRESSIONS index 596b20e..d1ecefa 100644 --- a/transitions/EXPRESSIONS +++ b/transitions/EXPRESSIONS @@ -19,6 +19,62 @@ , "body": {"type": "env", "vars": ["BUILD_ARCH", "TARGET_ARCH"]} } } +, "with fPIC": + { "doc": + [ "Transition that enables BUILD_POSITION_INDEPENDENT if config_field" + , "\"shared\" is not empty." + ] + , "var": ["BUILD_OBJECT_ONLY"] + , "expression": + { "type": "if" + , "cond": + { "type": "and" + , "$1": + [ {"type": "FIELD", "name": "shared"} + , {"type": "not", "$1": {"type": "var", "name": "BUILD_OBJECT_ONLY"}} + ] + } + , "then": + { "type": "singleton_map" + , "key": "BUILD_POSITION_INDEPENDENT" + , "value": true + } + , "else": {"type": "empty_map"} + } + } +, "with fPIC, not object-only": + { "doc": ["Like \"with fPIC\", but also clearing BUILD_OBJECT_ONLY"] + , "var": ["BUILD_OBJECT_ONLY"] + , "imports": {"with fPIC": "with fPIC"} + , "expression": + { "type": "map_union" + , "$1": + [ {"type": "CALL_EXPRESSION", "name": "with fPIC"} + , {"type": "singleton_map", "key": "BUILD_OBJECT_ONLY", "value": null} + , { "type": "singleton_map" + , "key": "BUILD_OBJECT_ONLY_DROP_OBJECT_LINKING" + , "value": null + } + ] + } + } +, "with fPIC, object-only": + { "doc": + ["Like \"with fPIC\", but also unconditionally setting BUILD_OBJECT_ONLY"] + , "var": ["BUILD_OBJECT_ONLY"] + , "imports": {"with fPIC": "with fPIC"} + , "expression": + { "type": "map_union" + , "$1": + [ {"type": "CALL_EXPRESSION", "name": "with fPIC"} + , {"type": "singleton_map", "key": "BUILD_OBJECT_ONLY", "value": true} + , { "type": "singleton_map" + , "key": "BUILD_OBJECT_ONLY_DROP_OBJECT_LINKING" + , "value": true + } + ] + } + } , "target properties": { "vars": ["ARCH", "TARGET_ARCH", "ARCH_DISPATCH"] , "expression": |