]> code.delx.au - gnu-emacs/blobdiff - src/makefile.nt
(syms_of_xterm): DEFVAR_LISP x-toolkit-scroll-bars
[gnu-emacs] / src / makefile.nt
index e16ee2ed087c0f3cc84351c7aa4d0416b78cbc1e..16264d7da851e61777abc07c14e1afa20fad0923 100644 (file)
@@ -36,6 +36,11 @@ LOCAL_FLAGS     = -Demacs=1 -DWINDOWSNT -DDOS_NT -DHAVE_CONFIG_H -I..\nt\inc
 !ifdef NTGUI
 LOCAL_FLAGS     = $(LOCAL_FLAGS) -DHAVE_NTGUI=1
 !endif
+!ifdef USE_CRT_DLL
+LOCAL_FLAGS     = $(LOCAL_FLAGS) -DUSE_CRT_DLL=1 -MD
+libc            = msvcrt.lib
+LINK_FLAGS      = -nodefaultlib
+!endif
 
 # From MSVC 5.0 onwards, it seem base relocation information is not included,
 # at least in release builds.  We need to ensure the reloc info is included
@@ -68,9 +73,9 @@ TLASTLIB      = $(BLD)\lastfile.lib
 # see comments in allocate_heap in w32heap.c before changing any of the
 # -stack, -heap, or -base settings.
 !if "$(BUILD_TYPE)" == "spd"
-LINK_FLAGS      = $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map -swaprun:net -swaprun:cd
+LINK_FLAGS      = $(LINK_FLAGS) $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:both -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map -swaprun:net -swaprun:cd
 !else
-LINK_FLAGS      = $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:both -pdb:none -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map -swaprun:net -swaprun:cd $(EXTRA_LINK)
+LINK_FLAGS      = $(LINK_FLAGS) $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:both -pdb:none -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map -swaprun:net -swaprun:cd $(EXTRA_LINK)
 !endif
 
 #
@@ -85,6 +90,7 @@ OBJ0 =  $(BLD)\emacs.obj
 OBJ1 =  $(BLD)\abbrev.obj       \
        $(BLD)\alloc.obj        \
        $(BLD)\alloca.obj       \
+       $(BLD)\atimer.obj       \
        $(BLD)\buffer.obj       \
        $(BLD)\bytecode.obj     \
        $(BLD)\callint.obj      \
@@ -110,6 +116,7 @@ OBJ1 =  $(BLD)\abbrev.obj       \
        $(BLD)\lread.obj        \
        $(BLD)\macros.obj       \
        $(BLD)\marker.obj       \
+        $(BLD)\md5.obj          \
        $(BLD)\minibuf.obj      \
        $(BLD)\mocklisp.obj
 
@@ -152,7 +159,7 @@ OBJ2 =  $(BLD)\w32.obj           \
 WIN32OBJ = $(BLD)\w32term.obj  \
           $(BLD)\w32xfns.obj   \
           $(BLD)\w32fns.obj    \
-          $(BLD)\w32faces.obj  \
+          $(BLD)\xfaces.obj    \
           $(BLD)\w32select.obj \
           $(BLD)\w32menu.obj   \
           $(BLD)\w32reg.obj    \
@@ -197,17 +204,15 @@ epaths.h: ..\nt\paths.h
 DOC            = $(OBJDIR)\etc\DOC-X
 $(DOC):;       cd ..\lib-src 
                - $(DEL) DOC-X
-               $(MAKE) -f makefile.nt all
+               $(MAKE) $(MFLAGS) -f makefile.nt all
                cd ..\src
 
 #
 # The dumped executable
 #
 emacs:          $(EMACS)
-$(EMACS):       $(PREPARED_HEADERS) $(DOC) $(TEMACS)
-               cd $(BLD)
+$(EMACS):       $(DOC) $(TEMACS)
                $(MAKEDIR)\$(BLD)\temacs.exe -batch -l loadup dump
-               cd ..\..
 
 #
 # The undumped executable
@@ -216,10 +221,38 @@ $(EMACS):       $(PREPARED_HEADERS) $(DOC) $(TEMACS)
 # (it is the preload heap size in MB).
 #
 temacs:         $(BLD) $(TEMACS)
-$(TEMACS):      $(TLIB0) $(TLIB1) $(TLIB2) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
+$(TEMACS):      $(PREPARED_HEADERS) $(TLIB0) $(TLIB1) $(TLIB2) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
                $(LINK) -out:$(TEMACS_TMP) $(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) -f makefile.nt temacs CFLAGS="$(CFLAGS) -DPURESIZE=5000000"
