Commit | Line | Data |
---|---|---|
95ed0025 RS |
1 | # Makefile for GNU Emacs lib-src directory. |
2 | # Geoff Voelker (voelker@cs.washington.edu) | |
3 | # Copyright (C) 1994 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 | |
19 | # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |
20 | # | |
21 | ||
22 | # | |
23 | # Sets up the system dependent macros. | |
24 | # | |
25 | !include ..\nt\makefile.def | |
26 | ||
27 | LOCAL_FLAGS = -DWINDOWSNT -DDOS_NT -DSTDC_HEADERS=1 -DNO_LDAV=1 -DNO_ARCHIVES=1 -I..\src | |
28 | OBJDIR = obj | |
29 | BLD = $(OBJDIR)\$(ARCH) | |
30 | ||
31 | LINK_FLAGS = $(ARCH_LDFLAGS) -debug:PARTIAL -machine:$(ARCH) -subsystem:console -entry:mainCRTStartup | |
32 | ||
33 | ALL = $(BLD)\make-docfile.exe \ | |
34 | $(BLD)\hexl.exe \ | |
35 | $(BLD)\wakeup.exe \ | |
36 | $(BLD)\ctags.exe \ | |
37 | $(BLD)\etags.exe | |
38 | ||
39 | ||
40 | # don't know what (if) to do with these yet... | |
41 | # | |
42 | # $(BLD)\sorted-doc.exe \ | |
43 | # $(BLD)\env.exe \ | |
44 | # $(BLD)\server.exe \ | |
45 | # $(BLD)\emacstool.exe \ | |
46 | # $(BLD)\fakemail.exe \ | |
47 | # $(BLD)\leditcfns.exe \ | |
48 | # $(BLD)\movemail.exe \ | |
49 | # $(BLD)\emacsclient.exe \ | |
50 | # $(BLD)\cvtmail.exe \ | |
51 | # $(BLD)\digest-doc.exe \ | |
52 | # $(BLD)\test-distrib.exe \ | |
53 | ||
54 | ||
85212e67 | 55 | LIBS = $(BASE_LIBS) |
95ed0025 | 56 | |
85212e67 GV |
57 | $(BLD)\make-docfile.exe: $(BLD)\make-docfile.obj |
58 | $(BLD)\hexl.exe: $(BLD)\hexl.obj | |
95ed0025 RS |
59 | $(BLD)\ctags.exe: $(BLD)\etags.exe |
60 | copy $(BLD)\etags.exe $(BLD)\ctags.exe | |
85212e67 | 61 | $(BLD)\wakeup.exe: $(BLD)\wakeup.obj $(BLD)\ntlib.obj |
95ed0025 RS |
62 | $(LINK) -out:$@ $(LINK_FLAGS) $(BLD)\wakeup.obj $(BLD)\ntlib.obj $(LIBS) |
63 | ||
64 | make-docfile: $(BLD)\make-docfile.exe | |
65 | wakeup: $(BLD)\wakeup.exe | |
66 | etags: $(BLD)\etags.exe | |
67 | hexl: $(BLD)\hexl.exe | |
68 | ||
69 | ETAGSOBJ = $(BLD)\etags.obj \ | |
70 | $(BLD)\getopt.obj \ | |
71 | $(BLD)\getopt1.obj \ | |
72 | $(BLD)\ntlib.obj | |
73 | ||
85212e67 | 74 | $(BLD)\etags.exe: $(ETAGSOBJ) |
ebd67b8e | 75 | $(LINK) -out:$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS) |
95ed0025 RS |
76 | |
77 | # | |
78 | # don't know what to do with these yet... | |
79 | # | |
80 | # $(BLD)\sorted-doc.exe: $(LIBS) $(BLD)\sorted-doc.obj | |
81 | # $(BLD)\yow.exe: $(LIBS) $(BLD)\yow.obj | |
82 | # $(BLD)\emacstool.exe: $(LIBS) $(BLD)\emacstool.obj | |
83 | # $(BLD)\env.exe: $(LIBS) $(BLD)\env.obj | |
84 | # $(BLD)\fakemail.exe: $(LIBS) $(BLD)\fakemail.obj | |
85 | # $(BLD)\leditcfns.exe: $(LIBS) $(BLD)\leditcfns.obj | |
86 | # $(BLD)\server.exe: $(LIBS) $(BLD)\server.obj | |
87 | # $(BLD)\wakeup.exe: $(LIBS) $(BLD)\wakeup.obj | |
88 | # $(BLD)\movemail.exe: $(LIBS) $(BLD)\movemail.obj | |
89 | # $(BLD)\cvtmail.exe: $(LIBS) $(BLD)\cvtmail.obj | |
90 | # $(BLD)\digest-doc.exe: $(LIBS) $(BLD)\digest-doc.obj | |
91 | # $(BLD)\emacsclient.exe: $(LIBS) $(BLD)\emacsclient.obj | |
92 | # $(BLD)\qsort.exe: $(LIBS) $(BLD)\qsort.obj | |
93 | # $(BLD)\test-distrib.exe: $(LIBS) $(BLD)\test-distrib.obj | |
94 | ||
95 | # | |
85212e67 | 96 | # From ..\src\makefile.nt. |
95ed0025 | 97 | # |
45fad0f1 | 98 | obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c cm.c cmds.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c eval.c fileio.c filelock.c filemode.c fns.c indent.c insdel.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c xfaces.c mocklisp.c nt.c ntheap.c ntinevt.c ntproc.c ntterm.c print.c process.c regex.c scroll.c search.c syntax.c sysdep.c term.c termcap.c tparam.c undo.c unexnt.c window.c xdisp.c casetab.c floatfns.c frame.c gmalloc.c intervals.c ralloc.c textprop.c vm-limit.c region-cache.c strftime.c |
95ed0025 RS |
99 | |
100 | lispdir = ..\lisp | |
101 | ||
102 | # | |
103 | # These are the lisp files that are loaded up in loadup.el | |
104 | # | |
105 | lisp= \ | |
106 | $(lispdir)\subr.elc \ | |
107 | $(lispdir)\byte-run.elc \ | |
108 | $(lispdir)\map-ynp.elc \ | |
109 | $(lispdir)\loaddefs.el \ | |
110 | $(lispdir)\simple.elc \ | |
111 | $(lispdir)\help.elc \ | |
112 | $(lispdir)\files.elc \ | |
ebd67b8e | 113 | $(lispdir)\format.elc \ |
95ed0025 RS |
114 | $(lispdir)\indent.elc \ |
115 | $(lispdir)\window.elc \ | |
116 | $(lispdir)\frame.elc \ | |
117 | $(lispdir)\mouse.elc \ | |
118 | $(lispdir)\menu-bar.elc \ | |
119 | $(lispdir)\scroll-bar.elc \ | |
120 | $(lispdir)\select.elc \ | |
121 | $(lispdir)\paths.el \ | |
122 | $(lispdir)\startup.elc \ | |
123 | $(lispdir)\lisp.elc \ | |
124 | $(lispdir)\page.elc \ | |
125 | $(lispdir)\register.elc \ | |
126 | $(lispdir)\paragraphs.elc \ | |
127 | $(lispdir)\lisp-mode.elc \ | |
128 | $(lispdir)\text-mode.elc \ | |
129 | $(lispdir)\fill.elc \ | |
130 | $(lispdir)\c-mode.elc \ | |
131 | $(lispdir)\isearch.elc \ | |
132 | $(lispdir)\replace.elc \ | |
133 | $(lispdir)\abbrev.elc \ | |
134 | $(lispdir)\buff-menu.elc \ | |
ebd67b8e | 135 | $(lispdir)\ls-lisp.elc \ |
95ed0025 RS |
136 | $(lispdir)\winnt.elc \ |
137 | $(lispdir)\float-sup.elc \ | |
138 | $(lispdir)\vc-hooks.elc \ | |
139 | $(lispdir)\version.el | |
140 | ||
141 | DOC = DOC | |
142 | $(DOC): $(BLD)\make-docfile.exe | |
85212e67 | 143 | - del /q $(DOC) |
95ed0025 RS |
144 | $(BLD)\make-docfile -d ..\src $(obj) > $(DOC) |
145 | $(BLD)\make-docfile -d ..\src $(lisp) >> $(DOC) | |
85212e67 GV |
146 | !if "$(OS_TYPE)" == "win95" |
147 | $(CP) $(DOC) ..\etc\DOC | |
148 | !else | |
ebd67b8e | 149 | $(CP) $(DOC) ..\etc\DOC-X |
85212e67 | 150 | !endif |
95ed0025 RS |
151 | - mkdir ..\src\$(OBJDIR) |
152 | - mkdir ..\src\$(OBJDIR)\etc | |
ebd67b8e | 153 | $(CP) $(DOC) ..\src\$(OBJDIR)\etc\DOC-X |
95ed0025 RS |
154 | |
155 | {$(BLD)}.obj{$(BLD)}.exe: | |
156 | $(LINK) -out:$@ $(LINK_FLAGS) $*.obj $(LIBS) | |
157 | ||
158 | .c{$(BLD)}.obj: | |
159 | $(CC) $(CFLAGS) -Fo$@ $< | |
160 | ||
161 | # | |
162 | # Build the executables | |
163 | # | |
164 | all: $(BLD) $(ALL) $(DOC) | |
165 | ||
166 | # | |
167 | # Assuming INSTALL_DIR is defined, build and install emacs in it. | |
168 | # | |
169 | INSTALL_FILES = $(ALL) | |
170 | install: $(INSTALL_FILES) | |
171 | - mkdir $(INSTALL_DIR)\bin | |
172 | $(CP) $(BLD)\etags.exe $(INSTALL_DIR)\bin | |
173 | $(CP) $(BLD)\ctags.exe $(INSTALL_DIR)\bin | |
174 | $(CP) $(BLD)\hexl.exe $(INSTALL_DIR)\bin | |
175 | $(CP) $(BLD)\wakeup.exe $(INSTALL_DIR)\bin\wakeup | |
176 | - mkdir $(INSTALL_DIR)\etc | |
177 | $(CP) $(DOC) $(INSTALL_DIR)\etc | |
178 | ||
179 | # | |
180 | # Maintenance | |
181 | # | |
85212e67 | 182 | clean:; - del /q *~ *.pdb |
ebd67b8e KH |
183 | - $(DEL_TREE) deleted |
184 | - $(DEL_TREE) obj | |
85212e67 | 185 | - del /q DOC* |
95ed0025 RS |
186 | |
187 | # | |
188 | # Headers we would preprocess if we could. | |
189 | # | |
85212e67 GV |
190 | ..\src\config.h: ..\nt\$(CONFIG_H) |
191 | $(CP) $** $@ | |
ebd67b8e | 192 | ..\src\paths.h: ..\nt\paths.h |
85212e67 | 193 | $(CP) $** $@ |
95ed0025 RS |
194 | |
195 | ### DEPENDENCIES ### | |
196 | ||
197 | EMACS_ROOT = .. | |
198 | SRC = . | |
199 | ||
200 | $(BLD)\alloca.obj : \ | |
201 | $(SRC)\alloca.c \ | |
85cdd6af KH |
202 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
203 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
204 | $(EMACS_ROOT)\src\config.h \ |
205 | $(EMACS_ROOT)\src\blockinput.h | |
206 | ||
207 | $(BLD)\b2m.obj : \ | |
208 | $(SRC)\b2m.c \ | |
85cdd6af KH |
209 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
210 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
211 | $(EMACS_ROOT)\lib-src\..\src\config.h |
212 | ||
213 | $(BLD)\cvtmail.obj : \ | |
214 | $(SRC)\cvtmail.c | |
215 | ||
216 | $(BLD)\digest-doc.obj : \ | |
217 | $(SRC)\digest-doc.c | |
218 | ||
219 | $(BLD)\emacsclient.obj : \ | |
220 | $(SRC)\emacsclient.c \ | |
85cdd6af KH |
221 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
222 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
223 | $(EMACS_ROOT)\lib-src\..\src\config.h |
224 | ||
225 | $(BLD)\emacsserver.obj : \ | |
226 | $(SRC)\emacsserver.c \ | |
85cdd6af KH |
227 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
228 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
229 | $(EMACS_ROOT)\lib-src\..\src\config.h \ |
230 | $(EMACS_ROOT)\nt\inc\sys\file.h | |
231 | ||
232 | $(BLD)\emacstool.obj : \ | |
233 | $(SRC)\emacstool.c \ | |
234 | $(EMACS_ROOT)\nt\inc\sys\file.h | |
235 | ||
236 | $(BLD)\etags.obj : \ | |
237 | $(SRC)\etags.c \ | |
238 | $(EMACS_ROOT)\nt\inc\sys\param.h \ | |
85cdd6af KH |
239 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
240 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
241 | $(EMACS_ROOT)\lib-src\..\src\config.h \ |
242 | $(SRC)\getopt.h | |
243 | ||
244 | $(BLD)\fakemail.obj : \ | |
245 | $(SRC)\fakemail.c \ | |
85cdd6af KH |
246 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
247 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
248 | $(EMACS_ROOT)\lib-src\..\src\config.h \ |
249 | $(EMACS_ROOT)\nt\inc\pwd.h | |
250 | ||
251 | $(BLD)\getdate.obj : \ | |
252 | $(SRC)\getdate.c \ | |
85cdd6af KH |
253 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
254 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
255 | $(EMACS_ROOT)\src\config.h \ |
256 | $(MSTOOLS_SYS)\types.h | |
257 | ||
258 | $(BLD)\getopt.obj : \ | |
259 | $(SRC)\getopt.c \ | |
85cdd6af KH |
260 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
261 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
262 | $(EMACS_ROOT)\src\config.h \ |
263 | $(SRC)\getopt.h | |
264 | ||
265 | $(BLD)\getopt1.obj : \ | |
266 | $(SRC)\getopt1.c \ | |
85cdd6af KH |
267 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
268 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
269 | $(EMACS_ROOT)\src\config.h \ |
270 | $(SRC)\getopt.h | |
271 | ||
272 | $(BLD)\hexl.obj : \ | |
273 | $(SRC)\hexl.c | |
274 | ||
275 | $(BLD)\leditcfns.obj : \ | |
276 | $(SRC)\leditcfns.c | |
277 | ||
278 | $(BLD)\make-docfile.obj : \ | |
85212e67 GV |
279 | $(SRC)\make-docfile.c \ |
280 | $(EMACS_ROOT)\src\config.h | |
95ed0025 RS |
281 | |
282 | $(BLD)\make-path.obj : \ | |
283 | $(SRC)\make-path.c | |
284 | ||
285 | $(BLD)\movemail.obj : \ | |
286 | $(SRC)\movemail.c \ | |
85cdd6af KH |
287 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
288 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
289 | $(EMACS_ROOT)\lib-src\..\src\config.h \ |
290 | $(EMACS_ROOT)\nt\inc\sys\file.h \ | |
291 | $(EMACS_ROOT)\src\vmsproc.h \ | |
292 | $(EMACS_ROOT)\lib-src\..\src\syswait.h \ | |
293 | $(EMACS_ROOT)\nt\inc\pwd.h | |
294 | ||
295 | $(BLD)\profile.obj : \ | |
296 | $(SRC)\profile.c \ | |
85cdd6af KH |
297 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
298 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
299 | $(EMACS_ROOT)\lib-src\..\src\config.h \ |
300 | $(EMACS_ROOT)\src\vmstime.h \ | |
301 | $(EMACS_ROOT)\lib-src\..\src\systime.h | |
302 | ||
303 | $(BLD)\qsort.obj : \ | |
304 | $(SRC)\qsort.c | |
305 | ||
306 | $(BLD)\sorted-doc.obj : \ | |
307 | $(SRC)\sorted-doc.c | |
308 | ||
309 | $(BLD)\tcp.obj : \ | |
310 | $(SRC)\tcp.c | |
311 | ||
312 | $(BLD)\test-distrib.obj : \ | |
313 | $(SRC)\test-distrib.c | |
314 | ||
315 | $(BLD)\timer.obj : \ | |
316 | $(SRC)\timer.c \ | |
85cdd6af KH |
317 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
318 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
319 | $(EMACS_ROOT)\lib-src\..\src\config.h |
320 | ||
321 | $(BLD)\wakeup.obj : \ | |
322 | $(SRC)\wakeup.c \ | |
85cdd6af KH |
323 | $(EMACS_ROOT)\src\s\windowsnt.h \ |
324 | $(EMACS_ROOT)\src\m\intel386.h \ | |
95ed0025 RS |
325 | $(EMACS_ROOT)\src\config.h |
326 | ||
327 | $(BLD)\yow.obj : \ | |
328 | $(SRC)\yow.c \ | |
329 | $(EMACS_ROOT)\lib-src\..\src\paths.h |