Add games-engines/ioquake3

Signed-off-by: Shin'ya Minazuki <shinyoukai@laidback.moe>
This commit is contained in:
Shin'ya Minazuki 2026-06-02 11:30:03 -03:00
commit 0a2082e6b8
3 changed files with 87 additions and 0 deletions

View file

@ -0,0 +1 @@
DIST ioquake3-1.36.20200125.tar.gz 7680734 BLAKE2B 7754d8f20f94e8657e0499bfc8201837f20c273518b21ca04b14c3d5253115254dc4bb5215ba2723028f74831cc0caf2c00eeeb1821a9d3dc74f39940f620d2d SHA512 09e93515b39d25f26b343eef4462a9759282ab1f27476b9144d5e11d4cc2f4253ea9f72c38b41458aac721c645778c9201d19d67857355ee3c0b20ae445f9c7d

View file

@ -0,0 +1,71 @@
# Copyright 2026 Shin'ya Minazuki
EAPI=8
inherit toolchain-funcs
DESCRIPTION="Community effort to maintain and improve the id Tech 3 engine"
HOMEPAGE="https://www.ioquake3.org/"
SRC_URI="https://distfiles.chaotic.ninja/pub/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64"
DEPEND="
curl? ( net-misc/curl )
freetype? ( media-libs/freetype )
ogg? (
media-libs/libogg
media-libs/libvorbis
)
openal? ( media-libs/openal )
opus? (
media-libs/libopus
media-libs/opusfile
)
media-libs/libjpeg-turbo
media-libs/libsdl2
sys-libs/zlib
"
RDEPEND="${DEPEND}"
BDEPEND="
app-alternatives/yacc
virtual/pkgconfig
"
IUSE="+client curl freetype ogg openal opus +server"
src_configure() {
elog "Creating Makefile.local..."
echo "B=${S}/build" >> Makefile.local
echo "BD=${S}/build" >> Makefile.local
echo "BR=${S}/build" >> Makefile.local
echo "BUILD_AUTOUPDATER=0" >> Makefile.local
echo "BUILD_CLIENT=$(usex client 1 0)" >> Makefile.local
echo "BUILD_MISSIONPACK=1" >> Makefile.local
echo "BUILD_SERVER=$(usex server 1 0)" >> Makefile.local
echo "CC=$(tc-getCC)" >> Makefile.local
echo "PKG_CONFIG=$(tc-getPKG_CONFIG)" >> Makefile.local
echo "USE_CURL=$(usex curl 1 0)" >> Makefile.local
echo "USE_CODEC_VORBIS=$(usex ogg 1 0)" >> Makefile.local
echo "USE_CODEC_OPUS=$(usex opus 1 0)" >> Makefile.local
echo "USE_FREETYPE=$(usex freetype 1 0)" >> Makefile.local
echo "USE_OPENAL=$(usex openal 1 0)" >> Makefile.local
echo "USE_INTERNAL_LIBS=0" >> Makefile.local
echo "USE_VOIP=0" >> Makefile.local
echo "USE_YACC=1" >> Makefile.local
echo "COPYDIR=${EPREFIX}/usr/$(get_libdir)/${PN}" >> Makefile.local
}
src_compile() {
emake
}
src_install() {
emake DESTDIR="${D}" install
}
pkg_postinst() {
elog "In order to play Quake III Arena, get the data files first"
elog "How to get them will not be covered here, that's on you"
elog "Then place it somewhere readable to the client executable"
}

View file

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>shinyoukai@laidback.moe</email>
<name>Shin'ya Minazuki</name>
</maintainer>
<use>
<flag name="client">Build the client binary (ioquake3)</flag>
<flag name="server">Build the server binary (ioq3ded)</flag>
</use>
<upstream>
<remote-id type="github">ioquake3/ioq3</remote-id>
</upstream>
</pkgmetadata>