Merge "Refactor BoardConfig.mk for emulator products"
diff --git a/core/dex_preopt.mk b/core/dex_preopt.mk
index 270e5f4..de830d4 100644
--- a/core/dex_preopt.mk
+++ b/core/dex_preopt.mk
@@ -21,7 +21,7 @@
 
 # The default filter for which files go into the system_other image (if it is
 # being used). To bundle everything one should set this to '%'
-SYSTEM_OTHER_ODEX_FILTER ?= app/% priv-app/%
+SYSTEM_OTHER_ODEX_FILTER ?= app/% priv-app/% product/app/% product/priv-app/%
 
 # Method returning whether the install path $(1) should be for system_other.
 # Under SANITIZE_LITE, we do not want system_other. Just put things under /data/asan.
diff --git a/core/main.mk b/core/main.mk
index bc99284..0d2cc34 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -895,6 +895,14 @@
 # The base list of modules to build for this product is specified
 # by the appropriate product definition file, which was included
 # by product_config.mk.
+# Name resolution for PRODUCT_PACKAGES:
+#   foo:32 resolves to foo_32;
+#   foo:64 resolves to foo;
+#   foo resolves to both foo and foo_32 (if foo_32 is defined).
+#
+# Name resolution for LOCAL_REQUIRED_MODULES:
+#   If a module is built for 2nd arch, its required module resolves to
+#   32-bit variant, if it exits. See the select-bitness-of-required-modules definition.
 # $(1): product makefile
 define product-installed-files
   $(eval _pif_modules := $(PRODUCTS.$(strip $(1)).PRODUCT_PACKAGES)) \
diff --git a/target/product/base_system.mk b/target/product/base_system.mk
index 8eef95e..5806309 100644
--- a/target/product/base_system.mk
+++ b/target/product/base_system.mk
@@ -16,8 +16,6 @@
 
 # Base modules and settings for the system partition.
 PRODUCT_PACKAGES += \
-    20-dns.conf \
-    95-configured \
     adb \
     adbd \
     am \
@@ -26,7 +24,6 @@
     android.hidl.manager-V1.0-java \
     android.hidl.memory@1.0-impl \
     android.hidl.memory@1.0-impl.vendor \
-    android.policy \
     android.test.mock \
     android.test.runner \
     applypatch \
@@ -134,7 +131,6 @@
     libiprouteutil \
     libjnigraphics \
     libjpeg \
-    libkeystore \
     liblog \
     libm \
     libmdnssd \
@@ -167,11 +163,9 @@
     libsqlite \
     libstagefright \
     libstagefright_amrnb_common \
-    libstagefright_avc_common \
     libstagefright_enc_common \
     libstagefright_foundation \
     libstagefright_omx \
-    libstagefright_yuv \
     libstdc++ \
     libsurfaceflinger \
     libsurfaceflinger_ddmconnection \
diff --git a/target/product/core_minimal.mk b/target/product/core_minimal.mk
index 3470a53..a4e5fb2 100644
--- a/target/product/core_minimal.mk
+++ b/target/product/core_minimal.mk
@@ -34,7 +34,6 @@
     HTMLViewer \
     libaudiopreprocessing \
     libfilterpack_imageproc \
-    libgabi++ \
     libstagefright_soft_aacdec \
     libstagefright_soft_aacenc \
     libstagefright_soft_amrdec \
@@ -66,7 +65,6 @@
     StatementService \
     vndk_snapshot_package \
     webview \
-    webview_zygote \
 
 
 PRODUCT_COPY_FILES += \
diff --git a/target/product/generic_no_telephony.mk b/target/product/generic_no_telephony.mk
index 0d5eccf..4e89f5e 100644
--- a/target/product/generic_no_telephony.mk
+++ b/target/product/generic_no_telephony.mk
@@ -46,15 +46,8 @@
     Home \
     InputDevices \
     KeyChain \
-    Keyguard \
     LatinIME \
-    Launcher3QuickStep \
     librs_jni \
-    libvideoeditor_core \
-    libvideoeditor_jni \
-    libvideoeditor_osal \
-    libvideoeditorplayer \
-    libvideoeditor_videofilters \
     local_time.default \
     ManagedProvisioning \
     MmsService \
@@ -73,9 +66,7 @@
     screenrecord \
     SecureElement \
     Settings \
-    SettingsIntelligence \
     SharedStorageBackup \
-    SimAppDialog \
     StorageManager \
     SystemUI \
     SysuiDarkThemeOverlay \