summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Tsoy <alexander@tsoy.me>2020-03-08 03:09:49 +0300
committerJoonas Niilola <juippis@gentoo.org>2020-04-17 18:10:31 +0300
commit5bcc65368c29b179187f1fa9486d83c2fea9405c (patch)
tree2f1d878f524d691a44b09b5220ae42d227ddd842
parentsys-cluster/charliecloud: adhere to common styles (diff)
downloadgentoo-5bcc65368c29b179187f1fa9486d83c2fea9405c.tar.gz
gentoo-5bcc65368c29b179187f1fa9486d83c2fea9405c.tar.bz2
gentoo-5bcc65368c29b179187f1fa9486d83c2fea9405c.zip
games-fps/yamagi-quake2: Version bump to 7.43
Closes: https://bugs.gentoo.org/717510 Signed-off-by: Alexander Tsoy <alexander@tsoy.me> Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r--games-fps/yamagi-quake2/Manifest4
-rw-r--r--games-fps/yamagi-quake2/files/yamagi-quake2-addon-respect-flags-r4.patch33
-rw-r--r--games-fps/yamagi-quake2/yamagi-quake2-7.43.ebuild152
3 files changed, 189 insertions, 0 deletions
diff --git a/games-fps/yamagi-quake2/Manifest b/games-fps/yamagi-quake2/Manifest
index 522c98075007..7c648cb46403 100644
--- a/games-fps/yamagi-quake2/Manifest
+++ b/games-fps/yamagi-quake2/Manifest
@@ -1,7 +1,11 @@
DIST quake2-7.41.tar.xz 1978952 BLAKE2B 9d3626f102b652c443caea294f7f66dc46869612b64d16c5f2e9b7f28a83800a0653450f8fc44ebaa83e01ddfaf2b2cd5dd9c6feb8001b5cabd7df32171e035b SHA512 fd2c991274415eb38cf3deb7562f7c51c7f8e935cf7215eba7e8ae088f25cddf95e86221fcbbb5fcc8bd97e264b147951bf5f4aecb8ee54973d46af7ef39d3af
DIST quake2-7.42.tar.xz 1987332 BLAKE2B 63ced75746eb031faf949c6b094ec607076f481b8d97eca242f9bf6fd6325afc8dfb5f98fe4f8ba5c5e87b721392f613031fc204b775634fc5292a26fef1d76c SHA512 0f51204fcf14ecb3f1f654e6ee19207836cf4642022569ef202bc12f312f76dbd43695aa4d9f9fb70c8b023f42d1a8fcec25f472a32175ebb0a308211fa40cc0
+DIST quake2-7.43.tar.xz 1989812 BLAKE2B dbce9e3b65a63637726dda375f0fc64193529a3c1744643290778ee8f1a0eff3067f96dd3e76fa4d138cfbb5e9237f7517f608277e4f5b21729473849b7c8ac3 SHA512 c728609e277330b39fc423d66bbd098e360e7fc8c54500fa5accbc4aaeb9145a00c8ff8be67ce8f36047dbe6d98480bdbe1f330da5b0037517607ada8a63e4b8
DIST quake2-ctf-1.06.tar.xz 135464 BLAKE2B 457ab883ba9ecfb723d890f5c9e3da710aae4ed5fa4e530c8028b0fa93186350e6ed1b483b89ddf98cbb3f3b1992a15c33af5d181073395b61e5b9a7c9987d88 SHA512 24c58f895d4056127e6f714c618d53b80bd75968758d8aa729deba750297efd5d6c40bd69afd98ebbf0d231bd59909e6438ec64b258883d8cfd33d33e928b2f9
+DIST quake2-ctf-1.07.tar.xz 135880 BLAKE2B 7501d5db676cbc7b523313bf4e5d572cc8711efd09e2390d6aa6980d45bc682e7f137581b8a9a8d4b491de8f8ed7dd1cb32a66c9ed2cc456e114f672cedf2a1c SHA512 de2ab94fc7bb43327170f6aefbaf811e7a0071da2e5c4602354854e46e4c8cfc687a6300e7162c8f1be2f0b42cf2d3edc255c2f44fb0e39adc873a521197a316
DIST quake2-rogue-2.05.tar.xz 241120 BLAKE2B 58be655bfcba9c6ee66616dbedaf01c4329d656c205ad99910dccb095981a8f29b09d557e76f9e43df21f36eebeb5ad0c0f2788d2bee2bc1cfe68dda824df5d1 SHA512 521860cc3c46e8679f0dee2b9bc6c3a643439f560ad2437e2961e746285a95fa118201d516eefefdd8b5fe7da8ec5ea0c9fae8910751256a0d986300497631ff
DIST quake2-rogue-2.06.tar.xz 243872 BLAKE2B fa289bb9ecd988dd77dd4d581212fc1c2f964371109123ed77ea0a740b65bc117d787c144d9f246d091df3ff19f1c9f5ed42571cd2d450061de63f032cc3c1d6 SHA512 4f8646f6b6cc2b522291e89f63a6d0273353e27bcafed6fcd5c2e509e938ab76504bfe9e92d398c8cee708af64ffbb7d81e98ea0df1e13ba593db4dff8ddfcf6
+DIST quake2-rogue-2.07.tar.xz 243828 BLAKE2B f292bc7318ee8094b0dae0219fbf7882fb9a168ee2b311c254b5cabdb53f6a65350be80ea09185f66b5e3af4e670c3dd21235a06aeec2f334dc84cb474cb02da SHA512 21b0dca16240307c1e7a6c2a2c08e380fabf4f6bdbf1981a2183056ccd5f05f7003f41b38b4b131f9b16909b4c714ff2ef23638601b0c420003674bc9a9d0789
DIST quake2-xatrix-2.06.tar.xz 190560 BLAKE2B 945e80159cd7630280290f6930e1343fdf9dccdbd44d14cd5b36eccae9499d2cd6eddb1a3967721b61349fa60e48c720e4db66fdc1d8930628864c7fe2cd4ada SHA512 98557ed3fc4fddcd36d47dab207b8101b82f40bd976b11195b229a1073ec04216c06dc119269f287fbd9da0418671521ab6393008f2486ab113940d5fec6bfdc
DIST quake2-xatrix-2.07.tar.xz 192404 BLAKE2B 54772f1158af82211a5c925676e1399bd9debfa8f336a566dd7c22c6f50eb488030c871a7952b9eb00a7a8498560aed332dfd388074bb5a733ed5e979d59d9dc SHA512 72400afa98faf38559dfbc6dcfd01a16902adc782065bc1bbae4d773b5c139543d79f465195db72f0dbaf33999c667c65fd3582a8029db5b50ea5295d278b2a7
+DIST quake2-xatrix-2.08.tar.xz 192760 BLAKE2B ce6d4bae8ed2970e9ca9971c32fba6b226d7d7616dc7e5168d1504f6ae62ece286c21c22f0f8a3d2df48f7b63b53ec681efa92074f918ef4e5c9b98667e2682b SHA512 cc8fd7add3ded10ad88f1a1629c7222c26a398fa47c2c1aa6091dc310b7f2f5830c997c534b38cc0f6d4153357d76901ba48dbd505ce96f95d84f97f2f0dddd9
diff --git a/games-fps/yamagi-quake2/files/yamagi-quake2-addon-respect-flags-r4.patch b/games-fps/yamagi-quake2/files/yamagi-quake2-addon-respect-flags-r4.patch
new file mode 100644
index 000000000000..86c794b99e5e
--- /dev/null
+++ b/games-fps/yamagi-quake2/files/yamagi-quake2-addon-respect-flags-r4.patch
@@ -0,0 +1,33 @@
+--- a/Makefile 2020-02-24 19:01:11.000000000 +0300
++++ b/Makefile 2020-03-08 03:07:40.480074095 +0300
+@@ -66,11 +66,11 @@ endif
+ #
+ # -MMD to generate header dependencies.
+ ifeq ($(OSTYPE), Darwin)
+-CFLAGS := -O2 -fno-strict-aliasing -fomit-frame-pointer \
+- -Wall -pipe -g -fwrapv -arch x86_64
++CFLAGS += -fno-strict-aliasing -fomit-frame-pointer \
++ -Wall -fwrapv -arch x86_64
+ else
+-CFLAGS := -O2 -fno-strict-aliasing -fomit-frame-pointer \
+- -Wall -pipe -g -MMD -fwrapv
++CFLAGS += -fno-strict-aliasing -fomit-frame-pointer \
++ -Wall -MMD -fwrapv
+ endif
+
+ # ----------
+@@ -93,11 +93,11 @@ endif
+
+ # Base LDFLAGS.
+ ifeq ($(OSTYPE), Darwin)
+-LDFLAGS := -shared -arch x86_64
++LDFLAGS += -shared -arch x86_64
+ else ifeq ($(OSTYPE), Windows)
+-LDFLAGS := -shared -static-libgcc
++LDFLAGS += -shared -static-libgcc
+ else
+-LDFLAGS := -shared -lm
++LDFLAGS += -shared -lm
+ endif
+
+ # ----------
diff --git a/games-fps/yamagi-quake2/yamagi-quake2-7.43.ebuild b/games-fps/yamagi-quake2/yamagi-quake2-7.43.ebuild
new file mode 100644
index 000000000000..e9db574e8b51
--- /dev/null
+++ b/games-fps/yamagi-quake2/yamagi-quake2-7.43.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop eutils
+
+CTF_V="1.07"
+ROGUE_V="2.07"
+XATRIX_V="2.08"
+
+DESCRIPTION="Quake 2 engine focused on single player"
+HOMEPAGE="https://www.yamagi.org/quake2/"
+SRC_URI="https://deponie.yamagi.org/quake2/quake2-${PV}.tar.xz
+ ctf? ( https://deponie.yamagi.org/quake2/quake2-ctf-${CTF_V}.tar.xz )
+ rogue? ( https://deponie.yamagi.org/quake2/quake2-rogue-${ROGUE_V}.tar.xz )
+ xatrix? ( https://deponie.yamagi.org/quake2/quake2-xatrix-${XATRIX_V}.tar.xz )"
+S="${WORKDIR}/quake2-${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+client ctf dedicated openal +opengl rogue softrender xatrix"
+REQUIRED_USE="
+ || ( client dedicated )
+ client? ( || ( opengl softrender ) )
+"
+
+DEPEND="
+ client? (
+ media-libs/libsdl2[video]
+ !openal? ( media-libs/libsdl2[sound] )
+ opengl? (
+ media-libs/libsdl2[opengl]
+ virtual/opengl
+ )
+ )
+"
+RDEPEND="${DEPEND}
+ client? ( openal? ( media-libs/openal ) )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-respect-flags.patch
+)
+DOCS=( CHANGELOG README.md doc )
+
+mymake() {
+ emake \
+ VERBOSE=1 \
+ WITH_SYSTEMWIDE=yes \
+ WITH_SYSTEMDIR="${EPREFIX}"/usr/share/games/quake2 \
+ WITH_OPENAL=$(usex openal) \
+ "$@"
+}
+
+src_prepare() {
+ local addon
+ for addon in ctf rogue xatrix; do
+ use ${addon} || continue
+
+ pushd "${WORKDIR}"/quake2-${addon}-* >/dev/null || die
+ if [[ ${addon} = ctf ]]; then
+ eapply -l -- "${FILESDIR}"/${PN}-addon-respect-flags-r4.patch
+ else
+ eapply -l -- "${FILESDIR}"/${PN}-addon-respect-flags-r3.patch
+ fi
+ popd >/dev/null || die
+ done
+
+ default
+}
+
+src_compile() {
+ local targets=( game )
+ if use client; then
+ targets+=( client )
+ use opengl && targets+=( ref_gl1 ref_gl3 )
+ use softrender && targets+=( ref_soft )
+ fi
+ use dedicated && targets+=( server )
+
+ mymake config
+ mymake "${targets[@]}"
+
+ local addon
+ for addon in ctf rogue xatrix; do
+ use ${addon} || continue
+ emake -C "${WORKDIR}"/quake2-${addon}-* VERBOSE=1
+ done
+}
+
+src_install() {
+ insinto /usr/lib/yamagi-quake2
+ # Yamagi Quake II expects all binaries to be in the same directory
+ # See stuff/packaging.md for more info
+ exeinto /usr/lib/yamagi-quake2
+ doins -r release/.
+
+ if use client; then
+ doexe release/quake2
+ dosym ../lib/yamagi-quake2/quake2 /usr/bin/yquake2
+
+ newicon stuff/icon/Quake2.svg "yamagi-quake2.svg"
+ make_desktop_entry "yquake2" "Yamagi Quake II"
+ fi
+
+ if use dedicated; then
+ doexe release/q2ded
+ dosym ../lib/yamagi-quake2/q2ded /usr/bin/yq2ded
+ fi
+
+ insinto /usr/lib/yamagi-quake2/baseq2
+ doins stuff/yq2.cfg
+
+ local addon
+ for addon in ctf rogue xatrix; do
+ use ${addon} || continue
+
+ insinto /usr/lib/yamagi-quake2/${addon}
+ doins "${WORKDIR}"/quake2-${addon}-*/release/game.so
+
+ if use client; then
+ local addon_name
+ case ${addon} in
+ ctf) addon_name="CTF" ;;
+ rogue) addon_name="Ground Zero" ;;
+ xatrix) addon_name="The Reckoning" ;;
+ esac
+
+ make_wrapper "yquake2-${addon}" "yquake2 +set game ${addon}"
+ make_desktop_entry "yquake2-${addon}" "Yamagi Quake II: ${addon_name}"
+ fi
+ done
+
+ einstalldocs
+ if use client; then
+ docinto examples
+ dodoc stuff/cdripper.sh
+ fi
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ elog
+ elog "In order to play, you must at least install:"
+ elog "games-fps/quake2-data or games-fps/quake2-demodata or copy game"
+ elog "data files to ~/.yq2/ or ${EPREFIX}/usr/share/games/quake2/ manually."
+ elog "Read ${EPREFIX}/usr/share/doc/${PF}/README.md* for more information."
+ elog
+ fi
+}