Commit Graph

10064 Commits

Author SHA1 Message Date
Tor Norbye
ebcdfed262 122452571: Fix path to android.jar in prebuilts
The --android-jar-pattern flag passed to metalava is used to
find all the prebuilts for previous API levels such that
it can compute the exact API level for each class and member.

At some point the prebuilts must have been moved without this
code getting updated.

This fixes
Bug: 122452571: Can't build app with Q prebuilt SDK with minSdkVersion=21
Test: make sdk; inspect api-versions.xml

Change-Id: I25f6203725391dc5404cb8b6049479c9c3da1699
2019-01-24 11:09:16 -08:00
Doug Horn
c32c6b0d79 Support building for Fuchsia.
This CL adds configs for the arm64 and x64 fuchsia
device targets, sets up the necessary linker flags,
and disables some functionality that is not currently
supported on Fuchsia.

Bug: 119831161
Test: Compile walleye, internal validation against
fuchsia_arm64-eng and fuchsia_x86_64-eng.
Change-Id: I2881b99d2e3a1995e2d8c00a2d86ee101a972c94
2019-01-24 18:59:29 +00:00
Jaewoong Jung
23bf7b5a30 Minor refactoring of generateAndroidBuildActions.
am: 590b1ae37c

Change-Id: I9fcc7e0f9805d78c11209c2fa8d69b83f054804d
2019-01-24 10:23:12 -08:00
Anton Hansson
0375a4f481 Parameterize RRO test
Makes it easier to add more test cases.

Bug: 123300034
Test: m nothing
Change-Id: Ice5df7afbd55c3a4f9edf60e13bf6b850a485370
2019-01-24 17:49:20 +00:00
Jaewoong Jung
9bceb52ce0 Enable certificate overrides with product vars.
am: 2ad817c65d

Change-Id: Iceb721341588fc69f2e2abb6f062b9f6a406d95d
2019-01-24 07:05:27 -08:00
Jaewoong Jung
590b1ae37c Minor refactoring of generateAndroidBuildActions.
The function became a gigantic machine, so I decided to split it up to
smaller, logically self-contained pieces to provide better readability.

Test: app.go + TreeHugger
Change-Id: I50e5767ed779078b2d8c60c39c3951b0b5a191d7
2019-01-24 14:56:29 +00:00
Jaewoong Jung
2ad817c65d Enable certificate overrides with product vars.
Currently it is only for android_app, though it can be easily ported to
apex.

The make-side change will be made later, along with a real application.

Bug: 122957760
Test: app_test.go
Change-Id: I41f0be84f8b9f93e9518a16160e10eaa649388cd
2019-01-24 14:55:58 +00:00
David Brazdil
ceecfb55d7 Merge "Disable all-assigned check in hiddenapi on master-art"
am: 9d085dea9e

Change-Id: I49d88d0edfbb7781d5df49a4ccba227878bdde05
2019-01-24 01:47:59 -08:00
David Brazdil
9d085dea9e Merge "Disable all-assigned check in hiddenapi on master-art" 2019-01-24 09:38:13 +00:00
Nicolas Geoffray
bb0a5abac2 Align jar file after calling merge-zips when dex is uncompressed.
am: f343872a8d

Change-Id: I1948cb90c57b0300c4e83078deac21b6e38bb670
2019-01-23 22:52:18 -08:00
Nicolas Geoffray
f343872a8d Align jar file after calling merge-zips when dex is uncompressed.
Noticed this while changing a some dex build rules.

Test: m
Change-Id: I9838e81e0e98be49d34554041a5a942b64259aaa
2019-01-24 06:38:14 +00:00
Colin Cross
0098dd59a1 Fix kotlin annotation processing after java_plugin
am: 3a3e94c09a

Change-Id: I7a1fc635bacf574fdeafef0e38a8f62e44d6b175
2019-01-23 20:30:36 -08:00
Colin Cross
3a3e94c09a Fix kotlin annotation processing after java_plugin
I37c1e80eba71ae2d6a06199fb102194a51994989 broke kotlin annotation
processing with a typo in the processors flag to kapt and by
passing -processor to javac with an empty processorpath.

