From 7a41812c3acb2b39b5f59a7db00bf24791c22537 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Wed, 29 May 2024 12:18:48 +0200 Subject: debug rule: Add flag field to skip installing extra debug artifacts This is useful when we want to install targets built in debug mode, but do not want to stage all the additional source and header files if no debugging is being performed, e.g., in tests. --- rules/CC/EXPRESSIONS | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) (limited to 'rules/CC/EXPRESSIONS') diff --git a/rules/CC/EXPRESSIONS b/rules/CC/EXPRESSIONS index e0c729d..f2259b6 100644 --- a/rules/CC/EXPRESSIONS +++ b/rules/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" -- cgit v1.2.3