Merge remote-tracking branch 'remotes/github/pr/975'
[gentoo.git] / games-strategy / triplea / triplea-1.8.0.9.ebuild
1 # Copyright 1999-2016 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Id$
4
5 EAPI=5
6 inherit eutils java-pkg-2 java-ant-2 versionator games
7
8 MY_PV=$(replace_all_version_separators _)
9 DESCRIPTION="An open source clone of the popular Axis and Allies boardgame"
10 HOMEPAGE="http://triplea.sourceforge.net/"
11 SRC_URI="mirror://sourceforge/triplea/${PN}_${MY_PV}_source_code_only.zip"
12
13 LICENSE="GPL-2"
14 SLOT="0"
15 KEYWORDS="amd64 x86"
16 IUSE=""
17 RESTRICT="test" # Needs X11 maybe use virtualx.eclass
18
19 RDEPEND="dev-java/commons-httpclient:3
20         dev-java/commons-logging
21         dev-java/junit:4"
22 DEPEND="${RDEPEND}
23         >=virtual/jdk-1.6
24         app-arch/unzip"
25 RDEPEND="${RDEPEND}
26         >=virtual/jre-1.6"
27
28 S=${WORKDIR}/${PN}_${MY_PV}
29
30 pkg_setup() {
31         games_pkg_setup
32         java-pkg-2_pkg_setup
33 }
34
35 src_prepare() {
36         sed -i \
37                 -e '/userHome.*triplea/s:"triplea":".triplea":g' \
38                 src/games/strategy/engine/framework/GameRunner2.java || die
39
40         rm -r old/ lib/derby*.jar || die
41         # dev-java/commons-logging is lagging behind in portage...
42         # java-pkg_jar-from apple-java-extensions-bin AppleJavaExtensions.jar \
43         #       lib/AppleJavaExtensions.jar
44         java-pkg_jar-from commons-httpclient-3 commons-httpclient.jar \
45                 lib/commons-httpclient-3.1.jar
46         java-pkg_jar-from commons-logging commons-logging.jar \
47                 lib/commons-logging-1.1.3.jar
48         # dev-java/commons-codec is lagging behind in portage...
49         # java-pkg_jar-from commons-codec commons-codec.jar \
50                 # lib/commons-codec-1.3.jar
51         # installs the test files
52         java-pkg_jar-from --into lib junit
53
54         # lots of other jars from some other java packages...
55         # either missing from portage or none stable is ages.
56         #java-pkg_ensure-no-bundled-jars
57 }
58
59 src_compile() {
60         eant || die
61         echo "triplea.saveGamesInHomeDir=true" > data/triplea.properties
62         # The only target creating this is zip which does unjar etc
63         cd classes || die
64         jar cf ../bin/triplea.jar * || die
65         rm -r * || die
66 }
67
68 src_test() {
69         ANT_TASKS="ant-junit" eant test
70 }
71
72 src_install() {
73         insinto "${GAMES_DATADIR}"/${PN}
74         doins -r assets bin data dice_servers maps
75
76         java-pkg_regjar "${D}/${GAMES_DATADIR}"/${PN}/bin/*.jar
77         java-pkg_dolauncher ${PN} -into "${GAMES_PREFIX}" \
78                 --java_args "-Xmx256m" --main \
79                 games.strategy.engine.framework.GameRunner
80         java-pkg_dolauncher ${PN}-server -into "${GAMES_PREFIX}" \
81                 --java_args "-server -Xmx64m -Dtriplea.lobby.port=3303 -Dtriplea.lobby.console=true" \
82                 --main games.strategy.engine.lobby.server.LobbyServer
83
84         newicon icons/triplea_icon.png ${PN}.png
85         newicon icons/triplea_icon.png ${PN}-server.png
86         make_desktop_entry ${PN} TripleA
87         make_desktop_entry ${PN}-server TripleA-server
88
89         dodoc changelog.txt TripleA_RuleBook.pdf
90         dohtml -r doc/* readme.html
91         prepgamesdirs
92 }