Commit graph

17064 commits

Author SHA1 Message Date
Colin Cross
4871e77f0a Move manifest merger config to Soong
Bug: 110848854
Test: m checkbuild
Change-Id: Id9a8b4c02ade275eefc32bf72710430e889cd554
2018-07-10 22:49:15 -07:00
Tao Bao
a81bd16fa4 Merge "Group the generic props together in generate-image-prop-dictionary."
am: 8f48f18f69

Change-Id: I6d3efecbb1c7c2f7722673d71dbcbae0d40e6483
2018-07-10 13:12:57 -07:00
Tao Bao
8f48f18f69 Merge "Group the generic props together in generate-image-prop-dictionary." 2018-07-10 20:02:40 +00:00
Tao Bao
3602eca6d6 Group the generic props together in generate-image-prop-dictionary.
Test: m dist
Change-Id: Iedb62c246e9ae8c88ff7822122d6c182aa925738
2018-07-10 10:54:11 -07:00
Colin Cross
357bed2f65 Merge "Make USE_D8 and USE_R8 read-only"
am: 670dd68705

Change-Id: I04e82b076c3669fa3a3ce73e2012c9c430ce47eb
2018-07-10 09:51:05 -07:00
Treehugger Robot
670dd68705 Merge "Make USE_D8 and USE_R8 read-only" 2018-07-10 16:38:44 +00:00
Dario Freni
8a599e54a2 Merge "Generate a NOTICE xml file for /product partition."
am: bd64cd3fe8

Change-Id: I3a8ab1d4bc4f034c7646d31182bbe01814797b8d
2018-07-10 09:27:36 -07:00
Dario Freni
adc972d7bb Generate a NOTICE xml file for /product partition.
Bug: 111179267
Test: tested on a device with /product partition enabled.
Change-Id: I333f916da214c71e04ebd3fe3bf4dac1e341b098
2018-07-10 11:54:56 +01:00
Anton Hansson
bfc78def01 Merge "Warn when defining a 32-bit product on a 64-bit device."
am: 4788f5b094

Change-Id: I705ee5fb954c156e7e57dda684ce5d45b23ffb97
2018-07-09 23:39:11 -07:00
Anton Hansson
0b14a57aaf Merge "Make including missing modules an error."
am: 65dc646c76

Change-Id: I7cf277de314e06d84cc19c0def52cd035bbae51a
2018-07-09 23:37:57 -07: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
65dc646c76 Merge "Make including missing modules an error." 2018-07-10 06:28:41 +00:00
Luis Hector Chavez
930ceb30b9 Merge "Depend on the ramdisk/root files for BOARD_BUILD_SYSTEM_ROOT_IMAGE"
am: b676d6d609

Change-Id: I0e13f4327ce066a56f856985c07f1e8f4c373d24
2018-07-09 16:13:08 -07: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
Mathieu Chartier
cab7408131 Merge "Add logic to preopt both archs for SDK libs"
am: f3c54cfa78

Change-Id: I1f0336118e71c7da5fa5526425121811c0faace6
2018-07-09 12:58:13 -07: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
efc311b3ac Merge "Make classes.jar the output of uninstallable Soong Java modules"
am: cf91546456

Change-Id: Ic090bb36a6b6f12db2f5416a1c504dc6341eca4c
2018-07-09 09:34:24 -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
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
Steven Moreland
e2c90abd90 Merge "aidl: -ninja -> --ninja"
am: 9721ee965e

Change-Id: I9ac08d786f2055810f2fd8fef33139c9b49154b7
2018-07-06 17:24:51 -07:00
Treehugger Robot
9721ee965e Merge "aidl: -ninja -> --ninja" 2018-07-07 00:19:45 +00:00
Mathieu Chartier
f604a3d1cf Merge "Allow multiple profiles to be added as part of boot.prof"
am: a3010c60fe

Change-Id: I7a0c4770e1cd8fa94971bc3982f2b14cf1a1c553
2018-07-06 16:14:53 -07:00
Mathieu Chartier
a3010c60fe Merge "Allow multiple profiles to be added as part of boot.prof" 2018-07-06 23:03:23 +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
Anton Hansson
e5a5f00b9e Merge "Add documentation for module resolution."
am: ce0d4aa328

Change-Id: I85aa55b9985e91001e56088579a376f46d9d03e5
2018-07-05 09:43:36 -07:00
Anton Hansson
ce0d4aa328 Merge "Add documentation for module resolution." 2018-07-05 16:38:31 +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
Dario Freni
37333682da Merge "Install /system/product apps odex in system-other."
am: 12e0e51116

Change-Id: I557c83122eb3d0bc894e479d645d353630075bb8
2018-07-05 05:30:18 -07: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
David Brazdil
afb4d4cf8c Merge "Fix unzip on sdk_mac build"
am: 2986542f65

Change-Id: I422250d37866c56fed294a288bb1b7a8084372e8
2018-07-02 06:20:16 -07: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
David Brazdil
dfd096870d Merge "Refactor hiddenapi rules to share common code"
am: 9b53066762

Change-Id: I2fc45e8d861aff3a2e4ab5ca6ccf1ba44bb29c6c
2018-06-29 04:40:17 -07:00
David Brazdil
9b53066762 Merge "Refactor hiddenapi rules to share common code" 2018-06-29 11:33:09 +00:00
David Brazdil
d9a9e981ce Merge "Adjust arguments of hiddenapi tool"
am: dadcb9ced2

Change-Id: I952877c22a547aacbe248e2411f5b2628a164133
2018-06-29 01:46:18 -07:00
David Brazdil
dadcb9ced2 Merge "Adjust arguments of hiddenapi tool" 2018-06-29 08:40:55 +00:00
Sundong Ahn
04d7ae2ff5 Merge "Support java sdk libraries"
am: 3dbb886cda

Change-Id: I7e61484fd12db60a7a18a4559b8ae38cb463eeef
2018-06-28 20:31:17 -07:00
Treehugger Robot
3dbb886cda Merge "Support java sdk libraries" 2018-06-29 02:51:43 +00:00
Ari Hausman-Cohen
eb5fccc98c Merge "Add PRODUCT_IOT support to soong."
am: 0d2436e372

Change-Id: I86fc1b9d5b92c713f93bb0efbfd0a6f556d8e9e4
2018-06-28 13:25:09 -07:00
Ari Hausman-Cohen
0d2436e372 Merge "Add PRODUCT_IOT support to soong." 2018-06-28 20:13:54 +00:00
David Brazdil
6b60b2151e Refactor hiddenapi rules to share common code
Java modules built with make and Soong currently invoke `hiddenapi`
with their own rules. Refactor the definitions so that Soong uses
make's definition. This will be useful for a subsequent CL which
needs to invoke `hiddenapi` on all boot dex files simultaneously.

Bug: 79409988
Test: m
Change-Id: I85105e650605d37c3ee8200d7f0d40c297756fcb
2018-06-28 18:14:30 +01:00
David Brazdil
57b1e546a0 Adjust arguments of hiddenapi tool
The `hiddenapi` build tool now expects the first argument to be
a command name. Change its build rule accordingly.

Bug: 79409988
Test: make
Change-Id: I7e34331c487f490d1de6a10c4139768e9774f03e
2018-06-28 18:14:30 +01:00
Ari Hausman-Cohen
271d861ab5 Add PRODUCT_IOT support to soong.
Some code needs to behave differently for Android Things
systems. PRODUCT_IOT tracks Android Things products.
This change exposes this variable into the soong system.

Bug: 110494430
Test: aosp_angler builds
Change-Id: Id9c27e4fe70957f217cfbdc019e8a37532bafac2
2018-06-27 16:52:51 -07:00
Pirama Arumuga Nainar
783c0bd833 Merge "Do not set entry-point for Windows"
am: 645b8db09a

Change-Id: Ia4982902151b800b58a3cfa488ccfddecb6aa662
2018-06-27 13:26:34 -07:00
Treehugger Robot
645b8db09a Merge "Do not set entry-point for Windows" 2018-06-27 20:22:23 +00:00
Pirama Arumuga Nainar
897b03f9ee Merge "Use $(my_prefix)OS instead of HOST_CROSS_OS"
am: 69af20f184

Change-Id: I9006ed1815f52f31a05ec9eb190672fc0d0b3da9
2018-06-27 13:14:30 -07:00
Pirama Arumuga Nainar
71b8769e5c Merge "Use $(my_prefix)OS instead of HOST_CROSS_OS"
am: 1caedd6bdc

Change-Id: Ic7d6fc7d44167e22c196de8275dc27c88e2f714a
2018-06-27 11:41:12 -07:00
Pirama Arumuga Nainar
b448834e96 Do not set entry-point for Windows
Bug: http://b/62424007

This breaks 64-bit Windows executables.  Probably due to the Clang
migration, the entry-point need not be set even for 32-bit executables.

Test: 32-bit and 64-bit aapt2_tests.exe and ziparchive-tests.exe can
start.  (There are some failed tests, though).

