summaryrefslogtreecommitdiff
path: root/CC
diff options
context:
space:
mode:
Diffstat (limited to 'CC')
-rw-r--r--CC/EXPRESSIONS31
-rw-r--r--CC/RULES12
2 files changed, 34 insertions, 9 deletions
diff --git a/CC/EXPRESSIONS b/CC/EXPRESSIONS
index e0c729d..f2259b6 100644
--- a/CC/EXPRESSIONS
+++ b/CC/EXPRESSIONS
@@ -2213,7 +2213,14 @@
}
}
, "install-with-deps stage":
- { "vars": ["pc-install-dir", "targets", "prefix", "flat-libs", "hdrs-only"]
+ { "vars":
+ [ "pc-install-dir"
+ , "targets"
+ , "prefix"
+ , "flat-libs"
+ , "hdrs-only"
+ , "skip-debug-stage"
+ ]
, "imports":
{ "compile-deps": "compile-deps"
, "compile-args-deps": "compile-args-deps"
@@ -2259,10 +2266,15 @@
}
]
, [ "debug-srcs"
- , { "type": "DEP_PROVIDES"
- , "dep": {"type": "var", "name": "target"}
- , "provider": "debug-srcs"
- , "default": {"type": "empty_map"}
+ , { "type": "if"
+ , "cond": {"type": "var", "name": "skip-debug-stage"}
+ , "then": {"type": "empty_map"}
+ , "else":
+ { "type": "DEP_PROVIDES"
+ , "dep": {"type": "var", "name": "target"}
+ , "provider": "debug-srcs"
+ , "default": {"type": "empty_map"}
+ }
}
]
]
@@ -2449,7 +2461,14 @@
}
}
, "install-with-deps result":
- { "vars": ["pc-install-dir", "targets", "prefix", "flat-libs", "hdrs-only"]
+ { "vars":
+ [ "pc-install-dir"
+ , "targets"
+ , "prefix"
+ , "flat-libs"
+ , "hdrs-only"
+ , "skip-debug-stage"
+ ]
, "imports": {"install stage": "install-with-deps stage"}
, "expression":
{ "type": "RESULT"
diff --git a/CC/RULES b/CC/RULES
index 2c381a6..09605f7 100644
--- a/CC/RULES
+++ b/CC/RULES
@@ -844,12 +844,13 @@
, "the target, artifacts and dependencies will be installed to"
, "subdirectories \"bin\", \"include\", and \"lib\". For library targets,"
, "a pkg-config file is generated and provided in \"lib/pkgconfig\"."
- , "In debug mode, sources needed for local debugging will be installed to"
- , "subdirectory \"debug-src\"."
+ , "In debug mode, depending on the target, additional artifacts needed for"
+ , "local debugging are gathered and installed, depending on target, to"
+ , "\"work\" and \"include\"."
]
, "config_vars": ["PREFIX"]
, "target_fields": ["targets"]
- , "string_fields": ["flat-libs", "prefix", "hdrs-only"]
+ , "string_fields": ["flat-libs", "prefix", "hdrs-only", "skip-debug-stage"]
, "imports": {"install result": "install-with-deps result"}
, "field_doc":
{ "targets": ["Targets to install artifacts from."]
@@ -865,6 +866,10 @@
, "taken, with the default value being \"/\"."
]
, "hdrs-only": ["Only collect headers from deps (without subdirectory)."]
+ , "skip-debug-stage":
+ [ "If in debug mode, skip installing additional artifacts gathered if no"
+ , "local debugging is needed, but debug targets are nonetheless desired."
+ ]
}
, "config_doc":
{ "PREFIX":
@@ -894,6 +899,7 @@
]
, ["flat-libs", {"type": "FIELD", "name": "flat-libs"}]
, ["hdrs-only", {"type": "FIELD", "name": "hdrs-only"}]
+ , ["skip-debug-stage", {"type": "FIELD", "name": "skip-debug-stage"}]
]
, "body": {"type": "CALL_EXPRESSION", "name": "install result"}
}