1CPP = $(CC) -E
2MAKE = make  # BSD doesn't have it as a default.
3#Note: an alternative is  CPP = /lib/cpp
4
5all: xmakefile doall
6
7doall:
8	$(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} all
9
10#This is used in making a distribution.
11#Do not use it on development directories!
12distclean:
13	-rm -f paths.h config.h emacs-* temacs xemacs xmakefile core \
14   *~ \#* *.o libXMenu11.a log*
15
16clean:
17	-rm -f temacs xemacs xmakefile core \#* *.o libXMenu11.a
18
19xemacs: xmakefile doxemacs
20
21doxemacs:
22	$(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} xemacs
23
24temacs: xmakefile dotemacs
25
26dotemacs:
27	$(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} temacs
28
29# If you have a problem with cc -E here, changing
30# the definition of CPP above may fix it.
31xmakefile: ymakefile config.h
32	-rm -f xmakefile junk.c
33	cp ymakefile junk.c
34	$(CPP) -DYMAKEFILE junk.c | \
35	sed -e 's/^#.*//' -e 's/^[ 	][ 	]*$$//' -e 's/^ /	/' | \
36	sed -n -e '/^..*$$/p' > xmakefile
37	rm -f junk.c
38
39tags:
40	etags [a-z]*.h [a-z]*.c ../lisp/[a-z]*.el
41