Gentoo Archives: gentoo-commits

From: Ionen Wolkens <ionen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-games/godot/
Date: Tue, 01 Nov 2022 20:39:40
Message-Id: 1667334760.bac45e22b124e5be5663524f44efe14b2b55c7f7.ionen@gentoo
1 commit: bac45e22b124e5be5663524f44efe14b2b55c7f7
2 Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
3 AuthorDate: Tue Nov 1 19:56:36 2022 +0000
4 Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
5 CommitDate: Tue Nov 1 20:32:40 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bac45e22
7
8 dev-games/godot: drop 4.0_beta2
9
10 Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
11
12 dev-games/godot/Manifest | 1 -
13 dev-games/godot/godot-4.0_beta2.ebuild | 256 ---------------------------------
14 2 files changed, 257 deletions(-)
15
16 diff --git a/dev-games/godot/Manifest b/dev-games/godot/Manifest
17 index 9a9f83fff89c..d0338ddf87ab 100644
18 --- a/dev-games/godot/Manifest
19 +++ b/dev-games/godot/Manifest
20 @@ -1,3 +1,2 @@
21 DIST godot-3.5.1-stable.tar.xz 24153448 BLAKE2B 9d61276a2d82ef4f4487ec1046b7fa58f2b3626640b2db25c1f98c3f8e2ff40eddcf943fd9ffaaf6814fbafbbe7ef1d3f642d77af953b87731cff570ac3a5473 SHA512 59e5ca88534f542562971efb83b76561705f9ca8761311f01b4453857e7ae046c17cadd0d5ca6f6f56e262b5031294a8b9ad970fa6ffc95e1a6a1e1bae48d55f
22 -DIST godot-4.0-beta2.tar.xz 31175512 BLAKE2B 5fd4c0d3e7a287e861c08b9a4f3b6657576bdc860ea57dc47b9aba06b4858225cf4864d9d115acc4e4079faf9b753af5298dc1e5a9d3f6c0e5f5eec50b785e11 SHA512 ebefc876c1f40e1f7d71a19fd12453c372e8b1c361d8d8e7b6cf4a729df83390514d8410dbb561d1146ecc6b3c92eea81318b801bdd6c44470596cd5994d7d2e
23 DIST godot-4.0-beta3.tar.xz 31187404 BLAKE2B 98af9e1394b9d35286ff97ead83bd8fe2287b52b059589d7d35a349a00fd88aee8c58f4f391a2a7287dabe51e9e9d64d48883fb5bf464ffee608ec62bc1ab06a SHA512 14fa2d7b0c0c86d6a82022e48306a0b440c58fa7b0ddc24fd65833009afedbbca038ba43e796610ffee031c3e83cc071c80d11b9c91e5bfa7bebd81ad6621508
24
25 diff --git a/dev-games/godot/godot-4.0_beta2.ebuild b/dev-games/godot/godot-4.0_beta2.ebuild
26 deleted file mode 100644
27 index 2c88cf57aa9d..000000000000
28 --- a/dev-games/godot/godot-4.0_beta2.ebuild
29 +++ /dev/null
30 @@ -1,256 +0,0 @@
31 -# Copyright 2022 Gentoo Authors
32 -# Distributed under the terms of the GNU General Public License v2
33 -
34 -EAPI=7
35 -
36 -PYTHON_COMPAT=( python3_{8..10} )
37 -inherit bash-completion-r1 desktop python-any-r1 scons-utils toolchain-funcs xdg
38 -
39 -MY_P="${PN}-$(ver_rs 2 -)"
40 -
41 -DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
42 -HOMEPAGE="https://godotengine.org/"
43 -SRC_URI="https://downloads.tuxfamily.org/godotengine/$(ver_rs 2 /)/${MY_P}.tar.xz"
44 -S="${WORKDIR}/${MY_P}"
45 -
46 -LICENSE="
47 - MIT
48 - Apache-2.0 BSD Boost-1.0 CC0-1.0 Unlicense ZLIB
49 - gui? ( CC-BY-4.0 ) tools? ( OFL-1.1 )"
50 -SLOT="4"
51 -KEYWORDS="~amd64"
52 -# Enable roughly same as upstream by default so it works as expected,
53 -# except raycast (tools-only heavy dependency), and deprecated.
54 -IUSE="
55 - +dbus debug deprecated +fontconfig +gui pulseaudio raycast
56 - +runner speech test +theora +tools +udev +upnp +webp"
57 -RESTRICT="!test? ( test ) !tools? ( test ) !webp? ( test )"
58 -
59 -# dlopen: alsa-lib,dbus,fontconfig,pulseaudio,speech-dispatcher,udev
60 -RDEPEND="
61 - app-arch/zstd:=
62 - dev-games/recastnavigation:=
63 - dev-libs/icu:=
64 - dev-libs/libpcre2:=[pcre32]
65 - media-libs/freetype[brotli,harfbuzz]
66 - media-libs/harfbuzz:=[icu]
67 - media-libs/libogg
68 - media-libs/libpng:=
69 - media-libs/libvorbis
70 - <net-libs/mbedtls-3:=
71 - net-libs/wslay
72 - sys-libs/zlib:=
73 - fontconfig? ( media-libs/fontconfig )
74 - gui? (
75 - dev-util/glslang
76 - media-libs/alsa-lib
77 - media-libs/libglvnd[X]
78 - media-libs/vulkan-loader[X]
79 - x11-libs/libX11
80 - x11-libs/libXcursor
81 - x11-libs/libXext
82 - x11-libs/libXi
83 - x11-libs/libXinerama
84 - x11-libs/libXrandr
85 - x11-libs/libXrender
86 - dbus? ( sys-apps/dbus )
87 - pulseaudio? ( media-libs/libpulse )
88 - tools? ( raycast? ( media-libs/embree:3 ) )
89 - udev? ( virtual/udev )
90 - )
91 - speech? ( app-accessibility/speech-dispatcher )
92 - theora? ( media-libs/libtheora )
93 - tools? ( app-misc/ca-certificates )
94 - upnp? ( net-libs/miniupnpc:= )
95 - webp? ( media-libs/libwebp:= )"
96 -DEPEND="
97 - ${RDEPEND}
98 - gui? (
99 - dev-util/vulkan-headers
100 - x11-base/xorg-proto
101 - )
102 - tools? ( test? ( dev-cpp/doctest ) )"
103 -BDEPEND="virtual/pkgconfig"
104 -
105 -PATCHES=(
106 - "${FILESDIR}"/${PN}-4.0-musl.patch
107 - "${FILESDIR}"/${PN}-4.0_alpha14-scons.patch
108 -)
109 -
110 -src_prepare() {
111 - default
112 -
113 - sed -i "1,5s/ godot/&${SLOT}/i" misc/dist/linux/godot.6 || die
114 - sed -i "/id/s/Godot/&${SLOT}/" misc/dist/linux/org.godotengine.Godot.appdata.xml || die
115 - sed -e "s/=godot/&${SLOT}/" -e "/^Name=/s/$/ ${SLOT}/" \
116 - -i misc/dist/linux/org.godotengine.Godot.desktop || die
117 -
118 - sed -i "s|pkg-config |$(tc-getPKG_CONFIG) |" platform/linuxbsd/detect.py || die
119 -
120 - # use of builtin_ switches can be messy (see below), delete to be sure
121 - local unbundle=(
122 - doctest embree freetype glslang graphite harfbuzz icu4c libogg libpng
123 - libtheora libvorbis libwebp mbedtls miniupnpc pcre2 recastnavigation
124 - volk vulkan/include wslay zlib zstd
125 - # certs: unused by generated header, but scons panics if not found
126 - )
127 - rm -r "${unbundle[@]/#/thirdparty/}" || die
128 -
129 - # do symlinks to avoid too much patching with hardcoded header paths
130 - mkdir thirdparty/lib{vorbis,ogg} || die
131 - ln -s "${ESYSROOT}"/usr/include thirdparty/zstd || die
132 - ln -s "${ESYSROOT}"/usr/include/doctest thirdparty/ || die
133 - ln -s "${ESYSROOT}"/usr/include/ogg thirdparty/libogg/ || die
134 - ln -s "${ESYSROOT}"/usr/include/vorbis thirdparty/libvorbis/ || die
135 -}
136 -
137 -src_compile() {
138 - local -x GODOT_VERSION_STATUS=$(ver_cut 3-4) # for dev versions only
139 - local -x BUILD_NAME=gentoo # replaces "custom_build" in version string
140 -
141 - local esconsargs=(
142 - AR="$(tc-getAR)" CC="$(tc-getCC)" CXX="$(tc-getCXX)"
143 -
144 - progress=no
145 - verbose=yes
146 -
147 - deprecated=$(usex deprecated)
148 - #execinfo=$(usex !elibc_glibc) # libexecinfo is not packaged
149 - fontconfig=$(usex fontconfig)
150 - minizip=yes # uses a modified bundled copy
151 - opengl3=$(usex gui)
152 - pulseaudio=$(usex gui $(usex pulseaudio))
153 - speechd=$(usex speech)
154 - udev=$(usex gui $(usex udev))
155 - use_dbus=$(usex gui $(usex dbus))
156 - use_volk=no # unnecessary when linking directly to libvulkan
157 - vulkan=$(usex gui) # hard-required and favored by upstream over gles3
158 - x11=$(usex gui)
159 -
160 - system_certs_path="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
161 -
162 - # platform/*/detect.py uses builtin_* switches to check if need
163 - # to link with system libraries, but ignores whether the dep is
164 - # actually used, so "enable" deleted builtins on disabled deps
165 - builtin_certs=no
166 - builtin_embree=$(usex !gui yes $(usex !tools yes $(usex !raycast)))
167 - builtin_enet=yes # bundled copy is patched for IPv6+DTLS support
168 - builtin_freetype=no
169 - builtin_glslang=$(usex !gui)
170 - builtin_graphite=no
171 - builtin_harfbuzz=no
172 - builtin_icu=no
173 - builtin_libogg=no
174 - builtin_libpng=no
175 - builtin_libtheora=$(usex !theora)
176 - builtin_libvorbis=no
177 - builtin_libwebp=$(usex !webp)
178 - builtin_mbedtls=no
179 - builtin_miniupnpc=$(usex !upnp)
180 - builtin_msdfgen=yes # not wired for unbundling nor packaged
181 - builtin_pcre2=no
182 - builtin_recast=no
183 - builtin_rvo2=yes # bundled copy has godot-specific changes
184 - builtin_squish=yes # ^ likewise, may not be safe to unbundle
185 - builtin_wslay=no
186 - builtin_xatlas=yes # not wired for unbundling nor packaged
187 - builtin_zlib=no
188 - builtin_zstd=no
189 - # also bundled but lacking a builtin_* switch:
190 - # amd-fsr, basis_universal, cvtt, etcpak, fonts, glad,
191 - # jpeg-compressor, meshoptimizer, minimp3, minizip (patched to
192 - # seek in archives), noise, oidn, openxr, spirv-reflect, thorvg,
193 - # tinyexr, vhacd, vulkan (minus include/) and the misc directory.
194 -
195 - # modules with optional dependencies, "possible" to disable more but
196 - # gets messy and breaks all sorts of features (expected enabled)
197 - module_glslang_enabled=$(usex gui)
198 - module_gridmap_enabled=$(usex deprecated) # fails without deprecated
199 - module_mono_enabled=no # unhandled
200 - # note raycast is only enabled on amd64+arm64, see raycast/config.py
201 - module_raycast_enabled=$(usex gui $(usex tools $(usex raycast)))
202 - module_theora_enabled=$(usex theora)
203 - module_upnp_enabled=$(usex upnp)
204 - module_webp_enabled=$(usex webp)
205 -
206 - # let *FLAGS handle these, e.g. can pass -flto as-is
207 - debug_symbols=no
208 - lto=none
209 - optimize=none
210 - use_static_cpp=no
211 - )
212 -
213 - if use runner && use tools; then
214 - # build alternate faster + ~60% smaller binary for running
215 - # games or servers without game development debug paths
216 - escons extra_suffix=runner target=release tools=no "${esconsargs[@]}"
217 - fi
218 -
219 - esconsargs+=(
220 - # debug: debug for godot itself
221 - # release_debug: debug for game development
222 - # release: no debugging paths, only available with tools=no
223 - target=$(usex debug{,} $(usex tools release_debug release))
224 - tools=$(usex tools)
225 -
226 - # harmless but note this bakes in --test in the final binary
227 - tests=$(usex tools $(usex test))
228 - )
229 -
230 - escons extra_suffix=main "${esconsargs[@]}"
231 -}
232 -
233 -src_test() {
234 - xdg_environment_reset
235 - bin/godot*.main --headless --test || die
236 -}
237 -
238 -src_install() {
239 - local s=godot${SLOT}
240 -
241 - newbin bin/godot*.main ${s}
242 - if use runner && use tools; then
243 - newbin bin/godot*.runner ${s}-runner
244 - else
245 - # always available, revdeps shouldn't depend on [runner]
246 - dosym ${s} /usr/bin/${s}-runner
247 - fi
248 -
249 - newman misc/dist/linux/godot.6 ${s}.6
250 - dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md
251 -
252 - if use gui; then
253 - newicon icon.svg ${s}.svg
254 - newmenu misc/dist/linux/org.godotengine.Godot.desktop \
255 - org.godotengine.${s^}.desktop
256 -
257 - insinto /usr/share/metainfo
258 - newins misc/dist/linux/org.godotengine.Godot.appdata.xml \
259 - org.godotengine.${s^}.appdata.xml
260 -
261 - insinto /usr/share/mime/application
262 - newins misc/dist/linux/org.godotengine.Godot.xml \
263 - org.godotengine.${s^}.xml
264 - fi
265 -
266 - newbashcomp misc/dist/shell/godot.bash-completion ${s}
267 - bashcomp_alias ${s}{,-runner}
268 -
269 - insinto /usr/share/fish/vendor_completions.d
270 - newins misc/dist/shell/godot.fish ${s}.fish
271 - dosym ${s}.fish /usr/share/fish/vendor_completions.d/${s}-runner.fish
272 -
273 - insinto /usr/share/zsh/site-functions
274 - newins misc/dist/shell/_godot.zsh-completion _${s}
275 - dosym _${s} /usr/share/zsh/site-functions/_${s}-runner
276 -}
277 -
278 -pkg_postinst() {
279 - xdg_pkg_postinst
280 -
281 - if [[ ! ${REPLACING_VERSIONS} ]] && has_version ${CATEGORY}/${PN}:3; then
282 - elog
283 - elog "Remember to make backups before opening any Godot <=3.x projects in Godot 4."
284 - elog "Automated migration is only partial, and it would be difficult to revert."
285 - fi
286 -}