Commit Graph

17246 Commits

Author SHA1 Message Date
Treehugger Robot 007f27aa4a Merge "fix: linktype for recovery modules in ASAN build is native:platform" 2018-09-12 23:54:48 +00:00
Steven Moreland ccc7ce1050 Remove HIDL libs from PRODUCT_BOOT_JARS.
These are left in PRODUCT_PACKAGES so that they can still
be added to the classpaths of legacy targets.

Bug: 77307025
Test: boot Pixel 2

Change-Id: Ib14969291319e03f181b9ea4d40096de095137e7
2018-09-12 09:17:01 -07:00
Brandon Lee 5568c19ae1 aidegen: add extra info to collect in module-info.
- add "dependencies" and "srcs" to collect in module-info.mk.
- add "Srcs" in core/base_rules.mk

Bug: 112523202

Test: make out/target/product/generic_x86_64/module-info.json and
      generate out/target/product/generic_x86_64/module-info.json

Change-Id: I0669377b2e5e6b4ee225f1930bda208eff092dea
2018-09-12 17:39:32 +08:00
Treehugger Robot 1c1e258835 Merge "Fix ASAN + product_services" 2018-09-12 09:26:30 +00:00
Dan Willemsen 60b7296d42 Fix ASAN + product_services
Test: SANITIZE_TARGET=address m nothing
Change-Id: I9724169b4cf474b4c963d33263ba52ebfff6efff
2018-09-11 23:11:07 -07:00
Dan Willemsen 5c43a6925a Always define apps_only
Allows dist-for-goals entries to use always use apps_only, without
having to conditionalize on TARGET_BUILD_APPS, or cause errors on full
platform builds.

Test: EMMA_INSTRUMENT=true m dist
Change-Id: Id484ad2a650b8ad49880469f195080ef7fa8c814
2018-09-11 22:47:45 -07:00
Jiyong Park a52b6e9ba8 fix: linktype for recovery modules in ASAN build is native:platform
When ASAN is on, recovery modules are instaled to
$(OUT_DIR)/target/product/.../data/asan/recovery/root. However, since
this is not under $(TARGET_RECOVERY_OUT), their linktype is incorrectly
determined as native:platform, instead of native:recovery.

To fix this, use get_non_asan_path to have consistent paths when
determining the linktype.

Bug: 115361480
Test: m -j; SANITIZE_TARGET=address m -j

Change-Id: I75edb1fe193d8a1a8099d4f5cf498910ca868d38
2018-09-12 10:05:58 +09:00
Colin Cross 32de5bae88 Merge "Add soong_cc_prebuilt.mk" 2018-09-11 21:51:25 +00:00
Tao Bao aff024ab6e Merge "Expose libminui related variables as vendor default properties." 2018-09-11 21:33:01 +00:00
Tao Bao 92cc5d2ebe Merge "Support building chained VBMeta images." 2018-09-11 18:27:37 +00:00
Treehugger Robot d9a58852bd Merge "Enable AVB signing on GSI" 2018-09-11 06:21:21 +00:00
Treehugger Robot 88207d0d65 Merge "Mark more sdk targets as PHONY" 2018-09-11 01:50:02 +00:00
Dan Willemsen 921f581bef Mark more sdk targets as PHONY
These are used in various dist-for-goal targets even if we're not
currently building the sdks, so they always need to be marked with
.PHONY.

Test: m dist
Change-Id: I1e11ae37c6d0fd6ef8a3e293cf7409773c1bf3ab
2018-09-10 15:14:09 -07:00
Colin Cross 8fb525db71 Add soong_cc_prebuilt.mk
Add soong_cc_prebuilt.mk for Soong modules to use so they can avoid
going through all of prebuilt_internal.mk, dynamic_binary.mk and
binary.mk.  Also moves stripping support into Soong.

Relands I8b37dda2b449b6b5d48d5b983f43de452f494a1e with fixes for
builds with GENERATE_BREAKPAD_SYMBOLS=true

Bug: 113936524
Test: m checkbuild
Change-Id: Id41cd76ccb1b5bb6ac43b41ae3e8f1ce46d7ad7e
2018-09-10 14:46:52 -07:00
Colin Cross 5763fd7645 Make manifest_fixer.py keep targetSdkVersion high with LOCAL_MIN_SDK_VERSION
targetSdkVersion should stay as "current" when LOCAL_MIN_SDK_VERSION
is set but LOCAL_SDK_VERSION is not.

