blender-lts: Update to 3.6.8

* Switch to Blender 3.6 LTS release branch.
This commit is contained in:
ryoon 2024-02-11 15:29:58 +00:00
parent 95c48bf887
commit 6bcf908b79
25 changed files with 2411 additions and 2072 deletions

View File

@ -1,7 +1,6 @@
# $NetBSD: Makefile,v 1.41 2024/01/30 14:22:07 ryoon Exp $
# $NetBSD: Makefile,v 1.42 2024/02/11 15:29:58 ryoon Exp $
DISTNAME= blender-3.3.11
PKGREVISION= 8
DISTNAME= blender-3.6.8
CATEGORIES= graphics
MASTER_SITES= https://download.blender.org/source/
EXTRACT_SUFX= .tar.xz
@ -12,10 +11,7 @@ COMMENT= Fully integrated 3D graphics creation suite
LICENSE= gnu-gpl-v2
USE_CMAKE= yes
USE_LANGUAGES= c gnu++17
# Do not use alloca() in libc.
BUILDLINK_TRANSFORM+= rm:-std=c++17
USE_LANGUAGES= c c++
# GCC 11.0.0 or later is required.
GCC_REQD+= 12
@ -37,14 +33,14 @@ CMAKE_ARGS+= -DWITH_FFTW3=ON
CMAKE_ARGS+= -DWITH_SDL=ON
CMAKE_ARGS+= -DWITH_SDL_DYNLOAD=OFF
CMAKE_ARGS+= -DWITH_CODEC_FFMPEG=ON
CMAKE_ARGS+= -DFFMPEG_AVCODEC_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libavcodec.so
CMAKE_ARGS+= -DFFMPEG_AVDEVICE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libavdevice.so
CMAKE_ARGS+= -DFFMPEG_AVFILTER_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libavfilter.so
CMAKE_ARGS+= -DFFMPEG_AVFORMAT_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libavformat.so
CMAKE_ARGS+= -DFFMPEG_AVUTIL_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libavutil.so
CMAKE_ARGS+= -DFFMPEG_SWSCALE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libswscale.so
CMAKE_ARGS+= -DFFMPEG_SWRESAMPLE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg5/libswresample.so
CMAKE_ARGS+= -D_ffmpeg_INCLUDE_DIR=${BUILDLINK_DIR}/include/ffmpeg5
CMAKE_ARGS+= -DFFMPEG_AVCODEC_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libavcodec.so
CMAKE_ARGS+= -DFFMPEG_AVDEVICE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libavdevice.so
CMAKE_ARGS+= -DFFMPEG_AVFILTER_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libavfilter.so
CMAKE_ARGS+= -DFFMPEG_AVFORMAT_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libavformat.so
CMAKE_ARGS+= -DFFMPEG_AVUTIL_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libavutil.so
CMAKE_ARGS+= -DFFMPEG_SWSCALE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libswscale.so
CMAKE_ARGS+= -DFFMPEG_SWRESAMPLE_LIBRARY=${BUILDLINK_DIR}/lib/ffmpeg6/libswresample.so
CMAKE_ARGS+= -D_ffmpeg_INCLUDE_DIR=${BUILDLINK_DIR}/include/ffmpeg6
CMAKE_ARGS+= -DWITH_CODEC_SNDFILE=ON
CMAKE_ARGS+= -DWITH_SYSTEM_GLEW=ON
CMAKE_ARGS+= -DWITH_CYCLES_EMBREE=OFF
@ -76,6 +72,7 @@ pre-configure:
${MKDIR} ${WRKSRC}/build
.include "options.mk"
.include "../../archivers/minizip-ng/buildlink3.mk"
.include "../../archivers/zstd/buildlink3.mk"
.include "../../audio/openal-soft/buildlink3.mk"
.include "../../audio/libsndfile/buildlink3.mk"
@ -102,7 +99,7 @@ BUILDLINK_API_DEPENDS.freetype2+= freetype2>=2.12.1nb1
.include "../../graphics//libwebp/buildlink3.mk"
.include "../../math/fftw/buildlink3.mk"
.include "../../math/py-numpy/buildlink3.mk"
.include "../../multimedia/ffmpeg5/buildlink3.mk"
.include "../../multimedia/ffmpeg6/buildlink3.mk"
.include "../../parallel/threadingbuildingblocks/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,24 @@
$NetBSD: distinfo,v 1.6 2023/10/15 19:55:00 ryoon Exp $
$NetBSD: distinfo,v 1.7 2024/02/11 15:29:58 ryoon Exp $
BLAKE2s (blender-3.3.11.tar.xz) = 02d65a6e2ea00f875ef8e56a0ac482511f62c5d77eadf3355a71fff062e4d95e
SHA512 (blender-3.3.11.tar.xz) = e343f143b8702ae8b16e4f66d62de67b0da6880d60b9166b58703a720b0c0864675f2e676c59f815583eafeea73f496544fc6955e7e7722c1716404b05cdd826
Size (blender-3.3.11.tar.xz) = 41928156 bytes
BLAKE2s (blender-3.6.8.tar.xz) = 8e23886dff30978b76397c7b6a678f904ef6340e499f079de365ddf694fb9b74
SHA512 (blender-3.6.8.tar.xz) = a5e15dc9de7024cebb955fc531ae592a4c58336196a07fd63ed5bb4eb14d66751a3697ea8b120283ca5078c92d8c87966e882862011ebb4368f132e2de004a45
Size (blender-3.6.8.tar.xz) = 70453744 bytes
SHA1 (patch-CMakeLists.txt) = 633e27f2ee5f5ad6b200d97ed1fbe8b2f17172ef
SHA1 (patch-extern_Eigen3_Eigen_src_Core_IO.h) = 791224b988da0383c306e76de5e93cb1cedc960e
SHA1 (patch-extern_Eigen3_Eigen_src_Core_arch_CUDA_Half.h) = ee35286558e5590495f1c973ae99ede32048ac38
SHA1 (patch-extern_glog_src_base_mutex.h) = 5fceceefe83400967a59080eeb930d0f3a4b8e88
SHA1 (patch-extern_glog_src_config.h) = e445c911d4ebb1f7e378c3c46911b55f77ba5608
SHA1 (patch-extern_glog_src_config__netbsd.h) = 6169474d0a6b939cba8016ca73fc8755fbe258b6
SHA1 (patch-extern_glog_src_config__netbsd.h) = f379cbcf86bf330d54fbd55cdcb3dbf4b1e7456e
SHA1 (patch-intern_guardedalloc_intern_mallocn__intern.h) = 81fb0fd1b34d550168a4bdf63f28b4e199717921
SHA1 (patch-intern_locale_boost__locale__wrapper.cpp) = e13ff93f5ae9f2086c6af91b6e74e360e564b813
SHA1 (patch-source_blender_blenlib_BLI__sys__types.h) = da39a3ee5e6b4b0d3255bfef95601890afd80709
SHA1 (patch-intern_locale_boost__locale__wrapper.cpp) = e743a3f050daa175e8398da12b1de133e3814928
SHA1 (patch-intern_mikktspace_mikk__float3.hh) = 715fa20ba39d7ad41f32e580189ac4fc2e8b0274
SHA1 (patch-source_blender_blenkernel_intern_customdata.cc) = 0cb4f03d101f1d200d95c2469c17bb987b4c7570
SHA1 (patch-source_blender_blenkernel_intern_gpencil__geom.cc) = 1c54b6446744e52e5e9a6ebe48d221086b905f2c
SHA1 (patch-source_blender_blenkernel_intern_mesh__validate.cc) = a21046b4d6fbf6fcec96d9410c725481d9f77a20
SHA1 (patch-source_blender_blenkernel_intern_multires.cc) = 9edd6713c12b203e6b856d0b2f6d24ae5113d285
SHA1 (patch-source_blender_blenkernel_intern_object.cc) = fd8cf2ea4f27e08f2e08b53f6d27228d9d770a2f
SHA1 (patch-source_blender_blenlib_intern_storage.c) = de8c7f00ea3fafc38bc1f125ebc4bb639128ff93
SHA1 (patch-source_blender_editors_interface_interface.cc) = 94be42726f75d8e130c78f2be822b61e2b25b2fb
SHA1 (patch-source_blender_editors_mesh_meshtools.cc) = b44f662227023df31496f8d17ebd54a02528f304
SHA1 (patch-source_blender_gpu_intern_gpu_matrix.cc) = 6692d68e6adacd2640efea3f5b666444003159d6
SHA1 (patch-source_blender_imbuf_intern_anim_movie.c) = f1048c1d2c31eb64d7a3493a03140a28961822af
SHA1 (patch-source_blender_windowmanager_intern_wm__event__system.cc) = cc70ccce18f4d040f7544d14e98d9f569a3b6501

