aboutsummarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD65
1 files changed, 44 insertions, 21 deletions
diff --git a/PKGBUILD b/PKGBUILD
index faaa4ff40016..fa5a28716586 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,14 +3,14 @@
# shellcheck disable=SC2034,SC2154 # allow unused/unset variables
# shellcheck disable=SC2191 # preserve current _CMAKE_FLAGS initialization.
-# To force cuda compute arch uncomment this line and update value of sm_xx model accordingly
-#_cuda_capability+=(sm_30 sm_35 sm_37)
-#_cuda_capability+=(sm_50 sm_52 sm_60 sm_61 sm_70 sm_75)
-((TRAVIS)) && _cuda_capability+=(sm_50 sm_52 sm_60 sm_61 sm_70 sm_75) # Travis memory limit is not enough to build for arch 3.x.
-
# Configuration.
-_fragment="#branch=blender-v2.82-release"
+_blenver="2.82"
+_branch="blender-v${_blenver}-release"
+_fragment=${FRAGMENT:-#branch=${_branch}}
+[[ -v CUDA_ARCH ]] && _cuda_capability=${CUDA_ARCH}
+
#some extra, unofficially supported stuff goes here:
+((TRAVIS)) && _cuda_capability+=(sm_50 sm_52 sm_60 sm_61 sm_70 sm_75) # Travis memory limit is not enough to build for arch 3.x.
_CMAKE_FLAGS+=( -DWITH_ALEMBIC_HDF5=ON )
((DISABLE_EMBREE)) || {
_CMAKE_FLAGS+=( -DWITH_CYCLES_EMBREE=ON )
@@ -23,12 +23,12 @@ _CMAKE_FLAGS+=( -DWITH_ALEMBIC_HDF5=ON )
}
((DISABLE_NINJA)) || makedepends+=('ninja')
#shellcheck disable=SC2015
-((DISABLE_CUDA)) && optdepends+=('cuda: CUDA support in Cycles') || { makedepends+=('cuda') ; ((DISABLE_OPTIX)) || makedepends+=('optix>=7.0'); }
+((DISABLE_CUDA)) && optdepends+=('cuda: CUDA support in Cycles') || { makedepends+=('cuda') ; ((DISABLE_OPTIX)) || makedepends+=('optix=7.0'); }
-pkgname=blender-2.82-git
-pkgver=2.82.r92824.g375c7dc4caf
-pkgrel=1
-pkgdesc="Development version of Blender 2.8 branch"
+pkgname=blender-${_blenver}-git
+pkgver=2.82.r92825.g53b66eced01
+pkgrel=2
+pkgdesc="Maintenance version of Blenders ${_branch} branch"
changelog=blender.changelog
arch=('i686' 'x86_64')
url="https://blender.org/"
@@ -37,8 +37,8 @@ depends+=('alembic' 'libgl' 'python' 'python-numpy' 'openjpeg2'
'openvdb' 'opencollada' 'opensubdiv' 'openshadinglanguage' 'libtiff' 'libpng')
depends+=('openimagedenoise')
makedepends+=('git' 'cmake' 'boost' 'mesa' 'llvm')
-provides=("blender-${pkgver%%.r*}")
-conflicts=("blender-${pkgver%%.r*}")
+provides=("blender-${_blenver}")
+conflicts=("blender-${_blenver}")
license=('GPL')
# NOTE: the source array has to be kept in sync with .gitmodules
# the submodules has to be stored in path ending with git to match
@@ -52,8 +52,12 @@ source=("git://git.blender.org/blender.git${_fragment}"
'blender-dev-tools.git::git://git.blender.org/blender-dev-tools.git'
SelectCudaComputeArch.patch
usd_python.patch #add missing python headers when building against python enabled usd.
- embree.patch #add missing embree link.
addon_path.patch
+ embree.patch #add missing embree link.
+ 'cuda11.patch'
+ 'cpp14.patch::https://git.blender.org/gitweb/gitweb.cgi/blender.git/patch/171c4fb238a2a65291540ac5406187bc69f3a6bc'
+ 'python39.patch::https://git.blender.org/gitweb/gitweb.cgi/blender.git/patch/56d0df51a36fdce7ec2d1fbb7b47b1d95b591b5f'
+ 'osl111.patch::https://git.blender.org/gitweb/gitweb.cgi/blender.git/patch/7d85b6431fc331d9869f945bf7c9f3353b7b8c95'
)
sha256sums=('SKIP'
'SKIP'
@@ -61,9 +65,26 @@ sha256sums=('SKIP'
'SKIP'
'SKIP'
'66b9bf3db441f35119ef0eb5f855142f2e773e8002ac0216e056bcc6f8ac409c'
- '12bd6db5c1fe14244fd7321e3d740941a36aa545ec21b02325e7553c9214778a'
+ '893b127c9e0ea1a67905434f729b45a993c58a7ea954f9f89480ad1cc0578849'
+ '350063cd4f234565bd928a356b4e5f65cf37fc1377904a08bf60f7010c88740b'
'42afe119529a5350034a489225958112bf4b84bdee38757a932e5caaa9bd5ed4'
- '81e0047ba48662ee0ec1da1ffd427641305a0edc68c7913da9460ae4c1fefe72')
+ '0316d92f180f2fa428a206074bd5adfd30968f9ae5d308efea05e42741dd53fd'
+ '41e745b8fb37464a83dfedc09ff2158369cec09b96fdc855b71001e16b6cbe75'
+ '7ae5ac4d636934cd46213e3f29ea67013d17316e122d8f312daec288e4f90cd9'
+ '99b96f4f6d02cd3e226d814175f7915a85a43966216d5a522265c68091a3b73a')
+b2sums=('SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ '0024f04fd0061313010a61b88634a0b86ed69695a7c072ff40f50ebab6a274ccf8ed7ed3381e501b218503f08c82b23f3f743208eb0feb81d4735c2a0c93989f'
+ '221413e5f4fc4194e091310a2adde9d864c092684e028fd979213b2be9180da912a240483aa45ee49c557a964167cd7e86e0224372c9de49958e8da5fcee14cd'
+ '3920bd3c479aa1c25427ea822c6d888ccfaf404f7b709eec78e42bb4ca79739723240178ed23524dd36a0a07c94eb69f1fc28d8875858b04b6d32cccf52af1f7'
+ '62567f79f86684e7fd99b8879b692e862c7ea85317cfacae4539d3035fe3ffc71fd39b0aa385be1efc8c31c8fe9ccac86e4b20275905150540349ba5fe3f8cbb'
+ '6f7958fbea799f5ecdf556112e3adc497686c00df8d460a094a818b007292dd6894ff6d280de8f88bc81cea3c52a7e003f44ea1048af52ccf11b5514e75b89ea'
+ '33f4b7e71153b272f0ae3b16c9eabdb65fb275c2344a6454866c660ac9bdf6da1207e75c6f9198c64c52cebeab71f816d2852425596c0cfbcfed0835e64403ff'
+ '4b11df6d494644e740cfda654fbebb2988c430d18c093739724f331738099100925fd0399b94cf0a1188c4ae804081c8380424b64f35355f7cbfde6c7ee91b44'
+ 'ab990d0771b593ec9e8637e330ba2721fe9d6c82c72eb2296f1580129da0e4de525e58921869fabd36c3b92ec4fc1754b7dc4cb2da1674b5baa5d26332eebdc8')
pkgver() {
blender_version=$(grep -Po "BLENDER_VERSION \K[0-9]{3}" "$srcdir"/blender/source/blender/blenkernel/BKE_blender_version.h)
@@ -80,11 +101,12 @@ prepare() {
if [ ! -v _cuda_capability ] && grep -q nvidia <(lsmod); then
git -C "$srcdir/blender" apply -v "${srcdir}"/SelectCudaComputeArch.patch
fi
+ if [[ -v _suffix ]]; then
+ git -C "$srcdir/blender" apply -v <(sed "s/@@_suffix@@/${_suffix}/g" "${srcdir}/addon_path.patch")
+ fi
((DISABLE_USD)) || git -C "$srcdir/blender" apply -v "${srcdir}"/usd_python.patch
((DISABLE_EMBREE)) || git -C "$srcdir/blender" apply -v "${srcdir}"/embree.patch
- if [[ -v _sufix ]]; then
- git apply -v <(sed "s/@@_sufix@@/${_sufix}/g" "${srcdir}/addon_path.patch")
- fi
+ git -C "$srcdir/blender" apply -v "$srcdir"/{cpp14,cuda11,python39,osl111}.patch
}
build() {
@@ -92,7 +114,8 @@ build() {
msg "python version detected: ${_pyver}"
# determine whether we can precompile CUDA kernels
- if pacman -Qq cuda 2>&- ; then
+ _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 )
((DISABLE_OPTIX)) || _CMAKE_FLAGS+=( -DOPTIX_ROOT_DIR=/opt/optix )
@@ -121,7 +144,7 @@ build() {
}
package() {
- _suffix=${pkgver%%.r*}
+ local _suffix=${_blenver}${_suffix:+_$_suffix}
export DESTDIR="$pkgdir"
if ((DISABLE_NINJA)); then make -C "$srcdir/build" install; else ninja -C "$srcdir/build" install; fi