From 5f8b50b93d5d3c34299d2d69d8b0fbbabb8a526b Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Sat, 4 Jul 2026 15:02:33 +0100 Subject: [PATCH] games-engines/odamex: Version bump to 12.2.1 Signed-off-by: James Le Cuirot --- games-engines/odamex/Manifest | 1 + games-engines/odamex/odamex-12.2.1.ebuild | 111 ++++++++++++++++++++++ 2 files changed, 112 insertions(+) create mode 100644 games-engines/odamex/odamex-12.2.1.ebuild diff --git a/games-engines/odamex/Manifest b/games-engines/odamex/Manifest index 756e9bfb60ebd..87e8775235b26 100644 --- a/games-engines/odamex/Manifest +++ b/games-engines/odamex/Manifest @@ -1,2 +1,3 @@ DIST odamex-src-12.1.0.tar.xz 28685168 BLAKE2B e47f4a62c98019d9558b94c5bc2b77468361847d9728e18505456ffd3ebf8a69af20722205b088894a737c87f3c447db5a0ec4d1da28f721edb738d2b5c13761 SHA512 8e81ae5e084ba171cda85909c5bc1bb3bc0f7fec3080f451977b6069a09693bf01017f857f3b37aab9cec5188b3f4a7c89f1b6c6ed9d74245d8b1cc9fc02b0fd DIST odamex-src-12.2.0.tar.xz 29556076 BLAKE2B c40408622a9a251e316941bd213854adb3a1488ed9d2aaaafa861a89077b0322d45185f75760f431ce33d0b3920a0cc0d9fcf5e8df456703b135d40ce5b49fcd SHA512 123e9d64fd3c71f900a05b0f9d8e6fb6bdb95a38dea4c6bc9b2a7d190888e71a272579d25281d7cb34ff7bb13524523beca3836d35ee82860f667474b2855c05 +DIST odamex-src-12.2.1.tar.xz 29756928 BLAKE2B 1e245e4d52355fa4a4068b94f571e315cb84af4906ec097639a6b4f30f4d18aee99f275ef05e4f733141b4adcff77dda499acb219f20306458550825a40cd5a2 SHA512 1e2452648a170960082408f55b6b119cc2cf7e9a82550af49ffb8cad6c87ea7166a49918198f0ac119f9d77da35136c75561a5be4aef10ee794b15390df98595 diff --git a/games-engines/odamex/odamex-12.2.1.ebuild b/games-engines/odamex/odamex-12.2.1.ebuild new file mode 100644 index 0000000000000..eea92300aa86c --- /dev/null +++ b/games-engines/odamex/odamex-12.2.1.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) +WX_GTK_VER="3.2-gtk3" + +inherit cmake desktop prefix python-any-r1 wxwidgets xdg + +DESCRIPTION="Online multiplayer free software engine for DOOM" +HOMEPAGE="https://odamex.net/" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${PN}-src-${PV}.tar.xz" +S="${WORKDIR}/${PN}-src-${PV}" +LICENSE="GPL-2+ MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" +IUSE="+client master +odalaunch portmidi server test upnp" +REQUIRED_USE="|| ( client master server )" +RESTRICT="!test? ( test )" + +# protobuf is still bundled. Unfortunately an old version is required for C++98 +# compatibility. We could use C++11, but upstream is concerned about using a +# completely different protobuf version on a multiplayer-focused engine. + +RDEPEND=" + client? ( + dev-cpp/cpptrace + dev-libs/jsoncpp:= + media-libs/libpng:0= + media-libs/libsdl2[joystick,sound,video] + media-libs/sdl2-mixer + net-misc/curl + >=x11-libs/fltk-1.4.3-r1:1= + x11-libs/libX11 + portmidi? ( media-libs/portmidi ) + ) + odalaunch? ( + x11-libs/wxGTK:${WX_GTK_VER}= + ) + server? ( + dev-libs/jsoncpp:= + virtual/zlib:= + upnp? ( net-libs/miniupnpc:= ) + ) +" +DEPEND=" + ${RDEPEND} + test? ( + dev-cpp/cpptrace + dev-libs/jsoncpp + net-misc/curl + virtual/zlib + ) +" +BDEPEND=" + ${PYTHON_DEPS} +" + +src_prepare() { + # All this is unneeded and includes old CMake declarations. + rm -r libraries/{cpptrace,curl,fltk,googletest,jsoncpp,libadlmidi/android,libpng,miniupnp,portmidi,protobuf/{examples,third_party},zlib}/ || die + + cmake_src_prepare + hprefixify common/d_main.cpp +} + +src_configure() { + use odalaunch && setup-wxwidgets + + local mycmakeargs=( + -DUSE_INTERNAL_CPPTRACE=0 + -DUSE_INTERNAL_FLTK=0 + -DUSE_INTERNAL_GTEST=0 + -DUSE_INTERNAL_JSONCPP=0 + -DUSE_INTERNAL_LIBS=0 + -DUSE_INTERNAL_MINIUPNP=0 + -DBUILD_CLIENT=$(usex client) + -DBUILD_LAUNCHER=$(usex odalaunch) + -DBUILD_MASTER=$(usex master) + -DBUILD_SERVER=$(usex server) + -DBUILD_TESTS=$(usex test) + -DBUILD_OR_FAIL=1 + -DENABLE_PORTMIDI=$(usex portmidi) + -DUSE_MINIUPNP=$(usex upnp) + ) + + cmake_src_configure +} + +src_install() { + if use client ; then + for size in 96 128 256 512; do + newicon -s ${size} "${S}/media/icon_${PN}_${size}.png" "${PN}.png" + done + make_desktop_entry "${PN}" "Odamex" + + if use odalaunch ; then + for size in 96 128 256 512; do + newicon -s ${size} "${S}/media/icon_odalaunch_${size}.png" "odalaunch.png" + done + make_desktop_entry odalaunch "Odamex Launcher" odalaunch + fi + fi + + cmake_src_install +} + +src_test() { + "${BUILD_DIR}"/tests/unit-tests/odagtest || die +}