Merge "Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS."
This commit is contained in:
@@ -22,6 +22,11 @@ dist: ;
|
|||||||
|
|
||||||
dist_goal := $(strip $(filter dist,$(MAKECMDGOALS)))
|
dist_goal := $(strip $(filter dist,$(MAKECMDGOALS)))
|
||||||
MAKECMDGOALS := $(strip $(filter-out dist,$(MAKECMDGOALS)))
|
MAKECMDGOALS := $(strip $(filter-out dist,$(MAKECMDGOALS)))
|
||||||
|
ifeq (,$(strip $(filter-out $(INTERNAL_MODIFIER_TARGETS),$(MAKECMDGOALS))))
|
||||||
|
# The commandline was something like "make dist" or "make dist showcommands".
|
||||||
|
# Add a dependency on a real target.
|
||||||
|
dist: $(DEFAULT_GOAL)
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef dist_goal
|
ifdef dist_goal
|
||||||
|
|
||||||
|
@@ -426,7 +426,7 @@ ifdef is_sdk_build
|
|||||||
sdk_repo_goal := $(strip $(filter sdk_repo,$(MAKECMDGOALS)))
|
sdk_repo_goal := $(strip $(filter sdk_repo,$(MAKECMDGOALS)))
|
||||||
MAKECMDGOALS := $(strip $(filter-out sdk_repo,$(MAKECMDGOALS)))
|
MAKECMDGOALS := $(strip $(filter-out sdk_repo,$(MAKECMDGOALS)))
|
||||||
|
|
||||||
ifneq ($(words $(filter-out $(INTERNAL_MODIFIER_TARGETS) checkbuild emulator_tests target-files-package,$(MAKECMDGOALS))),1)
|
ifneq ($(words $(sort $(filter-out $(INTERNAL_MODIFIER_TARGETS) checkbuild emulator_tests target-files-package,$(MAKECMDGOALS)))),1)
|
||||||
$(error The 'sdk' target may not be specified with any other targets)
|
$(error The 'sdk' target may not be specified with any other targets)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@@ -2,11 +2,16 @@ KATI ?= $(HOST_OUT_EXECUTABLES)/ckati
|
|||||||
MAKEPARALLEL ?= $(HOST_OUT_EXECUTABLES)/makeparallel
|
MAKEPARALLEL ?= $(HOST_OUT_EXECUTABLES)/makeparallel
|
||||||
|
|
||||||
KATI_OUTPUT_PATTERNS := $(OUT_DIR)/build%.ninja $(OUT_DIR)/ninja%.sh
|
KATI_OUTPUT_PATTERNS := $(OUT_DIR)/build%.ninja $(OUT_DIR)/ninja%.sh
|
||||||
NINJA_GOALS := droid showcommands
|
|
||||||
# A list of goals which affect parsing of make.
|
# Modifier goals we don't need to pass to Ninja.
|
||||||
|
NINJA_EXCLUDE_GOALS := showcommands all dist
|
||||||
|
.PHONY : $(NINJA_EXCLUDE_GOALS)
|
||||||
|
|
||||||
|
# A list of goals which affect parsing of makefiles and we need to pass to Kati.
|
||||||
PARSE_TIME_MAKE_GOALS := \
|
PARSE_TIME_MAKE_GOALS := \
|
||||||
$(PARSE_TIME_MAKE_GOALS) \
|
$(PARSE_TIME_MAKE_GOALS) \
|
||||||
$(dont_bother_goals) \
|
$(dont_bother_goals) \
|
||||||
|
all \
|
||||||
APP-% \
|
APP-% \
|
||||||
DUMP_% \
|
DUMP_% \
|
||||||
ECLIPSE-% \
|
ECLIPSE-% \
|
||||||
@@ -52,17 +57,21 @@ PARSE_TIME_MAKE_GOALS := \
|
|||||||
|
|
||||||
-include vendor/google/build/ninja_config.mk
|
-include vendor/google/build/ninja_config.mk
|
||||||
|
|
||||||
ANDROID_TARGETS := $(filter-out $(KATI_OUTPUT_PATTERNS) $(NINJA_GOALS),$(ORIGINAL_MAKECMDGOALS))
|
# Any Android goals that need to be built.
|
||||||
EXTRA_TARGETS := $(filter-out $(KATI_OUTPUT_PATTERNS) $(NINJA_GOALS),$(filter-out $(ORIGINAL_MAKECMDGOALS),$(MAKECMDGOALS)))
|
ANDROID_GOALS := $(filter-out $(KATI_OUTPUT_PATTERNS) $(KATI) $(MAKEPARALLEL),\
|
||||||
KATI_TARGETS := $(filter $(PARSE_TIME_MAKE_GOALS),$(ANDROID_TARGETS))
|
$(sort $(ORIGINAL_MAKECMDGOALS) $(MAKECMDGOALS)))
|
||||||
|
# Goals we need to pass to Ninja.
|
||||||
|
NINJA_GOALS := $(filter-out $(NINJA_EXCLUDE_GOALS), $(ANDROID_GOALS))
|
||||||
|
# Goals we need to pass to Kati.
|
||||||
|
KATI_GOALS := $(filter $(PARSE_TIME_MAKE_GOALS), $(ANDROID_GOALS))
|
||||||
|
|
||||||
define replace_space_and_slash
|
define replace_space_and_slash
|
||||||
$(subst /,_,$(subst $(space),_,$(sort $1)))
|
$(subst /,_,$(subst $(space),_,$(sort $1)))
|
||||||
endef
|
endef
|
||||||
|
|
||||||
KATI_NINJA_SUFFIX := -$(TARGET_PRODUCT)
|
KATI_NINJA_SUFFIX := -$(TARGET_PRODUCT)
|
||||||
ifneq ($(KATI_TARGETS),)
|
ifneq ($(KATI_GOALS),)
|
||||||
KATI_NINJA_SUFFIX := $(KATI_NINJA_SUFFIX)-$(call replace_space_and_slash,$(KATI_TARGETS))
|
KATI_NINJA_SUFFIX := $(KATI_NINJA_SUFFIX)-$(call replace_space_and_slash,$(KATI_GOALS))
|
||||||
endif
|
endif
|
||||||
ifneq ($(ONE_SHOT_MAKEFILE),)
|
ifneq ($(ONE_SHOT_MAKEFILE),)
|
||||||
KATI_NINJA_SUFFIX := $(KATI_NINJA_SUFFIX)-mmm-$(call replace_space_and_slash,$(ONE_SHOT_MAKEFILE))
|
KATI_NINJA_SUFFIX := $(KATI_NINJA_SUFFIX)-mmm-$(call replace_space_and_slash,$(ONE_SHOT_MAKEFILE))
|
||||||
@@ -72,14 +81,12 @@ KATI_NINJA_SUFFIX := $(KATI_NINJA_SUFFIX)-mmma-$(call replace_space_and_slash,$(
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
my_checksum_suffix :=
|
my_checksum_suffix :=
|
||||||
ifneq ($(KATI_NINJA_SUFFIX),)
|
|
||||||
my_ninja_suffix_too_long := $(filter 1, $(shell v='$(KATI_NINJA_SUFFIX)' && echo $$(($${$(pound)v} > 64))))
|
my_ninja_suffix_too_long := $(filter 1, $(shell v='$(KATI_NINJA_SUFFIX)' && echo $$(($${$(pound)v} > 64))))
|
||||||
ifneq ($(my_ninja_suffix_too_long),)
|
ifneq ($(my_ninja_suffix_too_long),)
|
||||||
# Replace the suffix with a checksum if it gets too long.
|
# Replace the suffix with a checksum if it gets too long.
|
||||||
my_checksum_suffix := $(KATI_NINJA_SUFFIX)
|
my_checksum_suffix := $(KATI_NINJA_SUFFIX)
|
||||||
KATI_NINJA_SUFFIX := -$(word 1, $(shell echo $(my_checksum_suffix) | $(MD5SUM)))
|
KATI_NINJA_SUFFIX := -$(word 1, $(shell echo $(my_checksum_suffix) | $(MD5SUM)))
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
|
|
||||||
KATI_BUILD_NINJA := $(OUT_DIR)/build$(KATI_NINJA_SUFFIX).ninja
|
KATI_BUILD_NINJA := $(OUT_DIR)/build$(KATI_NINJA_SUFFIX).ninja
|
||||||
KATI_NINJA_SH := $(OUT_DIR)/ninja$(KATI_NINJA_SUFFIX).sh
|
KATI_NINJA_SH := $(OUT_DIR)/ninja$(KATI_NINJA_SUFFIX).sh
|
||||||
@@ -97,8 +104,6 @@ endif
|
|||||||
|
|
||||||
ifneq (,$(filter showcommands,$(ORIGINAL_MAKECMDGOALS)))
|
ifneq (,$(filter showcommands,$(ORIGINAL_MAKECMDGOALS)))
|
||||||
NINJA_ARGS += "-v"
|
NINJA_ARGS += "-v"
|
||||||
PHONY: showcommands
|
|
||||||
showcommands: droid
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef USE_GOMA
|
ifdef USE_GOMA
|
||||||
@@ -112,13 +117,13 @@ else
|
|||||||
NINJA_MAKEPARALLEL := $(MAKEPARALLEL) --ninja
|
NINJA_MAKEPARALLEL := $(MAKEPARALLEL) --ninja
|
||||||
endif
|
endif
|
||||||
|
|
||||||
droid $(ANDROID_TARGETS) $(EXTRA_TARGETS): ninja_wrapper
|
$(sort $(DEFAULT_GOAL) $(ANDROID_GOALS)) : ninja_wrapper
|
||||||
@#empty
|
@#empty
|
||||||
|
|
||||||
.PHONY: ninja_wrapper
|
.PHONY: ninja_wrapper
|
||||||
ninja_wrapper: $(KATI_BUILD_NINJA) $(MAKEPARALLEL)
|
ninja_wrapper: $(KATI_BUILD_NINJA) $(MAKEPARALLEL)
|
||||||
@echo Starting build with ninja
|
@echo Starting build with ninja
|
||||||
+$(hide) PATH=prebuilts/ninja/$(HOST_PREBUILT_TAG)/:$$PATH NINJA_STATUS="$(NINJA_STATUS)" $(NINJA_MAKEPARALLEL) $(KATI_NINJA_SH) $(filter-out dist,$(ANDROID_TARGETS)) -C $(TOP) $(NINJA_ARGS)
|
+$(hide) PATH=prebuilts/ninja/$(HOST_PREBUILT_TAG)/:$$PATH NINJA_STATUS="$(NINJA_STATUS)" $(NINJA_MAKEPARALLEL) $(KATI_NINJA_SH) $(NINJA_GOALS) -C $(TOP) $(NINJA_ARGS)
|
||||||
|
|
||||||
KATI_FIND_EMULATOR := --use_find_emulator
|
KATI_FIND_EMULATOR := --use_find_emulator
|
||||||
ifeq ($(KATI_EMULATE_FIND),false)
|
ifeq ($(KATI_EMULATE_FIND),false)
|
||||||
@@ -126,7 +131,7 @@ ifeq ($(KATI_EMULATE_FIND),false)
|
|||||||
endif
|
endif
|
||||||
$(KATI_BUILD_NINJA): $(KATI) $(MAKEPARALLEL) FORCE
|
$(KATI_BUILD_NINJA): $(KATI) $(MAKEPARALLEL) FORCE
|
||||||
@echo Running kati to generate build$(KATI_NINJA_SUFFIX).ninja...
|
@echo Running kati to generate build$(KATI_NINJA_SUFFIX).ninja...
|
||||||
+$(hide) $(KATI_MAKEPARALLEL) $(KATI) --ninja --ninja_dir=$(OUT_DIR) --ninja_suffix=$(KATI_NINJA_SUFFIX) --regen --ignore_dirty=$(OUT_DIR)/% --ignore_optional_include=$(OUT_DIR)/%.P --detect_android_echo $(KATI_FIND_EMULATOR) -f build/core/main.mk $(KATI_TARGETS) --gen_all_targets BUILDING_WITH_NINJA=true
|
+$(hide) $(KATI_MAKEPARALLEL) $(KATI) --ninja --ninja_dir=$(OUT_DIR) --ninja_suffix=$(KATI_NINJA_SUFFIX) --regen --ignore_dirty=$(OUT_DIR)/% --ignore_optional_include=$(OUT_DIR)/%.P --detect_android_echo $(KATI_FIND_EMULATOR) -f build/core/main.mk $(KATI_GOALS) --gen_all_targets BUILDING_WITH_NINJA=true
|
||||||
|
|
||||||
KATI_CXX := $(CLANG_CXX) $(CLANG_HOST_GLOBAL_CFLAGS) $(CLANG_HOST_GLOBAL_CPPFLAGS)
|
KATI_CXX := $(CLANG_CXX) $(CLANG_HOST_GLOBAL_CFLAGS) $(CLANG_HOST_GLOBAL_CPPFLAGS)
|
||||||
KATI_LD := $(CLANG_CXX) $(CLANG_HOST_GLOBAL_LDFLAGS)
|
KATI_LD := $(CLANG_CXX) $(CLANG_HOST_GLOBAL_LDFLAGS)
|
||||||
|
Reference in New Issue
Block a user