xref: /aosp_15_r20/build/make/core/dumpvar.mk (revision 9e94795a3d4ef5c1d47486f9a02bb378756cea8a)
1*9e94795aSAndroid Build Coastguard Worker# ---------------------------------------------------------------
2*9e94795aSAndroid Build Coastguard Worker# the setpath shell function in envsetup.sh uses this to figure out
3*9e94795aSAndroid Build Coastguard Worker# what to add to the path given the config we have chosen.
4*9e94795aSAndroid Build Coastguard Workerifeq ($(CALLED_FROM_SETUP),true)
5*9e94795aSAndroid Build Coastguard Worker
6*9e94795aSAndroid Build Coastguard WorkerANDROID_PREBUILTS := prebuilt/$(HOST_PREBUILT_TAG)
7*9e94795aSAndroid Build Coastguard WorkerANDROID_GCC_PREBUILTS := prebuilts/gcc/$(HOST_PREBUILT_TAG)
8*9e94795aSAndroid Build Coastguard WorkerANDROID_CLANG_PREBUILTS := prebuilts/clang/host/$(HOST_PREBUILT_TAG)
9*9e94795aSAndroid Build Coastguard Worker
10*9e94795aSAndroid Build Coastguard Worker# Dump mulitple variables to "<var>=<value>" pairs, one per line.
11*9e94795aSAndroid Build Coastguard Worker# The output may be executed as bash script.
12*9e94795aSAndroid Build Coastguard Worker# Input variables:
13*9e94795aSAndroid Build Coastguard Worker#   DUMP_MANY_VARS: the list of variable names.
14*9e94795aSAndroid Build Coastguard Worker#   DUMP_VAR_PREFIX: an optional prefix of the variable name added to the output.
15*9e94795aSAndroid Build Coastguard Worker# The value is printed in parts because large variables like PRODUCT_PACKAGES
16*9e94795aSAndroid Build Coastguard Worker# can exceed the maximum linux command line size
17*9e94795aSAndroid Build Coastguard Worker.PHONY: dump-many-vars
18*9e94795aSAndroid Build Coastguard Workerdump-many-vars :
19*9e94795aSAndroid Build Coastguard Worker	@$(foreach v, $(DUMP_MANY_VARS),\
20*9e94795aSAndroid Build Coastguard Worker	  printf "%s='%s" '$(DUMP_VAR_PREFIX)$(v)' '$(firstword $($(v)))'; \
21*9e94795aSAndroid Build Coastguard Worker	  $(foreach part, $(wordlist 2, $(words $($(v))), $($(v))),\
22*9e94795aSAndroid Build Coastguard Worker	    printf " %s" '$(part)'$(newline))\
23*9e94795aSAndroid Build Coastguard Worker	  printf "'\n";)
24*9e94795aSAndroid Build Coastguard Worker
25*9e94795aSAndroid Build Coastguard Workerendif # CALLED_FROM_SETUP
26*9e94795aSAndroid Build Coastguard Worker
27*9e94795aSAndroid Build Coastguard Workerifneq (,$(RBC_DUMP_CONFIG_FILE))
28*9e94795aSAndroid Build Coastguard Worker$(call dump-variables-rbc,$(RBC_DUMP_CONFIG_FILE))
29*9e94795aSAndroid Build Coastguard Workerendif
30