summaryrefslogtreecommitdiff
path: root/games-strategy
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy')
-rw-r--r--games-strategy/Manifest.gzbin8075 -> 8243 bytes
-rw-r--r--games-strategy/augustus/Manifest6
-rw-r--r--games-strategy/augustus/augustus-3.0.1.ebuild51
-rw-r--r--games-strategy/augustus/files/README.gentoo7
-rw-r--r--games-strategy/augustus/files/augustus-3.0.1-desktop_rename.patch11
-rw-r--r--games-strategy/augustus/files/augustus-3.0.1-uncapped.patch16
-rw-r--r--games-strategy/augustus/metadata.xml24
-rw-r--r--games-strategy/lgeneral/Manifest6
-rw-r--r--games-strategy/lgeneral/lgeneral-1.4.3.ebuild74
-rw-r--r--games-strategy/lgeneral/lgeneral-1.4.4.ebuild66
-rw-r--r--games-strategy/warzone2100/Manifest2
-rw-r--r--games-strategy/warzone2100/warzone2100-4.1.3.ebuild117
12 files changed, 303 insertions, 77 deletions
diff --git a/games-strategy/Manifest.gz b/games-strategy/Manifest.gz
index b559760fbc70..e08dc59c5c65 100644
--- a/games-strategy/Manifest.gz
+++ b/games-strategy/Manifest.gz
Binary files differ
diff --git a/games-strategy/augustus/Manifest b/games-strategy/augustus/Manifest
new file mode 100644
index 000000000000..05bf5e890de0
--- /dev/null
+++ b/games-strategy/augustus/Manifest
@@ -0,0 +1,6 @@
+AUX README.gentoo 426 BLAKE2B 803713ea8fe3bd1f20b3a5951cb23135ddb511b916d75ac30c907ef01246a6c365a5f8a50d1a35b1a9e9ca58129828862d2d0b9fc13db5a7e1d3d04071e63957 SHA512 da220fdc16a824044507ea0b69c6e3b165f49e45dc669ab77c79256c271932104293b6e884cd984d7229242113a9431fe77e9ae4e1fd4afc01d68b37399939ae
+AUX augustus-3.0.1-desktop_rename.patch 241 BLAKE2B 8adea277b37e544442cbf38f18387f90d0bf9a3366c5323e2e9bbefda49f517871c173a22dbe937fbf4a1244275c3195f2d008b542c54a778550967726025e7c SHA512 e283524f8e5dafea3bfb890c19be221f586ec6fc70943914eed3d542208c33a4cccf53f06a14fbc8db21be2fdeba6f97b38cea8592a343d11574e094f82cde2e
+AUX augustus-3.0.1-uncapped.patch 464 BLAKE2B 074faedf03b64b3e34c15a9412f3d22f3ec93fa638f9d90e910e2b5c203fe3e608ba29de499cedc22fdad6b19194befa5617bb6aa0e1db230873af554f5082f5 SHA512 725df61a3a21433617a672d62a97ab3f64e3bafbc6e619af8a8959de00b3144ec42c8dff747e846affe3ce74eec4dfdf6cd3613c5c07459df51945598585cf76
+DIST augustus-3.0.1.tar.gz 47539500 BLAKE2B 43e808959f176e4024866074c227814e2be75175cbbca60fbc430a7617941766b8a00ae6f56c08239c5ed8cd60d637109e963eba859c78d60f7b37d54079e7c4 SHA512 4929763a4436863525c4d3f93570090ce066ea2abfe56766d991b7ebc03b34fc53fc8c6dcbb7f5c96e2e10d233bb5966581d148db7d7ea2eac5c1435cc4327bd
+EBUILD augustus-3.0.1.ebuild 1166 BLAKE2B 794f2cf29f9617e329001f9181ce5763cb7b18cf1bc7b7ac3a78c3ff912df89e236928f9837ff3a247a1429090a59d30cb7644437f13ed6b44cc162b8427ccef SHA512 c5c326b5889ed468015cc6648543a3da42a60efb0220dd6e372a58d81c18b33fec3f571da8bd08a5bc1ae6a14ba0edc65c6ceb4bb5075b085b8961822dacf5bd
+MISC metadata.xml 807 BLAKE2B b81e37f70e1351a6e01d33b2cf8791a46bae9b491bf030938e051feb933f0ea5fa73e54e66829ddabbcc2917ecef1fab036708d7937897ce6aa761fb170a23e9 SHA512 1b307d0555a1eb75ba1fd081634506df8c398328c099be0c74e48eac62f303075c6ca5aa18c322c46a63171bca3376349bb7a9b6ab1618d813b2426c4c3641e7
diff --git a/games-strategy/augustus/augustus-3.0.1.ebuild b/games-strategy/augustus/augustus-3.0.1.ebuild
new file mode 100644
index 000000000000..9714036d3284
--- /dev/null
+++ b/games-strategy/augustus/augustus-3.0.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit xdg cmake readme.gentoo-r1
+
+DESCRIPTION="Feature-enhanced open source re-implementation of Caesar III"
+HOMEPAGE="https://github.com/Keriew/augustus"
+SRC_URI="https://github.com/Keriew/augustus/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="uncapped"
+
+DEPEND="
+ dev-libs/expat
+ media-libs/libpng:0=
+ media-libs/libsdl2[joystick,video,sound]
+ media-libs/sdl2-mixer
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.1-desktop_rename.patch"
+)
+
+src_prepare() {
+ use uncapped && eapply "${FILESDIR}"/${PN}-3.0.1-uncapped.patch
+ cmake_src_prepare
+}
+
+src_install() {
+ cmake_src_install
+ dodir /usr/libexec
+ mv "${ED}/usr/bin/augustus" "${ED}/usr/libexec/augustus-game" ||
+ die "Failed to rename executable (required to set default resources location)."
+ newbin - augustus-game <<-EOF
+ #!/usr/bin/env sh
+ exec "${EPREFIX}/usr/libexec/augustus-game" "\${1:-\${HOME}/.local/share/julius/app}"
+ EOF
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ readme.gentoo_print_elog
+}
diff --git a/games-strategy/augustus/files/README.gentoo b/games-strategy/augustus/files/README.gentoo
new file mode 100644
index 000000000000..f6e9503cd582
--- /dev/null
+++ b/games-strategy/augustus/files/README.gentoo
@@ -0,0 +1,7 @@
+Augustus requires you to download the original Caesar 3 resources.
+
+You need to obtain these files from a vendor of the proprietary software.
+You will then need to copy the 'app' directory into '~/.local/share/julius/app'.
+One way to obtain this directory is to download the GOG Caesar 3 edition.
+You can then produce this directory by installing app-arch/innoextract and running:
+ innoextract -m setup_caesar3_2.0.0.9.exe
diff --git a/games-strategy/augustus/files/augustus-3.0.1-desktop_rename.patch b/games-strategy/augustus/files/augustus-3.0.1-desktop_rename.patch
new file mode 100644
index 000000000000..662940485795
--- /dev/null
+++ b/games-strategy/augustus/files/augustus-3.0.1-desktop_rename.patch
@@ -0,0 +1,11 @@
+--- a/res/augustus.desktop
++++ b/res/augustus.desktop
+@@ -2,7 +2,7 @@
+ [Desktop Entry]
+ Type=Application
+ Version=1.0
+-Exec=augustus
++Exec=augustus-game
+ Icon=com.github.keriew.augustus
+ Name=Augustus
+ GenericName=Roman city management game
diff --git a/games-strategy/augustus/files/augustus-3.0.1-uncapped.patch b/games-strategy/augustus/files/augustus-3.0.1-uncapped.patch
new file mode 100644
index 000000000000..6bd4f93c1a14
--- /dev/null
+++ b/games-strategy/augustus/files/augustus-3.0.1-uncapped.patch
@@ -0,0 +1,16 @@
+From 1d3a24d74bbea85198c2c5d739a16dcc139af18b Mon Sep 17 00:00:00 2001
+From: Horea Christian <chr@chymera.eu>
+Date: Sat, 26 Dec 2020 12:59:15 -0500
+Subject: [PATCH] Unlimited number of Grand Temples.
+
+--- a/src/building/monument.h
++++ b/src/building/monument.h
+@@ -6,7 +6,7 @@
+
+ #define MONUMENT_FINISHED -1
+ #define MONUMENT_START 1
+-#define MAX_GRAND_TEMPLES_PER_CITY 2
++#define MAX_GRAND_TEMPLES_PER_CITY 99
+ #define MARS_OFFERING_FREQUENCY 16
+
+ typedef enum {
diff --git a/games-strategy/augustus/metadata.xml b/games-strategy/augustus/metadata.xml
new file mode 100644
index 000000000000..7318e09e26fe
--- /dev/null
+++ b/games-strategy/augustus/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@chymera.eu</email>
+ <name>Horea Christian</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ The aim of this project is to provide enhanced, customizable gameplay
+ to Caesar 3 using project Julius UI enhancements. Augustus is able to
+ load Caesar 3 and Julius saves, however saves made with Augustus will
+ not work outside Augustus.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">Keriew/augustus</remote-id>
+ </upstream>
+ <use>
+ <flag name="uncapped">Uncap grand temple count</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-strategy/lgeneral/Manifest b/games-strategy/lgeneral/Manifest
index 2445739b32cf..4d759f7d3d1e 100644
--- a/games-strategy/lgeneral/Manifest
+++ b/games-strategy/lgeneral/Manifest
@@ -1,5 +1,5 @@
AUX lgeneral-1.4.3-fix-utf8.patch 466 BLAKE2B ccfdc447ddf0eaf24ac56989007277c4e94f48fe69dfb4dc1030a8c80c5764b8dbc84876f539c4fb99703f578c69ac8ba2b49ecf61e69f31d0621d06379feef0 SHA512 abccea722ea34de06832525b5c936c829119327b44421655884fe7f648bab0b9dcea104543dcf1d2a363ceda55bb74edf360b60a30608e50aca865b1c975a02a
-DIST lgeneral-1.4.3.tar.gz 1924730 BLAKE2B a0f3be4a50e384b7f6baddc705825f12fc4298eb3b73ac7164c0eb6330dd3e204ceb4218e88a322aa438b2fba1b6204dedab21e528713889a67a84f6b0cff768 SHA512 09f8e29b8f6c1af593f56f4d4b7c8437bfa4dfc69bfd0dbe158b7add0bc5ff505fe1ed83bbb8daca17ae43e91ae1a47c5efe2c7700a3ea456505a51d293f1101
-DIST pg-data.tar.gz 410454 BLAKE2B 70b325636c43b69b7cdc2f074a0ac49af46db5c60ebeea5ecefaae18169509b05b4c452c34e8b0cd483d3565c54191623ff3eb900f24683252fd8c775ecdf847 SHA512 b0df30dd9a9d0652acd8702d601c489e5d3a030854ceeb173d2daa656c00633a78a3f45814da9f4157b86544dec34eda02495742242653c7cdebba5ec9951516
-EBUILD lgeneral-1.4.3.ebuild 1632 BLAKE2B e1448e95d55cdc22bd082b6f3f962c470515965b0c82d55ca62f7ba5743c33c16eec212180055cc2c6336cd149b547739d49c49d00f10de70d355f4c1ada822e SHA512 11c031ac2e0e7245c150744f7a29da982a188a0cca42474f858ec7b11932b95f86e42a64d42324652ed2b8e43412cdb60e5450107f2aac0e59a609e95ae56114
+DIST kukgen-data-1.1.tar.gz 1883592 BLAKE2B 66e901696210173bccc4cd463aa30cf0bff1e1115597f1a266b1364df229f8749fb324fe12814efef01d73c8360ba6feb96c05b9b2f7ba59d3512445fd268944 SHA512 239c59924943627ab7ef3dac3283884cf34c8a299bc8974aae0ddcf180c95dcecd6e1b3eb1c69b5db39dbfa86e027649343df5fdfe655709a3b817f08575a546
+DIST lgeneral-1.4.4.tar.gz 1891302 BLAKE2B 354ef85f1769881dbddd85dee0772c036c86308dd669c2e4d44d53d6acdafb77f5491e4f1298cd1af8a4eb82d4c87d1fa154c2c355e226ff82ed7248114c449f SHA512 d1028e999c5420477ed02521ea8bd32dd7481067f3b6f25545b367c082cd740e6c950f1383bc0aa33c345a380ed2abb9f2b5285b60d429bdb48972ce5fca34b2
+EBUILD lgeneral-1.4.4.ebuild 1564 BLAKE2B 9d0e85acf5ca31a3af7f1f4dcda9e87dc55129b42fea8dfb789cd7fde430111d6307b5da1c5489969d8ae88a6e840c00b630495585afe8c618ec26c9406e1021 SHA512 50cfe41c1ec147e3b1c975596639fc511128fcaf664a319bf60c767111ea577755e98360523ea855609e6f037f5c2b5c3f736ee274db2d9e8404441a9ddfcaf8
MISC metadata.xml 331 BLAKE2B ed6b281fa54a304ddd752e6bda476635922a0d9be37524a0e988666502279b85c793d455de63929c93e02f5b105367b78bea2eeb004e1a996d558159fe6443e2 SHA512 eef1e23a9d81b81e39f84ba41d70d39bf11f52acad42dc312548239919b7ce359a671f9b76dcdee92be92bc11c798d9031f3a641c13ab6febfe5bd978a4bbeeb
diff --git a/games-strategy/lgeneral/lgeneral-1.4.3.ebuild b/games-strategy/lgeneral/lgeneral-1.4.3.ebuild
deleted file mode 100644
index def5b5f87a24..000000000000
--- a/games-strategy/lgeneral/lgeneral-1.4.3.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit desktop toolchain-funcs xdg
-
-DESCRIPTION="A Panzer General clone written in SDL"
-HOMEPAGE="http://lgames.sourceforge.net/LGeneral/"
-SRC_URI="
- mirror://sourceforge/${PN}/${P}.tar.gz
- mirror://sourceforge/${PN}/pg-data.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="nls"
-
-RDEPEND="
- media-libs/libsdl[sound,video]
- media-libs/sdl-mixer
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="sys-devel/gettext"
-
-PATCHES=( "${FILESDIR}"/${PN}-1.4.3-fix-utf8.patch )
-
-src_prepare() {
- default
-
- # Build a temporary lgc-pg that knows about ${WORKDIR}:
- cp -pPR "${S}" "${WORKDIR}"/tmp-build || die
- sed -i \
- -e "s:@GENTOO_DATADIR@:/usr/share:" \
- -e "s:@D@::" \
- {lgc-pg,src}/misc.c || die
-
- cd "${WORKDIR}"/tmp-build || die
- sed -i \
- -e "s:@GENTOO_DATADIR@:/usr/share:" \
- -e "s:@D@:${D}:" \
- {lgc-pg,src}/misc.c || die
-}
-
-src_configure() {
- econf $(use_enable nls)
-
- # Build the temporary lgc-pg:
- cd "${WORKDIR}"/tmp-build || die
- econf \
- --disable-nls \
- --datadir="${D}/usr/share"
-}
-
-src_compile() {
- emake AR="$(tc-getAR)"
-
- # Build the temporary lgc-pg:
- emake -C "${WORKDIR}"/tmp-build AR="$(tc-getAR)"
-}
-
-src_install() {
- default
- keepdir /usr/share/${PN}/{ai_modules,music,terrain}
-
- # Generate scenario data:
- dodir /usr/share/${PN}/gfx/{flags,units,terrain} #413901
- SDL_VIDEODRIVER=dummy "${WORKDIR}"/tmp-build/lgc-pg/lgc-pg --separate-bridges \
- -s "${WORKDIR}"/pg-data \
- -d "${D}"/usr/share/${PN} || die
-
- doicon -s 48 lgeneral.png
- make_desktop_entry ${PN} LGeneral
-}
diff --git a/games-strategy/lgeneral/lgeneral-1.4.4.ebuild b/games-strategy/lgeneral/lgeneral-1.4.4.ebuild
new file mode 100644
index 000000000000..d1a83d7e6c89
--- /dev/null
+++ b/games-strategy/lgeneral/lgeneral-1.4.4.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit readme.gentoo-r1 toolchain-funcs xdg
+
+DESCRIPTION="Turn-based strategy game heavily inspired by the classic Panzer General"
+HOMEPAGE="http://lgames.sourceforge.net/LGeneral/"
+SRC_URI="
+ mirror://sourceforge/lgeneral/${P}.tar.gz
+ mirror://sourceforge/lgeneral/kukgen-data-1.1.tar.gz"
+
+LICENSE="GPL-2+ CC-BY-SA-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ media-libs/libsdl[sound,video]
+ media-libs/sdl-mixer
+ virtual/libintl"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/gettext"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.3-fix-utf8.patch
+)
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+
+ keepdir /usr/share/${PN}/{ai_modules,music,terrain}
+
+ # Install the free kukgen WW1 campaign
+ cd ../${PN}-data-* || die
+
+ dodoc docs/README.kukgen
+ newdoc docs/MANUAL MANUAL.kukgen
+
+ insinto /usr/share/${PN}
+ doins -r {campaigns,gfx,maps,nations,scenarios,sounds,units}
+
+ local DISABLE_AUTOFORMATTING=yes
+ local DOC_CONTENTS=\
+"Only the free kukgen WWI campaign has been installed.
+
+If you wish to play the Panzer General (PG) WWII campaign, you need
+to convert the original CD-ROM game data by (for example) running:
+
+ SDL_VIDEODRIVER=dummy \\
+ lgc-pg -s /path/to/cdrom/DAT -d ${EPREFIX}/usr/share/${PN}
+
+See ${EPREFIX}/usr/share/doc/${PF}/README.lgc-pg* for details."
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ # README is redundant with what `make install` says but ensures visibility
+ readme.gentoo_print_elog
+}
diff --git a/games-strategy/warzone2100/Manifest b/games-strategy/warzone2100/Manifest
index a920df84db86..dd5e520a5421 100644
--- a/games-strategy/warzone2100/Manifest
+++ b/games-strategy/warzone2100/Manifest
@@ -1,6 +1,8 @@
DIST warzone2100-4.0.1.tar.xz 337713608 BLAKE2B 4f1bf79e71c13cd507890f2fe4131687fd70bc3b302aea68c7f17314a0d596797a34d9ab46a6736e98d823122199fb0dfcfb62b1f6b702c6d8ba99eb3c338c9e SHA512 820ab41ebc0ca3e81aff67f90eb3946f6a889776b243795c0cab8dbea44d4c5c3620c849cb70fa45c40af14b9a5667823373f9887078bb2b4feb30d2af007180
DIST warzone2100-4.1.2.tar.xz 337480924 BLAKE2B 2042aedd43a3515bf6ccfc210dd02502bc20d487ff96ce763f573f0dd92ef08577ee21fd54237b4cf4f99c31ed33197febc70edd25d0e0a515e286167d815f9d SHA512 7218f98757e421d8ccf6c36de5e310060b52506d4e10c3cba6e32d1917da30b9deb52b8081026d8efc84ef44842a7db8604d4a86157409281a30bbcc52b556f6
+DIST warzone2100-4.1.3.tar.xz 337479212 BLAKE2B 07d1788fc2f8e5073a15231d5bf0c8c50dc0413522ea1589b064190144906fb58008faab66a295cec7759a1036f4d007ef8a42cffd9ef588fde1116b6cd7a38b SHA512 64126a1a5aab8b766cdfc70b8d96465ad451bd6a31e33be963eb89664b062dfe58e195ac3cbc087a9c008519c0e13003d9750bcb428b0e0ff12c82bf9940be3f
DIST warzone2100-videos-2.2.wz 571937134 BLAKE2B 60b70a71bd920e2d72ded5d519b17db2f3db4b0289edadeb58059a21aba7038b95219dc44cb807754461d1a9bdca60f0d7698be68622b8bd64a55efa949622d3 SHA512 ca1a1af51296afdaca137114821508c5783f077090e665eae0f6df895855f57c43f84434706309e819417f5f35d1c649bd14e96dc9fbbb1252d30a4f9a223cf6
EBUILD warzone2100-4.0.1.ebuild 2551 BLAKE2B ce7404e0a4fe23a372830f976530636a74f2ddbab39441edfabbe9b53a98f4979959dfc349b657f4b976da11bb15311d0aece530aa5eb141195605ce31f8cb00 SHA512 aab1404f57f3d773eb20f54507e382840f6dcb266ec3534d15f67cedb232fd845afea539267acc2535a7148cc4257731a620bbbd7639b9b02ec77ab4c823454e
EBUILD warzone2100-4.1.2.ebuild 2523 BLAKE2B 83fd3cbf0941864e1dc2b193411b55b6668495bf043ed7c44e4cb404420e44d6949cd7571aebc13754060e1121f7aa8903a2b729cc8a909606850cc88fc5abd4 SHA512 5070cd1b61eb4395172a93e890ea68b503268e740c56968ce9bb74398f04a6c75ae634173aeb1635621e277bb95132c34911923a6b1889369738a1297df239e6
+EBUILD warzone2100-4.1.3.ebuild 2523 BLAKE2B 83fd3cbf0941864e1dc2b193411b55b6668495bf043ed7c44e4cb404420e44d6949cd7571aebc13754060e1121f7aa8903a2b729cc8a909606850cc88fc5abd4 SHA512 5070cd1b61eb4395172a93e890ea68b503268e740c56968ce9bb74398f04a6c75ae634173aeb1635621e277bb95132c34911923a6b1889369738a1297df239e6
MISC metadata.xml 811 BLAKE2B 3b34613b3eeec7f6f428f9e2c48561df6fecc03566d7b9b10618aba37fd53e2f1bd1d09e46804f2c87f2504e4d91d1a289a2a22afea8c7eac01820b779a77cf3 SHA512 af44da84a5578f11e6f01e0310a7aefedf29582c90d257eaa51e64a59fd85a5e60c2f56ca401c58fb40c079c556abc400586aa74dc49d1b5b9073bf750ce1845
diff --git a/games-strategy/warzone2100/warzone2100-4.1.3.ebuild b/games-strategy/warzone2100/warzone2100-4.1.3.ebuild
new file mode 100644
index 000000000000..cb780494cdd6
--- /dev/null
+++ b/games-strategy/warzone2100/warzone2100-4.1.3.ebuild
@@ -0,0 +1,117 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake desktop xdg
+
+MY_PV=$(ver_cut 1-2)
+VIDEOS_PV=2.2
+VIDEOS_P=${PN}-videos-${VIDEOS_PV}.wz
+DESCRIPTION="3D real-time strategy game"
+HOMEPAGE="https://wz2100.net/"
+SRC_URI="mirror://sourceforge/warzone2100/releases/${PV}/${PN}_src.tar.xz -> ${P}.tar.xz
+ videos? ( mirror://sourceforge/warzone2100/warzone2100/Videos/${VIDEOS_PV}/high-quality-en/sequences.wz -> ${VIDEOS_P} )"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2+ CC-BY-SA-3.0 public-domain"
+SLOT="0"
+#[[ "${PV}" == *_beta* ]] || \
+KEYWORDS="~amd64 ~x86"
+# upstream requested debug support
+IUSE="debug discord nls videos vulkan"
+
+# TODO: unbundle miniupnpc and quesoglc
+# quesoglc-0.7.2 is buggy: http://developer.wz2100.net/ticket/2828
+CDEPEND="
+ >=dev-games/physfs-2[zip]
+ >=dev-libs/libsodium-1.0.14
+ dev-libs/openssl:0=
+ media-libs/freetype:2
+ media-libs/glew:=
+ media-libs/harfbuzz
+ media-libs/libogg
+ media-libs/libpng:0
+ media-libs/libsdl2[opengl,video,X]
+ media-libs/libtheora
+ media-libs/libvorbis
+ media-libs/openal
+ sys-libs/zlib
+ virtual/glu
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXrandr
+ nls? ( virtual/libintl )
+ vulkan? ( media-libs/libsdl2:=[vulkan] )
+"
+DEPEND="
+ ${CDEPEND}
+ app-text/asciidoc
+ dev-libs/fribidi
+ media-libs/fontconfig
+"
+RDEPEND="
+ ${CDEPEND}
+ media-fonts/dejavu
+"
+BDEPEND="
+ app-arch/zip
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+"
+
+HTML_DOCS=( doc/quickstartguide.html doc/docbook-xsl.css doc/ScriptingManual.htm )
+DOCS=( README.md doc/images doc/Scripting.md doc/js-globals.md )
+
+src_unpack() {
+ unpack ${P}.tar.xz
+}
+
+src_prepare() {
+ default
+
+ sed -i -e 's/#top_builddir/top_builddir/' po/Makevars || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWZ_DISTRIBUTOR="Gentoo Linux"
+ -DWZ_ENABLE_WARNINGS_AS_ERRORS="OFF"
+ -DWZ_ENABLE_BACKEND_VULKAN="$(usex vulkan)"
+ -DBUILD_SHARED_LIBS="OFF"
+ -DENABLE_NLS="$(usex nls)"
+ -DENABLE_DISCORD="$(usex discord)"
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ asciidoc -b html5 doc/quickstartguide.asciidoc || die
+}
+
+src_install() {
+ default
+
+ insinto /usr/bin
+ dobin "${BUILD_DIR}"/src/${PN}
+
+ insinto /usr/share/${PN}
+ doins "${BUILD_DIR}"/data/base.wz
+ doins "${BUILD_DIR}"/data/mp.wz
+
+ if use videos ; then
+ newins "${DISTDIR}"/${VIDEOS_P} sequences.wz
+ fi
+
+ insinto /usr/share/${PN}
+ doins -r data/music
+
+ doman "${BUILD_DIR}"/doc/warzone2100.6
+
+ doicon -s 128 icons/warzone2100.png
+ domenu icons/warzone2100.desktop
+}