diff --git a/mingw-w64-openexr/0001-mingw-w64-fix.patch b/mingw-w64-openexr/0001-mingw-w64-fix.patch index 130c26fdb5..e6f5b37489 100644 --- a/mingw-w64-openexr/0001-mingw-w64-fix.patch +++ b/mingw-w64-openexr/0001-mingw-w64-fix.patch @@ -1,14 +1,14 @@ ---- a/OpenEXR/IlmImf/ImfSimd.h.orig 2013-11-25 23:49:53.000000000 +0400 -+++ b/OpenEXR/IlmImf/ImfSimd.h 2013-12-28 11:32:14.071000000 +0400 -@@ -44,8 +44,10 @@ +--- a/src/lib/OpenEXR/ImfSimd.h ++++ b/src/lib/OpenEXR/ImfSimd.h +@@ -14,8 +14,10 @@ // GCC and Visual Studio SSE2 compiler flags --#if defined __SSE2__ || (_MSC_VER >= 1300 && !_M_CEE_PURE) +-#if defined __SSE2__ || (_MSC_VER >= 1300 && (_M_IX86 || _M_X64)) +#ifndef __MINGW64_VERSION_MAJOR + #if defined __SSE2__ || (_MSC_VER >= 1300 && !_M_CEE_PURE) #define IMF_HAVE_SSE2 1 + #endif #endif - + #if defined __SSE4_1__ diff --git a/mingw-w64-openexr/0002-openexr-2.1.0-headers.patch b/mingw-w64-openexr/0002-openexr-2.1.0-headers.patch deleted file mode 100644 index b8048fb238..0000000000 --- a/mingw-w64-openexr/0002-openexr-2.1.0-headers.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 90de52ef5856c276848dc2c85dd4985f9e2639f4 Mon Sep 17 00:00:00 2001 -From: Stephen -Date: Wed, 24 Feb 2016 14:32:49 -0600 -Subject: [PATCH] Add missing OpenEXR headers to CMake install rule - ---- - IlmImf/CMakeLists.txt | 23 +++++++++++++++++++++++ - 1 file changed, 23 insertions(+) - -diff --git a/OpenEXR/IlmImf/CMakeLists.txt b/OpenEXR/IlmImf/CMakeLists.txt -index 18d90ed..11f7a1a 100644 ---- a/OpenEXR/IlmImf/CMakeLists.txt -+++ b/OpenEXR/IlmImf/CMakeLists.txt -@@ -350,6 +350,29 @@ INSTALL ( FILES - ImfDeepImageState.h - ImfDeepImageStateAttribute.h - ImfFloatVectorAttribute.h -+ ImfAutoArray.h -+ ImfCheckedArithmetic.h -+ ImfCompressor.h -+ ImfDwaCompressor.h -+ ImfDwaCompressorSimd.h -+ ImfFastHuf.h -+ ImfInputPartData.h -+ ImfInputStreamMutex.h -+ ImfOptimizedPixelReading.h -+ ImfOutputPartData.h -+ ImfOutputStreamMutex.h -+ ImfPizCompressor.h -+ ImfPxr24Compressor.h -+ ImfRle.h -+ ImfRleCompressor.h -+ ImfScanLineInputFile.h -+ ImfSimd.h -+ ImfStdIO.h -+ ImfSystemSpecific.h -+ ImfTiledMisc.h -+ ImfTileOffsets.h -+ ImfZip.h -+ ImfZipCompressor.h - DEPENDENCIES - OpenEXR::Config - IlmBase::Iex diff --git a/mingw-w64-openexr/0005-fix-dirs-in-pkgconfig.patch b/mingw-w64-openexr/0005-fix-dirs-in-pkgconfig.patch deleted file mode 100644 index 5d1db7e2cd..0000000000 --- a/mingw-w64-openexr/0005-fix-dirs-in-pkgconfig.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- openexr-2.4.0/IlmBase/IlmBase.pc.in.orig 2019-10-30 09:49:33.334966000 +0300 -+++ openexr-2.4.0/IlmBase/IlmBase.pc.in 2019-10-30 09:53:46.375320200 +0300 -@@ -4,9 +4,9 @@ - ## - - prefix=@prefix@ --exec_prefix=@exec_prefix@ --libdir=@libdir@ --includedir=@includedir@ -+exec_prefix=${prefix}/@exec_prefix@ -+libdir=${prefix}/@libdir@ -+includedir=${prefix}/@includedir@ - libsuffix=@LIB_SUFFIX_DASH@ - Name: IlmBase - Description: Base math and exception libraries ---- openexr-2.4.0/OpenEXR/OpenEXR.pc.in.orig 2019-10-30 09:54:34.675387800 +0300 -+++ openexr-2.4.0/OpenEXR/OpenEXR.pc.in 2019-10-30 09:54:58.695421500 +0300 -@@ -4,10 +4,10 @@ - ## - - prefix=@prefix@ --exec_prefix=@exec_prefix@ --libdir=@libdir@ --includedir=@includedir@ --OpenEXR_includedir=@includedir@/OpenEXR -+exec_prefix=${prefix}/@exec_prefix@ -+libdir=${prefix}/@libdir@ -+includedir=${prefix}/@includedir@ -+OpenEXR_includedir=${prefix}/@includedir@/OpenEXR - libsuffix=@LIB_SUFFIX_DASH@ - - Name: OpenEXR diff --git a/mingw-w64-openexr/0006-cmake-soversion.patch b/mingw-w64-openexr/0006-cmake-soversion.patch index b393b9411f..23e600e306 100644 --- a/mingw-w64-openexr/0006-cmake-soversion.patch +++ b/mingw-w64-openexr/0006-cmake-soversion.patch @@ -1,41 +1,6 @@ ---- openexr-2.4.0/IlmBase/config/IlmBaseSetup.cmake.orig 2019-10-29 15:34:57.792136700 +0300 -+++ openexr-2.4.0/IlmBase/config/IlmBaseSetup.cmake 2019-10-29 15:35:30.172182000 +0300 -@@ -31,7 +31,7 @@ - set(ILMBASE_PACKAGE_NAME "IlmBase ${ILMBASE_VERSION}" CACHE STRING "Public string / label for displaying package") - - # Whether to generate and install a pkg-config file IlmBase.pc on --if(WIN32) -+if(MSVC) - option(ILMBASE_INSTALL_PKG_CONFIG "Install IlmBase.pc file" OFF) - else() - option(ILMBASE_INSTALL_PKG_CONFIG "Install IlmBase.pc file" ON) ---- openexr-2.4.0/IlmBase/config/LibraryDefine.cmake.orig 2019-10-29 15:37:25.812343900 +0300 -+++ openexr-2.4.0/IlmBase/config/LibraryDefine.cmake 2019-10-29 15:38:12.164408900 +0300 -@@ -84,7 +84,9 @@ - ) - endif() - set_target_properties(${libname} PROPERTIES -- OUTPUT_NAME "${libname}${ILMBASE_LIB_SUFFIX}" -+ OUTPUT_NAME "${libname}" -+ RUNTIME_OUTPUT_NAME "${libname}${ILMBASE_LIB_SUFFIX}" -+ ARCHIVE_OUTPUT_NAME "${libname}" - RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" - ) - add_library(${PROJECT_NAME}::${libname} ALIAS ${libname}) ---- openexr-2.4.0/OpenEXR/config/OpenEXRSetup.cmake.orig 2019-10-29 15:39:38.034529100 +0300 -+++ openexr-2.4.0/OpenEXR/config/OpenEXRSetup.cmake 2019-10-29 15:39:43.874537300 +0300 -@@ -21,7 +21,7 @@ - set(OPENEXR_PACKAGE_NAME "IlmBase ${ILMBASE_VERSION}" CACHE STRING "Public string / label for displaying package") - - # Whether to generate and install a pkg-config file OpenEXR.pc --if (WIN32) -+if (MSVC) - option(OPENEXR_INSTALL_PKG_CONFIG "Install OpenEXR.pc file" OFF) - else() - option(OPENEXR_INSTALL_PKG_CONFIG "Install OpenEXR.pc file" ON) ---- openexr-2.4.0/oPENexr/config/LibraryDefine.cmake.orig 2019-10-29 15:38:56.304470700 +0300 -+++ openexr-2.4.0/oPENexr/config/LibraryDefine.cmake 2019-10-29 15:39:22.864507900 +0300 -@@ -78,7 +78,9 @@ +--- a/cmake/LibraryDefine.cmake ++++ b/cmake/LibraryDefine.cmake +@@ -70,7 +70,9 @@ ) endif() set_target_properties(${libname} PROPERTIES @@ -46,23 +11,27 @@ RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" ) add_library(${PROJECT_NAME}::${libname} ALIAS ${libname}) ---- openexr-2.4.0/IlmBase/IlmBase.pc.in.orig 2019-10-29 16:09:29.326136000 +0300 -+++ openexr-2.4.0/IlmBase/IlmBase.pc.in 2019-10-29 16:09:50.616346500 +0300 -@@ -13,5 +13,5 @@ - Version: @ILMBASE_VERSION@ - Requires: - Conflicts: --Libs: -L${libdir} -lImath${libsuffix} -lHalf${libsuffix} -lIex${libsuffix} -lIexMath${libsuffix} -lIlmThread${libsuffix} @PTHREAD_LIBS@ -+Libs: -L${libdir} -lImath -lHalf -lIex -lIexMath -lIlmThread @PTHREAD_LIBS@ - Cflags: @PTHREAD_CFLAGS@ -I${includedir} -I${includedir}/OpenEXR ---- openexr-2.4.0/OpenEXR/OpenEXR.pc.in.orig 2019-10-29 16:10:13.784661600 +0300 -+++ openexr-2.4.0/OpenEXR/OpenEXR.pc.in 2019-10-29 16:10:17.744888100 +0300 +--- a/cmake/OpenEXR.pc.in ++++ b/cmake/OpenEXR.pc.in @@ -14,7 +14,7 @@ Description: OpenEXR image library Version: @OPENEXR_VERSION@ --Libs: -L${libdir} -lIlmImf${libsuffix} -+Libs: -L${libdir} -lIlmImf - Cflags: -I${OpenEXR_includedir} - Requires: IlmBase - Libs.private: -lz +-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@ +--- a/cmake/OpenEXRLibraryDefine.cmake ++++ b/cmake/OpenEXRLibraryDefine.cmake +@@ -49,7 +49,9 @@ + ) + endif() + set_target_properties(${libname} PROPERTIES +- OUTPUT_NAME "${libname}${OPENEXR_LIB_SUFFIX}" ++ OUTPUT_NAME "${libname}" ++ RUNTIME_OUTPUT_NAME "${libname}${OPENEXR_LIB_SUFFIX}" ++ ARCHIVE_OUTPUT_NAME "${libname}" + RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" + ) + add_library(${PROJECT_NAME}::${libname} ALIAS ${libname}) diff --git a/mingw-w64-openexr/0009-win-dwalookups.patch b/mingw-w64-openexr/0009-win-dwalookups.patch index 57dfced275..52452d5034 100644 --- a/mingw-w64-openexr/0009-win-dwalookups.patch +++ b/mingw-w64-openexr/0009-win-dwalookups.patch @@ -1,6 +1,6 @@ ---- a/OpenEXR/IlmImf/dwaLookups.cpp -+++ b/OpenEXR/IlmImf/dwaLookups.cpp -@@ -42,6 +42,9 @@ +--- a/src/lib/OpenEXR/dwaLookups.cpp ++++ b/src/lib/OpenEXR/dwaLookups.cpp +@@ -14,6 +14,9 @@ #include #include @@ -8,5 +8,5 @@ +#include +#endif #include + #include - #ifdef OPENEXR_IMF_HAVE_SYSCONF_NPROCESSORS_ONLN diff --git a/mingw-w64-openexr/0012-exports.patch b/mingw-w64-openexr/0012-exports.patch deleted file mode 100644 index d832f87e52..0000000000 --- a/mingw-w64-openexr/0012-exports.patch +++ /dev/null @@ -1,244 +0,0 @@ -diff -Naur a/OpenEXR/IlmImf/ImfGenericInputFile.h b/OpenEXR/IlmImf/ImfGenericInputFile.h ---- a/OpenEXR/IlmImf/ImfGenericInputFile.h 2018-11-04 22:55:11.645972400 +0300 -+++ b/OpenEXR/IlmImf/ImfGenericInputFile.h 2018-11-04 22:55:48.038053900 +0300 -@@ -42,16 +42,13 @@ - - OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER - --class GenericInputFile -+class IMF_EXPORT GenericInputFile - { - public: -- IMF_EXPORT - virtual ~GenericInputFile(); - - protected: -- IMF_EXPORT - GenericInputFile(); -- IMF_EXPORT - void readMagicNumberAndVersionField(OPENEXR_IMF_INTERNAL_NAMESPACE::IStream& is, int& version); - }; - -diff -Naur a/OpenEXR/IlmImf/ImfGenericOutputFile.h b/OpenEXR/IlmImf/ImfGenericOutputFile.h ---- a/OpenEXR/IlmImf/ImfGenericOutputFile.h 2018-11-04 22:55:07.805752800 +0300 -+++ b/OpenEXR/IlmImf/ImfGenericOutputFile.h 2018-11-04 22:56:00.851786800 +0300 -@@ -45,18 +45,14 @@ - OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER - - --class GenericOutputFile -+class IMF_EXPORT GenericOutputFile - { - public: -- IMF_EXPORT - virtual ~GenericOutputFile(); - - protected: -- IMF_EXPORT - GenericOutputFile(); -- IMF_EXPORT - void writeMagicNumberAndVersionField (OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, const Header& header); -- IMF_EXPORT - void writeMagicNumberAndVersionField (OPENEXR_IMF_INTERNAL_NAMESPACE::OStream& os, const Header * headers, int parts); - - }; -diff -Naur a/OpenEXR/IlmImf/ImfName.h b/OpenEXR/IlmImf/ImfName.h ---- a/OpenEXR/IlmImf/ImfName.h 2018-08-10 04:34:58.000000000 +0300 -+++ b/OpenEXR/IlmImf/ImfName.h 2018-11-04 22:52:03.670220800 +0300 -@@ -51,7 +51,7 @@ - OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER - - --class Name -+class IMF_EXPORT Name - { - public: - -@@ -59,9 +59,7 @@ - // Constructors - //------------- - -- IMF_EXPORT - Name (); -- IMF_EXPORT - Name (const char text[]); - - -@@ -69,7 +67,6 @@ - // Assignment operator - //-------------------- - -- IMF_EXPORT - Name & operator = (const char text[]); - - -diff -Naur a/OpenEXR/IlmImf/ImfPreviewImage.h b/OpenEXR/IlmImf/ImfPreviewImage.h ---- a/OpenEXR/IlmImf/ImfPreviewImage.h 2018-08-10 04:34:58.000000000 +0300 -+++ b/OpenEXR/IlmImf/ImfPreviewImage.h 2018-11-04 22:39:19.052487200 +0300 -@@ -52,7 +52,7 @@ - OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER - - --struct PreviewRgba -+struct IMF_EXPORT PreviewRgba - { - unsigned char r; // Red, green and blue components of - unsigned char g; // the pixel's color; intensity is -@@ -70,7 +70,7 @@ - }; - - --class PreviewImage -+class IMF_EXPORT PreviewImage - { - public: - -@@ -87,7 +87,6 @@ - // - //-------------------------------------------------------------------- - -- IMF_EXPORT - PreviewImage (unsigned int width = 0, - unsigned int height = 0, - const PreviewRgba pixels[] = 0); -@@ -96,12 +95,9 @@ - // Copy constructor, destructor and assignment operator - //----------------------------------------------------- - -- IMF_EXPORT - PreviewImage (const PreviewImage &other); -- IMF_EXPORT - ~PreviewImage (); - -- IMF_EXPORT - PreviewImage & operator = (const PreviewImage &other); - - -diff -Naur a/OpenEXR/IlmImf/ImfStdIO.h b/OpenEXR/IlmImf/ImfStdIO.h ---- a/OpenEXR/IlmImf/ImfStdIO.h 2018-11-04 22:26:43.723504100 +0300 -+++ b/OpenEXR/IlmImf/ImfStdIO.h 2018-11-04 22:43:25.795600100 +0300 -@@ -58,7 +58,7 @@ - // class OPENEXR_IMF_INTERNAL_NAMESPACE::IStream based on class std::ifstream - //------------------------------------------- - --class StdIFStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::IStream -+class IMF_EXPORT StdIFStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::IStream - { - public: - -@@ -67,7 +67,6 @@ - // The destructor will close the file. - //------------------------------------------------------- - -- IMF_EXPORT - StdIFStream (const char fileName[]); - - -@@ -77,20 +76,14 @@ - // will not close the std::ifstream. - //--------------------------------------------------------- - -- IMF_EXPORT - StdIFStream (std::ifstream &is, const char fileName[]); - - -- IMF_EXPORT - virtual ~StdIFStream (); - -- IMF_EXPORT - virtual bool read (char c[/*n*/], int n); -- IMF_EXPORT - virtual Int64 tellg (); -- IMF_EXPORT - virtual void seekg (Int64 pos); -- IMF_EXPORT - virtual void clear (); - - private: -@@ -105,26 +98,19 @@ - // OPENEXR_IMF_INTERNAL_NAMESPACE::IStream, based on class std::istringstream - //------------------------------------------------ - --class StdISStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::IStream -+class IMF_EXPORT StdISStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::IStream - { - public: - -- IMF_EXPORT - StdISStream (); - -- IMF_EXPORT - virtual bool read (char c[/*n*/], int n); -- IMF_EXPORT - virtual Int64 tellg (); -- IMF_EXPORT - virtual void seekg (Int64 pos); -- IMF_EXPORT - virtual void clear (); - -- IMF_EXPORT - std::string str () const; - -- IMF_EXPORT - void str (const std::string &s); - - private: -@@ -139,7 +125,7 @@ - // class OPENEXR_IMF_INTERNAL_NAMESPACE::OStream based on class std::ofstream - //------------------------------------------- - --class StdOFStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::OStream -+class IMF_EXPORT StdOFStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::OStream - { - public: - -@@ -148,7 +134,6 @@ - // The destructor will close the file. - //------------------------------------------------------- - -- IMF_EXPORT - StdOFStream (const char fileName[]); - - -@@ -158,18 +143,13 @@ - // will not close the std::ofstream. - //--------------------------------------------------------- - -- IMF_EXPORT - StdOFStream (std::ofstream &os, const char fileName[]); - - -- IMF_EXPORT - virtual ~StdOFStream (); - -- IMF_EXPORT - virtual void write (const char c[/*n*/], int n); -- IMF_EXPORT - virtual Int64 tellp (); -- IMF_EXPORT - virtual void seekp (Int64 pos); - - private: -@@ -184,21 +164,16 @@ - // OPENEXR_IMF_INTERNAL_NAMESPACE::OStream, based on class std::ostringstream - //------------------------------------------------ - --class StdOSStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::OStream -+class IMF_EXPORT StdOSStream: public OPENEXR_IMF_INTERNAL_NAMESPACE::OStream - { - public: - -- IMF_EXPORT - StdOSStream (); - -- IMF_EXPORT - virtual void write (const char c[/*n*/], int n); -- IMF_EXPORT - virtual Int64 tellp (); -- IMF_EXPORT - virtual void seekp (Int64 pos); - -- IMF_EXPORT - std::string str () const; - - private: diff --git a/mingw-w64-openexr/0013-no-py2.patch b/mingw-w64-openexr/0013-no-py2.patch deleted file mode 100644 index 56bb3fcc36..0000000000 --- a/mingw-w64-openexr/0013-no-py2.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- openexr-2.4.0/PyIlmBase/CMakeLists.txt.orig 2019-09-18 03:02:06.000000000 +0200 -+++ openexr-2.4.0/PyIlmBase/CMakeLists.txt 2019-12-08 14:03:14.054387900 +0100 -@@ -38,7 +38,7 @@ - endif() - - # now determine which (or both), and compile for both --find_package(Python2 COMPONENTS Interpreter Development) -+#find_package(Python2 COMPONENTS Interpreter Development) - find_package(Python3 COMPONENTS Interpreter Development) - if(TARGET Python2::Python AND TARGET Python3::Python) - message(NOTICE ": Found Python ${Python2_VERSION} and ${Python3_VERSION}") diff --git a/mingw-w64-openexr/PKGBUILD b/mingw-w64-openexr/PKGBUILD index a13170b577..2fb8630189 100644 --- a/mingw-w64-openexr/PKGBUILD +++ b/mingw-w64-openexr/PKGBUILD @@ -2,39 +2,28 @@ _realname=openexr pkgbase=mingw-w64-${_realname} -pkgname=("${MINGW_PACKAGE_PREFIX}-ilmbase" - "${MINGW_PACKAGE_PREFIX}-${_realname}" - "${MINGW_PACKAGE_PREFIX}-pyilmbase") -pkgver=2.5.8 -pkgrel=3 -pkgdesc="OpenEXR library for EXR images (mingw-w64)" +pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") +pkgver=3.1.5 +pkgrel=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/" -license=('spdx:BSD-3-Clause') +license=('BSD') +depends=("${MINGW_PACKAGE_PREFIX}-imath" + "${MINGW_PACKAGE_PREFIX}-libwinpthread-git" + "${MINGW_PACKAGE_PREFIX}-zlib") makedepends=("${MINGW_PACKAGE_PREFIX}-cmake" - "${MINGW_PACKAGE_PREFIX}-ninja" - "${MINGW_PACKAGE_PREFIX}-boost" "${MINGW_PACKAGE_PREFIX}-cc" - "${MINGW_PACKAGE_PREFIX}-pkgconf" - "${MINGW_PACKAGE_PREFIX}-python" - "${MINGW_PACKAGE_PREFIX}-python-numpy") -source=(${_realname}-${pkgver}.tar.gz::https://github.com/openexr/openexr/archive/v${pkgver}.tar.gz + "${MINGW_PACKAGE_PREFIX}-ninja") +source=("https://github.com/openexr/openexr/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz" 0001-mingw-w64-fix.patch - 0002-openexr-2.1.0-headers.patch - 0005-fix-dirs-in-pkgconfig.patch 0006-cmake-soversion.patch - 0009-win-dwalookups.patch - 0012-exports.patch - 0013-no-py2.patch) -sha256sums=('db261a7fcc046ec6634e4c5696a2fc2ce8b55f50aac6abe034308f54c8495f55' - '68bedb3a4acc6f62b1486c7c47c9025f5ce4131468e17445f0c716545ddd00c1' - '460dcfd86b407241382ed4ba5a003ae251c9fdce68e7cfdea021b09898ad2705' - 'fba4e95d6921bcd253c8c644063b4c1334c84761a2a2232590d442ca81f8d7cd' - '313b0c98abdd792b8213ec9685a5a7b095ec69faa528f6fd0946f23576b6ef07' - '2ca841425ae676f75fa714a16f0124272224147fe40ea507ccc4bf74477f51ab' - 'da9e92f066e9b45583f2b12678a9f49fcbb7fa1f06805d9b472d39fa5f18a629' - '47e4e068439a1adaca41d7d7f966f65f1ae68b4dee1d1dd7c5778256edc3b3e8') + 0009-win-dwalookups.patch) +sha256sums=('93925805c1fc4f8162b35f0ae109c4a75344e6decae5a240afdfce25f8a433ec' + 'b5ce04296e9711cace5c6a73ca13fc649b2fccde744023a6d2ff93dab23f7ba0' + 'e65852ac2e5545472ad90830c97e964aa2c71e1795979a8b9867155d578d45ed' + 'd7af93d993c5b09ff6be1f5198ab1239a95c550518ecc8de106f82c3d4185fbf') # Helper macros to help make tasks easier # apply_patch_with_msg() { @@ -48,17 +37,10 @@ apply_patch_with_msg() { prepare(){ cd "${srcdir}/${_realname}-${pkgver}" - sed -i 's/#define ZLIB_WINAPI/\/\/#define ZLIB_WINAPI/g' OpenEXR/IlmImf/ImfZipCompressor.cpp - sed -i 's/#define ZLIB_WINAPI/\/\/#define ZLIB_WINAPI/g' OpenEXR/IlmImf/ImfPxr24Compressor.cpp - apply_patch_with_msg \ 0001-mingw-w64-fix.patch \ - 0002-openexr-2.1.0-headers.patch \ 0006-cmake-soversion.patch \ - 0009-win-dwalookups.patch \ - 0012-exports.patch\ - 0013-no-py2.patch - # 0005-fix-dirs-in-pkgconfig.patch + 0009-win-dwalookups.patch } build() { @@ -72,70 +54,30 @@ build() { extra_config+=("-DCMAKE_BUILD_TYPE=Debug") fi + CXXFLAGS+=" -Wno-ignored-attributes" + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake \ -GNinja \ -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ ${extra_config[@]} \ -DBUILD_SHARED_LIBS=ON \ - -DPython_EXECUTABLE=${MINGW_PREFIX}/bin/python.exe \ - -DPython_ROOT_DIR=${MINGW_PREFIX} \ - -DPython_FIND_REGISTRY=NEVER \ - -DPython3_EXECUTABLE=${MINGW_PREFIX}/bin/python.exe \ - -DPython3_ROOT_DIR=${MINGW_PREFIX} \ - -DPython3_FIND_REGISTRY=NEVER \ + -DBUILD_TESTING=OFF \ + -DOPENEXR_INSTALL_EXAMPLES=OFF \ + -DOPENEXR_INSTALL_PKG_CONFIG=ON \ ../${_realname}-${pkgver} ${MINGW_PREFIX}/bin/cmake --build . } -package_ilmbase() { - pkgdesc="Base libraries from ILM for OpenEXR (mingw-w64)" - depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" - "${MINGW_PACKAGE_PREFIX}-libwinpthread-git") - - cd "${srcdir}/build-${MSYSTEM}/IlmBase" - DESTDIR=${pkgdir} ${MINGW_PREFIX}/bin/cmake --install . +check() { + cd "${srcdir}/build-${MSYSTEM}" + ${MINGW_PREFIX}/bin/ctest.exe ./ || true } -package_openexr() { - pkgdesc="An high dynamic-range image file format library (mingw-w64)" - depends=("${MINGW_PACKAGE_PREFIX}-ilmbase=${pkgver}" - "${MINGW_PACKAGE_PREFIX}-zlib") +package() { + cd "${srcdir}/build-${MSYSTEM}" + DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install ./ - cd "${srcdir}/build-${MSYSTEM}/OpenEXR" - DESTDIR=${pkgdir} ${MINGW_PREFIX}/bin/cmake --install . + install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE.md" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE.md" } - -package_pyilmbase() { - pkgdesc="Python bindings for OpenEXR library (mingw-w64)" - depends=("${MINGW_PACKAGE_PREFIX}-openexr=${pkgver}" - "${MINGW_PACKAGE_PREFIX}-boost" - "${MINGW_PACKAGE_PREFIX}-python-numpy") - - cd "${srcdir}/build-${MSYSTEM}/PyIlmBase" - DESTDIR=${pkgdir} ${MINGW_PREFIX}/bin/cmake --install . - - local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX}) - for _f in "${pkgdir}${MINGW_PREFIX}"/lib/cmake/PyIlmBase/*.cmake; do - sed -e "s|${PREFIX_WIN}|\$\{_IMPORT_PREFIX\}|g" -i ${_f} - sed -e "s|${MINGW_PREFIX}|\$\{_IMPORT_PREFIX\}|g" -i ${_f} - done - - # Install python modules - local _py3ver=$(${MINGW_PREFIX}/bin/python -c "import sys;sys.stdout.write('.'.join(map(str, sys.version_info[:2])))") - - mkdir -p ${pkgdir}${MINGW_PREFIX}/lib/python${_py3ver}/site-packages - cp ${srcdir}/build-${MSYSTEM}/python${_py3ver//./_}/*.pyd ${pkgdir}${MINGW_PREFIX}/lib/python${_py3ver}/site-packages/ -} - -# template start; name=mingw-w64-splitpkg-wrappers; version=1.0; -# vim: set ft=bash : - -# generate wrappers -for _name in "${pkgname[@]}"; do - _short="package_${_name#${MINGW_PACKAGE_PREFIX}-}" - _func="$(declare -f "${_short}")" - eval "${_func/#${_short}/package_${_name}}" -done -# template end;