summaryrefslogtreecommitdiff
path: root/games-fps/alephone
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/alephone')
-rw-r--r--games-fps/alephone/Manifest5
-rw-r--r--games-fps/alephone/alephone-20220115.ebuild90
-rw-r--r--games-fps/alephone/alephone-9999.ebuild90
-rw-r--r--games-fps/alephone/files/alephone.sh28
-rw-r--r--games-fps/alephone/metadata.xml17
5 files changed, 230 insertions, 0 deletions
diff --git a/games-fps/alephone/Manifest b/games-fps/alephone/Manifest
new file mode 100644
index 000000000000..59beb0d6d58a
--- /dev/null
+++ b/games-fps/alephone/Manifest
@@ -0,0 +1,5 @@
+AUX alephone.sh 486 BLAKE2B ed0a60d272e7894ec64ce6f5a727dd4cd129ae8e582f72c74d2177cf22e2be18ee72d0988204fb65650da2c0e3890c9640844bea2f8091b32d24dfb80537dd8e SHA512 4eaf345bec8daecba38125a4bceef2d20985b1653550f935af20a28ec59f8615bf14d9254257e56d006affa24d63a3859e3270f416fcfb318dc688fefa2aff3b
+DIST release-20220115.tar.gz 6487243 BLAKE2B 7c304d28e826e2b3b32427661d3e85ff5ec41e6200d98468edeb5ea11a751fbbd333b72e3efe0937bc496088e36560351f810a6471d92cb684b0bf6adceabf68 SHA512 53d9c602af58f56b5236ca9a539ffac47abe8350b3d228345348e63648a5ef343335be9b0a3366a201807b3e3aa013dc360a38c3e7b47f4a6da2a696ec6ea646
+EBUILD alephone-20220115.ebuild 2203 BLAKE2B 48cdaf7c9a634881c8d0d04e2497af3407a1004df94f84d0af19bce0c1ba0c109c6d6f3ca90ae3d19c3a36c57d39f6f7589fb1304606e9c7488195db50c61e71 SHA512 e27bca5564e1c2062dc259fcbfce5d49c7d6fe7aed4b69a3843f10911f1d15582b062b1b710abec876068d8bbbac97a0ab96a2a804e10ec8114f1dcfcfa13190
+EBUILD alephone-9999.ebuild 2203 BLAKE2B 48cdaf7c9a634881c8d0d04e2497af3407a1004df94f84d0af19bce0c1ba0c109c6d6f3ca90ae3d19c3a36c57d39f6f7589fb1304606e9c7488195db50c61e71 SHA512 e27bca5564e1c2062dc259fcbfce5d49c7d6fe7aed4b69a3843f10911f1d15582b062b1b710abec876068d8bbbac97a0ab96a2a804e10ec8114f1dcfcfa13190
+MISC metadata.xml 599 BLAKE2B fec1ac113594c4548d8cc07eda9a63bc49c345fb0c08ee0622d3de2c1f15b25f8f4a1c4f33770685a479417136a2aa5f66f3f8ee7e7b4ff91e4f3fb97c05eddb SHA512 42faf1057312f77764da14f535dacc06f1029524b4c92db915bcd353d529334614545bff73ee9c36ffc6955f78f451063fee03660a9d615f0b00a023cea1aefc
diff --git a/games-fps/alephone/alephone-20220115.ebuild b/games-fps/alephone/alephone-20220115.ebuild
new file mode 100644
index 000000000000..9bddbbc0d931
--- /dev/null
+++ b/games-fps/alephone/alephone-20220115.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools optfeature prefix xdg
+
+DESCRIPTION="An enhanced version of the game engine from the classic Mac game, Marathon"
+HOMEPAGE="http://source.bungie.org/"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Aleph-One-Marathon/alephone/"
+ EGIT_SUBMODULES=() # Upstream includes game data as submodules, we only want the engine
+else
+ SRC_URI="https://github.com/Aleph-One-Marathon/alephone/archive/refs/tags/release-${PV}.tar.gz"
+ S="${WORKDIR}/${PN}-release-${PV}"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3+ BitstreamVera OFL-1.1"
+SLOT="0"
+
+IUSE="alsa curl speex upnp"
+
+# ffmpeg covers most audio/video use cases and the package doesn't configure with alternatives enabled (media-libs/smpeg)
+# When resolved upstream, !ffmpeg ( media-libs/libmad media-libs/libsndfile media-libs/libvorbis media-libs/smpeg )
+# with an appropriate REQUIRED_USE may be added.
+# See https://github.com/Aleph-One-Marathon/alephone/issues/85
+RDEPEND="
+ dev-libs/boost:=
+ dev-libs/zziplib:=
+ media-libs/libpng
+ media-libs/libsdl2
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-net
+ media-libs/sdl2-ttf
+ media-video/ffmpeg:=[mp3,vorbis]
+ sys-libs/zlib
+ virtual/opengl
+ virtual/glu
+ alsa? ( media-libs/alsa-lib )
+ curl? ( net-misc/curl )
+ speex? ( media-libs/speex )
+ upnp? ( net-libs/miniupnpc )
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --enable-lua \
+ --enable-opengl \
+ --with-ffmpeg \
+ --without-mad \
+ --without-smpeg \
+ --without-sndfile \
+ --without-vorbis \
+ $(use_with alsa) \
+ $(use_with curl) \
+ $(use_with speex) \
+ $(use_with upnp miniupnpc)
+}
+
+src_install() {
+ default
+ prefixify_ro "${FILESDIR}"/${PN}.sh
+ dobin "${T}"/${PN}.sh
+ doman docs/${PN}.6
+ docinto html/
+ dodoc docs/*.html
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature_header "Install game data:"
+ optfeature "Marathon data files" games-fps/alephone-marathon
+ optfeature "Marathon 2 Durandal data files" games-fps/alephone-durandal
+ optfeature "Marathon: Infinity data files" games-fps/alephone-infinity
+}
diff --git a/games-fps/alephone/alephone-9999.ebuild b/games-fps/alephone/alephone-9999.ebuild
new file mode 100644
index 000000000000..9bddbbc0d931
--- /dev/null
+++ b/games-fps/alephone/alephone-9999.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools optfeature prefix xdg
+
+DESCRIPTION="An enhanced version of the game engine from the classic Mac game, Marathon"
+HOMEPAGE="http://source.bungie.org/"
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Aleph-One-Marathon/alephone/"
+ EGIT_SUBMODULES=() # Upstream includes game data as submodules, we only want the engine
+else
+ SRC_URI="https://github.com/Aleph-One-Marathon/alephone/archive/refs/tags/release-${PV}.tar.gz"
+ S="${WORKDIR}/${PN}-release-${PV}"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3+ BitstreamVera OFL-1.1"
+SLOT="0"
+
+IUSE="alsa curl speex upnp"
+
+# ffmpeg covers most audio/video use cases and the package doesn't configure with alternatives enabled (media-libs/smpeg)
+# When resolved upstream, !ffmpeg ( media-libs/libmad media-libs/libsndfile media-libs/libvorbis media-libs/smpeg )
+# with an appropriate REQUIRED_USE may be added.
+# See https://github.com/Aleph-One-Marathon/alephone/issues/85
+RDEPEND="
+ dev-libs/boost:=
+ dev-libs/zziplib:=
+ media-libs/libpng
+ media-libs/libsdl2
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-net
+ media-libs/sdl2-ttf
+ media-video/ffmpeg:=[mp3,vorbis]
+ sys-libs/zlib
+ virtual/opengl
+ virtual/glu
+ alsa? ( media-libs/alsa-lib )
+ curl? ( net-misc/curl )
+ speex? ( media-libs/speex )
+ upnp? ( net-libs/miniupnpc )
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --enable-lua \
+ --enable-opengl \
+ --with-ffmpeg \
+ --without-mad \
+ --without-smpeg \
+ --without-sndfile \
+ --without-vorbis \
+ $(use_with alsa) \
+ $(use_with curl) \
+ $(use_with speex) \
+ $(use_with upnp miniupnpc)
+}
+
+src_install() {
+ default
+ prefixify_ro "${FILESDIR}"/${PN}.sh
+ dobin "${T}"/${PN}.sh
+ doman docs/${PN}.6
+ docinto html/
+ dodoc docs/*.html
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature_header "Install game data:"
+ optfeature "Marathon data files" games-fps/alephone-marathon
+ optfeature "Marathon 2 Durandal data files" games-fps/alephone-durandal
+ optfeature "Marathon: Infinity data files" games-fps/alephone-infinity
+}
diff --git a/games-fps/alephone/files/alephone.sh b/games-fps/alephone/files/alephone.sh
new file mode 100644
index 000000000000..3bb51c26b67c
--- /dev/null
+++ b/games-fps/alephone/files/alephone.sh
@@ -0,0 +1,28 @@
+#!/usr/bin/env bash
+
+DIR=$(dirname "${0}")
+CMD=$(basename "${0}")
+ALEPHONE=${CMD%%.sh}
+
+if [[ -z "${1}" ]]
+then
+ echo "Usage: ${0} SCENARIO FLAGS"
+ echo "Where SCENARIO is one of:"
+ for d in @GENTOO_PORTAGE_EPREFIX@/usr/share/alephone-*
+ do
+ echo " ${d##*/alephone-}"
+ done
+ exit 2
+fi
+
+DATA="@GENTOO_PORTAGE_EPREFIX@/usr/share/alephone-${1}"
+
+shift
+
+# kill ARTS, because we're just that nice
+if artsshell terminate 2> /dev/null
+then
+ sleep 2
+fi
+
+"${DIR}"/"${ALEPHONE}" "$@" "${DATA}"
diff --git a/games-fps/alephone/metadata.xml b/games-fps/alephone/metadata.xml
new file mode 100644
index 000000000000..62d4b84ac671
--- /dev/null
+++ b/games-fps/alephone/metadata.xml
@@ -0,0 +1,17 @@
+<?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>
+ <maintainer type="person" proxied="yes">
+ <email>Matt.Jolly@footclan.ninja</email>
+ <name>Matt Jolly</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Aleph-One-Marathon/alephone</remote-id>
+ <remote-id type="sourceforge">marathon</remote-id>
+ <bugs-to>https://github.com/Aleph-One-Marathon/alephone/issues</bugs-to>
+ </upstream>
+</pkgmetadata>