home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / maths / plplot / plplot_2 / sys / dos / bcc / makefile < prev    next >
Encoding:
Makefile  |  1994-08-10  |  5.2 KB  |  285 lines

  1. #               
  2. # Makefile for PLPLOT
  3. #
  4. #
  5. # Questions or problems, send (e)mail to:
  6. #
  7. #       Paul Casteels   casteels@uia.ac.be
  8. #       University of Antwerp   Dpt Physics
  9. #       Belgium
  10.  
  11. PLDIR   = c:\plplot\  # 
  12. PLLIBS  = .  #
  13. PLFONTS = $(PLDIR)plfonts\  # 
  14. PLFONT_DIR= $(PLDIR)  #
  15. PLTMP   = $(PLDIR)tmp\  # 
  16. PLLIBDIR = .  #
  17.  
  18. BCCINCLUDE = c:\bc4\include
  19.  
  20. # Windows or DOS
  21. WIN3 = TRUE
  22.  
  23. CC      = bcc
  24. !if $d(WIN3)
  25. CFLAGS = -3 -Od -ml -P -v 
  26. !else
  27. #CFLAGS = -f287 -Od -ml -P -v -DMSDOS -D__cplusplus
  28. CFLAGS = -3 -f287 -Od -ml -P -v 
  29. !endif
  30. BRC = brc
  31. BRCFLAGS =
  32.  
  33. # DOS & Windows
  34. !if $d(WIN3)
  35. DRIVERS = -DPS -DPLMETA -DHP7470 -DIMP -DWIN3
  36. LIBS =
  37. !else
  38. DRIVERS = -DPS -DPLMETA -DHP7470 -DIMP -DBGI
  39. LIBS = graphics.lib
  40. !endif
  41.  
  42. # Rules
  43. .SUFFIXES:
  44. .SUFFIXES: .obj .c .for
  45.  
  46. .c.obj:
  47.     $(CC) -c $(CFLAGS) $*.c 
  48. .for.o:
  49.     $(F77) -c $(FFLAGS) -o$*.o $*.for
  50. .rc.res:
  51.     $(BRC) -r $(BRCFLAGS) $*.rc
  52. !if $d(WIN3)
  53. .c.exe:
  54.     $(CC) -c $(CFLAGS) -W $*.c
  55.     tlink @&&|
  56. /v c0wl $*.obj
  57. $*,$*
  58. plplot.lib import.lib mathwl.lib cwl.lib
  59. default.def
  60. |
  61.     brc plplot.rc $*.exe
  62. !else
  63. .c.exe:
  64.     $(CC) -c $(CFLAGS) $*.c
  65.     tlink @&&|
  66. /v c0l $*.obj
  67. $*,$*
  68. plplot.lib graphics.lib mathl.lib fp87.lib cl.lib
  69. |
  70. !endif
  71.  
  72. # Object file macros
  73.  
  74. OBJ =   \
  75.     plbox.obj \
  76.     plcont.obj \
  77.     pldtik.obj \
  78.     plfill.obj \
  79.     plfont.obj \
  80.     plhist.obj \
  81.     plline.obj \
  82.     plot3d.obj \
  83.     plsdef.obj \
  84.     plsym.obj \
  85.     pltick.obj \
  86.     plvpor.obj \
  87.     plwind.obj \
  88.     plcore.obj \
  89.     plargs.obj \
  90.     plbuf.obj \
  91.     plctrl.obj \
  92.     plcvt.obj \
  93.     plpage.obj \
  94.     plstream.obj \
  95.     plstring.obj \
  96.     plshade.obj
  97.  
  98. DRV_OBJ = \
  99.     pdfutils.obj \
  100.     hpgl.obj \
  101.     impress.obj \
  102.     ljii.obj \
  103.     ps.obj \
  104.     tek.obj \
  105.     dosbgi.obj \
  106.     win3.obj \
  107.     plmeta.obj
  108.  
  109. # Support files for font generators.
  110.  
  111. FONT_OBJ = \
  112.     font01.obj \
  113.     font02.obj \
  114.     font03.obj \
  115.     font04.obj \
  116.     font05.obj \
  117.     font06.obj \
  118.     font07.obj \
  119.     font08.obj \
  120.     font09.obj \
  121.     font10.obj \
  122.     font11.obj
  123.  
  124. # C language stubs for linking Plplot to Fortran.
  125.  
  126. CSTUB_OBJ = \
  127.     long2str.obj \
  128.     sc3d.obj \
  129.     scconf.obj \
  130.     scstubs.obj
  131.  
  132. # Fortran language stubs for linking Plplot to Fortran.
  133.  
  134. FSTUB_OBJ = \
  135.     sfstubs.obj
  136.  
  137. # Library dependencies
  138.  
  139. #libs:   libc libf
  140. libs:   libc
  141. libc:   $(PLLIBS)\plplot.lib
  142. libf:   $(PLLIBS)\plstub.lib
  143.  
  144.  
  145. $(PLLIBS)\plplot.lib: $(OBJ) $(DRV_OBJ)
  146.     @echo Ready to build plplot.lib
  147.     -@del plplot.lib
  148.     tlib @&&!
  149. plplot\
  150. +$(OBJ:.obj=.obj +)\
  151. $(DRV_OBJ:.obj=.obj +)\
  152. ,plplot.lst
  153. !
  154.  
  155. # In case you REALLY mean it!
  156.  
  157. force: links libs
  158.  
  159. # First time only, should be executed from $(PLTMP)
  160.  
  161. links: linkmain linkstubs
  162.     @echo Converting from Unix to Dos format
  163.     crlf -fs *.h *.c *.rc *.def
  164.  
  165. linkmain:
  166.     copy ..\src\*.c .
  167.     copy ..\include\*.h .
  168.     copy ..\examples\c\*.c .
  169.     copy ..\drivers\*.* .
  170.     copy ..\fonts\*.* .
  171.     copy ..\utils\*.* .
  172.     copy ..\sys\dos\bcc\*.h .
  173.     copy ..\sys\dos\bcc\*.c .
  174.     copy ..\sys\dos\bcc\*.rc .
  175.     copy ..\sys\dos\bcc\*.def .
  176.     copy ..\sys\dos\bcc\crlf.com .
  177.     copy plplot.h $(BCCINCLUDE)
  178.     copy pdf.h $(BCCINCLUDE)
  179.  
  180. linkstubs:      
  181.     copy ..\sys\os2\stubf\*.* .
  182.     copy ..\src\stubc\*.* .
  183.     ren *.f *.for
  184.  
  185. # The metafile renderer.
  186.  
  187. plrender:
  188.     cl $(CFLAGS) plrender.c getopt.c plplot.lib
  189.  
  190. #----------------------------------------------------------------------#
  191. # Font files.
  192. # Note 6 font files actually created.
  193. # sfont - standard font
  194. # xfont - extended fonts
  195.  
  196. fonts:  sfont xfont
  197.     @echo $(PLDIR)
  198.     @echo $(PLFONT_DIR)
  199.     copy *.fnt $(PLFONT_DIR)
  200.     @echo Put this in autoexec.bat !!
  201.     set PLFONTS=$(PLFONT_DIR)
  202.  
  203. sfont:  $(PLFONT_DIR)plstnd.fnt
  204. xfont:  $(PLFONT_DIR)plxtnd.fnt
  205.  
  206. $(PLFONT_DIR)plstnd.fnt:
  207.     $(CC) $(CFLAGS:ml=mh) -Ff=16 stndfont.c font*.c pdfutils.c
  208.     -stndfont
  209.  
  210. $(PLFONT_DIR)plxtnd.fnt:
  211.     $(CC) $(CFLAGS:ml=mh) -Ff=16 xtndfont.c font*.c pdfutils.c 
  212.     -xtndfont
  213.  
  214. #----------------------------------------------------------------------#
  215. # Explicit rules
  216. #
  217. # plfont.c may have font flags passed in
  218.  
  219. plfont.obj: plfont.c
  220.     $(CC) -c $(CFLAGS) $(FONTFLAG)  $*.c
  221.  
  222. # dispatch.c and all the drivers need to know $(PLDEVICES).  The guts
  223. # of the driver routine are not compiled if its name is not present in
  224. # the device list.  You may want to leave drivers for specific systems
  225. # (Amiga, MS-DOS, OS/2, etc) out of this list.
  226.  
  227. dispatch.obj: dispatch.c
  228.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  229.  
  230. hpgl.obj:       hpgl.c
  231.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  232.  
  233. impress.obj:      impress.c
  234.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  235.  
  236. ljii.obj: ljii.c
  237.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  238.  
  239. ps.obj:   ps.c
  240.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  241.  
  242. win3.obj: win3.c
  243.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  244.  
  245. tek.obj:  tek.c
  246.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  247.  
  248. plmeta.obj:       plmeta.c
  249.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  250.  
  251. plcore.obj:       plcore.c
  252.     $(CC) -c $(CFLAGS) $(DRIVERS) $*.c 
  253.  
  254. dosbgi.obj:  dosbgi.c
  255.     $(CC) -c $(CFLAGS) $(DRIVERS) $(BGIDRIVERS) $*.c 
  256.  
  257. #----------------------------------------------------------------------#
  258. # Build all the demos
  259.  
  260. demos : cdemos fdemos
  261.  
  262. # Example programs, in c.
  263.  
  264. cdemos: x01c x02c x03c x04c x05c x06c x07c x08c x09c x10c x11c \
  265.     x12c x13c x15c tutor
  266.  
  267. x01c:   x01c.exe 
  268. x02c:   x02c.exe
  269. x03c:   x03c.exe
  270. x04c:   x04c.exe
  271. x05c:   x05c.exe
  272. x06c:   x06c.exe
  273. x07c:   x07c.exe
  274. x08c:   x08c.exe
  275. x09c:   x09c.exe
  276. x10c:   x10c.exe
  277. x11c:   x11c.exe
  278. x12c:   x12c.exe
  279. x13c:   x13c.exe
  280. # only x-windows !!!
  281. #x14c:   x14c.c
  282. #        $(CC) $(CFLAGS) x14c.c plplot.lib $(LIBS) 
  283. x15c:   x15c.exe
  284. tutor:  tutor.exe
  285.