platform_build/core
Dan Willemsen e43d8ee8ff Enable missing dependency checks
With this enabled, we'll check the entire build graph for missing
dependencies -- even if you don't need to build the module. So it'll
present more errors, but surface them earlier.

These can be turned off manually with an environment variable if the
branch is expected to have missing dependencies:

  ALLOW_MISSING_DEPENDENCIES=true
  SOONG_ALLOW_MISSING_DEPENDENCIES=true   (previous method)

That will be set automatically when using 'mm', which doesn't load the
entire build graph. It will also be set when using 'tapas' to build
unbundled apps, since those are usually on reduced branches.

This provides better error messages when a library is missing:

system/core/init/Android.mk: error: init_tests (NATIVE_TESTS android-arm64) missing libinit (SHARED_LIBRARIES android-arm64)
Available variants:
  libinit (STATIC_LIBRARIES android-arm64)
  libinit (STATIC_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
system/core/init/Android.mk: error: init_tests (NATIVE_TESTS android-arm) missing libinit (SHARED_LIBRARIES android-arm)
Available variants:
  libinit (STATIC_LIBRARIES android-arm64)
  libinit (STATIC_LIBRARIES android-arm)
You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build.
build/core/main.mk:852: error: exiting from previous errors.

instead of:

ninja: error: 'out/target/product/generic_arm64/obj/SHARED_LIBRARIES/libinit_intermediates/export_includes', needed by 'out/target/product/generic_arm64/obj/NATIVE_TESTS/init_tests_intermediates/import_includes', missing and no known rule to make it

Test: Manually introduce errors, check for expected output
Test: multiproduct_kati on AOSP and internal master, no new breakages
Change-Id: I5847f813045929813214137403c499b44ef67907
Merged-In: I5847f813045929813214137403c499b44ef67907
2017-11-10 01:13:07 +00:00
..
clang Switch to clang-3859424. 2017-03-28 22:11:52 -07:00
combo Re-enable dx support 2017-02-16 14:08:45 -08:00
no_java_path
tasks Rewrite link type checking 2017-04-19 22:41:32 -07:00
aapt2.mk
android_manifest.mk
apicheck_msg_current.txt
apicheck_msg_last.txt
aux_config.mk Don't run find on directories that don't exist 2017-01-11 23:31:46 +00:00
aux_executable.mk introduce AUX build class of targets 2016-08-02 08:06:28 -07:00
aux_static_library.mk introduce AUX build class of targets 2016-08-02 08:06:28 -07:00
aux_toolchain.mk introduce AUX build class of targets 2016-08-02 08:06:28 -07:00
base_rules.mk Common testcase directories: Clean up duplicates 2017-04-05 13:38:20 -07:00
binary.mk Rewrite link type checking 2017-04-19 22:41:32 -07:00
build-system.html Support java annotation proccessors 2017-04-11 09:56:09 -07:00
build_id.mk
build_rro_package.mk Change name of overlay subdir 'sku'->'theme' 2016-10-19 19:11:30 +00:00
ccache.mk
checktree
cleanbuild.mk Use ifndef or ifeq () instead of ifeq "" 2017-02-21 17:29:10 -08:00
cleanspec.mk
clear_vars.mk Support java annotation proccessors 2017-04-11 09:56:09 -07:00
config.mk Filter and colorize javac output V3 2017-04-18 21:04:58 +00:00
config_sanitizers.mk Disable CFI for ASAN targets. (Make) 2017-04-20 08:03:44 -07:00
configure_local_jack.mk Re-enable dx support 2017-02-16 14:08:45 -08:00
configure_module_stem.mk
copy_headers.mk Prohibit host modules from using LOCAL_COPY_HEADERS 2016-11-28 13:46:17 -08:00
cxx_stl_setup.mk Fix building static linux binaries 2016-09-13 17:48:07 +00:00
definitions.mk Merge "Rewrite link type checking" 2017-04-20 15:04:08 +00:00
device.mk
dex_preopt.mk Remove option for non-pic dex preopt. 2016-12-19 09:52:25 +00:00
dex_preopt_libart.mk Merge "Add local preopt options for generating app image and profile" 2017-03-03 01:14:03 +00:00
dex_preopt_libart_boot.mk Don't include patch information for dex preopt. 2017-02-28 17:05:12 +00:00
dex_preopt_odex_install.mk Merge "Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE" 2017-03-21 06:02:14 +00:00
distdir.mk
dpi_specific_apk.mk Move proguard before classes.jar 2017-04-06 00:46:23 +00:00
droiddoc.mk resolve merge conflicts of dd9aee1 to stage-aosp-master 2016-07-29 14:15:14 -07:00
dumpvar.mk Add TARGET_PLATFORM_VERSION to lunch 2017-03-23 09:44:08 -07:00
dynamic_binary.mk
envsetup.mk Rewrite link type checking 2017-04-19 22:41:32 -07:00
executable.mk Record module type statistics 2016-07-29 19:58:35 +00:00
executable_internal.mk Support split /system and /vendor modules from Soong 2017-04-10 15:54:50 -07:00
executable_prefer_symlink.mk Remove HOST_PREFER_32_BIT 2016-09-02 13:20:52 -07:00
filter_symbols.sh
find-jdk-tools-jar.sh
fuzz_test.mk Update fuzz_test makefile. 2017-04-19 10:58:58 -07:00
generate_enforce_rro.mk Enforce RROs for all the build-time ROs 2017-03-30 10:43:38 +09:00
goma.mk goma.mk: do not start goma compiler_proxy if NOSTART_GOMA is set. 2016-09-13 13:13:52 +09:00
header_library.mk Add Header Library support to Make 2017-02-15 16:04:49 -08:00
header_library_internal.mk Add Header Library support to Make 2017-02-15 16:04:49 -08:00
help.mk Add vnod. 2017-03-07 12:17:51 -08:00
host_dalvik_java_library.mk Filter and colorize javac output V3 2017-04-18 21:04:58 +00:00
host_dalvik_static_java_library.mk Record module type statistics 2016-07-29 19:58:35 +00:00
host_executable.mk Remove HOST_PREFER_32_BIT 2016-09-02 13:20:52 -07:00
host_executable_internal.mk
host_fuzz_test.mk Record module type statistics 2016-07-29 19:58:35 +00:00
host_java_library.mk Filter and colorize javac output V3 2017-04-18 21:04:58 +00:00
host_java_library_common.mk
host_native_test.mk Record module type statistics 2016-07-29 19:58:35 +00:00
host_prebuilt.mk Record module type statistics 2016-07-29 19:58:35 +00:00
host_shared_library.mk Remove HOST_PREFER_32_BIT 2016-09-02 13:20:52 -07:00
host_shared_library_internal.mk
host_shared_test_lib.mk Finish refactoring tests to NATIVE_TESTS 2016-06-22 00:27:54 -07:00
host_static_library.mk Remove HOST_PREFER_32_BIT 2016-09-02 13:20:52 -07:00
host_static_library_internal.mk
host_static_test_lib.mk Record module type statistics 2016-07-29 19:58:35 +00:00
host_test_internal.mk Support non-gtest NATIVE_TESTS 2016-12-21 20:27:06 -08:00
install_jni_libs.mk
install_jni_libs_internal.mk Rewrite link type checking 2017-04-19 22:41:32 -07:00
jack-default.args Changing default Jack arguments. 2017-03-28 12:13:32 +02:00
java.mk Filter and colorize javac output V3 2017-04-18 21:04:58 +00:00
java_common.mk Rewrite link type checking 2017-04-19 22:41:32 -07:00
java_library.mk Rearrange java library outputs 2017-04-05 18:04:37 -07:00
link_type.mk link_type: common overrides 2nd 2017-04-20 14:37:23 -07:00
LINUX_KERNEL_COPYING
local_vndk.mk Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE 2017-03-20 20:57:04 -07:00
main.mk Enable missing dependency checks 2017-11-10 01:13:07 +00:00
Makefile AVB: support BOARD_BUILD_SYSTEM_ROOT_IMAGE 2017-04-15 08:53:40 +08:00
module_arch_supported.mk
multi_prebuilt.mk Fix duplicate and dangling rules 2017-04-06 10:23:04 -07:00
multilib.mk
native_benchmark.mk resolve merge conflicts of dd9aee1 to stage-aosp-master 2016-07-29 14:15:14 -07:00
native_test.mk Record module type statistics 2016-07-29 19:58:35 +00:00
ninja_config.mk Fix vendor/google/build/ninja_config.mk 2016-11-10 19:41:27 -08:00
node_fns.mk
notice_files.mk Exclude ndk stubs from notice file list 2017-04-04 14:59:55 -07:00
package.mk Fix LOCAL_MULTILIB := 64 in TARGET_TRANSLATE_2ND_ARCH builds 2017-04-20 11:19:10 -07:00
package_internal.mk Move proguard before classes.jar 2017-04-06 00:46:23 +00:00
pathmap.mk Update pathmap.mk for renderscript support library migration 2016-12-22 17:32:20 -08:00
pdk_config.mk Replace core-junit with legacy-test 2016-11-30 13:50:56 +00:00
pdk_fusion_modules.mk Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE 2017-03-20 20:57:04 -07:00
phony_package.mk Record module type statistics 2016-07-29 19:58:35 +00:00
prebuilt.mk Support native test prebuilts for X86+ARM builds 2017-01-17 14:19:50 -08:00
prebuilt_internal.mk Rewrite link type checking 2017-04-19 22:41:32 -07:00
process_wrapper.sh
process_wrapper_gdb.cmds
process_wrapper_gdb.sh
product-graph.mk
product.mk Use product-based inclusive rule for enforcing RRO 2017-04-04 11:31:24 +09:00
product_config.mk Use product-based inclusive rule for enforcing RRO 2017-04-04 11:31:24 +09:00
proguard.emma.flags
proguard.flags
proguard.jacoco.flags
proguard_basic_keeps.flags
proguard_tests.flags
root.mk
sdk_font.mk
setup_one_odex.mk Move profile logic to dex_preopt_odex_install 2017-03-03 16:23:14 -08:00
shared_library.mk Record module type statistics 2016-07-29 19:58:35 +00:00
shared_library_internal.mk Support split /system and /vendor modules from Soong 2017-04-10 15:54:50 -07:00
shared_test_lib.mk Finish refactoring tests to NATIVE_TESTS 2016-06-22 00:27:54 -07:00
soong_config.mk Merge "Rewrite link type checking" 2017-04-20 15:04:08 +00:00
static_java_library.mk Pass min sdk version to dx and desugar 2017-02-22 11:10:37 -08:00
static_library.mk Record module type statistics 2016-07-29 19:58:35 +00:00
static_library_internal.mk Support Soong native coverage 2017-02-10 09:27:35 -08:00
static_test_lib.mk Record module type statistics 2016-07-29 19:58:35 +00:00
target_test_internal.mk Support non-gtest NATIVE_TESTS 2016-12-21 20:27:06 -08:00
version_defaults.mk Merge "Auto-generate PLATFORM_VERSION_ALL_CODENAMES." 2017-03-31 23:09:42 +00:00
WINPTHREADS_COPYING Statically link libwinpthread into windows binaries. 2017-02-23 17:56:44 -08:00