From owner-freebsd-hackers Sun Nov 12 16:40:21 1995 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id QAA18870 for hackers-outgoing; Sun, 12 Nov 1995 16:40:21 -0800 Received: from DATAPLEX.NET (SHARK.DATAPLEX.NET [199.183.109.241]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id QAA18859 for ; Sun, 12 Nov 1995 16:40:14 -0800 Received: from [199.183.109.242] by DATAPLEX.NET with SMTP (MailShare 1.0fc5); Sun, 12 Nov 1995 18:40:02 -0600 X-Sender: rkw@shark.dataplex.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 12 Nov 1995 18:39:59 -0600 To: Mark Valentine From: rkw@dataplex.net (Richard Wackerbarth) Subject: Re: LKM's still wont compile in -current Cc: hackers@freebsd.org Sender: owner-hackers@freebsd.org Precedence: bulk >I'd draw a line below EVERYTHING, at least for initial bootstrapping. > >I'd separate out some of the tools, like the compiler and make, just >documenting which versions you need to have installed in the host environment >to build for your target (point src/make.conf at them if they're not in the >standard locations). If you need to, you build the tools you need as part of >bootstrapping your build environment. I think that you are skirting the fact that there are three separate environments. 1) The host environment. 2) The bootstrap environment. 3) The target environment. The host environment just "is". I'm not allowed to change it. The bootstrap environment has the customized tools to build the target. In many cases, these tools are the generic tools available from the host environment. In those cases, they are specified by a configuration link of some sort. However, I can override any of them by providing the source code that will run in the host environment. For example, I might have a revised version of a compiler or make that has a feature that I am using in building the target. And the target is the target. When building the target, we don't step on anything in either the host or bootstrap environments. However, we do associate with each target the bootstrap environment that knows how to build the target. Right now, make world tries to pile all three of these environments on top of each other. I "sortta" works only because in most cases, the host, bootstrap, and target environments are the same. One thing we must do is to unfold these three environments and then we can refold them by specification of the appropriate links. ---- Richard Wackerbarth rkw@dataplex.net