diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-01-29 22:43:19 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-01-29 22:43:19 +0000 |
commit | fa19575643c607e28b1572821c413ad7cb8eea09 (patch) | |
tree | 9d9b05acd34c77d7708182eac258ad26975949c7 /games-strategy/openra | |
parent | fc4ad6e568738af8995c2e87896c671c39eb8c72 (diff) |
gentoo auto-resync : 29:01:2025 - 22:43:19
Diffstat (limited to 'games-strategy/openra')
-rw-r--r-- | games-strategy/openra/Manifest | 2 | ||||
-rw-r--r-- | games-strategy/openra/files/openra-20231010-handle-multilib.patch | 39 | ||||
-rw-r--r-- | games-strategy/openra/openra-20231010-r2.ebuild | 214 |
3 files changed, 255 insertions, 0 deletions
diff --git a/games-strategy/openra/Manifest b/games-strategy/openra/Manifest index 8a45a65c309c..0ab9ecd1f378 100644 --- a/games-strategy/openra/Manifest +++ b/games-strategy/openra/Manifest @@ -1,4 +1,5 @@ AUX openra-20231010-configure-system-libraries.patch 316 BLAKE2B 4251fdc26ef4e1f7bb3b01af3f8fe62dd1f5c72b1a2520c62cb8ed98af294342d07b4bca1b0ac2245a1483cac4dc3fa12ac66dd29a7271d9bd22e315ce429151 SHA512 218e9adb55247b9dc77eb8163a930560b08e72475b38606a81a49608115f8ea88ffe611359bec7cd745cf5bcb0443942b6f4e548528da52f62449b3f6f1d1d68 +AUX openra-20231010-handle-multilib.patch 1333 BLAKE2B a03b91374644e0bef911d8c2726861969b10701c0bc1daa935169b2c82ee97d76e04c9e14ff4e5aef533259046b3c6d7c7217fc3a604bd91d0ed091f815738b9 SHA512 86f28a0a023a50a7fba4d05b1c02e9db09dd44320ed95be82c39d02fe4017480bf1990f2a65b2a47363ed72fe979bf239f287dd269b4901a89ce25c4846d491a AUX openra-20231010-makefile.patch 1323 BLAKE2B f444bfae32abd76dc72b05552000498aa7d532acfbce0acfbce7d034b695c937c0577bb1b22a39305ecc1cc66cd4b0232b609e6803cbc78c9929b3c6cd179ff1 SHA512 45edabb76284adaf05fbf2ceb0f0981bc70d3a7d032a53d9b75577a0693ca1278654447961806af72b55ab73f1350f95a6f6c86a6f17bab67577ba05956671c3 AUX openra-20231010-packaging-functions.patch 410 BLAKE2B 7beb9f6a1ad32a927095f72f0870dd1773f3413fb0195592b6d7a672d8ea31397945a5838eda36cf0cc33fe4968003962f42abb1597f1b29f496617dbdae941f SHA512 aff0e872f173ff8a68ab1b0efcc1824c141c5cdcce3507513497e06033c463c41315a54100f5d265f823d99cb3a7dabdf490fb9328212a8f2219c6daf8fd5dc2 AUX openra-system-geoip.patch 1660 BLAKE2B bd81875d781157702f99794fe1e4e9cc904edec18566b2a2c8a90b81fe6d684768bf9ef76a7f7864474b6cbdcd10ec28fbbd053e007f71e6af53de7bc6cab6b9 SHA512 58acbba9996e1176fb21c2c9d3496f07e6cf920985cbfa83dc7bdab1b9698c678fe9ce78d16c1a0bf9982e21a03df48bccf5332ad2114b2c2181146b71c9de30 @@ -125,4 +126,5 @@ DIST system.valuetuple.4.5.0.nupkg 204904 BLAKE2B effebc14eba236b1b5c4dbbab54478 DIST taglibsharp.2.3.0.nupkg 1378355 BLAKE2B 219f809b22bfeab2b2a16759f77c04912e4af8565b6fb0e55024a3d4cc6c80c9f0f3c61d9f0aa9771dbbe0feb17415142243f8564e81b548d067b1be44a15996 SHA512 9be37f6431f6ead36babe78dc6527340d7b4b0fe444736aaeae5aef3651191d4e0421d9d671106aea544888695d7841000fb12f8a44aab1b5fe93fb7c90d983f EBUILD openra-20190314-r100.ebuild 5057 BLAKE2B 40feb35b396cbf309a36d9cf290a31ec7e3442bebdfc564c1734f9d755bfd981ce0d582d07b19acb91622de5e472e1a0c03c80f2ee056488490d7314ee3ff4ad SHA512 0e81fd0da69a10c4f769acc35d56531184863592a877812666b1428fcffb6bd25f04964c82d26ec3f12fffc7ac83591180a8ce026ccde97760f4ee04be651a5a EBUILD openra-20231010-r1.ebuild 6343 BLAKE2B b7cb78a603d46e14deaa9fd4c1ae5ab14ce965813e7f32d7da60799c01314e64f6c92a467bed4c9eb48d85696754179c891aac14abd9ab1822e11ac875938d5b SHA512 de75522f163ae894730b833379c10b114e7f9a1f85adc57a7aa8e3ed94ccde394fb3582626dafe9d5fa0b23eaeff30754a7035b4f11b9fff151a28683eea34ec +EBUILD openra-20231010-r2.ebuild 6395 BLAKE2B 4419b75035a4eef6b1360f86e95b097b6331572bd053a2fc41ec153f90b045f07bcae7aacdaeed6320c0b7772e063cc2ba4ae17d0ea3c035d26b3835ad298ee6 SHA512 8c86162c2c2fc7d686a4a068b9edc8e64b2a4145bf70d8212d39db1ea91d37e1e5bcc3b99a83a0e57ce0be6ea7d9d69baa26d6d08270c237572d64596b3cdceb MISC metadata.xml 624 BLAKE2B cbd1c42f0f9d04c1c467d55f3a16e476c7071db4458f8b0df557e2d631bcfc958d5ab4c178b2f0571e11ee1ca25b49c94f98623a1773926af06046618952deed SHA512 1ad70b919b74abfb8f03d0c22f3b842d97b37175f02184cc037fb7922fbfb62bccf690adf4e85d852959eaf191cb24e4f98af43850a6b2690cb37b62816c46ac diff --git a/games-strategy/openra/files/openra-20231010-handle-multilib.patch b/games-strategy/openra/files/openra-20231010-handle-multilib.patch new file mode 100644 index 000000000000..8faaedde9243 --- /dev/null +++ b/games-strategy/openra/files/openra-20231010-handle-multilib.patch @@ -0,0 +1,39 @@ +https://github.com/OpenRA/OpenRA/pull/21382 +https://github.com/OpenRA/OpenRA/issues/21353 + +From 5ec6e5d5a45855e047d251864292524a9b7a4597 Mon Sep 17 00:00:00 2001 +From: Jakub Vesely <jakub.vesely2@gmail.com> +Date: Mon, 1 Apr 2024 15:03:00 +0200 +Subject: [PATCH] configure-system-libraries.sh: Skip 32bit libraries during + lookup on x64 Linux. #21353 + +--- a/configure-system-libraries.sh ++++ b/configure-system-libraries.sh +@@ -5,7 +5,6 @@ + # This file must stay /bin/sh and POSIX compliant for macOS and BSD portability. + # Copy-paste the entire script into http://shellcheck.net to check. + #### +- + set -o errexit || exit $? + + patch_config() +@@ -37,11 +36,18 @@ patch_config() + if [ -L "bin/${REPLACE}" ]; then + return 0 + fi +- ++ KERNEL="$(uname -s)" ++ ARCH="$(arch)" + printf "Searching for %s... " "${LABEL}" + for DIR in ${SEARCHDIRS} ; do + for LIB in ${SEARCH}; do + if [ -f "${DIR}/${LIB}" ]; then ++ # x86-64 Linux might have 32-bit libraries present, link against the 64 bit libraries since there is no 32-bit Linux release of dotnet ++ if [ "${KERNEL}" = "Linux" ] && [ "${ARCH}" = "x86_64" ]; then ++ if [ "$(LANG=C file -L -b "${DIR}/${LIB}" | cut -d" " -f2)" != "64-bit" ]; then ++ continue ++ fi ++ fi + echo "${LIB}" + ln -s "${DIR}/${LIB}" "bin/${REPLACE}" + return 0 diff --git a/games-strategy/openra/openra-20231010-r2.ebuild b/games-strategy/openra/openra-20231010-r2.ebuild new file mode 100644 index 000000000000..77c5f66e3032 --- /dev/null +++ b/games-strategy/openra/openra-20231010-r2.ebuild @@ -0,0 +1,214 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-1 ) + +DOTNET_PKG_COMPAT=6.0 +NUGETS=" +discordrichpresence@1.1.3.18 +linguini.bundle@0.5.0 +linguini.shared@0.5.0 +linguini.syntax@0.5.0 +microsoft.extensions.dependencymodel@6.0.0 +microsoft.netcore.platforms@1.1.0 +microsoft.netcore.platforms@1.1.1 +microsoft.netcore.platforms@5.0.0 +microsoft.netcore.targets@1.1.0 +microsoft.win32.primitives@4.3.0 +microsoft.win32.registry@5.0.0 +mono.nat@3.0.4 +mp3sharp@1.0.5 +newtonsoft.json@13.0.1 +nuget.commandline@4.4.1 +nvorbis@0.10.5 +openra-eluant@1.0.22 +openra-freetype6@1.0.11 +openra-fuzzylogiclibrary@1.0.1 +openra-openal-cs@1.0.22 +openra-sdl2-cs@1.0.40 +pfim@0.11.2 +rix0rrr.beaconlib@1.0.2 +runtime.any.system.collections@4.3.0 +runtime.any.system.diagnostics.tracing@4.3.0 +runtime.any.system.globalization.calendars@4.3.0 +runtime.any.system.globalization@4.3.0 +runtime.any.system.io@4.3.0 +runtime.any.system.reflection.primitives@4.3.0 +runtime.any.system.reflection@4.3.0 +runtime.any.system.resources.resourcemanager@4.3.0 +runtime.any.system.runtime.handles@4.3.0 +runtime.any.system.runtime.interopservices@4.3.0 +runtime.any.system.runtime@4.3.0 +runtime.any.system.text.encoding.extensions@4.3.0 +runtime.any.system.text.encoding@4.3.0 +runtime.any.system.threading.tasks@4.3.0 +runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.native.system.net.http@4.3.0 +runtime.native.system.security.cryptography.apple@4.3.0 +runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.native.system@4.3.0 +runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple@4.3.0 +runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl@4.3.2 +runtime.unix.microsoft.win32.primitives@4.3.0 +runtime.unix.system.diagnostics.debug@4.3.0 +runtime.unix.system.io.filesystem@4.3.0 +runtime.unix.system.net.primitives@4.3.0 +runtime.unix.system.private.uri@4.3.0 +runtime.unix.system.runtime.extensions@4.3.0 +sharpziplib@1.4.2 +stylecop.analyzers.unstable@1.2.0.435 +stylecop.analyzers@1.2.0-beta.435 +system.buffers@4.3.0 +system.buffers@4.5.1 +system.collections.concurrent@4.3.0 +system.collections@4.3.0 +system.diagnostics.debug@4.3.0 +system.diagnostics.diagnosticsource@4.3.0 +system.diagnostics.tracing@4.3.0 +system.globalization.calendars@4.3.0 +system.globalization.extensions@4.3.0 +system.globalization@4.3.0 +system.io.filesystem.primitives@4.3.0 +system.io.filesystem@4.3.0 +system.io@4.3.0 +system.linq@4.3.0 +system.memory@4.5.3 +system.memory@4.5.4 +system.net.http@4.3.4 +system.net.primitives@4.3.0 +system.private.uri@4.3.0 +system.reflection.primitives@4.3.0 +system.reflection@4.3.0 +system.resources.resourcemanager@4.3.0 +system.runtime.compilerservices.unsafe@6.0.0 +system.runtime.extensions@4.3.0 +system.runtime.handles@4.3.0 +system.runtime.interopservices@4.3.0 +system.runtime.loader@4.3.0 +system.runtime.numerics@4.3.0 +system.runtime@4.3.0 +system.security.accesscontrol@5.0.0 +system.security.cryptography.algorithms@4.3.0 +system.security.cryptography.cng@4.3.0 +system.security.cryptography.csp@4.3.0 +system.security.cryptography.encoding@4.3.0 +system.security.cryptography.openssl@4.3.0 +system.security.cryptography.primitives@4.3.0 +system.security.cryptography.x509certificates@4.3.0 +system.security.principal.windows@5.0.0 +system.text.encoding.extensions@4.3.0 +system.text.encoding@4.3.0 +system.text.encodings.web@6.0.0 +system.text.json@6.0.0 +system.threading.channels@6.0.0 +system.threading.tasks@4.3.0 +system.threading@4.3.0 +system.valuetuple@4.5.0 +taglibsharp@2.3.0 +" + +inherit check-reqs dotnet-pkg lua-single xdg + +DESCRIPTION="A free RTS engine supporting games like Command & Conquer, Red Alert and Dune2k" +HOMEPAGE="https://www.openra.net/ + https://github.com/OpenRA/OpenRA/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/OpenRA/OpenRA.git" +else + SRC_URI="https://github.com/OpenRA/OpenRA/archive/release-${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/OpenRA-release-${PV}" + + KEYWORDS="~amd64" +fi + +SRC_URI+=" ${NUGET_URIS} " + +# Engine is GPL-3, dependent DLLs are mixed. +LICENSE="GPL-3 Apache-2.0 BSD GPL-2 MIT" +SLOT="0" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +RDEPEND=" + ${LUA_DEPS} + app-misc/ca-certificates + media-libs/freetype:2 + media-libs/libsdl2[opengl,video] + media-libs/openal +" +BDEPEND=" + ${RDEPEND} +" + +CHECKREQS_DISK_BUILD="2G" +PATCHES=( + "${FILESDIR}/${PN}-20231010-configure-system-libraries.patch" + "${FILESDIR}/${PN}-20231010-makefile.patch" + "${FILESDIR}/${PN}-20231010-packaging-functions.patch" + "${FILESDIR}/${PN}-20231010-handle-multilib.patch" +) + +DOCS=( AUTHORS CODE_OF_CONDUCT.md CONTRIBUTING.md README.md ) + +pkg_setup() { + check-reqs_pkg_setup + dotnet-pkg_pkg_setup + lua-single_pkg_setup +} + +src_unpack() { + dotnet-pkg_src_unpack + + if [[ -n "${EGIT_REPO_URI}" ]] ; then + git-r3_src_unpack + fi +} + +src_compile() { + emake VERSION="release-${PV}" version + emake RUNTIME=net6 +} + +src_install() { + local openra_home="/usr/lib/${PN}" + + # We compiled to "bin", not standard "dotnet-pkg" path. + mkdir -p "${ED}/usr/share" || die + cp -r bin "${ED}/usr/share/${P}" || die + + # This is used by "linux-shortcuts" (see below make-install). + dotnet-pkg-base_launcherinto "${openra_home}" + dotnet-pkg-base_dolauncher "/usr/share/${P}/OpenRA" OpenRA + dotnet-pkg-base_dolauncher "/usr/share/${P}/OpenRA.Server" OpenRA.Server + + emake DESTDIR="${ED}" RUNTIME=net6 prefix=/usr bindir=/usr/bin \ + install install-linux-shortcuts install-linux-appdata install-man + + local -a assets=( + glsl + mods + AUTHORS + COPYING + VERSION + 'global mix database.dat' + ) + local asset + for asset in "${assets[@]}" ; do + dosym -r "${openra_home}/${asset}" "/usr/share/${P}/${asset}" + done + + einstalldocs +} |