dumpvar.mk revision ea91f0a40ee114588204b9912345d3d8305ee190
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)/prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linux-androideabi-4.6/bin),)
14	# this should be copied to HOST_OUT_EXECUTABLES instead
15	ABP:=$(ABP):$(PWD)/prebuilts/gcc/$(HOST_PREBUILT_TAG)/arm/arm-linux-androideabi-4.6/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)
25ANDROID_GCC_PREBUILTS := prebuilts/gcc/$(HOST_PREBUILT_TAG)
26
27# The "dumpvar" stuff lets you say something like
28#
29#     CALLED_FROM_SETUP=true \
30#       make -f config/envsetup.make dumpvar-TARGET_OUT
31# or
32#     CALLED_FROM_SETUP=true \
33#       make -f config/envsetup.make dumpvar-abs-HOST_OUT_EXECUTABLES
34#
35# The plain (non-abs) version just dumps the value of the named variable.
36# The "abs" version will treat the variable as a path, and dumps an
37# absolute path to it.
38#
39dumpvar_goals := \
40	$(strip $(patsubst dumpvar-%,%,$(filter dumpvar-%,$(MAKECMDGOALS))))
41ifdef dumpvar_goals
42
43  ifneq ($(words $(dumpvar_goals)),1)
44    $(error Only one "dumpvar-" goal allowed. Saw "$(MAKECMDGOALS)")
45  endif
46
47  # If the goal is of the form "dumpvar-abs-VARNAME", then
48  # treat VARNAME as a path and return the absolute path to it.
49  absolute_dumpvar := $(strip $(filter abs-%,$(dumpvar_goals)))
50  ifdef absolute_dumpvar
51    dumpvar_goals := $(patsubst abs-%,%,$(dumpvar_goals))
52    ifneq ($(filter /%,$($(dumpvar_goals))),)
53      DUMPVAR_VALUE := $($(dumpvar_goals))
54    else
55      DUMPVAR_VALUE := $(PWD)/$($(dumpvar_goals))
56    endif
57    dumpvar_target := dumpvar-abs-$(dumpvar_goals)
58  else
59    DUMPVAR_VALUE := $($(dumpvar_goals))
60    dumpvar_target := dumpvar-$(dumpvar_goals)
61  endif
62
63.PHONY: $(dumpvar_target)
64$(dumpvar_target):
65	@echo $(DUMPVAR_VALUE)
66
67endif # dumpvar_goals
68
69ifneq ($(dumpvar_goals),report_config)
70PRINT_BUILD_CONFIG:=
71endif
72
73endif # CALLED_FROM_SETUP
74
75
76ifneq ($(PRINT_BUILD_CONFIG),)
77$(info ============================================)
78$(info   PLATFORM_VERSION_CODENAME=$(PLATFORM_VERSION_CODENAME))
79$(info   PLATFORM_VERSION=$(PLATFORM_VERSION))
80$(info   TARGET_PRODUCT=$(TARGET_PRODUCT))
81$(info   TARGET_BUILD_VARIANT=$(TARGET_BUILD_VARIANT))
82$(info   TARGET_BUILD_TYPE=$(TARGET_BUILD_TYPE))
83$(info   TARGET_BUILD_APPS=$(TARGET_BUILD_APPS))
84$(info   TARGET_ARCH=$(TARGET_ARCH))
85$(info   TARGET_ARCH_VARIANT=$(TARGET_ARCH_VARIANT))
86$(info   HOST_ARCH=$(HOST_ARCH))
87$(info   HOST_OS=$(HOST_OS))
88$(info   HOST_BUILD_TYPE=$(HOST_BUILD_TYPE))
89$(info   BUILD_ID=$(BUILD_ID))
90$(info   OUT_DIR=$(OUT_DIR))
91$(info ============================================)
92endif
93