Better Magick++ library checking.
authorCarl Hetherington <cth@carlh.net>
Sat, 23 May 2015 16:20:51 +0000 (17:20 +0100)
committerCarl Hetherington <cth@carlh.net>
Sat, 23 May 2015 16:20:51 +0000 (17:20 +0100)
wscript

diff --git a/wscript b/wscript
index 9f9a61c623d655dc0864d4a5b8b9bb023f103566..8bedae224b6874a8b3368916e6b415199c53b286 100644 (file)
--- a/wscript
+++ b/wscript
@@ -1,6 +1,7 @@
 import subprocess
 import os
 import sys
+import distutils.spawn
 
 APPNAME = 'libdcp'
 VERSION = '1.00.0devel'
@@ -40,7 +41,16 @@ def configure(conf):
     conf.check_cfg(package='xmlsec1', args='--cflags --libs', uselib_store='XMLSEC1', mandatory=True)
     # Remove erroneous escaping of quotes from xmlsec1 defines
     conf.env.DEFINES_XMLSEC1 = [f.replace('\\', '') for f in conf.env.DEFINES_XMLSEC1]
-    conf.check_cfg(package='', path='Magick++-config', args='--cppflags --cxxflags --libs', uselib_store='MAGICK', mandatory=False)
+
+    # ImageMagick / GraphicsMagick
+    if distutils.spawn.find_executable('Magick++-config'):
+        conf.check_cfg(package='', path='Magick++-config', args='--cppflags --cxxflags --libs', uselib_store='MAGICK', mandatory=True)
+    else:
+        image = conf.check_cfg(package='ImageMagick++', args='--cflags --libs', uselib_store='MAGICK', mandatory=False)
+        graphics = conf.check_cfg(package='GraphicsMagick++', args='--cflags --libs', uselib_store='MAGICK', mandatory=False)
+        if image is None and graphics is None:
+            Logs.pprint('RED', 'Neither ImageMagick++ nor GraphicsMagick++ found: one or the other is required')
+
     conf.check_cfg(package='sndfile', args='--cflags --libs', uselib_store='SNDFILE', mandatory=False)
 
     if conf.options.static: