[comp.sources.atari.st] v01i008: mkmf for Absoft Fortran

koreth@ssyx.ucsc.edu (Steven Grimm) (04/05/88)

Submitted-by: uunet!mcvax!nikhefh.hep.nl!t19 (Geert J v Oldenborgh)
Posting-number: Volume 1, Issue 8
Archive-name: mkmfor

[I don't have Fortran, so I can't test this.  It does unarc properly on
 the ST, though I had to remove a zero-length file from the archive, which
 gave arc on the Sun some problems. -sg]

Here is a little mkmf for Absoft Fortran.  It hacks around the 
128-character limit on the argument string and knows the difference
between the main program and subroutines.  It does NOT check for
include statements, but I find it very useful.  It is written in
Fortran and will probably confirm your worst fears about Fortran 
programmers, but it works.  Included are:

mkmfor.for	Fortran source code
mkmf.sh   	a shellscript to call mkmfor.tos
makefile.tpl	an example template
makerule.def	the default rules for the GPshell make, otherwise 
		include in makefile.tpl
make.sh  	a useful way to call make

This has not yet extensively tested - I don't use block data and 
I only use the GPshell and its make.

Good luck with it,
						Geert Jan
	 

------------ (cut here) -----------
begin 644 mkmfor.arc
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
0_J3.V'(PJ93DLZ*R@0@:`)HF
`
end