[comp.sources.d] anyone want to redesign make?

jik@athena.mit.edu (Jonathan I. Kamens) (04/21/91)

  (Note cross-post and Followup-To.)

In article <1991Apr20.171401.16032@leland.Stanford.EDU> fangchin@elaine54.Stanford.EDU (Chin Fang) writes:

   Handling large project with src scattered all over the places has been a 
   problem in the MIT Athena Project,

"MIT Project Athena," not "the MIT Athena Project." :-)

   and one solution proposed and now heavily
   used is the imake(n) utility (should I put it in imake(1)?).

Yes.  One of the most important features of what Project Athena has
done is that since we support several different platforms, our source
code must compile on all of those platforms.  The same Makefile can't
be used on Multiple platforms, and the solution we ended up using is
Imake.

I suspect that the first big use of Imake was the X Consortium's --
The sources distributed by the Consortium (which, by the way, is now
separate from Project Athena, although X started out at Athena) are
completely Imake-based, and you have to build Imake and use it to
build the X distribution.  Since X started using it, Athena has
distributed the Kerberos, Zephyr and OLC packages using Imake too.

Imake does solve many of the problems in make.  However, in my opinion
it is not the optimal solution.

   The learning
   curve is steep

Yup.  This is one reason I'm not convinced it's the optimal solution.
What I've discovered is that the huge Imake template and rules files
that generally come with a distribution are very daunting and scare
people away from learning it.  However, when people realize that they
don't have to understand how all the rules files work, just how to
pick the right rules in their Imakefiles, things suddenly get much
easier.

   but it DOES do what's designed to.

Yes.  Unfortunately, I don't think it's designed to solve *all* of the
problems with make that have been mentioned here.

Jonathan Kamens			              USnail:
MIT Project Athena				11 Ashford Terrace
jik@Athena.MIT.EDU				Allston, MA  02134
Office: 617-253-8085			      Home: 617-782-0710

inb@creare.UUCP (Ian Brown) (04/23/91)

Speaking of Imake - would it be possible for someone to send me a copy?  (Due
to the way we connect into the USENET we can't FTP from here.)  Thanx in
advance.

bd@hpopd.pwd.hp.com (Bob Desinger) (04/25/91)

> However, when people realize that they
> don't have to understand how all the rules files work, just how to
> pick the right rules in their Imakefiles, things suddenly get much
> easier.

Where can I read more about how to pick the right rules?  Most of the
serious software I've seen says something to the effect of "go find
some Imakefiles and choose from those."  Is there a description
somewhere?  (Um, I can't qualify config/Imake.rules as "description"
because it's unparseable by mere mortals who want to spend less than
30 minutes trying to figure out how to write an Imakefile.)

bob desinger		bd@sde.HP.COM		uunet!hplabs!hp-ses!bd