Merge changes I3682ae9a,Id29e273c

* changes:
  Don't use prebuilt modules for sanitizer builds.
  Don't use mainline prebuilts for coverage builds.
diff --git a/core/android_soong_config_vars.mk b/core/android_soong_config_vars.mk
index 8c702b3..fe97047 100644
--- a/core/android_soong_config_vars.mk
+++ b/core/android_soong_config_vars.mk
@@ -54,6 +54,7 @@
 else ifneq (,$(SANITIZE_TARGET)$(SANITIZE_HOST))
   # Prebuilts aren't built with sanitizers either.
   SOONG_CONFIG_art_module_source_build := true
+  MODULE_BUILD_FROM_SOURCE := true
 else ifeq (,$(filter x86 x86_64,$(HOST_CROSS_ARCH)))
   # We currently only provide prebuilts for x86 on host. This skips prebuilts in
   # cuttlefish builds for ARM servers.
diff --git a/core/main.mk b/core/main.mk
index cb97503..0822a6e 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -120,6 +120,9 @@
 ifndef SKIP_BOOT_JARS_CHECK
 SKIP_BOOT_JARS_CHECK := true
 endif
+# Mainline modules prebuilts do support coverage. Build them from source.
+# See b/159241638
+MODULE_BUILD_FROM_SOURCE := true
 endif
 
 ifdef TARGET_ARCH_SUITE