| 1 | # RCSid: $Id: Rmakefile,v 2.92 2024/08/14 20:05:23 greg Exp $ | 
| 2 | # | 
| 3 | # Makefile for ray tracing library routines | 
| 4 | # | 
| 5 |  | 
| 6 | OPT = -O | 
| 7 | MACH = -DBSD | 
| 8 | CFLAGS = $(MACH) $(OPT) | 
| 9 | CC = cc | 
| 10 | AR = ar | 
| 11 | SPECIAL = | 
| 12 |  | 
| 13 | COMPAT = erf.o strcmp.o strnstr.o strlcpy.o | 
| 14 |  | 
| 15 | LIBDIR = /usr/local/lib/ray | 
| 16 |  | 
| 17 | RTOBJ = cone.o face.o free_os.o instance.o readobj.o readoct.o otypes.o \ | 
| 18 | objset.o octree.o readfargs.o modobject.o getlibpath.o \ | 
| 19 | addobjnotify.o zeroes.o mesh.o readmesh.o tmesh.o sceneio.o | 
| 20 |  | 
| 21 | PICOBJ = color.o header.o image.o lamps.o resolu.o rexpr.o spec_rgb.o \ | 
| 22 | colrops.o font.o tonemap.o tmapcolrs.o tmapluv.o tmaptiff.o \ | 
| 23 | tmap16bit.o bmpfile.o falsecolor.o depthcodec.o normcodec.o \ | 
| 24 | idmap.o fltdepth.o jitteraperture.o | 
| 25 |  | 
| 26 | UTLOBJ = ezxml.o ccolor.o ccyrgb.o bsdf.o bsdf_m.o bsdf_t.o loadbsdf.o \ | 
| 27 | disk2square.o hilbert.o interp2d.o triangulate.o data.o | 
| 28 |  | 
| 29 | STDOBJ = fgetline.o fropen.o linregr.o xf.o mat4.o invmat4.o fvect.o urand.o \ | 
| 30 | urind.o calexpr.o caldefn.o calfunc.o calprnt.o biggerlib.o multisamp.o \ | 
| 31 | unix_process.o process.o gethomedir.o getpath.o error.o savestr.o \ | 
| 32 | savqstr.o badarg.o fgetword.o words.o expandarg.o wordfile.o fgetval.o \ | 
| 33 | clip.o plocate.o eputs.o wputs.o quit.o lookup.o bmalloc.o \ | 
| 34 | loadvars.o tcos.o fputword.o chanvalue.o dircode.o paths.o byteswap.o \ | 
| 35 | cvtcmd.o dmessage.o | 
| 36 |  | 
| 37 | SYSOBJ = ealloc.o fdate.o portio.o myhostname.o $(COMPAT) | 
| 38 |  | 
| 39 | CPPOBJ = abitmap.o abitmapio.o | 
| 40 |  | 
| 41 | MGFOBJ = mgf_parser.o mgf_object.o mgf_xf.o mgf_context.o | 
| 42 |  | 
| 43 | WFOBJ = objutil.o objtriangulate.o readwfobj.o convertobj.o writewfobj.o | 
| 44 |  | 
| 45 | REETZOBJ = g3affine.o g3flist.o g3sphere.o g3vector.o gbasic.o muc_randvar.o | 
| 46 |  | 
| 47 | OGLOBJ = rglfile.o rglmat.o rgldomat.o rglsurf.o rglinst.o rglsrc.o | 
| 48 |  | 
| 49 | LIBFILES = tmesh.cal | 
| 50 |  | 
| 51 | librtrad.a:     $(RTOBJ) $(PICOBJ) $(UTLOBJ) $(STDOBJ) $(SYSOBJ) | 
| 52 | rm -f librtrad.a | 
| 53 | $(AR) rc librtrad.a $(RTOBJ) $(PICOBJ) $(UTLOBJ) $(STDOBJ) $(SYSOBJ) | 
| 54 | -ranlib librtrad.a | 
| 55 |  | 
| 56 | libcpprad.a:    $(CPPOBJ) | 
| 57 | rm -f libcpprad.a | 
| 58 | $(AR) rc libcpprad.a $(CPPOBJ) | 
| 59 |  | 
| 60 | libmgf.a:       $(MGFOBJ) | 
| 61 | rm -f libmgf.a | 
| 62 | $(AR) rc libmgf.a $(MGFOBJ) | 
| 63 | -ranlib libmgf.a | 
| 64 |  | 
| 65 | libwfobj.a:     $(WFOBJ) | 
| 66 | rm -f libwfobj.a | 
| 67 | $(AR) rc libwfobj.a $(WFOBJ) | 
| 68 | -ranlib libwfobj.a | 
| 69 |  | 
| 70 | libreetz.a:     $(REETZOBJ) | 
| 71 | rm -f libreetz.a | 
| 72 | $(AR) rc libreetz.a $(REETZOBJ) | 
| 73 | -ranlib libreetz.a | 
| 74 |  | 
| 75 | install:        all | 
| 76 | mv -f librtrad.a libcpprad.a libmgf.a libwfobj.a libreetz.a ../lib | 
| 77 | cd $(LIBDIR) && rm -f $(LIBFILES) | 
| 78 | cp -f $(LIBFILES) $(LIBDIR) | 
| 79 |  | 
| 80 | all:    librtrad.a libcpprad.a libmgf.a libwfobj.a libreetz.a $(SPECIAL) | 
| 81 |  | 
| 82 | clean: | 
| 83 | rm -f *.o *.a | 
| 84 |  | 
| 85 | ogl:    $(OGLOBJ) | 
| 86 | rm -f librgl.a | 
| 87 | $(AR) rc librgl.a $(OGLOBJ) | 
| 88 | -ranlib librgl.a | 
| 89 | mv -f librgl.a ../lib | 
| 90 |  | 
| 91 | x10: | 
| 92 |  | 
| 93 | aed: | 
| 94 |  | 
| 95 | sgi: | 
| 96 |  | 
| 97 | sun: | 
| 98 |  | 
| 99 | getlibpath.o:   getlibpath.c | 
| 100 | $(CC) $(CFLAGS) -DDEFPATH=\":$(LIBDIR)\" -c getlibpath.c | 
| 101 |  | 
| 102 | tmapcolrs.o:    tmapcolrs.c | 
| 103 | $(CC) $(CFLAGS) -DPCOND=\"pcond\" -c tmapcolrs.c | 
| 104 |  | 
| 105 | testBSDF:       testBSDF.c bsdf.h rtio.h | 
| 106 | $(CC) -L../lib $(CFLAGS) -o testBSDF testBSDF.c -lrtrad -lm | 
| 107 |  | 
| 108 | color.o colrops.o header.o lamps.o spec_rgb.o:  color.h | 
| 109 |  | 
| 110 | cone.o:         cone.h | 
| 111 |  | 
| 112 | face.o:         face.h | 
| 113 |  | 
| 114 | fvect.o:        fvect.h random.h | 
| 115 |  | 
| 116 | instance.o:     instance.h | 
| 117 |  | 
| 118 | linregr.o:      linregr.h | 
| 119 |  | 
| 120 | mat4.o invmat4.o:               mat4.h fvect.h | 
| 121 |  | 
| 122 | cone.o face.o instance.o objset.o otypes.o \ | 
| 123 | mesh.o modobject.o readfargs.o readmesh.o \ | 
| 124 | readobj.o readoct.o sceneio.o:  object.h | 
| 125 |  | 
| 126 | mesh.o objset.o octree.o readmesh.o readoct.o sceneio.o:        octree.h | 
| 127 |  | 
| 128 | cone.o mesh.o modobject.o otypes.o \ | 
| 129 | readobj.o readoct.o sceneio.o:  otypes.h | 
| 130 |  | 
| 131 | multisamp.o urand.o:    random.h | 
| 132 |  | 
| 133 | cone.o data.o face.o free_os.o instance.o objset.o \ | 
| 134 | octree.o modobject.o readfargs.o otypes.o mesh.o \ | 
| 135 | readmesh.o readobj.o readoct.o sceneio.o:       standard.h \ | 
| 136 | rtmisc.h rtio.h rtmath.h rterror.h fvect.h mat4.h tiff.h | 
| 137 |  | 
| 138 | image.o:        view.h rtio.h rtmath.h mat4.h fvect.h rtio.h paths.h | 
| 139 |  | 
| 140 | jitteraperture.o:       view.h rtmath.h mat4.h fvect.h rtio.h | 
| 141 |  | 
| 142 | caldefn.o calexpr.o calfunc.o calprnt.o:        calcomp.h | 
| 143 |  | 
| 144 | clip.o plocate.o:       plocate.h | 
| 145 |  | 
| 146 | font.o: font.h | 
| 147 |  | 
| 148 | cvtcmd.o font.o fropen.o getpath.o image.o:     paths.h | 
| 149 |  | 
| 150 | lookup.o:       lookup.h | 
| 151 |  | 
| 152 | loadvars.o:     vars.h | 
| 153 |  | 
| 154 | mesh.o readmesh.o:      mesh.h lookup.h | 
| 155 |  | 
| 156 | dmessage.o abitmapio.o: dmessage.h | 
| 157 |  | 
| 158 | abitmap.o abitmapio.o:  abitmap.h tiff.h | 
| 159 |  | 
| 160 | abitmapio.o:    bmpfile.h | 
| 161 |  | 
| 162 | tonemap.o tmapcolrs.o tmapluv.o tmap16bit.o:    tmprivat.h tonemap.h \ | 
| 163 | tiff.h color.h | 
| 164 |  | 
| 165 | tmapluv.o:      tiffio.h tmaptiff.h tiff.h | 
| 166 |  | 
| 167 | falsecolor.o:   falsecolor.h tmprivat.h tonemap.h color.h tiff.h | 
| 168 |  | 
| 169 | tonemap.o:      tmerrmsg.h | 
| 170 |  | 
| 171 | tmaptiff.o:     tmprivat.h tmaptiff.h color.h tonemap.h tiff.h | 
| 172 |  | 
| 173 | rglfile.o rglmat.o rgldomat.o rglsurf.o rglinst.o rglsrc.o:     radogl.h \ | 
| 174 | standard.h mat4.h fvect.h color.h object.h otypes.h lookup.h | 
| 175 |  | 
| 176 | free_os.o:      octree.h object.h otypes.h face.h cone.h instance.h | 
| 177 |  | 
| 178 | tmesh.o:        tmesh.h fvect.h | 
| 179 |  | 
| 180 | fgetword.o fputword.o fgetval.o fgetline.o fdate.o font.o \ | 
| 181 | unix_process.o byteswap.o expandarg.o badarg.o xf.o:    rtio.h | 
| 182 |  | 
| 183 | expandarg.o:    rtmisc.h | 
| 184 |  | 
| 185 | dircode.o interp2d.o xf.o:      rtmath.h mat4.h fvect.h tiff.h | 
| 186 |  | 
| 187 | error.o:        rterror.h | 
| 188 |  | 
| 189 | bmpfile.o:      bmpfile.h tiff.h | 
| 190 |  | 
| 191 | header.o readmesh.o readoct.o resolu.o rglinst.o tmapcolrs.o:   resolu.h | 
| 192 |  | 
| 193 | ezxml.o bsdf.o bsdf_m.o bsdf_t.o:       ezxml.h | 
| 194 |  | 
| 195 | bsdf_m.o bsdf_t.o:      rtio.h | 
| 196 |  | 
| 197 | bsdf.o: bsdf.h fvect.h bsdf_m.h bsdf_t.h hilbert.h ezxml.h | 
| 198 |  | 
| 199 | bsdf.o bsdf_m.o bsdf_t.o ccolor.o:      ccolor.h | 
| 200 |  | 
| 201 | mgf_parser.o mgf_context.o mgf_xf.o mgf_object.o:       mgf_parser.h ccolor.h | 
| 202 |  | 
| 203 | ccyrgb.o:       ccolor.h color.h | 
| 204 |  | 
| 205 | mgf_parser.o mgf_context.o:     lookup.h | 
| 206 |  | 
| 207 | mgf_parser.o:   mgf_mesg.h | 
| 208 |  | 
| 209 | bsdf_m.o:       bsdf.h bsdf_m.h | 
| 210 |  | 
| 211 | bsdf_t.o:       bsdf.h bsdf_t.h hilbert.h | 
| 212 |  | 
| 213 | hilbert.o:      hilbert.h | 
| 214 |  | 
| 215 | loadbsdf.o:     bsdf.h rtio.h rterror.h paths.h | 
| 216 |  | 
| 217 | interp2d.o:     interp2d.h | 
| 218 |  | 
| 219 | triangulate.o:  triangulate.h | 
| 220 |  | 
| 221 | process.o readobj.o readoct.o rglfile.o \ | 
| 222 | tmapcolrs.o unix_process.o win_process.o:       rtprocess.h | 
| 223 |  | 
| 224 | gbasic.o:       gbasic.h | 
| 225 |  | 
| 226 | g3flist.o g3affine.o g3sphere.o g3vector.o:     g3vector.h gbasic.h fvect.h | 
| 227 |  | 
| 228 | g3affine.o:     g3affine.h | 
| 229 |  | 
| 230 | g3affine.o g3sphere.o:  g3sphere.h | 
| 231 |  | 
| 232 | g3flist.o:      g3flist.h | 
| 233 |  | 
| 234 | maxheap.o:      maxheap.h | 
| 235 |  | 
| 236 | data.o: data.h platform.h paths.h color.h view.h resolu.h | 
| 237 |  | 
| 238 | ezxml.o readmesh.o readobj.o readoct.o rglinst.o wordfile.o:    platform.h | 
| 239 |  | 
| 240 | depthcodec.o:   depthcodec.h view.h fvect.h resolu.h rtio.h | 
| 241 |  | 
| 242 | normcodec.o:    normcodec.h rtmath.h mat4.h fvect.h resolu.h rtio.h | 
| 243 |  | 
| 244 | idmap.o:        idmap.h resolu.h platform.h rtio.h | 
| 245 |  | 
| 246 | rcode_ident.o:  lookup.h | 
| 247 |  | 
| 248 | convertobj.o:   paths.h rterror.h objutil.h | 
| 249 |  | 
| 250 | objutil.o:      objutil.h rterror.h rtio.h rtmath.h mat4.h fvect.h lookup.h | 
| 251 |  | 
| 252 | objtriangulate.o:       objutil.h rterror.h triangulate.h | 
| 253 |  | 
| 254 | readwfobj.o:    objutil.h rtio.h rterror.h fvect.h | 
| 255 |  | 
| 256 | writewfobj.o:   objutil.h rterror.h |