[comp.emacs] shared source question

rbj@dsys.ncsl.nist.GOV (Root Boy Jim) (06/06/89)

? From: steve@cfht.cfht.hawaii.edu (Steven Smith)

? My question is this, is it possible (or even a good thing?) to use *one* 
? NFS mountable copy of the source tree (for any given version of emacs) 
? and a master Makefile to generate all the needed executables, thereby
? saving 40+ meg of disc for each combination?

Yes. Since you have X11, look in the util/scripts directory for lndir.sh.
I always untar my sources into a directory, which I never touch. For
each different environment I want to build in, I use lndir to make a
parallel directory of links to the real source.

For those not familiar with lndir it essentially does:

#! /bin/csh -f
# usage: lndir absolute_source_tree_path new_path
cd $2
foreach x ($1/*)
	if -d $x then
		echo recursing in $x
		mkdir $x:t
		lndir $x $x:t
	else
		ln -s $x
	endif
end

I realize I have committed the sin of posting a csh script, but it
seemed easier this way. I just ran it on the X distribution and had
no problems. Note that the first argument *must* be an absolute
path or the script will get weird when it recurses. If a directory
is empty, you will get a `no match' error, which you can ignore.
If a directory has too many files, the argument list to `foreach'
will blow up, and that subtree will have to be done by hand.

? steve

	Root Boy Jim is what I am
	Are you what you are or what?