diff options
author | Alfredo Tupone <tupone@gentoo.org> | 2008-10-21 21:05:50 +0000 |
---|---|---|
committer | Alfredo Tupone <tupone@gentoo.org> | 2008-10-21 21:05:50 +0000 |
commit | b05e942088d8716ba68dccefdab5e08062d7cdab (patch) | |
tree | f0412c3969e990d0093769c41445b845940c2914 /games-strategy/glest | |
parent | Migrate to slot dependencies. (diff) | |
download | gentoo-2-b05e942088d8716ba68dccefdab5e08062d7cdab.tar.gz gentoo-2-b05e942088d8716ba68dccefdab5e08062d7cdab.tar.bz2 gentoo-2-b05e942088d8716ba68dccefdab5e08062d7cdab.zip |
Version bump to 3.1.2 Bug #208291
(Portage version: 2.1.4.5)
Diffstat (limited to 'games-strategy/glest')
-rw-r--r-- | games-strategy/glest/ChangeLog | 10 | ||||
-rw-r--r-- | games-strategy/glest/files/glest-3.1.2-gcc43.patch | 31 | ||||
-rw-r--r-- | games-strategy/glest/files/glest-3.1.2-home.patch | 166 | ||||
-rw-r--r-- | games-strategy/glest/glest-3.1.2.ebuild | 106 |
4 files changed, 311 insertions, 2 deletions
diff --git a/games-strategy/glest/ChangeLog b/games-strategy/glest/ChangeLog index c1221af3912b..dc9e32b68ed5 100644 --- a/games-strategy/glest/ChangeLog +++ b/games-strategy/glest/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for games-strategy/glest -# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/games-strategy/glest/ChangeLog,v 1.17 2007/11/21 04:19:03 dirtyepic Exp $ +# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-strategy/glest/ChangeLog,v 1.18 2008/10/21 21:05:49 tupone Exp $ + +*glest-3.1.2 (21 Oct 2008) + + 21 Oct 2008; <tupone@gentoo.org> +files/glest-3.1.2-gcc43.patch, + +files/glest-3.1.2-home.patch, +glest-3.1.2.ebuild: + Version bump to 3.1.2 Bug #208291 by GNUtoo@no-log.org 21 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> glest-2.0.1.ebuild: Allow building with ftjam for bug #188194 diff --git a/games-strategy/glest/files/glest-3.1.2-gcc43.patch b/games-strategy/glest/files/glest-3.1.2-gcc43.patch new file mode 100644 index 000000000000..425aa6f9ff4c --- /dev/null +++ b/games-strategy/glest/files/glest-3.1.2-gcc43.patch @@ -0,0 +1,31 @@ +--- shared_lib/sources/platform/posix/socket.cpp.old 2008-10-19 13:45:33.000000000 +0200 ++++ shared_lib/sources/platform/posix/socket.cpp 2008-10-19 13:48:42.000000000 +0200 +@@ -8,6 +8,8 @@ + + #include "socket.h" + ++#include <stdlib.h> ++#include <string.h> + #include <stdexcept> + #include <sstream> + #if defined(HAVE_SYS_IOCTL_H) +--- shared_lib/sources/util/conversion.cpp.old 2008-10-19 14:12:55.000000000 +0200 ++++ shared_lib/sources/util/conversion.cpp 2008-10-19 14:13:49.000000000 +0200 +@@ -13,6 +13,7 @@ + + #include <stdexcept> + #include <cstdio> ++#include <stdlib.h> + + #include "leak_dumper.h" + +--- shared_lib/sources/util/util.cpp.old 2008-10-19 14:20:17.000000000 +0200 ++++ shared_lib/sources/util/util.cpp 2008-10-19 14:21:07.000000000 +0200 +@@ -14,6 +14,7 @@ + #include <ctime> + #include <cassert> + #include <stdexcept> ++#include <string.h> + + #include "leak_dumper.h" + diff --git a/games-strategy/glest/files/glest-3.1.2-home.patch b/games-strategy/glest/files/glest-3.1.2-home.patch new file mode 100644 index 000000000000..df0351f05853 --- /dev/null +++ b/games-strategy/glest/files/glest-3.1.2-home.patch @@ -0,0 +1,166 @@ +--- glest_game/ai/ai_interface.cpp.old 2008-10-20 22:06:57.000000000 +0200 ++++ glest_game/ai/ai_interface.cpp 2008-10-20 22:09:19.000000000 +0200 +@@ -48,7 +48,9 @@ + + //clear log file + if(logLevel>0){ +- FILE *f= fopen(getLogFilename().c_str(), "wt"); ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/%s", getenv("HOME"), getLogFilename().c_str()); ++ FILE *f= fopen(path, "wt"); + if(f==NULL){ + throw runtime_error("Can't open file: "+getLogFilename()); + } +@@ -71,7 +73,9 @@ + string logString= "(" + intToStr(factionIndex) + ") " + s; + + //print log to file +- FILE *f= fopen(getLogFilename().c_str(), "at"); ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/%s", getenv("HOME"), getLogFilename().c_str()); ++ FILE *f= fopen(path, "at"); + if(f==NULL){ + throw runtime_error("Can't open file: "+getLogFilename()); + } +--- glest_game/game/game.cpp.old 2008-10-19 14:28:24.000000000 +0200 ++++ glest_game/game/game.cpp 2008-10-19 14:28:51.000000000 +0200 +@@ -11,6 +11,8 @@ + + #include "game.h" + ++#include <limits.h> ++ + #include "config.h" + #include "renderer.h" + #include "particle_renderer.h" +@@ -400,9 +400,10 @@ + } + else if(key=='E'){ + for(int i=0; i<100; ++i){ +- string path= "screens/screen" + intToStr(i) + ".tga"; ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/screens/screen%d.tga", getenv("HOME"), i); + +- FILE *f= fopen(path.c_str(), "rb"); ++ FILE *f= fopen(path, "rb"); + if(f==NULL){ + Renderer::getInstance().saveScreen(path); + break; +--- glest_game/main/main.cpp.old 2008-10-18 22:03:33.000000000 +0200 ++++ glest_game/main/main.cpp 2008-10-18 22:05:22.000000000 +0200 +@@ -13,6 +13,7 @@ + + #include <string> + #include <cstdlib> ++#include <sys/stat.h> + + #include "game.h" + #include "main_menu.h" +@@ -38,7 +38,9 @@ + class ExceptionHandler: public PlatformExceptionHandler{ + public: + virtual void handle(string description, void *address){ +- FILE *f= fopen("crash.txt", "at"); ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/crash.txt", getenv("HOME")); ++ FILE *f= fopen(path, "at"); + if(f!=NULL){ + time_t t= time(NULL); + char *timeString= asctime(localtime(&t)); +@@ -130,6 +130,17 @@ + // ===================================================== + + int glestMain(int argc, char** argv){ ++ if (!getenv("HOME")) ++ throw runtime_error("HOME external variable is not set"); ++ ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest", getenv("HOME")); ++ mkdir(path, 0750); ++ ++ snprintf(path, PATH_MAX, "%s/.glest/screens", getenv("HOME")); ++ mkdir(path, 0750); ++ ++ chdir("@GENTOO_DATADIR@"); + + MainWindow *mainWindow= NULL; + Program *program= NULL; +--- glest_game/main/program.cpp.old 2008-10-20 22:11:29.000000000 +0200 ++++ glest_game/main/program.cpp 2008-10-20 22:12:16.000000000 +0200 +@@ -197,8 +197,10 @@ + updateCameraTimer.init(GameConstants::cameraFps, maxTimes); + + //log start ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/glest.log", getenv("HOME")); + Logger &logger= Logger::getInstance(); +- logger.setFile("glest.log"); ++ logger.setFile(path); + logger.clear(); + + //lang +--- shared_lib/sources/util/leak_dumper.cpp.old 2008-10-21 22:35:33.000000000 +0200 ++++ shared_lib/sources/util/leak_dumper.cpp 2008-10-21 22:36:28.000000000 +0200 +@@ -52,7 +52,9 @@ + } + + AllocRegistry::~AllocRegistry(){ +- dump("leak_dump.log"); ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/leak_dump.log", getenv("HOME")); ++ dump(path); + } + + void AllocRegistry::allocate(AllocInfo info){ +--- shared_lib/sources/util/properties.cpp.old 2008-10-19 14:37:19.000000000 +0200 ++++ shared_lib/sources/util/properties.cpp 2008-10-19 14:37:49.000000000 +0200 +@@ -13,6 +13,9 @@ + + #include <fstream> + #include <stdexcept> ++#include <limits.h> ++#include <stdlib.h> ++#include <string.h> + + #include "conversion.h" + #include "leak_dumper.h" +@@ -33,9 +33,13 @@ + + this->path= path; + +- fileStream.open(path.c_str(), ios_base::in); ++ char str[PATH_MAX]; ++ snprintf(str, PATH_MAX, "%s/.glest/%s", getenv("HOME"), path.c_str()); ++ fileStream.open(str, ios_base::in); + if(fileStream.fail()){ +- throw runtime_error("Can't open propertyMap file: " + path); ++ fileStream.open(path.c_str(), ios_base::in); // use defaults ++ if(fileStream.fail()) ++ throw runtime_error("Can't open propertyMap file: " + path); + } + + propertyMap.clear(); +@@ -71,7 +75,9 @@ + void Properties::save(const string &path){ + ofstream fileStream; + +- fileStream.open(path.c_str(), ios_base::out | ios_base::trunc); ++ char str[PATH_MAX]; ++ snprintf(str, PATH_MAX, "%s/.glest/%s", getenv("HOME"), path.c_str()); ++ fileStream.open(str, ios_base::out | ios_base::trunc); + + fileStream << "; === propertyMap File === \n"; + fileStream << '\n'; +--- shared_lib/sources/util/profiler.cpp.old 2008-10-21 22:38:11.000000000 +0200 ++++ shared_lib/sources/util/profiler.cpp 2008-10-21 22:38:50.000000000 +0200 +@@ -71,7 +71,9 @@ + Profiler::~Profiler(){ + rootSection->stop(); + +- FILE *f= fopen("profiler.log", "w"); ++ char path[PATH_MAX]; ++ snprintf(path, PATH_MAX, "%s/.glest/profiler.log", getenv("HOME")); ++ FILE *f= fopen(path, "w"); + if(f==NULL) + throw runtime_error("Can not open file: profiler.log"); + diff --git a/games-strategy/glest/glest-3.1.2.ebuild b/games-strategy/glest/glest-3.1.2.ebuild new file mode 100644 index 000000000000..dd12b1429f3a --- /dev/null +++ b/games-strategy/glest/glest-3.1.2.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-strategy/glest/glest-3.1.2.ebuild,v 1.1 2008/10/21 21:05:49 tupone Exp $ + +inherit autotools eutils games + +L_URI="http://www.glest.org/files/contrib/translations" +DESCRIPTION="Cross-platform 3D realtime strategy game" +HOMEPAGE="http://www.glest.org/" +SRC_URI="mirror://sourceforge/${PN}/${PN}-source-${PV}.tar.bz2 + mirror://sourceforge/${PN}/${PN}_data_${PV}.zip + linguas_pt_BR? ( ${L_URI}/brazilian_${PV}.zip ) + linguas_cs? ( ${L_URI}/cesky_${PV}.zip ) + linguas_de? ( ${L_URI}/german_${PV}.zip ) + linguas_hu? ( ${L_URI}/magyar_${PV}.zip ) + linguas_no? ( ${L_URI}/norsk_${PV}.zip ) + linguas_ru? ( ${L_URI}/russian_${PV}.zip ) + linguas_tr? ( ${L_URI}/turkish_${PV}.zip )" + +LICENSE="GPL-2 glest-data" +SLOT="0" +KEYWORDS="~amd64 -ppc ~x86" # ppc: bug #145478 +IUSE="linguas_pt_BR linguas_cs linguas_de linguas_hu linguas_no linguas_ru +linguas_tr" + +RDEPEND="media-libs/libsdl + media-libs/libogg + media-libs/libvorbis + media-libs/openal + dev-libs/xerces-c + virtual/opengl + virtual/glu + x11-libs/libX11 + media-fonts/font-adobe-utopia-75dpi" +DEPEND="${RDEPEND} + app-arch/unzip + dev-util/ftjam" + +S="${WORKDIR}"/${PN}-source-${PV} + +GAMES_USE_SDL="nojoystick" + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch \ + "${FILESDIR}"/${P}-{home,gcc43}.patch + + sed -i \ + -e "s:@GENTOO_DATADIR@:${GAMES_DATADIR}/${PN}:" \ + glest_game/main/main.cpp \ + || die "sed main.cpp failed" + + # sometimes they package configure, sometimes they don't + if [[ ! -f configure ]] ; then + chmod a+x autogen.sh + ./autogen.sh || die "autogen failed" # FIXME: use autotools.eclass + fi + + sed -i 's:-O3 -g3::' Jamrules || die "sed Jamrules failed" +} + +src_compile() { + # Fails with wx enabled, bug #130011 + egamesconf \ + --with-vorbis=/usr \ + --with-ogg=/usr \ + --with-wx-config=disabled_wx \ + || die + jam -q || die "jam failed" +} + +src_install() { + dogamesbin glest || die "dogamesbin glest failed" + + insinto "${GAMES_DATADIR}"/${PN} + doins glest.ini || die "doins glest.ini failed" + dodoc README.linux || die "dodoc README.linux failed" + + cd "${WORKDIR}"/glest_game + doins -r servers.ini \ + glest_irc.url \ + glest_web.url \ + data maps scenarios techs tilesets || die "doins data failed" + dodoc docs/readme.txt || die "dodoc docs/readme.txt failed" + + newicon techs/magitech/factions/magic/units/archmage/images/archmage.bmp \ + ${PN}.bmp + make_desktop_entry glest Glest /usr/share/pixmaps/${PN}.bmp + + dolang() { + insinto "${GAMES_DATADIR}"/${PN}/data/lang + doins "${WORKDIR}"/${1} || die "doins ${1} failed" + } + + use linguas_pt_BR && dolang brazilian_${PV}.lng + use linguas_cs && dolang cesky.lng + use linguas_de && dolang german.lng + use linguas_hu && dolang magyar.lng + use linguas_no && dolang norsk.lng + use linguas_ru && dolang russian.lng + use linguas_tr && dolang turkish.lng + + prepgamesdirs +} |