1 |
# SCCSid "$SunId$ LBL" |
2 |
|
3 |
# |
4 |
# Compiles for ray tracing programs. |
5 |
# |
6 |
|
7 |
CFLAGS = -DBSD -O -DIEEE -f68881 /usr/lib/f68881.il |
8 |
|
9 |
# |
10 |
# The following are user-definable: |
11 |
# |
12 |
DESTDIR = . |
13 |
INSTDIR = /usr/local/ray |
14 |
INSTALL = cp |
15 |
|
16 |
# |
17 |
# The following paths must exist and be relative to root: |
18 |
# |
19 |
DEVDIR = $(LIBDIR)/lib |
20 |
LIBDIR = /usr/local/lib/ray |
21 |
|
22 |
# |
23 |
# Library routines: |
24 |
# |
25 |
LIBS = -lm |
26 |
COMPAT = malloc.o |
27 |
|
28 |
# |
29 |
# Device drivers for rview (see also devtable.c): |
30 |
# |
31 |
DOBJS = devtable.o devcomm.o aed.o tty.o editline.o sun.o x10.o xtwind.o |
32 |
DLIBS = -lX |
33 |
DRIVERS = $(DEVDIR)/sun.dev $(DEVDIR)/sun.com |
34 |
|
35 |
# |
36 |
# Standard object files: |
37 |
# |
38 |
|
39 |
RTOBJS = rtmain.o rtrace.o $(ROBJS) |
40 |
|
41 |
RPOBJS = rpmain.o rpict.o image.o $(ROBJS) |
42 |
|
43 |
RVOBJS = rvmain.o rview.o rv2.o rv3.o image.o $(DOBJS) $(ROBJS) |
44 |
|
45 |
ROBJS = $(OCTOBJS) $(RAYOBJS) $(SURFOBJS) $(MATOBJS) \ |
46 |
$(MODOBJS) $(SUPPOBJS) $(MISCOBJS) $(COMPAT) |
47 |
|
48 |
OCTOBJS = octree.o readobj.o readoct.o objset.o otypes.o |
49 |
|
50 |
RAYOBJS = raytrace.o ambient.o |
51 |
|
52 |
SURFOBJS = face.o sphere.o source.o o_face.o cone.o \ |
53 |
o_cone.o o_instance.o instance.o |
54 |
|
55 |
MATOBJS = normal.o dielectric.o m_clip.o glass.o |
56 |
|
57 |
MODOBJS = p_func.o t_func.o p_data.o t_data.o text.o mx_func.o mx_data.o |
58 |
|
59 |
SUPPOBJS = zeroes.o calexpr.o caldefn.o calfunc.o func.o noise3.o data.o |
60 |
|
61 |
MISCOBJS = misc.o color.o header.o mat4.o xf.o fvect.o savestr.o ealloc.o |
62 |
|
63 |
# |
64 |
# What this makefile produces: |
65 |
# |
66 |
|
67 |
PROGS = $(DESTDIR)/rtrace $(DESTDIR)/rpict $(DESTDIR)/rview $(DESTDIR)/lookamb |
68 |
|
69 |
all: $(PROGS) $(DRIVERS) |
70 |
|
71 |
install: all |
72 |
$(INSTALL) $(PROGS) $(INSTDIR) |
73 |
|
74 |
clean: |
75 |
rm -f *.o core |
76 |
|
77 |
# |
78 |
# Links: |
79 |
# |
80 |
|
81 |
$(DESTDIR)/rtrace: $(RTOBJS) |
82 |
cc $(CFLAGS) -o $(DESTDIR)/rtrace $(RTOBJS) $(LIBS) |
83 |
|
84 |
$(DESTDIR)/rpict: $(RPOBJS) |
85 |
cc $(CFLAGS) -o $(DESTDIR)/rpict $(RPOBJS) $(LIBS) |
86 |
|
87 |
$(DESTDIR)/rview: $(RVOBJS) |
88 |
cc $(CFLAGS) -o $(DESTDIR)/rview $(RVOBJS) $(DLIBS) $(LIBS) |
89 |
|
90 |
$(DESTDIR)/lookamb: lookamb.o |
91 |
cc $(CFLAGS) -o $(DESTDIR)/lookamb lookamb.o |
92 |
|
93 |
$(DEVDIR)/sun.dev: sundev.o |
94 |
cc $(CFLAGS) -o $(DEVDIR)/sun.dev sundev.o \ |
95 |
-lsuntool -lsunwindow -lpixrect $(LIBS) |
96 |
|
97 |
$(DEVDIR)/sun.com: suncom.o editline.o |
98 |
cc $(CFLAGS) -o $(DEVDIR)/sun.com suncom.o editline.o |
99 |
|
100 |
# |
101 |
# Special compiles: |
102 |
# |
103 |
|
104 |
rtmain.o: rmain.c |
105 |
cc $(CFLAGS) -DRTRACE -DNICE=4 -DDEFPATH=\":$(LIBDIR)\" -c rmain.c |
106 |
mv rmain.o rtmain.o |
107 |
|
108 |
rpmain.o: rmain.c |
109 |
cc $(CFLAGS) -DRPICT -DNICE=6 -DDEFPATH=\":$(LIBDIR)\" -c rmain.c |
110 |
mv rmain.o rpmain.o |
111 |
|
112 |
rvmain.o: rmain.c |
113 |
cc $(CFLAGS) -DRVIEW -DDEFPATH=\":$(LIBDIR)\" -c rmain.c |
114 |
mv rmain.o rvmain.o |
115 |
|
116 |
# |
117 |
# Uncomment the following to model dispersion: |
118 |
# |
119 |
#dielectric.o: dielectric.c source.h |
120 |
# cc $(CFLAGS) -DDISPERSE -c dielectric.c |
121 |
# |
122 |
#color.o: color.c color.h |
123 |
# cc $(CFLAGS) -DSPEC_RGB -c color.c |
124 |
# |
125 |
# end of dispersion compiles. |
126 |
|
127 |
sundev.o: sundev.c |
128 |
cc $(CFLAGS) -DTTYPROG=\"$(DEVDIR)/sun.com\" -c sundev.c |
129 |
|
130 |
devcomm.o: devcomm.c |
131 |
cc $(CFLAGS) -DDEVPATH=\"$(DEVDIR)\" -c devcomm.c |
132 |
|
133 |
ambient.o: ambient.c |
134 |
cc $(CFLAGS) -DAMBFLUSH=16 -c ambient.c |
135 |
|
136 |
calexpr.o: calexpr.c calcomp.h |
137 |
cc $(CFLAGS) -DVARIABLE -DFUNCTION -DINCHAN -DRCONST -c calexpr.c |
138 |
|
139 |
caldefn.o: caldefn.c calcomp.h |
140 |
cc $(CFLAGS) -DFUNCTION -c caldefn.c |
141 |
|
142 |
calfunc.o: calfunc.c calcomp.h |
143 |
cc $(CFLAGS) -DVARIABLE -DBIGLIB -c calfunc.c |
144 |
|
145 |
xf.o: xf.c |
146 |
cc $(CFLAGS) -DINVXF -c xf.c |
147 |
|
148 |
# |
149 |
# Include dependencies: |
150 |
# |
151 |
|
152 |
caldefn.o calexpr.o calfunc.o: calcomp.h |
153 |
|
154 |
aed.o color.o data.o devcomm.o lookamb.o rview.o sundev.o x10.o: color.h |
155 |
|
156 |
cone.o o_cone.o source.o: cone.h |
157 |
|
158 |
data.o mx_data.o p_data.o t_data.o: data.h |
159 |
|
160 |
aed.o devcomm.o devtable.o sun.o sundev.o tty.o x10.o: driver.h |
161 |
|
162 |
face.o o_face.o source.o: face.h |
163 |
|
164 |
fvect.o: fvect.h |
165 |
|
166 |
cone.o face.o objset.o otypes.o readobj.o readoct.o: object.h |
167 |
|
168 |
ambient.o objset.o octree.o raytrace.o \ |
169 |
readoct.o rmain.o rv2.o source.o: octree.h |
170 |
|
171 |
o_instance.o instance.o: instance.h octree.h |
172 |
|
173 |
cone.o dielectric.o func.o normal.o o_cone.o otypes.o \ |
174 |
text.o raytrace.o readobj.o readoct.o rtrace.o \ |
175 |
rv2.o source.o sphere.o: otypes.h |
176 |
|
177 |
ambient.o rpict.o rv3.o source.o: random.h |
178 |
|
179 |
ambient.o dielectric.o func.o glass.o image.o m_clip.o \ |
180 |
mx_data.o mx_func.o normal.o o_cone.o o_face.o o_instance.o \ |
181 |
p_data.o p_func.o text.o raytrace.o rmain.o rpict.o \ |
182 |
rtrace.o rv2.o rv3.o source.o \ |
183 |
sphere.o t_data.o t_func.o: ray.h standard.h fvect.h object.h color.h |
184 |
|
185 |
rv2.o rv3.o rview.o: rpaint.h driver.h view.h |
186 |
|
187 |
source.o: source.h |
188 |
|
189 |
cone.o data.o face.o misc.o objset.o octree.o otypes.o \ |
190 |
readobj.o readoct.o rview.o: standard.h fvect.h |
191 |
|
192 |
sundev.o: suntools.icon |
193 |
|
194 |
image.o rmain.o rpict.o: view.h |
195 |
|
196 |
x10.o xtwind.o: xtwind.h |