commit:     e0cf7e09ea6ae0b0ce6e4bf9429e80f1fbbf90e6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 18 21:07:05 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Jun 18 21:07:05 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0cf7e09

games-simulation/pmars-sdl: modernise ebuild

* EAPI 7
* Use ${ESYSROOT}
* Use append-flags, append-cppflags
* General bash tidying
* Add missing die
* Remove overquoting
* Use subshells, not backticks
* Respect CPPFLAGS

Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 .../pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild           | 77 ++++++++++++----------
 1 file changed, 43 insertions(+), 34 deletions(-)

diff --git a/games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild 
b/games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild
index 6e25ce586a2..ae564aa94c0 100644
--- a/games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild
+++ b/games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild
@@ -1,8 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
-inherit readme.gentoo-r1 toolchain-funcs
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs readme.gentoo-r1
 
 MY_PN="${PN/-sdl/}"
 MY_PV="${PV/e/-5}"
@@ -11,6 +12,7 @@ MY_P="${MY_PN}-${MY_PV}"
 DESCRIPTION="Portable redcode simulator's sdl port for core war"
 HOMEPAGE="https://corewar.co.uk/pihlaja/pmars-sdl/";
 SRC_URI="https://corewar.co.uk/pihlaja/pmars-sdl/${MY_P}.tar.gz";
+S="${WORKDIR}/${MY_P}"
 
 LICENSE="BSD GPL-2"
 SLOT="0"
@@ -24,9 +26,9 @@ RDEPEND="
 "
 DEPEND="${RDEPEND}"
 
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=( "${FILESDIR}"/${P}-format.patch )
+PATCHES=(
+       "${FILESDIR}"/${P}-format.patch
+)
 
 DOC_CONTENTS="
        There are some macros in /usr/share/pmars/macros
@@ -35,41 +37,48 @@ DOC_CONTENTS="
 "
 
 src_compile() {
-       CFLAGS="${CFLAGS} -DEXT94 -DPERMUTATE"
-       LFLAGS="-x"
+       local LIB=""
+       export LFLAGS="-x"
+
+       append-cppflags -DEXT94 -DPERMUTATE
 
        if use sdl ; then
-               CFLAGS="${CFLAGS} -DSDLGRAPHX `sdl-config --cflags`"
-               LIB=`sdl-config --libs`
+               append-cflags $(sdl-config --cflags)
+               append-cppflags -DSDLGRAPHX
+
+               LIB=$(sdl-config --libs)
        elif use X ; then
-               CFLAGS="${CFLAGS} -DXWINGRAPHX"
-               LIB="-L/usr/X11R6/lib -lX11"
+               append-cppflags -DXWINGRAPHX
+
+               LIB="-L${ESYSROOT}/usr/X11R6/lib -lX11"
        else
-               CFLAGS="${CFLAGS} -DCURSESGRAPHX"
+               append-cppflags -DCURSESGRAPHX
+
                LIB="-lcurses -ltinfo"
        fi
 
-       cd src
-
-       SRC="asm.c
-                cdb.c
-                clparse.c
-                disasm.c
-                eval.c
-                global.c
-                pmars.c
-                sim.c
-                pos.c
-                str_eng.c
-                token.c"
-
-       for x in ${SRC}; do
-               einfo "compiling ${x}"
-               $(tc-getCC) ${CFLAGS} ${x} -c || die
+       cd src || die
+
+       local programs=(
+               asm.c
+               cdb.c
+               clparse.c
+               disasm.c
+               eval.c
+               global.c
+               pmars.c
+               sim.c
+               pos.c
+               str_eng.c
+               token.c
+       )
+
+       for program in "${programs[@]}" ; do
+               einfo "Compiling ${program}"
+               $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${program} -c || die
        done
 
-       echo
-       einfo "linking with LIB: ${LIB}"
+       einfo "Linking with LIB: ${LIB}"
        $(tc-getCC) ${LDFLAGS} *.o ${LIB} -o ${MY_PN} || die
 }
 
@@ -80,10 +89,10 @@ src_install() {
        dodoc AUTHORS CONTRIB ChangeLog README doc/redcode.ref
        readme.gentoo_create_doc
 
-       insinto "/usr/share/${MY_PN}/warriors"
+       insinto /usr/share/${MY_PN}/warriors
        doins warriors/*
 
-       insinto "/usr/share/${MY_PN}/macros"
+       insinto /usr/share/${MY_PN}/macros
        doins config/*.mac
 }
 

Reply via email to