ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/SConscript
(Generate patch)

Comparing ray/src/util/SConscript (file contents):
Revision 1.1 by schorsch, Tue Oct 21 19:27:29 2003 UTC vs.
Revision 1.23 by schorsch, Mon Jan 8 13:38:37 2018 UTC

# Line 1 | Line 1
1 + from __future__ import division, print_function, unicode_literals
2 +
3   import os
4  
5   Import('env') # inherit from parent
6  
7 < # make a modified local copy
8 < util = env.Copy(LIBS=['rt'] + env['RAD_MLIB'])
7 > mlib = ['$RAD_MLIB']
8 > progs = []
9  
10   # compose paths
11 < def radbin(name): return os.path.join(env['RAD_BUILDBIN'], name)
12 < def radlib(name): return os.path.join(env['RAD_BUILDLIB'], name)
11 > def radbin(name): return os.path.join('$RAD_BUILDBIN', name)
12 > def radlib(name): return os.path.join('$RAD_BUILDLIB', name)
13 > def tclscr(name): return os.path.join('$RAD_BUILDRLIB', 'tcl', name)
14  
15 + cmatrix = env.Object(source='cmatrix.c')
16 + cmbsdf = env.Object(source='cmbsdf.c')
17 +
18   # standard targets
19   PROGS = [
20 < ('findglare', Split('findglare.c glareval.c glaresrc.c setscan.c')),
21 < ('glarendx',  Split('glarendx.c')),
22 < ('vwright',   Split('vwright.c')),
23 < ('vwrays',    Split('vwrays.c')),
24 < ('rad',       Split('rad.c')),
25 < ('rpiece',    Split('rpiece.c Version.c')),
20 > ('findglare', Split('findglare.c glareval.c glaresrc.c setscan.c'), ['rtrad']),
21 > ('glarendx',  Split('glarendx.c'), ['rtrad']),
22 > ('vwright',   Split('vwright.c'),  ['rtrad']),
23 > ('vwrays',    Split('vwrays.c'),   ['rtrad']),
24 > ('rad',       Split('rad.c'),      ['rtrad']),
25 > ('rpiece',    Split('rpiece.c') + [env.version], ['rtrad']),
26 > ('ranimate',  ['ranimate.c', '$RAD_NETCOMPAT'], ['rtrad', '$RAD_SOCKETLIB']),
27 > ('dctimestep', Split('dctimestep.c')+[cmatrix, cmbsdf], ['rtrad']),
28 > ('rttree_reduce', Split('rttree_reduce.c'), ['rtrad']),
29 > ('rcollate', Split('rcollate.c'), ['rtrad']),
30 > ('eplus_adduvf', Split('eplus_adduvf.c eplus_idf.c'), ['rtrad']),
31 > ('rfluxmtx', Split('rfluxmtx.c'), ['rtrad']),
32 > ('rmtxop', Split('rmtxop.c rmatrix.c')+[cmatrix, cmbsdf], ['rtrad']),
33 > ('wrapBSDF', Split('wrapBSDF.c'), ['rtrad']),
34 > ('evalglare', Split('evalglare.c pictool.c'), ['rtrad', 'reetz']),
35   ]
36 < if os.name != 'nt': # XXX pending Windows version of netproc.c
22 <        PROGS.append(('ranimate',  Split('ranimate.c netproc.c')))
36 >
37   for p in PROGS:
38 <    prog = util.Program(target=radbin(p[0]), source=p[1])
39 <    Default(prog)
26 <    env.Append(RAD_BININSTALL=[util.Install(util['RAD_BINDIR'], prog)])
38 >        prog = env.Program(target=radbin(p[0]), source=p[1], LIBS=p[2]+mlib)
39 >        progs.append(prog)
40  
41 < if os.name != 'nt': # XXX pending resolution of free_os() conflict
42 <        # targets with different includes/libs
43 <        rs = Split('ranimove.c ranimove1.c ranimove2.c')
44 <        for l in ['raycalls', 'radiance']: # XXX ugly
45 <                rs.append(radlib(util['LIBPREFIX'] + l + util['LIBSUFFIX']))
46 <        ranimove = util.Program(target=radbin('ranimove'), source=rs,
47 <                        CPPPATH=util.get('CPPPATH', []) + ['#src/rt'])
48 <        Default(ranimove)
49 <        env.Append(RAD_BININSTALL=[util.Install(util['RAD_BINDIR'], ranimove)])
41 > # targets with different includes/libs
42 > rs = Split('ranimove.c ranimove1.c ranimove2.c')
43 > ranimove = env.Program(target=radbin('ranimove'), source=rs,
44 >                CPPPATH=env.get('CPPPATH', [])+ ['#src/rt'],
45 >                LIBS=['raycalls','rttrace','rtrad'] + mlib)
46 > progs.append(ranimove)
47 > rsensor = env.Program(target=radbin('rsensor'), source='rsensor.c',
48 >                CPPPATH=env.get('CPPPATH', [])+ ['#src/rt'],
49 >                LIBS=['raycalls','rttrace','rtrad'] + mlib)
50 > progs.append(rsensor)
51  
52 < getinfo = util.Program(target=radbin('getinfo'), source='getinfo.c',
53 <                LIBS=['rt'])
54 < Default(getinfo)
41 < env.Append(RAD_BININSTALL=[util.Install(util['RAD_BINDIR'], getinfo)])
52 > getinfo = env.Program(target=radbin('getinfo'), source='getinfo.c',
53 >                LIBS=['rtrad'])
54 > progs.append(getinfo)
55  
43 # special targets not normally built
44 scanner = util.Program(target=radbin('scanner'), source='scanner.c', LIBS=['m'])
45 makedist = util.Program(target=radbin('makedist'),
46                source=Split('makedist.c setscan.c'))
47 scanner_i = util.Install(util['RAD_BINDIR'], scanner)
48 makedist_i = util.Install(util['RAD_BINDIR'], makedist)
49 util.Alias('util_special', [scanner, makedist])
50 util.Alias('util_special_install', [scanner_i, makedist_i])
56  
57   # X11 targets
58 < if util.has_key('X11LIB'):
59 <    util.Append(CPPPATH=util['X11INCLUDE'])
60 <    util.Append(LIBS='X11')
61 <    util.Append(LIBPATH=util['X11LIB'])
62 <    xglaresrc = util.Program(target=radbin('xglaresrc'),
63 <                        source=Split('xglaresrc.c x11findwind.c'),)
64 <    Default(xglaresrc)
65 <    env.Append(RAD_BININSTALL=[util.Install(util['RAD_BINDIR'], xglaresrc)])
58 > if env.has_key('X11LIB'):
59 >        addobj = env.get('ADDOBJNOTIFY')
60 >        xincl = env.get('CPPPATH', []) + ['$X11INCLUDE']
61 >        xlibp = env.get('LIBPATH', []) + ['$X11LIB']
62 >        xglaresrc = env.Program(target=radbin('xglaresrc'),
63 >                        source=Split('xglaresrc.c') + [env.x11findwind], # XXX remote magic
64 >                        LIBPATH=xlibp, CPPPATH=xincl,
65 >                        LIBS=['rtrad', 'X11']+ mlib)
66 >        progs.append(xglaresrc)
67  
68 <    # OpenGL targets that also depend on X11
69 <    if util.has_key('OGL'):
70 <        glrad = util.Program(target=radbin('glrad'), source=Split('glrad.c'),
71 <            CPPFLAGS=util.get('CPPFLAGS', []) + [util['RAD_STEREO']],
72 <            LIBS=['rgl', 'GL', 'GLU']+util['LIBS'],)
73 <        Default(glrad)
74 <        env.Append(RAD_BININSTALL=[util.Install(util['RAD_BINDIR'], glrad)])
68 >        # OpenGL targets that also depend on X11
69 >        if env.has_key('OGL'):
70 >                glrad = env.Program(target=radbin('glrad'),
71 >                                source=['glrad.c', addobj],
72 >                                CPPFLAGS=env.get('CPPFLAGS', []) + ['$RAD_STEREO'],
73 >                                LIBPATH=xlibp, CPPPATH=xincl,
74 >                                LIBS=['rgl','rtrad','GL', 'GLU','X11'] + mlib,)
75 >                progs.append(glrad)
76  
77 + pyscripts = Split('''rlux''')
78 + if os.name == 'posix':
79 +        for s in Split('''objline glare dayfact
80 +                        debugcal raddepend compamb vinfo fieldcomb'''):
81 +                Default(env.InstallScript(radbin(s), s + '.csh'))
82 +        for s in Split('''objview objpict
83 +                        genambpos genklemsamp genskyvec genBSDF bsdfview ltview ltpict'''):
84 +                Default(env.InstallScript(radbin(s), s + '.pl'))
85 +        for s in Split('''do_action.tcl do_file.tcl do_options.tcl do_results.tcl
86 +                do_scene.tcl do_views.tcl do_zone.tcl file.hlp getfile.tcl gethelp.tcl
87 +                help.hlp tclIndex trad.hlp trad.icon util.tcl'''):
88 +                Default(env.InstallScript(tclscr(s), s))
89 +        Default(env.InstallTCLScript(radbin('trad'), 'trad.wsh'))
90 +        for s in pyscripts:
91 +                Default(env.InstallScript(radbin(s), s + '.py'))
92 + else:
93 +        for s in pyscripts:
94 +                Default(env.InstallScript(radbin(s + '.py'), s + '.py'))
95 +        
96  
97 + Default('#src/util')
98 + env.Install('$RAD_BINDIR', progs)
99 +
100 + # vim: set syntax=python:
101 + # vi: set ts=4 sw=4 :

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines