File: FindImageMagickLib.cmake

package info (click to toggle)
libtuxcap 1.4.0.dfsg2-1.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 4,172 kB
  • ctags: 5,897
  • sloc: cpp: 43,203; ansic: 3,095; python: 774; objc: 242; makefile: 100; xml: 87
file content (140 lines) | stat: -rw-r--r-- 4,541 bytes parent folder | download | duplicates (3)
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
# 
# Try to find IMAGEMAGICK(++) library 
# (see www.imagemagick.org)
# 
# Once run this will define: 
# 
# IMAGEMAGICKLIB_FOUND
# IMAGEMAGICKLIB_LIBRARIES  : contains all available Magick++ C and C++ libraries required for linking
# IMAGEMAGICKLIB_LINK_DIRECTORIES 
# IMAGEMAGICKLIB_INCLUDE_DIR
# 
# IMAGEMAGICKLIB_CXX_LIBRARY : ImageMagick++ lib for C++ binding
# IMAGEMAGICKLIB_C_LIBRARY   : ImageMagick   lib for C binding
# IMAGEMAGICKLIB_X11_LIBRARY : image.display needs X11
# 
# 
# Jan Woetzel 10/2004 
# www.mip.informatik.uni-kiel.de/~jw
#
# tested with (from www.imagemagick.org): 
# - ImageMagick-6.1.1-Q16 on WinXP, MSVS 7.1  (JW 10/2004)
# - ImageMagick 5.5.4     on Linux Suse 8.2, gcc 3.3 (JW 10/2004)
# - ImageMagcik 6.2.5     on Linux Suse 10.1, gcc 4.1.0 (JW 06/2006)
# - ImageMagick-6.2.5-Q16 on WinXP, MSVS 7.1, 8.0 (JW 06/2006)
# --------------------------------


# find the libraries main include header file
FIND_PATH(IMAGEMAGICKLIB_INCLUDE_DIR Magick++.h
  "${IMAGEMAGICKLIB_DIR}/include"
  "$ENV{IMAGEMAGICKLIB_DIR}/include"
  "$ENV{MAGICK_DIR}/include"
  "${IMAGEMAGICKLIB_HOME}/include"
  "$ENV{IMAGEMAGICKLIB_HOME}/include"
  "$ENV{MAGICK_HOME}/include"
  "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]/include"
  /usr/local/include
  /usr/include
  /usr/include/ImageMagick
  /opt/net/gcc41/ImageMagick/include
  /opt/net/gcc33/ImageMagick/include
  )
#MESSAGE("DBG IMAGEMAGICKLIB_INCLUDE_DIR=${IMAGEMAGICKLIB_INCLUDE_DIR}")


# set directories to search for libraries: 
SET(IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS
  "${IMAGEMAGICKLIB_DIR}/lib"
  "$ENV{IMAGEMAGICKLIB_DIR}/lib"
  "$ENV{MAGICK_DIR}/lib"
  "${IMAGEMAGICKLIB_HOME}/lib"
  "$ENV{IMAGEMAGICKLIB_HOME}/lib"
  "$ENV{MAGICK_HOME}/lib"
  "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;LibPath]/lib"
  "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;LibPath]"
  "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]/lib"  
  /usr/local/lib
  /usr/lib
  /opt/net/gcc41/ImageMagick/lib  
  /opt/net/gcc33/ImageMagick/lib  
  )
#MESSAGE("DBG IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS=${IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS}")


# find provided .lib import library files 
FIND_LIBRARY(IMAGEMAGICKLIB_CXX_LIBRARY
  NAMES Magick++ CORE_RL_Magick++_ CORE_DB_Magick++_
  PATHS ${IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS} )
#MESSAGE("DBG IMAGEMAGICKLIB_CXX_LIBRARY=${IMAGEMAGICKLIB_CXX_LIBRARY}")


