games/xarchon: Fix -current build.

Signed-off-by: B. Watson <yalhcru@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2021-10-15 17:17:45 -04:00 committed by Willy Sudiarto Raharjo
parent 1056ec5e5b
commit f7810e8c13
No known key found for this signature in database
GPG key ID: 3F617144D7238786
5 changed files with 81 additions and 14 deletions

View file

@ -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

View file

@ -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 */

View file

@ -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);

View file

@ -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

View file

@ -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