summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libvndksupport/Android.bp2
-rw-r--r--libvndksupport/linker.cpp (renamed from libvndksupport/linker.c)9
2 files changed, 7 insertions, 4 deletions
diff --git a/libvndksupport/Android.bp b/libvndksupport/Android.bp
index e5b536cae..f4544a14c 100644
--- a/libvndksupport/Android.bp
+++ b/libvndksupport/Android.bp
@@ -3,7 +3,7 @@ subdirs = ["tests"]
cc_library {
name: "libvndksupport",
native_bridge_supported: true,
- srcs: ["linker.c"],
+ srcs: ["linker.cpp"],
cflags: [
"-Wall",
"-Werror",
diff --git a/libvndksupport/linker.c b/libvndksupport/linker.cpp
index 84c21324f..057e5b197 100644
--- a/libvndksupport/linker.c
+++ b/libvndksupport/linker.cpp
@@ -23,8 +23,10 @@
#include <sys/types.h>
#include <unistd.h>
-__attribute__((weak)) extern struct android_namespace_t* android_get_exported_namespace(const char*);
-__attribute__((weak)) extern void* android_dlopen_ext(const char*, int, const android_dlextinfo*);
+__attribute__((weak)) extern "C" struct android_namespace_t* android_get_exported_namespace(
+ const char*);
+__attribute__((weak)) extern "C" void* android_dlopen_ext(const char*, int,
+ const android_dlextinfo*);
static const char* namespace_name = NULL;
@@ -67,7 +69,8 @@ void* android_load_sphal_library(const char* name, int flag) {
struct android_namespace_t* vendor_namespace = get_vendor_namespace();
if (vendor_namespace != NULL) {
const android_dlextinfo dlextinfo = {
- .flags = ANDROID_DLEXT_USE_NAMESPACE, .library_namespace = vendor_namespace,
+ .flags = ANDROID_DLEXT_USE_NAMESPACE,
+ .library_namespace = vendor_namespace,
};
void* handle = NULL;
if (android_dlopen_ext != NULL) {