-MAKE = make
-# BSD doesn't have it as a default.
-
-CC = gcc
-CPP = $(CC) -E
-#Note: an alternative is CPP = /lib/cpp
-
-# Just to avoid uncertainty.
-SHELL = /bin/sh
-
-all: xmakefile doall
-
-doall:
- $(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} all
-
-#This is used in making a distribution.
-#Do not use it on development directories!
-distclean:
- -rm -f paths.h config.h emacs-* temacs xemacs xmakefile core *~ \#* *.o
-
-clean:
- -rm -f temacs xemacs xmakefile core \#* *.o
-
-xemacs: xmakefile doxemacs
-
-doxemacs:
- $(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} xemacs
-
-temacs: xmakefile dotemacs
-
-dotemacs:
- $(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} temacs
-
-# If you have a problem with cc -E here, changing
-# the definition of CPP above may fix it.
-xmakefile: ymakefile config.h
- -rm -f xmakefile junk.c
- cp ymakefile junk.c
- $(CPP) junk.c | sed -e 's/^#.*//' -e 's/^[ \f\t][ \f\t]*$$//' -e 's/^ / /' | \
- sed -n -e '/^..*$$/p' > xmakefile
- rm -f junk.c
-
-tags TAGS:
- etags [a-z]*.h [a-z]*.c ../lisp/[a-z]*.el ../lisp/term/[a-z]*.el
+# 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 = make
+# BSD doesn't have it as a default.
+
+# ==================== Things `configure' might edit ====================
+
+CC=cc
+CONFIG_CFLAGS=-g
+srcdir=.
+
+# ============================= Targets ==============================
+
+CPP = $(CC) -E -Is -Im
+#Note: an alternative is CPP = /lib/cpp
+
+# Just to avoid uncertainty.
+SHELL = /bin/sh
+
+CFLAGS=${CONFIG_CFLAGS}
+
+all: doall
+
+doall: xmakefile
+ $(MAKE) CC='${CC}' -f xmakefile ${MFLAGS} all
+
+#This is used in making a distribution.
+#Do not use it on development directories!
+distclean:
+ -rm -f paths.h config.h emacs-* temacs emacs xmakefile core *.o
+
+clean:
+ -rm -f temacs emacs prefix-args xmakefile* core \#* *.o
+
+extraclean: distclean
+ -rm -f *~ \#* m/*~ s/*~
+
+emacs: doemacs
+
+doemacs: xmakefile
+ $(MAKE) CC='${CC}' -f xmakefile ${MFLAGS} emacs
+
+temacs: dotemacs
+
+dotemacs: xmakefile
+ $(MAKE) CC='${CC}' -f xmakefile ${MFLAGS} temacs
+
+### Some makes, like Ultrix's make, complain if you put a comment in
+### the middle of a rule's command list! Dummies.
+
+### The flags for optimization and debugging depend on the
+### system, so take an ordinary CFLAGS value and choose the
+### appropriate CPP symbols to use in ymakefile.
+### If you have a problem with cc -E here, changing
+### the definition of CPP above may fix it.
+xmakefile: ymakefile config.h
+ -rm -f xmakefile xmakefile.new junk.c junk.cpp
+ cp ymakefile junk.c
+ $(CPP) junk.c > junk.cpp \
+ -DC_SWITCH_SITE="`echo ${CFLAGS}' ' \
+ | sed -e 's/-g /C_DEBUG_SWITCH /' \
+ -e 's/-O /C_OPTIMIZE_SWITCH /`"
+ < junk.cpp \
+ sed -e 's/^#.*//' \
+ -e 's/^[ \f\t][ \f\t]*$$//' \
+ -e 's/^ / /' \
+ | sed -n -e '/^..*$$/p' \
+ > xmakefile.new
+ mv -f xmakefile.new xmakefile
+ chmod 444 xmakefile
+ rm -f junk.c junk.cpp
+
+tagsfiles = [a-z]*.h [a-z]*.c ../lisp/[a-z]*.el ../lisp/term/[a-z]*.el \
+ ../external-lisp/*.el
+TAGS: $(tagsfiles)
+ etags $(tagsfiles)
+tags: TAGS
+.PHONY: tags