summaryrefslogtreecommitdiff
path: root/NativeCode.bp
AgeCommit message (Collapse)Author
2020-01-19Merge "Make some build targets visible to art sdk"Treehugger Robot
2020-01-17apex_available becomes more correctJiyong Park
Previously, Soong didn't follow the static dependencies when checking apex_available. As a result, a module that is not available to an APEX (or to the platform) was able to be statically linked from the APEX (or the platform). As the Soong bug is fixed, unchecked dependencies have revealed and this change reflects the finding. Bug: 147671264 Test: m Change-Id: I7927760f78c7eea49d9354bfa822ad369ef8600e
2020-01-16Make some build targets visible to art sdkPaul Duffin
Bug: 142935992 Test: m art-module-sdk art-module-host-exports art-module-test-exports Change-Id: Id9e0deb00ae5382a48f0ad7a0b353d84d14dd76e
2019-12-19Revert submission 1194828-revert-1191937-art_apex_available-DWXQGTKMARJiyong Park
Reason for revert: relanding with fix Reverted Changes: Ic4119368c:Revert submission 1191937-art_apex_available Ia084976bb:Revert submission 1191937-art_apex_available Iada86226d:Revert submission 1191937-art_apex_available Ic76735eac:Revert submission 1191937-art_apex_available I1eb30e355:Revert submission 1191937-art_apex_available Icaf95d260:Revert submission 1191937-art_apex_available Ie8bace4be:Revert submission 1191937-art_apex_available I8961702cf:Revert submission 1191937-art_apex_available I39316f9ef:Revert submission 1191937-art_apex_available I522a7e83b:Revert submission 1191937-art_apex_available I8b9424976:Revert submission 1191937-art_apex_available I48b998629:Revert submission 1191937-art_apex_available Change-Id: Id409b14e0fcb26fe943ad057a0e8d5d127e5cde9
2019-12-19Merge "Revert submission 1191937-art_apex_available"Joseph Murphy
2019-12-19Revert submission 1191937-art_apex_availableJoseph Murphy
Original Commit Message: """ Rename modules that are APEX-only The renamed modules are only available for APEXes, but not for the platform. Use the <module_name>.<apex_name> syntax to correctly install the APEX variant of the modules. """ Reason for revert: Build Cop - Breaks about 15 AOSP targets, with high confidence due to these changes being the only non-robot changes in those builds. Reverted Changes: I190ce2d10:Use apex_available property I990e0a67e:Use apex_available property I0d1295683:Revert "Avoid duplicated classes for boot dex jars... I5fb725403:Find the jar libraries in APEX from the correct pa... I322b1efcc:Rename modules that are APEX-only Ifa2bd0f8f:Use apex_available property Iac6533177:Use apex_available property Ie999602c6:Use apex_available property I2a3d73397:Use apex_available property Ic91bcbb9a:Use apex_available property Ia6c324eed:Use apex_available property I964d0125c:Use apex_available property Change-Id: Ic4119368c4166ef878c9eb4a5bf14b66bf73dc54
2019-12-19Merge "Use apex_available property"Jiyong Park
2019-12-18Make libandroidio visible to externals/conscryptJooyung Han
libjavacrypto(externals/conscrypt) dlopen()s libandroidio and this is tracked by 'runtime_libs' prop in externals/conscrypt/Android.bp. Bug: 144659031 Test: m Change-Id: I7f8ff046293a4c47e01366e541d2161add37eb9f
2019-12-16Use apex_available propertyJiyong Park
Use apex_available property to prevent modules that are only for the ART apex from being used outside of the APEX. Bug: 128708192 Bug: 133140750 Test: m Change-Id: I190ce2d10bd1626b420227a726072c5ac4d85d94
2019-10-08Revert "Use stable ICU symbols (non-version-specific suffix) in libopenjdk"vichang
This reverts commit 8f37b14adfdc977ad08184c152d69db9d759c1e0. Reason for revert: ART benchmark is broken Change-Id: I85212250356aaa1476eef40e80e57249cde423be
2019-10-04Use stable ICU symbols (non-version-specific suffix) in libopenjdkVictor Chang
Bug: 138994281 Test: m droid Change-Id: Ib9ba0a627c8d82388754b1c02615e84da68fa8e7
2019-07-12Switch from deprecated include_dirs to local_include_dirsPaul Duffin
Also removed subdirs variable which is ignored. Bug: 134379140 Test: TH Change-Id: Iac2db7938079f7ec2186042999ab4cade0747cbe
2019-07-02Set default visibility to privatePaul Duffin
Takes advantage of a new mechanism for specifying the default visibility of all modules in a package to restrict the visibility of libcore modules as much as possible: package {default_visibility: ["//visibility:private"]} Bug: 133290645 Bug: 134379140 Test: m droid Change-Id: I2ba1a6131993d218fd65cd4a8f0ad29a7a83df14
2019-06-20Move IcuRegistration class to external/icuNeil Fuller
Move IcuRegistration class to external/icu for sharing with other code. See the associated change in external/icu. Bug: 120493361 Test: See external/icu change Change-Id: I3ddfa073b6dc40ac3fbc90e1cf5cecd8339a4e55
2019-03-28Add dependency on libdl_androiddimitry
platform private symbols have been moved to libdl_android.so since they are not intended to be accessible from apps. Test: make Bug: http://b/129387775 Change-Id: I4e74aed595eeb61fd956b7fc9b07c2cd60ccc29b (cherry picked from commit b026bae8b183c1007d06b6143243be809b50f704)
2019-03-22Move AsynchronousCloseMonitor to its own library.Pete Bentley
This change introduces a new shared library, libandroidio, which encapsulates native IO related APIs that we want to expose, currently only intra-core but longer term they may be useful to the framework (e.g. LocalSocket and friends). Bug: 122881655 Bug: 123744297 Test: m && flashall Test: atest CtsLibcoreOkHttpTestCases Test: atest CtsLibcoreTestCases Change-Id: I4c903d86a41d9ad0337b8e9d17ff0ed129c52413
2019-02-06Move AsynchronousCloseMonitor to libjavacore.Pete Bentley
Final resting place tbd (see b/122881655) but this gets it out of libnativehelper. Bug: 122881655 Test: m && flashall Test: atest CtsLibcoreOkHttpTestCases:com.squareup.okhttp.CallTest Change-Id: I4354dd90f2ce5fa18734974efd1b6bad49ec0307
2019-01-07libopenjdk: Drop obsolete -W-no-deprecated-declarations.Tobias Thierer
Now that bug 64362645 is fixed, it is no longer required. Bug: 64362645 Test: The following still works, but fails if the parent CL is reverted: make libopenjdk libopenjdkd Test: Treehugger Change-Id: I999a93ccd289bb85e122bf9b696e44071f895cde
2019-01-02Whitelist libcore to build against libicuuc and libicui18n directlyVictor Chang
JNI code for core-libart (libjavacore) and core-oj (libopenjdk) are in the runtime APEX. We want them to use libicuuc and libicui18n contained within the runtime APEX, rather than calling ICU4C via the limited subset shim library that the APEX provides to platform components outside of the APEX. Whitelist the libs by adding -DANDROID_LINK_SHARED_ICU4C. Without it, external/icu/android_icu4c/include/uconfig_local.h would prevent compilation. Bug: 117094880 Test: m checkbuild Change-Id: Ie1aaa0be3710a9a39bc20b630171b3c1915fc770
2018-12-05Remove unused libjavacore dependency on libutils.Pete Bentley
Bug: 119090773 Test: make && flashall Change-Id: Ia54ad8b29b405bec180c57dc48db76778e9999a0
2018-11-29libjavacore does not need to depend on libfdlibm.Pete Bentley
Bug: 119090773 Test: atest CtsLibcoreTestCases:libcore.java.lang.StrictMathTest Test: atest CtsLibcoreTestCases:org.apache.harmony.tests.java.lang.StrictMathTest Change-Id: I03034ea4334ff0b50d8d05e3a5e01591e7a58a89
2018-11-26Simplify InMemoryDexClassLoaderTest libSearchPath testDavid Brazdil
Do not attempt to copy a native library. Instead create an empty temp file and check that ClassLoader::findLibrary returns the correct path. This is consistent with PathClassLoaderTest. Bug: 35458580 Test: CtsLibcoreTestCases Test: art/tools/run-libcore-tests.sh Change-Id: I41ac37a05781fdb5487b6e253ce720cd324ef1b1
2018-11-21Support libSearchPath for InMemoryDexClassLoaderDavid Brazdil
InMemoryDexClassLoader currently does not have a constructor which would allow users to set the library search path and therefore the class loader cannot be used to load code which depends on a native library outside of the system library search path. This patch adds such a constructor. It also annotates params of InMemoryDexClassLoader constructors with @Nullable and @NonNull. Test: InMemoryDexClassLoaderTest Bug: 35458580 Change-Id: I8762f37a1c2cd01ba6c6dca84117c15838ae1971
2018-11-06Remove dependency on libsslNeil Fuller
libssl appears not to be needed. Bug: 119090773 Test: build Change-Id: I044d7b49054f54c2d6d4bdd14b912024660ed009
2018-08-13Move libcore/include to point of useNeil Fuller
Move the ScopedIcuLocale.h and ScopedJavaUnicodeString.h to the places they are used. Remove the pretence that libcore/ is in the business of providing native utility code and this should make that more obvious. Test: Build Bug: 111055375 Change-Id: I5113a2a5275cf4e1dcc52782bc957986af35f9c3
2018-06-13Revert^2 "Reimplement ojluni JNI_OnLoad from scratch."Vladimir Marko
This reverts commit 70cd18f61218aa0fa8b7d3ce47b28553fd9ddca1. The initialization order has been fixed by moving Float, Double and System to the beginning as they are needed for resizing StringBuilder's internal buffer, used for class initializers of some other classes, notably Inet*Addrees. Also change libbase to be dynamically linked to avoid multiple definitions of gMinimumLogSeverity which caused some tests to fail as dalvikvm would initialize a copy in the libbase.so but JVM_Exit() would use its own copy in the libopenjdkd.so, ignoring the requested verbosity. Test: Pixel 2 XL boots. Test: cts-tradefed run cts --m vm-tests-tf Test: cts-tradefed run cts -d -m CtsLibcoreTestCases Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Test: Repeat previous 2 tests without preloaded-classes. (cherry picked from commit 1ba8b2ff33dd4cd3b60a82cb49f72b35922f36c3) Change-Id: I2e5ca42615136ad77c368fb6ab75d18dc0734800 Merged-In: I4bb977e00f5c0028cafb000d70159043c5ec9fb9
2018-02-27Reformat Android.bp fileLogan Chien
This commit replaces `=` with `:`, which is more idiomatic. Besides, this commit adds a space character after the colon and add a comma at the end of the list. Test: aosp_sailfish-userdebug builds Change-Id: I861e0201c3f894c1004f758855ebfaa64bfff05c
2017-11-08Move libcore tests to non-libcore packages.Tobias Thierer
The integration of OpenJDK 9 javac into the Android build system requires non-libcore code to live in non-libcore packages, as long as that code isn't considered part of the same module as libcore at javac time. This CL moves libcore test related classes out of such packages; since libcore tests could already only test public (as opposed to package private APIs), no change other than the package name and imports is necessary. Because many libcore tests already live below a top-level package "libcore" (eg., the tests for java.util are in libcore.java.util), this CL likewise prepends "libcore." to the package names of affected classes. For classes relating to libcore.* packages, this results in a package name of the form "libcore.libcore.*". Alternative considered but not pursued: To compile the test classes without moving the out of a libcore package, javac would need to consider them to be in the same module as libcore. This would likely be possible via javac --patch-module, but this has not been explored in detail because: - Most luni tests are already in a toplevel package libcore.*, so this CL makes the test structure more consistent. - Use of --patch-module would likely cause problems when running tests under a runtime that implements the OpenJDK 9 module system; for example, --patch-module cannot add exported packages to the module, so any new packages added in tests (such as the libcore.* packages of most existing luni tests) would not be visible at test runtime. - Having tests in different packages from code under tests makes it more obvious (including to IDEs in which the code might be edited as a single project) that these tests cannot access package-private identifiers in the code under test. Test: Treehugger Test: "make cts" with EXPERIMENTAL_USE_OPENJDK9=true passes with additional changes present locally that have not yet been exported as CLs. Test: CtsLibcoreTestCases Bug: 68224249 Bug: 68932217 (tracks potential follow-up work) Change-Id: Ib6b8e6f3bc87093bc219d2108e601163c6e334cd
2017-10-02Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]]Dan Willemsen
In the future, target.linux will apply to all targets running a linux kernel (android, linux_glibc, linux_bionic). So move all current users to the specific linux_glibc. There will be another cleanup pass later that will move some instances back to target.linux if the properties should be shared with target.android and target.linux_bionic, but target.linux needs to be removed first. Test: out/soong/build.ninja identical before/after Change-Id: Ib89cce2ed559701bac953c91444bedcd2aa89030 Exempt-From-Owner-Approval: build system cleanup
2017-09-27Rename libz-host -> libzDan Willemsen
Test: m host Change-Id: I67439cf5a4f5b5eb824467eba4b357fa1f10c8a7
2017-09-14Convert libcore native code to Android.bpColin Cross
See build/soong/README.md for more information. Reapplies Ibf27f08e22f544582271bbe04af17cff278bd996 with fix for CtsLibcoreTestCases. Test: m -j checkbuild Test: libjavacore-unit-tests Test: cts-tradefed run cts -m CtsLibcoreTestCases -t dalvik.system.JniTest Change-Id: Ia4d7eb3f8ba4b97428606bb60df34dc1256eeaa1
2017-09-14Revert "Convert libcore native code to Android.bp"Colin Cross
This reverts commit ae545c35af04cc4097ae78b65084ac57a28a597f. Reason for revert: Broke libcore CTS tests Bug: 65664537 Change-Id: Ia7cf6604efc870e4d121f4acec0da97f48ea219b
2017-09-11Convert libcore native code to Android.bpColin Cross
See build/soong/README.md for more information. Test: m -j checkbuild Test: libjavacore-unit-tests Change-Id: Ibf27f08e22f544582271bbe04af17cff278bd996