fixincl now run at every stage?

Zack Weinberg zack@wolery.cumb.org
Mon Jan 31 21:09:00 GMT 2000


On Mon, Jan 31, 2000 at 10:16:33PM -0500, Kaveh R. Ghazi wrote:
>  > From: Jeffrey A Law <law@cygnus.com>
>  > 
>  >   In message <200001311838.NAA12263@caip.rutgers.edu>you write:
>  >   > 
>  >   > Scanning recent Makefile.in changes, I'm going to hazard a
>  >   > guess that this was the culprit:
>  >   > 
>  >   >  > 2000-01-20  Zack Weinberg  <zack@wolery.cumb.org>
>  >   >  >  
>  >   >  >         * Makefile.in (fixinc.sh): Depend on specs.
>  >   > 
>  >   > Because "specs" is part of $(STAGESTUFF), We move "specs"
>  >   > into the stageN dir between stages so it gets rebuilt.  Then
>  >   > fixinc.sh gets rebuilt, which triggers the stmp-fixinc
>  >   > target, which reruns fixinc.sh at every stage.
...
>  > libgcc does need to get rebuilt at each stage since it can
>  > contain langauge specific stuff which wouldn't have been built
>  > during stage1.
>  > 
>  > I'm not sure how best to address this problem.
>  > 
>  > jeff
...
> 	I think this patch will do the trick.  It uses the same hack
> as elsewhere to build something once even though its dependencies are
> rebuilt in every stage.  Worked for me on i686-pc-linux-gnu where it
> returns the behavior to normal.  (I.e. fixincl only at stage1 and
> libgcc.a only at stage1 and stage2, not stage3.)
> 
> Okay to install?

Looks sane to me.  We probably want to rebuild libgcc in stage 3, but
let's fix that separately.

I had a much more complicated fix which got bogged down in the
details.  I think this makefile is actually worse than glibc's
Makerules, which is an achievement.

zw


More information about the Gcc-patches mailing list