File link-shared.diff of Package Mesa

--- src/mesa/Makefile
+++ src/mesa/Makefile
@@ -57,7 +57,11 @@
 		mimeset -f "$@" ; \
 	fi
 
-linux-solo: depend subdirs libmesa.a
+$(TOP)/$(LIB_DIR)/libmesa_private.so: $(SOLO_OBJECTS)
+	@ $(TOP)/bin/mklib -o mesa_private \
+		-install $(TOP)/$(LIB_DIR) $(SOLO_OBJECTS)
+
+linux-solo: depend subdirs libmesa.a $(TOP)/$(LIB_DIR)/libmesa_private.so
 	cd drivers/dri ; $(MAKE)
 
 
@@ -161,6 +165,7 @@
 	@if [ "${DRIVER_DIRS}" = "dri" ] ; then \
 		cd drivers/dri ; $(MAKE) install ; \
 	fi
+	$(INSTALL) $(TOP)/$(LIB_DIR)/libmesa_private.* $(DESTDIR)/$(INSTALL_DIR)/$(LIB_DIR)
 
 ## NOT INSTALLED YET:
 ## $(INSTALL) -d $(INSTALL_DIR)/include/GLES
--- src/mesa/drivers/dri/Makefile.template
+++ src/mesa/drivers/dri/Makefile.template
@@ -1,6 +1,6 @@
 # -*-makefile-*-
 
-MESA_MODULES = $(TOP)/src/mesa/libmesa.a
+MESA_MODULES = $(TOP)/$(LIB_DIR)/libmesa_private.so
 
 COMMON_SOURCES = \
         ../../common/driverfuncs.c \
@@ -77,7 +77,7 @@
 
 $(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
 	$(TOP)/bin/mklib -ldflags '$(LDFLAGS)' -noprefix -o $@ \
-		$(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
+		$(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS) -Wl,--undefined -Wl,--allow-shlib-undefined
 
 
 $(TOP)/$(LIB_DIR)/$(LIBNAME): $(LIBNAME)
--- src/mesa/drivers/dri/s3v/s3v_context.c
+++ src/mesa/drivers/dri/s3v/s3v_context.c
@@ -177,7 +177,8 @@
 	s3vInitExtensions( ctx );
 	s3vInitDriverFuncs( ctx );
 	s3vInitStateFuncs( ctx );
-	s3vInitSpanFuncs( ctx );
+        /* ???! not defined anywhere. WTF ?! */
+	/*s3vInitSpanFuncs( ctx );*/
 	s3vInitTextureFuncs( ctx );
 	s3vInitTriFuncs( ctx );
 	s3vInitState( vmesa );
--- src/mesa/x86/read_rgba_span_x86.S
+++ src/mesa/x86/read_rgba_span_x86.S
@@ -91,7 +91,6 @@
  */
 
 .globl _generic_read_RGBA_span_BGRA8888_REV_MMX
-.hidden _generic_read_RGBA_span_BGRA8888_REV_MMX
 	.type	_generic_read_RGBA_span_BGRA8888_REV_MMX, @function
 _generic_read_RGBA_span_BGRA8888_REV_MMX:
 	pushl	%ebx
@@ -191,7 +190,6 @@
  */
 
 .globl _generic_read_RGBA_span_BGRA8888_REV_SSE
-.hidden _generic_read_RGBA_span_BGRA8888_REV_SSE
 	.type	_generic_read_RGBA_span_BGRA8888_REV_SSE, @function
 _generic_read_RGBA_span_BGRA8888_REV_SSE:
 	pushl	%esi
@@ -358,7 +356,6 @@
 
 	.text
 .globl _generic_read_RGBA_span_BGRA8888_REV_SSE2
-.hidden _generic_read_RGBA_span_BGRA8888_REV_SSE2
 	.type	_generic_read_RGBA_span_BGRA8888_REV_SSE2, @function
 _generic_read_RGBA_span_BGRA8888_REV_SSE2:
 	pushl	%esi
@@ -568,7 +565,6 @@
 
 	.text
 	.globl	_generic_read_RGBA_span_RGB565_MMX
-        .hidden _generic_read_RGBA_span_RGB565_MMX
 	.type	_generic_read_RGBA_span_RGB565_MMX, @function
 
 _generic_read_RGBA_span_RGB565_MMX:
openSUSE Build Service is sponsored by