2 # $Id: makefile.msw,v 1.5 1999/12/01 22:07:56 lhecking Exp $
4 # GNUPLOT Makefile for Microsoft C Version 7.0 Windows Version
5 # and Microsoft Program Maintenance Utility Version 1.20
8 # where to place gnuplot.gih helpfile
9 HELPFILE = wgnuplot.hlp
13 # /AL means large memory model (large code, large data)
14 # /DLITE means remove hiddenline capability
15 # /Gt128 means make data object > 128 FAR
16 # /W1 means lower warning level
17 # /I means extra include directory
18 # /GD means windows DLL
19 # /GA means windows application
20 # /Fm means produce link map
21 # /Od means suppress optimizations (esp. for debug)
22 # /Zi mean prepare for codeview
23 CFLAGS = /c /ALw /FmGNUPLOT /GA /Gt128 /W1 /D__MSC__ /DREADLINE /DHAVE_STRNICMP /DNO_GIH /I$(TOP) #/Zi #/Od
24 DLLCC = cl /c /Asnw /FmGNUPLIB /GD /W1 /D__MSC__ /D__DLL__ /I$(TOP) #/Zi #/Od
26 # see other terminal defines in term.h
29 # /NOE means NO EXTernal Dictionary
30 # /NOI means NO ignore case
31 # /NOD means no default library (or :specified)
32 # /CO prepare for codeview
33 LINKFLAGS = /NOE /NOI /NOD:LLIBCE /ONERROR:NOEXE #/CO
34 DLLLINKFLAGS = /NOE /NOI /NOD /MAP #/CO
36 OBJS = bitmap.obj command.obj contour.obj eval.obj graphics.obj graph3d.obj \
37 internal.obj misc.obj parse.obj plot.obj plot2d.obj plot3d.obj \
38 readline.obj scanner.obj set.obj show.obj specfun.obj standard.obj \
39 stdfn.obj term.obj util.obj version.obj binary.obj winmain.obj \
40 interpol.obj fit.obj matrix.obj datafile.obj alloc.obj variable.obj \
41 save.obj tables.obj unset.obj dynarray.obj time.obj history.obj
43 CSOURCE5 = term\aed.trm term\cgi.trm term\dumb.trm term\dxy.trm \
44 term\eepic.trm term\epson.trm term\fig.trm term\hp26.trm \
45 term\hp2648.trm term\hpgl.trm term\hpljii.trm
46 CSOURCE6 = term\impcodes.h term\imagen.trm term\object.h \
47 term\iris4d.trm term\kyo.trm term\latex.trm term/pbm.trm term\win.trm
48 CSOURCE7 = term\post.trm term\qms.trm term\regis.trm term\sun.trm \
49 term\t410x.trm term\tek.trm term\unixpc.trm term\unixplot.trm \
50 term\v384.trm term\x11.trm
51 CSOURCE8 = contour.c specfun.c binary.c interpol.c
52 WINDOWS = makefile.win makefile.msw README.win win\wcommon.h \
53 win\wgnuplib.c win\wgnuplib.def win\wgnuplib.h win\wgnuplib.rc\
54 win\wgnuplot.def win\wgnuplot.hpj win\wgnuplot.mnu win\wgnuplot.rc \
55 win\wgraph.c win\winmain.c win\wmenu.c win\wpause.c \
56 win\wprinter.c win\wresourc.h win\wtext.c win\wtext.h \
57 win\geticon.c docs\doc2rtf.c term\win.trm
59 default: wgnuplot.exe wgnuplot.dll $(HELPFILE) wgnuplot.mnu demo\bf_test.exe
68 linkopt2.msw: makefile.msw
69 echo winmain+bitmap+command+eval+graphics+ >linkopt2.msw
70 echo graph3d+internal+misc+parse+ >>linkopt2.msw
71 echo plot+plot2d+plot3d+scanner+set+show+specfun+ >>linkopt2.msw
72 echo standard+stdfn+term+util+version+contour+ >>linkopt2.msw
73 echo binary+readline+interpol+ >>linkopt2.msw
74 echo fit+matrix+datafile+alloc >>linkopt2.msw
75 echo wgnuplot,wgnuplot, >>linkopt2.msw
76 echo wgnuplot+libw+llibcew, >>linkopt2.msw
77 echo win\wgnuplot.def >>linkopt2.msw
80 wgnuplot.exe: $(OBJS) win\wgnuplot.def win\wgnuplot.rc winmain.obj wgnuplot.lib linkopt2.msw texticon.ico grpicon.ico
81 link $(LINKFLAGS) @linkopt2.msw
82 rc -30 -k -dMSRC win\wgnuplot.rc wgnuplot.exe
86 pcgraph.obj: pcgraph.asm header.mac lineproc.mac
88 corgraph.obj: corgraph.asm header.mac lineproc.mac
90 hrcgraph.obj: hrcgraph.asm header.mac lineproc.mac
94 bitmap.obj: bitmap.c bitmap.h plot.h
96 command.obj: command.c plot.h setshow.h help.h fit.h
97 cl $(CFLAGS) /DHELPFILE=\"$(HELPFILE)\" command.c
99 contour.obj: contour.c plot.h
101 eval.obj: eval.c plot.h
103 graphics.obj: graphics.c plot.h setshow.h
105 graph3d.obj: graphics.c plot.h setshow.h
107 fit.obj: fit.c fit.h matrix.h plot.h
109 matrix.obj: matrix.c matrix.h fit.h
111 help.obj: help.c plot.h help.h
113 internal.obj: internal.c plot.h
115 misc.obj: misc.c plot.h setshow.h
117 parse.obj: parse.c plot.h
119 plot.obj: plot.c plot.h setshow.h
121 readline.obj: readline.c
123 save.obj: save.c plot.h setshow.h
125 scanner.obj: scanner.c plot.h
127 set.obj: set.c plot.h setshow.h
129 show.obj: show.c plot.h setshow.h
130 cl $(CFLAGS) /DHELPFILE=\"$(HELPFILE)\" show.c
132 standard.obj: standard.c plot.h
134 stdfn.obj: stdfn.c stdfn.h
136 specfun.obj: specfun.c plot.h
138 interpol.obj: interpol.c plot.h setshow.h
140 tables.obj: tables.c plot.h tables.h
142 term.obj: term.c term.h plot.h setshow.h bitmap.h $(CSOURCE5) $(CSOURCE6) $(CSOURCE7)
143 cl $(CFLAGS) $(TERMFLAGS) /Iterm term.c
145 unset.obj: unset.c plot.h setshow.h tables.h
147 util.obj: util.c plot.h
149 variable.obj: variable.c plot.h variable.h
151 version.obj: version.c
153 winmain.obj: win\winmain.c win\wgnuplib.h win\wtext.h plot.h
154 cl $(CFLAGS) /DHELPFILE=\"$(HELPFILE)\" win\winmain.c
156 wgnuplot.mnu: win\wgnuplot.mnu
157 copy win\wgnuplot.mnu wgnuplot.mnu
159 # extract icons from wgnuplot.rc
160 texticon.ico: grpicon.ico
162 grpicon.ico: geticon.exe win\wgnuplot.rc
163 geticon win\wgnuplot.rc
165 geticon.exe: win\geticon.c
166 cl /AS /W1 win\geticon.c
168 # different compiler options for DLL's */
169 DLLOBJS = wgnuplib.obj wtext.obj wmenu.obj wpause.obj wgraph.obj wprinter.obj
171 linkopt1.msw: makefile.msw
172 echo wgnuplib+wtext+wmenu+wpause+wgraph+wprinter > linkopt1.msw
173 echo wgnuplot.dll >> linkopt1.msw
174 echo wgnuplib.map >> linkopt1.msw
175 echo libw+commdlg+shell+sdllcew >> linkopt1.msw
176 echo win\wgnuplib.def >> linkopt1.msw
177 echo ; >> linkopt1.msw
179 wgnuplot.lib: wgnuplot.dll
180 implib wgnuplot.lib wgnuplot.dll
182 wgnuplot.dll: $(DLLOBJS) win/wgnuplib.def win/wgnuplib.rc linkopt1.msw
183 link $(DLLLINKFLAGS) @linkopt1.msw
184 rc -30 -t win\wgnuplib.rc wgnuplot.dll
186 wgnuplib.obj: win/wgnuplib.c win/wgnuplib.h win/wcommon.h win/wresourc.h
187 $(DLLCC) win/wgnuplib.c
189 wmenu.obj: win/wmenu.c win/wgnuplib.h win/wcommon.h win/wresourc.h
192 wtext.obj: win/wtext.c win/wgnuplib.h win/wcommon.h win/wresourc.h
195 wpause.obj: win/wpause.c win/wgnuplib.h win/wcommon.h win/wresourc.h
196 $(DLLCC) win/wpause.c
198 wprinter.obj: win/wprinter.c win/wgnuplib.h win/wcommon.h win/wresourc.h
199 $(DLLCC) win/wprinter.c
201 wgraph.obj: win/wgraph.c win/wgnuplib.h win/wcommon.h win/wresourc.h
202 $(DLLCC) win/wgraph.c
204 # convert gnuplot.doc to gnuplot.rtf
205 $(HELPFILE): doc2rtf.exe docs\gnuplot.doc win\wgnuplot.hpj
206 doc2rtf docs\gnuplot.doc win\gnuplot.rtf
207 hc31 win\wgnuplot.hpj
209 doc2rtf.exe: docs\doc2rtf.c docs\termdoc.c docs\xref.c
210 cl /AS /F 5000 /W1 /Fedoc2rtf.exe docs\doc2rtf.c docs\termdoc.c docs\xref.c
212 #make binary demo files
213 demo\bf_test.exe: bf_test.c dbinary.obj alloc.obj
214 cl /AL /D__MSC__ /F 5000 /W1 /Fedemo\bf_test.exe bf_test.c dbinary.obj alloc.obj
219 dbinary.obj: binary.c
220 cl /c /AL /DPC /D__MSC__ /F 5000 /W1 /Fodbinary.obj binary.c
222 # clean up temporary files