[Gs-devel] gs 7.03 makefiles are broken, again

L. Peter Deutsch ghost at aladdin.com
Tue Oct 23 23:30:36 PDT 2001


> I think that you may have been building the HEAD (7.10 PRE RELEASE) rather
> than 7.03. I see no reference to OP, INT_MAK or UFST in 7.03
> lib.mak. These were probably added as a part of the FAPI check-in.

Thanks.  You're right, I was building 7.10.

> As far as suggestions for how to prevent 'rot', I like running a tool that
> would allow us to use a zero warning tolerance. The tmake.tcl seems to be
> a good solution because it is platform independent. Part of the problem we
> have is that 'make' (or 'nmake') on different platforms runs a lot
> differently.

Good point.  I'm hoping that tmake will help serve as a "lint" for our
makefiles.  Note that tmake -n will do the checking without actually
executing the compiles etc.

I'm considering rewriting tmake from tcl to Python.  Do you (or does anyone)
have opinions about this one way or the other?  I like Python as a language
much better than tcl, and I find it more readable, but it's also a little
more verbose and a bit slower, and also may not come preinstalled on quite
as many systems as tcl.

> One of the other problems is that most unix style makes use the lazy
> assignment rule whereas on other platforms an explicit !ifndef is required
> to allow for command line override of macros. If you have any suggestions
> to help us spot these,

Actually, I was flabbergasted when I learned that one can silently override
any macro definition from the command line.  And tmake currently does not
implement things like !ifndef.  (Remember that tmake is not just a checker,
it actually substitutes for 'make'.)  This is deliberate: it is intended to
implement only the intersection of GNU make, POSIX make, nmake, etc.

I think a separate tool for this check would be a fine idea.  It should be a
less-than-one-page tcl or Python script.  You may have just volunteered to
write it.  :-)

-- 

L. Peter Deutsch     |    Aladdin Enterprises   |  203 Santa Margarita Ave.
ghost at aladdin.com    |  http://www.aladdin.com  |  Menlo Park, CA 94025

	The future of software is at http://www.opensource.org



More information about the gs-devel mailing list