diff options
Diffstat (limited to 'community/openexr/APKBUILD')
-rw-r--r-- | community/openexr/APKBUILD | 104 |
1 files changed, 61 insertions, 43 deletions
diff --git a/community/openexr/APKBUILD b/community/openexr/APKBUILD index fc5c1e3b333..32f862d167b 100644 --- a/community/openexr/APKBUILD +++ b/community/openexr/APKBUILD @@ -2,32 +2,43 @@ # Contributor: Holger Jaekel <holger.jaekel@gmx.de> # Maintainer: Mark Riedesel <mark+alpine@klowner.com> pkgname=openexr -pkgver=2.5.7 +pkgver=3.1.13 pkgrel=0 -pkgdesc="A high dynamic-range image file format library" +pkgdesc="High dynamic-range image file format library" url="https://www.openexr.com/" -# mips64 blocked by py3-numpy -arch="all !mips64" +arch="all" license="BSD-3-Clause" makedepends=" boost-dev - boost-python3 chrpath cmake - py3-numpy-dev - python3-dev + imath-dev + samurai zlib-dev " subpackages=" $pkgname-doc $pkgname-tools - py3-$pkgname-dev:py3dev - py3-$pkgname:py3 $pkgname-dev + $pkgname-libiex + $pkgname-libilmthread + $pkgname-libopenexr + $pkgname-libopenexrcore + $pkgname-libopenexrutil " source="$pkgname-$pkgver.tar.gz::https://github.com/openexr/openexr/archive/v$pkgver.tar.gz" # secfixes: +# 3.1.12-r0: +# - CVE-2023-5841 +# 3.1.4-r0: +# - CVE-2021-45942 +# 3.1.1-r0: +# - CVE-2021-3598 +# - CVE-2021-23169 +# - CVE-2021-23215 +# - CVE-2021-26260 +# - CVE-2021-26945 # 2.5.4-r0: # - CVE-2021-20296 # - CVE-2021-3474 @@ -60,66 +71,73 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/openexr/openexr/archive/v$pk # - CVE-2017-9115 # - CVE-2017-9116 +case "$CARCH" in +ppc64le|s390x) + # fails a bunch of tests + options="$options !check" + ;; +esac + build() { - cmake -B build \ + CFLAGS="$CFLAGS -O2 -flto=auto" \ + CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \ + cmake -B build -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ - -DCMAKE_C_FLAGS="$CFLAGS" \ + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DBUILD_TESTING="$(want_check && echo ON || echo OFF)" \ $CMAKE_CROSSOPTS cmake --build build } check() { - cd build - - _exclude_tests="OpenEXR.IlmImf" + local exclude_tests="(OpenEXR.testDeepScanLineBasic|OpenEXR.testCopyMultiPartFile|OpenEXRCore.testDWAACompression|OpenEXRCore.testDWABCompression" case "$CARCH" in - x86) _exclude_tests="($_exclude_tests|IlmBase.Imath)" ;; + arm*) + exclude_tests="$exclude_tests|OpenEXR.testMultiTiledPartThreading|OpenEXR.testRgbaThreading|OpenEXR.testStandardAttributes|OpenEXR.testBackwardCompatibility" + ;; + x86) + exclude_tests="$exclude_tests|OpenEXR.testDwaLookups|OpenEXR.testOptimizedInterleavePatterns" + ;; + riscv64) + exclude_tests="$exclude_tests|OpenEXR.testMultiTiledPartThreading" + ;; esac - CTEST_OUTPUT_ON_FAILURE=TRUE ctest -E $_exclude_tests + ctest --test-dir build --output-on-failure -j ${JOBS:-2} \ + -E "$exclude_tests)" } package() { DESTDIR="$pkgdir" cmake --install build } -py3dev() { - pkgdesc="$pkgdesc (Python3 bindings for the Imath vector/matrix classes) (development files)" +tools() { + amove usr/bin +} + +libiex() { + amove usr/lib/libIex-*.so.* +} - depends="openexr-dev=$pkgver-r$pkgrel" - amove /usr/include/OpenEXR/Py* - amove /usr/lib/cmake/PyIlmBase - amove /usr/lib/pkgconfig/PyIlmBase.pc - cd $pkgdir - # move *.so links needed when linking the apps to -dev packages - for i in lib/libPy*.so usr/lib/libPy*.so; do - if [ -L "$i" ]; then - mkdir -p "$subpkgdir"/"${i%/*}" - mv "$i" "$subpkgdir/$i" - fi - done +libilmthread() { + amove usr/lib/libIlmThread-*.so.* } -py3() { - pkgdesc="$pkgdesc (Python3 bindings for the Imath vector/matrix classes)" +libopenexr() { + amove usr/lib/libOpenEXR-*.so.* +} - # Install missing python module - _pythonpath=$(python3 -c "from sysconfig import get_path; print(get_path('platlib'))") - amove $_pythonpath - amove usr/lib/*Python* - install -Dm755 $builddir/build/python3*/imathnumpy.so -t "$subpkgdir"/$_pythonpath - chrpath -d $subpkgdir/$_pythonpath/imathnumpy.so - rm -rf $pkgdir/usr/lib/python* +libopenexrcore() { + amove usr/lib/libOpenEXRCore-*.so.* } -tools() { - amove usr/bin +libopenexrutil() { + amove usr/lib/libOpenEXRUtil-*.so.* } sha512sums=" -e44edfa2dcfff2fe372ed2ba07b39a472e549025978de178eff26be641767d22d1a3b543fb7672d9b7b2e9f4c308667f785829ed6d9032a2b42f2ffa0163de40 openexr-2.5.7.tar.gz +662ebfce32bc56e3b5140e7d1813b8c117ac6e806fe30c996b956465ce20ee43f1f535b97868a87a26d1d7909d7f59acbe383f335ab8d72ad1484408cbabf77b openexr-3.1.13.tar.gz " |