view Makefile.in @ 2498:0126ca788e99

* Makefile.in (clean mostlyclean): Missing right paren. Change `configure' to a mixture of custom code and autoconf stuff. autoconf can't derive all the information we need, but we'd really like to be able to take advantage of some of its tests, and its file-editing facilities. * configure.in: Renamed from configure. Quote the sections of shell script we want copied literally to the configure script. (compile): Initialize this to make the autoconf macros' code happy. Use AC_PROG_CC, AC_CONST, and AC_RETSIGTYPE instead of writing out code to do their jobs. Use autoconf to produce Makefile and src/config.h. Remove the Makefile-style comment that autoconf places at the top of src/config.h. (config_h_opts): Removed - no longer necessary. * Makefile.in (configname): Renamed to configuration. (CONFIG_CFLAGS): Renamed to DEFS. (CC, DEFS, C_SWITCH_SYSTEM, version, configuration): Adjusted to get values via autoload @cookies@. (libsrc_libs): Get this from autoconf. We used to do nothing about this. (${SUBDIR}): Pass DEFS to submakes instead of CONFIG_CFLAGS. * Makefile.in (src/paths.h, lib-src/Makefile, src/Makefile): Don't echo the move-if-change command.
author Jim Blandy <jimb@redhat.com>
date Sat, 10 Apr 1993 06:01:49 +0000
parents 094bec4c13e9
children b951532eca82
line wrap: on
line source

# DIST: This is the distribution Makefile for Emacs.  configure can
# DIST: make most of the changes to this file you might want, so try
# DIST: that first.

# make all	to compile and build Emacs.
# make install	to install it.
# make install.sysv to install on system V.  Note that on system V you
#		must change mandir to /usr/local/man/man1.
# make install.xenix  to install on Xenix.
# make install.aix    to install on AIX.
# make TAGS	to update tags tables.
#
# make clean  or  make mostlyclean
#      Delete all files from the current directory that are normally
#      created by building the program.	 Don't delete the files that
#      record the configuration.  Also preserve files that could be made
#      by building, but normally aren't because the distribution comes
#      with them.
#
#      Delete `.dvi' files here if they are not part of the distribution.
# 
# make distclean
#      Delete all files from the current directory that are created by
#      configuring or building the program.  If you have unpacked the
#      source and built the program without creating any other files,
#      `make distclean' should leave only the files that were in the
#      distribution.
# 
# make realclean
#      Delete everything from the current directory that can be
#      reconstructed with this Makefile.  This typically includes
#      everything deleted by distclean, plus more: C source files
#      produced by Bison, tags tables, info files, and so on.
#
# make extraclean
#      Still more severe - delete backup and autosave files, too.

SHELL = /bin/sh
MAKE = make  # BSD doesn't have it as a default.

# ==================== Things `configure' Might Edit ====================

CC=@CC@
DEFS=@DEFS@
C_SWITCH_SYSTEM=@c_switch_system@

### These help us choose version- and architecture-specific directories
### to install files in.

### This should be the number of the Emacs version we're building,
### like `18.59' or `19.0'.
version=@version@

### This should be the name of the configuration we're building Emacs
### for, like `mips-dec-ultrix' or `sparc-sun-sunos'.
configuration=@configuration@

### Libraries which should be edited into lib-src/Makefile.
libsrc_libs=@libsrc_libs@

# ==================== Where To Install Things ====================

# The default location for installation.  Everything is placed in
# subdirectories of this directory.  The default values for many of
# the variables below are expressed in terms of this one, so you may
# not need to change them.
prefix=/usr/local

# Like `prefix', but used for architecture-specific files.
exec_prefix=${prefix}

# Where to install Emacs and other binaries that people will want to
# run directly (like etags).
bindir=${exec_prefix}/bin

# Where to install architecture-independent data files.	 ${lispdir}
# and ${etcdir} are subdirectories of this.
datadir=${prefix}/lib

# Where to install and expect the files that Emacs modifies as it
# runs.	 These files are all architecture-independent. Right now, the
# only such data is the locking directory; ${lockdir} is a
# subdirectory of this.
statedir=${prefix}/lib

# Where to install and expect executable files to be run by Emacs
# rather than directly by users, and other architecture-dependent
# data.	 ${archlibdir} is a subdirectory of this.
libdir=${exec_prefix}/lib

