diff options
author | Jim Blandy <jimb@redhat.com> | 1993-05-26 18:27:58 +0000 |
---|---|---|
committer | Jim Blandy <jimb@redhat.com> | 1993-05-26 18:27:58 +0000 |
commit | 005775ce9736552e8c218ca33a8aea103054ce23 (patch) | |
tree | 315f36b2acec6ce822c6c51209e1799f4643b4c4 /Makefile.in | |
parent | 03b3ba121e4973a9b8f4f41582de1f01c53e3a7b (diff) | |
download | emacs-005775ce9736552e8c218ca33a8aea103054ce23.tar.gz |
* Makefile.in (do-install): Don't remove a destination directory
if it's the same as the source. If ${srcdir}/info == ${infodir},
don't try to copy the info files.
* Makefile.in (COPYDIR, COPYDESTS): Don't mention etc twice; this
doesn't work if you're not using a separate source directory.
(do-install): Copy the build tree's etc directory only after
making sure it's not also the source tree's etc directory.
Diffstat (limited to 'Makefile.in')
-rw-r--r-- | Makefile.in | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/Makefile.in b/Makefile.in index 95ca4de7836..7b00ca8c3da 100644 --- a/Makefile.in +++ b/Makefile.in @@ -204,8 +204,8 @@ SUBDIR_MAKEFILES = lib-src/Makefile src/Makefile oldXMenu/Makefile # When installing the info files, we need to do special things to # avoid nuking an existing dir file, so we don't do that here; # instead, we have written out explicit code in the `install' targets. -COPYDIR = etc ${srcdir}/etc ${srcdir}/lisp ${srcdir}/external-lisp -COPYDESTS = ${etcdir} ${etcdir} ${lispdir} ${externallispdir} +COPYDIR = ${srcdir}/etc ${srcdir}/lisp ${srcdir}/external-lisp +COPYDESTS = ${etcdir} ${lispdir} ${externallispdir} all: src/paths.h ${SUBDIR} @@ -330,7 +330,12 @@ do-install: mkdir exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} \ archlibdir=${archlibdir}) -set ${COPYDESTS} ; \ - rm -rf ${COPYDESTS} ; \ + for dir in ${COPYDIR} ; do \ + if [ `(cd $$1 ; pwd)` != `(cd $${dir} ; pwd)` ] ; then \ + rm -rf $${dir} ; \ + fi ; \ + done + -set ${COPYDESTS} ; \ mkdir ${COPYDESTS} ; \ for dir in ${COPYDIR} ; do \ dest=$$1 ; shift ; \ @@ -345,13 +350,23 @@ do-install: mkdir rm -f $${subdir}/*~ ; \ done) ; \ done - -(cd ${srcdir}/info ; \ - if [ ! -f ${infodir}/dir ] && [ -f dir ]; then \ - ${INSTALL_DATA} dir ${infodir}/dir ; \ - fi ; \ - for f in cl* emacs* forms* info* vip* ; do \ - ${INSTALL_DATA} $$f ${infodir}/$$f ; \ - done) + -[ `(cd etc; /bin/pwd)` != `(cd ${etcdir}; /bin/pwd)` ] \ + && (echo "Copying ./etc..." ; \ + (cd ./etc; tar cf - . )|(cd ${etcdir}; umask 0; tar xvf - ); \ + for subdir in `find ${etcdir} -type d ! -name RCS -print` ; do \ + rm -rf $${subdir}/RCS ; \ + rm -rf $${subdir}/CVS ; \ + rm -f $${subdir}/\#* ; \ + rm -f $${subdir}/*~ ; \ + done) + -[ `(cd ${srcdir}/info; /bin/pwd)` != `(cd ${infodir}; /bin/pwd)` ] \ + && (cd ${srcdir}/info ; \ + if [ ! -f ${infodir}/dir ] && [ -f dir ]; then \ + ${INSTALL_DATA} dir ${infodir}/dir ; \ + fi ; \ + for f in cl* emacs* forms* info* vip* ; do \ + ${INSTALL_DATA} $$f ${infodir}/$$f ; \ + done) cd ${srcdir}/etc; for page in emacs etags ctags ; do \ ${INSTALL_DATA} $${page}.1 ${mandir}/$${page}${manext} ; \ done |