summaryrefslogtreecommitdiff
path: root/games-strategy/netpanzer
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/netpanzer')
-rw-r--r--games-strategy/netpanzer/Manifest9
-rw-r--r--games-strategy/netpanzer/files/netpanzer-0.8.2-gcc43.patch62
-rw-r--r--games-strategy/netpanzer/files/netpanzer-0.8.2-gcc47.patch11
-rw-r--r--games-strategy/netpanzer/files/netpanzer-ded15
-rw-r--r--games-strategy/netpanzer/files/netpanzer-ded.ini80
-rw-r--r--games-strategy/netpanzer/files/netpanzer.rc33
-rw-r--r--games-strategy/netpanzer/metadata.xml11
-rw-r--r--games-strategy/netpanzer/netpanzer-0.8.2.ebuild70
8 files changed, 291 insertions, 0 deletions
diff --git a/games-strategy/netpanzer/Manifest b/games-strategy/netpanzer/Manifest
new file mode 100644
index 000000000000..98bca346ff28
--- /dev/null
+++ b/games-strategy/netpanzer/Manifest
@@ -0,0 +1,9 @@
+AUX netpanzer-0.8.2-gcc43.patch 2241 BLAKE2B ee3c15946fd3877544e69de53c54eed1ab160154d19a161a061dd98663b1c97f586482dcbecccbe8d13ccddac299386b28efed166899d214fe99fa0b88f2d27d SHA512 aeddced38643a38d0bd86d02d4b4c8acb6a7c74f80d6fd0f9697b325b3bd1bd019a9145bfad91c9e658c8d4e267efb83ccb58424efff9a1c63d2e4c617a31fe2
+AUX netpanzer-0.8.2-gcc47.patch 399 BLAKE2B c62dc1fc9b0945324ae1e6a39cab0fd70c4c8b98afeec9c9af3912c584cce64ae4646dd6a5c2be5e880cc1bafb39e19b0a5fe15c7f7d6cf481fe3714be70cf86 SHA512 d4d62649e33de0f40ae159b07a59e95fa7928ad88d4bfbfc6677d6404c7abd22954e72902ef88d98275ede223c9866dcd361d9dc48969638742f50335e3a562c
+AUX netpanzer-ded 359 BLAKE2B 693ace37fc7011d73425101d21bbc47547872e3377094910addd914dedc09161ac4ea9389d01e65cf2347a30fb7fd7a02e9c802c9e6045ee31275f74e7feb41b SHA512 0d8c410711627664e41853dc31c73cefece2ed51696713969eae7bfbc6eefe9a4f878e95fbd6584db6ba46c8af76c300281939a3d663cc16bebd2c46040700d1
+AUX netpanzer-ded.ini 1261 BLAKE2B a1c333ba3c6ea49d8104c473d4109a64746d984dabc3001f74225da25eaa14654989cc140d4aa003ff7f47cb86c681760a6a6ea12256da983c6f5813bed09c9b SHA512 3d9e8603d717a52b603c1da7b6b734f771b768b8d3f64c27d881af87947b3c816ec07420cd841c728a6a4e9e5d92798e78d910516d8c5fe33d192ac6a6bcabb6
+AUX netpanzer.rc 776 BLAKE2B a5e60db1a8a0a6615a83f06a4eee56478b0ae6faae01033b24cfff9b4565ccf0d4bb8a85ff8e905474c352639852f56cace93ebbf6ce15e79269ec835955def7 SHA512 b82f11ec76e44d2adc7567ee95e564b05d613b96da6fa9218b0a1571f22577259a60748e0b4da486a00e6c65b26fba339ef78a1798d7c9aca89d9edcf4b33055
+DIST netpanzer-0.8.2.tar.bz2 10416147 BLAKE2B d3c704c5244b00c15abfe45256c2bc9d2f84856cf221aa2b969af24dde3bcc7f28df1678fe5833b5caac9384c209cea2e2bfea9b6fb128c76dad75307f125c33 SHA512 7d7f5b485b20b2cefc71061412367edd963e59612767f6b69751915eda3f2939eebedfa29cb77ba0986cf4966b0fc12456b1bb6cfc2bd794c47fbce0b5f6f57a
+DIST netpanzer-data-0.8.tar.bz2 10123751 BLAKE2B 3c0baf7f5df93f7bc907bbcd627cdac9a9844e9ff12297bdd9b82074e26fe45010fe19efab1fd5725d29f1d52a5d0bc2873aa32371461fca5955ae4f53808f81 SHA512 9120d8d3a190069206ed327f1d7d2b2d36f40feefa823956cf6db66e8d0622959449b9385d81b08fdfc59b3b44b7e4d6f6ca2c7362f1a857e1110d61e7c08ce6
+EBUILD netpanzer-0.8.2.ebuild 1639 BLAKE2B ab98fea2164858540ede69dee0832947c5d5f97abb483849edc4f8e450644c52b97e00420304c59ae8d496e2de0a9abf9ec8cb652b9203cfb32aa6a38ee6be83 SHA512 c18068518f7f4db191d13dba3f6798ecd1476c31146947f49fa189f2a2e7d62ad44525951a572a8c7bac4c4846d1cf97366a370ecfd8415924f7aa11b755530e
+MISC metadata.xml 340 BLAKE2B 7bbd91e252ff994e9d7e3607cb47c01e734f724f7c1a469472a7d503db70006e319fcc5553121dc6aeaad71f73afdcc54be8855dac5683e085845605b2c1da2a SHA512 b4d07a9224bcf6390184655df2a7826b3ecae25e21fa707851d389364366cc5f0e317d8ffc3d6f8abed33ebd4a886bbdbfecb11330e25ca1a2eb6e2045153e76
diff --git a/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc43.patch b/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc43.patch
new file mode 100644
index 000000000000..cf73ba4c2252
--- /dev/null
+++ b/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc43.patch
@@ -0,0 +1,62 @@
+Index: netpanzer-0.8.2/src/Lib/2D/ColorTable.cpp
+===================================================================
+--- netpanzer-0.8.2.orig/src/Lib/2D/ColorTable.cpp 2008-02-05 16:36:27.000000000 +0000
++++ netpanzer-0.8.2/src/Lib/2D/ColorTable.cpp 2008-02-05 16:36:39.000000000 +0000
+@@ -17,6 +17,8 @@
+ */
+ #include <config.h>
+
++#include <memory>
++
+ #include "Util/FileSystem.hpp"
+ #include "Util/Log.hpp"
+ #include "Util/Exception.hpp"
+Index: netpanzer-0.8.2/src/Lib/2D/Palette.cpp
+===================================================================
+--- netpanzer-0.8.2.orig/src/Lib/2D/Palette.cpp 2008-02-05 16:36:27.000000000 +0000
++++ netpanzer-0.8.2/src/Lib/2D/Palette.cpp 2008-02-05 16:36:39.000000000 +0000
+@@ -18,6 +18,7 @@
+ #include <config.h>
+
+ #include <math.h>
++#include <memory>
+
+ #include "Palette.hpp"
+ #include "Util/FileSystem.hpp"
+Index: netpanzer-0.8.2/src/NetPanzer/Network/ProxyServer.cpp
+===================================================================
+--- netpanzer-0.8.2.orig/src/NetPanzer/Network/ProxyServer.cpp 2008-02-05 16:36:27.000000000 +0000
++++ netpanzer-0.8.2/src/NetPanzer/Network/ProxyServer.cpp 2008-02-05 16:36:39.000000000 +0000
+@@ -17,6 +17,7 @@
+ */
+ #include <config.h>
+
++#include <cstdlib>
+ #include <string>
+ #include <stdexcept>
+ #include <ctype.h>
+Index: netpanzer-0.8.2/src/NetPanzer/Views/MainMenu/Multi/MapSelectionView.cpp
+===================================================================
+--- netpanzer-0.8.2.orig/src/NetPanzer/Views/MainMenu/Multi/MapSelectionView.cpp 2008-02-05 16:36:27.000000000 +0000
++++ netpanzer-0.8.2/src/NetPanzer/Views/MainMenu/Multi/MapSelectionView.cpp 2008-02-05 16:36:39.000000000 +0000
+@@ -17,6 +17,7 @@
+ */
+ #include <config.h>
+
++#include <memory>
+ #include <vector>
+ #include <string>
+ #include "MapSelectionView.hpp"
+Index: netpanzer-0.8.2/src/Lib/Util/Log.cpp
+===================================================================
+--- netpanzer-0.8.2.orig/src/Lib/Util/Log.cpp 2008-02-05 17:13:36.000000000 +0000
++++ netpanzer-0.8.2/src/Lib/Util/Log.cpp 2008-02-05 17:13:43.000000000 +0000
+@@ -26,6 +26,7 @@
+ #include <vector>
+ #include <exception>
+ #include <iomanip>
++#include <algorithm>
+
+ #include "Exception.hpp"
+ #include "FileSystem.hpp"
+
diff --git a/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc47.patch b/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc47.patch
new file mode 100644
index 000000000000..432f40a9f9aa
--- /dev/null
+++ b/games-strategy/netpanzer/files/netpanzer-0.8.2-gcc47.patch
@@ -0,0 +1,11 @@
+--- src/Lib/ArrayUtil/QueueTemplate.hpp.old 2012-10-16 13:57:33.000000000 +0200
++++ src/Lib/ArrayUtil/QueueTemplate.hpp 2012-10-16 13:58:16.000000000 +0200
+@@ -42,7 +42,7 @@
+
+ bool enqueue(const TYPE& object )
+ {
+- add( object, (rear + 1) % this->size );
++ this->add( object, (rear + 1) % this->size );
+ rear = (rear + 1) % this->size;
+
+ if ( front == rear )
diff --git a/games-strategy/netpanzer/files/netpanzer-ded b/games-strategy/netpanzer/files/netpanzer-ded
new file mode 100644
index 000000000000..d6dd85193641
--- /dev/null
+++ b/games-strategy/netpanzer/files/netpanzer-ded
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+running=yes
+while [[ $running = yes ]] ; do
+ /usr/games/bin/netpanzer --game_config=/etc/netpanzer-ded.ini -d $@
+ if [[ $? -ge 128 ]] ; then
+ echo "`date`: Restarting server after crash"
+ # wait a bit to not blow cpu and logfiles on constant crashs
+ sleep 30
+ else
+ #normal exit
+ running=no
+ fi
+done
+
diff --git a/games-strategy/netpanzer/files/netpanzer-ded.ini b/games-strategy/netpanzer/files/netpanzer-ded.ini
new file mode 100644
index 000000000000..903fb3b493b3
--- /dev/null
+++ b/games-strategy/netpanzer/files/netpanzer-ded.ini
@@ -0,0 +1,80 @@
+[game]
+
+[interface]
+attacknotificationtime=5
+consoletextdelay=3
+consoletextusage=25
+drawunitdamage=yes
+drawunitflags=yes
+drawunitreload=no
+gameinfoposition_x=0
+gameinfoposition_y=0
+minimapdrawtype=0
+minimapposition_x=0
+minimapposition_y=0
+minimapsize_x=194
+minimapsize_y=194
+playerflag=26
+rankposition_x=0
+rankposition_y=0
+scrollrate=1000
+toolbarposition_x=0
+toolbarposition_y=0
+unitcolor=0
+unitinfodrawlayer=0
+unitselectionmode=1
+vehicleselectioncolor=1
+viewdrawbackgroundmode=0
+
+[player]
+masterservers=81.169.185.36,81.173.119.122
+name=Gentoo NetPanzer Server
+proxyserver=
+proxyserverpass=
+proxyserveruser=
+
+[radar]
+alliedoutpostcolor=11
+alliedunitcolor=11
+displayclouds=no
+enemyoutpostcolor=4
+objectivedrawmode=1
+playeroutpostcolor=1
+playerunitcolor=0
+resizerate=400
+unitsize=0
+
+[server]
+allowallies=yes
+bindaddress=
+cloudcoverage=0
+fraglimit=500
+gametype=0
+logging=yes
+mapcycle=Cramped, Tight Quarters, Two Villages, Cramped
+maxplayers=8
+maxunits=160
+objectivepercentage=75
+powerups=yes
+public=yes
+respawntype=1
+serverport=3030
+timelimit=50
+windspeed=30
+
+[sound]
+effects=yes
+effectsvolume=100
+enable=yes
+music=yes
+musicvolume=80
+
+[visuals]
+blendsmoke=yes
+displayshadows=yes
+fullscreen=yes
+gamma=50
+hardwareDoubleBuffer=yes
+hardwareSurface=yes
+resolution=0
+
diff --git a/games-strategy/netpanzer/files/netpanzer.rc b/games-strategy/netpanzer/files/netpanzer.rc
new file mode 100644
index 000000000000..b1d29df5be33
--- /dev/null
+++ b/games-strategy/netpanzer/files/netpanzer.rc
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting netpanzer dedicated server"
+ screen -A -m -d -S netpanzer-ded su - GAMES_USER_DED -c "GENTOO_DIR/netpanzer-ded"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping netpanzer dedicated server"
+ local pid=`screen -list | grep netpanzer-ded | awk -F . '{print $1}' | sed -e s/.//`
+ if [[ -z "${pid}" ]] ; then
+ eend 1 "Lost screen session"
+ else
+ pid=`pstree -p ${pid} | sed -e 's:^.*netpanzer-ded(\([0-9]*\)).*:\1:'`
+ if [[ -z "${pid}" ]] ; then
+ eend 1 "Lost netpanzer-ded session"
+ else
+ kill ${pid}
+ eend $? "Could not kill netpanzer-ded"
+ fi
+ fi
+}
+
+status() {
+ screen -list | grep netpanzer-ded
+}
diff --git a/games-strategy/netpanzer/metadata.xml b/games-strategy/netpanzer/metadata.xml
new file mode 100644
index 000000000000..6bb77c4ca82c
--- /dev/null
+++ b/games-strategy/netpanzer/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">netpanzer.berlios</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-strategy/netpanzer/netpanzer-0.8.2.ebuild b/games-strategy/netpanzer/netpanzer-0.8.2.ebuild
new file mode 100644
index 000000000000..9a70ba26b16f
--- /dev/null
+++ b/games-strategy/netpanzer/netpanzer-0.8.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils games
+
+DATAVERSION="0.8"
+DESCRIPTION="Fast-action multiplayer strategic network game"
+HOMEPAGE="http://www.netpanzer.info/"
+SRC_URI="mirror://sourceforge/netpanzer.berlios/${P}.tar.bz2
+ mirror://sourceforge/netpanzer.berlios/${PN}-data-${DATAVERSION}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="dedicated"
+
+RDEPEND="dedicated? ( app-misc/screen )
+ media-libs/libsdl[sound,video]
+ media-libs/sdl-mixer
+ media-libs/sdl-image
+ dev-games/physfs"
+DEPEND="${RDEPEND}
+ dev-util/ftjam"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-gcc43.patch \
+ "${FILESDIR}"/${P}-gcc47.patch
+}
+
+src_configure() {
+ egamesconf
+ cd "${WORKDIR}"/${PN}-data-${DATAVERSION} \
+ && egamesconf
+}
+
+src_compile() {
+ AR="${AR} cru" jam -q || die
+
+ cd "${WORKDIR}"/${PN}-data-${DATAVERSION}
+ jam -q || die
+}
+
+src_install() {
+ jam -sDESTDIR="${D}" -sappdocdir=/usr/share/doc/${PF} install || die
+
+ cd "${WORKDIR}"/${PN}-data-${DATAVERSION}
+ jam -sDESTDIR="${D}" -sappdocdir=/usr/share/doc/${PF} install || die
+
+ if use dedicated ; then
+ newinitd "${FILESDIR}"/${PN}.rc ${PN}
+ sed -i \
+ -e "s:GAMES_USER_DED:${GAMES_USER_DED}:" \
+ -e "s:GENTOO_DIR:${GAMES_BINDIR}:" \
+ "${D}"/etc/init.d/${PN} || die
+
+ insinto /etc
+ doins "${FILESDIR}"/${PN}-ded.ini
+ dogamesbin "${FILESDIR}"/${PN}-ded
+ sed -i \
+ -e "s:GENTOO_DIR:${GAMES_BINDIR}:" \
+ "${D}/${GAMES_BINDIR}"/${PN}-ded || die
+ fi
+
+ rm -rf "${D}/${GAMES_DATADIR}"/{applications,pixmaps}
+ doicon "${S}"/${PN}.png
+ make_desktop_entry ${PN} NetPanzer
+ prepgamesdirs
+}