# Template file for 'blender'
pkgname=blender
version=5.0.0
revision=1
archs="x86_64* aarch64* ppc64*"
build_style=cmake
build_helper="qemu numpy"
pycompile_dirs="usr/share/blender/${version%.*}/scripts"
configure_args="-DWITH_INSTALL_PORTABLE=OFF -DWITH_PYTHON_INSTALL=OFF
 -DWITH_JACK=ON -DWITH_CODEC_FFMPEG=ON -DWITH_CODEC_SNDFILE=ON -DWITH_OPENMP=ON
 -DWITH_FFTW3=ON -DWITH_MOD_OCEANSIM=ON -DWITH_CYCLES_EMBREE=OFF -DWITH_OPENCOLORIO=ON
 -DWITH_IMAGE_OPENEXR=ON -DWITH_IMAGE_OPENJPEG=ON -DWITH_OPENSUBDIV=ON
 -DWITH_OPENCOLLADA=ON -DWITH_SYSTEM_GLEW=ON -DWITH_OPENVDB=ON -DWITH_ALEMBIC=ON
 -DWITH_GHOST_X11=ON -DWITH_GHOST_WAYLAND=ON -DWITH_GHOST_LIBDECOR=ON
 -DWITH_BUILDINFO=OFF -DPYTHON_VERSION=${py3_ver} -DPYTHON_LIBPATH=${XBPS_CROSS_BASE}/usr/lib
 -DPYTHON_LIBRARY=python${py3_ver}${py3_abiver} -DPYTHON_INCLUDE_DIRS=${XBPS_CROSS_BASE}/${py3_inc}
 -DWITH_SYSTEM_LZO=ON -DWITH_SYSTEM_EIGEN3=ON -DWITH_SYSTEM_FREETYPE=ON
 -DWITH_DRACO=OFF"
hostmakedepends="pkg-config python3 wayland-devel"
makedepends="libgomp-devel libpng-devel tiff-devel python3-devel glu-devel
 glew-devel freetype-devel jack-devel libopenal-devel libsndfile-devel
 libsamplerate-devel ffmpeg6-devel fftw-devel boost-headers pcre-devel llvm
 libopenexr-devel libopenjpeg2-devel libXi-devel openimageio-devel
 opencolorio-devel opencollada-devel python3-numpy libXrender-devel
 OpenSubdiv-devel tbb-devel libxml2-devel openvdb-devel alembic-devel
 pugixml-devel libXxf86vm-devel libepoxy-devel gmp-devel gmpxx-devel
 wayland-protocols wayland-devel libxkbcommon-devel libdecor-devel
 libspnav-devel libwebp-devel potrace-devel Haru-devel openxr-devel
 pipewire-devel pulseaudio-devel eigen lzo-devel vulkan-loader-devel shaderc"
depends="desktop-file-utils hicolor-icon-theme"
short_desc="3D graphics creation suite"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="GPL-3.0-or-later"
homepage="https://www.blender.org"
distfiles="https://download.blender.org/source/blender-${version}.tar.xz"
checksum=120b45227b1dba2ecec116c6f924f3e7efabebac762e030552fdf70baff1b5b4
python_version=3
LDFLAGS="-Wl,-z,stack-size=2097152"
# Blender tests are executed against a system installation of blender. This
# is currently not supported by xbps-src.
make_check=no

if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
	CFLAGS+=" -DZ7_AFFINITY_DISABLE"
	CXXFLAGS+=" -DZ7_AFFINITY_DISABLE"
	makedepends+=" libexecinfo-devel"
	configure_args+=" -DCMAKE_CXX_STANDARD_LIBRARIES=-lexecinfo"
else
	makedepends+=" jemalloc-devel"
fi

case "$XBPS_TARGET_MACHINE" in
x86_64*)
	# Blender is heavy itself,
	# it's insane to use it on machine without x86_64-v2,
	# which is what blender itself default to.
	build_options="simd"
	build_options_default="simd"
	# Enable Intel Open Image Denoise on x86_64
	makedepends+=" openimagedenoise-devel openpgl-devel"
	configure_args+=" -DWITH_OPENIMAGEDENOISE=ON"
	;;
esac

post_patch() {
	if [ ! "$build_option_simd" ]; then
		msg_normal "Dropping -march=x86-64-v2\n"
		patch -Np1 -i ${FILESDIR}/x86-64-v2.patch
	fi
}