FIND_LIBRARY(IMAGEMAGICKLIB_C_LIBRARY
  NAMES Magick CORE_RL_magick_ CORE_DB_magick_ MagickCore
  PATHS ${IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS} )
#MESSAGE("DBG IMAGEMAGICKLIB_C_LIBRARY=${IMAGEMAGICKLIB_C_LIBRARY}")

IF(NOT APPLE)
FIND_LIBRARY(IMAGEMAGICKLIB_X11_LIBRARY
  NAMES X11
  PATHS 
  ${IMAGEMAGICKLIB_POSSIBLE_LIBRARY_PATHS}
  /usr/X11R6/lib
  /usr/local/lib
  /usr/openwin/lib
  /usr/lib
  )
#MESSAGE("DBG IMAGEMAGICKLIB_X11_LIBRARY=${IMAGEMAGICKLIB_X11_LIBRARY}")
ENDIF(NOT APPLE)



# --------------------------------
# decide if we found all we require: 

IF(NOT IMAGEMAGICKLIB_CXX_LIBRARY)
  MESSAGE(SEND_ERROR "FindImageMagickLib.cmake could not find IMAGEMAGICKLIB_CXX_LIBRARY")
ENDIF(NOT IMAGEMAGICKLIB_CXX_LIBRARY)
IF(NOT IMAGEMAGICKLIB_C_LIBRARY)
  MESSAGE(SEND_ERROR "FindImageMagickLib.cmake could not find IMAGEMAGICKLIB_C_LIBRARY")
ENDIF(NOT IMAGEMAGICKLIB_C_LIBRARY)

IF(NOT APPLE)
IF(NOT IMAGEMAGICKLIB_X11_LIBRARY)
  MESSAGE(SEND_ERROR "FindImageMagickLib.cmake could not find IMAGEMAGICKLIB_X11_LIBRARY")
ENDIF(NOT IMAGEMAGICKLIB_X11_LIBRARY)
ENDIF(NOT APPLE)

# get the path(=directory) of the main library:
GET_FILENAME_COMPONENT(IMAGEMAGICKLIB_LINK_DIRECTORIES ${IMAGEMAGICKLIB_CXX_LIBRARY} PATH)

IF (IMAGEMAGICKLIB_INCLUDE_DIR AND IMAGEMAGICKLIB_CXX_LIBRARY)
  # OK:
  SET(IMAGEMAGICKLIB_FOUND TRUE)
  SET(IMAGEMAGICKLIB_LIBRARIES
    ${IMAGEMAGICKLIB_CXX_LIBRARY}
    ${IMAGEMAGICKLIB_C_LIBRARY}
    ${IMAGEMAGICKLIB_X11_LIBRARY}
    )
  # add X11 if found (for display)
  IF (IMAGEMAGICKLIB_X11_LIBRARY)
    SET(IMAGEMAGICKLIB_LIBRARIES
      ${IMAGEMAGICKLIB_LIBRARIES}
      ${IMAGEMAGICKLIB_X11_LIBRARY} 
      )
  ENDIF (IMAGEMAGICKLIB_X11_LIBRARY)
ELSE (IMAGEMAGICKLIB_INCLUDE_DIR AND IMAGEMAGICKLIB_CXX_LIBRARY)
  MESSAGE(SEND_ERROR "FindImageMagick could not find ImageMagick++ library  or header(s)")
ENDIF (IMAGEMAGICKLIB_INCLUDE_DIR AND IMAGEMAGICKLIB_CXX_LIBRARY)


MARK_AS_ADVANCED(
  IMAGEMAGICKLIB_INCLUDE_DIR
  IMAGEMAGICKLIB_LIBRARIES
  IMAGEMAGICKLIB_CXX_LIBRARY
  IMAGEMAGICKLIB_C_LIBRARY
  IMAGEMAGICKLIB_WAND_LIBRARY
  IMAGEMAGICKLIB_X11_LIBRARY  
  IMAGEMAGICKLIB_INCLUDE_DIR
  )