Commit graph

17064 commits

Author SHA1 Message Date
Dario Freni
f31bc450d2 Add a way to override LOCAL_PRODUCT_MODULE.
This CL introduces the product variable
PRODUCT_FORCE_PRODUCT_MODULES_TO_SYSTEM_PARTITION, which can contain a
list of module names to be "unmarked" from being LOCAL_PRODUCT_MODULE.

If a module name is included in this variable and if that module is
declared as LOCAL_PRODUCT_MODULE, the setting will be overriden and the
module will be installed in /system. This is useful to control this
behavior on a device-specific level.

Test: m; and checked resulting output.
Bug: 110072687
Change-Id: Iaab663a7ed757c1dd4f16169b0ac3d71650014d2
2018-08-16 18:39:12 +01:00
Treehugger Robot
7911fd3b91 Merge "Make duplicate COPY_HEADERS an error" 2018-08-16 16:33:21 +00:00
Treehugger Robot
c272a99b5c Merge "Add support for /odm partition" 2018-08-16 03:37:36 +00:00
Dan Willemsen
7f9bd56b8a Make duplicate COPY_HEADERS an error
Test: on internal device that has warnings, test with
BUILD_BROKEN_DUP_COPY_HEADERS true and unset.
Test: build_test on downstream branches
Change-Id: I2cebd99b10f13fb75167dc8370ba762f94c41c2a
2018-08-15 15:08:15 -07:00
Dan Willemsen
738368dff5 Default BUILD_BROKEN_ANDROIDMK_EXPORTS to false
See https://android.googlesource.com/platform/build/+/master/Changes.md#export_keyword

Bug: 73959648
Test: build/soong/build_test.bash on downstream branches
Change-Id: I120e0cc381bae71101ec9ca48ee7cbe8a0b9615f
2018-08-15 20:41:56 +00:00
Tao Bao
1fa790cb53 Merge "Remove the hack that uses INSTALLED_RAMDISK_TARGET as INSTALLED_BOOTIMAGE_TARGET." 2018-08-15 17:59:47 +00:00
Ralph Nathan
b8fb0de02f Allow products to define their own hidden api stubs
This enables other verticals/products to expand the list of APIs that
apps can call on those devices.

Bug: 112190341
Test: local test with app
Merged-In: I4dc983273a1beb83d0b81ab026945880a10bbd8c
Change-Id: I4dc983273a1beb83d0b81ab026945880a10bbd8c
(cherry picked from commit f9bf755d0a)
2018-08-15 17:51:55 +01:00
Tao Bao
5d1b46784d Merge "Reland "Generate the list of installed files in recovery image."" 2018-08-15 16:37:12 +00:00
Tao Bao
10fc949873 Reland "Generate the list of installed files in recovery image."
This reverts commit 60a47827cb to reland
the change that generates installed-files-recovery.{txt,json}.

This CL addresses the previous issue by explicitly depending on
INSTALLED_BOOTIMAGE_TARGET or INSTALLED_RECOVERYIMAGE_TARGET. This
avoids the race condition between INSTALLED_{BOOT,RECOVERY}IMAGE_TARGET
and INSTALLED_FILES_FILE_RECOVERY. As a result, it will also give a
complete list of files that are installed to recovery ramdisk image.

Bug: 30414428
Test: `m dist` with aosp_taimen-userdebug. Check the generated files of
      $OUT/installed-files-recovery.{txt,json}.
Change-Id: I8bde0dafda7d8ed9c4113dc82553c4edc7f79548
2018-08-14 23:32:32 -07:00
Treehugger Robot
72150c147e Merge "Remove proguard support" 2018-08-15 01:14:45 +00:00
Tao Bao
b1a2e353f2 Remove the hack that uses INSTALLED_RAMDISK_TARGET as INSTALLED_BOOTIMAGE_TARGET.
This also fixes the emulator build issue with `BOARFD_AVB_ENABLE := true`.

Bug: 78113934
Test: `m dist` with emulator builds.
Test: `m dist` with aosp_taimen-userdebug
Change-Id: I2089e0ab15885b4cfc16d4a7e8be3dd0b60ef46f
2018-08-14 16:17:12 -07:00
Colin Cross
579668b122 Track more static dependencies for notice files
Track transitive static dependencies of native binaries, and
and direct and transitive static dependencies of java and app
modules.

