diff options
-rw-r--r-- | rules/CC/RULES | 45 | ||||
-rw-r--r-- | rules/CC/TARGETS | 1 |
2 files changed, 44 insertions, 2 deletions
diff --git a/rules/CC/RULES b/rules/CC/RULES index 61834f92..a6c775ce 100644 --- a/rules/CC/RULES +++ b/rules/CC/RULES @@ -21,6 +21,7 @@ , "ADD_LDFLAGS" , "ADD_DEBUGFLAGS" , "AR" + , "DWP" , "PATH" , "SYSTEM_TOOLS" ] @@ -44,9 +45,13 @@ , "CC": ["The C compiler to use"] , "CXX": ["The C++ compiler to use"] , "AR": ["The archiver tool to use"] + , "DWP": + [ "The DWARF format packaging tool to use. Required by debug builds that" + , "enable debug fission." + ] , "SYSTEM_TOOLS": - [ "List of tools (\"CC\", \"CXX\", or \"AR\") that should be taken from" - , "the system instead of from \"toolchain\" (if specified)." + [ "List of tools (\"CC\", \"CXX\", \"AR\", or \"DWP\") that should be" + , "taken from the system instead of from \"toolchain\" (if specified)." ] , "CFLAGS": [ "Flags for C compilation. Specifying this field overwrites" @@ -149,6 +154,7 @@ , ["ARFLAGS", {"type": "FIELD", "name": "ARFLAGS"}] , ["DEBUGFLAGS", {"type": "FIELD", "name": "DEBUGFLAGS"}] , ["AR", {"type": "FIELD", "name": "AR"}] + , ["DWP", {"type": "FIELD", "name": "DWP"}] , ["PATH", {"type": "FIELD", "name": "PATH"}] , ["provider", "CC"] , [ "CC" @@ -214,6 +220,14 @@ , "else": {"type": "CALL_EXPRESSION", "name": "base-provides"} } ] + , ["provider", "DWP"] + , [ "DWP" + , { "type": "if" + , "cond": {"type": "var", "name": "DWP"} + , "then": {"type": "var", "name": "DWP"} + , "else": {"type": "CALL_EXPRESSION", "name": "base-provides"} + } + ] , ["provider", "PATH"] , [ "PATH" , { "type": "nub_left" @@ -279,6 +293,20 @@ } ] } + , { "type": "if" + , "cond": {"type": "FIELD", "name": "DWP"} + , "then": + [ { "type": "singleton_map" + , "key": "DWP" + , "value": + { "type": "if" + , "cond": {"type": "FIELD", "name": "toolchain"} + , "then": true + , "else": false + } + } + ] + } , { "type": "foreach" , "range": {"type": "FIELD", "name": "SYSTEM_TOOLS"} , "var": "tool" @@ -432,6 +460,7 @@ , "CXXFLAGS" , "LDFLAGS" , "AR" + , "DWP" , "ARFLAGS" , "PATH" , "ENV" @@ -472,6 +501,7 @@ , "ADD_CFLAGS" , "ADD_CXXFLAGS" , "AR" + , "DWP" , "ENV" , "DEBUG" , "LINT" @@ -567,6 +597,11 @@ [ "The archive tool to used for creating the library" , "If None, the respective value from [\"CC\", \"defaults\"] will be taken." ] + , "DWP": + [ "The DWARF format packaging tool to use in debug builds that enable" + , "debug fission." + , "If None, the respective value from [\"CC\", \"defaults\"] will be taken." + ] , "ENV": ["The environment for any action generated."] , "DEBUG": [ "Map configuring the debug-stage, needed for local debugging." @@ -726,6 +761,7 @@ , "CXXFLAGS" , "ADD_CFLAGS" , "ADD_CXXFLAGS" + , "DWP" , "ENV" , "DEBUG" , "LINT" @@ -785,6 +821,11 @@ [ "The flags to add to the default ones for CXX" , "taken from the [\"CC\", \"defaults\"] target" ] + , "DWP": + [ "The DWARF format packaging tool to use in debug builds that enable" + , "debug fission." + , "If None, the respective value from [\"CC\", \"defaults\"] will be taken." + ] , "ENV": ["The environment for any action generated."] , "DEBUG": [ "Map configuring the debug-stage, needed for local debugging." diff --git a/rules/CC/TARGETS b/rules/CC/TARGETS index 2da456b7..f629f7ed 100644 --- a/rules/CC/TARGETS +++ b/rules/CC/TARGETS @@ -5,6 +5,7 @@ , "CFLAGS": [] , "CXXFLAGS": [] , "AR": ["ar"] + , "DWP": ["dwp"] , "PATH": ["/bin", "/usr/bin"] } } |