summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
author Jooyung Han <jooyung@google.com> 2019-10-15 09:21:19 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2019-10-15 09:21:19 +0000
commit3453a37f5e6246d12e94742c9ab7fb65bf6511d4 (patch)
treefedc63c29685d3ea28da6b9c5f16157e9b814a73 /libs
parent7f13f05ea59218e75e87491ac2c9b8b95a41a2b8 (diff)
parent6b92a6d3830a0f428adf0a2c7ecc53d52c37aa90 (diff)
Merge changes from topic "add-vndk-apex"
* changes: libbinder: Consider VNDK_APEX as vendor stable Make libbinder available to VNDK APEX
Diffstat (limited to 'libs')
-rw-r--r--libs/binder/Android.bp1
-rw-r--r--libs/binder/Parcel.cpp2
-rw-r--r--libs/binder/include/binder/Stability.h2
-rw-r--r--libs/binder/ndk/include_platform/android/binder_stability.h9
4 files changed, 9 insertions, 5 deletions
diff --git a/libs/binder/Android.bp b/libs/binder/Android.bp
index 643a956b4a..e5646ef701 100644
--- a/libs/binder/Android.bp
+++ b/libs/binder/Android.bp
@@ -73,6 +73,7 @@ cc_library {
// or dessert updates. Instead, apex users should use libbinder_ndk.
apex_available: [
"//apex_available:platform",
+ "com.android.vndk.current",
// TODO(b/139016109) remove these three
"com.android.media.swcodec",
"test_com.android.media.swcodec",
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp
index e5c7d74e23..32e06cd94d 100644
--- a/libs/binder/Parcel.cpp
+++ b/libs/binder/Parcel.cpp
@@ -509,7 +509,7 @@ void Parcel::updateWorkSourceRequestHeaderPosition() const {
}
}
-#if defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__)
+#if defined(__ANDROID_APEX_COM_ANDROID_VNDK_CURRENT__) || (defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__))
constexpr int32_t kHeader = B_PACK_CHARS('V', 'N', 'D', 'R');
#else
constexpr int32_t kHeader = B_PACK_CHARS('S', 'Y', 'S', 'T');
diff --git a/libs/binder/include/binder/Stability.h b/libs/binder/include/binder/Stability.h
index 2894482f55..b2f51d381c 100644
--- a/libs/binder/include/binder/Stability.h
+++ b/libs/binder/include/binder/Stability.h
@@ -81,7 +81,7 @@ private:
VINTF = 0b111111,
};
-#if defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__)
+#if defined(__ANDROID_APEX_COM_ANDROID_VNDK_CURRENT__) || (defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__))
static constexpr Level kLocalStability = Level::VENDOR;
#else
static constexpr Level kLocalStability = Level::SYSTEM;
diff --git a/libs/binder/ndk/include_platform/android/binder_stability.h b/libs/binder/ndk/include_platform/android/binder_stability.h
index b03fce1e39..924812e43d 100644
--- a/libs/binder/ndk/include_platform/android/binder_stability.h
+++ b/libs/binder/ndk/include_platform/android/binder_stability.h
@@ -20,7 +20,8 @@
__BEGIN_DECLS
-#if defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__)
+#if defined(__ANDROID_APEX_COM_ANDROID_VNDK_CURRENT__) || \
+ (defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__))
/**
* This interface has the stability of the vendor image.
@@ -31,7 +32,8 @@ static inline void AIBinder_markCompilationUnitStability(AIBinder* binder) {
AIBinder_markVendorStability(binder);
}
-#else // defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__)
+#else // defined(__ANDROID_APEX_COM_ANDROID_VNDK_CURRENT__) || (defined(__ANDROID_VNDK__) &&
+ // !defined(__ANDROID_APEX__))
/**
* This interface has the stability of the system image.
@@ -42,7 +44,8 @@ static inline void AIBinder_markCompilationUnitStability(AIBinder* binder) {
AIBinder_markSystemStability(binder);
}
-#endif // defined(__ANDROID_VNDK__) && !defined(__ANDROID_APEX__)
+#endif // defined(__ANDROID_APEX_COM_ANDROID_VNDK_CURRENT__) || (defined(__ANDROID_VNDK__) &&
+ // !defined(__ANDROID_APEX__))
/**
* This interface has system<->vendor stability