3 #Shell script for building and installing Emacs.
5 # Where to install all of Emacs's data files - the lisp code,
6 # documentation tree, and the architecture-dependent and -independent
7 # libaries. The default definitions for the variables below are
8 # expressed in terms of this one, so you may not need to change them.
9 # set LIBROOT=/usr/local/lib/emacs-19.0
12 # Emacs will search this path to find its elisp files. This should be
13 # a colon-separated list of directories. Strictly speaking, all the
14 # elisp files should go under DATADIR (below), since both elisp source
15 # and compiled elisp are completely portable, but it's traditional to
16 # give the lisp files their own subdirectory.
17 set LISPPATH
=/u
/emacs
/lisp
19 # Emacs will look here for its architecture-independent files (like
20 # the tutorial and the zippy database).
21 set DATADIR
=/u
/emacs
/share-lib
23 # Emacs will look here for its architecture-dependent files, like
24 # executables for its utilities.
25 set LIBDIR
=/u
/emacs
/arch-lib
27 # The locking directory, where the Emacs locking code keeps track of
28 # which files are currently being edited.
29 # set LOCKDIR=${LIBROOT}/lock
30 set LOCKDIR
=/u
/emacs
/lock
32 # This is where build-install should place the binaries people will
33 # want to run directly (like etags and Emacs itself).
34 set BINDIR
=/usr
/local
/bin
36 /bin
/sed < src
/paths.h-dist
> src
/paths.h \
37 -e 's;/usr/local/emacs;'${LIBDIR}';g' \
38 -e 's;\(#.*PATH_LOADSEARCH\).*$$;\1 "'${LISPPATH}'";' \
39 -e 's;\(#.*PATH_EXEC\).*$$;\1 "'${LIBDIR}'";' \
40 -e 's;\(#.*PATH_DATA\).*$$;\1 "'${DATADIR}'";' \
41 -e 's;\(#.*LOCK\).*$$;\1 "'${LOCKDIR}'/";'
45 (cd lib-src
; make) ||
exit 1
46 (cd src
; make) ||
exit 1
48 if (`pwd` != `(cd ${LIBROOT}; pwd)`) then
52 echo mv `pwd` to
${LIBROOT} failed--using
tar to copy.
53 tar cf
- . |
(cd ${LIBROOT}; umask 0; tar xf
-)
55 echo tar-copying
`pwd` to
${LIBROOT} failed.
61 cp ${LIBROOT}/etc
/{ctags
,etags
} ${BINDIR}
62 mv ${LIBROOT}/src
/xemacs
${BINDIR}/emacs
63 rm ${LIBROOT}/src
/temacs
64 chmod 777 ${BINDIR}/{ctags
,etags
,emacs
}