home *** CD-ROM | disk | FTP | other *** search
/ Otherware / Otherware_1_SB_Development.iso / mac / developm / source / povsrc.sit / MACHINE / IBMPC.ZIP / IBMMSC.MAK < prev    next >
Encoding:
Makefile  |  1992-04-16  |  5.2 KB  |  161 lines

  1. # IBM Makefile for Persistence of Vision Raytracer
  2. # This file is released to the public domain.
  3. # For use with Microsoft C 6.00A (or 6.00AX) on the IBM-PC
  4.  
  5. # Note for the IBM Version:
  6. # Uses system environment variable LIB for the linker's .LIB file path.
  7. # (Example:  Set LIB=C:\LIB)  if you change this the two .LNK files will also
  8. # need to be changed as well.  The system environment variable CMODEL also
  9. # may be defined for the memory model of the compiler.  POV-Ray requires
  10. # the "Large" memory model.  (Example Set CMODEL=L)  If you don't want to
  11. # use the DOS environment variables, uncomment the following two lines:
  12.  
  13. #LIB        =\lib
  14. CMODEL      =L
  15.  
  16. # If you have MSC 6.00AX, and Extended/XMS/VCPI memory to compile in,
  17. # uncomment the following line:
  18.  
  19. #EXTMEM        =/EM                # Uncomment this line for MSC 6.00AX
  20.  
  21. CC          =cl
  22. OBJ         =obj
  23. MACHINE_OBJ    = ibm.$(OBJ)
  24.  
  25. LINKER  =link /EXEPACK /PACKC /FARC /STACK:12288
  26.  
  27. # Uncomment for 8086/8088 instruction set usage
  28. #
  29. #CFLAGS =/A$(CMODEL) $(EXTMEM) /Gmsr /FPi /H32 /c /J
  30. #
  31. # Uncomment for 80186/80268 (incl. V20) instruction set usage
  32. # Normally, you'll use this:
  33. #
  34. CFLAGS  =/A$(CMODEL) $(EXTMEM) /Gmsr2 /FPi87 /H32 /c /J /W3
  35. #
  36. # Or, try this quicker version:
  37. #
  38. #CFLAGS =/qc /A$(CMODEL) $(EXTMEM) /FPi87 /c /J /Gsr2
  39. #
  40. # If you have OS/2 to compile under, fix directory name to reflect
  41. # your configuration, and add this option to CFLAGS above...
  42. #
  43. # /B2 C:\msc\c2l.exe
  44. #
  45. # (Note this is superseded by /EM for MSC 6.00AX under DOS)
  46.  
  47. # Override MS's NMAKE implicit rules for making an .OBJ file from a
  48. # .C file.
  49. #
  50. .c.obj :
  51.     $(CC) $(CFLAGS) /Oaxz $*.c
  52.  
  53. # The option:
  54. #
  55. # /Oaxz
  56. #
  57. # Is purported by Microsoft to produce the fastest possible code.  In fact it
  58. # will break the RGB->HSV->RGB routines in IBM.C, if using the 8087 emulator.
  59. # So, for IBM.C we are using:
  60. #
  61. # /Ogiltaz
  62. #
  63. # This optimization string works for IBM.C and should then have worked for ALL
  64. # files, but, somehow, it BREAKS the compiler on certain modules! (Internal compiler
  65. # error C1001 on TEXTURE.C, etc.)  Oh, well...  We usually use /Oaxz for the
  66. # optimization switches.  Try using /Od to disable optimization completely if
  67. # you're having strange problems, for isolation.
  68. #
  69.  
  70. POVOBJS = povray.$(OBJ) render.$(OBJ) tokenize.$(OBJ) parse.$(OBJ) \
  71.       objects.$(OBJ) spheres.$(OBJ) quadrics.$(OBJ) lighting.$(OBJ) \
  72.       prioq.$(OBJ) texture.$(OBJ) matrices.$(OBJ) csg.$(OBJ) \
  73.       hfield.$(OBJ) txtcolor.$(OBJ) txtbump.$(OBJ) txtmap.$(OBJ) \
  74.       txttest.$(OBJ) colour.$(OBJ) viewpnt.$(OBJ) ray.$(OBJ) point.$(OBJ)\
  75.       planes.$(OBJ) iff.$(OBJ) gif.$(OBJ) gifdecod.$(OBJ) blob.$(OBJ)\
  76.       triangle.$(OBJ) raw.$(OBJ) dump.$(OBJ) targa.$(OBJ) poly.$(OBJ) \
  77.       bezier.$(OBJ) vect.$(OBJ) boxes.$(OBJ) $(MACHINE_OBJ)
  78.  
  79. # POV-Ray - Specific Dependencies
  80. #
  81. povray.exe : $(POVOBJS)
  82.     $(LINKER) @ibmmsc.lnk
  83. #
  84. # This version uses MS-Link's overlay feature to share code space for the
  85. # parser and GIF-decoder modules, etc.  Try at your own risk!
  86. #
  87. #povray.exe : $(POVOBJS)
  88. #    $(LINKER) @ibmovl.lnk
  89.  
  90. povray.$(OBJ) : povray.c povproto.h frame.h vector.h config.h
  91.  
  92. tokenize.$(OBJ) : tokenize.c povproto.h frame.h config.h
  93.  
  94. parse.$(OBJ) : parse.c povproto.h frame.h config.h
  95.  
  96. render.$(OBJ) : render.c povproto.h frame.h vector.h config.h
  97.  
  98. lighting.$(OBJ) : lighting.c povproto.h frame.h vector.h config.h
  99.  
  100. prioq.$(OBJ) : prioq.c povproto.h frame.h config.h
  101.  
  102. texture.$(OBJ) : texture.c povproto.h frame.h vector.h config.h texture.h
  103.  
  104. txtcolor.$(OBJ) : txtcolor.c povproto.h frame.h vector.h config.h texture.h
  105.  
  106. txtbump.$(OBJ) : txtbump.c povproto.h frame.h vector.h config.h texture.h
  107.  
  108. txtmap.$(OBJ) : txtmap.c povproto.h frame.h vector.h config.h texture.h
  109.     $(CC) $(CFLAGS) /Ogiltaz $*.c
  110.  
  111. txttest.$(OBJ) : txttest.c povproto.h frame.h vector.h config.h texture.h
  112.  
  113. objects.$(OBJ) : objects.c povproto.h frame.h vector.h config.h
  114.  
  115. hfield.$(OBJ) : hfield.c povproto.h frame.h vector.h config.h
  116.  
  117. spheres.$(OBJ) : spheres.c povproto.h frame.h vector.h config.h
  118.  
  119. point.$(OBJ) : point.c povproto.h frame.h vector.h config.h
  120.  
  121. planes.$(OBJ) : planes.c povproto.h frame.h vector.h config.h
  122.  
  123. boxes.$(OBJ) : boxes.c povproto.h frame.h vector.h config.h
  124.  
  125. blob.$(OBJ) : blob.c povproto.h frame.h vector.h config.h
  126.  
  127. quadrics.$(OBJ) : quadrics.c povproto.h frame.h vector.h config.h
  128.  
  129. poly.$(OBJ) : poly.c povproto.h frame.h vector.h config.h
  130.  
  131. bezier.$(OBJ) : bezier.c povproto.h frame.h vector.h config.h
  132.  
  133. vect.$(OBJ) : vect.c povproto.h frame.h config.h
  134.  
  135. matrices.$(OBJ) : matrices.c povproto.h frame.h vector.h config.h
  136.  
  137. csg.$(OBJ) : csg.c povproto.h frame.h vector.h config.h
  138.  
  139. colour.$(OBJ) : colour.c povproto.h frame.h config.h
  140.  
  141. viewpnt.$(OBJ) : viewpnt.c povproto.h frame.h vector.h config.h
  142.  
  143. ray.$(OBJ) : ray.c povproto.h frame.h vector.h config.h
  144.  
  145. iff.$(OBJ) : iff.c povproto.h frame.h config.h
  146.  
  147. gif.$(OBJ) : gif.c povproto.h frame.h config.h
  148.  
  149. gifdecod.$(OBJ) : gifdecod.c povproto.h frame.h config.h
  150.  
  151. raw.$(OBJ) : raw.c povproto.h frame.h config.h
  152.  
  153. dump.$(OBJ) : dump.c povproto.h frame.h config.h
  154.  
  155. targa.$(OBJ) : targa.c povproto.h frame.h config.h
  156.  
  157. triangle.$(OBJ) : triangle.c povproto.h frame.h vector.h config.h
  158.  
  159. ibm.$(OBJ) : ibm.c povproto.h frame.h config.h
  160.     $(CC) $(CFLAGS) /Ogiltaz /D__STDC__ $*.c
  161.