+
+#
+# Dump an Emacs executable named bootstrap-emacs containing the 
+# files from loadup.el in source form.
+#
+bootstrap-emacs: bootstrap-temacs
+               $(MAKEDIR)\$(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.obj
+               - $(DEL) $(BLD)\data.obj
+               - $(DEL) $(BLD)\intervals.obj
+               - $(DEL) $(BLD)\keyboard.obj
+               - $(DEL) $(BLD)\keymap.obj
+
 #
 # 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.
@@ -290,7 +323,6 @@ $(BLD)\abbrev.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\window.h
@@ -300,8 +332,8 @@ $(BLD)\alloc.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(SRC)\puresize.h \
@@ -321,16 +353,30 @@ $(BLD)\alloca.obj : \
        $(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)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
+       $(SRC)\frame.h \
        $(SRC)\window.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
@@ -343,7 +389,6 @@ $(BLD)\bytecode.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\syntax.h
 
@@ -352,7 +397,6 @@ $(BLD)\callint.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\commands.h \
        $(SRC)\keyboard.h \
@@ -366,7 +410,6 @@ $(BLD)\callproc.obj : \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\msdos.h \
        $(EMACS_ROOT)\nt\inc\sys\param.h \
-       $(SRC)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\process.h \
@@ -380,7 +423,6 @@ $(BLD)\casefiddle.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\commands.h \
        $(SRC)\syntax.h
@@ -391,7 +433,6 @@ $(BLD)\casetab.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h
 
 $(BLD)\cm.obj : \
@@ -407,17 +448,25 @@ $(BLD)\cmds.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.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)\lisp.h \
        $(SRC)\puresize.h \
        $(SRC)\buffer.h \
        $(SRC)\syssignal.h
@@ -429,7 +478,6 @@ $(BLD)\dired.obj : \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\vmsdir.h \
        $(SRC)\ndir.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\commands.h \
        $(SRC)\regex.h
@@ -439,7 +487,6 @@ $(BLD)\dispnew.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\termchar.h \
        $(SRC)\termopts.h \
        $(SRC)\termhooks.h \
@@ -452,14 +499,15 @@ $(BLD)\dispnew.obj : \
        $(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)\w32gui.h \
        $(SRC)\xterm.h \
        $(SRC)\vmstime.h \
-       $(SRC)\systime.h \
-       $(SRC)\composite.h
+       $(SRC)\systime.h
 
 $(BLD)\doc.obj : \
        $(SRC)\doc.c \
@@ -467,7 +515,6 @@ $(BLD)\doc.obj : \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
        $(EMACS_ROOT)\nt\inc\sys\file.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\keyboard.h
 
@@ -477,6 +524,18 @@ $(BLD)\doprnt.obj : \
        $(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 \
@@ -485,8 +544,8 @@ $(BLD)\editfns.obj : \
        $(SRC)\uaf.h \
        $(SRC)\vms-pwd.h \
        $(EMACS_ROOT)\nt\inc\pwd.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(SRC)\buffer.h \
@@ -499,9 +558,9 @@ $(BLD)\emacs.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
@@ -515,7 +574,6 @@ $(BLD)\eval.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\blockinput.h \
        $(SRC)\commands.h \
        $(SRC)\keyboard.h
@@ -531,8 +589,8 @@ $(BLD)\fileio.obj : \
        $(SRC)\msdos.h \
        $(EMACS_ROOT)\nt\inc\sys\param.h \
        $(SRC)\vmsdir.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(SRC)\buffer.h \
@@ -550,7 +608,6 @@ $(BLD)\filelock.obj : \
        $(SRC)\vms-pwd.h \
        $(EMACS_ROOT)\nt\inc\pwd.h \
        $(EMACS_ROOT)\nt\inc\sys\file.h \
-       $(SRC)\lisp.h \
        $(EMACS_ROOT)\src\epaths.h \
        $(SRC)\buffer.h \
        $(SRC)\vmsdir.h \
@@ -576,7 +633,6 @@ $(BLD)\floatfns.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\syssignal.h
 
 $(BLD)\fns.obj : \
@@ -584,20 +640,20 @@ $(BLD)\fns.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\keyboard.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
-       $(SRC)\composite.h
+       $(SRC)\composite.h \
+        $(SRC)\md5.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)\lisp.h \
        $(SRC)\frame.h \
        $(SRC)\termhooks.h \
        $(SRC)\window.h \
@@ -637,7 +693,6 @@ $(BLD)\indent.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\indent.h \
        $(SRC)\frame.h \
@@ -646,6 +701,7 @@ $(BLD)\indent.obj : \
        $(SRC)\termopts.h \
        $(SRC)\disptab.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\region-cache.h \
        $(SRC)\composite.h
@@ -655,8 +711,8 @@ $(BLD)\insdel.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(SRC)\buffer.h \
@@ -668,12 +724,13 @@ $(BLD)\intervals.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
+       $(SRC)\composite.h \
+       $(SRC)\keyboard.h \
        $(SRC)\buffer.h \
        $(SRC)\puresize.h
