Meta mode toolchain bootstrapping [was Re: FreeBSD targets/ out-of-date]
Simon J. Gerraty
sjg at juniper.net
Fri Nov 13 19:55:06 UTC 2015
Bryan Drewery <bdrewery at FreeBSD.org> wrote:
> > WITH_META_FILES should give you improvements already in that regard.
>
> Yes, it's a step. We'll need cookies in a lot of places too. I wish
> WITH_META_MODE had been WITH_META_BUILD or WITH_DIRDEPS_BUILD so I could
WITH_DIRDEPS_BUILD would be more accurate.
Its not too late to rename/add it.
> check for "META_MODE" in the buildworld world and for discussion sake.
> It seems I can use ${.MAKE.MODE:M*meta*} but that :U is needed in all
> the uses. I'm not sure yet if :U really is needed. We have some
> ${MK_META_MODE} checks now around some cookies that would need to change
> for what I'm planning.
I think I mentioned the otherday of having something like:
.if ${MK_META_MODE} == "yes"
# we can safely use cookies to avoid always
# re-running targets.
META_COOKIE_TOUCH= touch ${COOKIE.${.TARGET}:U${.TARGET}}
.else
META_COOKIE_TOUCH=
.endif
in meta.sys.mk so you could just add ${META_COOKIE_TOUCH}
to the end of suitable targets.
> > Indeed. As I say, NetBSD have this reasonably sorted.
> > But of course they have 2k line shell script driving a lot of it ;-)
>
> Yes the NetBSD build, behavior wise, really impresses me.
I prefer building it in meta mode though ;-)
More information about the freebsd-toolchain
mailing list