Commit Graph

7777 Commits

Author SHA1 Message Date
Colin Cross
3d72c9574d Use -processorpath for annotation processors
am: 6a77c9871c

Change-Id: I3162658384da1444253976d7ebb63ae2850b7200
2018-06-20 23:06:34 -07:00
Colin Cross
996fdf034b Merge "Revert "Use -processorpath for annotation processors""
am: ab97ae08cd

Change-Id: I7b2c072b37b7250c88274167e003774ac641ccca
2018-06-20 21:24:05 -07:00
Colin Cross
0de4b25f88 Merge "Use -processorpath for annotation processors"
am: 1418fe2e4c

Change-Id: I7274b202d505c2459cad0559e7e5f8686deabc8e
2018-06-20 21:19:44 -07:00
Dan Willemsen
57814a0d40 Merge "Turn implicit rules into warnings"
am: e5da49dab5

Change-Id: Ib4dd707ed9616d17c03fc9ea4176be84f96e6d58
2018-06-20 21:13:55 -07:00
Colin Cross
6a77c9871c Use -processorpath for annotation processors
ErrorProne needs to be added to -processorpath, but once anything is
passed via -processorpath javac stops looking in the classpath for
annotation processors.  Move annotation processors to -processorpath
in preparation.

This reapplies Ife06b3c7432ab971f5605dcc18a558bcbd99a675 with fixes
to processorpath in errorprone rules.

Test: m java
Change-Id: I188136771386a2183fb31f4b70b50c95ac419ff8
2018-06-20 21:03:07 -07:00
Colin Cross
ab97ae08cd Merge "Revert "Use -processorpath for annotation processors"" 2018-06-21 03:57:17 +00:00
Colin Cross
2f10997e6b Revert "Use -processorpath for annotation processors"
This reverts commit 6dd0bb3b77.

Reason for revert: broke RUN_ERROR_PRONE=true build

Change-Id: I23d066281e392c6e7df29c5cd4558c7cf731c1a5
2018-06-21 03:56:45 +00:00
Colin Cross
1418fe2e4c Merge "Use -processorpath for annotation processors" 2018-06-21 03:34:10 +00:00
Treehugger Robot
e5da49dab5 Merge "Turn implicit rules into warnings" 2018-06-21 03:31:11 +00:00
Colin Cross
ee4898cc40 Update soong for blueprint change to allow multiple deps
am: a1ce2a0071

Change-Id: I060f9a5b971ace92c815eb3aad67c33f3aed4d2b
2018-06-20 17:56:23 -07:00
Dan Willemsen
fa42f3c10d Turn implicit rules into warnings
Test: build_test in downstream branches
Change-Id: I853e3fa11793cc76ad568b74f7dc31c3d1c5582b
2018-06-20 16:50:45 -07:00
Colin Cross
6dd0bb3b77 Use -processorpath for annotation processors
ErrorProne needs to be added to -processorpath, but once anything is
passed via -processorpath javac stops looking in the classpath for
annotation processors.  Move annotation processors to -processorpath
in preparation.

Test: m java
Change-Id: Ife06b3c7432ab971f5605dcc18a558bcbd99a675
2018-06-20 16:16:49 -07:00
Colin Cross
a1ce2a0071 Update soong for blueprint change to allow multiple deps
Blueprint allows multiple dependencies on the same module after
https://github.com/google/blueprint/pull/210.

Fix defaults, WalkDeps can now find the same defaults module multiple
times.

Fix droiddoc, if the srcs_lib points to a lib module that is
specified multiple times, for example through explicit properties
and implicit default libraries, the srcs would be listed on the
command line multiple times.  Move srcs_lib to use its own dependency
tag.

Test: m checkbuild
Change-Id: Ia30ce83be1382820d76bca5046ad18cbffe8af1a
2018-06-20 22:56:36 +00:00
Jiyong Park
4e00c2c14d Export SDK library names
am: 1be9691910

Change-Id: I43a3678b3134ef245187828e14a9ac87bc25ad02
2018-06-20 01:15:01 -07:00
Jiyong Park
992d966e7f add --uses-library option to manifest_fixer.py
am: c08f46fdfc

Change-Id: I96e158437c421ceaa04ace0d051b20af2a6e1cb9
2018-06-20 01:14:30 -07:00
Jiyong Park
1be9691910 Export SDK library names
java_library, java_import, and android_library export SDK library names
that they are using directly or indirectly via its dependencies. When
building an apk, the manifest fixer uses the SDK lib names to
automatically add <uses-library> tags.

The SDK lib names are exported to the make world via
LOCAL_EXPORT_SDK_LIBRARIES flag.

