summaryrefslogtreecommitdiff
path: root/games-strategy/glob2
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/glob2')
-rw-r--r--games-strategy/glob2/Manifest8
-rw-r--r--games-strategy/glob2/files/glob2-0.9.4.4-gcc44.patch12
-rw-r--r--games-strategy/glob2/files/glob2-0.9.4.4-gcc49.patch35
-rw-r--r--games-strategy/glob2/files/glob2-0.9.4.4-gcc6.patch49
-rw-r--r--games-strategy/glob2/files/glob2-0.9.4.4-scons-blows.patch26
-rw-r--r--games-strategy/glob2/files/glob2-0.9.4.4-underlinking.patch19
-rw-r--r--games-strategy/glob2/glob2-0.9.4.4-r2.ebuild64
-rw-r--r--games-strategy/glob2/metadata.xml15
8 files changed, 228 insertions, 0 deletions
diff --git a/games-strategy/glob2/Manifest b/games-strategy/glob2/Manifest
new file mode 100644
index 000000000000..8cfd63e1a78b
--- /dev/null
+++ b/games-strategy/glob2/Manifest
@@ -0,0 +1,8 @@
+AUX glob2-0.9.4.4-gcc44.patch 188 BLAKE2B bd6fc1a3ad79eb29e070d53099079c403553add1e8fcf513d8c5cf58902120ff0735ad0cc78d396329ababf64d94355c21b9e2269046467b8a68069cee0afdc4 SHA512 c341e484311fa508f9a034d216729fa7a8251e6fb710fe6417bd0a000b89a870cf5a24850e6126a704f160fee064fa7211973da8f3720dbd9a96df86adcd67fd
+AUX glob2-0.9.4.4-gcc49.patch 907 BLAKE2B f7ad515c19660af0713ca8c79c40a4c225372da85d17dfa58bc4a31e65bdced9a24ae9ff3f8f57f623da0011b24d841618bfc8fe09000703db94bc9e89a66971 SHA512 7a1f19fe40effa577b2eb03ec4f2ddd7df78bff1c3df25c8b15df37d9feb03e4583e1776e4c2240130f318f9fa643d2d662492c9c5be46ed659bd587f88eafac
+AUX glob2-0.9.4.4-gcc6.patch 1767 BLAKE2B 41716842d1d0552e4ea05e4ae189b92ea600ca5e31604bf19e5659ca6690c7e394d25f11baf3fee07b9bdfcba6a748586b152a0141312daad89ab76946ea4d82 SHA512 d2eddfe657f81a1ec085298f09aafb904d22a80d601aca6405d92d6f17b28d0f3f3b5b445a9423988b7bc8869ca41698783e4139928f9f2ba33093ded6a3cb02
+AUX glob2-0.9.4.4-scons-blows.patch 908 BLAKE2B 6d677c0588dbad9f44307579549946c8979b956331be3ef667fb4bbcd6fdf3e9889b22cd4c9458a76f487b12bc73ae73dfba03e0c1f86fb228e1934b1d4e67cc SHA512 0d805014200c76ca571ecc97c284b9168f280df0e88060c880b284b8e3d5490c1512708857bb22a0b2a4e4b78716d98ae26ae552531f661bb38f6dd75af474d3
+AUX glob2-0.9.4.4-underlinking.patch 672 BLAKE2B 59fbd0afacd468cc6a2e6e18336c524653697f42404124d9b2347246130ba390a202cb2b88fa223bd80063e6555211a5065cbf08dd4d113b7dadd2e0ad9a3f41 SHA512 24551c73af34badaa4a464da30c771c95082f0bfe83f351b264abddc578d5486a71f1a79b02d13ff48753e67059f8350752e77eb89397029833647bb74d79d21
+DIST glob2-0.9.4.4.tar.gz 11338986 BLAKE2B 047f27385c9b819c6ca2614406d340ff2cb7dcc26c8a20a205b11dce234af4ea52cb4eb04b7ed5b695382b17b34b5dd50387d61cfecaced16ee61b3c69c2921f SHA512 c82ace807ad208bc386b730f1fe6d6162640a9468440482f3584f8ccab825967660d8bbf6b3bebf70c74d1ed95f153cd9b5a0bd72dc247a1f97176c6c737f6ca
+EBUILD glob2-0.9.4.4-r2.ebuild 1251 BLAKE2B 41c2a82cecb07b7e544d457519af07829702584b083990933ac2f2a64024cc10e3a5bd9546dcf9712fa762560efbae6bf3ffdd3d53d45ffc3259d3d145947f39 SHA512 aff57e535f19cae25e86dd0f85edbcccec499951d5e12c2c718bc83f70f061de9b6b5f705a4da86e0d2dee51f815383e73f6495e0644a9eb5fed9c4396876e36
+MISC metadata.xml 637 BLAKE2B 405198c067618ace05cf22e6b790a356eb643cddf921f07a37516cc661f37706adab72edde18639abaa5b23ebfe771877ced14f1eacb3d9da83ed5c9e32213f5 SHA512 af021418808275511478f34bcbd4a3fadd193a583c7e94c676e94d39d10fb23c8d2de7b3ef5c8da81f2f6291a3bf9d0cc09448aea1b16959e7c811ba38d64e66
diff --git a/games-strategy/glob2/files/glob2-0.9.4.4-gcc44.patch b/games-strategy/glob2/files/glob2-0.9.4.4-gcc44.patch
new file mode 100644
index 000000000000..8d2da78cee23
--- /dev/null
+++ b/games-strategy/glob2/files/glob2-0.9.4.4-gcc44.patch
@@ -0,0 +1,12 @@
+--- a/libgag/include/StreamBackend.h.old
++++ b/libgag/include/StreamBackend.h
+@@ -28,6 +28,9 @@
+ #ifdef putc
+ #undef putc
+ #endif
++#ifdef getc
++#undef getc
++#endif
+
+ namespace GAGCore
+ {
diff --git a/games-strategy/glob2/files/glob2-0.9.4.4-gcc49.patch b/games-strategy/glob2/files/glob2-0.9.4.4-gcc49.patch
new file mode 100644
index 000000000000..fca1efb5891a
--- /dev/null
+++ b/games-strategy/glob2/files/glob2-0.9.4.4-gcc49.patch
@@ -0,0 +1,35 @@
+From https://bugs.gentoo.org/show_bug.cgi?id=538580
+
+Works around this build failure:
+
+In file included from src/AICastor.cpp:26:0:
+src/Game.h: In member function 'void AICastor::computeBuildingNeighbourMap(int, int)':
+src/Game.h:152:9: error: 'struct Game::BuildProject' is private
+ struct BuildProject
+ ^
+src/AICastor.cpp:2296:23: error: within this context
+ for (std::list<Game::BuildProject>::iterator bpi=game->buildProjects.begin(); bpi!=game->buildProjects.end(); bpi++)
+ ^
+scons: *** [src/AICastor.o] Error 1
+scons: building terminated because of errors.
+
+patch submitted by zimous
+
+--- glob2-0.9.4.4.orig/src/Game.h
++++ glob2-0.9.4.4/src/Game.h
+@@ -149,6 +149,7 @@
+ BOTTOM_TO_TOP
+ };
+
++public:
+ struct BuildProject
+ {
+ int posX;
+@@ -159,6 +160,7 @@
+ int unitWorkingFuture;
+ };
+
++private:
+ ///Initiates Game
+ void init(GameGUI *gui, MapEdit* edit);
+
diff --git a/games-strategy/glob2/files/glob2-0.9.4.4-gcc6.patch b/games-strategy/glob2/files/glob2-0.9.4.4-gcc6.patch
new file mode 100644
index 000000000000..f1152c3ba1cc
--- /dev/null
+++ b/games-strategy/glob2/files/glob2-0.9.4.4-gcc6.patch
@@ -0,0 +1,49 @@
+Bug: https://bugs.gentoo.org/610382
+Upstream commit: https://bitbucket.org/giszmo/glob2/commits/c9dc715624318e4fea4abb24e04f0ebdd9cd8d2a
+
+# HG changeset patch
+# User Jonathan Wakely <jwakely@redhat.com>
+# Date 1485875296 0
+# Node ID c9dc715624318e4fea4abb24e04f0ebdd9cd8d2a
+# Parent c4da01699846179d8bf21e8dae2b973158ec0775
+Fix last argument to ChooseMapScreen constructor
+
+Since C++14 'false' is not a valid null pointer constant, so cannot be passed
+to functions expecting pointer arguments.
+
+diff --git a/src/EditorMainMenu.cpp b/src/EditorMainMenu.cpp
+--- a/src/EditorMainMenu.cpp
++++ b/src/EditorMainMenu.cpp
+@@ -90,7 +90,7 @@
+ }
+ else if (par1==LOADMAP)
+ {
+- ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", false);
++ ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", NULL);
+ int rc=chooseMapScreen.execute(globalContainer->gfx, 40);
+ if (rc==ChooseMapScreen::OK)
+ {
+diff --git a/src/LANMenuScreen.cpp b/src/LANMenuScreen.cpp
+--- a/src/LANMenuScreen.cpp
++++ b/src/LANMenuScreen.cpp
+@@ -62,7 +62,7 @@
+ }
+ else if(par1 == HOST)
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
+diff --git a/src/YOGClientLobbyScreen.cpp b/src/YOGClientLobbyScreen.cpp
+--- a/src/YOGClientLobbyScreen.cpp
++++ b/src/YOGClientLobbyScreen.cpp
+@@ -326,7 +326,7 @@
+
+ void YOGClientLobbyScreen::hostGame()
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
diff --git a/games-strategy/glob2/files/glob2-0.9.4.4-scons-blows.patch b/games-strategy/glob2/files/glob2-0.9.4.4-scons-blows.patch
new file mode 100644
index 000000000000..b3e6e86eb485
--- /dev/null
+++ b/games-strategy/glob2/files/glob2-0.9.4.4-scons-blows.patch
@@ -0,0 +1,26 @@
+--- a/SConstruct.orig
++++ b/SConstruct
+@@ -1,6 +1,7 @@
+ EnsureSConsVersion(0, 96, 92)
+ import sys
+ import os
++import SCons.Util
+ import glob
+ sys.path.append( os.path.abspath("scons") )
+ import bundle
+@@ -268,6 +269,15 @@
+ env["TARFILE"] = env.Dir("#").abspath + "/glob2-" + env["VERSION"] + ".tar.gz"
+ env["TARFLAGS"] = "-c -z"
+ env.Alias("dist", env["TARFILE"])
++ # Using suggestions for https://dev.gentoo.org/~vapier/scons-blows.txt
++ if os.environ.has_key('CC'):
++ env['CC'] = os.environ['CC']
++ if os.environ.has_key('CXX'):
++ env['CXX'] = os.environ['CXX']
++ if os.environ.has_key('CXXFLAGS'):
++ env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
++ if os.environ.has_key('LDFLAGS'):
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
+
+ def PackTar(target, source):
+ if "dist" in COMMAND_LINE_TARGETS:
diff --git a/games-strategy/glob2/files/glob2-0.9.4.4-underlinking.patch b/games-strategy/glob2/files/glob2-0.9.4.4-underlinking.patch
new file mode 100644
index 000000000000..65eba48717db
--- /dev/null
+++ b/games-strategy/glob2/files/glob2-0.9.4.4-underlinking.patch
@@ -0,0 +1,19 @@
+--- glob2-0.9.4.4.orig/SConstruct
++++ glob2-0.9.4.4/SConstruct
+@@ -110,6 +110,16 @@
+ print "Could not find libz or zlib1.dll"
+ missing.append("zlib")
+
++ boost_system = ''
++ if conf.CheckLib("boost_system"):
++ boost_system="boost_system"
++ elif conf.CheckLib("boost_system-mt"):
++ boost_system="boost_system-mt"
++ else:
++ print "Could not find libboost_system or libboost_system-mt"
++ missing.append("libboost_system")
++ env.Append(LIBS=[boost_system])
++
+ boost_thread = ''
+ if conf.CheckLib("boost_thread") and conf.CheckCXXHeader("boost/thread/thread.hpp"):
+ boost_thread="boost_thread"
diff --git a/games-strategy/glob2/glob2-0.9.4.4-r2.ebuild b/games-strategy/glob2/glob2-0.9.4.4-r2.ebuild
new file mode 100644
index 000000000000..fe7cdc7b1729
--- /dev/null
+++ b/games-strategy/glob2/glob2-0.9.4.4-r2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit desktop gnome2-utils scons-utils
+
+DESCRIPTION="Real Time Strategy (RTS) game involving a brave army of globs"
+HOMEPAGE="http://globulation2.org/"
+SRC_URI="mirror://nongnu/glob2/${PV:0:5}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ >=dev-libs/boost-1.34[threads]
+ dev-libs/fribidi
+ media-libs/libsdl[opengl]
+ media-libs/libvorbis
+ media-libs/sdl-image[png]
+ media-libs/sdl-net
+ media-libs/sdl-ttf
+ media-libs/speex
+ virtual/glu
+ virtual/opengl
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-{gcc{44,49,6},scons-blows,underlinking}.patch )
+
+src_configure() {
+ myesconsargs=(
+ INSTALLDIR=/usr/share/${PN}
+ DATADIR=/usr/share/${PN}
+ )
+ escons data
+}
+
+src_compile() {
+ escons
+}
+
+src_install() {
+ dobin src/${PN}
+ insinto /usr/share/${PN}
+ doins -r campaigns data maps scripts
+ find "${ED}"/usr/share/${PN} -name SConscript -exec rm -f '{}' +
+ newicon -s 48 data/icons/glob2-icon-48x48.png ${PN}.png
+ make_desktop_entry glob2 "Globulation 2"
+ einstalldocs
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/glob2/metadata.xml b/games-strategy/glob2/metadata.xml
new file mode 100644
index 000000000000..181fc4eec533
--- /dev/null
+++ b/games-strategy/glob2/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+<longdescription>
+Globulation2 is an innovative high quality Real-Time Strategy [RTS],
+which minimizes micro-management by automatically assigning tasks to
+the units. The player has to choose the number of units he wants for
+the different tasks, and the units will do their best to satisfy the
+requests. This allows to manage more units and to focus on strategies.
+</longdescription>
+</pkgmetadata>