1#  -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
2#  Copyright (C) 2000, 2001, 2002, 2003, 2004,
3#                2005, 2006, 2007 Free Software Foundation, Inc.
4#
5#  This file is part of GNU Emacs.
6#
7#  GNU Emacs is free software; you can redistribute it and/or modify
8#  it under the terms of the GNU General Public License as published by
9#  the Free Software Foundation; either version 2, or (at your option)
10#  any later version.
11#
12#  GNU Emacs is distributed in the hope that it will be useful,
13#  but WITHOUT ANY WARRANTY; without even the implied warranty of
14#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15#  GNU General Public License for more details.
16#
17#  You should have received a copy of the GNU General Public License
18#  along with GNU Emacs; see the file COPYING.  If not, write to the
19#  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20#  Boston, MA 02110-1301, USA.
21#
22
23ALL = emacs
24
25.PHONY: $(ALL)
26
27# Set EMACSLOADPATH correctly (in case already defined in environment).
28EMACSLOADPATH=$(CURDIR)/../lisp
29
30#
31# HAVE_CONFIG_H is required by some generic gnu sources stuck into
32# the emacs source tree.
33#
34LOCAL_FLAGS     = -Demacs=1 -DWINDOWSNT -DDOS_NT -DHAVE_CONFIG_H -I../nt/inc -D_UCHAR_T -DHAVE_NTGUI=1 $(EMACS_EXTRA_C_FLAGS)
35
36EMACS           = $(BLD)/emacs.exe
37TEMACS          = $(BLD)/temacs.exe
38TEMACS_TMP      = $(BLD)/temacs.bin
39TLIB0           = $(BLD)/temacs0.$(A)
40TLIB1           = $(BLD)/temacs1.$(A)
41TLIBW32         = $(BLD)/temacw32.$(A)
42TOBJ            = $(BLD)/firstfile.$(O)
43TRES		= $(BLD)/emacs.res
44TLASTLIB	= $(BLD)/lastfile.$(A)
45
46DOC		= $(OBJDIR)/etc/DOC-X
47
48FULL_LINK_FLAGS      = $(LINK_FLAGS) $(TEMACS_EXTRA_LINK)
49
50#
51# Split up the objects into two sets so that we don't run out of
52# command line space when we link them into a library.
53#
54# Put emacs.$(O) in a separate lib, since we need to have firstfile.$(O)
55# as the "main" object file when linking.
56#
57OBJ0 =  $(BLD)/emacs.$(O)
58
59OBJ1 =  $(BLD)/abbrev.$(O)			\
60	$(BLD)/alloc.$(O)			\
61	$(BLD)/atimer.$(O)			\
62	$(BLD)/buffer.$(O)			\
63	$(BLD)/bytecode.$(O)			\
64	$(BLD)/callint.$(O)			\
65	$(BLD)/callproc.$(O)			\
66	$(BLD)/casefiddle.$(O)			\
67	$(BLD)/cm.$(O)				\
68	$(BLD)/cmds.$(O)			\
69	$(BLD)/data.$(O)			\
70	$(BLD)/dired.$(O)			\
71	$(BLD)/dispnew.$(O)			\
72	$(BLD)/doc.$(O)				\
73	$(BLD)/doprnt.$(O)			\
74	$(BLD)/editfns.$(O)			\
75	$(BLD)/eval.$(O)			\
76	$(BLD)/fileio.$(O)			\
77	$(BLD)/filelock.$(O)			\
78	$(BLD)/filemode.$(O)			\
79	$(BLD)/fns.$(O)				\
80	$(BLD)/indent.$(O)			\
81	$(BLD)/insdel.$(O)			\
82	$(BLD)/keyboard.$(O)			\
83	$(BLD)/keymap.$(O)			\
84	$(BLD)/lread.$(O)			\
85	$(BLD)/macros.$(O)			\
86	$(BLD)/marker.$(O)			\
87	$(BLD)/md5.$(O)                         \
88	$(BLD)/minibuf.$(O)			\
89	$(BLD)/w32.$(O)				\
90	$(BLD)/w32heap.$(O)			\
91	$(BLD)/w32inevt.$(O)			\
92	$(BLD)/w32proc.$(O)			\
93	$(BLD)/w32console.$(O)			\
94	$(BLD)/print.$(O)			\
95	$(BLD)/process.$(O)			\
96	$(BLD)/regex.$(O)			\
97	$(BLD)/scroll.$(O)			\
98	$(BLD)/search.$(O)			\
99	$(BLD)/sound.$(O)			\
100	$(BLD)/syntax.$(O)			\
101	$(BLD)/sysdep.$(O)			\
102	$(BLD)/term.$(O)			\
103	$(BLD)/termcap.$(O)			\
104	$(BLD)/tparam.$(O)			\
105	$(BLD)/undo.$(O)			\
106	$(BLD)/unexw32.$(O)			\
107	$(BLD)/window.$(O)			\
108	$(BLD)/xdisp.$(O)			\
109	$(BLD)/casetab.$(O)			\
110	$(BLD)/floatfns.$(O)			\
111	$(BLD)/frame.$(O)			\
112	$(BLD)/gmalloc.$(O)			\
113	$(BLD)/intervals.$(O)			\
114	$(BLD)/composite.$(O)			\
115	$(BLD)/ralloc.$(O)			\
116	$(BLD)/textprop.$(O)			\
117	$(BLD)/vm-limit.$(O)			\
118	$(BLD)/region-cache.$(O)		\
119	$(BLD)/strftime.$(O)			\
120	$(BLD)/charset.$(O)			\
121	$(BLD)/coding.$(O)			\
122	$(BLD)/category.$(O)			\
123	$(BLD)/ccl.$(O)				\
124	$(BLD)/fontset.$(O)			\
125	$(BLD)/fringe.$(O)			\
126	$(BLD)/image.$(O)
127
128WIN32OBJ = $(BLD)/w32term.$(O)			\
129	   $(BLD)/w32xfns.$(O)			\
130	   $(BLD)/w32fns.$(O)			\
131	   $(BLD)/xfaces.$(O)			\
132	   $(BLD)/w32select.$(O)		\
133	   $(BLD)/w32menu.$(O)			\
134	   $(BLD)/w32reg.$(O)			\
135	   $(BLD)/w32bdf.$(O)
136
137LIBS =  $(TLIB0)	\
138	$(TLIB1)	\
139	$(TLIBW32)	\
140	$(TLASTLIB)	\
141	$(WINMM)    \
142	$(ADVAPI32)	\
143	$(GDI32)	\
144	$(COMDLG32)	\
145	$(USER32)	\
146	$(MPR)		\
147	$(SHELL32)	\
148	$(WINSPOOL)	\
149	$(libc)
150
151#
152# Build the executable and dump it.
153#
154all:            $(ALL)
155
156#
157# The dumped executable
158#
159emacs:          stamp_BLD $(EMACS)
160$(EMACS):       $(DOC) $(TEMACS)
161	"$(THISDIR)/$(BLD)/temacs.exe" -batch -l loadup dump
162	-"$(THISDIR)/$(BLD)/emacs.exe" -q -batch -f list-load-path-shadows
163
164#
165# The undumped executable
166# Note the extra post-link step to insert a static preload heap section.
167# If preload runs out of memory, increase the last argument to addsection
168# (it is the preload heap size in MB).
169#
170temacs:         stamp_BLD $(TEMACS)
171$(TEMACS):      $(TLIB0) $(TLIB1) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES) \
172		  ../nt/$(BLD)/addsection.exe
173	$(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
174	"../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP 16
175	echo $(OBJ0) > $(BLD)/buildobj.lst
176	echo $(OBJ1) >> $(BLD)/buildobj.lst
177	echo $(WIN32OBJ) >> $(BLD)/buildobj.lst
178
179bootstrap: bootstrap-emacs
180
181#
182# Build a temacs with a sufficiently large PURESIZE to load the
183# Lisp files from loadup.el in source form.
184#
185# WARNING: Do NOT split the part inside $(ARGQUOTE)s into multiple lines as
186#          this can break with GNU Make 3.81 and later if sh.exe is used.
187bootstrap-temacs:
188	$(MAKE) $(MFLAGS) $(XMFLAGS) temacs CFLAGS=$(ARGQUOTE)$(CFLAGS) -DPURESIZE=5000000$(ARGQUOTE)
189
190#
191# Dump an Emacs executable named bootstrap-emacs containing the
192# files from loadup.el in source form.
193#
194bootstrap-emacs: bootstrap-temacs
195	"$(THISDIR)/$(BLD)/temacs.exe" -batch -l loadup bootstrap
196	- mkdir "../bin"
197	$(CP) $(EMACS) ../bin
198
199#
200# Force recompile of files that depend on PURESIZE
201#
202bootstrap-clean:
203	- $(DEL) $(BLD)/alloc.$(O)
204	- $(DEL) $(BLD)/data.$(O)
205	- $(DEL) $(BLD)/intervals.$(O)
206	- $(DEL) $(BLD)/keyboard.$(O)
207	- $(DEL) $(BLD)/keymap.$(O)
208
209#
210# The resource file.  NT 3.10 requires the use of cvtres; even though
211# it is not necessary on later versions, it is still ok to use it.
212#
213$(TRES): ../nt/emacs.rc stamp_BLD
214	$(RC) $(RC_INCLUDE)../nt $(RC_OUT)$@ ../nt/emacs.rc
215
216#
217# Build the library.  Split up the build into two phases...otherwise we
218# run out of command line space.
219#
220$(TLIB0):       $(OBJ0)
221	- $(DEL) $@
222	$(AR) $(AR_OUT)$@ $(ALL_DEPS)
223$(TLIB1):       $(OBJ1)
224	- $(DEL) $@
225	$(AR) $(AR_OUT)$@ $(ALL_DEPS)
226$(TLIBW32):	$(WIN32OBJ)
227	- $(DEL) $@
228	$(AR) $(AR_OUT)$@ $(ALL_DEPS)
229
230#
231# Place lastfile.$(O) in its own library so that it can be loaded after
232# the source libraries but before any system libraries.  Doing so defines
233# the end of Emacs' data section portably across compilers and systems.
234#
235$(TLASTLIB):	$(BLD)/lastfile.$(O)
236	- $(DEL) $@
237	$(AR) $(AR_OUT)$@ $(ALL_DEPS)
238
239#
240# Assuming INSTALL_DIR is defined, build and install emacs in it.
241#
242install:        $(ALL)
243	- mkdir "$(INSTALL_DIR)/bin"
244	$(CP) $(EMACS) $(INSTALL_DIR)/bin
245
246#
247# Maintenance
248#
249clean:
250	- $(DEL) *~ "s/*~" "m/*~"
251	- $(DEL) $(COMPILER_TEMP_FILES)
252	- $(DEL_TREE) $(OBJDIR)
253	- $(DEL) stamp_BLD
254
255distclean:	clean
256	- $(DEL) config.h epaths.h
257
258cleanall:	clean
259	- $(DEL_TREE) obj
260	- $(DEL_TREE) obj-spd
261	- $(DEL_TREE) oo
262	- $(DEL_TREE) oo-spd
263
264### DEPENDENCIES ###
265
266EMACS_ROOT	= ..
267SRC		= .
268
269$(BLD)/abbrev.$(O) : \
270	$(SRC)/abbrev.c \
271	$(EMACS_ROOT)/src/s/ms-w32.h \
272	$(EMACS_ROOT)/src/m/intel386.h \
273	$(EMACS_ROOT)/src/config.h \
274	$(SRC)/buffer.h \
275	$(SRC)/charset.h \
276	$(SRC)/commands.h \
277	$(SRC)/dispextern.h \
278	$(SRC)/syntax.h \
279	$(SRC)/w32bdf.h \
280	$(SRC)/w32gui.h \
281	$(SRC)/window.h
282
283$(BLD)/alloc.$(O) : \
284	$(SRC)/alloc.c \
285	$(EMACS_ROOT)/src/s/ms-w32.h \
286	$(EMACS_ROOT)/src/m/intel386.h \
287	$(EMACS_ROOT)/src/config.h \
288	$(SRC)/blockinput.h \
289	$(SRC)/buffer.h \
290	$(SRC)/charset.h \
291	$(SRC)/composite.h \
292	$(SRC)/dispextern.h \
293	$(SRC)/frame.h \
294	$(SRC)/intervals.h \
295	$(SRC)/keyboard.h \
296	$(SRC)/process.h \
297	$(SRC)/puresize.h \
298	$(SRC)/syssignal.h \
299	$(SRC)/w32bdf.h \
300	$(SRC)/w32gui.h \
301	$(SRC)/window.h
302
303$(BLD)/atimer.$(O) : \
304	$(SRC)/atimer.c \
305	$(EMACS_ROOT)/src/s/ms-w32.h \
306	$(EMACS_ROOT)/src/m/intel386.h \
307	$(EMACS_ROOT)/src/config.h \
308	$(SRC)/s/ms-w32.h \
309	$(SRC)/m/intel386.h \
310	$(SRC)/config.h \
311	$(SRC)/atimer.h \
312	$(SRC)/blockinput.h \
313	$(SRC)/syssignal.h \
314	$(SRC)/systime.h
315
316$(BLD)/buffer.$(O) : \
317	$(SRC)/buffer.c \
318	$(EMACS_ROOT)/nt/inc/sys/param.h \
319	$(EMACS_ROOT)/src/s/ms-w32.h \
320	$(EMACS_ROOT)/src/m/intel386.h \
321	$(EMACS_ROOT)/src/config.h \
322	$(SRC)/blockinput.h \
323	$(SRC)/buffer.h \
324	$(SRC)/charset.h \
325	$(SRC)/commands.h \
326	$(SRC)/composite.h \
327	$(SRC)/dispextern.h \
328	$(SRC)/frame.h \
329	$(SRC)/indent.h \
330	$(SRC)/intervals.h \
331	$(SRC)/keyboard.h \
332	$(SRC)/keymap.h \
333	$(SRC)/region-cache.h \
334	$(SRC)/w32bdf.h \
335	$(SRC)/w32gui.h \
336	$(SRC)/window.h
337
338$(BLD)/bytecode.$(O) : \
339	$(SRC)/bytecode.c \
340	$(EMACS_ROOT)/src/s/ms-w32.h \
341	$(EMACS_ROOT)/src/m/intel386.h \
342	$(EMACS_ROOT)/src/config.h \
343	$(SRC)/buffer.h \
344	$(SRC)/charset.h \
345	$(SRC)/syntax.h \
346	$(SRC)/window.h
347
348$(BLD)/callint.$(O) : \
349	$(SRC)/callint.c \
350	$(EMACS_ROOT)/src/s/ms-w32.h \
351	$(EMACS_ROOT)/src/m/intel386.h \
352	$(EMACS_ROOT)/src/config.h \
353	$(SRC)/buffer.h \
354	$(SRC)/commands.h \
355	$(SRC)/dispextern.h \
356	$(SRC)/keyboard.h \
357	$(SRC)/keymap.h \
358	$(SRC)/w32bdf.h \
359	$(SRC)/w32gui.h \
360	$(SRC)/window.h
361
362$(BLD)/callproc.$(O) : \
363	$(SRC)/callproc.c \
364	$(EMACS_ROOT)/src/s/ms-w32.h \
365	$(EMACS_ROOT)/src/m/intel386.h \
366	$(EMACS_ROOT)/src/config.h \
367	$(EMACS_ROOT)/nt/inc/sys/param.h \
368	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
369	$(EMACS_ROOT)/nt/inc/sys/file.h \
370	$(SRC)/buffer.h \
371	$(SRC)/ccl.h \
372	$(SRC)/charset.h \
373	$(SRC)/coding.h \
374	$(SRC)/commands.h \
375	$(SRC)/composite.h \
376	$(SRC)/epaths.h \
377	$(SRC)/process.h \
378	$(SRC)/syssignal.h \
379	$(SRC)/systty.h \
380	$(SRC)/w32.h
381
382$(BLD)/casefiddle.$(O) : \
383	$(SRC)/casefiddle.c \
384	$(EMACS_ROOT)/src/s/ms-w32.h \
385	$(EMACS_ROOT)/src/m/intel386.h \
386	$(EMACS_ROOT)/src/config.h \
387	$(SRC)/buffer.h \
388	$(SRC)/charset.h \
389	$(SRC)/commands.h \
390	$(SRC)/composite.h \
391	$(SRC)/keymap.h \
392	$(SRC)/syntax.h
393
394$(BLD)/casetab.$(O) : \
395	$(SRC)/casetab.c \
396	$(EMACS_ROOT)/src/s/ms-w32.h \
397	$(EMACS_ROOT)/src/m/intel386.h \
398	$(EMACS_ROOT)/src/config.h \
399	$(SRC)/buffer.h \
400	$(SRC)/charset.h
401
402$(BLD)/category.$(O) : \
403	$(SRC)/category.c \
404	$(EMACS_ROOT)/src/s/ms-w32.h \
405	$(EMACS_ROOT)/src/m/intel386.h \
406	$(EMACS_ROOT)/src/config.h \
407	$(SRC)/buffer.h \
408	$(SRC)/category.h \
409	$(SRC)/charset.h \
410	$(SRC)/keymap.h
411
412$(BLD)/ccl.$(O) : \
413	$(SRC)/ccl.c \
414	$(EMACS_ROOT)/src/s/ms-w32.h \
415	$(EMACS_ROOT)/src/m/intel386.h \
416	$(EMACS_ROOT)/src/config.h \
417	$(SRC)/ccl.h \
418	$(SRC)/charset.h \
419	$(SRC)/coding.h
420
421$(BLD)/charset.$(O) : \
422	$(SRC)/charset.c \
423	$(EMACS_ROOT)/src/s/ms-w32.h \
424	$(EMACS_ROOT)/src/m/intel386.h \
425	$(EMACS_ROOT)/src/config.h \
426	$(SRC)/buffer.h \
427	$(SRC)/ccl.h \
428	$(SRC)/charset.h \
429	$(SRC)/coding.h \
430	$(SRC)/composite.h \
431	$(SRC)/disptab.h
432
433$(BLD)/cm.$(O) : \
434	$(SRC)/cm.c \
435	$(EMACS_ROOT)/src/s/ms-w32.h \
436	$(EMACS_ROOT)/src/m/intel386.h \
437	$(EMACS_ROOT)/src/config.h \
438	$(SRC)/cm.h \
439	$(SRC)/termhooks.h
440
441$(BLD)/cmds.$(O) : \
442	$(SRC)/cmds.c \
443	$(EMACS_ROOT)/src/s/ms-w32.h \
444	$(EMACS_ROOT)/src/m/intel386.h \
445	$(EMACS_ROOT)/src/config.h \
446	$(SRC)/buffer.h \
447	$(SRC)/charset.h \
448	$(SRC)/commands.h \
449	$(SRC)/dispextern.h \
450	$(SRC)/keyboard.h \
451	$(SRC)/keymap.h \
452	$(SRC)/syntax.h \
453	$(SRC)/w32bdf.h \
454	$(SRC)/w32gui.h \
455	$(SRC)/window.h
456
457$(BLD)/coding.$(O) : \
458	$(SRC)/coding.c \
459	$(EMACS_ROOT)/src/s/ms-w32.h \
460	$(EMACS_ROOT)/src/m/intel386.h \
461	$(EMACS_ROOT)/src/config.h \
462	$(SRC)/buffer.h \
463	$(SRC)/ccl.h \
464	$(SRC)/charset.h \
465	$(SRC)/coding.h \
466	$(SRC)/composite.h \
467	$(SRC)/dispextern.h \
468	$(SRC)/intervals.h \
469	$(SRC)/w32bdf.h \
470	$(SRC)/w32gui.h \
471	$(SRC)/window.h
472
473$(BLD)/composite.$(O) : \
474	$(SRC)/composite.c \
475	$(EMACS_ROOT)/src/s/ms-w32.h \
476	$(EMACS_ROOT)/src/m/intel386.h \
477	$(EMACS_ROOT)/src/config.h \
478	$(SRC)/buffer.h \
479	$(SRC)/charset.h \
480	$(SRC)/composite.h \
481	$(SRC)/dispextern.h \
482	$(SRC)/intervals.h \
483	$(SRC)/w32bdf.h \
484	$(SRC)/w32gui.h
485
486$(BLD)/data.$(O) : \
487	$(SRC)/data.c \
488	$(EMACS_ROOT)/src/s/ms-w32.h \
489	$(EMACS_ROOT)/src/m/intel386.h \
490	$(EMACS_ROOT)/src/config.h \
491	$(SRC)/buffer.h \
492	$(SRC)/charset.h \
493	$(SRC)/frame.h \
494	$(SRC)/keyboard.h \
495	$(SRC)/puresize.h \
496	$(SRC)/syssignal.h
497
498$(BLD)/dired.$(O) : \
499	$(SRC)/dired.c \
500	$(EMACS_ROOT)/src/s/ms-w32.h \
501	$(EMACS_ROOT)/src/m/intel386.h \
502	$(EMACS_ROOT)/src/config.h \
503	$(SRC)/buffer.h \
504	$(SRC)/ccl.h \
505	$(SRC)/charset.h \
506	$(SRC)/coding.h \
507	$(SRC)/commands.h \
508	$(SRC)/ndir.h \
509	$(SRC)/regex.h \
510	$(SRC)/systime.h
511
512$(BLD)/dispnew.$(O) : \
513	$(SRC)/dispnew.c \
514	$(EMACS_ROOT)/src/s/ms-w32.h \
515	$(EMACS_ROOT)/src/m/intel386.h \
516	$(EMACS_ROOT)/src/config.h \
517	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
518	$(EMACS_ROOT)/nt/inc/sys/file.h \
519	$(SRC)/atimer.h \
520	$(SRC)/blockinput.h \
521	$(SRC)/buffer.h \
522	$(SRC)/charset.h \
523	$(SRC)/cm.h \
524	$(SRC)/commands.h \
525	$(SRC)/composite.h \
526	$(SRC)/dispextern.h \
527	$(SRC)/disptab.h \
528	$(SRC)/frame.h \
529	$(SRC)/indent.h \
530	$(SRC)/intervals.h \
531	$(SRC)/keyboard.h \
532	$(SRC)/process.h \
533	$(SRC)/syssignal.h \
534	$(SRC)/systime.h \
535	$(SRC)/termchar.h \
536	$(SRC)/termhooks.h \
537	$(SRC)/termopts.h \
538	$(SRC)/w32bdf.h \
539	$(SRC)/w32gui.h \
540	$(SRC)/w32term.h \
541	$(SRC)/window.h
542
543$(BLD)/doc.$(O) : \
544	$(SRC)/doc.c \
545	$(EMACS_ROOT)/src/s/ms-w32.h \
546	$(EMACS_ROOT)/src/m/intel386.h \
547	$(EMACS_ROOT)/src/config.h \
548	$(EMACS_ROOT)/nt/inc/sys/file.h \
549	$(SRC)/buffer.h \
550	$(SRC)/charset.h \
551	$(SRC)/keyboard.h \
552	$(SRC)/keymap.h
553
554$(BLD)/doprnt.$(O) : \
555	$(SRC)/doprnt.c \
556	$(EMACS_ROOT)/src/s/ms-w32.h \
557	$(EMACS_ROOT)/src/m/intel386.h \
558	$(EMACS_ROOT)/src/config.h \
559	$(SRC)/charset.c
560
561$(BLD)/editfns.$(O) : \
562	$(SRC)/editfns.c \
563	$(EMACS_ROOT)/src/s/ms-w32.h \
564	$(EMACS_ROOT)/src/m/intel386.h \
565	$(EMACS_ROOT)/src/config.h \
566	$(EMACS_ROOT)/nt/inc/pwd.h \
567	$(SRC)/buffer.h \
568	$(SRC)/ccl.h \
569	$(SRC)/charset.h \
570	$(SRC)/coding.h \
571	$(SRC)/composite.h \
572	$(SRC)/dispextern.h \
573	$(SRC)/frame.h \
574	$(SRC)/intervals.h \
575	$(SRC)/systime.h \
576	$(SRC)/w32bdf.h \
577	$(SRC)/w32gui.h \
578	$(SRC)/window.h
579
580$(BLD)/emacs.$(O) : \
581	$(SRC)/emacs.c \
582	$(EMACS_ROOT)/src/s/ms-w32.h \
583	$(EMACS_ROOT)/src/m/intel386.h \
584	$(EMACS_ROOT)/src/config.h \
585	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
586	$(EMACS_ROOT)/nt/inc/sys/file.h \
587	$(SRC)/atimer.h \
588	$(SRC)/blockinput.h \
589	$(SRC)/buffer.h \
590	$(SRC)/commands.h \
591	$(SRC)/composite.h \
592	$(SRC)/dispextern.h \
593	$(SRC)/intervals.h \
594	$(SRC)/keyboard.h \
595	$(SRC)/keymap.h \
596	$(SRC)/process.h \
597	$(SRC)/syssignal.h \
598	$(SRC)/systime.h \
599	$(SRC)/systty.h \
600	$(SRC)/termhooks.h \
601	$(SRC)/w32bdf.h \
602	$(SRC)/w32gui.h \
603	$(SRC)/w32heap.h \
604	$(SRC)/window.h
605
606$(BLD)/eval.$(O) : \
607	$(SRC)/eval.c \
608	$(EMACS_ROOT)/src/s/ms-w32.h \
609	$(EMACS_ROOT)/src/m/intel386.h \
610	$(EMACS_ROOT)/src/config.h \
611	$(SRC)/atimer.h \
612	$(SRC)/blockinput.h \
613	$(SRC)/commands.h \
614	$(SRC)/dispextern.h \
615	$(SRC)/keyboard.h \
616	$(SRC)/systime.h \
617	$(SRC)/w32bdf.h \
618	$(SRC)/w32gui.h
619
620$(BLD)/fileio.$(O) : \
621	$(SRC)/fileio.c \
622	$(EMACS_ROOT)/src/s/ms-w32.h \
623	$(EMACS_ROOT)/src/m/intel386.h \
624	$(EMACS_ROOT)/src/config.h \
625	$(EMACS_ROOT)/nt/inc/pwd.h \
626	$(EMACS_ROOT)/nt/inc/sys/param.h \
627	$(EMACS_ROOT)/nt/inc/sys/file.h \
628	$(SRC)/buffer.h \
629	$(SRC)/ccl.h \
630	$(SRC)/charset.h \
631	$(SRC)/coding.h \
632	$(SRC)/commands.h \
633	$(SRC)/composite.h \
634	$(SRC)/dispextern.h \
635	$(SRC)/intervals.h \
636	$(SRC)/systime.h \
637	$(SRC)/w32bdf.h \
638	$(SRC)/w32gui.h \
639	$(SRC)/window.h
640
641$(BLD)/filelock.$(O) : \
642	$(SRC)/filelock.c \
643	$(EMACS_ROOT)/src/s/ms-w32.h \
644	$(EMACS_ROOT)/src/m/intel386.h \
645	$(EMACS_ROOT)/src/config.h \
646	$(EMACS_ROOT)/nt/inc/pwd.h \
647	$(EMACS_ROOT)/nt/inc/sys/file.h \
648	$(EMACS_ROOT)/src/epaths.h \
649	$(SRC)/buffer.h \
650	$(SRC)/ccl.h \
651	$(SRC)/charset.h \
652	$(SRC)/coding.h \
653	$(SRC)/systime.h
654
655$(BLD)/filemode.$(O) : \
656	$(SRC)/filemode.c \
657	$(EMACS_ROOT)/src/s/ms-w32.h \
658	$(EMACS_ROOT)/src/m/intel386.h \
659	$(EMACS_ROOT)/src/config.h \
660	$(SRC)/s/ms-w32.h \
661	$(SRC)/m/intel386.h \
662	$(SRC)/config.h
663
664$(BLD)/firstfile.$(O) : \
665	$(SRC)/firstfile.c \
666	$(EMACS_ROOT)/src/s/ms-w32.h \
667	$(EMACS_ROOT)/src/m/intel386.h \
668	$(EMACS_ROOT)/src/config.h
669
670$(BLD)/floatfns.$(O) : \
671	$(SRC)/floatfns.c \
672	$(EMACS_ROOT)/src/s/ms-w32.h \
673	$(EMACS_ROOT)/src/m/intel386.h \
674	$(EMACS_ROOT)/src/config.h \
675	$(SRC)/syssignal.h
676
677$(BLD)/fns.$(O) : \
678	$(SRC)/fns.c \
679	$(EMACS_ROOT)/src/s/ms-w32.h \
680	$(EMACS_ROOT)/src/m/intel386.h \
681	$(EMACS_ROOT)/src/config.h \
682	$(EMACS_ROOT)/nt/inc/langinfo.h \
683	$(EMACS_ROOT)/nt/inc/nl_types.h \
684	$(SRC)/atimer.h \
685	$(SRC)/blockinput.h \
686	$(SRC)/buffer.h \
687	$(SRC)/ccl.h \
688	$(SRC)/charset.h \
689	$(SRC)/coding.h \
690	$(SRC)/commands.h \
691	$(SRC)/composite.h \
692	$(SRC)/dispextern.h \
693	$(SRC)/frame.h \
694	$(SRC)/intervals.h \
695	$(SRC)/keyboard.h \
696	$(SRC)/keymap.h \
697	$(SRC)/md5.h \
698	$(SRC)/systime.h \
699	$(SRC)/w32bdf.h \
700	$(SRC)/w32gui.h \
701	$(SRC)/window.h
702
703$(BLD)/fontset.$(O) : \
704	$(SRC)/fontset.c \
705	$(EMACS_ROOT)/src/s/ms-w32.h \
706	$(EMACS_ROOT)/src/m/intel386.h \
707	$(EMACS_ROOT)/src/config.h \
708	$(SRC)/buffer.h \
709	$(SRC)/ccl.h \
710	$(SRC)/charset.h \
711	$(SRC)/dispextern.h \
712	$(SRC)/fontset.h \
713	$(SRC)/frame.h \
714	$(SRC)/keyboard.h \
715	$(SRC)/w32bdf.h \
716	$(SRC)/w32gui.h \
717	$(SRC)/window.h
718
719$(BLD)/frame.$(O) : \
720	$(SRC)/frame.c \
721	$(EMACS_ROOT)/src/s/ms-w32.h \
722	$(EMACS_ROOT)/src/m/intel386.h \
723	$(EMACS_ROOT)/src/config.h \
724	$(SRC)/atimer.h \
725	$(SRC)/blockinput.h \
726	$(SRC)/buffer.h \
727	$(SRC)/charset.h \
728	$(SRC)/commands.h \
729	$(SRC)/dispextern.h \
730	$(SRC)/fontset.h \
731	$(SRC)/frame.h \
732	$(SRC)/keyboard.h \
733	$(SRC)/systime.h \
734	$(SRC)/termhooks.h \
735	$(SRC)/w32bdf.h \
736	$(SRC)/w32gui.h \
737	$(SRC)/w32term.h \
738	$(SRC)/window.h
739
740$(BLD)/fringe.$(O) : \
741	$(SRC)/fringe.c \
742	$(EMACS_ROOT)/src/s/ms-w32.h \
743	$(EMACS_ROOT)/src/m/intel386.h \
744	$(EMACS_ROOT)/src/config.h \
745	$(SRC)/atimer.h \
746	$(SRC)/blockinput.h \
747	$(SRC)/buffer.h \
748	$(SRC)/dispextern.h \
749	$(SRC)/frame.h \
750	$(SRC)/systime.h \
751	$(SRC)/w32bdf.h \
752	$(SRC)/w32gui.h \
753	$(SRC)/window.h
754
755$(BLD)/gmalloc.$(O) : \
756	$(SRC)/gmalloc.c \
757	$(EMACS_ROOT)/src/s/ms-w32.h \
758	$(EMACS_ROOT)/src/m/intel386.h \
759	$(EMACS_ROOT)/src/config.h \
760	$(EMACS_ROOT)/nt/inc/sys/param.h \
761	$(SRC)/getpagesize.h
762
763$(BLD)/image.$(O): \
764	$(SRC)/image.c \
765	$(EMACS_ROOT)/src/s/ms-w32.h \
766	$(EMACS_ROOT)/src/m/intel386.h \
767	$(EMACS_ROOT)/src/config.h \
768	$(SRC)/atimer.h \
769	$(SRC)/blockinput.h \
770	$(SRC)/dispextern.h \
771	$(SRC)/epaths.h \
772	$(SRC)/frame.h \
773	$(SRC)/systime.h \
774	$(SRC)/termhooks.h \
775	$(SRC)/w32bdf.h \
776	$(SRC)/w32gui.h \
777	$(SRC)/w32heap.h \
778	$(SRC)/w32term.h \
779	$(SRC)/window.h
780
781$(BLD)/indent.$(O) : \
782	$(SRC)/indent.c \
783	$(EMACS_ROOT)/src/s/ms-w32.h \
784	$(EMACS_ROOT)/src/m/intel386.h \
785	$(EMACS_ROOT)/src/config.h \
786	$(SRC)/buffer.h \
787	$(SRC)/category.h \
788	$(SRC)/charset.h \
789	$(SRC)/composite.h \
790	$(SRC)/dispextern.h \
791	$(SRC)/disptab.h \
792	$(SRC)/frame.h \
793	$(SRC)/indent.h \
794	$(SRC)/intervals.h \
795	$(SRC)/keyboard.h \
796	$(SRC)/region-cache.h \
797	$(SRC)/termchar.h \
798	$(SRC)/termopts.h \
799	$(SRC)/w32bdf.h \
800	$(SRC)/w32gui.h \
801	$(SRC)/window.h
802
803$(BLD)/insdel.$(O) : \
804	$(SRC)/insdel.c \
805	$(EMACS_ROOT)/src/s/ms-w32.h \
806	$(EMACS_ROOT)/src/m/intel386.h \
807	$(EMACS_ROOT)/src/config.h \
808	$(SRC)/atimer.h \
809	$(SRC)/blockinput.h \
810	$(SRC)/buffer.h \
811	$(SRC)/charset.h \
812	$(SRC)/composite.h \
813	$(SRC)/dispextern.h \
814	$(SRC)/intervals.h \
815	$(SRC)/region-cache.h \
816	$(SRC)/systime.h \
817	$(SRC)/w32bdf.h \
818	$(SRC)/w32gui.h \
819	$(SRC)/window.h
820
821$(BLD)/intervals.$(O) : \
822	$(SRC)/intervals.c \
823	$(EMACS_ROOT)/src/s/ms-w32.h \
824	$(EMACS_ROOT)/src/m/intel386.h \
825	$(EMACS_ROOT)/src/config.h \
826	$(SRC)/buffer.h \
827	$(SRC)/composite.h \
828	$(SRC)/dispextern.h \
829	$(SRC)/intervals.h \
830	$(SRC)/keyboard.h \
831	$(SRC)/keymap.h \
832	$(SRC)/puresize.h \
833	$(SRC)/w32bdf.h \
834	$(SRC)/w32gui.h
835
836$(BLD)/keyboard.$(O) : \
837	$(SRC)/keyboard.c \
838	$(EMACS_ROOT)/src/s/ms-w32.h \
839	$(EMACS_ROOT)/src/m/intel386.h \
840	$(EMACS_ROOT)/src/config.h \
841	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
842	$(EMACS_ROOT)/nt/inc/sys/file.h \
843	$(SRC)/atimer.h \
844	$(SRC)/blockinput.h \
845	$(SRC)/buffer.h \
846	$(SRC)/charset.h \
847	$(SRC)/commands.h \
848	$(SRC)/composite.h \
849	$(SRC)/dispextern.h \
850	$(SRC)/disptab.h \
851	$(SRC)/frame.h \
852	$(SRC)/intervals.h \
853	$(SRC)/keyboard.h \
854	$(SRC)/keymap.h \
855	$(SRC)/macros.h \
856	$(SRC)/puresize.h \
857	$(SRC)/syntax.h \
858	$(SRC)/syssignal.h \
859	$(SRC)/systime.h \
860	$(SRC)/systty.h \
861	$(SRC)/termchar.h \
862	$(SRC)/termhooks.h \
863	$(SRC)/termopts.h \
864	$(SRC)/w32bdf.h \
865	$(SRC)/w32gui.h \
866	$(SRC)/w32term.h \
867	$(SRC)/window.h
868
869$(BLD)/keymap.$(O) : \
870	$(SRC)/keymap.c \
871	$(EMACS_ROOT)/src/s/ms-w32.h \
872	$(EMACS_ROOT)/src/m/intel386.h \
873	$(EMACS_ROOT)/src/config.h \
874	$(SRC)/atimer.h \
875	$(SRC)/blockinput.h \
876	$(SRC)/buffer.h \
877	$(SRC)/charset.h \
878	$(SRC)/commands.h \
879	$(SRC)/composite.h \
880	$(SRC)/dispextern.h \
881	$(SRC)/intervals.h \
882	$(SRC)/keyboard.h \
883	$(SRC)/keymap.h \
884	$(SRC)/puresize.h \
885	$(SRC)/systime.h \
886	$(SRC)/termhooks.h \
887	$(SRC)/w32bdf.h \
888	$(SRC)/w32gui.h
889
890$(BLD)/lastfile.$(O) : \
891	$(SRC)/lastfile.c \
892	$(EMACS_ROOT)/src/s/ms-w32.h \
893	$(EMACS_ROOT)/src/m/intel386.h \
894	$(EMACS_ROOT)/src/config.h
895
896$(BLD)/lread.$(O) : \
897	$(SRC)/lread.c \
898	$(EMACS_ROOT)/src/s/ms-w32.h \
899	$(EMACS_ROOT)/src/m/intel386.h \
900	$(EMACS_ROOT)/src/config.h \
901	$(EMACS_ROOT)/nt/inc/sys/file.h \
902	$(EMACS_ROOT)/src/epaths.h \
903	$(SRC)/buffer.h \
904	$(SRC)/ccl.h \
905	$(SRC)/charset.h \
906	$(SRC)/coding.h \
907	$(SRC)/commands.h \
908	$(SRC)/composite.h \
909	$(SRC)/dispextern.h \
910	$(SRC)/intervals.h \
911	$(SRC)/keyboard.h \
912	$(SRC)/termhooks.h \
913	$(SRC)/w32bdf.h \
914	$(SRC)/w32gui.h
915
916$(BLD)/macros.$(O) : \
917	$(SRC)/macros.c \
918	$(EMACS_ROOT)/src/s/ms-w32.h \
919	$(EMACS_ROOT)/src/m/intel386.h \
920	$(EMACS_ROOT)/src/config.h \
921	$(SRC)/buffer.h \
922	$(SRC)/commands.h \
923	$(SRC)/dispextern.h \
924	$(SRC)/keyboard.h \
925	$(SRC)/macros.h \
926	$(SRC)/w32bdf.h \
927	$(SRC)/w32gui.h \
928	$(SRC)/window.h
929
930$(BLD)/marker.$(O) : \
931	$(SRC)/marker.c \
932	$(EMACS_ROOT)/src/s/ms-w32.h \
933	$(EMACS_ROOT)/src/m/intel386.h \
934	$(EMACS_ROOT)/src/config.h \
935	$(SRC)/buffer.h \
936	$(SRC)/charset.h
937
938$(BLD)/md5.$(O) : \
939	$(SRC)/md5.c \
940	$(SRC)/md5.h
941
942$(BLD)/minibuf.$(O) : \
943	$(SRC)/minibuf.c \
944	$(EMACS_ROOT)/src/s/ms-w32.h \
945	$(EMACS_ROOT)/src/m/intel386.h \
946	$(EMACS_ROOT)/src/config.h \
947	$(SRC)/buffer.h \
948	$(SRC)/charset.h \
949	$(SRC)/commands.h \
950	$(SRC)/composite.h \
951	$(SRC)/dispextern.h \
952	$(SRC)/frame.h \
953	$(SRC)/intervals.h \
954	$(SRC)/keyboard.h \
955	$(SRC)/keymap.h \
956	$(SRC)/syntax.h \
957	$(SRC)/w32bdf.h \
958	$(SRC)/w32gui.h \
959	$(SRC)/window.h
960
961$(BLD)/w32.$(O) : \
962	$(SRC)/w32.c \
963	$(EMACS_ROOT)/nt/inc/pwd.h \
964	$(SRC)/s/ms-w32.h \
965	$(SRC)/m/intel386.h \
966	$(SRC)/config.h \
967	$(SRC)/ndir.h \
968	$(SRC)/systime.h \
969	$(SRC)/w32.h \
970	$(SRC)/w32heap.h
971
972$(BLD)/w32heap.$(O) : \
973	$(SRC)/w32heap.c \
974	$(SRC)/s/ms-w32.h \
975	$(SRC)/m/intel386.h \
976	$(SRC)/config.h \
977	$(SRC)/w32heap.h
978
979$(BLD)/w32inevt.$(O) : \
980	$(SRC)/w32inevt.c \
981	$(SRC)/s/ms-w32.h \
982	$(SRC)/m/intel386.h \
983	$(SRC)/config.h \
984	$(SRC)/atimer.h \
985	$(SRC)/blockinput.h \
986	$(SRC)/frame.h \
987	$(SRC)/keyboard.h \
988	$(SRC)/systime.h \
989	$(SRC)/termhooks.h \
990	$(SRC)/w32bdf.h \
991	$(SRC)/w32gui.h \
992	$(SRC)/w32heap.h \
993	$(SRC)/w32term.h
994
995$(BLD)/w32proc.$(O) : \
996	$(SRC)/w32proc.c \
997	$(SRC)/s/ms-w32.h \
998	$(SRC)/m/intel386.h \
999	$(EMACS_ROOT)/nt/inc/langinfo.h \
1000	$(EMACS_ROOT)/nt/inc/nl_types.h \
1001	$(SRC)/config.h \
1002	$(SRC)/process.h \
1003	$(SRC)/syssignal.h \
1004	$(SRC)/systime.h \
1005	$(SRC)/syswait.h \
1006	$(SRC)/w32.h \
1007	$(SRC)/w32bdf.h \
1008	$(SRC)/w32gui.h \
1009	$(SRC)/w32heap.h \
1010	$(SRC)/w32term.h
1011
1012$(BLD)/w32console.$(O) : \
1013	$(SRC)/w32console.c \
1014	$(SRC)/s/ms-w32.h \
1015	$(SRC)/m/intel386.h \
1016	$(SRC)/ccl.h \
1017	$(SRC)/charset.h \
1018	$(SRC)/coding.h \
1019	$(SRC)/config.h \
1020	$(SRC)/dispextern.h \
1021	$(SRC)/disptab.h \
1022	$(SRC)/frame.h \
1023	$(SRC)/termhooks.h \
1024	$(SRC)/w32bdf.h \
1025	$(SRC)/w32gui.h \
1026	$(SRC)/w32inevt.h
1027
1028$(BLD)/print.$(O) : \
1029	$(SRC)/print.c \
1030	$(EMACS_ROOT)/src/s/ms-w32.h \
1031	$(EMACS_ROOT)/src/m/intel386.h \
1032	$(EMACS_ROOT)/src/config.h \
1033	$(SRC)/buffer.h \
1034	$(SRC)/charset.h \
1035	$(SRC)/composite.h \
1036	$(SRC)/dispextern.h \
1037	$(SRC)/frame.h \
1038	$(SRC)/intervals.h \
1039	$(SRC)/keyboard.h \
1040	$(SRC)/process.h \
1041	$(SRC)/termchar.h \
1042	$(SRC)/w32bdf.h \
1043	$(SRC)/w32gui.h \
1044	$(SRC)/window.h
1045
1046$(BLD)/process.$(O) : \
1047	$(SRC)/process.c \
1048	$(EMACS_ROOT)/src/s/ms-w32.h \
1049	$(EMACS_ROOT)/src/m/intel386.h \
1050	$(EMACS_ROOT)/src/config.h \
1051	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
1052	$(EMACS_ROOT)/nt/inc/sys/file.h \
1053	$(SRC)/atimer.h \
1054	$(SRC)/blockinput.h \
1055	$(SRC)/buffer.h \
1056	$(SRC)/ccl.h \
1057	$(SRC)/charset.h \
1058	$(SRC)/coding.h \
1059	$(SRC)/commands.h \
1060	$(SRC)/composite.h \
1061	$(SRC)/dispextern.h \
1062	$(SRC)/frame.h \
1063	$(SRC)/keyboard.h \
1064	$(SRC)/process.h \
1065	$(SRC)/sysselect.h \
1066	$(SRC)/syssignal.h \
1067	$(SRC)/systime.h \
1068	$(SRC)/systty.h \
1069	$(SRC)/syswait.h \
1070	$(SRC)/termhooks.h \
1071	$(SRC)/termopts.h \
1072	$(SRC)/w32bdf.h \
1073	$(SRC)/w32gui.h \
1074	$(SRC)/window.h
1075
1076$(BLD)/ralloc.$(O) : \
1077	$(SRC)/ralloc.c \
1078	$(EMACS_ROOT)/src/s/ms-w32.h \
1079	$(EMACS_ROOT)/src/m/intel386.h \
1080	$(EMACS_ROOT)/src/config.h \
1081	$(EMACS_ROOT)/nt/inc/sys/param.h \
1082	$(SRC)/s/ms-w32.h \
1083	$(SRC)/m/intel386.h \
1084	$(SRC)/config.h \
1085	$(SRC)/getpagesize.h
1086
1087$(BLD)/regex.$(O) : \
1088	$(SRC)/regex.c \
1089	$(EMACS_ROOT)/src/s/ms-w32.h \
1090	$(EMACS_ROOT)/src/m/intel386.h \
1091	$(EMACS_ROOT)/src/config.h \
1092	$(SRC)/s/ms-w32.h \
1093	$(SRC)/m/intel386.h \
1094	$(SRC)/buffer.h \
1095	$(SRC)/category.h \
1096	$(SRC)/charset.h \
1097	$(SRC)/config.h \
1098	$(SRC)/regex.h \
1099	$(SRC)/syntax.h
1100
1101$(BLD)/region-cache.$(O) : \
1102	$(SRC)/region-cache.c \
1103	$(EMACS_ROOT)/src/s/ms-w32.h \
1104	$(EMACS_ROOT)/src/m/intel386.h \
1105	$(EMACS_ROOT)/src/config.h \
1106	$(SRC)/buffer.h \
1107	$(SRC)/region-cache.h
1108
1109$(BLD)/scroll.$(O) : \
1110	$(SRC)/scroll.c \
1111	$(EMACS_ROOT)/src/s/ms-w32.h \
1112	$(EMACS_ROOT)/src/m/intel386.h \
1113	$(EMACS_ROOT)/src/config.h \
1114	$(SRC)/dispextern.h \
1115	$(SRC)/frame.h \
1116	$(SRC)/keyboard.h \
1117	$(SRC)/termchar.h \
1118	$(SRC)/w32bdf.h \
1119	$(SRC)/w32gui.h \
1120	$(SRC)/window.h
1121
1122$(BLD)/search.$(O) : \
1123	$(SRC)/search.c \
1124	$(EMACS_ROOT)/src/s/ms-w32.h \
1125	$(EMACS_ROOT)/src/m/intel386.h \
1126	$(EMACS_ROOT)/src/config.h \
1127	$(SRC)/atimer.h \
1128	$(SRC)/blockinput.h \
1129	$(SRC)/buffer.h \
1130	$(SRC)/category.h \
1131	$(SRC)/charset.h \
1132	$(SRC)/commands.h \
1133	$(SRC)/composite.h \
1134	$(SRC)/dispextern.h \
1135	$(SRC)/intervals.h \
1136	$(SRC)/regex.h \
1137	$(SRC)/region-cache.h \
1138	$(SRC)/syntax.h \
1139	$(SRC)/systime.h \
1140	$(SRC)/w32bdf.h \
1141	$(SRC)/w32gui.h
1142
1143$(BLD)/sound.$(O) : \
1144	$(SRC)/sound.c \
1145	$(SRC)/lisp.h \
1146	$(SRC)/dispextern.h \
1147	$(SRC)/atimer.h \
1148	$(SRC)/syssignal.h
1149
1150$(BLD)/strftime.$(O) : \
1151	$(SRC)/strftime.c \
1152	$(EMACS_ROOT)/src/s/ms-w32.h \
1153	$(EMACS_ROOT)/src/m/intel386.h \
1154	$(EMACS_ROOT)/src/config.h
1155
1156$(BLD)/syntax.$(O) : \
1157	$(SRC)/syntax.c \
1158	$(EMACS_ROOT)/src/s/ms-w32.h \
1159	$(EMACS_ROOT)/src/m/intel386.h \
1160	$(EMACS_ROOT)/src/config.h \
1161	$(SRC)/buffer.h \
1162	$(SRC)/category.h \
1163	$(SRC)/charset.h \
1164	$(SRC)/commands.h \
1165	$(SRC)/composite.h \
1166	$(SRC)/dispextern.h \
1167	$(SRC)/intervals.h \
1168	$(SRC)/keymap.h \
1169	$(SRC)/syntax.h \
1170	$(SRC)/w32bdf.h \
1171	$(SRC)/w32gui.h
1172
1173$(BLD)/sysdep.$(O) : \
1174	$(SRC)/sysdep.c \
1175	$(EMACS_ROOT)/src/s/ms-w32.h \
1176	$(EMACS_ROOT)/src/m/intel386.h \
1177	$(EMACS_ROOT)/src/config.h \
1178	$(EMACS_ROOT)/nt/inc/sys/param.h \
1179	$(EMACS_ROOT)/nt/inc/sys/file.h \
1180	$(EMACS_ROOT)/nt/inc/sys/ioctl.h \
1181	$(EMACS_ROOT)/nt/inc/sys/file.h \
1182	$(SRC)/atimer.h \
1183	$(SRC)/blockinput.h \
1184	$(SRC)/dispextern.h \
1185	$(SRC)/frame.h \
1186	$(SRC)/keyboard.h \
1187	$(SRC)/ndir.h \
1188	$(SRC)/process.h \
1189	$(SRC)/sysselect.h \
1190	$(SRC)/syssignal.h \
1191	$(SRC)/systime.h \
1192	$(SRC)/systty.h \
1193	$(SRC)/syswait.h \
1194	$(SRC)/termchar.h \
1195	$(SRC)/termhooks.h \
1196	$(SRC)/termopts.h \
1197	$(SRC)/w32bdf.h \
1198	$(SRC)/w32gui.h \
1199	$(SRC)/window.h
1200
1201$(BLD)/term.$(O) : \
1202	$(SRC)/term.c \
1203	$(EMACS_ROOT)/src/s/ms-w32.h \
1204	$(EMACS_ROOT)/src/m/intel386.h \
1205	$(EMACS_ROOT)/src/config.h \
1206	$(SRC)/ccl.h \
1207	$(SRC)/charset.h \
1208	$(SRC)/cm.h \
1209	$(SRC)/coding.h \
1210	$(SRC)/dispextern.h \
1211	$(SRC)/disptab.h \
1212	$(SRC)/frame.h \
1213	$(SRC)/keyboard.h \
1214	$(SRC)/keymap.h \
1215	$(SRC)/termchar.h \
1216	$(SRC)/termhooks.h \
1217	$(SRC)/termopts.h \
1218	$(SRC)/w32bdf.h \
1219	$(SRC)/w32gui.h \
1220	$(SRC)/window.h
1221
1222$(BLD)/termcap.$(O) : \
1223	$(SRC)/termcap.c \
1224	$(EMACS_ROOT)/src/s/ms-w32.h \
1225	$(EMACS_ROOT)/src/m/intel386.h \
1226	$(EMACS_ROOT)/src/config.h \
1227	$(EMACS_ROOT)/nt/inc/sys/file.h
1228
1229$(BLD)/textprop.$(O) : \
1230	$(SRC)/textprop.c \
1231	$(EMACS_ROOT)/src/s/ms-w32.h \
1232	$(EMACS_ROOT)/src/m/intel386.h \
1233	$(EMACS_ROOT)/src/config.h \
1234	$(SRC)/buffer.h \
1235	$(SRC)/composite.h \
1236	$(SRC)/dispextern.h \
1237	$(SRC)/intervals.h \
1238	$(SRC)/w32bdf.h \
1239	$(SRC)/w32gui.h \
1240	$(SRC)/window.h
1241
1242$(BLD)/tparam.$(O) : \
1243	$(SRC)/tparam.c \
1244	$(EMACS_ROOT)/src/s/ms-w32.h \
1245	$(EMACS_ROOT)/src/m/intel386.h \
1246	$(EMACS_ROOT)/src/config.h
1247
1248$(BLD)/undo.$(O) : \
1249	$(SRC)/undo.c \
1250	$(EMACS_ROOT)/src/s/ms-w32.h \
1251	$(EMACS_ROOT)/src/m/intel386.h \
1252	$(EMACS_ROOT)/src/config.h \
1253	$(SRC)/buffer.h \
1254	$(SRC)/commands.h
1255
1256$(BLD)/unexw32.$(O) : \
1257	$(SRC)/unexw32.c \
1258	$(EMACS_ROOT)/src/s/ms-w32.h \
1259	$(EMACS_ROOT)/src/m/intel386.h \
1260	$(EMACS_ROOT)/src/config.h \
1261	$(SRC)/w32heap.h
1262
1263$(BLD)/vm-limit.$(O) : \
1264	$(SRC)/vm-limit.c \
1265	$(EMACS_ROOT)/src/s/ms-w32.h \
1266	$(EMACS_ROOT)/src/m/intel386.h \
1267	$(EMACS_ROOT)/src/config.h \
1268	$(SRC)/mem-limits.h
1269
1270$(BLD)/window.$(O) : \
1271	$(SRC)/window.c \
1272	$(EMACS_ROOT)/src/s/ms-w32.h \
1273	$(EMACS_ROOT)/src/m/intel386.h \
1274	$(EMACS_ROOT)/src/config.h \
1275	$(SRC)/atimer.h \
1276	$(SRC)/blockinput.h \
1277	$(SRC)/buffer.h \
1278	$(SRC)/commands.h \
1279	$(SRC)/composite.h \
1280	$(SRC)/dispextern.h \
1281	$(SRC)/disptab.h \
1282	$(SRC)/frame.h \
1283	$(SRC)/indent.h \
1284	$(SRC)/intervals.h \
1285	$(SRC)/keyboard.h \
1286	$(SRC)/keymap.h \
1287	$(SRC)/systime.h \
1288	$(SRC)/termchar.h \
1289	$(SRC)/w32bdf.h \
1290	$(SRC)/w32gui.h \
1291	$(SRC)/w32term.h \
1292	$(SRC)/window.h
1293
1294$(BLD)/xdisp.$(O) : \
1295	$(SRC)/xdisp.c \
1296	$(EMACS_ROOT)/src/s/ms-w32.h \
1297	$(EMACS_ROOT)/src/m/intel386.h \
1298	$(EMACS_ROOT)/src/config.h \
1299	$(SRC)/atimer.h \
1300	$(SRC)/blockinput.h \
1301	$(SRC)/buffer.h \
1302	$(SRC)/ccl.h \
1303	$(SRC)/charset.h \
1304	$(SRC)/coding.h \
1305	$(SRC)/commands.h \
1306	$(SRC)/composite.h \
1307	$(SRC)/dispextern.h \
1308	$(SRC)/disptab.h \
1309	$(SRC)/fontset.h \
1310	$(SRC)/frame.h \
1311	$(SRC)/indent.h \
1312	$(SRC)/intervals.h \
1313	$(SRC)/keyboard.h \
1314	$(SRC)/keymap.h \
1315	$(SRC)/macros.h \
1316	$(SRC)/process.h \
1317	$(SRC)/region-cache.h \
1318	$(SRC)/systime.h \
1319	$(SRC)/termchar.h \
1320	$(SRC)/termhooks.h \
1321	$(SRC)/w32bdf.h \
1322	$(SRC)/w32gui.h \
1323	$(SRC)/w32term.h \
1324	$(SRC)/window.h
1325
1326$(BLD)/xfaces.$(O): \
1327	$(SRC)/xfaces.c \
1328	$(EMACS_ROOT)/src/s/ms-w32.h \
1329	$(EMACS_ROOT)/src/m/intel386.h \
1330	$(EMACS_ROOT)/src/config.h \
1331	$(SRC)/atimer.h \
1332	$(SRC)/blockinput.h \
1333	$(SRC)/buffer.h \
1334	$(SRC)/charset.h \
1335	$(SRC)/composite.h \
1336	$(SRC)/dispextern.h \
1337	$(SRC)/fontset.h \
1338	$(SRC)/frame.h \
1339	$(SRC)/intervals.h \
1340	$(SRC)/keyboard.h \
1341	$(SRC)/systime.h \
1342	$(SRC)/w32bdf.h \
1343	$(SRC)/w32gui.h \
1344	$(SRC)/w32term.h \
1345	$(SRC)/window.h
1346
1347$(BLD)/w32fns.$(O): \
1348	$(SRC)/w32fns.c \
1349	$(EMACS_ROOT)/src/s/ms-w32.h \
1350	$(EMACS_ROOT)/src/m/intel386.h \
1351	$(EMACS_ROOT)/src/config.h \
1352	$(SRC)/atimer.h \
1353	$(SRC)/blockinput.h \
1354	$(SRC)/buffer.h \
1355	$(SRC)/ccl.h \
1356	$(SRC)/charset.h \
1357	$(SRC)/coding.h \
1358	$(SRC)/composite.h \
1359	$(SRC)/dispextern.h \
1360	$(SRC)/epaths.h \
1361	$(SRC)/fontset.h \
1362	$(SRC)/frame.h \
1363	$(SRC)/intervals.h \
1364	$(SRC)/keyboard.h \
1365	$(SRC)/systime.h \
1366	$(SRC)/termhooks.h \
1367	$(SRC)/w32bdf.h \
1368	$(SRC)/w32gui.h \
1369	$(SRC)/w32heap.h \
1370	$(SRC)/w32term.h \
1371	$(SRC)/window.h
1372
1373$(BLD)/w32menu.$(O): \
1374	$(SRC)/w32menu.c \
1375	$(EMACS_ROOT)/src/s/ms-w32.h \
1376	$(EMACS_ROOT)/src/m/intel386.h \
1377	$(EMACS_ROOT)/src/config.h \
1378	$(SRC)/atimer.h \
1379	$(SRC)/blockinput.h \
1380	$(SRC)/buffer.h \
1381	$(SRC)/charset.h \
1382	$(SRC)/coding.h \
1383	$(SRC)/dispextern.h \
1384	$(SRC)/frame.h \
1385	$(SRC)/keyboard.h \
1386	$(SRC)/keymap.h \
1387	$(SRC)/systime.h \
1388	$(SRC)/termhooks.h \
1389	$(SRC)/w32bdf.h \
1390	$(SRC)/w32gui.h \
1391	$(SRC)/w32term.h \
1392	$(SRC)/window.h
1393
1394$(BLD)/w32term.$(O): \
1395	$(SRC)/w32term.c \
1396	$(EMACS_ROOT)/src/s/ms-w32.h \
1397	$(EMACS_ROOT)/src/m/intel386.h \
1398	$(EMACS_ROOT)/src/config.h \
1399	$(SRC)/atimer.h \
1400	$(SRC)/blockinput.h \
1401	$(SRC)/buffer.h \
1402	$(SRC)/ccl.h \
1403	$(SRC)/charset.h \
1404	$(SRC)/coding.h \
1405	$(SRC)/composite.h \
1406	$(SRC)/dispextern.h \
1407	$(SRC)/disptab.h \
1408	$(SRC)/fontset.h \
1409	$(SRC)/frame.h \
1410	$(SRC)/gnu.h \
1411	$(SRC)/intervals.h \
1412	$(SRC)/keyboard.h \
1413	$(SRC)/keymap.h \
1414	$(SRC)/systime.h \
1415	$(SRC)/systty.h \
1416	$(SRC)/termchar.h \
1417	$(SRC)/termhooks.h \
1418	$(SRC)/termopts.h \
1419	$(SRC)/w32bdf.h \
1420	$(SRC)/w32gui.h \
1421	$(SRC)/w32heap.h \
1422	$(SRC)/w32term.h \
1423	$(SRC)/window.h
1424
1425$(BLD)/w32select.$(O): \
1426	$(SRC)/w32select.c \
1427	$(EMACS_ROOT)/src/s/ms-w32.h \
1428	$(EMACS_ROOT)/src/m/intel386.h \
1429	$(EMACS_ROOT)/src/config.h \
1430	$(SRC)/atimer.h \
1431	$(SRC)/blockinput.h \
1432	$(SRC)/buffer.h \
1433	$(SRC)/ccl.h \
1434	$(SRC)/charset.h \
1435	$(SRC)/coding.h \
1436	$(SRC)/composite.h \
1437	$(SRC)/dispextern.h \
1438	$(SRC)/frame.h \
1439	$(SRC)/keyboard.h \
1440	$(SRC)/systime.h \
1441	$(SRC)/w32bdf.h \
1442	$(SRC)/w32gui.h \
1443	$(SRC)/w32heap.h \
1444	$(SRC)/w32term.h
1445
1446$(BLD)/w32reg.$(O): \
1447	$(SRC)/w32reg.c \
1448	$(EMACS_ROOT)/src/s/ms-w32.h \
1449	$(EMACS_ROOT)/src/m/intel386.h \
1450	$(EMACS_ROOT)/src/config.h \
1451	$(SRC)/atimer.h \
1452	$(SRC)/blockinput.h \
1453	$(SRC)/systime.h \
1454	$(SRC)/w32bdf.h \
1455	$(SRC)/w32gui.h \
1456	$(SRC)/w32term.h
1457
1458$(BLD)/w32xfns.$(O): \
1459	$(SRC)/w32xfns.c \
1460	$(EMACS_ROOT)/src/s/ms-w32.h \
1461	$(EMACS_ROOT)/src/m/intel386.h \
1462	$(EMACS_ROOT)/src/config.h \
1463	$(SRC)/atimer.h \
1464	$(SRC)/blockinput.h \
1465	$(SRC)/charset.h \
1466	$(SRC)/fontset.h \
1467	$(SRC)/frame.h \
1468	$(SRC)/keyboard.h \
1469	$(SRC)/systime.h \
1470	$(SRC)/w32bdf.h \
1471	$(SRC)/w32gui.h \
1472	$(SRC)/w32term.h
1473
1474$(BLD)/w32bdf.$(O): \
1475	$(SRC)/w32bdf.c \
1476	$(EMACS_ROOT)/src/s/ms-w32.h \
1477	$(EMACS_ROOT)/src/m/intel386.h \
1478	$(EMACS_ROOT)/src/config.h \
1479	$(SRC)/atimer.h \
1480	$(SRC)/blockinput.h \
1481	$(SRC)/charset.h \
1482	$(SRC)/dispextern.h \
1483	$(SRC)/fontset.h \
1484	$(SRC)/frame.h \
1485	$(SRC)/keyboard.h \
1486	$(SRC)/systime.h \
1487	$(SRC)/w32bdf.h \
1488	$(SRC)/w32gui.h \
1489	$(SRC)/w32term.h
1490
1491# Each object file depends on stamp_BLD, because in parallel builds we must
1492# make sure $(BLD) exists before starting compilations.
1493#
1494$(OBJ0) $(OBJ1) $(WIN32OBJ) $(BLD)/lastfile.$(O) $(BLD)/firstfile.$(O): stamp_BLD
1495