Commit Graph

36555 Commits

Author SHA1 Message Date
Colin Cross
e8ee68bb9b Support java annotation proccessors
The codebase is growing more uses of annotation processors,
through a mixture of LOCAL_ADDITIONAL_DEPENDENCIES and
LOCAL_JACK_FLAGS.  Add LOCAL_ANNOTATION_PROCESSORS and handle
the rest in the build system.

For now we also need LOCAL_ANNOTATION_PROCESSOR_CLASSES to
work around bad behavior in grok (b/25860419).

Test: m -j java
Change-Id: I465b021e65d25ed3ea517333a82ec4ebd63fc038
(cherry picked from commit cde14987ba)
2017-04-11 12:22:53 -07:00
Steven Moreland
9348d38d20 Merge "Add LLNDK support for the VNDK" into oc-dev
am: 5643689385

Change-Id: Id911e5e9f9b98a2c7fe2ad1124a705d5ff3bdccf
2017-04-10 16:22:48 +00:00
Steven Moreland
5643689385 Merge "Add LLNDK support for the VNDK" into oc-dev 2017-04-10 15:30:04 +00:00
Dan Willemsen
e0b40f6368 Add LLNDK support for the VNDK
Instead of using the NDK headers and libraries, add LL-NDK specific
headers and library stubs for VNDK users. This allows us to provide an
expanded liblog interface.

Test: aosp_arm; m -j
Test: Enable BOARD_VNDK_VERSION on aosp_arm; m -j
Change-Id: I0197f44c91218c73b9567a05320c91a2baaae39b
(cherry picked from commit ffa3258f6c)
2017-04-07 20:35:09 -07:00
Colin Cross
0b1de05d3c Merge "Specialize oc-dev into OPR1" into oc-dev
am: b70a93465a

Change-Id: I488e308e863e7ea8ddbfe6f4d1a0588ebec016d5
2017-04-08 02:13:51 +00:00
TreeHugger Robot
b70a93465a Merge "Specialize oc-dev into OPR1" into oc-dev 2017-04-08 02:05:22 +00:00
Dan Willemsen
864955d152 Merge "Add LLNDK support for the VNDK" am: 2d6e79d268 am: 67eb8bb766
am: 7bc488c0ec

Change-Id: I6717b28deac9e8fea5bcfe53885aeea90ca04732
2017-04-07 21:39:01 +00:00
Dan Willemsen
7bc488c0ec Merge "Add LLNDK support for the VNDK" am: 2d6e79d268
am: 67eb8bb766

Change-Id: I77343282f1e7d23677950a037754d30dfa5d7cc6
2017-04-07 21:35:25 +00:00
Dan Willemsen
67eb8bb766 Merge "Add LLNDK support for the VNDK"
am: 2d6e79d268

Change-Id: I659186edcf49180ecd18709be901145a55e9021c
2017-04-07 21:31:27 +00:00
Dan Willemsen
2d6e79d268 Merge "Add LLNDK support for the VNDK" 2017-04-07 21:21:32 +00:00
Dan Willemsen
ffa3258f6c Add LLNDK support for the VNDK
Instead of using the NDK headers and libraries, add LL-NDK specific
headers and library stubs for VNDK users. This allows us to provide an
expanded liblog interface.

Test: aosp_arm; m -j
Test: Enable BOARD_VNDK_VERSION on aosp_arm; m -j
Change-Id: I0197f44c91218c73b9567a05320c91a2baaae39b
2017-04-07 21:21:24 +00:00
Martijn Coenen
01371056bb Add 'vndservice' to default builds.
am: 1fe4f23a04

Change-Id: Ib6015b8ce6abb634963e251aea825d660bf59968
2017-04-07 20:07:14 +00:00
Martijn Coenen
1fe4f23a04 Add 'vndservice' to default builds.
To query vndservicemanager and its services.

