1 ifeq ($(filter address,$(SANITIZE_HOST)),) 2 NINJA ?= prebuilts/build-tools/$(HOST_PREBUILT_TAG)/bin/ninja 3 else 4 NINJA ?= prebuilts/build-tools/$(HOST_PREBUILT_TAG)/asan/bin/ninja 5 endif 6 7 KATI_OUTPUT_PATTERNS := $(OUT_DIR)/build%.ninja $(OUT_DIR)/ninja%.sh 8 9 # Modifier goals we don't need to pass to Ninja. 10 NINJA_EXCLUDE_GOALS := all APP-% PRODUCT-% 11 12 # A list of goals which affect parsing of makefiles and we need to pass to Kati. 13 PARSE_TIME_MAKE_GOALS := \ 14 $(PARSE_TIME_MAKE_GOALS) \ 15 $(dont_bother_goals) \ 16 all \ 17 ECLIPSE-% \ 18 AUX-% \ 19 boottarball-nodeps \ 20 brillo_tests \ 21 btnod \ 22 build-art% \ 23 build_kernel-nodeps \ 24 clean-oat% \ 25 continuous_instrumentation_tests \ 26 continuous_native_tests \ 27 cts \ 28 custom_images \ 29 deps-license \ 30 dicttool_aosp \ 31 dump-products \ 32 eng \ 33 fusion \ 34 oem_image \ 35 online-system-api-sdk-docs \ 36 pdk \ 37 platform \ 38 platform-java \ 39 product-graph \ 40 samplecode \ 41 sdk \ 42 sdk_addon \ 43 sdk_repo \ 44 snod \ 45 stnod \ 46 systemimage-nodeps \ 47 systemtarball-nodeps \ 48 target-files-package \ 49 test-art% \ 50 user \ 51 userdataimage \ 52 userdebug \ 53 vts \ 54 win_sdk \ 55 winsdk-tools 56 57 include $(wildcard vendor/*/build/ninja_config.mk) 58 59 # Any Android goals that need to be built. 60 ANDROID_GOALS := $(filter-out $(KATI_OUTPUT_PATTERNS) $(CKATI) $(MAKEPARALLEL),\ 61 $(sort $(ORIGINAL_MAKECMDGOALS) $(MAKECMDGOALS))) 62 # Goals we need to pass to Ninja. 63 NINJA_GOALS := $(filter-out $(NINJA_EXCLUDE_GOALS), $(ANDROID_GOALS)) 64 ifndef NINJA_GOALS 65 NINJA_GOALS := droid 66 endif 67 # Goals we need to pass to Kati. 68 KATI_GOALS := $(filter $(PARSE_TIME_MAKE_GOALS), $(ANDROID_GOALS)) 69