On Fri, Apr 26, 2002 at 01:44:51PM -0700, Marcel Moolenaar wrote: > On Fri, Apr 26, 2002 at 10:12:14PM +0300, Ruslan Ermilov wrote: > > On Fri, Apr 26, 2002 at 11:59:21AM -0700, Marcel Moolenaar wrote: > > > On Fri, Apr 26, 2002 at 09:26:34PM +0300, Ruslan Ermilov wrote: > > > > > > > I.e., if you built world a month ago, and didn't touch /usr/src > > > > since, and /usr/obj has "buildworld" output for this /usr/src, > > > > and you have booted with this world, it should be okay to start > > > > building today's release. > > > > > > I share my src tree, so I almost always have a /usr/src that's not > > > in sync with the /usr/obj for and on a particular machine. > > > > > > What goes wrong if /usr/src and /usr/obj are out of sync? > > > > > The prerequisite for a successful "make release" is to "installworld" > > first the same world as you are currently running. This is done to > > create a pristine environment (with an empty /etc/make.conf, etc.) > > which is then chroot'ed into. > > I see. Doing a "make everything TARGET_ARCH=foo -DNOCLEAN" should > probably be enough in most cases to sync the object tree, right? > If libraries, kernel, compiler, and headers didn't change, then yes. :-) Otherwise, "make world kernel" and reboot is necessary. So that the subsequent "installworld" of the same world into the chroot'ed environment will give you a _compatible_ (with the currently running kernel) world.
> > Also, when I wrote "/usr/src" and "/usr/obj" I didn't mean them > > literally. > > That's mostly academic :-) > > BTW: Do you have plans to remove the exception for non-cross builds > to have the object tree rooted under /usr/obj/$TARGET_ARCH? > The exception was created for make release, but from a pure > cross-building point of view it's inconsistent and is one of > the blockers to build, say, alpha on i386 and doing a native > install on alpha (the other would be having an empty temproot). > Yes, I was planning to do it anyway, for the same reason. You know, it's a matter of removing three lines from Makefile.inc1. :-) It does not of course prevent you from building alpha on i386 and then installing on alpha, all that needs to be done on alpha is: /usr/bin/env MAKEOBJIRPREFIX=/usr/obj/alpha installworld 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
Description: PGP signature