Bug: 112438448
Test: atest CtsTelecomTestCases
Change-Id: I72a2dc1073013863f5f8c44f271eace2a4e37a23
2018-09-10 14:41:37 -07:00
Colin Cross fedcf86936 Fix setting PRIVATE_MIN_SDK_VERSION on fixed_android_manifest
full_android_manifest may or may not be equal to
fixed_android_manifest, set PRIVATE_MIN_SDK_VERSION on
fixed_android_manifest instead.

Test: m checkbuild
Change-Id: I21795317a1334ebed772e781aeefba87392a8478
2018-09-10 14:41:37 -07:00
Colin Cross be2ae162f7 Merge "Revert "Add soong_cc_prebuilt.mk"" 2018-09-10 21:36:38 +00:00
Colin Cross 635733b816 Revert "Add soong_cc_prebuilt.mk"
This reverts commit 1bb943b97c.

Reason for revert: broke mac builds
Bug: 113936524

Change-Id: I5b3d8eb1314eb322a5f9c578623ac89e2ad25706
2018-09-10 21:35:55 +00:00
Colin Cross 830eed81ab Use build/soong/scripts/strip.sh for Make modules
Replace the complicated rules in Make with calls the same strip.sh
script that Soong uses.

Bug: 113936524
Test: m checkbuild
Change-Id: If7beeb8381b5a9bc6e9ba15d443a834eb43fc0d4
2018-09-10 11:05:32 -07:00
Colin Cross 1bb943b97c Add soong_cc_prebuilt.mk
Add soong_cc_prebuilt.mk for Soong modules to use so they can avoid
going through all of prebuilt_internal.mk, dynamic_binary.mk and
binary.mk.  Also moves stripping support into Soong.

Bug: 113936524
Test: m checkbuild
Change-Id: I8b37dda2b449b6b5d48d5b983f43de452f494a1e
2018-09-10 11:04:05 -07:00
Mathew Inwood d72c37eb0a Merge "Support for adding dark greylist members from annotations." 2018-09-10 08:25:46 +00:00
Treehugger Robot 860f9d11a8 Merge "Use the new executable for mkuserimg_mke2fs" 2018-09-08 03:50:32 +00:00
Treehugger Robot 9dcc1d04fb Merge "(make) Add -fsanitize= argument to assembly flags." 2018-09-07 17:23:41 +00:00
Mathew Inwood edb1c84f03 Support for adding dark greylist members from annotations.
Currently, we support maxTargetSdk values of 26 & 28, corresponding to
the P blacklist (existing dark grey list) and upcoming Q blacklist.

For now, just put the two into the same list, as the runtime support to
distinguish between the two does not exist yet.

Bug: 114361293
Test: m
Change-Id: I2f8d206e8dd22afc6c0e98fb5e53b1d78a534125
2018-09-07 16:52:16 +01:00
David Brazdil 5ec2688d71 Merge "Add hidden API public/private list to KATI_RESTAT" 2018-09-07 09:31:37 +00:00
Treehugger Robot adee0d54d0 Merge "ATest: Change module_name from list to single string." 2018-09-07 07:07:13 +00:00
Treehugger Robot 5a3ddef8da Merge "Remove GCC support from Make" 2018-09-07 02:42:27 +00:00
Tao Bao 744c4c7604 Support building chained VBMeta images.
Bug: 112007947
Test: `m dist` with aosp_taimen-userdebug.
Test: Set up a target that uses chained VBMeta images of
      `vbmeta_mainline` and `vbmeta_vendor`. `m dist` and check the
      build log, as well as outputs from
      `avbtool info_image --image vbmeta.img`,
      `avbtool info_image --image vbmeta_mainline.img`,
      `avbtool info_image --image vbmeta_vendor.img`.
Change-Id: Ib1d4e97f583b65245703eae15d211adcd9e83741
2018-09-06 16:55:51 -07:00
Colin Cross c47911812d Use vendor variants of Soong header libraries for vendor modules
Mark Soong header libraries with vendor variants as SPLIT_VENDOR
so that Make will use the vendor variant for vendor modules.

