summaryrefslogtreecommitdiff
path: root/dev-games
diff options
context:
space:
mode:
Diffstat (limited to 'dev-games')
-rw-r--r--dev-games/Manifest.gzbin6228 -> 6224 bytes
-rw-r--r--dev-games/godot/Manifest6
-rw-r--r--dev-games/godot/files/godot-4.0-musl.patch9
-rw-r--r--dev-games/godot/files/godot-4.0_rc2-musl.patch21
-rw-r--r--dev-games/godot/godot-4.0_rc1.ebuild240
-rw-r--r--dev-games/godot/godot-4.0_rc2.ebuild3
6 files changed, 24 insertions, 255 deletions
diff --git a/dev-games/Manifest.gz b/dev-games/Manifest.gz
index df932f0b7f6b..8f41536c37f8 100644
--- a/dev-games/Manifest.gz
+++ b/dev-games/Manifest.gz
Binary files differ
diff --git a/dev-games/godot/Manifest b/dev-games/godot/Manifest
index 5d0f66198a59..d440340d9054 100644
--- a/dev-games/godot/Manifest
+++ b/dev-games/godot/Manifest
@@ -1,12 +1,10 @@
AUX godot-3.5-musl.patch 325 BLAKE2B 6069b159c7844d471ecf79d080cb4b3d5b21cf82093379961e163efe52866e1d25ca8075ee1ba653aabcaf912592968dca6fba43cb4907d703711af237bacf50 SHA512 828e5870fdec8cd4c4f132db24de722f73f330dc278b21020cf38aaf26498c69723e1fc75855dd01683452c3628a782a3957ff47d5ecf2e13da1bd8aee3a5805
AUX godot-3.5-scons.patch 2568 BLAKE2B 0da3a29689293a0d9681eaa2877c667fbe484e7d479eb7525f3621640f397dc77bd000780a142418a74e671b6f5b241e27898f5cac71376eb684d3e995a9ac33 SHA512 d7f230da26ebcc40ad0c8c59046a863aeca69c314661ccbcab86c49f545df9662c68bc51d72a146033385ed09812ce2de92aae58a32462402f89542a47069202
-AUX godot-4.0-musl.patch 345 BLAKE2B 05057241c1e29ff886a38b815f68fcfe2b8c5e23fce6ae1e754bd9f2837f632887712de52065dd669fd12b0ffc5542859a4da67282ef337fdf9a76bccddbd410 SHA512 267bd42d3381d8af608a117bc423da62c86c04bffcdf46d54a19fc1bb5f690bbb311d088b842719843f9acc0a4db65c048786e39cadd32902bc8a09bde3c33e3
AUX godot-4.0_beta3-headless-header.patch 498 BLAKE2B 401942c17829136aace28e34f7c9a4f843457d5a76c8b7035f40894f3d4d06936ddf3f1bcedf81584a65c0bff96e6e556d20ed8856107dd76deb173c98256964 SHA512 f83ec6b0667108b7c8f744b90944cd686de114db5694e09febf20a359a7d3fe11457b0c3279719a1281309a647e856b729354d3bed5f6d5048548b8dd259f63b
AUX godot-4.0_beta8-scons.patch 1445 BLAKE2B 6fc5a18911681da54191af590afb9fa62181e485eb06a5eb89e9c1f5a52fd53abf712e0f58f48b9a3bf8c8adc47aa1e7833ea025ede7436873b0a8a7f46cf92a SHA512 cb579d8c8925ee20152aa48a89171433b9e663ee9a44c869987bd9f736cdf9213d77e63d1ddaf45cbecf8b55113e204c80a378dfd8637aa6d0ba64933d48b2cb
+AUX godot-4.0_rc2-musl.patch 878 BLAKE2B d10e22acc29e14df6b42b180ed480908c61e6a9781d81897b1b24a79de792fb967886fa7be6494440fb4e8ab69a83100d455838b986ce195dc30116638db544e SHA512 97b365952a7c1e7e4088ed71d1c98eccca1449b481d05e10fd750a6d29c7635dc6112e0e033ab1555cfe51eda8c0b805df1fbe78e9c54cea2664aed8570fa077
DIST godot-3.5.1-stable.tar.xz 24153448 BLAKE2B 9d61276a2d82ef4f4487ec1046b7fa58f2b3626640b2db25c1f98c3f8e2ff40eddcf943fd9ffaaf6814fbafbbe7ef1d3f642d77af953b87731cff570ac3a5473 SHA512 59e5ca88534f542562971efb83b76561705f9ca8761311f01b4453857e7ae046c17cadd0d5ca6f6f56e262b5031294a8b9ad970fa6ffc95e1a6a1e1bae48d55f
-DIST godot-4.0-rc1.tar.xz 29009768 BLAKE2B 27b39cb048e3c928bac4bd8e1740ae477d6b831b35771ea1132ebd0d3c425587d5fec43057b6097c43c9b6182417d41b3bb85fe7e2336c297b1690c339bad097 SHA512 78e441e88e80e37df421080902ff3a6e460181be306043073b1070320b85854b601b3f34264f58b55b74ca65fa20a0013206e6e3e56481ea3fc86405fa2d467c
DIST godot-4.0-rc2.tar.xz 29105476 BLAKE2B be30da3909ee881ed929747d97232ad1356b15d0bdb0f5ea07fedc6de300a776ffac4e156134218322ccc4b6e2d4ae457cf53ee72a2da0df645e98fb957e773f SHA512 5d36ca7018ed2963e92a0917a6310f787ab807f47a302f11b6c09ffd60e4e98800aef6957345feb61f49a623eb1993abf601669cd7b7511a5b1d974b129b11c3
EBUILD godot-3.5.1.ebuild 6752 BLAKE2B b7a6a3851292aa6bd134a45bf2ab7019a55da8bcc815e952ae3acd204b71314fb1a436fe5bab3c83906289566c274f1bc3240e3482c337aca488071d71618df5 SHA512 84a385fbcb01813c6b09e21a76b832b6e7329302e9d7ebd3d3ccbb37ce504f3cc13e1c0d460daa299ef40f9fe5cb04b7d1362e538004f96ef9b6c9dd56a115ac
-EBUILD godot-4.0_rc1.ebuild 7775 BLAKE2B 3585fcba40d6e8d4939fdf4cffeaa00be17ceac180081f13e9c567c76743eebbad386910844502d1316c860d79954152075d7f6a44f491d9edc4a7a921a7c498 SHA512 249269f52cbadbd99361735433773151fcb70665ba0554ee4f02314292c624ace90ccc3a4c9646aacee73dd1b7b70859d266507e85e310a9bb6a0c361caf3b5a
-EBUILD godot-4.0_rc2.ebuild 7775 BLAKE2B 3585fcba40d6e8d4939fdf4cffeaa00be17ceac180081f13e9c567c76743eebbad386910844502d1316c860d79954152075d7f6a44f491d9edc4a7a921a7c498 SHA512 249269f52cbadbd99361735433773151fcb70665ba0554ee4f02314292c624ace90ccc3a4c9646aacee73dd1b7b70859d266507e85e310a9bb6a0c361caf3b5a
+EBUILD godot-4.0_rc2.ebuild 7716 BLAKE2B 977e5fcc9a8ab26ca08f9697ca1e1ff4dba301b139884129581f6d4730a1b7c4a601eba25d35c71f9dc883f21fc20b9e0669b2fa9f0ac386b127ef5342856004 SHA512 f17b81ffaa086de6e53c650a3affd577a28b83e7510f32548fadb881edd2f7f65d0a26e8c541c7c22fbc7cdf813134feeace3045d6007b69d57f1f86855b40c1
MISC metadata.xml 1547 BLAKE2B 39108142c8e34b3c2683d5bbab6989693156d320797d86efa36f3df39e3d667160cbdb1a0b0efe127f67b3977e1cf3cde151d07915542fa88831e626457bf86f SHA512 a099aacfdd27c4b9536512762fcc63f09ea71cce807b59ff70026a09d79856e1911405e64186597b8e3dd9fef0029c13944ceb3b77d7969adf7182218e532559
diff --git a/dev-games/godot/files/godot-4.0-musl.patch b/dev-games/godot/files/godot-4.0-musl.patch
deleted file mode 100644
index 50c5c334773f..000000000000
--- a/dev-games/godot/files/godot-4.0-musl.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-crash handler requires glibc or libexecinfo (not packaged),
-and is always enabled if build the editor (release_debug)
---- a/platform/linuxbsd/crash_handler_linuxbsd.cpp
-+++ b/platform/linuxbsd/crash_handler_linuxbsd.cpp
-@@ -38,3 +38,3 @@
-
--#ifdef DEBUG_ENABLED
-+#if defined(DEBUG_ENABLED) && defined(__GLIBC__)
- #define CRASH_HANDLER_ENABLED 1
diff --git a/dev-games/godot/files/godot-4.0_rc2-musl.patch b/dev-games/godot/files/godot-4.0_rc2-musl.patch
new file mode 100644
index 000000000000..3b9a458ac7d4
--- /dev/null
+++ b/dev-games/godot/files/godot-4.0_rc2-musl.patch
@@ -0,0 +1,21 @@
+Crash handler requires glibc or libexecinfo (not packaged) and is enabled
+if build the editor (implies debug), but can be easily turned off.
+https://bugs.gentoo.org/894762
+--- a/platform/linuxbsd/crash_handler_linuxbsd.cpp
++++ b/platform/linuxbsd/crash_handler_linuxbsd.cpp
+@@ -38,3 +38,3 @@
+
+-#ifdef DEBUG_ENABLED
++#if defined(DEBUG_ENABLED) && defined(__GLIBC__)
+ #define CRASH_HANDLER_ENABLED 1
+--- a/platform/linuxbsd/detect.py
++++ b/platform/linuxbsd/detect.py
+@@ -329,8 +329,2 @@
+
+- if not env["execinfo"] and platform.libc_ver()[0] != "glibc":
+- # The default crash handler depends on glibc, so if the host uses
+- # a different libc (BSD libc, musl), fall back to libexecinfo.
+- print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
+- env["execinfo"] = True
+-
+ if env["execinfo"]:
diff --git a/dev-games/godot/godot-4.0_rc1.ebuild b/dev-games/godot/godot-4.0_rc1.ebuild
deleted file mode 100644
index 8c124e770a8e..000000000000
--- a/dev-games/godot/godot-4.0_rc1.ebuild
+++ /dev/null
@@ -1,240 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-inherit bash-completion-r1 desktop optfeature python-any-r1
-inherit scons-utils toolchain-funcs xdg
-
-MY_P="${PN}-$(ver_rs 2 -)"
-
-DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
-HOMEPAGE="https://godotengine.org/"
-SRC_URI="https://downloads.tuxfamily.org/godotengine/$(ver_rs 2 /)/${MY_P}.tar.xz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="
- MIT
- AFL-2.1 Apache-2.0 BSD Boost-1.0 CC0-1.0 LGPL-2.1+ Unlicense ZLIB
- gui? ( CC-BY-4.0 ) tools? ( OFL-1.1 )"
-SLOT="4"
-KEYWORDS="~amd64"
-# Enable roughly same as upstream by default so it works as expected,
-# except raycast (tools-only heavy dependency), and deprecated.
-IUSE="debug deprecated +gui raycast +runner test +theora +tools +upnp +vulkan +webp"
-# tests need more figuring out, they are still somewhat new and volatile
-RESTRICT="test"
-
-# dlopen: libX*,libglvnd
-RDEPEND="
- app-arch/zstd:=
- dev-games/recastnavigation:=
- dev-libs/icu:=
- dev-libs/libpcre2:=[pcre32]
- media-libs/freetype[brotli,harfbuzz]
- media-libs/harfbuzz:=[icu]
- media-libs/libogg
- media-libs/libpng:=
- media-libs/libvorbis
- <net-libs/mbedtls-3:=
- net-libs/wslay
- sys-libs/zlib:=
- gui? (
- media-libs/libglvnd[X]
- x11-libs/libX11
- x11-libs/libXcursor
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libXrender
- tools? ( raycast? ( media-libs/embree:3 ) )
- vulkan? ( media-libs/vulkan-loader[X] )
- )
- theora? ( media-libs/libtheora )
- tools? ( app-misc/ca-certificates )
- upnp? ( net-libs/miniupnpc:= )
- webp? ( media-libs/libwebp:= )"
-DEPEND="
- ${RDEPEND}
- tools? ( test? ( dev-cpp/doctest ) )"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.0-musl.patch
- "${FILESDIR}"/${PN}-4.0_beta3-headless-header.patch
- "${FILESDIR}"/${PN}-4.0_beta8-scons.patch
-)
-
-src_prepare() {
- default
-
- sed -i "1,5s/ godot/&${SLOT}/i" misc/dist/linux/godot.6 || die
- sed -i "/id/s/Godot/&${SLOT}/" misc/dist/linux/org.godotengine.Godot.appdata.xml || die
- sed -e "s/=godot/&${SLOT}/" -e "/^Name=/s/$/ ${SLOT}/" \
- -i misc/dist/linux/org.godotengine.Godot.desktop || die
-
- sed -i "s|pkg-config |$(tc-getPKG_CONFIG) |" platform/linuxbsd/detect.py || die
-
- # use of builtin_ switches can be messy (see below), delete to be sure
- local unbundle=(
- doctest embree freetype graphite harfbuzz icu4c libogg
- libpng libtheora libvorbis libwebp mbedtls miniupnpc
- pcre2 recastnavigation volk wslay zlib zstd
- # certs: unused by generated header, but scons panics if not found
- # linuxbsd_headers: would /want/ to unbundle these, but it is rather
- # messy given godot has dropped all the pkg-config calls and uses
- # hardcoded paths on top -- on the plus side, removes a real need
- # to have IUSE="alsa dbus fontconfig pulseaudio speech udev" (dlopen)
- )
- rm -r "${unbundle[@]/#/thirdparty/}" || die
-
- # do symlinks to avoid too much patching with hardcoded header paths
- mkdir thirdparty/lib{vorbis,ogg} || die
- ln -s "${ESYSROOT}"/usr/include thirdparty/zstd || die
- ln -s "${ESYSROOT}"/usr/include/doctest thirdparty/ || die
- ln -s "${ESYSROOT}"/usr/include/ogg thirdparty/libogg/ || die
- ln -s "${ESYSROOT}"/usr/include/vorbis thirdparty/libvorbis/ || die
-}
-
-src_compile() {
- local -x GODOT_VERSION_STATUS=$(ver_cut 3-4) # for dev versions only
- local -x BUILD_NAME=gentoo # replaces "custom_build" in version string
-
- local esconsargs=(
- AR="$(tc-getAR)" CC="$(tc-getCC)" CXX="$(tc-getCXX)"
-
- progress=no
- verbose=yes
-
- deprecated=$(usex deprecated)
- #execinfo=$(usex !elibc_glibc) # libexecinfo is not packaged
- opengl3=$(usex gui)
- use_volk=no # unnecessary when linking directly to libvulkan
- vulkan=$(usex gui $(usex vulkan))
- x11=$(usex gui)
-
- system_certs_path="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
-
- # platform/*/detect.py uses builtin_* switches to check if need
- # to link with system libraries, but ignores whether the dep is
- # actually used, so "enable" deleted builtins on disabled deps
- builtin_certs=no
- builtin_embree=$(usex !gui yes $(usex !tools yes $(usex !raycast)))
- builtin_enet=yes # bundled copy is patched for IPv6+DTLS support
- builtin_freetype=no
- builtin_glslang=yes #879111
- builtin_graphite=no
- builtin_harfbuzz=no
- builtin_icu=no
- builtin_libogg=no
- builtin_libpng=no
- builtin_libtheora=$(usex !theora)
- builtin_libvorbis=no
- builtin_libwebp=$(usex !webp)
- builtin_mbedtls=no
- builtin_miniupnpc=$(usex !upnp)
- builtin_msdfgen=yes # not wired for unbundling nor packaged
- builtin_pcre2=no
- builtin_recast=no
- builtin_rvo2=yes # bundled copy has godot-specific changes
- builtin_squish=yes # ^ likewise, may not be safe to unbundle
- builtin_wslay=no
- builtin_xatlas=yes # not wired for unbundling nor packaged
- builtin_zlib=no
- builtin_zstd=no
- # (more is bundled in third_party/ but they lack builtin_* switches)
-
- # modules with optional dependencies, "possible" to disable more but
- # gets messy and breaks all sorts of features (expected enabled)
- module_gridmap_enabled=$(usex deprecated) # fails without deprecated
- module_mono_enabled=no # unhandled
- # note raycast is only enabled on amd64+arm64, see raycast/config.py
- module_raycast_enabled=$(usex gui $(usex tools $(usex raycast)))
- module_theora_enabled=$(usex theora)
- module_upnp_enabled=$(usex upnp)
- module_webp_enabled=$(usex webp)
-
- # let *FLAGS handle these, e.g. can pass -flto as-is
- debug_symbols=no
- lto=none
- optimize=custom
- use_static_cpp=no
- )
-
- if use runner && use tools; then
- # build alternate faster + ~60% smaller binary for running
- # games or servers without game development debug paths
- escons extra_suffix=runner target=template_release "${esconsargs[@]}"
- fi
-
- esconsargs+=(
- target=$(usex tools editor template_$(usex debug{,} release))
- dev_build=$(usex debug)
-
- # harmless but note this bakes in --test in the final binary
- tests=$(usex tools $(usex test))
- )
-
- escons extra_suffix=main "${esconsargs[@]}"
-}
-
-src_test() {
- xdg_environment_reset
- bin/godot*.main --headless --test || die
-}
-
-src_install() {
- local s=godot${SLOT}
-
- newbin bin/godot*.main ${s}
- if use runner && use tools; then
- newbin bin/godot*.runner ${s}-runner
- else
- # always available, revdeps shouldn't depend on [runner]
- dosym ${s} /usr/bin/${s}-runner
- fi
-
- newman misc/dist/linux/godot.6 ${s}.6
- dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md
-
- if use gui; then
- newicon icon.svg ${s}.svg
- newmenu misc/dist/linux/org.godotengine.Godot.desktop \
- org.godotengine.${s^}.desktop
-
- insinto /usr/share/metainfo
- newins misc/dist/linux/org.godotengine.Godot.appdata.xml \
- org.godotengine.${s^}.appdata.xml
-
- insinto /usr/share/mime/application
- newins misc/dist/linux/org.godotengine.Godot.xml \
- org.godotengine.${s^}.xml
- fi
-
- newbashcomp misc/dist/shell/godot.bash-completion ${s}
- bashcomp_alias ${s}{,-runner}
-
- insinto /usr/share/fish/vendor_completions.d
- newins misc/dist/shell/godot.fish ${s}.fish
- dosym ${s}.fish /usr/share/fish/vendor_completions.d/${s}-runner.fish
-
- insinto /usr/share/zsh/site-functions
- newins misc/dist/shell/_godot.zsh-completion _${s}
- dosym _${s} /usr/share/zsh/site-functions/_${s}-runner
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- # these use bundled headers then get dlopen()'ed if available, USE=gui
- # itself could technically be a optfeature too but it'd be messy here
- if use gui; then
- optfeature "gamepad connection detection support" virtual/libudev
- optfeature "screensaver and portal desktop handling" sys-apps/dbus
- optfeature "sound support" media-libs/alsa-lib media-libs/libpulse
- fi
- optfeature "system fonts support" media-libs/fontconfig
- optfeature "text-to-speech support" app-accessibility/speech-dispatcher
-}
diff --git a/dev-games/godot/godot-4.0_rc2.ebuild b/dev-games/godot/godot-4.0_rc2.ebuild
index 8c124e770a8e..d031d3f1fcaf 100644
--- a/dev-games/godot/godot-4.0_rc2.ebuild
+++ b/dev-games/godot/godot-4.0_rc2.ebuild
@@ -62,9 +62,9 @@ DEPEND="
BDEPEND="virtual/pkgconfig"
PATCHES=(
- "${FILESDIR}"/${PN}-4.0-musl.patch
"${FILESDIR}"/${PN}-4.0_beta3-headless-header.patch
"${FILESDIR}"/${PN}-4.0_beta8-scons.patch
+ "${FILESDIR}"/${PN}-4.0_rc2-musl.patch
)
src_prepare() {
@@ -109,7 +109,6 @@ src_compile() {
verbose=yes
deprecated=$(usex deprecated)
- #execinfo=$(usex !elibc_glibc) # libexecinfo is not packaged
opengl3=$(usex gui)
use_volk=no # unnecessary when linking directly to libvulkan
vulkan=$(usex gui $(usex vulkan))