Skip to content

Commit a06e483

Browse files
authored
Merge pull request #1250 from Pinata-Consulting/makefile-fix-variable-on-command-line
makefile: fix passing of variables on command line
2 parents 62a4cad + a1650ba commit a06e483

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

flow/Makefile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ else ifneq ($(FOOTPRINT_TCL),)
440440
IS_CHIP = 1
441441
endif
442442

443-
UNSET_AND_MAKE = @bash -c 'for var in $(ISSUE_VARIABLES_NAMES); do unset $$var; done; echo $(MAKE) DESIGN_CONFIG=$(DESIGN_CONFIG) $$@; $(MAKE) DESIGN_CONFIG=$(DESIGN_CONFIG) $$@' --
443+
UNSET_AND_MAKE = @bash -c 'for var in $(UNSET_VARIABLES_NAMES); do unset $$var; done; echo $(MAKE) DESIGN_CONFIG=$(DESIGN_CONFIG) $$@; $(MAKE) DESIGN_CONFIG=$(DESIGN_CONFIG) $$@' --
444444

445445
# Separate dependency checking and doing a step. This can
446446
# be useful to retest a stage without having to delete the
@@ -907,6 +907,9 @@ handoff : all_defs all_verilog
907907
# Print any variable, for instance: make print-DIE_AREA
908908
print-% : ; @echo $* = $($*)
909909

910+
.PHONY: test-unset-and-make-%
911+
test-unset-and-make-%: ; $(UNSET_AND_MAKE) $*
912+
910913
# Utilities
911914
#-------------------------------------------------------------------------------
912915
include $(UTILS_DIR)/utils.mk

flow/util/generate-vars.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
55
# exclude system and CI variables
66
EXCLUDED_VARS="MAKE|PYTHONPATH|PKG_CONFIG_PATH|PERL5LIB|PCP_DIR|PATH|MANPATH"
77
EXCLUDED_VARS+="|LD_LIBRARY_PATH|INFOPATH|HOME|PWD|MAIL|TIME_CMD|QT_QPA_PLATFORM"
8-
EXCLUDED_VARS+="|do-step"
8+
EXCLUDED_VARS+="|do-step|get_variables"
99

1010
printf '%s\n' "$ISSUE_VARIABLES" | while read -r V;
1111
do

flow/util/utils.mk

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,12 @@ define \n
8585

8686
endef
8787

88-
export ISSUE_VARIABLES_NAMES := $(foreach V, $(.VARIABLES),$(if $(filter-out environment% default automatic, $(origin $V)), $(if $(filter-out .% %QT_QPA_PLATFORM% %TIME_CMD% KLAYOUT% GENERATE_ABSTRACT_RULE%, $(V)), $V$ )))
88+
define get_variables
89+
$(foreach V, $(.VARIABLES),$(if $(filter-out $(1), $(origin $V)), $(if $(filter-out .% %QT_QPA_PLATFORM% %TIME_CMD% KLAYOUT% GENERATE_ABSTRACT_RULE%, $(V)), $V$ )))
90+
endef
91+
92+
export UNSET_VARIABLES_NAMES := $(call get_variables,command% line environment% default automatic)
93+
export ISSUE_VARIABLES_NAMES := $(call get_variables,environment% default automatic)
8994
export ISSUE_VARIABLES := $(foreach V, $(ISSUE_VARIABLES_NAMES), $(if $($V),$V=$($V),$V='')${\n})
9095

9196
$(foreach script,$(ISSUE_SCRIPTS),$(script)_issue): %_issue : versions.txt

0 commit comments

Comments
 (0)