mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-05-05 12:26:52 +02:00
testing/blender: new aport
This commit is contained in:
parent
a67a7b7a7f
commit
f2f79c067d
122
testing/blender/APKBUILD
Normal file
122
testing/blender/APKBUILD
Normal file
@ -0,0 +1,122 @@
|
||||
# Contributor: Mark Riedesel <mark@klowner.com>
|
||||
# Maintainer: Mark Riedesel <mark@klowner.com>
|
||||
pkgname=blender
|
||||
pkgver=2.77a
|
||||
pkgrel=0
|
||||
pkgdesc="3D Creation/Animation/Publishing System"
|
||||
url="http://www.blender.org/"
|
||||
arch="all"
|
||||
license="GPL2"
|
||||
depends="blender-shared=$pkgver-r$pkgrel"
|
||||
makedepends="cmake libx11-dev jpeg-dev zlib-dev libpng-dev freetype-dev python3-dev
|
||||
openimageio-dev opencolorio-dev glew-dev openal-soft-dev ffmpeg2.8-dev
|
||||
fftw-dev tiff-dev mesa-dev libxi-dev libsndfile-dev libxmu-dev boost-dev
|
||||
openexr-dev py-numpy-dev opensubdiv-dev"
|
||||
install=""
|
||||
subpackages="$pkgname-doc $pkgname-shared $pkgname-headless $pkgname-player py3-$pkgname:python"
|
||||
source="http://download.blender.org/source/${pkgname}-${pkgver}.tar.gz
|
||||
blender-2.77a-musl.patch"
|
||||
|
||||
builddir="$srcdir"/$pkgname-$pkgver
|
||||
|
||||
build() {
|
||||
# Headless
|
||||
cd "$builddir"
|
||||
mkdir "$builddir"/build-headless
|
||||
cd "$builddir"/build-headless
|
||||
_build -C../build_files/cmake/config/blender_headless.cmake
|
||||
|
||||
# Full
|
||||
cd "$builddir"
|
||||
mkdir "$builddir"/build-full
|
||||
cd "$builddir"/build-full
|
||||
_build -C../build_files/cmake/config/blender_full.cmake
|
||||
|
||||
# Python module
|
||||
cd "$builddir"
|
||||
mkdir "$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))')
|
||||
|
||||
cmake .. $@ \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DWITH_PYTHON_INSTALL:BOOL=OFF \
|
||||
-DWITH_INSTALL_PORTABLE:BOOL=OFF \
|
||||
-DWITH_OPENCOLORIO:BOOL=ON \
|
||||
-DPYTHON_VERSION=$PY_VERSION \
|
||||
-DPYTHON_LIBPATH=/usr/lib \
|
||||
-DPYTHON_LIBRARY=python${PY_VERSION}m \
|
||||
-DPYTHON_INCLUDE_DIRS=/usr/include/python${PY_VERSION}m \
|
||||
-DNO_EXECINFO:BOOL=ON \
|
||||
|| return 1
|
||||
make || return 1
|
||||
}
|
||||
|
||||
|
||||
package() {
|
||||
local PY_VERSION=$(python3 -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))')
|
||||
local VERSION=$(echo $pkgver | grep -o '[0-9]+\.[0-9]+')
|
||||
|
||||
# Install headless files
|
||||
cd "$builddir"/build-headless
|
||||
make DESTDIR="$pkgdir"/headless install || return 1
|
||||
|
||||
# Rename the headless blender to blender-headless
|
||||
mkdir -p "$pkgdir"/usr/bin
|
||||
mv "$pkgdir"/headless/usr/bin/blender "$pkgdir"/usr/bin/blender-headless || return 1
|
||||
rm -rf "$pkgdir"/headless
|
||||
|
||||
# Install python module
|
||||
cd "$builddir"/build-py
|
||||
make DESTDIR="$pkgdir" install || return 1
|
||||
|
||||
# Install the full package
|
||||
cd "$builddir"/build-full
|
||||
make DESTDIR="$pkgdir" install || return 1
|
||||
}
|
||||
|
||||
shared() {
|
||||
pkgdesc="Blender shared runtime data and add-on scripts"
|
||||
arch="noarch"
|
||||
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/
|
||||
}
|
||||
|
||||
player() {
|
||||
pkgdesc="Blender player runtime"
|
||||
mkdir -p "$subpkgdir"/usr/bin
|
||||
mv "$pkgdir"/usr/bin/blenderplayer "$subpkgdir"/usr/bin/
|
||||
}
|
||||
|
||||
python() {
|
||||
local PY_VERSION=$(python3 -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))')
|
||||
local VERSION=$(echo $pkgver | grep -o '[0-9]*\.[0-9]*')
|
||||
|
||||
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/${VERSION} "$subpkgdir"/usr/lib/python${PY_VERSION}/site-packages/${VERSION}
|
||||
}
|
||||
|
||||
md5sums="bb192274fe5957ce62bce9f0557ea4b4 blender-2.77a.tar.gz
|
||||
93bda85f6a3c0c587ee7790b7d35e4cc blender-2.77a-musl.patch"
|
||||
sha256sums="3770fa00f50a6654eb8b5fe625ca8942ab5672ac4685b7af24597251ace85c67 blender-2.77a.tar.gz
|
||||
f536a69354bd1a4b482a6150542d528a92a0107ff639832500f7dc28c64360ec blender-2.77a-musl.patch"
|
||||
sha512sums="4f8223a3786b80fa613ace27bea9349309b5857bcc1fafdb7d769f6192d5cb455ce4faf60920d7a1c2cb82ef8c40a10b25a760748b305c16c550657cf1e4df93 blender-2.77a.tar.gz
|
||||
6ecf4a6a9b56f045c9d14093ae13c6cb714ce8dff2212a08830edcf540ec47f143c2670e197a97ca42f380a60825abab4e7b3d7dbc88c44265fae7f83f2cd602 blender-2.77a-musl.patch"
|
||||
72
testing/blender/blender-2.77a-musl.patch
Normal file
72
testing/blender/blender-2.77a-musl.patch
Normal file
@ -0,0 +1,72 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1efaa14..20a75a1 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1220,6 +1220,19 @@ if(UNIX AND NOT APPLE)
|
||||
set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -static-intel")
|
||||
endif()
|
||||
|
||||
+ # musl-libc related checks (missing execinfo.h, and feenableexcept())
|
||||
+ include(CheckIncludeFiles)
|
||||
+ check_include_files(execinfo.h HAVE_EXECINFO_H)
|
||||
+ if (HAVE_EXECINFO_H)
|
||||
+ add_definitions(-DHAVE_EXECINFO_H)
|
||||
+ endif()
|
||||
+
|
||||
+ include(CheckLibraryExists)
|
||||
+ check_library_exists(m feenableexcept "fenv.h" HAVE_FEENABLEEXCEPT)
|
||||
+ if (HAVE_FEENABLEEXCEPT)
|
||||
+ add_definitions(-DHAVE_FEENABLEEXCEPT)
|
||||
+ endif()
|
||||
+
|
||||
elseif(WIN32)
|
||||
|
||||
add_definitions(-DWIN32)
|
||||
diff --git a/intern/guardedalloc/intern/mallocn_intern.h b/intern/guardedalloc/intern/mallocn_intern.h
|
||||
index 3f7e462..4fb49f3 100644
|
||||
--- a/intern/guardedalloc/intern/mallocn_intern.h
|
||||
+++ b/intern/guardedalloc/intern/mallocn_intern.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#undef HAVE_MALLOC_STATS
|
||||
#define USE_MALLOC_USABLE_SIZE /* internal, when we have malloc_usable_size() */
|
||||
|
||||
-#if defined(__linux__) || (defined(__FreeBSD_kernel__) && !defined(__FreeBSD__)) || defined(__GLIBC__)
|
||||
+#if (defined(__linux__) && defined(HAVE_EXECINFO_H)) || (defined(__FreeBSD_kernel__) && !defined(__FreeBSD__)) || defined(__GLIBC__)
|
||||
# include <malloc.h>
|
||||
# define HAVE_MALLOC_STATS
|
||||
#elif defined(__FreeBSD__)
|
||||
diff --git a/source/blender/blenlib/intern/system.c b/source/blender/blenlib/intern/system.c
|
||||
index 5d1bdd6..b1c004f 100644
|
||||
--- a/source/blender/blenlib/intern/system.c
|
||||
+++ b/source/blender/blenlib/intern/system.c
|
||||
@@ -30,7 +30,7 @@
|
||||
#include "MEM_guardedalloc.h"
|
||||
|
||||
/* for backtrace */
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
+#if (defined(__linux__) && defined(HAVE_EXECINFO_H)) || defined(__APPLE__)
|
||||
# include <execinfo.h>
|
||||
#elif defined(WIN32)
|
||||
# include <windows.h>
|
||||
@@ -76,7 +76,7 @@ void BLI_system_backtrace(FILE *fp)
|
||||
{
|
||||
/* ------------- */
|
||||
/* Linux / Apple */
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
+#if (defined(__linux__) && defined(HAVE_EXECINFO_H)) || defined(__APPLE__)
|
||||
|
||||
#define SIZE 100
|
||||
void *buffer[SIZE];
|
||||
diff --git a/source/creator/creator.c b/source/creator/creator.c
|
||||
index bf8347d..1dabe60 100644
|
||||
--- a/source/creator/creator.c
|
||||
+++ b/source/creator/creator.c
|
||||
@@ -618,7 +618,7 @@ static int set_fpe(int UNUSED(argc), const char **UNUSED(argv), void *UNUSED(dat
|
||||
* set breakpoints on fpe_handler */
|
||||
signal(SIGFPE, fpe_handler);
|
||||
|
||||
-# if defined(__linux__) && defined(__GNUC__)
|
||||
+# if defined(__linux__) && defined(__GNUC__) && defined(HAVE_FEENABLEEXCEPT)
|
||||
feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW);
|
||||
# endif /* defined(__linux__) && defined(__GNUC__) */
|
||||
# if defined(OSX_SSE_FPE)
|
||||
Loading…
x
Reference in New Issue
Block a user