]> code.delx.au - gnu-emacs/commitdiff
Revert to Unix line endings.
authorAndrew Innes <andrewi@gnu.org>
Thu, 14 Sep 2000 21:59:59 +0000 (21:59 +0000)
committerAndrew Innes <andrewi@gnu.org>
Thu, 14 Sep 2000 21:59:59 +0000 (21:59 +0000)
lib-src/makefile.w32-in
lisp/makefile.w32-in
nt/makefile.w32-in
src/makefile.w32-in

index fd1fbd9d07f0a9d2156a64b27b1ff5fa96d277b5..3654e82d01f96eec945692bdf3cebe672b54afd7 100644 (file)
-#  Makefile for GNU Emacs lib-src directory.\r
-#  Copyright (C) 1994, 2000 Free Software Foundation, Inc.\r
-#\r
-#  This file is part of GNU Emacs.\r
-#  \r
-#  GNU Emacs is free software; you can redistribute it and/or modify\r
-#  it under the terms of the GNU General Public License as published by\r
-#  the Free Software Foundation; either version 2, or (at your option)\r
-#  any later version.\r
-#  \r
-#  GNU Emacs is distributed in the hope that it will be useful,\r
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-#  GNU General Public License for more details.\r
-#  \r
-#  You should have received a copy of the GNU General Public License\r
-#  along with GNU Emacs; see the file COPYING.  If not, write to the\r
-#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
-#  Boston, MA 02111-1307, USA.\r
-#\r
-\r
-ALL          = make-docfile hexl ctags etags movemail fakemail\r
-\r
-.PHONY: $(ALL)\r
-\r
-LOCAL_FLAGS    = -DWINDOWSNT -DDOS_NT -DSTDC_HEADERS=1 -DNO_LDAV=1 \\r
-                 -DNO_ARCHIVES=1 -DHAVE_CONFIG_H=1 -I../nt/inc -I../src\r
-\r
-# don't know what (if) to do with these yet...\r
-#\r
-#              $(BLD)/sorted-doc.exe   \\r
-#              $(BLD)/env.exe          \\r
-#              $(BLD)/server.exe       \\r
-#              $(BLD)/emacstool.exe    \\r
-#              $(BLD)/leditcfns.exe    \\r
-#              $(BLD)/emacsclient.exe  \\r
-#              $(BLD)/cvtmail.exe      \\r
-#              $(BLD)/digest-doc.exe   \\r
-#              $(BLD)/test-distrib.exe \\r
-\r
-\r
-LIBS         = $(BASE_LIBS) $(ADVAPI32)\r
-\r
-$(BLD)/make-docfile.exe:       $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O)\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O) $(LIBS)\r
-$(BLD)/hexl.exe:               $(BLD)/hexl.$(O)\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/hexl.$(O) $(LIBS)\r
-$(BLD)/fakemail.exe:           $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O)\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O) $(LIBS)\r
-\r
-make-docfile:  $(BLD) $(BLD)/make-docfile.exe\r
-ctags:         $(BLD) $(BLD)/ctags.exe\r
-etags:         $(BLD) $(BLD)/etags.exe\r
-hexl:          $(BLD) $(BLD)/hexl.exe\r
-movemail:      $(BLD) $(BLD)/movemail.exe\r
-fakemail:      $(BLD) $(BLD)/fakemail.exe\r
-\r
-GETOPTOBJS = $(BLD)/getopt.$(O) $(BLD)/getopt1.$(O)\r
-GETOPTDEPS = $(GETOPTOBJS) getopt.h\r
-MOVEMAILOBJS =  $(BLD)/movemail.$(O) \\r
-               $(BLD)/pop.$(O) \\r
-               $(BLD)/ntlib.$(O) \\r
-               $(GETOPTOBJS)\r
-\r
-$(BLD)/movemail.exe:   $(MOVEMAILOBJS) getopt.h\r
-# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(MOVEMAILOBJS) $(WSOCK32) $(LIBS)\r
-\r
-ETAGSOBJ      = $(BLD)/etags.$(O) \\r
-               $(BLD)/getopt.$(O) \\r
-               $(BLD)/getopt1.$(O) \\r
-               $(BLD)/ntlib.$(O) \\r
-               $(BLD)/regex.$(O)\r
-\r
-$(BLD)/etags.exe:      $(ETAGSOBJ)\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS)\r
-\r
-\r
-$(BLD)/regex.$(O): ../src/regex.c ../src/regex.h ../src/config.h\r
-               $(CC)  $(CFLAGS) -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \\r
-               ../src/regex.c $(CC_OUT)$@\r
-\r
-ETAGS_CFLAGS  = -DHAVE_GETCWD\r
-$(BLD)/etags.$(O): etags.c\r
-               $(CC) $(CFLAGS) $(ETAGS_CFLAGS) $(CC_OUT)$@ etags.c\r
-\r
-CTAGSOBJ      = $(BLD)/ctags.$(O) \\r
-               $(BLD)/getopt.$(O) \\r
-               $(BLD)/getopt1.$(O) \\r
-               $(BLD)/ntlib.$(O) \\r
-               $(BLD)/regex.$(O)\r
-\r
-$(BLD)/ctags.exe:  $(CTAGSOBJ)\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(CTAGSOBJ) $(LIBS)\r
-\r
-ctags.c:       etags.c\r
-               - $(DEL) ctags.c\r
-               $(CP) etags.c ctags.c\r
-\r
-CTAGS_CFLAGS  = -DCTAGS $(ETAGS_CFLAGS)\r
-$(BLD)/ctags.$(O): ctags.c\r
-               $(CC) $(CFLAGS) $(CTAGS_CFLAGS) $(CC_OUT)$@ ctags.c\r
-\r
-#\r
-# don't know what to do with these yet...\r
-#\r
-# $(BLD)/sorted-doc.exe:       $(BLD)/sorted-doc.$(O)\r
-# $(BLD)/yow.exe:              $(BLD)/yow.$(O)\r
-# $(BLD)/emacstool.exe:        $(BLD)/emacstool.$(O)\r
-# $(BLD)/leditcfns.exe:        $(BLD)/leditcfns.$(O)\r
-# $(BLD)/server.exe:           $(BLD)/server.$(O)\r
-# $(BLD)/cvtmail.exe:          $(BLD)/cvtmail.$(O)\r
-# $(BLD)/digest-doc.exe:       $(BLD)/digest-doc.$(O)\r
-# $(BLD)/emacsclient.exe:      $(BLD)/emacsclient.$(O)\r
-# $(BLD)/test-distrib.exe:     $(BLD)/test-distrib.$(O)\r
-\r
-#\r
-# From ..\src\makefile.nt.\r
-#\r
-obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c cm.c cmds.c charset.c coding.c category.c ccl.c data.c dired.c dispnew.c doc.c  doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c fns.c fontset.c indent.c insdel.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c xfaces.c mocklisp.c print.c process.c regex.c scroll.c search.c syntax.c sysdep.c term.c termcap.c tparam.c undo.c unexw32.c window.c xdisp.c casetab.c floatfns.c frame.c gmalloc.c intervals.c ralloc.c textprop.c vm-limit.c region-cache.c strftime.c w32.c w32console.c xfaces.c w32fns.c w32heap.c w32inevt.c w32proc.c w32reg.c w32menu.c w32select.c w32term.c w32xfns.c \r
-\r
-#\r
-# These are the lisp files that are loaded up in loadup.el\r
-#\r
-lispsource = ../lisp/\r
-\r
-FACE_SUPPORT = $(lispsource)facemenu.elc\r
-MOUSE_SUPPORT = $(lispsource)select.elc $(lispsource)scroll-bar.elc\r
-FLOAT_SUPPORT = $(lispsource)float-sup.elc\r
-WINNT_SUPPORT = $(lispsource)ls-lisp.elc $(lispsource)w32-fns.elc $(lispsource)dos-w32.elc\r
-\r
-lisp= \\r
-       $(lispsource)abbrev.elc \\r
-       $(lispsource)buff-menu.elc \\r
-       $(lispsource)byte-run.elc \\r
-       $(lispsource)cus-start.el \\r
-       $(lispsource)custom.elc \\r
-       $(lispsource)faces.elc \\r
-       $(lispsource)files.elc \\r
-       $(lispsource)textmodes/fill.elc \\r
-       $(lispsource)format.elc \\r
-       $(FACE_SUPPORT) \\r
-       $(MOUSE_SUPPORT) \\r
-       $(FLOAT_SUPPORT) \\r
-       $(lispsource)frame.elc\\r
-       $(X_WINDOWS_SUPPORT) \\r
-       $(lispsource)help.elc \\r
-       $(lispsource)indent.elc \\r
-       $(lispsource)isearch.elc \\r
-       $(lispsource)emacs-lisp/lisp-mode.elc \\r
-       $(lispsource)emacs-lisp/lisp.elc \\r
-       $(lispsource)loadup.el \\r
-       $(lispsource)loaddefs.el \\r
-       $(lispsource)map-ynp.elc \\r
-       $(lispsource)menu-bar.elc \\r
-       $(lispsource)international/mule.elc \\r
-       $(lispsource)international/mule-conf.el \\r
-       $(lispsource)international/mule-cmds.elc \\r
-       $(lispsource)international/characters.elc \\r
-       $(lispsource)language/chinese.elc \\r
-       $(lispsource)language/cyrillic.elc \\r
-       $(lispsource)language/devanagari.elc \\r
-       $(lispsource)language/english.elc \\r
-       $(lispsource)language/ethiopic.elc \\r
-       $(lispsource)language/european.elc \\r
-       $(lispsource)language/greek.elc \\r
-       $(lispsource)language/hebrew.elc \\r
-       $(lispsource)language/indian.elc \\r
-       $(lispsource)language/japanese.elc \\r
-       $(lispsource)language/korean.elc \\r
-       $(lispsource)language/lao.elc \\r
-       $(lispsource)language/thai.elc \\r
-       $(lispsource)language/tibetan.elc \\r
-       $(lispsource)language/vietnamese.elc \\r
-       $(lispsource)language/misc-lang.elc \\r
-       $(lispsource)textmodes/page.elc \\r
-       $(lispsource)textmodes/paragraphs.elc \\r
-       $(lispsource)paths.el \\r
-       $(lispsource)register.elc \\r
-       $(lispsource)replace.elc \\r
-       $(lispsource)simple.elc \\r
-       $(lispsource)startup.elc \\r
-       $(lispsource)subr.elc \\r
-       $(lispsource)textmodes/text-mode.elc \\r
-       $(lispsource)vc-hooks.elc \\r
-       $(lispsource)ediff-hook.elc \\r
-       $(VMS_SUPPORT) \\r
-       $(MSDOS_SUPPORT) \\r
-       $(WINNT_SUPPORT) \\r
-       $(lispsource)window.elc \\r
-       $(lispsource)version.el\r
-\r
-\r
-DOC          = DOC \r
-$(DOC):                $(BLD)/make-docfile.exe\r
-               - $(DEL) $(DOC)\r
-               "./$(BLD)/make-docfile" -d ../src $(obj) > $(DOC)\r
-               "./$(BLD)/make-docfile" -d ../src $(lisp) >> $(DOC)\r
-               $(CP) $(DOC) ../etc/DOC-X\r
-               - mkdir "../src/$(OBJDIR)"\r
-               - mkdir "../src/$(OBJDIR)/etc"\r
-               $(CP) $(DOC) ../src/$(OBJDIR)/etc/DOC-X\r
-\r
-{$(BLD)}.$(O){$(BLD)}.exe:\r
-               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $*.$(O) $(LIBS)\r
-\r
-#\r
-# Build the executables\r
-#\r
-all:           $(BLD) $(ALL) $(DOC)\r
-\r
-#\r
-# Assuming INSTALL_DIR is defined, build and install emacs in it.\r
-#\r
-INSTALL_FILES = $(ALL)\r
-install:       $(INSTALL_FILES)\r
-               - mkdir "$(INSTALL_DIR)/bin"\r
-               $(CP) $(BLD)/etags.exe $(INSTALL_DIR)/bin\r
-               $(CP) $(BLD)/ctags.exe $(INSTALL_DIR)/bin\r
-               $(CP) $(BLD)/hexl.exe $(INSTALL_DIR)/bin\r
-               $(CP) $(BLD)/movemail.exe $(INSTALL_DIR)/bin\r
-               $(CP) $(BLD)/fakemail.exe $(INSTALL_DIR)/bin\r
-               - mkdir "$(INSTALL_DIR)/etc"\r
-               $(CP) $(DOC) $(INSTALL_DIR)/etc\r
-\r
-#\r
-# Maintenance\r
-# \r
-clean:\r
-               - $(DEL) *~ *.pdb DOC*\r
-               - $(DEL) ctags.c\r
-               - $(DEL_TREE) $(OBJDIR)\r
-\r
-cleanall:      clean\r
-               - $(DEL_TREE) obj\r
-               - $(DEL_TREE) obj-spd\r
-               - $(DEL_TREE) oo\r
-               - $(DEL_TREE) oo-spd\r
-\r
-#\r
-# Headers we would preprocess if we could.\r
-#\r
-../src/config.h:       ../nt/$(CONFIG_H)\r
-                       $(CP) $(ALL_DEPS) $@\r
-../src/paths.h:                ../nt/paths.h\r
-                       $(CP) $(ALL_DEPS) $@\r
-\r
-### DEPENDENCIES ###\r
-\r
-EMACS_ROOT     = ..\r
-SRC            = .\r
-\r
-$(BLD)/alloca.$(O) : \\r
-       $(SRC)/alloca.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/src/blockinput.h\r
-\r
-$(BLD)/b2m.$(O) : \\r
-       $(SRC)/b2m.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h\r
-\r
-$(BLD)/ctags.$(O) : \\r
-       $(SRC)/ctags.c \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(SRC)/ntlib.h \\r
-       $(SRC)/getopt.h\r
-\r
-$(BLD)/cvtmail.$(O) : \\r
-       $(SRC)/cvtmail.c\r
-\r
-$(BLD)/digest-doc.$(O) : \\r
-       $(SRC)/digest-doc.c\r
-\r
-$(BLD)/emacsclient.$(O) : \\r
-       $(SRC)/emacsclient.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h\r
-\r
-$(BLD)/emacsserver.$(O) : \\r
-       $(SRC)/emacsserver.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h\r
-\r
-$(BLD)/emacstool.$(O) : \\r
-       $(SRC)/emacstool.c \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h\r
-\r
-$(BLD)/etags.$(O) : \\r
-       $(SRC)/etags.c \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(SRC)/ntlib.h \\r
-       $(SRC)/getopt.h\r
-\r
-$(BLD)/fakemail.$(O) : \\r
-       $(SRC)/fakemail.c \\r
-       $(SRC)/ntlib.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h\r
-\r
-$(BLD)/getdate.$(O) : \\r
-       $(SRC)/getdate.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(MSTOOLS_SYS)/types.h\r
-\r
-$(BLD)/getopt.$(O) : \\r
-       $(SRC)/getopt.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/ntlib.h \\r
-       $(SRC)/getopt.h\r
-\r
-$(BLD)/getopt1.$(O) : \\r
-       $(SRC)/getopt1.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/getopt.h\r
-\r
-$(BLD)/hexl.$(O) : \\r
-       $(SRC)/hexl.c\r
-\r
-$(BLD)/leditcfns.$(O) : \\r
-       $(SRC)/leditcfns.c\r
-\r
-$(BLD)/make-docfile.$(O) : \\r
-       $(SRC)/make-docfile.c \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/make-path.$(O) : \\r
-       $(SRC)/make-path.c\r
-\r
-$(BLD)/movemail.$(O) : \\r
-       $(SRC)/movemail.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(EMACS_ROOT)/src/vmsproc.h \\r
-       $(EMACS_ROOT)/lib-src/../src/syswait.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h \\r
-       $(SRC)/ntlib.h\r
-               $(CC) $(CFLAGS) -DUSG $(CC_OUT)$@ movemail.c\r
-\r
-$(BLD)/ntlib.$(O) : \\r
-       $(SRC)/ntlib.c \\r
-       $(SRC)/ntlib.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h\r
-\r
-$(BLD)/pop.$(O) : \\r
-       $(SRC)/pop.c \\r
-       $(SRC)/pop.h \\r
-       $(SRC)/ntlib.h\r
-\r
-$(BLD)/profile.$(O) : \\r
-       $(SRC)/profile.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h \\r
-       $(EMACS_ROOT)/src/vmstime.h \\r
-       $(EMACS_ROOT)/lib-src/../src/systime.h\r
-\r
-$(BLD)/qsort.$(O) : \\r
-       $(SRC)/qsort.c\r
-\r
-$(BLD)/sorted-doc.$(O) : \\r
-       $(SRC)/sorted-doc.c\r
-\r
-$(BLD)/tcp.$(O) : \\r
-       $(SRC)/tcp.c\r
-\r
-$(BLD)/test-distrib.$(O) : \\r
-       $(SRC)/test-distrib.c\r
-\r
-$(BLD)/timer.$(O) : \\r
-       $(SRC)/timer.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/lib-src/../src/config.h\r
-\r
-$(BLD)/yow.$(O) : \\r
-       $(SRC)/yow.c \\r
-       $(EMACS_ROOT)/lib-src/../src/paths.h\r
+#  Makefile for GNU Emacs lib-src directory.
+#  Copyright (C) 1994, 2000 Free Software Foundation, Inc.
+#
+#  This file is part of GNU Emacs.
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to the
+#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+#  Boston, MA 02111-1307, USA.
+#
+
+ALL          = make-docfile hexl ctags etags movemail fakemail
+
+.PHONY: $(ALL)
+
+LOCAL_FLAGS    = -DWINDOWSNT -DDOS_NT -DSTDC_HEADERS=1 -DNO_LDAV=1 \
+                 -DNO_ARCHIVES=1 -DHAVE_CONFIG_H=1 -I../nt/inc -I../src
+
+# don't know what (if) to do with these yet...
+#
+#              $(BLD)/sorted-doc.exe   \
+#              $(BLD)/env.exe          \
+#              $(BLD)/server.exe       \
+#              $(BLD)/emacstool.exe    \
+#              $(BLD)/leditcfns.exe    \
+#              $(BLD)/emacsclient.exe  \
+#              $(BLD)/cvtmail.exe      \
+#              $(BLD)/digest-doc.exe   \
+#              $(BLD)/test-distrib.exe \
+
+
+LIBS         = $(BASE_LIBS) $(ADVAPI32)
+
+$(BLD)/make-docfile.exe:       $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O)
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O) $(LIBS)
+$(BLD)/hexl.exe:               $(BLD)/hexl.$(O)
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/hexl.$(O) $(LIBS)
+$(BLD)/fakemail.exe:           $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O)
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O) $(LIBS)
+
+make-docfile:  $(BLD) $(BLD)/make-docfile.exe
+ctags:         $(BLD) $(BLD)/ctags.exe
+etags:         $(BLD) $(BLD)/etags.exe
+hexl:          $(BLD) $(BLD)/hexl.exe
+movemail:      $(BLD) $(BLD)/movemail.exe
+fakemail:      $(BLD) $(BLD)/fakemail.exe
+
+GETOPTOBJS = $(BLD)/getopt.$(O) $(BLD)/getopt1.$(O)
+GETOPTDEPS = $(GETOPTOBJS) getopt.h
+MOVEMAILOBJS =  $(BLD)/movemail.$(O) \
+               $(BLD)/pop.$(O) \
+               $(BLD)/ntlib.$(O) \
+               $(GETOPTOBJS)
+
+$(BLD)/movemail.exe:   $(MOVEMAILOBJS) getopt.h
+# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(MOVEMAILOBJS) $(WSOCK32) $(LIBS)
+
+ETAGSOBJ      = $(BLD)/etags.$(O) \
+               $(BLD)/getopt.$(O) \
+               $(BLD)/getopt1.$(O) \
+               $(BLD)/ntlib.$(O) \
+               $(BLD)/regex.$(O)
+
+$(BLD)/etags.exe:      $(ETAGSOBJ)
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS)
+
+
+$(BLD)/regex.$(O): ../src/regex.c ../src/regex.h ../src/config.h
+               $(CC)  $(CFLAGS) -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \
+               ../src/regex.c $(CC_OUT)$@
+
+ETAGS_CFLAGS  = -DHAVE_GETCWD
+$(BLD)/etags.$(O): etags.c
+               $(CC) $(CFLAGS) $(ETAGS_CFLAGS) $(CC_OUT)$@ etags.c
+
+CTAGSOBJ      = $(BLD)/ctags.$(O) \
+               $(BLD)/getopt.$(O) \
+               $(BLD)/getopt1.$(O) \
+               $(BLD)/ntlib.$(O) \
+               $(BLD)/regex.$(O)
+
+$(BLD)/ctags.exe:  $(CTAGSOBJ)
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(CTAGSOBJ) $(LIBS)
+
+ctags.c:       etags.c
+               - $(DEL) ctags.c
+               $(CP) etags.c ctags.c
+
+CTAGS_CFLAGS  = -DCTAGS $(ETAGS_CFLAGS)
+$(BLD)/ctags.$(O): ctags.c
+               $(CC) $(CFLAGS) $(CTAGS_CFLAGS) $(CC_OUT)$@ ctags.c
+
+#
+# don't know what to do with these yet...
+#
+# $(BLD)/sorted-doc.exe:       $(BLD)/sorted-doc.$(O)
+# $(BLD)/yow.exe:              $(BLD)/yow.$(O)
+# $(BLD)/emacstool.exe:        $(BLD)/emacstool.$(O)
+# $(BLD)/leditcfns.exe:        $(BLD)/leditcfns.$(O)
+# $(BLD)/server.exe:           $(BLD)/server.$(O)
+# $(BLD)/cvtmail.exe:          $(BLD)/cvtmail.$(O)
+# $(BLD)/digest-doc.exe:       $(BLD)/digest-doc.$(O)
+# $(BLD)/emacsclient.exe:      $(BLD)/emacsclient.$(O)
+# $(BLD)/test-distrib.exe:     $(BLD)/test-distrib.$(O)
+
+#
+# From ..\src\makefile.nt.
+#
+obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c cm.c cmds.c charset.c coding.c category.c ccl.c data.c dired.c dispnew.c doc.c  doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c fns.c fontset.c indent.c insdel.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c xfaces.c mocklisp.c print.c process.c regex.c scroll.c search.c syntax.c sysdep.c term.c termcap.c tparam.c undo.c unexw32.c window.c xdisp.c casetab.c floatfns.c frame.c gmalloc.c intervals.c ralloc.c textprop.c vm-limit.c region-cache.c strftime.c w32.c w32console.c xfaces.c w32fns.c w32heap.c w32inevt.c w32proc.c w32reg.c w32menu.c w32select.c w32term.c w32xfns.c 
+
+#
+# These are the lisp files that are loaded up in loadup.el
+#
+lispsource = ../lisp/
+
+FACE_SUPPORT = $(lispsource)facemenu.elc
+MOUSE_SUPPORT = $(lispsource)select.elc $(lispsource)scroll-bar.elc
+FLOAT_SUPPORT = $(lispsource)float-sup.elc
+WINNT_SUPPORT = $(lispsource)ls-lisp.elc $(lispsource)w32-fns.elc $(lispsource)dos-w32.elc
+
+lisp= \
+       $(lispsource)abbrev.elc \
+       $(lispsource)buff-menu.elc \
+       $(lispsource)byte-run.elc \
+       $(lispsource)cus-start.el \
+       $(lispsource)custom.elc \
+       $(lispsource)faces.elc \
+       $(lispsource)files.elc \
+       $(lispsource)textmodes/fill.elc \
+       $(lispsource)format.elc \
+       $(FACE_SUPPORT) \
+       $(MOUSE_SUPPORT) \
+       $(FLOAT_SUPPORT) \
+       $(lispsource)frame.elc\
+       $(X_WINDOWS_SUPPORT) \
+       $(lispsource)help.elc \
+       $(lispsource)indent.elc \
+       $(lispsource)isearch.elc \
+       $(lispsource)emacs-lisp/lisp-mode.elc \
+       $(lispsource)emacs-lisp/lisp.elc \
+       $(lispsource)loadup.el \
+       $(lispsource)loaddefs.el \
+       $(lispsource)map-ynp.elc \
+       $(lispsource)menu-bar.elc \
+       $(lispsource)international/mule.elc \
+       $(lispsource)international/mule-conf.el \
+       $(lispsource)international/mule-cmds.elc \
+       $(lispsource)international/characters.elc \
+       $(lispsource)language/chinese.elc \
+       $(lispsource)language/cyrillic.elc \
+       $(lispsource)language/devanagari.elc \
+       $(lispsource)language/english.elc \
+       $(lispsource)language/ethiopic.elc \
+       $(lispsource)language/european.elc \
+       $(lispsource)language/greek.elc \
+       $(lispsource)language/hebrew.elc \
+       $(lispsource)language/indian.elc \
+       $(lispsource)language/japanese.elc \
+       $(lispsource)language/korean.elc \
+       $(lispsource)language/lao.elc \
+       $(lispsource)language/thai.elc \
+       $(lispsource)language/tibetan.elc \
+       $(lispsource)language/vietnamese.elc \
+       $(lispsource)language/misc-lang.elc \
+       $(lispsource)textmodes/page.elc \
+       $(lispsource)textmodes/paragraphs.elc \
+       $(lispsource)paths.el \
+       $(lispsource)register.elc \
+       $(lispsource)replace.elc \
+       $(lispsource)simple.elc \
+       $(lispsource)startup.elc \
+       $(lispsource)subr.elc \
+       $(lispsource)textmodes/text-mode.elc \
+       $(lispsource)vc-hooks.elc \
+       $(lispsource)ediff-hook.elc \
+       $(VMS_SUPPORT) \
+       $(MSDOS_SUPPORT) \
+       $(WINNT_SUPPORT) \
+       $(lispsource)window.elc \
+       $(lispsource)version.el
+
+
+DOC          = DOC 
+$(DOC):                $(BLD)/make-docfile.exe
+               - $(DEL) $(DOC)
+               "./$(BLD)/make-docfile" -d ../src $(obj) > $(DOC)
+               "./$(BLD)/make-docfile" -d ../src $(lisp) >> $(DOC)
+               $(CP) $(DOC) ../etc/DOC-X
+               - mkdir "../src/$(OBJDIR)"
+               - mkdir "../src/$(OBJDIR)/etc"
+               $(CP) $(DOC) ../src/$(OBJDIR)/etc/DOC-X
+
+{$(BLD)}.$(O){$(BLD)}.exe:
+               $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $*.$(O) $(LIBS)
+
+#
+# Build the executables
+#
+all:           $(BLD) $(ALL) $(DOC)
+
+#
+# Assuming INSTALL_DIR is defined, build and install emacs in it.
+#
+INSTALL_FILES = $(ALL)
+install:       $(INSTALL_FILES)
+               - mkdir "$(INSTALL_DIR)/bin"
+               $(CP) $(BLD)/etags.exe $(INSTALL_DIR)/bin
+               $(CP) $(BLD)/ctags.exe $(INSTALL_DIR)/bin
+               $(CP) $(BLD)/hexl.exe $(INSTALL_DIR)/bin
+               $(CP) $(BLD)/movemail.exe $(INSTALL_DIR)/bin
+               $(CP) $(BLD)/fakemail.exe $(INSTALL_DIR)/bin
+               - mkdir "$(INSTALL_DIR)/etc"
+               $(CP) $(DOC) $(INSTALL_DIR)/etc
+
+#
+# Maintenance
+# 
+clean:
+               - $(DEL) *~ *.pdb DOC*
+               - $(DEL) ctags.c
+               - $(DEL_TREE) $(OBJDIR)
+
+cleanall:      clean
+               - $(DEL_TREE) obj
+               - $(DEL_TREE) obj-spd
+               - $(DEL_TREE) oo
+               - $(DEL_TREE) oo-spd
+
+#
+# Headers we would preprocess if we could.
+#
+../src/config.h:       ../nt/$(CONFIG_H)
+                       $(CP) $(ALL_DEPS) $@
+../src/paths.h:                ../nt/paths.h
+                       $(CP) $(ALL_DEPS) $@
+
+### DEPENDENCIES ###
+
+EMACS_ROOT     = ..
+SRC            = .
+
+$(BLD)/alloca.$(O) : \
+       $(SRC)/alloca.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/src/blockinput.h
+
+$(BLD)/b2m.$(O) : \
+       $(SRC)/b2m.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h
+
+$(BLD)/ctags.$(O) : \
+       $(SRC)/ctags.c \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(SRC)/ntlib.h \
+       $(SRC)/getopt.h
+
+$(BLD)/cvtmail.$(O) : \
+       $(SRC)/cvtmail.c
+
+$(BLD)/digest-doc.$(O) : \
+       $(SRC)/digest-doc.c
+
+$(BLD)/emacsclient.$(O) : \
+       $(SRC)/emacsclient.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h
+
+$(BLD)/emacsserver.$(O) : \
+       $(SRC)/emacsserver.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h
+
+$(BLD)/emacstool.$(O) : \
+       $(SRC)/emacstool.c \
+       $(EMACS_ROOT)/nt/inc/sys/file.h
+
+$(BLD)/etags.$(O) : \
+       $(SRC)/etags.c \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(SRC)/ntlib.h \
+       $(SRC)/getopt.h
+
+$(BLD)/fakemail.$(O) : \
+       $(SRC)/fakemail.c \
+       $(SRC)/ntlib.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h
+
+$(BLD)/getdate.$(O) : \
+       $(SRC)/getdate.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(MSTOOLS_SYS)/types.h
+
+$(BLD)/getopt.$(O) : \
+       $(SRC)/getopt.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/ntlib.h \
+       $(SRC)/getopt.h
+
+$(BLD)/getopt1.$(O) : \
+       $(SRC)/getopt1.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/getopt.h
+
+$(BLD)/hexl.$(O) : \
+       $(SRC)/hexl.c
+
+$(BLD)/leditcfns.$(O) : \
+       $(SRC)/leditcfns.c
+
+$(BLD)/make-docfile.$(O) : \
+       $(SRC)/make-docfile.c \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/make-path.$(O) : \
+       $(SRC)/make-path.c
+
+$(BLD)/movemail.$(O) : \
+       $(SRC)/movemail.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(EMACS_ROOT)/src/vmsproc.h \
+       $(EMACS_ROOT)/lib-src/../src/syswait.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h \
+       $(SRC)/ntlib.h
+               $(CC) $(CFLAGS) -DUSG $(CC_OUT)$@ movemail.c
+
+$(BLD)/ntlib.$(O) : \
+       $(SRC)/ntlib.c \
+       $(SRC)/ntlib.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h
+
+$(BLD)/pop.$(O) : \
+       $(SRC)/pop.c \
+       $(SRC)/pop.h \
+       $(SRC)/ntlib.h
+
+$(BLD)/profile.$(O) : \
+       $(SRC)/profile.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h \
+       $(EMACS_ROOT)/src/vmstime.h \
+       $(EMACS_ROOT)/lib-src/../src/systime.h
+
+$(BLD)/qsort.$(O) : \
+       $(SRC)/qsort.c
+
+$(BLD)/sorted-doc.$(O) : \
+       $(SRC)/sorted-doc.c
+
+$(BLD)/tcp.$(O) : \
+       $(SRC)/tcp.c
+
+$(BLD)/test-distrib.$(O) : \
+       $(SRC)/test-distrib.c
+
+$(BLD)/timer.$(O) : \
+       $(SRC)/timer.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/lib-src/../src/config.h
+
+$(BLD)/yow.$(O) : \
+       $(SRC)/yow.c \
+       $(EMACS_ROOT)/lib-src/../src/paths.h
index db9c23f633157f5e58297875ec230029ebbfedf3..705f3e6aa0cbe9554533bb9f1787d35b10d25475 100644 (file)
-#  Hacked up Nmake makefile for GNU Emacs\r
-#   Geoff Voelker (voelker@cs.washington.edu)\r
-#  Copyright (c) 1994 Free Software Foundation, Inc.\r
-#\r
-#  This file is part of GNU Emacs.\r
-#  \r
-#  GNU Emacs is free software; you can redistribute it and/or modify\r
-#  it under the terms of the GNU General Public License as published by\r
-#  the Free Software Foundation; either version 2, or (at your option)\r
-#  any later version.\r
-#  \r
-#  GNU Emacs is distributed in the hope that it will be useful,\r
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-#  GNU General Public License for more details.\r
-#  \r
-#  You should have received a copy of the GNU General Public License\r
-#  along with GNU Emacs; see the file COPYING.  If not, write to the\r
-#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
-#  Boston, MA 02111-1307, USA.\r
-#\r
-\r
-ALL =\r
-\r
-all: $(ALL)\r
-\r
-SQUOTE='\r
-# '\r
-\r
-#lisp=$(MAKEDIR:\=/)\r
-lisp=.\r
-\r
-# You can specify a different executable on the make command line,\r
-# e.g. "make EMACS=../src/emacs ...".\r
-\r
-EMACS = "../bin/emacs.exe"\r
-\r
-# Command line flags for Emacs.  This must include --multibyte,\r
-# otherwise some files will not compile.\r
-\r
-EMACSOPT = -batch --no-init-file --no-site-file --multibyte\r
-\r
-lisptagsfiles1 = $(lisp)/*.el\r
-lisptagsfiles2 = $(lisp)/*/*.el\r
-ETAGS = "../lib-src/$(BLD)/etags"\r
-\r
-# Files which should not be compiled.\r
-# - emacs-lisp/cl-specs.el:  only contains `def-edebug-spec's so there's\r
-#   no point compiling it, although it doesn't hurt.\r
-\r
-DONTCOMPILE = \\r
-       $(lisp)/bindings.el \\r
-       $(lisp)/cus-load.el \\r
-       $(lisp)/cus-start.el \\r
-       $(lisp)/emacs-lisp/cl-specs.el \\r
-       $(lisp)/eshell/esh-maint.el \\r
-       $(lisp)/eshell/esh-groups.el \\r
-       $(lisp)/finder-inf.el \\r
-       $(lisp)/forms-d2.el \\r
-       $(lisp)/forms-pass.el \\r
-       $(lisp)/generic-x.el \\r
-       $(lisp)/international/latin-1.el \\r
-       $(lisp)/international/latin-2.el \\r
-       $(lisp)/international/latin-3.el \\r
-       $(lisp)/international/latin-4.el \\r
-       $(lisp)/international/latin-5.el \\r
-       $(lisp)/international/latin-8.el \\r
-       $(lisp)/international/latin-9.el \\r
-       $(lisp)/international/mule-conf.el \\r
-       $(lisp)/loaddefs.el \\r
-       $(lisp)/loadup.el \\r
-       $(lisp)/mail/blessmail.el \\r
-       $(lisp)/mail/sc.el \\r
-       $(lisp)/patcomp.el \\r
-       $(lisp)/paths.el \\r
-       $(lisp)/play/bruce.el \\r
-       $(lisp)/subdirs.el \\r
-       $(lisp)/term/internal.el \\r
-       $(lisp)/version.el\r
-\r
-# Files to compile before others during a bootstrap.  This is done\r
-# to speed up the bootstrap process.\r
-\r
-COMPILE_FIRST = \\r
-       $(lisp)/emacs-lisp/byte-opt.el \\r
-       $(lisp)/emacs-lisp/bytecomp.el \\r
-       $(lisp)/subr.el\r
-\r
-# The actual Emacs command run in the targets below.\r
-\r
-emacs = $(EMACS) $(EMACSOPT)\r
-\r
-# Common command to find subdirectories\r
-\r
-setwins=subdirs=`find $$wd -type d -print`; \\r
-       for file in $$subdirs; do \\r
-          case $$file in */Old | */RCS | */CVS | */CVS/* | */=* ) ;; \\r
-               *) wins="$$wins $$file" ;; \\r
-          esac; \\r
-        done\r
-\r
-# Have to define the list of subdirs manually when not using sh.\r
-WINS=\\r
-       calendar \\r
-       emacs-lisp \\r
-       emulation \\r
-       eshell \\r
-       gnus \\r
-       international \\r
-       language \\r
-       mail \\r
-       net \\r
-       play \\r
-       progmodes \\r
-       term \\r
-       textmodes\r
-\r
-doit:\r
-\r
-cus-load.el:\r
-       touch $@\r
-custom-deps: cus-load.el doit\r
-       @echo Directories: $(WINS)\r
-       $(emacs) -l cus-dep --eval $(ARGQUOTE)(setq find-file-hooks nil)$(ARGQUOTE) -f custom-make-dependencies $(lisp) $(WINS)\r
-\r
-finder-inf.el:\r
-       echo (provide $(SQUOTE)finder-inf)>> $@\r
-\r
-finder-data: finder-inf.el doit\r
-       @echo Directories: $(WINS)\r
-       $(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS)\r
-\r
-loaddefs.el:\r
-       echo ;;; loaddefs.el --- automatically extracted autoloads> $@\r
-       echo ;;; Code:>> $@\r
-       echo \f>> $@\r
-       echo ;;; Local Variables:>> $@\r
-       echo ;;; version-control: never>> $@\r
-       echo ;;; no-byte-compile: t>> $@\r
-       echo ;;; no-update-autoloads: t>> $@\r
-       echo ;;; End:>> $@\r
-       echo ;;; loaddefs.el ends here>> $@\r
-\r
-autoloads: loaddefs.el doit\r
-       @echo Directories: $(WINS)\r
-       set EMACSLOADPATH=$(lisp)\r
-       $(SETLOADPATH) $(emacs) -l autoload --eval $(ARGQUOTE)(setq find-file-hooks nil generated-autoload-file $(DQUOTE)$(lisp)/loaddefs.el$(DQUOTE))$(ARGQUOTE) -f batch-update-autoloads $(lisp) $(WINS)\r
-\r
-subdirs.el:\r
-       $(MAKE) $(MFLAGS) update-subdirs\r
-\r
-# Need separate version for sh and native cmd.exe\r
-update-subdirs: update-subdirs-$(SHELLTYPE)\r
-\r
-update-subdirs-CMD: doit\r
-       @set QWINS=\r
-       @for %d in ($(WINS)) do if not (%d)==(term) set QWINS=%QWINS% "%d"\r
-       echo ;; In load-path, after this directory should come> subdirs.el\r
-       echo ;; certain of its subdirectories.  Here we specify them.>> subdirs.el\r
-       echo (normal-top-level-add-to-load-path $(SQUOTE)(%QWINS%))>> subdirs.el\r
-\r
-update-subdirs-SH: doit\r
-       wd=$(lisp); $(setwins); \\r
-       for file in $$wins; do \\r
-          $(srcdir)/update-subdirs $$file; \\r
-       done;\r
-\r
-updates: update-subdirs autoloads finder-data custom-deps\r
-\r
-TAGS: $(lisptagsfiles1) $(lisptagsfiles2)\r
-       $(ETAGS) $(lisptagsfiles1) $(lisptagsfiles2)\r
-\r
-TAGS-LISP: $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2)\r
-       $(ETAGS) -o TAGS-LISP $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2)\r
-\r
-.el.elc:\r
-       set EMACSLOADPATH=$(lisp)\r
-       -$(SETLOADPATH) $(emacs) -f batch-byte-compile $<\r
-\r
-$(DONTCOMPILE:.el=.elc):\r
-       -$(DEL) $@\r
-\r
-# Compile all Lisp files, except those from DONTCOMPILE.  This\r
-# compiles files unconditionally.  All .elc files are made writable\r
-# before compilation in case we checked out read-only (CVS option -r).\r
-# Files MUST be compiled one by one.  If we compile several files in a\r
-# row we can't make sure that the compilation environment is clean.\r
-# We also set the load-path of the Emacs used for compilation to the\r
-# current directory and its subdirectories, to make sure require's and\r
-# load's in the files being compiled find the right files.\r
-\r
-# Need separate version for sh and native cmd.exe\r
-compile-files: subdirs.el compile-files-$(SHELLTYPE) doit\r
-\r
-compile-files-CMD:\r
-       set EMACSLOADPATH=$(lisp)\r
-       -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g\r
-       for %f in ($(COMPILE_FIRST)) do $(emacs) -f batch-byte-compile %f\r
-       for %f in ($(lisp) $(WINS)) do for %g in (%f/*.el) do $(emacs) -f batch-byte-compile %f/%g\r
-\r
-compile-files-SH:\r
-#      for elc in $(lisp)/*.elc $(lisp)/*/*.elc; do attrib -r $$elc; done\r
-       for el in $(COMPILE_FIRST); do \\r
-         echo Compiling $$el; \\r
-         EMACSLOADPATH=$(lisp) $(emacs) -f batch-byte-compile $$el; \\r
-       done\r
-       for dir in $(lisp) $(WINS); do \\r
-         for el in $$dir/*.el; do \\r
-           echo Compiling $$el; \\r
-           EMACSLOADPATH=$(lisp) $(emacs) -f batch-byte-compile $$el; \\r
-         done; \\r
-       done\r
-\r
-# Backup compiled Lisp files in elc.tar.gz.  If that file already\r
-# exists, make a backup of it.\r
-\r
-backup-compiled-files:\r
-       -mv $(lisp)/elc.tar.gz $(lisp)/elc.tar.gz~\r
-       -tar czf $(lisp)/elc.tar.gz $(lisp)/*.elc $(lisp)/*/*.elc\r
-\r
-# Compile Lisp files, but save old compiled files first.\r
-\r
-compile: backup-compiled-files compile-files\r
-\r
-# Recompile all Lisp files which are newer than their .elc files.\r
-# Note that this doesn't create .elc files.  It only recompiles if an\r
-# .elc is present.\r
-\r
-recompile: doit\r
-       set EMACSLOADPATH=$(lisp)\r
-       $(SETLOADPATH) $(emacs) -f batch-byte-recompile-directory .\r
-\r
-# Prepare a bootstrap in the lisp subdirectory.  Build loaddefs.el,\r
-# because it's not sure it's up-to-date, and if it's not, that might\r
-# lead to errors during the bootstrap because something fails to\r
-# autoload as expected.  Remove compiled Lisp files so that\r
-# bootstrap-emacs will be built from sources only.\r
-\r
-# Need separate version for sh and native cmd.exe\r
-bootstrap-clean: bootstrap-clean-$(SHELLTYPE)\r
-\r
-bootstrap-clean-CMD:\r
-       if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads\r
-       -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g\r
-\r
-bootstrap-clean-SH:\r
-       if test -f $(EMACS); then $(MAKE) $(MFLAGS) autoloads; fi\r
-       -rm -f $(lisp)/*.elc $(lisp)/*/*.elc\r
-\r
-# Generate/update files for the bootstrap process.\r
-\r
-bootstrap: autoloads compile-files custom-deps\r
-\r
-#\r
-# Assuming INSTALL_DIR is defined, copy the elisp files to it\r
-# Windows 95 makes this harder than it should be.\r
-#\r
-install:\r
-               - mkdir "$(INSTALL_DIR)/lisp"\r
-               - $(DEL) ../same-dir.tst\r
-               - $(DEL) "$(INSTALL_DIR)/same-dir.tst"\r
-               echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst"\r
-#ifdef COPY_LISP_SOURCE\r
-               $(IFNOTSAMEDIR) $(CP_DIR) . "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#else\r
-#              $(IFNOTSAMEDIR) $(CP_DIR) *.elc "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) cus-load.el "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) forms*.el "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) patcomp.el "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) subdirs.el "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) version.el "$(INSTALL_DIR)/lisp" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) mail/blessmail.el "$(INSTALL_DIR)/lisp/mail" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) mail/sc.el "$(INSTALL_DIR)/lisp/mail" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) play/bruce.el "$(INSTALL_DIR)/lisp/play" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) international/latin-*.el "$(INSTALL_DIR)/lisp/international" $(ENDIF)\r
-#              $(IFNOTSAMEDIR) $(CP) international/mule-conf.el "$(INSTALL_DIR)/lisp/international" $(ENDIF)\r
-#endif\r
-               - $(DEL) ../same-dir.tst\r
-               - $(DEL) "$(INSTALL_DIR)/same-dir.tst"\r
-\r
-#\r
-# Maintenance\r
-# \r
-clean:\r
-               - $(DEL) *~\r
+#  Hacked up Nmake makefile for GNU Emacs
+#   Geoff Voelker (voelker@cs.washington.edu)
+#  Copyright (c) 1994 Free Software Foundation, Inc.
+#
+#  This file is part of GNU Emacs.
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to the
+#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+#  Boston, MA 02111-1307, USA.
+#
+
+ALL =
+
+all: $(ALL)
+
+SQUOTE='
+# '
+
+#lisp=$(MAKEDIR:\=/)
+lisp=.
+
+# You can specify a different executable on the make command line,
+# e.g. "make EMACS=../src/emacs ...".
+
+EMACS = "../bin/emacs.exe"
+
+# Command line flags for Emacs.  This must include --multibyte,
+# otherwise some files will not compile.
+
+EMACSOPT = -batch --no-init-file --no-site-file --multibyte
+
+lisptagsfiles1 = $(lisp)/*.el
+lisptagsfiles2 = $(lisp)/*/*.el
+ETAGS = "../lib-src/$(BLD)/etags"
+
+# Files which should not be compiled.
+# - emacs-lisp/cl-specs.el:  only contains `def-edebug-spec's so there's
+#   no point compiling it, although it doesn't hurt.
+
+DONTCOMPILE = \
+       $(lisp)/bindings.el \
+       $(lisp)/cus-load.el \
+       $(lisp)/cus-start.el \
+       $(lisp)/emacs-lisp/cl-specs.el \
+       $(lisp)/eshell/esh-maint.el \
+       $(lisp)/eshell/esh-groups.el \
+       $(lisp)/finder-inf.el \
+       $(lisp)/forms-d2.el \
+       $(lisp)/forms-pass.el \
+       $(lisp)/generic-x.el \
+       $(lisp)/international/latin-1.el \
+       $(lisp)/international/latin-2.el \
+       $(lisp)/international/latin-3.el \
+       $(lisp)/international/latin-4.el \
+       $(lisp)/international/latin-5.el \
+       $(lisp)/international/latin-8.el \
+       $(lisp)/international/latin-9.el \
+       $(lisp)/international/mule-conf.el \
+       $(lisp)/loaddefs.el \
+       $(lisp)/loadup.el \
+       $(lisp)/mail/blessmail.el \
+       $(lisp)/mail/sc.el \
+       $(lisp)/patcomp.el \
+       $(lisp)/paths.el \
+       $(lisp)/play/bruce.el \
+       $(lisp)/subdirs.el \
+       $(lisp)/term/internal.el \
+       $(lisp)/version.el
+
+# Files to compile before others during a bootstrap.  This is done
+# to speed up the bootstrap process.
+
+COMPILE_FIRST = \
+       $(lisp)/emacs-lisp/byte-opt.el \
+       $(lisp)/emacs-lisp/bytecomp.el \
+       $(lisp)/subr.el
+
+# The actual Emacs command run in the targets below.
+
+emacs = $(EMACS) $(EMACSOPT)
+
+# Common command to find subdirectories
+
+setwins=subdirs=`find $$wd -type d -print`; \
+       for file in $$subdirs; do \
+          case $$file in */Old | */RCS | */CVS | */CVS/* | */=* ) ;; \
+               *) wins="$$wins $$file" ;; \
+          esac; \
+        done
+
+# Have to define the list of subdirs manually when not using sh.
+WINS=\
+       calendar \
+       emacs-lisp \
+       emulation \
+       eshell \
+       gnus \
+       international \
+       language \
+       mail \
+       net \
+       play \
+       progmodes \
+       term \
+       textmodes
+
+doit:
+
+cus-load.el:
+       touch $@
+custom-deps: cus-load.el doit
+       @echo Directories: $(WINS)
+       $(emacs) -l cus-dep --eval $(ARGQUOTE)(setq find-file-hooks nil)$(ARGQUOTE) -f custom-make-dependencies $(lisp) $(WINS)
+
+finder-inf.el:
+       echo (provide $(SQUOTE)finder-inf)>> $@
+
+finder-data: finder-inf.el doit
+       @echo Directories: $(WINS)
+       $(emacs) -l finder -f finder-compile-keywords-make-dist $(lisp) $(WINS)
+
+loaddefs.el:
+       echo ;;; loaddefs.el --- automatically extracted autoloads> $@
+       echo ;;; Code:>> $@
+       echo \f>> $@
+       echo ;;; Local Variables:>> $@
+       echo ;;; version-control: never>> $@
+       echo ;;; no-byte-compile: t>> $@
+       echo ;;; no-update-autoloads: t>> $@
+       echo ;;; End:>> $@
+       echo ;;; loaddefs.el ends here>> $@
+
+autoloads: loaddefs.el doit
+       @echo Directories: $(WINS)
+       set EMACSLOADPATH=$(lisp)
+       $(SETLOADPATH) $(emacs) -l autoload --eval $(ARGQUOTE)(setq find-file-hooks nil generated-autoload-file $(DQUOTE)$(lisp)/loaddefs.el$(DQUOTE))$(ARGQUOTE) -f batch-update-autoloads $(lisp) $(WINS)
+
+subdirs.el:
+       $(MAKE) $(MFLAGS) update-subdirs
+
+# Need separate version for sh and native cmd.exe
+update-subdirs: update-subdirs-$(SHELLTYPE)
+
+update-subdirs-CMD: doit
+       @set QWINS=
+       @for %d in ($(WINS)) do if not (%d)==(term) set QWINS=%QWINS% "%d"
+       echo ;; In load-path, after this directory should come> subdirs.el
+       echo ;; certain of its subdirectories.  Here we specify them.>> subdirs.el
+       echo (normal-top-level-add-to-load-path $(SQUOTE)(%QWINS%))>> subdirs.el
+
+update-subdirs-SH: doit
+       wd=$(lisp); $(setwins); \
+       for file in $$wins; do \
+          $(srcdir)/update-subdirs $$file; \
+       done;
+
+updates: update-subdirs autoloads finder-data custom-deps
+
+TAGS: $(lisptagsfiles1) $(lisptagsfiles2)
+       $(ETAGS) $(lisptagsfiles1) $(lisptagsfiles2)
+
+TAGS-LISP: $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2)
+       $(ETAGS) -o TAGS-LISP $(lispsource)$(lisptagsfiles1) $(lispsource)$(lisptagsfiles2)
+
+.el.elc:
+       set EMACSLOADPATH=$(lisp)
+       -$(SETLOADPATH) $(emacs) -f batch-byte-compile $<
+
+$(DONTCOMPILE:.el=.elc):
+       -$(DEL) $@
+
+# Compile all Lisp files, except those from DONTCOMPILE.  This
+# compiles files unconditionally.  All .elc files are made writable
+# before compilation in case we checked out read-only (CVS option -r).
+# Files MUST be compiled one by one.  If we compile several files in a
+# row we can't make sure that the compilation environment is clean.
+# We also set the load-path of the Emacs used for compilation to the
+# current directory and its subdirectories, to make sure require's and
+# load's in the files being compiled find the right files.
+
+# Need separate version for sh and native cmd.exe
+compile-files: subdirs.el compile-files-$(SHELLTYPE) doit
+
+compile-files-CMD:
+       set EMACSLOADPATH=$(lisp)
+       -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @attrib -r %g
+       for %f in ($(COMPILE_FIRST)) do $(emacs) -f batch-byte-compile %f
+       for %f in ($(lisp) $(WINS)) do for %g in (%f/*.el) do $(emacs) -f batch-byte-compile %f/%g
+
+compile-files-SH:
+#      for elc in $(lisp)/*.elc $(lisp)/*/*.elc; do attrib -r $$elc; done
+       for el in $(COMPILE_FIRST); do \
+         echo Compiling $$el; \
+         EMACSLOADPATH=$(lisp) $(emacs) -f batch-byte-compile $$el; \
+       done
+       for dir in $(lisp) $(WINS); do \
+         for el in $$dir/*.el; do \
+           echo Compiling $$el; \
+           EMACSLOADPATH=$(lisp) $(emacs) -f batch-byte-compile $$el; \
+         done; \
+       done
+
+# Backup compiled Lisp files in elc.tar.gz.  If that file already
+# exists, make a backup of it.
+
+backup-compiled-files:
+       -mv $(lisp)/elc.tar.gz $(lisp)/elc.tar.gz~
+       -tar czf $(lisp)/elc.tar.gz $(lisp)/*.elc $(lisp)/*/*.elc
+
+# Compile Lisp files, but save old compiled files first.
+
+compile: backup-compiled-files compile-files
+
+# Recompile all Lisp files which are newer than their .elc files.
+# Note that this doesn't create .elc files.  It only recompiles if an
+# .elc is present.
+
+recompile: doit
+       set EMACSLOADPATH=$(lisp)
+       $(SETLOADPATH) $(emacs) -f batch-byte-recompile-directory .
+
+# Prepare a bootstrap in the lisp subdirectory.  Build loaddefs.el,
+# because it's not sure it's up-to-date, and if it's not, that might
+# lead to errors during the bootstrap because something fails to
+# autoload as expected.  Remove compiled Lisp files so that
+# bootstrap-emacs will be built from sources only.
+
+# Need separate version for sh and native cmd.exe
+bootstrap-clean: bootstrap-clean-$(SHELLTYPE)
+
+bootstrap-clean-CMD:
+       if exist $(EMACS) $(MAKE) $(MFLAGS) autoloads
+       -for %f in ($(lisp) $(WINS)) do for %g in (%f\*.elc) do @$(DEL) %g
+
+bootstrap-clean-SH:
+       if test -f $(EMACS); then $(MAKE) $(MFLAGS) autoloads; fi
+       -rm -f $(lisp)/*.elc $(lisp)/*/*.elc
+
+# Generate/update files for the bootstrap process.
+
+bootstrap: autoloads compile-files custom-deps
+
+#
+# Assuming INSTALL_DIR is defined, copy the elisp files to it
+# Windows 95 makes this harder than it should be.
+#
+install:
+               - mkdir "$(INSTALL_DIR)/lisp"
+               - $(DEL) ../same-dir.tst
+               - $(DEL) "$(INSTALL_DIR)/same-dir.tst"
+               echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst"
+#ifdef COPY_LISP_SOURCE
+               $(IFNOTSAMEDIR) $(CP_DIR) . "$(INSTALL_DIR)/lisp" $(ENDIF)
+#else
+#              $(IFNOTSAMEDIR) $(CP_DIR) *.elc "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) cus-load.el "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) forms*.el "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) patcomp.el "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) subdirs.el "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) version.el "$(INSTALL_DIR)/lisp" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) mail/blessmail.el "$(INSTALL_DIR)/lisp/mail" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) mail/sc.el "$(INSTALL_DIR)/lisp/mail" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) play/bruce.el "$(INSTALL_DIR)/lisp/play" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) international/latin-*.el "$(INSTALL_DIR)/lisp/international" $(ENDIF)
+#              $(IFNOTSAMEDIR) $(CP) international/mule-conf.el "$(INSTALL_DIR)/lisp/international" $(ENDIF)
+#endif
+               - $(DEL) ../same-dir.tst
+               - $(DEL) "$(INSTALL_DIR)/same-dir.tst"
+
+#
+# Maintenance
+# 
+clean:
+               - $(DEL) *~
index ccf86719dcc92d44042b0ebd27575557c6d97695..8afa10fa62bfe0eeea2262ce14423eea31ce833b 100644 (file)
-#\r
-#  Top level makefile for building GNU Emacs on Windows NT\r
-#\r
-#  This file is part of GNU Emacs.\r
-#  \r
-#  GNU Emacs is free software; you can redistribute it and/or modify\r
-#  it under the terms of the GNU General Public License as published by\r
-#  the Free Software Foundation; either version 2, or (at your option)\r
-#  any later version.\r
-#  \r
-#  GNU Emacs is distributed in the hope that it will be useful,\r
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-#  GNU General Public License for more details.\r
-#  \r
-#  You should have received a copy of the GNU General Public License\r
-#  along with GNU Emacs; see the file COPYING.  If not, write to\r
-#  the Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
-#  Boston, MA 02111-1307, USA.\r
-\r
-ALL            = addpm ddeclient runemacs cmdproxy addsection preprep\r
-\r
-.PHONY: $(ALL)\r
-\r
-TRES           = $(BLD)/emacs.res\r
-\r
-addpm:           $(BLD) $(BLD)/addpm.exe\r
-$(BLD)/addpm.exe: $(BLD)/addpm.$(O)\r
-                 $(LINK) $(LINK_OUT)$@ \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)\r
-\r
-ddeclient:       $(BLD) $(BLD)/ddeclient.exe\r
-$(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O)\r
-                 $(LINK) $(LINK_OUT)$@ \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)\r
-\r
-cmdproxy:        $(BLD) $(BLD)/cmdproxy.exe\r
-$(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O)\r
-                 $(LINK) $(LINK_OUT)$@ \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)\r
-\r
-addsection:      $(BLD) $(BLD)/addsection.exe\r
-$(BLD)/addsection.exe: $(BLD)/addsection.$(O)\r
-                 $(LINK) $(LINK_OUT)$@ \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)\r
-\r
-preprep:         $(BLD) $(BLD)/preprep.exe\r
-$(BLD)/preprep.exe: $(BLD)/preprep.$(O)\r
-                 $(LINK) $(LINK_OUT)$@ \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS)\r
-\r
-#\r
-# The resource file.  NT 3.10 requires the use of cvtres; even though\r
-# it is not necessary on later versions, it is still ok to use it.\r
-#\r
-$(TRES):       emacs.rc\r
-               $(RC) $(RC_OUT)$(BLD)/emacs.res $(ALL_DEPS)\r
-\r
-runemacs:        $(BLD) $(BLD)/runemacs.exe\r
-$(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES)\r
-                 $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \\r
-                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)\r
-\r
-which-sh:\r
-       @echo Using $(THE_SHELL) as shell.\r
-\r
-#\r
-# Build emacs\r
-#\r
-all:   which-sh $(BLD) $(ALL) all-other-dirs-$(SHELLTYPE)\r
-\r
-all-other-dirs-CMD:\r
-       cd ..\lib-src\r
-       $(MAKE) $(MFLAGS) all\r
-       cd ..\src\r
-       $(MAKE) $(MFLAGS) all\r
-       cd ..\lisp\r
-       $(MAKE) $(MFLAGS) all\r
-       cd ..\leim\r
-       $(MAKE) $(MFLAGS) all\r
-       cd ..\nt\r
-\r
-all-other-dirs-SH:\r
-       $(MAKE) $(MFLAGS) -C ../lib-src all\r
-       $(MAKE) $(MFLAGS) -C ../src all\r
-       $(MAKE) $(MFLAGS) -C ../lisp all\r
-       $(MAKE) $(MFLAGS) -C ../leim all\r
-\r
-bootstrap:     $(BLD) $(ALL) bootstrap-$(SHELLTYPE)\r
-\r
-bootstrap-CMD:\r
-       cd ..\src\r
-       $(MAKE) $(MFLAGS) bootstrap\r
-       $(MAKE) $(MFLAGS) bootstrap-clean\r
-       cd ..\lisp\r
-       $(MAKE) $(MFLAGS) bootstrap\r
-       cd ..\nt\r
-\r
-bootstrap-SH:\r
-       $(MAKE) $(MFLAGS) -C ../src bootstrap\r
-       $(MAKE) $(MFLAGS) -C ../src bootstrap-clean\r
-       $(MAKE) $(MFLAGS) -C ../lisp bootstrap\r
-\r
-bootstrap-clean: bootstrap-clean-$(SHELLTYPE)\r
-\r
-bootstrap-clean-CMD:\r
-       cd ..\src\r
-       $(MAKE) $(MFLAGS) bootstrap-clean\r
-       cd ..\lisp\r
-       $(MAKE) $(MFLAGS) bootstrap-clean\r
-\r
-bootstrap-clean-SH:\r
-       $(MAKE) $(MFLAGS) -C ../src bootstrap-clean\r
-       $(MAKE) $(MFLAGS) -C ../lisp bootstrap-clean\r
-\r
-$(INSTALL_DIR):\r
-       - mkdir "$(INSTALL_DIR)"\r
-\r
-$(INSTALL_DIR)/bin:\r
-       - mkdir "$(INSTALL_DIR)/bin"\r
-\r
-#\r
-# Build and install emacs in INSTALL_DIR\r
-#\r
-install: all $(INSTALL_DIR)/bin install-other-dirs-$(SHELLTYPE)\r
-       - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin\r
-       - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin\r
-       - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin\r
-       - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin\r
-       - $(CP) ../lib-src/fns-*.el $(INSTALL_DIR)/bin\r
-       - "$(INSTALL_DIR)/bin/addpm" /q\r
-       - $(DEL) ../same-dir.tst\r
-       - $(DEL) $(INSTALL_DIR)/same-dir.tst\r
-       - mkdir "$(INSTALL_DIR)/etc/icons"\r
-       - $(CP_DIR) icons $(INSTALL_DIR)/etc/icons\r
-       echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst"\r
-       $(IFNOTSAMEDIR) $(MAKE) $(MFLAGS) real_install $(ENDIF)\r
-       - $(DEL) ../same-dir.tst\r
-       - $(DEL) $(INSTALL_DIR)/same-dir.tst\r
-\r
-install-other-dirs-CMD:\r
-       cd ..\lib-src\r
-       $(MAKE) $(MFLAGS) install\r
-       cd ..\src\r
-       $(MAKE) $(MFLAGS) install\r
-       cd ..\lisp\r
-       $(MAKE) $(MFLAGS) install\r
-       cd ..\leim\r
-       $(MAKE) $(MFLAGS) install\r
-       cd ..\nt\r
-\r
-install-other-dirs-SH:\r
-       $(MAKE) $(MFLAGS) -C ../lib-src install\r
-       $(MAKE) $(MFLAGS) -C ../src install\r
-       $(MAKE) $(MFLAGS) -C ../lisp install\r
-       $(MAKE) $(MFLAGS) -C ../leim install\r
-\r
-real_install:\r
-       - $(DEL) ../same-dir.tst\r
-       - $(DEL) $(INSTALL_DIR)/same-dir.tst\r
-       echo SameDirTest > $(INSTALL_DIR)/same-dir.tst\r
-       - mkdir "$(INSTALL_DIR)/etc"\r
-       - mkdir "$(INSTALL_DIR)/info"\r
-       - mkdir "$(INSTALL_DIR)/lock"\r
-       - mkdir "$(INSTALL_DIR)/data"\r
-       - mkdir "$(INSTALL_DIR)/site-lisp"\r
-       - mkdir "$(INSTALL_DIR)/etc/icons"\r
-       - $(CP_DIR) icons $(INSTALL_DIR)/etc/icons\r
-       $(IFNOTSAMEDIR) $(CP_DIR) ../etc $(INSTALL_DIR)/etc $(ENDIF)\r
-       $(IFNOTSAMEDIR) $(CP_DIR) ../info $(INSTALL_DIR)/info $(ENDIF)\r
-       - $(DEL) ../same-dir.tst\r
-       - $(DEL) $(INSTALL_DIR)/same-dir.tst\r
-\r
-#\r
-# Maintenance\r
-# \r
-clean: clean-other-dirs-$(SHELLTYPE)\r
-       - $(DEL) *~ *.pdb\r
-       - $(DEL_TREE) $(OBJDIR)\r
-       - $(DEL) ../etc/DOC ../etc/DOC-X\r
-\r
-clean-other-dirs-CMD:\r
-       cd ..\lib-src\r
-       $(MAKE) $(MFLAGS) clean\r
-       cd ..\src\r
-       $(MAKE) $(MFLAGS) clean\r
-       cd ..\lisp\r
-       $(MAKE) $(MFLAGS) clean\r
-       cd ..\leim\r
-       $(MAKE) $(MFLAGS) clean\r
-       cd ..\nt\r
-\r
-clean-other-dirs-SH:\r
-       $(MAKE) $(MFLAGS) -C ../lib-src clean\r
-       $(MAKE) $(MFLAGS) -C ../src clean\r
-       $(MAKE) $(MFLAGS) -C ../lisp clean\r
-       $(MAKE) $(MFLAGS) -C ../leim clean\r
-\r
-cleanall: clean\r
-        - $(DEL_TREE) obj\r
-        - $(DEL_TREE) obj-spd\r
-        - $(DEL_TREE) oo\r
-        - $(DEL_TREE) oo-spd\r
-\r
-realclean: cleanall\r
-       - $(DEL_TREE) ../bin\r
+#
+#  Top level makefile for building GNU Emacs on Windows NT
+#
+#  This file is part of GNU Emacs.
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to
+#  the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+#  Boston, MA 02111-1307, USA.
+
+ALL            = addpm ddeclient runemacs cmdproxy addsection preprep
+
+.PHONY: $(ALL)
+
+TRES           = $(BLD)/emacs.res
+
+addpm:           $(BLD) $(BLD)/addpm.exe
+$(BLD)/addpm.exe: $(BLD)/addpm.$(O)
+                 $(LINK) $(LINK_OUT)$@ \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
+
+ddeclient:       $(BLD) $(BLD)/ddeclient.exe
+$(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O)
+                 $(LINK) $(LINK_OUT)$@ \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
+
+cmdproxy:        $(BLD) $(BLD)/cmdproxy.exe
+$(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O)
+                 $(LINK) $(LINK_OUT)$@ \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
+
+addsection:      $(BLD) $(BLD)/addsection.exe
+$(BLD)/addsection.exe: $(BLD)/addsection.$(O)
+                 $(LINK) $(LINK_OUT)$@ \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
+
+preprep:         $(BLD) $(BLD)/preprep.exe
+$(BLD)/preprep.exe: $(BLD)/preprep.$(O)
+                 $(LINK) $(LINK_OUT)$@ \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS)
+
+#
+# The resource file.  NT 3.10 requires the use of cvtres; even though
+# it is not necessary on later versions, it is still ok to use it.
+#
+$(TRES):       emacs.rc
+               $(RC) $(RC_OUT)$(BLD)/emacs.res $(ALL_DEPS)
+
+runemacs:        $(BLD) $(BLD)/runemacs.exe
+$(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES)
+                 $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \
+                 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
+
+which-sh:
+       @echo Using $(THE_SHELL) as shell.
+
+#
+# Build emacs
+#
+all:   which-sh $(BLD) $(ALL) all-other-dirs-$(SHELLTYPE)
+
+all-other-dirs-CMD:
+       cd ..\lib-src
+       $(MAKE) $(MFLAGS) all
+       cd ..\src
+       $(MAKE) $(MFLAGS) all
+       cd ..\lisp
+       $(MAKE) $(MFLAGS) all
+       cd ..\leim
+       $(MAKE) $(MFLAGS) all
+       cd ..\nt
+
+all-other-dirs-SH:
+       $(MAKE) $(MFLAGS) -C ../lib-src all
+       $(MAKE) $(MFLAGS) -C ../src all
+       $(MAKE) $(MFLAGS) -C ../lisp all
+       $(MAKE) $(MFLAGS) -C ../leim all
+
+bootstrap:     $(BLD) $(ALL) bootstrap-$(SHELLTYPE)
+
+bootstrap-CMD:
+       cd ..\src
+       $(MAKE) $(MFLAGS) bootstrap
+       $(MAKE) $(MFLAGS) bootstrap-clean
+       cd ..\lisp
+       $(MAKE) $(MFLAGS) bootstrap
+       cd ..\nt
+
+bootstrap-SH:
+       $(MAKE) $(MFLAGS) -C ../src bootstrap
+       $(MAKE) $(MFLAGS) -C ../src bootstrap-clean
+       $(MAKE) $(MFLAGS) -C ../lisp bootstrap
+
+bootstrap-clean: bootstrap-clean-$(SHELLTYPE)
+
+bootstrap-clean-CMD:
+       cd ..\src
+       $(MAKE) $(MFLAGS) bootstrap-clean
+       cd ..\lisp
+       $(MAKE) $(MFLAGS) bootstrap-clean
+
+bootstrap-clean-SH:
+       $(MAKE) $(MFLAGS) -C ../src bootstrap-clean
+       $(MAKE) $(MFLAGS) -C ../lisp bootstrap-clean
+
+$(INSTALL_DIR):
+       - mkdir "$(INSTALL_DIR)"
+
+$(INSTALL_DIR)/bin:
+       - mkdir "$(INSTALL_DIR)/bin"
+
+#
+# Build and install emacs in INSTALL_DIR
+#
+install: all $(INSTALL_DIR)/bin install-other-dirs-$(SHELLTYPE)
+       - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin
+       - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin
+       - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin
+       - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin
+       - $(CP) ../lib-src/fns-*.el $(INSTALL_DIR)/bin
+       - "$(INSTALL_DIR)/bin/addpm" /q
+       - $(DEL) ../same-dir.tst
+       - $(DEL) $(INSTALL_DIR)/same-dir.tst
+       - mkdir "$(INSTALL_DIR)/etc/icons"
+       - $(CP_DIR) icons $(INSTALL_DIR)/etc/icons
+       echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst"
+       $(IFNOTSAMEDIR) $(MAKE) $(MFLAGS) real_install $(ENDIF)
+       - $(DEL) ../same-dir.tst
+       - $(DEL) $(INSTALL_DIR)/same-dir.tst
+
+install-other-dirs-CMD:
+       cd ..\lib-src
+       $(MAKE) $(MFLAGS) install
+       cd ..\src
+       $(MAKE) $(MFLAGS) install
+       cd ..\lisp
+       $(MAKE) $(MFLAGS) install
+       cd ..\leim
+       $(MAKE) $(MFLAGS) install
+       cd ..\nt
+
+install-other-dirs-SH:
+       $(MAKE) $(MFLAGS) -C ../lib-src install
+       $(MAKE) $(MFLAGS) -C ../src install
+       $(MAKE) $(MFLAGS) -C ../lisp install
+       $(MAKE) $(MFLAGS) -C ../leim install
+
+real_install:
+       - $(DEL) ../same-dir.tst
+       - $(DEL) $(INSTALL_DIR)/same-dir.tst
+       echo SameDirTest > $(INSTALL_DIR)/same-dir.tst
+       - mkdir "$(INSTALL_DIR)/etc"
+       - mkdir "$(INSTALL_DIR)/info"
+       - mkdir "$(INSTALL_DIR)/lock"
+       - mkdir "$(INSTALL_DIR)/data"
+       - mkdir "$(INSTALL_DIR)/site-lisp"
+       - mkdir "$(INSTALL_DIR)/etc/icons"
+       - $(CP_DIR) icons $(INSTALL_DIR)/etc/icons
+       $(IFNOTSAMEDIR) $(CP_DIR) ../etc $(INSTALL_DIR)/etc $(ENDIF)
+       $(IFNOTSAMEDIR) $(CP_DIR) ../info $(INSTALL_DIR)/info $(ENDIF)
+       - $(DEL) ../same-dir.tst
+       - $(DEL) $(INSTALL_DIR)/same-dir.tst
+
+#
+# Maintenance
+# 
+clean: clean-other-dirs-$(SHELLTYPE)
+       - $(DEL) *~ *.pdb
+       - $(DEL_TREE) $(OBJDIR)
+       - $(DEL) ../etc/DOC ../etc/DOC-X
+
+clean-other-dirs-CMD:
+       cd ..\lib-src
+       $(MAKE) $(MFLAGS) clean
+       cd ..\src
+       $(MAKE) $(MFLAGS) clean
+       cd ..\lisp
+       $(MAKE) $(MFLAGS) clean
+       cd ..\leim
+       $(MAKE) $(MFLAGS) clean
+       cd ..\nt
+
+clean-other-dirs-SH:
+       $(MAKE) $(MFLAGS) -C ../lib-src clean
+       $(MAKE) $(MFLAGS) -C ../src clean
+       $(MAKE) $(MFLAGS) -C ../lisp clean
+       $(MAKE) $(MFLAGS) -C ../leim clean
+
+cleanall: clean
+        - $(DEL_TREE) obj
+        - $(DEL_TREE) obj-spd
+        - $(DEL_TREE) oo
+        - $(DEL_TREE) oo-spd
+
+realclean: cleanall
+       - $(DEL_TREE) ../bin
index e6b9eed4144239948fb8f1aa09170cb904c26eb8..14391861a54354a28f212e1021b1d3d98d6d32c9 100644 (file)
-#  Makefile for GNU Emacs on the Microsoft W32 API.\r
-#  Copyright (c) 1992-2000 Free Software Foundation, Inc.\r
-#\r
-#  This file is part of GNU Emacs.\r
-#  \r
-#  GNU Emacs is free software; you can redistribute it and/or modify\r
-#  it under the terms of the GNU General Public License as published by\r
-#  the Free Software Foundation; either version 2, or (at your option)\r
-#  any later version.\r
-#  \r
-#  GNU Emacs is distributed in the hope that it will be useful,\r
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-#  GNU General Public License for more details.\r
-#  \r
-#  You should have received a copy of the GNU General Public License\r
-#  along with GNU Emacs; see the file COPYING.  If not, write to the\r
-#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
-#  Boston, MA 02111-1307, USA.\r
-#\r
-\r
-ALL = emacs\r
-\r
-.PHONY: $(ALL)\r
-\r
-#\r
-# HAVE_CONFIG_H is required by some generic gnu sources stuck into\r
-# the emacs source tree.\r
-#\r
-LOCAL_FLAGS     = -Demacs=1 -DWINDOWSNT -DDOS_NT -DHAVE_CONFIG_H -I../nt/inc -D_UCHAR_T -DHAVE_NTGUI=1 $(EMACS_EXTRA_C_FLAGS)\r
-\r
-EMACS           = $(BLD)/emacs.exe\r
-TEMACS          = $(BLD)/temacs.exe\r
-TEMACS_TMP      = $(BLD)/temacs.bin\r
-TLIB0           = $(BLD)/temacs0.$(A)\r
-TLIB1           = $(BLD)/temacs1.$(A)\r
-TLIBW32         = $(BLD)/temacw32.$(A)\r
-TOBJ            = $(BLD)/firstfile.$(O)\r
-TRES           = $(BLD)/emacs.res\r
-TLASTLIB       = $(BLD)/lastfile.$(A)\r
-\r
-FULL_LINK_FLAGS      = $(LINK_FLAGS) $(TEMACS_EXTRA_LINK)\r
-\r
-#\r
-# Split up the objects into two sets so that we don't run out of\r
-# command line space when we link them into a library.\r
-#\r
-# Put emacs.$(O) in a separate lib, since we need to have firstfile.$(O)\r
-# as the "main" object file when linking.\r
-#\r
-OBJ0 =  $(BLD)/emacs.$(O)\r
-\r
-OBJ1 =  $(BLD)/abbrev.$(O)                     \\r
-       $(BLD)/alloc.$(O)                       \\r
-       $(BLD)/alloca.$(O)                      \\r
-       $(BLD)/atimer.$(O)                      \\r
-       $(BLD)/buffer.$(O)                      \\r
-       $(BLD)/bytecode.$(O)                    \\r
-       $(BLD)/callint.$(O)                     \\r
-       $(BLD)/callproc.$(O)                    \\r
-       $(BLD)/casefiddle.$(O)                  \\r
-       $(BLD)/cm.$(O)                          \\r
-       $(BLD)/cmds.$(O)                        \\r
-       $(BLD)/data.$(O)                        \\r
-       $(BLD)/dired.$(O)                       \\r
-       $(BLD)/dispnew.$(O)                     \\r
-       $(BLD)/doc.$(O)                         \\r
-       $(BLD)/doprnt.$(O)                      \\r
-       $(BLD)/editfns.$(O)                     \\r
-       $(BLD)/eval.$(O)                        \\r
-       $(BLD)/fileio.$(O)                      \\r
-       $(BLD)/filelock.$(O)                    \\r
-       $(BLD)/filemode.$(O)                    \\r
-       $(BLD)/fns.$(O)                         \\r
-       $(BLD)/indent.$(O)                      \\r
-       $(BLD)/insdel.$(O)                      \\r
-       $(BLD)/keyboard.$(O)                    \\r
-       $(BLD)/keymap.$(O)                      \\r
-       $(BLD)/lread.$(O)                       \\r
-       $(BLD)/macros.$(O)                      \\r
-       $(BLD)/marker.$(O)                      \\r
-       $(BLD)/minibuf.$(O)                     \\r
-       $(BLD)/mocklisp.$(O)                    \\r
-       $(BLD)/w32.$(O)                         \\r
-       $(BLD)/w32heap.$(O)                     \\r
-       $(BLD)/w32inevt.$(O)                    \\r
-       $(BLD)/w32proc.$(O)                     \\r
-       $(BLD)/w32console.$(O)                  \\r
-       $(BLD)/print.$(O)                       \\r
-       $(BLD)/process.$(O)                     \\r
-       $(BLD)/regex.$(O)                       \\r
-       $(BLD)/scroll.$(O)                      \\r
-       $(BLD)/search.$(O)                      \\r
-       $(BLD)/syntax.$(O)                      \\r
-       $(BLD)/sysdep.$(O)                      \\r
-       $(BLD)/term.$(O)                        \\r
-       $(BLD)/termcap.$(O)                     \\r
-       $(BLD)/tparam.$(O)                      \\r
-       $(BLD)/undo.$(O)                        \\r
-       $(BLD)/unexw32.$(O)                     \\r
-       $(BLD)/window.$(O)                      \\r
-       $(BLD)/xdisp.$(O)                       \\r
-       $(BLD)/casetab.$(O)                     \\r
-       $(BLD)/floatfns.$(O)                    \\r
-       $(BLD)/frame.$(O)                       \\r
-       $(BLD)/gmalloc.$(O)                     \\r
-       $(BLD)/intervals.$(O)                   \\r
-       $(BLD)/composite.$(O)                   \\r
-       $(BLD)/ralloc.$(O)                      \\r
-       $(BLD)/textprop.$(O)                    \\r
-       $(BLD)/vm-limit.$(O)                    \\r
-       $(BLD)/region-cache.$(O)                \\r
-       $(BLD)/strftime.$(O)                    \\r
-       $(BLD)/charset.$(O)                     \\r
-       $(BLD)/coding.$(O)                      \\r
-       $(BLD)/category.$(O)                    \\r
-       $(BLD)/ccl.$(O)                         \\r
-       $(BLD)/fontset.$(O)\r
-\r
-WIN32OBJ = $(BLD)/w32term.$(O)                 \\r
-          $(BLD)/w32xfns.$(O)                  \\r
-          $(BLD)/w32fns.$(O)                   \\r
-          $(BLD)/xfaces.$(O)                   \\r
-          $(BLD)/w32select.$(O)                \\r
-          $(BLD)/w32menu.$(O)                  \\r
-          $(BLD)/w32reg.$(O)                   \\r
-          $(BLD)/w32bdf.$(O)\r
-\r
-LIBS =  $(TLIB0)       \\r
-       $(TLIB1)        \\r
-       $(TLIBW32)      \\r
-       $(TLASTLIB)     \\r
-       $(ADVAPI32)     \\r
-       $(GDI32)        \\r
-       $(COMDLG32)     \\r
-       $(USER32)       \\r
-       $(MPR)          \\r
-       $(SHELL32)      \\r
-       $(libc)\r
-\r
-#\r
-# Build the executable and dump it.\r
-#\r
-all:            $(ALL)\r
-\r
-#\r
-# The dumped executable\r
-#\r
-emacs:          $(BLD) $(EMACS)\r
-$(EMACS):       $(DOC) $(TEMACS)\r
-       "./$(BLD)/temacs.exe" -batch -l loadup dump\r
-\r
-#\r
-# The undumped executable\r
-# Note the extra post-link step to insert a static preload heap section.\r
-# If preload runs out of memory, increase the last argument to addsection\r
-# (it is the preload heap size in MB).\r
-#\r
-temacs:         $(BLD) $(TEMACS)\r
-$(TEMACS):      $(TLIB0) $(TLIB1) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)\r
-       $(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)\r
-       "../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP 16\r
-\r
-bootstrap: bootstrap-emacs\r
-\r
-#\r
-# Build a temacs with a sufficiently large PURESIZE to load the\r
-# Lisp files from loadup.el in source form.\r
-#\r
-bootstrap-temacs: bootstrap-clean\r
-       $(MAKE) $(MFLAGS) temacs CFLAGS=$(ARGQUOTE)$(CFLAGS) -DPURESIZE=5000000$(ARGQUOTE)\r
-\r
-#\r
-# Dump an Emacs executable named bootstrap-emacs containing the \r
-# files from loadup.el in source form.\r
-#\r
-bootstrap-emacs: bootstrap-temacs\r
-       "./$(BLD)/temacs.exe" -batch -l loadup bootstrap\r
-       - mkdir "../bin"\r
-       $(CP) $(EMACS) ../bin\r
-\r
-#\r
-# Force recompile of files that depend on PURESIZE\r
-#\r
-bootstrap-clean:\r
-       - $(DEL) $(BLD)/alloc.$(O)\r
-       - $(DEL) $(BLD)/data.$(O)\r
-       - $(DEL) $(BLD)/intervals.$(O)\r
-       - $(DEL) $(BLD)/keyboard.$(O)\r
-       - $(DEL) $(BLD)/keymap.$(O)\r
-\r
-#\r
-# The resource file.  NT 3.10 requires the use of cvtres; even though\r
-# it is not necessary on later versions, it is still ok to use it.\r
-#\r
-$(TRES): ../nt/emacs.rc\r
-       $(RC) $(RC_INCLUDE)../nt $(RC_OUT)$@ $(ALL_DEPS)\r
-\r
-#\r
-# Build the library.  Split up the build into two phases...otherwise we \r
-# run out of command line space.\r
-#\r
-$(TLIB0):       $(OBJ0)\r
-       - $(DEL) $@\r
-       $(AR) $(AR_OUT)$@ $(ALL_DEPS)\r
-$(TLIB1):       $(OBJ1)\r
-       - $(DEL) $@\r
-       $(AR) $(AR_OUT)$@ $(ALL_DEPS)\r
-$(TLIBW32):    $(WIN32OBJ)\r
-       - $(DEL) $@\r
-       $(AR) $(AR_OUT)$@ $(ALL_DEPS)\r
-\r
-#\r
-# Place lastfile.$(O) in its own library so that it can be loaded after\r
-# the source libraries but before any system libraries.  Doing so defines\r
-# the end of Emacs' data section portably across compilers and systems.\r
-#\r
-$(TLASTLIB):   $(BLD)/lastfile.$(O)\r
-       - $(DEL) $@\r
-       $(AR) $(AR_OUT)$@ $(ALL_DEPS)\r
-\r
-#\r
-# Assuming INSTALL_DIR is defined, build and install emacs in it.\r
-#\r
-install:        $(ALL)\r
-       - mkdir "$(INSTALL_DIR)/bin"\r
-       $(CP) $(EMACS) $(INSTALL_DIR)/bin\r
-\r
-#\r
-# Maintenance\r
-# \r
-clean:\r
-       - $(DEL) *~ "s/*~" "m/*~"\r
-       - $(DEL) *.pdb\r
-       - $(DEL_TREE) $(OBJDIR)\r
-\r
-distclean:     clean\r
-       - $(DEL) config.h epaths.h\r
-\r
-cleanall:      clean\r
-       - $(DEL_TREE) obj\r
-       - $(DEL_TREE) obj-spd\r
-       - $(DEL_TREE) oo\r
-       - $(DEL_TREE) oo-spd\r
-\r
-### DEPENDENCIES ###\r
-\r
-EMACS_ROOT     = ..\r
-SRC            = .\r
-\r
-$(BLD)/abbrev.obj : \\r
-       $(SRC)/abbrev.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h\r
-\r
-$(BLD)/alloc.obj : \\r
-       $(SRC)/alloc.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/puresize.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/syssignal.h\r
-\r
-$(BLD)/alloca.obj : \\r
-       $(SRC)/alloca.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/atimer.obj : \\r
-       $(SRC)/atimer.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/atimer.h \\r
-       $(SRC)/syssignal.h \\r
-       $(SRC)/systime.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/buffer.obj : \\r
-       $(SRC)/buffer.c \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/indent.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/region-cache.h\r
-\r
-$(BLD)/bytecode.obj : \\r
-       $(SRC)/bytecode.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/syntax.h\r
-\r
-$(BLD)/callint.obj : \\r
-       $(SRC)/callint.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/mocklisp.h\r
-\r
-$(BLD)/callproc.obj : \\r
-       $(SRC)/callproc.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/msdos.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/process.h \\r
-       $(SRC)/syssignal.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h\r
-\r
-$(BLD)/casefiddle.obj : \\r
-       $(SRC)/casefiddle.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/syntax.h\r
-       $(CC) $(CFLAGS) -Fo$@ casefiddle.c\r
-\r
-$(BLD)/casetab.obj : \\r
-       $(SRC)/casetab.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h\r
-\r
-$(BLD)/cm.obj : \\r
-       $(SRC)/cm.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/cm.h \\r
-       $(SRC)/termhooks.h\r
-\r
-$(BLD)/cmds.obj : \\r
-       $(SRC)/cmds.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/syntax.h\r
-\r
-$(BLD)/composite.obj : \\r
-       $(SRC)/composite.c \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/charset.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/data.obj : \\r
-       $(SRC)/data.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/puresize.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/syssignal.h\r
-\r
-$(BLD)/dired.obj : \\r
-       $(SRC)/dired.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/vmsdir.h \\r
-       $(SRC)/ndir.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/regex.h\r
-\r
-$(BLD)/dispnew.obj : \\r
-       $(SRC)/dispnew.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/cm.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/indent.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/xterm.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h\r
-\r
-$(BLD)/doc.obj : \\r
-       $(SRC)/doc.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/keyboard.h\r
-\r
-$(BLD)/doprnt.obj : \\r
-       $(SRC)/doprnt.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/dosfns.obj : \\r
-       $(SRC)/dosfns.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/dosfns.h \\r
-       $(SRC)/msdos.h\r
-\r
-$(BLD)/editfns.obj : \\r
-       $(SRC)/editfns.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/uaf.h \\r
-       $(SRC)/vms-pwd.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h\r
-\r
-$(BLD)/emacs.obj : \\r
-       $(SRC)/emacs.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/syssignal.h \\r
-       $(SRC)/process.h\r
-\r
-$(BLD)/eval.obj : \\r
-       $(SRC)/eval.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/keyboard.h\r
-\r
-$(BLD)/fileio.obj : \\r
-       $(SRC)/fileio.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/uaf.h \\r
-       $(SRC)/vms-pwd.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h \\r
-       $(SRC)/msdos.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(SRC)/vmsdir.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h\r
-\r
-$(BLD)/filelock.obj : \\r
-       $(SRC)/filelock.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/uaf.h \\r
-       $(SRC)/vms-pwd.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(EMACS_ROOT)/src/epaths.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/vmsdir.h \\r
-       $(SRC)/ndir.h\r
-\r
-$(BLD)/filemode.obj : \\r
-       $(SRC)/filemode.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h\r
-\r
-$(BLD)/firstfile.obj : \\r
-       $(SRC)/firstfile.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/floatfns.obj : \\r
-       $(SRC)/floatfns.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/syssignal.h\r
-\r
-$(BLD)/fns.obj : \\r
-       $(SRC)/fns.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/frame.obj : \\r
-       $(SRC)/frame.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/keyboard.h\r
-\r
-$(BLD)/getloadavg.obj : \\r
-       $(SRC)/getloadavg.c \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h\r
-\r
-$(BLD)/gmalloc.obj : \\r
-       $(SRC)/gmalloc.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(SRC)/getpagesize.h\r
-       $(CC) $(CFLAGS) -D__STDC__ -Fo$@ gmalloc.c\r
-\r
-$(BLD)/hftctl.obj : \\r
-       $(SRC)/hftctl.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h\r
-\r
-$(BLD)/indent.obj : \\r
-       $(SRC)/indent.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/indent.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/region-cache.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/insdel.obj : \\r
-       $(SRC)/insdel.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/intervals.obj : \\r
-       $(SRC)/intervals.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/puresize.h\r
-\r
-$(BLD)/keyboard.obj : \\r
-       $(SRC)/keyboard.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/macros.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/msdos.h \\r
-       $(SRC)/syssignal.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/xterm.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h \\r
-       $(SRC)/atimer.h\r
-\r
-$(BLD)/keymap.obj : \\r
-       $(SRC)/keymap.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/lastfile.obj : \\r
-       $(SRC)/lastfile.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/lread.obj : \\r
-       $(SRC)/lread.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/buffer.h \\r
-       $(EMACS_ROOT)/src/epaths.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/msdos.h\r
-\r
-$(BLD)/macros.obj : \\r
-       $(SRC)/macros.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/macros.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h\r
-\r
-$(BLD)/marker.obj : \\r
-       $(SRC)/marker.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h\r
-\r
-$(BLD)/minibuf.obj : \\r
-       $(SRC)/minibuf.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/syntax.h\r
-\r
-$(BLD)/mocklisp.obj : \\r
-       $(SRC)/mocklisp.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h\r
-\r
-$(BLD)/w32.obj : \\r
-       $(SRC)/w32.c \\r
-       $(SRC)/w32.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(EMACS_ROOT)/nt/inc/pwd.h \\r
-       $(SRC)/w32heap.h\r
-\r
-$(BLD)/w32heap.obj : \\r
-       $(SRC)/w32heap.c \\r
-       $(SRC)/w32heap.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h\r
-\r
-$(BLD)/w32inevt.obj : \\r
-       $(SRC)/w32inevt.c \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/w32heap.h \\r
-       $(SRC)/w32term.h\r
-\r
-$(BLD)/w32proc.obj : \\r
-       $(SRC)/w32proc.c \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/w32.h \\r
-       $(SRC)/w32heap.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h\r
-\r
-$(BLD)/w32console.obj : \\r
-       $(SRC)/w32console.c \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/w32inevt.h\r
-\r
-$(BLD)/prefix-args.obj : \\r
-       $(SRC)/prefix-args.c\r
-\r
-$(BLD)/print.obj : \\r
-       $(SRC)/print.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/process.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/process.obj : \\r
-       $(SRC)/process.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/process.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/syssignal.h \\r
-       $(SRC)/vmsproc.h \\r
-       $(SRC)/syswait.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/atimer.h\r
-\r
-$(BLD)/ralloc.obj : \\r
-       $(SRC)/ralloc.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(SRC)/getpagesize.h\r
-\r
-$(BLD)/regex.obj : \\r
-       $(SRC)/regex.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/s/ms-w32.h \\r
-       $(SRC)/m/intel386.h \\r
-       $(SRC)/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/syntax.h \\r
-       $(SRC)/regex.h\r
-\r
-$(BLD)/region-cache.obj : \\r
-       $(SRC)/region-cache.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/region-cache.h\r
-\r
-$(BLD)/scroll.obj : \\r
-       $(SRC)/scroll.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/frame.h\r
-\r
-$(BLD)/search.obj : \\r
-       $(SRC)/search.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/syntax.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/regex.h \\r
-       $(SRC)/region-cache.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/strftime.obj : \\r
-       $(SRC)/strftime.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/sunfns.obj : \\r
-       $(SRC)/sunfns.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/termhooks.h\r
-\r
-$(BLD)/syntax.obj : \\r
-       $(SRC)/syntax.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/syntax.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/sysdep.obj : \\r
-       $(SRC)/sysdep.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/dosfns.h \\r
-       $(SRC)/msdos.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/param.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/vmsproc.h \\r
-       $(SRC)/syswait.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/process.h \\r
-       $(SRC)/vmsdir.h \\r
-       $(SRC)/ndir.h \\r
-       $(SRC)/syssignal.h \\r
-       $(SRC)/vmstime.h \\r
-       $(SRC)/systime.h \\r
-       $(SRC)/uaf.h \\r
-       $(SRC)/vms-pwd.h \\r
-       $(EMACS_ROOT)/src/acldef.h \\r
-       $(EMACS_ROOT)/src/chpdef.h\r
-\r
-$(BLD)/term.obj : \\r
-       $(SRC)/term.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/cm.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/keyboard.h\r
-\r
-$(BLD)/termcap.obj : \\r
-       $(SRC)/termcap.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(EMACS_ROOT)/nt/inc/sys/file.h\r
-\r
-$(BLD)/terminfo.obj : \\r
-       $(SRC)/terminfo.c\r
-\r
-$(BLD)/textprop.obj : \\r
-       $(SRC)/textprop.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h\r
-\r
-$(BLD)/tparam.obj : \\r
-       $(SRC)/tparam.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h\r
-\r
-$(BLD)/undo.obj : \\r
-       $(SRC)/undo.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/commands.h\r
-\r
-$(BLD)/unexw32.obj : \\r
-       $(SRC)/unexw32.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32heap.h\r
-\r
-$(BLD)/vm-limit.obj : \\r
-       $(SRC)/vm-limit.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/mem-limits.h     \r
-\r
-$(BLD)/widget.obj : \\r
-       $(SRC)/widget.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/xterm.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/widget.h \\r
-       $(SRC)/widgetprv.h\r
-\r
-$(BLD)/window.obj : \\r
-       $(SRC)/window.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/indent.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/xdisp.obj : \\r
-       $(SRC)/xdisp.c \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/indent.h \\r
-       $(SRC)/commands.h \\r
-       $(SRC)/macros.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/xfaces.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/xfaces.c \\r
-       $(SRC)/charset.h \\r
-       $(SRC)/fontset.h \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h\r
-\r
-$(BLD)/w32fns.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32fns.c \\r
-       $(SRC)/x-list-font.c \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/charset.h \\r
-       $(SRC)/coding.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/epaths.h \\r
-       $(SRC)/w32heap.h \\r
-       $(SRC)/termhooks.h\r
-\r
-$(BLD)/w32menu.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32menu.c \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/charset.h \\r
-       $(SRC)/coding.h\r
-\r
-$(BLD)/w32term.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32term.c \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/w32heap.h \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/systty.h \\r
-       $(SRC)/systime.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/termhooks.h \\r
-       $(SRC)/termopts.h \\r
-       $(SRC)/termchar.h \\r
-       $(SRC)/gnu.h \\r
-       $(SRC)/disptab.h \\r
-       $(SRC)/buffer.h \\r
-       $(SRC)/window.h \\r
-       $(SRC)/keyboard.h \\r
-       $(SRC)/intervals.h \\r
-       $(SRC)/composite.h \\r
-       $(SRC)/atimer.h\r
-\r
-$(BLD)/w32select.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32select.c \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/w32reg.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32reg.c \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/blockinput.h\r
-\r
-$(BLD)/w32xfns.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32xfns.c \\r
-\r
-$(BLD)/w32bdf.obj: \\r
-       $(EMACS_ROOT)/src/s/ms-w32.h \\r
-       $(EMACS_ROOT)/src/m/intel386.h \\r
-       $(EMACS_ROOT)/src/config.h \\r
-       $(SRC)/w32bdf.c \\r
-       $(SRC)/charset.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/dispextern.h \\r
-       $(SRC)/fontset.h \\r
-       $(SRC)/blockinput.h \\r
-       $(SRC)/w32gui.h \\r
-       $(SRC)/w32term.h \\r
-       $(SRC)/w32bdf.h \\r
-       $(SRC)/w32.h \\r
-       $(SRC)/frame.h \\r
-       $(SRC)/blockinput.h\r
+#  Makefile for GNU Emacs on the Microsoft W32 API.
+#  Copyright (c) 1992-2000 Free Software Foundation, Inc.
+#
+#  This file is part of GNU Emacs.
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to the
+#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+#  Boston, MA 02111-1307, USA.
+#
+
+ALL = emacs
+
+.PHONY: $(ALL)
+
+#
+# HAVE_CONFIG_H is required by some generic gnu sources stuck into
+# the emacs source tree.
+#
+LOCAL_FLAGS     = -Demacs=1 -DWINDOWSNT -DDOS_NT -DHAVE_CONFIG_H -I../nt/inc -D_UCHAR_T -DHAVE_NTGUI=1 $(EMACS_EXTRA_C_FLAGS)
+
+EMACS           = $(BLD)/emacs.exe
+TEMACS          = $(BLD)/temacs.exe
+TEMACS_TMP      = $(BLD)/temacs.bin
+TLIB0           = $(BLD)/temacs0.$(A)
+TLIB1           = $(BLD)/temacs1.$(A)
+TLIBW32         = $(BLD)/temacw32.$(A)
+TOBJ            = $(BLD)/firstfile.$(O)
+TRES           = $(BLD)/emacs.res
+TLASTLIB       = $(BLD)/lastfile.$(A)
+
+FULL_LINK_FLAGS      = $(LINK_FLAGS) $(TEMACS_EXTRA_LINK)
+
+#
+# Split up the objects into two sets so that we don't run out of
+# command line space when we link them into a library.
+#
+# Put emacs.$(O) in a separate lib, since we need to have firstfile.$(O)
+# as the "main" object file when linking.
+#
+OBJ0 =  $(BLD)/emacs.$(O)
+
+OBJ1 =  $(BLD)/abbrev.$(O)                     \
+       $(BLD)/alloc.$(O)                       \
+       $(BLD)/alloca.$(O)                      \
+       $(BLD)/atimer.$(O)                      \
+       $(BLD)/buffer.$(O)                      \
+       $(BLD)/bytecode.$(O)                    \
+       $(BLD)/callint.$(O)                     \
+       $(BLD)/callproc.$(O)                    \
+       $(BLD)/casefiddle.$(O)                  \
+       $(BLD)/cm.$(O)                          \
+       $(BLD)/cmds.$(O)                        \
+       $(BLD)/data.$(O)                        \
+       $(BLD)/dired.$(O)                       \
+       $(BLD)/dispnew.$(O)                     \
+       $(BLD)/doc.$(O)                         \
+       $(BLD)/doprnt.$(O)                      \
+       $(BLD)/editfns.$(O)                     \
+       $(BLD)/eval.$(O)                        \
+       $(BLD)/fileio.$(O)                      \
+       $(BLD)/filelock.$(O)                    \
+       $(BLD)/filemode.$(O)                    \
+       $(BLD)/fns.$(O)                         \
+       $(BLD)/indent.$(O)                      \
+       $(BLD)/insdel.$(O)                      \
+       $(BLD)/keyboard.$(O)                    \
+       $(BLD)/keymap.$(O)                      \
+       $(BLD)/lread.$(O)                       \
+       $(BLD)/macros.$(O)                      \
+       $(BLD)/marker.$(O)                      \
+       $(BLD)/minibuf.$(O)                     \
+       $(BLD)/mocklisp.$(O)                    \
+       $(BLD)/w32.$(O)                         \
+       $(BLD)/w32heap.$(O)                     \
+       $(BLD)/w32inevt.$(O)                    \
+       $(BLD)/w32proc.$(O)                     \
+       $(BLD)/w32console.$(O)                  \
+       $(BLD)/print.$(O)                       \
+       $(BLD)/process.$(O)                     \
+       $(BLD)/regex.$(O)                       \
+       $(BLD)/scroll.$(O)                      \
+       $(BLD)/search.$(O)                      \
+       $(BLD)/syntax.$(O)                      \
+       $(BLD)/sysdep.$(O)                      \
+       $(BLD)/term.$(O)                        \
+       $(BLD)/termcap.$(O)                     \
+       $(BLD)/tparam.$(O)                      \
+       $(BLD)/undo.$(O)                        \
+       $(BLD)/unexw32.$(O)                     \
+       $(BLD)/window.$(O)                      \
+       $(BLD)/xdisp.$(O)                       \
+       $(BLD)/casetab.$(O)                     \
+       $(BLD)/floatfns.$(O)                    \
+       $(BLD)/frame.$(O)                       \
+       $(BLD)/gmalloc.$(O)                     \
+       $(BLD)/intervals.$(O)                   \
+       $(BLD)/composite.$(O)                   \
+       $(BLD)/ralloc.$(O)                      \
+       $(BLD)/textprop.$(O)                    \
+       $(BLD)/vm-limit.$(O)                    \
+       $(BLD)/region-cache.$(O)                \
+       $(BLD)/strftime.$(O)                    \
+       $(BLD)/charset.$(O)                     \
+       $(BLD)/coding.$(O)                      \
+       $(BLD)/category.$(O)                    \
+       $(BLD)/ccl.$(O)                         \
+       $(BLD)/fontset.$(O)
+
+WIN32OBJ = $(BLD)/w32term.$(O)                 \
+          $(BLD)/w32xfns.$(O)                  \
+          $(BLD)/w32fns.$(O)                   \
+          $(BLD)/xfaces.$(O)                   \
+          $(BLD)/w32select.$(O)                \
+          $(BLD)/w32menu.$(O)                  \
+          $(BLD)/w32reg.$(O)                   \
+          $(BLD)/w32bdf.$(O)
+
+LIBS =  $(TLIB0)       \
+       $(TLIB1)        \
+       $(TLIBW32)      \
+       $(TLASTLIB)     \
+       $(ADVAPI32)     \
+       $(GDI32)        \
+       $(COMDLG32)     \
+       $(USER32)       \
+       $(MPR)          \
+       $(SHELL32)      \
+       $(libc)
+
+#
+# Build the executable and dump it.
+#
+all:            $(ALL)
+
+#
+# The dumped executable
+#
+emacs:          $(BLD) $(EMACS)
+$(EMACS):       $(DOC) $(TEMACS)
+       "./$(BLD)/temacs.exe" -batch -l loadup dump
+
+#
+# The undumped executable
+# Note the extra post-link step to insert a static preload heap section.
+# If preload runs out of memory, increase the last argument to addsection
+# (it is the preload heap size in MB).
+#
+temacs:         $(BLD) $(TEMACS)
+$(TEMACS):      $(TLIB0) $(TLIB1) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
+       $(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
+       "../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP 16
+
+bootstrap: bootstrap-emacs
+
+#
+# Build a temacs with a sufficiently large PURESIZE to load the
+# Lisp files from loadup.el in source form.
+#
+bootstrap-temacs: bootstrap-clean
+       $(MAKE) $(MFLAGS) temacs CFLAGS=$(ARGQUOTE)$(CFLAGS) -DPURESIZE=5000000$(ARGQUOTE)
+
+#
+# Dump an Emacs executable named bootstrap-emacs containing the 
+# files from loadup.el in source form.
+#
+bootstrap-emacs: bootstrap-temacs
+       "./$(BLD)/temacs.exe" -batch -l loadup bootstrap
+       - mkdir "../bin"
+       $(CP) $(EMACS) ../bin
+
+#
+# Force recompile of files that depend on PURESIZE
+#
+bootstrap-clean:
+       - $(DEL) $(BLD)/alloc.$(O)
+       - $(DEL) $(BLD)/data.$(O)
+       - $(DEL) $(BLD)/intervals.$(O)
+       - $(DEL) $(BLD)/keyboard.$(O)
+       - $(DEL) $(BLD)/keymap.$(O)
+
+#
+# The resource file.  NT 3.10 requires the use of cvtres; even though
+# it is not necessary on later versions, it is still ok to use it.
+#
+$(TRES): ../nt/emacs.rc
+       $(RC) $(RC_INCLUDE)../nt $(RC_OUT)$@ $(ALL_DEPS)
+
+#
+# Build the library.  Split up the build into two phases...otherwise we 
+# run out of command line space.
+#
+$(TLIB0):       $(OBJ0)
+       - $(DEL) $@
+       $(AR) $(AR_OUT)$@ $(ALL_DEPS)
+$(TLIB1):       $(OBJ1)
+       - $(DEL) $@
+       $(AR) $(AR_OUT)$@ $(ALL_DEPS)
+$(TLIBW32):    $(WIN32OBJ)
+       - $(DEL) $@
+       $(AR) $(AR_OUT)$@ $(ALL_DEPS)
+
+#
+# Place lastfile.$(O) in its own library so that it can be loaded after
+# the source libraries but before any system libraries.  Doing so defines
+# the end of Emacs' data section portably across compilers and systems.
+#
+$(TLASTLIB):   $(BLD)/lastfile.$(O)
+       - $(DEL) $@
+       $(AR) $(AR_OUT)$@ $(ALL_DEPS)
+
+#
+# Assuming INSTALL_DIR is defined, build and install emacs in it.
+#
+install:        $(ALL)
+       - mkdir "$(INSTALL_DIR)/bin"
+       $(CP) $(EMACS) $(INSTALL_DIR)/bin
+
+#
+# Maintenance
+# 
+clean:
+       - $(DEL) *~ "s/*~" "m/*~"
+       - $(DEL) *.pdb
+       - $(DEL_TREE) $(OBJDIR)
+
+distclean:     clean
+       - $(DEL) config.h epaths.h
+
+cleanall:      clean
+       - $(DEL_TREE) obj
+       - $(DEL_TREE) obj-spd
+       - $(DEL_TREE) oo
+       - $(DEL_TREE) oo-spd
+
+### DEPENDENCIES ###
+
+EMACS_ROOT     = ..
+SRC            = .
+
+$(BLD)/abbrev.obj : \
+       $(SRC)/abbrev.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h
+
+$(BLD)/alloc.obj : \
+       $(SRC)/alloc.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/puresize.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h \
+       $(SRC)/frame.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/syssignal.h
+
+$(BLD)/alloca.obj : \
+       $(SRC)/alloca.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/atimer.obj : \
+       $(SRC)/atimer.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/atimer.h \
+       $(SRC)/syssignal.h \
+       $(SRC)/systime.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/buffer.obj : \
+       $(SRC)/buffer.c \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/indent.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/region-cache.h
+
+$(BLD)/bytecode.obj : \
+       $(SRC)/bytecode.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/syntax.h
+
+$(BLD)/callint.obj : \
+       $(SRC)/callint.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/window.h \
+       $(SRC)/mocklisp.h
+
+$(BLD)/callproc.obj : \
+       $(SRC)/callproc.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/msdos.h \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/process.h \
+       $(SRC)/syssignal.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h
+
+$(BLD)/casefiddle.obj : \
+       $(SRC)/casefiddle.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h \
+       $(SRC)/syntax.h
+       $(CC) $(CFLAGS) -Fo$@ casefiddle.c
+
+$(BLD)/casetab.obj : \
+       $(SRC)/casetab.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h
+
+$(BLD)/cm.obj : \
+       $(SRC)/cm.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/cm.h \
+       $(SRC)/termhooks.h
+
+$(BLD)/cmds.obj : \
+       $(SRC)/cmds.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/syntax.h
+
+$(BLD)/composite.obj : \
+       $(SRC)/composite.c \
+       $(SRC)/buffer.h \
+       $(SRC)/charset.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/data.obj : \
+       $(SRC)/data.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/puresize.h \
+       $(SRC)/buffer.h \
+       $(SRC)/syssignal.h
+
+$(BLD)/dired.obj : \
+       $(SRC)/dired.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/vmsdir.h \
+       $(SRC)/ndir.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h \
+       $(SRC)/regex.h
+
+$(BLD)/dispnew.obj : \
+       $(SRC)/dispnew.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termopts.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/cm.h \
+       $(SRC)/buffer.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/commands.h \
+       $(SRC)/disptab.h \
+       $(SRC)/indent.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h \
+       $(SRC)/w32term.h \
+       $(SRC)/xterm.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h
+
+$(BLD)/doc.obj : \
+       $(SRC)/doc.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/buffer.h \
+       $(SRC)/keyboard.h
+
+$(BLD)/doprnt.obj : \
+       $(SRC)/doprnt.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/dosfns.obj : \
+       $(SRC)/dosfns.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/frame.h \
+       $(SRC)/dosfns.h \
+       $(SRC)/msdos.h
+
+$(BLD)/editfns.obj : \
+       $(SRC)/editfns.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/uaf.h \
+       $(SRC)/vms-pwd.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h
+
+$(BLD)/emacs.obj : \
+       $(SRC)/emacs.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h \
+       $(SRC)/syssignal.h \
+       $(SRC)/process.h
+
+$(BLD)/eval.obj : \
+       $(SRC)/eval.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/commands.h \
+       $(SRC)/keyboard.h
+
+$(BLD)/fileio.obj : \
+       $(SRC)/fileio.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/uaf.h \
+       $(SRC)/vms-pwd.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h \
+       $(SRC)/msdos.h \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(SRC)/vmsdir.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h
+
+$(BLD)/filelock.obj : \
+       $(SRC)/filelock.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/uaf.h \
+       $(SRC)/vms-pwd.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(EMACS_ROOT)/src/epaths.h \
+       $(SRC)/buffer.h \
+       $(SRC)/vmsdir.h \
+       $(SRC)/ndir.h
+
+$(BLD)/filemode.obj : \
+       $(SRC)/filemode.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h
+
+$(BLD)/firstfile.obj : \
+       $(SRC)/firstfile.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/floatfns.obj : \
+       $(SRC)/floatfns.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/syssignal.h
+
+$(BLD)/fns.obj : \
+       $(SRC)/fns.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h
+
+$(BLD)/frame.obj : \
+       $(SRC)/frame.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/frame.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/window.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h \
+       $(SRC)/keyboard.h
+
+$(BLD)/getloadavg.obj : \
+       $(SRC)/getloadavg.c \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h
+
+$(BLD)/gmalloc.obj : \
+       $(SRC)/gmalloc.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(SRC)/getpagesize.h
+       $(CC) $(CFLAGS) -D__STDC__ -Fo$@ gmalloc.c
+
+$(BLD)/hftctl.obj : \
+       $(SRC)/hftctl.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h
+
+$(BLD)/indent.obj : \
+       $(SRC)/indent.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/indent.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termopts.h \
+       $(SRC)/disptab.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/region-cache.h \
+       $(SRC)/composite.h
+
+$(BLD)/insdel.obj : \
+       $(SRC)/insdel.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/intervals.obj : \
+       $(SRC)/intervals.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/buffer.h \
+       $(SRC)/puresize.h
+
+$(BLD)/keyboard.obj : \
+       $(SRC)/keyboard.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termopts.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/macros.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/disptab.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/msdos.h \
+       $(SRC)/syssignal.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h \
+       $(SRC)/w32term.h \
+       $(SRC)/xterm.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h \
+       $(SRC)/atimer.h
+
+$(BLD)/keymap.obj : \
+       $(SRC)/keymap.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/lastfile.obj : \
+       $(SRC)/lastfile.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/lread.obj : \
+       $(SRC)/lread.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/buffer.h \
+       $(EMACS_ROOT)/src/epaths.h \
+       $(SRC)/commands.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/msdos.h
+
+$(BLD)/macros.obj : \
+       $(SRC)/macros.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/macros.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h
+
+$(BLD)/marker.obj : \
+       $(SRC)/marker.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h
+
+$(BLD)/minibuf.obj : \
+       $(SRC)/minibuf.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/syntax.h
+
+$(BLD)/mocklisp.obj : \
+       $(SRC)/mocklisp.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h
+
+$(BLD)/w32.obj : \
+       $(SRC)/w32.c \
+       $(SRC)/w32.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(EMACS_ROOT)/nt/inc/pwd.h \
+       $(SRC)/w32heap.h
+
+$(BLD)/w32heap.obj : \
+       $(SRC)/w32heap.c \
+       $(SRC)/w32heap.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h
+
+$(BLD)/w32inevt.obj : \
+       $(SRC)/w32inevt.c \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/frame.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/w32heap.h \
+       $(SRC)/w32term.h
+
+$(BLD)/w32proc.obj : \
+       $(SRC)/w32proc.c \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/w32.h \
+       $(SRC)/w32heap.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h
+
+$(BLD)/w32console.obj : \
+       $(SRC)/w32console.c \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/frame.h \
+       $(SRC)/disptab.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/w32inevt.h
+
+$(BLD)/prefix-args.obj : \
+       $(SRC)/prefix-args.c
+
+$(BLD)/print.obj : \
+       $(SRC)/print.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/process.h \
+       $(SRC)/termchar.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h
+
+$(BLD)/process.obj : \
+       $(SRC)/process.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h \
+       $(SRC)/window.h \
+       $(SRC)/buffer.h \
+       $(SRC)/process.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/commands.h \
+       $(SRC)/frame.h \
+       $(SRC)/syssignal.h \
+       $(SRC)/vmsproc.h \
+       $(SRC)/syswait.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h \
+       $(SRC)/termopts.h \
+       $(SRC)/composite.h \
+       $(SRC)/atimer.h
+
+$(BLD)/ralloc.obj : \
+       $(SRC)/ralloc.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(SRC)/getpagesize.h
+
+$(BLD)/regex.obj : \
+       $(SRC)/regex.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/s/ms-w32.h \
+       $(SRC)/m/intel386.h \
+       $(SRC)/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/syntax.h \
+       $(SRC)/regex.h
+
+$(BLD)/region-cache.obj : \
+       $(SRC)/region-cache.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/region-cache.h
+
+$(BLD)/scroll.obj : \
+       $(SRC)/scroll.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/termchar.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/frame.h
+
+$(BLD)/search.obj : \
+       $(SRC)/search.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/syntax.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/regex.h \
+       $(SRC)/region-cache.h \
+       $(SRC)/composite.h
+
+$(BLD)/strftime.obj : \
+       $(SRC)/strftime.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/sunfns.obj : \
+       $(SRC)/sunfns.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/window.h \
+       $(SRC)/buffer.h \
+       $(SRC)/termhooks.h
+
+$(BLD)/syntax.obj : \
+       $(SRC)/syntax.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/commands.h \
+       $(SRC)/buffer.h \
+       $(SRC)/syntax.h \
+       $(SRC)/composite.h
+
+$(BLD)/sysdep.obj : \
+       $(SRC)/sysdep.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/dosfns.h \
+       $(SRC)/msdos.h \
+       $(EMACS_ROOT)/nt/inc/sys/param.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(EMACS_ROOT)/nt/inc/sys/ioctl.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h \
+       $(SRC)/systty.h \
+       $(SRC)/vmsproc.h \
+       $(SRC)/syswait.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termopts.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/process.h \
+       $(SRC)/vmsdir.h \
+       $(SRC)/ndir.h \
+       $(SRC)/syssignal.h \
+       $(SRC)/vmstime.h \
+       $(SRC)/systime.h \
+       $(SRC)/uaf.h \
+       $(SRC)/vms-pwd.h \
+       $(EMACS_ROOT)/src/acldef.h \
+       $(EMACS_ROOT)/src/chpdef.h
+
+$(BLD)/term.obj : \
+       $(SRC)/term.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/termchar.h \
+       $(SRC)/termopts.h \
+       $(SRC)/cm.h \
+       $(SRC)/frame.h \
+       $(SRC)/disptab.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/keyboard.h
+
+$(BLD)/termcap.obj : \
+       $(SRC)/termcap.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(EMACS_ROOT)/nt/inc/sys/file.h
+
+$(BLD)/terminfo.obj : \
+       $(SRC)/terminfo.c
+
+$(BLD)/textprop.obj : \
+       $(SRC)/textprop.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h
+
+$(BLD)/tparam.obj : \
+       $(SRC)/tparam.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h
+
+$(BLD)/undo.obj : \
+       $(SRC)/undo.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/commands.h
+
+$(BLD)/unexw32.obj : \
+       $(SRC)/unexw32.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32heap.h
+
+$(BLD)/vm-limit.obj : \
+       $(SRC)/vm-limit.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/mem-limits.h     
+
+$(BLD)/widget.obj : \
+       $(SRC)/widget.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/xterm.h \
+       $(SRC)/frame.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/widget.h \
+       $(SRC)/widgetprv.h
+
+$(BLD)/window.obj : \
+       $(SRC)/window.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/buffer.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/commands.h \
+       $(SRC)/indent.h \
+       $(SRC)/termchar.h \
+       $(SRC)/disptab.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/composite.h
+
+$(BLD)/xdisp.obj : \
+       $(SRC)/xdisp.c \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/termchar.h \
+       $(SRC)/buffer.h \
+       $(SRC)/indent.h \
+       $(SRC)/commands.h \
+       $(SRC)/macros.h \
+       $(SRC)/disptab.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h
+
+$(BLD)/xfaces.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/xfaces.c \
+       $(SRC)/charset.h \
+       $(SRC)/fontset.h \
+       $(SRC)/w32term.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/buffer.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/frame.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/window.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h
+
+$(BLD)/w32fns.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32fns.c \
+       $(SRC)/x-list-font.c \
+       $(SRC)/w32term.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/buffer.h \
+       $(SRC)/charset.h \
+       $(SRC)/coding.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/epaths.h \
+       $(SRC)/w32heap.h \
+       $(SRC)/termhooks.h
+
+$(BLD)/w32menu.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32menu.c \
+       $(SRC)/termhooks.h \
+       $(SRC)/frame.h \
+       $(SRC)/window.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/buffer.h \
+       $(SRC)/charset.h \
+       $(SRC)/coding.h
+
+$(BLD)/w32term.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32term.c \
+       $(SRC)/blockinput.h \
+       $(SRC)/w32heap.h \
+       $(SRC)/w32term.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/systty.h \
+       $(SRC)/systime.h \
+       $(SRC)/frame.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/termhooks.h \
+       $(SRC)/termopts.h \
+       $(SRC)/termchar.h \
+       $(SRC)/gnu.h \
+       $(SRC)/disptab.h \
+       $(SRC)/buffer.h \
+       $(SRC)/window.h \
+       $(SRC)/keyboard.h \
+       $(SRC)/intervals.h \
+       $(SRC)/composite.h \
+       $(SRC)/atimer.h
+
+$(BLD)/w32select.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32select.c \
+       $(SRC)/w32term.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/frame.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/w32reg.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32reg.c \
+       $(SRC)/w32term.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/blockinput.h
+
+$(BLD)/w32xfns.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32xfns.c \
+
+$(BLD)/w32bdf.obj: \
+       $(EMACS_ROOT)/src/s/ms-w32.h \
+       $(EMACS_ROOT)/src/m/intel386.h \
+       $(EMACS_ROOT)/src/config.h \
+       $(SRC)/w32bdf.c \
+       $(SRC)/charset.h \
+       $(SRC)/frame.h \
+       $(SRC)/dispextern.h \
+       $(SRC)/fontset.h \
+       $(SRC)/blockinput.h \
+       $(SRC)/w32gui.h \
+       $(SRC)/w32term.h \
+       $(SRC)/w32bdf.h \
+       $(SRC)/w32.h \
+       $(SRC)/frame.h \
+       $(SRC)/blockinput.h