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