Bug: 36987120
Test: vndservice present and works
Change-Id: Ic65acbde17a1be5b728eeeac0f799a86c1d8c1fa
2017-04-07 10:49:22 -07:00
Tao Bao
f859165bd1 Merge "releasetools: Add validate_target_files.py." am: 6cb177f15c am: c23d275d02
am: d5244a593f

Change-Id: I2f4e4473ffbe1e1802ec31a0e95d1247634ff2ea
2017-04-06 21:07:01 +00:00
Tao Bao
d5244a593f Merge "releasetools: Add validate_target_files.py." am: 6cb177f15c
am: c23d275d02

Change-Id: I3e52e540eacc76fa43fa1c0fe62b83a69b2bdc89
2017-04-06 21:03:30 +00:00
Tao Bao
c23d275d02 Merge "releasetools: Add validate_target_files.py."
am: 6cb177f15c

Change-Id: I43fcdc12e713a6e66dff624e1dd3d6d07ee86c99
2017-04-06 21:00:01 +00:00
Tao Bao
6cb177f15c Merge "releasetools: Add validate_target_files.py." 2017-04-06 20:50:09 +00:00
Colin Cross
5cc452de64 Merge "Fix duplicate and dangling rules" am: f9f8b21af3 am: 50d2ffdfe3
am: 348d20bcce

Change-Id: I495a6d0a8c733c942248e1d378c9f660e1cc7322
2017-04-06 20:07:31 +00:00
Colin Cross
348d20bcce Merge "Fix duplicate and dangling rules" am: f9f8b21af3
am: 50d2ffdfe3

Change-Id: I20b39bbaf3ba642b10f4364beb4b580d2a5a7ac1
2017-04-06 20:03:30 +00:00
Colin Cross
50d2ffdfe3 Merge "Fix duplicate and dangling rules"
am: f9f8b21af3

Change-Id: I7da59735bf22dbf54cdadfb45e01e21693e4054b
2017-04-06 20:00:31 +00:00
Treehugger Robot
f9f8b21af3 Merge "Fix duplicate and dangling rules" 2017-04-06 19:49:45 +00:00
Colin Cross
96476c1d50 Fix duplicate and dangling rules
I6730e2d3ec38004874265b2a690442dec57b33f4 introduced duplicate rules
to build classes.jar for static java library prebuilts, and left rules
to copy $(built_dex_intermediates) to $(built_dex) for modules that
don't build dex files.

Move prebuilts LOCAL_BUILT_MODULE back to javalib.jar to match
non-prebuilt modules, and remove the manual building of javalib.jar.

Add a check around $(built_dex_intermediates) for static java libraries.

Bug: 36901093
Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I291510b56162f0d35553e3c7ccd59b1382224d62
2017-04-06 10:23:04 -07:00
Colin Cross
99c83f2bda Merge "Rearrange java library outputs" am: 7b7363fffb am: a4435a5025
am: 09018269a8

Change-Id: I35b5527c4142f9486c6d57498789ba2249d0a4a3
2017-04-06 15:52:26 +00:00
Colin Cross
09018269a8 Merge "Rearrange java library outputs" am: 7b7363fffb
am: a4435a5025

Change-Id: I9185bea7f0233cf2007714ef5f787281972889d7
2017-04-06 15:45:24 +00:00
Colin Cross
a4435a5025 Merge "Rearrange java library outputs"
am: 7b7363fffb

Change-Id: Ia0f975785542973a052cd0b24ee9c1b756babfe6
2017-04-06 15:37:52 +00:00
Colin Cross
7b7363fffb Merge "Rearrange java library outputs" 2017-04-06 15:30:45 +00:00
Colin Cross
1ed4235172 Merge "Move proguard before classes.jar" am: 41d5cd7420 am: c40073c77f
am: 6ade789f59

Change-Id: I9ac539f18a998c3a85960526a77cfdebef9ca641
2017-04-06 02:50:55 +00:00
Colin Cross
6ade789f59 Merge "Move proguard before classes.jar" am: 41d5cd7420
am: c40073c77f

