Commit | Line | Data |
---|---|---|
b46a6a83 | 1 | # -*- Makefile -*- for GNU Emacs on the Microsoft Windows API. |
ba318903 | 2 | # Copyright (C) 2000-2014 Free Software Foundation, Inc. |
294981c7 GM |
3 | |
4 | # This file is part of GNU Emacs. | |
5 | ||
6 | # GNU Emacs is free software: you can redistribute it and/or modify | |
7 | # it under the terms of the GNU General Public License as published by | |
8 | # the Free Software Foundation, either version 3 of the License, or | |
9 | # (at your option) any later version. | |
10 | ||
11 | # GNU Emacs is distributed in the hope that it will be useful, | |
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | # GNU General Public License for more details. | |
15 | ||
16 | # You should have received a copy of the GNU General Public License | |
17 | # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | |
18 | ||
7bbaaedd | 19 | |
e4ecc6a2 EZ |
20 | ALL = $(BLD)/test-distrib.exe $(BLD)/make-docfile.exe $(BLD)/hexl.exe\ |
21 | $(BLD)/ctags.exe $(BLD)/etags.exe $(BLD)/movemail.exe $(BLD)/ebrowse.exe\ | |
31542918 | 22 | $(BLD)/emacsclient.exe $(BLD)/emacsclientw.exe $(BLD)/profile.exe |
7bbaaedd | 23 | |
d67a9a85 | 24 | .PHONY: make-docfile |
7bbaaedd | 25 | |
3fbc4b54 | 26 | LOCAL_FLAGS = -DNO_LDAV=1 -DNO_ARCHIVES=1 -I../lib \ |
8c9afb46 | 27 | -I../nt/inc -I../src $(EMACS_EXTRA_C_FLAGS) |
7bbaaedd | 28 | |
ad456bcb | 29 | LIBS = $(BASE_LIBS) $(ADVAPI32) |
d7158313 | 30 | LIB_SRC = . |
7bbaaedd | 31 | |
d67a9a85 EZ |
32 | # The following target is used by makefile.w32-in files in other directories. |
33 | make-docfile: $(BLD)/make-docfile.exe | |
34 | ||
7bbaaedd AI |
35 | $(BLD)/make-docfile.exe: $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O) |
36 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/make-docfile.$(O) $(BLD)/ntlib.$(O) $(LIBS) | |
37 | $(BLD)/hexl.exe: $(BLD)/hexl.$(O) | |
38 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/hexl.$(O) $(LIBS) | |
9781fb53 EZ |
39 | $(BLD)/test-distrib.exe: $(BLD)/test-distrib.$(O) |
40 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/test-distrib.$(O) $(LIBS) | |
65e46515 | 41 | "$(BLD)/test-distrib.exe" "$(LIB_SRC)/testfile" |
7bbaaedd | 42 | |
7bbaaedd AI |
43 | MOVEMAILOBJS = $(BLD)/movemail.$(O) \ |
44 | $(BLD)/pop.$(O) \ | |
f915f0f7 EZ |
45 | ../lib/$(BLD)/libgnu.$(A) \ |
46 | $(BLD)/ntlib.$(O) | |
7bbaaedd | 47 | |
f915f0f7 | 48 | $(BLD)/movemail.exe: $(MOVEMAILOBJS) ../lib/getopt.h |
7bbaaedd AI |
49 | # put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib |
50 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(MOVEMAILOBJS) $(WSOCK32) $(LIBS) | |
51 | ||
70b0d280 | 52 | ECLIENT_CFLAGS = -DHAVE_GETCWD -DHAVE_STRERROR |
d20f2a6a | 53 | ECLIENTOBJS = $(BLD)/emacsclient.$(O) \ |
f915f0f7 EZ |
54 | $(BLD)/ntlib.$(O) \ |
55 | ../lib/$(BLD)/libgnu.$(A) | |
4429f88c | 56 | CLIENTRES = ../nt/$(BLD)/emacsclient.res |
4d91c8f9 | 57 | |
4429f88c JR |
58 | $(CLIENTRES): ../nt/emacsclient.rc |
59 | @echo Emacsclient resource file must be built from nt directory | |
60 | @exit -1 | |
d20f2a6a JB |
61 | |
62 | $(BLD)/emacsclient.exe: $(ECLIENTOBJS) | |
63 | # put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib | |
2e2d2377 | 64 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ECLIENTOBJS) $(WSOCK32) $(USER32) $(COMCTL32) $(LIBS) |
d20f2a6a | 65 | |
4429f88c | 66 | $(BLD)/emacsclientw.exe: $(ECLIENTOBJS) $(CLIENTRES) |
ba2d3968 | 67 | # put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib |
06523364 | 68 | $(LINK) $(LINK_OUT)$@ $(CLIENTRES) $(MWINDOWS) $(LINK_FLAGS) $(ECLIENTOBJS) $(WSOCK32) $(USER32) $(COMCTL32) $(LIBS) |
ba2d3968 | 69 | |
70b0d280 | 70 | $(BLD)/emacsclient.$(O): emacsclient.c |
8357b759 | 71 | $(CC) $(CFLAGS) $(ECLIENT_CFLAGS) $(CC_OUT)$@ emacsclient.c |
d20f2a6a | 72 | |
7bbaaedd | 73 | ETAGSOBJ = $(BLD)/etags.$(O) \ |
f915f0f7 | 74 | ../lib/$(BLD)/libgnu.$(A) \ |
7bbaaedd AI |
75 | $(BLD)/ntlib.$(O) \ |
76 | $(BLD)/regex.$(O) | |
77 | ||
78 | $(BLD)/etags.exe: $(ETAGSOBJ) | |
79 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS) | |
80 | ||
81 | ||
d19249e7 | 82 | EBROWSEOBJ = $(BLD)/ebrowse.$(O) \ |
f915f0f7 | 83 | ../lib/$(BLD)/libgnu.$(A) \ |
ba2d3968 | 84 | $(BLD)/ntlib.$(O) |
d19249e7 JR |
85 | |
86 | $(BLD)/ebrowse.exe: $(EBROWSEOBJ) | |
88257bc8 | 87 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(EBROWSEOBJ) $(LIBS) |
d19249e7 | 88 | |
7bbaaedd AI |
89 | $(BLD)/regex.$(O): ../src/regex.c ../src/regex.h ../src/config.h |
90 | $(CC) $(CFLAGS) -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \ | |
91 | ../src/regex.c $(CC_OUT)$@ | |
92 | ||
d9f1f55e | 93 | ETAGS_CFLAGS = -DHAVE_GETCWD -DEMACS_NAME="\"GNU Emacs\"" |
7bbaaedd AI |
94 | $(BLD)/etags.$(O): etags.c |
95 | $(CC) $(CFLAGS) $(ETAGS_CFLAGS) $(CC_OUT)$@ etags.c | |
96 | ||
97 | CTAGSOBJ = $(BLD)/ctags.$(O) \ | |
f915f0f7 | 98 | ../lib/$(BLD)/libgnu.$(A) \ |
7bbaaedd AI |
99 | $(BLD)/ntlib.$(O) \ |
100 | $(BLD)/regex.$(O) | |
101 | ||
102 | $(BLD)/ctags.exe: $(CTAGSOBJ) | |
103 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(CTAGSOBJ) $(LIBS) | |
104 | ||
105 | ctags.c: etags.c | |
106 | - $(DEL) ctags.c | |
107 | $(CP) etags.c ctags.c | |
108 | ||
b95b7254 | 109 | CTAGS_CFLAGS = -DCTAGS $(ETAGS_CFLAGS) |
7bbaaedd AI |
110 | $(BLD)/ctags.$(O): ctags.c |
111 | $(CC) $(CFLAGS) $(CTAGS_CFLAGS) $(CC_OUT)$@ ctags.c | |
112 | ||
31542918 JB |
113 | PROFILEOBJS = $(BLD)/profile.$(O) \ |
114 | ../lib/$(BLD)/libgnu.$(A) \ | |
115 | $(BLD)/ntlib.$(O) | |
116 | $(BLD)/profile.exe: $(PROFILEOBJS) | |
117 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(PROFILEOBJS) $(LIBS) | |
118 | ||
7bbaaedd | 119 | # |
3cf5c994 JD |
120 | # From ..\src\Makefile.in |
121 | # It doesn't matter if the real name is *.obj for the files in this list, | |
122 | # make-docfile blindly replaces .o with .c anyway. Keep .o in this list | |
123 | # as it is required by code in doc.c. | |
7bbaaedd | 124 | # |
f23d76bd | 125 | obj = dosfns.o msdos.o \ |
eccfc782 | 126 | xterm.o xfns.o xmenu.o xselect.o xrdb.o xsmfns.o fringe.o image.o \ |
2b8c9064 EZ |
127 | fontset.o menu.o dbusbind.o cygw32.o \ |
128 | nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o nsfont.o \ | |
129 | w32.o w32console.o w32fns.o w32heap.o w32inevt.o w32notify.o \ | |
3cf5c994 | 130 | w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o \ |
2b8c9064 EZ |
131 | w16select.o widget.o xfont.o ftfont.o xftfont.o ftxfont.o gtkutil.o \ |
132 | xsettings.o xgselect.o termcap.o \ | |
477f1e50 | 133 | font.o w32font.o w32uniscribe.o w32notify.o \ |
994a7c3b | 134 | dispnew.o frame.o scroll.o xdisp.o window.o bidi.o \ |
eccfc782 JR |
135 | charset.o coding.o category.o ccl.o character.o chartab.o \ |
136 | cm.o term.o terminal.o xfaces.o \ | |
3cf5c994 JD |
137 | emacs.o keyboard.o macros.o keymap.o sysdep.o \ |
138 | buffer.o filelock.o insdel.o marker.o \ | |
602a5739 | 139 | minibuf.o fileio.o dired.o \ |
3cf5c994 JD |
140 | cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o \ |
141 | alloc.o data.o doc.o editfns.o callint.o \ | |
142 | eval.o floatfns.o fns.o print.o lread.o \ | |
a2666217 | 143 | syntax.o bytecode.o \ |
994a7c3b | 144 | process.o callproc.o unexw32.o \ |
3cf5c994 | 145 | region-cache.o sound.o atimer.o \ |
418401a5 | 146 | doprnt.o intervals.o textprop.o composite.o \ |
6a586b7f | 147 | gnutls.o xml.o profiler.o |
3cf5c994 | 148 | |
7bbaaedd AI |
149 | # |
150 | # These are the lisp files that are loaded up in loadup.el | |
151 | # | |
152 | lispsource = ../lisp/ | |
153 | ||
a40c6a08 JR |
154 | MOUSE_SUPPORT = \ |
155 | $(lispsource)select.elc \ | |
156 | $(lispsource)scroll-bar.elc \ | |
79d48c1a | 157 | $(lispsource)mouse.elc |
a40c6a08 JR |
158 | WINNT_SUPPORT = \ |
159 | $(lispsource)ls-lisp.elc \ | |
160 | $(lispsource)disp-table.elc \ | |
161 | $(lispsource)w32-fns.elc \ | |
162 | $(lispsource)dos-w32.elc \ | |
163 | $(lispsource)w32-vars.elc \ | |
f2d6b714 | 164 | $(lispsource)term/common-win.elc \ |
a40c6a08 | 165 | $(lispsource)term/w32-win.elc |
a40c6a08 JR |
166 | TOOLTIP_SUPPORT = $(lispsource)tooltip.elc |
167 | WINDOW_SUPPORT = \ | |
168 | $(lispsource)fringe.elc \ | |
169 | $(lispsource)image.elc \ | |
170 | $(lispsource)international/fontset.elc \ | |
171 | $(lispsource)dnd.elc \ | |
172 | $(lispsource)tool-bar.elc \ | |
173 | $(lispsource)mwheel.elc | |
7bbaaedd | 174 | |
79d48c1a JR |
175 | # lisp files that are loaded up on other platforms |
176 | OTHER_PLATFORM_SUPPORT = \ | |
177 | $(lispsource)dos-fns.elc \ | |
178 | $(lispsource)dos-vars.elc \ | |
03dcfe01 CY |
179 | $(lispsource)term/internal.elc \ |
180 | $(lispsource)term/pc-win.elc \ | |
79d48c1a | 181 | $(lispsource)x-dnd.elc \ |
614bd9cf | 182 | $(lispsource)term/x-win.elc \ |
42d3cab7 | 183 | $(lispsource)term/ns-win.elc |
79d48c1a JR |
184 | |
185 | ||
83a9c0b2 | 186 | lisp1= \ |
7f379e5b JR |
187 | $(lispsource)abbrev.elc \ |
188 | $(lispsource)buff-menu.elc \ | |
e63e8d3e | 189 | $(lispsource)button.elc \ |
8dc48ef0 | 190 | $(lispsource)emacs-lisp/byte-run.elc \ |
0c55bf82 | 191 | $(lispsource)composite.elc \ |
98d926f2 | 192 | $(lispsource)cus-face.elc \ |
7f379e5b JR |
193 | $(lispsource)cus-start.elc \ |
194 | $(lispsource)custom.elc \ | |
dd87b4cc | 195 | $(lispsource)emacs-lisp/backquote.elc \ |
7f379e5b JR |
196 | $(lispsource)emacs-lisp/lisp-mode.elc \ |
197 | $(lispsource)emacs-lisp/lisp.elc \ | |
a40c6a08 | 198 | $(lispsource)env.elc \ |
98d926f2 EZ |
199 | $(lispsource)faces.elc \ |
200 | $(lispsource)files.elc \ | |
98d926f2 | 201 | $(lispsource)format.elc \ |
a40c6a08 JR |
202 | $(lispsource)facemenu.elc \ |
203 | $(MOUSE_SUPPORT) \ | |
204 | $(lispsource)emacs-lisp/float-sup.elc \ | |
8dc48ef0 | 205 | $(lispsource)frame.elc \ |
7f379e5b JR |
206 | $(lispsource)help.elc \ |
207 | $(lispsource)indent.elc \ | |
208 | $(lispsource)isearch.elc \ | |
98d926f2 | 209 | $(lispsource)rfn-eshadow.elc \ |
7bbaaedd AI |
210 | $(lispsource)loadup.el \ |
211 | $(lispsource)loaddefs.el \ | |
7f379e5b | 212 | $(lispsource)bindings.elc \ |
8dc48ef0 | 213 | $(lispsource)emacs-lisp/map-ynp.elc \ |
a40c6a08 | 214 | $(lispsource)menu-bar.elc \ |
7f379e5b | 215 | $(lispsource)international/mule.elc \ |
2068905b | 216 | $(lispsource)international/mule-conf.elc \ |
7f379e5b JR |
217 | $(lispsource)international/mule-cmds.elc \ |
218 | $(lispsource)international/characters.elc \ | |
a40c6a08 | 219 | $(lispsource)international/charprop.el \ |
a19e68ea JB |
220 | $(lispsource)case-table.elc \ |
221 | $(lispsource)emacs-lisp/macroexp.elc | |
83a9c0b2 JR |
222 | |
223 | lisp2 = \ | |
2068905b EZ |
224 | $(lispsource)language/chinese.elc \ |
225 | $(lispsource)language/cyrillic.elc \ | |
226 | $(lispsource)language/indian.elc \ | |
227 | $(lispsource)language/sinhala.elc \ | |
228 | $(lispsource)language/english.elc \ | |
7f379e5b JR |
229 | $(lispsource)language/ethiopic.elc \ |
230 | $(lispsource)language/european.elc \ | |
2068905b EZ |
231 | $(lispsource)language/czech.elc \ |
232 | $(lispsource)language/slovak.elc \ | |
233 | $(lispsource)language/romanian.elc \ | |
234 | $(lispsource)language/greek.elc \ | |
f09e4c6b | 235 | $(lispsource)language/hebrew.elc \ |
2068905b | 236 | $(lispsource)language/japanese.elc \ |
4c77e620 EZ |
237 | $(lispsource)international/cp51932.el \ |
238 | $(lispsource)international/eucjp-ms.el \ | |
2068905b EZ |
239 | $(lispsource)language/korean.elc \ |
240 | $(lispsource)language/lao.elc \ | |
241 | $(lispsource)language/cham.elc \ | |
242 | $(lispsource)language/tai-viet.elc \ | |
243 | $(lispsource)language/thai.elc \ | |
7f379e5b | 244 | $(lispsource)language/tibetan.elc \ |
2068905b EZ |
245 | $(lispsource)language/vietnamese.elc \ |
246 | $(lispsource)language/misc-lang.elc \ | |
247 | $(lispsource)language/utf-8-lang.elc \ | |
248 | $(lispsource)language/georgian.elc \ | |
249 | $(lispsource)language/khmer.elc \ | |
250 | $(lispsource)language/burmese.elc \ | |
7f379e5b JR |
251 | $(lispsource)register.elc \ |
252 | $(lispsource)replace.elc \ | |
253 | $(lispsource)simple.elc \ | |
dc6c0eda | 254 | $(lispsource)emacs-lisp/nadvice.elc \ |
01b996ad | 255 | $(lispsource)minibuffer.elc \ |
7f379e5b JR |
256 | $(lispsource)startup.elc \ |
257 | $(lispsource)subr.elc \ | |
258 | $(lispsource)term/tty-colors.elc \ | |
7a8940da | 259 | $(lispsource)font-core.elc \ |
98d926f2 EZ |
260 | $(lispsource)emacs-lisp/syntax.elc \ |
261 | $(lispsource)font-lock.elc \ | |
262 | $(lispsource)jit-lock.elc \ | |
7f379e5b JR |
263 | $(lispsource)textmodes/fill.elc \ |
264 | $(lispsource)textmodes/page.elc \ | |
265 | $(lispsource)textmodes/paragraphs.elc \ | |
266 | $(lispsource)textmodes/text-mode.elc \ | |
98d926f2 | 267 | $(lispsource)emacs-lisp/timer.elc \ |
98d926f2 | 268 | $(lispsource)jka-cmpr-hook.elc \ |
5fee75d4 JB |
269 | $(lispsource)vc/vc-hooks.elc \ |
270 | $(lispsource)vc/ediff-hook.elc \ | |
86914123 | 271 | $(lispsource)epa-hook.elc \ |
a40c6a08 | 272 | $(TOOLTIP_SUPPORT) \ |
7bbaaedd | 273 | $(WINNT_SUPPORT) \ |
a40c6a08 | 274 | $(WINDOW_SUPPORT) \ |
7f379e5b JR |
275 | $(lispsource)widget.elc \ |
276 | $(lispsource)window.elc \ | |
2068905b | 277 | $(lispsource)version.elc |
7bbaaedd | 278 | |
3b57ab8f EZ |
279 | # This is needed the first time we build the tree, since temacs.exe |
280 | # does not exist yet, and the DOC rule needs it to rebuild DOC whenever | |
281 | # Emacs is rebuilt. | |
282 | ../src/$(BLD)/temacs.exe: | |
283 | - mkdir "../src/$(OBJDIR)" | |
284 | - mkdir "../src/$(BLD)" | |
285 | @echo temacs > temacs.exe | |
286 | $(CP) temacs.exe ../src/$(BLD) | |
287 | - $(DEL) temacs.exe | |
7bbaaedd | 288 | |
52402e4f | 289 | DOC = DOC |
79d48c1a | 290 | $(DOC): stamp_BLD $(BLD)/make-docfile.exe ../src/$(BLD)/temacs.exe $(lisp1) $(lisp2) $(OTHER_PLATFORM_SUPPORT) |
7bbaaedd | 291 | - $(DEL) $(DOC) |
cf6d30d7 | 292 | "$(THISDIR)/$(BLD)/make-docfile" -o $(DOC) -d ../src $(obj) |
83a9c0b2 JR |
293 | "$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp1) |
294 | "$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp2) | |
79d48c1a | 295 | "$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(OTHER_PLATFORM_SUPPORT) |
6e911150 | 296 | $(CP) $(DOC) ../etc/DOC |
7bbaaedd AI |
297 | - mkdir "../src/$(OBJDIR)" |
298 | - mkdir "../src/$(OBJDIR)/etc" | |
6e911150 | 299 | $(CP) $(DOC) ../src/$(OBJDIR)/etc/DOC |
7bbaaedd AI |
300 | |
301 | {$(BLD)}.$(O){$(BLD)}.exe: | |
302 | $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $*.$(O) $(LIBS) | |
303 | ||
304 | # | |
305 | # Build the executables | |
306 | # | |
d67a9a85 | 307 | all: $(ALL) $(DOC) |
7bbaaedd AI |
308 | |
309 | # | |
310 | # Assuming INSTALL_DIR is defined, build and install emacs in it. | |
311 | # | |
312 | INSTALL_FILES = $(ALL) | |
313 | install: $(INSTALL_FILES) | |
314 | - mkdir "$(INSTALL_DIR)/bin" | |
315 | $(CP) $(BLD)/etags.exe $(INSTALL_DIR)/bin | |
88257bc8 | 316 | $(CP) $(BLD)/ebrowse.exe $(INSTALL_DIR)/bin |
7bbaaedd AI |
317 | $(CP) $(BLD)/ctags.exe $(INSTALL_DIR)/bin |
318 | $(CP) $(BLD)/hexl.exe $(INSTALL_DIR)/bin | |
319 | $(CP) $(BLD)/movemail.exe $(INSTALL_DIR)/bin | |
d20f2a6a | 320 | $(CP) $(BLD)/emacsclient.exe $(INSTALL_DIR)/bin |
ba2d3968 | 321 | $(CP) $(BLD)/emacsclientw.exe $(INSTALL_DIR)/bin |
31542918 | 322 | $(CP) $(BLD)/profile.exe $(INSTALL_DIR)/bin |
7bbaaedd AI |
323 | - mkdir "$(INSTALL_DIR)/etc" |
324 | $(CP) $(DOC) $(INSTALL_DIR)/etc | |
325 | ||
326 | # | |
327 | # Maintenance | |
52402e4f | 328 | # |
9724908a EZ |
329 | # We used to delete *~ here, but that might inadvertently remove |
330 | # precious files if it happens to match their short 8+3 aliases. | |
7bbaaedd | 331 | clean: |
9724908a | 332 | - $(DEL) DOC* $(COMPILER_TEMP_FILES) |
7bbaaedd AI |
333 | - $(DEL) ctags.c |
334 | - $(DEL_TREE) $(OBJDIR) | |
e313b518 | 335 | - $(DEL) stamp_BLD |
7bbaaedd | 336 | |
6948400c JR |
337 | distclean: cleanall |
338 | - $(DEL) TAGS | |
339 | - $(DEL) Makefile | |
340 | ||
341 | maintainer-clean: distclean | |
342 | ||
7bbaaedd AI |
343 | cleanall: clean |
344 | - $(DEL_TREE) obj | |
345 | - $(DEL_TREE) obj-spd | |
346 | - $(DEL_TREE) oo | |
347 | - $(DEL_TREE) oo-spd | |
348 | ||
349 | # | |
350 | # Headers we would preprocess if we could. | |
351 | # | |
352 | ../src/config.h: ../nt/$(CONFIG_H) | |
a69edb8a | 353 | $(DEL) $@ |
70846e2a | 354 | echo $(CONFIG_H) has changed. Re-run configure.bat. |
df1b2142 JR |
355 | exit -1 |
356 | ||
73077a9a EZ |
357 | ### TAGS ### |
358 | ||
73077a9a EZ |
359 | TAGS: $(BLD)/etags.exe *.c *.h |
360 | $(BLD)/etags.exe *.c *.h | |
361 | ||
7bbaaedd AI |
362 | ### DEPENDENCIES ### |
363 | ||
364 | EMACS_ROOT = .. | |
65e46515 JB |
365 | SRC = $(EMACS_ROOT)/src |
366 | NT_INC = $(EMACS_ROOT)/nt/inc | |
367 | GNU_LIB = $(EMACS_ROOT)/lib | |
368 | ||
837b365b | 369 | MS_W32_H = $(NT_INC)/ms-w32.h \ |
65e46515 | 370 | $(NT_INC)/sys/stat.h |
552a99b4 | 371 | CONF_POST_H = $(SRC)/conf_post.h \ |
65e46515 | 372 | $(MS_W32_H) |
552a99b4 JB |
373 | CONFIG_H = $(SRC)/config.h \ |
374 | $(CONF_POST_H) | |
65e46515 JB |
375 | INTTYPES_H = $(NT_INC)/inttypes.h \ |
376 | $(NT_INC)/stdint.h | |
377 | NTLIB_H = $(LIB_SRC)/ntlib.h \ | |
378 | $(NT_INC)/pwd.h | |
379 | SYSTIME_H = $(SRC)/systime.h \ | |
380 | $(NT_INC)/sys/time.h \ | |
381 | $(GNU_LIB)/timespec.h | |
a75ce9d3 | 382 | SYSWAIT_H = $(SRC)/syswait.h \ |
0eeb69fe | 383 | $(NT_INC)/stdbool.h \ |
a75ce9d3 | 384 | $(NT_INC)/sys/wait.h |
7bbaaedd | 385 | |
7bbaaedd | 386 | $(BLD)/ctags.$(O) : \ |
65e46515 JB |
387 | $(LIB_SRC)/ctags.c \ |
388 | $(SRC)/regex.h \ | |
389 | $(NT_INC)/sys/stat.h \ | |
390 | $(NT_INC)/unistd.h \ | |
391 | $(GNU_LIB)/c-strcase.h \ | |
392 | $(GNU_LIB)/getopt.h \ | |
393 | $(CONFIG_H) | |
7bbaaedd | 394 | |
b97decf2 | 395 | $(BLD)/ebrowse.$(O) : \ |
65e46515 JB |
396 | $(LIB_SRC)/ebrowse.c \ |
397 | $(GNU_LIB)/getopt.h \ | |
398 | $(GNU_LIB)/min-max.h \ | |
399 | $(CONFIG_H) | |
b97decf2 | 400 | |
7bbaaedd | 401 | $(BLD)/emacsclient.$(O) : \ |
65e46515 JB |
402 | $(LIB_SRC)/emacsclient.c \ |
403 | $(NT_INC)/pwd.h \ | |
404 | $(NT_INC)/sys/stat.h \ | |
405 | $(NT_INC)/unistd.h \ | |
406 | $(GNU_LIB)/getopt.h \ | |
407 | $(CONFIG_H) | |
7bbaaedd | 408 | |
7bbaaedd | 409 | $(BLD)/etags.$(O) : \ |
65e46515 JB |
410 | $(LIB_SRC)/etags.c \ |
411 | $(SRC)/regex.h \ | |
412 | $(NT_INC)/sys/stat.h \ | |
413 | $(NT_INC)/unistd.h \ | |
414 | $(GNU_LIB)/c-strcase.h \ | |
415 | $(GNU_LIB)/getopt.h \ | |
416 | $(CONFIG_H) | |
7bbaaedd | 417 | |
7bbaaedd | 418 | $(BLD)/hexl.$(O) : \ |
65e46515 JB |
419 | $(LIB_SRC)/hexl.c \ |
420 | $(CONFIG_H) | |
7bbaaedd | 421 | |
7bbaaedd | 422 | $(BLD)/make-docfile.$(O) : \ |
65e46515 JB |
423 | $(LIB_SRC)/make-docfile.c \ |
424 | $(NT_INC)/unistd.h \ | |
425 | $(CONFIG_H) | |
7bbaaedd | 426 | |
7bbaaedd | 427 | $(BLD)/movemail.$(O) : \ |
65e46515 JB |
428 | $(LIB_SRC)/movemail.c \ |
429 | $(LIB_SRC)/pop.h \ | |
65e46515 JB |
430 | $(NT_INC)/pwd.h \ |
431 | $(NT_INC)/sys/file.h \ | |
432 | $(NT_INC)/sys/stat.h \ | |
433 | $(NT_INC)/unistd.h \ | |
434 | $(GNU_LIB)/getopt.h \ | |
435 | $(CONFIG_H) \ | |
a75ce9d3 JB |
436 | $(NTLIB_H) \ |
437 | $(SYSWAIT_H) | |
7bbaaedd AI |
438 | |
439 | $(BLD)/ntlib.$(O) : \ | |
65e46515 JB |
440 | $(LIB_SRC)/ntlib.c \ |
441 | $(NT_INC)/sys/stat.h \ | |
442 | $(NTLIB_H) | |
7bbaaedd AI |
443 | |
444 | $(BLD)/pop.$(O) : \ | |
65e46515 JB |
445 | $(LIB_SRC)/pop.c \ |
446 | $(LIB_SRC)/pop.h \ | |
447 | $(NT_INC)/netdb.h \ | |
448 | $(NT_INC)/pwd.h \ | |
449 | $(NT_INC)/unistd.h \ | |
450 | $(GNU_LIB)/min-max.h \ | |
451 | $(CONFIG_H) \ | |
452 | $(NTLIB_H) | |
7bbaaedd AI |
453 | |
454 | $(BLD)/profile.$(O) : \ | |
65e46515 JB |
455 | $(LIB_SRC)/profile.c \ |
456 | $(GNU_LIB)/intprops.h \ | |
457 | $(CONFIG_H) \ | |
458 | $(INTTYPES_H) \ | |
459 | $(SYSTIME_H) | |
460 | ||
461 | $(BLD)/regex.$(O) : \ | |
462 | $(SRC)/regex.c \ | |
463 | $(SRC)/regex.h \ | |
9851e4a5 | 464 | $(NT_INC)/stdbool.h \ |
65e46515 JB |
465 | $(NT_INC)/unistd.h \ |
466 | $(CONFIG_H) | |
7bbaaedd | 467 | |
7bbaaedd | 468 | $(BLD)/test-distrib.$(O) : \ |
65e46515 JB |
469 | $(LIB_SRC)/test-distrib.c \ |
470 | $(NT_INC)/unistd.h \ | |
471 | $(CONFIG_H) | |
7bbaaedd | 472 | |
1a8a626d EZ |
473 | # The following dependencies are for supporting parallel builds, where |
474 | # we must make sure $(BLD) exists before any compilation starts. | |
475 | # | |
c136e5cd | 476 | $(BLD)/make-docfile.$(O) $(BLD)/hexl.$(O): stamp_BLD |
1a8a626d | 477 | |
f915f0f7 | 478 | $(BLD)/test-distrib.$(O) $(MOVEMAILOBJS): stamp_BLD |
1a8a626d EZ |
479 | |
480 | $(BLD)/emacsclient.$(O) $(BLD)/etags.$(O) $(BLD)/regex.$(O): stamp_BLD | |
481 | ||
8519232d | 482 | $(BLD)/ebrowse.$(O) $(BLD)/ctags.$(O) $(BLD)/profile.$(O): stamp_BLD |