| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 4.14.3 | 8 | ~amd64 ~arm64 ~ppc64 | 0 |
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake flag-o-matic xdg
MY_PN="UZDoom"
DESCRIPTION="Modder-friendly hardware-accelerated source port of the DOOM engine"
HOMEPAGE="https://zdoom.org"
SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="Apache-2.0 BSD BZIP2 GPL-3 LGPL-2.1+ LGPL-3 MIT
non-free? ( Activision ChexQuest3 DOOM-COLLECTORS-EDITION freedist WidePix )"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64"
IUSE="debug gles2 gtk +non-free openmp +swr telemetry vulkan"
DEPEND="
app-arch/bzip2:=
media-libs/libjpeg-turbo:0=
media-libs/libsdl2[gles2?,opengl,vulkan?]
media-libs/libvpx:=
media-libs/libwebp:=
media-libs/openal
>=media-libs/zmusic-1.1.14
virtual/zlib:=
gtk? ( x11-libs/gtk+:3 )
"
RDEPEND="
${DEPEND}
!games-fps/gzdoom
"
BDEPEND="
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}"/${P}-build-nonfree.patch
)
src_prepare() {
rm -rf docs/licenses libraries/{bzip2,jpeg,zlib} || die
cmake_src_prepare
cat <<-EOF > "${S}/src/gitinfo.h" || die
// 0
// The above line prevents UpdateRevision.cmake from replacing this file.
// This file was generated by the Gentoo ebuild.
#define GIT_DESCRIPTION "${PV}"
#define GIT_HASH "0"
#define GIT_TIME ""
EOF
# Split assets into nonfree directory. This is currently being upstreamed.
# https://github.com/UZDoom/UZDoom/pull/813
cd wadsrc_extra || die
mkdir -p nonfree/sounds || die
mv ../wadsrc/static/sounds/dssecret.flac nonfree/sounds/ || die
cd static || die
find filter ! -path "filter/harmony/*" \( -name font.inf -o -name "*.lmp" -o -name "*.png" \) |
gtar --verbatim-files-from --remove-files -cT - | gtar -xC ../nonfree || die
}
src_configure() {
# https://bugs.gentoo.org/858749
filter-lto
append-flags -fno-strict-aliasing
local mycmakeargs=(
-DBUILD_NONFREE=$(usex non-free)
-DBUILD_SHARED_LIBS=OFF
-DINSTALL_DOCS_PATH="${EPREFIX}/usr/share/doc/${PF}"
-DINSTALL_PK3_PATH="${EPREFIX}/usr/share/doom"
-DINSTALL_SOUNDFONT_PATH="${EPREFIX}/usr/share/doom"
-DDYN_OPENAL=OFF
-DNO_GTK=$(usex !gtk)
-DNO_OPENAL=OFF
-DHAVE_VULKAN=$(usex vulkan)
-DHAVE_GLES2=$(usex gles2)
-DNO_OPENMP=$(usex !openmp)
-DZDOOM_ENABLE_SWR=$(usex swr)
-DSEND_ANON_STATS=$(usex telemetry)
)
use debug || append-cppflags -DNDEBUG
cmake_src_configure
}
pkg_postinst() {
xdg_pkg_postinst
if ! use non-free ; then
ewarn
ewarn "${MY_PN} has been installed without non-free components. Commercial"
ewarn "games should still run, but the experience may be suboptimal."
ewarn
fi
}
app-arch/bzip2:= media-libs/libjpeg-turbo:0= media-libs/libsdl2[gles2?,opengl,vulkan?] media-libs/libvpx:= media-libs/libwebp:= media-libs/openal >=media-libs/zmusic-1.1.14 virtual/zlib:= gtk? ( x11-libs/gtk+:3 )
app-arch/bzip2:= media-libs/libjpeg-turbo:0= media-libs/libsdl2[gles2?,opengl,vulkan?] media-libs/libvpx:= media-libs/libwebp:= media-libs/openal >=media-libs/zmusic-1.1.14 virtual/zlib:= gtk? ( x11-libs/gtk+:3 ) !games-fps/gzdoom
virtual/pkgconfig
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | uzdoom-4.14.3.tar.gz | 26435472 bytes | https://github.com/UZDoom/UZDoom/archive/refs/tags/4.14.3.tar.gz |