Date: Fri, 10 Oct 1997 15:04:13 -0700 From: "Jordan K. Hubbard" <jkh@time.cdrom.com> To: Warner Losh <imp@village.org> Cc: =?KOI8-R?B?4c7E0sXKIP7F0s7P1w==?= <ache@nagual.pp.ru>, FreeBSD-current <current@FreeBSD.ORG> Subject: Re: make world failed Message-ID: <4455.876521053@time.cdrom.com> In-Reply-To: Your message of "Fri, 10 Oct 1997 15:05:33 MDT." <199710102105.PAA23103@harmony.village.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> Does anybody know why Make started behaving like this? Yeah, it comes from the target which "makes make" during the bootstrap phase in /usr/src/Makefile. Here's the relevant fragment: cd ${.CURDIR}/usr.bin/make && \ ${IBMAKE} -I${.CURDIR}/share/mk -B ${CLEANDIR} ${OBJDIR} depend && .. This unfortunately has problems because (assuming that ${CLEANDIR} = "cleandir" and ${OBJDIR} = "obj" of course) when make first starts up it goes looking for an appropriate shadow obj tree so that it can point the ${.OBJDIR} variable at it. Because there's no obj dir yet, it sets ${.OBJDIR} = ${.CURDIR} as a fall-back. Now the cleandir and obj targets are run and the obj dir *does* get created but it's too late for that invocation of make, which has already made up its mind about that. When the depend runs, it's with the bad ${.OBJDIR} value. Satoshi fixed this by breaking the depend off into its own make invocation, but apparently this had other undesirable side-effects and I think he's still looking at it. Jordan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4455.876521053>