summaryrefslogtreecommitdiffstats
path: root/pasture
diff options
context:
space:
mode:
Diffstat (limited to 'pasture')
-rwxr-xr-xpasture/source/gxine/gxine.SlackBuild111
-rw-r--r--pasture/source/gxine/gxine.desktop14
-rw-r--r--pasture/source/gxine/slack-desc19
-rwxr-xr-xpasture/source/make/make.SlackBuild98
-rw-r--r--pasture/source/make/slack-desc19
-rw-r--r--pasture/source/mesa-7.8.2/README.GIT16
-rw-r--r--pasture/source/mesa-7.8.2/get-mesa.sh8
-rwxr-xr-xpasture/source/mesa-7.8.2/mesa.SlackBuild145
-rw-r--r--pasture/source/mesa-7.8.2/mesa.url1
-rw-r--r--pasture/source/mesa-7.8.2/slack-desc19
10 files changed, 450 insertions, 0 deletions
diff --git a/pasture/source/gxine/gxine.SlackBuild b/pasture/source/gxine/gxine.SlackBuild
new file mode 100755
index 000000000..172d17aa2
--- /dev/null
+++ b/pasture/source/gxine/gxine.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/sh
+
+# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+VERSION=0.5.905
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i486 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-gxine
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf gxine-$VERSION
+tar xvf $CWD/gxine-$VERSION.tar.bz2 || exit 1
+cd gxine-$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var/lib \
+ --mandir=/usr/man \
+ --disable-static \
+ --with-browser-plugin \
+ --build=$ARCH-slackware-linux
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+#zcat $CWD/gxine.desktop.gz > $PKG/usr/share/applications/gxine.desktop
+#if [ ! -r $PKG/usr/share/pixmaps/gxine.png ]; then
+# exit 1
+#fi
+
+# I'm sorry, but making this link was the worst suggestion I ever
+# went along with. I'll continue to include it (for now), but having
+# (buggy) gxine pop up without prompting all the time is ANNOYING!!!
+#mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+#( cd $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
+# ln -sf /usr/lib${LIBDIRSUFFIX}/gxine/gxineplugin.so .
+#)
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+mkdir -p $PKG/usr/doc/gxine-$VERSION
+cp -a \
+ ABOUT-NLS AUTHORS COPYING* INSTALL NEWS README TODO \
+ $PKG/usr/doc/gxine-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/gxine-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/pasture/source/gxine/gxine.desktop b/pasture/source/gxine/gxine.desktop
new file mode 100644
index 000000000..54e5e6c28
--- /dev/null
+++ b/pasture/source/gxine/gxine.desktop
@@ -0,0 +1,14 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=gxine
+GenericName=Video Player
+Comment=Play films and songs, or watch digital TV
+Exec=gxine
+MultipleArgs=true
+Icon=/usr/share/pixmaps/gxine.png
+Terminal=false
+Type=Application
+StartupNotify=true
+Categories=GTK;Application;AudioVideo;
+MimeType=video/mpeg;video/msvideo;video/quicktime;video/x-avi;video/x-ms-asf;video/x-ms-wmv;video/x-msvideo;application/x-ogg;application/ogg;audio/x-mp3;audio/x-mpeg;video/x-mpeg;video/x-fli;audio/x-wav;audio/x-mpegurl;audio/x-scpls;audio/x-ms-asx;application/vnd.rn-realmedia;audio/x-real-audio;audio/x-pn-realaudio;application/x-flac;audio/x-flac;application/x-shockwave-flash;audio/mpeg;audio/x-ms-asf;audio/x-m4a;audio/x-ms-wax;video/dv;video/x-anim;video/x-flc;misc/ultravox;application/x-matroska;audio/vnd.rn-realaudio;audio/x-pn-aiff;audio/x-pn-au;audio/x-pn-wav;audio/x-pn-windows-acm;image/vnd.rn-realpix;video/vnd.rn-realvideo
diff --git a/pasture/source/gxine/slack-desc b/pasture/source/gxine/slack-desc
new file mode 100644
index 000000000..18f7cef45
--- /dev/null
+++ b/pasture/source/gxine/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gxine: gxine (GTK+ media player based on Xine)
+gxine:
+gxine: Xine is a free multimedia player. It plays back CDs, DVDs, and VCDs,
+gxine: multimedia files, and multimedia streamed over a network.
+gxine:
+gxine: The gxine package contains a GTK+ graphical user interface for the
+gxine: Xine multimedia player.
+gxine:
+gxine:
+gxine:
+gxine:
diff --git a/pasture/source/make/make.SlackBuild b/pasture/source/make/make.SlackBuild
new file mode 100755
index 000000000..32e4b2502
--- /dev/null
+++ b/pasture/source/make/make.SlackBuild
@@ -0,0 +1,98 @@
+#!/bin/sh
+
+# Copyright 2005-2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+VERSION=3.81
+BUILD=${BUILD:-3}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i486 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-make
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf make-$VERSION
+tar xjvf $CWD/make-$VERSION.tar.bz2 || exit 1
+cd make-$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --build=$ARCH-slackware-linux
+make || exit 1
+make install DESTDIR=$PKG || exit 1
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+gzip -9 $PKG/usr/man/man1/*
+rm $PKG/usr/info/dir
+gzip -9 $PKG/usr/info/*
+# This has been here so long that it should probably stay.
+# Trying to get rid of ginstall didn't go well, so... :-)
+( cd $PKG/usr/bin
+ rm -f gmake
+ ln -sf make gmake )
+mkdir -p $PKG/usr/doc/make-$VERSION
+cp -a \
+ ABOUT-NLS AUTHORS COPYING NEWS README* \
+ $PKG/usr/doc/make-$VERSION/
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+# Build the package:
+cd $PKG
+makepkg -l y -c n $TMP/make-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/pasture/source/make/slack-desc b/pasture/source/make/slack-desc
new file mode 100644
index 000000000..ef19ca33a
--- /dev/null
+++ b/pasture/source/make/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+make: make (GNU make utility to maintain groups of programs)
+make:
+make: This is the GNU implementation of make, which was written by Richard
+make: Stallman and Roland McGrath. The purpose of the make utility is to
+make: determine automatically which pieces of a large program need to be
+make: recompiled, and issue the commands to recompile them.
+make:
+make: This is needed to compile just about any major C program, including
+make: the Linux kernel.
+make:
+make:
diff --git a/pasture/source/mesa-7.8.2/README.GIT b/pasture/source/mesa-7.8.2/README.GIT
new file mode 100644
index 000000000..4e79f374c
--- /dev/null
+++ b/pasture/source/mesa-7.8.2/README.GIT
@@ -0,0 +1,16 @@
+Anonymous git Access
+
+ To get the Mesa sources anonymously (read-only):
+
+ 1. Install the git software on your computer if needed.
+
+ 2. Get an initial, local copy of the repository with:
+
+ git clone git://anongit.freedesktop.org/git/mesa/mesa
+
+
+ 3. Later, you can update your tree from the master repository with:
+
+ git pull origin
+
+
diff --git a/pasture/source/mesa-7.8.2/get-mesa.sh b/pasture/source/mesa-7.8.2/get-mesa.sh
new file mode 100644
index 000000000..710043c64
--- /dev/null
+++ b/pasture/source/mesa-7.8.2/get-mesa.sh
@@ -0,0 +1,8 @@
+rm -rf mesa
+git clone git://anongit.freedesktop.org/git/mesa/mesa
+# package the source archive and clean up:
+( cd mesa ; find . -type d -name .git -exec rm -rf {} \; 2> /dev/null )
+DATE=$(date +%Y%m%d)
+mv mesa mesa-${DATE}_git
+tar cjf mesa-${DATE}_git.tar.bz2 mesa-${DATE}_git
+rm -rf mesa-${DATE}_git
diff --git a/pasture/source/mesa-7.8.2/mesa.SlackBuild b/pasture/source/mesa-7.8.2/mesa.SlackBuild
new file mode 100755
index 000000000..d4579625d
--- /dev/null
+++ b/pasture/source/mesa-7.8.2/mesa.SlackBuild
@@ -0,0 +1,145 @@
+#!/bin/sh
+
+# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PKGNAM=mesa
+VERSION=${VERSION:-$(echo MesaLib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+PKG_VERSION=${VERSION}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i486 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# Be sure this list is up-to-date:
+DRI_DRIVERS="i810,i915,i965,mach64,mga,r128,r200,r300,r600,radeon,savage,sis,tdfx,unichrome,swrast"
+
+NUMJOBS=${NUMJOBS:--j8}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-mesa
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf Mesa-${VERSION}
+tar xvf $CWD/MesaLib-${PKG_VERSION}.tar.?z* || exit 1
+tar xvf $CWD/MesaGLUT-${PKG_VERSION}.tar.?z* || exit 1
+tar xvf $CWD/MesaDemos-${PKG_VERSION}.tar.?z* || exit 1
+cd Mesa-$VERSION
+
+# Make sure ownerships and permissions are sane:
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/mesa-$VERSION \
+ --with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
+ --with-dri-drivers="$DRI_DRIVERS" \
+ --build=$ARCH-slackware-linux
+
+# Nobody else is enabling this. Seems like it's asking for trouble.
+# --enable-xcb
+
+# This doesn't seem to build - maybe it needs something else...
+# --enable-gallium-nouveau
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Install gears and glinfo:
+mkdir -p $PKG/usr/bin
+cp -a progs/demos/gears $PKG/usr/bin/gears
+cp -a progs/demos/glinfo $PKG/usr/bin/glinfo
+
+# Install some "demos":
+( cd progs/xdemos
+ cp glthreads glxcontexts glxdemo glxgears glxgears_fbconfig glxheads \
+ glxinfo glxpbdemo glxpixmap \
+ $PKG/usr/bin
+)
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+mkdir -p $PKG/usr/doc/Mesa-$PKG_VERSION/html
+cp -a COPYING docs/relnotes-$VERSION.html $PKG/usr/doc/Mesa-$PKG_VERSION
+rm -f docs/relnotes*.html docs/RELNOTES*
+cp -a docs/*.html $PKG/usr/doc/Mesa-$PKG_VERSION/html
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$PKG_VERSION-$ARCH-$BUILD.txz
+
diff --git a/pasture/source/mesa-7.8.2/mesa.url b/pasture/source/mesa-7.8.2/mesa.url
new file mode 100644
index 000000000..f4efeae63
--- /dev/null
+++ b/pasture/source/mesa-7.8.2/mesa.url
@@ -0,0 +1 @@
+ftp://ftp.freedesktop.org/pub/mesa/
diff --git a/pasture/source/mesa-7.8.2/slack-desc b/pasture/source/mesa-7.8.2/slack-desc
new file mode 100644
index 000000000..113964bd0
--- /dev/null
+++ b/pasture/source/mesa-7.8.2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mesa: mesa (a 3-D graphics library)
+mesa:
+mesa: Mesa is a 3-D graphics library with an API very similar to that of
+mesa: another well-known 3-D graphics library. :-) The Mesa libraries are
+mesa: used by X to provide both software and hardware accelerated graphics.
+mesa:
+mesa: Mesa was written by Brian Paul.
+mesa:
+mesa:
+mesa:
+mesa: