summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorhowetuft2022-03-05 23:03:36 +0100
committerhowetuft2022-03-05 23:03:36 +0100
commit1f8e256b06e6a1e086d23c51e1329602a88b1ba4 (patch)
tree108cf4090b39ac6f41915434a534486ee523cd2f /PKGBUILD
parentf733dd0d3b8aecb73ce493a03253bcfff62644ce (diff)
downloadaur-1f8e256b06e6a1e086d23c51e1329602a88b1ba4.tar.gz
Version 3.0.0
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD52
1 files changed, 31 insertions, 21 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 601954caee22..84786dce34e4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,37 +5,42 @@
# for instance: CUDA_ARCH=sm_50
[[ -v CUDA_ARCH ]] && _cuda_capability=(${CUDA_ARCH})
+# You may define CUDA_HOST_COMPILER to target specific compiler
+# for instance: CUDA_HOST_COMPILER=gcc-9
+[[ -v CUDA_HOST_COMPILER ]] && _cuda_host_compiler=(${CUDA_HOST_COMPILER})
+
pkgname=cycles-standalone
-pkgver=v2.93.0.r7.gacb51a8e
+pkgver=3.0.0
pkgrel=1
pkgdesc="Blender Cycles rendering engine, standalone version"
arch=(x86_64)
-url="https://wiki.blender.org/wiki/Source/Render/Cycles/Standalone"
+url="https://github.com/blender/cycles.git"
license=(Apache)
-depends=(libglvnd openexr glew pugixml freeglut openimageio tbb openvdb embree openimagedenoise opensubdiv openshadinglanguage)
+depends=(libglvnd openexr glew pugixml freeglut openimageio tbb openvdb embree openimagedenoise opensubdiv openshadinglanguage alembic sdl2)
makedepends=(cmake git boost llvm)
optdepends=(cuda optix)
provides=(cycles)
-source=("cycles-standalone::git+https://git.blender.org/cycles.git"
- SelectCudaComputeArch.patch
- OpenEXR3.patch
+source=("git+https://github.com/blender/cycles.git#commit=d52abf84fc7b765d9bf9d2d6b4751088eff4d848"
+ 0001-SelectCudaComputeArch.patch
+ 0002-OpenEXR3.patch
+ 0003-Remove-FindClang.patch
+ 0004-Add-CMake-option-to-control-CUDA-host-compiler.patch
cycles_wrap.sh)
sha256sums=('SKIP'
- '2ba856e1734fcc8daed987a547f4b556293e57ff3bce5dadbd1d9e72da92bd73'
- '9e644ccbfb58f1e9cd4a31ada9abcc5496371fb29195b2a92069a7f8888750e7'
+ 'f34cf1e2868b7c4ac14bd63e0ebffb1564136031dde36118ac41a19e96bd7cf4'
+ '26f9f68bf25442e70d7d6cc47e06e24f3ce9418a9851497736f5a30e25df152f'
+ 'c6336a9a1b6c10d9ac3bdc5f85bc6963c6f661f99bf63b75124a22488bd12394'
+ '23103eacc357c684290509e8efb9aee6427c89ef548b948fc791f42644f822cc'
'00afc4aab5541d147b013c31ab91d78e272654a75cae60b39cf70c23a2612c96')
-pkgver() {
- cd "$pkgname"
- git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
-}
-
prepare() {
+ _src_root_dir="$srcdir/cycles"
if [ ! -v _cuda_capability ] && grep -q nvidia <(lsmod); then
- git -C "$srcdir/$pkgname" apply -v "${srcdir}"/SelectCudaComputeArch.patch
+ git -C "$_src_root_dir" apply -v "${srcdir}"/0001-SelectCudaComputeArch.patch
fi
- git -C "$srcdir/$pkgname" apply -v "${srcdir}"/OpenEXR3.patch
- rm "$srcdir/$pkgname"/src/cmake/Modules/FindClang.cmake # Rely on system FindClang
+ git -C "$_src_root_dir" apply -v "${srcdir}"/0002-OpenEXR3.patch
+ git -C "$_src_root_dir" apply -v "${srcdir}"/0003-Remove-FindClang.patch
+ git -C "$_src_root_dir" apply -v "${srcdir}"/0004-Add-CMake-option-to-control-CUDA-host-compiler.patch
}
build() {
@@ -44,19 +49,24 @@ build() {
_CUDA_PKG=$(pacman -Qq cuda 2>/dev/null) || true
if [ "$_CUDA_PKG" != "" ] && ! ((DISABLE_CUDA)) ; then
_CMAKE_FLAGS+=( -DWITH_CYCLES_CUDA_BINARIES=ON
- -DCUDA_TOOLKIT_ROOT_DIR=/opt/cuda )
+ -DCUDA_TOOLKIT_ROOT_DIR=/opt/cuda )
((DISABLE_OPTIX)) || _CMAKE_FLAGS+=( -DOPTIX_ROOT_DIR=/opt/optix )
if [[ -v _cuda_capability ]]; then
_CMAKE_FLAGS+=( -DCYCLES_CUDA_BINARIES_ARCH="$(IFS=';'; echo "${_cuda_capability[*]}";)" )
fi
+
[ -f "/usr/lib/ccache/bin/nvcc-ccache" ] && _CMAKE_FLAGS+=( -DCUDA_NVCC_EXECUTABLE=/usr/lib/ccache/bin/nvcc-ccache )
- if _cuda_gcc=$(basename "$(readlink /opt/cuda/bin/gcc)") ; then
+
+ if [[ -v _cuda_host_compiler ]]; then
+ _CMAKE_FLAGS+=( -DCUDA_HOST_COMPILER="$_cuda_host_compiler" )
+ elif _cuda_gcc=$(basename "$(readlink /opt/cuda/bin/gcc)") ; then
[ -L "/usr/lib/ccache/bin/$_cuda_gcc" ] && _CMAKE_FLAGS+=( -DCUDA_HOST_COMPILER=/usr/lib/ccache/bin/"$_cuda_gcc" )
fi
fi
+ echo "${_CMAKE_FLAGS[@]}"
# Make app
- cmake -B build -S "${pkgname}" \
+ cmake -B build -S "cycles" \
-DCMAKE_BUILD_TYPE='None' \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWITH_CYCLES_STANDALONE_GUI=TRUE \
@@ -81,8 +91,8 @@ package() {
fi
# OSL shaders
- install -D -m444 build/src/kernel/shaders/*.oso -t "${pkgdir}/usr/lib/cycles/shader"
+ install -D -m444 build/src/kernel/osl/shaders/*.oso -t "${pkgdir}/usr/lib/cycles/shader"
# License
- install -D -m444 ${pkgname}/LICENSE -t "${pkgdir}/usr/share/doc/cycles/license"
+ install -D -m444 cycles/LICENSE -t "${pkgdir}/usr/share/doc/cycles/license"
}