--- ray/build_utils/find_libs.py 2004/07/04 12:08:47 1.2 +++ ray/build_utils/find_libs.py 2009/10/22 21:16:05 1.5 @@ -2,14 +2,23 @@ import os from SCons.SConf import SConf # aka Configure +def find_radlib(env): + v = env.FindFile('Verdana.fnt', './lib') + if not v: + print ''' + Radiance auxiliary support files not found. + -> Download from radiance-online.org and extract. + ''' + env.Exit() + def find_x11(env): # Search for libX11, remember the X11 library and include dirs for d in ('/usr/X11R6', '/usr/X11', '/usr/openwin'): if os.path.isdir (d): incdir = os.path.join(d, 'include') libdir = os.path.join(d, 'lib') - env.Append(CPPPATH=[incdir]) # add temporarily - env.Append(LIBPATH=[libdir]) + env.Prepend(CPPPATH=[incdir]) # add temporarily + env.Prepend(LIBPATH=[libdir]) conf = SConf(env) if conf.CheckLibWithHeader('X11', 'X11/X.h', 'C', autoadd=0): env.Replace(X11INCLUDE=incdir) @@ -25,23 +34,48 @@ def find_x11(env): break env = conf.Finish () + def find_gl(env): # Check for libGL, set flag - conf = SConf(env) - if conf.CheckLibWithHeader('GL', 'GL/gl.h', 'C', autoadd=0): - env['OGL'] = 1 - elif env.has_key('X11INCLUDE'): # sometimes found there - incdir = env['X11INCLUDE'] - libdir = env['X11LIB'] - env.Append(CPPPATH=[incdir]) # add temporarily - #env.Append(LIBPATH=[libdir]) + dl = [(None,None)] # standard search path + if env.has_key('X11INCLUDE'): # sometimes found there (Darwin) + dl.append((env['X11INCLUDE'], env['X11LIB'])) + for incdir, libdir in dl: + if incdir: env.Prepend(CPPPATH=[incdir]) # add temporarily + if libdir: env.Prepend(LIBPATH=[libdir]) + conf = SConf(env) if conf.CheckLibWithHeader('GL', 'GL/gl.h', 'C', autoadd=0): env['OGL'] = 1 - env.Replace(OGLINCLUDE=incdir) - env.Replace(OGLLIB=libdir) if incdir: env['CPPPATH'].remove(incdir) # not needed for now - #if libdir: env['LIBPATH'].remove(libdir) - conf.Finish() + if libdir: env['LIBPATH'].remove(libdir) + if env.has_key('OGL'): + if incdir: env.Replace(OGLINCLUDE=[incdir]) + #if libdir: env.Replace(OGLLIB=[libdir]) + conf.Finish() + break + conf.Finish() +def find_libtiff(env): + # Check for libtiff, set flag and include/lib directories + dl = [ (None,None), ] # standard search path + cfgi = env.get('TIFFINCLUDE') + cfgl = env.get('TIFFLIB') + if cfgi or cfgl: + dl.insert(0,(cfgi, cfgl)) + for incdir, libdir in dl: + if incdir: env.Prepend(CPPPATH=[incdir]) # add temporarily + if libdir: env.Prepend(LIBPATH=[libdir]) + conf = SConf(env) + if conf.CheckLib('tiff', 'TIFFInitSGILog', + header='void TIFFInitSGILog(void);', autoadd=0): + env['TIFFLIB_INSTALLED'] = 1 + if incdir: env['CPPPATH'].remove(incdir) # not needed for now + if libdir: env['LIBPATH'].remove(libdir) + if env.has_key('TIFFLIB_INSTALLED'): + if incdir: env.Replace(RAD_TIFFINCLUDE=[incdir]) + if libdir: env.Replace(RAD_TIFFLIB=[libdir]) + conf.Finish() + break + conf.Finish()