ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/meta/SConscript
Revision: 1.7
Committed: Thu Mar 10 21:43:23 2016 UTC (8 years, 2 months ago) by schorsch
Branch: MAIN
CVS Tags: rad5R1
Changes since 1.6: +14 -35 lines
Log Message:
reduce the number of libraries created

File Contents

# User Rev Content
1 schorsch 1.1 import os
2    
3     Import ('env')
4    
5     # compose paths
6 schorsch 1.2 def radbin(name): return os.path.join(env['RAD_BUILDBIN'], name)
7     def radlib(name): return os.path.join(env['RAD_BUILDLIB'], name)
8 schorsch 1.1
9 schorsch 1.2 # extra flag
10     MDIRFLAGS = env.get('CPPFLAGS', []) + [
11     '-DMDIR=\\"%s\\"' % os.path.join(env['RAD_RLIBDIR'], 'meta')]
12     bgraph = env.Object(source='bgraph.c', CPPFLAGS=MDIRFLAGS)
13     igraph = env.Object(source='igraph.c', CPPFLAGS=MDIRFLAGS)
14     dgraph = env.Object(source='dgraph.c', CPPFLAGS=MDIRFLAGS)
15     gcomp = env.Object(source='gcomp.c', CPPFLAGS=MDIRFLAGS)
16     syscalls = env.Object(source='syscalls.c', CPPFLAGS=MDIRFLAGS)
17     # used by several targets
18     mfio = env.Object(source='mfio.c')
19     misc = env.Object(source='misc.c')
20     primout = env.Object(source='primout.c')
21     plot = env.Object(source='plot.c')
22 schorsch 1.5 rplot = env.Object(source='rplot.c')
23 schorsch 1.2 palloc = env.Object(source='palloc.c')
24     plotin = env.Object(source='plotin.c')
25     mgvars = env.Object(source='mgvars.c')
26     mgraph = env.Object(source='mgraph.c')
27     cgraph = env.Object(source='cgraph.c')
28     gcalc = env.Object(source='gcalc.c')
29     # multiple output from same source
30 schorsch 1.1
31 schorsch 1.2 common = [mfio, misc, syscalls]
32 schorsch 1.1
33 schorsch 1.2 libmeta = env.StaticLibrary(radlib('meta'),
34     Split ('metacalls.c progname.c') +[primout] + common)
35 schorsch 1.1
36     # standard targets
37     PROGS = (
38 schorsch 1.7 ('meta2bmp', Split('meta2bmp.c') +[rplot, palloc, plot] + common, ['rtrad']),
39     ('meta2tga', Split('meta2tga.c') +[rplot, palloc, plot] + common, ['rtrad']),
40     ('pexpand', Split('pexpand.c expand.c segment.c') +[palloc]+ common,['rtrad']),
41     ('psort', Split('psort.c sort.c') +[palloc]+ common, ['rtrad']),
42     ('cv', Split('cv.c cvhfio.c') + common, ['rtrad']),
43     ('psmeta', Split('psmeta.c psplot.c') + common, ['rtrad']),
44     ('plotin', [plotin, primout] + common, ['rtrad']),
45     ('bgraph', [bgraph, mgraph, mgvars], ['rtrad', 'meta']),
46     ('igraph', [igraph, gcalc, cgraph, mgraph, mgvars], ['rtrad', 'meta']),
47     ('dgraph', [dgraph, cgraph, mgvars], ['rtrad']),
48     ('gcomp', [gcomp, gcalc, mgvars], ['rtrad']),
49     ('plot4', Split('plot4.c') +[primout]+ common, ['rtrad']),
50 schorsch 1.1 )
51     for p in PROGS:
52 schorsch 1.2 prog = env.Program(target=radbin(p[0]), source=p[1],
53 schorsch 1.7 LIBS=p[2]+env['RAD_MLIB'], )
54 schorsch 1.1 Default(prog)
55 schorsch 1.2 env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], prog)])
56 schorsch 1.1
57     # X11 targets
58 schorsch 1.2 if env.has_key('X11LIB'):
59     x11meta = env.Program(radbin('x11meta'), [plotin, primout]+ common,
60     CPPPATH=env.get('CPPPATH',[])+[env['X11INCLUDE']],
61     LIBPATH=env.get('LIBPATH',[])+[env['X11LIB']],
62 schorsch 1.7 LIBS=['rtrad', 'X11'] + env['RAD_MLIB'])
63 schorsch 1.1 Default(x11meta)
64 schorsch 1.2 env.Append(RAD_BININSTALL=[env.Install(env['RAD_BINDIR'], x11meta)])
65 schorsch 1.1
66    
67 schorsch 1.6 # vim: set syntax=python: