diff --git a/SConstruct b/SConstruct index cb7dbcbb2..e2fd71612 100644 --- a/SConstruct +++ b/SConstruct @@ -20,30 +20,39 @@ # $Id$ -import os, sys +import os, sys, platform + + +if platform.uname()[4] == 'x86_64': + LIB_PLATFORM = 'lib64' +else : + LIB_PLATFORM = 'lib' + + opts = Options() opts.Add('PREFIX', 'The install path "prefix"', '/usr/local') opts.Add(PathOption('BOOST_INCLUDES', 'Search path for boost include files', '/usr/include')) -opts.Add(PathOption('BOOST_LIBS', 'Search path for boost library files', '/usr/lib')) +opts.Add(PathOption('BOOST_LIBS', 'Search path for boost library files', '/usr/' + LIB_PLATFORM)) opts.Add(PathOption('FREETYPE_CONFIG', 'The path to the freetype-config executable.', '/usr/bin/freetype-config')) opts.Add(PathOption('PNG_INCLUDES', 'Search path for libpng include files', '/usr/include')) -opts.Add(PathOption('PNG_LIBS', 'Search path for libpng include files', '/usr/lib')) +opts.Add(PathOption('PNG_LIBS', 'Search path for libpng include files', '/usr/' + LIB_PLATFORM)) opts.Add(PathOption('JPEG_INCLUDES', 'Search path for libjpeg include files', '/usr/include')) -opts.Add(PathOption('JPEG_LIBS', 'Search path for libjpeg library files', '/usr/lib')) +opts.Add(PathOption('JPEG_LIBS', 'Search path for libjpeg library files', '/usr/' + LIB_PLATFORM)) opts.Add(PathOption('TIFF_INCLUDES', 'Search path for libtiff include files', '/usr/include')) -opts.Add(PathOption('TIFF_LIBS', 'Search path for libtiff library files', '/usr/lib')) +opts.Add(PathOption('TIFF_LIBS', 'Search path for libtiff library files', '/usr/' + LIB_PLATFORM)) opts.Add(PathOption('PGSQL_INCLUDES', 'Search path for PostgreSQL include files', '/usr/include')) -opts.Add(PathOption('PGSQL_LIBS', 'Search path for PostgreSQL library files', '/usr/lib')) +opts.Add(PathOption('PGSQL_LIBS', 'Search path for PostgreSQL library files', '/usr/' + LIB_PLATFORM)) opts.Add(PathOption('PROJ_INCLUDES', 'Search path for PROJ.4 include files', '/usr/local/include')) -opts.Add(PathOption('PROJ_LIBS', 'Search path for PROJ.4 include files', '/usr/local/lib')) +opts.Add(PathOption('PROJ_LIBS', 'Search path for PROJ.4 include files', '/usr/local/' + LIB_PLATFORM)) opts.Add(PathOption('PYTHON','Python executable', sys.executable)) opts.Add(ListOption('INPUT_PLUGINS','Input drivers to include','all',['postgis','shape','raster'])) opts.Add(ListOption('BINDINGS','Language bindings to build','all',['python'])) opts.Add('DEBUG', 'Compile a debug version of mapnik', '') env = Environment(ENV=os.environ, options=opts) +env['LIB_PLATFORM'] = LIB_PLATFORM Help(opts.GenerateHelpText(env)) diff --git a/bindings/python/SConscript b/bindings/python/SConscript index dc4c6b67f..8a19673ae 100644 --- a/bindings/python/SConscript +++ b/bindings/python/SConscript @@ -23,7 +23,7 @@ import glob Import('env') -prefix = env['PYTHON_PREFIX'] + '/lib/python' + env['PYTHON_VERSION'] + '/site-packages/' +prefix = env['PYTHON_PREFIX'] + '/'+env['LIB_PLATFORM']+ '/python' + env['PYTHON_VERSION'] + '/site-packages/' libraries = ['mapnik', 'boost_python%s' % env['BOOST_APPEND']] headers = [env['PYTHON_PREFIX'] + '/include/python' + env['PYTHON_VERSION']] + env['CPPPATH'] @@ -36,7 +36,7 @@ inputpluginspath = mapniklibpath + '/input' fontscollectionpath = mapniklibpath + '/fonts' """ -file('mapnik/paths.py','w').write(paths % (env['PREFIX'] + '/lib/mapnik',)) +file('mapnik/paths.py','w').write(paths % (env['PREFIX'] + '/'+env['LIB_PLATFORM']+'/mapnik',)) pymapnik = glob.glob('mapnik/*.py') env.Alias(target='install', source=env.Install(prefix+'/mapnik', pymapnik)) diff --git a/fonts/SConscript b/fonts/SConscript index 63810a92b..d4e63f396 100644 --- a/fonts/SConscript +++ b/fonts/SConscript @@ -24,4 +24,4 @@ Import('env') prefix = env['PREFIX'] includes = glob.glob('*/*.ttf') -env.Alias(target='install', source=env.Install(prefix+'/lib/mapnik/fonts', includes)) +env.Alias(target='install', source=env.Install(prefix+'/' + env['LIB_PLATFORM'] + '/mapnik/fonts', includes)) diff --git a/plugins/input/postgis/SConscript b/plugins/input/postgis/SConscript index 18ef6e973..fdb926853 100644 --- a/plugins/input/postgis/SConscript +++ b/plugins/input/postgis/SConscript @@ -32,5 +32,5 @@ postgis_src = Split( postgis_inputdriver = env.SharedLibrary('postgis', source=postgis_src, SHLIBPREFIX='', LIBS='pq') -env.Install(prefix + '/lib/mapnik/input', postgis_inputdriver) -env.Alias("install", prefix + '/lib/mapnik/input') +env.Install(prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input', postgis_inputdriver) +env.Alias('install', prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input') diff --git a/plugins/input/raster/SConscript b/plugins/input/raster/SConscript index 5922f5875..b855764e8 100644 --- a/plugins/input/raster/SConscript +++ b/plugins/input/raster/SConscript @@ -33,5 +33,5 @@ raster_src = Split( raster_inputdriver = env.SharedLibrary('raster', source=raster_src, SHLIBPREFIX='', LIBS=[]) -env.Install(prefix + '/lib/mapnik/input', raster_inputdriver) -env.Alias('install', prefix + '/lib/mapnik/input') +env.Install(prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input', raster_inputdriver) +env.Alias('install', prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input') diff --git a/plugins/input/shape/SConscript b/plugins/input/shape/SConscript index ee5b49bbe..85999be02 100644 --- a/plugins/input/shape/SConscript +++ b/plugins/input/shape/SConscript @@ -38,5 +38,5 @@ shape_src = Split( shape_inputdriver = env.SharedLibrary('shape', source=shape_src, SHLIBPREFIX='', LIBS=[]) -env.Install(prefix+'/lib/mapnik/input', shape_inputdriver) -env.Alias('install', prefix + '/lib/mapnik/input') +env.Install(prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input', shape_inputdriver) +env.Alias('install', prefix + '/' + env['LIB_PLATFORM'] + '/mapnik/input') diff --git a/src/SConscript b/src/SConscript index 5d9476c8b..ac7ab1abd 100644 --- a/src/SConscript +++ b/src/SConscript @@ -57,6 +57,6 @@ source = Split( mapnik = env.SharedLibrary('mapnik', source, LIBS=libraries, LINKFLAGS=linkflags) -env.Alias(target='install', source=env.Install(prefix+'/lib', mapnik)) +env.Alias(target='install', source=env.Install(prefix + '/' + env['LIB_PLATFORM'], mapnik)) includes = glob.glob('../include' + '/*.hpp') env.Alias(target='install', source=env.Install(prefix+'/include/mapnik', includes))