summaryrefslogtreecommitdiffstats
path: root/src/mapi
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2012-01-24 11:34:42 -0500
committerMatt Turner <[email protected]>2012-01-24 11:34:42 -0500
commit027ce0c493a85c863df88b43f61aea34bcd4cd58 (patch)
treef845bb4ce46ffe9dfa3e77ed88f51d4e354ade96 /src/mapi
parenta208468e04353239f2876cc2013f860b48a4f1c1 (diff)
Revert "Always build shared glapi"
This reverts commit adefee50d954151f76150af80207081ae3c247d9. Shared glapi was never tested with --enable-xlib-glx and turns out to cause a lot of problems. Conflicts: configure.ac
Diffstat (limited to 'src/mapi')
-rw-r--r--src/mapi/glapi/Makefile13
-rw-r--r--src/mapi/glapi/gen/glX_proto_send.py6
2 files changed, 19 insertions, 0 deletions
diff --git a/src/mapi/glapi/Makefile b/src/mapi/glapi/Makefile
index 37b178eee39..bb4ed6585d9 100644
--- a/src/mapi/glapi/Makefile
+++ b/src/mapi/glapi/Makefile
@@ -15,6 +15,7 @@ glapi_CPPFLAGS := \
-I$(TOP)/src/mapi \
-I$(TOP)/src/mesa
+ifeq ($(SHARED_GLAPI),1)
glapi_CPPFLAGS += \
-DMAPI_MODE_BRIDGE \
-DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
@@ -23,6 +24,14 @@ glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
glapi_GLAPI_OBJECTS :=
glapi_ASM_OBJECTS :=
glapi_MAPI_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
+else
+glapi_CPPFLAGS += -DMAPI_MODE_UTIL
+glapi_SOURCES := $(GLAPI_SOURCES) $(addprefix $(MAPI)/, $(MAPI_UTIL_SOURCES))
+
+glapi_GLAPI_OBJECTS := $(GLAPI_SOURCES:.c=.o)
+glapi_ASM_OBJECTS := $(GLAPI_ASM_SOURCES:.S=.o)
+glapi_MAPI_OBJECTS := $(MAPI_UTIL_SOURCES:.c=.o)
+endif # SHARED_GLAPI
glapi_OBJECTS := \
$(glapi_GLAPI_OBJECTS) \
@@ -50,10 +59,14 @@ clean:
-rm -f lib$(TARGET).a
-rm -f depend depend.bak
+ifeq ($(SHARED_GLAPI),1)
# workaround a bug in makedepend
makedepend_CPPFLAGS := \
$(filter-out -DMAPI_ABI_HEADER=%, $(glapi_CPPFLAGS))
$(glapi_OBJECTS): glapi_mapi_tmp.h
+else
+makedepend_CPPFLAGS := $(glapi_CPPFLAGS)
+endif
depend: $(glapi_SOURCES)
@ echo "running $(MKDEP)"
diff --git a/src/mapi/glapi/gen/glX_proto_send.py b/src/mapi/glapi/gen/glX_proto_send.py
index 29bf0808bac..bec0222188f 100644
--- a/src/mapi/glapi/gen/glX_proto_send.py
+++ b/src/mapi/glapi/gen/glX_proto_send.py
@@ -361,6 +361,8 @@ const GLuint __glXDefaultPixelStore[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 1 };
procs[n] = func.static_glx_name(n)
print """
+#ifdef GLX_SHARED_GLAPI
+
static const struct proc_pair
{
const char *name;
@@ -394,6 +396,8 @@ __indirect_get_proc_address(const char *name)
return (pair) ? pair->proc : NULL;
}
+
+#endif /* GLX_SHARED_GLAPI */
"""
return
@@ -1047,7 +1051,9 @@ extern _X_HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupVendorRequest(
break
print ''
+ print '#ifdef GLX_SHARED_GLAPI'
print 'extern _X_HIDDEN void (*__indirect_get_proc_address(const char *name))(void);'
+ print '#endif'
def show_usage():