Date: Tue, 26 Aug 1997 16:02:48 +0930 From: Greg Lehey <grog@lemis.com> To: Wes Peters <softweyr@xmission.com> Cc: freebsd-questions@FreeBSD.ORG Subject: Re: Any reason not to remove /usr/obj/* ? (fwd) Message-ID: <19970826160248.15087@lemis.com> In-Reply-To: <Pine.BSF.3.96.970825230501.21041A-100000@andrsn.stanford.edu>; from Wes Peters on Mon, Aug 25, 1997 at 11:08:23PM -0700 References: <Pine.BSF.3.96.970825230501.21041A-100000@andrsn.stanford.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970826160248.15087>