summaryrefslogtreecommitdiff
path: root/dev-games/godot
diff options
context:
space:
mode:
Diffstat (limited to 'dev-games/godot')
-rw-r--r--dev-games/godot/Manifest5
-rw-r--r--dev-games/godot/files/godot-4.0_beta8-scons.patch41
-rw-r--r--dev-games/godot/godot-4.0_rc4.ebuild (renamed from dev-games/godot/godot-4.0_rc2.ebuild)62
3 files changed, 30 insertions, 78 deletions
diff --git a/dev-games/godot/Manifest b/dev-games/godot/Manifest
index 8a3deb1a76e4..fdaae26a00e7 100644
--- a/dev-games/godot/Manifest
+++ b/dev-games/godot/Manifest
@@ -1,14 +1,13 @@
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_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-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
+DIST godot-4.0-rc4.tar.xz 29309432 BLAKE2B 5ea55af531fc567550b343607a2ea71d2f3ce25811b7a786436477509ae3e24280828486e078813de2cc349c3782109bc7ffea23dcd8fe9c887d175d52a4a500 SHA512 38ce413a7287678460ac7156b3859db2d80e308f3c89ce57d23d62632570fb5640a896d92ebf11157da9d26c2ef9f3f571cea051b25ecd95ad8092e05d2eff9d
EBUILD godot-3.5.1.ebuild 6752 BLAKE2B b7a6a3851292aa6bd134a45bf2ab7019a55da8bcc815e952ae3acd204b71314fb1a436fe5bab3c83906289566c274f1bc3240e3482c337aca488071d71618df5 SHA512 84a385fbcb01813c6b09e21a76b832b6e7329302e9d7ebd3d3ccbb37ce504f3cc13e1c0d460daa299ef40f9fe5cb04b7d1362e538004f96ef9b6c9dd56a115ac
-EBUILD godot-4.0_rc2.ebuild 7757 BLAKE2B 86a2f000277d955450b011fcd92846d7191231ef80724b37a69790fd640d623e833a0c0a2c0d02420991af617a5a0790167efd164100a4fdce405513506d18af SHA512 21b8bf3a9113aeee0e4ac49017a5d7b72e4964e448446c1c0f2bb45035c262dfdcd5531e3e0b1a75eff00760dcbdbc8018e19c752af95e87bdb80e313a9fefcd
EBUILD godot-4.0_rc3.ebuild 7095 BLAKE2B 4f5dc2eebc0659eb528b06c91312c8ec5a2f6500b5403aa4f4f898a932af5627d61513d7012d614c4d40491002db2b444c1f0358ce3b40be26a0b9fc3a1ca855 SHA512 84f211680ab3aafd5047270cbd73581909fc7f40ccd4b97c2cfcb61fde99171596e210ec38371374287dd7311c6c36328ac2ddee69af636e3232a91d0f405a99
+EBUILD godot-4.0_rc4.ebuild 7095 BLAKE2B 4f5dc2eebc0659eb528b06c91312c8ec5a2f6500b5403aa4f4f898a932af5627d61513d7012d614c4d40491002db2b444c1f0358ce3b40be26a0b9fc3a1ca855 SHA512 84f211680ab3aafd5047270cbd73581909fc7f40ccd4b97c2cfcb61fde99171596e210ec38371374287dd7311c6c36328ac2ddee69af636e3232a91d0f405a99
MISC metadata.xml 1606 BLAKE2B 5e4f1116549672d8cf6f88ef0b764e0710d5f5a1259110c323b67e911dc186c7b618ceb6e5d8b5ada540f531bf34b8e87c9de1652e13db9b08e865bacd7d0c29 SHA512 b4cdc297ad05067832bbd8ab849203201a3f65e00f0dd27ca4dd4c1f808ea2fd13a18615ac9fe6853ae30ae1e53168b73627d72df1f8f428d3979b06697defe5
diff --git a/dev-games/godot/files/godot-4.0_beta8-scons.patch b/dev-games/godot/files/godot-4.0_beta8-scons.patch
deleted file mode 100644
index 4a6254d93d72..000000000000
--- a/dev-games/godot/files/godot-4.0_beta8-scons.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-* add option to respect AR
- (respecting PKG_CONFIG is handled in the ebuild)
-* don't strip even with debug symbols disabled
-* fix icu unbundling underlinking
-* handle recastnavigation unbundling
---- a/SConstruct
-+++ b/SConstruct
-@@ -239,4 +239,5 @@
- opts.Add("CXX", "C++ compiler")
- opts.Add("CC", "C compiler")
-+opts.Add("AR", "Archiver")
- opts.Add("LINK", "Linker")
- opts.Add("CCFLAGS", "Custom flags for both the C and C++ compilers")
-@@ -545,10 +546,4 @@
- else:
- 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"])
-
- if env["optimize"] == "speed":
---- a/platform/linuxbsd/detect.py
-+++ b/platform/linuxbsd/detect.py
-@@ -221,5 +221,5 @@
-
- if not env["builtin_icu"]:
-- env.ParseConfig("pkg-config icu-uc --cflags --libs")
-+ env.ParseConfig("pkg-config icu-i18n --cflags --libs")
-
- if not env["builtin_harfbuzz"]:
-@@ -232,4 +232,7 @@
- env.ParseConfig("pkg-config libenet --cflags --libs")
-
-+ if not env["builtin_recast"]:
-+ env.ParseConfig("pkg-config recastnavigation --cflags --libs")
-+
- if not env["builtin_squish"]:
- env.ParseConfig("pkg-config libsquish --cflags --libs")
diff --git a/dev-games/godot/godot-4.0_rc2.ebuild b/dev-games/godot/godot-4.0_rc4.ebuild
index d2601d52d4ff..584b6bf6273e 100644
--- a/dev-games/godot/godot-4.0_rc2.ebuild
+++ b/dev-games/godot/godot-4.0_rc4.ebuild
@@ -4,8 +4,7 @@
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
-inherit bash-completion-r1 desktop optfeature python-any-r1
-inherit scons-utils toolchain-funcs xdg
+inherit bash-completion-r1 desktop python-any-r1 scons-utils toolchain-funcs xdg
MY_P="${PN}-$(ver_rs 2 -)"
@@ -16,17 +15,19 @@ S="${WORKDIR}/${MY_P}"
LICENSE="
MIT
- AFL-2.1 Apache-2.0 BSD Boost-1.0 CC0-1.0 LGPL-2.1+ Unlicense ZLIB
+ 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="debug deprecated +gui raycast +runner test +theora +tools +upnp +vulkan +webp"
+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: libX*,libglvnd
+# dlopen: libglvnd
RDEPEND="
app-arch/zstd:=
dev-games/recastnavigation:=
@@ -40,8 +41,11 @@ RDEPEND="
<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[X]
+ media-libs/libglvnd
x11-libs/libX11
x11-libs/libXcursor
x11-libs/libXext
@@ -49,23 +53,28 @@ RDEPEND="
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_beta8-scons.patch
"${FILESDIR}"/${PN}-4.0_rc2-musl.patch
"${FILESDIR}"/${PN}-4.0_rc2-gcc13.patch
+ "${FILESDIR}"/${PN}-4.0_rc3-scons.patch
)
src_prepare() {
@@ -81,22 +90,13 @@ src_prepare() {
# 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
+ 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
- # 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() {
@@ -109,8 +109,16 @@ src_compile() {
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)
@@ -127,7 +135,7 @@ src_compile() {
builtin_glslang=yes #879111
builtin_graphite=no
builtin_harfbuzz=no
- builtin_icu=no
+ builtin_icu4c=no
builtin_libogg=no
builtin_libpng=no
builtin_libtheora=$(usex !theora)
@@ -137,7 +145,7 @@ src_compile() {
builtin_miniupnpc=$(usex !upnp)
builtin_msdfgen=yes # not wired for unbundling nor packaged
builtin_pcre2=no
- builtin_recast=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
@@ -224,17 +232,3 @@ src_install() {
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
-}