Mesa (master): android: adapt to the megadriver mechanism

Emil Velikov evelikov at kemper.freedesktop.org
Mon Jun 9 21:59:35 UTC 2014


Module: Mesa
Branch: master
Commit: aba0f152be5bbc9fa844a53014bde7c02f056e4f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aba0f152be5bbc9fa844a53014bde7c02f056e4f

Author: Adrian Negreanu <adrian.m.negreanu at intel.com>
Date:   Fri Jun  6 12:16:06 2014 +0300

android: adapt to the megadriver mechanism

Fixes linker error:
  ld:
  .../libmesa_dri_common_intermediates/libmesa_dri_common.a(dri_util.o):
    in function globalDriverAPI:dri_util.c(.data.rel+0x0): error:
    undefined reference to 'driDriverAPI'

As an example, you can see that mesa_dri_drivers
also uses common/libmegadriver_stub (src/mesa/drivers/dri/Makefile.am)

The _stub part might be confusing, but
it actually provides the dri-driver shared lib constructor,
megadriver_stub_init, which will later on load the real
platform dependent part and call
l __driDriverGetExtensions_<platform>

Cc: "10.1 10.2" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Adrian Negreanu <adrian.m.negreanu at intel.com>
Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>

---

 src/mesa/drivers/dri/Android.mk        |    1 +
 src/mesa/drivers/dri/common/Android.mk |   17 +++++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/src/mesa/drivers/dri/Android.mk b/src/mesa/drivers/dri/Android.mk
index 9adf0b3..e0cf51c 100644
--- a/src/mesa/drivers/dri/Android.mk
+++ b/src/mesa/drivers/dri/Android.mk
@@ -43,6 +43,7 @@ MESA_DRI_C_INCLUDES := \
 
 MESA_DRI_WHOLE_STATIC_LIBRARIES := \
 	libmesa_glsl \
+	libmegadriver_stub \
 	libmesa_dri_common \
 	libmesa_dricore
 
diff --git a/src/mesa/drivers/dri/common/Android.mk b/src/mesa/drivers/dri/common/Android.mk
index 0489a32..a172a0b 100644
--- a/src/mesa/drivers/dri/common/Android.mk
+++ b/src/mesa/drivers/dri/common/Android.mk
@@ -86,3 +86,20 @@ $(intermediates)/xmlpool/options.h: $$(PRIVATE_SCRIPT) $$(PRIVATE_TEMPLATE_HEADE
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
+
+#
+# Build libmegadriver_stub
+#
+
+include $(CLEAR_VARS)
+include $(LOCAL_PATH)/Makefile.sources
+
+LOCAL_MODULE := libmegadriver_stub
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+LOCAL_C_INCLUDES := \
+    $(MESA_DRI_C_INCLUDES)
+
+LOCAL_SRC_FILES := $(megadriver_stub_FILES)
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)




More information about the mesa-commit mailing list