blob: 2d765bce4dd49d5a57efc75c6c38fe72bb4dfb3a [file] [log] [blame]
Mark Youngb5ed9852016-01-25 16:02:08 -07001# - Find the ImageMagick binary suite.
2# This module will search for a set of ImageMagick tools specified
3# as components in the FIND_PACKAGE call. Typical components include,
4# but are not limited to (future versions of ImageMagick might have
Mark Young93ecb1d2016-01-13 13:47:16 -07005# additional components not listed here):
6#
Mark Youngb5ed9852016-01-25 16:02:08 -07007# animate
8# compare
9# composite
10# conjure
11# convert
12# display
13# identify
14# import
15# mogrify
16# montage
17# stream
Mark Young93ecb1d2016-01-13 13:47:16 -070018#
19# If no component is specified in the FIND_PACKAGE call, then it only
Mark Youngb5ed9852016-01-25 16:02:08 -070020# searches for the ImageMagick executable directory. This code defines
Mark Young93ecb1d2016-01-13 13:47:16 -070021# the following variables:
22#
Mark Youngb5ed9852016-01-25 16:02:08 -070023# ImageMagick_FOUND - TRUE if all components are found.
24# ImageMagick_EXECUTABLE_DIR - Full path to executables directory.
25# ImageMagick_<component>_FOUND - TRUE if <component> is found.
26# ImageMagick_<component>_EXECUTABLE - Full path to <component> executable.
Mark Young93ecb1d2016-01-13 13:47:16 -070027#
28# There are also components for the following ImageMagick APIs:
29#
Mark Youngb5ed9852016-01-25 16:02:08 -070030# Magick++
31# MagickWand
32# MagickCore
Mark Young93ecb1d2016-01-13 13:47:16 -070033#
34# For these components the following variables are set:
35#
Mark Youngb5ed9852016-01-25 16:02:08 -070036# ImageMagick_FOUND - TRUE if all components are found.
37# ImageMagick_INCLUDE_DIRS - Full paths to all include dirs.
38# ImageMagick_LIBRARIES - Full paths to all libraries.
39# ImageMagick_<component>_FOUND - TRUE if <component> is found.
40# ImageMagick_<component>_INCLUDE_DIRS - Full path to <component> include dirs.
41# ImageMagick_<component>_LIBRARIES - Full path to <component> libraries.
Mark Young93ecb1d2016-01-13 13:47:16 -070042#
43# Example Usages:
Mark Youngb5ed9852016-01-25 16:02:08 -070044# FIND_PACKAGE(ImageMagick)
45# FIND_PACKAGE(ImageMagick COMPONENTS convert)
46# FIND_PACKAGE(ImageMagick COMPONENTS convert mogrify display)
47# FIND_PACKAGE(ImageMagick COMPONENTS Magick++)
48# FIND_PACKAGE(ImageMagick COMPONENTS Magick++ convert)
Mark Young93ecb1d2016-01-13 13:47:16 -070049#
Mark Youngb5ed9852016-01-25 16:02:08 -070050# Note that the standard FIND_PACKAGE features are supported
51# (i.e., QUIET, REQUIRED, etc.).
Mark Young93ecb1d2016-01-13 13:47:16 -070052
53#=============================================================================
54# Copyright 2007-2009 Kitware, Inc.
55# Copyright 2007-2008 Miguel A. Figueroa-Villanueva <miguelf at ieee dot org>
Mark Young93ecb1d2016-01-13 13:47:16 -070056#
57# Distributed under the OSI-approved BSD License (the "License");
Mark Youngb5ed9852016-01-25 16:02:08 -070058# see accompanying file Copyright_cmake.txt for details.
Mark Young93ecb1d2016-01-13 13:47:16 -070059#
60# This software is distributed WITHOUT ANY WARRANTY; without even the
61# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
62# See the License for more information.
63#=============================================================================
Mark Youngb5ed9852016-01-25 16:02:08 -070064# (To distributed this file outside of CMake, substitute the full
Mark Young93ecb1d2016-01-13 13:47:16 -070065# License text for the above reference.)
66
67find_package(PkgConfig QUIET)
68
69function(FIND_REGISTRY)
70 if (WIN32)
Mark Youngb5ed9852016-01-25 16:02:08 -070071
Mark Young93ecb1d2016-01-13 13:47:16 -070072 # If a 64-bit compile, it can only appear in "[HKLM]\\software\\ImageMagick"
73 if (CMAKE_CL_64)
Mark Younge91eee52016-01-22 15:06:43 -070074
75 GET_FILENAME_COMPONENT(IM_BIN_PATH
76 [HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]
77 ABSOLUTE CACHE)
Mark Youngb5ed9852016-01-25 16:02:08 -070078
Mark Young93ecb1d2016-01-13 13:47:16 -070079 else()
80
81 # This is dumb, but it's the only way I've been able to get this to work. CMake has no knowledge of the systems architecture.
82 # So, if we want to detect if we're running a 32-bit compile on a 64-bit OS, we need to manually check for the existence of
83 # ImageMagick in the WOW6432Node of the registry first. If that fails, assume they want the 64-bit version.
84 GET_FILENAME_COMPONENT(TESTING
85 [HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\ImageMagick\\Current;BinPath]
86 PATH)
87
Mark Younge91eee52016-01-22 15:06:43 -070088 # If the WOW6432Node reg string returns empty, assume 32-bit OS, and look in the standard reg path.
89 if (TESTING STREQUAL "")
Mark Young93ecb1d2016-01-13 13:47:16 -070090
Mark Younge91eee52016-01-22 15:06:43 -070091 GET_FILENAME_COMPONENT(IM_BIN_PATH
92 [HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]
93 ABSOLUTE CACHE)
Mark Young5a0c0c22016-09-16 10:21:31 -060094
Mark Younge91eee52016-01-22 15:06:43 -070095 # Otherwise, the WOW6432Node returned a string, assume 32-bit build on 64-bit OS and use that string.
Mark Young93ecb1d2016-01-13 13:47:16 -070096 else()
Mark Younge91eee52016-01-22 15:06:43 -070097
98 GET_FILENAME_COMPONENT(IM_BIN_PATH
99 [HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\ImageMagick\\Current;BinPath]
100 ABSOLUTE CACHE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600101
Mark Young93ecb1d2016-01-13 13:47:16 -0700102 endif()
Mark Young5a0c0c22016-09-16 10:21:31 -0600103
Mark Young93ecb1d2016-01-13 13:47:16 -0700104 endif()
Mark Younge91eee52016-01-22 15:06:43 -0700105
106 set (IMAGEMAGIC_REG_PATH ${IM_BIN_PATH} PARENT_SCOPE)
107 set (IMAGEMAGIC_REGINCLUDE_PATH ${IM_BIN_PATH}/include PARENT_SCOPE)
108 set (IMAGEMAGIC_REGLIB_PATH ${IM_BIN_PATH}/lib PARENT_SCOPE)
109
Mark Young93ecb1d2016-01-13 13:47:16 -0700110 else()
Mark Young3f9e9d12016-01-26 09:29:29 -0700111
112 # No registry exists for Linux. So, just set these to empty strings.
Mark Young93ecb1d2016-01-13 13:47:16 -0700113 set (IMAGEMAGIC_REG_PATH "" PARENT_SCOPE)
114 set (IMAGEMAGIC_REGINCLUDE_PATH "" PARENT_SCOPE)
115 set (IMAGEMAGIC_REGLIB_PATH "" PARENT_SCOPE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600116
Mark Young93ecb1d2016-01-13 13:47:16 -0700117 endif()
Mark Young5a0c0c22016-09-16 10:21:31 -0600118
Mark Young93ecb1d2016-01-13 13:47:16 -0700119endfunction()
120
121
122#---------------------------------------------------------------------
123# Helper functions
124#---------------------------------------------------------------------
Mark Young5a0c0c22016-09-16 10:21:31 -0600125FUNCTION(FIND_IMAGEMAGICK_API component path header)
Mark Youngb5ed9852016-01-25 16:02:08 -0700126 SET(ImageMagick_${component}_FOUND FALSE PARENT_SCOPE)
Mark Young93ecb1d2016-01-13 13:47:16 -0700127
Mark Young5a0c0c22016-09-16 10:21:31 -0600128 # NOTE: My experience is that Windows uses the PATHs
129 # variables, while Linux uses the PATH_SUFFIXES.
130 # You can't add sub-directories to the PATH_SUFFIXES
131 # because it messes up the ImageMagick Include
132 # paths that are returned. Instead, you have to
133 # call this FIND_IMAGEMAGICK_API for each separate
134 # possible sub-folder.
Mark Youngb5ed9852016-01-25 16:02:08 -0700135 FIND_PATH(ImageMagick_${component}_INCLUDE_DIR
Mark Young93ecb1d2016-01-13 13:47:16 -0700136 NAMES ${header}
Mark Young93ecb1d2016-01-13 13:47:16 -0700137 PATHS
138 ${ImageMagick_INCLUDE_DIRS}
139 ${IMAGEMAGIC_REGINCLUDE_PATH}
140 PATH_SUFFIXES
Mark Young5a0c0c22016-09-16 10:21:31 -0600141 ImageMagick ImageMagick-6 ImageMagick-7
Mark Youngb5ed9852016-01-25 16:02:08 -0700142 DOC "Path to the ImageMagick include dir."
Mark Young93ecb1d2016-01-13 13:47:16 -0700143 )
Mark Young3f9e9d12016-01-26 09:29:29 -0700144 FIND_PATH(ImageMagick_${component}_ARCH_INCLUDE_DIR
145 NAMES magick/magick-baseconfig.h
146 PATHS
147 ${ImageMagick_INCLUDE_DIRS}
148 ${IMAGEMAGIC_REGINCLUDE_PATH}
149 PATH_SUFFIXES
Mark Young5a0c0c22016-09-16 10:21:31 -0600150 ImageMagick ImageMagick-6 ImageMagick-7
Mark Young3f9e9d12016-01-26 09:29:29 -0700151 DOC "Path to the ImageMagick arch-specific include dir."
152 )
Mark Youngb5ed9852016-01-25 16:02:08 -0700153 FIND_LIBRARY(ImageMagick_${component}_LIBRARY
Mark Young93ecb1d2016-01-13 13:47:16 -0700154 NAMES ${ARGN}
Mark Young93ecb1d2016-01-13 13:47:16 -0700155 PATHS
156 ${IMAGEMAGIC_REGLIB_PATH}
157 DOC "Path to the ImageMagick Magick++ library."
158 )
159
Mark Young93ecb1d2016-01-13 13:47:16 -0700160
Mark Young5a0c0c22016-09-16 10:21:31 -0600161 IF (ImageMagick_${component}_INCLUDE_DIR AND ImageMagick_${component}_LIBRARY)
Mark Young3f9e9d12016-01-26 09:29:29 -0700162 SET(ImageMagick_${component}_FOUND TRUE PARENT_SCOPE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600163
Mark Youngb5ed9852016-01-25 16:02:08 -0700164 LIST(APPEND ImageMagick_INCLUDE_DIRS
Mark Young93ecb1d2016-01-13 13:47:16 -0700165 ${ImageMagick_${component}_INCLUDE_DIR}
166 )
Mark Young5a0c0c22016-09-16 10:21:31 -0600167
168 # Only add the path if it's not the special string "<NONE>"
169 IF(NOT path STREQUAL "<NONE>")
170 LIST(APPEND ImageMagick_INCLUDE_DIRS
171 ${ImageMagick_${component}_INCLUDE_DIR}/${path}
172 )
173 ENDIF()
174
175 # Add the architecture include path if it exists
176 IF (ImageMagick_${component}_ARCH_INCLUDE_DIR)
Mark Young93450962016-01-26 11:27:09 -0700177 LIST(APPEND ImageMagick_INCLUDE_DIRS
178 ${ImageMagick_${component}_ARCH_INCLUDE_DIR}
179 )
Mark Young5a0c0c22016-09-16 10:21:31 -0600180 ENDIF()
181
Mark Youngb5ed9852016-01-25 16:02:08 -0700182 LIST(REMOVE_DUPLICATES ImageMagick_INCLUDE_DIRS)
183 SET(ImageMagick_INCLUDE_DIRS ${ImageMagick_INCLUDE_DIRS} PARENT_SCOPE)
Mark Young93ecb1d2016-01-13 13:47:16 -0700184
Mark Youngb5ed9852016-01-25 16:02:08 -0700185 LIST(APPEND ImageMagick_LIBRARIES
Mark Young93ecb1d2016-01-13 13:47:16 -0700186 ${ImageMagick_${component}_LIBRARY}
187 )
Mark Youngb5ed9852016-01-25 16:02:08 -0700188 SET(ImageMagick_LIBRARIES ${ImageMagick_LIBRARIES} PARENT_SCOPE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600189 ENDIF()
Mark Young3f9e9d12016-01-26 09:29:29 -0700190
Mark Youngb5ed9852016-01-25 16:02:08 -0700191ENDFUNCTION(FIND_IMAGEMAGICK_API)
Mark Young93ecb1d2016-01-13 13:47:16 -0700192
Mark Youngb5ed9852016-01-25 16:02:08 -0700193FUNCTION(FIND_IMAGEMAGICK_EXE component)
194 SET(_IMAGEMAGICK_EXECUTABLE
Mark Young93ecb1d2016-01-13 13:47:16 -0700195 ${ImageMagick_EXECUTABLE_DIR}/${component}${CMAKE_EXECUTABLE_SUFFIX})
Mark Youngb5ed9852016-01-25 16:02:08 -0700196 IF(EXISTS ${_IMAGEMAGICK_EXECUTABLE})
197 SET(ImageMagick_${component}_EXECUTABLE
Mark Young93ecb1d2016-01-13 13:47:16 -0700198 ${_IMAGEMAGICK_EXECUTABLE}
199 PARENT_SCOPE
200 )
Mark Youngb5ed9852016-01-25 16:02:08 -0700201 SET(ImageMagick_${component}_FOUND TRUE PARENT_SCOPE)
202 ELSE(EXISTS ${_IMAGEMAGICK_EXECUTABLE})
203 SET(ImageMagick_${component}_FOUND FALSE PARENT_SCOPE)
204 ENDIF(EXISTS ${_IMAGEMAGICK_EXECUTABLE})
205ENDFUNCTION(FIND_IMAGEMAGICK_EXE)
Mark Young93ecb1d2016-01-13 13:47:16 -0700206
207#---------------------------------------------------------------------
208# Start Actual Work
209#---------------------------------------------------------------------
210FIND_REGISTRY()
211
212# Try to find a ImageMagick installation binary path.
Mark Youngb5ed9852016-01-25 16:02:08 -0700213FIND_PATH(ImageMagick_EXECUTABLE_DIR
Mark Young93ecb1d2016-01-13 13:47:16 -0700214 NAMES mogrify${CMAKE_EXECUTABLE_SUFFIX}
215 PATHS
216 ${IMAGEMAGIC_REG_PATH}
217 DOC "Path to the ImageMagick binary directory."
218 NO_DEFAULT_PATH
219 )
Mark Youngb5ed9852016-01-25 16:02:08 -0700220FIND_PATH(ImageMagick_EXECUTABLE_DIR
Mark Young93ecb1d2016-01-13 13:47:16 -0700221 NAMES mogrify${CMAKE_EXECUTABLE_SUFFIX}
222 )
223
224# Find each component. Search for all tools in same dir
225# <ImageMagick_EXECUTABLE_DIR>; otherwise they should be found
226# independently and not in a cohesive module such as this one.
Mark Youngb5ed9852016-01-25 16:02:08 -0700227SET(ImageMagick_FOUND TRUE)
228FOREACH(component ${ImageMagick_FIND_COMPONENTS}
Mark Young93ecb1d2016-01-13 13:47:16 -0700229 # DEPRECATED: forced components for backward compatibility
230 convert mogrify import montage composite
231 )
Mark Young93ecb1d2016-01-13 13:47:16 -0700232
Mark Young5a0c0c22016-09-16 10:21:31 -0600233 IF(component STREQUAL "Magick++")
Mike Stroyan4cd3dfd2016-09-20 09:05:28 -0600234 # unset cached variable that assumes header parameter never changes
235 UNSET(ImageMagick_MagickWand_INCLUDE_DIR CACHE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600236
237 # Try top folder first
238 FIND_IMAGEMAGICK_API(Magick++ <NONE> Magick++.h
239 Magick++ CORE_RL_Magick++_ Magick++-6.Q16 Magick++-Q16 Magick++-6.Q8 Magick++-Q8 Magick++-6.Q16HDRI Magick++-Q16HDRI Magick++-6.Q8HDRI Magick++-Q8HDRI
240 )
241
242 IF(NOT ImageMagick_Magick++_INCLUDE_DIR OR NOT ImageMagick_Magick++_LIBRARY)
243 # Look for Magick++.h, in the magick++ sub-folder
244 FIND_IMAGEMAGICK_API(Magick++ magick++ magick++/Magick++.h
245 Magick++ CORE_RL_Magick++_ Magick++-6.Q16 Magick++-Q16 Magick++-6.Q8 Magick++-Q8 Magick++-6.Q16HDRI Magick++-Q16HDRI Magick++-6.Q8HDRI Magick++-Q8HDRI
246 )
247 ENDIF()
248
Mike Stroyan03c37e62016-09-20 09:08:18 -0600249 IF(NOT ImageMagick_Magick++_INCLUDE_DIR OR NOT ImageMagick_Magick++_LIBRARY)
Mark Young5a0c0c22016-09-16 10:21:31 -0600250 # Look for Magick++.h, in the magick sub-folder
251 FIND_IMAGEMAGICK_API(Magick++ magick magick/Magick++.h
252 Magick++ CORE_RL_Magick++_ Magick++-6.Q16 Magick++-Q16 Magick++-6.Q8 Magick++-Q8 Magick++-6.Q16HDRI Magick++-Q16HDRI Magick++-6.Q8HDRI Magick++-Q8HDRI
253 )
254 ENDIF()
255
256 ELSEIF(component STREQUAL "MagickWand")
Mike Stroyan4cd3dfd2016-09-20 09:05:28 -0600257 # unset cached variable that assumes header parameter never changes
258 UNSET(ImageMagick_MagickWand_INCLUDE_DIR CACHE)
Mark Young5a0c0c22016-09-16 10:21:31 -0600259
260 # Try top folder first
261 FIND_IMAGEMAGICK_API(MagickWand <NONE> MagickWand.h
262 Wand MagickWand CORE_RL_wand_ CORE_RL_MagickWand_ MagickWand-6.Q16 MagickWand-Q16 MagickWand-6.Q8 MagickWand-Q8 MagickWand-6.Q16HDRI MagickWand-Q16HDRI MagickWand-6.Q8HDRI MagickWand-Q8HDRI
263 )
264
265 IF(NOT ImageMagick_MagickWand_INCLUDE_DIR OR NOT ImageMagick_MagickWand_LIBRARY)
266 # Look for MagickWand.h in the wand sub-folder
267 FIND_IMAGEMAGICK_API(MagickWand wand wand/MagickWand.h
268 Wand MagickWand CORE_RL_wand_ CORE_RL_MagickWand_ MagickWand-6.Q16 MagickWand-Q16 MagickWand-6.Q8 MagickWand-Q8 MagickWand-6.Q16HDRI MagickWand-Q16HDRI MagickWand-6.Q8HDRI MagickWand-Q8HDRI
269 )
270 ENDIF()
271
272 IF(NOT ImageMagick_MagickWand_INCLUDE_DIR OR NOT ImageMagick_MagickWand_LIBRARY)
273 # Look for MagickWand.h he MagickWand sub-folder
274 FIND_IMAGEMAGICK_API(MagickWand MagickWand MagickWand/MagickWand.h
275 Wand MagickWand CORE_RL_wand_ CORE_RL_MagickWand_ MagickWand-6.Q16 MagickWand-Q16 MagickWand-6.Q8 MagickWand-Q8 MagickWand-6.Q16HDRI MagickWand-Q16HDRI MagickWand-6.Q8HDRI MagickWand-Q8HDRI
276 )
277 ENDIF()
278
279 IF(NOT ImageMagick_MagickWand_INCLUDE_DIR OR NOT ImageMagick_MagickWand_LIBRARY)
280 # Look for MagickWand.h he magick sub-folder
281 FIND_IMAGEMAGICK_API(MagickWand magick magick/MagickWand.h
282 Wand MagickWand CORE_RL_wand_ CORE_RL_MagickWand_ MagickWand-6.Q16 MagickWand-Q16 MagickWand-6.Q8 MagickWand-Q8 MagickWand-6.Q16HDRI MagickWand-Q16HDRI MagickWand-6.Q8HDRI MagickWand-Q8HDRI
283 )
284 ENDIF()
285
286 ELSEIF(component STREQUAL "MagickCore")
287
288 # Try top folder first
289 FIND_IMAGEMAGICK_API(MagickCore <NONE> MagickCore.h
290 Magick MagickCore CORE_RL_magick_ CORE_RL_MagickCore_ MagickCore-6.Q16 MagickCore-Q16 MagickCore-6.Q8 MagickCore-Q8 MagickCore-6.Q16HDRI MagickCore-Q16HDRI MagickCore-6.Q8HDRI MagickCore-Q8HDRI
291 )
292
293 IF(NOT ImageMagick_MagickCore_INCLUDE_DIR OR NOT ImageMagick_MagickCore_LIBRARY)
294 # Look for MagickCore.h, in the MagickCore sub-folder
295 FIND_IMAGEMAGICK_API(MagickCore MagickCore MagickCore/MagickCore.h
296 Magick MagickCore CORE_RL_magick_ CORE_RL_MagickCore_ MagickCore-6.Q16 MagickCore-Q16 MagickCore-6.Q8 MagickCore-Q8 MagickCore-6.Q16HDRI MagickCore-Q16HDRI MagickCore-6.Q8HDRI MagickCore-Q8HDRI
297 )
298 ENDIF()
299
300 IF(NOT ImageMagick_MagickCore_INCLUDE_DIR OR NOT ImageMagick_MagickCore_LIBRARY)
301 # Look for MagickCore.h, in the magick sub-folder
302 FIND_IMAGEMAGICK_API(MagickCore magick magick/MagickCore.h
303 Magick MagickCore CORE_RL_magick_ CORE_RL_MagickCore_ MagickCore-6.Q16 MagickCore-Q16 MagickCore-6.Q8 MagickCore-Q8 MagickCore-6.Q16HDRI MagickCore-Q16HDRI MagickCore-6.Q8HDRI MagickCore-Q8HDRI
304 )
305 ENDIF()
306
307 ENDIF()
308
309 IF(NOT ImageMagick_${component}_FOUND)
310
311 LIST(FIND ImageMagick_FIND_COMPONENTS ${component} is_requested)
312 IF(is_requested GREATER -1)
313 SET(ImageMagick_FOUND FALSE)
314 ENDIF(is_requested GREATER -1)
315
316 ENDIF(NOT ImageMagick_${component}_FOUND)
317ENDFOREACH(component)
Mark Young93ecb1d2016-01-13 13:47:16 -0700318
319#---------------------------------------------------------------------
320# Standard Package Output
321#---------------------------------------------------------------------
Mark Youngb5ed9852016-01-25 16:02:08 -0700322INCLUDE(FindPackageHandleStandardArgs)
323FIND_PACKAGE_HANDLE_STANDARD_ARGS(
324 ImageMagick DEFAULT_MSG ImageMagick_FOUND
Mark Young93ecb1d2016-01-13 13:47:16 -0700325 )
326# Maintain consistency with all other variables.
Mark Youngb5ed9852016-01-25 16:02:08 -0700327SET(ImageMagick_FOUND ${IMAGEMAGICK_FOUND})
Mark Young93ecb1d2016-01-13 13:47:16 -0700328
329#---------------------------------------------------------------------
330# DEPRECATED: Setting variables for backward compatibility.
331#---------------------------------------------------------------------
Mark Youngb5ed9852016-01-25 16:02:08 -0700332SET(IMAGEMAGICK_BINARY_PATH ${ImageMagick_EXECUTABLE_DIR}
Mark Young93ecb1d2016-01-13 13:47:16 -0700333 CACHE PATH "Path to the ImageMagick binary directory.")
Mark Youngb5ed9852016-01-25 16:02:08 -0700334SET(IMAGEMAGICK_CONVERT_EXECUTABLE ${ImageMagick_convert_EXECUTABLE}
Mark Young93ecb1d2016-01-13 13:47:16 -0700335 CACHE FILEPATH "Path to ImageMagick's convert executable.")
Mark Youngb5ed9852016-01-25 16:02:08 -0700336SET(IMAGEMAGICK_MOGRIFY_EXECUTABLE ${ImageMagick_mogrify_EXECUTABLE}
Mark Young93ecb1d2016-01-13 13:47:16 -0700337 CACHE FILEPATH "Path to ImageMagick's mogrify executable.")
Mark Youngb5ed9852016-01-25 16:02:08 -0700338SET(IMAGEMAGICK_IMPORT_EXECUTABLE ${ImageMagick_import_EXECUTABLE}
Mark Young93ecb1d2016-01-13 13:47:16 -0700339 CACHE FILEPATH "Path to ImageMagick's import executable.")
Mark Youngb5ed9852016-01-25 16:02:08 -0700340SET(IMAGEMAGICK_MONTAGE_EXECUTABLE ${ImageMagick_montage_EXECUTABLE}
Mark Young93ecb1d2016-01-13 13:47:16 -0700341 CACHE FILEPATH "Path to ImageMagick's montage executable.")
Mark Youngb5ed9852016-01-25 16:02:08 -0700342SET(IMAGEMAGICK_COMPOSITE_EXECUTABLE ${ImageMagick_composite_EXECUTABLE}
Mark Young93ecb1d2016-01-13 13:47:16 -0700343 CACHE FILEPATH "Path to ImageMagick's composite executable.")
Mark Young5a0c0c22016-09-16 10:21:31 -0600344
Mark Youngb5ed9852016-01-25 16:02:08 -0700345MARK_AS_ADVANCED(
Mark Young93ecb1d2016-01-13 13:47:16 -0700346 IMAGEMAGICK_BINARY_PATH
347 IMAGEMAGICK_CONVERT_EXECUTABLE
348 IMAGEMAGICK_MOGRIFY_EXECUTABLE
349 IMAGEMAGICK_IMPORT_EXECUTABLE
350 IMAGEMAGICK_MONTAGE_EXECUTABLE
351 IMAGEMAGICK_COMPOSITE_EXECUTABLE
352 )