Change-Id: Ib60ca56f292d105bbd873422915d9640463610df
2017-04-06 02:47:23 +00:00
Colin Cross
c40073c77f Merge "Move proguard before classes.jar"
am: 41d5cd7420

Change-Id: I65fe576155f9375d4f05f598b62032af1d3e6695
2017-04-06 02:44:23 +00:00
Treehugger Robot
41d5cd7420 Merge "Move proguard before classes.jar" 2017-04-06 02:39:13 +00:00
Colin Cross
941b682099 Rearrange java library outputs
Jack can silently handle using a java library as a static java
library by merging in the java library dex file.  This causes
problems when switching to javac, because dex doesn't support
dex merging with multidex enabled?

Make the output files consistent between java libraries and static
java libraries.  Java libraries will now produce:
classes-pre-proguard.jar: the classes before proguard processing
classes.jar: the final jar file containing classes before dexing
javalib.jar: a jar containing classes.dex

Static java libraries will eventually only produce
classes-pre-proguard.jar and classes.jar.  All inter-library
linking is done with classes.jar, so a java library can be
used as a static java library.

There are too many dependencies outside the build system that
expect javalib.jar to exist for static and host java libraries,
so for now continue to build a javalib.jar that is a copy of
classes.jar.

Test: m -j ANDROID_COMPILE_WITH_JACK=false java
Test: m -j java
Bug: 36901093
Change-Id: I6730e2d3ec38004874265b2a690442dec57b33f4
2017-04-05 18:04:37 -07:00
Chih-hung Hsieh
badde95384 Merge "Encode special characters in email addresses." am: c4a7ed3530 am: 1124a1bd01
am: f754ef73a5

Change-Id: I1eb192492a53263182eddce2f1ab86a015400cce
2017-04-06 00:53:15 +00:00
Chih-hung Hsieh
f754ef73a5 Merge "Encode special characters in email addresses." am: c4a7ed3530
am: 1124a1bd01

Change-Id: I2745911481dde3317b85e31ec6e2f2758e9b0740
2017-04-06 00:49:44 +00:00
Chih-hung Hsieh
1124a1bd01 Merge "Encode special characters in email addresses."
am: c4a7ed3530

Change-Id: I5b22ee5588388433c82333993bd2ebb25dbd9d52
2017-04-06 00:46:45 +00:00
Colin Cross
950f1efbbc Move proguard before classes.jar
Downstream users of a library always link against javalib.jar, which
is either the dex jar for java libraries or a copy of
proguard.classes.jar for static java libraries.  In preparation for
making java libraries a superset of static java libraries, make
classes.jar always be the final class-containing jar for use
downstream, and always create a classes-pre-proguard.jar for
users that need a jar without shrinking or obfuscation.

Also rename the intermediates to be consitent: classes-<tool>.jar

Test: m -j ANDROID_COMPILE_WITH_JACK=false java
Change-Id: I3df8b9a4edcd5db996f1fedc54c8a782d4f36a92
Merged-In: I3df8b9a4edcd5db996f1fedc54c8a782d4f36a92
(cherry picked from commit 6fabefa88e)
2017-04-06 00:46:23 +00:00
Chih-hung Hsieh
c4a7ed3530 Merge "Encode special characters in email addresses." 2017-04-06 00:40:51 +00:00
Dan Willemsen
d3d15935f9 Merge "Ensure that BOARD_VNDK_VERSION is current" into oc-dev
am: 8a6d7fabc3

Change-Id: I35dafe7b1f4b3d4181291277adee3cffabd15d98
2017-04-05 22:47:07 +00:00
Dan Willemsen
40837541f5 Merge "Exclude ndk stubs from notice file list" into oc-dev
am: 87bbe36728

Change-Id: I952270140dfb52d40c3a9c30d9acabcf0e7824a5
2017-04-05 22:47:00 +00:00
Dan Willemsen
7c027f4f8a Merge "Add LOCAL_EXPORT_CFLAGS for Soong" into oc-dev
am: 0192aaedad