Bug: 114238698
Test: m checkbuild
Change-Id: I912ab9f4e19d73a1213d60b9795ee30ca87ef614
2018-09-06 16:25:02 -07:00
Dan Willemsen f063839de9 Remove GCC support from Make
Test: out/build-aosp_arm64.ninja is the same before/after
Test: build_test on downstream branches
Change-Id: If7f8c12f2f288b1e589689361f9457acae634882
2018-09-06 15:40:00 -07:00
David Brazdil e3fb5f6d09 Add hidden API public/private list to KATI_RESTAT
Change hidden API public/private list generation build rule so that it
checks if outputs have changed and only commit them when changes have
been made. .KATI_RESTAT instructs ninja to restat the outputs and remove
reverse dependencies when rebuilding dependencies is not needed.

Bug: 113278235
Test: m appcompat
Change-Id: Iad23e302b6c30f9a021200acd4bb20e6062de5a2
2018-09-06 18:00:57 +01:00
Tao Bao 5f99923ef1 Expose libminui related variables as vendor default properties.
TARGET_RECOVERY_DEFAULT_ROTATION, TARGET_RECOVERY_OVERSCAN_PERCENT and
TARGET_RECOVERY_PIXEL_FORMAT are vendor-specific properties used by
libminui. So they are needed by both of recovery and charger modes.

We used to pass them to libminui as build-time flags (pre-Q), and
switched them to runtime properties recently (available to recovery
only). Since /sbin/charger lives on system image, the values should be
still passed as runtime properties, but need to be additionally
available under charger mode, and overridable by vendor-init.

This CL writes these variables as vendor default properties (i.e.
/vendor/default.prop if property_overrides_split_enabled is true,
otherwise into /default.prop). Note that writing them as vendor build
properties doesn't work, as init doesn't load /vendor/build.prop under
charger mode.

Bug: 113567255
Test: Build along with other CLs in the topic (for sepolicy and
      libminui changes). Boot into charger mode.
Test: Boot into recovery. Run graphics test.
Change-Id: Iccc4de0fbff508d489fc93b45c2ecfd0fb96053c
2018-09-06 09:25:22 -07:00
Treehugger Robot 71034e3764 Merge "Adding better AVB error message" 2018-09-06 07:45:34 +00:00
Treehugger Robot 076662d015 Merge "Add care_map_generator as a dependency of BUILT_TARGET_FILES_PACKAGE" 2018-09-06 06:45:28 +00:00
Tao Bao f2dd520c1c Merge "Map numeric dpi value to density bucket for recovery resources." 2018-09-06 04:05:27 +00:00
Bowgo Tsai 9d28638cfc Enable AVB signing on GSI
In current GSI builds, AVB signing is not allowed.
We should allow signing GSI image, while building a vbmeta.img with
AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED (flag 2).

When need to disable AVB, use the vbmeta.img above together with the
GSI. When need enable AVB on GSI, include the GSI public key into the
device-specific vbmeta.img. Note that GSI is a chain partition so the
keys used to sign GSI and vbmeta.img are different.

Bug: 112293933
Test: build aosp_arm64-userdebug, checks flag 2 is set in vbmeta.img
      and there is AVB HASHTREE in system.img
      `avbtool info_image --image $OUT/system.img`
      `avbtool info_image --image $OUT/vbmeta.img`

Change-Id: If1eff317621882994e7dcbf37cd35f5bfa16b69a
2018-09-06 09:41:42 +08:00
Bowgo Tsai 99ed1b4fbd Adding better AVB error message
Also removing the requirement of BOARD_BOOTIMAGE_PARTITION_SIZE when
BOARD_AVB_ENABLE is set. Some targets (e.g., emulator) doesn't build
boot.img when AVB is enabled.

Bug: 112293933
Test: build a failure case and checks the error output is expected
Change-Id: I290c707719193ddaedcd9fd0b31de566ad17078c
2018-09-06 09:38:45 +08:00
Tianjie Xu 573322279a Use the new executable for mkuserimg_mke2fs
This is in line with the change of mkuserimg_mke2fs.sh to python binary.

Bug: 112555072
Bug: 63866463
Test: unittests pass
Change-Id: I82c0be1e5bbc685edc15120da73aa43fdc9f2f05
2018-09-05 20:52:47 +00:00
Treehugger Robot 48a575c029 Merge "Remove droiddoc.mk from Make!" 2018-09-05 17:48:43 +00:00
Tianjie Xu 19174ba4dc Add care_map_generator as a dependency of BUILT_TARGET_FILES_PACKAGE
This solves the missing host executable when calling
add_img_to_target_files.py.