Change-Id: I1dea9137c79c5f26b493640cfae0856c1a7ea301
2018-06-27 11:28:33 -07:00
Pirama Arumuga Nainar
060741e77d Use $(my_prefix)OS instead of HOST_CROSS_OS
The latter is not module-specific and affects all host modules.  Also
remove the check for LOCAL_IS_HOST_MODULE and use  $(my_prefix)OS.

This should be future-proof, where may use different configurations of
cross-compilations across Linux, Darwin, Windows.

Test: m native
Change-Id: I0a6255a8b83960ffb543b593d4a50d963be1de88
2018-06-27 10:37:54 -07:00
Pirama Arumuga Nainar
407b6aca28 Use $(my_prefix)OS instead of HOST_CROSS_OS
The latter is not module-specific and prevents santizer configuration
for all host modules.

Test: mma HOST_SANITIZE=address hardware/google/apf
Change-Id: I62a448973c1d6526e4b475f3288996e44c88fbc9
2018-06-27 09:42:33 -07:00
Pirama Arumuga Nainar
a743e206ef Merge "Do not enable sanitizers on Windows"
am: 0d53f4b12b

Change-Id: I96fde141a4d27c231947f65f3917da30a311b420
2018-06-26 17:05:24 -07:00
Pirama Arumuga Nainar
c6a3ddf834 Do not enable sanitizers on Windows
Bug: http://b/69933068

Test: m native-host-cross SANITIZE_HOST=address
Change-Id: I0b99797d218dc34d302906d704d991e59698c351
2018-06-26 14:18:14 -07:00
Nan Zhang
77a8b394ee Copy annotations.zip to out/target/common/obj/PACKAGING/
Test: m out/target/common/obj/PACKAGING/metalava-api-stubs-docs_annotations.zip
Bug: b/78245848
Change-Id: I283e046afb0c6e420d251e9c974835a4ec2fbad4
2018-06-26 13:25:18 -07:00
Pirama Arumuga Nainar
e1b1ea3d23 Merge "Disable lld for windows host modules"
am: 060c99c33e

Change-Id: I8f8ec58270d1f3e5eea596e379062c7fada802d7
2018-06-26 12:53:41 -07:00
Treehugger Robot
060c99c33e Merge "Disable lld for windows host modules" 2018-06-26 19:47:53 +00:00
Colin Cross
ce394e47fc Merge "Use pretty-error in prebuilt_internal.mk"
am: 7ef5d75009

Change-Id: I419950e64cee3baa24aba06a00affccd3d3b0567
2018-06-26 12:38:29 -07:00
Treehugger Robot
7ef5d75009 Merge "Use pretty-error in prebuilt_internal.mk" 2018-06-26 19:28:24 +00:00
Colin Cross
bbbcf1c01e Merge "Disable standalone relocation packer"
am: effbc370dc

Change-Id: Ie72c24415f13f0960413f61d515b793ab780125a
2018-06-26 10:50:11 -07:00
Colin Cross
effbc370dc Merge "Disable standalone relocation packer" 2018-06-26 17:40:57 +00:00
Chih-hung Hsieh
fb21c07d84 Merge "Filter out clang-tidy unknown arguments."
am: 875691cf89

Change-Id: I213cba2633df3d5de2ecc072ca4569f894c64ee8
2018-06-26 10:03:15 -07:00
Chih-hung Hsieh
875691cf89 Merge "Filter out clang-tidy unknown arguments." 2018-06-26 16:51:40 +00:00
Anton Hansson
a85fbdb83d Merge "Include PRODUCT_COPY_FILES in artifact check."
am: 31cd1263d4

Change-Id: I51e0d60a634ddbf9597b9797e7d8208930908bfb
2018-06-26 02:55:12 -07:00
Anton Hansson
31cd1263d4 Merge "Include PRODUCT_COPY_FILES in artifact check." 2018-06-26 09:29:54 +00:00
Doheon Lee
deb5a29934 Merge "Declare install path for product partition binaries"
am: 39deff9e50

Change-Id: Iec7178f6ece015d33afbf28fa19ca92adbc5d2b8
2018-06-25 18:45:59 -07:00
Treehugger Robot
39deff9e50 Merge "Declare install path for product partition binaries" 2018-06-26 01:37:59 +00:00
Colin Cross
84667699f0 Use pretty-error in prebuilt_internal.mk
Test: none
Change-Id: I191515d90b8f0f1fe2ac382b857d47ebe98db0d3
2018-06-26 00:38:17 +00:00
Colin Cross
979f9f9b18 Disable standalone relocation packer
We only support relocation packing inside lld now, remove calls to
the standalone relocation packer.  Any shared library built with
LOCAL_USE_CLANG_LLD := false will no longer have relocation packing.

This will also prevent relocation packing on prebuilt shared
libraries.

Also enables relocation packing on Darwin since lld will work on
Darwin.

Bug: 110715614
Test: m checkbuild
Change-Id: Ib4d4bc86f164d05dd78455c8e7605d4b4f5a2a77
2018-06-26 00:35:46 +00:00
Nelson Li
f6cfd5e360 Merge "Revert "Revert "Build System: Validate AndroidTest.xml Configs"""
am: d3ef2822cc

Change-Id: Id57e37bd69958c9e6cfc178414ef9a5a84842d25
2018-06-25 17:30:59 -07:00
Treehugger Robot
d3ef2822cc Merge "Revert "Revert "Build System: Validate AndroidTest.xml Configs""" 2018-06-26 00:24:50 +00:00
Pirama Arumuga Nainar
b66f9e6f91 Disable lld for windows host modules
Bug: http://b/69933068
Bug: http://b/110800681

lld cannot link Android's Windows modules yet

Test: m native-host-cross
Change-Id: I4945e5f84637443195294e575be8ebbe871d32b5
2018-06-25 16:02:08 -07:00
Colin Cross
e9381754b4 Make USE_D8 and USE_R8 read-only
Confusion between LOCAL_USE_R8 and USE_R8 caused USE_R8 := false
to be set in an Android.mk file, which changed the behavior of
half of the build.  Make USE_R8 and USE_D8 read-only to prevent
it from happening again.

Test: m checkbuild
Bug: 110033958
Change-Id: I09a8fbf3d7f8e4b3f0cb3de538870f925d5d0abe
2018-06-25 14:18:42 -07:00
Chih-Hung Hsieh
b02e447775 Filter out clang-tidy unknown arguments.
Bug: 110538415
Test: build with WITH_TIDY=1
Change-Id: I77cd5dec834215fa22742eae6d96aabecadd11ab
2018-06-25 13:49:36 -07:00
Anton Hansson
c0655eb042 Include PRODUCT_COPY_FILES in artifact check.
The product-installed-files macro is not really thorough - it only
includes packages, but not other files which are included as part of
the build. Extend it to also include PRODUCT_COPY_FILES.

Bug: 80410283
Test: downstream CL
Change-Id: I803c7a59e695c226fa413fa1602ec315ef9886a8
2018-06-25 19:17:42 +01:00
Nelson Li
a2a8b9ba11 Revert "Revert "Build System: Validate AndroidTest.xml Configs""
This reverts commit 054f210fd5.

Reason for revert: Revert it again since BUG of 109736180 already be fixed.
                   Local verified for different build targets of
                   walleye_coverage-userdebug, marlin_coverage-userdebug
                   and make sure they can build pass.
BUG: 109736180
Test: lunch walleye_coverage-userdebug; make adbd_test

BUG: 73082610
Test: cd packages/apps/DocumentsUI/tests/; mma
      Modify AndroidTest.xml to a not well-formed xml; mma
      Then, it should build fail.
      atest -v DocumentsUITests

Change-Id: Iadfcb28a4e3f685a66697de21f57ca5bdb8b7c9e
2018-06-25 06:03:41 +00:00
Doheon Lee
09d9b90625 Declare install path for product partition binaries
Build system will install binaries to product partition path when build
scripts specify module's install path to product partition.
To supports that, TARGET_OUT_PRODUCT_EXECUTABLES for primary and
secondary ABI path should be declared.

Bug: 110745956
Test: Set LOCAL_PRODUCT_MODULE to true in Android.mk or set product to
true in Android.bp file.

Change-Id: Ib8a491364ee30e49bb327163974661915e183608
2018-06-25 03:28:04 +00:00
Yifan Hong
6423900f83 Merge "Add BOARD_SUPER_PARTITION_*"
am: 254bd9a10a

Change-Id: Iada0cb6fe92ecf090a3c37bb3bd73335a2e63a8c
2018-06-22 16:40:15 -07:00
Treehugger Robot
254bd9a10a Merge "Add BOARD_SUPER_PARTITION_*" 2018-06-22 23:33:14 +00:00
Yifan Hong
bb42f7d655 Merge changes from topic "board_partition_reserved_size"
am: 3967e0eb99

Change-Id: I767967f1086ec303c63199d0e38ec02dedf09152
2018-06-22 13:25:18 -07:00
Treehugger Robot
3967e0eb99 Merge changes from topic "board_partition_reserved_size"
* changes:
  build_image.py recognize BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
  build_image.py recognize BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
