On Thu, Nov 21, 2002 at 06:28:09AM -0700, M. Warner Losh wrote: > In message: <[EMAIL PROTECTED]> > Ruslan Ermilov <[EMAIL PROTECTED]> writes: > : On Thu, Nov 21, 2002 at 12:10:14AM -0700, M. Warner Losh wrote: > : > In message: <[EMAIL PROTECTED]> > : > "Wilkinson,Alex" <[EMAIL PROTECTED]> writes: > : > : Is FreeBSD likely to follow the in footsteps of NetBSD and create a framework >to do crossbuilds ? > : > : > : > : http://ezine.daemonnews.org/200211/xdevnetbsd.html > : > > : > FreeBSD already has cross builds for a while, since before NetBSD's > : > cross build infrastructure. However, NetBSD's infrastructure is a > : > little more extensive because it is possible to do incremental builds > : > and build full releases that work in a cross build evironment. > : > > : What do you mean by "incremental builds and full releases that work ..."? > > ruslan, > > First and foremost, I ment no disrespect in what I said. You > have made the upgrade path for FreeBSD almost painless for a wide > range of releases (less painful than NetBSD has been at times for me). > You gave FreeBSD the ability to cross build world about a year or a > year and a half ahead of NetBSD's similarly integrated ability. > Sorry if I sounded so, I didn't mean to. :-)
> NetBSD builds a directory full of tools that you can later use to > incrementally build, say, 'ls' or 'cat' because one can define > USETOOLS to be 'yes' and have the make automatically pick them up when > rebuilding. There are a few of the details I'm a little unclear on, > but that's the jist of it. > We also can, this just requires a few really tiny tweaks to Makefile.inc1, and I've posted them already some time ago -- basically, for each architecture you should build the subset of buildworld targets (WMAKE_TGTS), up to and including _libraries (if you want to build roughly any bit later), and them you can ``make {depend|all} SUBDIR_OVERRIDE=bin/cat'' for each of the desired TARGET_ARCH. > Second, the NetBSD have tested almost all of their platforms in a > cross build release scenario. They know that the binaries that result > from 'make release' build on i386 actually boot on the target > platform. They have build 1.6.x for many of their platforms this > way. So far, the FreeBSD has done all its builds natively. > I know that the Alpha and sparc64 binaries produced on i386 work. I know that cross-compiling i386 on either Alpha or sparc64 is broken (GCC sometimes produces different assembler output than the native compiler). I lack the necessary hardware to actually test/fix the issues with cross-releases. > One of the cool things about the NetBSD approach, btw, is that they > have a src/tools directory. This directory lists all the build tools > for building in one place. I think that this is a little cleaner than > what we have in the Makefile.inc1 right now. On the other hand, it is > a lot more complicated than what we have now, and I'm not sure that > added complexity is worth it. > When you say "build tools", do you mean them in our build-tools sense, or something else? Cheers, -- Ruslan Ermilov Sysadmin and DBA, [EMAIL PROTECTED] Sunbay Software AG, [EMAIL PROTECTED] FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age
msg47086/pgp00000.pgp
Description: PGP signature