-       $(CC) $(CFLAGS) -Fo$@ intervals.c
 
 $(BLD)\keyboard.obj : \
        $(SRC)\keyboard.c \
@@ -682,7 +739,6 @@ $(BLD)\keyboard.obj : \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\termchar.h \
        $(SRC)\termopts.h \
-       $(SRC)\lisp.h \
        $(SRC)\termhooks.h \
        $(SRC)\macros.h \
        $(SRC)\frame.h \
@@ -701,16 +757,17 @@ $(BLD)\keyboard.obj : \
        $(EMACS_ROOT)\nt\inc\sys\file.h \
        $(SRC)\systty.h \
        $(SRC)\w32term.h \
+       $(SRC)\w32gui.h \
        $(SRC)\xterm.h \
        $(SRC)\vmstime.h \
-       $(SRC)\systime.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)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\keyboard.h \
@@ -729,7 +786,6 @@ $(BLD)\lread.obj : \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
        $(EMACS_ROOT)\nt\inc\sys\file.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(EMACS_ROOT)\src\epaths.h \
        $(SRC)\commands.h \
@@ -742,7 +798,6 @@ $(BLD)\macros.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\macros.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
@@ -753,18 +808,21 @@ $(BLD)\marker.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h
 
+$(BLD)\md5.obj : \
+        $(SRC)\md5.c \
+        $(SRC)\md5.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)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\frame.h \
        $(SRC)\window.h \
        $(SRC)\syntax.h
@@ -774,7 +832,6 @@ $(BLD)\mocklisp.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h
 
 $(BLD)\w32.obj : \
@@ -783,7 +840,6 @@ $(BLD)\w32.obj : \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
-       $(SRC)\lisp.h \
        $(EMACS_ROOT)\nt\inc\pwd.h \
        $(SRC)\w32heap.h
 
@@ -799,19 +855,18 @@ $(BLD)\w32inevt.obj : \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\frame.h \
        $(SRC)\blockinput.h \
        $(SRC)\termhooks.h \
        $(SRC)\w32heap.h \
-       $(SRC)\w32term.h
+       $(SRC)\w32term.h \
+       $(SRC)\w32gui.h
 
 $(BLD)\w32proc.obj : \
        $(SRC)\w32proc.c \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\w32.h \
        $(SRC)\w32heap.h \
        $(SRC)\vmstime.h \
@@ -822,7 +877,6 @@ $(BLD)\w32console.obj : \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\frame.h \
        $(SRC)\disptab.h \
        $(SRC)\termhooks.h \
@@ -836,13 +890,13 @@ $(BLD)\print.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\frame.h \
        $(SRC)\window.h \
        $(SRC)\process.h \
        $(SRC)\termchar.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h
 
@@ -863,18 +917,17 @@ $(BLD)\process.obj : \
        $(SRC)\syssignal.h \
        $(SRC)\vmsproc.h \
        $(SRC)\syswait.h \
-       $(SRC)\lisp.h \
        $(SRC)\vmstime.h \
        $(SRC)\systime.h \
        $(SRC)\termopts.h \
-       $(SRC)\composite.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)\lisp.h \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
@@ -889,7 +942,6 @@ $(BLD)\regex.obj : \
        $(SRC)\s\ms-w32.h \
        $(SRC)\m\intel386.h \
        $(SRC)\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\syntax.h \
        $(SRC)\regex.h
@@ -899,7 +951,6 @@ $(BLD)\region-cache.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\region-cache.h
 
@@ -909,8 +960,8 @@ $(BLD)\scroll.obj : \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\termchar.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\frame.h
 
 $(BLD)\search.obj : \
@@ -918,7 +969,6 @@ $(BLD)\search.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\syntax.h \
        $(SRC)\buffer.h \
        $(SRC)\commands.h \
@@ -933,22 +983,11 @@ $(BLD)\strftime.obj : \
        $(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)\lisp.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)\lisp.h \
        $(SRC)\commands.h \
        $(SRC)\buffer.h \
        $(SRC)\syntax.h \
@@ -959,7 +998,6 @@ $(BLD)\sysdep.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\blockinput.h \
        $(SRC)\dosfns.h \
        $(SRC)\msdos.h \
@@ -976,6 +1014,7 @@ $(BLD)\sysdep.obj : \
        $(SRC)\termchar.h \
        $(SRC)\termopts.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\process.h \
        $(SRC)\vmsdir.h \
        $(SRC)\ndir.h \
@@ -995,9 +1034,9 @@ $(BLD)\term.obj : \
        $(SRC)\termchar.h \
        $(SRC)\termopts.h \
        $(SRC)\cm.h \