Bug: 77575606
Test: m -j
Change-Id: I4fe606eb7ed23843c58eebe6a324405fe1da34e5
2018-06-20 12:13:33 +09:00
Jiyong Park
c08f46fdfc add --uses-library option to manifest_fixer.py
`--uses-library foo` adds <uses-library android:name="foo"
android:required="true"/> element to the manifest.

When there is already a uses-library element with the same
name, then the hand-written element is respected.

Test: m -j
Test: build/soong/scripts/manifest_fixer_test.py

Change-Id: Ia5e989d3c3c3fba7cc9015a6d16dac70464282a8
2018-06-20 12:03:09 +09:00
Jiyong Park
48bdb37b4a Merge "Recovery partition uses the first architecture only"
am: 87e50a0d14

Change-Id: I2da330f2a4062039f83ecb90800e65595982ad32
2018-06-19 18:20:35 -07:00
Treehugger Robot
87e50a0d14 Merge "Recovery partition uses the first architecture only" 2018-06-20 01:11:10 +00:00
Nan Zhang
83cd562ca8 Fix the build breakage for droiddoc
am: af322cc7c2

Change-Id: I05eecb95d19f1d33f9df9997cc8ba59e44f02367
2018-06-19 16:07:28 -07:00
Nan Zhang
af322cc7c2 Fix the build breakage for droiddoc
Removed the additional "-source $javaVersion" arg in javadoc rule
otherwise javadoc will report error:
javadoc: error - The -source option may be specified no more than once.

Test: m -j ahat-docs
Bug: b/70351683
Change-Id: I7f92236884154075fb4b20cd9a363419b1ecd3f5
2018-06-19 15:23:31 -07:00
Nan Zhang
0bf05e5b7a Merge "Support Java Lang level 9 for droiddoc in Soong."
am: 1328e9fee9

Change-Id: I5bc25962bca41eb82ee2e64a4abfdb6dbd0ba904
2018-06-19 14:42:05 -07:00
Treehugger Robot
1328e9fee9 Merge "Support Java Lang level 9 for droiddoc in Soong." 2018-06-19 21:28:43 +00:00
Kostya Kortchinsky
9cba8204b1 Soong support for Scudo
am: d18ae5ce98

Change-Id: I0c0fcf29ccd99575de573a915c7da5d51b14cd45
2018-06-19 13:11:58 -07:00
Nan Zhang
357466b18a Support Java Lang level 9 for droiddoc in Soong.
Test: m -j docs / m -j metalava-api-stubs-docs
Bug: b/70351683
Change-Id: I7220d04f508f6bb5ffd281cf31bc8c0069c219e5
2018-06-19 10:55:29 -07:00
Kostya Kortchinsky
d18ae5ce98 Soong support for Scudo
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.

Bug: 72112048
Test: aosp compiled with m -j
Test: local experiment with scudo: true to ensure that a test target
(tombstoned) could be linked with scudo.

Change-Id: I76bb6c60891d4782f6665a112c4c2bf7c31645da
2018-06-19 09:46:09 -07:00
Jiyong Park
413cc744b8 Recovery partition uses the first architecture only
To save space in the recovery partition, modules installed to the
partition are restricted to be built in the first architecure (i.e.,
32bit for 32bit-only device or when TARGET_PREFER_32_BIT is true, and
64bit otherwise).

Most notably, this change removes the 32-bit variant of the linker
(about 1MB). The linker was installed regardless of whether there is a
32-bit executable or not. Now, the unnecessary linker is not installed
and it is guaranteed that all modules in the partition are built with the
same architecture.

Bug: 79146551
Test: m -j
Test: out/target/product/<name>/recovery/root/system/bin/ has only one
variant of the linker.

Change-Id: I4070a43555bad4cfa8eff5253b09dcd004ea8251
2018-06-19 10:49:21 +09:00
Nan Zhang
3a280813a8 Merge "Changed droiddoc.go to compile Metalava based android.jar"
am: f89db951e5

Change-Id: I688a1376d061bcabff76410a46e6d47d2bdd20bf
2018-06-18 12:09:21 -07:00
Treehugger Robot
f89db951e5 Merge "Changed droiddoc.go to compile Metalava based android.jar" 2018-06-18 16:55:28 +00:00
Yi Kong
904ba56bb9 Merge "Remove workaround for cortex-a55/a75"
am: bbabc7b67e

Change-Id: Ic8cbeab81b1c75902c95bd5e2b4e9185a2f8feb6
2018-06-17 02:08:19 -07:00
Yi Kong
bbabc7b67e Merge "Remove workaround for cortex-a55/a75" 2018-06-17 09:01:20 +00:00
Dan Willemsen
c3ba40cc5a Turn suffix rules into errors
am: d368d6ff78

