From owner-freebsd-questions Mon Aug 25 23:34:17 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id XAA15551 for questions-outgoing; Mon, 25 Aug 1997 23:34:17 -0700 (PDT) Received: from nico.telstra.net (nico.telstra.net [139.130.204.16]) by hub.freebsd.org (8.8.7/8.8.7) with SMTP id XAA15544 for ; Mon, 25 Aug 1997 23:34:12 -0700 (PDT) Received: from freebie.lemis.com (freebie.lemis.com [192.109.197.137]) by nico.telstra.net (8.6.10/8.6.10) with ESMTP id QAA20297; Tue, 26 Aug 1997 16:32:57 +1000 Received: (grog@localhost) by freebie.lemis.com (8.8.7/8.6.12) id QAA10020; Tue, 26 Aug 1997 16:02:49 +0930 (CST) Message-ID: <19970826160248.15087@lemis.com> Date: Tue, 26 Aug 1997 16:02:48 +0930 From: Greg Lehey To: Wes Peters Cc: freebsd-questions@FreeBSD.ORG Subject: Re: Any reason not to remove /usr/obj/* ? (fwd) References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.81e In-Reply-To: ; from Wes Peters on Mon, Aug 25, 1997 at 11:08:23PM -0700 Organisation: LEMIS, PO Box 460, Echunga SA 5153, Australia Phone: +61-8-8388-8250 Fax: +61-8-8388-8250 Mobile: +61-41-739-7062 WWW-Home-Page: http://www.lemis.com/~grog Fight-Spam-Now: http://www.cauce.org Sender: owner-freebsd-questions@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Mon, Aug 25, 1997 at 11:08:23PM -0700, Wes Peters wrote: > The definitive answer from Wes Peters--he forgot to include > freebsd-questions on the cc: line, so here it is. I put his > name in the "From" line. > > Annelise > > Doug White commented from on high: > % If you're not doing any 'make world's, then /usr/obj is destroyable. > > Annelise Anderson writes: >> I would like some clarification on this. There seem to be about 150 >> megabytes in my /usr/obj. I thought this was created as an intermediate >> step in the make world process. Would leaving it there shorten the time >> on a subsequent make world, or does everything in any case get remade? >> If so, the only purpose of keeping these around is as a "spaceholder" >> for a future made world. > > As the name implies, /usr/obj is a place where the intermediate object > files that make up the commands, utilities, etc. are placed. If you > change 10% of the system source between 'make world' commands, you only > need to regenerate 10% of the object files, the rest remain untouched. > If you remove /usr/obj, you will have to remake 100% of the object > files, at a cost of extra computing cycles, disk I/Os, etc. > > In short: if you've got the disk space and are going to be rebuilding > the world, leave 'em. If you need the disk space, grab it. If you're > undecided, buy a Jaz drive and a cartrige for /usr/obj. ;^) That depends on how you make your world. Normally, the first thing that 'make world' does is to remove all the objects and start afresh. Check /usr/src/Makefile: # Make command line options: # -DCLOBBER will remove /usr/include # -DMAKE_EBONES to build eBones (KerberosIV) # -DALLLANG to build documentation for all languages # (where available -- see share/doc/Makefile) # # -DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir # -DNOCLEAN do not clean at all # -DNOCRYPT will prevent building of crypt versions # -DNOLKM do not build loadable kernel modules # -DNOOBJDIR do not run ``${MAKE} obj'' # -DNOPROFILE do not build profiled libraries # -DNOSECURE do not go into secure subdir # -DNOGAMES do not go into games subdir # -DNOSHARE do not go into share subdir # -DNOINFO do not make or install info files # -DNOLIBC_R do not build libc_r. # LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list # # The intended user-driven targets are: # buildworld - rebuild *everything*, including glue to help do upgrades # installworld- install everything built by "buildworld" # world - buildworld + installworld # update - convenient way to update your source tree (eg: sup/cvs) # most - build user commands, no libraries or include files # installmost - install user commands, no libraries or include files # # Standard targets (not defined here) are documented in the makefiles in # /usr/share/mk. These include: # obj depend all install clean cleandepend cleanobj Greg