summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2022-11-05 00:30:12 +0100
committerPacho Ramos <pacho@gentoo.org>2022-11-05 00:52:03 +0100
commit158fcc1c0b55763bede9fd5393ee47c7f9e5d1f4 (patch)
tree1b62aa0d9769ca1f35a607de574570d98c6f1784 /games-arcade
parentapp-text/dvisvgm: fix configure (diff)
downloadgentoo-158fcc1c0b55763bede9fd5393ee47c7f9e5d1f4.tar.gz
gentoo-158fcc1c0b55763bede9fd5393ee47c7f9e5d1f4.tar.bz2
gentoo-158fcc1c0b55763bede9fd5393ee47c7f9e5d1f4.zip
games-arcade/kobodeluxe: Fix crash
Also fix highscores file handling using gamestat group and install more icons sizes (also using a name compatible with other icon themes as Papirus) Signed-off-by: Pacho Ramos <pacho@gentoo.org>
Diffstat (limited to 'games-arcade')
-rw-r--r--games-arcade/kobodeluxe/files/kobodeluxe-0.5.1-midi-crash-fix.patch13
-rw-r--r--games-arcade/kobodeluxe/kobodeluxe-0.5.1-r4.ebuild70
2 files changed, 83 insertions, 0 deletions
diff --git a/games-arcade/kobodeluxe/files/kobodeluxe-0.5.1-midi-crash-fix.patch b/games-arcade/kobodeluxe/files/kobodeluxe-0.5.1-midi-crash-fix.patch
new file mode 100644
index 000000000000..0b0fd10d9b08
--- /dev/null
+++ b/games-arcade/kobodeluxe/files/kobodeluxe-0.5.1-midi-crash-fix.patch
@@ -0,0 +1,13 @@
+diff -up KoboDeluxe-0.5.1/sound/a_midicon.c~ KoboDeluxe-0.5.1/sound/a_midicon.c
+--- KoboDeluxe-0.5.1/sound/a_midicon.c~ 2015-06-03 20:31:31.000000000 +0200
++++ KoboDeluxe-0.5.1/sound/a_midicon.c 2015-06-03 20:47:40.836311461 +0200
+@@ -120,7 +120,8 @@ static inline void __press(unsigned ch,
+ {
+ m[ch].next[key] = -1;
+ m[ch].prev[key] = m[ch].last;
+- m[ch].next[m[ch].last] = (char)key;
++ if (m[ch].last != -1)
++ m[ch].next[m[ch].last] = (char)key;
+ m[ch].last = (char)key;
+ }
+
diff --git a/games-arcade/kobodeluxe/kobodeluxe-0.5.1-r4.ebuild b/games-arcade/kobodeluxe/kobodeluxe-0.5.1-r4.ebuild
new file mode 100644
index 000000000000..e3d86250f0f4
--- /dev/null
+++ b/games-arcade/kobodeluxe/kobodeluxe-0.5.1-r4.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit desktop
+
+MY_P="KoboDeluxe-${PV/_/}"
+DESCRIPTION="An SDL port of xkobo, a addictive space shoot-em-up"
+HOMEPAGE="http://www.olofson.net/kobodl/"
+SRC_URI="http://www.olofson.net/kobodl/download/${MY_P}.tar.bz2"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc64 ~x86"
+IUSE="opengl"
+
+DEPEND="media-libs/libsdl[joystick]
+ media-libs/sdl-image[png]
+ opengl? ( virtual/opengl )
+"
+RDEPEND="${DEPEND}
+ acct-group/gamestat
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-glibc29.patch
+ "${FILESDIR}"/${P}-glibc2.10.patch
+ "${FILESDIR}"/${P}-clang.patch
+ "${FILESDIR}"/${P}-midi-crash-fix.patch
+)
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}" || die
+ unpack ./icons.tar.gz
+}
+
+src_prepare() {
+ default
+
+ # Fix paths
+ sed -i \
+ -e 's:\$(datadir)/kobo-deluxe:$(datadir)/kobodeluxe:' \
+ -e "s:\$(sharedstatedir)/kobo-deluxe/scores:${EPREFIX}/var/games/kobodeluxe:" \
+ configure || die "sed configure failed"
+
+ sed -i \
+ -e 's:kobo-deluxe:kobodeluxe:' \
+ data/gfx/Makefile.in \
+ data/sfx/Makefile.in || die "sed data/Makefile.in failed"
+}
+
+src_configure() {
+ econf $(use_enable opengl)
+}
+
+src_install() {
+ default
+
+ for size in 16 22 32 48 64 128; do
+ newicon -s "${size}" icons/KDE/icons/${size}x${size}/kobodl.png KoboDeluxe.png
+ done
+ make_desktop_entry kobodl "Kobo Deluxe" KoboDeluxe
+
+ keepdir /var/games/kobodeluxe
+ fowners -R :gamestat /var/games/kobodeluxe/ /usr/bin/kobodl
+ fperms g+s /usr/bin/kobodl
+ fperms -R g+w /var/games/kobodeluxe
+}