Bug: 77284273
Bug: 122251693
Test: kotlin_test.go
Test: m checkbuild
Change-Id: I17c45d5b3f9df089231af5d2930646ad0e6bf9be
2019-01-23 16:14:21 -08:00
Dan Albert
9d12a12dc8 Merge "Revert "Fix: sanitizerRuntimeMutator is not run for host""
am: 9f100ca0e3

Change-Id: Ied9767b9a8264bab62e134874cc1fc8a368f7fde
2019-01-23 15:53:28 -08:00
Dan Albert
9f100ca0e3 Merge "Revert "Fix: sanitizerRuntimeMutator is not run for host"" 2019-01-23 23:37:37 +00:00
Dan Albert
84757ea7ea Revert "Fix: sanitizerRuntimeMutator is not run for host"
This reverts commit 1c29b0e6ec.

Reason for revert: Broke aosp_x86_64

Change-Id: I581200f1c271c3e1a39d5cdad84c782977b13054
2019-01-23 23:33:25 +00:00
David Brazdil
91b4e3e78b Disable all-assigned check in hiddenapi on master-art
Master-art configurations do not have frameworks/base and therefore do
not have hidden API flags. Pass --no-force-assign-all to `hiddenapi`
when frameworks/base does not exist to disable the corresponding
assertion. This enables us to enforce the assertion on non-master-art
builds and also get rid of logspam about missing flags on ART buildbots.

Test: art/tools/buildbot-build.sh on master-art
Bug: 123143676
Change-Id: I074d9554fb11dab3eef904016375730520107ec2
2019-01-23 22:55:41 +00:00
George Burgess IV
7294cdced0 config: swap to glibc 2.17
**Please do not revert this change without consulting with either
srhines@ or gbiv@ first. It's a large change, and if it only causes
simple/small breakages, we plan to fix those as they pop up.**

This CL swaps the host Android Linux toolchain to gcc 4.8.3 + glibc
2.17, landed in Ieeed444801160e3d288bbad7d871067e81411118.

Bug: 111358231
Test: We've done extensive testing on internal master. Please see
      Ieeed444801160e3d288bbad7d871067e81411118.
Change-Id: If991a603a3dce33b55086672c27a11992f0f3123
2019-01-23 14:02:10 -08:00
Dan Willemsen
d493964e21 Merge "Fix: sanitizerRuntimeMutator is not run for host"
am: 27fd541cf3

Change-Id: I6bf52e195a6e4ed0bcee103af7829aff20cea648
2019-01-23 13:12:12 -08:00
Dan Willemsen
27fd541cf3 Merge "Fix: sanitizerRuntimeMutator is not run for host" 2019-01-23 20:57:06 +00:00
Colin Cross
5dc9b8029f Replace annotation_processors with plugins
am: be9cdb8d64

Change-Id: I1ec3b0ed42057eb84a72cdcc0f0620d774abbdeb
2019-01-23 12:32:31 -08:00
Colin Cross
be9cdb8d64 Replace annotation_processors with plugins
Follow bazel's modules for annotation processors by introducing
a java_plugin module type that can contain extra metadata about
the annotation processor, the processor class and a flag to
specify if the annotation processor is compatible with the
turbine optimization.  Deprecate the annotation_processors
property, which took a list of java_library_host modules, in
favor of the plugins property, which takes a list of java_plugin
modules.  The annotation_processors property will be removed
once all uses have been replaced with plugins.

Bug: 77284273
Test: plugin_test.go
Test: m caliper
Change-Id: I37c1e80eba71ae2d6a06199fb102194a51994989
2019-01-23 20:17:51 +00:00
Steven Moreland
4b3baec732 jarjar_rules: accept file-group
am: c4efd9cb55

Change-Id: Ib197587e4171d22c94effb2d60485778737a4dc4
2019-01-23 10:15:45 -08:00
Steven Moreland
c4efd9cb55 jarjar_rules: accept file-group
This allows a jarjar rule to be shared among multiple targets in
different directories.

Bug: 86259915
Test: use filegroup jarjar_rules
Change-Id: I3fa476c4e87e2460ab9fabfb34229f471c80e6b0
2019-01-23 18:05:18 +00:00
Jiyong Park
1c29b0e6ec Fix: sanitizerRuntimeMutator is not run for host
Bug: 123254047
Test: m ASAN_OPTIONS=detect_leaks=0 SANITIZE_HOST=address
FORCE_BUILD_LLVM_COMPONENTS=true out/host/linux-x86/bin/adb
nm -an out/host/linux-x86/bin/adb  | grep -c asan
shows non-zero value

Change-Id: I030e08bd0db38585b1fdaecd00220406f1e8b371
2019-01-23 23:37:45 +09:00
Logan Chien
31698575be Fix shared_libs for cc/prebuilt.go
am: c7f797ea54

Change-Id: I2455c46dbce897068ad472740f641e8d5a20c65b
2019-01-22 23:27:35 -08:00
Logan Chien
9839dd76c3 Merge "Add prebuilt ABI checker support to soong"
am: f1b3352b97

Change-Id: I38b6006e3107944826c31bcfb2052b830bff3cd0
2019-01-22 23:26:19 -08:00
Logan Chien
c7f797ea54 Fix shared_libs for cc/prebuilt.go
This commit fixes `shared_libs` for `cc_prebuilt_binary`,
`cc_prebuilt_library_static`, and `cc_prebuilt_library_shared`.  Before
this commit, all shared libraries in `shared_libs` are dropped from the
generated `LOCAL_SHARED_LIBRARIES`.  This commit fixes the problem by
delegating `linkerDeps()` to `libraryDecorator.linkerDeps()`.

This commit also fixes the dependencies to NDK shared libraries.  Before
this change, those dependencies are mapped to a `ndkStubDepTag` and then
ignored by the computation of `AndroidMkSharedLibs`.  This commit adds
it back.

Bug: 123053270
Bug: 119084334
Test: libclang_rt.scudo-*.so can be checked with 2 more hacks.
Change-Id: I59e37e1a3fe0c329e8cb7032e5671f117f7832a0
2019-01-23 07:21:56 +00:00
Logan Chien
f1b3352b97 Merge "Add prebuilt ABI checker support to soong" 2019-01-23 07:21:17 +00:00
Nicolas Geoffray
771b535008 Always do zipalign with uncompressDex.
am: 65fd8ba2fe

Change-Id: I2f4f906c073d7b645221d8bb06e38b9bc845600b
2019-01-22 22:50:42 -08:00
Nicolas Geoffray
65fd8ba2fe Always do zipalign with uncompressDex.
Also preserve the alignment with hiddenapi.

Test: conscrypt apex has its conscrypt.jar zipaligned.
Change-Id: I43cc0eadb9548c3d8055e12c077fb7bbe1935fe6
2019-01-23 06:36:48 +00:00
Colin Cross
cae625c754 Merge changes from topic "kapt"
am: e153382e17

Change-Id: I79be8c0c8ab9c53ea0a93ab25903f28066999038
2019-01-22 19:01:34 -08:00
Colin Cross
e153382e17 Merge changes from topic "kapt"
* changes:
  Pass annotation processors to kotlinc
  Move kotlin to it's own file
2019-01-23 02:18:12 +00:00
Logan Chien
4fcea3d9a3 Add prebuilt ABI checker support to soong
This commit adds prebuilt ABI checker support to soong so that
`cc_prebuilt_library_shared` and `cc_prebuilt_binary` are checked.

To opt out the check, add `check_elf_files: false` to your module.

Bug: 119086738
Test: lunch aosp_sailfish-userdebug && CHECK_ELF_FILES=true make check-elf-files
Change-Id: Idb4290c8f48aad545894a7ae718a537cbf832233
2019-01-23 10:15:02 +08:00
Jaewoong Jung
576205dd73 Minor code/comment cleanup for app.go.
am: de4c02f855

Change-Id: I041edcce8390f66079a85d6d3beb054394fee297
2019-01-22 15:15:31 -08:00
Colin Cross
afbb1734f6 Pass annotation processors to kotlinc
Enable the kotlin-annotation-processing plugin and pass annotation
processors to it.

Bug: 122251693
Test: m checkbuild
Test: TestKapt in kotlin_test.go
Change-Id: I841df454beaaa7edd263eea714ca0d958a03c9de
2019-01-22 21:47:19 +00:00
Steven Moreland
1aa839c275 Move system-clang-format to a central location.
So that system/core clang-format can be used in more places.

Bug: 122835115
Test: manual
Change-Id: I233a5003c4229126f37a89e90eac4a75dc5ad104
2019-01-22 13:27:45 -08:00
Jaewoong Jung
de4c02f855 Minor code/comment cleanup for app.go.
1. We no longer need AndroidApp.extraLinkFlags.
(https://r.android.com/c/platform/build/soong/+/691332)
(https://r.android.com/c/platform/build/soong/+/792280)
2. Early break in the for loop to find --product flags.
3. Minor var name / comment updates for readability.

Test: app.go / TreeHugger
Change-Id: Iecea3e7cd319267c680422343ded5f7f8e69d0cd
2019-01-22 11:24:50 -08:00
Colin Cross
21fc9bbe19 Move kotlin to it's own file
kapt is going to make kotlin a little more complicated, move the
rules and tests to their own files.

Bug: 122251693
Test: m checkbuild
Change-Id: Ieed78b97995ced210b710bd50c357514cc8e3bc6
2019-01-22 16:32:11 +00:00
Nicolas Geoffray
7ef601fcbe Merge "Don't install java libraries that are already in an apex."
am: f8c06c159e

Change-Id: I407a38c0616d7e543f752654ee46310bbd919239
2019-01-21 23:58:31 -08:00
Nicolas Geoffray
f8c06c159e Merge "Don't install java libraries that are already in an apex." 2019-01-22 07:48:05 +00:00
Logan Chien
9202e84536 Merge "Add sdk version workaround for libclang_rt"
am: 5c7c78a2e0

Change-Id: I0acd7d6d9268d4291c9249769d13c5ed6548a5b7
2019-01-21 17:18:41 -08:00
Logan Chien
5c7c78a2e0 Merge "Add sdk version workaround for libclang_rt" 2019-01-22 01:04:35 +00:00
Colin Cross
9517b757cd Merge "Build java_sdk_library modules when UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true"
am: a0e1c1daaa

Change-Id: I7be389c9a4d0ed5ecb34038ca3b9eea94084c9a9
2019-01-21 15:52:07 -08:00
Treehugger Robot
a0e1c1daaa Merge "Build java_sdk_library modules when UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true" 2019-01-21 23:41:06 +00:00
Colin Cross
2c77ceba34 Build java_sdk_library modules when UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true
java_sdk_library modules are usually disabled in favor of prebuilts
when TARGET_BUILD_APPS is set.  Keep them enabled when
UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true, which is used by some unbundled
builds built from a full source tree like mainline modules.

Bug: 123183568
Test: m TARGET_PRODUCT=mainline_modules_arm UNBUNDLED_BUILD_SDKS_FROM_SOURCE=true TARGET_BUILD_APPS=com.android.media
Change-Id: Ifa940769e467ca4b7ad3b95106e184c00680d2ae
2019-01-21 12:18:39 -08:00
Jerome Gaillard
c5c22a4f86 Merge "Add Skia deps to the list of available Windows libraries"
am: 13a539c009

Change-Id: I45c4f8d8305b9ef8f296d50b374d778fabdaf362
2019-01-21 12:13:31 -08:00
Jerome Gaillard
13a539c009 Merge "Add Skia deps to the list of available Windows libraries" 2019-01-21 20:08:01 +00:00
David Brazdil
d65f5e61fc Replace hiddenapi-{public,private}-list.txt with a CSV file
am: 0f670a22df

Change-Id: I815c2885cee28af0709baa8fcb83e6adc7020a1c
2019-01-21 10:52:52 -08:00
David Brazdil
0f670a22df Replace hiddenapi-{public,private}-list.txt with a CSV file
`hiddenapi` is being refactored to work with a single CSV file as
opposued to a multitude of text files (one per flag). This patch
changes the singleton rule for listing public/private APIs from
stubs to expect a CSV as an output.

Bug: 119068555
Test: compiles, hiddenapi-flags.csv unchanged
Change-Id: I622521d59979a6b01ecc8065a278412fedf7b9bc
2019-01-21 14:30:49 +00:00