2018-06-22 20:10:47 +00:00
Yifan Hong
74d07ff8bd Add BOARD_SUPER_PARTITION_*
Test: builds
Test: build with BOARD_SUPER_PARTITION_SIZE and
      BOARD_SUPER_PARTITION_PARTITION_LIST defined

Bug: 79106666

Change-Id: Ifcd50ecab22ef096ff1eb386f8d87e16fffdcf5e
2018-06-22 10:25:54 -07:00
Yifan Hong
749062d379 build_image.py recognize BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
Test: `make vendorimage`

Test: `make vendorimage` with the following:
    - install a large file to vendor image
    fails as expected (because _PARTITION_SIZE is exceeded)

Test: `make vendorimage` with the following:
    - set PRODUCT_USE_LOGICAL_PARTITIONS to true
    - set BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
    fails as expected (BOARD_VENDORIMAGE_PARTITION_SIZE needs
    to be undefined)

Test: `make vendorimage` with the following:
    - install a large file to vendor image
    - set PRODUCT_USE_LOGICAL_PARTIIONS to true
    - add a small BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
    - remove BOARD_VENDORIMAGE_PARTITION_SIZE
    build succeeds.

Bug: 79106666

Change-Id: Ica8fdce64e8f37d91e66e3d49c0c74fadd15a832
2018-06-22 10:25:54 -07:00
Yifan Hong
bbcba1e353 build_image.py recognize BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
- Copy "use_logical_partitions" to *_image_info.txt before sending
  it to build_image.py, so that the script can use this variable.

- build_image.py emits an additional properties file to inform
  the build system about the system image size.

Test: `make systemimage`

Test: `make systemimage` with the following:
    - install a large file to system image
    fails as expected (because _PARTITION_SIZE is exceeded)

Test: `make systemimage` with the following:
    - set PRODUCT_USE_LOGICAL_PARTITIONS to true
    - set BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
    fails as expected (BOARD_SYSTEMIMAGE_PARTITION_SIZE needs
    to be undefined)

Test: `make systemimage` with the following:
    - install a large file to system image
    - set PRODUCT_USE_LOGICAL_PARTIIONS to true
    - add a small BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
    - remove BOARD_SYSTEMIMAGE_PARTITION_SIZE
    build succeeds.

Test: same for systemotherimage

Bug: 79106666

Change-Id: I574062882acd1ecd633ac38c5a8c5351b90a32d8
2018-06-22 10:25:54 -07:00
Colin Cross
c0071808da Merge "Always use OpenJDK9 for building"
am: 12eafb61b0

Change-Id: Iec1529983659c3c966b32c384c337d6db5144766
2018-06-21 14:56:35 -07:00
Colin Cross
12eafb61b0 Merge "Always use OpenJDK9 for building" 2018-06-21 21:27:16 +00:00
Colin Cross
2e51d73d2b Merge "Run ErrorProne in OpenJDK9"
am: 264bc07791

Change-Id: I3ce7202cdcfd3e86fbccb359f56ca59581855a04
2018-06-21 13:57:20 -07:00
Colin Cross
264bc07791 Merge "Run ErrorProne in OpenJDK9" 2018-06-21 20:47:41 +00:00
Tom Cherry
281d343dfb Merge "Reland: Verify init scripts for correctness during build"
am: bdaaab2e39

Change-Id: Ia0cdc6067e357e97ab88b1dd2690358ead4edd18
2018-06-21 13:12:54 -07:00
Treehugger Robot
bdaaab2e39 Merge "Reland: Verify init scripts for correctness during build" 2018-06-21 20:01:50 +00:00
Dan Willemsen
a6e1fadea5 Merge changes from topics "deprecate_export", "add_build_broken"
am: 08015aa03b

Change-Id: I3f22f431acdcd233ddd73a248eb510d55a9a194e
2018-06-21 12:32:14 -07:00
Colin Cross
1588c0ee57 Always use OpenJDK9 for building
Remove support for compiling with javac from OpenJDK8.
We still target 1.8 by default, and OpenJDK8 prebuilts are still
required for the bootclasspath and running robolectric.

Bug: 38418220
Test: m java
Change-Id: I6f178f73b42331494fadcc25a62a5475656b873e
2018-06-21 12:22:37 -07:00
Dan Willemsen
08015aa03b Merge changes from topics "deprecate_export", "add_build_broken"
* changes:
  Mark export/unexport as deprecated
  Add more BUILD_BROKEN_* logic
2018-06-21 19:19:51 +00:00
allenhair
2e627d5e7d Merge "Distribute XML formatted API files as part of the coverage build."
am: f2365aa2c5

Change-Id: I91c661d74e617f17553f27a39cb32496dd5acf4c
2018-06-21 11:52:01 -07:00
allenhair
f2365aa2c5 Merge "Distribute XML formatted API files as part of the coverage build." 2018-06-21 18:33:25 +00:00
Tom Cherry
fc97764dd5 Reland: Verify init scripts for correctness during build
Relanding with change to not run on the darwin build since host init
verifier is not possible there.

Bug: 36970783
Bug: 110477913
Test: builds pass without failures
Test: builds fail with failures in init files used via LOCAL_INIT_RC,
      PRODUCT_COPY_FILES, or TARGET_PREBUILT

