From owner-freebsd-current Thu Jun 11 18:42:30 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA28300 for freebsd-current-outgoing; Thu, 11 Jun 1998 18:42:30 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from smtp04.primenet.com (daemon@smtp04.primenet.com [206.165.6.134]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id SAA28290 for ; Thu, 11 Jun 1998 18:42:26 -0700 (PDT) (envelope-from tlambert@usr09.primenet.com) Received: (from daemon@localhost) by smtp04.primenet.com (8.8.8/8.8.8) id SAA18428 for ; Thu, 11 Jun 1998 18:42:25 -0700 (MST) Received: from usr09.primenet.com(206.165.6.209) via SMTP by smtp04.primenet.com, id smtpd018397; Thu Jun 11 18:42:22 1998 Received: (from tlambert@localhost) by usr09.primenet.com (8.8.5/8.8.5) id SAA07763 for current@FreeBSD.ORG; Thu, 11 Jun 1998 18:42:22 -0700 (MST) From: Terry Lambert Message-Id: <199806120142.SAA07763@usr09.primenet.com> Subject: Re: Make world problem To: current@FreeBSD.ORG Date: Fri, 12 Jun 1998 01:42:21 +0000 (GMT) In-Reply-To: <199806102225.IAA16233@cimlogic.com.au> from "John Birrell" at Jun 11, 98 08:25:34 am X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > > If there is an issue here, I think it is that yacc is not built early > > > in a make world line make itself is. A second issue is that the make > > > world should check the kernel version so that a build on 2.2.5, for > > > example, can build the extra tools early on without penalizing everyone > > > with later systems. > > > > You mean... actually implement the dependencies make is capable of > > supporting? > > How can make "know" that a tool like yacc has an extra argument in 3.0 > that if didn't have in 2.2.5 ? AFAIK, you have to code this in a Makefile > somewhere. It can't. So you shouldn't depend on yacc taking an extra argument. 8-). > All I am suggesting is that src/Makefile should to a 'uname -r' and > build a few extra programs (make, yacc, ld) early depending on > 2.2.5-RELEASE, 2.2.6-STABLE or 3.0-CURRENT. An argument dependency is a relatively stick wicket. It is best to stay away from them. For this specific example, this would mean that, even though yacc can take a "-o", the FreeBSD build process should not depend upon there being a yacc that can take a "-o" installed. Alternately, the .mk should test for Yacc's capability before depending on it. Either way, you end up with a makefile that doesn't need "-o" as an argument to yacc, and a more complicated makefile that takes more time to run in the case that you want-to-use-but-can't-depend-upon a "-o". Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message