Change-Id: I2ef3a235ce7e2a177709ba5332908f92d607b1a7
2018-06-16 11:17:04 -07:00
Colin Cross
3b20009ae0 Merge "Add a script to inject values into manifests"
am: f269dbee54

Change-Id: I4bd044917c098d15c8b394c3e7413004c003261b
2018-06-15 22:42:49 -07:00
Dan Willemsen
d368d6ff78 Turn suffix rules into errors
We've turned off suffix rules with .SUFFIXES, but make them explicit
errors.

Test: build_test on downstream branches
Change-Id: I682ee3eb3a8f1451cd7e16f1e1d59afca5d21a26
2018-06-15 21:53:18 -07:00
Yi Kong
9c63363119 Remove workaround for cortex-a55/a75
Test: m checkbuild
Test: boot on a55/a75 device, pass bionic tests
Bug: 110235326
Change-Id: I5ab2102352a6efe1173b3097875e6e779d4a1a09
2018-06-15 23:15:54 +00:00
Colin Cross
f269dbee54 Merge "Add a script to inject values into manifests" 2018-06-15 22:53:52 +00:00
Nan Zhang
16c0a31b18 Changed droiddoc.go to compile Metalava based android.jar
Test: m -j metalava_android_stubs_current
Bug: b/78245848
Change-Id: Ibce139a93a40e412d8def1b26660446b0a7a24ff
2018-06-15 15:42:59 -07:00
Yi Kong
86b2b31736 Merge "Update ToolingCFlags overrides to include other new architectures"
am: 8eb8704cf1

Change-Id: I8b2763f16c1a2da5ec91edf3f668264ee3ea7cf2
2018-06-14 22:19:04 -07:00
Yi Kong
8eb8704cf1 Merge "Update ToolingCFlags overrides to include other new architectures" 2018-06-15 05:08:53 +00:00
Jiyong Park
948121659e Merge "Add errorprone.javacflags to java_sdk_library"
am: f71a98df8a

Change-Id: Ia63dd807b72c9c732ffb8c1280a4051fb7ab35ec
2018-06-14 22:01:02 -07:00
Treehugger Robot
f71a98df8a Merge "Add errorprone.javacflags to java_sdk_library" 2018-06-15 03:38:51 +00:00
Yi Kong
72f9a0b2f5 Update ToolingCFlags overrides to include other new architectures
Bug: 110235326
Test: m checkbuild
Change-Id: I9d0ada05d95bb260500c1d694332a73363b0f299
2018-06-14 18:45:54 -07:00
Jiyong Park
b5b709f72c Add errorprone.javacflags to java_sdk_library
Bug: 110208852
Test: cherry-pick https://android-review.googlesource.com/c/platform/external/apache-http/+/620154
Test: m javac-check RUN_ERROR_PRONE=true

Change-Id: If97871e6e1fd597efed2b796620538ca4c57eed4
2018-06-15 10:40:26 +09:00
Sundong Ahn
5d90b68dae Merge "Support prebuilt libraries in prebuilt_apis.go"
am: 4dd99f65de

Change-Id: I6393f4df6b3800c6eebd850645ccc60dbf54557a
2018-06-14 18:28:19 -07:00
Treehugger Robot
4dd99f65de Merge "Support prebuilt libraries in prebuilt_apis.go" 2018-06-15 00:52:04 +00:00
Colin Cross
8bb10e8f8a Add a script to inject values into manifests
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
Test: build/soong/scripts/manifest_fixer_test.py
Change-Id: I528d71a225feb86464c530e11b223babb0ea9edf
2018-06-14 14:54:27 -07:00
Jiyong Park
1598abf6df Merge changes from topic "sharedlib_in_recovery"
am: 33ab6f6134

Change-Id: I0cfce2564ba7e785bbb4db43626155cce3302ecc
2018-06-13 16:41:09 -07:00
Jiyong Park
eb946e1231 Recovery partition has same layout as system
am: 2e6743176a

Change-Id: Ib59834db180f6ec06cb005291bdf527d9cc50c8b
2018-06-13 16:40:53 -07:00
Treehugger Robot
33ab6f6134 Merge changes from topic "sharedlib_in_recovery"
* changes:
  Recovery variants are built with -D__ANDROID_RECOVERY__
  Recovery partition has same layout as system
2018-06-13 23:14:29 +00:00
Jayant Chowdhary
695da73801 Merge "Fix VNDK-Ext ABI check regression"
am: 4038a6ea9f

Change-Id: I51230cf8c0f72b3492eea1fa042228c77dd1f99f
2018-06-13 11:05:08 -07:00