-       $(SRC)\lisp.h \
        $(SRC)\frame.h \
        $(SRC)\disptab.h \
+       $(SRC)/dispextern.h \
        $(SRC)\termhooks.h \
        $(SRC)\keyboard.h
 
@@ -1016,34 +1055,13 @@ $(BLD)\textprop.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h \
        $(SRC)\buffer.h \
        $(SRC)\window.h
 
-$(BLD)\intervals.obj : \
-       $(SRC)\intervals.c \
-       $(SRC)\buffer.h \
-       $(SRC)\intervals.h \
-       $(SRC)\composite.h \
-       $(SRC)\keyboard.h \
-       $(SRC)\puresize.h \
-       $(EMACS_ROOT)\src\s\ms-w32.h \
-       $(EMACS_ROOT)\src\m\intel386.h \
-       $(EMACS_ROOT)\src\config.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)\tparam.obj : \
        $(SRC)\tparam.c \
        $(EMACS_ROOT)\src\s\ms-w32.h \
@@ -1055,7 +1073,6 @@ $(BLD)\undo.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\commands.h
 
@@ -1078,10 +1095,10 @@ $(BLD)\widget.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\xterm.h \
        $(SRC)\frame.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\widget.h \
        $(SRC)\widgetprv.h
 
@@ -1090,7 +1107,6 @@ $(BLD)\window.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\buffer.h \
        $(SRC)\frame.h \
        $(SRC)\window.h \
@@ -1106,7 +1122,6 @@ $(BLD)\xdisp.obj : \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\lisp.h \
        $(SRC)\frame.h \
        $(SRC)\window.h \
        $(SRC)\termchar.h \
@@ -1117,15 +1132,17 @@ $(BLD)\xdisp.obj : \
        $(SRC)\disptab.h \
        $(SRC)\termhooks.h \
        $(SRC)\dispextern.h \
+       $(SRC)\w32gui.h \
        $(SRC)\intervals.h \
        $(SRC)\composite.h
 
-$(BLD)\w32faces.obj: \
+$(BLD)\xfaces.obj: \
        $(EMACS_ROOT)\src\s\ms-w32.h \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
-       $(SRC)\w32faces.c \
-       $(SRC)\lisp.h \
+       $(SRC)\xfaces.c \
+       $(SRC)\charset.h \
+       $(SRC)\fontset.h \
        $(SRC)\w32term.h \
        $(SRC)\w32gui.h \
        $(SRC)\buffer.h \
@@ -1142,12 +1159,13 @@ $(BLD)\w32fns.obj: \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\w32fns.c \
        $(SRC)\x-list-font.c \
-       $(SRC)\lisp.h \
        $(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 \
@@ -1160,20 +1178,20 @@ $(BLD)\w32menu.obj: \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\w32menu.c \
-       $(SRC)\lisp.h \
        $(SRC)\termhooks.h \
        $(SRC)\frame.h \
        $(SRC)\window.h \
        $(SRC)\keyboard.h \
        $(SRC)\blockinput.h \
-       $(SRC)\buffer.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)\lisp.h \
        $(SRC)\blockinput.h \
        $(SRC)\w32heap.h \
        $(SRC)\w32term.h \
@@ -1191,14 +1209,14 @@ $(BLD)\w32term.obj: \
        $(SRC)\window.h \
        $(SRC)\keyboard.h \
        $(SRC)\intervals.h \
-       $(SRC)\composite.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)\lisp.h \
        $(SRC)\w32term.h \
        $(SRC)\w32gui.h \
        $(SRC)\dispextern.h \
@@ -1210,7 +1228,6 @@ $(BLD)\w32reg.obj: \
        $(EMACS_ROOT)\src\m\intel386.h \
        $(EMACS_ROOT)\src\config.h \
        $(SRC)\w32reg.c \
-       $(SRC)\lisp.h \
        $(SRC)\w32term.h \
        $(SRC)\w32gui.h \
        $(SRC)\blockinput.h
@@ -1226,15 +1243,15 @@ $(BLD)\w32bdf.obj: \
        $(EMACS_ROOT)\src/m\intel386.h \
        $(EMACS_ROOT)\src/config.h \
        $(SRC)\w32bdf.c \
-       $(SRC)\lisp.h \
        $(SRC)\charset.h \
+       $(SRC)\frame.h \
+       $(SRC)\dispextern.h \
        $(SRC)\fontset.h \
        $(SRC)\blockinput.h \
        $(SRC)\w32gui.h \
        $(SRC)\w32term.h \
+       $(SRC)\w32gui.h \
        $(SRC)\w32bdf.h \
-       $(SRC)\lisp.h \
-       $(SRC)\w32term.h \
        $(SRC)\w32.h \
        $(SRC)\frame.h \
        $(SRC)\blockinput.h