summaryrefslogtreecommitdiff
path: root/JavaLibrary.bp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge "Pave the way for external mainline module API annotations."Treehugger Robot2018-09-261-1/+10
|\ \
| * | Pave the way for external mainline module API annotations.Pete Gillin2018-09-261-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change prepares for adding mainline mode API annotations (@CorePlatformApi etc.) supplied in external .annotated.java files so they are not carried as patches in ojluni source files. No real annotations are introduced in this change, and it has no effect on the generated stubs for any of the affected targets (except, seemingly, a few trivial whitespace changes). Specifically, this change does the following: - Adds a placeholder .annotated.java file (to be removed as soon as we have any real ones). - Adds a @libcore.api.Hide annotation we can use as an alternative to the @hide javadoc tag. - Changes the relevant mainline module API droidstubs rules to merge in the .annotated.java annotations and to respect the @Hide annotation. - Refactors the openjdk_java_files targets to create a new category of source file, those which are annotated for the mainline module APIs but are not part of the public API. (The alternative to doing this would be to move them into the public category and change all the public API droidstubs to merge in the .annotated.java annotations and to respect @Hide, which would be significantly more invasive.) - Changes the relevant mainline module API droidstubs rules use the new source categories. Bug: 115746226 Test: `make core-platform-api-stubs core-intra-stubs core-libart+oj-intra-stubs` Change-Id: I33e80603686112d3eb5a05debb58f13764b819b6
* | | Build android_icu4j_resources into a standalone static libVictor Chang2018-09-251-2/+13
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | - In the downstream branch master-icu-dev, the resource files are generated. To include all the generated resources in libart and core-all, the generated resources need to be in a single jar. - No java files included in the static lib. There should be no circular dependency. Verified out/target/product/generic_x86/obj/JAVA_LIBRARIES/android_icu4j_resources_lib_intermediates/javalib.jar has no .java/.class files. Bug: 71896732 Test: m & emulator booted Change-Id: I87eba89bcf4eab350dec003a7287d2698854c080
* / Add conscrypt src to the core_api_files listNeil Fuller2018-09-251-0/+1
|/ | | | | | | | | | Add conscrypt src to the core_api_files list to enable them to contribute to the core platform / intra-core APIs in future commits. Bug: 113148576 Test: build Change-Id: Ie5cdd3ee0aecb05b85ba344b77f6131635121952
* Add bouncycastle src to the core_api_files listNeil Fuller2018-09-251-0/+1
| | | | | | | | | | Add bouncycastle src to the core_api_files list to enable them to contribute to the core platform / intra-core APIs in future commits. Bug: 113148576 Test: build Change-Id: I4ff97919640f7a9e527291bf704ce806174e28be
* Include OkHttp source in core_api_filesNeil Fuller2018-09-241-0/+1
| | | | | | | | To enable inclusion in the core library APIs. Bug: 113148576 Test: build only Change-Id: I238221de7eaf4df74a81facb661b14ba4a192e52
* Comment fixes / remove use of java_library_staticNeil Fuller2018-09-211-2/+4
| | | | | | | | | | Comment fixes / remove use of java_library_static. I'm told java_library_static is equivalent to java_library now. Bug: 113148576 Test: None Change-Id: I49658ce882c647e133fb39b79e5e79a92c4f4a8d
* Merge "Move .annotated.java files into an 'sdk' subdirectory."Treehugger Robot2018-09-181-2/+2
|\
| * Move .annotated.java files into an 'sdk' subdirectory.Pete Gillin2018-09-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | All of the current annotations are intended for use in the SDK build, and live at ojluni/annotations. In order to make room for annotated stubs for other purposes, this change moves them. There is a README that describes the intended directory structure. (N.B. Validation of the nullability stubs is not landed yet but is described here in anticipation.) Bug: 115746226 Test: `make api-stubs-docs` Change-Id: I7cfbdb5dc9888f796eb1f384155fce33125a7d9e
* | Merge "core-tests: Add test xml."Treehugger Robot2018-09-171-0/+2
|\ \
| * | core-tests: Add test xml.Simran Basi2018-09-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Adding a test xml for core-tests. Bug: 71899243 Test: Verified the config got installed with 'make core-tests -j' Test: atest libcore/luni/src/test/java/libcore/javax/net/ssl/SSLSocketTest.java Change-Id: Ia1a732604b66afe37d4687a1df1b848481b59549
* | | Revert "Enable and demonstrate Java 9 language features in libcore."Fan Zhang2018-09-131-4/+0
| |/ |/| | | | | | | | | | | | | | | | | This reverts commit 8e1ef5143df1ce5f84c190030068008089f0af4d. Fixes: 115656946 Bug: 112443425 Reason for revert: b/115656946 Change-Id: I1d95b2125327515eb0a4f2b276d4bce9b8aa74df
* | Enable and demonstrate Java 9 language features in libcore.Tobias Thierer2018-09-121-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL demonstrates that Java 9 language features are supported in libcore, and serves as a regression test. Because the Java 9 language sources added are part of libart sources, targets that include full libart sources (as opposed to libart stubs or oj sources) now require java_version: "1.9" in order to build. Supported Java 9 language features are: - private interface methods - try-with-resources on effectively final variables - diamond operator on anonymous classes - @SafeVarargs annotation on private method Not supported: - JSR 376 modules. Bug: 112443425 Test: cts-tradefed run cts -m CtsLibcoreTestCases Test: Patched this CL on top of the internal master branch and checked: 1.) make checkbuild docs cts droid 2.) cts-tradefed run cts -m CtsLibcoreTestCases \ -t libcore.libcore.internal.Java9LanguageFeaturesTest Change-Id: I94f9248befbc8a99d1b3a36da43d7c283bc0c36b
* | For metalava target, use droidstubs instead of droiddocNan Zhang2018-09-111-4/+3
| | | | | | | | | | | | | | | | droidstubs is used to generate stubs files only. Test: m -j api-stubs-docs Bug: b/8d0763849 Change-Id: I8d93b1fee8e6a5d4091f919e2a6872f4c1da9423
* | Add a core API / split out mmodule/libartNeil Fuller2018-09-071-63/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Contains: 1) Adds a core API surface for use by framework.jar, etc. (which is distinct from the intra-core API surface for internal "core" use). 2) Move rules related to intra-core dependencies into mmodules/Android.bp 3) Add mmodules/libart. To be joined later by mmodules/oj Various renames and tidy ups are included to reduce duplication and make things clearer now there are two APIs: core.intra and core.api. Also removes some usages of the term mmodule because at least two people don't like it. Bug: 113148576 Test: build / boot Test: CTS: run cts -m CtsLibcoreSimpleMModuleTestCases Test: CTS: run cts -m CtsLibcoreCoreApiTestCases Change-Id: Id43bf55c83ffcdcb2181a5aa203a14d7c83a764c
* | Pull out a file_group for javadoc/stubs filesNeil Fuller2018-09-061-8/+11
| | | | | | | | | | | | | | | | A tidy up / follow up from a review comment in: https://android-review.googlesource.com/c/platform/libcore/+/745848 Test: build only Change-Id: Ieeb6f69665c0259b1bf9fe77d6fa4f24e343dc04
* | Build file tidy upsNeil Fuller2018-09-051-1/+6
| | | | | | | | | | | | | | | | | | Build file tidy ups based on ccross@ comments in: https://android-review.googlesource.com/c/platform/libcore/+/745848 Test: build only Bug: 113148576 Change-Id: I70ed383ddbb9aead566629abcad6443a72fde237
* | Remove a target to see who complainsNeil Fuller2018-09-041-47/+2
| | | | | | | | | | | | | | | | | | | | core-docs is potentially useful but I haven't seen anyone using it recently. This commit removes it and it can be added back if somebody wants it and they can handle the maintenance. Test: build only Change-Id: I51b07ffab26f6d78683ea8868342a0451c9ced13
* | Mark out an mmodule API surface / add bi-dir depsNeil Fuller2018-09-041-5/+46
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces the term "mmodule" in place of "module" for the thing that is being prototyped; "module" is a heavily overloaded term so the extra "m" is intended to make it easier to track / understand what "type of" module is involved. Important parts of this commit: + {simple mmodule}.TestClass has been renamed to DemoSimpleClass to distinguish it from a test and new similar class being added in libart (DemoLibartClass). + Adds the @IntraCoreMModuleApi annotation; it is used to indicate API members that form part of a "core" mmodule contract (either incoming or outgoing dependency of a libcore mmodule) that must be kept stable. + Annotates parts of the DemoSimpleClass to make them part of the "simple mmodule API" contract. + Adds a method in the simple mmodule that isn't annotated to demonstrate (Java) public methods that are not part of the mmodule contract. + Includes a new target "core-simple.mmodule.stubs" which generates the simple mmodule API stubs. + Includes a new target "core-all.mmodule.stubs" which generates the mmodule API stubs for the core-all library. + Adds bi-direction dependencies between parts of the boot classpath. This makes the code a more realistic part of "core" for prototyping / demostration purposes: - DemoSimpleClass (now) has a method that calls through to a method on DemoLibartClass to demonstrate a dependency from {simple mmodule} onto core-libart. - DemoLibartClass has a similar arrangement going in the other direction making core-libart depend on {simple mmodule} (making a bi-dir dependency but without an infinite loop at runtime). + A test has been added for DemoLibartClass in the CtsLibcoreSimpleMModuleTestCases to confirm the bi-dir behavior in an automated test. Bug: 113148576 Test: make checkbuild / make cts Test: CTS: run cts -m CtsLibcoreSimpleModuleTestCases Change-Id: I5564d6be61eba4c0116e91c601e32208da104f02
* Merge "Revert "Revert "Switch to Metalava to generate libcore docs"""Treehugger Robot2018-08-211-3/+4
|\
| * Revert "Revert "Switch to Metalava to generate libcore docs""Nan Zhang2018-08-211-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1dd1f6194b26ef9ab6518e695907619b82202d50. Reason for revert: Switch to Metalava to generate libcore docs, attempt 2. This is the second attempt to merge this CL. The first attempt failed because it break all robolectric tests. Tor located the issue that "--exclude-annoations" should not affect runtime annoations in Metalava. This issue was fixed by go/oag/735473 Test: make RunSettingLibRoboTests -j40 Bug: b/78245848 Change-Id: Icb5e8ced6ebabc14ac9e79202b09af8b5523ff57
* | Merge "Remove ojluni.jaif and associated machinery."Pete Gillin2018-08-211-40/+0
|\ \
| * | Remove ojluni.jaif and associated machinery.Pete Gillin2018-08-201-40/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes ojluni.jaif, which no longer contains any annotations data. It removes annotated_java_files.bp, which contained a list of files mentioned in ojluni.jaif. It removes the tooling and build rules around keeping annotated_java_files.bp up to date. And it removes all references to the generated source files from the libcore droiddoc targets. Bug: 111639530 Test: `make docs` output is unaffected Test: `make core-docs` Change-Id: I44ae36c3940abb0173a64669564b244b72c7ff9f
* | | Merge "Revert "Switch to Metalava to generate libcore docs""Treehugger Robot2018-08-201-4/+3
|\ \ \ | |/ / |/| / | |/
| * Revert "Switch to Metalava to generate libcore docs"Fan Zhang2018-08-201-4/+3
| | | | | | | | | | | | | | | | | | | | Bug: b/70351683 b/78245848 This reverts commit 3e70a825960bf360279f750e1c2001b3fd789f07. Reason for revert: Breaks robolectric tests Change-Id: Ie42c06d45560616ebf44754f3ea198639da38282
* | Merge "Switch to Metalava to generate libcore docs"Nan Zhang2018-08-201-3/+4
|\|
| * Switch to Metalava to generate libcore docsNan Zhang2018-08-171-3/+4
| | | | | | | | | | | | Test: m -j core-docs Bug: b/70351683 b/78245848 Change-Id: I172f89358c89beddca4d5241b067451a2101766a
* | Add metalava dokka target for libcore droiddoc.Nan Zhang2018-08-171-0/+16
|/ | | | | | Test: m -j metalava-dokka-core-docs Bug: b/72394196 Change-Id: Id6bf9e3d24f2c885156cc1d77bb55082d823ce6d
* Remove dependency of some libcore modules on framework libraries.Roland Levillain2018-08-171-0/+3
| | | | | | | | | | Namely modules "core-tests", "core-ojtests", and "core-ojtests-public". This dependency breaks builds using the master-art manifest. Test: Rely on the ART Buildbot Change-Id: I26fcce6b500da777a7c3bfb1f69631cc277b7936
* Convert libcore tests to Android.bpColin Cross2018-08-161-4/+160
| | | | | | | | | | Bug: 71899243 Test: m checkbuild Test: atest CtsLibcoreTestCases Test: atest CtsLibcoreJsr166TestCases Test: atest CtsFileSystemTestCases Test: mmma libcore EXPERIMENTAL_USE_OPENJDK9=true Change-Id: Ic41b671055f1c9c802e5b7fc9f70c17da7be4e7d
* Fix paths in the comments for core-docs target.Pete Gillin2018-08-131-2/+2
| | | | | | | | | A couple of the paths describing where the output of this target appears appear to have changed at some point. This comment updates the comments that describe the behaviour accordingly. Test: `make core-docs` and verify that the files appear at the given paths Change-Id: I6d63960bf2bfb4b4cd20ef9d185c90a29f4f7ebc
* Merge "Migrate annotations of two ojluni classes to Java stubs."Treehugger Robot2018-08-131-0/+6
|\
| * Migrate annotations of two ojluni classes to Java stubs.Pete Gillin2018-08-071-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change migrates the first two classes' nullability annotations from JAIF to Java stubs, as a proof of concept. It is a noop in the resulting stubs, i.e. it does not change metalava-api-stubs-docs.jar. This change makes it obvious that Iterable is missing some annotations. They will be added later (to make this change a pure refactoring). This adopts a convention for the naming of the annotated stub files which is intended to (a) make it obvious which 'real' source files they correspond to, but (b) not risk anyone confusing the annotated stub file and the real source file. (From a technical perspective, the only requirement is that the file names end with .java.) Bug: 111639530 Test: `make make metalava-api-stubs-docs` Change-Id: I8ad322194a3818ac00416bc631325162228ed07c
* | Merge "Mark installable jars with installable: true"Colin Cross2018-07-101-0/+4
|\| | | | | | | | | | | am: c42963dd3b Change-Id: I6be60160975c50b37ec0ebbab6811961e32a95aa
| * Mark installable jars with installable: trueColin Cross2018-06-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Most jars don't need to be installed on the device. Instead of using java_library and java_library_static to distinguish between them make java_library and java_library_static identical and use installable: true to identify the few jars that need to be dexed and installed on the device. Bug: 110885583 Test: m checkbuild Change-Id: Ic51aa79dfc4aba435b6c2cb896968447133f313d
* | Merge "Libcore: Fix or hide ConstantOverflow errorprone warnings"Andreas Gampe2018-06-181-0/+1
|\| | | | | | | | | | | am: c23c7943e3 Change-Id: I86c729d0f0b2cf46160e98059ece0f391d4ce91e
| * Merge "Libcore: Fix or hide ConstantOverflow errorprone warnings"Andreas Gampe2018-06-181-0/+1
| |\
| | * Libcore: Fix or hide ConstantOverflow errorprone warningsAndreas Gampe2018-06-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Hide ConstantOverflow in oj code and tests. Mark the warning as suppressed in harmony tests. Bug: 110155920 Test: m javac-check RUN_ERROR_PRONE=true Change-Id: I3aacd13ea726eca999d6f4b64e1e74264bebc3af
* | | Merge "core.current.stubs: Support compiling under OpenJDK 9 javac -target 1.9"Tobias Thierer2018-06-141-0/+3
|\| | | | | | | | | | | | | | | | | am: 06a79ca338 Change-Id: Iac579ffbe8653d8c84ae26d10b779d4c53815efe
| * | core.current.stubs: Support compiling under OpenJDK 9 javac -target 1.9Tobias Thierer2018-06-121-0/+3
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL adds --patch-module=java.base=. to the javac command line used to compile the stub sources; since those sources are compiled with an empty bootclasspath (--system=none), javac 9 otherwise doesn't count the compiled sources as part of java.base, and therefore doesn't find the package java.lang within it. The associated error message ("Unable to find package java.lang in classpath or bootclasspath") is slightly vague/misleading, but the --patch-module argument is similarly used in the core-all build target. Test: USE_R8=true EXPERIMENTAL_USE_OPENJDK=true make checkbuild Bug: 38177569 Change-Id: I54992284f4f95c91e82e6fa83b84f27a2b3a1435
* | Merge "Revert "Add a trivial kotlin test to LibcoreCtsTestCases."" am: ↵Pete Gillin2018-05-091-10/+0
|\| | | | | | | | | | | | | | | ee9a1db6cd am: 50c86c2561 Change-Id: I3d52310411435dfa155c0cf78d27b79f31e2bad8
| * Revert "Add a trivial kotlin test to LibcoreCtsTestCases."Pete Gillin2018-05-091-10/+0
| | | | | | | | | | | | | | | | | | | | This reverts commit a5c14e28ec5c3ec6014c1d0d7de6a0b8d40e5c6f. Reason for revert: No longer needed. Bug: 73281388 Test: Treehugger Change-Id: Ifbfe2905b23431ea1f9ef8950451ee911593955d
* | Merge "Add a trivial kotlin test to LibcoreCtsTestCases." am: 92ea10b905Pete Gillin2018-04-201-0/+10
|\| | | | | | | | | | | am: 28243de43e Change-Id: I2637279df2426356bb0686a8ab3e38ddc891088d
| * Add a trivial kotlin test to LibcoreCtsTestCases.Pete Gillin2018-04-191-0/+10
| | | | | | | | | | | | | | | | | | | | | | This test just proves that test code written in kotlin and using the kotlin standard library can be executed on the device. (It may well be reverted once enough kotlin is around that this is no longer in question.) Bug: 73281388 Test: cts-tradefed run cts-dev -m CtsLibcoreTestCases -t libcore.example (also tested that it fails without the @Ignore on the failing test) Change-Id: Id49802abc4ba2cfd9a971693ef2853f4e54e8b77
* | Merge "Migrate core.current.stubs generation to Soong." am: 1209f65aacColin Cross2018-03-291-0/+31
|\| | | | | | | | | | | am: b1bce09e62 Change-Id: I0442dada23ea7dc698d642262c42a28475694490
| * Migrate core.current.stubs generation to Soong.Nan Zhang2018-03-231-0/+31
| | | | | | | | | | | | | | | | | | | | | | Since Soong now supports droiddoc generation. Move this to Soong. Test: Generated old jar; Generated new jar; find /tmp/new -type f -name "*.class" -exec md5sum {} \+ | ( cd /tmp/old; md5sum -c --quiet ) Bug: b/70351683 Change-Id: I9cef9ca40dea32c7cb6087dae18340f4b23142fa
* | Merge "Revert "Revert "Remove libcore Make based droiddoc target.""" am: ↵Nan Zhang2018-03-221-0/+15
|\| | | | | | | | | | | | | | | 8373e5911d am: 1e709b212b Change-Id: Idc24f6c1e1544ec3a2754a4a386cd298d941db21
| * Revert "Revert "Remove libcore Make based droiddoc target.""Nan Zhang2018-03-221-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit Ia80d84e8577ea2beee349e3135ca730a6f7057f8. Reason for revert: line 317 in JavaLibrary.mk: include $(LOCAL_PATH)/Docs.mk should not be removed This fixed the broken build AOSP:master-art:art/tools/buildbot-build.sh --host Test: Generated old libcore docs: m out/target/common/docs/libcore-timestamp Generated new libcore docs: m core-docs Compared outputs: find ~/android/aosp/out/soong/.intermediates/libcore/core-docs/android-common/docs/out \ -type f -exec md5sum {} \+ | ( cd ~/android/aosp/out/target/common/docs/libcore; md5sum -c --quiet ) Change-Id: I10ae7eff5026a9866acfd188429e5e443bb94240
* | Merge "Revert "Remove libcore Make based droiddoc target."" am: 4f42833a3cNicolas Geoffray2018-03-211-15/+0
|\| | | | | | | | | | | am: 930dee93e3 Change-Id: Ie3775627148600e71f6fe1019776800c48485a8a
| * Revert "Remove libcore Make based droiddoc target."Nicolas Geoffray2018-03-211-15/+0
| | | | | | | | | | | | | | | | | | | | Reverting as it broke ART builds (try art/tools/buildbot-build.sh --host) , and also +2er didn't realize the CL was in autosubmit. Bug: b/70351683 This reverts commit 10db737a7869a808d7cd896d00379ecaa0768cbd. Change-Id: Ia80d84e8577ea2beee349e3135ca730a6f7057f8