games-arcade/xgalaga: update EAPI 7 -> 8, C23 fix, -Wreturn-type fix

Thanks to Erik Zeek for the C23 fix.

Closes: https://bugs.gentoo.org/943793
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James 2025-10-12 08:07:53 +01:00
parent 474d50f3b4
commit 7821e90fb4
No known key found for this signature in database
GPG Key ID: 738409F520DF9190
3 changed files with 118 additions and 0 deletions

View File

@ -0,0 +1,24 @@
https://bugs.gentoo.org/943793
--- a/libsprite/data.c
+++ b/libsprite/data.c
@@ -79,9 +79,6 @@ W_Font W_HighlightFont = (W_Font) & two, W_UnderlineFont = (W_Font) & three;
W_Color W_White = WHITE, W_Black = BLACK, W_Red = RED, W_Green = GREEN;
W_Color W_Yellow = YELLOW, W_Cyan = CYAN, W_Grey = LIGHT_GREY, W_DarkGrey = DARK_GREY;
int W_Textwidth, W_Textheight, W_BigTextwidth, W_BigTextheight;
-#ifndef strdup
-char *strdup();
-#endif
int W_in_message = 0; /* jfy -- for Jerry's warp message hack */
#ifdef RJC
--- a/xgal.sndsrv.linux.c
+++ b/xgal.sndsrv.linux.c
@@ -49,7 +49,7 @@ int fragsize;
/* Terminate: Signal Handler */
-void quit ()
+void quit (int n)
{
exit (0);
}

View File

@ -0,0 +1,23 @@
--- a/title.c
+++ b/title.c
@@ -108,7 +108,7 @@ static void show_help()
top+150, W_Cyan);
}
-int read_credits()
+void read_credits()
{
int hsf;
int i,j,l,lines;
@@ -117,9 +117,9 @@ int read_credits()
j = 0; lines = 0;
chFBuf = (char *) malloc (8000+1);
- if (chFBuf == 0) return (-1);
+ if (chFBuf == 0) return;
gchLBuf = (char *) malloc (LINESIZE+1);
- if (gchLBuf == 0) return (-2);
+ if (gchLBuf == 0) return;
hsf = open (CREDITSFILE, O_RDONLY);
if ( hsf > 0 )
{

View File

@ -0,0 +1,71 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools desktop
DESCRIPTION="Clone of the classic game Galaga for the X Window System"
HOMEPAGE="https://sourceforge.net/projects/xgalaga"
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
x11-libs/libX11
x11-libs/libXmu
x11-libs/libXpm
x11-libs/libXext
x11-libs/libXt
"
DEPEND="
${RDEPEND}
x11-base/xorg-proto
"
RDEPEND+=" acct-group/gamestat"
PATCHES=(
"${FILESDIR}"/${PN}-2.1.1.0-respect-AR.patch
"${FILESDIR}"/${PN}-2.1.1.0-function-and-ints.patch
"${FILESDIR}"/${PN}-2.1.1.0-c23.patch
"${FILESDIR}"/${PN}-2.1.1.0-return-type.patch
)
src_prepare() {
default
eautoreconf
sed -i \
-e "/LEVELDIR\|SOUNDDIR/ s:prefix:datadir/${PN}:" \
-e "/\/scores/ s:prefix:localstatedir/${PN}:" \
configure || die "sed configure failed"
sed -i \
-e "/SOUNDDEFS/ s:(SOUNDSRVDIR):(SOUNDSRVDIR)/bin:" \
-e 's:make ;:$(MAKE) ;:' \
Makefile.in || die "sed Makefile.in failed"
}
src_install() {
dobin xgalaga xgal.sndsrv.oss xgalaga-hyperspace
dodoc README README.SOUND CHANGES
newman xgalaga.6x xgalaga.6
insinto /usr/share/${PN}/sounds
doins sounds/*.raw
insinto /usr/share/${PN}/levels
doins levels/*.xgl
make_desktop_entry ${PN} XGalaga
dodir /var/games/${PN}
touch "${ED}"/var/games/${PN}/scores || die
fperms -R 660 /var/games/${PN}
fowners -R root:gamestat /var/games/${PN} /usr/bin/{xgalaga,xgal.sndsrv.oss,xgalaga-hyperspace}
fperms g+s /usr/bin/{xgalaga,xgal.sndsrv.oss,xgalaga-hyperspace}
}