# Where to install Emacs's man pages, and what extension they should have.
mandir=${prefix}/man/man1
manext=.1

# Where to install and expect the info files describing Emacs.	In the
# past, this defaulted to a subdirectory of ${prefix}/lib/emacs, but
# since there are now many packages documented with the texinfo
# system, it is inappropriate to imply that it is part of Emacs.
infodir=${prefix}/info

# Where to find the source code - setting this to anything but
# . doesn't work yet.  The source code for Emacs's C kernel is
# expected to be in ${srcdir}/src, and the source code for Emacs's
# utility programs is expected to be in ${srcdir}/lib-src.  This is
# set by the configure script's `--srcdir' option.
srcdir=.

# ==================== Emacs-specific directories ====================

# These variables hold the values Emacs will actually use.  They are
# based on the values of the standard Make variables above.

# Where to install the lisp files distributed with Emacs.  This
# includes the Emacs version, so that the lisp files for different
# versions of Emacs will install themselves in separate directories.
lispdir=${datadir}/emacs/${version}/lisp

# Where to install the lisp files which are distributed with Emacs
# but not maintained by the FSF.  This includes the Emacs version, so
# that the lisp files for different versions of Emacs will install
# themselves in separate directories.
externallispdir=${datadir}/emacs/${version}/external-lisp

# Directories Emacs should search for lisp files specific to this
# site (i.e. customizations), before consulting ${lispdir}.  This
# should be a colon-separated list of directories.
locallisppath=${datadir}/emacs/site-lisp

# Where Emacs will search to find its lisp files.  Before changing
# this, check to see if your purpose wouldn't better be served by
# changing locallisppath.  This should be a colon-separated list of
# directories.
lisppath=${locallisppath}:${lispdir}

# Where Emacs will search for its lisp files while building.  This is
# only used during the process of compiling Emacs, to help Emacs find
# its lisp files before they've been installed in their final
# location.  It's usually identical to lisppath, except that the entry
# for the directory containing the installed lisp files has been
# replaced with ../lisp.  This should be a colon-separated list of
# directories.
buildlisppath=../lisp

# Where to install the other architecture-independent data files
# distributed with Emacs (like the tutorial, the cookie recipes and
# the Zippy database).	This path usually contains the Emacs version
# number, so the data files for multiple versions of Emacs may be
# installed at once.
etcdir=${datadir}/emacs/${version}/etc

# Where to create and expect the locking directory, where the Emacs
# locking code keeps track of which files are currently being edited.
lockdir=${statedir}/emacs/lock

# Where to put executables to be run by Emacs rather than the user.
# This path usually includes the Emacs version and configuration name,
# so that multiple configurations for multiple versions of Emacs may
# be installed at once.
archlibdir=${libdir}/emacs/${version}/${configuration}

# ====================== Developer's configuration =======================

# The following assignments make sense if you're running Emacs on a single
# machine, one version at a time, and  you want changes to the lisp and etc
# directories in the source tree to show up immediately in your working
# environment.  It saves a great deal of disk space by not duplicating the
# lisp and etc directories.
#
# lispdir=${srcdir}/lisp
# externallispdir=${srcdir}/externallisp
# locallisppath=${srcdir}/site-lisp
# etcdir=${srcdir}/etc
# lockdir=${srcdir}/lock
# archlibdir=${srcdir}/bin
# infodir=${srcdir}/info

# ==================== Utility Programs for the Build ====================

# Allow the user to specify the install program.
INSTALL = install
INSTALLFLAGS = -c
INSTALL_PROGRAM = ${INSTALL}
INSTALL_DATA = ${INSTALL}

# ============================= Targets ==============================

# Flags passed down to subdirectory makefiles.
MFLAGS = 

CFLAGS=${DEFS}

# Subdirectories to make recursively.  `lisp' is not included
# because the compiled lisp files are part of the distribution
# and you cannot remake them without installing Emacs first.
SUBDIR = lib-src src

# The makefiles of the directories in $SUBDIR.
SUBDIR_MAKEFILES = lib-src/Makefile src/Makefile

# Subdirectories to install, and where they'll go.
# lib-src's makefile knows how to install it, so we don't do that here.
# 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}/lisp ${srcdir}/external-lisp
COPYDESTS = ${etcdir} ${lispdir} ${externallispdir}

all:	src/paths.h ${SUBDIR}

removenullpaths=sed -e 's/^://' -e 's/:$$//' -e 's/::/:/'

# We force the rebuilding of src/paths.h because the user might give
# make different values for the various directories.  Since we use
# move-if-change, src/paths.h only actually changes if the user did
# something notable, so the only unnecessary work we do is in building
# src/paths.h.tmp, which isn't much.
# Note that sed is not in /bin on 386bsd.
src/paths.h: Makefile ${srcdir}/src/paths.h.in FRC
	@echo "Producing \`src/paths.h' from \`src/paths.h.in'."
	@(lisppath=`echo ${lisppath} | ${removenullpaths}` ;		\
	  buildlisppath=`echo ${buildlisppath} | ${removenullpaths}` ;	\
	  sed < ${srcdir}/src/paths.h.in > src/paths.h.tmp		\
	  -e 's;\(#.*PATH_LOADSEARCH\).*$$;\1 "'$${lisppath}'";'	\
	  -e 's;\(#.*PATH_DUMPLOADSEARCH\).*$$;\1 "'$${buildlisppath}'";' \
	  -e 's;\(#.*PATH_EXEC\).*$$;\1 "${archlibdir}";'		\
	  -e 's;\(#.*PATH_DATA\).*$$;\1 "${etcdir}";'			\
	  -e 's;\(#.*PATH_LOCK\).*$$;\1 "${lockdir}/";')
	@${srcdir}/move-if-change src/paths.h.tmp src/paths.h

src:	lib-src

.RECURSIVE: ${SUBDIR}

${SUBDIR}: ${SUBDIR_MAKEFILES} FRC
	cd $@; $(MAKE) all ${MFLAGS} \
		CC='${CC}' DEFS='${DEFS}' \
		srcdir='${srcdir}/$@' libdir='${libdir}'

## We build the makefiles for the subdirectories here so that we can
## edit the values for the path variables into them.  This means that
## when the user has built them from this makefile once, they will use
## the right default values for the path variables.
lib-src/Makefile: ${srcdir}/lib-src/Makefile.in Makefile
	rm -f lib-src/Makefile.tmp
	@echo "Producing \`lib-src/Makefile' from \`${srcdir}/lib-src/Makefile.in'."
	@(echo "# This file is generated from \`${srcdir}/lib-src/Makefile.in'." ; \
	  echo "# If you are thinking about editing it, you should seriously consider" ; \
	  echo "# running \`make lib-src/Makefile' at the top of the" ;	\
	  echo "# Emacs build tree instead, or editing" ;		\
	  echo "# \`${srcdir}/lib-src/Makefile.in' itself." ;		\
	  /bin/sed < ${srcdir}/lib-src/Makefile.in			\
	  -e 's|^\(version *=\).*$$|\1'"${version}"'|'			\
	  -e 's|^\(configname *=\).*$$|\1'"${configuration}"'|'		\
	  -e 's|^\(prefix *=\).*$$|\1'"${prefix}"'|'			\
	  -e 's|^\(exec_prefix *=\).*$$|\1'"${exec_prefix}"'|'		\
	  -e 's|^\(libdir *=\).*$$|\1'"${libdir}"'|'			\
	  -e 's|^\(srcdir *=\).*$$|\1'"${srcdir}"'|'			\
	  -e 's|^\(archlibdir *=\).*$$|\1'"${archlibdir}"'|'		\
	  -e 's|^CC *=.*$$|CC='"${CC}"'|'				\
	  -e 's|^DEFS *=.*$$|DEFS='"${DEFS}"'|' \
	  -e 's|^C_SWITCH_SYSTEM *=.*$$|C_SWITCH_SYSTEM='"${C_SWITCH_SYSTEM}"'|' \
	  -e 's|^LOADLIBES *=.*$$|LOADLIBES='"${libsrc_libs}"'|'	\
	  -e '/^# DIST: /d') > lib-src/Makefile.tmp
	@${srcdir}/move-if-change lib-src/Makefile.tmp lib-src/Makefile
	chmod -w lib-src/Makefile

