From 6f5581c105d59ed00cc065b9ab9b3c8c0a441db3 Mon Sep 17 00:00:00 2001 From: bastien ROUCARIES Date: Tue, 22 Jul 2014 22:24:15 +0200 Subject: [PATCH 1/2] FindImageMagick: Find arch include dir (#15007) --- Modules/FindImageMagick.cmake | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Modules/FindImageMagick.cmake b/Modules/FindImageMagick.cmake index f6c8b3a50..33f95cebc 100644 --- a/Modules/FindImageMagick.cmake +++ b/Modules/FindImageMagick.cmake @@ -115,7 +115,19 @@ function(FIND_IMAGEMAGICK_API component header) "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]/include" PATH_SUFFIXES ImageMagick ImageMagick-6 - DOC "Path to the ImageMagick include dir." + DOC "Path to the ImageMagick arch-independent include dir." + ) + find_path(ImageMagick_${component}_ARCH_INCLUDE_DIR + NAMES magick/magick-baseconfig.h + HINTS + ${PC_${component}_INCLUDEDIR} + ${PC_${component}_INCLUDE_DIRS} + PATHS + ${ImageMagick_INCLUDE_DIRS} + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]/include" + PATH_SUFFIXES + ImageMagick ImageMagick-6 + DOC "Path to the ImageMagick arch-specific include dir." ) find_library(ImageMagick_${component}_LIBRARY NAMES ${ARGN} @@ -127,12 +139,17 @@ function(FIND_IMAGEMAGICK_API component header) DOC "Path to the ImageMagick Magick++ library." ) + # old version have only indep dir if(ImageMagick_${component}_INCLUDE_DIR AND ImageMagick_${component}_LIBRARY) set(ImageMagick_${component}_FOUND TRUE PARENT_SCOPE) list(APPEND ImageMagick_INCLUDE_DIRS ${ImageMagick_${component}_INCLUDE_DIR} ) + if(ImageMagick_${component}_ARCH_INCLUDE_DIR) + list(APPEND ImageMagick_INCLUDE_DIRS + ${ImageMagick_${component}_ARCH_INCLUDE_DIR}) + endif() list(REMOVE_DUPLICATES ImageMagick_INCLUDE_DIRS) set(ImageMagick_INCLUDE_DIRS ${ImageMagick_INCLUDE_DIRS} PARENT_SCOPE) From 1342e0222fed06f748f266a3a4e82c907cb76726 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 23 Jul 2014 15:33:48 -0400 Subject: [PATCH 2/2] FindImageMagick: Provide per-component include dirs (#15007) Set the ImageMagick__INCLUDE_DIRS variable that is mentioned in the documentation but was not set before. --- Modules/FindImageMagick.cmake | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Modules/FindImageMagick.cmake b/Modules/FindImageMagick.cmake index 33f95cebc..65458b7cf 100644 --- a/Modules/FindImageMagick.cmake +++ b/Modules/FindImageMagick.cmake @@ -143,13 +143,20 @@ function(FIND_IMAGEMAGICK_API component header) if(ImageMagick_${component}_INCLUDE_DIR AND ImageMagick_${component}_LIBRARY) set(ImageMagick_${component}_FOUND TRUE PARENT_SCOPE) - list(APPEND ImageMagick_INCLUDE_DIRS + # Construct per-component include directories. + set(ImageMagick_${component}_INCLUDE_DIRS ${ImageMagick_${component}_INCLUDE_DIR} ) if(ImageMagick_${component}_ARCH_INCLUDE_DIR) - list(APPEND ImageMagick_INCLUDE_DIRS + list(APPEND ImageMagick_${component}_INCLUDE_DIRS ${ImageMagick_${component}_ARCH_INCLUDE_DIR}) endif() + list(REMOVE_DUPLICATES ImageMagick_${component}_INCLUDE_DIRS) + set(ImageMagick_${component}_INCLUDE_DIRS + ${ImageMagick_${component}_INCLUDE_DIRS} PARENT_SCOPE) + + # Add the per-component include directories to the full include dirs. + list(APPEND ImageMagick_INCLUDE_DIRS ${ImageMagick_${component}_INCLUDE_DIRS}) list(REMOVE_DUPLICATES ImageMagick_INCLUDE_DIRS) set(ImageMagick_INCLUDE_DIRS ${ImageMagick_INCLUDE_DIRS} PARENT_SCOPE)