summaryrefslogtreecommitdiff
path: root/dev-games
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-22 14:28:15 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-22 14:28:15 +0000
commitaae71b4d8e684ca22d28ef0f1da0989e7bf6468d (patch)
tree0e9cf35d85726e6aa9fbd58b12035f92ffec0130 /dev-games
parent20ed81714fa97f5845db16a3c142b3b44d820bc4 (diff)
gentoo auto-resync : 22:02:2023 - 14:28:15
Diffstat (limited to 'dev-games')
-rw-r--r--dev-games/Manifest.gzbin6226 -> 6224 bytes
-rw-r--r--dev-games/aseprite/Manifest3
-rw-r--r--dev-games/aseprite/aseprite-1.2.40.ebuild1
-rw-r--r--dev-games/aseprite/files/aseprite-1.2.40_laf-gcc13.patch47
-rw-r--r--dev-games/godot/Manifest5
-rw-r--r--dev-games/godot/files/godot-4.0_rc3-scons.patch15
-rw-r--r--dev-games/godot/godot-4.0_rc3.ebuild234
-rw-r--r--dev-games/godot/metadata.xml1
8 files changed, 304 insertions, 2 deletions
diff --git a/dev-games/Manifest.gz b/dev-games/Manifest.gz
index 5a667bf32393..d4a103386fe5 100644
--- a/dev-games/Manifest.gz
+++ b/dev-games/Manifest.gz
Binary files differ
diff --git a/dev-games/aseprite/Manifest b/dev-games/aseprite/Manifest
index ce28473458de..95bc7a4f7463 100644
--- a/dev-games/aseprite/Manifest
+++ b/dev-games/aseprite/Manifest
@@ -1,5 +1,6 @@
AUX aseprite-1.2.35_laf_fixes.patch 1265 BLAKE2B 9c0c7ab527f15fdce6de34351c2f4b0a35f889f27c37cfce545dd36a7077cc9050b6922d14071713a2fd3d2afed94daea3df1c200f89ff8cf934c818155c53e2 SHA512 c8c55b3272d0caa367a8614d46ef0b6d684dd80e03d865f44ffaa71f097f7a53b193bf497ee6288c0b10b6eb7de1f521aea6212fd483a19b0d059f0cd2a8d3ba
AUX aseprite-1.2.40_ixwebsocket-gcc13.patch 6476 BLAKE2B f265a490c4a79b373e07b567552e61ab735433258067b9680ff14c35be3d69560c5cffe016ad47acd1386ad5c22bb6abfecc22e55de57200c0296ec1ae8d2360 SHA512 863e480e2f90ee1fe3fbece6ff4367f85a20d2eb5805635850426e573680059f3022a978652629a8d85c912a6d28b0f1aeae25d48fa3b19dfb1467bba6645915
+AUX aseprite-1.2.40_laf-gcc13.patch 1095 BLAKE2B 20c1d39cde15ae5fdb2cc678a27b2068f4e849fb257b79b1554585ff208a74336d3d41be6fcaf490d18451e0d29004773752c384883b18d2b542a77a65c3992b SHA512 8756821b8cf6385e09b6d6af471a8c28fd18c79ec34ece82f7bf50dc99d83bef478169dd91d7857162917da0cf95e6e64fb17cbbf1db3b1fc6a1b972ca23b31d
AUX aseprite-1.2.40_musl_pthreads.patch 1575 BLAKE2B 5dfbce6090973765fb2a4b34f04f5645cbd4787f7cdd8aa6ef9e09521a6dd5701c6d06a8d0e393714b95cac90ea3280894091fce16dfc2c385f65a834d98c0c7 SHA512 8a8359b8e8034588c45324ee174445682d8ecf526f08e3de532713dafeb8a800dbcf88e5c078299fc938e7cce5224b689e5c6544ffb49df1fdf5d79248a43e47
AUX aseprite-1.2.40_shared_json11.patch 1790 BLAKE2B 7965d8116463ec8481e14f9f773e0bc942bd18ceb418595a13418850f3bf85a07f70bc5f17a0b74d3f6ee0dc853412df8c93ae8b2bf8e8f1cb262c175c6863b1 SHA512 6b97b6a0c4469d2130cada95f88a279608571593c9b45ee8329891ac6b094dbc55b12141c7fb1c80b4770402972d09e5e7d67e556af180c74d2e62428160d5ee
AUX aseprite-1.2.40_shared_libarchive.patch 5060 BLAKE2B 1bce76d6621810152ef59e84c4c469753e379e550d074d7b2740e7d03a3c3affa8f1e90bbe3d30de91cd5ef9fa8d7d1ce34ac4bc559ed814d2290b7780ff6d43 SHA512 f673b03344fb56d4a71c23a4cc603a4db003efa604039607d854aaa6b8c87967d64d7c8d3c5e76b7b495f93e329e0d5e3b4f425aa580c37e43419aaff472ffc8
@@ -7,5 +8,5 @@ AUX aseprite-1.2.40_shared_webp.patch 2865 BLAKE2B d3e54e5230c6161de6221b68bbbd5
AUX skia-m102_remove_angle2.patch 644 BLAKE2B 11705c6376ad85303b8d64e6046e6e31191774d940458ddc64b8bf2d2e998168d3f1c8cd4361d623c040a03fd948ee4e0b6189c774522ae255cd0f2f572bf4c0 SHA512 bc587d92286528cbaec140a0492d5381a1dfce8263e4a2c2231b1e28778e3e5919b3896ccae416faa1b39f34517b6ada77ccaf671d25ae7d3c552a7991f5bb45
DIST Aseprite-v1.2.40-Source.zip 61802371 BLAKE2B f6f586a3ca222de208e6639e3fc94a63f98e487e1975dccd2974ffa71f937384177639e3799fb81f064afaf1c4a048394fab32a30bcda353320ac55c38b17636 SHA512 0a548428a3362f49cb6cecaa061de8371ad3f0bc22d00bc957e21f22316772e854d7ad36ebb7e5b69274eea376bb62fa39abfd4bc02250524c3707f81a628b1f
DIST skia-m102-3338e90707323d2cd3a150276acb9f39933deee2.gh.tar.gz 53944562 BLAKE2B 9da3e8386cd7a18a6ee9362743bee4146c41038af8868a6f5e8a2dce468e4dc4669b488861d117da8d1bd8461b2ad47bfc300774a33a84153bca345d63a929a7 SHA512 9ae0032ee3861ce4958af6eb7047273d28b1faa3823576ef568e3c7faed7f49a9976540a72c3fa38234a4ae6319ac381324eff807938f9763781fd33ad67d075
-EBUILD aseprite-1.2.40.ebuild 5270 BLAKE2B cd500260676a1787d735d7e83c2f24fa2bf99a40b9f01fc1f3d76b564562652792e9ef3c88fffe767d5e3e4a49911132dbde3a0fd2da63a1ea588f5b7709d50a SHA512 210b91d144d7d4eabf8f6963ee1e748d2014001b4bc53dd0272176212aaafb9994f105ca8f81734ca584716dd92724b873c319565479f185c628fb8a84cf14fe
+EBUILD aseprite-1.2.40.ebuild 5314 BLAKE2B d7202ae2e5489535cf8cb3e59fe6c4c00658b1b12a4ac929b07189d0c7461014f69bd431633eb54bd38e306091c8b55cbbba460f954360d60d163fc8f5c31b5d SHA512 5e61ab95a0d52219b2ad121a7adb52c7d55af89d944f298aa70d85a7d1ca86ab2ee85d39de823dc1eabaac2ee15717eee55f7e38854338c63dad6ba7fa990954
MISC metadata.xml 489 BLAKE2B a7c8e63d627aed0bbdcab626fd6b15941b1597b56abe3de87d172a919008122cfa9ee29dc10256c5722e6cea243d836a8d3bb9918f1d1d1963bc299d04fab285 SHA512 beb3ca2b414414980370e02138e0ec8bc931d4807fabb403e21a244365c4af65a5830dc6465d2a3798d56eec360930444a71a549d4d6d4a03f292bf3946bab79
diff --git a/dev-games/aseprite/aseprite-1.2.40.ebuild b/dev-games/aseprite/aseprite-1.2.40.ebuild
index f13050e1e1d3..bd7646097d95 100644
--- a/dev-games/aseprite/aseprite-1.2.40.ebuild
+++ b/dev-games/aseprite/aseprite-1.2.40.ebuild
@@ -74,6 +74,7 @@ PATCHES=(
"${FILESDIR}/${PN}-1.2.35_laf_fixes.patch"
"${FILESDIR}/${PN}-1.2.40_musl_pthreads.patch"
"${FILESDIR}/${PN}-1.2.40_ixwebsocket-gcc13.patch"
+ "${FILESDIR}/${PN}-1.2.40_laf-gcc13.patch"
)
src_prepare() {
diff --git a/dev-games/aseprite/files/aseprite-1.2.40_laf-gcc13.patch b/dev-games/aseprite/files/aseprite-1.2.40_laf-gcc13.patch
new file mode 100644
index 000000000000..3d7ff309342b
--- /dev/null
+++ b/dev-games/aseprite/files/aseprite-1.2.40_laf-gcc13.patch
@@ -0,0 +1,47 @@
+From 59c6af303dea4c6dc0c9da687ec73612929eacfc Mon Sep 17 00:00:00 2001
+From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com>
+Date: Tue, 21 Feb 2023 17:01:04 +0300
+Subject: [PATCH] Fix compilation on GCC13
+
+GCC-13 changes internal cstdint includes, and now files that uses
+standard integer types should directly include cstdint header.
+
+See: https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes
+See: https://github.com/aseprite/laf/pull/55
+Bug: https://bugs.gentoo.org/865117
+Bug: https://bugs.gentoo.org/895616
+--- a/laf/base/file_content.h
++++ b/laf/base/file_content.h
+@@ -9,6 +9,7 @@
+ #pragma once
+
+ #include "base/buffer.h"
++#include "base/ints.h"
+
+ #include <cstdio>
+ #include <string>
+--- a/laf/base/sha1.h
++++ b/laf/base/sha1.h
+@@ -11,6 +11,8 @@
+ #include <vector>
+ #include <string>
+
++#include "base/ints.h"
++
+ extern "C" struct SHA1Context;
+
+ namespace base {
+--- a/laf/base/sha1_rfc3174.h
++++ b/laf/base/sha1_rfc3174.h
+@@ -18,6 +18,8 @@
+ #define BASE_SHA1_RFC3174_H_INCLUDED
+ #pragma once
+
++#include "base/ints.h"
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+--
+2.39.2
+
diff --git a/dev-games/godot/Manifest b/dev-games/godot/Manifest
index 0c6956da45eb..8a3deb1a76e4 100644
--- a/dev-games/godot/Manifest
+++ b/dev-games/godot/Manifest
@@ -4,8 +4,11 @@ AUX godot-4.0_beta3-headless-header.patch 498 BLAKE2B 401942c17829136aace28e34f7
AUX godot-4.0_beta8-scons.patch 1445 BLAKE2B 6fc5a18911681da54191af590afb9fa62181e485eb06a5eb89e9c1f5a52fd53abf712e0f58f48b9a3bf8c8adc47aa1e7833ea025ede7436873b0a8a7f46cf92a SHA512 cb579d8c8925ee20152aa48a89171433b9e663ee9a44c869987bd9f736cdf9213d77e63d1ddaf45cbecf8b55113e204c80a378dfd8637aa6d0ba64933d48b2cb
AUX godot-4.0_rc2-gcc13.patch 711 BLAKE2B 11ad04e34a63273191a700c52c4dfe8d076c2421221f62dc976fa5ad19a17564ff5cba3f6f4e869a265ed82933027d16ac6dc92c26476478791c21690bd7a6fa SHA512 1c0fe3c7fdd857ae92d3899fe6586aee69e928603911988ac3f2a390f99ab92221653510e5a6199b4c62e5131579458eaf1b74b215932e5ee5f20ebc6df62c73
AUX godot-4.0_rc2-musl.patch 878 BLAKE2B d10e22acc29e14df6b42b180ed480908c61e6a9781d81897b1b24a79de792fb967886fa7be6494440fb4e8ab69a83100d455838b986ce195dc30116638db544e SHA512 97b365952a7c1e7e4088ed71d1c98eccca1449b481d05e10fd750a6d29c7635dc6112e0e033ab1555cfe51eda8c0b805df1fbe78e9c54cea2664aed8570fa077
+AUX godot-4.0_rc3-scons.patch 506 BLAKE2B 2fd1421760f082ea65febce90459f8a2d63e06e5b02b5e86e59bbacd14db78f76448ee50d0fa7c935b1a867f528b46a9b82b5bb03765d0b237e9af73d7fd14da SHA512 9ac654edc66a5a330055d1af0b706a5fa143061712146ddc02657add45d4518d96391d9e980c0a6b33d9fa966b5914a3f90a7b333f20885f0a05a7b8985fc667
DIST godot-3.5.1-stable.tar.xz 24153448 BLAKE2B 9d61276a2d82ef4f4487ec1046b7fa58f2b3626640b2db25c1f98c3f8e2ff40eddcf943fd9ffaaf6814fbafbbe7ef1d3f642d77af953b87731cff570ac3a5473 SHA512 59e5ca88534f542562971efb83b76561705f9ca8761311f01b4453857e7ae046c17cadd0d5ca6f6f56e262b5031294a8b9ad970fa6ffc95e1a6a1e1bae48d55f
DIST godot-4.0-rc2.tar.xz 29105476 BLAKE2B be30da3909ee881ed929747d97232ad1356b15d0bdb0f5ea07fedc6de300a776ffac4e156134218322ccc4b6e2d4ae457cf53ee72a2da0df645e98fb957e773f SHA512 5d36ca7018ed2963e92a0917a6310f787ab807f47a302f11b6c09ffd60e4e98800aef6957345feb61f49a623eb1993abf601669cd7b7511a5b1d974b129b11c3
+DIST godot-4.0-rc3.tar.xz 29301840 BLAKE2B d981240f117839a05c00871b0e019c08e1f6136cea4935ae5028dbd06c16a6f34f7464309f44c1c0bebd982179cad092b4eb36529a412ccfcc27277fca5f3268 SHA512 4d5702b472e0ab52a86c7c47069ba08a8fe2c40d6b4437842c0610fe7e1d139d348ad521967ef844eb0442f78122864d97fab5a99fd21ec40e6b987c2af96c44
EBUILD godot-3.5.1.ebuild 6752 BLAKE2B b7a6a3851292aa6bd134a45bf2ab7019a55da8bcc815e952ae3acd204b71314fb1a436fe5bab3c83906289566c274f1bc3240e3482c337aca488071d71618df5 SHA512 84a385fbcb01813c6b09e21a76b832b6e7329302e9d7ebd3d3ccbb37ce504f3cc13e1c0d460daa299ef40f9fe5cb04b7d1362e538004f96ef9b6c9dd56a115ac
EBUILD godot-4.0_rc2.ebuild 7757 BLAKE2B 86a2f000277d955450b011fcd92846d7191231ef80724b37a69790fd640d623e833a0c0a2c0d02420991af617a5a0790167efd164100a4fdce405513506d18af SHA512 21b8bf3a9113aeee0e4ac49017a5d7b72e4964e448446c1c0f2bb45035c262dfdcd5531e3e0b1a75eff00760dcbdbc8018e19c752af95e87bdb80e313a9fefcd
-MISC metadata.xml 1547 BLAKE2B 39108142c8e34b3c2683d5bbab6989693156d320797d86efa36f3df39e3d667160cbdb1a0b0efe127f67b3977e1cf3cde151d07915542fa88831e626457bf86f SHA512 a099aacfdd27c4b9536512762fcc63f09ea71cce807b59ff70026a09d79856e1911405e64186597b8e3dd9fef0029c13944ceb3b77d7969adf7182218e532559
+EBUILD godot-4.0_rc3.ebuild 7095 BLAKE2B 4f5dc2eebc0659eb528b06c91312c8ec5a2f6500b5403aa4f4f898a932af5627d61513d7012d614c4d40491002db2b444c1f0358ce3b40be26a0b9fc3a1ca855 SHA512 84f211680ab3aafd5047270cbd73581909fc7f40ccd4b97c2cfcb61fde99171596e210ec38371374287dd7311c6c36328ac2ddee69af636e3232a91d0f405a99
+MISC metadata.xml 1606 BLAKE2B 5e4f1116549672d8cf6f88ef0b764e0710d5f5a1259110c323b67e911dc186c7b618ceb6e5d8b5ada540f531bf34b8e87c9de1652e13db9b08e865bacd7d0c29 SHA512 b4cdc297ad05067832bbd8ab849203201a3f65e00f0dd27ca4dd4c1f808ea2fd13a18615ac9fe6853ae30ae1e53168b73627d72df1f8f428d3979b06697defe5
diff --git a/dev-games/godot/files/godot-4.0_rc3-scons.patch b/dev-games/godot/files/godot-4.0_rc3-scons.patch
new file mode 100644
index 000000000000..682e1510ac94
--- /dev/null
+++ b/dev-games/godot/files/godot-4.0_rc3-scons.patch
@@ -0,0 +1,15 @@
+--- a/SConstruct
++++ b/SConstruct
+@@ -241,2 +241,3 @@
+ opts.Add("CC", "C compiler")
++opts.Add("AR", "Archiver")
+ opts.Add("LINK", "Linker")
+@@ -569,8 +570,2 @@
+ env.Append(CCFLAGS=["-g2"])
+- else:
+- if methods.using_clang(env) and not methods.is_vanilla_clang(env):
+- # Apple Clang, its linker doesn't like -s.
+- env.Append(LINKFLAGS=["-Wl,-S", "-Wl,-x", "-Wl,-dead_strip"])
+- else:
+- env.Append(LINKFLAGS=["-s"])
+
diff --git a/dev-games/godot/godot-4.0_rc3.ebuild b/dev-games/godot/godot-4.0_rc3.ebuild
new file mode 100644
index 000000000000..584b6bf6273e
--- /dev/null
+++ b/dev-games/godot/godot-4.0_rc3.ebuild
@@ -0,0 +1,234 @@
+# 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 python-any-r1 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
+ Apache-2.0 BSD Boost-1.0 CC0-1.0 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="
+ alsa +dbus debug deprecated +fontconfig +gui pulseaudio raycast
+ +runner speech test +theora +tools +udev +upnp +vulkan +webp"
+# tests need more figuring out, they are still somewhat new and volatile
+RESTRICT="test"
+
+# dlopen: 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:=
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( sys-apps/dbus )
+ fontconfig? ( media-libs/fontconfig )
+ gui? (
+ media-libs/libglvnd
+ x11-libs/libX11
+ x11-libs/libXcursor
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxkbcommon
+ tools? ( raycast? ( media-libs/embree:3 ) )
+ vulkan? ( media-libs/vulkan-loader[X] )
+ )
+ pulseaudio? ( media-libs/libpulse )
+ speech? ( app-accessibility/speech-dispatcher )
+ theora? ( media-libs/libtheora )
+ tools? ( app-misc/ca-certificates )
+ udev? ( virtual/udev )
+ upnp? ( net-libs/miniupnpc:= )
+ webp? ( media-libs/libwebp:= )"
+DEPEND="
+ ${RDEPEND}
+ gui? ( x11-base/xorg-proto )
+ tools? ( test? ( dev-cpp/doctest ) )"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.0_beta3-headless-header.patch
+ "${FILESDIR}"/${PN}-4.0_rc2-musl.patch
+ "${FILESDIR}"/${PN}-4.0_rc2-gcc13.patch
+ "${FILESDIR}"/${PN}-4.0_rc3-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 linuxbsd_headers mbedtls
+ miniupnpc pcre2 recastnavigation volk wslay zlib zstd
+ # certs: unused by generated header, but scons panics if not found
+ )
+ rm -r "${unbundle[@]/#/thirdparty/}" || die
+
+ ln -s "${ESYSROOT}"/usr/include/doctest thirdparty/ || 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
+
+ use_sowrap=no
+
+ alsa=$(usex alsa)
+ dbus=$(usex dbus)
+ deprecated=$(usex deprecated)
+ fontconfig=$(usex fontconfig)
+ opengl3=$(usex gui)
+ pulseaudio=$(usex pulseaudio)
+ speechd=$(usex speech)
+ udev=$(usex udev)
+ 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_icu4c=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_recastnavigation=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
+}
diff --git a/dev-games/godot/metadata.xml b/dev-games/godot/metadata.xml
index 82c690208342..ad0df117f2fd 100644
--- a/dev-games/godot/metadata.xml
+++ b/dev-games/godot/metadata.xml
@@ -24,6 +24,7 @@
<flag name="deprecated">Enable support for deprecated features</flag>
<flag name="raycast">Enable the raycast Editor module using <pkg>media-libs/embree</pkg></flag>
<flag name="runner">Build an additional binary optimized for running games (only relevant with USE=tools)</flag>
+ <flag name="speech">Enable text-to-speech support</flag>
<flag name="tools">Enable the Godot Editor for game development</flag>
<flag name="vulkan">Enable support for Vulkan</flag>
<flag name="webm">Enable the WebM module</flag>