src/Makefile: ${srcdir}/src/Makefile.in Makefile
	rm -f src/Makefile.tmp
	@echo "Producing \`src/Makefile' from \`${srcdir}/src/Makefile.in'."
	@(echo "# This file is generated from \`${srcdir}/src/Makefile.in'." ; \
	  echo "# If you are thinking about editing it, you should seriously consider" ; \
	  echo "# running \`make src/Makefile' at the top of the" ;	\
	  echo "# Emacs build tree instead, or editing" ;		\
	  echo "# \`${srcdir}/src/Makefile.in' itself." ;		\
	  /bin/sed < ${srcdir}/src/Makefile.in				\
	  -e 's|^\(srcdir *=\).*$$|\1'"${srcdir}"'|'			\
	  -e 's|^CC *=.*$$|CC='"${CC}"'|'				\
	  -e 's|^DEFS *=.*$$|DEFS='"${DEFS}"'|' \
	  -e '/^# DIST: /d') > src/Makefile.tmp
	@${srcdir}/move-if-change src/Makefile.tmp src/Makefile
	chmod -w src/Makefile

oldXMenu/Makefile: ${srcdir}/oldXMenu/Makefile Makefile
	echo "Producing \`src/Makefile' from \`${srcdir}/src/Makefile.in'."
	rm -f src/Makefile.tmp
	cp "${srcdir}"/oldXMenu/Makefile oldXMenu/Makefile


Makefile:
	./config.status

# ==================== Installation ====================

