Mesa-master:

- disable shared build of drivers, this dont work
This commit is contained in:
Stephan Raue 2009-09-25 05:05:45 +02:00
parent 690191f2f2
commit 35e5c31cad
3 changed files with 118 additions and 2 deletions

View File

@ -0,0 +1,115 @@
diff -Naur mesa-7.5-rc2.orig/src/mesa/drivers/directfb/Makefile mesa-7.5-rc2/src/mesa/drivers/directfb/Makefile
--- mesa-7.5-rc2.orig/src/mesa/drivers/directfb/Makefile 2009-05-16 21:13:42.000000000 +0200
+++ mesa-7.5-rc2/src/mesa/drivers/directfb/Makefile 2009-05-16 21:14:33.000000000 +0200
@@ -25,7 +25,7 @@
DIRECTFBGL_MESA = libidirectfbgl_mesa.so
-LIBS = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+LIBS = $(TOP)/src/mesa/libmesa.so $(TOP)/src/mesa/libglapi.so
.c.o:
diff -Naur mesa-7.5-rc2.orig/src/mesa/drivers/dri/Makefile.template mesa-7.5-rc2/src/mesa/drivers/dri/Makefile.template
--- mesa-7.5-rc2.orig/src/mesa/drivers/dri/Makefile.template 2009-05-16 21:13:42.000000000 +0200
+++ mesa-7.5-rc2/src/mesa/drivers/dri/Makefile.template 2009-05-16 21:15:21.000000000 +0200
@@ -1,6 +1,6 @@
# -*-makefile-*-
-MESA_MODULES = $(TOP)/src/mesa/libmesa.a
+MESA_MODULES = $(TOP)/src/mesa/libmesa.so
COMMON_GALLIUM_SOURCES = \
../common/utils.c \
diff -Naur mesa-7.5-rc2.orig/src/mesa/drivers/fbdev/Makefile mesa-7.5-rc2/src/mesa/drivers/fbdev/Makefile
--- mesa-7.5-rc2.orig/src/mesa/drivers/fbdev/Makefile 2009-05-16 21:13:42.000000000 +0200
+++ mesa-7.5-rc2/src/mesa/drivers/fbdev/Makefile 2009-05-16 21:15:36.000000000 +0200
@@ -19,7 +19,7 @@
-I$(TOP)/src/mesa \
-I$(TOP)/src/mesa/main
-CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+CORE_MESA = $(TOP)/src/mesa/libmesa.so $(TOP)/src/mesa/libglapi.so
.c.o:
diff -Naur mesa-7.5-rc3.orig/src/mesa/drivers/osmesa/Makefile mesa-7.5-rc3/src/mesa/drivers/osmesa/Makefile
--- mesa-7.5-rc3.orig/src/mesa/drivers/osmesa/Makefile.old 2009-06-06 09:40:32.000000000 +0200
+++ mesa-7.5-rc3/src/mesa/drivers/osmesa/Makefile 2009-06-06 09:40:58.000000000 +0200
@@ -21,7 +21,7 @@
# Standalone osmesa needs to be linked with core Mesa APIs
ifeq ($(DRIVER_DIRS), osmesa)
-CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+CORE_MESA = $(TOP)/src/mesa/libmesa.so $(TOP)/src/mesa/libglapi.so
else
CORE_MESA =
endif
diff -Naur mesa-7.5-rc2.orig/src/mesa/drivers/x11/Makefile mesa-7.5-rc2/src/mesa/drivers/x11/Makefile
--- mesa-7.5-rc2.orig/src/mesa/drivers/x11/Makefile 2009-05-16 21:13:42.000000000 +0200
+++ mesa-7.5-rc2/src/mesa/drivers/x11/Makefile 2009-05-16 21:16:36.000000000 +0200
@@ -44,7 +44,7 @@
-I$(TOP)/src/mesa/main \
$(X11_INCLUDES)
-CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+CORE_MESA = $(TOP)/src/mesa/libmesa.so $(TOP)/src/mesa/libglapi.so
diff -Naur mesa-7.5-rc2.orig/src/mesa/Makefile mesa-7.5-rc2/src/mesa/Makefile
--- mesa-7.5-rc2.orig/src/mesa/Makefile 2009-05-16 21:13:42.000000000 +0200
+++ mesa-7.5-rc2/src/mesa/Makefile 2009-05-16 21:18:38.000000000 +0200
@@ -20,8 +20,8 @@
# Default: build dependencies, then asm_subdirs, then convenience
-# libs (.a) and finally the device drivers:
-default: depend asm_subdirs libmesa.a libmesagallium.a libglapi.a \
+# libs (.so) and finally the device drivers:
+default: depend asm_subdirs libmesa.so libmesagallium.so libglapi.so \
driver_subdirs
@@ -30,24 +30,24 @@
# Helper libraries used by many drivers:
# Make archive of core mesa object files
-libmesa.a: $(MESA_OBJECTS)
- @ $(MKLIB) -o mesa -static $(MESA_OBJECTS)
+libmesa.so: $(MESA_OBJECTS)
+ @ $(MKLIB) -o mesa -dlopen $(MESA_OBJECTS)
# Make archive of subset of core mesa object files for gallium
-libmesagallium.a: $(MESA_GALLIUM_OBJECTS)
- @ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS)
+libmesagallium.so: $(MESA_GALLIUM_OBJECTS)
+ @ $(MKLIB) -o mesagallium -dlopen $(MESA_GALLIUM_OBJECTS)
# Make archive of gl* API dispatcher functions only
-libglapi.a: $(GLAPI_OBJECTS)
+libglapi.so: $(GLAPI_OBJECTS)
@if [ "${WINDOW_SYSTEM}" = "dri" ] ; then \
- touch libglapi.a ; \
+ touch libglapi.so ; \
else \
- $(MKLIB) -o glapi -static $(GLAPI_OBJECTS) ; \
+ $(MKLIB) -o glapi -dlopen $(GLAPI_OBJECTS) ; \
fi
######################################################################
# Device drivers
-driver_subdirs: libmesa.a libglapi.a
+driver_subdirs: libmesa.so libglapi.so
@ (cd drivers && $(MAKE))
@@ -153,7 +153,7 @@
clean:
-rm -f */*.o
-rm -f */*/*.o
- -rm -f depend depend.bak libmesa.a libglapi.a
+ -rm -f depend depend.bak libmesa.so libglapi.so
-rm -f drivers/*/*.o
-rm -f *.pc
-@cd drivers/dri && $(MAKE) clean

View File

@ -12,10 +12,11 @@ $SCRIPTS/install libX11
mkdir -p $INSTALL/usr/lib
cp -PR $PKG_BUILD/lib/libGL*.so* $INSTALL/usr/lib
# cp -PR $PKG_BUILD/src/mesa/libmesa*.so* $INSTALL/usr/lib
# cp -PR $PKG_BUILD/lib/libEGL.so* $INSTALL/usr/lib
mkdir -p $INSTALL/usr/lib/dri
cp -PR $PKG_BUILD/lib/libdricore.so $INSTALL/usr/lib/dri
#cp -PR $PKG_BUILD/lib/libdricore.so $INSTALL/usr/lib/dri
cp -PR $PKG_BUILD/lib/*_dri.so $INSTALL/usr/lib/dri
# cp -PR $PKG_BUILD/lib/gallium/EGL_*.so $INSTALL/usr/lib/dri

View File

@ -13,7 +13,7 @@ diff -up mesa-20080814/src/mesa/drivers/dri/Makefile.dricore mesa-20080814/src/m
-mkdir $(TOP)/$(LIB_DIR)
+libdricore.so:
+ gcc -shared -o libdricore.so -Wl,--whole-archive ../../libmesa.a -Wl,--no-whole-archive -lm -lpthread -lc
+ $(CC) -shared -o libdricore.so -Wl,--whole-archive ../../libmesa.a -Wl,--no-whole-archive -lm -lpthread -lc
+
+$(TOP)/$(LIB_DIR)/libdricore.so: $(TOP)/$(LIB_DIR) libdricore.so
+ $(INSTALL) libdricore.so $(TOP)/$(LIB_DIR)