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.3 by schorsch, Fri Mar 26 23:34:23 2004 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 < mlib = 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 < setscan = env.Object(source='setscan.c')
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],
21 <        ['rtpic','rtargs','rtio','rtproc','rtmath','rtpath','rtmem','rterror']),
22 < #('contour',   Split('contour.c'),  ['rtmath']), # XXX what is this?
23 < ('glarendx',  Split('glarendx.c'), ['rtpic','rtio','rtargs','rtmath']),
24 < ('vwright',   Split('vwright.c'),  ['rtpic','rtio','rtargs','rtmath']),
25 < ('vwrays',    Split('vwrays.c'),   ['rtpic','rtio','rtargs','rtmath']),
26 < ('rad',       Split('rad.c'),
27 <        ['rtpic','rtproc','rtpath','rtio','rtmath','rtargs','rtcont','rtmem','rterror']),
28 < ('rpiece',    Split('rpiece.c Version.c'),
29 <        ['rtpic','rtargs','rtio','rtproc','rtmath','rtpath','rtmem']),
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   ]
26 if os.name == 'nt': # XXX should be set in a *.cfg file
27        netproc = 'win_netproc.c'
28        netlib = ['ws2_32']
29 else:
30        netproc = 'netproc.c'
31        netlib = []
36  
33 PROGS.append(('ranimate',  ['ranimate.c', netproc],
34        ['rtpic','rtargs','rtio','rtcont','rtmem','rtpath','rtmath','rtnet','rterror'] + netlib))
37   for p in PROGS:
38          prog = env.Program(target=radbin(p[0]), source=p[1], LIBS=p[2]+mlib)
39 <        Default(prog)
38 <        env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], prog)])
39 >        progs.append(prog)
40  
41 < if os.name != 'nt': # XXX pending Windows version of raypcalls.c
42 <        # targets with different includes/libs
43 <        rs = Split('ranimove.c ranimove1.c ranimove2.c')
44 <        ranimove = env.Program(target=radbin('ranimove'), source=rs,
45 <                        CPPPATH=env.get('CPPPATH', [])+ ['#src/rt'],
46 <                        LIBS=['raycalls','rttrace','rtscene','rtpic','rtfunc','rtio',
47 <                        'rtmath','rtcont','rtmem','rtargs','rtproc','rtpath','rterror'] + mlib)
48 <        Default(ranimove)
49 <        env.Append(RAD_BININSTALL=[env.Install(env['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 = env.Program(target=radbin('getinfo'), source='getinfo.c',
53 <                LIBS=['rtio'])
54 < Default(getinfo)
53 < env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], getinfo)])
53 >                LIBS=['rtrad'])
54 > progs.append(getinfo)
55  
55 # special targets not normally built
56 if os.name != 'nt': # XXX pending replacement of fork() and friends
57        scanner = env.Program(target=radbin('scanner'), source='scanner.c',
58                        LIBS=mlib)
59        scanner_i = env.Install(env['RAD_BINDIR'], scanner)
60        makedist = env.Program(target=radbin('makedist'),
61                        source=Split('makedist.c')+[setscan])
62        makedist_i = env.Install(env['RAD_BINDIR'], makedist)
63        env.Alias('util_special', [scanner, makedist])
64        env.Alias('util_special_install', [scanner_i, makedist_i])
56  
57   # X11 targets
58   if env.has_key('X11LIB'):
59 <        xlibp = env.get('LIBPATH',[]) + [env['X11LIB']]
60 <        xincl = env.get('CPPPATH',[]) + [env['X11INCLUDE']]
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 x11findwind.c'),
63 >                        source=Split('xglaresrc.c') + [env.x11findwind], # XXX remote magic
64                          LIBPATH=xlibp, CPPPATH=xincl,
65 <                        LIBS=['rtpic','rtmath','rtargs','rtio','X11']+ mlib)
66 <        Default(xglaresrc)
75 <        env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], xglaresrc)])
65 >                        LIBS=['rtrad', 'X11']+ mlib)
66 >        progs.append(xglaresrc)
67  
68          # OpenGL targets that also depend on X11
69          if env.has_key('OGL'):
70 <                glrad = env.Program(target=radbin('glrad'), source=Split('glrad.c'),
71 <                        CPPFLAGS=env.get('CPPFLAGS', []) + [env['RAD_STEREO']],
72 <                        LIBPATH=xlibp, CPPPATH=xincl,
73 <                        LIBS=['rgl','rtpic','rtscene','rtio','rtproc','rtpath','rtargs',
74 <                        'rtmath','rtcont','rtmem','rterror',
75 <                        'GL', 'GLU','X11'],)
85 <                Default(glrad)
86 <                env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], glrad)])
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