View File

@ -1,6 +1,6 @@
# $NetBSD: options.mk,v 1.2 2023/10/15 19:55:00 ryoon Exp $
# $NetBSD: options.mk,v 1.3 2024/02/11 15:29:58 ryoon Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.blender-lts
PKG_OPTIONS_VAR= PKG_OPTIONS.blender
PKG_SUPPORTED_OPTIONS= jack pulseaudio
.include "../../mk/bsd.options.mk"

View File

@ -0,0 +1,43 @@
$NetBSD: patch-CMakeLists.txt,v 1.1 2024/02/11 15:29:59 ryoon Exp $
CMake 3.28.2 breaks unity build. From: https://projects.blender.org/blender/blender/commit/cf4365e555a759d5b3225bce77858374cb07faad
Enable c++ extensions for alloca on NetBSD
--- CMakeLists.txt.orig 2023-11-15 00:30:51.000000000 +0000
+++ CMakeLists.txt
@@ -211,7 +211,7 @@ mark_as_advanced(CPACK_OVERRIDE_PACKAGEN
mark_as_advanced(BUILDINFO_OVERRIDE_DATE)
mark_as_advanced(BUILDINFO_OVERRIDE_TIME)
-if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16")
+if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16" AND NOT ${CMAKE_VERSION} VERSION_EQUAL "3.28.2")
option(WITH_UNITY_BUILD "Enable unity build for modules that support it to improve compile times" ON)
mark_as_advanced(WITH_UNITY_BUILD)
else()
@@ -1015,6 +1015,7 @@ set(EXETYPE "")
# C/C++ flags
set(PLATFORM_CFLAGS)
+set(PLATFORM_CXXFLAGS)
# these are added to later on.
set(C_WARNINGS)
@@ -1712,7 +1713,8 @@ set(CMAKE_CXX_STANDARD 17)
# If C++17 is not available, downgrading to an earlier standard is NOT OK.
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Do not enable compiler specific language extensions.
-set(CMAKE_CXX_EXTENSIONS OFF)
+# Sorry needed for alloca on NetBSD
+set(CMAKE_CXX_EXTENSIONS ON)
# Make MSVC properly report the value of the __cplusplus preprocessor macro
# Available MSVC 15.7 (1914) and up, without this it reports 199711L regardless
@@ -1773,7 +1775,7 @@ endif()
# Include warnings first, so its possible to disable them with user defined flags
# eg: -Wno-uninitialized
set(CMAKE_C_FLAGS "${C_WARNINGS} ${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS}")
-set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS}")
+set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS} ${PLATFORM_CXXFLAGS}")
# defined above, platform specific but shared names
mark_as_advanced(

View File

@ -1,4 +1,4 @@
$NetBSD: patch-extern_Eigen3_Eigen_src_Core_IO.h,v 1.1 2020/09/05 11:46:40 ryoon Exp $
$NetBSD: patch-extern_Eigen3_Eigen_src_Core_IO.h,v 1.2 2024/02/11 15:29:59 ryoon Exp $
--- extern/Eigen3/Eigen/src/Core/IO.h.orig 2020-02-13 11:33:22.000000000 +0000
+++ extern/Eigen3/Eigen/src/Core/IO.h

View File

@ -1,4 +1,4 @@
$NetBSD: patch-extern_Eigen3_Eigen_src_Core_arch_CUDA_Half.h,v 1.1 2020/09/05 11:46:40 ryoon Exp $
$NetBSD: patch-extern_Eigen3_Eigen_src_Core_arch_CUDA_Half.h,v 1.2 2024/02/11 15:29:59 ryoon Exp $
--- extern/Eigen3/Eigen/src/Core/arch/CUDA/Half.h.orig 2020-02-13 11:33:22.000000000 +0000
+++ extern/Eigen3/Eigen/src/Core/arch/CUDA/Half.h

View File

@ -1,15 +0,0 @@
$NetBSD: patch-extern_glog_src_base_mutex.h,v 1.1 2020/09/05 11:46:40 ryoon Exp $
Support NetBSD.
--- extern/glog/src/base/mutex.h.orig 2016-03-23 08:49:49.000000000 +0000
+++ extern/glog/src/base/mutex.h
@@ -133,7 +133,7 @@
// out, but then you'd have to unset HAVE_RWLOCK (at least on linux -- it
// *does* cause problems for FreeBSD, or MacOSX, but isn't needed
// for locking there.)
-# ifdef __linux__
+# if defined(__linux__) || defined(__NetBSD__)
# ifndef _XOPEN_SOURCE // Some other header might have already set it for us.
# define _XOPEN_SOURCE 500 // may be needed to get the rwlock calls
# endif

View File

@ -1,4 +1,4 @@
$NetBSD: patch-extern_glog_src_config.h,v 1.1 2020/09/05 11:46:40 ryoon Exp $
$NetBSD: patch-extern_glog_src_config.h,v 1.2 2024/02/11 15:29:59 ryoon Exp $
Support NetBSD.

View File

@ -1,8 +1,8 @@
$NetBSD: patch-extern_glog_src_config__netbsd.h,v 1.2 2023/10/15 19:55:00 ryoon Exp $
$NetBSD: patch-extern_glog_src_config__netbsd.h,v 1.3 2024/02/11 15:29:59 ryoon Exp $
Support NetBSD.
--- extern/glog/src/config_netbsd.h.orig 2023-06-15 13:23:28.000000000 +0000
--- extern/glog/src/config_netbsd.h.orig 2023-06-13 18:04:40.000000000 +0000
+++ extern/glog/src/config_netbsd.h
@@ -1,3 +1,180 @@
+/* src/config.h. Generated from config.h.in by configure. */

View File

@ -1,4 +1,4 @@
$NetBSD: patch-intern_guardedalloc_intern_mallocn__intern.h,v 1.1 2020/09/05 11:46:40 ryoon Exp $
$NetBSD: patch-intern_guardedalloc_intern_mallocn__intern.h,v 1.2 2024/02/11 15:29:59 ryoon Exp $
Support NetBSD.

View File

@ -1,14 +1,12 @@
$NetBSD: patch-intern_locale_boost__locale__wrapper.cpp,v 1.2 2023/10/15 19:55:00 ryoon Exp $
$NetBSD: patch-intern_locale_boost__locale__wrapper.cpp,v 1.3 2024/02/11 15:29:59 ryoon Exp $
Add missing header for std::cout.
--- intern/locale/boost_locale_wrapper.cpp.orig 2023-06-15 13:23:28.000000000 +0000
--- intern/locale/boost_locale_wrapper.cpp.orig 2023-02-15 22:58:23.000000000 +0000
+++ intern/locale/boost_locale_wrapper.cpp
@@ -8,6 +8,7 @@
@@ -5,6 +5,7 @@
* \ingroup intern_locale
*/
+#include <iostream>
#include <boost/locale.hpp>
#include <iostream>
#include <stdio.h>
+#include <iostream>
#include "boost_locale_wrapper.h"

View File

@ -0,0 +1,13 @@
$NetBSD: patch-intern_mikktspace_mikk__float3.hh,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- intern/mikktspace/mikk_float3.hh.orig 2022-11-04 00:33:06.000000000 +0000
+++ intern/mikktspace/mikk_float3.hh
@@ -72,7 +72,7 @@ struct float3 {
float length() const
{
- return sqrt(length_squared());
+ return sqrtf(length_squared());
}
static float distance(const float3 &a, const float3 &b)

View File

@ -0,0 +1,31 @@
$NetBSD: patch-source_blender_blenkernel_intern_customdata.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/blenkernel/intern/customdata.cc.orig 2022-11-11 15:26:15.000000000 +0000
+++ source/blender/blenkernel/intern/customdata.cc
@@ -492,7 +492,7 @@ static bool layerValidate_propFloat(void
bool has_errors = false;
for (int i = 0; i < totitems; i++, fp++) {
- if (!isfinite(fp->f)) {
+ if (!std::isfinite(fp->f)) {
if (do_fixes) {
fp->f = 0.0f;
}
@@ -1556,7 +1556,7 @@ static bool layerValidate_propfloat3(voi
float *values = static_cast<float *>(data);
bool has_errors = false;
for (int i = 0; i < totitems * 3; i++) {
- if (!isfinite(values[i])) {
+ if (!std::isfinite(values[i])) {
if (do_fixes) {
values[i] = 0.0f;
}
@@ -1607,7 +1607,7 @@ static bool layerValidate_propfloat2(voi
float *values = static_cast<float *>(data);
bool has_errors = false;
for (int i = 0; i < totitems * 2; i++) {
- if (!isfinite(values[i])) {
+ if (!std::isfinite(values[i])) {
if (do_fixes) {
values[i] = 0.0f;
}

View File

@ -0,0 +1,13 @@
$NetBSD: patch-source_blender_blenkernel_intern_gpencil__geom.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/blenkernel/intern/gpencil_geom_legacy.cc.orig 2023-05-17 23:38:29.000000000 +0000
+++ source/blender/blenkernel/intern/gpencil_geom_legacy.cc
@@ -649,7 +649,7 @@ bool BKE_gpencil_stroke_stretch(bGPDstro
const bool do_end = ELEM(mode, BOTH, END);
float used_percent_length = overshoot_fac;
CLAMP(used_percent_length, 1e-4f, 1.0f);
- if (!isfinite(used_percent_length)) {
+ if (!std::isfinite(used_percent_length)) {
/* #used_percent_length must always be finite, otherwise a segfault occurs.
* Since this function should never segfault, set #used_percent_length to a safe fallback. */
/* NOTE: This fallback is used if gps->totpoints == 2, see MOD_gpencil_legacy_length.c */

View File

@ -0,0 +1,22 @@
$NetBSD: patch-source_blender_blenkernel_intern_mesh__validate.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/blenkernel/intern/mesh_validate.cc.orig 2023-05-24 15:42:42.000000000 +0000
+++ source/blender/blenkernel/intern/mesh_validate.cc
@@ -302,7 +302,7 @@ bool BKE_mesh_validate_arrays(Mesh *mesh
for (i = 0; i < totvert; i++) {
for (j = 0; j < 3; j++) {
- if (!isfinite(vert_positions[i][j])) {
+ if (!std::isfinite(vert_positions[i][j])) {
PRINT_ERR("\tVertex %u: has invalid coordinate", i);
if (do_fixes) {
@@ -797,7 +797,7 @@ bool BKE_mesh_validate_arrays(Mesh *mesh
for (j = 0, dw = dv->dw; j < dv->totweight; j++, dw++) {
/* NOTE: greater than max defgroups is accounted for in our code, but not < 0. */
- if (!isfinite(dw->weight)) {
+ if (!std::isfinite(dw->weight)) {
PRINT_ERR("\tVertex deform %u, group %u has weight: %f", i, dw->def_nr, dw->weight);
if (do_fixes) {
dw->weight = 0.0f;

View File

@ -0,0 +1,13 @@
$NetBSD: patch-source_blender_blenkernel_intern_multires.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/blenkernel/intern/multires.cc.orig 2022-11-04 00:33:06.000000000 +0000
+++ source/blender/blenkernel/intern/multires.cc
@@ -1290,7 +1290,7 @@ void old_mdisps_bilinear(float out[3], f
float urat, vrat, uopp;
float d[4][3], d2[2][3];
- if (!disps || isnan(u) || isnan(v)) {
+ if (!disps || std::isnan(u) || std::isnan(v)) {
return;
}

View File

@ -0,0 +1,20 @@
$NetBSD: patch-source_blender_blenkernel_intern_object.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/blenkernel/intern/object.cc.orig 2022-11-04 03:58:17.000000000 +0000
+++ source/blender/blenkernel/intern/object.cc
@@ -3844,13 +3844,13 @@ void BKE_object_dimensions_set_ex(Object
if (ob_scale_orig != nullptr) {
const float scale_delta = len_v3(ob_obmat_orig[i]) / ob_scale_orig[i];
- if (isfinite(scale_delta)) {
+ if (std::isfinite(scale_delta)) {
len[i] *= scale_delta;
}
}
const float scale = copysignf(value[i] / len[i], ob->scale[i]);
- if (isfinite(scale)) {
+ if (std::isfinite(scale)) {
ob->scale[i] = scale;
}
}

View File

@ -0,0 +1,15 @@
$NetBSD: patch-source_blender_blenlib_intern_storage.c,v 1.1 2024/02/11 15:29:59 ryoon Exp $
Use statvfs on Solaris. (From PR 35928)
--- source/blender/blenlib/intern/storage.c.orig 2023-05-17 23:38:29.000000000 +0000
+++ source/blender/blenlib/intern/storage.c
@@ -13,7 +13,7 @@
#include <sys/stat.h>
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__HAIKU__)
+#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__HAIKU__) || defined(__sun)
/* Other modern unix OS's should probably use this also. */
# include <sys/statvfs.h>
# define USE_STATFS_STATVFS

View File

@ -0,0 +1,13 @@
$NetBSD: patch-source_blender_editors_interface_interface.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/editors/interface/interface.cc.orig 2022-11-04 00:33:07.000000000 +0000
+++ source/blender/editors/interface/interface.cc
@@ -3370,7 +3370,7 @@ void ui_but_range_set_soft(uiBut *but)
}
else if (but->poin && (but->pointype & UI_BUT_POIN_TYPES)) {
float value = ui_but_value_get(but);
- if (isfinite(value)) {
+ if (std::isfinite(value)) {
CLAMP(value, but->hardmin, but->hardmax);
but->softmin = min_ff(but->softmin, value);
but->softmax = max_ff(but->softmax, value);

View File

@ -0,0 +1,13 @@
$NetBSD: patch-source_blender_editors_mesh_meshtools.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/editors/mesh/meshtools.cc.orig 2022-11-04 00:33:07.000000000 +0000
+++ source/blender/editors/mesh/meshtools.cc
@@ -935,7 +935,7 @@ static BMVert *editbmesh_get_x_mirror_ve
int i;
/* ignore nan verts */
- if ((isfinite(co[0]) == false) || (isfinite(co[1]) == false) || (isfinite(co[2]) == false)) {
+ if ((std::isfinite(co[0]) == false) || (std::isfinite(co[1]) == false) || (std::isfinite(co[2]) == false)) {
return nullptr;
}

View File

@ -0,0 +1,24 @@
$NetBSD: patch-source_blender_gpu_intern_gpu_matrix.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
Fix wrong namespace issues.
--- source/blender/gpu/intern/gpu_matrix.cc.orig 2022-11-04 00:33:07.000000000 +0000
+++ source/blender/gpu/intern/gpu_matrix.cc
@@ -103,7 +103,7 @@ static void checkmat(cosnt float *m)
# if _MSC_VER
BLI_assert(_finite(m[i]));
# else
- BLI_assert(!isinf(m[i]));
+ BLI_assert(!std::isinf(m[i]));
# endif
}
}
@@ -528,7 +528,7 @@ bool GPU_matrix_unproject_3fv(const floa
const bool is_persp = proj[3][3] == 0.0f;
if (is_persp) {
out[2] = proj[3][2] / (proj[2][2] + in[2]);
- if (isinf(out[2])) {
+ if (std::isinf(out[2])) {
out[2] = FLT_MAX;
}
out[0] = out[2] * ((proj[2][0] + in[0]) / proj[0][0]);

View File

@ -0,0 +1,15 @@
$NetBSD: patch-source_blender_imbuf_intern_anim_movie.c,v 1.1 2024/02/11 15:29:59 ryoon Exp $
Avoid a crash when playing mp4 files.
--- source/blender/imbuf/intern/anim_movie.cc.orig 2023-06-19 18:45:48.000000000 +0000
+++ source/blender/imbuf/intern/anim_movie.cc
@@ -453,7 +453,7 @@ static ImBuf *avi_fetchibuf(struct anim
int *tmp;
int y;
- if (anim == nullptr) {
+ if (anim == nullptr || anim->pFormatCtx == nullptr) {
return nullptr;
}

View File

@ -0,0 +1,13 @@
$NetBSD: patch-source_blender_windowmanager_intern_wm__event__system.cc,v 1.1 2024/02/11 15:29:59 ryoon Exp $
--- source/blender/windowmanager/intern/wm_event_system.cc.orig 2022-11-15 17:58:40.000000000 +0000
+++ source/blender/windowmanager/intern/wm_event_system.cc
@@ -3841,7 +3841,7 @@ void wm_event_do_handlers(bContext *C)
if (is_playing_sound == 0) {
const double time = BKE_sound_sync_scene(scene_eval);
- if (isfinite(time)) {
+ if (std::isfinite(time)) {
int ncfra = round(time * FPS);
if (ncfra != scene->r.cfra) {
scene->r.cfra = ncfra;