From c34cefdab3db4e07ef15aabad2da66aaf001de65 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Sat, 22 Nov 2025 22:50:03 +0000 Subject: [PATCH] games-engines/odamex: Version bump to 11.2.0 Some keywording is needed to due new dependencies. Signed-off-by: James Le Cuirot --- games-engines/odamex/Manifest | 1 + games-engines/odamex/odamex-11.2.0.ebuild | 92 +++++++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 games-engines/odamex/odamex-11.2.0.ebuild diff --git a/games-engines/odamex/Manifest b/games-engines/odamex/Manifest index c9d85ec68c07..72bf3acb8bdb 100644 --- a/games-engines/odamex/Manifest +++ b/games-engines/odamex/Manifest @@ -1 +1,2 @@ DIST odamex-src-11.0.0.tar.xz 21138664 BLAKE2B b2690c7f6580c3596a0b04cafc61f3a581ac631746e9bae3eaf0d803a89a317866b906959ad4e77b21d9daa4244f0f6aae1af4f88169a8815d30e0d1a86a29c3 SHA512 6e2e55404a076c9f121ff4944fcdda0ee8bcfb891a3e0631359ce626e4c0cb70b3898cecd0f7f9f282ea18f4bbd0bd30596ac2c18ddae703455c92f7bf4dce39 +DIST odamex-src-11.2.0.tar.xz 27637716 BLAKE2B 77740978141e654749b599720770af9192017436228021d9864afb15a9f1ddf9e658cda049bf7ddc35e7da7381fffbdb50a47919c69763a2d8f8364a9518484b SHA512 5f124398dcf3ab3c0179dd17c286795ab5a089b54f4f6d3faf1e7701e44659470af9b7a272c1b47769a19d428aaf7f29a7680d873bedc5964a8ec0931e9d64eb diff --git a/games-engines/odamex/odamex-11.2.0.ebuild b/games-engines/odamex/odamex-11.2.0.ebuild new file mode 100644 index 000000000000..e6b4f4a90897 --- /dev/null +++ b/games-engines/odamex/odamex-11.2.0.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +inherit cmake desktop prefix 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 ~arm64" +IUSE="+client master +odalaunch portmidi server upnp" +REQUIRED_USE="|| ( client master server )" + +# 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}" +BDEPEND="games-util/deutex" + +src_prepare() { + # All this is unneeded and includes old CMake declarations. + rm -r libraries/{cpptrace,curl,fltk,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_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_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 +}