Added extra/mesa

This commit is contained in:
Mike Staszel 2010-05-28 11:56:52 -05:00
parent 1fa6ef5da1
commit 0a0b0f8ef0
4 changed files with 341 additions and 0 deletions

82
extra/mesa/LICENSE Executable file
View file

@ -0,0 +1,82 @@
Disclaimer
Mesa is a 3-D graphics library with an API which is very similar to
that of OpenGL*
To the extent that Mesa utilizes the OpenGL command syntax or state
machine, it is being used with authorization from Silicon Graphics,
Inc.(SGI). However, the author does not possess an OpenGL license
from SGI, and makes no claim that Mesa is in any way a compatible
replacement for OpenGL or associated with SGI. Those who want a
licensed implementation of OpenGL should contact a licensed
vendor.
Please do not refer to the library as MesaGL (for legal
reasons). It's just Mesa or The Mesa 3-D graphics
library
* OpenGL is a trademark of Silicon Graphics Incorporated.
License / Copyright Information
The Mesa distribution consists of several components. Different copyrights
and licenses apply to different components. For example, GLUT is copyrighted
by Mark Kilgard, some demo programs are copyrighted by SGI, some of the Mesa
device drivers are copyrighted by their authors. See below for a list of
Mesa's main components and the license for each.
The core Mesa library is licensed according to the terms of the MIT license.
This allows integration with the XFree86, Xorg and DRI projects.
The default Mesa license is as follows:
Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Attention, Contributors
When contributing to the Mesa project you must agree to the licensing terms
of the component to which you're contributing.
The following section lists the primary components of the Mesa distribution
and their respective licenses.
Mesa Component Licenses
Component Location Primary Author License
----------------------------------------------------------------------------
Main Mesa code src/mesa/ Brian Paul Mesa (MIT)
Device drivers src/mesa/drivers/* See drivers See drivers
Ext headers include/GL/glext.h SGI SGI Free B
include/GL/glxext.h
GLUT src/glut/ Mark Kilgard Mark's copyright
Mesa GLU library src/glu/mesa/ Brian Paul GNU-LGPL
SGI GLU library src/glu/sgi/ SGI SGI Free B
demo programs progs/demos/ various see source files
X demos progs/xdemos/ Brian Paul see source files
SGI demos progs/samples/ SGI SGI copyright
RedBook demos progs/redbook/ SGI SGI copyright

137
extra/mesa/PKGBUILD Executable file
View file

@ -0,0 +1,137 @@
# Maintainer: Mike Staszel <mikestaszel@plugboxlinux.org>
# Plugbox Modifications:
# Removed ATI, SIS, TDFX
pkgbase="mesa"
pkgname=('mesa' 'libgl' 'unichrome-dri' 'mga-dri' 'savage-dri')
pkgver=7.7.1
pkgrel=1
arch=(arm)
makedepends=('glproto>=1.4.11' 'pkgconfig' 'libdrm>=2.4.19' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1' 'libx11>=1.3.3' 'libxt>=1.0.7'
'gcc-libs>=4.4.3' 'dri2proto=2.1' 'python')
url="http://mesa3d.sourceforge.net"
license=('custom')
options=(!makeflags)
source=(ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2
#ftp://ftp.freedesktop.org/pub/mesa/${pkgver/.0.902//}RC/MesaLib-${pkgver/0.902/1-rc2}.tar.bz2
ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaDemos-${pkgver}.tar.bz2
#ftp://ftp.freedesktop.org/pub/mesa/${pkgver/.0.902//}RC/MesaDemos-${pkgver/0.902/1-rc2}.tar.bz2
ftp://ftp.archlinux.org/other/mesa/gl-manpages-1.0.1.tar.bz2
mesa-7.1-link-shared.patch
intel-revert-vbl.patch
LICENSE)
md5sums=('46664d99e03f1e3ac078a7fea02af115'
'aeb39645d80d656e0adebaa09e5bcd03'
'6ae05158e678f4594343f32c2ca50515'
'8420bed348e7016ef03cac6545d68389'
'a111f4dc82e894f8801bc3fa129af7af'
'5c65a0fe315dd347e09b1f2826a1df5a')
build() {
cd "${srcdir}/Mesa-${pkgver}"
#cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}"
patch -Np1 -i "${srcdir}/mesa-7.1-link-shared.patch" || return 1
patch -Np1 -i "${srcdir}/intel-revert-vbl.patch" || return 1
./configure --prefix=/usr \
--with-dri-driverdir=/usr/lib/xorg/modules/dri \
--with-dri-drivers=swrast,unichrome,mga,savage \
--disable-gallium-intel \
--enable-glx-tls \
--with-driver=dri \
--enable-xcb \
--disable-glut --disable-gallium || return 1
# --with-state-trackers=dri,egl \
# --enable-gallium-nouveau \
# --with-state-trackers=yes \ # gentoo: glx,dri,egl
# --disable-gallium build gallium [default=enabled]
# --disable-gallium-intel build gallium intel [default=enabled]
# --enable-gallium-radeon build gallium radeon [default=disabled]
# --enable-gallium-nouveau build gallium nouveau [default=disabled]
#ls src/Mesa-7.6/src/mesa/drivers/dri/
#common dri.pc.in fb ffb gamma glcore i810 i915 i965 intel mach64 mga r128 r200 r300 r600 radeon s3v savage sis swrast tdfx trident unichrome
#ls src/Mesa-7.6/src/gallium/drivers/
#cell failover i915simple i965simple identity llvmpipe nouveau nv04 nv10 nv20 nv30 nv40 nv50 r300 softpipe trace
make || return 1
cd "${srcdir}/gl-manpages-1.0.1"
./configure --prefix=/usr || return 1
make || return 1
}
package_libgl() {
depends=('libdrm>=2.4.17-2' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1')
pkgdesc="Mesa 3-D graphics library and DRI software rasterizer"
cd "${srcdir}/Mesa-${pkgver}" || return 1
# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}" || return 1
install -m755 -d "${pkgdir}/usr/lib" || return 1
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions"
bin/minstall lib/libGL.so* "${pkgdir}/usr/lib/" || return 1
cd src/mesa/drivers/dri
make -C swrast DESTDIR="${pkgdir}" install || return 1
install -m755 libdricore.so "${pkgdir}/usr/lib/xorg/modules/dri/" || return 1
ln -s libglx.xorg "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" || return 1
install -m755 -d "${pkgdir}/usr/share/licenses/libgl"
install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libgl/" || return 1
}
package_mesa() {
depends=('libgl' 'libx11>=1.3.2' 'libxt>=1.0.7' 'gcc-libs>=4.4.2' 'dri2proto=2.1' 'libdrm>=2.4.17-2')
pkgdesc="Mesa 3-D graphics libraries and include files"
cd "${srcdir}/Mesa-${pkgver}" || return 1
# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}" || return 1
make DESTDIR="${pkgdir}" install || return 1
install -m755 -d "${pkgdir}/usr/bin"
install -m755 progs/xdemos/glx{gears,info} "${pkgdir}/usr/bin/" || return 1
rm -f "${pkgdir}/usr/lib/libGL.so"*
rm -rf "${pkgdir}/usr/lib/xorg"
rm -f "${pkgdir}/usr/include/GL/glew.h"
rm -f "${pkgdir}/usr/include/GL/glxew.h"
rm -f "${pkgdir}/usr/include/GL/wglew.h"
cd "${srcdir}/gl-manpages-1.0.1" || return 1
make DESTDIR="${pkgdir}" install || return 1
install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa/" || return 1
}
package_unichrome-dri() {
depends=("libgl=${pkgver}")
pkgdesc="Mesa DRI drivers for S3 Graphics/VIA Unichrome"
cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1
# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1
make -C unichrome DESTDIR="${pkgdir}" install || return 1
}
package_mga-dri() {
depends=("libgl=${pkgver}")
pkgdesc="Mesa DRI drivers for Matrox"
conflicts=('xf86-video-mga<1.4.11')
cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1
# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1
make -C mga DESTDIR="${pkgdir}" install || return 1
}
package_savage-dri() {
depends=("libgl=${pkgver}")
pkgdesc="Mesa DRI drivers for S3 Sraphics/VIA Savage"
conflicts=('xf86-video-savage<2.3.1')
cd "${srcdir}/Mesa-${pkgver}/src/mesa/drivers/dri" || return 1
# cd "${srcdir}/Mesa-${pkgver/0.902/1-rc2}/src/mesa/drivers/dri" || return 1
make -C savage DESTDIR="${pkgdir}" install || return 1
}

View file

@ -0,0 +1,21 @@
commit 532d2051245a1d8afe7ca236f1d966d555bb121a
Author: Dave Airlie <airlied@linux.ie>
Date: Fri Sep 12 17:21:25 2008 +1000
Revert "intel: sync to vblank by default"
This reverts commit e9bf3e4cc9a7e4bcd4c45bd707541d26ecdf0409.
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c
index c193830..f02192d 100644
--- a/src/mesa/drivers/dri/intel/intel_screen.c
+++ b/src/mesa/drivers/dri/intel/intel_screen.c
@@ -55,7 +55,7 @@ PUBLIC const char __driConfigOptions[] =
DRI_CONF_BEGIN
DRI_CONF_SECTION_PERFORMANCE
DRI_CONF_FTHROTTLE_MODE(DRI_CONF_FTHROTTLE_IRQS)
- DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_ALWAYS_SYNC)
+ DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_DEF_INTERVAL_0)
/* Options correspond to DRI_CONF_BO_REUSE_DISABLED,
* DRI_CONF_BO_REUSE_ALL
*/