Change-Id: Iae93705a9320159ed97328e615eaa3bc150e6442
2018-06-21 11:16:25 -07:00
Dan Willemsen
8b9c3cc54b Mark export/unexport as deprecated
Make it so that `export`/`unexport` are deprecated during product
configuration, but obsolete during Android.mk parsing (and later in the
build, since we can't un-obsolete it).

Remove some ccache / goma exports, those don't need to be exports, since
soong_ui asks about them explicitly. They also only run doing the
initial project configuration, so we don't run anything with that
environment.

Bug: 73959648
Test: m nothing
Test: build_test on all downstream branches
Change-Id: I55a749f46775660439ae57e881a02c914e83de16
2018-06-21 10:12:23 -07:00
Dan Willemsen
94bff7ae22 Add more BUILD_BROKEN_* logic
Make the values tristate, so that we can differentiate set vs not in
scripts that parse the logs.

Also add some placeholders for warnings that I expect to turn into
errors.

Test: Set BUILD_BROKEN_PHONY_TARGETS to "foo"
Change-Id: I3f7e1e0f85dcef84d6461fc40bdd83dc5bf75ff7
2018-06-21 10:12:23 -07:00
TreeHugger Robot
8d49943c20 Merge "apidiff: Depend on timestamp file instead of phony target" into stage-aosp-master 2018-06-21 05:03:16 +00:00
Dan Willemsen
45883d45ec Merge "Deprecate implicit make rules"
am: 6d3acda913

Change-Id: Ic04398750a692d3bbae34b78420d61c6e5ee2356
2018-06-20 21:13:33 -07:00
Treehugger Robot
6d3acda913 Merge "Deprecate implicit make rules" 2018-06-21 03:31:11 +00:00
Dan Willemsen
8f607e31fa apidiff: Depend on timestamp file instead of phony target
Instead of $(LOCAL_MODULE)-docs, use $(call
doc-timestamp-for,$(LOCAL_MODULE)), which is how the *-docs targets are
generated in droiddoc.mk

Test: m offline-sdk-referenceonly-diff
Change-Id: I1e5ee3b819c0e836089fac236e977642067d148a
2018-06-21 02:14:36 +00:00
Colin Cross
e46727a2ba Run ErrorProne in OpenJDK9
Run ErrorProne as a processor in javac from OpenJDK9.

Bug: 69485063
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I2dde597430b47c440df22d248809233a6ade1625
2018-06-20 18:49:50 -07:00
Dan Willemsen
62db0f0945 Deprecate implicit make rules
Test: mm
Test: view docs in gitiles
Change-Id: I1ced4b4218c733b5b5b771d626b20eb6fb22f0df
2018-06-20 16:52:10 -07:00
Colin Cross
375d9618f6 Merge "Merge LOCAL_STATIC_ANDROID_LIBRARIES manifests" 2018-06-20 23:24:52 +00:00
Colin Cross
fd52b25254 Merge "Merge LOCAL_STATIC_ANDROID_LIBRARIES manifests" into stage-aosp-master 2018-06-20 23:24:05 +00:00
Yifan Hong
d76c44b72f Merge "Revert "Verify init scripts for correctness during build""
am: 560890b29f

Change-Id: I5f69d68b9b604ba76a5bf4fa0a9fd453f62ccde6
2018-06-20 16:03:47 -07:00
Yifan Hong
560890b29f Merge "Revert "Verify init scripts for correctness during build"" 2018-06-20 22:56:39 +00:00
Tom Cherry
d15e50022f Revert "Verify init scripts for correctness during build"
This reverts commit 03303f97be.

Reason for revert: Mac build

Change-Id: Iadd76491307534fde81d3d917876c603a0658fb9
2018-06-20 22:45:14 +00:00
Allen Hair
906da1b5df Distribute XML formatted API files as part of the coverage build.
Bug: 110485176
Test: m -j32 droid dist EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true SKIP_BOOT_JARS_CHECK=true tests
Change-Id: I151afde05de832cab06421ffe0829f07e60aceb8
2018-06-20 14:59:57 -07:00
Colin Cross
8e92179552 Merge LOCAL_STATIC_ANDROID_LIBRARIES manifests
Pass LOCAL_STATIC_ANDROID_LIBRARIES to ManifestMerger, and copy
manifests for prebuilts AARs and static android libraries to
$(intermediates.COMMON)/manifest/AndroidManifest.xml.

Bug: 78447299
Test: m java
Change-Id: I02ac29d3445fcd591101ff0ce215e60dd0997224
Merged-In: I02ac29d3445fcd591101ff0ce215e60dd0997224
(cherry picked from commit 1c87e71e84)
2018-06-20 21:06:44 +00:00
Tom Cherry
cd7535c00d Merge "Verify init scripts for correctness during build"
am: 8075746865

Change-Id: I96b7f88a3e568e147c3e3f68709e4c7eb3b525c6
2018-06-20 10:09:01 -07:00
Tom Cherry
8075746865 Merge "Verify init scripts for correctness during build" 2018-06-20 17:06:11 +00:00
Dan Willemsen
4f38769dd0 Merge "Fix UML build"
am: d7c3dd8a0d

Change-Id: I0bc90244c42a00a96c0d0ea208225771d28f4bfa
2018-06-20 10:02:27 -07:00
Jiyong Park
56be041198 Merge "Export SDK library names"
am: dabf1a0c5a

Change-Id: Iad2365d9bb02de297dd06cd2bc36c288a043dfc2
2018-06-20 01:14:56 -07:00
Dan Willemsen
406418d055 Fix UML build
If there aren't any boot dex files, we can't generate a boot image
profile.

Test: lunch uml-eng; m
Test: diff build-aosp_arm.ninja
Change-Id: I09cc1ef37379d9d353958c8aa75731f3d29df759
2018-06-19 23:03:34 -07:00
Jiyong Park
1cf8ee619b Export SDK library names
A java module exports SDK library names that it is using directly or
indirectly via its dependencies. Manifest fixer uses the SDK lib names
to automatically add <uses-library> tags for the apk.

The SDK library names are exported via exported-sdk-libs file in make.
From Soong, they are exported via LOCAL_EXPORT_SDK_LIBRARIES flag.

Bug: 77575606
Test: m -j

Change-Id: I4e7a9bdc5bf845af85168abf55f8063900bacc72
2018-06-20 11:50:06 +09:00
Dan Willemsen
faad18291a Merge changes I101ced40,If9a4bed2
am: 949404a65b

Change-Id: I5f8f5a0b4921f54253d73d0c893a9f326ebded09
2018-06-19 13:42:23 -07:00
Dan Willemsen
949404a65b Merge changes I101ced40,If9a4bed2
* changes:
  Fix PHONY uses found by --warn_real_to_phony
  Fix vndk packaging to stop depending on phony targets
2018-06-19 20:35:57 +00:00
Vishwath Mohan
969a880b2f Merge "Add Scudo support for Make"
am: ab0c76c869

Change-Id: I722875707223675672a59c644f330cb94f2f6576
2018-06-19 13:12:40 -07:00
Colin Cross
4b96d34443 Merge "Revert "Revert "Inject minSdkVersion from the build system"""
am: aac18a02d9

Change-Id: I8ee10eb6a2fde98b34bb7d3fd74df4a88ab25892
2018-06-19 13:06:41 -07:00
Vishwath Mohan
ab0c76c869 Merge "Add Scudo support for Make" 2018-06-19 19:09:56 +00:00
Colin Cross
aac18a02d9 Merge "Revert "Revert "Inject minSdkVersion from the build system""" 2018-06-19 18:14:39 +00:00
Kostya Kortchinsky
2cfa99722b Add Scudo support for Make
Scudo is a hardened usermode allocator that is part of LLVM's compiler-rt
project (home of the Sanitizers). clang allows for -fsanitize=scudo as a
possible command line option to link the shared Scudo library to a binary.

This patch add Scudo as a potential sanitize option. Scudo is not compatible
with ASan and TSan and will be disabled if either is enabled.

Test: aosp compiled with m -j
Test: local experiment with LOCAL_SANITIZE := scudo to ensure that a test
target (mediaserver) could be linked with scudo.

Change-Id: I462843b9d5512fba2c4a3ac1a0c356ca90bce4e5
2018-06-19 09:46:35 -07:00
Dan Willemsen
14e1026372 Fix PHONY uses found by --warn_real_to_phony
Switch a use of `ndk` to the timestamp file that `ndk` depends on
itself.

Mark more module-specific rules as PHONY.

Test: diff build-aosp_arm.ninja (stripping _kati_always_build_)
Test: Turn on --warn_real_to_phony for Kati, see fewer warnings
Change-Id: I101ced4067780e38d18820f5d916596429087e49
2018-06-19 09:26:58 -07:00
Dan Willemsen
649311868c Fix vndk packaging to stop depending on phony targets
These had been depending on the phony target for the library
(liblz4.vendor), not the actual built file and notice file.

Since we hadn't been saving the NOTICE file, and were only assuming the
installed notice file path. save that away for use during packaging.

Test: m vndk; diff out/target/product/generic/android-vndk-aosp_arm.zip
Test: m vndk; diff out/target/product/generic_arm64/android-vndk-aosp_arm64.zip
Change-Id: If9a4bed27030b7bd464cd3987739df94d32a0037
2018-06-19 09:26:58 -07:00
nelsonli
be3c2116cd Merge "Build System: fix autogen_test_config problem"
am: 2a07d562ac

Change-Id: Ic912fce62033b9d7b59c0b92630fc2206d9f3c77
2018-06-18 18:19:13 -07:00
Treehugger Robot
2a07d562ac Merge "Build System: fix autogen_test_config problem" 2018-06-19 01:09:17 +00:00
Sundong Ahn
a059c71348 Support java sdk libraries
Sdk addon has been allowed for libraries built with Android.mk. But some
of the libraries included in the Sdk addon should be built with
java_sdk_library. module-stubs-files function is modified for supporting
java_sdk_library modules.

Bug:77577799
Test: make -j
Change-Id: If289e5aa5b5016901ff9b69da8fc7f7d8138a456
2018-06-19 10:02:25 +09:00
Dan Willemsen
e89f54c0dd Merge "Restrict / from module names"
am: eb0a09acf3

Change-Id: I840b8d8efe35858121e7fcf4eef6e6da23a4b63f
2018-06-18 15:58:44 -07:00
Dan Willemsen
eb0a09acf3 Merge "Restrict / from module names" 2018-06-18 22:44:44 +00:00
Colin Cross
2d61e47f88 Revert "Revert "Inject minSdkVersion from the build system""
This reverts commit 4cd1a75d17.

PackageParser no longer treats minSdkVersion=Q as targetSdkVersion=Q
when targetSdkVersion is set to a number.

Bug: 110167203
Bug: 110353795
Change-Id: Ib44743e4c49e59cd29a57af1bf885090e380b1b6
2018-06-18 20:18:37 +00:00
Colin Cross
8a607610a4 Merge "Revert "Inject minSdkVersion from the build system""
am: 71c0434af2

Change-Id: I2391acfcc34b25865c9428ce90862a82979999fa
2018-06-18 11:52:44 -07:00
Colin Cross
71c0434af2 Merge "Revert "Inject minSdkVersion from the build system"" 2018-06-18 18:35:41 +00:00
Colin Cross
4cd1a75d17 Revert "Inject minSdkVersion from the build system"
This reverts commit fae93680fa.

Bug: 110167203
Bug: 110353795
Change-Id: I14c71aec5a54ef055fc8d2b3560754c81f3d68ba
2018-06-18 18:35:00 +00:00
Dan Willemsen
ac92659e0f Restrict / from module names
Since this is a directory separator, it causes a good deal of
strangeness in the build whenever we include a module name in a path.

It becomes particularly problematic if used together with ".."

Test: build_test on downstream branches
Change-Id: I344eca0db3346cd6ffabff767c34159c85ebc051
2018-06-16 14:15:50 -07:00
Colin Cross
16f1dbc43c Merge LOCAL_STATIC_ANDROID_LIBRARIES manifests
Pass LOCAL_STATIC_ANDROID_LIBRARIES to ManifestMerger, and copy
manifests for prebuilts AARs and static android libraries to
$(intermediates.COMMON)/manifest/AndroidManifest.xml.

Bug: 78447299
Test: m java
Change-Id: I02ac29d3445fcd591101ff0ce215e60dd0997224
Merged-In: I02ac29d3445fcd591101ff0ce215e60dd0997224
Merged-In: Ib20aa4849978283f1da1ce601b28199fc0183e05
2018-06-16 07:55:41 -07:00
Colin Cross
e3ecbd521a Merge "Inject minSdkVersion from the build system"
am: 500fccebf7

Change-Id: I5a9ab05278e8eca255f093f930b8c8913f4ddb91
2018-06-15 22:42:36 -07:00
Colin Cross
500fccebf7 Merge "Inject minSdkVersion from the build system" 2018-06-15 22:53:52 +00:00
Colin Cross
663d8eea04 Merge "Add LOCAL_DONT_MERGE_MANIFESTS"
am: 5d80834b32

Change-Id: I9b4ac446d5aa9ddec6e87dac9b1af5cbe9f3d570
2018-06-15 11:39:41 -07:00
Colin Cross
5d80834b32 Merge "Add LOCAL_DONT_MERGE_MANIFESTS" 2018-06-15 18:23:44 +00:00
Treehugger Robot
c11f2ff4d5 Merge "Move merged AndroidManifest.xml file to manifest subdirectory" 2018-06-15 18:19:12 +00:00
Anton Hansson
a062b90c36 Merge "Add support enforcing all path requirements."
am: 9d2c04e39c

Change-Id: I95c562e020d9995130ff438bdc90f9d5b59128fc
2018-06-15 02:19:02 -07:00
Anton Hansson
9d2c04e39c Merge "Add support enforcing all path requirements." 2018-06-15 09:08:10 +00:00
Colin Cross
a81e5c743d Merge "Dist installed-files*.json"
am: 8b4c72dc1c

Change-Id: I13389075d4b3b87d23a96a194f17163a3ab22b03
2018-06-14 22:11:16 -07:00
nelsonli
cf28ff56ac Build System: fix autogen_test_config problem
If there happen to be any dependencies added to target of $(test_config),
it'll cause problem in the autogen_config. We fix it by using $< in
the autogen command.

BUG: 109736180
Test: lunch walleye_coverage-userdebug; make adbd_test
Change-Id: I22ab100c5a3f9fa058c1edd66f9e5cfdf5b7f855
2018-06-15 02:34:43 +00:00
Colin Cross
23dded0ffd Dist installed-files*.json
installed-files*.json provides hashes of each file, which will allow
a quick comparison of what has changed between builds.

Test: m checkbuild
Change-Id: I87f6c1fa89aaa83c7bcc7cbefb799e9e26d7bfa5
2018-06-14 14:51:20 -07:00
Colin Cross
fae93680fa Inject minSdkVersion from the build system
Add a script that can inject a <uses-sdk minSdkVersion=""> into
AndroidManifest.xml files.  This will help with merging
LOCAL_STATIC_ANDROID_LIBRARIES, because ManifestMerger treats
a missing minSdkVersion as minSdkVersion=1 and throws errors
if libraries use a larger minSdkVersion.  It will also help
with cases where an app has a manifest that specifies an old
minSdkVersion, but the build system is compiling the app in
a way that is not compatibile with old devices, for example
using a newer dex format.

Bug: 110167203
Test: m java
Change-Id: Ia60d462e8af9e93c57d75f423207fa8d221b1347
2018-06-14 14:38:54 -07:00
Colin Cross
1d46e8abb4 Add LOCAL_DONT_MERGE_MANIFESTS
Some modules have manifests that ManifestMerger doesn't like, and
don't need manifest merging.  Skip manifest merger if
LOCAL_DONT_MERGE_MANIFESTS is set.

Bug: 78447299
Test: m checkbuild
Change-Id: If1a58253c62e0194a6acfd79930b9bb10978abe5
2018-06-14 14:38:54 -07:00
Colin Cross
e1b4f302e5 Move merged AndroidManifest.xml file to manifest subdirectory
Some modules generate their own custom AndroidManifest.xml file
to $(intermediates.COMMON)/AndroidManifest.xml file.  Move the
build system's location to
$(intermediates.COMMON)/manifest/AndroidManifest.xml.

This location will also be used later for finding manifest files
from LOCAL_STATIC_ANDROID_LIBRARIES dependencies.

Bug: 78447299
Test: m checkbuild
Change-Id: I345f079bdd191451333b38d882418f2f7150b1e9
Merged-In: I345f079bdd191451333b38d882418f2f7150b1e9
(cherry picked from commit 00a6348e7dfa4fafc308ab92d8e7d06dcfcd01ba)
2018-06-14 14:38:54 -07:00
Colin Cross
c7dee5c9a1 Move merged AndroidManifest.xml file to manifest subdirectory
Some modules generate their own custom AndroidManifest.xml file
to $(intermediates.COMMON)/AndroidManifest.xml file.  Move the
build system's location to
$(intermediates.COMMON)/manifest/AndroidManifest.xml.

This location will also be used later for finding manifest files
from LOCAL_STATIC_ANDROID_LIBRARIES dependencies.

Bug: 78447299
Test: m checkbuild
Change-Id: I345f079bdd191451333b38d882418f2f7150b1e9
Merged-In: I345f079bdd191451333b38d882418f2f7150b1e9
(cherry picked from commit 0bcc120b54)
2018-06-14 21:36:53 +00:00
Tom Cherry
03303f97be Verify init scripts for correctness during build
Bug: 36970783
Test: builds pass without failures
Test: builds fail with failures in init files used via LOCAL_INIT_RC,
      PRODUCT_COPY_FILES, or TARGET_PREBUILT

Change-Id: Ia98793776b365733ca8f0174dc228326a6edf041
2018-06-14 14:21:06 -07:00
Treehugger Robot
6021800c45 Merge "Use implicit output for prebuilt aar manifests" 2018-06-14 19:48:37 +00:00
Anton Hansson
727e5d9f59 Merge "Add a new macro for products to make artifact path requirements."
am: 2b0ea222c1

Change-Id: I3bb0f6a885ef190c0eebc5cf73ac748ff25c4afd
2018-06-14 03:39:45 -07:00
Anton Hansson
427d855728 Add support enforcing all path requirements.
Setting PRODUCT_ENFORCE_ARTIFACT_PATH_REQUIREMENTS to be non-empty will
verify that when an inherited product file makes an path requirement
claim, no files other than the ones it produces are allowed inside its
paths. This allows more rigorous control of what goes where, and
specifically stops accidental inclusion of modules in the wrong places
(which is very easy to do otherwise).

In order to enable iterative improvements to current offenders, support
for a whitelist is also added (via the new
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST property). Verification is
done that this variable corresponds to exactly the list of current
offenders.

Example use:
  PRODUCT_ENFORCE_ARTIFACT_PATH_REQUIREMENTS := true
  PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := system/priv-app/Dialer/Dialer.apk

Bug: 80410283
Test: In a downstream CL specifying the above.
Change-Id: I58047db08bde34da21759cfc55f398892b1c809a
2018-06-14 11:35:05 +01:00
Anton Hansson
2b0ea222c1 Merge "Add a new macro for products to make artifact path requirements." 2018-06-14 10:32:43 +00:00
Anton Hansson
6147e61699 Merge "Extract the product to file mapping logic to a macro."
am: df832133ad

Change-Id: Ic92eb8d9c9631f5eaac57bb4f41c157954f85193
2018-06-14 03:14:24 -07:00
Anton Hansson
df832133ad Merge "Extract the product to file mapping logic to a macro." 2018-06-14 10:10:42 +00:00
Jiyong Park
1d46a3395f Merge "Support shared library in recovery mode"
am: 2371a7d60e

Change-Id: I1e4520c8a2663476bd3924aeca1cf5183240dbf7
2018-06-13 16:38:49 -07:00
Treehugger Robot
2371a7d60e Merge "Support shared library in recovery mode" 2018-06-13 23:14:29 +00:00
Colin Cross
93fbe84314 Use implicit output for prebuilt aar manifests
Remove my_full_libs_manifest_deps by making AndroidManifest.xml an
implicit output of the prebuilt aar unzipping rule.

Bug: 78447299
Test: m checkbuild
Change-Id: I26934d16fd646d45bf57c9527dbb191112cb627b
Merged-In: I26934d16fd646d45bf57c9527dbb191112cb627b
(cherry picked from commit 2b5829e1a6)
2018-06-13 20:41:18 +00:00
Colin Cross
5c1a27f30f Use implicit output for prebuilt aar manifests
Remove my_full_libs_manifest_deps by making AndroidManifest.xml an
implicit output of the prebuilt aar unzipping rule.

Bug: 78447299
Test: m checkbuild
Change-Id: I26934d16fd646d45bf57c9527dbb191112cb627b
Merged-In: I26934d16fd646d45bf57c9527dbb191112cb627b
(cherry picked from commit 2b5829e1a6)
2018-06-13 12:34:51 -07:00
Chih-hung Hsieh
378da0f328 Merge "Third try to enable clang lld as default linker."
am: 504656816d

Change-Id: I5a1cf295ec14a0c21d88225fc8ef83b0424fb8ec
2018-06-13 11:32:14 -07:00
Chih-hung Hsieh
504656816d Merge "Third try to enable clang lld as default linker." 2018-06-13 18:21:03 +00:00
Anton Hansson
837425b0c0 Add a new macro for products to make artifact path requirements.
When a product adds a path requirement, the build system will verify
that all its artifacts are produced inside these paths, and fail
otherwise.

The paths are all relative to PRODUCT_OUT, and the macro also supports
giving a whitelist, for known existing offenders in the hierarchy. The
build will fail if redundant whitelist entries are present.

Example invocation:
_paths := $(TARGET_COPY_OUT_SYSTEM)/
_whitelist := root/init root/init.rc
$(call require-artifacts-in-path $(_paths), $(_whitelist))

Bug: 80410283
Test: Downstream with a new product definition.
Change-Id: I235de681f65254087a42e345af69b2113b682072
2018-06-13 18:48:53 +01:00
Anton Hansson
5efe88df63 Extract the product to file mapping logic to a macro.
This way, the logic can be reused for multiple products during
the same build step. This will be used to track files output
by different subtrees in the product makefile hierarchy.

Bug: 80410283
Test: diff produt_FILES before and after
Change-Id: I6dd1cf586410b9809fdd9d75441128acb07cab08
2018-06-13 18:48:42 +01:00
Jiyong Park
53acaeab0a Support shared library in recovery mode
The dyanmic linker and the linker config script for the recovery mode
(*.recovery variants) are added to PRODUCT_PACKAGES.

Also this removes the mountpoint /system_root from the recovery image as the
recovery image is self-contained and the real system image is mounted at
/mnt/system which is created automatically at runtime.

Bug: 63673171
Test: `adb reboot recovery; adb devices` shows the device ID
Test: Select 'mount /system' in the recovery mode, then `adb shell`.
$ lsof -p `pidof adbd` shows that libm.so, libc.so, etc. are loaded from
the /lib directory.

Change-Id: Ice6c75b0b81bb9be696aaff3e095d87f19278995
2018-06-14 02:03:57 +09:00
Yi Kong
ccb55cee58 Merge "Fix CLANG_EXTERNAL_CFLAGS logic"
am: cfbe8cf3bb

Change-Id: I4d3d28eb7ff1352150593163ff3b4b80d36dbbef
2018-06-12 19:18:59 -07:00
Yi Kong
cfbe8cf3bb Merge "Fix CLANG_EXTERNAL_CFLAGS logic" 2018-06-13 02:10:12 +00:00
Dan Willemsen
0a423b51f2 Merge "Restrict characters in module names"
am: 0f494a025b

Change-Id: Id79395cf3e1af934110eaed3ae1abc084c04aab0
2018-06-12 17:12:50 -07:00
Yi Kong
0047dbed14 Fix CLANG_EXTERNAL_CFLAGS logic
Should be neq instead of eq.

Test: build-full.ninja is now correct
Change-Id: I26c0aa84d9b54a8b19f19124978ac1d49bae7448
2018-06-12 15:49:12 -07:00
Dan Willemsen
bbe6a022a3 Restrict characters in module names
See the Changes.md documentation for more information.

Test: build_test on downstream branches
Change-Id: I1524b1dbfd44a7feac3b9a212f37986f870bd837
2018-06-12 13:48:49 -07:00
Chih-Hung Hsieh
4ad173788e Third try to enable clang lld as default linker.
Note of existing configurations:
  * When lld is used, llvm-strip and llvm-objcopy are also used.
  * darwin host modules do not use lld.
  * lld can be disabled locally with use_clang_lld:false in Android.bp
    or LOCAL_USE_CLANG_LLD:=false in Android.mk.

Bug: 73768157
Test: make checkbuild, boot and run bionic and system/core native tests
Change-Id: I3067ff8021dd6e1598f2447b80aea66a3f7e1677
2018-06-12 10:50:10 -07:00
John Reck
34d386072e Merge "Disable verity on -eng builds"
am: 9c8120aa48

Change-Id: I90e1db97f8bca14d5d1b5bcd8cea2224f4731fc0
2018-06-11 17:38:29 -07:00
Treehugger Robot
9c8120aa48 Merge "Disable verity on -eng builds" 2018-06-11 21:43:34 +00:00
Xin Li
c8e90b5da3 Merge pi-dev-plus-aosp-without-vendor into stage-aosp-master
Bug: 79597307
Change-Id: I06ede5004b16e1ac0bb5c1c6a225c3c307bd26d1
2018-06-08 11:06:45 -07:00
Anton Hansson
3c0f857e65 Merge "Rename the poorly named ALL_PRODUCTS variable." 2018-06-08 14:12:35 +00:00
Chih-Hung Hsieh
221572a7b4 Merge "Use llvm-{objcopy,strip} when clang lld is used." am: 87d8dc4d4e
am: ef534a7888

Change-Id: I25f238309ed4da074ca908d6636fca8cf4f4963f
2018-06-07 21:07:50 -07:00
Treehugger Robot
87d8dc4d4e Merge "Use llvm-{objcopy,strip} when clang lld is used." 2018-06-08 00:42:03 +00:00
Adam Seaton
ec658daa02 Update Platform security string to 08-05 for August release bug: 109889880
am: f20c71f190

Change-Id: I08103150da5c1afe2355a4869fe51ca0dcfc3927
2018-06-07 17:08:09 -07:00
Colin Cross
b71570fc8c Merge "Revert "Revert "Remove desugar support""" am: 50ad8c97ac
am: 9f0e4a430f

Change-Id: I8ef7ec33394af7fd7afab4455f79a932ee774b92
2018-06-07 15:49:03 -07:00
Adam Seaton
f20c71f190 Update Platform security string to 08-05 for August release
bug: 109889880
2018-06-07 14:52:58 -07:00
Treehugger Robot
50ad8c97ac Merge "Revert "Revert "Remove desugar support""" 2018-06-07 20:31:22 +00:00
Yi Kong
e441f4a691 Merge "Add external projects only CFlags option" am: b7306c9ca5
am: cdca782142

Change-Id: Ied808f6e7743a61d2ffe403b84f3ab7e3f833335
2018-06-06 23:57:55 -07:00
Yi Kong
b7306c9ca5 Merge "Add external projects only CFlags option" 2018-06-07 04:51:53 +00:00
Nelson Li
4b7dade5c3 Merge "Revert "Build System: Validate AndroidTest.xml Configs"" am: 79b6e2618a
am: 43b7525dc2

Change-Id: I0e852325f119a19edeeed99c09ccc9ebbebb9230
2018-06-06 21:49:01 -07:00
Treehugger Robot
79b6e2618a Merge "Revert "Build System: Validate AndroidTest.xml Configs"" 2018-06-07 02:50:32 +00:00
Yi Kong
42e18966e2 Add external projects only CFlags option
Apply the flags to Android.mk projects as well.

Test: m checkbuild
Change-Id: Ia5f7f7d9d518820fc825dcf19e8fdd2c434e9013
2018-06-06 16:42:22 -07:00
Colin Cross
8bd764fc7a Merge "Revert "Remove desugar support"" am: bc965aa7a9
am: d175a15e0e

Change-Id: Ie7b75adc17b93d7a5dd6c288dcb3e7adc4b676df
2018-06-06 16:26:07 -07:00
Colin Cross
f44ef3af81 Merge "Remove desugar support" am: 541782f2b4
am: 2d744245a6

Change-Id: I62911d24463cf9c508eee0c5ffca1ebd6b4386f0
2018-06-06 15:25:22 -07:00
Chih-Hung Hsieh
9546d67fe9 Use llvm-{objcopy,strip} when clang lld is used.
* PRIVATE_OBJCOPY is still set to objcopy and used
  when llvm-objcopy cannot replace objcopy.

Bug: 80093681
Test: build/boot with USE_CLANG_LLD=true
Change-Id: I4bd8a53f74864b49e007f0c5f1b0f4b16e121135
2018-06-06 15:09:58 -07:00
Colin Cross
cf010858b6 Revert "Revert "Remove desugar support""
This reverts commit cf7407ed61.

Reason for revert: includes art veridex fix this time

Change-Id: I970b51e6a6c6f377cfe793f029d9674e7ee0ed15
2018-06-06 21:46:25 +00:00
Colin Cross
cf7407ed61 Revert "Remove desugar support"
This reverts commit bfad2c070c.

Reason for revert: broke art veridex build

Change-Id: I0dcc34102ee18b054c2247ae0e2698aca645c667
2018-06-06 21:42:21 +00:00
Nan Zhang
d058de4a77 Change droiddoc.mk to support metalava
Test:  Manually checked-in prebuilt metalava.jar to my local src tree and
      compare the results between old and new docs/stubs generation.
Bug: b/78245848

Change-Id: Ied81cba53c483d4cfb5720e6325b299a1b32104e
Merged-In: I44b4b8ba248ad4deafbb6462e6f7398f15bd2845
2018-06-06 13:32:54 -07:00
Nelson Li
054f210fd5 Revert "Build System: Validate AndroidTest.xml Configs"
This reverts commit 479da2f3bb.

Reason for revert: <revert for b/109736180 #8>

Bug: 109736180
Test: lunch walleye_coverage-userdebug; make adbd_test
Change-Id: I090893e20a2dab0651551361ebf65c26b95a25f2
2018-06-06 18:29:05 +00:00
Colin Cross
bfad2c070c Remove desugar support
Desugaring is always handled by d8 now.

Test: m checkbuild
Change-Id: I8af88522fb1280854ebb4e4957faf70ab59a74f4
2018-06-06 10:06:07 -07:00
John Reck
0588b4337a Disable verity on -eng builds
Verity is counter to the goal of -eng builds, so disable it on -eng
builds.

Change-Id: I9f9851d14948be04834394dc5e5445a36aafa945
Merged-In: I9f9851d14948be04834394dc5e5445a36aafa945
Fixes: 64315394
Test: verified -eng doesn't have verity enabled, but -userdebug does
2018-06-05 15:06:25 -07:00
Colin Cross
a72f7db2eb Merge "Revert "Work around incorrect R8 proguard compatibility"" am: 43aea42876
am: 9200928f8c

Change-Id: I85598e4a79220ba5b13350d4a42c3e7ce89be63e
2018-06-05 14:02:33 -07:00
Colin Cross
43aea42876 Merge "Revert "Work around incorrect R8 proguard compatibility"" 2018-06-05 19:41:49 +00:00
Treehugger Robot
50a3560485 Merge "Build VNDK snapshot for products aosp_[arm|x86]" 2018-06-05 04:18:51 +00:00
Dan Willemsen
7b3a44440d Merge "Darwin: Use nm/otool from Soong instead of PATH" am: 506e00fa6a
am: 8f40cbe2fc

Change-Id: I28c86e1050cacca8c2fa4a5db6392e67b7e0753f
2018-06-04 18:36:36 -07:00
Adam Seaton
ed429ca545 Merge "DO NOT MERGE Update Platform Security String to 2018-07-05 for pi-dev bug: 79883349" into pi-dev
am: 889775dff3

Change-Id: Id410f49480abce946ce82855121539ff201bce09
2018-06-04 12:51:27 -07:00
Yifan Hong
fa41c9a498 Merge "generate-image-prop-dictionary only generates relevant variables" am: 89b40fa645
am: 0b5ec44693

Change-Id: I0537e5afa1d889cc8946f47d47f76015c26eed3a
2018-06-04 10:45:44 -07:00
Colin Cross
c8148cc001 Revert "Work around incorrect R8 proguard compatibility"
This reverts commit cf5180c198.

Reason for revert: r8 behaves more like proguard now.

Bug: 80081393
Test: m checkbuild
Test: examine attributes on com.android.stk.BootCompletedReceiver
      in out/target/common/obj/APPS/Stk_intermediates/classes.dex

Change-Id: I6cff1d7cb6b71023399db6492455f69328dd73f3
2018-06-04 17:25:56 +00:00
Dan Willemsen
e6979a945d Merge "Use hermetic strip for atree" am: 6fac550603
am: 4091033de6

Change-Id: I8b8c6d8263268dd1f8db293a02cd5d9698aabf7e
2018-06-04 10:02:06 -07:00
Dan Willemsen
0c31654ae4 Darwin: Use nm/otool from Soong instead of PATH
Soong now exposes the proper paths to NM & OTOOL so that we don't need
to assume that they're in $PATH.

Test: `m PRODUCT-sdk-sdk` on Mac
Change-Id: If0d963832154841d00ced7a6cfa9de5a014af084
2018-06-03 16:20:08 -07:00
Treehugger Robot
89b40fa645 Merge "generate-image-prop-dictionary only generates relevant variables" 2018-06-02 00:33:28 +00:00
Treehugger Robot
6fac550603 Merge "Use hermetic strip for atree" 2018-06-01 23:58:15 +00:00
Chih-hung Hsieh
2ad673f781 Merge "Skip copying files from LINKED to PACKED directories." am: 7ac56836a1
am: fb47aa4872

Change-Id: I2307bc9ea5ad0b24c1ac9d9bdda9e4f966c47bc0
2018-06-01 16:33:05 -07:00
Chih-hung Hsieh
7ac56836a1 Merge "Skip copying files from LINKED to PACKED directories." 2018-06-01 23:15:16 +00:00
Adam Seaton
9b8b5854e8 DO NOT MERGE Update Platform Security String to 2018-07-05 for pi-dev
bug: 79883349
2018-06-01 23:03:44 +00:00
Dan Willemsen
b90a1f2e2c Merge "Mark more common variables and paths as readonly" am: 297db2d011
am: df09ace764

Change-Id: I30e0ef6ee6b9b207659a8d474de9ce96fe637d23
2018-06-01 15:21:56 -07:00
Treehugger Robot
297db2d011 Merge "Mark more common variables and paths as readonly" 2018-06-01 21:58:14 +00:00
Chih-Hung Hsieh
4c0424908f Merge "Call lld with --pack-dyn-relocs=none if my_pack_module_relocations is false" am: 2a801b3cd7
am: 41685cfe24

Change-Id: I05999fbfbbbacb0530570f955fa83f1b7ae6439d
2018-06-01 14:15:47 -07:00
Chih-Hung Hsieh
9020c2323b Skip copying files from LINKED to PACKED directories.
When stand-alone relocation_packer is not used,
use the LINKED file and skip the copy to PACKED directory.

Test: make checkbuild
Change-Id: Ia1e5d1cd22ca6dfb68e406ffdcbb367b4d07d437
2018-06-01 14:11:15 -07:00
Treehugger Robot
2a801b3cd7 Merge "Call lld with --pack-dyn-relocs=none if my_pack_module_relocations is false" 2018-06-01 20:58:25 +00:00
Dan Willemsen
6f57b2889d Use hermetic strip for atree
Use the newly exposed HOST_STRIP from Soong to strip host tools during
atree.

This appears to produce slightly different host tools, but they're still
stripped.

Test: m PRODUCT-sdk_arm64-sdk dist sdk_repo
Change-Id: Id2863347882eb63d2a4cce45f0cd8de510ed4543
2018-06-01 12:37:01 -07:00
Weilun Du
f7b84c7b84 Merge "Do not copy userdata.img into sdk_addon/system-image.zip" into pi-dev
am: fcf60d8f8a

Change-Id: Icd427c34e1f315dadbedee2c73b26e8f4723305c
2018-05-31 23:22:09 -07:00
TreeHugger Robot
fcf60d8f8a Merge "Do not copy userdata.img into sdk_addon/system-image.zip" into pi-dev 2018-06-01 05:01:50 +00:00
Yifan Hong
a2a190dd9d Merge "androidboot.lrap => logical_partitions" am: a873417a23
am: 5fae822fa3

Change-Id: I8b2b430f70afc3385603a888cd0326a3b3928843
2018-05-31 18:12:53 -07:00
TreeHugger Robot
2b7b307a4b Merge "Install product shared libraries in /product/lib" into pi-dev 2018-06-01 01:00:28 +00:00
Chih-Hung Hsieh
289e8d6011 Call lld with --pack-dyn-relocs=none if my_pack_module_relocations is false
* Factor out the logic that sets up my_pack_module_relocations
  from dynamic_binary.mk to pack_dyn_relocs_setup.mk.
* Use stand-alone relocation_packer only if my_pack_module_relocations
  is true and my_use_clang_lld is false.

Bug: 80093890
Bug: 73768157
Test: build and boot with USE_CLANG_LLD=true
Change-Id: I7c4b5fcdce0754c57cff4acf86185cac65a26c40
2018-05-31 16:18:22 -07:00
Yifan Hong
dfaa860073 androidboot.lrap => logical_partitions
Test: boots with prototype
Bug: 79885414
Change-Id: I63c4d7a4b69d84809700cc71eee8ece33c365e9e
2018-05-31 13:08:11 -07:00
David Brazdil
68ca409c5c Merge "Add new file name constant for public DEX API file" into pi-dev 2018-05-31 12:20:57 +00:00
Anton Hansson
061cbcfdae Rename the poorly named ALL_PRODUCTS variable.
There was PRODUCTS, ALL_PRODUCTS and really_all_products, and
ALL_PRODUCTS was in fact not all products. Rename it to what
it really is: parent makefiles, i.e. product makefiles that include
other product makefiles.

Also rename the really_all_products var.

Bug: 80410283
Test: lunch aosp_arm64; m product-graph
Change-Id: I87aec49966e50c364ca2baf5de10fe30f9292a53
2018-05-31 11:03:53 +01:00
Jae Shin
f20605c584 Build VNDK snapshot for products aosp_[arm|x86]
P VNDK snapshot needs to include VNDK libs built for 64-bit binder
products, aosp_arm and aosp_x86. This change modifies the following:

1) Revise VNDK snapshot zip file name to use $TARGET_PRODUCT instead of
$TARGET_ARCH in order to distinguish aosp_arm and aosp_arm_ab.
2) Place 32-bit binder libs under a subdirectory 'binder32' such that
the snapshots can be uploaded to prebuilts/vndk/v{VER} with the following
directory structure:

  prebuilts/vndk/v{VER}/
    arm/
      arch-arm-armv7-a-neon/
        shared/
          ...
      binder32/
        arch-arm-armv7-a-neon/
          shared/
            ...
      ...
    arm64/
      arch-arm-armv7-a-neon/
      arch-arm64-armv8-a/
      ...
    ...

The 32-bit binder libs will be placed in a separate subdirectory so that
they can be easily phased out in future VNDK snapshots.

Bug: 80372796
Test: make -j vndk dist
Merged-In: I7cde2e706e0c2891bab762b9057672f57e798873
Change-Id: I7cde2e706e0c2891bab762b9057672f57e798873
(cherry picked from commit 3ba44eb916)
2018-05-31 16:51:27 +09:00
Inseob Kim
8b48f56e87 Install product shared libraries in /product/lib
This is to support /product/lib. Shared libraries with
LOCAL_PRODUCT_MODULE := true or product_specific: true has been
installed in /system/lib. They are now installed in /product/lib.

Bug: 73095206
Test: build succeeded && product libraries are installed under
/product/lib

Change-Id: Ic49a0a3e1e47666c4d15189ab6fded8007ecb498
Merged-In: Ic49a0a3e1e47666c4d15189ab6fded8007ecb498
(cherry picked from commit 47c13524aa)
2018-05-31 09:57:22 +09:00
Yifan Hong
760d3c0180 generate-image-prop-dictionary only generates relevant variables
Test: m dist
Bug: 79106666
Change-Id: I90555c95a4742fb94b5030e9b3219d783353c603
2018-05-30 14:47:01 -07:00
Andrew Hsieh
93890e73b7 Merge "Build VNDK snapshot for products aosp_[arm|x86]" into pi-dev
am: c99e68684c

Change-Id: Ifca399f035a1cf3b71e406078c2cf8c497c90407
2018-05-30 14:27:20 -07:00
David Brazdil
12fe6f01e3 Add new file name constant for public DEX API file
We need to generate a new file from Doclava. Create a global variable
for the file name.

Bug: 64382372
Bug: 80461842
Test: make out/target/common/obj/PACKAGING/hiddenapi-blacklist.txt
Merged-In: Id850327c29bc626d3d721935edcb2b7afd2fd283
Change-Id: Icd0de1361879b896fd9d3881e405def98c012f0c
2018-05-30 14:13:14 +01:00
Jae Shin
3ba44eb916 Build VNDK snapshot for products aosp_[arm|x86]
P VNDK snapshot needs to include VNDK libs built for 64-bit binder
products, aosp_arm and aosp_x86. This change modifies the following:

1) Revise VNDK snapshot zip file name to use $TARGET_PRODUCT instead of
$TARGET_ARCH in order to distinguish aosp_arm and aosp_arm_ab.
2) Place 32-bit binder libs under a subdirectory 'binder32' such that
the snapshots can be uploaded to prebuilts/vndk/v{VER} with the following
directory structure:

  prebuilts/vndk/v{VER}/
    arm/
      arch-arm-armv7-a-neon/
        shared/
          ...
      binder32/
        arch-arm-armv7-a-neon/
          shared/
            ...
      ...
    arm64/
      arch-arm-armv7-a-neon/
      arch-arm64-armv8-a/
      ...
    ...

