Commit Graph

42079 Commits

Author SHA1 Message Date
Anton Hansson 34bca8808e Split core_minimal in two.
Add media_system and media_vendor makefiles which
together make up core_minimal. Document what belongs
in these files.

Also update mainline_system to inherit media_system.

Bug: 80410283
Test: lunch mainline_arm64; m nothing
Change-Id: I030bb6805bf9ff8971ad2e4ba75fc74ace02124b
Merged-In: I030bb6805bf9ff8971ad2e4ba75fc74ace02124b
2018-07-10 16:49:05 +01:00
Anton Hansson 4788f5b094 Merge "Warn when defining a 32-bit product on a 64-bit device." 2018-07-10 06:29:44 +00:00
Anton Hansson a37da42c12 Merge "Align base_system and core_minimal with internal." 2018-07-10 06:29:13 +00:00
Anton Hansson 65dc646c76 Merge "Make including missing modules an error." 2018-07-10 06:28:41 +00:00
Anton Hansson b02bda26bd Merge "Move packages from base_system to base_vendor." 2018-07-10 06:27:30 +00:00
Anton Hansson 56a3498703 Merge "Remove redundant packages from core_minimal.mk" 2018-07-10 06:27:08 +00:00
Treehugger Robot b676d6d609 Merge "Depend on the ramdisk/root files for BOARD_BUILD_SYSTEM_ROOT_IMAGE" 2018-07-09 23:04:32 +00:00
Treehugger Robot f3c54cfa78 Merge "Add logic to preopt both archs for SDK libs" 2018-07-09 19:49:51 +00:00
Luis Hector Chavez ff48993ca6 Depend on the ramdisk/root files for BOARD_BUILD_SYSTEM_ROOT_IMAGE
When using BOARD_BUILD_SYSTEM_ROOT_IMAGE, there is no direct dependency
on the files that get typically added to the ramdisk.img apart from the
NOTICE.html dependency that some files have. This change explicitly adds
the ramdisk/root files as a dependencies of system.img so that the image
is recreated any time a file in the ramdisk changes. It also creates the
installed-files-root.txt file.

Bug: 62387674
Test: /init.rc is present in system.img's dependencies
Change-Id: I234cb8d8a648f8963610be519de1b70b7efe1fd7
2018-07-09 11:07:12 -07:00
Mathieu Chartier 502892a936 Add logic to preopt both archs for SDK libs
Update stale PRODUCT_SYSTEM_SERVER_JARS list since
com.android.location.provider was renamed to
com.android.location.provider.impl.

Added logic to preopt both archs for SDK libs that are also system
server JARS.

Bug: 110780021
Test: manual and verify speed compiled

(cherry picked from commit 4568c2d908)

Merged-In: I34e728444ffda6db3375b638028d54b6ab623209
Change-Id: If0cb68ba4808aa8716099c5447645f4baac63f30
2018-07-09 11:05:21 -07:00
David Brazdil cf91546456 Merge "Make classes.jar the output of uninstallable Soong Java modules" 2018-07-09 16:24:16 +00:00
Anton Hansson b07453509e Align base_system and core_minimal with internal.
Move a few things up from core_minimal.mk to base_system, and make
a few other editing tweaks in base_system, to align it more closely
with the internal version.

Test: make
Change-Id: I3d0fd22ea1cf94b0d28610cc15e23aca3ddd21c4
Merged-In: Iddffd6982df039f5daa8be345de338ba11c63c10
2018-07-09 15:32:16 +01:00
Anton Hansson 274a209c45 Remove redundant packages from core_minimal.mk
These are all in base_system.mk

Bug: 80410283
Test: make
Change-Id: I8717f2d9de10cde44458029692b308017ee2164b
Merged-In: I8717f2d9de10cde44458029692b308017ee2164b
2018-07-09 14:02:25 +01:00
Anton Hansson 133fcb2550 Warn when defining a 32-bit product on a 64-bit device.
Building a 32-bit-app-only product on a 64-bit capable device is likely
to be unintentional. Print a warning if this is done implicitly,
e.g. via forgetting to define the TARGET_SUPPORTS_64_BIT_APPS variable.

Also change existing references to only treat 'true' as a positive
value, rather than all non-empty ones.

Bug: 110918674
Test: lunched 64-bit-device product that does and doesn't set this var
Change-Id: I021157c94ec3ac1c690547c8992768e58c89c287
2018-07-09 13:17:52 +01:00
Anton Hansson 1ebcbd51ee Make including missing modules an error.
Only enable it for the core build files rolling up to generic.mk
for now, and whitelist a couple of modules that are conditionally
defined.

Bug: 7456955
Bug: 80410283
Test: lunch generic; m
Test: lunch full; m
Change-Id: I5448769433d09eaf970c4231874ced3261a5c66b
2018-07-09 11:00:24 +01:00
Treehugger Robot 88a60636b3 Merge "Add USE_XML_AUDIO_POLICY_CONF to GSI" 2018-07-07 23:27:40 +00:00
Treehugger Robot b000623314 Merge "Enable PRODUCT_COMPATIBLE_PROPERTY for aosp_$arch" 2018-07-07 23:24:48 +00:00
Treehugger Robot 9721ee965e Merge "aidl: -ninja -> --ninja" 2018-07-07 00:19:45 +00:00
Tao Bao e9856a835f Merge "releasetools: Remove three obsolete functions from EdifyGenerator." 2018-07-06 23:22:59 +00:00
Mathieu Chartier a3010c60fe Merge "Allow multiple profiles to be added as part of boot.prof" 2018-07-06 23:03:23 +00:00
Tao Bao a24f711bf3 releasetools: Remove three obsolete functions from EdifyGenerator.
Namely MakeTemporary, Verify and FileCheck. They were once used for
file-based OTA that has been deprecated.

Test: Check that there's no active user, including device-specific
      releasetools script.
Change-Id: Ic73054d73271ad91e860b34b2ba156361c58bc1a
2018-07-06 14:21:26 -07:00
Tao Bao ee36b42beb Merge "releasetools: Add dict-like setter to BuildInfo." 2018-07-06 20:56:53 +00:00
Steven Moreland 385442d399 aidl: -ninja -> --ninja
Bug: 110967839
Test: AIDL's runtests.sh
Change-Id: I785d39846a477c7edb91db477a0dfa046d823cbf
2018-07-06 11:35:09 -07:00
Tao Bao 667c7534ed releasetools: Add dict-like setter to BuildInfo.
BuildInfo already has dict-like getters. This CL adds the matching
setter method to keep it backward compatible with device-specific
scripts that expect a dict.

It also adds items() method that allows iterating the items.

Bug: 111087332
Test: python -m unittest test_ota_from_target_files.BuildInfoTest
Test: Generate an incremental OTA that sets info_dict in device-specific
      releasetools script.
Change-Id: Idd033f98a9186740f9da1a300d4c2bdddd9c1345
2018-07-06 10:15:13 -07:00
Isaac Chen 9af10a31bf Enable PRODUCT_COMPATIBLE_PROPERTY for aosp_$arch
GSI Pi (for newly launched devices) need to enable this to pass
VtsTrebleSysProp.

Bug: 79395858
Test: Built aosp_{arm,arm64,x86,x86_64}. Check system/etc/prop.default
    and found "ro.actionable_compatible_property.enabled=true".
    aosp_x86(_64) could boot to home screen.

Change-Id: I04a4ff7c5feee7671d727c04c9d9657b63ec0912
Merged-In: I04a4ff7c5feee7671d727c04c9d9657b63ec0912
2018-07-06 13:41:08 +08:00
SzuWei Lin fa420b40c5 Add USE_XML_AUDIO_POLICY_CONF to GSI
USE_XML_AUDIO_POLICY_CONF is must for Treble device, so it is
also must on GSI. The settings is missed when creating GSI
aosp_$arch, add it back by this patch.

Bug: 110988359
Bug: 111053290
Test: build aosp_arm64 and build pass
Change-Id: I95f096e58350233fdcc8de115cc1691360070445
2018-07-06 13:22:35 +08:00
Isaac Chen 87399730de Merge "Refactor BoardConfig.mk for emulator products" 2018-07-06 02:08:35 +00:00
Anton Hansson ce0d4aa328 Merge "Add documentation for module resolution." 2018-07-05 16:38:31 +00:00
Anton Hansson c8cd56fcff Merge "Remove non-existing packages from common mks." 2018-07-05 16:21:28 +00:00
Anton Hansson eb3358cfa7 Add documentation for module resolution.
I found this in the CL description of
I5fda1a77f58814097b10b5ad2743ee25adfaecc4, and modified it slightly.

Bug: 111154853
Test: No
Change-Id: I984ac1a9521357af6b54340939dcde36988fc634
2018-07-05 16:31:33 +01:00
Anton Hansson 159acd4e0a Remove non-existing packages from common mks.
These were found by comparing PRODUCT_PACKAGES to $(ALL_MODULES). It
will be made an error for the core makefiles to depend on non-existing
modules soon.

Bug: 7456955
Bug: 80410283
Test: make
Test: diff various products before and after
Change-Id: I5d8af175a48172e63926e68f39daad4508f37ccb
Merged-In: I5d8af175a48172e63926e68f39daad4508f37ccb
2018-07-05 13:39:27 +01:00
Dario Freni 12e0e51116 Merge "Install /system/product apps odex in system-other." 2018-07-05 12:11:50 +00:00
Isaac Chen 55e1d01f92 Refactor BoardConfig.mk for emulator products
The majority of the contents in BoardConfig.mk of emulator products
are the same. The common part is factored out as EmuConfig.mk so it's
easier to maintain these closely related products going forward.

Bug: 80117040
Test: Following products have been built and booted to homescreen:
  $ lunch aosp_x86-userdebug; m -j; emulator
  $ lunch aosp_x86_64-userdebug; m -j; emulator

Change-Id: I5392e0e88865d4908906a67c29939c23af84baf0
Merged-In: I5392e0e88865d4908906a67c29939c23af84baf0
(cherry picked from commit 510b76d8ff)
2018-07-05 18:47:15 +08:00
Shibin George 9dd9e680b9 Allow multiple profiles to be added as part of boot.prof
Extend PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION such that
multiple text-based profiles can be fed to profman to be included
in boot.prof

BUG: 70292748
Test: profman with --dump-only option shows that additional
      text-based profiles are also being read if they have
      been added to PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION

Change-Id: I8a6437a323e43b61612c67038abdde200607c513
2018-07-04 18:05:07 +00:00
Dario Freni aa45068cc7 Install /system/product apps odex in system-other.
This will cause odex/vdex files for apps installed under
/system/product/{priv-,}app to be installed in system-other image, under
/system/product/{priv-,}app as well.

Test: m on marlin-userdebug target, analyzed
installed-files{,-system-other}.txt
Bug: 110072687

Change-Id: I63406f91acc3de4b4f142767e28d45308706c7da
2018-07-04 16:28:18 +01:00
David Brazdil a94e4ca2c6 Make classes.jar the output of uninstallable Soong Java modules
The soong_java_prebuilt.mk file used to assume that if a Soong module
defines a dex jar, it is the output of the module and the module is
installable. This may now not be true if the module uses 'compile_dex'
to define a secondary build rule for a dex jar. If the module is not
installable (LOCAL_UNINSTALLABLE_MODULE=true), do not attempt to preopt
and copy classes.jar to the modules output destination.

Bug: 79409988
Test: on related CL
Change-Id: Ica958ac793e09a0e52125448b44e7cd36e7f35d5
2018-07-03 17:10:54 +01:00
Anton Hansson 8c01b71e2d Merge "Include partition-split selinux_policy modules." 2018-07-03 15:59:21 +00:00
Anton Hansson 52a23cfbb3 Move packages from base_system to base_vendor.
These install on the vendor partition. Clean up the whitelist.

Bug: 80410283
Test: lunch mainline_arm64; m nothing

Change-Id: I45df64e1fa060ea98534351140678589afe2e340
Merged-In: I45df64e1fa060ea98534351140678589afe2e340
2018-07-03 12:42:21 +01:00
Anton Hansson a9966c7c60 Merge "Include root in mainline_system artifact claim." 2018-07-02 16:20:15 +00:00
Anton Hansson 173b5e75db Include root in mainline_system artifact claim.
With PRODUCT_SHIPPING_API_LEVEL >= 28, system-as-root is implied.
Remove redundant whitelist entries.

Bug: 80410283
Test: lunch mainline_arm64; m nothing
Change-Id: Ia18ef42525a3abb33842e939c389530ed299aafe
2018-07-02 15:01:35 +01:00
Anton Hansson ce5eb452be Include partition-split selinux_policy modules.
The selinux_policy module has been split in two, so that the system
artifacts can be included separately. Also remove associated whitelist
entries.

Bug: 80410283
Test: for t in eng userdebug user; do lunch mainline_arm64-${t}; m nothing; done
Change-Id: Id704c907b1ed31ae49697d33f075c013bc3dfc8c
Merged-In: Id704c907b1ed31ae49697d33f075c013bc3dfc8c
2018-07-02 14:36:28 +01:00
David Brazdil 2986542f65 Merge "Fix unzip on sdk_mac build" 2018-07-02 13:10:07 +00:00
David Brazdil c06f48a21d Fix unzip on sdk_mac build
Recent CL added a flag to an unzip command which does not restore
the timestamps of extracted files. This is necessary because the
extracted files are the output of the rule and thus the timestamp
must be newer than the timestamp of the inputs.

Unfortunately, the sdk_mac build has an old version of UnZip (5.52
vs 6.0) which does not support the flag. Replace it with find|touch.

Test: m
Change-Id: Ib1f218af4547a1d604b46e68b6ef50d45cb91ee9
2018-07-02 11:19:53 +01:00
Anton Hansson 7117311323 Merge "Enable /cache mount point" 2018-07-02 10:16:36 +00:00
Bowgo Tsai 631900e6ce Enable /cache mount point
Non-A/B devices using AOSP OTA flow will mount /cache in the
fstab file. Without setting BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE,
/cache will be a symlink to /data/cache which introduces the
failure of `mount_all /vendor/etc/fstab.{ro.hardware}`. This is
because all devices laucned in P need to switch to "system-as-root".

This CL sets board config to create /cache directory in rootfs
(system-as-root GSI image). Note that A/B devices doesn't mount
or use /cache so leaving an empty /cache in rootfs has no harm.

Bug: 78485405
Test: Boot GSI on walleye
Change-Id: Ic260d2917cc64c9497f5f60ea11303e953e80efd
Merged-In: Ic260d2917cc64c9497f5f60ea11303e953e80efd
2018-06-29 14:23:25 +01:00
Anton Hansson 3613193b31 Merge "Fix broken mainline_arm64." 2018-06-29 12:04:26 +00:00
David Brazdil 9b53066762 Merge "Refactor hiddenapi rules to share common code" 2018-06-29 11:33:09 +00:00
Anton Hansson 64e28c8a36 Fix broken mainline_arm64.
- Missed adding core_64_bit include in the aosp version of
  I9beaa6f5f9c683733ed76a6d4e5c70b9376a5bb2.
- new recovery targets appeared over night, whitelist them for now

Test: make
Change-Id: I2235dcc7a3e62e1b0091e43829c519b03c2455a4
Merged-In: I2235dcc7a3e62e1b0091e43829c519b03c2455a4
2018-06-29 12:11:53 +01:00
Anton Hansson 4537a1a361 Merge "Add some experimental mainline targets." 2018-06-29 10:06:25 +00:00
David Brazdil dadcb9ced2 Merge "Adjust arguments of `hiddenapi` tool" 2018-06-29 08:40:55 +00:00