From owner-freebsd-arch@FreeBSD.ORG Thu Mar 19 00:57:08 2009 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C8F48106566C for ; Thu, 19 Mar 2009 00:57:08 +0000 (UTC) (envelope-from jhein@timing.com) Received: from Daffy.timing.com (smtp.timing.com [206.168.13.218]) by mx1.freebsd.org (Postfix) with ESMTP id 740F88FC1F for ; Thu, 19 Mar 2009 00:57:08 +0000 (UTC) (envelope-from jhein@timing.com) Received: from gromit.timing.com (gromit.timing.com [206.168.13.209]) by Daffy.timing.com (8.13.1/8.13.1) with ESMTP id n2J0ufqL041061; Wed, 18 Mar 2009 18:56:43 -0600 (MDT) (envelope-from jhein@timing.com) Received: from gromit.timing.com (localhost [127.0.0.1]) by gromit.timing.com (8.14.3/8.14.3) with ESMTP id n2J0ueV8012195; Wed, 18 Mar 2009 18:56:40 -0600 (MDT) (envelope-from jhein@gromit.timing.com) Received: (from jhein@localhost) by gromit.timing.com (8.14.3/8.14.3/Submit) id n2J0ueij012192; Wed, 18 Mar 2009 18:56:40 -0600 (MDT) (envelope-from jhein) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <18881.38984.133668.539997@gromit.timing.com> Date: Wed, 18 Mar 2009 18:56:40 -0600 From: John Hein To: "M. Warner Losh" In-Reply-To: <20090318.183646.-593221015.imp@bsdimp.com> References: <18875.60334.947446.966085@gromit.timing.com> <20090315.080814.669286040.imp@bsdimp.com> <18877.57878.136116.691250@gromit.timing.com> <20090318.183646.-593221015.imp@bsdimp.com> X-Mailer: VM 7.19 under Emacs 22.3.1 X-Virus-Scanned: ClamAV version 0.91.2, clamav-milter version 0.91.2 on Daffy.timing.com X-Virus-Status: Clean Cc: ed@80386.nl, arch@freebsd.org Subject: Re: Final sanity pass: xdev X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2009 00:57:09 -0000 M. Warner Losh wrote at 18:36 -0600 on Mar 18, 2009: > In message: <18877.57878.136116.691250@gromit.timing.com> > John Hein writes: > : M. Warner Losh wrote at 08:08 +0900 on Mar 15, 2009: > : > In message: <18875.60334.947446.966085@gromit.timing.com> > : > John Hein writes: > : > : An earlier patch of yours had: > : > : > : > : .if !defined(OSREL) > : > : OSREL!= uname -r | sed -e 's/[-(].*//' > : > : .endif > : > : > : > : But the latest (and the one committed) does not. > : > > : > You are right... Dang. I must have comitted the wrong thing... > > There is a subtle point here that we've missed. This gives us the > version on the host, not the version of the tree we're building. In > practice, these need to be the same. However, if we support building > a 6.x cross compiler on a 7.x system, we may have to revisit. In our build env (I'm sure you recall), it works out fine in practice (for most ports [*]). Building 8.x targets on 7.x makes links like "arm-freebsd7.1-cc" but the cross built ports also look for that name - likely because the config-guess machinery uses uname also. I'm not so sure we need to support building the other direction (7 on 8) since we generally don't support that direction of compatibilty, but if it can be done with minimal effort, that'd be good. So, if it's just a matter of finding the appropriate cross version of cc or nm or whatever, this is okay. [*] But if there is some dependency in a particular port that actually looks into the freebsd version and does something different based on version, it may be an issue. Then on top of that, there's kernel version and userland version that may matter to certain ports. Perhaps we should consider setting UNAME_r in the environment when building across major OS levels (possibly outside the scope of /usr/src/Makefile*). At a certain point in the cross-arch / cross-major-OS-version building dance, we could also just say it's not supported and let people work it out with a native "same major" OS level build machine (possibly a virtual machine). > : One more thing... Now that we've switched to bsd ar, installing > : gnu/usr.bin/binutils installs the gnu ar as gnu-ar. Cross-built > : ports can't find arm-freebsd8.0-ar > > Doh! Thanks for the patch. I'll run it through my QA cycle. Okay. Thanks for getting the 1000 monkeys to give it a test run ;)