# make file for Borland C++ 3.1 Windows version # and Win32 using Borland C++ 4 (4.52 is known to work) # CAVEAT: may not work correctly with BC 5 due to changes in flags # The compile and link includes debug flags. Take them out if you # do not want them included (-y -v -M, /m /s /v /l) # where to place wgnuplot.hlp helpfile HELPFILE = wgnuplot.hlp # location of Borland C compiler TC = d:\bc45 # WIN32=1 for Win32s or Win32 (--> '95 or NT) # new: allow '-DWIN32=1' on make command line to take effect: !if "$(WIN32)"=="" WIN32=0 !endif !if $(WIN32) # name of C compiler # bcc32a is the pentium-scheduling compiler in BC 4.52 !if $(PENTIUM) CC = bcc32a PROCESSOR_OPT = -5 !else CC = bcc32 PROCESSOR_OPT = !endif CCAUX = bcc !else CC = bcc CCAUX = bcc !endif # location of TLINK.EXE and BCC.EXE BIN = $(TC)\bin\\ # -c means don't link # -ml means use large model (large code, large data) # -M means produce link map # -y means include line numbers for debugger # -v means include debug info # -w- means ignore warnings and do not report them # -w-rvl ignore function must return a value error # -Ff=128 means make data object > 128 FAR # -W means window application # -DREADLINE to use the history/line editing capability. If you want this # capability add -DREADLINE to CFLAGS then add 'readline' to the /o # section of the linker call. !if $(WIN32) CFLAGS = -c -W -M -G -y -v -w-rvl -w-use -w-par -w-aus -w-pro $(PROCESSOR_OPT) -I$(TC)\include -Iwin -DREADLINE=1 -DHAVE_STRNICMP -DWIN32 -DHAVE_STRERROR -DNO_GIH -DNOGAMMA -DWIN32_LEAN_AND_MEAN -DANSI_C -DHAVE_GETCWD CAUXFLAGS = -ml -w-par -w-use -w-aus -f -N -M -y -v -d -I$(TC)\include -DHAVE_STRNICMP -DANSI_C !else CFLAGS = -c -W -ml -w-par -w-use -w-aus -f -h -N -M -y -v -d -Ff=32 -I$(TC)\include -Iwin -DREADLINE=1 -zEGPFAR_DATA -DHAVE_STRNICMP -DMSDOS=1 -DNO_GIH -DANSI_C -DHAVE_GETCWD -DNDEBUG CAUXFLAGS = -ml -w-par -w-use -w-aus -f -N -M -y -v -d -I$(TC)\include -DMSDOS=1 -DHAVE_STRNICMP -DANSI_C !endif OBJS = bitmap.obj command.obj contour.obj eval.obj graphics.obj graph3d.obj \ internal.obj misc.obj parse.obj plot.obj plot2d.obj plot3d.obj \ readline.obj scanner.obj set.obj show.obj specfun.obj standard.obj \ stdfn.obj term.obj util.obj version.obj binary.obj winmain.obj \ interpol.obj fit.obj matrix.obj datafile.obj alloc.obj util3d.obj \ hidden3d.obj time.obj help.obj DLLOBJS = wgnuplib.obj wtext.obj wmenu.obj wpause.obj wgraph.obj wprinter.obj CSOURCE5 = term\aed.trm term\cgi.trm term\cgm.trm term\debug.trm \ term\dumb.trm term\dxy.trm \ term\eepic.trm term\epson.trm term\fig.trm term\hp26.trm \ term\hp2648.trm term\hpgl.trm term\hpljii.trm CSOURCE6 = term\impcodes.h term\imagen.trm term\object.h \ term\iris4d.trm term\kyo.trm term\latex.trm term/pbm.trm term\win.trm CSOURCE7 = term\post.trm term\qms.trm term\regis.trm term\sun.trm \ term\t410x.trm term\tek.trm term\unixpc.trm term\unixplot.trm \ term\v384.trm term\x11.trm CSOURCE8 = contour.c specfun.c binary.c interpol.obj WINDOWS = makefile.win makefile.msw README.win win\wcommon.h \ win\wgnuplib.c win\wgnuplib.def win\wgnuplib.h win\wgnuplib.rc\ win\wgnuplot.def win\wgnuplot.hpj win\wgnuplot.mnu win\wgnuplot.rc \ win\wgraph.c win\winmain.c win\wmenu.c win\wpause.c \ win\wprinter.c win\wresourc.h win\wtext.c win\wtext.h \ win\geticon.c docs\doc2rtf.c term\win.trm win\wgnupl32.def !if $(WIN32) all: wgnupl32.exe $(HELPFILE) wgnuplot.mnu demo\bf_test.exe !else all: wgnuplot.exe wgnuplot.dll $(HELPFILE) wgnuplot.mnu demo\bf_test.exe !endif wgnuplot.exe: $(OBJS) win\wgnuplot.def win\wgnuplot.rc winmain.obj wgnuplot.lib # $(BIN)tlink /Twe /c @&&! $(BIN)tlink /Twe /c /s /v /l @&&! $(TC)\lib\C0Wl + bitmap command eval graphics graph3d help internal misc parse + plot plot2d plot3d scanner set show specfun standard stdfn term util version contour + binary interpol + winmain + readline + fit matrix datafile alloc util3d hidden3d time + ,wgnuplot,wgnuplot, + wgnuplot.lib + $(TC)\lib\import + $(TC)\lib\mathwl + $(TC)\lib\cwl, + win\wgnuplot.def ! $(BIN)brc -30 -k -i$(TC)\include win\wgnuplot.rc wgnuplot.exe # gnuplot.opt contains a list of the 'core' files, in case that's of # any use... wgnupl32.exe: $(OBJS) $(DLLOBJS) win\wgnupl32.def wgnupl32.res winmain.obj # $(BIN)tlink32 /Tpe /c @&&! $(BIN)tlink32 /Tpe /c /m /s /v @&&! $(TC)\lib\C0W32 + bitmap command eval graphics graph3d help internal misc parse + plot plot2d plot3d scanner set show specfun standard stdfn term util version contour + wgnuplib wtext wmenu wpause wgraph wprinter + binary interpol + winmain + readline + fit matrix datafile alloc util3d hidden3d time + ,wgnupl32,wgnupl32, + $(TC)\lib\import32 + $(TC)\lib\cw32, + win\wgnupl32.def, wgnupl32.res ! wgnupl32.res: win\wgnuplot.rc win\wgnuplib.rc $(BIN)brcc32 -DWIN32 -i$(TC)\include -r -fowgnupl32 win\wgnuplot.rc # default rules .c.obj: $(BIN)$(CC) @&&! $(CFLAGS) ! $< # rules bitmap.obj: bitmap.c bitmap.h plot.h command.obj: command.c plot.h setshow.h fit.h $(BIN)$(CC) -DHELPFILE=\"$(HELPFILE)\" @&&! $(CFLAGS) ! command.c contour.obj: contour.c plot.h eval.obj: eval.c plot.h graphics.obj: graphics.c plot.h setshow.h graph3d.obj: graphics.c plot.h setshow.h fit.obj: fit.c fit.h matrix.h plot.h matrix.obj: matrix.c matrix.h fit.h internal.obj: internal.c plot.h misc.obj: misc.c plot.h setshow.h parse.obj: parse.c plot.h $(BIN)$(CC) @&&! $(CFLAGS) ! parse.c plot.obj: plot.c plot.h setshow.h $(BIN)$(CC) @&&! $(CFLAGS) ! plot.c hidden3d.obj: hidden3d.c plot.h setshow.h plot3d.obj: plot3d.c plot.h setshow.h plot2d.obj: plot2d.c plot.h setshow.h readline.obj: readline.c plot.h scanner.obj: scanner.c plot.h set.obj: set.c plot.h setshow.h show.obj: show.c plot.h setshow.h $(BIN)$(CC) -DHELPFILE=\"$(HELPFILE)\" @&&! $(CFLAGS) ! show.c specfun.obj: specfun.c standard.obj: standard.c plot.h stdfn.obj: stdfn.c stdfn.h interpol.obj: interpol.c plot.h setshow.h term.obj: term.c term.h plot.h set.c show.c bitmap.h $(CSOURCE5) $(CSOURCE6) $(CSOURCE7) win\wgnuplib.h $(BIN)$(CC) @&&! $(CFLAGS) ! $(TERMFLAGS) -Iterm -I. term.c util.obj: util.c plot.h util3d.obj: util3d.c plot.h setshow.h version.obj: version.c winmain.obj: win\winmain.c win\wgnuplib.h win\wtext.h plot.h $(BIN)$(CC) -DHELPFILE=\"$(HELPFILE)\" @&&! $(CFLAGS) ! win\winmain.c wgnuplot.mnu: win\wgnuplot.mnu copy win\wgnuplot.mnu wgnuplot.mnu # different compiler options for DLL's */ !if $(WIN32) DLLCC = $(BIN)$(CC) -DWIN32 -c -M -y -v -WE -I$(TC)\include -Iwin !else DLLCC = $(BIN)$(CC) -c -WD -ms! -w-par -f -M -y -v -w -N -I$(TC)\include -Iwin !endif wgnuplot.lib: wgnuplot.dll $(BIN)implib wgnuplot.lib wgnuplot.dll wgnuplot.dll: $(DLLOBJS) win/wgnuplib.def win/wgnuplib.rc $(BIN)tlink /c /n /Twd /L$(TC)\lib /m /s /v /l @&&! c0ds + wgnuplib wtext wmenu wpause wgraph wprinter, + wgnuplot.dll, + wgnuplib.map, + import mathws cws, + win\wgnuplib.def ! $(BIN)brc -30 -i$(TC)\include -t win\wgnuplib.rc wgnuplot.dll wgnuplib.obj: win/wgnuplib.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wgnuplib.c wmenu.obj: win/wmenu.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wmenu.c wtext.obj: win/wtext.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wtext.c wpause.obj: win/wpause.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wpause.c wprinter.obj: win/wprinter.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wprinter.c wgraph.obj: win/wgraph.c win/wgnuplib.h win/wcommon.h win/wresourc.h $(DLLCC) win/wgraph.c # convert gnuplot.doc to gnuplot.rtf $(HELPFILE): win\gnuplot.rtf $(BIN)hc win\wgnuplot.hpj win\gnuplot.rtf: doc2rtf.exe docs\gnuplot.doc win\wgnuplot.hpj doc2rtf docs\gnuplot.doc win\gnuplot.rtf doc2rtf.exe: docs\doc2rtf.c docs\termdoc.c docs\xref.c $(CSOURCE5) $(CSOURCE6) $(CSOURCE7) $(BIN)$(CCAUX) -edoc2rtf.exe @&&! -D_Windows -w-pro $(CAUXFLAGS) -I. -Iterm -Idocs ! docs\doc2rtf.c docs\termdoc.c docs\xref.c # make binary demo files demo\bf_test.exe: bf_test.c dbinary.obj dalloc.obj $(BIN)$(CCAUX) -edemo\bf_test.exe @&&! $(CAUXFLAGS) -L$(TC)\lib ! bf_test.c dbinary.obj dalloc.obj cd demo bf_test cd .. dalloc.obj: alloc.c $(BIN)$(CCAUX) -c @&&! $(CAUXFLAGS) ! -odalloc.obj alloc.c dbinary.obj: binary.c $(BIN)$(CCAUX) -c @&&! $(CAUXFLAGS) ! -odbinary.obj binary.c # clean up temporary files clean: del *.obj del wgnuplot.map del win\wgnuplot.res del wgnupl32.map del wgnupl32.res del win\gnuplot.rtf del doc2rtf.map del doc2rtf.exe del win\wgnuplib.res del wgnuplib.map del wgnuplot.lib del demo\bf_test.exe realclean: veryclean veryclean: clean del wgnuplot.exe del wgnuplot.hlp -attrib -h wgnuplot.gid del wgnuplot.gid del wgnuplot.mnu del wgnuplot.dll del wgnupl32.exe del demo\binary1 del demo\binary2 del demo\binary3