Hello,
This updates games/godot to the latest stable 3.2.1. For about
two
months now me and a friend have been using this on a nearly daily
basis.
On my machine (amdgpu) it leaves a core file around but otherwise
is
working; on my friend machine (inteldrm) it doesn't core dumps.
We
tested everything but the networking stuff AFAIK.
I didn't have the time (yet) to fully debug this issue.
Do I have to reset the REVISION back to 0 since this changes the
port
version?
Passes portcheck and port-lib-depends-check.
Some demo projects that can be used to test the engine can be
found
here:
https://github.com/godotengine/godot-demo-projects
Some notes about the patch:
- pulseaudio is still disabled: I have a WIP patch (not included)
to
bring back audio support using libao. I plan to submit it soon
after this update
- the -Wno-deprecated-register is to avoid errors when it
includes
headers from /usr/X11R6/include.
- in 3.1 they replaced openssl with mbedtls, hence the removal of
ssl
from WANTLIB
- an included library, thirdparty/minizip, uses z_crc_t which
isn't
defined by the zlib in base. I've copied the definition of
z_crc_t
from a newer zlib (1.2.11).
comments?
Index: Makefile
===================================================================
RCS file: /cvs/ports/games/godot/Makefile,v
retrieving revision 1.10
diff -u -p -r1.10 Makefile
--- Makefile 12 Apr 2020 13:30:55 -0000 1.10
+++ Makefile 29 May 2020 13:03:17 -0000
@@ -2,7 +2,7 @@
COMMENT = 2D and 3D game engine
-V = 3.0.6
+V = 3.2.1
DISTNAME = godot-${V}-stable
PKGNAME = godot-${V}
CATEGORIES = games
@@ -15,9 +15,9 @@ PERMIT_PACKAGE = Yes
WANTLIB += ${COMPILER_LIBCXX}
WANTLIB += GL X11 Xau Xcursor Xdmcp Xext Xfixes Xi Xinerama Xrandr
-WANTLIB += Xrender c crypto enet execinfo freetype intl m mpcdec
-WANTLIB += ogg opus opusfile png ssl theora theoradec vorbis vorbisfile
-WANTLIB += webp xcb z pcre2-32 vpx zstd
+WANTLIB += Xrender c enet execinfo freetype intl m mpcdec ogg opus
+WANTLIB += opusfile png theora theoradec vorbis vorbisfile webp
+WANTLIB += xcb z pcre2-32 vpx zstd
COMPILER = base-clang ports-gcc base-gcc
@@ -32,7 +32,7 @@ MODULES = devel/scons
MODSCONS_FLAGS = CC="${CC}" \
CXX="${CXX}" \
CFLAGS="${CFLAGS}" \
- CXXFLAGS="${CXXFLAGS}" \
+ CXXFLAGS="${CXXFLAGS} -Wno-deprecated-register" \
LINKFLAGS="${LDFLAGS} -lintl -lmpcdec" \
builtin_enet=no \
builtin_freetype=no \
@@ -44,7 +44,6 @@ MODSCONS_FLAGS = CC="${CC}" \
builtin_libvorbis=no \
builtin_libvpx=no \
builtin_libwebp=no \
- builtin_openssl=no \
builtin_opus=no \
builtin_pcre2=no \
builtin_zlib=no \
Index: distinfo
===================================================================
RCS file: /cvs/ports/games/godot/distinfo,v
retrieving revision 1.3
diff -u -p -r1.3 distinfo
--- distinfo 25 Aug 2018 19:20:29 -0000 1.3
+++ distinfo 29 May 2020 13:03:17 -0000
@@ -1,2 +1,2 @@
-SHA256 (godot-3.0.6-stable.tar.xz) = LfHLNqAMaHrnShHX31vcEyyBapNOJpbswzgnAI/5xrk=
-SIZE (godot-3.0.6-stable.tar.xz) = 12517428
+SHA256 (godot-3.2.1-stable.tar.xz) = VWtWQHn7GyGgUyDDWSaLIDLIfYs7+qT9EE6/nJCauH0=
+SIZE (godot-3.2.1-stable.tar.xz) = 14066488
Index: patches/patch-core_io_SCsub
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-core_io_SCsub,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-core_io_SCsub
--- patches/patch-core_io_SCsub 27 Apr 2018 07:32:53 -0000 1.1.1.1
+++ patches/patch-core_io_SCsub 29 May 2020 13:03:17 -0000
@@ -9,9 +9,9 @@ based on github issue #17374
Index: core/io/SCsub
--- core/io/SCsub.orig
+++ core/io/SCsub
-@@ -5,4 +5,4 @@ Import('env')
- env.add_source_files(env.core_sources, "*.cpp")
+@@ -3,3 +3,5 @@
+ Import('env')
- Export('env')
--
+ env.add_source_files(env.core_sources, "*.cpp")
++
+env.Append(CCFLAGS="-DZSTD_STATIC_LINKING_ONLY")
Index: patches/patch-core_io_compression_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-core_io_compression_cpp,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-core_io_compression_cpp
--- patches/patch-core_io_compression_cpp 27 Apr 2018 07:32:53 -0000 1.1.1.1
+++ patches/patch-core_io_compression_cpp 29 May 2020 13:03:17 -0000
@@ -9,17 +9,16 @@ based on github issue #17374
Index: core/io/compression.cpp
--- core/io/compression.cpp.orig
+++ core/io/compression.cpp
-@@ -79,16 +79,9 @@ int Compression::compress(uint8_t *p_dst, const uint8_
+@@ -80,16 +80,8 @@ int Compression::compress(uint8_t *p_dst, const uint8_
} break;
case MODE_ZSTD: {
- ZSTD_CCtx *cctx = ZSTD_createCCtx();
-- ZSTD_CCtx_setParameter(cctx, ZSTD_p_compressionLevel, zstd_level);
+- ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, zstd_level);
- if (zstd_long_distance_matching) {
-- ZSTD_CCtx_setParameter(cctx, ZSTD_p_enableLongDistanceMatching, 1);
-- ZSTD_CCtx_setParameter(cctx, ZSTD_p_windowLog, zstd_window_log_size);
+- ZSTD_CCtx_setParameter(cctx, ZSTD_c_enableLongDistanceMatching, 1);
+- ZSTD_CCtx_setParameter(cctx, ZSTD_c_windowLog, zstd_window_log_size);
- }
-+
int max_dst_size = get_max_compressed_buffer_size(p_src_size, MODE_ZSTD);
- int ret = ZSTD_compressCCtx(cctx, p_dst, max_dst_size, p_src, p_src_size, zstd_level);
- ZSTD_freeCCtx(cctx);
@@ -28,23 +27,24 @@ Index: core/io/compression.cpp
} break;
}
-@@ -173,11 +166,8 @@ int Compression::decompress(uint8_t *p_dst, int p_dst_
+@@ -174,13 +166,7 @@ int Compression::decompress(uint8_t *p_dst, int p_dst_
return total;
} break;
case MODE_ZSTD: {
- ZSTD_DCtx *dctx = ZSTD_createDCtx();
-- if (zstd_long_distance_matching) ZSTD_DCtx_setMaxWindowSize(dctx, 1 << zstd_window_log_size);
+- if (zstd_long_distance_matching) {
+- ZSTD_DCtx_setParameter(dctx, ZSTD_d_windowLogMax, zstd_window_log_size);
+- }
- int ret = ZSTD_decompressDCtx(dctx, p_dst, p_dst_max_size, p_src, p_src_size);
- ZSTD_freeDCtx(dctx);
- return ret;
-+
+ return ZSTD_decompress(p_dst, p_dst_max_size, p_src, p_src_size);
} break;
}
-@@ -187,5 +177,3 @@ int Compression::decompress(uint8_t *p_dst, int p_dst_
+@@ -190,5 +176,3 @@ int Compression::decompress(uint8_t *p_dst, int p_dst_
int Compression::zlib_level = Z_DEFAULT_COMPRESSION;
int Compression::gzip_level = Z_DEFAULT_COMPRESSION;
int Compression::zstd_level = 3;
-bool Compression::zstd_long_distance_matching = false;
--int Compression::zstd_window_log_size = 27;
+-int Compression::zstd_window_log_size = 27; // ZSTD_WINDOWLOG_LIMIT_DEFAULT
Index: patches/patch-core_project_settings_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-core_project_settings_cpp,v
retrieving revision 1.2
diff -u -p -r1.2 patch-core_project_settings_cpp
--- patches/patch-core_project_settings_cpp 25 Aug 2018 19:20:29 -0000 1.2
+++ patches/patch-core_project_settings_cpp 29 May 2020 13:03:17 -0000
@@ -9,8 +9,8 @@ based on github issue #17374
Index: core/project_settings.cpp
--- core/project_settings.cpp.orig
+++ core/project_settings.cpp
-@@ -1041,14 +1041,11 @@ ProjectSettings::ProjectSettings() {
- GLOBAL_DEF("debug/settings/profiler/max_functions", 16384);
+@@ -1202,14 +1202,11 @@ ProjectSettings::ProjectSettings() {
+ custom_prop_info["debug/settings/profiler/max_functions"] = PropertyInfo(Variant::INT, "debug/settings/profiler/max_functions", PROPERTY_HINT_RANGE, "128,65535,1");
//assigning here, because using GLOBAL_GET on every block for compressing can be slow
- Compression::zstd_long_distance_matching = GLOBAL_DEF("compression/formats/zstd/long_distance_matching", false);
Index: patches/patch-core_safe_refcount_h
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-core_safe_refcount_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-core_safe_refcount_h
--- patches/patch-core_safe_refcount_h 2 Sep 2019 18:20:12 -0000 1.1
+++ patches/patch-core_safe_refcount_h 29 May 2020 13:03:17 -0000
@@ -7,57 +7,65 @@ https://github.com/godotengine/godot/pul
Index: core/safe_refcount.h
--- core/safe_refcount.h.orig
+++ core/safe_refcount.h
-@@ -99,8 +99,8 @@ static _ALWAYS_INLINE_ T atomic_exchange_if_greater(re
-
- /* Implementation for GCC & Clang */
-
--// GCC guarantees atomic intrinsics for sizes of 1, 2, 4 and 8 bytes.
--// Clang states it supports GCC atomic builtins.
-+#include <stdbool.h>
-+#include <atomic>
-
- template <class T>
- static _ALWAYS_INLINE_ T atomic_conditional_increment(register T *pw) {
-@@ -109,7 +109,7 @@ static _ALWAYS_INLINE_ T atomic_conditional_increment(
- T tmp = static_cast<T const volatile &>(*pw);
- if (tmp == 0)
- return 0; // if zero, can't add to it anymore
-- if (__sync_val_compare_and_swap(pw, tmp, tmp + 1) == tmp)
-+ if (__atomic_compare_exchange_n(pw, &tmp, tmp + 1, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) == true)
- return tmp + 1;
- }
- }
-@@ -117,25 +117,25 @@ static _ALWAYS_INLINE_ T atomic_conditional_increment(
+@@ -55,33 +55,26 @@ static _ALWAYS_INLINE_ T atomic_conditional_increment(
template <class T>
- static _ALWAYS_INLINE_ T atomic_decrement(register T *pw) {
+ static _ALWAYS_INLINE_ T atomic_decrement(volatile T *pw) {
-- return __sync_sub_and_fetch(pw, 1);
+- (*pw)--;
+-
+- return *pw;
+ return __atomic_sub_fetch(pw, 1, __ATOMIC_SEQ_CST);
}
template <class T>
- static _ALWAYS_INLINE_ T atomic_increment(register T *pw) {
+ static _ALWAYS_INLINE_ T atomic_increment(volatile T *pw) {
-- return __sync_add_and_fetch(pw, 1);
+- (*pw)++;
+-
+- return *pw;
+ return __atomic_add_fetch(pw, 1, __ATOMIC_SEQ_CST);
}
template <class T, class V>
- static _ALWAYS_INLINE_ T atomic_sub(register T *pw, register V val) {
+ static _ALWAYS_INLINE_ T atomic_sub(volatile T *pw, volatile V val) {
+
+- (*pw) -= val;
-- return __sync_sub_and_fetch(pw, val);
+- return *pw;
+ return __atomic_sub_fetch(pw, val, __ATOMIC_SEQ_CST);
}
template <class T, class V>
- static _ALWAYS_INLINE_ T atomic_add(register T *pw, register V val) {
+ static _ALWAYS_INLINE_ T atomic_add(volatile T *pw, volatile V val) {
-- return __sync_add_and_fetch(pw, val);
+- (*pw) += val;
+-
+- return *pw;
+ return __atomic_add_fetch(pw, val, __ATOMIC_SEQ_CST);
}
template <class T, class V>
-@@ -145,7 +145,7 @@ static _ALWAYS_INLINE_ T atomic_exchange_if_greater(re
+@@ -97,8 +90,8 @@ static _ALWAYS_INLINE_ T atomic_exchange_if_greater(vo
+
+ /* Implementation for GCC & Clang */
+
+-// GCC guarantees atomic intrinsics for sizes of 1, 2, 4 and 8 bytes.
+-// Clang states it supports GCC atomic builtins.
++#include <stdbool.h>
++#include <atomic>
+
+ template <class T>
+ static _ALWAYS_INLINE_ T atomic_conditional_increment(volatile T *pw) {
+@@ -107,7 +100,7 @@ static _ALWAYS_INLINE_ T atomic_conditional_increment(
+ T tmp = static_cast<T const volatile &>(*pw);
+ if (tmp == 0)
+ return 0; // if zero, can't add to it anymore
+- if (__sync_val_compare_and_swap(pw, tmp, tmp + 1) == tmp)
++ if (__atomic_compare_exchange_n(pw, &tmp, tmp + 1, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) == true)
+ return tmp + 1;
+ }
+ }
+@@ -143,7 +136,7 @@ static _ALWAYS_INLINE_ T atomic_exchange_if_greater(vo
T tmp = static_cast<T const volatile &>(*pw);
if (tmp >= val)
return tmp; // already greater, or equal
Index: patches/patch-drivers_unix_os_unix_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-drivers_unix_os_unix_cpp,v
retrieving revision 1.3
diff -u -p -r1.3 patch-drivers_unix_os_unix_cpp
--- patches/patch-drivers_unix_os_unix_cpp 25 Aug 2018 19:20:29 -0000 1.3
+++ patches/patch-drivers_unix_os_unix_cpp 29 May 2020 13:03:17 -0000
@@ -1,11 +1,11 @@
$OpenBSD: patch-drivers_unix_os_unix_cpp,v 1.3 2018/08/25 19:20:29 thfr Exp $
-- hardcode executable path
+hardcode executable path
Index: drivers/unix/os_unix.cpp
--- drivers/unix/os_unix.cpp.orig
+++ drivers/unix/os_unix.cpp
-@@ -462,7 +462,7 @@ String OS_Unix::get_executable_path() const {
+@@ -510,7 +510,7 @@ String OS_Unix::get_executable_path() const {
#elif defined(__OpenBSD__)
char resolved_path[MAXPATHLEN];
Index: patches/patch-main_main_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-main_main_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-main_main_cpp
--- patches/patch-main_main_cpp 25 Aug 2018 19:20:29 -0000 1.1
+++ patches/patch-main_main_cpp 29 May 2020 13:03:17 -0000
@@ -5,8 +5,8 @@ log on falling back to dummy audio drive
Index: main/main.cpp
--- main/main.cpp.orig
+++ main/main.cpp
-@@ -938,6 +938,10 @@ Error Main::setup(const char *execpath, int argc, char
- audio_driver = GLOBAL_DEF("audio/driver", OS::get_singleton()->get_audio_driver_name(0));
+@@ -1084,6 +1084,10 @@ Error Main::setup(const char *execpath, int argc, char
+ audio_driver = GLOBAL_DEF_RST("audio/driver", OS::get_singleton()->get_audio_driver_name(0));
}
+ if (audio_driver == "Dummy") {
Index: patches/patch-platform_uwp_export_export_cpp
===================================================================
RCS file: patches/patch-platform_uwp_export_export_cpp
diff -N patches/patch-platform_uwp_export_export_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-platform_uwp_export_export_cpp 29 May 2020 13:03:17 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+fix comparison of integers of different signs
+
+Index: platform/uwp/export/export.cpp
+--- platform/uwp/export/export.cpp.orig
++++ platform/uwp/export/export.cpp
+@@ -554,7 +554,7 @@ Error AppxPackager::add_file(String p_file_name, const
+ //package->store_buffer(strm_out.ptr(), strm.total_out - total_out_before);
+ int start = file_buffer.size();
+ file_buffer.resize(file_buffer.size() + (strm.total_out - total_out_before));
+- for (uint64_t i = 0; i < (strm.total_out - total_out_before); i++)
++ for (int64_t i = 0; i < (strm.total_out - total_out_before); i++)
+ file_buffer.write[start + i] = strm_out[i];
+
+ deflateEnd(&strm);
Index: patches/patch-platform_x11_detect_py
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-platform_x11_detect_py,v
retrieving revision 1.1
diff -u -p -r1.1 patch-platform_x11_detect_py
--- patches/patch-platform_x11_detect_py 25 Aug 2018 19:20:29 -0000 1.1
+++ patches/patch-platform_x11_detect_py 29 May 2020 13:03:17 -0000
@@ -5,12 +5,13 @@ remove hardcoded -O2, found by bcallah@
Index: platform/x11/detect.py
--- platform/x11/detect.py.orig
+++ platform/x11/detect.py
-@@ -84,7 +84,7 @@ def configure(env):
- env.Prepend(CCFLAGS=['-g2'])
+@@ -96,7 +96,8 @@ def configure(env):
elif (env["target"] == "release_debug"):
-- env.Prepend(CCFLAGS=['-O2', '-ffast-math', '-DDEBUG_ENABLED'])
-+ env.Prepend(CCFLAGS=['-ffast-math', '-DDEBUG_ENABLED'])
- if (env["debug_symbols"] == "yes"):
- env.Prepend(CCFLAGS=['-g1'])
- if (env["debug_symbols"] == "full"):
+ if (env["optimize"] == "speed"): #optimize for speed (default)
+- env.Prepend(CCFLAGS=['-O2'])
++ # env.Prepend(CCFLAGS=['-O2'])
++ pass
+ else: #optimize for size
+ env.Prepend(CCFLAGS=['-Os'])
+ env.Prepend(CPPDEFINES=['DEBUG_ENABLED'])
Index: patches/patch-platform_x11_os_x11_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-platform_x11_os_x11_cpp,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-platform_x11_os_x11_cpp
--- patches/patch-platform_x11_os_x11_cpp 27 Apr 2018 07:32:53 -0000 1.1.1.1
+++ patches/patch-platform_x11_os_x11_cpp 29 May 2020 13:03:17 -0000
@@ -5,7 +5,7 @@ fix libXrandr library name
Index: platform/x11/os_x11.cpp
--- platform/x11/os_x11.cpp.orig
+++ platform/x11/os_x11.cpp
-@@ -160,7 +160,7 @@ Error OS_X11::initialize(const VideoMode &p_desired, i
+@@ -163,7 +163,7 @@ Error OS_X11::initialize(const VideoMode &p_desired, i
int xrandr_minor = 0;
int event_base, error_base;
xrandr_ext_ok = XRRQueryExtension(x11_display, &event_base, &error_base);
Index: patches/patch-servers_audio_server_cpp
===================================================================
RCS file: /cvs/ports/games/godot/patches/patch-servers_audio_server_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-servers_audio_server_cpp
--- patches/patch-servers_audio_server_cpp 25 Aug 2018 19:20:29 -0000 1.1
+++ patches/patch-servers_audio_server_cpp 29 May 2020 13:03:17 -0000
@@ -6,41 +6,38 @@ add dummy audio driver to AudioDriverMan
Index: servers/audio_server.cpp
--- servers/audio_server.cpp.orig
+++ servers/audio_server.cpp
-@@ -119,14 +119,19 @@ AudioDriver::AudioDriver() {
- _mix_amount = 0;
+@@ -160,16 +160,16 @@ AudioDriver::AudioDriver() {
+ #endif
}
--AudioDriver *AudioDriverManager::drivers[MAX_DRIVERS];
--int AudioDriverManager::driver_count = 0;
- AudioDriverDummy AudioDriverManager::dummy_driver;
-+AudioDriver *AudioDriverManager::drivers[MAX_DRIVERS] = {
-+ &AudioDriverManager::dummy_driver,
-+};
-+int AudioDriverManager::driver_count = 1;
+-AudioDriverDummy AudioDriverManager::dummy_driver;
+-AudioDriver *AudioDriverManager::drivers[MAX_DRIVERS] = {
++AudioDriver *AudioDriverManager::drivers[MAX_DRIVERS] {
+ &AudioDriverManager::dummy_driver,
+ };
+ int AudioDriverManager::driver_count = 1;
++AudioDriverDummy AudioDriverManager::dummy_driver;
void AudioDriverManager::add_driver(AudioDriver *p_driver) {
ERR_FAIL_COND(driver_count >= MAX_DRIVERS);
-- drivers[driver_count++] = p_driver;
-+ drivers[driver_count - 1] = p_driver;
-+
-+ // Last driver is always our dummy driver
-+ drivers[driver_count++] = &AudioDriverManager::dummy_driver;
- }
+- drivers[driver_count - 1] = p_driver;
++ drivers[driver_count-1] = p_driver;
- int AudioDriverManager::get_driver_count() {
-@@ -158,14 +163,6 @@ void AudioDriverManager::initialize(int p_driver) {
+ // Last driver is always our dummy driver
+ drivers[driver_count++] = &AudioDriverManager::dummy_driver;
+@@ -205,6 +205,14 @@ void AudioDriverManager::initialize(int p_driver) {
drivers[i]->set_singleton();
- return;
+ break;
}
-- }
--
-- // Fallback to our dummy driver
-- if (dummy_driver.init() == OK) {
-- ERR_PRINT("AudioDriverManager: all drivers failed, falling back to dummy driver");
-- dummy_driver.set_singleton();
-- } else {
-- ERR_PRINT("AudioDriverManager: dummy driver failed to init()");
++ }
++
++ // Fallback to our dummy driver
++ if (dummy_driver.init() == OK) {
++ ERR_PRINT("AudioDriverManager: all drivers failed, falling back to dummy driver");
++ dummy_driver.set_singleton();
++ } else {
++ ERR_PRINT("AudioDriverManager: dummy driver failed to init()");
}
- }
+ if (driver_count > 1 && String(AudioDriver::get_singleton()->get_name()) == "Dummy") {
Index: patches/patch-servers_visual_shader_language_cpp
===================================================================
RCS file: patches/patch-servers_visual_shader_language_cpp
diff -N patches/patch-servers_visual_shader_language_cpp
--- patches/patch-servers_visual_shader_language_cpp 16 Aug 2019 15:38:15 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,22 +0,0 @@
-$OpenBSD: patch-servers_visual_shader_language_cpp,v 1.1 2019/08/16 15:38:15 thfr Exp $
-
-Fix error with ports-gcc:
- error: converting to 'bool' from 'std::nullptr_t' requires direct-initialization [-fpermissive]
-
-Index: servers/visual/shader_language.cpp
---- servers/visual/shader_language.cpp.orig
-+++ servers/visual/shader_language.cpp
-@@ -1869,11 +1869,11 @@ const ShaderLanguage::BuiltinFuncDef ShaderLanguage::b
-
- bool ShaderLanguage::_validate_function_call(BlockNode *p_block, OperatorNode *p_func, DataType *r_ret_type) {
-
-- ERR_FAIL_COND_V(p_func->op != OP_CALL && p_func->op != OP_CONSTRUCT, NULL);
-+ ERR_FAIL_COND_V(p_func->op != OP_CALL && p_func->op != OP_CONSTRUCT, false);
-
- Vector<DataType> args;
-
-- ERR_FAIL_COND_V(p_func->arguments[0]->type != Node::TYPE_VARIABLE, NULL);
-+ ERR_FAIL_COND_V(p_func->arguments[0]->type != Node::TYPE_VARIABLE, false);
-
- StringName name = static_cast<VariableNode *>(p_func->arguments[0])->name.operator String();
-
Index: patches/patch-thirdparty_minizip_unzip_c
===================================================================
RCS file: patches/patch-thirdparty_minizip_unzip_c
diff -N patches/patch-thirdparty_minizip_unzip_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-thirdparty_minizip_unzip_c 29 May 2020 13:03:17 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+z_crc_t is defined as unsigned long on zlib 1.2.11, which is newer than
+the one we have in base.
+
+Index: thirdparty/minizip/unzip.c
+--- thirdparty/minizip/unzip.c.orig
++++ thirdparty/minizip/unzip.c
+@@ -118,6 +118,7 @@
+ #define SIZECENTRALDIRITEM (0x2e)
+ #define SIZEZIPLOCALHEADER (0x1e)
+
++typedef unsigned long z_crc_t;
+
+ const char unz_copyright[] =
+ " unzip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll";
Index: patches/patch-thirdparty_minizip_zip_c
===================================================================
RCS file: patches/patch-thirdparty_minizip_zip_c
diff -N patches/patch-thirdparty_minizip_zip_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-thirdparty_minizip_zip_c 29 May 2020 13:03:17 -0000
@@ -0,0 +1,17 @@
+$OpenBSD$
+
+z_crc_t is defined as unsigned long on zlib 1.2.11, which is newer than
+the one we have in base.
+
+Index: thirdparty/minizip/zip.c
+--- thirdparty/minizip/zip.c.orig
++++ thirdparty/minizip/zip.c
+@@ -111,6 +111,8 @@ const char zip_copyright[] =" zip 1.01 Copyright 1998-
+
+ #define SIZECENTRALHEADER (0x2e) /* 46 */
+
++typedef unsigned long z_crc_t;
++
+ typedef struct linkedlist_datablock_internal_s
+ {
+ struct linkedlist_datablock_internal_s* next_datablock;
Index: patches/patch-thirdparty_thekla_atlas_nvcore_nvcore_h
===================================================================
RCS file: patches/patch-thirdparty_thekla_atlas_nvcore_nvcore_h
diff -N patches/patch-thirdparty_thekla_atlas_nvcore_nvcore_h
--- patches/patch-thirdparty_thekla_atlas_nvcore_nvcore_h 16 Aug 2019 15:38:15 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,16 +0,0 @@
-$OpenBSD: patch-thirdparty_thekla_atlas_nvcore_nvcore_h,v 1.1 2019/08/16 15:38:15 thfr Exp $
-
-Overzealous #error, the code builds fine even if the CPU isn't known.
-
-Index: thirdparty/thekla_atlas/nvcore/nvcore.h
---- thirdparty/thekla_atlas/nvcore/nvcore.h.orig
-+++ thirdparty/thekla_atlas/nvcore/nvcore.h
-@@ -115,7 +115,7 @@
- #elif defined POSH_CPU_STRONGARM
- # define NV_CPU_ARM 1
- #else
--# error "Unsupported CPU"
-+//# error "Unsupported CPU"
- #endif
-
-