git » krita.git » commit a726570

openexr 3.0 rebuild

author Antonio Rojas
2021-04-23 21:50:41 UTC
committer Antonio Rojas
2021-04-23 21:50:41 UTC
parent a3e3101e6f76c00f385ea582556c7f866cf1239e

openexr 3.0 rebuild

PKGBUILD +9 -3
krita-openexr3.patch +136 -0

diff --git a/PKGBUILD b/PKGBUILD
index f6fa4a7..335d24d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
 pkgname=krita
 _pkgver=4.4.3
 pkgver=${_pkgver/-/}
-pkgrel=1
+pkgrel=2
 pkgdesc="Edit and paint images"
 arch=(x86_64)
 url="https://krita.org"
@@ -15,12 +15,18 @@ makedepends=(extra-cmake-modules kdoctools boost eigen vc poppler-qt5 opencolori
 optdepends=('poppler-qt5: PDF filter' 'ffmpeg: to save animations' 'opencolorio1: for the LUT docker'
             "krita-plugin-gmic: G'MIC plugin" 'python-pyqt5: for the Python plugins' 'libheif: HEIF filter'
             'kseexpr: SeExpr generator layer' 'kimageformats: PSD support')
-source=("https://download.kde.org/stable/krita/$_pkgver/$pkgname-$_pkgver.tar.gz"{,.sig})
+source=(https://download.kde.org/stable/krita/$_pkgver/$pkgname-$_pkgver.tar.gz{,.sig}
+        krita-openexr3.patch)
 sha256sums=('d4062323c2237ab9195c0b8bce1a69e30bd6fd10fadbad6395c27211d9878f67'
-            'SKIP')
+            'SKIP'
+            '3825dac0317f4501c8dd8b0844540bbd0841702cd15903ce3a659755eaa226f5')
 validpgpkeys=('05D00A8B73A686789E0A156858B9596C722EA3BD'  # Boudewijn Rempt <foundation@krita.org>
               'E9FB29E74ADEACC5E3035B8AB69EB4CF7468332F') # Dmitry Kazakov (main key) <dimula73@gmail.com>
 
