From owner-freebsd-questions Tue Apr 16 08:30:12 1996 Return-Path: owner-questions Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id IAA19352 for questions-outgoing; Tue, 16 Apr 1996 08:30:12 -0700 (PDT) Received: from nixpbe.pdb.sni.de (mail.sni.de [192.109.2.33]) by freefall.freebsd.org (8.7.3/8.7.3) with ESMTP id IAA19300 for ; Tue, 16 Apr 1996 08:29:24 -0700 (PDT) Received: (from nerv@localhost) by nixpbe.pdb.sni.de (8.6.12/8.6.12) id RAA25224 for questions@freebsd.org; Tue, 16 Apr 1996 17:30:11 +0200 Message-Id: <199604161530.RAA25224@nixpbe.pdb.sni.de> Subject: Re: Installing SRC tree on more than one computer? To: kmitch@phantasma.bevc.blacksburg.va.us (Keith Mitchell) Date: Tue, 16 Apr 96 17:28:58 MDT From: Greg Lehey Cc: questions@freebsd.org In-Reply-To: <199604151620.MAA22034@phantasma.bevc.blacksburg.va.us>; from "Keith Mitchell" at Apr 15, 96 12:20 pm X-Mailer: xmail 2.4 (based on ELM 2.2 PL16) Sender: owner-questions@freebsd.org X-Loop: FreeBSD.org Precedence: bulk > > I want to be able to compile a source tree (-current or -stable) on one > computer and install it on a bunch of others. > > Can I do a "make world" on the compiling computer (in a chrooted-type > environment) and then mount that on the other computers via NFS and do > a "make install"? The simple answer is "it doesn't work like that". If you look at the "world" target in /usr/src/Makefile, you'll see that it in fact just invokes a whole lot of other targets: + world: hierarchy mk cleandist includes lib-tools libraries tools + @echo "--------------------------------------------------------------" + @echo " Rebuilding ${DESTDIR} The whole thing" + @echo "--------------------------------------------------------------" + @echo + ${MAKE} depend all install + cd ${.CURDIR}/share/man && ${MAKE} makedb For those of you who have not delved into the dirty innards of make, this is pretty much equivalent to + world: hierarchy mk cleandist includes lib-tools libraries tools depend all install This means "to make world, make in sequence all the targets that follow the colon (:)". In particular, cleandist removes everything (this is why you can't interrupt a make world and resume where you left off), and at the end it performs a make install. > Is this possible?? OriIs there a better way of achieving this?? Right now I > am primarily concerned with -stable, but I would also like know if this > procedure would need to be different on -current. I haven't explored all the ramifications (and people tell me there are some which might bite me), but in my nightly cron jobs I just do a 'make depend all install'. In your case, you might get by with a 'make depend all', leaving the 'make install' for later. Greg