diff options
author | Dan Willemsen <dwillemsen@google.com> | 2017-04-07 14:11:05 -0700 |
---|---|---|
committer | Steven Moreland <smoreland@google.com> | 2017-04-11 18:31:14 +0000 |
commit | f1c590a8e5b13d85d7d92cdd675b47f6ed38003d (patch) | |
tree | 27654a3a42e8292d780fae503c55d43c9ed4ab28 | |
parent | eac02f91b43006b8b9a38fb98d4bc417b1933c98 (diff) | |
download | googletest-f1c590a8e5b13d85d7d92cdd675b47f6ed38003d.tar.gz |
Mark as vendor_availableandroid-vts-8.0_r9android-vts-8.0_r8android-vts-8.0_r7android-vts-8.0_r6android-vts-8.0_r2android-vts-8.0_r13android-vts-8.0_r12android-vts-8.0_r11android-vts-8.0_r10android-vts-8.0_r1android-security-8.0.0_r54android-security-8.0.0_r53android-security-8.0.0_r52android-cts-8.0_r9android-cts-8.0_r8android-cts-8.0_r7android-cts-8.0_r6android-cts-8.0_r5android-cts-8.0_r4android-cts-8.0_r3android-cts-8.0_r26android-cts-8.0_r25android-cts-8.0_r24android-cts-8.0_r23android-cts-8.0_r22android-cts-8.0_r21android-cts-8.0_r20android-cts-8.0_r2android-cts-8.0_r19android-cts-8.0_r18android-cts-8.0_r17android-cts-8.0_r16android-cts-8.0_r15android-cts-8.0_r14android-cts-8.0_r13android-cts-8.0_r12android-cts-8.0_r11android-cts-8.0_r10android-cts-8.0_r1android-cts-7.1_r18android-8.0.0_r9android-8.0.0_r7android-8.0.0_r51android-8.0.0_r50android-8.0.0_r49android-8.0.0_r48android-8.0.0_r47android-8.0.0_r46android-8.0.0_r45android-8.0.0_r44android-8.0.0_r43android-8.0.0_r42android-8.0.0_r41android-8.0.0_r40android-8.0.0_r4android-8.0.0_r39android-8.0.0_r38android-8.0.0_r37android-8.0.0_r36android-8.0.0_r35android-8.0.0_r32android-8.0.0_r31android-8.0.0_r30android-8.0.0_r3android-8.0.0_r29android-8.0.0_r28android-8.0.0_r2android-8.0.0_r17android-8.0.0_r16android-8.0.0_r15android-8.0.0_r13android-8.0.0_r12android-8.0.0_r11android-8.0.0_r10android-8.0.0_r1security-oc-releaseoreo-vts-releaseoreo-security-releaseoreo-releaseoreo-r6-releaseoreo-r5-releaseoreo-r4-releaseoreo-r3-releaseoreo-r2-releaseoreo-devoreo-cts-release
By setting vendor_available, the following may become true:
* a prebuilt library from this release may be used at runtime by
in a later releasse (by vendor code compiled against this release).
so this library shouldn't depend on runtime state that may change
in the future.
* this library may be loaded twice into a single process (potentially
an old version and a newer version). The symbols will be isolated
using linker namespaces, but this may break assumptions about 1
library in 1 process (your singletons will run twice).
Background:
This means that these modules may be built and installed twice --
once for the system partition and once for the vendor partition. The
system version will build just like today, and will be used by the
framework components on /system. The vendor version will build
against a reduced set of exports and libraries -- similar to, but
separate from, the NDK. This means that all your dependencies must
also mark vendor_available.
At runtime, /system binaries will load libraries from /system/lib*,
while /vendor binaries will load libraries from /vendor/lib*. There
are some exceptions in both directions -- bionic(libc,etc) and liblog
are always loaded from /system. And SP-HALs (OpenGL, etc) may load
/vendor code into /system processes, but the dependencies of those
libraries will load from /vendor until it reaches a library that's
always on /system. In the SP-HAL case, if both framework and vendor
libraries depend on a library of the same name, both versions will be
loaded, but they will be isolated from each other.
It's possible to compile differently -- reducing your source files,
exporting different include directories, etc. For details see:
https://android-review.googlesource.com/368372
None of this is enabled unless the device opts into the system/vendor
split with BOARD_VNDK_VERSION := current.
Bug: 36426473
Bug: 36079834
Test: Android-aosp_arm.mk is the same before/after
Test: build.ninja is the same before/after
Test: build-aosp_arm.ninja is the same before/after
Test: attempt to compile with BOARD_VNDK_VERSION := current
Merged-In: I9722ac3b803d9dab8c01a714d72904fa4dd40196
Change-Id: I9722ac3b803d9dab8c01a714d72904fa4dd40196
-rw-r--r-- | googlemock/Android.bp | 2 | ||||
-rw-r--r-- | googletest/Android.bp | 10 |
2 files changed, 6 insertions, 6 deletions
diff --git a/googlemock/Android.bp b/googlemock/Android.bp index 0f2f9e5f..337c0540 100644 --- a/googlemock/Android.bp +++ b/googlemock/Android.bp @@ -61,6 +61,7 @@ cc_library_static { srcs: ["src/gmock-all.cc"], rtti: true, static_libs: ["libgtest"], + vendor_available: true, } cc_library_static { @@ -68,6 +69,7 @@ cc_library_static { defaults: ["gmock_defaults", "gmock_flags"], srcs: ["src/gmock_main.cc"], static_libs: ["libgtest"], + vendor_available: true, } // Deprecated: use libgmock instead diff --git a/googletest/Android.bp b/googletest/Android.bp index 3c8470fe..705c8235 100644 --- a/googletest/Android.bp +++ b/googletest/Android.bp @@ -14,12 +14,7 @@ cc_defaults { name: "libgtest_defaults", - local_include_dirs: [ - "include", - ], - export_include_dirs: [ - "include", - ], + export_include_dirs: ["include"], } cc_defaults { @@ -94,6 +89,7 @@ cc_library_static { name: "libgtest", defaults: ["libgtest_defaults", "libgtest_host_defaults"], host_supported: true, + vendor_available: true, srcs: ["src/gtest-all.cc"], rtti: true, } @@ -102,6 +98,7 @@ cc_library_static { name: "libgtest_main", defaults: ["libgtest_defaults", "libgtest_host_defaults"], host_supported: true, + vendor_available: true, clang: true, srcs: ["src/gtest_main.cc"], } @@ -123,6 +120,7 @@ cc_library { name: "libgtest_prod", defaults: ["libgtest_defaults", "libgtest_host_defaults"], host_supported: true, + vendor_available: true, export_include_dirs: ["include"], } |