diff options
Diffstat (limited to 'games/0ad/0ad.SlackBuild')
-rw-r--r-- | games/0ad/0ad.SlackBuild | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/games/0ad/0ad.SlackBuild b/games/0ad/0ad.SlackBuild new file mode 100644 index 000000000000..77bf7008e93a --- /dev/null +++ b/games/0ad/0ad.SlackBuild @@ -0,0 +1,117 @@ +#!/bin/sh +# +# Slackware build script for 0.A.D. +# +# Copyright 2010-2011 Erik W. Hanson, Minneapolis, 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. + +PRGNAM=0ad +VERSION=${VERSION:-r10803} +RELEASE=${RELEASE:-alpha} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -eu + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION-$RELEASE +tar xvf $CWD/$PRGNAM-$VERSION-$RELEASE-unix-build.tar.xz +cd $PRGNAM-$VERSION-$RELEASE +chown -R root:root . +chmod -R u+w,go+r-w,a-s . + +export CFLAGS="$SLKCFLAGS" +export CXXFLAGS="$SLKCFLAGS" +export CPPFLAGS="$SLKCFLAGS" +export LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" + +# Fix boost names +sed -i 's/-mt//g' build/premake/extern_libs4.lua + +build/workspaces/update-workspaces.sh \ + --bindir=/usr/games \ + --datadir=/usr/share/games/0ad \ + --libdir=/usr/lib${LIBDIRSUFFIX}/0ad \ + --${ATLAS:-disable}-atlas + + # --with-system-enet enet in repo is too old + # --with-system-mozjs185 js in repo is too old + +make CONFIG=Release -C build/workspaces/gcc + +mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/0ad +cp binaries/system/*so* $PKG/usr/lib${LIBDIRSUFFIX}/0ad +chmod 0755 $PKG/usr/lib${LIBDIRSUFFIX}/0ad/* + +install -Dm 0755 binaries/system/pyrogenesis $PKG/usr/games/pyrogenesis + +[ -e binaries/system/ActorEditor ] && \ +install -Dm 0755 binaries/system/ActorEditor $PKG/usr/libexec/0ad/bin/ActorEditor + +install -Dm 0644 build/resources/0ad.desktop $PKG/usr/share/applications/0ad.desktop +install -Dm 0644 build/resources/0ad.png $PKG/usr/share/pixmaps/0ad.png +install -Dm 0755 build/resources/0ad.sh $PKG/usr/games/0ad + +sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/games/0ad +sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/share/applications/0ad.desktop + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a LICENSE.txt README.txt license_dbghelp.txt license_gpl-2.0.txt license_lgpl-2.1.txt \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |