Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update OpenImageIO to 2.5.13.1 and OpenEXR to 3.2.4 #983

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/build_installer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ jobs:
echo "Test results match 2.5.0 release : PASS"
else
echo "Test results match 2.5.0 release : FAILED"
exit 1
fi

win-installer-breakpad:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@
Description: OpenEXR image library
Version: @OPENEXR_VERSION@

-Libs: @exr_pthread_libs@ -L${libdir} -lOpenEXR${libsuffix} -lOpenEXRUtil${libsuffix} -lOpenEXRCore${libsuffix} -lIex${libsuffix} -lIlmThread${libsuffix} @EXR_DEFLATE_LDFLAGS@
+Libs: @exr_pthread_libs@ -L${libdir} -lOpenEXR -lOpenEXRUtil -lOpenEXRCore -lIex -lIlmThread @EXR_DEFLATE_LDFLAGS@
-Libs: @exr_pthread_libs@ -L${libdir} -lOpenEXR${libsuffix} -lOpenEXRUtil${libsuffix} -lOpenEXRCore${libsuffix} -lIex${libsuffix} -lIlmThread${libsuffix}
+Libs: @exr_pthread_libs@ -L${libdir} -lOpenEXR -lOpenEXRUtil -lOpenEXRCore -lIex -lIlmThread
Cflags: -I${includedir} -I${OpenEXR_includedir} @exr_pthread_cflags@
Requires: Imath
Libs.private: @zlib_link@
Requires.private: @EXR_DEFLATE_PKGCONFIG_REQUIRES@
--- a/cmake/OpenEXRLibraryDefine.cmake
+++ b/cmake/OpenEXRLibraryDefine.cmake
@@ -49,7 +49,9 @@
Expand Down
30 changes: 16 additions & 14 deletions tools/MINGW-packages/mingw-w64-openexr/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,18 @@
_realname=openexr
pkgbase=mingw-w64-natron_${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-natron_${_realname}")
pkgver=3.2.1
pkgver=3.2.4
pkgrel=99.1
pkgdesc='A high dynamic-range image file format library (mingw-w64)'
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64')
url="https://www.openexr.com/"
msys2_repository_url='https://github.com/AcademySoftwareFoundation/openexr'
msys2_references=(
"pypi: OpenEXR"
"cpe: cpe:/a:ilm:openexr"
"cpe: cpe:/a:openexr:openexr"
)
license=('spdx:BSD-3-Clause')
depends=("${MINGW_PACKAGE_PREFIX}-natron_imath"
"${MINGW_PACKAGE_PREFIX}-libdeflate"
Expand All @@ -28,8 +34,8 @@ replaces=(
source=("https://github.com/openexr/openexr/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz"
0006-cmake-soversion.patch
0007-export-TypedAttribute-value.patch)
sha256sums=('61e175aa2203399fb3c8c2288752fbea3c2637680d50b6e306ea5f8ffdd46a9b'
'a5ce463815e8d05c879dbe6a255e9f8ac2697cd3ef4242dac1e5cb331f78ed02'
sha256sums=('81e6518f2c4656fdeaf18a018f135e96a96e7f66dbe1c1f05860dd94772176cc'
'5653da878ebbf5f3087bb529213931b48e151aef082b34e19d189e22be0411e7'
'204777b48cde1c4d390789f10c5e429d5295be701f68a7937a90d0ecf271c048')

# Helper macros to help make tasks easier #
Expand Down Expand Up @@ -59,10 +65,6 @@ build() {
extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi

if [[ ${MINGW_PACKAGE_PREFIX} == *-clang-* ]]; then
extra_config+=("-DOPENEXR_BUILD_TOOLS=OFF")
fi

CXXFLAGS+=" -Wno-ignored-attributes"

MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
Expand All @@ -72,18 +74,18 @@ build() {
${extra_config[@]} \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_TESTING=OFF \
-DOPENEXR_INSTALL_EXAMPLES=OFF \
-DOPENEXR_BUILD_EXAMPLES=OFF \
../${_realname}-${pkgver}

${MINGW_PREFIX}/bin/cmake --build .
}

#check() {
# cd "${srcdir}/build-${MSYSTEM}"
# ${MINGW_PREFIX}/bin/cmake -DBUILD_TESTING=ON ../${_realname}-${pkgver}
# ${MINGW_PREFIX}/bin/cmake --build .
# ${MINGW_PREFIX}/bin/ctest.exe ./ || true
#}
check() {
cd "${srcdir}/build-${MSYSTEM}"
${MINGW_PREFIX}/bin/cmake -DBUILD_TESTING=ON ../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake --build .
${MINGW_PREFIX}/bin/ctest.exe ./ || true
}

package() {
cd "${srcdir}/build-${MSYSTEM}"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
--- a/src/include/OpenImageIO/typedesc.h.orig 2014-01-12 23:34:55.402417300 +0000
+++ b/src/include/OpenImageIO/typedesc.h 2014-01-12 23:35:17.974708400 +0000
@@ -47,6 +47,13 @@
struct OIIO_API TypeDesc {
/// BASETYPE is a simple enum describing the base data types that
/// correspond (mostly) to the C/C++ built-in types.
+// ansidecl.h contains:
+// #if defined (__STDC__) || defined(__cplusplus) .. || defined(_WIN32)
+// "#define PTR void *"
+#ifdef PTR
+#define PTR_OLD_DEFINE PTR
+#undef PTR
+#endif
enum BASETYPE {
UNKNOWN, ///< unknown type
NONE, ///< void/no type
@@ -79,6 +79,10 @@
PTR, ///< A pointer value.
LASTBASE
};
+// Set PTR back what it previously contained.
+#ifdef PTR_OLD_DEFINE
+#define PTR PTR_OLD_DEFINE
+#endif

/// AGGREGATE describes whether our TypeDesc is a simple scalar of one
/// of the BASETYPE's, or one of several simple aggregates.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/src/include/OpenImageIO/simd.h
+++ b/src/include/OpenImageIO/simd.h
@@ -77,7 +77,7 @@

#if defined(__CUDA_ARCH__)
// Cuda -- don't include any of these headers
-#elif defined(_WIN32)
+#elif defined(_MSC_VER) || (defined(__MINGW32__) && !defined(__aarch64__))
# include <intrin.h>
#elif defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__)) || defined(__e2k__)
# include <x86intrin.h>
100 changes: 59 additions & 41 deletions tools/MINGW-packages/mingw-w64-openimageio/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -3,103 +3,119 @@
_realname=openimageio
pkgbase=mingw-w64-natron_${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-natron_${_realname}"
pkgver=2.4.13.0
pkgver=2.5.13.1
pkgrel=99.1
pkgdesc="A library for reading and writing images, including classes, utilities, and applications (mingw-w64)"
arch=('any')
url="http://www.openimageio.org/"
license=("BSD-3")
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url="https://www.openimageio.org/"
msys2_repository_url="https://github.com/AcademySoftwareFoundation/OpenImageIO"
msys2_references=(
'archlinux: openimageio'
'gentoo: media-libs/openimageio'
"cpe: cpe:/a:openimageio:openimageio"
)
license=('spdx:Apache-2.0')
depends=("${MINGW_PACKAGE_PREFIX}-boost"
"${MINGW_PACKAGE_PREFIX}-bzip2"
"${MINGW_PACKAGE_PREFIX}-freetype"
"${MINGW_PACKAGE_PREFIX}-fmt"
"${MINGW_PACKAGE_PREFIX}-jasper"
"${MINGW_PACKAGE_PREFIX}-giflib"
"${MINGW_PACKAGE_PREFIX}-libheif"
"${MINGW_PACKAGE_PREFIX}-libjpeg"
"${MINGW_PACKAGE_PREFIX}-libpng"
"${MINGW_PACKAGE_PREFIX}-natron_libraw-gpl2"
"${MINGW_PACKAGE_PREFIX}-libwebp"
"${MINGW_PACKAGE_PREFIX}-libtiff"
"${MINGW_PACKAGE_PREFIX}-libwebp"
"${MINGW_PACKAGE_PREFIX}-natron_opencolorio-git"
"${MINGW_PACKAGE_PREFIX}-natron_openexr"
"${MINGW_PACKAGE_PREFIX}-libheif"
"${MINGW_PACKAGE_PREFIX}-openjpeg2"
"${MINGW_PACKAGE_PREFIX}-zlib")
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-boost"
"${MINGW_PACKAGE_PREFIX}-cc"
"git")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-fmt"
"${MINGW_PACKAGE_PREFIX}-robin-map")
options=('strip' 'buildflags' '!debug')
source=(${_realname}-${pkgver}.tar.gz::https://github.com/OpenImageIO/oiio/archive/v${pkgver}.tar.gz
git+https://github.com/OpenImageIO/oiio-images.git
oiio-2.1.10-boost.diff
source=(https://github.com/AcademySoftwareFoundation/OpenImageIO/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz
0000-workaround-ansidecl-h-PTR-define-conflict.patch
0001-Fix-building-on-mingw-w64-aarch64.patch
oiio-2.0.8-invalidatespec.patch
oiio-2.2.14-libraw.diff
oiio-2.4.13.0-thread-shutdown.patch # Remove when updating to a future 2.5 release that has these changes.
)
sha256sums=('bb10a7ab6dff5dae2c6d854e9da38136546232235913237e8b1b3c99abb7dd0b'
'SKIP'
'e8aec185fd20a6e5cdf77a7155fcaedb301c07bd806f73bd30dfc75af721ac83'
sha256sums=('0fbaec6c15215e11cf4545128c4d64eaa97b461cb9b5fb8a76f9a7d35c99e3df'
'9e4e21333676268a91c0f4e7676aeab7658e5f748e7e5cfe43a92f0fd7931229'
'91bd9a6a07f448a6dd8d1ff9a1c8cefaedb8cdd77029b84b6fc02fe9a7cf71f0'
'd9c2e066ce0e94404d31fd649341cc0ee03faf9b4023dfcdf5cf59fbbf466127'
'89e21326d6445304293bcedc3a52bfa1dfec9b769b397f6a312ca27d1de93423'
'3847eba62ac7a689c4c70b814461583d9c6e921259dd0343b17509d8b35d6f0f'
'59d8b06e11945fd703c1db354457ca2aedda3d48402d89e47f376ff90a17255e'
)

# Helper macros to help make tasks easier #
apply_patch_with_msg() {
for _patch in "$@"
do
msg2 "Applying ${_patch}"
patch -Nbp1 -i "${srcdir}/${_patch}"
done
}

prepare() {
cd ${srcdir}/OpenImageIO-${pkgver}
#patch -p0 -i ${srcdir}/oiio-2.1.10-boost.diff
patch -p1 -i ${srcdir}/oiio-2.0.8-invalidatespec.patch
patch -p0 -i ${srcdir}/oiio-2.2.14-libraw.diff
patch -p1 -i ${srcdir}/oiio-2.4.13.0-thread-shutdown.patch
apply_patch_with_msg \
0000-workaround-ansidecl-h-PTR-define-conflict.patch \
0001-Fix-building-on-mingw-w64-aarch64.patch \
oiio-2.0.8-invalidatespec.patch \
oiio-2.2.14-libraw.diff
}

build() {
[[ -d "${srcdir}"/build-${MSYSTEM} ]] && rm -rf "${srcdir}"/build-${MSYSTEM}
mkdir -p "${srcdir}"/build-${MSYSTEM} && cd "${srcdir}"/build-${MSYSTEM}

declare -a extra_config
if check_option "debug" "n"; then
extra_config+=("-DCMAKE_BUILD_TYPE=Release")
else
extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi

[[ -d "build-${MINGW_CHOST}" ]] && rm -rf "build-${MINGW_CHOST}"
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}

MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
PKG_CONFIG_PATH="${MINGW_PREFIX}/libraw-gpl2/lib/pkgconfig:${PKG_CONFIG_PATH}" \
${MINGW_PREFIX}/bin/cmake.exe \
-Wno-dev \
-G"MSYS Makefiles" \
-G"Ninja" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DUSE_FFMPEG=OFF \
-DUSE_OPENJPEG=ON \
-DCMAKE_DLL_NAME_WITH_SOVERSION=ON \
-DCMAKE_CXX_STANDARD=14 \
-DUSE_FREETYPE=ON \
-DUSE_OPENCV=OFF \
-DUSE_FIELD3D=OFF \
-DUSE_OPENSSL=OFF \
-DUSE_OPENGL=OFF \
-DUSE_QT=OFF \
-DUSE_FFMPEG=OFF \
-DUSE_EXTERNAL_PUGIXML=OFF \
-DOIIO_BUILD_TESTS=OFF \
-DBUILD_TESTING=OFF \
-DSTOP_ON_WARNING=OFF \
-DUSE_GIF=ON \
-DUSE_HEIF=ON \
-DUSE_OPENJPEG=ON \
-DUSE_LIBRAW=ON \
-DUSE_NUKE=OFF \
-DSTOP_ON_WARNING=OFF \
-DLibRaw_ROOT="${MINGW_PREFIX}/libraw-gpl2" \
-DBOOST_ROOT=${MINGW_PREFIX} \
-DOpenJPEG_ROOT=${MINGW_PREFIX} \
-DOPENJPEG_INCLUDE_DIR=`pkg-config --variable=includedir libopenjp2` \
-DUSE_QT=OFF \
-DUSE_PYTHON=OFF \
-DUSE_PYTHON3=OFF \
-DUSE_PTEX=OFF \
-DUSE_EXTERNAL_PUGIXML=OFF \
-DOIIO_BUILD_TESTS=OFF \
-DCMAKE_CXX_STANDARD=14 \
-DCMAKE_SHARED_LINKER_FLAGS=" -Wl,--export-all-symbols -Wl,--enable-auto-import " \
${extra_config} \
../OpenImageIO-${pkgver}
make

${MINGW_PREFIX}/bin/cmake --build .
}

package() {
cd "${srcdir}"/build-${MINGW_CHOST}
#make DESTDIR=${pkgdir} install
cd "${srcdir}"/build-${MSYSTEM}

DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install .

local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
Expand All @@ -112,4 +128,6 @@ package() {
sed -e "s|${PREFIX_WIN}|\$\{_IMPORT_PREFIX\}|g" -i ${_f}
sed -e "s|${MINGW_PREFIX}|\$\{_IMPORT_PREFIX\}|g" -i ${_f}
done

install -Dm644 ${srcdir}/OpenImageIO-${pkgver}/LICENSE.md "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE.md"
}
20 changes: 0 additions & 20 deletions tools/MINGW-packages/mingw-w64-openimageio/oiio-2.1.10-boost.diff

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
--- src/raw.imageio/rawinput.cpp.orig 2021-06-26 18:09:54.016303700 +0200
+++ src/raw.imageio/rawinput.cpp 2021-06-26 18:13:58.549159600 +0200
--- a/src/raw.imageio/rawinput.cpp.orig 2021-06-26 18:09:54.016303700 +0200
+++ b/src/raw.imageio/rawinput.cpp 2021-06-26 18:13:58.549159600 +0200
@@ -368,7 +368,7 @@
m_processor->imgdata.params.user_flip
= config.get_int_attribute("raw:user_flip", -1);
Expand Down
Loading