Date: Fri, 21 Aug 1998 12:22:21 +1000 From: Bruce Evans <bde@zeta.org.au> To: cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, jb@FreeBSD.ORG Subject: Re: cvs commit: src/gnu/usr.bin/cc/cc_tools Makefile Message-ID: <199808210222.MAA15510@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
> Modified files: > gnu/usr.bin/cc/cc_tools Makefile > Log: > Make the build tools static to avoid trying to use the shared loader > before it is installed. > > This upsets Bruce because the host boostrap build forces tools to be > static anyway. He says I'm abusing NOTOOLS in src/Makefile by using > it to do a aout->elf transition build. One day I'll find a place to > install host tools like these to allow a true cross build. You certainly are abusing NOTOOLS. NOTOOLS is only for saving time in non-cross builds. Most tools are cross tools (although the current Makefile doesn't really support building them as such). Defining NOTOOLS should give *no* tools (and failure of the build when the first missing tool is invoked). However, most tools are created by `make all', so if they haven't already been created as cross-tools by the `make build-tools' step, then they will be created as target tools later. Target tools normally don't run unless target == host, but in the special case of host == i386-aout and target == i386-elf, they apparently work if they are built static. To get them built static, you should use `NOSHARED=yes make world' instead of hacking dozens of Makefiles. This builds everything static, which is good enough for bootstrapping. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199808210222.MAA15510>