mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 05:36:47 +00:00
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:
parent
c8c73a370c
commit
4bdeb8265a
@ -2,6 +2,8 @@
|
||||
|
||||
. config/options $1
|
||||
|
||||
$SCRIPTS/build libxml2-host
|
||||
$SCRIPTS/build talloc
|
||||
$SCRIPTS/build expat
|
||||
$SCRIPTS/build glproto
|
||||
$SCRIPTS/build dri2proto
|
||||
@ -15,6 +17,26 @@ $SCRIPTS/build libX11
|
||||
|
||||
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.
|
||||
CFLAGS=`echo $CFLAGS | 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-driverdir="$XORG_PATH_DRI" \
|
||||
--with-xorg-driver-dir="$XORG_PATH_DRIVERS" \
|
||||
--disable-gallium \
|
||||
$MESA_CONFIG \
|
||||
|
||||
make -C src/glsl CC=$HOST_CC CFLAGS="$HOST_CFLAGS" LDFLAGS="$HOST_LDFLAGS"
|
||||
mv src/glsl/apps/compile ./host_compile
|
||||
|
||||
make clean
|
||||
|
||||
make GLSL_CL="\$(TOP)/host_compile"
|
||||
make
|
||||
|
||||
$MAKEINSTALL -C src/mesa
|
||||
$MAKEINSTALL -C src/glu
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
$SCRIPTS/install libXdamage
|
||||
$SCRIPTS/install libdrm
|
||||
$SCRIPTS/install talloc
|
||||
$SCRIPTS/install expat
|
||||
$SCRIPTS/install libXext
|
||||
$SCRIPTS/install libXfixes
|
||||
@ -19,3 +20,4 @@ mkdir -p $INSTALL/usr/lib
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/dri
|
||||
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
|
||||
|
@ -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
|
||||
|
@ -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)
|
||||
|
@ -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
|
Loading…
x
Reference in New Issue
Block a user