From 6844a5aeecfaa4fc8eec3755e1fa09871f649924 Mon Sep 17 00:00:00 2001 From: termux-pacman-bot Date: Sat, 9 Nov 2024 17:05:36 +0000 Subject: [PATCH] bump(x11/godot): 4.3 --- x11-packages/godot/build.sh | 13 ++++--- x11-packages/godot/crypto_mbedtls.cpp.patch | 29 -------------- x11-packages/godot/set_dir.patch | 21 ++++------ .../godot/tls_context_mbedtls.h.patch | 11 ------ x11-packages/godot/upnp.cpp.patch | 10 ++--- x11-packages/godot/wayland_thread.cpp.patch | 39 +++++++++++++++++++ 6 files changed, 59 insertions(+), 64 deletions(-) delete mode 100644 x11-packages/godot/crypto_mbedtls.cpp.patch delete mode 100644 x11-packages/godot/tls_context_mbedtls.h.patch create mode 100644 x11-packages/godot/wayland_thread.cpp.patch diff --git a/x11-packages/godot/build.sh b/x11-packages/godot/build.sh index c861cc84ea..c8c6352be3 100644 --- a/x11-packages/godot/build.sh +++ b/x11-packages/godot/build.sh @@ -2,13 +2,14 @@ TERMUX_PKG_HOMEPAGE=https://godotengine.org TERMUX_PKG_DESCRIPTION="Advanced cross-platform 2D and 3D game engine" TERMUX_PKG_LICENSE="MIT" TERMUX_PKG_MAINTAINER="@termux" -TERMUX_PKG_VERSION="4.2.2" -TERMUX_PKG_REVISION=1 +TERMUX_PKG_VERSION="4.3" TERMUX_PKG_SRCURL=https://github.com/godotengine/godot/archive/$TERMUX_PKG_VERSION-stable.tar.gz -TERMUX_PKG_SHA256=990b7b716656122364b1672508c516c898497c50216d7c00c60eeaf507685c0e +TERMUX_PKG_SHA256=6a441d02957432d76343052296dc514b1b6bd72af920c9f2518b1ec3cb534874 TERMUX_PKG_DEPENDS="ca-certificates, glu, libandroid-execinfo, libc++, libenet, libogg, libtheora, libvorbis, libvpx, libwebp, libwslay, libxcursor, libxi, libxinerama, libxkbcommon, libxrandr, mbedtls, miniupnpc, opengl, opusfile, pcre2, speechd, zstd, fontconfig" TERMUX_PKG_BUILD_DEPENDS="pulseaudio, yasm" TERMUX_PKG_PYTHON_COMMON_DEPS="scons" +TERMUX_PKG_AUTO_UPDATE=true +TERMUX_PKG_UPDATE_VERSION_REGEXP='\d+\.\d+(\.\d+)?' TERMUX_PKG_BUILD_IN_SRC=true termux_step_make() { @@ -44,9 +45,9 @@ termux_step_make() { CXX="$(command -v $CXX)" \ OBJCOPY="$(command -v $OBJCOPY)" \ STRIP="$(command -v $STRIP)" \ - CFLAGS="$CPPFLAGS $CFLAGS" \ - CXXFLAGS="$CPPFLAGS $CXXFLAGS" \ - LINKFLAGS="$LDFLAGS" \ + cflags="$CPPFLAGS $CFLAGS" \ + cxxflags="$CPPFLAGS $CXXFLAGS" \ + linkflags="$LDFLAGS -landroid-execinfo" \ CPPPATH="$TERMUX_PREFIX/include" \ LIBPATH="$TERMUX_PREFIX/lib" \ $system_libs \ diff --git a/x11-packages/godot/crypto_mbedtls.cpp.patch b/x11-packages/godot/crypto_mbedtls.cpp.patch deleted file mode 100644 index 1bd1864bb0..0000000000 --- a/x11-packages/godot/crypto_mbedtls.cpp.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- godot-4.0-stable/modules/mbedtls/crypto_mbedtls.cpp 2023-03-01 03:38:07.000000000 +0300 -+++ godot-4.0-stable/modules/mbedtls/crypto_mbedtls.cpp.patch 2023-03-04 01:02:23.259279050 +0300 -@@ -67,7 +67,7 @@ - if (p_public_only) { - ret = mbedtls_pk_parse_public_key(&pkey, out.ptr(), out.size()); - } else { -- ret = mbedtls_pk_parse_key(&pkey, out.ptr(), out.size(), nullptr, 0); -+ ret = mbedtls_pk_parse_key(&pkey, out.ptr(), out.size(), nullptr, 0, 0, nullptr); - } - // We MUST zeroize the memory for safety! - mbedtls_platform_zeroize(out.ptrw(), out.size()); -@@ -106,7 +106,7 @@ - if (p_public_only) { - ret = mbedtls_pk_parse_public_key(&pkey, (unsigned char *)p_string_key.utf8().get_data(), p_string_key.utf8().size()); - } else { -- ret = mbedtls_pk_parse_key(&pkey, (unsigned char *)p_string_key.utf8().get_data(), p_string_key.utf8().size(), nullptr, 0); -+ ret = mbedtls_pk_parse_key(&pkey, (unsigned char *)p_string_key.utf8().get_data(), p_string_key.utf8().size(), nullptr, 0, 0, nullptr); - } - ERR_FAIL_COND_V_MSG(ret, FAILED, "Error parsing key '" + itos(ret) + "'."); - -@@ -407,7 +407,7 @@ - size_t sig_size = 0; - unsigned char buf[MBEDTLS_MPI_MAX_SIZE]; - Vector out; -- int ret = mbedtls_pk_sign(&(key->pkey), type, p_hash.ptr(), size, buf, &sig_size, mbedtls_ctr_drbg_random, &ctr_drbg); -+ int ret = mbedtls_pk_sign(&(key->pkey), type, p_hash.ptr(), size, buf, sizeof(buf)/sizeof(char), &sig_size, mbedtls_ctr_drbg_random, &ctr_drbg); - ERR_FAIL_COND_V_MSG(ret, out, "Error while signing: " + itos(ret)); - out.resize(sig_size); - memcpy(out.ptrw(), buf, sig_size); diff --git a/x11-packages/godot/set_dir.patch b/x11-packages/godot/set_dir.patch index a8633a73a9..2feeaa1b97 100644 --- a/x11-packages/godot/set_dir.patch +++ b/x11-packages/godot/set_dir.patch @@ -2,22 +2,17 @@ diff --git a/modules/gltf/editor/editor_scene_importer_blend.cpp b/modules/gltf/ index 7dcdc8e..13e872c 100644 --- a/modules/gltf/editor/editor_scene_importer_blend.cpp +++ b/modules/gltf/editor/editor_scene_importer_blend.cpp -@@ -502,12 +502,12 @@ bool EditorFileSystemImportFormatSupportQueryBlend::query() { - } +@@ -450,9 +450,7 @@ #elif defined(UNIX_ENABLED) -- if (_autodetect_path("/usr/bin")) { -+ if (_autodetect_path("@TERMUX_PREFIX@/bin")) { - // Good. -- } else if (_autodetect_path("/usr/local/bin")) { -+ } else if (_autodetect_path("@TERMUX_PREFIX@/local/bin")) { - // Good - } else { -- _autodetect_path("/opt/blender/bin"); -+ _autodetect_path("@TERMUX_PREFIX@/opt/blender/bin"); - } + Vector find_paths = { +- "/usr/bin/blender", +- "/usr/local/bin/blender", +- "/opt/blender/bin/blender", ++ "@TERMUX_PREFIX@/bin/blender", + }; #endif - if (auto_detected_path != "") { + diff --git a/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs b/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs index b437c7e..882b22c 100644 --- a/modules/mono/editor/GodotTools/GodotTools/Build/DotNetFinder.cs diff --git a/x11-packages/godot/tls_context_mbedtls.h.patch b/x11-packages/godot/tls_context_mbedtls.h.patch deleted file mode 100644 index 804044b058..0000000000 --- a/x11-packages/godot/tls_context_mbedtls.h.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- godot-4.0-stable/modules/mbedtls/tls_context_mbedtls.h 2023-03-01 03:38:07.000000000 +0300 -+++ godot-4.0-stable/modules/mbedtls/tls_context_mbedtls.h.patch 2023-03-04 12:39:29.172894857 +0300 -@@ -37,7 +37,7 @@ - - #include "core/object/ref_counted.h" - --#include -+#include - #include - #include - #include diff --git a/x11-packages/godot/upnp.cpp.patch b/x11-packages/godot/upnp.cpp.patch index f9893ad927..f8dbb414e8 100644 --- a/x11-packages/godot/upnp.cpp.patch +++ b/x11-packages/godot/upnp.cpp.patch @@ -11,15 +11,15 @@ #include -@@ -144,7 +144,11 @@ - } +@@ -131,7 +131,11 @@ + GetUPNPUrls(&urls, &data, dev->get_description_url().utf8().get_data(), 0); char addr[16]; +#if (MINIUPNPC_API_VERSION >= 18) -+ int i = UPNP_GetValidIGD(devlist, urls, &data, (char *)&addr, 16, nullptr, 0); ++ int i = UPNP_GetValidIGD(devlist, &urls, &data, (char *)&addr, 16, nullptr, 0); +#else - int i = UPNP_GetValidIGD(devlist, urls, &data, (char *)&addr, 16); + int i = UPNP_GetValidIGD(devlist, &urls, &data, (char *)&addr, 16); +#endif if (i != 1) { - FreeUPNPUrls(urls); + FreeUPNPUrls(&urls); diff --git a/x11-packages/godot/wayland_thread.cpp.patch b/x11-packages/godot/wayland_thread.cpp.patch new file mode 100644 index 0000000000..a2dceb5570 --- /dev/null +++ b/x11-packages/godot/wayland_thread.cpp.patch @@ -0,0 +1,39 @@ ++++ ./platform/linuxbsd/wayland/wayland_thread.cpp +@@ -96,9 +96,29 @@ + return data; + } + ++#include + // Based on the wayland book's shared memory boilerplate (PD/CC0). + // See: https://wayland-book.com/surfaces/shared-memory.html + int WaylandThread::_allocate_shm_file(size_t size) { ++#ifdef __ANDROID__ ++ int fd, ret; ++ long flags; ++ fd = open("/dev/ashmem", O_RDWR | O_CLOEXEC); ++ if (fd < 0) ++ return fd; ++ ret = ioctl(fd, /* ASHMEM_SET_SIZE */ _IOW(0x77, 3, size_t), size); ++ if (ret < 0) ++ goto err; ++ flags = fcntl(fd, F_GETFD); ++ if (flags == -1) ++ goto err; ++ if (fcntl(fd, F_SETFD, flags | FD_CLOEXEC) == -1) ++ goto err; ++ return fd; ++ err: ++ close(fd); ++ return -1; ++#else + int retries = 100; + + do { +@@ -132,6 +152,7 @@ + } while (retries > 0 && errno == EEXIST); + + return -1; ++#endif + } + + // Return the content of a wl_data_offer.