Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5beffc9 authored by Steven Moreland's avatar Steven Moreland
Browse files

binder: consistent vendor #defines

There is mixed use of __ANDROID_VNDK__
and __ANDROID_VENDOR__, so make sure they
are set consistently.

This is only possible because the VNDK is
deprecated. Before this, __ANDROID_VNDK__
may be set without __ANDROID_VENDOR__ (and I
think some of the logic in libbinder was
probably wrong at that point).

Bug: N/A
Test: N/A
Change-Id: I9cf106ab8309520229ae9e23e7d5c42ab3e425cf
parent ed022f7b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -258,7 +258,9 @@ cc_defaults {
        "-DBINDER_DISABLE_NATIVE_HANDLE",
        "-DBINDER_DISABLE_BLOB",
        "-DBINDER_NO_LIBBASE",
        // TODO: switch to "vendor: true" rather than copying this
        // Trusty libbinder uses vendor stability for its binders
        "-D__ANDROID_VENDOR__",
        "-D__ANDROID_VNDK__",
        "-U__ANDROID__",
        "-D__TRUSTY__",
+8 −0
Original line number Diff line number Diff line
@@ -73,6 +73,14 @@ void Stability::tryMarkCompilationUnit(IBinder* binder) {
    (void)setRepr(binder, getLocalLevel(), REPR_NONE);
}

// after deprecation of the VNDK, these should be aliases. At some point
// all references to __ANDROID_VNDK__ should be replaced by __ANDROID_VENDOR__
// but for right now, check that this condition holds because some
// places check __ANDROID_VNDK__ and some places check __ANDROID_VENDOR__
#if defined(__ANDROID_VNDK__) != defined(__ANDROID_VENDOR__)
#error "__ANDROID_VNDK__ and __ANDROID_VENDOR__ should be aliases"
#endif

Stability::Level Stability::getLocalLevel() {
#ifdef __ANDROID_APEX__
#error "APEX can't use libbinder (must use libbinder_ndk)"
+1 −0
Original line number Diff line number Diff line
@@ -69,6 +69,7 @@ GLOBAL_COMPILEFLAGS += \
	-DBINDER_DISABLE_NATIVE_HANDLE \
	-DBINDER_DISABLE_BLOB \
	-DBINDER_NO_LIBBASE \
	-D__ANDROID_VENDOR__ \
	-D__ANDROID_VNDK__ \

MODULE_DEPS += \
+1 −0
Original line number Diff line number Diff line
@@ -72,6 +72,7 @@ MODULE_EXPORT_COMPILEFLAGS += \
	-DBINDER_DISABLE_NATIVE_HANDLE \
	-DBINDER_DISABLE_BLOB \
	-DBINDER_NO_LIBBASE \
	-D__ANDROID_VENDOR__ \
	-D__ANDROID_VNDK__ \

# libbinder has some deprecated declarations that we want to produce warnings