Bug: 113877667
Test: make target-files-package for aosp_sailfish
Change-Id: I133064ef86a1f9c5b4ec6d27345fb49c61a729e5
2018-09-04 15:33:58 -07:00
Evgenii Stepanov 9b82b3fa34 (make) Add -fsanitize= argument to assembly flags.
It allows use of sanitizer preprocessor macros (like __has_feature())
in assembly files.

Bug: 112438058
Test: SANITIZE_TARGET=hwaddress
Change-Id: If9da7493d69fa2e03649754c38117e36eb8d222c
2018-09-04 14:38:38 -07:00
Nan Zhang 2132fbc7a8 Remove droiddoc.mk from Make!
Test: m -j
Bug: b/70351683, b/78245848
Change-Id: I3348461d742c45d5dae105d26a5c3e8680a08029
2018-09-04 10:54:11 -07:00
Treehugger Robot 0e0ef050f9 Merge "Provisionally increase PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION to 23." 2018-09-03 14:14:37 +00:00
Dan Willemsen 5771e8cbf1 Switch protoc javastream plugin to using explicit path
The previous PATH=$PATH:out/... logic was incorrect, since the version
in $PATH would override the one out. And now that we're limiting what's
accessible via $PATH, that caused an error.

Instead, ensure that all protoc plugins are specified explicitly with
--plugin, then remove the PATH modification.

Test: cd frameworks/base/cmds/am; mma    (with protoc-gen-javastream in $PATH)
Change-Id: I6690727504f67f84fdc95ed93eabdf3351e5cb0b
2018-08-31 15:59:23 -07:00
Treehugger Robot 3536f6abe4 Merge "Fix misleading comment in version_defaults.mk" 2018-08-31 19:46:25 +00:00
David Brazdil 89e35e5ca9 Merge "Encode use of private API in manifest" 2018-08-31 09:59:39 +00:00
Treehugger Robot b1230b608f Merge "Add super_empty.img to target-files and the update package." 2018-08-31 01:48:10 +00:00
David Anderson 1ef03e2b79 Add super_empty.img to target-files and the update package.
super_empty.img is needed for "fastboot update" to work, as such, it
must be included in the update package. This change adds lpmake
parameters to misc_info.txt for add_img_to_target_files.py, and ensures
that lpmake is packaged with otatools.zip.

The build-superimage-target macro is now split into two functions - one
to generate the device-specific arguments, and another to build the full
command-line for convenience. The former is used to pass arguments
directly to add_img_to_target_files.

Bug: 113524256
Test: make updatepackage builds and includes super_empty.img
      make otatools includes lpmake

Change-Id: I25091c964b036beeea2a8b8f738e2c18937c1eb4
2018-08-30 16:02:23 -07:00
David Brazdil 354cc2dde6 Merge "Adjust build rule for hidden API list generation" 2018-08-30 17:59:02 +00:00
Nan Zhang d74327b7a4 Merge "Follow minor Jetifier usage change" 2018-08-30 15:28:46 +00:00
David Brazdil cf163d38d6 Adjust build rule for hidden API list generation
Associated CL in frameworks/base/ migrates hidden API list generation
logic from Makefile/Bash to Python. Instead of four different build
targets, there is now just one. Adjust definitions.mk accordingly.

Bug: 113278235
Test: m appcompat
Change-Id: I01130729a0f783ff37cb4e942bc9ad179fe24e4e
2018-08-30 13:45:22 +01:00
Tao Bao e1e829efe1 Map numeric dpi value to density bucket for recovery resources.
When choosing the density for recovery resources, the code used to
handle primary density values only, i.e. mdpi, hdpi, xhdpi, 400dpi,
xxhdpi, 560dpi and xxxhdpi. Unlisted values, such as 500dpi, will be
categorized as xhdpi, but with tiny font size selected for recovery.

This CL improves the handling of numeric dpi values. It allows targets
using numeric values in PRODUCT_AAPT_PREF_CONFIG, and maps that to a
proper density bucket. Targets can still specify the density bucket
directly, which will take priority.

Bug: 111559919
Test: `m -j bootimage` with marlin/sailfish/walleye/taimen respectively.
      Check the chosen density bucket for recovery resources
      (xxxhdpi/xxhdpi/xxhdpi/xxxhdpi).