## If we let lib-src do its own installation, that means we
## don't have to duplicate the list of utilities to install in
## this Makefile as well.
install: all mkdir
	(cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir})
	-set ${COPYDESTS} ; \
	 for dir in ${COPYDIR} ; do \
	   dest=$$1 ; shift ; \
	   if [ `(cd $${dir}; /bin/pwd)` != `(cd $${dest}; /bin/pwd)` ]; then \
	     (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xf - ) ; \
	     for subdir in `find $${dest} -type d ! -name RCS -print` ; do \
	       rm -rf $${subdir}/RCS ; \
	       rm -rf $${subdir}/CVS ; \
	       rm -f  $${subdir}/\#* ; \
	       rm -f  $${subdir}/*~ ; \
	     done ; \
	   fi ; \
	 done
	-(cd info ; \
	  if [ ! -f ${infodir}/dir ]; then \
	    ${INSTALL_DATA} ${INSTALLFLAGS} -m 444 ./dir ${infodir}/dir ; \
	  fi ; \
	  if [ "`echo *.info*`" != "*.info*" ]; then \
	    for f in *.info* ; do \
	      ${INSTALL_DATA} ${INSTALLFLAGS} -m 444 $$f ${infodir}/$$f ; \
	    done ; \
	  fi)
	for page in emacs etags ctags ; do \
	  ${INSTALL_DATA} ${INSTALLFLAGS} -m 444 etc/$${page}.1 \
	    ${mandir}/$${page}${manext} ; \
	done
	${INSTALL_PROGRAM} ${INSTALLFLAGS} -m 1755 src/emacs \
	  ${bindir}/emacs-${version}
	-rm -f ${bindir}/emacs
	ln ${bindir}/emacs-${version} ${bindir}/emacs

## If we let lib-src do its own installation, that means we
## don't have to duplicate the list of utilities to install in
## this Makefile as well.
install.sysv: all mkdir
	(cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir})
	-set ${COPYDESTS} ; \
	 for dir in ${COPYDIR} ; do \
	   dest=$$1 ; shift ; \
	   if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \
	     (cd $${dir}; find . -print | cpio -pdum $${dest} ) ; \
	     for subdir in `find $${dest} -type d ! -name RCS -print` ; do \
	       rm -rf $${subdir}/RCS ; \
	       rm -rf $${subdir}/CVS ; \
	       rm -f  $${subdir}/\#* ; \
	       rm -f  $${subdir}/*~ ; \
	     done ; \
	   fi ; \
	 done
	-(cd info ; \
	  if [ ! -f ${infodir}/dir ]; then \
	    cpset ./dir ${infodir} 444 bin bin ; \
	  fi ; \
	  if [ "`echo *.info*`" != "*.info*" ]; then \
	    for f in *.info* ; do \
	       cpset $$f ${infodir} 444 bin bin ; \
	    done ; \
	  fi)
	-for page in emacs etags ctags ; do \
	  cpset etc/$${page}.1 ${mandir}/$${page}${manext} 444 bin bin ; \
	done
	-/bin/rm -f ${bindir}/emacs
	-cpset src/emacs ${bindir}/emacs-${version} 1755 bin bin
	-ln ${bindir}/emacs-${version} ${bindir}/emacs
  
## If we let lib-src do its own installation, that means we
## don't have to duplicate the list of utilities to install in
## this Makefile as well.
install.xenix: all mkdir
	(cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir})
	-set ${COPYDESTS} ; \
	 for dir in ${COPYDIR} ; do \
	   dest=$$1 ; shift ; \
	   if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \
	     (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xpf - ) ; \
	     for subdir in `find $${dest} -type d ! -name RCS -print` ; do \
	       rm -rf $${subdir}/RCS ; \
	       rm -rf $${subdir}/CVS ; \
	       rm -f  $${subdir}/\#* ; \
	       rm -f  $${subdir}/*~ ; \
	     done ; \
	   fi ; \
	 done
	-(cd info ; \
	  if [ ! -f ${infodir}/dir ]; then \
	    cp ./dir ${infodir} ; \
	    chmod 444 ${infodir}/dir ; \
	  fi ; \
	  if [ "`echo *.info*`" != "*.info*" ]; then \
	    for f in *.info* ; do \
	       cp $$f ${infodir} ; \
	       chmod 444 ${infodir}/$$f ; \
	    done ; \
	  fi)
	for page in emacs etags ctags ; do \
	  cp etc/$${page}.1 ${mandir}/$${page}${manext} ; \
	  chmod 444 ${mandir}/$${page}${manext} ; \
	done
	-mv -f ${bindir}/emacs ${bindir}/emacs.old
	cp src/emacs ${bindir}/emacs-${version}
	ln ${bindir}/emacs-${version} ${bindir}/emacs
	chmod 1755 ${bindir}/emacs
	-rm -f ${bindir}/emacs.old

## If we let lib-src do its own installation, that means we
## don't have to duplicate the list of utilities to install in
## this Makefile as well.
install.aix: all mkdir
	(cd lib-src; $(MAKE) install ${MFLAGS} bindir=${bindir} libdir=${libdir})
	-set ${COPYDESTS} ; \
	 for dir in ${COPYDIR} ; do \
	   dest=$$1 ; shift ; \
	   if [ `/bin/pwd`/$${dir} != `(cd $${dest}; /bin/pwd)` ] ; then \
	     (cd $${dir}; tar cf - . ) | (cd $${dest}; umask 0; tar xBf - ) ; \
	     for subdir in `find $${dest} -type d ! -name RCS -print` ; do \
	       rm -rf $${subdir}/RCS ; \
	       rm -rf $${subdir}/CVS ; \
	       rm -f  $${subdir}/\#* ; \
	       rm -f  $${subdir}/*~ ; \
	     done ; \
	   fi ; \
	 done
	-(cd info ; \
	  if [ ! -f ${infodir}/dir ]; then \
	    ${INSTALL_DATA} ${INSTALLFLAGS} -M 444 -f ${infodir} ./dir ; \
	  fi ; \
	  if [ "`echo *.info*`" != "*.info*" ]; then \
	    for f in *.info* ; do \
	       ${INSTALL_DATA} ${INSTALLFLAGS} -M 444 -f ${infodir} $$f ; \
	    done ; \
	  fi)
	${INSTALL_PROGRAM} ${INSTALLFLAGS} -M 1755 -f ${bindir} src/emacs
	mv ${bindir}/emacs ${bindir}/emacs-${version}
	for page in emacs etags ctags ; do \
	  ${INSTALL_DATA} ${INSTALLFLAGS} -M 444 -f ${mandir} etc/$${page}.1 ;\
	done
	-rm -f ${bindir}/emacs
	ln ${bindir}/emacs-${version} ${bindir}/emacs

### Build all the directories we're going to install Emacs in.	Since
### we may be creating several layers of directories (for example,
### /usr/local/lib/emacs/19.0/mips-dec-ultrix4.2), we use make-path
### instead of mkdir.  Not all systems' mkdirs have the `-p' flag.
mkdir: FRC
	./lib-src/make-path ${COPYDESTS} ${lockdir}
	chmod 777 ${COPYDESTS} ${lockdir}

FRC:


# ==================== Cleaning up and miscellanea ====================

### `clean'
###	 Delete all files from the current directory that are normally
###	 created by building the program.  Don't delete the files that
###	 record the configuration.  Also preserve files that could be made
###	 by building, but normally aren't because the distribution comes
###	 with them.
### `mostlyclean'
###	 Like `clean', but may refrain from deleting a few files that
###	 people normally don't want to recompile.  For example, the
###	 `mostlyclean' target for GCC does not delete `libgcc.a', because
###	 recompiling it is rarely necessary and takes a lot of time.
### 
clean mostlyclean:
	cd src; $(MAKE) clean
	cd lib-src; $(MAKE) clean
	cd oldXMenu; $(MAKE) clean
	if [ `(cd ${etcdir} ; /bin/pwd)` != `(cd etc; /bin/pwd)` ] ; then \
	  cd etc; $(MAKE) clean; \
	else true; \
	fi

### `distclean'
###	 Delete all files from the current directory that are created by
###	 configuring or building the program.  This should leave only the
###	 files that would be in the distribution.
distclean:
	for i in ${SUBDIR}; do (cd $$i; $(MAKE) ${MFLAGS} distclean); done
	-(cd lock; rm *)
	-rm config.status config-tmp-*

### `realclean'
###	 Delete everything from the current directory that can be
###	 reconstructed with this makefile.  This typically includes
###	 everything deleted by distclean, plus more: C source files
###	 produced by Bison, tags tables, info files, and so on.
realclean:
	for i in ${SUBDIR}; do (cd $$i; $(MAKE) ${MFLAGS} realclean); done
	(cd lock; rm *)
	rm config.status

### This doesn't actually appear in the coding standards, but Karl
### says GCC supports it, and that's where the configuration part of
### the coding standards seem to come from.  It's like distclean, but
### it deletes backup and autosave files too.
extraclean:
	for i in ${SUBDIR}; do (cd $$i; $(MAKE) ${MFLAGS} extraclean); done
	-(cd lock; rm *)
	-rm config.status config-tmp-*
	-rm -f *~ \#*

### Unlocking and relocking.  The idea of these productions is to reduce
### hassles when installing an incremental tar of Emacs.  Do `make unlock'
### before unlocking the file to take the write locks off all sources so
### that tar xvof will overwrite them without fuss.  Then do `make relock'
### afterward so that VC mode will know which files should be checked in
### if you want to mung them.
###
### Note: it's no disaster if these productions miss a file or two; tar
### and VC will swiftly let you know if this happens, and it is easily
### corrected.
SOURCES = ChangeLog GETTING.GNU.SOFTWARE INSTALL Makefile.in PROBLEMS \
	README build-install.in configure make-dist move-if-change

unlock:
	chmod u+w $(SOURCES) cpp/*
	-(cd elisp; chmod u+w Makefile README *.texi)
	(cd etc; make unlock)
	(cd lib-src; make unlock)
	(cd lisp; make unlock)
	(cd lisp/term; chmod u+w README *.el)
	(cd man; chmod u+w *texi* ChangeLog split-man)
	(cd oldXMenu; chmod u+w *.[ch] Makefile README)
	(cd src; make unlock)

relock:
	chmod u-w $(SOURCES) cpp/*
	-(cd elisp; chmod u-w Makefile README *.texi)
	(cd etc; make relock)
	(cd lib-src; make relock)
	(cd lisp; make relock)
	(cd lisp/term; chmod u+w README *.el)
	(cd man; chmod u+w *texi* ChangeLog split-man)
	(cd oldXMenu; chmod u+w *.[ch] Makefile README)
	(cd src; make relock)

TAGS tags:	lib-src
	(cd ${srcdir} ; lib-src/etags --output=./src/TAGS \
	 src/*.[ch] lisp/*.el lisp/term/*.el)

check:
	@echo "We don't have any tests for GNU Emacs yet."

dist:
	cd ${srcdir}; make-dist