+prepare() {
+  patch -d $pkgname-$_pkgver -p1 < krita-openexr3.patch # Fix build with OpenEXR 3
+}
+
 build() {
   cmake -B build -S $pkgname-$_pkgver \
     -DBUILD_TESTING=OFF \
diff --git a/krita-openexr3.patch b/krita-openexr3.patch
new file mode 100644
index 0000000..31efb83
--- /dev/null
+++ b/krita-openexr3.patch
@@ -0,0 +1,136 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4e8f456492..9a3ae863ec 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -649,15 +649,20 @@ set_package_properties(ZLIB PROPERTIES
+     PURPOSE "Optionally used by the G'Mic and the PSD plugins")
+ macro_bool_to_01(ZLIB_FOUND HAVE_ZLIB)
+ 
+-find_package(OpenEXR)
++find_package(OpenEXR 3.0 CONFIG QUIET)
++if(TARGET OpenEXR::OpenEXR)
++    set(OPENEXR_LIBRARIES OpenEXR::OpenEXR)
++else()
++    find_package(OpenEXR)
++endif()
+ set_package_properties(OpenEXR PROPERTIES
+     DESCRIPTION "High dynamic-range (HDR) image file format"
+     URL "https://www.openexr.com"
+     TYPE OPTIONAL
+     PURPOSE "Required by the Krita OpenEXR filter")
+-macro_bool_to_01(OPENEXR_FOUND HAVE_OPENEXR)
++macro_bool_to_01(OpenEXR_FOUND HAVE_OPENEXR)
+ set(LINK_OPENEXR_LIB)
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(SYSTEM ${OPENEXR_INCLUDE_DIRS})
+     set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES})
+     add_definitions(${OPENEXR_DEFINITIONS})
+diff --git a/libs/image/CMakeLists.txt b/libs/image/CMakeLists.txt
+index e9ff363df3..59e567fa04 100644
+--- a/libs/image/CMakeLists.txt
++++ b/libs/image/CMakeLists.txt
+@@ -367,7 +367,7 @@ if(NOT HAVE_CXX_ATOMICS_WITHOUT_LIB)
+     endif()
+ endif()
+ 
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+   target_link_libraries(kritaimage PUBLIC ${OPENEXR_LIBRARIES})
+ endif()
+ 
+diff --git a/libs/pigment/CMakeLists.txt b/libs/pigment/CMakeLists.txt
+index 3e8bcf9e25..d55fd8714f 100644
+--- a/libs/pigment/CMakeLists.txt
++++ b/libs/pigment/CMakeLists.txt
+@@ -14,7 +14,7 @@ include_directories(
+ 
+ set(FILE_OPENEXR_SOURCES)
+ set(LINK_OPENEXR_LIB)
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(SYSTEM ${OPENEXR_INCLUDE_DIRS})
+     set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES})
+     add_definitions(${OPENEXR_DEFINITIONS})
+diff --git a/plugins/color/lcms2engine/CMakeLists.txt b/plugins/color/lcms2engine/CMakeLists.txt
+index 86b83710dc..801783c1f3 100644
+--- a/plugins/color/lcms2engine/CMakeLists.txt
++++ b/plugins/color/lcms2engine/CMakeLists.txt
+@@ -28,7 +28,7 @@ include_directories(
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorprofiles
+ )
+ 
+-if (HAVE_LCMS24 AND OPENEXR_FOUND)
++if (HAVE_LCMS24 AND OpenEXR_FOUND)
+ include_directories( 
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/gray_f16
+     ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/rgb_f16
+@@ -38,7 +38,7 @@ endif ()
+ 
+ set(FILE_OPENEXR_SOURCES)
+ set(LINK_OPENEXR_LIB)
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(SYSTEM ${OPENEXR_INCLUDE_DIRS})
+     set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES})
+     add_definitions(${OPENEXR_DEFINITIONS})
+@@ -77,7 +77,7 @@ set ( lcmsengine_SRCS
+     LcmsEnginePlugin.cpp
+ )
+ 
+-if (HAVE_LCMS24 AND OPENEXR_FOUND)
++if (HAVE_LCMS24 AND OpenEXR_FOUND)
+     set ( lcmsengine_SRCS
+         ${lcmsengine_SRCS}
+         colorspaces/gray_f16/GrayF16ColorSpace.cpp
+diff --git a/plugins/color/lcms2engine/tests/CMakeLists.txt b/plugins/color/lcms2engine/tests/CMakeLists.txt
+index ae69220698..8c5fe5d061 100644
+--- a/plugins/color/lcms2engine/tests/CMakeLists.txt
++++ b/plugins/color/lcms2engine/tests/CMakeLists.txt
+@@ -11,7 +11,7 @@ include_directories( ../colorspaces/cmyk_u16
+     ../colorprofiles
+     ..
+ )
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     include_directories(SYSTEM ${OPENEXR_INCLUDE_DIRS})
+ endif()
+ include_directories( ${LCMS2_INCLUDE_DIR} )
+diff --git a/plugins/impex/CMakeLists.txt b/plugins/impex/CMakeLists.txt
+index 63df1fd69a..c94674b381 100644
+--- a/plugins/impex/CMakeLists.txt
++++ b/plugins/impex/CMakeLists.txt
+@@ -19,7 +19,7 @@ if(PNG_FOUND)
+     add_subdirectory(csv)
+ endif()
+ 
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+     add_subdirectory(exr)
+ endif()
+ 
+diff --git a/plugins/impex/exr/exr_converter.cc b/plugins/impex/exr/exr_converter.cc
+index f63ab73cd9..d620062594 100644
+--- a/plugins/impex/exr/exr_converter.cc
++++ b/plugins/impex/exr/exr_converter.cc
+@@ -11,6 +11,8 @@
+ 
+ #include <ImfAttribute.h>
+ #include <ImfChannelList.h>
++#include <ImfFrameBuffer.h>
++#include <ImfHeader.h>
+ #include <ImfInputFile.h>
+ #include <ImfOutputFile.h>
+ 
+diff --git a/plugins/impex/raw/CMakeLists.txt b/plugins/impex/raw/CMakeLists.txt
+index 71cb5b355c..f65bc770a5 100644
+--- a/plugins/impex/raw/CMakeLists.txt
++++ b/plugins/impex/raw/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ add_subdirectory(tests)
+ 
+-if(OPENEXR_FOUND)
++if(OpenEXR_FOUND)
+ 	include_directories(${OPENEXR_INCLUDE_DIRS})
+ endif()
+ include_directories(${LibRaw_INCLUDE_DIR})