The 32-bit binder libs will be placed in a separate subdirectory so that
they can be easily phased out in future VNDK snapshots.

Bug: 80372796
Test: make -j vndk dist
Change-Id: I7cde2e706e0c2891bab762b9057672f57e798873
2018-05-30 21:23:57 +09:00
Tao Bao
48bbb1ba67 Expose PLATFORM_SECURITY_PATCH_TIMESTAMP.
We have use case that uses the timestamp for PLATFORM_SECURITY_PATCH in
device specific Makefile, but need to handle the platform-dependent
`date` command. This CL computes and exposes
PLATFORM_SECURITY_PATCH_TIMESTAMP from the core build system.

Bug: 80311893
Test: Use PLATFORM_SECURITY_PATCH_TIMESTAMP in device-specific folder,
      on both of Linux and macOS. Check the value.
Change-Id: I27a88dcebde7a1c204491f5f5c45c5160398dbb6
Merged-In: I27a88dcebde7a1c204491f5f5c45c5160398dbb6
(cherry picked from commit 717d9d3ae2)
2018-05-29 15:34:08 -07:00
Weilun Du
d61ff0f5e2 Do not copy userdata.img into sdk_addon/system-image.zip
userdata.img becomes 4GB in P and it doesn't work well with patcher in
android studio. We decided to remove userdata.img in system image zip
and generate userdata.img by emulator.
This cl does not impact real devices.

