summaryrefslogtreecommitdiffstats
path: root/games/brainparty
diff options
context:
space:
mode:
Diffstat (limited to 'games/brainparty')
-rw-r--r--games/brainparty/brainparty.SlackBuild19
-rw-r--r--games/brainparty/patches/gcc-6.patch47
2 files changed, 63 insertions, 3 deletions
diff --git a/games/brainparty/brainparty.SlackBuild b/games/brainparty/brainparty.SlackBuild
index 71770366d2..06f9c314c5 100644
--- a/games/brainparty/brainparty.SlackBuild
+++ b/games/brainparty/brainparty.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for brainparty
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=brainparty
VERSION=${VERSION:-0.61}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -17,7 +20,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,6 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks debian
+patch -p1 < $CWD/patches/gcc-6.patch
+
# Save directory patch. Data directory patch. Use custom SLKCFLAGS.
patch -p1 < $CWD/patches/brainparty-0.5-savegame.patch
patch -p1 < $CWD/patches/brainparty-0.5-data-directory.patch
@@ -80,4 +93,4 @@ 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}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brainparty/patches/gcc-6.patch b/games/brainparty/patches/gcc-6.patch
new file mode 100644
index 0000000000..67dfadd540
--- /dev/null
+++ b/games/brainparty/patches/gcc-6.patch
@@ -0,0 +1,47 @@
+Description: Fix FTBFS on GCC 6 by removing use of hash_set class
+Author: James Cowgill <jcowgill@debian.org>
+Bug-Debian: https://bugs.debian.org/811885
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/WordList.h
++++ b/WordList.h
+@@ -18,24 +18,11 @@
+ #ifndef __WORDLIST_H__
+ #define __WORDLIST_H__
+
++#include <string>
+ #include <vector>
+-#include <ext/hash_set>
++#include <unordered_set>
+
+-using namespace std;
+-using namespace __gnu_cxx;
+-
+-namespace __gnu_cxx
+-{
+- template<> struct hash< std::string >
+- {
+- size_t operator()( const std::string& x ) const
+- {
+- return hash< const char* >()( x.c_str() );
+- }
+- };
+-}
+-
+-typedef hash_set<string, hash<string> > string_hash_set;
++typedef std::unordered_set<std::string> string_hash_set;
+
+ class WordList {
+ private:
+--- a/Makefile
++++ b/Makefile
+@@ -17,6 +17,9 @@ else
+ OSXCOMPAT =
+ endif
+
++# enable c++11
++CXXFLAGS += -std=c++11
++
+ # object files have corresponding source files
+ CXX = g++
+