-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path4523-Support-building-with-OpenEXR-3.patch
155 lines (141 loc) · 5.14 KB
/
4523-Support-building-with-OpenEXR-3.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
From d66383f6c593d21463c658fbcc6adef28a7f570f Mon Sep 17 00:00:00 2001
From: Antonio Rojas <[email protected]>
Date: Fri, 23 Apr 2021 23:42:14 +0200
Subject: [PATCH 4523/5371] Support building with OpenEXR 3
Try to find OpenEXR 3 first via the upstream cmake config and fallback to using our FindOpenEXR
---
CMakeLists.txt | 11 ++++++++---
libs/image/CMakeLists.txt | 2 +-
libs/pigment/CMakeLists.txt | 2 +-
plugins/color/lcms2engine/CMakeLists.txt | 6 +++---
plugins/color/lcms2engine/tests/CMakeLists.txt | 2 +-
plugins/impex/CMakeLists.txt | 2 +-
plugins/impex/exr/exr_converter.cc | 2 ++
plugins/impex/raw/CMakeLists.txt | 2 +-
8 files changed, 18 insertions(+), 11 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0fb28e41ea..59fa487eda 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})
--
2.31.1