Mesa: update to Mesa-7.9, add Gallium support for nouveau driver

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2010-10-14 12:17:12 +02:00
parent c8c73a370c
commit 4bdeb8265a
5 changed files with 27 additions and 116 deletions

View File

@ -2,6 +2,8 @@
. config/options $1 . config/options $1
$SCRIPTS/build libxml2-host
$SCRIPTS/build talloc
$SCRIPTS/build expat $SCRIPTS/build expat
$SCRIPTS/build glproto $SCRIPTS/build glproto
$SCRIPTS/build dri2proto $SCRIPTS/build dri2proto
@ -15,6 +17,26 @@ $SCRIPTS/build libX11
get_graphicdrivers get_graphicdrivers
MESA_CONFIG="--disable-gallium-nouveau --disable-gallium-i915 --disable-gallium-i965 --disable-gallium-radeon --disable-gallium-r600 --disable-gallium-svga"
for drv in $GRAPHIC_DRIVERS; do
[ $drv = i915 ] && \
MESA_CONFIG=`echo $MESA_CONFIG | sed -e 's/disable-gallium-intel/disable-gallium-intel/'`
[ $drv = i965 ] && \
MESA_CONFIG=`echo $MESA_CONFIG | sed -e 's/disable-gallium-intel/disable-gallium-intel/'`
[ $drv = radeon ] && \
MESA_CONFIG=`echo $MESA_CONFIG | sed -e 's/disable-gallium-radeon/disable-gallium-radeon/'`
[ $drv = r600 ] && \
MESA_CONFIG=`echo $MESA_CONFIG | sed -e 's/disable-gallium-r600/disable-gallium-r600/'`
[ $drv = nouveau ] && \
MESA_CONFIG=`echo $MESA_CONFIG | sed -e 's/disable-gallium-nouveau/enable-gallium-nouveau/'`
done
# ensure we dont use size optimization. # ensure we dont use size optimization.
CFLAGS=`echo $CFLAGS | sed -e "s|-Os|-O3|"` CFLAGS=`echo $CFLAGS | sed -e "s|-Os|-O3|"`
CXXFLAGS=`echo $CXXFLAGS | sed -e "s|-Os|-O3|"` CXXFLAGS=`echo $CXXFLAGS | sed -e "s|-Os|-O3|"`
@ -48,14 +70,9 @@ DRI_DRIVER_SEARCH_DIR="$XORG_PATH_DRI" \
--with-dri-drivers=$MESA_DRIVERS \ --with-dri-drivers=$MESA_DRIVERS \
--with-dri-driverdir="$XORG_PATH_DRI" \ --with-dri-driverdir="$XORG_PATH_DRI" \
--with-xorg-driver-dir="$XORG_PATH_DRIVERS" \ --with-xorg-driver-dir="$XORG_PATH_DRIVERS" \
--disable-gallium \ $MESA_CONFIG \
make -C src/glsl CC=$HOST_CC CFLAGS="$HOST_CFLAGS" LDFLAGS="$HOST_LDFLAGS" make
mv src/glsl/apps/compile ./host_compile
make clean
make GLSL_CL="\$(TOP)/host_compile"
$MAKEINSTALL -C src/mesa $MAKEINSTALL -C src/mesa
$MAKEINSTALL -C src/glu $MAKEINSTALL -C src/glu

View File

