From owner-cvs-all Sat Aug 8 02:27:19 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id CAA21715 for cvs-all-outgoing; Sat, 8 Aug 1998 02:27:19 -0700 (PDT) (envelope-from owner-cvs-all) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.15.68.22]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id CAA21708; Sat, 8 Aug 1998 02:27:09 -0700 (PDT) (envelope-from bde@godzilla.zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.8.7) id TAA11379; Sat, 8 Aug 1998 19:26:50 +1000 Date: Sat, 8 Aug 1998 19:26:50 +1000 From: Bruce Evans Message-Id: <199808080926.TAA11379@godzilla.zeta.org.au> To: jb@cimlogic.com.au, wollman@khavrinen.lcs.mit.edu Subject: Re: cvs commit: src/sys/alpha/conf GENERIC Cc: cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, dag-erli@ifi.uio.no, dfr@FreeBSD.ORG, dfr@nlsystems.com Sender: owner-cvs-all@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >> # cd /sys >> # rmdir compile >> # mkdir /usr/obj/sys/compile >> # ln -s !$ . > >No. That still means making a modification to the source tree. I'd prefer >the source tree to stay read-only. The source tree already can't be read-only, since config scribbles in src/sys/compile. To fix this, first do the equivalent of the first 3 steps in the above in cvs: $ cvs co src/sys/compile $ rm src/sys/compile/.keep_me $ cvs remove src/sys/compile/.keep_me $ cvs commit src/sys/compile $everyone cvs update -P src/sys/compile Then fix config to build somewhere in the object tree. The usual name for the object directory ($MAKEOBJDIRPREFIX`pwd`) doesn't work since there may be multiple config files. How about $MAKEOBJDIRPREFIX`pwd`.obj ? `.obj' is appended so that naturally named object links can be created if the source tree is writable, e.g., GENERIC.obj -> /usr/obj/usr/src/sys/i386/conf/GENERIC.obj Alternative: move the config files to their own subdirectories (GENERIC -> GENERIC/conf, etc.) so that there is only one obj directory per source directory. This would be better if we ever stopped using separate obj directories by default (the default should probably be to build in "." where "." is actually in a union-mounted obj tree if the user wants a read-only source tree). Bruce