summaryrefslogtreecommitdiff
path: root/games-arcade/gunocide2ex
diff options
context:
space:
mode:
Diffstat (limited to 'games-arcade/gunocide2ex')
-rw-r--r--games-arcade/gunocide2ex/Manifest5
-rw-r--r--games-arcade/gunocide2ex/files/gunocide2ex-1.0-build.patch178
-rw-r--r--games-arcade/gunocide2ex/files/gunocide2ex-1.0-glibc2.10.patch14
-rw-r--r--games-arcade/gunocide2ex/gunocide2ex-1.0.ebuild63
-rw-r--r--games-arcade/gunocide2ex/metadata.xml11
5 files changed, 271 insertions, 0 deletions
diff --git a/games-arcade/gunocide2ex/Manifest b/games-arcade/gunocide2ex/Manifest
new file mode 100644
index 000000000000..7e6ef920203d
--- /dev/null
+++ b/games-arcade/gunocide2ex/Manifest
@@ -0,0 +1,5 @@
+AUX gunocide2ex-1.0-build.patch 5419 BLAKE2B 63ad2cb0bfb48a3d5dbca05135896663f2bc4326e9d8905f140e938054d31600ad2ac7fc6c8c765fd5c90d1faade9c27574d8a848d321269102bdbb9abd71854 SHA512 92c3c2c16b7c4e57e11d79827db349cfb3df20e09c89e7daf8fc178475ea64851f6d79fd259824fe8c98fbed4901c0189ead7f76d3f3c834080369d1231f9692
+AUX gunocide2ex-1.0-glibc2.10.patch 377 BLAKE2B 63fc32459bc8e9eae71e220ee109e0ad5337f6d2714c6e1abf8ed802abf177df109d8572f05064381de65c9f436e01738b3621cbfb61301df90754f6da155b3c SHA512 66c166995981d841ce9a0ee0d6e56d5cc09c3856ccf72abeb4e42457ab6773ca1fdb0000e8be15445152b628dc8719bcb38c0fff30a9602a3592f3f2b6484ada
+DIST g2ex-setup.run 30844481 BLAKE2B 3d59d14e594c1f742d8f39098baeb68c4898f6d04aceefa1b6eeaf6c31378eda492b5984394c1b833e7b47b1360889e74f4e944fbf9721ac8f3456116bd469ca SHA512 e3c861843d88c3b09fa2e579d1be4b0590c04b7b401c7d592cf6b7150fc395445056ba599c0bc6f72ba7044cfc097070751d32bb66aa790e72e2b1c45407f2b2
+EBUILD gunocide2ex-1.0.ebuild 1621 BLAKE2B c3e2afb8399bdbf1c38b50ed6f6f34a70b80cfb51930cfb908338933000d7f2777c67b30299b1439fa71d04244f48c92f289911fa69596535825831f2d6b8de0 SHA512 d99245d55e2c8d5b481ae2c40fb582a50586f719723b2a76c356d69e60d111d12e2db796ff2154305fe54c2895664e6928f38c84c3879c0a0a4353c22b074d5c
+MISC metadata.xml 327 BLAKE2B 78befc8fb90a335e458fc40d096a8dd59c04da0c72b039f7ad816d37693558514d77a40f9bbec5966aa611d2f323a1e12ac44b2dcefda015260e669f3e622887 SHA512 0ad645742ce134798ac8178d859ccdeedc9b060f7d5065b825ac9c9158130e7221c068264ce82e95f066294c045a9440a9aca241484115057ad3a709afad905f
diff --git a/games-arcade/gunocide2ex/files/gunocide2ex-1.0-build.patch b/games-arcade/gunocide2ex/files/gunocide2ex-1.0-build.patch
new file mode 100644
index 000000000000..9abce6c01a2b
--- /dev/null
+++ b/games-arcade/gunocide2ex/files/gunocide2ex-1.0-build.patch
@@ -0,0 +1,178 @@
+diff -ur work.orig/src/cEffects.cpp work/src/cEffects.cpp
+--- work.orig/src/cEffects.cpp 2002-01-12 16:19:00.000000000 -0500
++++ work/src/cEffects.cpp 2009-06-10 18:14:27.000000000 -0400
+@@ -180,7 +180,6 @@
+ {
+ if(!i->update())
+ i=lEffects.erase(i);
+- if(i==NULL)break;
+ }
+
+ for(p=lParticles.begin();p!=lParticles.end();++p)
+@@ -190,8 +189,6 @@
+ if(!p->active())
+ {
+ p=lParticles.erase(p);
+- if(p==NULL)
+- break;
+ }
+ }
+
+diff -ur work.orig/src/cFont.cpp work/src/cFont.cpp
+--- work.orig/src/cFont.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cFont.cpp 2009-06-10 18:19:15.000000000 -0400
+@@ -62,7 +62,7 @@
+ }
+
+ ///lädt einen TTF-Font ein
+-bool cFont::load(char *path,int size)
++bool cFont::load(const char *path,int size)
+ {
+ font = TTF_OpenFont(path,size);
+ if(font==NULL)
+diff -ur work.orig/src/cFont.h work/src/cFont.h
+--- work.orig/src/cFont.h 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cFont.h 2009-06-10 18:19:27.000000000 -0400
+@@ -34,7 +34,7 @@
+ static void delInstance();
+ static bool initttf();
+
+- bool load(char *path,int size);
++ bool load(const char *path,int size);
+ void setcolor(int r,int g,int b);
+ void setshader(int r,int g,int b);
+ void print(SDL_Surface *screen,int posx,int posy,const char *fmt, ...);
+diff -ur work.orig/src/cParticleSys.cpp work/src/cParticleSys.cpp
+--- work.orig/src/cParticleSys.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cParticleSys.cpp 2009-06-10 18:14:27.000000000 -0400
+@@ -81,9 +81,6 @@
+ if(time-p->getstarttime()>p->getlifetime())
+ {
+ p=lParticles.erase(p);
+- if(p==NULL)
+- break;
+-
+ }
+ }
+
+diff -ur work.orig/src/cSound.cpp work/src/cSound.cpp
+--- work.orig/src/cSound.cpp 2002-01-12 16:27:34.000000000 -0500
++++ work/src/cSound.cpp 2009-06-10 18:17:44.000000000 -0400
+@@ -92,7 +92,7 @@
+ }
+
+ ///spielt eine ogg-datei ab
+-bool cSound::playogg(char *path)
++bool cSound::playogg(const char *path)
+ {
+ if(!sound_on)
+ return true;
+diff -ur work.orig/src/cSound.h work/src/cSound.h
+--- work.orig/src/cSound.h 2002-01-08 12:30:57.000000000 -0500
++++ work/src/cSound.h 2009-06-10 18:17:50.000000000 -0400
+@@ -35,7 +35,7 @@
+
+ bool init();
+ void close();
+- bool playogg(char *path);
++ bool playogg(const char *path);
+ void stopogg();
+ bool loadwav(int index,char *path);
+ void playwav(int index);
+diff -ur work.orig/src/cSprite.cpp work/src/cSprite.cpp
+--- work.orig/src/cSprite.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cSprite.cpp 2009-06-10 18:18:34.000000000 -0400
+@@ -29,7 +29,7 @@
+
+ ///lädt ein BMP in das image-Surface
+ ///gibt false zurück falls es schief geht
+-bool cSprite::loadBMP(char *path)
++bool cSprite::loadBMP(const char *path)
+ {
+ image=SDL_LoadBMP(path);
+ if(!image)
+@@ -73,4 +73,4 @@
+ int cSprite::getheight()
+ {
+ return image->h;
+-}
+\ No newline at end of file
++}
+diff -ur work.orig/src/cSprite.h work/src/cSprite.h
+--- work.orig/src/cSprite.h 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cSprite.h 2009-06-10 18:18:44.000000000 -0400
+@@ -26,7 +26,7 @@
+ cSprite();
+ ~cSprite();
+
+- bool loadBMP(char *path);
++ bool loadBMP(const char *path);
+ void render(SDL_Surface *screen,int x,int y);
+ void setColorKey(int r,int g,int b);
+
+diff -ur work.orig/src/cSpriteAnim.cpp work/src/cSpriteAnim.cpp
+--- work.orig/src/cSpriteAnim.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cSpriteAnim.cpp 2009-06-10 18:20:09.000000000 -0400
+@@ -145,7 +145,7 @@
+ }
+
+ ///einladen einer Animation aus einer Datei
+-bool cSpriteAnim::load(char *path)
++bool cSpriteAnim::load(const char *path)
+ {
+ FILE *file;
+ char buffer[512];
+@@ -248,4 +248,4 @@
+ {
+ if(anim==NULL)return -1;
+ return gfx_sprite[anim->getAct()].getwidth();
+-}
+\ No newline at end of file
++}
+diff -ur work.orig/src/cSpriteAnim.h work/src/cSpriteAnim.h
+--- work.orig/src/cSpriteAnim.h 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cSpriteAnim.h 2009-06-10 18:20:16.000000000 -0400
+@@ -53,7 +53,7 @@
+ cSpriteAnim();
+ ~cSpriteAnim();
+
+- bool load(char *path);
++ bool load(const char *path);
+ void setColorKey(int r,int g,int b);
+ void render(SDL_Surface *screen,cAnim *anim,int x,int y);
+ int getMaxNum();
+diff -ur work.orig/src/cUtil.cpp work/src/cUtil.cpp
+--- work.orig/src/cUtil.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cUtil.cpp 2009-06-10 18:16:29.000000000 -0400
+@@ -85,7 +85,7 @@
+ }
+
+ ///liest einen wert aus einer config-datei
+-char* cUtil::getconfigvalue(char *path,char *value)
++char* cUtil::getconfigvalue(const char *path,const char *value)
+ {
+ FILE *file;
+ char buffer[512];
+diff -ur work.orig/src/cUtil.h work/src/cUtil.h
+--- work.orig/src/cUtil.h 2002-01-02 07:57:46.000000000 -0500
++++ work/src/cUtil.h 2009-06-10 18:16:39.000000000 -0400
+@@ -31,7 +31,7 @@
+
+ void updatetime();
+ float sync(float Faktor);
+- char* getconfigvalue(char *path,char *value);
++ char* getconfigvalue(const char *path,const char *value);
+ void drawpixel(SDL_Surface *screen, int x, int y,Uint8 R, Uint8 G,Uint8 B);
+ bool collision(SDL_Rect objekt1,SDL_Rect objekt2);
+
+diff -ur work.orig/src/mmgr.cpp work/src/mmgr.cpp
+--- work.orig/src/mmgr.cpp 2002-01-02 07:57:46.000000000 -0500
++++ work/src/mmgr.cpp 2009-06-10 18:14:23.000000000 -0400
+@@ -59,6 +59,7 @@
+ #include <time.h>
+ #include <stdarg.h>
+ #include <new>
++using namespace std;
+
+ #ifndef WIN32
+ #include <unistd.h>
diff --git a/games-arcade/gunocide2ex/files/gunocide2ex-1.0-glibc2.10.patch b/games-arcade/gunocide2ex/files/gunocide2ex-1.0-glibc2.10.patch
new file mode 100644
index 000000000000..6b659c76a82d
--- /dev/null
+++ b/games-arcade/gunocide2ex/files/gunocide2ex-1.0-glibc2.10.patch
@@ -0,0 +1,14 @@
+--- src/mmgr.cpp
++++ src/mmgr.cpp
+@@ -228,9 +228,9 @@
+
+ static const char *sourceFileStripper(const char *sourceFile)
+ {
+- char *ptr = strrchr(sourceFile, '\\');
++ char *ptr = strrchr((char *)sourceFile, '\\');
+ if (ptr) return ptr + 1;
+- ptr = strrchr(sourceFile, '/');
++ ptr = strrchr((char *)sourceFile, '/');
+ if (ptr) return ptr + 1;
+ return sourceFile;
+ }
diff --git a/games-arcade/gunocide2ex/gunocide2ex-1.0.ebuild b/games-arcade/gunocide2ex/gunocide2ex-1.0.ebuild
new file mode 100644
index 000000000000..6b208fb284eb
--- /dev/null
+++ b/games-arcade/gunocide2ex/gunocide2ex-1.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils unpacker toolchain-funcs games
+
+DESCRIPTION="fast-paced 2D shoot'em'up"
+HOMEPAGE="http://g2ex.sourceforge.net/"
+SRC_URI="mirror://sourceforge/g2ex/g2ex-setup.run"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND="media-libs/libsdl[video]
+ media-libs/sdl-ttf
+ media-libs/sdl-mixer[vorbis]"
+RDEPEND=${DEPEND}
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack_makeself
+ mkdir binary || die
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-glibc2.10.patch
+ edos2unix config.cfg
+ sed -i \
+ -e "s:/usr/local/games/gunocide2ex/config\.cfg:${GAMES_SYSCONFDIR}/${PN}.cfg:" \
+ -e "s:/usr/local/games/gunocide2ex/hscore\.dat:${GAMES_STATEDIR}/${PN}-hscore.dat:" \
+ -e "s:memleaks.log:/dev/null:" \
+ src/*.{h,cpp} || die
+ sed -i \
+ -e "s:/usr/local/games:${GAMES_DATADIR}:" \
+ src/*.{h,cpp} $(find gfx -name '*.txt') || die
+}
+
+src_compile() {
+ cd src
+ emake CXXFLAGS="$CXXFLAGS $(sdl-config --cflags)" $(echo *.cpp | sed 's/\.cpp/.o/g')
+ $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} -o ${PN} *.o -lpthread -lSDL -lSDL_ttf -lSDL_mixer || die
+}
+
+src_install() {
+ dogamesbin src/${PN}
+ dosym ${PN} "${GAMES_BINDIR}/g2ex"
+ insinto "${GAMES_DATADIR}/${PN}"
+ doins -r gfx sfx lvl credits arial.ttf
+ insinto "${GAMES_SYSCONFDIR}"
+ newins config.cfg ${PN}.cfg
+ insinto "${GAMES_STATEDIR}"
+ newins hscore.dat ${PN}-hscore.dat
+ dodoc history doc/MANUAL_DE
+ dohtml doc/manual_de.html
+ newicon g2icon.xpm ${PN}.xpm
+ make_desktop_entry ${PN} "Gunocide II EX"
+ prepgamesdirs
+}
diff --git a/games-arcade/gunocide2ex/metadata.xml b/games-arcade/gunocide2ex/metadata.xml
new file mode 100644
index 000000000000..3ae017fcc5cc
--- /dev/null
+++ b/games-arcade/gunocide2ex/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">g2ex</remote-id>
+ </upstream>
+</pkgmetadata>