View file

@ -0,0 +1,101 @@
diff -up mesa-20091221/src/mesa/drivers/dri/Makefile.da mesa-20091221/src/mesa/drivers/dri/Makefile
--- mesa-20091221/src/mesa/drivers/dri/Makefile.da 2009-12-21 08:09:11.000000000 +1000
+++ mesa-20091221/src/mesa/drivers/dri/Makefile 2009-12-21 08:43:03.000000000 +1000
@@ -6,12 +6,17 @@ include $(TOP)/configs/current
-default: $(TOP)/$(LIB_DIR) subdirs dri.pc
+default: $(TOP)/$(LIB_DIR) $(TOP)/$(LIB_DIR)/libdricore.so subdirs dri.pc
$(TOP)/$(LIB_DIR):
-mkdir $(TOP)/$(LIB_DIR)
+libdricore.so:
+ gcc -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)
subdirs:
@for dir in $(DRI_DIRS) ; do \
@@ -32,12 +37,14 @@ dri.pc: dri.pc.in
$(pcedit) $< > $@
-install: dri.pc
+install: dri.pc $(TOP)/$(LIB_DIR)/libdricore.so
@for dir in $(DRI_DIRS) ; do \
if [ -d $$dir ] ; then \
(cd $$dir && $(MAKE) install) || exit 1 ; \
fi \
done
+ $(INSTALL) -d $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
+ $(INSTALL) -m 755 $(TOP)/$(LIB_DIR)/libdricore.so $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
$(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL/internal
$(INSTALL) -m 0644 $(TOP)/include/GL/internal/dri_interface.h \
$(DESTDIR)$(INSTALL_INC_DIR)/GL/internal
@@ -51,5 +58,6 @@ clean:
(cd $$dir && $(MAKE) clean) ; \
fi \
done
+ -rm -f libdricore.so $(TOP)/$(LIB_DIR)/libdricore.so
-rm -f common/*.o
-rm -f *.pc
diff -up mesa-20091221/src/mesa/drivers/dri/Makefile.template.da mesa-20091221/src/mesa/drivers/dri/Makefile.template
--- mesa-20091221/src/mesa/drivers/dri/Makefile.template.da 2009-12-21 08:09:11.000000000 +1000
+++ mesa-20091221/src/mesa/drivers/dri/Makefile.template 2009-12-21 08:43:40.000000000 +1000
@@ -1,6 +1,6 @@
# -*-makefile-*-
-MESA_MODULES = $(TOP)/src/mesa/libmesa.a
+MESA_MODULES = $(TOP)/$(LIB_DIR)/libdricore.so
COMMON_GALLIUM_SOURCES = \
../common/utils.c \
@@ -70,7 +70,8 @@ lib: symlinks subdirs depend
$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) Makefile \
$(TOP)/src/mesa/drivers/dri/Makefile.template
$(MKLIB) -o $@ -noprefix -linker '$(CC)' -ldflags '$(LDFLAGS)' \
- $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) \
+ $(OBJECTS) $(EXTRA_MODULES) $(WINOBJ) \
+ -L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -ldricore \
$(DRI_LIB_DEPS)
diff -up mesa-20091221/src/mesa/x86/read_rgba_span_x86.S.da mesa-20091221/src/mesa/x86/read_rgba_span_x86.S
--- mesa-20091221/src/mesa/x86/read_rgba_span_x86.S.da 2009-12-21 08:09:11.000000000 +1000
+++ mesa-20091221/src/mesa/x86/read_rgba_span_x86.S 2009-12-21 08:43:03.000000000 +1000
@@ -77,7 +77,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
@@ -172,7 +171,6 @@ _generic_read_RGBA_span_BGRA8888_REV_MMX
*/
.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
@@ -335,7 +333,6 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE
.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
@@ -494,7 +491,6 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE
.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: