Well, here's why the ansi2knr stuff didn't work.
Curious that I didn't remember this.  Or run across it before.

I think it must be because we've moved a lot more of the variables
into the *.am files.  In the past we generated a lot of variables in
automake itself.  Automake put all the variables before all the
targets, whereas the new *.am reader does not.

We probably ought to fix the new reader to do this.

Tom
------- Start of forwarded message -------
From: "Zack Weinberg" <[EMAIL PROTECTED]>
Newsgroups: cygnus.egcs.patches
Subject: Re: make -j patch -- part 1 all targets [gcc/Makefile.in]
Date: Wed, 23 May 2001 15:48:24 -0700
Organization: None provided
Message-ID: <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Cc: [EMAIL PROTECTED], [EMAIL PROTECTED]
To: DJ Delorie <[EMAIL PROTECTED]>

On Wed, May 23, 2001 at 05:53:59PM -0400, DJ Delorie wrote:
> 
> > So I moved the *_H definitions above the where the target/host
> > overrides are included.
> 
> Make does not process definitions in order that way.  It doesn't
> matter where they are in the Makefile relative to each other, so I
> can't see how this patch fixes anything.

In dependency lines, it does.  Compare

FOO = bar
foo: $(FOO)
        @echo foo

and

foo: $(FOO)
        @echo foo
FOO = bar

$ make -f test.mk
make: *** No rule to make target `bar', needed by `foo'.  Stop.
$ make -f test2.mk
foo



-- 
zw   The beginning of almost every story is actually a bone, something with
     which to court the dog, which may bring you closer to the lady.
        -- Amos Oz, _The Story Begins_
------- End of forwarded message -------

Reply via email to