aboutsummaryrefslogtreecommitdiff
path: root/games/golly
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2018-12-11 05:57:56 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2018-12-15 20:44:28 +0700
commit9e5373bf5b436f9034901c82c0caaa03fe756719 (patch)
treecfc380ae684b8a11ac0fed50f15ef106e0b452fd /games/golly
parent7e1284e7a9fc58e8bd40bf1016511258a8a9c15a (diff)
games/golly: Updated for version 3.2, new maintainer.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Diffstat (limited to 'games/golly')
-rw-r--r--games/golly/README18
-rw-r--r--games/golly/golly.SlackBuild68
-rw-r--r--games/golly/golly.desktop4
-rw-r--r--games/golly/golly.info12
4 files changed, 63 insertions, 39 deletions
diff --git a/games/golly/README b/games/golly/README
index 7b3c2d8fc765e..95c8f3a1e19e7 100644
--- a/games/golly/README
+++ b/games/golly/README
@@ -1,19 +1,21 @@
-Golly is an open source, cross-platform application for
+golly (Game of Life simulator)
+
+Golly is an open source, cross-platform application for
exploring Conway's Game of Life and other cellular automata.
Golly's key features:
-- Supports bounded and unbounded universes, with cells of
+- Supports bounded and unbounded universes, with cells of
up to 256 states.
-- Supports multiple algorithms, including Bill Gosper's
+- Supports multiple algorithms, including Bill Gosper's
super fast hashlife algorithm.
-- Many different types of CA are included: John von Neumann's
- 29-state CA, Wolfram's 1D rules, WireWorld, Generations,
+- Many different types of CA are included: John von Neumann's
+ 29-state CA, Wolfram's 1D rules, WireWorld, Generations,
Langton's Loops, Paterson's Worms, etc.
-- The RuleTable and RuleTree algorithms let you plug in new
+- The RuleTable and RuleTree algorithms let you plug in new
rules.
- Responsive even while generating or garbage collecting.
-- Reads RLE, macrocell, Life 1.05/1.06, dblife, and MCell
+- Reads RLE, macrocell, Life 1.05/1.06, dblife, and MCell
files.
- Can also read common graphic formats: BMP, PNG, GIF, TIFF.
- Can extract patterns, rules and scripts from zip files.
@@ -26,4 +28,4 @@ Golly's key features:
- Full screen option (no menu/status/tool/scroll bars).
- Supports multiple layers, including cloned layers.
- HTML-based help with an integrated Life Lexicon.
-- Scriptable via Perl or Python.
+- Scriptable via Perl or Python.
diff --git a/games/golly/golly.SlackBuild b/games/golly/golly.SlackBuild
index 880d2cb085c0e..b5107697803ef 100644
--- a/games/golly/golly.SlackBuild
+++ b/games/golly/golly.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for golly
# Copyright 2012-15, Glenn Becker, Arlington MA USA
+# Now maintained by B. Watson <yalhcru@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +24,24 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Updated for golly 2.6 -- the source directory structure got changed a bit too!
+# 20181211 bkw:
+# - Take over maintenance.
+# - i486 => i586.
+# - Upgrade for v3.2.
+# - Switch from wxPython (2.x) to wxGTK3. It's possible to build with
+# either version of wx, but for v3.2, the grid in the UI doesn't display
+# if you build with wxPython. Someone with more wx experience than me
+# is invited to investigate why this happens...
+# - Minor simplifications and cleanups.
+
PRGNAM=golly
-VERSION=${VERSION:-2.7}
+VERSION=${VERSION:-3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -41,8 +52,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -60,37 +71,42 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
+rm -rf $PRGNAM-$VERSION-src
tar xvf $CWD/$PRGNAM-${VERSION}-src.tar.gz
-mv $PRGNAM-$VERSION-src $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION-src
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -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 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20181211 bkw: wxPython and wxGTK3 both install a /usr/bin/wx-config
+# symlink. We *need* wxGTK3, so don't trust the symlink as it points to
+# whichever was most recently installed.
+WXDEF="$( /bin/ls /usr/lib$LIBDIRSUFFIX/wx/config/gtk*unicode*3.0 | head -1 )"
+WXCONF="${WXCONF:-$WXDEF}"
+if [ -z "$WXCONF" ]; then
+ echo "Can't find wxGTK3-3.0.x, install wxGTK3 or set WXCONF in environment." 1>&2
+ exit 1
+fi
-cd 'gui-wx/configure'
+cd gui-wx/configure
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
+ --with-wx-config="$WXCONF" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
+ --bindir=/usr/games \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install-strip DESTDIR=$PKG
-cd '../icons'
+cd ../icons
for i in 16 32 48; do
convert appicon${i}.ico -resize ${i}x${i}! $PRGNAM-${i}.png
@@ -102,16 +118,22 @@ done
convert appicon.xpm $PRGNAM.png
install -D -m 0644 $PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-cd '../../docs'
+cd ../../docs
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- License.html ReadMe.html ToDo.html \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a License.html ReadMe.html ToDo.html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 20181211 bkw: WARNING: gzip test failed on <...>/weekender-distaff.rle.gz
+# Get rid of .gz extension for any non-gzipped data files.
+find $PKG/usr/share/$PRGNAM -name \*.gz | while read FILE; do
+ if file $FILE | grep -qv gzip ; then
+ rename .gz '' "$FILE"
+ fi
+done
+
mkdir $PKG/usr/share/applications
-cat $CWD/golly.desktop > $PKG/usr/share/applications/golly.desktop
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/games/golly/golly.desktop b/games/golly/golly.desktop
index 696cbac3d9211..7fabc82f7778e 100644
--- a/games/golly/golly.desktop
+++ b/games/golly/golly.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
-Name=golly
+Name=Golly
Type=Application
-Comment=cellular automata simulator
+Comment=Cellular Automata Simulator
Terminal=false
Exec=golly
Icon=golly
diff --git a/games/golly/golly.info b/games/golly/golly.info
index 056a399ccbfdf..70156573d35e6 100644
--- a/games/golly/golly.info
+++ b/games/golly/golly.info
@@ -1,10 +1,10 @@
PRGNAM="golly"
-VERSION="2.7"
+VERSION="3.2"
HOMEPAGE="http://golly.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/golly/files/golly/golly-2.7/golly-2.7-src.tar.gz"
-MD5SUM="f0e5b808c4a01b3415fdb5f1731b6efb"
+DOWNLOAD="http://sourceforge.net/projects/golly/files/golly/golly-3.2/golly-3.2-src.tar.gz"
+MD5SUM="9d14cdf88fdab1f3c4de36e226506bfa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxPython"
-MAINTAINER="Glenn Becker"
-EMAIL="glenn.becker@gmail.com"
+REQUIRES="wxGTK3"
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"