Commit Graph

17716 Commits

Author SHA1 Message Date
Anton Hansson
1f8729e635 Standardize parition build props.
This adds a set of standard build properties that are shared
between the system, vendor, odm, product, product_services and
bootimage partitions. The following properties are added:
    ro.X.build.date
    ro.X.build.date.utc
    ro.X.build.fingerprint
    ro.X.build.id
    ro.X.build.tags
    ro.X.build.type
    ro.X.build.version.incremental
    ro.X.build.version.release
    ro.X.build.version.sdk
    ro.product.X.brand
    ro.product.X.device
    ro.product.X.manufacturer
    ro.product.X.model
    ro.product.X.name

vendor and odm already had all of these, but bootimage, product
and product_services only had a subset and system didn't have
any.

Bug: 78359442
Bug: 111491184
Test: m out/target/product/hikey64/system/build.prop and inspect
Change-Id: Ia346d61aec331ed1b9fea12e6a50f1b79147473d
2018-08-27 22:37:15 +01:00
Søren Gjesse
e75eb3d6cb Merge "Ensure that the R8 minification map (ProGuard dictionary) file exists"
am: 6601397608

Change-Id: I76bd988919799e27cc61a780c120cd401fc8a702
2018-08-27 09:14:26 -07:00
Søren Gjesse
6601397608 Merge "Ensure that the R8 minification map (ProGuard dictionary) file exists" 2018-08-27 16:06:07 +00:00
Søren Gjesse
b22934382f Ensure that the R8 minification map (ProGuard dictionary) file exists
R8 no longer outputs an empty map file when minification
(obfuscation) is turned off.

Test: m -j PRODUCT-aosp_x86-eng
Change-Id: I3bd3f2900225dca05a972f46a3b882041e17ba49
2018-08-27 11:19:35 +02:00
Yifan Hong
49b55bb784 Merge changes from topic "resizable_ota"
am: c247436e2f

Change-Id: I220bee2657024b4fa442d64197da1378a5ebc5e4
2018-08-24 16:09:53 -07:00
Yifan Hong
c247436e2f Merge changes from topic "resizable_ota"
* changes:
  Add _b to super.
  Create build-superimage-target.
2018-08-24 23:03:22 +00:00
Anton Hansson
eb22d0122b Merge "Install /system/product_services apps odex in system-other."
am: 6861c9f98d

Change-Id: Ide953726b610b01516659a34d208add756364419
2018-08-24 11:19:13 -07:00
Tao Bao
ec2405a1d1 Merge "Add the missing rule for including product_services.img into vbmeta.img."
am: 2f2b5bb224

Change-Id: I9501761ebab4a2b92015284a17c047acb16979b3
2018-08-24 11:16:21 -07:00
Anton Hansson
6861c9f98d Merge "Install /system/product_services apps odex in system-other." 2018-08-24 18:03:10 +00:00
Treehugger Robot
2f2b5bb224 Merge "Add the missing rule for including product_services.img into vbmeta.img." 2018-08-24 16:51:23 +00:00
Narayan Kamath
e4f41463fd Provisionally increase PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION to 23.
Bug: 112828438
Test: m
Change-Id: Id66e19cab1248ce7c89a39e3bd21b7e0dae8c4e7
2018-08-24 16:08:41 +01:00
Narayan Kamath
e7d93422d1 Fix misleading comment in version_defaults.mk
Test: m
Bug: 111003817
Change-Id: Iaf185a2cce0c53b0c3dc52bce2d03ea6df0ca681
2018-08-24 15:17:33 +01:00
Anton Hansson
648b0a875e Install /system/product_services apps odex in system-other.
This will cause odex/vdex files for apps installed under
/system/product_services/{priv-,}app to be installed in system-other
instead of next to the APKs themselves.

This change is analogous to I63406f91acc3de4b4f142767e28d45308706c7da,
which was for /system/product apps.

Test: diff installed-files{,-system-other}.txt on pixel with a PS app
Bug: 80741439
Change-Id: I79fac41cb665a649028f1f0e30350d42e8b80598
2018-08-24 14:59:32 +01:00
Bowgo Tsai
57294c3a87 Merge "Correct PRODUCT_SERVICES_COPY_FILES in envsetup.mk"
am: 916f710b96

Change-Id: I39cac0f4b4d7133ea006f633c374d619ec99df9f
2018-08-24 01:50:54 -07:00
Treehugger Robot
916f710b96 Merge "Correct PRODUCT_SERVICES_COPY_FILES in envsetup.mk" 2018-08-24 08:41:00 +00:00
Tao Bao
0da4347827 Clean up the rules for making vbmeta.img.
This CL intends to be a no-op change to functionality. It prepares for
the upcoming changes that support creating chained VBMeta images.

