--- ray/src/gen/SConscript 2004/01/01 20:55:42 1.3 +++ ray/src/gen/SConscript 2016/03/10 21:43:22 1.18 @@ -1,39 +1,59 @@ -import os - -Import('env') # inherit from parent - -# math libs -mlib = env['RAD_MLIB'] - -# standard targets -PROGS = ( -# name sources libs -('genbeads', Split('genbeads.c hermite3.c'), []), -('genbox', ['genbox.c',], []), -('genmarble', ['genmarble.c',], []), -('gensky', Split('gensky.c sun.c',), []), -('genblinds', ['genblinds.c',], []), -('genprism', ['genprism.c',], []), -('genrev', ['genrev.c',], ['rterror','rtfunc','rtcont','rtmem']), -('gencatenary', ['gencat.c',], []), -('genworm', ['genworm.c',], ['rtfunc','rtmem','rtcont','rtmath']), -('gensurf', ['gensurf.c',], ['rtfunc','rtmem','rtcont','rtmath','rtio']), -('genclock', ['genclock.c',], []), -('genbranch', ['genbranch.c',], []), -('replmarks', ['replmarks.c',], - ['rtproc','rtpath','rtmath','rtio','rterror']), -('mkillum', Split('mkillum.c mkillum2.c mkillum3.c'), - ['rtscene','rtproc','rtpath','rtmath','rtio','rtcont','rterror']), -('xform', ['xform.c',], - ['rtproc','rtscene','rtmath','rtargs','rtio','rtcont','rtpath','rterror']), -) -for p in PROGS: - prog = env.Program(target=os.path.join(env['RAD_BUILDBIN'], p[0]), - source=p[1], LIBS=p[2] + mlib) - Default(prog) - env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], prog)]) - -#surf.cal clockface.hex -LIBFILES = Split('illum.cal rev.cal skybright.cal glaze1.cal glaze2.cal') -env.Append(RAD_RLIBINSTALL=env.Install(env['RAD_RLIBDIR'], LIBFILES)) - +import os + +Import('env') # inherit from parent + +# math libs +mlib = env['RAD_MLIB'] + +#Make sure sun.c is compiled only once +sun = env.Object(source="sun.c") + +# standard targets +PROGS = ( +# name sources libs +('gendaylit', Split('gendaylit.c',)+[sun], ['rtrad']), +('gendaymtx', Split('gendaymtx.c',)+[sun], ['rtrad',mlib]), +('genbeads', Split('genbeads.c hermite3.c'), []), +('genbox', ['genbox.c',], []), +('genmarble', ['genmarble.c',], []), +('gensky', Split('gensky.c',)+[sun], []), +('genblinds', ['genblinds.c',], []), +('genprism', ['genprism.c',], []), +('genrev', ['genrev.c',], ['rtrad',]), +('gencatenary', ['gencat.c',], []), +('genworm', ['genworm.c',], ['rtrad']), +('gensurf', ['gensurf.c',], ['rtrad']), +('genclock', ['genclock.c',], []), +('genbranch', ['genbranch.c',], []), +('replmarks', ['replmarks.c',], ['rtrad']), +('xform', ['xform.c',], ['rtrad']), +) +progs = [] +for p in PROGS: + prog = env.Program(target=os.path.join('$RAD_BUILDBIN', p[0]), + source=p[1], LIBS=p[2] + mlib) + progs.append(prog) + +prog = env.Program(target=os.path.join('$RAD_BUILDBIN', 'mkillum'), + source=Split('mkillum.c mkillum2.c mkillum3.c'), + CPPPATH=env.get('CPPPATH', []) + ['#src/rt'], + LIBS=['raycalls','rttrace','rtrad'] + mlib) +progs.append(prog) +prog = env.Program(target=os.path.join('$RAD_BUILDBIN', 'mksource'), + source=['mksource.c'], + CPPPATH=env.get('CPPPATH', []) + ['#src/rt'], + LIBS=['raycalls','rttrace','rtrad'] + mlib) +progs.append(prog) + +if os.name == 'posix': + Default(env.InstallScript(os.path.join('$RAD_BUILDBIN', 'glaze'), 'glaze.csh')) + +Default('#src/gen') +env.Install('$RAD_BINDIR', progs) + +#surf.cal clockface.hex +LIBFILES = Split('''illum.cal rev.cal skybright.cal glaze1.cal glaze2.cal + perezlum.cal''') +env.Append(RAD_RLIBINSTALL=env.Install('$RAD_RLIBDIR', LIBFILES)) + +# vim: set syntax=python: