#!/bin/bash # # got it from ftp://ftp.slackware.com/pub/slackware/slackware-10.2/source/l/sdl/sdl.SlackBuild # small changes by rhatto # CWD="`pwd`" if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi PACKAGE="sdl" VERSION=${VERSION:=1.2.11} ARCH=${ARCH:=i486} BUILD=${BUILD:=1rha} SRC_DIR=${SRC:=$CWD} TMP=${TMP:=/tmp} REPOS=${REPOS:=$TMP} IMAGE=${IMAGE:=1.2.5} MIXER=${MIXER:=1.2.7} NET=${NET:=1.2.6} TTF=${TTF:=2.0.8} RTOOL="wget" PACKAGE_EXT="gz" SRC="SDL-$VERSION.tar.$PACKAGE_EXT" SRC_image="SDL_image-$IMAGE.tar.gz" SRC_mixer="SDL_mixer-$MIXER.tar.gz" SRC_net="SDL_net-$NET.tar.gz" SRC_ttf="SDL_ttf-$TTF.tar.gz" URL="http://www.libsdl.org/release/$SRC" URL_LIB="http://www.libsdl.org/projects" if [ "$PACKAGE_EXT" == "bz2" ]; then tarflag="j" else tarflag="z" fi SRC_DIR="$SRC_DIR/$PACKAGE" TMP="$TMP/$PACKAGE" mkdir -p $SRC_DIR $TMP if [ "$RTOOL" == "wget" ]; then if [ ! -f "$SRC_DIR/$SRC" ]; then wget "$URL/$SRC" -O "$SRC_DIR/$SRC" fi if [ ! -f "$SRC_DIR/$SRC_image" ]; then wget "$URL_LIB/SDL_image/release/$SRC_image" -O "$SRC_DIR/$SRC_image" fi if [ ! -f "$SRC_DIR/$SRC_mixer" ]; then wget "$URL_LIB/SDL_mixer/release/$SRC_mixer" -O "$SRC_DIR/$SRC_mixer" fi if [ ! -f "$SRC_DIR/SDL_net-$NET.tar.gz" ]; then wget "$URL_LIB/SDL_net/release/$SRC_net" -O "$SRC_DIR/$SRC_net" fi if [ ! -f "$SRC_DIR/SDL_ttf-$TTF.tar.gz" ]; then wget "$URL_LIB/SDL_ttf/release/$SRC_ttf" -O "$SRC_DIR/$SRC_ttf" fi fi PKG="$TMP/package-$PACKAGE" LIBDIR=/usr/lib if [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" elif [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mcpu=i686" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR=/usr/lib64 fi rm -rf $PKG mkdir -p $PKG cd $TMP rm -rf sdl-$VERSION tar xf$tarflag $SRC_DIR/$SRC cd SDL-$VERSION if [ "$ARCH" == "x86_64" ]; then gzip -dc $CWD/libdir-fix.diff.gz | patch -p1 fi chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --enable-shared=yes \ --libdir=$LIBDIR \ --enable-static=no make -j3 # Spam /, for mixer/image later on: make install # install to package: make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/SDL-$VERSION/html cp -a docs/index.html $PKG/usr/doc/SDL-$VERSION cp -a docs/html/*.html $PKG/usr/doc/SDL-$VERSION/html cp -a BUGS COPYING CREDITS INSTALL README* TODO WhatsNew $PKG/usr/doc/SDL-$VERSION mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc # Add SDL_image: cd $TMP rm -rf SDL_image-$IMAGE tar xf$tarflag $SRC_DIR/$SRC_image cd SDL_image-$IMAGE chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --enable-shared=yes \ --libdir=$LIBDIR \ --enable-static=no make -j3 make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/SDL_image-$IMAGE cp -a \ CHANGES COPYING README \ $PKG/usr/doc/SDL_image-$IMAGE # Add SDL_mixer: cd $TMP rm -rf SDL_mixer-$MIXER tar xf$tarflag $SRC_DIR/$SRC_mixer cd SDL_mixer-$MIXER chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --enable-shared=yes \ --libdir=$LIBDIR \ --enable-static=no make -j3 make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/SDL_mixer-$MIXER cp -a \ CHANGES COPYING README \ $PKG/usr/doc/SDL_mixer-$MIXER # Add SDL_net: cd $TMP rm -rf SDL_net-$NET tar xf$tarflag $SRC_DIR/$SRC_net cd SDL_net-$NET chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --enable-shared=yes \ --libdir=$LIBDIR \ --enable-static=no make -j3 make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/SDL_net-$NET cp -a \ CHANGES COPYING README \ $PKG/usr/doc/SDL_net-$NET # Add SDL_ttf: cd $TMP rm -rf SDL_ttf-$TTF tar xf$tarflag $SRC_DIR/$SRC_ttf cd SDL_ttf-$TTF chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 664 -exec chmod 644 {} \; CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --enable-shared=yes \ --libdir=$LIBDIR \ --enable-static=no make -j3 make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/SDL_ttf-$TTF cp -a \ CHANGES COPYING README \ $PKG/usr/doc/SDL_ttf-$TTF chown -R root.bin $PKG/usr/bin ( 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/man?/*.? cd $PKG makepkg -l y -c n $REPOS/sdl-$VERSION-$ARCH-$BUILD.tgz if [ "$CLEANUP" == "yes" ]; then rm -rf $TMP fi