diff options
author | B. Watson <yalhcru@gmail.com> | 2021-10-15 17:17:45 -0400 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2021-10-29 17:07:14 +0700 |
commit | f7810e8c1379356780fe4fd47091b6b9976c5d0b (patch) | |
tree | 4a50e1dd3e9117a51a4e6f1ce2aee7489fc3253f /games/xarchon | |
parent | 1056ec5e5be84b6e666ed9c0ca22bf7d5fee281f (diff) | |
download | slackbuilds-f7810e8c1379356780fe4fd47091b6b9976c5d0b.tar.gz |
games/xarchon: Fix -current build.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games/xarchon')
-rw-r--r-- | games/xarchon/doinst.sh | 6 | ||||
-rw-r--r-- | games/xarchon/patches/defaultfont.diff | 22 | ||||
-rw-r--r-- | games/xarchon/patches/newgccfix.diff | 21 | ||||
-rw-r--r-- | games/xarchon/xarchon.SlackBuild | 44 | ||||
-rw-r--r-- | games/xarchon/xarchon.desktop | 2 |
5 files changed, 81 insertions, 14 deletions
diff --git a/games/xarchon/doinst.sh b/games/xarchon/doinst.sh index 5fb28930db..3e5691a052 100644 --- a/games/xarchon/doinst.sh +++ b/games/xarchon/doinst.sh @@ -1,3 +1,9 @@ if [ -x /usr/bin/update-desktop-database ]; then /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 fi + +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi diff --git a/games/xarchon/patches/defaultfont.diff b/games/xarchon/patches/defaultfont.diff new file mode 100644 index 0000000000..53c5485557 --- /dev/null +++ b/games/xarchon/patches/defaultfont.diff @@ -0,0 +1,22 @@ +--- xarchon-0.50/src/board.c.orig 2002-09-26 08:28:46.000000000 -0400 ++++ xarchon-0.50/src/board.c 2002-09-26 08:29:02.000000000 -0400 +@@ -27,7 +27,7 @@ + #define FLOOR_DARK 0 /* steppings for light and dark */ + #define FLOOR_LIGHT 7 /* outside luminance cycle */ + +-#define FONT_NAME "-misc-fixed-medium-*-normal-*-15-0-*-*-*-*-iso8859-1" ++#define FONT_NAME "-misc-fixed-medium-*-normal-*-*-*-*-*-*-*-iso8859-1" + + #define V_CELL_YSIZE 40 /* revive cell height */ + +--- xarchon-0.50/src/field.c.orig 2002-09-26 08:22:45.000000000 -0400 ++++ xarchon-0.50/src/field.c 2002-09-26 08:23:11.000000000 -0400 +@@ -20,7 +20,7 @@ + /* defines */ + /*--------------------------------------------------------------------------*/ + +-#define FONT_NAME "-misc-fixed-medium-*-normal-*-40-0-*-*-*-*-iso8859-1" ++#define FONT_NAME "-misc-fixed-medium-*-normal-*-*-*-*-*-*-*-iso8859-1" + + #define NUM_ROCKS 12 + #define ROCK_DELAY 2 /* rocks delay time in frames */ diff --git a/games/xarchon/patches/newgccfix.diff b/games/xarchon/patches/newgccfix.diff new file mode 100644 index 0000000000..2147bce8f8 --- /dev/null +++ b/games/xarchon/patches/newgccfix.diff @@ -0,0 +1,21 @@ +diff -Naur xarchon-0.60/src/qt/qmymenubar.cpp xarchon-0.60.patched/src/qt/qmymenubar.cpp +--- xarchon-0.60/src/qt/qmymenubar.cpp 2002-01-09 13:34:33.000000000 -0500 ++++ xarchon-0.60.patched/src/qt/qmymenubar.cpp 2021-10-15 16:02:15.359869566 -0400 +@@ -46,7 +46,7 @@ + /*--------------------------------------------------------------------------*/ + + int QMyMenuBar::insertItem(const QString &text, QPopupMenu *popup, +- int id = -1, int index = -1) ++ int id, int index) + { + QMenuBar::insertItem(text, popup, id, index); + } +@@ -58,7 +58,7 @@ + int QMyMenuBar::insertItem(const char *name, QPopupMenu *popup, + const QString &text, + const QObject *receiver, const char *member, +- int accel = 0, int id = -1, int index = -1) ++ int accel, int id, int index) + { + int the_id = popup->insertItem(text, receiver, member, accel, id, index); + QMyMenuBarItem *item = new QMyMenuBarItem(popup, the_id); diff --git a/games/xarchon/xarchon.SlackBuild b/games/xarchon/xarchon.SlackBuild index f9f83f22b2..5c447c9a06 100644 --- a/games/xarchon/xarchon.SlackBuild +++ b/games/xarchon/xarchon.SlackBuild @@ -6,6 +6,12 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. +# 20211015 bkw: BUILD=3 +# - fix build on -current. +# - new-style icon. +# - TODO: fix segfault when built with -O2. For now, the band-aid is +# to build with -O0. + # note: xarchon plays Archon and Archon II: Adept. I can't tell if the # Adept game is complete or correct, because I never could understand # how to play it, even as a video-game-obsessed kid in the 1980s. @@ -17,7 +23,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=xarchon VERSION=${VERSION:-0.60} -BUILD=${BUILD:-2} +BUILD=${BUILD:-3} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -29,9 +35,6 @@ if [ -z "$ARCH" ]; then esac fi -# 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 @@ -41,17 +44,24 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} +# 20211015 bkw: on -current, with gcc12, the damn thing segfaults +# on startup when we use -O2 (or -O1 even). Since it's only a game, +# I won't spend a lot of time worrying about it. It won't compile with +# clang++ either (not even with -std=gnu++98). The *real* fix for this +# is going to be to port xarchon to qt5. Which is beyond the scope +# of this SlackBuild, but I might take a stab at it as a standalone +# project someday. if [ "$ARCH" = "i586" ]; then - SLKCFLAGS="-O2 -march=i586 -mtune=i686" + SLKCFLAGS="-O0 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686 -mtune=i686" + SLKCFLAGS="-O0 -march=i686 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" + SLKCFLAGS="-O0 -fPIC" LIBDIRSUFFIX="64" else - SLKCFLAGS="-O2" + SLKCFLAGS="-O0" LIBDIRSUFFIX="" fi @@ -64,11 +74,8 @@ rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION 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 640 -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 {} \+ # disable Adept menu option, since it's non-playable. patch -p1 < $CWD/patches/no_adept.diff @@ -99,6 +106,13 @@ patch -p1 < $CWD/patches/remove_theme_option.diff # remove mention of selecting themes. patch -p1 < $CWD/patches/manpage.diff +# 20211015 bkw: fix build on -current (gcc 12) +patch -p1 < $CWD/patches/newgccfix.diff + +# 20211015 bkw: patch from Fedora: +# https://src.fedoraproject.org/rpms/xarchon/raw/f34/f/xarchon-fonts.patch +patch -p1 < $CWD/patches/defaultfont.diff + # configure script is from 2002, no thank you. rm -f configure autoreconf -if @@ -137,6 +151,10 @@ mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications ln -s ../games/$PRGNAM/icon.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop +# 20211015 bkw: new-style icon. Only available in 32x32, sorry. +mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps +convert data/icon.xpm $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a AUTHORS COPYING ChangeLog NEWS README $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild diff --git a/games/xarchon/xarchon.desktop b/games/xarchon/xarchon.desktop index 6063650580..3757219918 100644 --- a/games/xarchon/xarchon.desktop +++ b/games/xarchon/xarchon.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Name=xarchon Comment=Classic Fantasy Chess Game -Exec=xarchon +Exec=/usr/games/xarchon Icon=xarchon Terminal=false Type=Application |