diff options
-rw-r--r-- | games-simulation/pmars-sdl/files/pmars-sdl-0.9.2e-format.patch | 12 | ||||
-rw-r--r-- | games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild | 92 |
2 files changed, 98 insertions, 6 deletions
diff --git a/games-simulation/pmars-sdl/files/pmars-sdl-0.9.2e-format.patch b/games-simulation/pmars-sdl/files/pmars-sdl-0.9.2e-format.patch index d8c588a32206..4e02da8a82a8 100644 --- a/games-simulation/pmars-sdl/files/pmars-sdl-0.9.2e-format.patch +++ b/games-simulation/pmars-sdl/files/pmars-sdl-0.9.2e-format.patch @@ -1,5 +1,5 @@ ---- src/asm.c.old 2015-10-28 13:23:53.465014342 +0100 -+++ src/asm.c 2015-10-28 13:23:10.502813377 +0100 +--- a/src/asm.c.old 2015-10-28 13:23:53.465014342 +0100 ++++ b/src/asm.c 2015-10-28 13:23:10.502813377 +0100 @@ -652,7 +652,7 @@ macputs(str); #else @@ -27,8 +27,8 @@ #ifndef VMS textout(outs); #else ---- src/cdb.c.old 2015-10-28 13:24:04.669805966 +0100 -+++ src/cdb.c 2015-10-28 13:23:10.502813377 +0100 +--- a/src/cdb.c.old 2015-10-28 13:24:04.669805966 +0100 ++++ b/src/cdb.c 2015-10-28 13:23:10.502813377 +0100 @@ -2760,7 +2760,7 @@ fprintf(outp, nameByAuthorScores, warrior[idxV[i]].name, warrior[idxV[i]].authorName, scrV[idxV[i]]); @@ -38,8 +38,8 @@ for (j = 0; j < warriors; ++j) { fprintf(outp, " %d", warrior[idxV[i]].score[j]); } ---- src/clparse.c.old 2015-10-28 13:24:10.648694768 +0100 -+++ src/clparse.c 2015-10-28 13:23:10.502813377 +0100 +--- a/src/clparse.c.old 2015-10-28 13:24:10.648694768 +0100 ++++ b/src/clparse.c 2015-10-28 13:23:10.502813377 +0100 @@ -289,7 +289,7 @@ if (next_input(filep, inputs)) { if (!strcmp(inputs, "-")) { 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 new file mode 100644 index 000000000000..05129c0d1c72 --- /dev/null +++ b/games-simulation/pmars-sdl/pmars-sdl-0.9.2e-r1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit readme.gentoo-r1 toolchain-funcs + +MY_PN="${PN/-sdl/}" +MY_PV="${PV/e/-5}" +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="Portable redcode simulator's sdl port for core war" +HOMEPAGE="http://corewar.co.uk/pihlaja/pmars-sdl/" +SRC_URI="http://corewar.co.uk/pihlaja/pmars-sdl/${MY_P}.tar.gz" + +LICENSE="BSD GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="sdl X" + +RDEPEND=" + sdl? ( x11-libs/libX11 media-libs/libsdl[video] ) + X? ( x11-libs/libX11 ) + !sdl? ( !X? ( sys-libs/ncurses:0= ) ) +" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( "${FILESDIR}"/${P}-format.patch ) + +DOC_CONTENTS=" + There are some macros in ${GAMES_DATADIR}/${MY_PN}/macros + which you should make accessible to pmars by typing + export PMARSHOME=${GAMES_DATADIR}/${MY_PN}/macros\n +" + +src_compile() { + CFLAGS="${CFLAGS} -DEXT94 -DPERMUTATE" + LFLAGS="-x" + + if use sdl ; then + CFLAGS="${CFLAGS} -DSDLGRAPHX `sdl-config --cflags`" + LIB=`sdl-config --libs` + elif use X ; then + CFLAGS="${CFLAGS} -DXWINGRAPHX" + LIB="-L/usr/X11R6/lib -lX11" + else + CFLAGS="${CFLAGS} -DCURSESGRAPHX" + LIB="-lcurses" + 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 + done + + echo + einfo "linking with LIB: ${LIB}" + $(tc-getCC) ${LDFLAGS} *.o ${LIB} -o ${MY_PN} || die +} + +src_install() { + dobin src/${MY_PN} + doman doc/${MY_PN}.6 + + dodoc AUTHORS CONTRIB ChangeLog README doc/redcode.ref + readme.gentoo_create_doc + + insinto "/usr/share/${MY_PN}/warriors" + doins warriors/* + + insinto "/usr/share/${MY_PN}/macros" + doins config/*.mac +} + +pkg_postinst() { + readme.gentoo_print_elog +} |