Bug: 112007947
Test: `m dist` with aosp_taimen-userdebug
Change-Id: Iaac45bde7971b056e17a6e7b0c89336ed206916e
2018-08-23 22:21:13 -07:00
Tao Bao
cee6d0456d Add the missing rule for including product_services.img into vbmeta.img.
Bug: 80741439
Test: `m -j vbmetaimage` for a target that uses product_services image
      (i.e. `BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE := ext4`).
      Verify that the generated `vbmeta.img` includes the descriptor for
      `product_services.img`.
Change-Id: Ia2d64523319c3313803acbc63dd56154a0426334
2018-08-23 22:14:28 -07:00
yangbill
494c9442b6 Merge "Atest: add LOCAL_TEST_CONFIG to module_info.json"
am: be4ad83ef3

Change-Id: I83aadbe82ceebda3b52cb8d7e01003a96f722cec
2018-08-23 20:06:09 -07:00
Treehugger Robot
be4ad83ef3 Merge "Atest: add LOCAL_TEST_CONFIG to module_info.json" 2018-08-24 02:49:52 +00:00
yangbill
c9347b3167 Atest: add LOCAL_TEST_CONFIG to module_info.json
Bug: 112335032

Test: 1. Add LOCAL_TEST_CONFIG := ahat-tests.xml in
         art/tools/ahat/Android.mk for ahat-tests
      2. add ahat-tests.xml in local
      3. atest -m hello_world_test
      4. check module_info.json
         local_full_test_config": ["art/tools/ahat/ahat-tests.xml"]

Change-Id: Ice2a0c85979fa6b872c92aea5ff4a340342408ad
2018-08-24 09:29:11 +08:00
Chih-hung Hsieh
ad3cb5a924 Merge "Define CLANG_TIDY_UNKNOWN_CFLAGS in tidy.mk"
am: 8668e9228a

Change-Id: Ifaf2817f1596ecbf22e4cf363dc5098add91c7b1
2018-08-23 15:34:45 -07:00
Chih-hung Hsieh
8668e9228a Merge "Define CLANG_TIDY_UNKNOWN_CFLAGS in tidy.mk" 2018-08-23 22:23:59 +00:00
Yifan Hong
ebba784d0a Add _b to super.
During OTA, update_engine expects both slots in super,
so that it doesn't have to create the missing slot. Thus,
UUIDs of all logical partitions are consistent. Values
are the result of `uuidgen.py {name}_{slot}` for A/B and
`uuidgen.py {name}` for non-A/B).

Test: adb shell lpdump /dev/block/by-name/super
Bug: 110717529
Change-Id: Ibb90d4dbe1a56bf314d4a02d7aa2f2be18d04855
2018-08-23 09:38:00 -07:00
David Brazdil
b67402ecce Support hidden API whitelist generated by class2greylist
Libcore has support for annotating a virtual method which is known
to change its return type in a future release. This annotation is
recognized by the dexer and a future-proof bridge method is created.
This patch integrates changes in class2greylist to support this
annotation into the build system and generation of hidden API lists.

Calling class2greylist on each boot classpath module now produces two
text files instead of one: signatures for greylisting and now also
whitelisting. They are passed on to the hidden API list generating rules
in frameworks/base.

Bug: 112186571
Test: m appcompat, diff public-list.txt whitelist.txt
Change-Id: I9861203e6e07a17d50850892ec13880971457d11
2018-08-23 10:38:03 +01:00
Bowgo Tsai
d241226936 Correct PRODUCT_SERVICES_COPY_FILES in envsetup.mk
Bug: 80741439
Test: build
Change-Id: Ibc37a1c011ad00a4763911ca0842c74f31d8bc0d
2018-08-23 15:54:34 +08:00
Tao Bao
036af25dbf Merge changes Icf44032f,Iec8524d3
am: da9f2d8fd4

Change-Id: I51804402718a64119ca9cbadc370d9903c9759f8
2018-08-22 17:53:44 -07:00
Tao Bao
da9f2d8fd4 Merge changes Icf44032f,Iec8524d3
* changes:
  Add the missing dependency on BOARD_PREBUILT_DTBOIMAGE.
  use BOARD_PREBUILT_DTBOIMAGE in target-files-package
2018-08-22 23:56:55 +00:00
Yifan Hong
251a02f2f0 Create build-superimage-target.
Combine INSTALLED_SUPERIMAGE_TARGET with INSTALLED_SUPERIMAGE_EMPTY_TARGET.

Also fixes inconsistent UUIDs for super_empty.img
because PRIVATE_SUPER_PARTITION_SUFFIX is not defined.

Test: flash and inspect device mapper
Change-Id: I7f00c4e21ebdd21e94fa387c6e2fbea06a6e75b7
2018-08-22 16:43:57 -07:00
Tao Bao
f4866c72ca Add the missing dependency on BOARD_PREBUILT_DTBOIMAGE.
Test: Use a target that defines `BOARD_INCLUDE_RECOVERY_DTBO := true`
      and BOARD_PREBUILT_DTBOIMAGE. Touching a prebuilt dtbo file
      triggers rebuilding of recovery image.
Change-Id: Icf44032fb29542c6836a401c79fb85345ad6cc3c
2018-08-22 14:40:45 -07:00
cfig
286874053c use BOARD_PREBUILT_DTBOIMAGE in target-files-package
it's better to use the original $(BOARD_PREBUILT_DTBOIMAGE) instead
of AVB-padded $(INSTALLED_DTBOIMAGE_TARGET), the latter will be padded
to the size of /dtbo partition

Test: `make target-files-package` target file RECOVERY/recovery_dtbo is
    the original BOARD_PREBUILT_DTBOIMAGE
Test: `make otapackage` build pass and OTA file works fine

Change-Id: Iec8524d3a0544ddca89481dc613f076b36aeed25
2018-08-22 14:34:55 -07:00
David Anderson
c822a6ef50 Merge "Build image for clean super partition."
am: 10f1a69a2b

Change-Id: If5ca20bbdf0f4f1ad347abb5fd1894c2da2fe8a0
2018-08-22 13:40:30 -07:00
Anton Hansson
f679002cf8 Merge "Fix dump-products."
am: 0de30815ff

Change-Id: I1ee9a37c859f0c87d60aeb2303d9be911ecbda52
2018-08-22 11:58:57 -07:00
Anton Hansson
b12b27f3dc Merge "Make FULL_BUILD not set for the dont_bother case."
am: ae6bf49575

Change-Id: Ic0854f1b23670f8dba252b106ccf3c1e2d3f4086
2018-08-22 11:57:51 -07:00
Tao Bao
d2e399000f Merge "Rename INSTALLED_SYSTEMIMAGE to INSTALLED_SYSTEMIMAGE_TARGET."
am: 7a9f3889f0

Change-Id: Iaa08f3106b2d127dc815f7ea1730b252982c5f67
2018-08-22 11:55:42 -07:00
David Anderson
433f822d76 Build image for clean super partition.
This adds a new super_empty.img output to the build when
PRODUCT_USE_LOGICAL_PARTITIONS is true and a super partition size is
set. This will be used by fastboot flashall in fastbootd, since it needs
a record of the partition layout in case the super partition is corrupt
or not yet flashed.

Unlike the full super.img, super_empty.img is not a sparse image. It
contains the minimal data sequence needed to format the super partition.
It also does not contain partition sizes, since flashing is responsible
for choosing the correct partition size.

The full super.img (which contains embedded partition data) is still
available via "make dist".

Bug: 78793464
Test: super_empty.img generated when PRODUCT_USE_LOGICAL_PARTITIONS is
      true.
      mmm system/extras/partition_tools && lpdump super_empty.img works

Change-Id: I34e915a1fead806287dde554d190474785e52500
2018-08-22 11:40:22 -07:00
Anton Hansson
0de30815ff Merge "Fix dump-products." 2018-08-22 16:58:13 +00:00
Anton Hansson
ae6bf49575 Merge "Make FULL_BUILD not set for the dont_bother case." 2018-08-22 16:57:48 +00:00
Chih-Hung Hsieh
4275dcf866 Define CLANG_TIDY_UNKNOWN_CFLAGS in tidy.mk
* Moved from build/soong because the list is used only in make rules.

Bug: 111885396
Test: build with WITH_TIDY=1
Change-Id: I6ca7420e7ed1e342a5b92996724c6659a406d5ae
2018-08-22 09:21:53 -07:00
Anton Hansson
9b8e6cf067 Fix dump-products.
m dump-products didn't print anything useful prior to this change,
however this was visible in the terminal:
15:18:58 Error dumping make vars: Failed to parse make line: "==== build/target/product/aosp_arm.mk ===="

Convert this goal to normal target instead, which apart from making
$(info) actually print something, considers the build successful
when running "m dump-products" too. This makes it easier to run with
e.g. multiproduct_kati.

Test: m dump-products
Change-Id: I944c87cd0fd323687690b0fcc3c37a8f37242cd9
2018-08-22 10:49:18 +01:00
Anton Hansson
85d8ce044f Make FULL_BUILD not set for the dont_bother case.
If dont_bother is set, we're not going to read all the module makefiles,
so the checks gated behind FULL_BUILD will fail.

Test: lunch mainline_system_arm64; m vnod
Change-Id: Ic7842f772edd6b6a6fdc427d018ea1dfe3cbfdbf
2018-08-22 10:49:03 +01:00
Tao Bao
e9d61b02e8 Rename INSTALLED_SYSTEMIMAGE to INSTALLED_SYSTEMIMAGE_TARGET.
This gives a consistent mapping between partition names and the image
targets (i.e. partition => INSTALLED_PARTITIONIMAGE_TARGET). This CL
also creates an alias for the old name so that device-specific Makefiles
that refer to INSTALLED_SYSTEMIMAGE would keep working.

This CL renames image-for-partitions to images-for-partitions, and
returns INSTALLED_SYSTEMIMAGE_TARGET for system. It doesn't change the
actual functionality, but allows substantially simplifying the rule.

Test: `m dist` with aosp_taimen-userdebug
Test: `m dist` with a target that uses super partition
Change-Id: I2954ee5d855c1652a33c640ee615649588d5bc04
2018-08-21 21:57:21 -07:00
Tao Bao
e94e9ead54 Merge "Install recovery etc files to recovery/root/system/etc."
am: c901630789

Change-Id: Iaa969ffce9fc42213ec641774170a1698e820777
2018-08-21 18:13:28 -07:00
Tao Bao
696bb33676 Install recovery etc files to recovery/root/system/etc.
They used to be installed under recovery/root/etc. This CL moves the
files to the new location and creates a symlink from /etc to /system/etc
(done by the rule in system/core/rootdir). This gives similar layout
between normal boot and recovery, and allows installing prebuilt_etc
files with Soong (`recovery_available: true`).

As part of the change, we no longer need the whitelisting rule for
mke2fs.conf.

Bug: 112780007
Test: Build with other changes in the topic (aosp_taimen-userdebug).
      Check the generated files under recovery (/etc being a symlink to
      /system/etc).
Test: Boot into recovery. Verify basic functionalities (`adb shell` and
      `adb sideload`, factory reset).
Test: `build/soong/build_test.bash --dist`
Change-Id: Ibb6dea6f179a339f0c2d0fd8ba05ec0085b79a12
2018-08-21 10:30:49 -07:00
Colin Cross
e50ba8fc87 Merge "Fix reference to cleared global variable"
am: 5d1688bf27

Change-Id: Id1b4a96c99adb7be2ac27c867fe30d924a3663f6
2018-08-20 20:35:40 -07:00
Colin Cross
5d1688bf27 Merge "Fix reference to cleared global variable" 2018-08-21 02:50:50 +00:00
Colin Cross
cceb7ab6d7 Fix reference to cleared global variable
Use PRIVATE_general_tests_list_zip inside the rule.  Also remove the
output files to make it more likely that an incremental build fails
the same was as a clean build.

Bug: 112865316
Test: rm $OUT/general-tests* && m general-tests
Change-Id: Idbca35f9ca71f65ef45ef026df41bd933fb9d37d
2018-08-20 19:26:33 -07:00
Yifan Hong
048aa72eec Merge changes from topic "product-service-remove-hyphen"
am: d35fdd8b3d

Change-Id: I889c3a2aee262edadf10a85cae9ce89393be3cbc
2018-08-20 19:08:52 -07:00
Yifan Hong
2a8cd6776e Reland "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"
am: 35be6ca8f2

Change-Id: I533022aabe3d9e03a38cd7e6069f637369af50d2
2018-08-20 19:07:50 -07:00
Yifan Hong
d35fdd8b3d Merge changes from topic "product-service-remove-hyphen"
* changes:
  s/product-services/product_services/g
  Reland "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"
  Update CleanSpec to remove generated files from IVold.aidl.
2018-08-21 01:07:56 +00:00
Evgenii Stepanov
9afe363ceb Merge "Add "hwaddress" sanitizer."
am: 36ea50d760

Change-Id: I950d85d9d799a1fc1ae490d5f233e50112833a93
2018-08-20 17:10:50 -07:00