summaryrefslogtreecommitdiffstats
path: root/core/install_jni_libs.mk
Commit message (Collapse)AuthorAgeFilesLines
* Don't extract jni from prebuilt apks.Ying Wang2015-06-011-5/+5
| | | | | | | | | | | | | | | | | | | | - We don't need LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES now, for we always page-align jni shared libraries and store them umcompressed. - For prebuilt apks, we don't extract jni any more; Instead we always run uncompress-shared-libs on them. - For apks built from source, we still install the jni separately, because that way multiple apks can share the same jni and it saves space. With this change, for most prebuilt apks, we don't need to specify LOCAL_PREBUILT_JNI_LIBS ("@lib/<abi>/foo.so") any more, for the build system automatically replaces the embedded jni with uncompressed files; But if a prebuilt is a fat apk (i.e. containing jni not needed by the current product architecture), you still need LOCAL_PREBUILT_JNI_LIBS to specify what jni to keep. Otherwise all embedded jni will be replaced with uncompressed files, that wastes space. Bug: 8076853 Change-Id: Ic3666dc72bf17cd293787414dd185470b365f967
* Revert "Don't extract jni from prebuilt apks."Ying Wang2015-05-041-5/+5
| | | | | | | | This reverts commit 3797466fbd31cc3ca5a1eddea64e7fdf0921ea67. Bug: 20810492 Bug: 20811499 Change-Id: Ic922d9daccc4550db489c0f3d4ad6b4ff85b5e60
* Don't extract jni from prebuilt apks.Ying Wang2015-05-011-5/+5
| | | | | | | | | | | | | | | | | | | | - We don't need LOCAL_PAGE_ALIGN_JNI_SHARED_LIBRARIES now, for we always page-align jni shared libraries and store them umcompressed. - For prebuilt apks, we don't extract jni any more; Instead we always run uncompress-shared-libs on them. - For apks built from source, we still install the jni separately, because that way multiple apks can share the same jni and it saves space. With this change, for most prebuilt apks, we don't need to specify LOCAL_PREBUILT_JNI_LIBS ("@lib/<abi>/foo.so") any more, for the build system automatically replaces the embedded jni with uncompressed files; But if a prebuilt is a fat apk (i.e. containing jni not needed by the current product architecture), you still need LOCAL_PREBUILT_JNI_LIBS to specify what jni to keep. Otherwise all embedded jni will be replaced with uncompressed files, that wastes space. Bug: 8076853 Change-Id: Icf07e0998ac3602e6e05e80fed836fbafca33e01
* Fix missing rs_compatibility_jni_libs.Ying Wang2014-06-301-0/+2
| | | | | Bug: 15935150 Change-Id: I2971bcf4a9fa96e7a5098a759ecc67ba4f565b6c
* Support to add JNI of both archs in multilib build.Ying Wang2014-06-251-89/+59
| | | | | | | | | | | Use "LOCAL_MULTILIB := both" to install jni libraries of both archs in multilib build. The build system will package jni of both archs to the apk, or install them to the right location on the system image and create symlinks, extract .so files from prebuilt apk, etc if appropriate. Bug: 15849902 Change-Id: I7e147b5a47db476584c38250de7b36c75ea40d81
* Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib buildYing Wang2014-05-201-1/+1
| | | | | | | | | | We already support pure 32-bit and 64-bit-by-default multilib build. With HOST_PREFER_32_BIT we can build 32-bit-by-default multilib build. This will be lest disruptive during the period we transition to 64-bit-by-default. Bug: 13751317 Change-Id: I0d56ce4abbe4afeaacfd70d709f6a349791c0722
* Support to extract JNI libs from prebuilt APKYing Wang2014-05-201-3/+39
| | | | | | | | | | | | | | | | | Use LOCAL_PREBUILT_JNI_LIBS to install prebuilt JNI libraries extracted from the prebuilt apk, or prebuilts as source, to the app specific lib path. LOCAL_PREBUILT_JNI_LIBS accepts 2 kinds of files: - Files like @path/to/libfoo.so (path inside the apk) are JNI libs extracted from the prebuilt apk. In this case, all embedded JNI libs inside the prebuilt apk are stripped. - Files like path/to/libfoo.so (path relative to LOCAL_PATH) are prebuilts in the source tree. Those prebuilt JNI libs are not defined as modules in the build system, so this works around possible module name conflict. Bug: 13170859 Change-Id: I91bb844cc11b3621a85733bc7e8910f168957ef0
* Update rules to install JNI libraries.Ying Wang2014-04-181-0/+85
Previously we have to use LOCAL_REQUIRED_MODULES to install jni libraries for an apk in bundled build. With this change, we'll use LOCAL_JNI_SHARED_LIBRARIES alone to install jni shared libraries. The new rules are: - If we are doing unbundled build, or the apk isn't going to be installed to system partitions, we'll embed the jni libs in the built apk. - Otherwise, the jni libraries will be installed to the system lib path, and symlinks created in the app specific lib path. Change-Id: Id6bd5301eb632bda3593664acee580f0d8b1d5d4