Test: Set PRODUCT_AAPT_PREF_CONFIG to 279/280/281/500/559/560/640. Check
      the computed bucket and the selected recovery font file.
Change-Id: Ia40fcdec5a2752c08172716bcc622a36a2a83cea
2018-08-29 22:08:37 -07:00
yangbill f90b734c0c ATest: Change module_name from list to single string.
ATest's original module_name is designed as a single string.
The different type maybe cause some problem when loading module_name
data. Due to it expected it as a list but actually it will be a single
string after mod-info obj handling this data.

Bug: 113317515
Test: atest aapt2_tests
      atest hello_world_test
      atest BluetoothInstrumentationTests
      atest packages/apps/Bluetooth/tests/unit/Android.mk
      atest RunBluetoothRoboTests
      atest com.android.bluetooth
      atest libcore/luni/src/test/java/libcore/javax/net/ssl/SSLSocketTest.java
        Multiple tests found:
	  0: libjavacore-unit-tests
          1: jsr166-tests
          2: core-ojtests-public
	  ...
      atest SSLSocketTest # Brings up 2 prompts, one for which file then one for which module
      make -j bit
      bit Settings
      bit hello_world_test
      bit BluetoothInstrumentationTests
      bit RunBluetoothRoboTests (Could not find module, but the same situation
          before applying this patch)


Change-Id: I46a14c675eabd7cebd82562954380a9a769e80b5
2018-08-30 05:06:32 +00:00
Treehugger Robot acdaa8fbac Merge "Do not call sort when setting ALL_DEPS.MODULES." 2018-08-29 18:28:41 +00:00
Jeff Gaston db1fb4d53c Follow minor Jetifier usage change
Also specify output level of error to match master

Bug: 110785706
Test: m -j
Change-Id: I634e09f406727d4f169c3a2862a29cd2206414f7
Merged-In: I634e09f406727d4f169c3a2862a29cd2206414f7
2018-08-29 17:33:29 +00:00
Tom Cherry 04552fed3b Merge "Support a first stage ramdisk via TARGET_RAMDISK_OUT" 2018-08-29 17:05:40 +00:00
Anton Hansson 8b2b69e956 Merge "Support app shared libs in /product and /product_services." 2018-08-29 15:15:51 +00:00
Anton Hansson bb397b0a0b Support app shared libs in /product and /product_services.
This whitelist controls which partitions support installing an app's
libraries in the partition's lib folder as opposed to embedding
them in the APK itself. Update it to also include /product and
/product_services.

Also add some clarifying comments.

Bug: 111797707
Test: in internal branch
Change-Id: I756af46cc9b718ca669dacc9d25364edddb295f4
2018-08-29 13:42:09 +01:00
Dario Freni d909caf397 Merge "Include /product_services software in NOTICE." 2018-08-29 09:11:44 +00:00
Treehugger Robot ad951c51f8 Merge "Add extra cflags to hwasan targets." 2018-08-29 00:00:27 +00:00
Treehugger Robot 486653e538 Merge "Disable 32-bit Darwin builds" 2018-08-28 23:41:13 +00:00
Evgenii Stepanov aec1ffc09b Add extra cflags to hwasan targets.
Bug: 112438058
Test: SANITIZE_TARGET=hwaddress
Change-Id: I572cb20369b2e98ab5153f665af60366cb7f7657
2018-08-28 13:52:08 -07:00
Dan Willemsen 1d090fc0ce Disable 32-bit Darwin builds
Mac OSX 10.14 Mojave deprecates 32-bit executables, and the 10.14 SDK
does not successfully link 32-bit files.

Test: Install Xcode 10 beta, `m checkbuild host`
Change-Id: Ifad471fb88ead4bda870f49837d937fb5742f3f6
2018-08-28 13:21:42 -07:00
Tom Cherry d14b895665 Support a first stage ramdisk via TARGET_RAMDISK_OUT
Support a first stage ramdisk which will include the targets placed
into TARGET_RAMDISK_OUT.  This replaces the existing ramdisk on
existing devices.

All system images are now built to be mounted as the root dir.
Devices with a first stage ramdisk will switch root to the system
partition.

BOARD_BUILD_SYSTEM_ROOT_IMAGE remains and is used to specify if the
system partition is going to be directly used as rootfs without the
ramdisk.

