Date: Wed, 18 Mar 2009 18:56:40 -0600 From: John Hein <jhein@timing.com> To: "M. Warner Losh" <imp@bsdimp.com> Cc: ed@80386.nl, arch@freebsd.org Subject: Re: Final sanity pass: xdev Message-ID: <18881.38984.133668.539997@gromit.timing.com> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
M. Warner Losh wrote at 18:36 -0600 on Mar 18, 2009: > In message: <18877.57878.136116.691250@gromit.timing.com> > John Hein <jhein@timing.com> writes: > : M. Warner Losh wrote at 08:08 +0900 on Mar 15, 2009: > : > In message: <18875.60334.947446.966085@gromit.timing.com> > : > John Hein <jhein@timing.com> 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 ;)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?18881.38984.133668.539997>