diff options
Diffstat (limited to 'community/btanks')
-rw-r--r-- | community/btanks/PKGBUILD | 16 | ||||
-rw-r--r-- | community/btanks/gcc-4.6.patch | 64 | ||||
-rw-r--r-- | community/btanks/lua52.patch | 21 |
3 files changed, 86 insertions, 15 deletions
diff --git a/community/btanks/PKGBUILD b/community/btanks/PKGBUILD index 530c3bd98..838429b61 100644 --- a/community/btanks/PKGBUILD +++ b/community/btanks/PKGBUILD @@ -1,32 +1,38 @@ -# $Id: PKGBUILD 59272 2011-11-22 09:39:15Z spupykin $ +# $Id: PKGBUILD 81100 2012-12-12 00:47:26Z eric $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Nick B <Shirakawasuna at gmail _dot_ com> pkgname=btanks pkgver=0.9.8083 -pkgrel=3 +pkgrel=4 pkgdesc="Fast 2d tank arcade game with multiplayer and split-screen modes." arch=('i686' 'x86_64') url="http://btanks.sourceforge.net" license=('GPL') depends=('expat' 'libgl' 'libsigc++2.0' 'libvorbis' 'lua' 'openal' 'sdl' 'sdl_image' - 'smpeg' "btanks-data=$pkgver") + 'smpeg' 'glu' "btanks-data=$pkgver") makedepends=('scons' 'chrpath' 'mesa') source=(http://downloads.sourceforge.net/btanks/btanks-$pkgver.tar.bz2 btanks_desktop btanks_script bted_script - gcc-4.6.patch) + gcc-4.6.patch + lua52.patch) install=btanks.install md5sums=('49cb95c0eec47d3436c4fdf65e7c9d12' 'a2ddeb1e79dff8d3fd702984c8d3aab5' '07657cfa71b1de1d008cc5e3ade9749b' '91a61c0f581ea27281bdaecb7a3cd58b' - '173f0ffe46bb1bab2c8aa240fe5331f3') + 'b816c5f3ae2d6cd954c15569d4baf123' + 'e7af4af59255166bee530cbabd953226') build() { cd $srcdir/$pkgname-$pkgver + + sed -i '1,1i#include <sys/types.h>' mrt/base_file.h patch -p1 <$srcdir/gcc-4.6.patch + patch -p1 <$srcdir/lua52.patch + python2 engine/sl08/sl08.py >engine/sl08/sl08.h scons diff --git a/community/btanks/gcc-4.6.patch b/community/btanks/gcc-4.6.patch index d371abd53..c944378fd 100644 --- a/community/btanks/gcc-4.6.patch +++ b/community/btanks/gcc-4.6.patch @@ -1,10 +1,7 @@ -From: Ansgar Burchardt <ansgar@debian.org> -Bug-Debian: http://bugs.debian.org/624916 -Subject: Fix FTBFS with gcc-4.6 - ---- btanks-0.9.8083.orig/engine/sl08/sl08.py -+++ btanks-0.9.8083/engine/sl08/sl08.py -@@ -152,8 +152,8 @@ class Generator(object): +diff -wbBur btanks-0.9.8083/engine/sl08/sl08.py btanks-0.9.8083.my/engine/sl08/sl08.py +--- btanks-0.9.8083/engine/sl08/sl08.py 2008-08-13 13:10:45.000000000 +0400 ++++ btanks-0.9.8083.my/engine/sl08/sl08.py 2012-11-15 18:04:44.002524495 +0400 +@@ -152,11 +152,11 @@ typedef base_signalXXX %s signal_type; typedef return_type (object_type::*func_t) %s; @@ -14,8 +11,23 @@ Subject: Fix FTBFS with gcc-4.6 + inline slotXXX(object_type *object, func_t func, signal_type * signal = 0) : object(object), func(func) {} inline void assign(object_type *o, func_t f) { object = o; func = f; } - inline void assign(object_type *o, func_t f, signal_type &signal_ref = NULL) { object = o; func = f; connect(signal_ref); } -@@ -187,7 +187,7 @@ class Generator(object): +- inline void assign(object_type *o, func_t f, signal_type &signal_ref = NULL) { object = o; func = f; connect(signal_ref); } ++ inline void assign(object_type *o, func_t f, signal_type &signal_ref = NULL) { object = o; func = f; base_slotXXX%s::connect(signal_ref); } + + inline return_type operator() %s const { + return (object->*func) %s ; +@@ -175,7 +175,9 @@ + self.template_declaration('slot'), + self.template_parameters('base-slot'), + self.template_parameters('base-slot'), +- self.prototype(True), self.prototype(True), self.prototype(False), ++ self.prototype(True), ++ self.template_parameters('base-signal'), ++ self.prototype(True), self.prototype(False), + ) + + #specialized version of the slot +@@ -187,10 +189,10 @@ typedef base_signalXXX %s signal_type; typedef void (object_type::*func_t) %s ; @@ -23,4 +35,36 @@ Subject: Fix FTBFS with gcc-4.6 + inline slotXXX () : object(0), func(0) {} inline slotXXX (object_type *object, func_t func) : object(object), func(func) {} inline void assign(object_type *o, func_t f) { object = o; func = f; } - inline void assign(object_type *o, func_t f, signal_type &signal_ref) { object = o; func = f; connect(signal_ref); } +- inline void assign(object_type *o, func_t f, signal_type &signal_ref) { object = o; func = f; connect(signal_ref); } ++ inline void assign(object_type *o, func_t f, signal_type &signal_ref) { object = o; func = f; base_slotXXX%s::connect(signal_ref); } + + inline void operator() %s const { + (object->*func) %s; +@@ -206,6 +208,7 @@ + self.template_parameters('base-slot', True), + self.template_parameters('base-slot', True), + self.prototype(True), ++ self.template_parameters('base-slot', True), + self.prototype(True), + self.prototype(False), + ) +diff -wbBur btanks-0.9.8083/math/range_list.h btanks-0.9.8083.my/math/range_list.h +--- btanks-0.9.8083/math/range_list.h 2008-10-24 18:15:55.000000000 +0400 ++++ btanks-0.9.8083.my/math/range_list.h 2012-11-15 18:11:52.049236706 +0400 +@@ -53,14 +53,14 @@ + return; + } + +- typename parent_type::iterator i = lower_bound(value); ++ typename parent_type::iterator i = std::map<const T, T>::lower_bound(value); + if (i != parent_type::end()) { + if (i->first == value) + return; + + if (value + 1 == i->first) { + T e = i->second; +- erase(i); ++ std::map<const T, T>::erase(i); + i = parent_type::insert(typename parent_type::value_type(value, e)).first; //expand beginning + i = pack_left(i); + } diff --git a/community/btanks/lua52.patch b/community/btanks/lua52.patch new file mode 100644 index 000000000..e27d5fdb7 --- /dev/null +++ b/community/btanks/lua52.patch @@ -0,0 +1,21 @@ +diff -wbBur btanks-0.9.8083/engine/luaxx/state.cpp btanks-0.9.8083.my/engine/luaxx/state.cpp +--- btanks-0.9.8083/engine/luaxx/state.cpp 2008-06-08 13:02:39.000000000 +0400 ++++ btanks-0.9.8083.my/engine/luaxx/state.cpp 2012-11-15 18:59:07.000000000 +0400 +@@ -59,7 +59,7 @@ + void State::load(const std::string &fname, const mrt::Chunk &data) { + //throw_ex(("implement me[%s]", fname.c_str())); + reader_state x(data); +- int err = lua_load(state, chunk_reader, &x, fname.c_str()); ++ int err = lua_load(state, chunk_reader, &x, fname.c_str(), NULL); + check_error(state, err); + } + +@@ -81,7 +81,7 @@ + assert(state == NULL); + + //state = lua_newstate(l_alloc, this); +- state = lua_open(); ++ state = luaL_newstate(); + if (state == NULL) + throw_ex(("cannot create lua interpreter")); + |