blender: bump to 3.3.1 (#7277)

This commit is contained in:
kenmays
2022-10-19 09:18:53 -07:00
committed by GitHub
parent cc33cbb333
commit 811ddd0030
4 changed files with 138 additions and 238 deletions

View File

@@ -1,2 +1,2 @@
#!/bin/bash #!/bin/bash
MESA_GL_VERSION_OVERRIDE="4.1" `finddir B_APPS_DIRECTORY`/Blender3/Blender -p 50 50 1024 768 MESA_GL_VERSION_OVERRIDE="4.6" `finddir B_APPS_DIRECTORY`/Blender3/Blender -p 50 50 1024 768

View File

@@ -12,7 +12,7 @@ COPYRIGHT="2002-2022 Blender Foundation"
LICENSE="GNU GPL v2" LICENSE="GNU GPL v2"
REVISION="1" REVISION="1"
SOURCE_URI="https://download.blender.org/source/blender-$portVersion.tar.xz" SOURCE_URI="https://download.blender.org/source/blender-$portVersion.tar.xz"
CHECKSUM_SHA256="19bb0a96269e0a5c4b5d62b98363836054471c096b83d9755598b25b347d7441" CHECKSUM_SHA256="2ada48f0bf8a0ca802b987d757452012e1f8f24acf4d23453b09c2d595118cca"
SOURCE_DIR="blender-$portVersion" SOURCE_DIR="blender-$portVersion"
PATCHES=" PATCHES="
blender3-$portVersion.patchset blender3-$portVersion.patchset
@@ -25,7 +25,7 @@ ADDITIONAL_FILES="
ARCHITECTURES="all !x86_gcc2" ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86" SECONDARY_ARCHITECTURES="x86"
PYTHON_VERSION="3.9" PYTHON_VERSION="3.10"
PROVIDES=" PROVIDES="
blender3$secondaryArchSuffix = $portVersion blender3$secondaryArchSuffix = $portVersion
@@ -34,8 +34,8 @@ PROVIDES="
" "
REQUIRES=" REQUIRES="
haiku$secondaryArchSuffix haiku$secondaryArchSuffix
numpy${secondaryArchSuffix}_python39 numpy${secondaryArchSuffix}_python310
requests_python39 requests_python310
lib:libalembic$secondaryArchSuffix lib:libalembic$secondaryArchSuffix
lib:libavcodec$secondaryArchSuffix lib:libavcodec$secondaryArchSuffix
lib:libavdevice$secondaryArchSuffix lib:libavdevice$secondaryArchSuffix
@@ -65,6 +65,8 @@ REQUIRES="
lib:libiex_3_0$secondaryArchSuffix lib:libiex_3_0$secondaryArchSuffix
lib:libilmthread_3_0$secondaryArchSuffix lib:libilmthread_3_0$secondaryArchSuffix
lib:libimath_3_0$secondaryArchSuffix lib:libimath_3_0$secondaryArchSuffix
lib:libopenexr_3_0$secondaryArchSuffix
lib:libopenexrutil_3_0$secondaryArchSuffix
lib:libLLVM_9$secondaryArchSuffix lib:libLLVM_9$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix lib:liblzma$secondaryArchSuffix
lib:liblzo2$secondaryArchSuffix lib:liblzo2$secondaryArchSuffix
@@ -95,7 +97,7 @@ REQUIRES="
BUILD_REQUIRES=" BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel haiku${secondaryArchSuffix}_devel
numpy${secondaryArchSuffix}_python39 numpy${secondaryArchSuffix}_python310
devel:eigen$secondaryArchSuffix devel:eigen$secondaryArchSuffix
devel:libalembic$secondaryArchSuffix devel:libalembic$secondaryArchSuffix
devel:libavcodec$secondaryArchSuffix devel:libavcodec$secondaryArchSuffix
@@ -123,6 +125,8 @@ BUILD_REQUIRES="
devel:libiex_3_0$secondaryArchSuffix devel:libiex_3_0$secondaryArchSuffix
devel:libilmthread_3_0$secondaryArchSuffix devel:libilmthread_3_0$secondaryArchSuffix
devel:libimath_3_0$secondaryArchSuffix devel:libimath_3_0$secondaryArchSuffix
devel:libopenexr_3_0$secondaryArchSuffix
devel:libopenexrutil_3_0$secondaryArchSuffix
devel:libllvm_9$secondaryArchSuffix devel:libllvm_9$secondaryArchSuffix
devel:liblzma$secondaryArchSuffix devel:liblzma$secondaryArchSuffix
devel:liblzo2$secondaryArchSuffix devel:liblzo2$secondaryArchSuffix
@@ -152,8 +156,8 @@ BUILD_REQUIRES="
lib:libavdevice$secondaryArchSuffix # REQUIRED lib:libavdevice$secondaryArchSuffix # REQUIRED
" "
BUILD_PREREQUIRES=" BUILD_PREREQUIRES="
numpy${secondaryArchSuffix}_python39 numpy${secondaryArchSuffix}_python310
requests_python39 requests_python310
cmd:cmake cmd:cmake
cmd:find cmd:find
cmd:gcc$secondaryArchSuffix cmd:gcc$secondaryArchSuffix
@@ -167,7 +171,7 @@ BUILD_PREREQUIRES="
PATCH() PATCH()
{ {
find . -type f -name "*.py" | xargs sed -i -e 's,python3,python3.9,g' find . -type f -name "*.py" | xargs sed -i -e 's,python3,python3.10,g'
} }
BUILD() BUILD()

View File

@@ -1,229 +0,0 @@
From 192b81e81ac73ae9f12f574eb36d06ff530ef5ac Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 19 Mar 2021 08:13:09 +1000
Subject: Fix for Haiku
diff --git a/extern/wcwidth/wcwidth.h b/extern/wcwidth/wcwidth.h
index 3039a50..68f21b6 100644
--- a/extern/wcwidth/wcwidth.h
+++ b/extern/wcwidth/wcwidth.h
@@ -21,7 +21,7 @@
#define __WCWIDTH_H__
#ifndef __cplusplus
-# if defined(__APPLE__) || defined(__NetBSD__)
+# if defined(__APPLE__) || defined(__NetBSD__) || defined(__HAIKU__)
/* The <uchar.h> standard header is missing on macOS. */
#include <stddef.h>
typedef unsigned int char32_t;
diff --git a/source/blender/blenlib/BLI_threads.h b/source/blender/blenlib/BLI_threads.h
index 4f71e3a..4d55d5d 100644
--- a/source/blender/blenlib/BLI_threads.h
+++ b/source/blender/blenlib/BLI_threads.h
@@ -177,7 +177,7 @@ void BLI_thread_queue_nowait(ThreadQueue *queue);
/* Thread local storage */
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__HAIKU__)
# define ThreadLocal(type) pthread_key_t
# define BLI_thread_local_create(name) pthread_key_create(&name, NULL)
# define BLI_thread_local_delete(name) pthread_key_delete(name)
diff --git a/source/blender/windowmanager/intern/wm_platform_support.c b/source/blender/windowmanager/intern/wm_platform_support.c
index 54fc454..89514f3 100644
--- a/source/blender/windowmanager/intern/wm_platform_support.c
+++ b/source/blender/windowmanager/intern/wm_platform_support.c
@@ -118,7 +118,7 @@ bool WM_platform_support_perform_checks()
char link[WM_PLATFORM_SUPPORT_TEXT_SIZE];
bool result = true;
-
+#ifndef __HAIKU__
eGPUSupportLevel support_level = GPU_platform_support_level();
const char *platform_key = GPU_platform_support_level_key();
@@ -216,6 +216,6 @@ bool WM_platform_support_perform_checks()
WM_ghost_show_message_box(
title, message, "Find Latest Drivers", "Continue Anyway", link, dialog_options);
}
-
+#endif
return result;
}
--
2.36.1
From 5c2f8c96a76d2713d98c0af62fdc699adb6c7523 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 19 Mar 2021 11:33:53 +1000
Subject: Fix hangs on exit
diff --git a/source/blender/windowmanager/intern/wm_init_exit.c b/source/blender/windowmanager/intern/wm_init_exit.c
index 1a45e53..df233cb 100644
--- a/source/blender/windowmanager/intern/wm_init_exit.c
+++ b/source/blender/windowmanager/intern/wm_init_exit.c
@@ -624,6 +624,10 @@ void WM_exit_ex(bContext *C, const bool do_python)
ED_file_exit(); /* for fsmenu */
+ /* No need to call this early, rather do it late so that other
+ * pieces of Blender using sound may exit cleanly, see also T50676. */
+ BKE_sound_exit();
+
UI_exit();
BKE_blender_userdef_data_free(&U, false);
@@ -642,10 +646,6 @@ void WM_exit_ex(bContext *C, const bool do_python)
BLI_threadapi_exit();
BLI_task_scheduler_exit();
- /* No need to call this early, rather do it late so that other
- * pieces of Blender using sound may exit cleanly, see also T50676. */
- BKE_sound_exit();
-
BKE_appdir_exit();
CLG_exit();
--
2.36.1
From d883a54c0bfc77ab70f667c504176daf5ffd27ad Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 26 Dec 2021 17:05:15 +1000
Subject: applying patch openexr3.patch
diff --git a/build_files/cmake/Modules/FindOpenEXR.cmake b/build_files/cmake/Modules/FindOpenEXR.cmake
index 090f80b..a2f7b4c 100644
--- a/build_files/cmake/Modules/FindOpenEXR.cmake
+++ b/build_files/cmake/Modules/FindOpenEXR.cmake
@@ -34,11 +34,10 @@ ENDIF()
SET(_openexr_libs_ver_init "2.0")
SET(_openexr_FIND_COMPONENTS
- Half
Iex
- IlmImf
- IlmThread
Imath
+ OpenEXR
+ IlmThread
)
SET(_openexr_SEARCH_DIRS
@@ -120,7 +119,7 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG
IF(OPENEXR_FOUND)
SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES})
# Both include paths are needed because of dummy OSL headers mixing #include <OpenEXR/foo.h> and #include <foo.h> :(
- SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR)
+ SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR ${OPENEXR_INCLUDE_DIR}/Imath)
ENDIF()
MARK_AS_ADVANCED(
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp
index adf09f8..4784a9b 100644
--- a/source/blender/imbuf/intern/openexr/openexr_api.cpp
+++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp
@@ -38,8 +38,10 @@
#include <ImfChannelList.h>
#include <ImfCompression.h>
#include <ImfCompressionAttribute.h>
+#include <ImfFrameBuffer.h>
#include <ImfIO.h>
#include <ImfInputFile.h>
+#include <ImfInt64.h>
#include <ImfOutputFile.h>
#include <ImfPixelType.h>
#include <ImfStandardAttributes.h>
--
2.36.1
From d02e4deec93dcd83be8feec8b9cabd074597ec9c Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 26 Dec 2021 20:55:05 +1000
Subject: Link with icu
diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake
index fc0c37e..1876bae 100644
--- a/build_files/cmake/platform/platform_unix.cmake
+++ b/build_files/cmake/platform/platform_unix.cmake
@@ -505,7 +505,7 @@ endif()
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
if(HAIKU)
- list(APPEND PLATFORM_LINKLIBS -lnetwork)
+ list(APPEND PLATFORM_LINKLIBS -lnetwork -liconv -licuuc -licui18n)
else()
list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
endif()
--
2.36.1
From 305e20931c418ceb9255ab8778d5a8674bd6f090 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 26 Dec 2021 20:55:26 +1000
Subject: Use clock_gettime for Haiku
diff --git a/source/blender/blenlib/intern/uuid.cc b/source/blender/blenlib/intern/uuid.cc
index de4602b..300aa93 100644
--- a/source/blender/blenlib/intern/uuid.cc
+++ b/source/blender/blenlib/intern/uuid.cc
@@ -42,7 +42,7 @@ bUUID BLI_uuid_generate_random()
static_assert(std::mt19937_64::max() == 0xffffffffffffffffLL);
struct timespec ts;
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(__HAIKU__)
/* `timespec_get()` is only available on macOS 10.15+, so until that's the minimum version
* supported by Blender, use another function to get the timespec.
*
--
2.36.1
From f70e77cb1fdbf03799bc2c4e7a8971bcdd7a7757 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 2 Jun 2022 22:43:54 +1000
Subject: applying gentoo patch blender-3.0.1-openimageio-2.3.patch
diff --git a/build_files/cmake/Modules/FindOpenImageIO.cmake b/build_files/cmake/Modules/FindOpenImageIO.cmake
index aac5b5c..9456ea5 100644
--- a/build_files/cmake/Modules/FindOpenImageIO.cmake
+++ b/build_files/cmake/Modules/FindOpenImageIO.cmake
@@ -48,6 +48,15 @@ FIND_LIBRARY(OPENIMAGEIO_LIBRARY
lib64 lib
)
+FIND_LIBRARY(OPENIMAGEIO_UTIL_LIBRARY
+ NAMES
+ OpenImageIO_Util
+ HINTS
+ ${_openimageio_SEARCH_DIRS}
+ PATH_SUFFIXES
+ lib64 lib
+ )
+
FIND_FILE(OPENIMAGEIO_IDIFF
NAMES
idiff
@@ -64,7 +73,7 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenImageIO DEFAULT_MSG
OPENIMAGEIO_LIBRARY OPENIMAGEIO_INCLUDE_DIR)
IF(OPENIMAGEIO_FOUND)
- SET(OPENIMAGEIO_LIBRARIES ${OPENIMAGEIO_LIBRARY})
+ SET(OPENIMAGEIO_LIBRARIES ${OPENIMAGEIO_LIBRARY} ${OPENIMAGEIO_UTIL_LIBRARY})
SET(OPENIMAGEIO_INCLUDE_DIRS ${OPENIMAGEIO_INCLUDE_DIR})
IF(EXISTS ${OPENIMAGEIO_INCLUDE_DIR}/OpenImageIO/pugixml.hpp)
SET(OPENIMAGEIO_PUGIXML_FOUND TRUE)
--
2.36.1

View File

@@ -0,0 +1,125 @@
From 77f6982df9e53e477cccd2a9da30a988eb6638a0 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 19 Mar 2021 08:13:09 +1000
Subject: Fix for Haiku
diff --git a/extern/wcwidth/wcwidth.h b/extern/wcwidth/wcwidth.h
index 3039a50..68f21b6 100644
--- a/extern/wcwidth/wcwidth.h
+++ b/extern/wcwidth/wcwidth.h
@@ -21,7 +21,7 @@
#define __WCWIDTH_H__
#ifndef __cplusplus
-# if defined(__APPLE__) || defined(__NetBSD__)
+# if defined(__APPLE__) || defined(__NetBSD__) || defined(__HAIKU__)
/* The <uchar.h> standard header is missing on macOS. */
#include <stddef.h>
typedef unsigned int char32_t;
diff --git a/source/blender/blenlib/BLI_threads.h b/source/blender/blenlib/BLI_threads.h
index dac33e1..45f3462 100644
--- a/source/blender/blenlib/BLI_threads.h
+++ b/source/blender/blenlib/BLI_threads.h
@@ -176,7 +176,7 @@ void BLI_thread_queue_nowait(ThreadQueue *queue);
/* Thread local storage */
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__HAIKU__)
# define ThreadLocal(type) pthread_key_t
# define BLI_thread_local_create(name) pthread_key_create(&name, NULL)
# define BLI_thread_local_delete(name) pthread_key_delete(name)
diff --git a/source/blender/windowmanager/intern/wm_platform_support.c b/source/blender/windowmanager/intern/wm_platform_support.c
index becc2d8..9b5f808 100644
--- a/source/blender/windowmanager/intern/wm_platform_support.c
+++ b/source/blender/windowmanager/intern/wm_platform_support.c
@@ -102,7 +102,7 @@ bool WM_platform_support_perform_checks()
char link[WM_PLATFORM_SUPPORT_TEXT_SIZE];
bool result = true;
-
+#ifndef __HAIKU__
eGPUSupportLevel support_level = GPU_platform_support_level();
const char *platform_key = GPU_platform_support_level_key();
@@ -200,6 +200,6 @@ bool WM_platform_support_perform_checks()
WM_ghost_show_message_box(
title, message, "Find Latest Drivers", "Continue Anyway", link, dialog_options);
}
-
+#endif
return result;
}
--
2.37.3
From 3010f81f40069802a22ff7a36af37c29c2e4824f Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 26 Dec 2021 20:55:05 +1000
Subject: Link with icu
diff --git a/build_files/cmake/platform/platform_unix.cmake b/build_files/cmake/platform/platform_unix.cmake
index 7a427c4..a67d8e7 100644
--- a/build_files/cmake/platform/platform_unix.cmake
+++ b/build_files/cmake/platform/platform_unix.cmake
@@ -551,7 +551,7 @@ endif()
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
if(HAIKU)
- list(APPEND PLATFORM_LINKLIBS -lnetwork)
+ list(APPEND PLATFORM_LINKLIBS -lnetwork -liconv -licuuc -licui18n)
else()
list(APPEND PLATFORM_LINKLIBS -lutil -lc -lm)
endif()
--
2.37.3
From 47845ed1e534cd96b21476cd9ba056f799937f20 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 26 Dec 2021 20:55:26 +1000
Subject: Use clock_gettime for Haiku
diff --git a/source/blender/blenlib/intern/uuid.cc b/source/blender/blenlib/intern/uuid.cc
index 890a721..6fb1275 100644
--- a/source/blender/blenlib/intern/uuid.cc
+++ b/source/blender/blenlib/intern/uuid.cc
@@ -28,7 +28,7 @@ bUUID BLI_uuid_generate_random()
static_assert(std::mt19937_64::max() == 0xffffffffffffffffLL);
struct timespec ts;
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(__HAIKU__)
/* `timespec_get()` is only available on macOS 10.15+, so until that's the minimum version
* supported by Blender, use another function to get the timespec.
*
--
2.37.3
From 804676eb48c4afb4a61cdb56d789b7f8e0579833 Mon Sep 17 00:00:00 2001
From: Ken Mays <kmays2000@gmail.com>
Date: Sun, 9 Oct 2022 05:07:14 +1000
Subject: Fix for OpenEXR 3.0.x
diff --git a/build_files/cmake/Modules/FindOpenEXR.cmake b/build_files/cmake/Modules/FindOpenEXR.cmake
index 9107b56..a699628 100644
--- a/build_files/cmake/Modules/FindOpenEXR.cmake
+++ b/build_files/cmake/Modules/FindOpenEXR.cmake
@@ -86,7 +86,7 @@ IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
SET(_openexr_FIND_COMPONENTS
Iex
OpenEXR
- OpenEXRCore
+ Imath
IlmThread
)
ELSE()
--
2.37.3