BUG: 79925096

Change-Id: I5406b28291f140e2ebdbcd7c6f684f60ac59b62b
Signed-off-by: Weilun Du <wdu@google.com>
2018-05-29 22:24:29 +00:00
Tao Bao
d4328a80b8 Merge "Expose PLATFORM_SECURITY_PATCH_TIMESTAMP." am: d48f2a1408
am: cec4c5dfc5

Change-Id: Ib40d8c0fa4a289cf2029b477b9a9469550bd5ae7
2018-05-29 14:20:57 -07:00
Tao Bao
d48f2a1408 Merge "Expose PLATFORM_SECURITY_PATCH_TIMESTAMP." 2018-05-29 21:07:18 +00:00
Yifan Hong
f56d5a9d92 Merge "Remove unnecessary branch for BOARD_HAS_EXT4_RESERVED_BLOCKS." am: f346fd4485
am: 63df69d1d5

Change-Id: I37d5fa8a283b214f1a79e329db96c8a7fe9e6195
2018-05-29 13:18:42 -07:00
Yifan Hong
b64f5b5145 Merge "Add ro.boot.logical_partitions" am: 78f3983e98
am: 6d3dbb927e

Change-Id: I9bd5760ffbb5e9dd76ae6376a23057504719046f
2018-05-29 13:07:30 -07:00
Treehugger Robot
f346fd4485 Merge "Remove unnecessary branch for BOARD_HAS_EXT4_RESERVED_BLOCKS." 2018-05-29 20:02:35 +00:00
Tao Bao
717d9d3ae2 Expose PLATFORM_SECURITY_PATCH_TIMESTAMP.
We have use case that uses the timestamp for PLATFORM_SECURITY_PATCH in
device specific Makefile, but need to handle the platform-dependent
`date` command. This CL computes and exposes
PLATFORM_SECURITY_PATCH_TIMESTAMP from the core build system.

Bug: 80311893
Test: Use PLATFORM_SECURITY_PATCH_TIMESTAMP in device-specific folder,
      on both of Linux and macOS. Check the value.
Change-Id: I27a88dcebde7a1c204491f5f5c45c5160398dbb6
2018-05-29 11:45:09 -07:00
Yifan Hong
ebba19759d Add ro.boot.logical_partitions
Test: boot and getprop
Bug: 79885414
Change-Id: I2c1468a7a625deda8887106c3a087204a1ee8353
2018-05-29 11:17:45 -07:00
Yifan Hong
5cf81a3cfa Remove unnecessary branch for BOARD_HAS_EXT4_RESERVED_BLOCKS.
The branch exist for file based OTA, but it is deprecated in O.
Test: m dist

Change-Id: I24275b550f89c2541ef8893fdeffc06f5da01f6e
2018-05-29 11:15:28 -07:00
Sundong Ahn
3d64287af0 Merge "Add support when LOCAL_PRIVATE_PLATFORM_APIS is true." am: 24fff76404
am: 211d44d298

Change-Id: I5f8414b5ba6e66c13daae5f64459a83e4b8e3158
2018-05-27 19:46:33 -07:00
Treehugger Robot
24fff76404 Merge "Add support when LOCAL_PRIVATE_PLATFORM_APIS is true." 2018-05-28 02:23:26 +00:00
Dan Willemsen
c025213c15 Merge "Fix path to flex and bison with SANITIZE_HOST" am: 80ebd01032
am: f82669cc5d

Change-Id: I6f93126962d210e2896592bcd3f4a6f570dfc69f
2018-05-25 18:46:39 -07:00
Dan Willemsen
3de78fdf35 Fix path to flex and bison with SANITIZE_HOST
We don't have sanitized versions of flex and bison currently.

Test: forrest on aosp_x86_64-eng
Change-Id: I536885a715c162e36b69282099784abd16a5300c
2018-05-25 16:13:52 -07:00
Dan Willemsen
5db3299b9c Merge "Use new flex binary" am: 6fe15a380d
am: e3cca7657a

Change-Id: Ie148b4361d3f9b7e0d4b175234c18fdbe34b1949
2018-05-25 16:02:05 -07:00
Treehugger Robot
6fe15a380d Merge "Use new flex binary" 2018-05-25 22:44:35 +00:00
Dan Willemsen
11677ed983 Mark more common variables and paths as readonly
We've had a report of Android.mk files changing one of these paths,
leading to very strange issues. Nobody should be writing to these
variables after they're set.

Bug: 76424357
Test: diff build-aosp_arm.ninja
Change-Id: I66a9740d89feae342af13341ee3a630a20d62b64
2018-05-25 21:45:57 +00:00
Colin Cross
b17a2ca7b7 Merge changes I9b67fd2a,I761f2d06 am: bcc94297e0
am: 60c80c4323

Change-Id: I6bf68590481fbd9ef6137d8c6747e8eb3f98e1a2
2018-05-25 13:46:03 -07:00