summaryrefslogtreecommitdiff
path: root/libre/blender
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2023-01-25 00:57:41 -0500
committerbill-auger <mr.j.spam.me@gmail.com>2023-02-08 15:55:53 -0500
commit971d3ca74cf6b51c83ad5d924222fc0568bfae6c (patch)
tree0ff0579db0f7fc52641647e57428efc8b85f887d /libre/blender
parent512fe7d0b51da6dd9bdd66b7637ebff7522dac40 (diff)
[blender]: upgrade to v3.4.1
Diffstat (limited to 'libre/blender')
-rw-r--r--libre/blender/PKGBUILD39
1 files changed, 24 insertions, 15 deletions
diff --git a/libre/blender/PKGBUILD b/libre/blender/PKGBUILD
index 4b8ad05d4..8bd31ffd8 100644
--- a/libre/blender/PKGBUILD
+++ b/libre/blender/PKGBUILD
@@ -30,8 +30,8 @@
pkgname=blender
pkgver=3.4.1
[[ "${CARCH}" == 'i686' ]] && pkgver=3.1.2
-pkgrel=6
-pkgrel+=.parabola2
+pkgrel=12
+pkgrel+=.parabola1
epoch=17
pkgdesc="A fully integrated 3D graphics creation suite"
arch=('x86_64')
@@ -43,16 +43,16 @@ depends=('libpng' 'libtiff' 'openexr' 'python' 'desktop-file-utils' 'python-requ
'freetype2' 'openal' 'ffmpeg' 'fftw' 'boost-libs' 'opencollada' 'alembic' 'openxr'
'openimageio' 'libsndfile' 'jack' 'opencolorio' 'openshadinglanguage' 'openimagedenoise'
'jemalloc' 'libspnav' 'ptex' 'opensubdiv' 'openvdb' 'log4cplus' 'sdl2' 'embree' 'libharu'
- 'draco')
-[[ "${CARCH}" != 'x86_64' ]] && depends=( ${depends[*]/openimagedenoise/} ) # unavailable for armv7h and i686
-[[ "${CARCH}" == 'armv7h' ]] && depends=( ${depends[*]/embree/} ) # unavailable for armv7h
-[[ "${CARCH}" == 'i686' ]] && depends=( ${depends[*]/jack/pipewire-jack} ) # FS32#297: unable to satisfy dependency 'libcelt0.so=2-32' required by jack2
-[[ "${CARCH}" == 'i686' ]] && depends=( ${depends[*]/opensubdiv/} ) # FS32#182: fails to rebuild upstream
-[[ "${CARCH}" == 'i686' ]] && depends=( ${depends[*]/openexr/} ) # FS32#182: fails to rebuild upstream
-[[ "${CARCH}" == 'i686' ]] && depends=( ${depends[*]/openvdb/} ) # FS32#182: fails to rebuild upstream
-makedepends=('cmake' 'boost' 'mesa' 'git' 'llvm' 'cuda' 'ninja')
+ 'draco' 'openpgl')
+[[ "${CARCH}" != x86_64 ]] && depends=( ${depends[*]/openimagedenoise/} ) # unavailable for armv7h and i686
+[[ "${CARCH}" == armv7h ]] && depends=( ${depends[*]/embree/} ) # unavailable for armv7h
+[[ "${CARCH}" == i686 ]] && depends=( ${depends[*]/jack/pipewire-jack} ) # (arch32) FS32#297: unable to satisfy dependency 'libcelt0.so=2-32' required by jack2
+makedepends=('cmake' 'boost' 'mesa' 'git' 'llvm' 'cuda' 'ninja' 'wayland-protocols' 'libxkbcommon'
+ 'libdecor')
makedepends=( ${makedepends[*]/cuda/} ) # non-free
-[[ "${CARCH}" == 'i686' ]] && makedepends+=( boost178-libs clang13 )
+[[ "${CARCH}" == i686 ]] && makedepends+=( boost178-libs clang13 )
+makedepends+=( libepoxy ) # FIXME: Could NOT find Epoxy (missing: Epoxy_LIBRARY Epoxy_INCLUDE_DIR)
+optdepends=('libdecor: wayland support')
options=(!strip)
source=("git+https://git.blender.org/blender.git#tag=v$pkgver"
"git+https://git.blender.org/blender-addons.git"
@@ -127,9 +127,13 @@ prepare() {
## technical patching ##
+ # fix build with boost 1.81.0
+ git format-patch -1 --stdout 79837c5ed4b5 | patch -Np1
+
patch -p1 -i "$srcdir"/force-draco1.patch
patch -p1 -d release/scripts/addons -i "$srcdir"/force-draco2.patch
+ # arch-specific technical patching
case "${CARCH}" in
armv7h)
;;
@@ -145,13 +149,18 @@ prepare() {
# did you mean ‘atomic_add_and_fetch_uint32’? [-Werror=implicit-function-declaration]
# this is known upstream
local sed_cmd='s| atomic_add_and_fetch_uint64(| atomic_add_and_fetch_uint32(|'
- sed -i "${sed_cmd}" source/blender/blenlib/intern/session_uuid.c ; ! grep ' atomic_add_and_fetch_uint64(|' source/blender/blenlib/intern/session_uuid.c ;
+ local target_file=source/blender/blenlib/intern/session_uuid.c
+ sed -i "${sed_cmd}" ${target_file} ; ! grep ' atomic_add_and_fetch_uint64(|' ${target_file} ;
# FIXME: intern/cycles/kernel/../util/transform_inverse.h:15:9: error: ‘ssef’ does not name a type
# -- SSE2 SIMD instructions enabled
- sed -i 's|if(NOT DEFINED SUPPORT_SSE2_BUILD|& AND FALSE|' build_files/cmake/macros.cmake ; grep 'if(NOT DEFINED SUPPORT_SSE2_BUILD AND FALSE' build_files/cmake/macros.cmake ;
+ sed_cmd='s|if(NOT DEFINED SUPPORT_SSE2_BUILD|& AND FALSE|'
+ target_file=build_files/cmake/macros.cmake
+ sed -i "${sed_cmd}" ${target_file} ; grep 'if(NOT DEFINED SUPPORT_SSE2_BUILD AND FALSE' ${target_file} ;
# the above change corrects 'SSE2 SIMD instructions enabled'; but the original 'ssef' error persists
- sed -i 's|# set(COMPILER_SSE2_FLAG)| unset(COMPILER_SSE2_FLAG)|' CMakeLists.txt ; ! grep '# set(COMPILER_SSE2_FLAG)' CMakeLists.txt ;
+ sed_cmd='s|# set(COMPILER_SSE2_FLAG)| unset(COMPILER_SSE2_FLAG)|'
+ target_file=CMakeLists.txt
+ sed -i "${sed_cmd}" ${target_file} ; ! grep '# set(COMPILER_SSE2_FLAG)' ${target_file} ;
# the original 'ssef' error persists - fixed by adding pkgver=3.1.2 and makedepends+=( boost178-libs clang13 )
# but then fails with: /usr/lib/gcc/i686-pc-linux-gnu/12.2.0/include/emmintrin.h:1586:1: error: inlining failed in call to ‘always_inline’ ‘__m128 _mm_castsi128_ps(__m128i)’: target specific option mismatch
# that is the same error as the recent mozilla - the option --disable-webrtc fix that; but that does not apply to blender
@@ -168,7 +177,7 @@ prepare() {
}
get_pyver() {
- case "${CARCH}" in armv7h) echo 3.10 ;; i686) echo 3.10 ;; *) echo 3.10 ;; esac
+ python -c 'import sys; print(str(sys.version_info[0]) + "." + str(sys.version_info[1]))'
}
build() {