diff --git a/PKGBUILD b/PKGBUILD index 0fce130..83d27a5 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,46 +1,99 @@ # Maintainer: Sven-Hendrik Haase # Contributor: bartus + pkgname=usd -pkgver=21.08 +_pkgname=OpenUSD +pkgver=23.05 pkgrel=1 pkgdesc="3D VFX pipeline interchange file format" arch=('x86_64') url="https://graphics.pixar.com/usd/docs/index.html" +_url="https://github.com/PixarAnimationStudios/$_pkgname" license=('Apache') -depends=('boost-libs' 'glew' 'opensubdiv' 'python' 'pyside2' 'python-opengl' 'ptex') -makedepends=('boost' 'cmake' 'intel-tbb' 'ninja' 'qt5-base') -provides=("usd=${pkgver}") -source=("$pkgname-$pkgver.tar.gz::https://github.com/PixarAnimationStudios/USD/archive/v${pkgver}.tar.gz" - 'gcc11.patch' - 'pyside2-uic') -sha256sums=('c124c2d99922800f82dcbd0765d38a4f79443880e550ecb1e0532a334f359526' - '663352c8932a0b48230087284f4f5c540876f6a5adab3d4d1a7ee7b3a4ad6462' - 'bf2d902eddd24d4c3498f05a89f0d867df8a6cbd921214131c14a28152e4ffbe') +depends=('boost-libs' 'glew' 'opensubdiv' 'python' 'pyside6' 'python-opengl' 'ptex') +makedepends=('boost' 'cmake' 'ninja' 'onetbb' 'qt5-base') +#makedepends+=('git') +source=("$_url/archive/v$pkgver/$pkgname-$pkgver.tar.gz" + #"git+$_url.git#branch=dev" + # Needed for gcc 12+ + $_url/commit/2bbc4ae357fe0bde7eea63da7c321b8e74720879.patch # add array include to drawModeStandin.cpp + # Needed due to removal of tbb/atomic + $_url/commit/610c6c9e0b8bcc7cdbcfeb294b9c9e0456c5e8f3.patch # sdf: Path node cleanups. Embed the "has token" flag in the node's refcount so we don't read/write it non-atomically. + # TBB conversion PRs + # https://github.com/PixarAnimationStudios/USD/issues/1471 + # 2457 oneTBB: tbb::atomic to std::atomic in sdf + $_url/pull/2457/commits/c912d7864aa8920016dcd4425fce105f7243ed5e.patch # oneTBB: tbb::atomic to std::atomic in sdf + # 2458 oneTBB: tbb::atomic to std::atomic in usdGeom + $_url/pull/2458/commits/9bfec012962e9058e278c90b5462d407dcf7c590.patch # oneTBB: tbb::atomic to std::atomic in usdGeom + # 2459 oneTBB: tbb::atomic to std::atomic in pcp + $_url/pull/2459/commits/1beeb16f55b5b9f98034d6c327497e297fb644e5.patch # oneTBB: tbb::atomic to std::atomic in pcp + # 2460 oneTBB: tbb::atomic to std::atomic in usdImagining + $_url/pull/2460/commits/01938648d13653bec26cb4d264417a40c483c567.patch # oneTBB: tbb::atomic to std::atomic in usdImagining + # 2461 oneTBB: remove tbb atomic includes in precompiled headers + $_url/pull/2461/commits/a896f4e54d3752131a9a557c36a81d9c564ee3a6.patch # oneTBB: remove tbb atomic includes in precompiled headers + # 2462 oneTBB: replace TBB utility functions for placement new + $_url/pull/2462/commits/84233cc4ee9ef52964ffb3aa65b7fd67687b06d6.patch # oneTBB: replace TBB utility functions for placement new + # 2463 oneTBB: change tbb::tbb_thread to std::thread + $_url/pull/2463/commits/9e7bb2bdb8c87b351fe99610cba8ee35f6ef37fe.patch # oneTBB: change tbb::tbb_thread to std::thread + # 2464 oneTBB: change tbb::mutex to std::mutex + $_url/pull/2464/commits/40fbc9a4e8c0e619b792a611850cd8060ad6a655.patch # oneTBB: change tbb::mutex to std::mutex + # 2465 oneTBB: explicitly specify hasher + $_url/pull/2465/commits/34a0aa49faf63142b5abc59548941a446902a0a4.patch # oneTBB: explicitly specify hasher + # 2466 oneTBB: port dispatcher, thread limits and add build option + $_url/pull/2466/commits/69e35643a7e5b9d0f94a646b70ceccc2eeea97ac.patch # oneTBB: port dispatcher, thread limits and add build option + $_url/pull/2466/commits/748039fe751dbb499bbdc3659d4046aae8721899.patch # oneTBB: support work dispatcher + $_url/pull/2466/commits/60deed4ffc0149ea125a9f9e6bbdc4bae61eeecc.patch # Add --onetbb option to build_usd.py, to build with TBB 2021 + # Nasty hack to make PR 2457 build + discard-const-qualifier.patch + ) +sha512sums=('6669191c3497e244c958949b62a749958ab01e8e1edc7b3476d59c31395e147acf6f4ba7aae069c5ceab7fe2eb321e81e4e5f66beb72814be36e0fec98d3d034' + '8abfc2f9911af41af015ad551879e72d33daaa0d5fcc188707743638b89d74d1d9a688332b41085a2c875a195825312eae18c06d7c6b091291c5b41bdc9fd912' + 'ab733eda6b01dcdb777d736afd8a6584a0bd0c5cf666d501aba88fa285f41d2e2c1d074ef37d7de27573bbbac2b73465ac6e76e4af54e132022b668c09629f1d' + '15f8ba37236e6c532e6caef9d854f8fd37bbd2aabcd38d8c77343be87ddaa936afeeb2e434457794518e89b88a211bcbe200ab28d0887095a8a4e0005dfb57d7' + '2a42b316efde10187b2b90329317e17625380a06f63f7ebdc0513f0e64ffd471de27d0ee5df92a2a2ed3854f000399d5ce963f9ff9700377f4ff37f67b7a5332' + 'f87ab8754dd6051aa54de06746d84e218df2d3fcf763c819b52031f8e77396563182255b5b52747e6964ee51cf60707c13fc281c18061e0c7e471ea85969e7f2' + 'f0c681a5dd29a8d65e440e9549dcdde3a259266d9733f4e610e5fbc6a1032bfa6afa1a9a4d4d681e14cf0b5f81824f307dbc8d81784c61d802d87d6ae95a596c' + '7fa90cfc4cb72820006ee5f048ba6f33e12c9328e052573989b50fa2a70a05b2052c15429afe0ea190cf9de5e488fb2c78458bc0606a1f47ecb49b9076d75653' + '9e6e64ec22f4ca596fadf42ac8527b8c6086bca18d908da703d0b9751419aa54fba5590a477a7b2ab49339865833c3dadbb80ebbebb846757083db7dfc6d34dc' + 'd9689e2288412aba2316701135b26aeed6eb229b08740d533bed5cb1ef0e8bb0d6831769e8a2359e07595333421bbcdf6a216266cd7bf2b116eab967435cb49b' + '1496b9ccac676ae9bc2334319c08f8346162cc08366e23038a777df678f83c2d97705d265dcff44745bdeda506445d2f2502718c5c4fea339bcc9fcebde159e8' + '163781194fa7cd0d6d30cdfd34443cb45a8e33effe04f06c5fb3ebf506ff5ba7558c728a00fb3420c877c878035ae0ab04f76882eacaede535d6cf437dded6b7' + 'e42571bcb164061786b92845dbed20d4d7e31f5e4aa2da8cd00440bc5cbb105b5b4b3b96b8511fd2ca1ec45a01f0490fa7da57d5b22a29af84972e339ad3650e' + '2073341b45de35da67e2794e65cc20d695ca5a7dc525d229fbf3386ff7e0d92b04274c20d5a9f411226e54f8d92888faaa35b62d2c7f0851fc33568592c6d253' + '8665cc2f180b05d8950df796319b30a7e904ec347136ac1e6367b0df8d67f9f71defa25a4be42065721fa281f9e6f4e516430372706484dd2e0cd84dcd5d936c' + 'd64e410c26a87a940d80a760d23d4f9e4ce4607be99ba1eaef8b6283631f1825587146fc5673f3f3a13e5e9af4de2eb75b0a382a90aea42ee262f44930384951') prepare() { - cd USD-${pkgver} - patch -Np1 -i ../gcc11.patch +# ln -s $_pkgname $_pkgname-$pkgver + + cd $_pkgname-$pkgver + + local src + for src in "${source[@]}"; do + src="${src%%::*}" + src="${src##*/}" + [[ $src = *.patch ]] || continue + echo "Applying patch $src..." + patch -Np1 < "../$src" + done } build() { - cd USD-${pkgver} cmake \ -B build \ + -S $_pkgname-$pkgver \ -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DPXR_USE_PYTHON_3=ON \ -DPXR_BUILD_IMAGING=ON \ -DPXR_BUILD_TESTS=OFF \ -DPXR_BUILD_MONOLITHIC=ON \ - -DPYSIDE_BIN_DIR="$srcdir" - ninja -C build + -DPYSIDEUICBINARY=/usr/bin/uic + cmake --build build } package() { - cd USD-${pkgver} - DESTDIR="$pkgdir" ninja -C build install - - mv "$pkgdir"/usr/lib/python "$pkgdir"/usr/lib/python3.10 + DESTDIR="$pkgdir" cmake --install build } # vim:set ts=2 sw=2 et: diff --git a/discard-const-qualifier.patch b/discard-const-qualifier.patch new file mode 100644 index 0000000..0373051 --- /dev/null +++ b/discard-const-qualifier.patch @@ -0,0 +1,26 @@ +diff --git a/pxr/imaging/hd/dependencyForwardingSceneIndex.cpp b/pxr/imaging/hd/dependencyForwardingSceneIndex.cpp +index 0dcdcac98..e22d89ba3 100644 +--- a/pxr/imaging/hd/dependencyForwardingSceneIndex.cpp ++++ b/pxr/imaging/hd/dependencyForwardingSceneIndex.cpp +@@ -211,7 +211,7 @@ HdDependencyForwardingSceneIndex::_PrimDirtied( + void + HdDependencyForwardingSceneIndex::_ClearDependencies(const SdfPath &primPath) + { +- _AffectedPrimToDependsOnPathsEntryMap::const_iterator it = ++ _AffectedPrimToDependsOnPathsEntryMap::iterator it = + _affectedPrimToDependsOnPathsMap.find(primPath); + if (it == _affectedPrimToDependsOnPathsMap.end()) { + return; +diff --git a/pxr/usdImaging/usdImaging/resolvedAttributeCache.h b/pxr/usdImaging/usdImaging/resolvedAttributeCache.h +index 7a257e7ca..0e5563c2e 100644 +--- a/pxr/usdImaging/usdImaging/resolvedAttributeCache.h ++++ b/pxr/usdImaging/usdImaging/resolvedAttributeCache.h +@@ -379,7 +379,7 @@ typename UsdImaging_ResolvedAttributeCache::_Entry* + UsdImaging_ResolvedAttributeCache::_GetCacheEntryForPrim( + const UsdPrim &prim) const + { +- typename _CacheMap::const_iterator it = _cache.find(prim); ++ typename _CacheMap::iterator it = _cache.find(prim); + if (it != _cache.end()) { + return &it->second; + }