Change-Id: I6b4e9b171443143b9bb69ef69356902e083ab462
2017-04-05 22:46:53 +00:00
TreeHugger Robot
8a6d7fabc3 Merge "Ensure that BOARD_VNDK_VERSION is current" into oc-dev 2017-04-05 22:42:18 +00:00
TreeHugger Robot
87bbe36728 Merge "Exclude ndk stubs from notice file list" into oc-dev 2017-04-05 22:42:18 +00:00
TreeHugger Robot
0192aaedad Merge "Add LOCAL_EXPORT_CFLAGS for Soong" into oc-dev 2017-04-05 22:42:18 +00:00
Chih-Hung Hsieh
bee0dec6c4 Encode special characters in email addresses.
Now accept email addresses with '+' character.

Bug: 33166666
Test: checkowners.py -v -c `find . -name OWNERS`
Change-Id: I7792551e6be74e942906a75344233439d4bfeca3
2017-04-05 14:16:49 -07:00
Dan Willemsen
2af509ba3d Ensure that BOARD_VNDK_VERSION is current
BOARD_VNDK_VERSION controls which version of the VNDK is used for the
build. We only support compiling against the current VNDK, and we don't
support installing old prebuilt VNDK libraries yet, so ensure this
variable is set to "current".

Once we support installing old prebuilt VNDK libraries, we'll also need
to disable building modules that use the VNDK.

Test: build-aosp_arm.ninja is the same before/after
Test: Ensure there are no boards that set BOARD_VNDK_VERSION
Test: Set BOARD_VNDK_VERSION := invalid
Change-Id: Ic26c9f44e356a0734f522b4538cb866d5b901d43
(cherry picked from commit 2c3289bf37)
2017-04-05 09:59:10 -07:00
Dan Willemsen
593026b28b Add LOCAL_EXPORT_CFLAGS for Soong
This lets Soong pass -isystem or -I as necessary (or potentially, even
other cflags in the future).

This is not available for Android.mk use, nor exposed directly to
Android.bp users.

Test: m -j
Change-Id: Id37d4692d5fbddce467bd777903b20169f44dd6e
2017-04-05 09:49:48 -07:00
Dan Willemsen
58386bab15 Exclude ndk stubs from notice file list
There are many references to ndk stub libraries in the third party
notices:

out/soong/ndk/platforms/android-10/arch-arm/usr/lib/libc.so
out/soong/ndk/platforms/android-10/arch-arm/usr/lib/liblog.so
...

These are just stub libraries, and aren't distributed on the device. The
real versions of these libraries will be distributed on the device, and
already have the license information.

So let Soong set LOCAL_NO_NOTICE_FILE to prevent these from appearing.

Bug: 36867708
Test: Diff aosp_arm's system/etc/NOTICE.html.gz file before/after
Change-Id: Ifa3693bde7d3b6b9dc7a83122f9cfa24997fac50
(cherry picked from commit 2be559488d)
2017-04-05 09:47:37 -07:00
Tao Bao
afaa0a638b releasetools: Add validate_target_files.py.
Bug: 35408446
Test: validate_target_files.py on existing target_files zips.
Change-Id: I140ef86533eee5adb93c2546510fdd7e9ce4e81a
2017-04-05 09:04:13 -07:00
Martijn Coenen
31ee76a1e0 Merge "Add vndservicemanager to default builds." into oc-dev
am: a4f90284c7

Change-Id: I13148e6efb9f7ecb57c95000b69392d6ec69b65f
2017-04-05 15:59:06 +00:00
Martijn Coenen
a4f90284c7 Merge "Add vndservicemanager to default builds." into oc-dev 2017-04-05 15:54:45 +00:00
Nicolas Geoffray
9eef2bcf19 Make the default preopt 'interpret-only'.
am: 857d889950

Change-Id: I172f7bce93170109576d8387851294f2a42c39c8
2017-04-05 15:08:24 +00:00