| 1 |
schorsch |
1.1 |
import os
|
| 2 |
|
|
|
| 3 |
|
|
Import('env')
|
| 4 |
|
|
|
| 5 |
|
|
# compose paths
|
| 6 |
|
|
def radlib(name): return os.path.join(env['RAD_BUILDLIB'], name)
|
| 7 |
|
|
|
| 8 |
|
|
# custom flags
|
| 9 |
|
|
getlibpath = env.StaticObject(source='getlibpath.c',
|
| 10 |
|
|
CPPFLAGS='-DDEFPATH=\\":%s\\"' % env['RAD_RLIBDIR'])
|
| 11 |
|
|
tmapcolrs = env.StaticObject(source='tmapcolrs.c',
|
| 12 |
|
|
CPPFLAGS='-DPCOND=\\"pcond\\"')
|
| 13 |
|
|
|
| 14 |
|
|
# source and object dependencies
|
| 15 |
schorsch |
1.2 |
RTSCENE = Split('''cone.c face.c free_os.c instance.c readobj.c readoct.c
|
| 16 |
|
|
otypes.c objset.c octree.c readfargs.c modobject.c addobjnotify.c
|
| 17 |
|
|
font.c mesh.c readmesh.c tmesh.c sceneio.c xf.c''')
|
| 18 |
schorsch |
1.1 |
|
| 19 |
schorsch |
1.2 |
RTCOLOR = Split('''spec_rgb.c''')
|
| 20 |
|
|
RTTMAP = Split('''tonemap.c tmapluv.c tmaptiff.c tmap16bit.c''') + [tmapcolrs]
|
| 21 |
schorsch |
1.3 |
RTPIC = Split('color.c colrops.c resolu.c image.c bmpfile.c')+ RTCOLOR + RTTMAP
|
| 22 |
schorsch |
1.1 |
|
| 23 |
schorsch |
1.2 |
RTERROR = Split('''error.c eputs.c wputs.c quit.c''')
|
| 24 |
|
|
RTCONT = Split('''lookup.c savestr.c savqstr.c''')
|
| 25 |
|
|
RTMATH = Split('''fvect.c invmat4.c linregr.c mat4.c tcos.c urand.c urind.c
|
| 26 |
|
|
zeroes.c dircode.c clip.c multisamp.c plocate.c'''
|
| 27 |
|
|
) + env.get('RAD_MATHCOMPAT', [])
|
| 28 |
|
|
RTFUNC = Split('''biggerlib.c caldefn.c calexpr.c calfunc.c calprnt.c
|
| 29 |
|
|
chanvalue.c''')
|
| 30 |
|
|
RTIO = Split('''fdate.c fgetline.c fgetval.c fgetword.c fputword.c loadvars.c
|
| 31 |
|
|
portio.c wordfile.c words.c header.c''')
|
| 32 |
|
|
RTARGS = Split('''badarg.c expandarg.c''') + env.get('RAD_ARGSCOMPAT', [])
|
| 33 |
|
|
RTPATH = Split('''getpath.c gethomedir.c paths.c''') + [getlibpath]
|
| 34 |
|
|
RTLAMPS = Split('''fropen.c rexpr.c lamps.c''')
|
| 35 |
|
|
|
| 36 |
|
|
RTPROC = Split('''process.c''') + env.get('RAD_PROCESS', [])
|
| 37 |
|
|
|
| 38 |
|
|
RTMEM = Split('ealloc.c') + env.get('RAD_MEMCOMPAT', [])
|
| 39 |
|
|
RTNET = Split('myhostname.c')
|
| 40 |
|
|
|
| 41 |
|
|
STD = (RTERROR + RTPATH + RTARGS + RTIO + RTMATH + RTCONT + RTMEM +
|
| 42 |
|
|
RTFUNC + RTPROC + RTLAMPS)
|
| 43 |
|
|
|
| 44 |
|
|
ALL = RTSCENE + RTPIC + STD + RTNET + env.get('RAD_COMPAT',[])
|
| 45 |
schorsch |
1.1 |
|
| 46 |
|
|
# build libraries
|
| 47 |
schorsch |
1.2 |
rtscene = env.StaticLibrary(target=radlib('rtscene'), source=RTSCENE)
|
| 48 |
|
|
|
| 49 |
|
|
rterror = env.StaticLibrary(target=radlib('rterror'), source=RTERROR)
|
| 50 |
|
|
rtpath = env.StaticLibrary(target=radlib('rtpath'), source=RTPATH)
|
| 51 |
|
|
rtargs = env.StaticLibrary(target=radlib('rtargs'), source=RTARGS)
|
| 52 |
|
|
rtio = env.StaticLibrary(target=radlib('rtio'), source=RTIO)
|
| 53 |
|
|
rtmath = env.StaticLibrary(target=radlib('rtmath'), source=RTMATH)
|
| 54 |
|
|
rtcont = env.StaticLibrary(target=radlib('rtcont'), source=RTCONT)
|
| 55 |
|
|
rtmem = env.StaticLibrary(target=radlib('rtmem'), source=RTMEM)
|
| 56 |
|
|
rtfunc = env.StaticLibrary(target=radlib('rtfunc'), source=RTFUNC)
|
| 57 |
|
|
rtproc = env.StaticLibrary(target=radlib('rtproc'), source=RTPROC)
|
| 58 |
|
|
rtcolor = env.StaticLibrary(target=radlib('rtcolor'), source=RTCOLOR)
|
| 59 |
|
|
rtlamps = env.StaticLibrary(target=radlib('rtlamps'), source=RTLAMPS)
|
| 60 |
|
|
rtpic = env.StaticLibrary(target=radlib('rtpic'), source=RTPIC)
|
| 61 |
|
|
rtnet = env.StaticLibrary(target=radlib('rtnet'), source=RTNET)
|
| 62 |
|
|
|
| 63 |
|
|
#librt = env.StaticLibrary(target=radlib('rt'), source=ALL)
|
| 64 |
|
|
#Default(librt)
|
| 65 |
schorsch |
1.1 |
|
| 66 |
|
|
LIBFILES = Split('tmesh.cal')
|
| 67 |
|
|
env.Append(RAD_RLIBINSTALL=env.Install(env['RAD_RLIBDIR'], LIBFILES))
|
| 68 |
|
|
|
| 69 |
|
|
if env.has_key('OGL'):
|
| 70 |
|
|
RGL = Split('rglfile.c rglmat.c rgldomat.c rglsurf.c rglinst.c rglsrc.c')
|
| 71 |
|
|
librgl = env.StaticLibrary(target=radlib('rgl'), source=RGL)
|
| 72 |
|
|
Default(librgl)
|
| 73 |
|
|
|