@ -4,6 +4,7 @@
$SCRIPTS/install libXdamage $SCRIPTS/install libXdamage
$SCRIPTS/install libdrm $SCRIPTS/install libdrm
$SCRIPTS/install talloc
$SCRIPTS/install expat $SCRIPTS/install expat
$SCRIPTS/install libXext $SCRIPTS/install libXext
$SCRIPTS/install libXfixes $SCRIPTS/install libXfixes
@ -19,3 +20,4 @@ mkdir -p $INSTALL/usr/lib
mkdir -p $INSTALL/usr/lib/dri mkdir -p $INSTALL/usr/lib/dri
cp -P $PKG_BUILD/lib/*_dri.so $INSTALL/usr/lib/dri || true cp -P $PKG_BUILD/lib/*_dri.so $INSTALL/usr/lib/dri || true
cp -P $PKG_BUILD/lib/gallium/*_dri.so $INSTALL/usr/lib/dri || true

View File

@ -1,73 +0,0 @@
From 8f13c69e7658df3a97e388f210dae175639d6d8d Mon Sep 17 00:00:00 2001
From: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri, 16 Jul 2010 12:24:53 +0100
Subject: [PATCH] intel: Fix invalidate before initialisation
Fixes:
Bug 29091 - 1.9RC5 server crash when starting GLX 1.3 app with mesa 7.8
Intel dri2 driver.
https://bugs.freedesktop.org/show_bug.cgi?id=29091
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
src/mesa/drivers/dri/common/dri_util.c | 2 +-
src/mesa/drivers/dri/intel/intel_screen.c | 19 +++++++++++++++----
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/mesa/drivers/dri/common/dri_util.c b/src/mesa/drivers/dri/common/dri_util.c
index 75c9882..9a9bfed 100644
--- a/src/mesa/drivers/dri/common/dri_util.c
+++ b/src/mesa/drivers/dri/common/dri_util.c
@@ -432,7 +432,7 @@ driCreateNewDrawable(__DRIscreen *psp, const __DRIconfig *config,
*/
(void) attrs;
- pdp = malloc(sizeof *pdp);
+ pdp = calloc(1, sizeof *pdp);
if (!pdp) {
return NULL;
}
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c
index 6e4bb64..083b7bb 100644
--- a/src/mesa/drivers/dri/intel/intel_screen.c
+++ b/src/mesa/drivers/dri/intel/intel_screen.c
@@ -102,10 +102,21 @@ static const __DRItexBufferExtension intelTexBufferExtension = {
intelSetTexBuffer2,
};
+static inline struct intel_context *
+to_intel_context(__DRIdrawable *drawable)
+{
+ if (drawable->driContextPriv == NULL)
+ return NULL;
+
+ return drawable->driContextPriv->driverPrivate;
+}
+
static void
intelDRI2Flush(__DRIdrawable *drawable)
{
- struct intel_context *intel = drawable->driContextPriv->driverPrivate;
+ struct intel_context *intel = to_intel_context(drawable);
+ if (!intel)
+ return;
if (intel->gen < 4)
INTEL_FIREVERTICES(intel);
@@ -117,9 +128,9 @@ intelDRI2Flush(__DRIdrawable *drawable)
static void
intelDRI2Invalidate(__DRIdrawable *drawable)
{
- struct intel_context *intel = drawable->driContextPriv->driverPrivate;
-
- intel->using_dri2_swapbuffers = GL_TRUE;
+ struct intel_context *intel = to_intel_context(drawable);
+ if (intel)
+ intel->using_dri2_swapbuffers = GL_TRUE;
dri2InvalidateDrawable(drawable);
}
--
1.7.1

View File

@ -1,35 +0,0 @@
diff -Naur mesa-7.1rc1-20080706.orig/bin/mklib mesa-7.1rc1-20080706/bin/mklib
--- mesa-7.1rc1-20080706.orig/bin/mklib 2008-07-06 14:09:54.000000000 +0200
+++ mesa-7.1rc1-20080706/bin/mklib 2008-07-06 14:11:03.000000000 +0200
@@ -211,9 +211,9 @@
if [ "x$LINK" = "x" ] ; then
# -linker was not specified so set default link command now
if [ $CPLUSPLUS = 1 ] ; then
- LINK=g++
+ LINK=$CXX
else
- LINK=gcc
+ LINK=$CC
fi
fi
diff -Naur mesa-7.1rc1-20080706.orig/configs/linux-dri mesa-7.1rc1-20080706/configs/linux-dri
--- mesa-7.1rc1-20080706.orig/configs/linux-dri 2008-07-06 14:09:54.000000000 +0200
+++ mesa-7.1rc1-20080706/configs/linux-dri 2008-07-06 14:16:00.000000000 +0200
@@ -14,6 +14,7 @@
#MKDEP_OPTIONS = -MF depend
OPT_FLAGS = -O2 -g
+HOST_OPT_FLAGS = $(OPT_FLAGS)
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
@@ -29,6 +30,8 @@
CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
+HOST_CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
+ $(HOST_OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)

View File

@ -1 +1 @@
ftp://freedesktop.org/pub/mesa/7.8.2/MesaLib-7.8.2.tar.bz2 ftp://freedesktop.org/pub/mesa/7.9/MesaLib-7.9.tar.bz2