dumpvar.mk revision cb8f66305caf4f9252112608ad93e2ef58321244
1# ---------------------------------------------------------------
2# the setpath shell function in envsetup.sh uses this to figure out
3# what to add to the path given the config we have chosen.
4ifeq ($(CALLED_FROM_SETUP),true)
5
6ifneq ($(filter /%,$(HOST_OUT_EXECUTABLES)),)
7ABP:=$(HOST_OUT_EXECUTABLES)
8else
9ABP:=$(PWD)/$(HOST_OUT_EXECUTABLES)
10endif
11
12# Add the ARM toolchain bin dir if it actually exists
13ifneq ($(wildcard $(PWD)/prebuilt/$(HOST_PREBUILT_TAG)/toolchain/arm-linux-androideabi-4.4.x/bin),)
14	# this should be copied to HOST_OUT_EXECUTABLES instead
15	ABP:=$(ABP):$(PWD)/prebuilt/$(HOST_PREBUILT_TAG)/toolchain/arm-linux-androideabi-4.4.x/bin
16endif
17
18# Add the x86 toolchain bin dir if it actually exists
19ifneq ($(wildcard $(PWD)/prebuilts/gcc/$(HOST_PREBUILT_TAG)/x86/i686-android-linux-4.4.3/bin),)
20	# this should be copied to HOST_OUT_EXECUTABLES instead
21	ABP:=$(ABP):$(PWD)/prebuilts/gcc//$(HOST_PREBUILT_TAG)/x86/i686-android-linux-4.4.3/bin
22endif
23ANDROID_BUILD_PATHS := $(ABP)
24ANDROID_PREBUILTS := prebuilt/$(HOST_PREBUILT_TAG)
25
26# The "dumpvar" stuff lets you say something like
27#
28#     CALLED_FROM_SETUP=true \
29#       make -f config/envsetup.make dumpvar-TARGET_OUT
30# or
31#     CALLED_FROM_SETUP=true \
32#       make -f config/envsetup.make dumpvar-abs-HOST_OUT_EXECUTABLES
33#
34# The plain (non-abs) version just dumps the value of the named variable.
35# The "abs" version will treat the variable as a path, and dumps an
36# absolute path to it.
37#
38dumpvar_goals := \
39	$(strip $(patsubst dumpvar-%,%,$(filter dumpvar-%,$(MAKECMDGOALS))))
40ifdef dumpvar_goals
41
42  ifneq ($(words $(dumpvar_goals)),1)
43    $(error Only one "dumpvar-" goal allowed. Saw "$(MAKECMDGOALS)")
44  endif
45
46  # If the goal is of the form "dumpvar-abs-VARNAME", then
47  # treat VARNAME as a path and return the absolute path to it.
48  absolute_dumpvar := $(strip $(filter abs-%,$(dumpvar_goals)))
49  ifdef absolute_dumpvar
50    dumpvar_goals := $(patsubst abs-%,%,$(dumpvar_goals))
51    ifneq ($(filter /%,$($(dumpvar_goals))),)
52      DUMPVAR_VALUE := $($(dumpvar_goals))
53    else
54      DUMPVAR_VALUE := $(PWD)/$($(dumpvar_goals))
55    endif
56    dumpvar_target := dumpvar-abs-$(dumpvar_goals)
57  else
58    DUMPVAR_VALUE := $($(dumpvar_goals))
59    dumpvar_target := dumpvar-$(dumpvar_goals)
60  endif
61
62.PHONY: $(dumpvar_target)
63$(dumpvar_target):
64	@echo $(DUMPVAR_VALUE)
65
66endif # dumpvar_goals
67
68ifneq ($(dumpvar_goals),report_config)
69PRINT_BUILD_CONFIG:=
70endif
71
72endif # CALLED_FROM_SETUP
73
74
75ifneq ($(PRINT_BUILD_CONFIG),)
76$(info ============================================)
77$(info   PLATFORM_VERSION_CODENAME=$(PLATFORM_VERSION_CODENAME))
78$(info   PLATFORM_VERSION=$(PLATFORM_VERSION))
79$(info   TARGET_PRODUCT=$(TARGET_PRODUCT))
80$(info   TARGET_BUILD_VARIANT=$(TARGET_BUILD_VARIANT))
81$(info   TARGET_BUILD_TYPE=$(TARGET_BUILD_TYPE))
82$(info   TARGET_BUILD_APPS=$(TARGET_BUILD_APPS))
83$(info   TARGET_ARCH=$(TARGET_ARCH))
84$(info   TARGET_ARCH_VARIANT=$(TARGET_ARCH_VARIANT))
85$(info   HOST_ARCH=$(HOST_ARCH))
86$(info   HOST_OS=$(HOST_OS))
87$(info   HOST_BUILD_TYPE=$(HOST_BUILD_TYPE))
88$(info   BUILD_ID=$(BUILD_ID))
89$(info   OUT_DIR=$(OUT_DIR))
90$(info ============================================)
91endif
92