Commit | Line | Data |
---|---|---|
eef0be9e | 1 | # -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.\r |
acaf905b | 2 | # Copyright (C) 2000-2012 Free Software Foundation, Inc.\r |
8af54a64 | 3 | #\r |
eef0be9e | 4 | # Top level makefile for building GNU Emacs on Windows NT\r |
8af54a64 | 5 | #\r |
eef0be9e GM |
6 | # This file is part of GNU Emacs.\r |
7 | \r | |
8 | # GNU Emacs is free software: you can redistribute it and/or modify\r | |
9 | # it under the terms of the GNU General Public License as published by\r | |
10 | # the Free Software Foundation, either version 3 of the License, or\r | |
11 | # (at your option) any later version.\r | |
12 | \r | |
13 | # GNU Emacs is distributed in the hope that it will be useful,\r | |
14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of\r | |
15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r | |
16 | # GNU General Public License for more details.\r | |
17 | \r | |
18 | # You should have received a copy of the GNU General Public License\r | |
19 | # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.\r | |
20 | \r | |
8af54a64 | 21 | \r |
7e5f4e57 EZ |
22 | # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out\r |
23 | # (and remove or replace this comment).\r | |
24 | \r | |
9723e05a | 25 | VERSION = 24.0.96\r |
e3aef5c6 | 26 | \r |
5904117d | 27 | TMP_DIST_DIR = emacs-$(VERSION)\r |
4ad28e27 | 28 | \r |
8af54a64 | 29 | TRES = $(BLD)/emacs.res\r |
99e0bf59 | 30 | CLIENTRES = $(BLD)/emacsclient.res\r |
8af54a64 | 31 | \r |
b47342e3 EZ |
32 | XMFLAGS =\r |
33 | \r | |
8af54a64 AI |
34 | ALL = addpm ddeclient runemacs cmdproxy addsection preprep\r |
35 | \r | |
36 | .PHONY: $(ALL)\r | |
37 | \r | |
b47342e3 EZ |
38 | \r |
39 | addpm: stamp_BLD $(BLD)/addpm.exe\r | |
8af54a64 AI |
40 | $(BLD)/addpm.exe: $(BLD)/addpm.$(O)\r |
41 | $(LINK) $(LINK_OUT)$@ \\r | |
7207c1a9 JR |
42 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) \\r |
43 | $(USER32) $(OLE32) $(UUID) $(SHELL32)\r | |
8af54a64 | 44 | \r |
b47342e3 | 45 | ddeclient: stamp_BLD $(BLD)/ddeclient.exe\r |
8af54a64 AI |
46 | $(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O)\r |
47 | $(LINK) $(LINK_OUT)$@ \\r | |
48 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)\r | |
49 | \r | |
b47342e3 | 50 | cmdproxy: stamp_BLD $(BLD)/cmdproxy.exe\r |
8af54a64 AI |
51 | $(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O)\r |
52 | $(LINK) $(LINK_OUT)$@ \\r | |
53 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)\r | |
54 | \r | |
b47342e3 | 55 | addsection: stamp_BLD $(BLD)/addsection.exe\r |
8af54a64 AI |
56 | $(BLD)/addsection.exe: $(BLD)/addsection.$(O)\r |
57 | $(LINK) $(LINK_OUT)$@ \\r | |
58 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)\r | |
59 | \r | |
b47342e3 | 60 | preprep: stamp_BLD $(BLD)/preprep.exe\r |
8af54a64 AI |
61 | $(BLD)/preprep.exe: $(BLD)/preprep.$(O)\r |
62 | $(LINK) $(LINK_OUT)$@ \\r | |
63 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS)\r | |
64 | \r | |
65 | #\r | |
66 | # The resource file. NT 3.10 requires the use of cvtres; even though\r | |
67 | # it is not necessary on later versions, it is still ok to use it.\r | |
68 | #\r | |
480a77b5 | 69 | $(TRES): emacs.rc icons/emacs.ico emacs.manifest stamp_BLD\r |
99e0bf59 JR |
70 | $(RC) $(RC_OUT)$(TRES) emacs.rc\r |
71 | \r | |
72 | $(CLIENTRES): emacsclient.rc stamp_BLD\r | |
73 | $(RC) $(RC_OUT)$(CLIENTRES) emacsclient.rc\r | |
8af54a64 | 74 | \r |
b47342e3 | 75 | runemacs: stamp_BLD $(BLD)/runemacs.exe\r |
8af54a64 AI |
76 | $(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES)\r |
77 | $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \\r | |
78 | $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)\r | |
79 | \r | |
80 | which-sh:\r | |
81 | @echo Using $(THE_SHELL) as shell.\r | |
82 | \r | |
b47342e3 EZ |
83 | # These depend on stamp_BLD to make sure the $(BLD) directory is created\r |
84 | # before the compilation begins, even if Make runs several commands\r | |
85 | # in parallel under "make -j".\r | |
86 | #\r | |
87 | $(BLD)/addpm.$(O) $(BLD)/ddeclient.$(O) $(BLD)/runemacs.$(O) $(BLD)/cmdproxy.$(O) $(BLD)/addsection.$(O) $(BLD)/preprep.$(O): stamp_BLD\r | |
32d0013e | 88 | \r |
8af54a64 AI |
89 | #\r |
90 | # Build emacs\r | |
91 | #\r | |
4cbb903f | 92 | all: which-sh stamp_BLD $(ALL) $(CLIENTRES) maybe-bootstrap all-other-dirs-$(MAKETYPE)\r |
8af54a64 | 93 | \r |
32d0013e | 94 | all-other-dirs-nmake: addsection\r |
f915f0f7 EZ |
95 | cd ..\lib\r |
96 | $(MAKE) $(MFLAGS) all\r | |
8af54a64 | 97 | cd ..\lib-src\r |
d572c005 | 98 | $(MAKE) $(MFLAGS) all\r |
8af54a64 | 99 | cd ..\src\r |
d572c005 | 100 | $(MAKE) $(MFLAGS) all\r |
8af54a64 | 101 | cd ..\lisp\r |
d572c005 | 102 | $(MAKE) $(MFLAGS) all\r |
8af54a64 | 103 | cd ..\leim\r |
d572c005 | 104 | $(MAKE) $(MFLAGS) all\r |
8af54a64 AI |
105 | cd ..\nt\r |
106 | \r | |
32d0013e | 107 | all-other-dirs-gmake: addsection\r |
f915f0f7 | 108 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib all\r |
b47342e3 EZ |
109 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src all\r |
110 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src all\r | |
111 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp all\r | |
112 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim all\r | |
8af54a64 AI |
113 | \r |
114 | recompile: recompile-$(MAKETYPE)\r | |
115 | \r | |
116 | recompile-nmake:\r | |
117 | cd ..\lisp\r | |
d572c005 | 118 | $(MAKE) $(MFLAGS) recompile\r |
8af54a64 AI |
119 | cd ..\nt\r |
120 | \r | |
121 | recompile-gmake:\r | |
b47342e3 | 122 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp recompile\r |
8af54a64 AI |
123 | \r |
124 | #### Bootstrapping.\r | |
125 | \r | |
126 | ### This is meant for Emacs maintainers only. It first cleans the\r | |
127 | ### lisp subdirectory, removing all compiled Lisp files. Then a\r | |
128 | ### special emacs executable is built from Lisp sources, which is then\r | |
129 | ### used to compile Lisp files. The last step is a "normal" make.\r | |
130 | \r | |
c3c57777 JR |
131 | maybe-bootstrap: maybe-bootstrap-$(SHELLTYPE)\r |
132 | \r | |
133 | # dummy target to force other targets to be evaluated.\r | |
134 | doit:\r | |
135 | \r | |
136 | maybe-bootstrap-CMD: doit\r | |
d5ef6196 | 137 | @echo .\r |
c3c57777 JR |
138 | @if not EXIST ..\lisp\abbrev.elc echo Essential Lisp files seem to be missing. You should either\r |
139 | @if not EXIST ..\lisp\abbrev.elc echo do 'make bootstrap' or create 'lisp/abbrev.elc' somehow\r | |
d5ef6196 | 140 | @echo .\r |
c3c57777 JR |
141 | @if not EXIST ..\lisp\abbrev.elc exit -1\r |
142 | \r | |
143 | maybe-bootstrap-SH: doit\r | |
144 | @if [ ! -f ../lisp/abbrev.elc ] ; then \\r | |
145 | echo; \\r | |
146 | echo "Essential Lisp files seem to be missing. You should either"; \\r | |
147 | echo "do \`make bootstrap' or create \`lisp/abbrev.elc' somehow."; \\r | |
148 | echo; \\r | |
149 | exit -1; \\r | |
150 | fi\r | |
151 | \r | |
f37b8e41 EZ |
152 | # Bootstrap depends on cmdproxy because some Lisp functions\r |
153 | # loaded during bootstrap may need to run shell commands.\r | |
154 | bootstrap: addsection cmdproxy bootstrap-$(MAKETYPE)\r | |
55b5878d | 155 | $(MAKE) $(MFLAGS) $(XMFLAGS) all\r |
8af54a64 | 156 | \r |
f37b8e41 | 157 | bootstrap-nmake: addsection cmdproxy\r |
8af54a64 AI |
158 | cd ..\lisp\r |
159 | $(MAKE) $(MFLAGS) bootstrap-clean\r | |
160 | cd ..\src\r | |
161 | $(MAKE) $(MFLAGS) clean\r | |
162 | cd ..\lib-src\r | |
d37f40ed | 163 | $(MAKE) $(MFLAGS) clean make-docfile\r |
f915f0f7 | 164 | cd ..\lib\r |
1e338cfc | 165 | $(MAKE) $(MFLAGS) clean all\r |
8af54a64 AI |
166 | cd ..\src\r |
167 | $(MAKE) $(MFLAGS) bootstrap\r | |
168 | $(MAKE) $(MFLAGS) bootstrap-clean\r | |
128c1013 | 169 | cd ..\nt\r |
f37b8e41 | 170 | $(CP) $(BLD)/cmdproxy.exe ../bin\r |
8af54a64 | 171 | cd ..\lisp\r |
73dfa0bf | 172 | $(MAKE) $(MFLAGS) SHELL=$(SHELLTYPE) bootstrap\r |
dc728514 JB |
173 | cd ..\lib-src\r |
174 | $(MAKE) $(MFLAGS) DOC\r | |
8af54a64 AI |
175 | cd ..\nt\r |
176 | \r | |
f37b8e41 | 177 | bootstrap-gmake: addsection cmdproxy\r |
b47342e3 EZ |
178 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap-clean\r |
179 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src clean\r | |
d37f40ed | 180 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src clean make-docfile\r |
1e338cfc | 181 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib clean all\r |
d572c005 | 182 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src bootstrap\r |
b47342e3 | 183 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src bootstrap-clean\r |
f37b8e41 | 184 | $(CP) $(BLD)/cmdproxy.exe ../bin\r |
b47342e3 EZ |
185 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap\r |
186 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src DOC\r | |
8af54a64 AI |
187 | \r |
188 | bootstrap-clean: bootstrap-clean-$(MAKETYPE)\r | |
189 | \r | |
190 | bootstrap-clean-nmake:\r | |
191 | cd ..\src\r | |
192 | $(MAKE) $(MFLAGS) bootstrap-clean\r | |
f915f0f7 EZ |
193 | cd ..\lib\r |
194 | $(MAKE) $(MFLAGS) clean\r | |
8af54a64 AI |
195 | cd ..\lisp\r |
196 | $(MAKE) $(MFLAGS) bootstrap-clean\r | |
197 | \r | |
198 | bootstrap-clean-gmake:\r | |
b47342e3 | 199 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src bootstrap-clean\r |
f915f0f7 | 200 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib clean\r |
b47342e3 | 201 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap-clean\r |
8af54a64 AI |
202 | \r |
203 | $(INSTALL_DIR):\r | |
204 | - mkdir "$(INSTALL_DIR)"\r | |
205 | \r | |
206 | $(INSTALL_DIR)/bin: $(INSTALL_DIR)\r | |
207 | - mkdir "$(INSTALL_DIR)/bin"\r | |
208 | \r | |
209 | #\r | |
210 | # Build and install emacs in INSTALL_DIR\r | |
211 | #\r | |
e3aef5c6 CS |
212 | .PHONY: install-bin install-shortcuts\r |
213 | \r | |
214 | install: install-bin install-shortcuts\r | |
215 | \r | |
216 | install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE)\r | |
8af54a64 AI |
217 | - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin\r |
218 | - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin\r | |
219 | - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin\r | |
4ad28e27 | 220 | - $(CP) README.W32 $(INSTALL_DIR)\r |
e5a69fd0 EZ |
221 | - $(DEL) ../$(DIRNAME)_same-dir.tst\r |
222 | - $(DEL) $(INSTALL_DIR)/$(DIRNAME)_same-dir.tst\r | |
223 | echo SameDirTest > "$(INSTALL_DIR)/$(DIRNAME)_same-dir.tst"\r | |
8af54a64 AI |
224 | - mkdir "$(INSTALL_DIR)/etc"\r |
225 | - mkdir "$(INSTALL_DIR)/info"\r | |
226 | - mkdir "$(INSTALL_DIR)/lock"\r | |
227 | - mkdir "$(INSTALL_DIR)/data"\r | |
228 | - mkdir "$(INSTALL_DIR)/site-lisp"\r | |
229 | - mkdir "$(INSTALL_DIR)/etc/icons"\r | |
230 | $(IFNOTSAMEDIR) $(CP) ../site-lisp/subdirs.el $(INSTALL_DIR)/site-lisp $(ENDIF)\r | |
231 | $(IFNOTSAMEDIR) $(CP_DIR) ../etc $(INSTALL_DIR) $(ENDIF)\r | |
232 | - $(CP_DIR) icons $(INSTALL_DIR)/etc\r | |
233 | $(IFNOTSAMEDIR) $(CP_DIR) ../info $(INSTALL_DIR) $(ENDIF)\r | |
da3ef617 JR |
234 | $(IFNOTSAMEDIR) $(CP) ../COPYING $(INSTALL_DIR) $(ENDIF)\r |
235 | - $(CP) ../COPYING $(INSTALL_DIR)/bin\r | |
e5a69fd0 EZ |
236 | - $(DEL) ../$(DIRNAME)_same-dir.tst\r |
237 | - $(DEL) $(INSTALL_DIR)/$(DIRNAME)_same-dir.tst\r | |
8af54a64 | 238 | \r |
e5a69fd0 | 239 | install-other-dirs-nmake: all\r |
8af54a64 AI |
240 | cd ..\lib-src\r |
241 | $(MAKE) $(MFLAGS) install\r | |
242 | cd ..\src\r | |
243 | $(MAKE) $(MFLAGS) install\r | |
244 | cd ..\lisp\r | |
245 | $(MAKE) $(MFLAGS) install\r | |
246 | cd ..\leim\r | |
247 | $(MAKE) $(MFLAGS) install\r | |
248 | cd ..\nt\r | |
249 | \r | |
e5a69fd0 | 250 | install-other-dirs-gmake: all\r |
b47342e3 EZ |
251 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src install\r |
252 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src install\r | |
253 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install\r | |
254 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install\r | |
8af54a64 | 255 | \r |
e5a69fd0 EZ |
256 | install-shortcuts: $(INSTALL_DIR)/bin\r |
257 | - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin\r | |
e3aef5c6 CS |
258 | "$(INSTALL_DIR)/bin/addpm" -q\r |
259 | \r | |
d452256d CS |
260 | maybe-copy-distfiles: maybe-copy-distfiles-$(SHELLTYPE)\r |
261 | \r | |
e5a69fd0 | 262 | maybe-copy-distfiles-CMD: create-tmp-dist-dir doit\r |
e645df7c | 263 | @if not $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin\r |
d452256d | 264 | \r |
e5a69fd0 | 265 | maybe-copy-distfiles-SH: create-tmp-dist-dir doit\r |
e645df7c | 266 | @if [ ! $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" ] ; then \\r |
2dbe4d71 | 267 | $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin ; \\r |
d452256d CS |
268 | fi\r |
269 | \r | |
270 | create-tmp-dist-dir:\r | |
271 | mkdir "$(TMP_DIST_DIR)"\r | |
272 | # Also create bin directory for dist files.\r | |
273 | mkdir "$(TMP_DIST_DIR)/bin"\r | |
274 | \r | |
e5a69fd0 | 275 | dist: install-bin maybe-copy-distfiles\r |
e0d6af9c CS |
276 | $(CP) "$(INSTALL_DIR)/BUGS" $(TMP_DIST_DIR)\r |
277 | $(CP) "$(INSTALL_DIR)/COPYING" $(TMP_DIST_DIR)\r | |
278 | $(CP) "$(INSTALL_DIR)/README" $(TMP_DIST_DIR)\r | |
279 | $(CP) "$(INSTALL_DIR)/README.W32" $(TMP_DIST_DIR)\r | |
e0d6af9c CS |
280 | $(CP_DIR) "$(INSTALL_DIR)/bin" $(TMP_DIST_DIR)\r |
281 | $(CP_DIR) "$(INSTALL_DIR)/etc" $(TMP_DIST_DIR)\r | |
282 | $(CP_DIR) "$(INSTALL_DIR)/info" $(TMP_DIST_DIR)\r | |
283 | $(CP_DIR) "$(INSTALL_DIR)/lisp" $(TMP_DIST_DIR)\r | |
284 | $(CP_DIR) "$(INSTALL_DIR)/leim" $(TMP_DIST_DIR)\r | |
285 | $(CP_DIR) "$(INSTALL_DIR)/site-lisp" $(TMP_DIST_DIR)\r | |
4ad28e27 CS |
286 | $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(VERSION)$(ARGQUOTE)\r |
287 | $(DEL_TREE) $(TMP_DIST_DIR)\r | |
e3aef5c6 | 288 | \r |
fd1f2f1e | 289 | force-info:\r |
d038b84d | 290 | # Note that doc/emacs/makefile knows how to\r |
fd1f2f1e JR |
291 | # put the info files in $(infodir),\r |
292 | # so we can do ok running make in the build dir.\r | |
5eb3d2a5 JR |
293 | info: force-info info-$(MAKETYPE)\r |
294 | \r | |
295 | info-nmake:\r | |
d038b84d | 296 | cd ..\doc\emacs\r |
5eb3d2a5 | 297 | $(MAKE) $(MFLAGS) info\r |
059d1e66 | 298 | cd ..\misc\r |
5eb3d2a5 | 299 | $(MAKE) $(MFLAGS) info\r |
059d1e66 | 300 | cd ..\lispref\r |
d038b84d | 301 | $(MAKE) $(MFLAGS) info\r |
059d1e66 | 302 | cd ..\lispintro\r |
5eb3d2a5 | 303 | $(MAKE) $(MFLAGS) info\r |
059d1e66 | 304 | cd $(MAKEDIR)\r |
5eb3d2a5 JR |
305 | \r |
306 | info-gmake:\r | |
d038b84d GM |
307 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/emacs info\r |
308 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/misc info\r | |
309 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispref info\r | |
310 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispintro info\r | |
8af54a64 AI |
311 | #\r |
312 | # Maintenance\r | |
177c0ea7 | 313 | #\r |
8af54a64 | 314 | clean: clean-other-dirs-$(MAKETYPE)\r |
f37b8e41 | 315 | - $(DEL) $(COMPILER_TEMP_FILES)\r |
8af54a64 | 316 | - $(DEL_TREE) $(OBJDIR)\r |
e313b518 | 317 | - $(DEL) stamp_BLD\r |
8af54a64 AI |
318 | - $(DEL) ../etc/DOC ../etc/DOC-X\r |
319 | \r | |
320 | clean-other-dirs-nmake:\r | |
f915f0f7 EZ |
321 | cd ..\lib\r |
322 | $(MAKE) $(MFLAGS) clean\r | |
8af54a64 AI |
323 | cd ..\lib-src\r |
324 | $(MAKE) $(MFLAGS) clean\r | |
325 | cd ..\src\r | |
326 | $(MAKE) $(MFLAGS) clean\r | |
d038b84d | 327 | cd ..\doc\lispintro\r |
fd1f2f1e | 328 | $(MAKE) $(MFLAGS) clean\r |
a6fc3b5c | 329 | cd ..\lispref\r |
fd1f2f1e | 330 | $(MAKE) $(MFLAGS) clean\r |
a6fc3b5c | 331 | cd ..\..\leim\r |
8af54a64 | 332 | $(MAKE) $(MFLAGS) clean\r |
d038b84d GM |
333 | cd ..\doc\emacs\r |
334 | $(MAKE) $(MFLAGS) clean\r | |
a6fc3b5c | 335 | cd ..\misc\r |
fd1f2f1e | 336 | $(MAKE) $(MFLAGS) clean\r |
a6fc3b5c | 337 | cd ..\..\nt\r |
8af54a64 AI |
338 | \r |
339 | clean-other-dirs-gmake:\r | |
f915f0f7 | 340 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib clean\r |
b47342e3 EZ |
341 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src clean\r |
342 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src clean\r | |
b47342e3 | 343 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim clean\r |
cc48598c JR |
344 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/emacs clean\r |
345 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/misc clean\r | |
346 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispintro clean\r | |
347 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispref clean\r | |
8af54a64 AI |
348 | \r |
349 | cleanall-other-dirs-nmake:\r | |
f915f0f7 EZ |
350 | cd ..\lib\r |
351 | $(MAKE) $(MFLAGS) cleanall\r | |
8af54a64 AI |
352 | cd ..\lib-src\r |
353 | $(MAKE) $(MFLAGS) cleanall\r | |
354 | cd ..\src\r | |
355 | $(MAKE) $(MFLAGS) cleanall\r | |
356 | cd ..\nt\r | |
357 | \r | |
358 | cleanall-other-dirs-gmake:\r | |
f915f0f7 | 359 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib cleanall\r |
b47342e3 EZ |
360 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src cleanall\r |
361 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src cleanall\r | |
8af54a64 | 362 | \r |
f37b8e41 EZ |
363 | # We used to delete *~ here, but that might inadvertently remove\r |
364 | # precious files if it happens to match their short 8+3 aliases.\r | |
8af54a64 AI |
365 | cleanall: clean cleanall-other-dirs-$(MAKETYPE)\r |
366 | - $(DEL_TREE) obj\r | |
367 | - $(DEL_TREE) obj-spd\r | |
368 | - $(DEL_TREE) oo\r | |
369 | - $(DEL_TREE) oo-spd\r | |
370 | \r | |
cc48598c JR |
371 | top-distclean:\r |
372 | - $(DEL) $(COMPILER_TEMP_FILES)\r | |
373 | - $(DEL_TREE) obj\r | |
374 | - $(DEL_TREE) obj-spd\r | |
375 | - $(DEL_TREE) oo\r | |
376 | - $(DEL_TREE) oo-spd\r | |
377 | - $(DEL) stamp_BLD\r | |
378 | - $(DEL) ../etc/DOC ../etc/DOC-X\r | |
379 | - $(DEL) config.log Makefile\r | |
d24076a6 | 380 | - $(DEL) ../README.W32\r |
cc48598c JR |
381 | \r |
382 | distclean: distclean-other-dirs-$(MAKETYPE) top-distclean\r | |
383 | \r | |
384 | distclean-other-dirs-nmake:\r | |
f915f0f7 EZ |
385 | cd ..\lib\r |
386 | $(MAKE) $(MFLAGS) distclean\r | |
cc48598c JR |
387 | cd ..\lib-src\r |
388 | $(MAKE) $(MFLAGS) distclean\r | |
389 | cd ..\src\r | |
390 | $(MAKE) $(MFLAGS) distclean\r | |
391 | cd ..\lisp\r | |
392 | $(MAKE) $(MFLAGS) distclean\r | |
393 | cd ..\leim\r | |
394 | $(MAKE) $(MFLAGS) distclean\r | |
395 | cd ..\doc\emacs\r | |
396 | $(MAKE) $(MFLAGS) distclean\r | |
a6fc3b5c | 397 | cd ..\misc\r |
cc48598c | 398 | $(MAKE) $(MFLAGS) distclean\r |
a6fc3b5c | 399 | cd ..\lispintro\r |
cc48598c | 400 | $(MAKE) $(MFLAGS) distclean\r |
a6fc3b5c | 401 | cd ..\lispref\r |
cc48598c | 402 | $(MAKE) $(MFLAGS) distclean\r |
a6fc3b5c | 403 | cd ..\..\nt\r |
cc48598c JR |
404 | \r |
405 | distclean-other-dirs-gmake:\r | |
f915f0f7 | 406 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib distclean\r |
cc48598c JR |
407 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src distclean\r |
408 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src distclean\r | |
409 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp distclean\r | |
410 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim distclean\r | |
411 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/emacs distclean\r | |
412 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/misc distclean\r | |
413 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispintro distclean\r | |
414 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispref distclean\r | |
415 | \r | |
416 | maintainer-clean: maintainer-clean-other-dirs-$(MAKETYPE) top-distclean\r | |
417 | \r | |
418 | maintainer-clean-other-dirs-nmake:\r | |
f915f0f7 EZ |
419 | cd ..\lib\r |
420 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
cc48598c JR |
421 | cd ..\lib-src\r |
422 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
423 | cd ..\src\r | |
424 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
425 | cd ..\lisp\r | |
426 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
427 | cd ..\leim\r | |
428 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
429 | cd ..\doc\emacs\r | |
430 | $(MAKE) $(MFLAGS) maintainer-clean\r | |
a6fc3b5c | 431 | cd ..\misc\r |
cc48598c | 432 | $(MAKE) $(MFLAGS) maintainer-clean\r |
a6fc3b5c | 433 | cd ..\lispintro\r |
cc48598c | 434 | $(MAKE) $(MFLAGS) maintainer-clean\r |
a6fc3b5c | 435 | cd ..\lispref\r |
cc48598c | 436 | $(MAKE) $(MFLAGS) maintainer-clean\r |
a6fc3b5c | 437 | cd ..\..\nt\r |
cc48598c JR |
438 | \r |
439 | maintainer-clean-other-dirs-gmake:\r | |
f915f0f7 | 440 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib maintainer-clean\r |
cc48598c JR |
441 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src maintainer-clean\r |
442 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src maintainer-clean\r | |
443 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp maintainer-clean\r | |
444 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim maintainer-clean\r | |
445 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/emacs maintainer-clean\r | |
446 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/misc maintainer-clean\r | |
447 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispintro maintainer-clean\r | |
448 | $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispref maintainer-clean\r | |
449 | \r | |
8af54a64 AI |
450 | realclean: cleanall\r |
451 | - $(DEL_TREE) ../bin\r | |
73077a9a EZ |
452 | \r |
453 | TAGS: TAGS-$(MAKETYPE)\r | |
454 | \r | |
455 | frc:\r | |
456 | TAGS-gmake: frc\r | |
457 | ../lib-src/$(BLD)/etags $(CURDIR)/*.c\r | |
458 | $(MAKE) $(MFLAGS) -C ../src TAGS TAGS-LISP\r | |
459 | $(MAKE) $(MFLAGS) -C ../lib-src TAGS\r | |
f915f0f7 | 460 | $(MAKE) $(MFLAGS) -C ../lib TAGS\r |
73077a9a EZ |
461 | \r |
462 | TAGS-nmake:\r | |
463 | echo This target is not supported with NMake\r | |
464 | \r | |
465 | .PHONY: frc\r |