blob: 71b296fcee9bc1178634f3f4cbebbdc4c8d9c3f8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
|
# Contributor: Mark Riedesel <mark@klowner.com>
# Contributor: Leon Marz <main@lmarz.org>
# Maintainer: Leon Marz <main@lmarz.org>
pkgname=blender
pkgver=3.1.2
_pkgver=${pkgver%.[0-9]}
pkgrel=1
pkgdesc="3D Creation/Animation/Publishing System"
url="https://www.blender.org/"
arch="x86_64 aarch64" # limited by openvdb
license="GPL-2.0-or-later"
depends="blender-shared=$pkgver-r$pkgrel"
makedepends="cmake
alembic-dev
blosc-dev
boost-dev
eigen-dev
embree-dev
embree-static
ffmpeg-dev
fftw-dev
freetype-dev
glew-dev
gmp-dev
jack-dev
libharu-dev
libjpeg-turbo-dev
libpng-dev
libsndfile-dev
libtbb-dev
libx11-dev
libxi-dev
libxrender-dev
llvm13-dev
lzo-dev
openal-soft-dev
opencolorio-dev
openexr-dev
openimageio-dev
openjpeg-dev
opensubdiv-dev
openvdb-dev
openvdb-nanovdb
openxr-dev
osl
osl-dev
potrace-dev
pugixml-dev
pulseaudio-dev
py3-numpy-dev
python3-dev
samurai
sdl2-dev
tiff-dev
"
case "$CARCH" in
"x86_64") makedepends="$makedepends openimagedenoise-dev";;
esac
subpackages="$pkgname-doc $pkgname-shared::noarch $pkgname-headless py3-$pkgname:python"
source="https://download.blender.org/source/blender-$pkgver.tar.xz
0001-musl-fixes.patch
0002-fix-linking-issue.patch
0003-increase-thread-stack-size-for-musl.patch
"
build() {
# Headless
mkdir -p "$builddir"/build-headless
cd "$builddir"/build-headless
_build -C../build_files/cmake/config/blender_headless.cmake
# Full
mkdir -p "$builddir"/build-full
cd "$builddir"/build-full
_build -C../build_files/cmake/config/blender_full.cmake
# Python module
mkdir -p "$builddir"/build-py
cd "$builddir"/build-py
_build -C../build_files/cmake/config/bpy_module.cmake
}
_build() {
local _py_version=$(python3 -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))')
export CFLAGS="$CFLAGS -D__MUSL__"
export CXXFLAGS="$CXXFLAGS -D__MUSL__"
cmake .. "$@" \
-G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DWITH_PYTHON_INSTALL=OFF \
-DWITH_INSTALL_PORTABLE=OFF \
-DWITH_SYSTEM_LZO=ON \
-DWITH_SYSTEM_EIGEN3=ON \
-DWITH_SYSTEM_GLEW=ON \
-DPYTHON_VERSION=$_py_version
cmake --build .
}
package() {
# Install headless files
cd "$builddir"/build-headless
DESTDIR="$pkgdir"/headless cmake --install .
# Rename the headless blender to blender-headless
mkdir -p "$pkgdir"/usr/bin
mv "$pkgdir"/headless/usr/bin/blender "$pkgdir"/usr/bin/blender-headless
rm -rf "$pkgdir"/headless
# Install python module
cd "$builddir"/build-py
DESTDIR="$pkgdir" cmake --install .
# Install the full package
cd "$builddir"/build-full
DESTDIR="$pkgdir" cmake --install .
}
shared() {
pkgdesc="Blender shared runtime data and add-on scripts"
mkdir -p "$subpkgdir"/usr/share/
mv "$pkgdir"/usr/share/blender "$subpkgdir"/usr/share/
}
headless() {
pkgdesc="$pkgdesc (headless build)"
depends="blender-shared=$pkgver-r$pkgrel"
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/blender-headless "$subpkgdir"/usr/bin/
}
python() {
local _py_version=$(python3 -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))')
pkgdesc="Blender modules for Python 3"
mkdir -p "$subpkgdir"/usr/lib/python"$_py_version"/site-packages
mv "$pkgdir"/usr/lib/python"$_py_version"/site-packages/bpy.so "$subpkgdir"/usr/lib/python"$_py_version"/site-packages/
rm -rf "$pkgdir"/usr/lib
# Symlink to the blender-shared files
ln -s /usr/share/blender/"$_pkgver" "$subpkgdir"/usr/lib/python"$_py_version"/site-packages/"$_pkgver"
}
sha512sums="
e92aefbc020268e7347008e02d7fe2ef8670a568fab0ae2072ee82520ca67645e665e81ec2829b67a4de069ce1c0578bf2f7f4f783929e7574a8c9aef2f82a02 blender-3.1.2.tar.xz
427fd0fcc0547852a3d4f6bf5957e6f5944f5ccc708eff9e23638c4c077927d99eb22cbaa67dbc3f0242a5912445abf2c1cefad87ab944a68073801596866dfc 0001-musl-fixes.patch
33c11ecaf26753a27def935cadd14266409396d09f167b81bf15efc74bfa49c42d4176db33ae57ebb706e0123f193eff12456c100237501c6c6ff6df4a77cb78 0002-fix-linking-issue.patch
5dbc1eb2a530c8bbd98497ffa6303b437b47943b8f4a234117f7f6338f706f46f57767f6cae2203cba376a0cbf4fb1d04f87d0060fcb8e7532488c75e36fea4c 0003-increase-thread-stack-size-for-musl.patch
"
|