New version.
[emacs.git] / src / makefile.nt
blob9feca95df0ce131a9e8530da985cacfea65794b7
1 #  Makefile for GNU Emacs on Windows NT
2 #  Copyright (c) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
3 #   Tim Fleehart (apollo@online.com)            17-Apr-92
4 #   Geoff Voelker (voelker@cs.washington.edu)   11-20-93
6 #  This file is part of GNU Emacs.
7 #  
8 #  GNU Emacs is free software; you can redistribute it and/or modify
9 #  it under the terms of the GNU General Public License as published by
10 #  the Free Software Foundation; either version 2, or (at your option)
11 #  any later version.
12 #  
13 #  GNU Emacs is distributed in the hope that it will be useful,
14 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
15 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 #  GNU General Public License for more details.
17 #  
18 #  You should have received a copy of the GNU General Public License
19 #  along with GNU Emacs; see the file COPYING.  If not, write to
20 #  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
23
24 # Sets up the system dependent macros.
26 !include ..\nt\makefile.def
28 SUBSYSTEM=console
31 # HAVE_CONFIG_H is required by some generic gnu sources stuck into
32 # the emacs source tree.
34 LOCAL_FLAGS     = -Demacs=1 -DWINDOWSNT -DDOS_NT -DHAVE_CONFIG_H -I..\nt\inc
36 EMACS           = $(BLD)\emacs.exe
37 TEMACS          = $(BLD)\temacs.exe
38 TLIB1           = $(BLD)\temacs1.lib
39 TLIB2           = $(BLD)\temacs2.lib
40 !IFDEF NTGUI
41 TLIBW32         = $(BLD)\temacw32.lib
42 !ELSE
43 TLIBW32         =
44 !ENDIF
45 TOBJ            = $(BLD)\emacs.obj
46 !if $(MSVCNT11)
47 TRES            = $(BLD)\emacs.res
48 !else
49 TRES            = $(BLD)\emacs.rbj
50 !endif
51 TLASTLIB        = $(BLD)\lastfile.lib
53 # see comments in allocate_heap in ntheap.c before changing any of the
54 # -stack, -heap, or -base settings.
55 LINK_FLAGS      = $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:cv -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map
58 # Split up the objects into two sets so that we don't run out of
59 # command line space when we link them into a library.
61 OBJ1 =  $(BLD)\abbrev.obj       \
62         $(BLD)\alloc.obj        \
63         $(BLD)\alloca.obj       \
64         $(BLD)\buffer.obj       \
65         $(BLD)\bytecode.obj     \
66         $(BLD)\callint.obj      \
67         $(BLD)\callproc.obj     \
68         $(BLD)\casefiddle.obj   \
69         $(BLD)\cm.obj           \
70         $(BLD)\cmds.obj         \
71         $(BLD)\data.obj         \
72         $(BLD)\dired.obj        \
73         $(BLD)\dispnew.obj      \
74         $(BLD)\doc.obj          \
75         $(BLD)\doprnt.obj       \
76         $(BLD)\editfns.obj      \
77         $(BLD)\eval.obj         \
78         $(BLD)\fileio.obj       \
79         $(BLD)\filelock.obj     \
80         $(BLD)\filemode.obj     \
81         $(BLD)\fns.obj          \
82         $(BLD)\indent.obj       \
83         $(BLD)\insdel.obj       \
84         $(BLD)\keyboard.obj     \
85         $(BLD)\keymap.obj       \
86         $(BLD)\lread.obj        \
87         $(BLD)\macros.obj       \
88         $(BLD)\marker.obj       \
89         $(BLD)\minibuf.obj      \
90         $(BLD)\mocklisp.obj
92 OBJ2 =  $(BLD)\nt.obj           \
93         $(BLD)\ntheap.obj       \
94         $(BLD)\ntinevt.obj      \
95         $(BLD)\ntproc.obj       \
96         $(BLD)\ntterm.obj       \
97         $(BLD)\print.obj        \
98         $(BLD)\process.obj      \
99         $(BLD)\regex.obj        \
100         $(BLD)\scroll.obj       \
101         $(BLD)\search.obj       \
102         $(BLD)\syntax.obj       \
103         $(BLD)\sysdep.obj       \
104         $(BLD)\term.obj         \
105         $(BLD)\termcap.obj      \
106         $(BLD)\tparam.obj       \
107         $(BLD)\undo.obj         \
108         $(BLD)\unexnt.obj       \
109         $(BLD)\window.obj       \
110         $(BLD)\xdisp.obj        \
111         $(BLD)\casetab.obj      \
112         $(BLD)\floatfns.obj     \
113         $(BLD)\frame.obj        \
114         $(BLD)\gmalloc.obj      \
115         $(BLD)\intervals.obj    \
116         $(BLD)\ralloc.obj       \
117         $(BLD)\textprop.obj     \
118         $(BLD)\vm-limit.obj     \
119         $(BLD)\region-cache.obj \
120         $(BLD)\strftime.obj
122 WIN32OBJ = $(BLD)\w32term.obj   \
123            $(BLD)\w32xfns.obj   \
124            $(BLD)\w32fns.obj    \
125            $(BLD)\w32faces.obj  \
126            $(BLD)\w32select.obj \
127            $(BLD)\w32menu.obj   \
128            $(BLD)\w32reg.obj
130 LIBS =  $(TLIB1)        \
131         $(TLIB2)        \
132 !IFDEF NTGUI
133         $(TLIBW32)      \
134 !ENDIF
135         $(TLASTLIB)     \
136 !IFDEF NTGUI
137         gdi32.lib       \
138         comdlg32.lib    \
139 !ENDIF
140 #       libcmt.lib      \
141         $(BASE_LIBS)    \
142         $(ADVAPI32)     \
143         user32.lib      \
144         mpr.lib
147 # Build the executable and dump it.
149 all:            $(BLD) $(EMACS) 
152 # Headers we would preprocess if we could.
154 PREPARED_HEADERS = config.h paths.h
155 config.h:       ..\nt\$(CONFIG_H)
156                 $(CP) $** $@
157 paths.h:        ..\nt\paths.h
158                 $(CP) $** $@
161 # Make sure we have the DOC file in the right place.
163 DOC             = obj\etc\DOC-X
164 $(DOC):;        cd ..\lib-src 
165                 - $(DEL) DOC-X
166                 $(MAKE) -f makefile.nt all
167                 cd ..\src
170 # The dumped executable
172 emacs:          $(EMACS)
173 $(EMACS):       $(PREPARED_HEADERS) $(DOC) $(TEMACS)
174                 cd $(BLD)
175                 temacs.exe -batch -l loadup dump
176                 cd ..\..
179 # The undumped executable
181 temacs:         $(BLD) $(TEMACS)
182 $(TEMACS):      $(TLIB1) $(TLIB2) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
183                 $(LINK) -out:$(TEMACS) $(LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
186 # The resource file.  NT 3.10 requires the use of cvtres; even though
187 # it is not necessary on later versions, it is still ok to use it.
189 $(TRES):        ..\nt\emacs.rc
190                 $(RC) -i..\nt -Fo$(BLD)\emacs.res $**
191 !if !$(MSVCNT11)
192                 $(CVTRES) -r -$(ARCH) -o $@ $(BLD)\emacs.res
193 !endif
196 # Build the library.  Split up the build into two phases...otherwise we 
197 # run out of command line space.
199 $(TLIB1):       $(OBJ1)
200                 @- $(AR) -out:$@ $**
201 $(TLIB2):       $(OBJ2)
202                 @- $(AR) -out:$@ $**
203 !IFDEF NTGUI
204 $(TLIBW32):     $(WIN32OBJ)
205                 @- $(AR) -out:$@ $**
206 !ENDIF
209 # Place lastfile.obj in its own library so that it can be loaded after
210 # the source libraries but before any system libraries.  Doing so defines
211 # the end of Emacs' data section portably across compilers and systems.
213 $(TLASTLIB):    $(BLD)\lastfile.obj
214                 @- $(AR) -out:$@ $**
217 # Object files.
219 .c{$(BLD)}.obj:
220                 $(CC) $(CFLAGS) -Fo$@ $<
223 # Assuming INSTALL_DIR is defined, build and install emacs in it.
225 install:        all
226                 - mkdir $(INSTALL_DIR)\bin
227                 $(CP) $(EMACS) $(INSTALL_DIR)\bin
230 # Maintenance
232 clean:;         - $(DEL) *~ *.pdb config.h paths.h
233                 - $(DEL_TREE) deleted
234                 - $(DEL_TREE) obj
237 # These files are the ones that compile conditionally on CANNOT_DUMP...
238 # this target is mostly used for debugging.
240 cleandump:;     cd $(BLD)
241                 - $(DEL) callproc.obj data.obj dispnew.obj doc.obj editfns.obj emacs.obj lread.obj process.obj sysdep.obj term.obj ntheap.obj unexnt.obj
242                 cd ..\..
245 ### DEPENDENCIES ###
247 EMACS_ROOT      = ..
248 SRC             = .
250 $(BLD)\abbrev.obj : \
251         $(SRC)\abbrev.c \
252         $(EMACS_ROOT)\src\s\windowsnt.h \
253         $(EMACS_ROOT)\src\m\intel386.h \
254         $(EMACS_ROOT)\src\config.h \
255         $(SRC)\lisp.h \
256         $(SRC)\commands.h \
257         $(SRC)\buffer.h \
258         $(SRC)\window.h
260 $(BLD)\alloc.obj : \
261         $(SRC)\alloc.c \
262         $(EMACS_ROOT)\src\s\windowsnt.h \
263         $(EMACS_ROOT)\src\m\intel386.h \
264         $(EMACS_ROOT)\src\config.h \
265         $(SRC)\lisp.h \
266         $(SRC)\dispextern.h \
267         $(SRC)\intervals.h \
268         $(SRC)\puresize.h \
269         $(SRC)\buffer.h \
270         $(SRC)\window.h \
271         $(SRC)\frame.h \
272         $(SRC)\blockinput.h \
273         $(SRC)\syssignal.h
275 $(BLD)\alloca.obj : \
276         $(SRC)\alloca.c \
277         $(EMACS_ROOT)\src\s\windowsnt.h \
278         $(EMACS_ROOT)\src\m\intel386.h \
279         $(EMACS_ROOT)\src\config.h \
280         $(SRC)\s\windowsnt.h \
281         $(SRC)\m\intel386.h \
282         $(SRC)\config.h \
283         $(SRC)\blockinput.h
285 $(BLD)\buffer.obj : \
286         $(SRC)\buffer.c \
287         $(EMACS_ROOT)\nt\inc\sys\param.h \
288         $(EMACS_ROOT)\src\s\windowsnt.h \
289         $(EMACS_ROOT)\src\m\intel386.h \
290         $(EMACS_ROOT)\src\config.h \
291         $(SRC)\lisp.h \
292         $(SRC)\dispextern.h \
293         $(SRC)\intervals.h \
294         $(SRC)\window.h \
295         $(SRC)\commands.h \
296         $(SRC)\buffer.h \
297         $(SRC)\indent.h \
298         $(SRC)\blockinput.h \
299         $(SRC)\region-cache.h
301 $(BLD)\bytecode.obj : \
302         $(SRC)\bytecode.c \
303         $(SRC)\lisp.h \
304         $(SRC)\buffer.h \
305         $(SRC)\syntax.h
307 $(BLD)\callint.obj : \
308         $(SRC)\callint.c \
309         $(SRC)\lisp.h \
310         $(SRC)\buffer.h \
311         $(SRC)\commands.h \
312         $(SRC)\keyboard.h \
313         $(SRC)\window.h \
314         $(SRC)\mocklisp.h
316 $(BLD)\callproc.obj : \
317         $(SRC)\callproc.c \
318         $(EMACS_ROOT)\src\s\windowsnt.h \
319         $(EMACS_ROOT)\src\m\intel386.h \
320         $(EMACS_ROOT)\src\config.h \
321         $(SRC)\msdos.h \
322         $(EMACS_ROOT)\nt\inc\sys\param.h \
323         $(SRC)\lisp.h \
324         $(SRC)\commands.h \
325         $(SRC)\buffer.h \
326         $(SRC)\process.h \
327         $(SRC)\syssignal.h \
328         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
329         $(EMACS_ROOT)\nt\inc\sys\file.h \
330         $(SRC)\systty.h
332 $(BLD)\casefiddle.obj : \
333         $(SRC)\casefiddle.c \
334         $(EMACS_ROOT)\src\s\windowsnt.h \
335         $(EMACS_ROOT)\src\m\intel386.h \
336         $(EMACS_ROOT)\src\config.h \
337         $(SRC)\lisp.h \
338         $(SRC)\buffer.h \
339         $(SRC)\commands.h \
340         $(SRC)\syntax.h
341         $(CC) $(CFLAGS) -Fo$@ casefiddle.c
343 $(BLD)\casetab.obj : \
344         $(SRC)\casetab.c \
345         $(EMACS_ROOT)\src\s\windowsnt.h \
346         $(EMACS_ROOT)\src\m\intel386.h \
347         $(EMACS_ROOT)\src\config.h \
348         $(SRC)\lisp.h \
349         $(SRC)\buffer.h
351 $(BLD)\cm.obj : \
352         $(SRC)\cm.c \
353         $(EMACS_ROOT)\src\s\windowsnt.h \
354         $(EMACS_ROOT)\src\m\intel386.h \
355         $(EMACS_ROOT)\src\config.h \
356         $(SRC)\cm.h \
357         $(SRC)\termhooks.h
359 $(BLD)\cmds.obj : \
360         $(SRC)\cmds.c \
361         $(EMACS_ROOT)\src\s\windowsnt.h \
362         $(EMACS_ROOT)\src\m\intel386.h \
363         $(EMACS_ROOT)\src\config.h \
364         $(SRC)\lisp.h \
365         $(SRC)\commands.h \
366         $(SRC)\buffer.h \
367         $(SRC)\syntax.h
369 $(BLD)\data.obj : \
370         $(SRC)\data.c \
371         $(EMACS_ROOT)\src\s\windowsnt.h \
372         $(EMACS_ROOT)\src\m\intel386.h \
373         $(EMACS_ROOT)\src\config.h \
374         $(SRC)\lisp.h \
375         $(SRC)\puresize.h \
376         $(SRC)\buffer.h \
377         $(SRC)\syssignal.h
379 $(BLD)\dired.obj : \
380         $(SRC)\dired.c \
381         $(EMACS_ROOT)\src\s\windowsnt.h \
382         $(EMACS_ROOT)\src\m\intel386.h \
383         $(EMACS_ROOT)\src\config.h \
384         $(SRC)\vmsdir.h \
385         $(SRC)\ndir.h \
386         $(SRC)\lisp.h \
387         $(SRC)\buffer.h \
388         $(SRC)\commands.h \
389         $(SRC)\regex.h
391 $(BLD)\dispnew.obj : \
392         $(SRC)\dispnew.c \
393         $(EMACS_ROOT)\src\s\windowsnt.h \
394         $(EMACS_ROOT)\src\m\intel386.h \
395         $(EMACS_ROOT)\src\config.h \
396         $(SRC)\lisp.h \
397         $(SRC)\termchar.h \
398         $(SRC)\termopts.h \
399         $(SRC)\termhooks.h \
400         $(SRC)\cm.h \
401         $(SRC)\buffer.h \
402         $(SRC)\frame.h \
403         $(SRC)\window.h \
404         $(SRC)\commands.h \
405         $(SRC)\disptab.h \
406         $(SRC)\indent.h \
407         $(SRC)\dispextern.h \
408         $(SRC)\intervals.h \
409         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
410         $(EMACS_ROOT)\nt\inc\sys\file.h \
411         $(SRC)\systty.h \
412         $(SRC)\w32term.h \
413         $(SRC)\xterm.h \
414         $(SRC)\vmstime.h \
415         $(SRC)\systime.h
417 $(BLD)\doc.obj : \
418         $(SRC)\doc.c \
419         $(EMACS_ROOT)\src\s\windowsnt.h \
420         $(EMACS_ROOT)\src\m\intel386.h \
421         $(EMACS_ROOT)\src\config.h \
422         $(EMACS_ROOT)\nt\inc\sys\file.h \
423         $(SRC)\lisp.h \
424         $(SRC)\buffer.h \
425         $(SRC)\keyboard.h
427 $(BLD)\doprnt.obj : \
428         $(SRC)\doprnt.c \
429         $(EMACS_ROOT)\src\s\windowsnt.h \
430         $(EMACS_ROOT)\src\m\intel386.h \
431         $(EMACS_ROOT)\src\config.h
433 $(BLD)\dosfns.obj : \
434         $(SRC)\dosfns.c \
435         $(EMACS_ROOT)\src\s\windowsnt.h \
436         $(EMACS_ROOT)\src\m\intel386.h \
437         $(EMACS_ROOT)\src\config.h \
438         $(SRC)\lisp.h \
439         $(SRC)\buffer.h \
440         $(SRC)\termchar.h \
441         $(SRC)\termhooks.h \
442         $(SRC)\frame.h \
443         $(SRC)\dosfns.h \
444         $(SRC)\msdos.h
446 $(BLD)\editfns.obj : \
447         $(SRC)\editfns.c \
448         $(EMACS_ROOT)\src\s\windowsnt.h \
449         $(EMACS_ROOT)\src\m\intel386.h \
450         $(EMACS_ROOT)\src\config.h \
451         $(SRC)\uaf.h \
452         $(SRC)\vms-pwd.h \
453         $(EMACS_ROOT)\nt\inc\pwd.h \
454         $(SRC)\lisp.h \
455         $(SRC)\dispextern.h \
456         $(SRC)\intervals.h \
457         $(SRC)\buffer.h \
458         $(SRC)\window.h \
459         $(SRC)\vmstime.h \
460         $(SRC)\systime.h
462 $(BLD)\emacs.obj : \
463         $(SRC)\emacs.c \
464         $(EMACS_ROOT)\src\s\windowsnt.h \
465         $(EMACS_ROOT)\src\m\intel386.h \
466         $(EMACS_ROOT)\src\config.h \
467         $(SRC)\lisp.h \
468         $(SRC)\commands.h \
469         $(SRC)\dispextern.h \
470         $(SRC)\intervals.h \
471         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
472         $(EMACS_ROOT)\nt\inc\sys\file.h \
473         $(SRC)\systty.h \
474         $(SRC)\syssignal.h \
475         $(SRC)\process.h
477 $(BLD)\eval.obj : \
478         $(SRC)\eval.c \
479         $(EMACS_ROOT)\src\s\windowsnt.h \
480         $(EMACS_ROOT)\src\m\intel386.h \
481         $(EMACS_ROOT)\src\config.h \
482         $(SRC)\lisp.h \
483         $(SRC)\blockinput.h \
484         $(SRC)\commands.h \
485         $(SRC)\keyboard.h
487 $(BLD)\fileio.obj : \
488         $(SRC)\fileio.c \
489         $(EMACS_ROOT)\src\s\windowsnt.h \
490         $(EMACS_ROOT)\src\m\intel386.h \
491         $(EMACS_ROOT)\src\config.h \
492         $(SRC)\uaf.h \
493         $(SRC)\vms-pwd.h \
494         $(EMACS_ROOT)\nt\inc\pwd.h \
495         $(SRC)\msdos.h \
496         $(EMACS_ROOT)\nt\inc\sys\param.h \
497         $(SRC)\vmsdir.h \
498         $(SRC)\lisp.h \
499         $(SRC)\dispextern.h \
500         $(SRC)\intervals.h \
501         $(SRC)\buffer.h \
502         $(SRC)\window.h \
503         $(EMACS_ROOT)\nt\inc\sys\file.h \
504         $(SRC)\vmstime.h \
505         $(SRC)\systime.h
507 $(BLD)\filelock.obj : \
508         $(SRC)\filelock.c \
509         $(EMACS_ROOT)\src\s\windowsnt.h \
510         $(EMACS_ROOT)\src\m\intel386.h \
511         $(EMACS_ROOT)\src\config.h \
512         $(SRC)\uaf.h \
513         $(SRC)\vms-pwd.h \
514         $(EMACS_ROOT)\nt\inc\pwd.h \
515         $(EMACS_ROOT)\nt\inc\sys\file.h \
516         $(SRC)\lisp.h \
517         $(EMACS_ROOT)\src\paths.h \
518         $(SRC)\buffer.h \
519         $(SRC)\vmsdir.h \
520         $(SRC)\ndir.h
522 $(BLD)\filemode.obj : \
523         $(SRC)\filemode.c \
524         $(EMACS_ROOT)\src\s\windowsnt.h \
525         $(EMACS_ROOT)\src\m\intel386.h \
526         $(EMACS_ROOT)\src\config.h \
527         $(SRC)\s\windowsnt.h \
528         $(SRC)\m\intel386.h \
529         $(SRC)\config.h
531 $(BLD)\floatfns.obj : \
532         $(SRC)\floatfns.c \
533         $(EMACS_ROOT)\src\s\windowsnt.h \
534         $(EMACS_ROOT)\src\m\intel386.h \
535         $(EMACS_ROOT)\src\config.h \
536         $(SRC)\lisp.h \
537         $(SRC)\syssignal.h
539 $(BLD)\fns.obj : \
540         $(SRC)\fns.c \
541         $(EMACS_ROOT)\src\s\windowsnt.h \
542         $(EMACS_ROOT)\src\m\intel386.h \
543         $(EMACS_ROOT)\src\config.h \
544         $(SRC)\lisp.h \
545         $(SRC)\commands.h \
546         $(SRC)\buffer.h \
547         $(SRC)\keyboard.h \
548         $(SRC)\dispextern.h \
549         $(SRC)\intervals.h
551 $(BLD)\frame.obj : \
552         $(SRC)\frame.c \
553         $(EMACS_ROOT)\src\s\windowsnt.h \
554         $(EMACS_ROOT)\src\m\intel386.h \
555         $(EMACS_ROOT)\src\config.h \
556         $(SRC)\lisp.h \
557         $(SRC)\frame.h \
558         $(SRC)\termhooks.h \
559         $(SRC)\window.h \
560         $(SRC)\buffer.h \
561         $(SRC)\commands.h \
562         $(SRC)\keyboard.h
564 $(BLD)\getloadavg.obj : \
565         $(SRC)\getloadavg.c \
566         $(EMACS_ROOT)\nt\inc\sys\param.h \
567         $(EMACS_ROOT)\src\s\windowsnt.h \
568         $(EMACS_ROOT)\src\m\intel386.h \
569         $(EMACS_ROOT)\src\config.h \
570         $(SRC)\s\windowsnt.h \
571         $(SRC)\m\intel386.h \
572         $(SRC)\config.h \
573         $(EMACS_ROOT)\nt\inc\sys\file.h
575 $(BLD)\gmalloc.obj : \
576         $(SRC)\gmalloc.c \
577         $(EMACS_ROOT)\src\s\windowsnt.h \
578         $(EMACS_ROOT)\src\m\intel386.h \
579         $(EMACS_ROOT)\src\config.h \
580         $(EMACS_ROOT)\nt\inc\sys\param.h \
581         $(SRC)\getpagesize.h
582         $(CC) $(CFLAGS) -D__STDC__ -Fo$@ gmalloc.c
584 $(BLD)\hftctl.obj : \
585         $(SRC)\hftctl.c \
586         $(EMACS_ROOT)\src\s\windowsnt.h \
587         $(EMACS_ROOT)\src\m\intel386.h \
588         $(EMACS_ROOT)\src\config.h \
589         $(EMACS_ROOT)\nt\inc\sys\ioctl.h
591 $(BLD)\indent.obj : \
592         $(SRC)\indent.c \
593         $(EMACS_ROOT)\src\s\windowsnt.h \
594         $(EMACS_ROOT)\src\m\intel386.h \
595         $(EMACS_ROOT)\src\config.h \
596         $(SRC)\lisp.h \
597         $(SRC)\buffer.h \
598         $(SRC)\indent.h \
599         $(SRC)\frame.h \
600         $(SRC)\window.h \
601         $(SRC)\termchar.h \
602         $(SRC)\termopts.h \
603         $(SRC)\disptab.h \
604         $(SRC)\dispextern.h \
605         $(SRC)\intervals.h \
606         $(SRC)\region-cache.h
608 $(BLD)\insdel.obj : \
609         $(SRC)\insdel.c \
610         $(EMACS_ROOT)\src\s\windowsnt.h \
611         $(EMACS_ROOT)\src\m\intel386.h \
612         $(EMACS_ROOT)\src\config.h \
613         $(SRC)\lisp.h \
614         $(SRC)\dispextern.h \
615         $(SRC)\intervals.h \
616         $(SRC)\buffer.h \
617         $(SRC)\window.h \
618         $(SRC)\blockinput.h
620 $(BLD)\intervals.obj : \
621         $(SRC)\intervals.c \
622         $(EMACS_ROOT)\src\s\windowsnt.h \
623         $(EMACS_ROOT)\src\m\intel386.h \
624         $(EMACS_ROOT)\src\config.h \
625         $(SRC)\lisp.h \
626         $(SRC)\dispextern.h \
627         $(SRC)\intervals.h \
628         $(SRC)\buffer.h \
629         $(SRC)\puresize.h
630         $(CC) $(CFLAGS) -Fo$@ intervals.c
632 $(BLD)\keyboard.obj : \
633         $(SRC)\keyboard.c \
634         $(EMACS_ROOT)\src\s\windowsnt.h \
635         $(EMACS_ROOT)\src\m\intel386.h \
636         $(EMACS_ROOT)\src\config.h \
637         $(SRC)\termchar.h \
638         $(SRC)\termopts.h \
639         $(SRC)\lisp.h \
640         $(SRC)\termhooks.h \
641         $(SRC)\macros.h \
642         $(SRC)\frame.h \
643         $(SRC)\window.h \
644         $(SRC)\commands.h \
645         $(SRC)\buffer.h \
646         $(SRC)\disptab.h \
647         $(SRC)\keyboard.h \
648         $(SRC)\dispextern.h \
649         $(SRC)\intervals.h \
650         $(SRC)\blockinput.h \
651         $(SRC)\msdos.h \
652         $(SRC)\syssignal.h \
653         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
654         $(EMACS_ROOT)\nt\inc\sys\file.h \
655         $(SRC)\systty.h \
656         $(SRC)\w32term.h \
657         $(SRC)\xterm.h \
658         $(SRC)\vmstime.h \
659         $(SRC)\systime.h
661 $(BLD)\keymap.obj : \
662         $(SRC)\keymap.c \
663         $(EMACS_ROOT)\src\s\windowsnt.h \
664         $(EMACS_ROOT)\src\m\intel386.h \
665         $(EMACS_ROOT)\src\config.h \
666         $(SRC)\lisp.h \
667         $(SRC)\commands.h \
668         $(SRC)\buffer.h \
669         $(SRC)\keyboard.h \
670         $(SRC)\termhooks.h \
671         $(SRC)\blockinput.h
673 $(BLD)\lastfile.obj : \
674         $(SRC)\lastfile.c
676 $(BLD)\lread.obj : \
677         $(SRC)\lread.c \
678         $(EMACS_ROOT)\src\s\windowsnt.h \
679         $(EMACS_ROOT)\src\m\intel386.h \
680         $(EMACS_ROOT)\src\config.h \
681         $(EMACS_ROOT)\nt\inc\sys\file.h \
682         $(SRC)\lisp.h \
683         $(SRC)\buffer.h \
684         $(EMACS_ROOT)\src\paths.h \
685         $(SRC)\commands.h \
686         $(SRC)\keyboard.h \
687         $(SRC)\termhooks.h \
688         $(SRC)\msdos.h
690 $(BLD)\macros.obj : \
691         $(SRC)\macros.c \
692         $(EMACS_ROOT)\src\s\windowsnt.h \
693         $(EMACS_ROOT)\src\m\intel386.h \
694         $(EMACS_ROOT)\src\config.h \
695         $(SRC)\lisp.h \
696         $(SRC)\macros.h \
697         $(SRC)\commands.h \
698         $(SRC)\buffer.h \
699         $(SRC)\window.h
701 $(BLD)\marker.obj : \
702         $(SRC)\marker.c \
703         $(EMACS_ROOT)\src\s\windowsnt.h \
704         $(EMACS_ROOT)\src\m\intel386.h \
705         $(EMACS_ROOT)\src\config.h \
706         $(SRC)\lisp.h \
707         $(SRC)\buffer.h
709 $(BLD)\minibuf.obj : \
710         $(SRC)\minibuf.c \
711         $(EMACS_ROOT)\src\s\windowsnt.h \
712         $(EMACS_ROOT)\src\m\intel386.h \
713         $(EMACS_ROOT)\src\config.h \
714         $(SRC)\lisp.h \
715         $(SRC)\commands.h \
716         $(SRC)\buffer.h \
717         $(SRC)\dispextern.h \
718         $(SRC)\frame.h \
719         $(SRC)\window.h \
720         $(SRC)\syntax.h
722 $(BLD)\mocklisp.obj : \
723         $(SRC)\mocklisp.c \
724         $(EMACS_ROOT)\src\s\windowsnt.h \
725         $(EMACS_ROOT)\src\m\intel386.h \
726         $(EMACS_ROOT)\src\config.h \
727         $(SRC)\lisp.h \
728         $(SRC)\buffer.h
730 $(BLD)\nt.obj : \
731         $(SRC)\nt.c \
732         $(SRC)\nt.h \
733         $(SRC)\s\windowsnt.h \
734         $(SRC)\m\intel386.h \
735         $(SRC)\config.h \
736         $(SRC)\lisp.h \
737         $(EMACS_ROOT)\nt\inc\pwd.h \
738         $(SRC)\ntheap.h
740 $(BLD)\ntheap.obj : \
741         $(SRC)\ntheap.c \
742         $(SRC)\ntheap.h
744 $(BLD)\ntinevt.obj : \
745         $(SRC)\ntinevt.c \
746         $(SRC)\s\windowsnt.h \
747         $(SRC)\m\intel386.h \
748         $(SRC)\config.h \
749         $(SRC)\lisp.h \
750         $(SRC)\frame.h \
751         $(SRC)\blockinput.h \
752         $(SRC)\termhooks.h
754 $(BLD)\ntproc.obj : \
755         $(SRC)\ntproc.c \
756         $(SRC)\s\windowsnt.h \
757         $(SRC)\m\intel386.h \
758         $(SRC)\config.h \
759         $(SRC)\lisp.h \
760         $(SRC)\nt.h \
761         $(SRC)\vmstime.h \
762         $(SRC)\systime.h
764 $(BLD)\ntterm.obj : \
765         $(SRC)\ntterm.c \
766         $(SRC)\s\windowsnt.h \
767         $(SRC)\m\intel386.h \
768         $(SRC)\config.h \
769         $(SRC)\lisp.h \
770         $(SRC)\frame.h \
771         $(SRC)\disptab.h \
772         $(SRC)\termhooks.h \
773         $(SRC)\ntinevt.h
775 $(BLD)\prefix-args.obj : \
776         $(SRC)\prefix-args.c
778 $(BLD)\print.obj : \
779         $(SRC)\print.c \
780         $(EMACS_ROOT)\src\s\windowsnt.h \
781         $(EMACS_ROOT)\src\m\intel386.h \
782         $(EMACS_ROOT)\src\config.h \
783         $(SRC)\lisp.h \
784         $(SRC)\buffer.h \
785         $(SRC)\frame.h \
786         $(SRC)\window.h \
787         $(SRC)\process.h \
788         $(SRC)\termchar.h \
789         $(SRC)\dispextern.h \
790         $(SRC)\intervals.h
792 $(BLD)\process.obj : \
793         $(SRC)\process.c \
794         $(EMACS_ROOT)\src\s\windowsnt.h \
795         $(EMACS_ROOT)\src\m\intel386.h \
796         $(EMACS_ROOT)\src\config.h \
797         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
798         $(EMACS_ROOT)\nt\inc\sys\file.h \
799         $(SRC)\systty.h \
800         $(SRC)\window.h \
801         $(SRC)\buffer.h \
802         $(SRC)\process.h \
803         $(SRC)\termhooks.h \
804         $(SRC)\commands.h \
805         $(SRC)\frame.h \
806         $(SRC)\syssignal.h \
807         $(SRC)\vmsproc.h \
808         $(SRC)\syswait.h \
809         $(SRC)\lisp.h \
810         $(SRC)\vmstime.h \
811         $(SRC)\systime.h \
812         $(SRC)\termopts.h
814 $(BLD)\ralloc.obj : \
815         $(SRC)\ralloc.c \
816         $(EMACS_ROOT)\src\s\windowsnt.h \
817         $(EMACS_ROOT)\src\m\intel386.h \
818         $(EMACS_ROOT)\src\config.h \
819         $(SRC)\lisp.h \
820         $(SRC)\s\windowsnt.h \
821         $(SRC)\m\intel386.h \
822         $(SRC)\config.h \
823         $(EMACS_ROOT)\nt\inc\sys\param.h \
824         $(SRC)\getpagesize.h
826 $(BLD)\regex.obj : \
827         $(SRC)\regex.c \
828         $(EMACS_ROOT)\src\s\windowsnt.h \
829         $(EMACS_ROOT)\src\m\intel386.h \
830         $(EMACS_ROOT)\src\config.h \
831         $(SRC)\s\windowsnt.h \
832         $(SRC)\m\intel386.h \
833         $(SRC)\config.h \
834         $(SRC)\lisp.h \
835         $(SRC)\buffer.h \
836         $(SRC)\syntax.h \
837         $(SRC)\regex.h
839 $(BLD)\region-cache.obj : \
840         $(SRC)\region-cache.c \
841         $(EMACS_ROOT)\src\s\windowsnt.h \
842         $(EMACS_ROOT)\src\m\intel386.h \
843         $(EMACS_ROOT)\src\config.h \
844         $(SRC)\lisp.h \
845         $(SRC)\buffer.h \
846         $(SRC)\region-cache.h
848 $(BLD)\scroll.obj : \
849         $(SRC)\scroll.c \
850         $(EMACS_ROOT)\src\s\windowsnt.h \
851         $(EMACS_ROOT)\src\m\intel386.h \
852         $(EMACS_ROOT)\src\config.h \
853         $(SRC)\termchar.h \
854         $(SRC)\lisp.h \
855         $(SRC)\dispextern.h \
856         $(SRC)\frame.h
858 $(BLD)\search.obj : \
859         $(SRC)\search.c \
860         $(EMACS_ROOT)\src\s\windowsnt.h \
861         $(EMACS_ROOT)\src\m\intel386.h \
862         $(EMACS_ROOT)\src\config.h \
863         $(SRC)\lisp.h \
864         $(SRC)\syntax.h \
865         $(SRC)\buffer.h \
866         $(SRC)\commands.h \
867         $(SRC)\blockinput.h \
868         $(SRC)\regex.h \
869         $(SRC)\region-cache.h
871 $(BLD)\strftime.obj : \
872         $(SRC)\strftime.c \
873         $(EMACS_ROOT)\src\s\windowsnt.h \
874         $(EMACS_ROOT)\src\m\intel386.h \
875         $(EMACS_ROOT)\src\config.h
876         $(CC) $(CFLAGS) -Dstrftime=emacs_strftime -Fo$@ strftime.c
878 $(BLD)\sunfns.obj : \
879         $(SRC)\sunfns.c \
880         $(EMACS_ROOT)\src\s\windowsnt.h \
881         $(EMACS_ROOT)\src\m\intel386.h \
882         $(EMACS_ROOT)\src\config.h \
883         $(SRC)\lisp.h \
884         $(SRC)\window.h \
885         $(SRC)\buffer.h \
886         $(SRC)\termhooks.h
888 $(BLD)\syntax.obj : \
889         $(SRC)\syntax.c \
890         $(EMACS_ROOT)\src\s\windowsnt.h \
891         $(EMACS_ROOT)\src\m\intel386.h \
892         $(EMACS_ROOT)\src\config.h \
893         $(SRC)\lisp.h \
894         $(SRC)\commands.h \
895         $(SRC)\buffer.h \
896         $(SRC)\syntax.h
898 $(BLD)\sysdep.obj : \
899         $(SRC)\sysdep.c \
900         $(EMACS_ROOT)\src\s\windowsnt.h \
901         $(EMACS_ROOT)\src\m\intel386.h \
902         $(EMACS_ROOT)\src\config.h \
903         $(SRC)\lisp.h \
904         $(SRC)\blockinput.h \
905         $(SRC)\dosfns.h \
906         $(SRC)\msdos.h \
907         $(EMACS_ROOT)\nt\inc\sys\param.h \
908         $(EMACS_ROOT)\nt\inc\sys\file.h \
909         $(EMACS_ROOT)\nt\inc\sys\ioctl.h \
910         $(EMACS_ROOT)\nt\inc\sys\file.h \
911         $(SRC)\systty.h \
912         $(SRC)\vmsproc.h \
913         $(SRC)\syswait.h \
914         $(SRC)\frame.h \
915         $(SRC)\window.h \
916         $(SRC)\termhooks.h \
917         $(SRC)\termchar.h \
918         $(SRC)\termopts.h \
919         $(SRC)\dispextern.h \
920         $(SRC)\process.h \
921         $(SRC)\vmsdir.h \
922         $(SRC)\ndir.h \
923         $(SRC)\syssignal.h \
924         $(SRC)\vmstime.h \
925         $(SRC)\systime.h \
926         $(SRC)\uaf.h \
927         $(SRC)\vms-pwd.h \
928         $(EMACS_ROOT)\src\acldef.h \
929         $(EMACS_ROOT)\src\chpdef.h
931 $(BLD)\term.obj : \
932         $(SRC)\term.c \
933         $(EMACS_ROOT)\src\s\windowsnt.h \
934         $(EMACS_ROOT)\src\m\intel386.h \
935         $(EMACS_ROOT)\src\config.h \
936         $(SRC)\termchar.h \
937         $(SRC)\termopts.h \
938         $(SRC)\cm.h \
939         $(SRC)\lisp.h \
940         $(SRC)\frame.h \
941         $(SRC)\disptab.h \
942         $(SRC)\termhooks.h \
943         $(SRC)\keyboard.h
945 $(BLD)\termcap.obj : \
946         $(SRC)\termcap.c \
947         $(EMACS_ROOT)\src\s\windowsnt.h \
948         $(EMACS_ROOT)\src\m\intel386.h \
949         $(EMACS_ROOT)\src\config.h \
950         $(EMACS_ROOT)\nt\inc\sys\file.h
952 $(BLD)\terminfo.obj : \
953         $(SRC)\terminfo.c
955 $(BLD)\textprop.obj : \
956         $(SRC)\textprop.c \
957         $(EMACS_ROOT)\src\s\windowsnt.h \
958         $(EMACS_ROOT)\src\m\intel386.h \
959         $(EMACS_ROOT)\src\config.h \
960         $(SRC)\lisp.h \
961         $(SRC)\dispextern.h \
962         $(SRC)\intervals.h \
963         $(SRC)\buffer.h \
964         $(SRC)\window.h
966 $(BLD)\tparam.obj : \
967         $(SRC)\tparam.c \
968         $(EMACS_ROOT)\src\s\windowsnt.h \
969         $(EMACS_ROOT)\src\m\intel386.h \
970         $(EMACS_ROOT)\src\config.h
972 $(BLD)\undo.obj : \
973         $(SRC)\undo.c \
974         $(EMACS_ROOT)\src\s\windowsnt.h \
975         $(EMACS_ROOT)\src\m\intel386.h \
976         $(EMACS_ROOT)\src\config.h \
977         $(SRC)\lisp.h \
978         $(SRC)\buffer.h \
979         $(SRC)\commands.h
981 $(BLD)\unexnt.obj : \
982         $(SRC)\unexnt.c \
983         $(SRC)\ntheap.h
985 $(BLD)\vm-limit.obj : \
986         $(SRC)\vm-limit.c \
987         $(EMACS_ROOT)\src\s\windowsnt.h \
988         $(EMACS_ROOT)\src\m\intel386.h \
989         $(EMACS_ROOT)\src\config.h \
990         $(SRC)\mem-limits.h     
992 $(BLD)\widget.obj : \
993         $(SRC)\widget.c \
994         $(EMACS_ROOT)\src\s\windowsnt.h \
995         $(EMACS_ROOT)\src\m\intel386.h \
996         $(EMACS_ROOT)\src\config.h \
997         $(SRC)\lisp.h \
998         $(SRC)\xterm.h \
999         $(SRC)\frame.h \
1000         $(SRC)\dispextern.h \
1001         $(SRC)\widget.h \
1002         $(SRC)\widgetprv.h
1004 $(BLD)\window.obj : \
1005         $(SRC)\window.c \
1006         $(EMACS_ROOT)\src\s\windowsnt.h \
1007         $(EMACS_ROOT)\src\m\intel386.h \
1008         $(EMACS_ROOT)\src\config.h \
1009         $(SRC)\lisp.h \
1010         $(SRC)\buffer.h \
1011         $(SRC)\frame.h \
1012         $(SRC)\window.h \
1013         $(SRC)\commands.h \
1014         $(SRC)\indent.h \
1015         $(SRC)\termchar.h \
1016         $(SRC)\disptab.h \
1017         $(SRC)\keyboard.h
1019 $(BLD)\xdisp.obj : \
1020         $(SRC)\xdisp.c \
1021         $(EMACS_ROOT)\src\s\windowsnt.h \
1022         $(EMACS_ROOT)\src\m\intel386.h \
1023         $(EMACS_ROOT)\src\config.h \
1024         $(SRC)\lisp.h \
1025         $(SRC)\frame.h \
1026         $(SRC)\window.h \
1027         $(SRC)\termchar.h \
1028         $(SRC)\buffer.h \
1029         $(SRC)\indent.h \
1030         $(SRC)\commands.h \
1031         $(SRC)\macros.h \
1032         $(SRC)\disptab.h \
1033         $(SRC)\termhooks.h \
1034         $(SRC)\dispextern.h \
1035         $(SRC)\intervals.h
1037 $(BLD)\w32faces.obj: \
1038         $(EMACS_ROOT)\src\s\windowsnt.h \
1039         $(EMACS_ROOT)\src\m\intel386.h \
1040         $(EMACS_ROOT)\src\config.h \
1041         $(SRC)\w32faces.c \
1042         $(SRC)\lisp.h \
1043         $(SRC)\w32term.h \
1044         $(SRC)\win32.h \
1045         $(SRC)\buffer.h \
1046         $(SRC)\dispextern.h \
1047         $(SRC)\frame.h \
1048         $(SRC)\blockinput.h \
1049         $(SRC)\window.h \
1050         $(SRC)\intervals.h
1052 $(BLD)\w32fns.obj: \
1053         $(EMACS_ROOT)\src\s\windowsnt.h \
1054         $(EMACS_ROOT)\src\m\intel386.h \
1055         $(EMACS_ROOT)\src\config.h \
1056         $(SRC)\w32fns.c \
1057         $(SRC)\lisp.h \
1058         $(SRC)\w32term.h \
1059         $(SRC)\win32.h \
1060         $(SRC)\frame.h \
1061         $(SRC)\window.h \
1062         $(SRC)\buffer.h \
1063         $(SRC)\dispextern.h \
1064         $(SRC)\keyboard.h \
1065         $(SRC)\blockinput.h \
1066         $(SRC)\paths.h \
1067         $(SRC)\ntheap.h \
1068         $(SRC)\termhooks.h
1070 $(BLD)\w32menu.obj: \
1071         $(EMACS_ROOT)\src\s\windowsnt.h \
1072         $(EMACS_ROOT)\src\m\intel386.h \
1073         $(EMACS_ROOT)\src\config.h \
1074         $(SRC)\w32menu.c \
1075         $(SRC)\lisp.h \
1076         $(SRC)\termhooks.h \
1077         $(SRC)\frame.h \
1078         $(SRC)\window.h \
1079         $(SRC)\keyboard.h \
1080         $(SRC)\blockinput.h \
1081         $(SRC)\buffer.h
1083 $(BLD)\w32term.obj: \
1084         $(EMACS_ROOT)\src\s\windowsnt.h \
1085         $(EMACS_ROOT)\src\m\intel386.h \
1086         $(EMACS_ROOT)\src\config.h \
1087         $(SRC)\w32term.c \
1088         $(SRC)\lisp.h \
1089         $(SRC)\blockinput.h \
1090         $(SRC)\w32term.h \
1091         $(SRC)\win32.h \
1092         $(SRC)\systty.h \
1093         $(SRC)\systime.h \
1094         $(SRC)\frame.h \
1095         $(SRC)\dispextern.h \
1096         $(SRC)\termhooks.h \
1097         $(SRC)\termopts.h \
1098         $(SRC)\termchar.h \
1099         $(SRC)\gnu.h \
1100         $(SRC)\disptab.h \
1101         $(SRC)\buffer.h \
1102         $(SRC)\window.h \
1103         $(SRC)\keyboard.h \
1104         $(SRC)\intervals.h
1106 $(BLD)\w32select.obj: \
1107         $(EMACS_ROOT)\src\s\windowsnt.h \
1108         $(EMACS_ROOT)\src\m\intel386.h \
1109         $(EMACS_ROOT)\src\config.h \
1110         $(SRC)\w32select.c \
1111         $(SRC)\lisp.h \
1112         $(SRC)\w32term.h \
1113         $(SRC)\win32.h \
1114         $(SRC)\dispextern.h \
1115         $(SRC)\frame.h \
1116         $(SRC)\blockinput.h
1118 $(BLD)\w32reg.obj: \
1119         $(EMACS_ROOT)\src\s\windowsnt.h \
1120         $(EMACS_ROOT)\src\m\intel386.h \
1121         $(EMACS_ROOT)\src\config.h \
1122         $(SRC)\w32reg.c \
1123         $(SRC)\lisp.h \
1124         $(SRC)\w32term.h \
1125         $(SRC)\win32.h \
1126         $(SRC)\blockinput.h