#!/bin/bash # mesa.SlackBuild # Heavily based on the original Slackware build scripts, # Modified by Stuart Winter # # Copyright 2006, 2007 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. cd $TMPBUILD PKG=/ # Extract source: tar xjvvf $CWD/MesaLib-$VERSION.tar.bz2 tar xjvvf $CWD/MesaGLUT-$VERSION.tar.bz2 tar xjvvf $CWD/MesaDemos-$VERSION.tar.bz2 cd Mesa-$VERSION slackhousekeeping # Patch to build into "/usr": zcat $CWD/mesa.linux-dri-x86.diff.gz | patch -p1 --verbose || failmake #ln -vfs /usr/include/linux/stddef.h /usr/include/ zcat $PORTCWD/sources/mesa_6.5.2-3.diff.gz | patch -p1 || failpatch # Let's have everything in /usr: fgrep -lr -- '/usr/local' . | xargs sed -i 's?/usr/local?/usr?g' # Build and install: make -j5 linux-fbdev || failmake # Patch to put into /tmp/package-mesa: (sorry, I know this should use $PKG ;-) #zcat $CWD/mesa.linux-dri-x86-fake-destdir.diff.gz | patch -p1 --verbose || failpatch make install DESTDIR=$PKG || failinstall ldconfig # Install some "demos": #echo "=================== Building Demos ======================================" #( cd progs/xdemos # make -i # mkdir -p $PKG/usr/bin # cp glthreads glxcontexts glxdemo glxgears glxgears_fbconfig glxheads \ # glxinfo glxpbdemo glxpixmap \ # $PKG/usr/bin #) # Add a documentation directory: cd docs mkdir -pm755 $PKG/usr/doc/Mesa-$VERSION cp -fa * $PKG/usr/doc/Mesa-$VERSION ( cd $PKG/usr/doc/Mesa-$VERSION rm RELNOTES* relnotes* ) cp -fa RELNOTES-$VERSION relnotes-$VERSION.html relnotes.html $PKG/usr/doc/Mesa-$VERSION # I know this is messy but the Slackware configure options # for xorg-server looks for Mesa source in here, and it's easier # to do this than modify the config options: ( cd $TMPBUILD tar pjcf $PORTCWD/mesa-compiled.tar.bz2 Mesa-$VERSION ) cd / rm -rf install slackdesc