mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-24 07:20:37 +00:00
62 lines
2.1 KiB
Bash
Executable File
62 lines
2.1 KiB
Bash
Executable File
#!/bin/sh -x
|
|
#
|
|
#Shell script for building and installing Emacs.
|
|
|
|
# Where to install all of Emacs's data files - the lisp code,
|
|
# documentation tree, and the architecture-dependent and -independent
|
|
# libaries. The default definitions for the variables below are
|
|
# expressed in terms of this one, so you may not need to change them.
|
|
# set LIBROOT=/usr/local/lib/emacs-19.0
|
|
LIBROOT=/usr/local/emacs
|
|
|
|
# Emacs will search this path to find its elisp files. This should be
|
|
# a colon-separated list of directories. Strictly speaking, all the
|
|
# elisp files should go under DATADIR (below), since both elisp source
|
|
# and compiled elisp are completely portable, but it's traditional to
|
|
# give the lisp files their own subdirectory.
|
|
LISPPATH=/usr/local/emacs/local-lisp:/usr/local/emacs/lisp
|
|
|
|
# Emacs will look here for its architecture-independent files (like
|
|
# the tutorial and the zippy database).
|
|
DATADIR=/usr/local/emacs/share-lib
|
|
|
|
# Emacs will look here for its architecture-dependent files, like
|
|
# executables for its utilities.
|
|
LIBDIR=/usr/local/emacs/arch-lib
|
|
|
|
# The locking directory, where the Emacs locking code keeps track of
|
|
# which files are currently being edited.
|
|
# set LOCKDIR=${LIBROOT}/lock
|
|
LOCKDIR=/usr/local/emacs/lock
|
|
|
|
# This is where build-install should place the binaries people will
|
|
# want to run directly (like etags and Emacs itself).
|
|
BINDIR=/usr/local/bin
|
|
|
|
/bin/sed < src/paths.h-dist > src/paths.h \
|
|
-e 's;\(#.*PATH_LOADSEARCH\).*$;\1 "'${LISPPATH}'";' \
|
|
-e 's;\(#.*PATH_EXEC\).*$;\1 "'${LIBDIR}'";' \
|
|
-e 's;\(#.*PATH_DATA\).*$;\1 "'${DATADIR}'";' \
|
|
-e 's;\(#.*LOCK\).*$;\1 "'${LOCKDIR}'/";'
|
|
|
|
(cd lib-src; make) || exit 1
|
|
(cd src; make) || exit 1
|
|
|
|
if [ `pwd` != `(cd ${LIBROOT}; pwd)` ]; then
|
|
mv `pwd` ${LIBROOT}
|
|
if [ $? != '0' ]; then
|
|
mkdir ${LIBROOT}
|
|
echo mv `pwd` to ${LIBROOT} failed--using tar to copy.
|
|
tar cf - . | (cd ${LIBROOT}; umask 0; tar xf -)
|
|
if [ $? != '0' ]; then
|
|
echo tar-copying `pwd` to ${LIBROOT} failed.
|
|
exit 1
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
cp ${LIBROOT}/etc/[ce]tags ${BINDIR}
|
|
mv ${LIBROOT}/src/xemacs ${BINDIR}/emacs
|
|
rm ${LIBROOT}/src/temacs
|
|
chmod 777 ${BINDIR}/[ce]tags ${BINDIR}/emacs
|