krita: add patch to fix the build with openexr3

This commit is contained in:
Stamatin Cristina 2021-06-11 17:38:57 +03:00
parent 6bea19440a
commit 47532c18bc
3 changed files with 143 additions and 3 deletions

View File

@ -1,6 +1,7 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF33aQqEA/TyqHZFcJnUEfcFIPtjBFU6QrmMtTLudvc6GvY8RVBxCOrEutYCzmDTFnw906YHEnD9yfn1Jxj0eXlAg=
SHA256 (Pkgfile) = 4ccc3b03ade8bc55d2feba8fdb019f3a4e44bc5dec7665df6fe524c7eb355aa4
RWSagIOpLGJF38CmVzjXQ2c6aU30NyDK+Gx2MZuuVzA6Lr2ec96hBNqsEd8HvRjLKaATxED7sT1SYga9D199L8q+fupJ3kzcQwM=
SHA256 (Pkgfile) = de019cf28540dfe39ab84ec5758eda0dc3cb1d1f00384e556e428a4667b60f8d
SHA256 (.footprint) = 605817f0928881363075fa11f6c153ea14f9aab65f42c2ea95f72f066a24d567
SHA256 (krita-4.4.5.tar.gz) = 4bfd7280870d1060a00d1123d836fc1a5b5bf8a028676679f0268cd5e7fb7568
SHA256 (fix-build-with-openexr3.patch) = 3825dac0317f4501c8dd8b0844540bbd0841702cd15903ce3a659755eaa226f5
SHA256 (fix-build-with-boost-1.75.patch) = de84c3c1685e48392d4fb07daab56068cacfc2a846a52a9915b5f3e08357abd1

View File

@ -6,17 +6,20 @@
name=krita
version=4.4.5
release=1
source=(https://download.kde.org/stable/$name/${version:0:5}/$name-$version.tar.gz
source=(https://download.kde.org/stable/$name/${version:0:5}/$name-$version.tar.gz \
fix-build-with-openexr3.patch \
fix-build-with-boost-1.75.patch)
build() {
rm -r $name-$version/po/*
patch -p1 -d $name-$version -i $SRC/fix-build-with-boost-1.75.patch
patch -p1 -d $name-$version -i $SRC/fix-build-with-openexr3.patch
cmake -S$name-$version -Bbuild \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_TESTING=OFF \
-DCMAKE_PREFIX_PATH=usr \
-DBUILD_KRITA_QT_DESIGNER_PLUGINS=ON
cmake --build build -v

View File

@ -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})