SHA256
1
0
forked from pool/godot

Accepting request 1100435 from games

- Update to 4.1.1
- Update to 4.1

OBS-URL: https://build.opensuse.org/request/show/1100435
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/godot?expand=0&rev=30
This commit is contained in:
Dominique Leuenberger 2023-07-25 09:49:10 +00:00 committed by Git OBS Bridge
commit 4b90383de4
9 changed files with 177 additions and 121 deletions

View File

@ -5,7 +5,7 @@
<size unit="M">8192</size> <size unit="M">8192</size>
</physicalmemory> </physicalmemory>
<disk> <disk>
<size unit="G">10</size> <size unit="G">12</size>
</disk> </disk>
</hardware> </hardware>
<overwrite> <overwrite>

View File

@ -1,67 +0,0 @@
From: cunix@mail.de
Date: 2019-04-29 16:00:00
Subject: System certs as fallback for project certs
References: https://github.com/godotengine/godot/pull/22066#issuecomment-421565719
https://github.com/godotengine/godot/pull/22066#issuecomment-422528664
https://github.com/godotengine/godot/issues/22232
Upstream: offered to upstream
Rebased: 2023-03-03
If project has no value set for "network/ssl/certificates" (the default),
"default_certs" is not filled by function "load_default_certificates" because
we don't use builtin certs - BUILTIN_CERTS_ENABLED is not defined.
We use a distro specific "system_certs_path" as build option and apply it here
via "_SYSTEM_CERTS_PATH" (defined in included "core/io/certs_compressed.gen.h")
as fallback for certificates.
In result patch restores upstream behavior for certificate usage.
Difference is:
Where upstream by default uses hard coded certificates at build time, we hard
code path to the default certificates as "/var/lib/ca-certificates/ca-bundle.pem".
This bundle might be updated separately or admin can edit content of this file.
User can always define different path via Editor or Project settings.
See comments in patch for more details.
---
--- a/modules/mbedtls/crypto_mbedtls.cpp
+++ b/modules/mbedtls/crypto_mbedtls.cpp
@@ -45,10 +45,12 @@
#include <mbedtls/debug.h>
#include <mbedtls/md.h>
#include <mbedtls/pem.h>
+#include <string.h>
+
CryptoKey *CryptoKeyMbedTLS::create() {
return memnew(CryptoKeyMbedTLS);
}
Error CryptoKeyMbedTLS::load(String p_path, bool p_public_only) {
@@ -305,10 +307,22 @@
ERR_FAIL_COND(default_certs == nullptr);
if (!p_path.is_empty()) {
// Use certs defined in project settings.
default_certs->load(p_path);
+
+ } else if (strcmp(_SYSTEM_CERTS_PATH, "") != 0) {
+ // Use system certs only if user did not override in project settings
+ // and if _SYSTEM_CERTS_PATH is set.
+ // Should happen if Project Setting "network/ssl/certificates" is empty.
+ // Editor Setting "network/ssl/editor_ssl_certificates" is already set
+ // to "_SYSTEM_CERTS_PATH" by default -> This is caught by "if (p_path != "") {".
+ // But the same fallback might apply for certificates used by editor
+ // if user has set "network/ssl/editor_ssl_certificates" to "".
+ // "load_default_certificates" is only called twice with one of
+ // these parameters.
+ default_certs->load(_SYSTEM_CERTS_PATH);
}
#ifdef BUILTIN_CERTS_ENABLED
else {
// Use builtin certs only if user did not override it in project settings.
PackedByteArray out;

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8ce3e2170ac5e043a7ce9c6f839ef67eddd83e24c0728d1afc76e678d4f37552
size 30203636

View File

@ -1 +0,0 @@
8ce3e2170ac5e043a7ce9c6f839ef67eddd83e24c0728d1afc76e678d4f37552 godot-4.0.3-stable.tar.xz

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cd3cee1364020eb069f7cfdf2c484ba54fdeadc5a4d23fb9732d8e52923e1a71
size 30681136

View File

@ -0,0 +1 @@
cd3cee1364020eb069f7cfdf2c484ba54fdeadc5a4d23fb9732d8e52923e1a71 godot-4.1.1-stable.tar.xz

View File

@ -1,3 +1,131 @@
-------------------------------------------------------------------
Wed Jul 19 12:00:00 UTC 2023 - cunix@mail.de
- Update to 4.1.1
Added:
* 3.x compatibility for animation loop mode
Changed:
* Allow unbundling brotli to use system library
* Check parameter validity in "Object::set_script"
* Focus current node after connecting
* Sort project tags before saving
* Project converter: Use same rendering driver as Project Manager
* Take eye offset into account for depth in StandardMaterial3D
Fixed:
* build with "use_sowrap=no" and various warnings/errors
* "Camera2D.rotating" not being converted and reversed properly
* 3D viewport grid disappearing on scene tab changes
* "tween_property" on "Basis" to properly update its value
* dropping files from "res://" to "res://"
* Do not change a node unique name to the same name
* Emit "history_changed" on merged UndoRedo actions
* Cursor behavior for multiselect in Tree while holding CTRL
* Invalid minimum size for translated messages in option button
* Fallback logic of "OS::shell_show_in_file_manage"`
* Avoid freeze when interacting with menus on Wayland
* "move_to_trash" wrongly reporting files as not found
* Threading bug in Vulkan rendering device
- "xkb_loaded.patch" dropped: accepted upstream
-------------------------------------------------------------------
Fri Jul 7 12:00:00 UTC 2023 - cunix@mail.de
- Update to 4.1
Added:
* Platform-specific CA bundles
* "Center View" button in 2D editor
* Proper snapping to tile polygon editor
* Ability to look-at in 3D model-space
* Move control points button to Path3D Editor
* "TRANS_SPRING" mode to "Tween"
* Frame delta smoothing option
* Square fill mode to GradientTexture2D
* "ProjectSettings.set_as_basic()" and "ProjectSettings.set_as_internal()"
exposed to scripting
* Let user scripts disable thread safety checks
* multi-window for code and shader editors
* Remember snapping options per-project
* Project tags
* Make create folder popup support nested folders
* Relative path support for "EditorPlugin.add_autoload_singleton"
* Export options for EditorExportPlugins
* Editor support for icons of custom, scripted, and GDExtension classes
* Backwards compatibility system for GDExtension
* GDExtensions allowed to add editor plugins
* GDExtension "@since" attribute
* Boolean operators for all Variant types
* Static variables in GDScript
* Multiline cells in "Tree"
* horizontal/vertical "custom_step" editor property for "ScrollContainer"
* "screen_get_pixel" method
* Vertical icon alignment for buttons
* All auto-wrap modes in "TextEdit" exposed
* Tab stops support in "Label" and "RichTextLabel"
* "Window.get_window_id()"
* Method to check if native window is focused
* Support for extending GLTF with more texture formats and support WebP
* non-standard OBJ vertex entries supported
* NavigationAgent path postprocessing and pathfinding algorithm options exposed
* "audio/general/text_to_speech" project setting to enable/disable TTS
* Default error handler for X11 to avoid crashes
* Shader cache for GLES3
* Vulkan pipeline caching
* NoiseTexture3D
* "EXPOSURE" and "LIGHT_IS_DIRECTIONAL" built-in for spatial shaders
* Option for ButtonGroups to be unpressed
Changed:
* Node processing refactored to allow Scene multi-threading
* Node children management optimized
* Replace invalid characters in node names by underscores
instead of removing them
* Remove constrained view in the 2D editor
* Reorganize context menu in FileSystem dock
* Preserve scene unique names when saving branch as scene
* Allow showing messages from threads in "Editor Log"
* Store sensitive export options in dedicated credentials file
* Rework GDExtension interface from a struct to loading function pointers
* Make "TextureButton" and "Button" update on texture change
* Use defined key mapping for closing popups and dialogs
* Disable texture format import overrides by default
* Navigation mesh edge connections optional
* Disable weak crypto and TLS versions
* Propagate previously unused "NOTIFICATION_WORLD_2D_CHANGED",
make CanvasItem/CollisionObject2D use it
* Rework particle turbulence
* (Re-)Implement "Light3D.shadow_reverse_cull_face"
Fixed:
* 3D viewport front/rear axis and "Focus" button
* AudioListener2D ignoring rotation for positional audio
* Trim when importing WAV
* Invalid 2D global position when read outside tree
* "View Owners" dialog not acknowledging that some resources aren't scenes
* Avoid error spam on first opening of a not yet imported project
* GDExtension Variant type conversion
* GDScript access to identifiers that are reserved keywords
* Ensure that controls update all their sizing information when required
* Input: just pressed and released with short presses
* Sliding window problem
* Temporary file permissions
and much more:
https://downloads.tuxfamily.org/godotengine/4.1/Godot_v4.1-stable_changelog_chrono.txt
- "certs_fallback.patch" dropped:
godot is now aware of openSUSE certs in
"/var/lib/ca-certificates/ca-bundle.pem"
- "tinyexr_thirdparty_upstream.patch" dropped:
bundled tinyexr 1.0.5 has patch applied
- "xkb_loaded.patch" added for x11 build failure with "use_sowrap=no"
------------------------------------------------------------------- -------------------------------------------------------------------
Mon May 22 12:00:00 UTC 2023 - cunix@mail.de Mon May 22 12:00:00 UTC 2023 - cunix@mail.de

View File

@ -21,10 +21,15 @@
%define faster_build 0 %define faster_build 0
%define _buildshell /bin/bash %define _buildshell /bin/bash
# not needed anymore since 4.1
%define ca_bundle %{_localstatedir}/lib/ca-certificates/ca-bundle.pem %define ca_bundle %{_localstatedir}/lib/ca-certificates/ca-bundle.pem
# building with default gcc 7.5 fails since 4.1 on Leap
# https://github.com/godotengine/godot/issues/79352
%define compiler_version_leap 10
Name: godot Name: godot
Version: 4.0.3 Version: 4.1.1
Release: 0 Release: 0
Summary: Cross-Platform Game Engine with an Integrated Editor Summary: Cross-Platform Game Engine with an Integrated Editor
License: MIT License: MIT
@ -32,15 +37,16 @@ Group: Development/Tools/Other
URL: https://godotengine.org/ URL: https://godotengine.org/
Source0: https://downloads.tuxfamily.org/godotengine/%{version}/%{name}-%{version}-stable.tar.xz Source0: https://downloads.tuxfamily.org/godotengine/%{version}/%{name}-%{version}-stable.tar.xz
Source1: https://downloads.tuxfamily.org/godotengine/%{version}/%{name}-%{version}-stable.tar.xz.sha256 Source1: https://downloads.tuxfamily.org/godotengine/%{version}/%{name}-%{version}-stable.tar.xz.sha256
# Use system certificates as fallback for certificates
Patch0: certs_fallback.patch
# Heap-buffer-overflow in bundled tinyexr
Patch1: tinyexr_thirdparty_upstream.patch
BuildRequires: Mesa-devel BuildRequires: Mesa-devel
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: fdupes BuildRequires: fdupes
%if %{suse_version} > 1500
BuildRequires: gcc BuildRequires: gcc
BuildRequires: gcc-c++ BuildRequires: gcc-c++
%else
BuildRequires: gcc%{compiler_version_leap}
BuildRequires: gcc%{compiler_version_leap}-c++
%endif
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: python3 BuildRequires: python3
BuildRequires: scons BuildRequires: scons
@ -49,6 +55,7 @@ BuildRequires: yasm-devel
BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glesv2) BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(libpcre2-32) BuildRequires: pkgconfig(libpcre2-32)
BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libpulse)
@ -86,6 +93,8 @@ BuildRequires: pkgconfig(freetype2) >= 2.10.2
# Using bundled freetype2 throws build errors, if # Using bundled freetype2 throws build errors, if
# we don't use bundled libpng and zlib as well. # we don't use bundled libpng and zlib as well.
BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libbrotlicommon)
BuildRequires: pkgconfig(libbrotlidec)
BuildRequires: glslang-devel BuildRequires: glslang-devel
BuildRequires: mbedtls-devel < 3 BuildRequires: mbedtls-devel < 3
BuildRequires: pkgconfig(graphite2) BuildRequires: pkgconfig(graphite2)
@ -132,20 +141,20 @@ Provides: bundled(Tangent_Space_Normal_Maps)
Provides: bundled(amd-fsr) = 1.0.2 Provides: bundled(amd-fsr) = 1.0.2
Provides: bundled(astcenc) = 4.4.0 Provides: bundled(astcenc) = 4.4.0
Provides: bundled(basis_universal) = 1.16.4 Provides: bundled(basis_universal) = 1.16.4
Provides: bundled(brotli)
Provides: bundled(cvtt) Provides: bundled(cvtt)
Provides: bundled(doctest) = 2.4.11 Provides: bundled(doctest) = 2.4.11
Provides: bundled(etcpak) = 1.0 Provides: bundled(etcpak) = 1.0
Provides: bundled(glad) = 2.0.2 Provides: bundled(glad) = 2.0.4
Provides: bundled(google-droid-fonts) Provides: bundled(google-droid-fonts)
Provides: bundled(hqx) Provides: bundled(hqx)
Provides: bundled(icu4c) = 72.1 Provides: bundled(icu4c) = 73.1
Provides: bundled(ifaddrs-android) Provides: bundled(ifaddrs-android)
Provides: bundled(jpeg-compressor) = 2.00 Provides: bundled(jpeg-compressor) = 2.00
Provides: bundled(meshoptimizer) Provides: bundled(meshoptimizer)
Provides: bundled(minimp3) Provides: bundled(minimp3)
Provides: bundled(msdfgen) = 1.9.2 Provides: bundled(msdfgen) = 1.10
Provides: bundled(noto-sans-fonts) Provides: bundled(noto-sans-fonts)
Provides: bundled(nvapi) = R525
Provides: bundled(oidn) = 1.9.2 Provides: bundled(oidn) = 1.9.2
Provides: bundled(openxr) = 1.0.26 Provides: bundled(openxr) = 1.0.26
Provides: bundled(pcg) Provides: bundled(pcg)
@ -153,17 +162,17 @@ Provides: bundled(polyclipping)
Provides: bundled(polypartition) Provides: bundled(polypartition)
Provides: bundled(pvrtccompressor) Provides: bundled(pvrtccompressor)
Provides: bundled(smaz) Provides: bundled(smaz)
Provides: bundled(spirv-reflect) = sdk-1.3.231.1 Provides: bundled(spirv-reflect) = sdk-1.3.250.0
Provides: bundled(stb) Provides: bundled(stb)
Provides: bundled(thorvg) = 0.9.0 Provides: bundled(thorvg) = 0.9.0
Provides: bundled(tinyexr) = 1.0.1 Provides: bundled(tinyexr) = 1.0.5
Provides: bundled(vhacd) Provides: bundled(vhacd)
Provides: bundled(volk) = sdk-1.3.231.1 Provides: bundled(volk) = sdk-1.3.250.0
Provides: bundled(vulkan) = sdk-1.3.231.1 Provides: bundled(vulkan) = sdk-1.3.250.0
Provides: bundled(yuv2rgb) Provides: bundled(yuv2rgb)
# Can be unbundled if packaged # Can be unbundled if packaged
Provides: bundled(recastnavigation) Provides: bundled(recastnavigation) = 1.6.0
Provides: bundled(squish) = 1.15 Provides: bundled(squish) = 1.15
Provides: bundled(xatlas) Provides: bundled(xatlas)
@ -176,14 +185,15 @@ Provides: bundled(embree) = 3.13.5
%if 0%{?suse_version} > 1500 %if 0%{?suse_version} > 1500
%else %else
Provides: bundled(glslang) = 11.12.0 Provides: bundled(brotli)
Provides: bundled(glslang) = 12.2.0
# see comments for freetype2, libpng and zlib Factory BuildRequires # see comments for freetype2, libpng and zlib Factory BuildRequires
Provides: bundled(freetype2) = 2.12.1 Provides: bundled(freetype2) = 2.13.0
Provides: bundled(graphite) = 1.3.14 Provides: bundled(graphite) = 1.3.14
Provides: bundled(harfbuzz) = 6.0.0 Provides: bundled(harfbuzz) = 7.3.0
Provides: bundled(libpng) = 1.6.38 Provides: bundled(libpng) = 1.6.38
Provides: bundled(libzstd) Provides: bundled(libzstd) = 1.5.5
Provides: bundled(zlib) Provides: bundled(zlib)
%if 0%{?sle_version} < 150200 %if 0%{?sle_version} < 150200
Provides: bundled(mbedtls) = 2.28.3 Provides: bundled(mbedtls) = 2.28.3
@ -230,8 +240,6 @@ Bash command line completion support for %{name} and %{name}-runner
%prep %prep
%setup -q -n %{name}-%{version}-stable %setup -q -n %{name}-%{version}-stable
%patch0 -p1
%patch1 -p1
cp thirdparty/README.md thirdparty_README.md cp thirdparty/README.md thirdparty_README.md
@ -242,7 +250,8 @@ if [[ -z "$(desktop-file-validate misc/dist/linux/org.godotengine.Godot.desktop)
then then
# desktop-file-utils version >= 0.25 # desktop-file-utils version >= 0.25
echo desktop-file-utils is up to date and recognizes PrefersNonDefaultGPU. echo desktop-file-utils is up to date and recognizes PrefersNonDefaultGPU.
# rpmlint complains nevertheless (on Tumbleweed). A false negative? # rpmlint complains nevertheless with older rpmlint-mini.
# Tumbleweed is fixed with update of rpmlint-mini.
# see https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys # see https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys
# Perhaps because rpmlint-mini includes as of today (18.09.2020) # Perhaps because rpmlint-mini includes as of today (18.09.2020)
# desktop-file-utils-0.24 while we checked for available default version >= 0.25 # desktop-file-utils-0.24 while we checked for available default version >= 0.25
@ -277,7 +286,7 @@ unbundle_libs=('certs' 'libogg' 'libtheora' 'libvorbis' \
# Unbundle more libs for Tumbleweed # Unbundle more libs for Tumbleweed
%if %{suse_version} > 1500 %if %{suse_version} > 1500
unbundle_libs+=('freetype' 'glslang' 'graphite' 'harfbuzz' 'libpng' 'mbedtls' 'zlib' 'zstd') unbundle_libs+=('brotli' 'freetype' 'glslang' 'graphite' 'harfbuzz' 'libpng' 'mbedtls' 'zlib' 'zstd')
%else %else
# Unbundle more libs for coming Leap # Unbundle more libs for coming Leap
%if 0%{?sle_version} >= 150200 && 0%{?is_opensuse} %if 0%{?sle_version} >= 150200 && 0%{?is_opensuse}
@ -296,12 +305,23 @@ done
mkdir -pv thirdparty/certs mkdir -pv thirdparty/certs
touch thirdparty/certs/ca-certificates.crt touch thirdparty/certs/ca-certificates.crt
use_sowrap="use_sowrap=no "
rm -rf thirdparty/linuxbsd_headers rm -rf thirdparty/linuxbsd_headers
%if %{suse_version} > 1500
%define ccflags %{optflags}
compiler=""
linkflags=""
%else
%define ccflags %{optflags} -fPIE
compiler="CC=gcc-%{compiler_version_leap} CXX=g++-%{compiler_version_leap}"
linkflags="LINKFLAGS=-pie"
%endif
%define build_args_common %{?_smp_mflags} \\\ %define build_args_common %{?_smp_mflags} \\\
progress=no verbose=yes udev=yes use_lto=1 \\\ progress=no verbose=yes udev=yes use_lto=1 \\\
use_static_cpp=no CCFLAGS='%{optflags}' \\\ use_static_cpp=no CCFLAGS='%{ccflags}' $linkflags $compiler \\\
system_certs_path=%{ca_bundle} use_sowrap=no $system_libs system_certs_path=%{ca_bundle} $use_sowrap $system_libs
%ifarch aarch64 %arm %ifarch aarch64 %arm
# Disable unsupported features - https://github.com/godotengine/godot/issues/48297#issuecomment-829165296 # Disable unsupported features - https://github.com/godotengine/godot/issues/48297#issuecomment-829165296

View File

@ -1,25 +0,0 @@
From cc1b199dd17b700c3130a53866ea462ab88e7f82 Mon Sep 17 00:00:00 2001
From: 0xdd96 <1011085630@qq.com>
Date: Wed, 6 Jul 2022 12:14:50 +0800
Subject: [PATCH] Add bounds check to address #169
References: https://bugzilla.opensuse.org/show_bug.cgi?id=1203278
https://github.com/syoyo/tinyexr/issues/169
https://github.com/syoyo/tinyexr/pull/170/commits/cc1b199dd17b700c3130a53866ea462ab88e7f82
Rebased: 20220912 by cunix
diff -r -U 5 a/thirdparty/tinyexr/tinyexr.h b/thirdparty/tinyexr/tinyexr.h
--- a/thirdparty/tinyexr/tinyexr.h
+++ b/thirdparty/tinyexr/tinyexr.h
@@ -1454,11 +1454,11 @@
in += count;
} else {
int count = *in++;
inLength -= 2;
- if (0 > (maxLength -= count + 1)) return 0;
+ if (0 > (maxLength -= count + 1) || inLength < 0) return 0;
memset(out, *reinterpret_cast<const char *>(in), count + 1);
out += count + 1;
in++;