Dedupe mk rules in core_minimal.mk and core_tiny.mk.
These two are the only ones inheriting base.mk, and were largely similar.
This CL moves all the shared stuff up one level into base.mk.
One thing not de-duped yet is the PRODUCT_SYSTEM_SERVER_JARS variable,
as the order of that is significant.
Also sort various lists that were ordered arbitrarily.
Bug: 80410283
Test: diffed output of multiproduct_kati with aosp/703385 patched
Change-Id: Iddffd6982df039f5daa8be345de338ba11c63c10
diff --git a/target/product/base.mk b/target/product/base.mk
index 752a34b..4be17d3 100644
--- a/target/product/base.mk
+++ b/target/product/base.mk
@@ -14,70 +14,104 @@
# limitations under the License.
#
-# Base modules (will move elsewhere, previously user tagged)
PRODUCT_PACKAGES += \
20-dns.conf \
95-configured \
- org.apache.http.legacy \
- appwidget \
- appops \
am \
+ android.hardware.cas@1.0-service \
+ android.hardware.media.omx@1.0-service \
+ android.hidl.base-V1.0-java \
+ android.hidl.manager-V1.0-java \
android.policy \
android.test.base \
android.test.mock \
android.test.runner \
- app_process \
applypatch \
+ appops \
+ app_process \
+ appwidget \
audioserver \
+ BackupRestoreConfirmation \
+ bcc \
bit \
blkid \
bmgr \
bpfloader \
+ bu \
bugreport \
bugreportz \
cameraserver \
+ com.android.location.provider \
+ com.android.location.provider.xml \
content \
+ CtsShimPrebuilt \
+ CtsShimPrivPrebuilt \
dnsmasq \
dpm \
+ e2fsck \
+ ExtServices \
+ ExtShared \
framework \
+ framework-res \
framework-sysconfig.xml \
fsck_msdos \
+ gatekeeperd \
hid \
ime \
- incidentd \
+ ims-common \
incident \
+ incidentd \
incident_helper \
incident_report \
input \
+ installd \
+ ip \
+ ip6tables \
+ iptables \
+ ip-up-vpn \
javax.obex \
+ keystore \
+ ld.config.txt \
+ ld.mc \
+ libaaudio \
+ libamidi \
libandroid \
libandroid_runtime \
libandroid_servers \
libaudioeffect_jni \
libaudioflinger \
- libaudiopolicyservice \
libaudiopolicymanager \
+ libaudiopolicyservice \
libbundlewrapper \
+ libcamera2ndk \
libcamera_client \
libcameraservice \
- libcamera2ndk \
- libdrmclearkeyplugin \
- libdynproc \
libclearkeycasplugin \
+ libdownmix \
+ libdrmclearkeyplugin \
+ libdrmframework \
+ libdrmframework_jni \
+ libdynproc \
libeffectproxy \
libeffects \
+ libfilterfw \
+ libgatekeeper \
libinput \
libinputflinger \
libiprouteutil \
libjnigraphics \
+ libkeystore \
libldnhncr \
libmedia \
libmedia_jni \
+ libmediandk \
libmediaplayerservice \
libmtp \
libnetd_client \
libnetlink \
libnetutils \
+ libOpenMAXAL \
+ libOpenSLES \
libpdfium \
libradio_metadata \
libreference-ril \
@@ -102,66 +136,100 @@
libusbhost \
libvisualizer \
libvorbisidec \
- libmediandk \
libvulkan \
libwifi-service \
+ libwilhelm \
locksettings \
+ logd \
media \
media_cmd \
+ media_profiles_V1_0.dtd \
mediadrmserver \
- mediaserver \
- mediametrics \
mediaextractor \
+ mediametrics \
+ mediaserver \
+ mke2fs \
monkey \
mtpd \
ndc \
netd \
+ org.apache.http.legacy \
perfetto \
ping \
ping6 \
platform.xml \
- privapp-permissions-platform.xml \
- pppd \
pm \
+ pppd \
+ privapp-permissions-platform.xml \
racoon \
+ resize2fs \
run-as \
schedtest \
+ screencap \
sdcard \
secdiscard \
+ SecureElement \
+ sensorservice \
services \
settings \
+ SettingsProvider \
sgdisk \
+ Shell \
sm \
statsd \
svc \
tc \
telecom \
+ telephony-common \
traced \
traced_probes \
+ tune2fs \
+ uiautomator \
+ uncrypt \
vdc \
+ voip-common \
vold \
- wm
+ WallpaperBackup \
+ wificond \
+ wifi-service \
+ wm \
+
+
+ifeq ($(TARGET_CORE_JARS),)
+$(error TARGET_CORE_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
+endif
+
+# The order matters
+PRODUCT_BOOT_JARS := \
+ $(TARGET_CORE_JARS) \
+ ext \
+ framework \
+ telephony-common \
+ voip-common \
+ ims-common \
+ android.hidl.base-V1.0-java \
+ android.hidl.manager-V1.0-java
# Add the compatibility library that is needed when org.apache.http.legacy
# is removed from the bootclasspath.
ifeq ($(REMOVE_OAHL_FROM_BCP),true)
PRODUCT_PACKAGES += framework-oahl-backward-compatibility
+PRODUCT_BOOT_JARS += framework-oahl-backward-compatibility
+else
+PRODUCT_BOOT_JARS += org.apache.http.legacy.impl
endif
# Add the compatibility library that is needed when android.test.base
# is removed from the bootclasspath.
ifeq ($(REMOVE_ATB_FROM_BCP),true)
PRODUCT_PACKAGES += framework-atb-backward-compatibility
+PRODUCT_BOOT_JARS += framework-atb-backward-compatibility
+else
+PRODUCT_BOOT_JARS += android.test.base
endif
-# Essential HAL modules
-PRODUCT_PACKAGES += \
- android.hardware.cas@1.0-service \
- android.hardware.media.omx@1.0-service
-
-# XML schema files
-PRODUCT_PACKAGES += \
- media_profiles_V1_0.dtd
+PRODUCT_COPY_FILES += system/core/rootdir/init.zygote32.rc:root/init.zygote32.rc
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.zygote=zygote32
# Packages included only for eng or userdebug builds, previously debug tagged
PRODUCT_PACKAGES_DEBUG := \
@@ -173,12 +241,17 @@
strace \
sanitizer-status
+# The set of packages whose code can be loaded by the system server.
+PRODUCT_SYSTEM_SERVER_APPS += \
+ SettingsProvider \
+ WallpaperBackup
+
# Packages included only for eng/userdebug builds, when building with SANITIZE_TARGET=address
PRODUCT_PACKAGES_DEBUG_ASAN := \
fuzz \
honggfuzz
-PRODUCT_COPY_FILES := $(call add-to-product-copy-files-if-exists,\
+PRODUCT_COPY_FILES += $(call add-to-product-copy-files-if-exists,\
frameworks/base/config/preloaded-classes:system/etc/preloaded-classes)
# Note: it is acceptable to not have a dirty-image-objects file. In that case, the special bin
@@ -186,4 +259,5 @@
PRODUCT_COPY_FILES += $(call add-to-product-copy-files-if-exists,\
frameworks/base/config/dirty-image-objects:system/etc/dirty-image-objects)
+$(call inherit-product, $(SRC_TARGET_DIR)/product/runtime_libart.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/embedded.mk)
diff --git a/target/product/core_minimal.mk b/target/product/core_minimal.mk
index 4006096..a057cc6 100644
--- a/target/product/core_minimal.mk
+++ b/target/product/core_minimal.mk
@@ -23,78 +23,32 @@
PRODUCT_NAME := core
PRODUCT_PACKAGES += \
- BackupRestoreConfirmation \
- CompanionDeviceManager \
- CtsShimPrebuilt \
- CtsShimPrivPrebuilt \
- DownloadProvider \
- ExtShared \
- ExtServices \
- HTMLViewer \
- MediaProvider \
- PackageInstaller \
- SecureElement \
- SettingsProvider \
- Shell \
- StatementService \
- WallpaperBackup \
- android.hidl.base-V1.0-java \
- android.hidl.manager-V1.0-java \
- bcc \
- bu \
com.android.future.usb.accessory \
- com.android.location.provider \
- com.android.location.provider.xml \
+ com.android.mediadrm.signer \
com.android.media.remotedisplay \
com.android.media.remotedisplay.xml \
- com.android.mediadrm.signer \
+ CompanionDeviceManager \
+ DownloadProvider \
drmserver \
ethernet-service \
- framework-res \
+ HTMLViewer \
idmap \
- installd \
- ims-common \
- ip \
- ip-up-vpn \
- ip6tables \
- iptables \
- gatekeeperd \
- keystore \
- ld.config.txt \
- ld.mc \
- libaaudio \
- libamidi \
- libOpenMAXAL \
- libOpenSLES \
libdownmix \
libdrmframework \
libdrmframework_jni \
libfilterfw \
- libkeystore \
libgatekeeper \
+ libkeystore \
libneuralnetworks \
libwebviewchromium_loader \
libwebviewchromium_plat_support \
- libwilhelm \
- logd \
- mke2fs \
- e2fsck \
- resize2fs \
- tune2fs \
- screencap \
- sensorservice \
- telephony-common \
- uiautomator \
- uncrypt \
+ MediaProvider \
+ PackageInstaller \
+ StatementService \
vndk_snapshot_package \
- voip-common \
webview \
webview_zygote \
-# Wifi modules
-PRODUCT_PACKAGES += \
- wifi-service \
- wificond \
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.webview.xml:system/etc/permissions/android.software.webview.xml
@@ -104,57 +58,18 @@
frameworks/native/data/etc/android.software.preview_sdk.xml:system/etc/permissions/android.software.preview_sdk.xml
endif
-ifeq ($(TARGET_CORE_JARS),)
-$(error TARGET_CORE_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
-endif
-
-# The order of PRODUCT_BOOT_JARS matters.
-PRODUCT_BOOT_JARS := \
- $(TARGET_CORE_JARS) \
- ext \
- framework \
- telephony-common \
- voip-common \
- ims-common \
- android.hidl.base-V1.0-java \
- android.hidl.manager-V1.0-java
-
-ifeq ($(REMOVE_OAHL_FROM_BCP),true)
-PRODUCT_BOOT_JARS += framework-oahl-backward-compatibility
-else
-PRODUCT_BOOT_JARS += org.apache.http.legacy.impl
-endif
-
-ifeq ($(REMOVE_ATB_FROM_BCP),true)
-PRODUCT_BOOT_JARS += framework-atb-backward-compatibility
-else
-PRODUCT_BOOT_JARS += android.test.base
-endif
-
-# The order of PRODUCT_SYSTEM_SERVER_JARS matters.
+# The order here is the same order they end up on the classpath, so it matters.
PRODUCT_SYSTEM_SERVER_JARS := \
services \
ethernet-service \
wifi-service \
com.android.location.provider \
-# The set of packages whose code can be loaded by the system server.
-PRODUCT_SYSTEM_SERVER_APPS += \
- SettingsProvider \
- WallpaperBackup
-
# Adoptable external storage supports both ext4 and f2fs
PRODUCT_PACKAGES += \
- e2fsck \
- mke2fs \
fsck.f2fs \
make_f2fs \
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
- ro.zygote=zygote32
-PRODUCT_COPY_FILES += \
- system/core/rootdir/init.zygote32.rc:root/init.zygote32.rc
-
PRODUCT_COPY_FILES += \
system/core/rootdir/etc/public.libraries.android.txt:system/etc/public.libraries.txt
@@ -176,7 +91,6 @@
ro.logd.size.stats=64K \
log.tag.stats_log=I
-$(call inherit-product, $(SRC_TARGET_DIR)/product/runtime_libart.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/base.mk)
# Enable CFI for security-sensitive components
diff --git a/target/product/core_tiny.mk b/target/product/core_tiny.mk
index ce46d24..8055b73 100644
--- a/target/product/core_tiny.mk
+++ b/target/product/core_tiny.mk
@@ -17,107 +17,22 @@
# No telephony
PRODUCT_PACKAGES := \
+ audio.primary.default \
Bluetooth \
CalendarProvider \
- ContactsProvider \
CertInstaller \
- FusedLocation \
- InputDevices
-
-PRODUCT_PACKAGES += \
clatd \
clatd.conf \
- pppd
-
-PRODUCT_PACKAGES += \
- audio.primary.default \
- local_time.default \
- power.default
-
-PRODUCT_PACKAGES += \
- BackupRestoreConfirmation \
- CtsShimPrebuilt \
- CtsShimPrivPrebuilt \
+ ContactsProvider \
DefaultContainerService \
- ExtShared \
- ExtServices \
- SecureElement \
- SettingsProvider \
- Shell \
- WallpaperBackup \
- android.hidl.base-V1.0-java \
- android.hidl.manager-V1.0-java \
- bcc \
- bu \
- com.android.location.provider \
- com.android.location.provider.xml \
- framework-res \
- installd \
- ims-common \
- ip \
- ip-up-vpn \
- ip6tables \
- iptables \
- gatekeeperd \
- keystore \
- ld.config.txt \
- ld.mc \
- libaaudio \
- libamidi \
- libOpenMAXAL \
- libOpenSLES \
- libdownmix \
- libfilterfw \
- libgatekeeper \
- libkeystore \
- libwilhelm \
- libdrmframework_jni \
- libdrmframework \
- mke2fs \
- e2fsck \
- resize2fs \
- tune2fs \
- screencap \
- sensorservice \
- uiautomator \
- uncrypt \
- telephony-common \
- voip-common \
- logd \
+ FusedLocation \
+ InputDevices \
+ local_time.default \
+ power.default \
+ pppd \
-# Wifi modules
-PRODUCT_PACKAGES += \
- wifi-service \
- wificond \
-ifeq ($(TARGET_CORE_JARS),)
-$(error TARGET_CORE_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
-endif
-
-# The order matters
-PRODUCT_BOOT_JARS := \
- $(TARGET_CORE_JARS) \
- ext \
- framework \
- telephony-common \
- voip-common \
- ims-common \
- android.hidl.base-V1.0-java \
- android.hidl.manager-V1.0-java
-
-ifeq ($(REMOVE_OAHL_FROM_BCP),true)
-PRODUCT_BOOT_JARS += framework-oahl-backward-compatibility
-else
-PRODUCT_BOOT_JARS += org.apache.http.legacy.impl
-endif
-
-ifeq ($(REMOVE_ATB_FROM_BCP),true)
-PRODUCT_BOOT_JARS += framework-atb-backward-compatibility
-else
-PRODUCT_BOOT_JARS += android.test.base
-endif
-
-# The order of PRODUCT_SYSTEM_SERVER_JARS matters.
+# The order here is the same order they end up on the classpath, so it matters.
PRODUCT_SYSTEM_SERVER_JARS := \
services \
wifi-service
@@ -125,22 +40,14 @@
# The set of packages whose code can be loaded by the system server.
PRODUCT_SYSTEM_SERVER_APPS += \
FusedLocation \
- InputDevices \
- SettingsProvider \
- WallpaperBackup \
+ InputDevices
# The set of packages we want to force 'speed' compilation on.
PRODUCT_DEXPREOPT_SPEED_APPS := \
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
- ro.zygote=zygote32
-PRODUCT_COPY_FILES += \
- system/core/rootdir/init.zygote32.rc:root/init.zygote32.rc
-
PRODUCT_PROPERTY_OVERRIDES += \
ro.carrier=unknown
-$(call inherit-product, $(SRC_TARGET_DIR)/product/runtime_libart.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/base.mk)
$(call inherit-product-if-exists, frameworks/base/data/fonts/fonts.mk)
$(call inherit-product-if-exists, external/roboto-fonts/fonts.mk)