diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-12-19 01:54:17 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-12-19 01:54:17 +0000 |
commit | 89e7f1cd6dd17f245898939477ef38d45dd112b9 (patch) | |
tree | 6b02444048d0d92ccbf6f3e8c538c152f57086c2 /games-engines/odamex | |
parent | 1252b7a51c2cc6bd3a81830544cacce0aefc0bf1 (diff) |
gentoo auto-resync : 19:12:2023 - 01:54:16
Diffstat (limited to 'games-engines/odamex')
-rw-r--r-- | games-engines/odamex/Manifest | 4 | ||||
-rw-r--r-- | games-engines/odamex/files/odamex-10.4.0-backport-pr928.patch | 66 | ||||
-rw-r--r-- | games-engines/odamex/odamex-10.4.0-r1.ebuild | 1 | ||||
-rw-r--r-- | games-engines/odamex/odamex-10.4.0.ebuild | 87 |
4 files changed, 69 insertions, 89 deletions
diff --git a/games-engines/odamex/Manifest b/games-engines/odamex/Manifest index f1932488abfd..c0f895fddf2f 100644 --- a/games-engines/odamex/Manifest +++ b/games-engines/odamex/Manifest @@ -1,5 +1,5 @@ AUX odamex-10.3.0-unbundle-fltk.patch 3556 BLAKE2B 8aa1fd752c465a89566edab409c2df03ce1bae7a3ae1fdf3749fbce90cef81d1315f1f677f3090d676ad514df957a043cfd02c497d03673c248d55b02ee89768 SHA512 3facbcb43f0bc516e85c6030d66fc03c2c0b11d25ed30bac1947cbffd1f3123e173c46e02b198215dc5b4aac7fccbf1bfe9aeaf54db6c0d159d7bd6d3abd3797 +AUX odamex-10.4.0-backport-pr928.patch 2485 BLAKE2B 50219598fd899548148642b97af7cf228a28f0717b44c01fd0cad724a72a7183bbd223e4d65ab22b1581fef395b4dd5142e65787eec9748865e1d46681a4dbad SHA512 6a791b4736375e0cd3158a3c65a3f2ab83b96196fd3b4510bddf80aaedac1827f8914f528bdf5e520a891423edc5cdce72675f66a6dce0e50f4c3970c744fd8d DIST odamex-src-10.4.0.tar.gz 24233204 BLAKE2B 377f14db15a367db3e84267a1483d5e138291fcefe53c2d522d2767ddd4a804df7ab31726d8818497c1eed93e6f0658fa4f855b6f4b0610f378a4ef3aab180b6 SHA512 12c114181aaf50e8c1f8c04d6e252f422fe887b5dc0be21974f5c1ac6645e1988091af638eb68fb9667ec4c7c2bdd5bb49981546644c33e90c80a9baefe2c930 -EBUILD odamex-10.4.0-r1.ebuild 2282 BLAKE2B f9fa08e428e31fa400a258ded6413343fa9c54cab60d4899123c00e2a505dd036483182557ac5b853f6aca3804f9fe65ebd4c61a5287319ca3cfeb2537f1c7cc SHA512 029b559631cfd50442b23e8274cc437946ac60b29fe9aff50e59651cad80b1d51414340b73da44201bbbe2eed8ec5ec8530e9ecd1ab293aa8296a7cbe8ccdaaa -EBUILD odamex-10.4.0.ebuild 2182 BLAKE2B 81af80e1d38971828369a1b67ace9761809205d0145862781542bfbbd4b615074d663e0c35fa2e5d567f6b67416a0775bca24cd27a41a47c45ca298fb2008555 SHA512 795b9e65dbaaac5dedb5bf39f0ee5022f724f47b52bef3999cdb78da069734c7915a7489a884e239f6c233c77a6541eecfb74bd027c7919edf8100c867953cb6 +EBUILD odamex-10.4.0-r1.ebuild 2331 BLAKE2B bdfbe799368797857fc071ef52dfec743fc06dcd1a99630e58bac36d9915a2cd13d436ce2917365cf63e77f0efce482b6976d803fe2f0f42aee81c6efff5a82c SHA512 ea8b2f456cc459932b9a304752c207c62194df5db1c183ce5b0180e5521bc843e4a8549071535b6a2e53dfa02a9d83d43967bd9981cfa92a42494236f7e77440 MISC metadata.xml 1438 BLAKE2B 2cd891e631cb9ee0182c30d9aa8a9e69089f32fb12b44f8e4a62372e40db8f89a9701411dcb3bb86937d50e035452359cb95d2bbd5b4a74d2057cb77872196ad SHA512 72f2858c111b40de8ba9da3b5d52f673ce0847fd4036e1582dc9ce56432b3e08a61ef650fc253072789a6d00167c8312158d8be374dbbfbdd5473ab75cb447af diff --git a/games-engines/odamex/files/odamex-10.4.0-backport-pr928.patch b/games-engines/odamex/files/odamex-10.4.0-backport-pr928.patch new file mode 100644 index 000000000000..7d6871847814 --- /dev/null +++ b/games-engines/odamex/files/odamex-10.4.0-backport-pr928.patch @@ -0,0 +1,66 @@ +https://bugs.gentoo.org/849866 +https://github.com/odamex/odamex/pull/928 + +From b952137ac487a6558e1796c86d8fd55b8b3c9025 Mon Sep 17 00:00:00 2001 +From: matoro <matoro@users.noreply.github.com> +Date: Wed, 6 Dec 2023 01:01:29 -0500 +Subject: [PATCH] Fix auto-SIMD for i386+sse2, ppc+altivec + +Only Darwin ever used -faltivec, gcc uses -maltivec since at least 2007: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30254#c1 + +Similarly, recent versions of gcc define __APPLE_ALTIVEC__ for +compatibility, so just unconditionally include altivec.h. + +Canonical way to enable specific extensions is e.g. -msse2, use that +instead of optimizing for a specific CPU. + +Finally, cmake uses target_compile_options to add arbitrary flags. +target_compile_definitions assumes you want a preprocessor definition, +which was adding "-D-faltivec" to the command line which gcc doesn't +like; this is what originally prompted this change. +--- + client/CMakeLists.txt | 11 +++++++---- + client/src/r_drawt_altivec.cpp | 2 -- + 2 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt +index 646164916..56caf04f8 100644 +--- a/client/CMakeLists.txt ++++ b/client/CMakeLists.txt +@@ -169,14 +169,17 @@ if(TARGET SDL2::SDL2 OR TARGET SDL::SDL) + message(STATUS "Default SIMD flags not touched for AMD64") + elseif(ODAMEX_TARGET_ARCH STREQUAL "i386") + if(NOT MSVC) +- # Pentium M has SSE2. +- target_compile_definitions(odamex PRIVATE -march=pentium-m) ++ target_compile_options(odamex PRIVATE -msse2) + else() +- target_compile_definitions(odamex PRIVATE /arch:SSE2) ++ target_compile_options(odamex PRIVATE /arch:SSE2) + endif() + message(STATUS "Default SIMD flags set to SSE2") + elseif(ODAMEX_TARGET_ARCH MATCHES "ppc") +- target_compile_definitions(odamex PRIVATE -faltivec) ++ if(APPLE) ++ target_compile_options(odamex PRIVATE -faltivec) ++ else() ++ target_compile_options(odamex PRIVATE -maltivec) ++ endif() + message(STATUS "Default SIMD flags set to AltiVec") + endif() + else() +diff --git a/client/src/r_drawt_altivec.cpp b/client/src/r_drawt_altivec.cpp +index eea758733..5a0cdf95e 100644 +--- a/client/src/r_drawt_altivec.cpp ++++ b/client/src/r_drawt_altivec.cpp +@@ -36,9 +36,7 @@ + #include "r_main.h" + #include "i_video.h" + +-#if !defined(__APPLE_ALTIVEC__) + #include <altivec.h> +-#endif + + #define ALTIVEC_ALIGNED(x) x __attribute__((aligned(16))) + diff --git a/games-engines/odamex/odamex-10.4.0-r1.ebuild b/games-engines/odamex/odamex-10.4.0-r1.ebuild index cf946901e853..5a5077b6ca54 100644 --- a/games-engines/odamex/odamex-10.4.0-r1.ebuild +++ b/games-engines/odamex/odamex-10.4.0-r1.ebuild @@ -42,6 +42,7 @@ S="${WORKDIR}/${PN}-src-${PV}" PATCHES=( "${FILESDIR}"/${PN}-10.3.0-unbundle-fltk.patch + "${FILESDIR}"/${PN}-10.4.0-backport-pr928.patch ) src_prepare() { diff --git a/games-engines/odamex/odamex-10.4.0.ebuild b/games-engines/odamex/odamex-10.4.0.ebuild deleted file mode 100644 index 594869339e54..000000000000 --- a/games-engines/odamex/odamex-10.4.0.ebuild +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -WX_GTK_VER="3.0-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.gz" - -LICENSE="GPL-2+ MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" -IUSE="+client hidpi master +odalaunch portmidi server upnp X" -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? ( - media-libs/libpng:0= - media-libs/libsdl2[joystick,sound,video] - media-libs/sdl2-mixer - net-misc/curl - !hidpi? ( x11-libs/fltk:1 ) - portmidi? ( media-libs/portmidi ) - X? ( x11-libs/libX11 ) - ) - odalaunch? ( x11-libs/wxGTK:${WX_GTK_VER}[X] ) - server? ( - dev-libs/jsoncpp:= - upnp? ( net-libs/miniupnpc:= ) - )" -DEPEND="${RDEPEND}" -BDEPEND="games-util/deutex" - -S="${WORKDIR}/${PN}-src-${PV}" - -PATCHES=( - "${FILESDIR}"/${PN}-10.3.0-unbundle-fltk.patch -) - -src_prepare() { - rm -r libraries/miniupnp || die - hprefixify common/d_main.cpp - - use odalaunch && setup-wxwidgets - - cmake_src_prepare -} - -src_configure() { - local mycmakeargs=( - -DUSE_INTERNAL_FLTK=$(usex hidpi) - -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) - ) - use client && mycmakeargs+=(-DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex !X)) - - cmake_src_configure -} - -src_install() { - if use client ; then - newicon -s 128 "${S}/media/icon_${PN}_128.png" "${PN}.png" - make_desktop_entry "${PN}" "Odamex" - - if use odalaunch ; then - newicon -s 128 "${S}/media/icon_odalaunch_128.png" "odalaunch.png" - make_desktop_entry odalaunch "Odamex Launcher" odalaunch - fi - fi - - cmake_src_install -} |