mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-22 19:50:05 +02:00
blender: fix and enable 32 bit build (#4666)
This commit is contained in:
@@ -21,20 +21,20 @@ ADDITIONAL_FILES="
|
||||
Blender.sh
|
||||
"
|
||||
|
||||
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="?x86"
|
||||
ARCHITECTURES="!x86_gcc2 x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PYTHON_VERSION="3.6"
|
||||
|
||||
PROVIDES="
|
||||
blender$secondaryArchSuffix = $portVersion
|
||||
app:blender
|
||||
cmd:blender_thumbnailer.py
|
||||
cmd:blender_thumbnailer.py${secondaryArchSuffix}
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
numpy_python3
|
||||
requests_python3
|
||||
numpy${secondaryArchSuffix}_python36
|
||||
requests_python36
|
||||
lib:libalembic$secondaryArchSuffix
|
||||
lib:libavcodec$secondaryArchSuffix
|
||||
lib:libavdevice$secondaryArchSuffix
|
||||
@@ -76,11 +76,11 @@ REQUIRES="
|
||||
lib:libopenvdb$secondaryArchSuffix
|
||||
lib:libosdCPU$secondaryArchSuffix
|
||||
lib:libosdGPU$secondaryArchSuffix
|
||||
lib:liboslcomp$secondaryArchSuffix
|
||||
# lib:liboslcomp$secondaryArchSuffix
|
||||
lib:libpcre$secondaryArchSuffix
|
||||
lib:libpng16$secondaryArchSuffix
|
||||
lib:libpugixml$secondaryArchSuffix
|
||||
lib:libpython${PYTHON_VERSION}m
|
||||
lib:libpython${PYTHON_VERSION}m$secondaryArchSuffix
|
||||
lib:libsdl2_2.0$secondaryArchSuffix
|
||||
lib:libsndfile$secondaryArchSuffix
|
||||
lib:libtbb$secondaryArchSuffix
|
||||
@@ -123,7 +123,7 @@ BUILD_REQUIRES="
|
||||
devel:libilmthread_2_4$secondaryArchSuffix
|
||||
devel:libimath_2_4$secondaryArchSuffix
|
||||
devel:libjpeg$secondaryArchSuffix
|
||||
devel:libLLVM_9.0.0$secondaryArchSuffix
|
||||
devel:libllvm_9$secondaryArchSuffix
|
||||
devel:liblzma$secondaryArchSuffix
|
||||
devel:liblzo2$secondaryArchSuffix
|
||||
devel:libopenal$secondaryArchSuffix
|
||||
@@ -134,11 +134,11 @@ BUILD_REQUIRES="
|
||||
devel:libopenvdb$secondaryArchSuffix
|
||||
devel:libosdCPU$secondaryArchSuffix
|
||||
devel:libosdGPU$secondaryArchSuffix
|
||||
devel:liboslcomp$secondaryArchSuffix
|
||||
# devel:liboslcomp$secondaryArchSuffix
|
||||
devel:libpcre$secondaryArchSuffix
|
||||
devel:libpng16$secondaryArchSuffix
|
||||
devel:libpugixml$secondaryArchSuffix
|
||||
devel:libpython${PYTHON_VERSION}m
|
||||
devel:libpython${PYTHON_VERSION}m$secondaryArchSuffix
|
||||
devel:libsdl2_2.0$secondaryArchSuffix
|
||||
devel:libsndfile$secondaryArchSuffix
|
||||
devel:libtbb$secondaryArchSuffix
|
||||
@@ -150,7 +150,7 @@ BUILD_REQUIRES="
|
||||
lib:libavdevice$secondaryArchSuffix # REQUIRED
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
numpy_python36
|
||||
numpy${secondaryArchSuffix}_python36
|
||||
requests_python36
|
||||
cmd:cmake
|
||||
cmd:find
|
||||
@@ -169,26 +169,30 @@ BUILD()
|
||||
{
|
||||
PORT_SUBFOLDER=`echo $portVersion | sed 's/.$//'`
|
||||
|
||||
# OpenCOLLADA workaround
|
||||
COLLADA_HEADERS="`finddir B_SYSTEM_HEADERS_DIRECTORY`/opencollada"
|
||||
COLLADA_INC_FLAGS="-I$COLLADA_HEADERS/COLLADABaseUtils \
|
||||
-I$COLLADA_HEADERS/COLLADAFramework \
|
||||
-I$COLLADA_HEADERS/COLLADASaxFrameworkLoader \
|
||||
-I$COLLADA_HEADERS/COLLADAStreamWriter \
|
||||
-I$COLLADA_HEADERS/GeneratedSaxParser"
|
||||
INCLUDE_DIR="`finddir B_SYSTEM_HEADERS_DIRECTORY`${secondaryArchSubDir}"
|
||||
|
||||
# Haiku specific settings
|
||||
BLENDER_PLATFORM_SPECIFIC="-DCMAKE_INSTALL_PREFIX:PATH=$appsDir/Blender \
|
||||
-DPYTHON_VERSION=${PYTHON_VERSION} \
|
||||
-DPYTHON_INCLUDE_DIR=`finddir B_SYSTEM_HEADERS_DIRECTORY`/python${PYTHON_VERSION}m/ \
|
||||
-DPYTHON_LIBRARY=`finddir B_SYSTEM_LIB_DIRECTORY`/libpython${PYTHON_VERSION}m.so.1.0 \
|
||||
-DPYTHON_LIBRARY=`finddir B_SYSTEM_LIB_DIRECTORY`${secondaryArchSubDir}/libpython${PYTHON_VERSION}m.so.1.0 \
|
||||
-DPYTHON_EXECUTABLE=/bin/python${PYTHON_VERSION} \
|
||||
-DPYTHON_NUMPY_PATH=`finddir B_SYSTEM_LIB_DIRECTORY`/python${PYTHON_VERSION}/vendor-packages \
|
||||
-DPYTHON_REQUESTS_PATH=`finddir B_SYSTEM_LIB_DIRECTORY`/python${PYTHON_VERSION}/vendor-packages \
|
||||
-DOPENJPEG_INCLUDE_DIR=`finddir B_SYSTEM_HEADERS_DIRECTORY` \
|
||||
-DOPENJPEG_LIBRARY=`finddir B_SYSTEM_LIB_DIRECTORY` \
|
||||
-DZLIB_LIBRARY_RELEASE=`finddir B_SYSTEM_LIB_DIRECTORY`/libz.so.1 \
|
||||
-DOPENCOLLADA_COLLADABASEUTILS_INCLUDE_DIR=${INCLUDE_DIR}/opencollada/COLLADABaseUtils \
|
||||
-DOPENCOLLADA_COLLADAFRAMEWORK_INCLUDE_DIR=${INCLUDE_DIR}/opencollada/COLLADAFramework \
|
||||
-DOPENCOLLADA_COLLADASAXFRAMEWORKLOADER_INCLUDE_DIR=${INCLUDE_DIR}/opencollada/COLLADASaxFrameworkLoader \
|
||||
-DOPENCOLLADA_COLLADASTREAMWRITER_INCLUDE_DIR=${INCLUDE_DIR}/opencollada/COLLADAStreamWriter \
|
||||
-DOPENCOLLADA_GENERATEDSAXPARSER_INCLUDE_DIR=${INCLUDE_DIR}/opencollada/GeneratedSaxParser \
|
||||
-DOPENJPEG_INCLUDE_DIR=${INCLUDE_DIR} \
|
||||
-DOPENJPEG_LIBRARY=`finddir B_SYSTEM_LIB_DIRECTORY`${secondaryArchSubDir} \
|
||||
-DOPENSUBDIV_INCLUDE_DIR=${INCLUDE_DIR} \
|
||||
-DZLIB_LIBRARY_RELEASE=`finddir B_SYSTEM_LIB_DIRECTORY`${secondaryArchSubDir}/libz.so.1 \
|
||||
-DWITH_GHOST_SDL=ON \
|
||||
-DWITH_BUILDINFO=OFF \
|
||||
-DWITH_PYTHON_INSTALL=OFF \
|
||||
-DWITH_PYTHON_INSTALL_NUMPY=OFF \
|
||||
-DWITH_PYTHON_INSTALL_REQUESTS=OFF \
|
||||
-Wno-dev"
|
||||
|
||||
# Release settings breaks build on Haiku
|
||||
@@ -205,7 +209,6 @@ BUILD()
|
||||
|
||||
# Release build settings
|
||||
BLENDER_RELEASE="-DWITH_ALEMBIC=ON \
|
||||
-DWITH_BUILDINFO=ON \
|
||||
-DWITH_BULLET=ON \
|
||||
-DWITH_CODEC_AVI=ON \
|
||||
-DWITH_CODEC_FFMPEG=ON \
|
||||
@@ -243,17 +246,13 @@ BUILD()
|
||||
-DWITH_OPENMP=ON \
|
||||
-DWITH_OPENVDB=ON \
|
||||
-DWITH_OPENVDB_BLOSC=ON \
|
||||
-DWITH_PYTHON_INSTALL=ON \
|
||||
-DWITH_RAYOPTIMIZATION=ON \
|
||||
-DWITH_SDL=ON \
|
||||
-DWITH_PLAYER=OFF \
|
||||
-DWITH_OPENSUBDIV=ON \
|
||||
-DWITH_PYTHON_INSTALL=ON \
|
||||
-DWITH_PYTHON_INSTALL_NUMPY=ON \
|
||||
-DWITH_PYTHON_INSTALL_REQUESTS=ON"
|
||||
-DWITH_OPENSUBDIV=ON"
|
||||
|
||||
# Extra CXX Flags
|
||||
BLENDER_CXX="-std=c++11 $COLLADA_INC_FLAGS"
|
||||
BLENDER_CXX="-std=c++11"
|
||||
|
||||
mkdir -p build_haiku
|
||||
cd build_haiku
|
||||
|
||||
@@ -1,8 +1,18 @@
|
||||
From 8b0390f920d255529bbcda80f0a0e4712d0475a2 Mon Sep 17 00:00:00 2001
|
||||
From c369682bd92ac8313d2186d6ed43f9859d91439d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Tue, 19 Sep 2017 23:03:48 +0200
|
||||
Subject: Haiku patchset
|
||||
Subject: [PATCH 01/10] Haiku patchset
|
||||
|
||||
---
|
||||
CMakeLists.txt | 6 ++++--
|
||||
build_files/cmake/macros.cmake | 3 +++
|
||||
build_files/cmake/platform/platform_unix.cmake | 6 +++++-
|
||||
intern/guardedalloc/intern/mallocn_intern.h | 3 +++
|
||||
intern/libmv/libmv/numeric/numeric.h | 3 ++-
|
||||
source/blender/blenlib/BLI_sys_types.h | 2 +-
|
||||
source/blender/blenlib/intern/fileops.c | 11 +++++++++++
|
||||
source/blender/blenlib/intern/storage.c | 2 +-
|
||||
8 files changed, 30 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index bfea2dd..ebe6bef 100644
|
||||
@@ -151,14 +161,16 @@ index b819c51..9fb3fbf 100644
|
||||
# include <sys/statvfs.h>
|
||||
# define USE_STATFS_STATVFS
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From 261a813d36eb18dcd15499882ea0e6b4e92d4dcf Mon Sep 17 00:00:00 2001
|
||||
From 8b837c040845fc8c9c41e97e5c3119a465012ff4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Tue, 19 Sep 2017 23:15:20 +0200
|
||||
Subject: Haiku SDL2 check fix
|
||||
Subject: [PATCH 02/10] Haiku SDL2 check fix
|
||||
|
||||
---
|
||||
build_files/cmake/Modules/FindSDL2.cmake | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/build_files/cmake/Modules/FindSDL2.cmake b/build_files/cmake/Modules/FindSDL2.cmake
|
||||
index 2a835cf..61b7dee 100644
|
||||
@@ -174,14 +186,18 @@ index 2a835cf..61b7dee 100644
|
||||
|
||||
FIND_LIBRARY(SDL2_LIBRARY
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From bec15f560b9c6ba34e8b6c524d09a36002731212 Mon Sep 17 00:00:00 2001
|
||||
From 4dce957d591ef33cee42bcbbef8166aa452c6289 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Tue, 19 Sep 2017 23:52:27 +0200
|
||||
Subject: In-tree glog supporting patches
|
||||
Subject: [PATCH 03/10] In-tree glog supporting patches
|
||||
|
||||
---
|
||||
extern/glog/src/config.h | 2 +
|
||||
extern/glog/src/config_haiku.h | 172 +++++++++++++++++++++++++++++++++
|
||||
2 files changed, 174 insertions(+)
|
||||
create mode 100644 extern/glog/src/config_haiku.h
|
||||
|
||||
diff --git a/extern/glog/src/config.h b/extern/glog/src/config.h
|
||||
index f5c9c0b..2703b7b 100644
|
||||
@@ -373,14 +389,16 @@ index 0000000..4e6703b
|
||||
+# define NO_FRAME_POINTER
|
||||
+#endif
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From 802a232a87f6e571165e0f8cd90ebf20d15df6b7 Mon Sep 17 00:00:00 2001
|
||||
From 1b05076f83ea850591db84488d2a384d1b060dbc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Sat, 16 Dec 2017 17:04:56 +0100
|
||||
Subject: OpenCollada support
|
||||
Subject: [PATCH 04/10] OpenCollada support
|
||||
|
||||
---
|
||||
build_files/cmake/Modules/FindOpenCOLLADA.cmake | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/build_files/cmake/Modules/FindOpenCOLLADA.cmake b/build_files/cmake/Modules/FindOpenCOLLADA.cmake
|
||||
index 63bc520..28cf0b9 100644
|
||||
@@ -403,14 +421,19 @@ index 63bc520..28cf0b9 100644
|
||||
${_opencollada_SEARCH_DIRS}
|
||||
)
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From b057f86bd56301ef97138119a5b20e9db746863e Mon Sep 17 00:00:00 2001
|
||||
From 01e1ef3ad2140ef425329f12acc3bf2701a7015e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Sat, 4 Aug 2018 12:42:53 +0200
|
||||
Subject: FFMPEG4 patches
|
||||
Subject: [PATCH 05/10] FFMPEG4 patches
|
||||
|
||||
---
|
||||
intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp | 4 ++--
|
||||
intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp | 6 +++---
|
||||
source/blender/blenkernel/intern/writeffmpeg.c | 14 ++++++--------
|
||||
source/blender/imbuf/intern/indexer.c | 2 +-
|
||||
4 files changed, 12 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp b/intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp
|
||||
index e9eea19..84aea33 100644
|
||||
@@ -526,14 +549,17 @@ index e1b3abc..1850ffd 100644
|
||||
|
||||
if (avio_open(&rv->of->pb, fname, AVIO_FLAG_WRITE) < 0) {
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From 70f94f34c7ad4d6d466213bd4874fff681cc2f1c Mon Sep 17 00:00:00 2001
|
||||
From ca3381eb08d068d6dcc817b3f23ba24eea4b14ea Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
|
||||
Date: Thu, 22 Aug 2019 18:07:13 +0200
|
||||
Subject: Build fixes from FreeBSD
|
||||
Subject: [PATCH 06/10] Build fixes from FreeBSD
|
||||
|
||||
---
|
||||
source/blender/collada/DocumentImporter.cpp | 5 +++++
|
||||
source/blender/collada/DocumentImporter.h | 2 ++
|
||||
2 files changed, 7 insertions(+)
|
||||
|
||||
diff --git a/source/blender/collada/DocumentImporter.cpp b/source/blender/collada/DocumentImporter.cpp
|
||||
index 435eaa0..8708926 100644
|
||||
@@ -565,14 +591,17 @@ index 62f76db..1f3b64f 100644
|
||||
|
||||
bool writeMaterial(const COLLADAFW::Material*);
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From 3f56877f3e1cf268dfd0d7b3313dd239a8bf1188 Mon Sep 17 00:00:00 2001
|
||||
From e30015b3cc19da3e3f641551a7341005b096a92e Mon Sep 17 00:00:00 2001
|
||||
From: Jerome Duval <jerome.duval@gmail.com>
|
||||
Date: Thu, 7 Nov 2019 18:35:57 +0100
|
||||
Subject: applying patch blender-2.79b-gcc-8.patch
|
||||
Subject: [PATCH 07/10] applying patch blender-2.79b-gcc-8.patch
|
||||
|
||||
---
|
||||
intern/cycles/util/util_sseb.h | 2 +-
|
||||
intern/itasc/kdl/tree.hpp | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/intern/cycles/util/util_sseb.h b/intern/cycles/util/util_sseb.h
|
||||
index 6e66970..9ffe391 100644
|
||||
@@ -601,13 +630,12 @@ index c8a253f..bd35f82 100644
|
||||
class TreeElement
|
||||
{
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
|
||||
From db0d73ece1ca34119b8f706c4d745c40549a4397 Mon Sep 17 00:00:00 2001
|
||||
From 0e2b491eaba6074cdd9fa508c6bc571a6cd1b60e Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Sharybin <sergey.vfx@gmail.com>
|
||||
Date: Tue, 11 Dec 2018 12:17:26 +0100
|
||||
Subject: Update code to be compatible with OIIO 2.0
|
||||
Subject: [PATCH 08/10] Update code to be compatible with OIIO 2.0
|
||||
|
||||
There are some changes in API of OpenImageIO, but those are quite
|
||||
simple to keep working with older and newer library versions.
|
||||
@@ -617,6 +645,16 @@ Reviewers: brecht
|
||||
Reviewed By: brecht
|
||||
|
||||
Differential Revision: https://developer.blender.org/D4064
|
||||
---
|
||||
intern/cycles/blender/blender_python.cpp | 2 +-
|
||||
intern/cycles/graph/node_xml.cpp | 2 +-
|
||||
intern/cycles/render/buffers.cpp | 5 ++--
|
||||
intern/cycles/render/image.cpp | 16 ++++-------
|
||||
intern/cycles/render/image.h | 3 +-
|
||||
intern/cycles/util/util_unique_ptr.h | 28 +++++++++++++++++++
|
||||
.../imbuf/intern/oiio/openimageio_api.cpp | 19 ++++++-------
|
||||
7 files changed, 48 insertions(+), 27 deletions(-)
|
||||
create mode 100644 intern/cycles/util/util_unique_ptr.h
|
||||
|
||||
diff --git a/intern/cycles/blender/blender_python.cpp b/intern/cycles/blender/blender_python.cpp
|
||||
index 54973fd..bee6dd1 100644
|
||||
@@ -891,5 +929,55 @@ index b123d50..7f2fac9 100644
|
||||
|
||||
if (!ibuf)
|
||||
--
|
||||
2.21.0
|
||||
2.24.1
|
||||
|
||||
From 2888d696409b685e22c195914d91338c4bcec086 Mon Sep 17 00:00:00 2001
|
||||
From: X512 <danger_mail@list.ru>
|
||||
Date: Wed, 29 Jan 2020 14:07:31 +0900
|
||||
Subject: [PATCH 09/10] Haiku: fix build for 32 bit
|
||||
|
||||
---
|
||||
intern/cycles/util/util_simd.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/intern/cycles/util/util_simd.h b/intern/cycles/util/util_simd.h
|
||||
index 587febe..d25d7f8 100644
|
||||
--- a/intern/cycles/util/util_simd.h
|
||||
+++ b/intern/cycles/util/util_simd.h
|
||||
@@ -229,7 +229,7 @@ __forceinline int __btr(int v, int i) {
|
||||
int r = 0; asm ("btr %1,%0" : "=r"(r) : "r"(i), "0"(v) : "flags"); return r;
|
||||
}
|
||||
|
||||
-#if (defined(__KERNEL_64_BIT__) || defined(__APPLE__)) && !(defined(__ILP32__) && defined(__x86_64__))
|
||||
+#if (defined(__KERNEL_64_BIT__) || defined(__APPLE__) || defined(__HAIKU__)) && !(defined(__ILP32__) && defined(__x86_64__))
|
||||
__forceinline size_t __bsf(size_t v) {
|
||||
size_t r = 0; asm ("bsf %1,%0" : "=r"(r) : "r"(v)); return r;
|
||||
}
|
||||
--
|
||||
2.24.1
|
||||
|
||||
From e0d48e0823a316a66b11c7c14fe289f53b44c2d8 Mon Sep 17 00:00:00 2001
|
||||
From: X512 <danger_mail@list.ru>
|
||||
Date: Wed, 29 Jan 2020 17:30:56 +0900
|
||||
Subject: [PATCH 10/10] Fix TLS for haiku
|
||||
|
||||
---
|
||||
source/blender/blenlib/BLI_threads.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/source/blender/blenlib/BLI_threads.h b/source/blender/blenlib/BLI_threads.h
|
||||
index 60da6b3..8ad0d69 100644
|
||||
--- a/source/blender/blenlib/BLI_threads.h
|
||||
+++ b/source/blender/blenlib/BLI_threads.h
|
||||
@@ -186,7 +186,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)
|
||||
--
|
||||
2.24.1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user