boostrap target
Ian Lepore
ian at freebsd.org
Tue Oct 6 14:19:20 UTC 2015
On Mon, 2015-10-05 at 21:59 -0700, Rui Paulo wrote:
> On Mon, 2015-10-05 at 20:00 -0600, Ian Lepore wrote:
> > I decided the "beforedepend: bootstrap" attempt at a fix was wrong,
> > because it led to always using the precompiled/processed versions of
> > the
> > generated files on every pass (boostrap tools, world, crossbuilding),
> > and I think that wasn't the intention. I discovered (by accident,
> > actually) that there was no need to run the bootstap target at all as
> > long as m4 got built before lex during the bootstrap-tools stage, so
> > that's the fix I applied, and it was sufficient to build current and
> > stable-10 on a stable-8 build host.
>
> Well, I thought that was what jkim added in 2013. Is your
> BOOTSTRAPPING variable set correctly?
>
> diff --git a/Makefile.inc1 b/Makefile.inc1
> index 1e58f47..f0649ef 100644
> --- a/Makefile.inc1
> +++ b/Makefile.inc1
> @@ -1206,6 +1206,10 @@ _sed= usr.bin/sed
> _lex= usr.bin/lex
> .endif
>
> +.if ${BOOTSTRAPPING} < 1000002
> +_m4= usr.bin/m4
> +.endif
> +
> .if ${BOOTSTRAPPING} < 1000013
> _yacc= lib/liby \
> usr.bin/yacc
> @@ -1283,6 +1287,7 @@ bootstrap-tools:
> usr.bin/rpcgen \
> ${_sed} \
> ${_yacc} \
> + ${_m4} \
> ${_lex} \
> lib/libmd \
> usr.bin/xinstall \
>
This was necessary, but not sufficient without the dependency to ensure
m4 is built before lex while parallel-building. It may be that it was
sufficient in 2013, I can't remember when we added the increased
parallelism in the bootstrap-tools stage.
-- Ian
> >
> > I suppose at this point the bootstrap target, and all the pre
> > -generated
> > files it copies, could be deleted. Unless they're serving some other
> > purpose I'm not aware of, like maybe some folks have a need to run
> > that
> > target manually.
>
> Looking again, all the GENFILES are generated by the bootstrap target
> based on the rule init$f -> $f.
>
> However, as you say it probably should be deleted because there's no
> difference between init$f and $f.
>
More information about the freebsd-hackers
mailing list