Clean up the special cases where we wouldn't be able to use the
prebuilt ART module.

They were added with the intention of flipping the last fallback to use
prebuilts by default, but that has been descoped. Instead let the ART
module variable default to the generic MODULE_BUILD_FROM_SOURCE.

Test: env MODULE_BUILD_FROM_SOURCE=true \
        build/soong/soong_ui.bash --dumpvars-mode \
        --vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
  MODULE_BUILD_FROM_SOURCE='true'
  ART_MODULE_BUILD_FROM_SOURCE='true'
Test: env MODULE_BUILD_FROM_SOURCE=false \
        build/soong/soong_ui.bash --dumpvars-mode \
        --vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
  MODULE_BUILD_FROM_SOURCE='false'
  ART_MODULE_BUILD_FROM_SOURCE='false'
Test: env MODULE_BUILD_FROM_SOURCE=false \
          ART_MODULE_BUILD_FROM_SOURCE=true \
        build/soong/soong_ui.bash --dumpvars-mode \
        --vars="MODULE_BUILD_FROM_SOURCE ART_MODULE_BUILD_FROM_SOURCE"
  MODULE_BUILD_FROM_SOURCE='false'
  ART_MODULE_BUILD_FROM_SOURCE='true'
Bug: 172480615
Bug: 184842499
Change-Id: I433e0236e595422f4d6fe2b4b2411491e3c600cf
diff --git a/core/android_soong_config_vars.mk b/core/android_soong_config_vars.mk
index c6f4cb0..77260e6 100644
--- a/core/android_soong_config_vars.mk
+++ b/core/android_soong_config_vars.mk
@@ -65,7 +65,6 @@
   ART_MODULE_BUILD_FROM_SOURCE := $(SOONG_CONFIG_art_module_source_build)
 endif
 
-# TODO(b/172480615): Remove when platform uses ART Module prebuilts by default.
 ifneq (,$(ART_MODULE_BUILD_FROM_SOURCE))
   # Keep an explicit setting.
 else ifneq (,$(findstring .android.art,$(TARGET_BUILD_APPS)))
@@ -75,36 +74,9 @@
   # Always build from source for the module targets. This ought to be covered by
   # the TARGET_BUILD_APPS check above, but there are test builds that don't set it.
   ART_MODULE_BUILD_FROM_SOURCE := true
-else ifeq (true,$(MODULE_BUILD_FROM_SOURCE))
-  # Build from source if other Mainline modules are.
-  ART_MODULE_BUILD_FROM_SOURCE := true
-else ifneq (,$(filter true,$(NATIVE_COVERAGE) $(CLANG_COVERAGE)))
-  # Always build ART APEXes from source in coverage builds since the prebuilts
-  # aren't built with instrumentation.
-  # TODO(b/172480617): Find another solution for this.
-  ART_MODULE_BUILD_FROM_SOURCE := true
-else ifneq (,$(SANITIZE_TARGET)$(SANITIZE_HOST))
-  # Prebuilts aren't built with sanitizers either.
-  ART_MODULE_BUILD_FROM_SOURCE := 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.
-  ART_MODULE_BUILD_FROM_SOURCE := true
-else ifneq (,$(filter dex2oatds dex2oats,$(PRODUCT_HOST_PACKAGES)))
-  # Some products depend on host tools that aren't available as prebuilts.
-  ART_MODULE_BUILD_FROM_SOURCE := true
-else ifeq (,$(findstring com.google.android.art,$(PRODUCT_PACKAGES)))
-  # TODO(b/192006406): There is currently no good way to control which prebuilt
-  # APEX (com.google.android.art or com.android.art) gets picked for deapexing
-  # to provide dex jars for hiddenapi and dexpreopting. Instead the AOSP APEX is
-  # completely disabled, and we build from source for AOSP products.
-  ART_MODULE_BUILD_FROM_SOURCE := true
 else
-  # This sets the default for building ART APEXes from source rather than
-  # prebuilts (in packages/modules/ArtPrebuilt and prebuilt/module_sdk/art) in
-  # all other platform builds.
-  ART_MODULE_BUILD_FROM_SOURCE := true
+  # Do the same as other modules by default.
+  ART_MODULE_BUILD_FROM_SOURCE := $(MODULE_BUILD_FROM_SOURCE)
 endif
 
 $(call soong_config_set,art_module,source_build,$(ART_MODULE_BUILD_FROM_SOURCE))