From 28a0ceb67d7670ff5532dbf2b3a257c80176ccfe Mon Sep 17 00:00:00 2001 From: "smparkes@smparkes.net" Date: Thu, 12 Jan 2012 23:30:18 +0000 Subject: [PATCH] Tweaks to C++ build to only explicity link libiconv if it exists; closes issue 1117 from speed145a git-svn-id: https://zxing.googlecode.com/svn/trunk@2115 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- cpp/SConscript | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/cpp/SConscript b/cpp/SConscript index e1bd1e78f..51c191d14 100644 --- a/cpp/SConscript +++ b/cpp/SConscript @@ -1,6 +1,8 @@ # -*- python -*- Decider('MD5') +import fnmatch +import os vars = Variables() vars.Add(BoolVariable('DEBUG', 'Set to disable optimizations', 1)) @@ -35,7 +37,16 @@ def all_files(dir, ext='.cpp', level=6): magick_include = ['/usr/include/ImageMagick/', '/opt/local/include/ImageMagick/'] -magick_libs = ['Magick++', 'MagickWand', 'MagickCore', 'iconv'] +magick_libs = ['Magick++', 'MagickWand', 'MagickCore'] + +# check for existence of libiconv and add it to magick_libs if possible +matches = [] +for root, dirnames, filenames in os.walk('/usr/lib/'): + for filename in fnmatch.filter(filenames, 'libiconv.*'): + matches.append(os.path.join(root, filename)) + +if matches: + magick_libs.append('iconv') cppunit_include = ['/opt/local/include/'] cppunit_libs = ['cppunit']