Bug: 112331930
Test: m checkbuild
Change-Id: I0e19971033d6254bfbb6555f0e68fd5e529569c6
2018-08-14 15:39:32 -07:00
Colin Cross
e3a4df80c8 Allow Soong to autogenerate test configs
Move the configuration for autogenerating test configs into Soong,
and add LOCAL_FULL_TEST_CONFIG so that Soong can specify the full
path to a generated test config.

Also add a java junit test config template.

Bug: 70770641
Test: m checkbuild
Test: atest CtsUiRenderingTestCases
Test: atest junit-params-test
Change-Id: I2e64bc33c949ab7b342be518f94a81a186fe9c07
2018-08-14 15:39:32 -07:00
yangbill
976c80ae86 ATest: Host native test config auto-gen support.
Autogenerate HostGTest test config for better user
experience of hostside native tests.

BUG: 80298359

Test: . build/envsetup.sh ; lunch aosp_x86_64-eng ; make -j
      . build/envsetup.sh ; lunch aosp_x86_64-eng ; make -j hello_world_test
      . build/envsetup.sh ; lunch aosp_x86_64-eng ; make -j CtsLiblogTestCases_list

Change-Id: Iee1db17f8957d3c1cd80c9aae1996a72b48413d9
2018-08-14 14:53:14 -07:00
Colin Cross
de684e84fb Merge "Remove TARGET_USES_MKE2FS" 2018-08-14 20:55:51 +00:00
Tao Bao
60a47827cb Revert "Generate the list of installed files in recovery image."
This reverts commit 774f63db4a.

Bug: 112590987
Test: N/A
Change-Id: I7b1c642149d45071ae4c8c9a2cedc40b4e360397
2018-08-14 11:30:58 -07:00
Alex Light
1efb8a7a83 Merge "Revert "Build image for clean super partition."" 2018-08-14 16:34:26 +00:00
Alex Light
989b3ad859 Revert "Build image for clean super partition."
This reverts commit 8a72da6c63.

Reason for revert: breaks a build

Change-Id: I743a67757c560b5bb2b201612d0898276b6804b6
Test: None.
2018-08-14 16:25:52 +00:00
Mathew Inwood
c296e5eeb9 Merge "Pass public API list to class2greylist tool." 2018-08-14 07:22:44 +00:00
Treehugger Robot
6f08de7963 Merge "Build image for clean super partition." 2018-08-14 02:54:02 +00:00
Treehugger Robot
76f68c6b0e Merge "module-info.mk: Output actual module_name." 2018-08-14 02:48:26 +00:00
Treehugger Robot
e52846ae7f Merge "Adding constraints for first shipping API level >= 29" 2018-08-14 02:17:24 +00:00
Tao Bao
cf8853b599 Suppress the warning when copying init.recovery.*.rc.
The file is optional, and we already ignore the cp result.

cp: cannot stat 'out/target/product/taimen/root/init.recovery.*.rc': No such file or directory

Test: `m -j bootimage` with aosp_taimen-userdebug. No more warning.
Change-Id: I815c6e0ff8d432123066cf4a44a8638dc94c96d5
2018-08-13 14:30:04 -07:00
David Anderson
8a72da6c63 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.

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

Change-Id: I9f00b07e5b685a3230803fa1a5a569544d0ab625
2018-08-13 13:13:08 -07:00
Tao Bao
9614010210 Merge "Generate the list of installed files in recovery image." 2018-08-13 18:08:20 +00:00
Colin Cross
a110579e31 Remove TARGET_USES_MKE2FS
Nothing reads TARGET_USES_MKE2FS any more, mke2fs is always used.
Remove the requirement that TARGET_USES_MKE2FS is set, and remove
the places it is set.

Bug: 112241651
Test: m checkbuild
Change-Id: Ibdca062bbe7dcd19ba8f7ee7f8291ce746b74e65
2018-08-13 17:40:26 +00:00
Tao Bao
774f63db4a Generate the list of installed files in recovery image.
We're putting more files into recovery image since adding the support
for using shared libraries in recovery. This CL generates the list of
files to help understand the exact files installed there and their
sizes.

Bug: 112494634
Test: `m dist` with aosp_marlin-userdebug. Check the generated file at
      out/dist/installed-files-recovery.{txt,json}.
Change-Id: I7a9e05da52f95059a7d7adc85c74e888125ee66e
2018-08-13 09:19:17 -07:00
Bowgo Tsai
e4e3018bf6 Adding constraints for first shipping API level >= 29
Do not allow setting BOARD_OTA_FRAMEWORK_VBMETA_VERSION_OVERRIDE when
first shipping API level >= 29.

