From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D41591382C5 for ; Sat, 5 Jun 2021 20:23:04 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1043FE0903; Sat, 5 Jun 2021 20:23:04 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D8CFCE0903 for ; Sat, 5 Jun 2021 20:23:03 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 0A47B340D77 for ; Sat, 5 Jun 2021 20:23:01 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 574A5733 for ; Sat, 5 Jun 2021 20:22:59 +0000 (UTC) From: "Ross Charles Campbell" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ross Charles Campbell" Message-ID: <1622924560.5c4cdf7f76708e0dbf4c596920e4dc3ad3a65bb2.rossbridger@gentoo> Subject: [gentoo-commits] repo/proj/guru:dev commit in: dev-games/godot/files/, dev-games/godot/ X-VCS-Repository: repo/proj/guru X-VCS-Files: dev-games/godot/Manifest dev-games/godot/files/godot-3.2.3-fix-CVE-2021-26825.patch dev-games/godot/files/godot-3.2.3-fix-llvm-build.patch dev-games/godot/files/godot-3.3-fix-llvm-build.patch dev-games/godot/files/godot-3.3.2-fix-llvm-build.patch dev-games/godot/godot-3.2.3-r1.ebuild dev-games/godot/godot-3.3.2.ebuild dev-games/godot/godot-3.3.ebuild dev-games/godot/metadata.xml X-VCS-Directories: dev-games/godot/ dev-games/godot/files/ X-VCS-Committer: rossbridger X-VCS-Committer-Name: Ross Charles Campbell X-VCS-Revision: 5c4cdf7f76708e0dbf4c596920e4dc3ad3a65bb2 X-VCS-Branch: dev Date: Sat, 5 Jun 2021 20:22:59 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 2de77a67-d1eb-4a01-805d-418f368bd8ff X-Archives-Hash: af607406b566898b7be7242df1138dd0 commit: 5c4cdf7f76708e0dbf4c596920e4dc3ad3a65bb2 Author: Ross Charles Campbell gmail com> AuthorDate: Sat Jun 5 20:22:31 2021 +0000 Commit: Ross Charles Campbell gmail com> CommitDate: Sat Jun 5 20:22:40 2021 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=5c4cdf7f dev-games/godot: bump to 3.3.2; enable raycast USE flag Package-Manager: Portage-3.0.19, Repoman-3.0.3 Signed-off-by: Ross Charles Campbell gmail.com> dev-games/godot/Manifest | 3 +- .../files/godot-3.2.3-fix-CVE-2021-26825.patch | 108 ---------------- .../godot/files/godot-3.2.3-fix-llvm-build.patch | 36 ------ ...uild.patch => godot-3.3.2-fix-llvm-build.patch} | 0 dev-games/godot/godot-3.2.3-r1.ebuild | 142 --------------------- .../godot/{godot-3.3.ebuild => godot-3.3.2.ebuild} | 7 +- dev-games/godot/metadata.xml | 3 +- 7 files changed, 6 insertions(+), 293 deletions(-) diff --git a/dev-games/godot/Manifest b/dev-games/godot/Manifest index 3b23c1170..26b22352d 100644 --- a/dev-games/godot/Manifest +++ b/dev-games/godot/Manifest @@ -1,2 +1 @@ -DIST godot-3.2.3.tar.gz 22459811 BLAKE2B fdebfc4fc4a259d52496feb2904ff1e311a8df3fd57568091b181380e28b789efd16d598df7a2331f22f182acebacb7af1f5aa88583f8b7e992be52f2f494198 SHA512 229a32f082e412f20533b781ee95a1e7a9039a6329fe3429f9a3388ba3aada311bcc49c2abecdeec7496ef039a81358009126b21daaeeb127c170b77c3def99f -DIST godot-3.3.tar.gz 29430958 BLAKE2B 280b3b371c96e7a39e23f843759754e932fe4fd62b774b5d2d0d0e687fdb5dc8be7d95a18465f52d6f00456f62451115b1bf2e4afc2923ce704ffcde0f06544d SHA512 172cb23608e279c381fab00152cdf2e90b6c76401f97172031b37326789f2d8e153ef5a4c1dc4cc12cab14d04c384c576683b9edc13772e7f52b5d043f5e294d +DIST godot-3.3.2.tar.gz 29524679 BLAKE2B 1d7ee1703388d98c41524f64a99859216b060daad4502c4118adf31a95d45aa230d058630ae8735282a9b5d9f7c1ee464fb4caf9f92e3e55340370e007102f8d SHA512 3a8d187d44460ce0f28f9d26fabb30b5a9af651d9d1a1446480823885aae3ad018e32a072d4d60cf5d2c152b97759cee2172ca314c517d01cff8ddf05d91c24e diff --git a/dev-games/godot/files/godot-3.2.3-fix-CVE-2021-26825.patch b/dev-games/godot/files/godot-3.2.3-fix-CVE-2021-26825.patch deleted file mode 100644 index e2602f5ee..000000000 --- a/dev-games/godot/files/godot-3.2.3-fix-CVE-2021-26825.patch +++ /dev/null @@ -1,108 +0,0 @@ -commit 113b5ab1c45c01b8e6d54d13ac8876d091f883a8 -Author: Hein-Pieter van Braam-Stewart -Date: Thu Feb 4 12:56:33 2021 +0100 - - Fix a crash in the TGA loader with malformed input - -diff --git a/modules/tga/image_loader_tga.cpp b/modules/tga/image_loader_tga.cpp -index d60efdd5bc..964dc091a7 100644 ---- a/modules/tga/image_loader_tga.cpp -+++ b/modules/tga/image_loader_tga.cpp -@@ -55,6 +55,10 @@ Error ImageLoaderTGA::decode_tga_rle(const uint8_t *p_compressed_buffer, size_t - compressed_pos += 1; - count = (c & 0x7f) + 1; - -+ if (output_pos + count * p_pixel_size > output_pos) { -+ return ERR_PARSE_ERROR; -+ } -+ - if (c & 0x80) { - for (size_t i = 0; i < p_pixel_size; i++) { - pixels_w.ptr()[i] = p_compressed_buffer[compressed_pos]; -@@ -78,7 +82,7 @@ Error ImageLoaderTGA::decode_tga_rle(const uint8_t *p_compressed_buffer, size_t - return OK; - } - --Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buffer, const tga_header_s &p_header, const uint8_t *p_palette, const bool p_is_monochrome) { -+Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buffer, const tga_header_s &p_header, const uint8_t *p_palette, const bool p_is_monochrome, size_t p_output_size) { - - #define TGA_PUT_PIXEL(r, g, b, a) \ - int image_data_ofs = ((y * width) + x); \ -@@ -130,6 +134,9 @@ Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buff - if (p_is_monochrome) { - while (y != y_end) { - while (x != x_end) { -+ if (i > p_output_size) { -+ return ERR_PARSE_ERROR; -+ } - uint8_t shade = p_buffer[i]; - - TGA_PUT_PIXEL(shade, shade, shade, 0xff) -@@ -143,6 +150,9 @@ Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buff - } else { - while (y != y_end) { - while (x != x_end) { -+ if (i > p_output_size) { -+ return ERR_PARSE_ERROR; -+ } - uint8_t index = p_buffer[i]; - uint8_t r = 0x00; - uint8_t g = 0x00; -@@ -171,6 +181,10 @@ Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buff - } else if (p_header.pixel_depth == 24) { - while (y != y_end) { - while (x != x_end) { -+ if (i + 2 > p_output_size) { -+ return ERR_PARSE_ERROR; -+ } -+ - uint8_t r = p_buffer[i + 2]; - uint8_t g = p_buffer[i + 1]; - uint8_t b = p_buffer[i + 0]; -@@ -186,6 +200,10 @@ Error ImageLoaderTGA::convert_to_image(Ref p_image, const uint8_t *p_buff - } else if (p_header.pixel_depth == 32) { - while (y != y_end) { - while (x != x_end) { -+ if (i + 3 > p_output_size) { -+ return ERR_PARSE_ERROR; -+ } -+ - uint8_t a = p_buffer[i + 3]; - uint8_t r = p_buffer[i + 2]; - uint8_t g = p_buffer[i + 1]; -@@ -280,7 +298,7 @@ Error ImageLoaderTGA::load_image(Ref p_image, FileAccess *f, bool p_force - PoolVector::Read src_image_r = src_image.read(); - - const size_t pixel_size = tga_header.pixel_depth >> 3; -- const size_t buffer_size = (tga_header.image_width * tga_header.image_height) * pixel_size; -+ size_t buffer_size = (tga_header.image_width * tga_header.image_height) * pixel_size; - - PoolVector uncompressed_buffer; - uncompressed_buffer.resize(buffer_size); -@@ -299,11 +317,12 @@ Error ImageLoaderTGA::load_image(Ref p_image, FileAccess *f, bool p_force - } - } else { - buffer = src_image_r.ptr(); -+ buffer_size = src_image_len; - }; - - if (err == OK) { - PoolVector::Read palette_r = palette.read(); -- err = convert_to_image(p_image, buffer, tga_header, palette_r.ptr(), is_monochrome); -+ err = convert_to_image(p_image, buffer, tga_header, palette_r.ptr(), is_monochrome, buffer_size); - } - } - -diff --git a/modules/tga/image_loader_tga.h b/modules/tga/image_loader_tga.h -index 249e33411e..bbfc3fed32 100644 ---- a/modules/tga/image_loader_tga.h -+++ b/modules/tga/image_loader_tga.h -@@ -73,7 +73,7 @@ class ImageLoaderTGA : public ImageFormatLoader { - uint8_t image_descriptor; - }; - static Error decode_tga_rle(const uint8_t *p_compressed_buffer, size_t p_pixel_size, uint8_t *p_uncompressed_buffer, size_t p_output_size); -- static Error convert_to_image(Ref p_image, const uint8_t *p_buffer, const tga_header_s &p_header, const uint8_t *p_palette, const bool p_is_monochrome); -+ static Error convert_to_image(Ref p_image, const uint8_t *p_buffer, const tga_header_s &p_header, const uint8_t *p_palette, const bool p_is_monochrome, size_t p_output_size); - - public: - virtual Error load_image(Ref p_image, FileAccess *f, bool p_force_linear, float p_scale); diff --git a/dev-games/godot/files/godot-3.2.3-fix-llvm-build.patch b/dev-games/godot/files/godot-3.2.3-fix-llvm-build.patch deleted file mode 100644 index 40c45f341..000000000 --- a/dev-games/godot/files/godot-3.2.3-fix-llvm-build.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/SConstruct b/SConstruct -index 26019e6..f460aef 100644 ---- a/SConstruct -+++ b/SConstruct -@@ -170,6 +170,8 @@ opts.Add(BoolVariable("builtin_zstd", "Use the built-in Zstd library", True)) - # Compilation environment setup - opts.Add("CXX", "C++ compiler") - opts.Add("CC", "C compiler") -+opts.Add("AR", "Archiver") -+opts.Add("RANLIB", "Random Access Library Indexer") - opts.Add("LINK", "Linker") - opts.Add("CCFLAGS", "Custom flags for both the C and C++ compilers") - opts.Add("CFLAGS", "Custom flags for the C compiler") -diff --git a/platform/x11/detect.py b/platform/x11/detect.py -index 716930d..28b1df4 100644 ---- a/platform/x11/detect.py -+++ b/platform/x11/detect.py -@@ -130,7 +130,6 @@ def configure(env): - env["CXX"] = "clang++" - env["LINK"] = "clang++" - env.Append(CPPDEFINES=["TYPED_METHOD_BIND"]) -- env.extra_suffix = ".llvm" + env.extra_suffix - - if env["use_lld"]: - if env["use_llvm"]: -@@ -173,10 +172,6 @@ def configure(env): - env.Append(CCFLAGS=["-flto"]) - env.Append(LINKFLAGS=["-flto"]) - -- if not env["use_llvm"]: -- env["RANLIB"] = "gcc-ranlib" -- env["AR"] = "gcc-ar" -- - env.Append(CCFLAGS=["-pipe"]) - env.Append(LINKFLAGS=["-pipe"]) - diff --git a/dev-games/godot/files/godot-3.3-fix-llvm-build.patch b/dev-games/godot/files/godot-3.3.2-fix-llvm-build.patch similarity index 100% rename from dev-games/godot/files/godot-3.3-fix-llvm-build.patch rename to dev-games/godot/files/godot-3.3.2-fix-llvm-build.patch diff --git a/dev-games/godot/godot-3.2.3-r1.ebuild b/dev-games/godot/godot-3.2.3-r1.ebuild deleted file mode 100644 index feae31536..000000000 --- a/dev-games/godot/godot-3.2.3-r1.ebuild +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) - -inherit desktop python-any-r1 scons-utils xdg - -DESCRIPTION="Multi-platform 2D and 3D game engine" -HOMEPAGE="https://godotengine.org" - -SRC_URI="https://github.com/godotengine/${PN}/archive/${PV}-stable.tar.gz -> ${P}.tar.gz" -S="${WORKDIR}/${P}-stable" -KEYWORDS="~amd64 ~x86" - -LICENSE="Apache-2.0 Boost-1.0 BSD CC-BY-3.0 MIT MPL-2.0 OFL-1.1 public-domain ZLIB" -SLOT="0/3" -IUSE="+bullet debug +enet +freetype lto +mbedtls +ogg +opus pulseaudio +theora +udev +upnp +vorbis +webp" - -RDEPEND=" - app-arch/lz4 - app-arch/zstd - dev-libs/libpcre2[pcre32] - media-libs/alsa-lib - media-libs/libpng:0= - media-libs/libvpx - media-libs/mesa[gles2] - sys-libs/zlib - x11-libs/libX11 - x11-libs/libXcursor - x11-libs/libXi - x11-libs/libXinerama - virtual/glu - virtual/opengl - bullet? ( >=sci-physics/bullet-2.89 ) - enet? ( net-libs/enet:= ) - freetype? ( media-libs/freetype:2 ) - mbedtls? ( net-libs/mbedtls ) - ogg? ( media-libs/libogg ) - opus? ( - media-libs/opus - media-libs/opusfile - ) - pulseaudio? ( media-sound/pulseaudio ) - theora? ( media-libs/libtheora ) - udev? ( virtual/udev ) - upnp? ( net-libs/miniupnpc ) - vorbis? ( media-libs/libvorbis ) - webp? ( media-libs/libwebp ) -" -DEPEND=" - ${RDEPEND} - dev-lang/yasm -" -BDEPEND="virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}"/${P}-fix-llvm-build.patch - "${FILESDIR}"/${P}-fix-CVE-2021-26825.patch -) - -src_prepare() { - default - rm -r thirdparty/{bullet,enet,freetype,libogg,libpng,libtheora,libvorbis,libvpx,libwebp,mbedtls,miniupnpc,opus,pcre2,zlib,zstd} || die -} - -src_configure() { - myesconsargs=( - CC="$(tc-getCC)" - CXX="$(tc-getCXX)" - AR="$(tc-getAR)" - RANLIB="$(tc-getRANLIB)" - ) - # Remove builtin third-party packages, link with system ones instead - myesconsargs+=( - builtin_bullet=no - builtin_enet=no - builtin_freetype=no - builtin_libogg=no - builtin_libpng=no - builtin_libtheora=no - builtin_libvorbis=no - builtin_libvpx=no - builtin_libwebp=no - builtin_mbedtls=no - builtin_miniupnpc=no - builtin_opus=no - builtin_pcre2=no - builtin_pcre2_with_jit=no - builtin_zlib=no - builtin_zstd=no - ) - myesconsargs+=( - # Mono bindings requires MSBuild which is only available on Windows - module_mono_enabled=no - module_bullet_enabled=$(usex bullet) - module_enet_enabled=$(usex enet) - module_freetype_enabled=$(usex freetype) - module_mbedtls_enabled=$(usex mbedtls) - module_ogg_enabled=$(usex ogg) - module_opus_enabled=$(usex opus) - module_theora_enabled=$(usex theora) - module_upnp_enabled=$(usex upnp) - module_vorbis_enabled=$(usex vorbis) - module_webp_enabled=$(usex webp) - ) - # Misc options - myesconsargs+=( - platform=x11 - progress=yes - tools=yes - verbose=yes - pulseaudio=$(usex pulseaudio) - target=$(usex debug debug release_debug) - udev=$(usex udev) - use_lto=$(usex lto) - ) -} - -src_compile() { - escons "${myesconsargs[@]}" -} - -src_install() { - local godot_binary="${PN}.x11.opt.tools" - - if [[ "${ARCH}" == "amd64" ]]; then - godot_binary="${godot_binary}.64" - elif [[ "${ARCH}" == "x86" ]]; then - godot_binary="${godot_binary}.32" - fi - - newbin bin/${godot_binary} ${PN} - newicon icon.svg ${PN}.svg - doman misc/dist/linux/${PN}.6 - domenu misc/dist/linux/org.godotengine.Godot.desktop - insinto /usr/share/metainfo - doins misc/dist/linux/org.godotengine.Godot.appdata.xml - insinto /usr/share/mime/application - doins misc/dist/linux/x-godot-project.xml - dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md -} diff --git a/dev-games/godot/godot-3.3.ebuild b/dev-games/godot/godot-3.3.2.ebuild similarity index 94% rename from dev-games/godot/godot-3.3.ebuild rename to dev-games/godot/godot-3.3.2.ebuild index fa2e46cd3..f301b3ee6 100644 --- a/dev-games/godot/godot-3.3.ebuild +++ b/dev-games/godot/godot-3.3.2.ebuild @@ -15,7 +15,7 @@ KEYWORDS="~amd64 ~x86" LICENSE="Apache-2.0 Boost-1.0 BSD CC-BY-3.0 MIT MPL-2.0 OFL-1.1 public-domain ZLIB" SLOT="0/3" -IUSE="+bullet debug deprecated +enet +freetype lto +mbedtls +ogg +opus pulseaudio +theora +udev +upnp +vorbis +webp" +IUSE="+bullet debug deprecated +enet +freetype lto +mbedtls +ogg +opus pulseaudio raycast +theora +udev +upnp +vorbis +webp" RDEPEND=" app-arch/lz4 @@ -42,6 +42,7 @@ RDEPEND=" media-libs/opusfile ) pulseaudio? ( media-sound/pulseaudio ) + raycast? ( media-libs/embree:3 ) theora? ( media-libs/libtheora ) udev? ( virtual/udev ) upnp? ( net-libs/miniupnpc ) @@ -93,9 +94,7 @@ src_configure() { myesconsargs+=( # Mono bindings requires MSBuild which is only available on Windows module_mono_enabled=no - # TODO: land embree library (https://github.com/embree/embree) in guru - # so that we can enable raycast module - module_raycast_enabled=no + module_raycast_enabled=$(usex raycast) module_bullet_enabled=$(usex bullet) module_enet_enabled=$(usex enet) module_freetype_enabled=$(usex freetype) diff --git a/dev-games/godot/metadata.xml b/dev-games/godot/metadata.xml index 2ac2a234c..efb9bdcd1 100644 --- a/dev-games/godot/metadata.xml +++ b/dev-games/godot/metadata.xml @@ -17,9 +17,10 @@ web-based (HTML5) platforms. Enable support for sci-physics/bullet Enable deprecated features Enable support for net-libs/enet - Enable support for link time optimization Enable support for media-libs/freetype + Enable support for link time optimization Enable support for net-libs/mbedtls + Enable raycast module using media-libs/embree godotengine/godot