Bug: 79173823
Bug: 79758715
Test: hikey boots, sailfish boots
Test: OTA walleye from P to master
Change-Id: Idbb2dccc6340b0235a4bef03e11e420a9ed154b6
2018-08-28 12:42:41 -07:00
Chih-hung Hsieh 385ba5c434 Merge "Filter out unknown arguments with clang-tidy.sh." 2018-08-28 18:18:32 +00:00
Neil Fuller ba125933fd Merge "Add core-simple to the standard boot classpath" 2018-08-28 17:36:55 +00:00
Tao Bao 7c417b7fd4 Merge "Clean up the rules for making vbmeta.img." 2018-08-28 17:21:36 +00:00
Dario Freni cbca1139e8 Include /product_services software in NOTICE.
Bug: 111179267
Test: flashed a module with NOTICE file on a devices and checked the
Legal information webview.

Change-Id: I6e52dee0ea23f05ea73d7cc747c2db1c1525f4b2
2018-08-28 18:06:39 +01:00
Chih-Hung Hsieh be5dd2023e Filter out unknown arguments with clang-tidy.sh.
* Call clang-tidy.sh defined in PATH_TO_CLANG_TIDY_SHELL.
* Add dependency to clang-tidy and clang-tidy.sh.

Bug: 110538415
Test: build with WITH_TIDY=1
Change-Id: I90175ea1489272d8d4fc0f9ba4e5bbfdc7399d82
2018-08-28 09:45:39 -07:00
Anton Hansson 72ba8ee16f Merge "Add substitution for product_services and odm." 2018-08-28 16:06:17 +00:00
Neil Fuller 374c14decf Merge "Remove out-of-date comment / logic" 2018-08-28 16:00:09 +00:00
Treehugger Robot e3994ecedc Merge "Native modules installed to recovery are marked as native:recovery" 2018-08-28 14:48:55 +00:00
Anton Hansson 688abdb981 Add substitution for product_services and odm.
This enables using PRODUCT_COPY_FILES with these partitions, which
otherwise doesn't work because the list of targets to build/install
contains placeholders.

Bug: 80741439
Test: make
Change-Id: I9d49a3bc5212139a96c58cf550680257811371e2
2018-08-28 15:45:01 +01:00
Neil Fuller e85777782a Add core-simple to the standard boot classpath
core-simple.jar is being added to the runtime classpath as
an easy-to-find placeholder and to help identify places that
care about the boot classpath / trigger conversations & issues /
force discussion.

See http://go/simple-module

To start, this jar is being added in various locations that know
about core-libart and/or core-oj.  There will be follow-up changes to
make core-simple.jar more than just another core-* jar.

Bug: 113148576
Test: Treehugger
Test: make checkbuild
Change-Id: I267a91b8728f84cfb1b2e8a5c5d157c88b75581c
2018-08-28 13:19:35 +01:00
Neil Fuller 9fb70170d4 Remove out-of-date comment / logic
The comment refers to a core.jar which hasn't existed in
a while.

Bug: 113148576
Test: Treehugger / build only
Change-Id: I032b0e42bb42dfa495f20dca6cd6b4f577052121
2018-08-28 13:18:25 +01:00
David Brazdil b1082818b3 Encode use of private API in manifest
If a package is declared to build directly against the platform,
this patch will invoke manifest_fixer.py to encode that information
in the manifest. This information is then used by the framework to
correctly configure the runtime process.

Bug: 113315999
Test: m StorageManager; aapt l -a StorageManager.apk|grep usesNonSdkApi
Change-Id: I53c9728d12380a01b35315fc9c58463e9f5a9f48
2018-08-28 12:28:38 +01:00
Anton Hansson d7eaae0f09 Merge "Standardize parition build props." 2018-08-28 07:23:05 +00:00
Jiyong Park 5dc3475d5d Native modules installed to recovery are marked as native:recovery
This fixes a bug that platform module (native:platform) can link to a
recovery module due to the fact that the recovery module is also labeled
as native:platform. Fixing the bug by setting the link type correctly to
native:recovery.

Bug: 113277544
Test: m -j

Change-Id: I88fe0a9d958f2269cf9f9ebc205b2da8c6a761a5
2018-08-28 13:51:52 +09:00
David Brazdil 7c76579e7a Merge "Support hidden API whitelist generated by class2greylist" 2018-08-27 21:41:04 +00:00
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 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 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 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
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
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 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 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