Bug: 112291283
Test: Checks it can cause build error when the condition is met

Change-Id: I3983bea89625f5ece303432b32bea277aee21a2b
2018-08-14 00:17:50 +08:00
Mathew Inwood
c4d57494b5 Pass public API list to class2greylist tool.
This is necessary to allow it to exclude synthetic bridge methods from the
generated greylist. We need to be able to apply the @UnsupportedAppUsage
annotation to regular (non-bridged) methods, but due to the SDK visibility
rules, the synthetic bridge is part of the SDK.

Don't do this on build that don't include frameworks/base since the
target is not needed and breaks certain builds.

Bug: 110868826
Test: m
Change-Id: I08f06f38d84945f5473618513c641762bc541e24
2018-08-13 16:21:21 +01:00
Jason Monk
7e06b26b5e Merge "Adding overrides support to android_app bps" 2018-08-10 19:11:10 +00:00
Roland Levillain
3f3505ca5f Merge "Revert "Pass public API list to class2greylist tool."" 2018-08-10 18:23:17 +00:00
Roland Levillain
a86b80567a Revert "Pass public API list to class2greylist tool."
This reverts commit 9f46a30e29.

Reason for revert: This change breaks the ART Buildbot (see
https://build.chromium.org/p/client.art/builders/angler-armv7-ndebug/builds/2045/steps/build%20target/logs/stdio).

Bug: 110868826
Change-Id: I78efb71738f191b432b271f723ac83e4f02e6a0d
2018-08-10 17:55:07 +00:00
Jason Monk
87eb791c4f Adding overrides support to android_app bps
Test: build
Change-Id: I7910d042c6e7f8ac9c77e294aca11b01713d0fef
2018-08-10 13:38:57 -04:00
Mathew Inwood
edeab211d2 Merge "Pass public API list to class2greylist tool." 2018-08-10 15:21:35 +00:00
Colin Cross
521b22cf66 Add soong_droiddoc_prebuilt.mk
Soong droiddoc modules were using soong_java_prebuilt.mk, but they
don't need any of the java logic from it, and it includes
base_rules.mk which was not included by droiddoc.mk.  Add
soong_droiddoc_prebuilt.mk that just installs the droiddoc
outputs without including base_rules.mk.

Fixes building docs modules in mm, mma, and m checkbuild.

Bug: 112388925
Test: m docs
Change-Id: I4f7262e2c3b1afbee44c1cc306330885b687a074
2018-08-09 11:24:11 -07:00
Mathew Inwood
9f46a30e29 Pass public API list to class2greylist tool.
This is necessary to allow it to exclude synthetic bridge methods from the
generated greylist. We need to be able to apply the @UnsupportedAppUsage
annotation to regular (non-bridged) methods, but due to the SDK visibility
rules, the synthetic bridge is part of the SDK.

Bug: 110868826
Test: m
Change-Id: Iac23b0d2a9b371771a020b24191634a8b6b9b4b5
2018-08-09 11:14:10 +01:00
Bowgo Tsai
d624fa63d5 Add support for /odm partition
This CL is largely an adaptation of Change-Id
I5d229f6ac729ea6df9ff1f14cee2e28972cd9b4d

tools/vendor_buildinfo.sh is also renamed to tools/device_buildinfo.sh.
The caller then can invoke device_buildinfo.sh "vendor" | "odm" to
generate properties for vendor.img and odm.img, respectively.

It adds the following variables:

- BOARD_AVB_ODM_KEY_PATH
- BOARD_AVB_ODM_ALGORITHM
- BOARD_AVB_ODM_ROLLBACK_INDEX_LOCATION
- BOARD_ODMIMAGE_FILE_SYSTEM_TYPE
- BOARD_ODMIMAGE_EXTFS_INODE_COUNT
- BOARD_ODMIMAGE_EXTFS_RSV_PCT
- BOARD_ODMIMAGE_PARTITION_SIZE
- BOARD_ODMIMAGE_JOURNAL_SIZE
- BOARD_ODMIMAGE_SQUASHFS_BLOCK_SIZE
- BOARD_ODMIMAGE_SQUASHFS_COMPRESSOR
- BOARD_ODMIMAGE_SQUASHFS_COMPRESSOR_OPT
- BOARD_ODMIMAGE_SQUASHFS_DISABLE_4K_ALIGN
- BOARD_PREBUILT_ODMIMAGE
- BOARD_USES_ODMIMAGE
- LOCAL_ODM_MODULE
- PRODUCT_ODM_BASE_FS_PATH
- PRODUCT_ODM_VERITY_PARTITION
- PRODUCT_ODM_PROPERTIES
- TARGET_COPY_OUT_ODM
- TARGET_OUT_ODM
- TARGET_OUT_ODM_*

Bug: 64195575
Test: boot a Taimen with existing images

Test: `make odmimage` with
      - BOARD_AVB_ENABLE := true
      - BOARD_ODMIMAGE_PARTITION_SIZE := 62914560
      - BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
      - TARGET_COPY_OUT_ODM := odm
      - PRODUCT_ODM_PROPERTIES += odm.test.build=success

Test: `make odmimage` with
      - BOARD_ODMIMAGE_PARTITION_RESERVED_SIZE := 10485760
      - BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
      - BOARD_AVB_ENABLE := true
      - TARGET_COPY_OUT_ODM := odm
      - PRODUCT_ODM_PROPERTIES += odm.test.build=success
      - PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true

Change-Id: I4dea7b567ec49a766c7a4683decaf81c7e921d55
2018-08-08 18:59:44 +08:00
Colin Cross
3ebfe7309f Remove proguard support
R8 is always used now.

Bug: 111885749
Test: m checkbuild
Change-Id: I9ae586c6360f2e3050422090b4e08f27ae167758
2018-08-07 11:22:17 -07:00
Morris Lin
a77d5a2dd6 module-info.mk: Output actual module_name.
Add actual module_name information to module-info.json, and atest can
get the actual module name instead of module_name with suffix.

Bug: 77288544

Test: make -j8
      m out/target/product/generic_x86_64/module-info.json

Change-Id: I1e2dfced10db7ef5d31d26dfeb6a6c50a073a519
2018-08-07 22:17:43 +08:00
David Brazdil
0dcaf387cc Merge "Make ART engs owners of core/dex_preopt*.mk"
am: ad57badfdc

Change-Id: Iba09eaf67bebe3cb0c6adb45974900c73f132cd0
2018-08-06 16:16:24 -07:00
David Brazdil
ad57badfdc Merge "Make ART engs owners of core/dex_preopt*.mk" 2018-08-06 22:57:20 +00:00
David Brazdil
d3c9855a2c Merge "hiddenapi: Split stubs into public/system/test classpaths"
am: 09480aa0cf

Change-Id: I09723c7b797e3359c8e0c6c2cd7d7dc19c0323bb
2018-08-06 15:26:57 -07:00
David Brazdil
09480aa0cf Merge "hiddenapi: Split stubs into public/system/test classpaths" 2018-08-06 21:00:04 +00:00
David Brazdil
671ceafbc7 Make ART engs owners of core/dex_preopt*.mk
Adding ngeoffray@, dbrazdil@, mathewi@ and calin@ to OWNERS for
ART-related makefiles.

Test: N/A
Change-Id: I5952db8336992bd1c32c08bbad85317d0d738d19
2018-08-06 20:49:27 +01:00
Isaac Chen
3085fc0c05 Merge "Revert "Revert "Build GSIs (aosp_$arch products) in sparse format"""
am: 451fa13fa6

Change-Id: I655794830ffc687c55f29d700368b9fc7074d23c
2018-08-06 12:10:14 -07:00
nelsonli
66d2f42d40 Merge "Build System: Add variable for copying test config"
am: ef2c15314b

Change-Id: Ib3e1c926d1eb83f35512c76e7a73358bf9495bc6
2018-08-06 12:06:06 -07:00
Treehugger Robot
451fa13fa6 Merge "Revert "Revert "Build GSIs (aosp_$arch products) in sparse format""" 2018-08-06 18:45:48 +00:00
Tao Bao
e0b9cfc6f9 Merge "Write the missing system build props to recovery build prop file."
am: a130af98ed

Change-Id: Ie857cfd750b02d2d36556d495e091b31e55cea73
2018-08-06 10:58:54 -07:00
Treehugger Robot
ef2c15314b Merge "Build System: Add variable for copying test config" 2018-08-06 17:58:12 +00:00
Tao Bao
6eb1a99f36 Write the missing system build props to recovery build prop file.
This was missed by [1], which changed the rules for writing recovery
build prop file.

[1] commit 139c727036

Bug: 110380063
Bug: 112247573
Test: `m bootimage` with aosp_marlin-userdebug. Check the generated
      recovery build prop file against the one before [1].
Change-Id: Ib5829b01a63eee8e8a09486dd68063ba297b7443
2018-08-06 07:36:33 -07:00