Date: Wed, 01 Feb 2006 11:55:24 -0700 (MST) From: Warner Losh <imp@bsdimp.com> To: bakul@BitBlocks.com Cc: src-committers@freebsd.org, cvs-src@freebsd.org, cvs-all@freebsd.org, stefanf@freebsd.org, ru@freebsd.org, sgk@troutmask.apl.washington.edu, kris@obsecurity.org, stefan@fafoe.narf.at Subject: Re: cvs commit: src/sys/sys cdefs.h src/include nl_types.h stdio.h Message-ID: <20060201.115524.104088017.imp@bsdimp.com> In-Reply-To: <200602011851.k11Ip8VO071628@gate.bitblocks.com> References: <20060201183036.GA30206@xor.obsecurity.org> <200602011851.k11Ip8VO071628@gate.bitblocks.com>
next in thread | previous in thread | raw e-mail | index | archive | help
From: Bakul Shah <bakul@bitblocks.com> Subject: Re: cvs commit: src/sys/sys cdefs.h src/include nl_types.h stdio.h Date: Wed, 01 Feb 2006 10:51:08 -0800 > > On Wed, Feb 01, 2006 at 10:25:28AM -0800, Bakul Shah wrote: > > > > I'm actually surprised that make includes doesn't install the sys > > > > directory as well, which would pick up the new sys/cdefs.h. Does > > > > 'make -f Makefile.inc _includes' also exhibit the same problem? > > >=20 > > > The bigger question is *why* does buildworld depend on > > > /usr/include. > > > > You have to compile native bootstrap tools (i.e. against /usr/include) > > before you can build the rest of the world with "internal" headers. > > If you don't do this bootstrap step, your buildworld won't work in all > > upgrade cases. > > But look at this error message Steve Kargl posted: > > ===> games/fortune/strfile (obj,depend,all,install) > cc -O2 -fno-strict-aliasing -pipe -I/usr/obj/usr/src/tmp/legacy/usr/include -c > /usr/src/games/fortune/strfile/strfile.c > In file included from /usr/src/games/fortune/strfile/strfile.c:53: > /usr/include/stdio.h:331: error: syntax error before "__format_arg" > > Is /usr/games/fortune is a build tool? Even if /usr/includes > is not consistent due to make includes, surely fortune > shouldn't care since it includes only the "internal" headers? > Internal meaning the ones in the target system. > > BTW, I have seen similar things in the past few weeks while > doing buildworld and the only way to fix this was to do make > includes. > > Anyway, if it is only build tools that rely on host includes, > why do you need make includes at all? If you do, that says > that the build tools are relying on new stuff that they are > supposed to help build and install. > > More generally don't the build tools need to have an even > more stable environment? The problem is that Steve Kargl had an pooched /usr/include. He updated part of it, but not all of it, evidence suggests. In that cross threaded environment, mismatches between different parts of the tree can be bad. strfile is a build tool. It is used to build fortune and must be built using the host's build environment. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060201.115524.104088017.imp>