1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375
|
# Makefile for PGPLOT use with Microsoft Fortran AFT 91-Jun-27
#
# This generates the PGPLOT binary files (libraries and demos) in the
# current default directory (which need not be the source directory).
#
# Directory containing PGPLOT source code
PGTOP=\pgplot
SRCDIR=$(PGTOP)\src
# Directory containing demo programs
DEMODIR=$(PGTOP)\examples
# Directory containing device drivers
DRIVDIR=$(PGTOP)\DRIVERS
# Directory containing font stuff
FONTDIR=$(PGTOP)\fonts
# Directory containing system-dependent code
SYSDIR=$(PGTOP)\sys_dos
# Directory to put the libraries
LIBDIR=.
# Fortran compiler
FCOMPL=FL
FFLAGC=/Gt /FPc
# C compiler
CCOMPL=
CFLAGC=
# Libraries required for linking
LIBS = .\PGPLOT+GRAPHICS
# Rules for compiling Fortran
.SUFFIXES: .F .OBJ
{$(SRCDIR)}.F.OBJ:
COPY $(SRCDIR)\$*.F $*.FOR
$(FCOMPL) /c $(FFLAGC) $*.FOR
DEL $*.FOR
{$(DRIVDIR)}.F.OBJ:
COPY $(DRIVDIR)\$*.F $*.FOR
$(FCOMPL) /c $(FFLAGC) $*.FOR
DEL $*.FOR
{$(SYSDIR)}.F.OBJ:
COPY $(SYSDIR)\$*.F $*.FOR
$(FCOMPL) /c $(FFLAGC) $*.FOR
DEL $*.FOR
all: PGPLOT.LIB GRFONT.DAT PROG
#-----------------------------------------------------------------------
# Routine lists:
# PG_ROUTINES: basic PGPLOT routines (Fortran-77)
# PG_NON_STANDARD: non-Fortran-77 aliases for basic routines
# GR_ROUTINES: support routines, not called directly by applications
# (Fortran-77)
# SYSTEM_ROUTINES: potentially non-portable routines, usually
# operating-system dependent
#-----------------------------------------------------------------------
PGPLOT.LIB:: pgplot.inc grpckg1.inc
REM
PGPLOT.LIB:: pgask.obj pgarro.obj pgband.obj pgbbuf.obj pgbeg.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgbin.obj pgbox.obj pgbox1.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgcirc.obj pgcl.obj pgclos.obj pgcn01.obj pgcnsc.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgconb.obj pgconl.obj pgcons.obj pgcont.obj pgconx.obj pgcp.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgctab.obj pgcurs.obj pgdraw.obj pgebuf.obj pgend.obj pgenv.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgeras.obj pgerrb.obj pgerrx.obj pgerry.obj pgetxt.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgfunt.obj pgfunx.obj pgfuny.obj pggray.obj pghi2d.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pghis1.obj pghist.obj pghtch.obj pgiden.obj pgimag.obj pginit.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pglab.obj pglcur.obj pgldev.obj pglen.obj pgline.obj pgmove.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgmtxt.obj pgncur.obj pgnoto.obj pgnpl.obj pgnumb.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgolin.obj pgopen.obj pgpage.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgpap.obj pgpixl.obj pgpnts.obj pgpoly.obj pgpt.obj pgptxt.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgqah.obj pgqcf.obj pgqch.obj pgqci.obj pgqcir.obj pgqcol.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgqcr.obj pgqcs.obj pgqfs.obj pgqhs.obj pgqinf.obj pgqls.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgqlw.obj pgqpos.obj pgqtbg.obj pgqtxt.obj pgqvp.obj pgqvsz.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgqwin.obj pgrect.obj pgrnd.obj pgrnge.obj pgsah.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgsave.obj pgscf.obj pgsch.obj pgsci.obj pgslct.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgscr.obj pgscrn.obj pgsfs.obj pgshls.obj pgshs.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgsls.obj pgslw.obj pgstbg.obj pgsubp.obj pgsvp.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgswin.obj pgtbox.obj pgtext.obj pgupdt.obj pgvect.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgvsiz.obj pgvstd.obj pgvw.obj pgwedg.obj pgwnad.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grdot1.obj pgconf.obj pgerr1.obj pgpt1.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgqclp.obj pgqdt.obj pgqndt.obj pgsclp.obj pgtikl.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgadvanc.obj pgbegin.obj pgcurse.obj pglabel.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgmtext.obj pgncurse.obj pgpaper.obj pgpoint.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgptext.obj pgvport.obj pgvsize.obj pgvstand.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: pgwindow.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grarea.obj grbpic.obj grchsz.obj grclip.obj grclos.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grclpl.obj grctoi.obj grcurs.obj grdot0.obj grdtyp.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grepic.obj gresc.obj gretxt.obj grfa.obj grfao.obj grgfil.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grgray.obj grimg0.obj grimg1.obj grimg2.obj grimg3.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grinit.obj grldev.obj grlen.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grlin0.obj grlin1.obj grlin2.obj grlin3.obj grlina.obj
LIB PGPLOT -+$?;
PGPLOT.LIB::grmcur.obj grmker.obj grmova.obj grmsg.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: gropen.obj grpage.obj grpars.obj grpixl.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grpocl.obj grprom.obj grpxps.obj grqcap.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grqci.obj grqcr.obj grqdev.obj grqdt.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grqfnt.obj grqcol.obj grqls.obj grqlw.obj grqpos.obj grqtyp.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grqdev.obj grqtxt.obj grquit.obj grrect.obj grscr.obj grskpb.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grslct.obj grsetc.obj grsci.obj grsfnt.obj grsls.obj grslw.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grsets.obj grsize.obj grsyds.obj grsymk.obj grsyxd.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grterm.obj grtext.obj grtoup.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grtrim.obj grtrn0.obj grtxy0.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grvct0.obj grwarn.obj grxhls.obj grxrgb.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grpxpo.obj grpxpx.obj grpxre.obj grrec0.obj gritoc.obj
LIB PGPLOT -+$?;
# These files come from sys_dos directory
PGPLOT.LIB:: grexec.obj msdriv.obj grdate.obj grflun.obj grgcom.obj
LIB PGPLOT -+$?;
PGPLOT.LIB:: grgenv.obj grglun.obj groptx.obj grtrml.obj grtter.obj gruser.obj
LIB PGPLOT -+$?;
# These files are found in pgplot\sys
PGPLOT.LIB:: grlgtr.obj grsy00.obj
LIB PGPLOT -+$?;
grlgtr.obj: $(PGTOP)\sys\grlgtr.f
COPY $(PGTOP)\sys\grlgtr.F grlgtr.FOR
$(FCOMPL) /c $(FFLAGC) grlgtr.FOR
DEL grlgtr.FOR
grsy00.obj: $(PGTOP)\sys\grsy00.f
COPY $(PGTOP)\sys\grsy00.F grsy00.FOR
$(FCOMPL) /c $(FFLAGC) grsy00.FOR
DEL grsy00.FOR
#-----------------------------------------------------------------------
# Device drivers
#-----------------------------------------------------------------------
LJDRIVER=ljdriv.obj grlj00.obj
LLDRIVER=lldriv.obj grlj00.obj
NUDRIVER=nudriv.obj
PSDRIVER=psdriv.obj
QMDRIVER=qmdriv.obj grqm00.obj
QPDRIVER=qpdriv.obj grqm00.obj
# Compile drivers that compile under Microsoft Fortran.
# Not all these drivers have actually been tested.
PGPLOT.LIB:: $(NUDRIVER)
LIB PGPLOT -+$(NUDRIVER);
PGPLOT.LIB:: $(PSDRIVER)
LIB PGPLOT -+$(PSDRIVER);
#
# Note that if you want to build a sharable library including these routines,
# specifically grdat2.o, you will have to add grdat2.o to the DATAOBJS list.
#
OBSOLETE_ROUTINES=\
grchar.obj grchr0.obj grdat2.obj grgtc0.obj grmark.obj grinqli.obj\
grinqpen.obj\
grsetli.obj grsetpen.obj grlinr.obj grmovr.obj grtran.obj grvect.obj\
pgsetc.obj pgsize.obj grinqfon.obj grsetfon.obj
#-----------------------------------------------------------------------
# Target "lib" is used to built the PGPLOT subroutiune library.
# libpgplot.a is the primary PGPLOT library.
#-----------------------------------------------------------------------
lib : PGPLOT.LIB
#-----------------------------------------------------------------------
# libpgobs.a contains obsolete routines used by some programs
#-----------------------------------------------------------------------
PGOBS.LIB : $(OBSOLETE_ROUTINES)
LIB PGOBS -+$?;
#-----------------------------------------------------------------------
# Target "prog" is used to make the demo programs. They can also be made
# individually.
#-----------------------------------------------------------------------
# List of demo programs
DEMOS = pgdemo1.exe pgdemo2.exe pgdemo3.exe pgdemo4.exe pgdemo5.exe \
pgdemo6.exe pgdemo7.exe pgdemo8.exe pgdemo9.exe pgdemo10.exe \
pgdemo11.exe pgdemo12.exe pgdemo13.exe pgdemo14.exe pgdemo15.exe \
pgdemo16.exe pgdemo17.exe
prog: $(DEMOS)
pgdemo1.exe: $(DEMODIR)\pgdemo1.f
COPY $(DEMODIR)\pgdemo1.f pgdemo1.for
$(FCOMPL) /c $(FFLAGC) pgdemo1.FOR
LINK /SEGMENTS:256 pgdemo1.obj,,NUL,$(LIBS);
DEL pgdemo1.for
pgdemo2.exe: $(DEMODIR)\pgdemo2.f
COPY $(DEMODIR)\pgdemo2.f pgdemo2.for
$(FCOMPL) /c $(FFLAGC) pgdemo2.FOR
LINK /SEGMENTS:256 pgdemo2.obj,,NUL,$(LIBS);
DEL pgdemo2.for
pgdemo3.exe: $(DEMODIR)\pgdemo3.f
COPY $(DEMODIR)\pgdemo3.f pgdemo3.for
$(FCOMPL) /c $(FFLAGC) pgdemo3.FOR
LINK /SEGMENTS:256 pgdemo3.obj,,NUL,$(LIBS);
DEL pgdemo3.for
pgdemo4.exe: $(DEMODIR)\pgdemo4.f
COPY $(DEMODIR)\pgdemo4.f pgdemo4.for
$(FCOMPL) /c $(FFLAGC) pgdemo4.FOR
LINK /SEGMENTS:256 pgdemo4.obj,,NUL,$(LIBS);
DEL pgdemo4.for
pgdemo5.exe: $(DEMODIR)\pgdemo5.f
COPY $(DEMODIR)\pgdemo5.f pgdemo5.for
$(FCOMPL) /c $(FFLAGC) pgdemo5.FOR
LINK /SEGMENTS:256 pgdemo5.obj,,NUL,$(LIBS);
DEL pgdemo5.for
pgdemo6.exe: $(DEMODIR)\pgdemo6.f
COPY $(DEMODIR)\pgdemo6.f pgdemo6.for
$(FCOMPL) /c $(FFLAGC) pgdemo6.FOR
LINK /SEGMENTS:256 pgdemo6.obj,,NUL,$(LIBS);
DEL pgdemo6.for
pgdemo7.exe: $(DEMODIR)\pgdemo7.f
COPY $(DEMODIR)\pgdemo7.f pgdemo7.for
$(FCOMPL) /c $(FFLAGC) pgdemo7.FOR
LINK /SEGMENTS:256 pgdemo7.obj,,NUL,$(LIBS);
DEL pgdemo7.for
pgdemo8.exe: $(DEMODIR)\pgdemo8.f
COPY $(DEMODIR)\pgdemo8.f pgdemo8.for
$(FCOMPL) /c $(FFLAGC) pgdemo8.FOR
LINK /SEGMENTS:256 pgdemo8.obj,,NUL,$(LIBS);
DEL pgdemo8.for
pgdemo9.exe: $(DEMODIR)\pgdemo9.f
COPY $(DEMODIR)\pgdemo9.f pgdemo9.for
$(FCOMPL) /c $(FFLAGC) pgdemo9.FOR
LINK /SEGMENTS:256 pgdemo9.obj,,NUL,$(LIBS);
DEL pgdemo9.for
pgdemo10.exe: $(DEMODIR)\pgdemo10.f
COPY $(DEMODIR)\pgdemo10.f pgdemo10.for
$(FCOMPL) /c $(FFLAGC) pgdemo10.FOR
LINK /SEGMENTS:256 pgdemo10.obj,,NUL,$(LIBS);
DEL pgdemo10.for
pgdemo11.exe: $(DEMODIR)\pgdemo11.f
COPY $(DEMODIR)\pgdemo11.f pgdemo11.for
$(FCOMPL) /c $(FFLAGC) pgdemo11.FOR
LINK /SEGMENTS:256 pgdemo11.obj,,NUL,$(LIBS);
DEL pgdemo11.for
pgdemo12.exe: $(DEMODIR)\pgdemo12.f
COPY $(DEMODIR)\pgdemo12.f pgdemo12.for
$(FCOMPL) /c $(FFLAGC) pgdemo12.FOR
LINK /SEGMENTS:256 pgdemo12.obj,,NUL,$(LIBS);
DEL pgdemo12.for
pgdemo13.exe: $(DEMODIR)\pgdemo13.f
COPY $(DEMODIR)\pgdemo13.f pgdemo13.for
$(FCOMPL) /c $(FFLAGC) pgdemo13.FOR
LINK /SEGMENTS:256 pgdemo13.obj,,NUL,$(LIBS);
DEL pgdemo13.for
pgdemo14.exe: $(DEMODIR)\pgdemo14.f
COPY $(DEMODIR)\pgdemo14.f pgdemo14.for
$(FCOMPL) /c $(FFLAGC) pgdemo14.FOR
LINK /SEGMENTS:256 pgdemo14.obj,,NUL,$(LIBS);
DEL pgdemo14.for
pgdemo15.exe: $(DEMODIR)\pgdemo15.f
COPY $(DEMODIR)\pgdemo15.f pgdemo15.for
$(FCOMPL) /c $(FFLAGC) pgdemo15.FOR
LINK /SEGMENTS:256 pgdemo15.obj,,NUL,$(LIBS);
DEL pgdemo15.for
pgdemo16.exe: $(DEMODIR)\pgdemo16.f
COPY $(DEMODIR)\pgdemo16.f pgdemo16.for
$(FCOMPL) /c $(FFLAGC) pgdemo16.FOR
LINK /SEGMENTS:256 pgdemo16.obj,,NUL,$(LIBS);
DEL pgdemo16.for
pgdemo17.exe: $(DEMODIR)\pgdemo17.f
COPY $(DEMODIR)\pgdemo17.f pgdemo17.for
$(FCOMPL) /c $(FFLAGC) pgdemo17.FOR
LINK /SEGMENTS:256 pgdemo17.obj,,NUL,$(LIBS);
DEL pgdemo17.for
#-----------------------------------------------------------------------
# Target "grfont.dat" is the binary font file.
# This is created from grfont.txt with the "pgpack" program.
# (a) compile the `pgpack' program; then
# (b) run `pgpack' to convert the ASCII version of the font file
# (grfont.txt) into the binary version (grfont.dat). When executed,
# `pgpack' should report:
# Characters defined: 996
# Array cells used: 26732
#-----------------------------------------------------------------------
pgpack.exe: $(FONTDIR)\pgpack.f
COPY $(FONTDIR)\pgpack.F pgpack.FOR
$(FCOMPL) $(FFLAGC) pgpack.FOR
DEL pgpack.FOR
grfont.dat: $(FONTDIR)\grfont.txt pgpack.exe
DEL grfont.dat
pgpack <$(FONTDIR)\grfont.txt
#-----------------------------------------------------------------------
# Target "install" is required for Figaro.
#-----------------------------------------------------------------------
install:
#-----------------------------------------------------------------------
# Target "clean" is used to remove all the intermediate files.
#-----------------------------------------------------------------------
clean :
DEL *.OBJ
DEL *.FOR
DEL PGPLOT.BAK
DEL PGPACK.EXE
DEL PGPLOT.INC
DEL GRPCKG1.INC
SPOTLESS: CLEAN
DEL *.EXE
DEL GRFONT.DAT
DEL PGPLOT.LIB
# Include file dependencies:
# The following PG routines reference `pgplot.inc'
grgray.o \
pgask.o pgbbuf.o pgbeg.o pgbin.o pgbox.o pgcont.o pgcp.o \
pgcurs.o pgebuf.o pgend.o pgerrb.o pgerrx.o pgerry.o pggray.o pghi2d.o \
pghist.o pgiden.o pglcur.o pglen.o pgmtxt.o pgncur.o pgolin.o \
pgpage.o pgpap.o pgpixl.o pgpoly.o pgpt.o pgptxt.o pgqch.o pgqfs.o \
pgqinf.o pgqvp.o pgqwin.o pgrect.o pgsch.o pgsfs.o pgsvp.o \
pgswin.o pgupdt.o pgvsiz.o pgvstd.o pgvw.o pgwnad.o: $(SRC)/pgplot.inc
# The following GR routines reference `grpckg.inc'
grarea.o grbpic.o grchr0.o grchsz.o grclos.o grclpl.o grcurs.o \
grdot0.o grdtyp.o gresc.o gretxt.o grfa.o grgray.o grgrgr.o \
grldev.o grlen.o grlin0.o grlin1.o grlin2.o grlin3.o \
grlina.o grlinr.o grmker.o grmova.o grmovr.o gropen.o grpage.o \
grpixl.o grpxpo.o grpxpx.o \
grqci.o grqcol.o grqdev.o grqdt.o grqfnt.o grqls.o \
grqlw.o grqpos.o grqtyp.o grrec0.o grrect.o \
grsci.o grscr.o grsetc.o grsetli.o grsets.o grsfnt.o grsize.o \
grslct.o grsls.o grslw.o grterm.o grtext.o grtrn0.o grtxy0.o \
grvct0.o: $(SRCDIR)/grpckg1.inc
pgplot.inc: $(SRCDIR)\pgplot.inc
COPY $(SRCDIR)\pgplot.inc .
grpckg1.inc: $(SRCDIR)\grpckg1.inc
COPY $(SRCDIR)\grpckg1.inc .
|