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 = make-docfile hexl ctags etags movemail ebrowse sorted-doc digest-doc emacsclient 24 25.PHONY: $(ALL) 26 27VERSION = 22.1 28 29LOCAL_FLAGS = -DWINDOWSNT -DDOS_NT -DSTDC_HEADERS=1 -DNO_LDAV=1 \ 30 -DNO_ARCHIVES=1 -DHAVE_CONFIG_H=1 -I../nt/inc \ 31 -I../src 32 33LIBS = $(BASE_LIBS) $(ADVAPI32) 34 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) 39$(BLD)/fakemail.exe: $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O) 40 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/fakemail.$(O) $(BLD)/ntlib.$(O) $(LIBS) 41$(BLD)/sorted-doc.exe: $(BLD)/sorted-doc.$(O) 42 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/sorted-doc.$(O) $(LIBS) 43$(BLD)/digest-doc.exe: $(BLD)/digest-doc.$(O) 44 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/digest-doc.$(O) $(LIBS) 45$(BLD)/test-distrib.exe: $(BLD)/test-distrib.$(O) 46 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(BLD)/test-distrib.$(O) $(LIBS) 47 48make-docfile: stamp_BLD $(BLD)/make-docfile.exe 49ctags: stamp_BLD $(BLD)/ctags.exe 50etags: stamp_BLD $(BLD)/etags.exe 51ebrowse: stamp_BLD $(BLD)/ebrowse.exe 52hexl: stamp_BLD $(BLD)/hexl.exe 53movemail: stamp_BLD $(BLD)/movemail.exe 54fakemail: stamp_BLD $(BLD)/fakemail.exe 55sorted-doc: stamp_BLD $(BLD)/sorted-doc.exe 56digest-doc: stamp_BLD $(BLD)/digest-doc.exe 57emacsclient: stamp_BLD $(BLD)/emacsclient.exe $(BLD)/emacsclientw.exe 58 59test-distrib: stamp_BLD $(BLD)/test-distrib.exe 60 "$(BLD)/test-distrib.exe" "$(SRC)/testfile" 61 62GETOPTOBJS = $(BLD)/getopt.$(O) $(BLD)/getopt1.$(O) 63GETOPTDEPS = $(GETOPTOBJS) getopt.h 64MOVEMAILOBJS = $(BLD)/movemail.$(O) \ 65 $(BLD)/pop.$(O) \ 66 $(BLD)/ntlib.$(O) \ 67 $(GETOPTOBJS) 68 69$(BLD)/movemail.exe: $(MOVEMAILOBJS) getopt.h 70# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib 71 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(MOVEMAILOBJS) $(WSOCK32) $(LIBS) 72 73ECLIENT_CFLAGS = -DHAVE_GETCWD -DHAVE_STRERROR -DVERSION="\"$(VERSION)\"" 74ECLIENTOBJS = $(BLD)/emacsclient.$(O) \ 75 $(BLD)/getopt.$(O) \ 76 $(BLD)/getopt1.$(O) \ 77 $(BLD)/ntlib.$(O) 78TRES = ../nt/$(BLD)/emacs.res 79 80$(TRES): ../nt/emacs.rc 81 $(RC) $(RC_OUT)../nt/$(BLD)/emacs.res $(ALL_DEPS) 82 83$(BLD)/emacsclient.exe: $(ECLIENTOBJS) 84# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib 85 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ECLIENTOBJS) $(WSOCK32) $(USER32) $(LIBS) 86 87$(BLD)/emacsclientw.exe: $(ECLIENTOBJS) $(TRES) 88# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib 89 $(LINK) $(LINK_OUT)$@ $(TRES) -mwindows $(LINK_FLAGS) $(ECLIENTOBJS) $(WSOCK32) $(USER32) $(LIBS) 90 91# emacsclient.$(O) depends on makefile.w32-in because makefile.w32-in 92# can be edited to define VERSION string, which is part of ECLIENT_CFLAGS. 93$(BLD)/emacsclient.$(O): emacsclient.c makefile.w32-in 94 $(CC) $(CFLAGS) $(ECLIENT_CFLAGS) $(CC_OUT)$@ emacsclient.c 95 96ETAGSOBJ = $(BLD)/etags.$(O) \ 97 $(BLD)/getopt.$(O) \ 98 $(BLD)/getopt1.$(O) \ 99 $(BLD)/ntlib.$(O) \ 100 $(BLD)/regex.$(O) 101 102$(BLD)/etags.exe: $(ETAGSOBJ) 103 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS) 104 105 106EBROWSEOBJ = $(BLD)/ebrowse.$(O) \ 107 $(BLD)/getopt.$(O) \ 108 $(BLD)/getopt1.$(O) \ 109 $(BLD)/ntlib.$(O) 110 111$(BLD)/ebrowse.exe: $(EBROWSEOBJ) 112 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(EBROWSEOBJ) $(LIBS) 113 114$(BLD)/regex.$(O): ../src/regex.c ../src/regex.h ../src/config.h 115 $(CC) $(CFLAGS) -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \ 116 ../src/regex.c $(CC_OUT)$@ 117 118ETAGS_CFLAGS = -DHAVE_GETCWD 119$(BLD)/etags.$(O): etags.c 120 $(CC) $(CFLAGS) $(ETAGS_CFLAGS) $(CC_OUT)$@ etags.c 121 122CTAGSOBJ = $(BLD)/ctags.$(O) \ 123 $(BLD)/getopt.$(O) \ 124 $(BLD)/getopt1.$(O) \ 125 $(BLD)/ntlib.$(O) \ 126 $(BLD)/regex.$(O) 127 128$(BLD)/ctags.exe: $(CTAGSOBJ) 129 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $(CTAGSOBJ) $(LIBS) 130 131ctags.c: etags.c 132 - $(DEL) ctags.c 133 $(CP) etags.c ctags.c 134 135CTAGS_CFLAGS = -DCTAGS $(ETAGS_CFLAGS) 136$(BLD)/ctags.$(O): ctags.c 137 $(CC) $(CFLAGS) $(CTAGS_CFLAGS) $(CC_OUT)$@ ctags.c 138 139# 140# From ..\src\Makefile.in 141# It doesn't matter if the real name is *.obj for the files in this list, 142# make-docfile blindly replaces .o with .c anyway. Keep .o in this list 143# as it is required by code in doc.c. 144# 145obj= sunfns.o dosfns.o msdos.o \ 146 xterm.o xfns.o xmenu.o xselect.o xrdb.o fringe.o image.o \ 147 mac.o macterm.o macfns.o macmenu.o fontset.o \ 148 w32.o w32bdf.o w32console.o w32fns.o w32heap.o w32inevt.o \ 149 w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o \ 150 dispnew.o frame.o scroll.o xdisp.o window.o \ 151 charset.o coding.o category.o ccl.o \ 152 cm.o term.o xfaces.o \ 153 emacs.o keyboard.o macros.o keymap.o sysdep.o \ 154 buffer.o filelock.o insdel.o marker.o \ 155 minibuf.o fileio.o dired.o filemode.o \ 156 cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o \ 157 alloc.o data.o doc.o editfns.o callint.o \ 158 eval.o floatfns.o fns.o print.o lread.o \ 159 abbrev.o syntax.o bytecode.o \ 160 process.o callproc.o \ 161 region-cache.o sound.o atimer.o \ 162 doprnt.o strftime.o intervals.o textprop.o composite.o md5.o 163 164# 165# These are the lisp files that are loaded up in loadup.el 166# 167lispsource = ../lisp/ 168 169MOUSE_SUPPORT = $(lispsource)select.elc $(lispsource)scroll-bar.elc $(lispsource)mouse.elc $(lispsource)tooltip.elc 170WINNT_SUPPORT = $(lispsource)ls-lisp.elc $(lispsource)disp-table.elc $(lispsource)w32-fns.elc $(lispsource)dos-w32.elc $(lispsource)w32-vars.elc 171 172# lisp files that are loaded up on other platforms 173MSDOS_SUPPORT = $(lispsource)dos-fns.elc $(lispsource)dos-vars.elc $(lispsource)international/ccl.elc $(lispsource)international/codepage.elc 174VMS_SUPPORT = $(lispsource)vmsproc.elc $(lispsource)vms-patch.elc 175 176lisp1= \ 177 $(lispsource)abbrev.elc \ 178 $(lispsource)buff-menu.elc \ 179 $(lispsource)button.elc \ 180 $(lispsource)emacs-lisp/byte-run.elc \ 181 $(lispsource)cus-face.elc \ 182 $(lispsource)cus-start.elc \ 183 $(lispsource)custom.elc \ 184 $(lispsource)emacs-lisp/backquote.elc \ 185 $(lispsource)emacs-lisp/lisp-mode.elc \ 186 $(lispsource)emacs-lisp/lisp.elc \ 187 $(lispsource)facemenu.elc \ 188 $(MOUSE_SUPPORT) \ 189 $(lispsource)faces.elc \ 190 $(lispsource)files.elc \ 191 $(lispsource)emacs-lisp/float-sup.elc \ 192 $(lispsource)format.elc \ 193 $(lispsource)frame.elc \ 194 $(lispsource)help.elc \ 195 $(lispsource)indent.elc \ 196 $(lispsource)isearch.elc \ 197 $(lispsource)rfn-eshadow.elc \ 198 $(lispsource)loadup.el \ 199 $(lispsource)loaddefs.el \ 200 $(lispsource)bindings.elc \ 201 $(lispsource)emacs-lisp/map-ynp.elc \ 202 $(lispsource)env.elc \ 203 $(lispsource)international/mule.elc \ 204 $(lispsource)international/mule-conf.el \ 205 $(lispsource)international/mule-cmds.elc \ 206 $(lispsource)international/characters.elc \ 207 $(lispsource)international/ucs-tables.elc \ 208 $(lispsource)international/utf-8.elc \ 209 $(lispsource)international/utf-16.elc \ 210 $(lispsource)international/latin-1.el \ 211 $(lispsource)international/latin-2.el \ 212 $(lispsource)international/latin-3.el \ 213 $(lispsource)international/latin-4.el \ 214 $(lispsource)international/latin-5.el \ 215 $(lispsource)international/latin-8.el \ 216 $(lispsource)international/latin-9.el \ 217 $(lispsource)fringe.elc \ 218 $(lispsource)image.elc \ 219 $(lispsource)international/fontset.elc \ 220 $(lispsource)dnd.elc \ 221 $(lispsource)mwheel.elc \ 222 $(lispsource)tool-bar.elc \ 223 $(lispsource)case-table.elc 224 225lisp2 = \ 226 $(lispsource)language/chinese.elc \ 227 $(lispsource)language/cyrillic.elc \ 228 $(lispsource)language/indian.elc \ 229 $(lispsource)language/devanagari.el \ 230 $(lispsource)language/kannada.el \ 231 $(lispsource)language/malayalam.el \ 232 $(lispsource)language/tamil.el \ 233 $(lispsource)language/english.el \ 234 $(lispsource)language/ethiopic.elc \ 235 $(lispsource)language/european.elc \ 236 $(lispsource)language/czech.el \ 237 $(lispsource)language/slovak.el \ 238 $(lispsource)language/romanian.el \ 239 $(lispsource)language/greek.el \ 240 $(lispsource)language/hebrew.el \ 241 $(lispsource)language/japanese.el \ 242 $(lispsource)language/korean.el \ 243 $(lispsource)language/lao.el \ 244 $(lispsource)language/thai.el \ 245 $(lispsource)language/tibetan.elc \ 246 $(lispsource)language/vietnamese.elc \ 247 $(lispsource)language/misc-lang.el \ 248 $(lispsource)language/utf-8-lang.el \ 249 $(lispsource)language/georgian.el \ 250 $(lispsource)menu-bar.elc \ 251 $(lispsource)paths.el \ 252 $(lispsource)register.elc \ 253 $(lispsource)replace.elc \ 254 $(lispsource)simple.elc \ 255 $(lispsource)startup.elc \ 256 $(lispsource)subr.elc \ 257 $(lispsource)term/tty-colors.elc \ 258 $(lispsource)font-core.elc \ 259 $(lispsource)emacs-lisp/syntax.elc \ 260 $(lispsource)font-lock.elc \ 261 $(lispsource)jit-lock.elc \ 262 $(lispsource)textmodes/fill.elc \ 263 $(lispsource)textmodes/page.elc \ 264 $(lispsource)textmodes/paragraphs.elc \ 265 $(lispsource)textmodes/text-mode.elc \ 266 $(lispsource)emacs-lisp/timer.elc \ 267 $(lispsource)vc-hooks.elc \ 268 $(lispsource)jka-cmpr-hook.elc \ 269 $(lispsource)ediff-hook.elc \ 270 $(VMS_SUPPORT) \ 271 $(MSDOS_SUPPORT) \ 272 $(WINNT_SUPPORT) \ 273 $(lispsource)widget.elc \ 274 $(lispsource)window.elc \ 275 $(lispsource)version.el 276 277# This is needed the first time we build the tree, since temacs.exe 278# does not exist yet, and the DOC rule needs it to rebuild DOC whenever 279# Emacs is rebuilt. 280../src/$(BLD)/temacs.exe: 281 - mkdir "../src/$(OBJDIR)" 282 - mkdir "../src/$(BLD)" 283 @echo temacs > temacs.exe 284 $(CP) temacs.exe ../src/$(BLD) 285 - $(DEL) temacs.exe 286 287DOC = DOC 288$(DOC): stamp_BLD $(BLD)/make-docfile.exe ../src/$(BLD)/temacs.exe $(lisp1) $(lisp2) 289 - $(DEL) $(DOC) 290 "$(THISDIR)/$(BLD)/make-docfile" -o $(DOC) -d ../src $(obj) 291 "$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp1) 292 "$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp2) 293 $(CP) $(DOC) ../etc/DOC-X 294 - mkdir "../src/$(OBJDIR)" 295 - mkdir "../src/$(OBJDIR)/etc" 296 $(CP) $(DOC) ../src/$(OBJDIR)/etc/DOC-X 297 298{$(BLD)}.$(O){$(BLD)}.exe: 299 $(LINK) $(LINK_OUT)$@ $(LINK_FLAGS) $*.$(O) $(LIBS) 300 301# 302# Build the executables 303# 304all: stamp_BLD $(ALL) $(DOC) 305 306# 307# Assuming INSTALL_DIR is defined, build and install emacs in it. 308# 309INSTALL_FILES = $(ALL) 310install: $(INSTALL_FILES) 311 - mkdir "$(INSTALL_DIR)/bin" 312 $(CP) $(BLD)/etags.exe $(INSTALL_DIR)/bin 313 $(CP) $(BLD)/ebrowse.exe $(INSTALL_DIR)/bin 314 $(CP) $(BLD)/ctags.exe $(INSTALL_DIR)/bin 315 $(CP) $(BLD)/hexl.exe $(INSTALL_DIR)/bin 316 $(CP) $(BLD)/movemail.exe $(INSTALL_DIR)/bin 317 $(CP) $(BLD)/sorted-doc.exe $(INSTALL_DIR)/bin 318 $(CP) $(BLD)/digest-doc.exe $(INSTALL_DIR)/bin 319 $(CP) $(BLD)/emacsclient.exe $(INSTALL_DIR)/bin 320 $(CP) $(BLD)/emacsclientw.exe $(INSTALL_DIR)/bin 321 - mkdir "$(INSTALL_DIR)/etc" 322 $(CP) $(DOC) $(INSTALL_DIR)/etc 323 324# 325# Maintenance 326# 327clean: 328 - $(DEL) *~ DOC* $(COMPILER_TEMP_FILES) 329 - $(DEL) ctags.c 330 - $(DEL) getopt.h 331 - $(DEL_TREE) $(OBJDIR) 332 - $(DEL) stamp_BLD 333 334cleanall: clean 335 - $(DEL_TREE) obj 336 - $(DEL_TREE) obj-spd 337 - $(DEL_TREE) oo 338 - $(DEL_TREE) oo-spd 339 340# 341# Headers we would preprocess if we could. 342# 343../src/config.h: ../nt/$(CONFIG_H) 344 echo $(CONFIG_H) has changed. Re-run configure.bat. 345 exit -1 346 347getopt.h: getopt_.h 348 $(CP) $(ALL_DEPS) $@ 349 350### DEPENDENCIES ### 351 352EMACS_ROOT = .. 353SRC = . 354 355$(BLD)/alloca.$(O) : \ 356 $(SRC)/alloca.c \ 357 $(EMACS_ROOT)/src/s/ms-w32.h \ 358 $(EMACS_ROOT)/src/m/intel386.h \ 359 $(EMACS_ROOT)/src/config.h \ 360 $(EMACS_ROOT)/src/blockinput.h 361 362$(BLD)/b2m.$(O) : \ 363 $(SRC)/b2m.c \ 364 $(EMACS_ROOT)/src/s/ms-w32.h \ 365 $(EMACS_ROOT)/src/m/intel386.h \ 366 $(EMACS_ROOT)/lib-src/../src/config.h 367 368$(BLD)/ctags.$(O) : \ 369 $(SRC)/ctags.c \ 370 $(EMACS_ROOT)/nt/inc/sys/param.h \ 371 $(EMACS_ROOT)/src/s/ms-w32.h \ 372 $(EMACS_ROOT)/src/m/intel386.h \ 373 $(EMACS_ROOT)/lib-src/../src/config.h \ 374 $(SRC)/ntlib.h \ 375 $(SRC)/getopt.h 376 377$(BLD)/digest-doc.$(O) : \ 378 $(SRC)/digest-doc.c 379 380$(BLD)/emacsclient.$(O) : \ 381 $(SRC)/emacsclient.c \ 382 $(EMACS_ROOT)/src/s/ms-w32.h \ 383 $(EMACS_ROOT)/src/m/intel386.h \ 384 $(EMACS_ROOT)/lib-src/../src/config.h 385 386$(BLD)/etags.$(O) : \ 387 $(SRC)/etags.c \ 388 $(EMACS_ROOT)/nt/inc/sys/param.h \ 389 $(EMACS_ROOT)/src/s/ms-w32.h \ 390 $(EMACS_ROOT)/src/m/intel386.h \ 391 $(EMACS_ROOT)/lib-src/../src/config.h \ 392 $(SRC)/ntlib.h \ 393 $(SRC)/getopt.h 394 395$(BLD)/fakemail.$(O) : \ 396 $(SRC)/fakemail.c \ 397 $(SRC)/ntlib.h \ 398 $(EMACS_ROOT)/src/s/ms-w32.h \ 399 $(EMACS_ROOT)/src/m/intel386.h \ 400 $(EMACS_ROOT)/lib-src/../src/config.h \ 401 $(EMACS_ROOT)/nt/inc/pwd.h 402 403$(BLD)/getdate.$(O) : \ 404 $(SRC)/getdate.c \ 405 $(EMACS_ROOT)/src/s/ms-w32.h \ 406 $(EMACS_ROOT)/src/m/intel386.h \ 407 $(EMACS_ROOT)/src/config.h \ 408 $(MSTOOLS_SYS)/types.h 409 410$(BLD)/getopt.$(O) : \ 411 $(SRC)/getopt.c \ 412 $(EMACS_ROOT)/src/s/ms-w32.h \ 413 $(EMACS_ROOT)/src/m/intel386.h \ 414 $(EMACS_ROOT)/src/config.h \ 415 $(SRC)/ntlib.h \ 416 $(SRC)/getopt.h 417 418$(BLD)/getopt1.$(O) : \ 419 $(SRC)/getopt1.c \ 420 $(EMACS_ROOT)/src/s/ms-w32.h \ 421 $(EMACS_ROOT)/src/m/intel386.h \ 422 $(EMACS_ROOT)/src/config.h \ 423 $(SRC)/getopt.h 424 425$(BLD)/hexl.$(O) : \ 426 $(SRC)/hexl.c 427 428$(BLD)/leditcfns.$(O) : \ 429 $(SRC)/leditcfns.c 430 431$(BLD)/make-docfile.$(O) : \ 432 $(SRC)/make-docfile.c \ 433 $(EMACS_ROOT)/src/config.h 434 435$(BLD)/make-path.$(O) : \ 436 $(SRC)/make-path.c 437 438$(BLD)/movemail.$(O) : \ 439 $(SRC)/movemail.c \ 440 $(EMACS_ROOT)/src/s/ms-w32.h \ 441 $(EMACS_ROOT)/src/m/intel386.h \ 442 $(EMACS_ROOT)/lib-src/../src/config.h \ 443 $(EMACS_ROOT)/nt/inc/sys/file.h \ 444 $(EMACS_ROOT)/lib-src/../src/syswait.h \ 445 $(EMACS_ROOT)/nt/inc/pwd.h \ 446 $(SRC)/ntlib.h 447 $(CC) $(CFLAGS) -DUSG $(CC_OUT)$@ movemail.c 448 449$(BLD)/ntlib.$(O) : \ 450 $(SRC)/ntlib.c \ 451 $(SRC)/ntlib.h \ 452 $(EMACS_ROOT)/nt/inc/pwd.h 453 454$(BLD)/pop.$(O) : \ 455 $(SRC)/pop.c \ 456 $(SRC)/pop.h \ 457 $(SRC)/ntlib.h 458 459$(BLD)/profile.$(O) : \ 460 $(SRC)/profile.c \ 461 $(EMACS_ROOT)/src/s/ms-w32.h \ 462 $(EMACS_ROOT)/src/m/intel386.h \ 463 $(EMACS_ROOT)/lib-src/../src/config.h \ 464 $(EMACS_ROOT)/lib-src/../src/systime.h 465 466$(BLD)/qsort.$(O) : \ 467 $(SRC)/qsort.c 468 469$(BLD)/sorted-doc.$(O) : \ 470 $(SRC)/sorted-doc.c \ 471 $(EMACS_ROOT)/src/s/ms-w32.h \ 472 $(EMACS_ROOT)/src/m/intel386.h \ 473 $(EMACS_ROOT)/src/config.h \ 474 475$(BLD)/tcp.$(O) : \ 476 $(SRC)/tcp.c 477 478$(BLD)/test-distrib.$(O) : \ 479 $(SRC)/test-distrib.c 480 481$(BLD)/timer.$(O) : \ 482 $(SRC)/timer.c \ 483 $(EMACS_ROOT)/src/s/ms-w32.h \ 484 $(EMACS_ROOT)/src/m/intel386.h \ 485 $(EMACS_ROOT)/lib-src/../src/config.h 486 487# The following dependencies are for supporting parallel builds, where 488# we must make sure $(BLD) exists before any compilation starts. 489# 490$(BLD)/make-docfile.$(O) $(BLD)/hexl.$(O) $(BLD)/fakemail.$(O): stamp_BLD 491 492$(BLD)/sorted-doc.$(O) $(BLD)/digest-doc.$(O): stamp_BLD 493 494$(BLD)/test-distrib.$(O) $(GETOPTOBJS) $(MOVEMAILOBJS): stamp_BLD 495 496$(BLD)/emacsclient.$(O) $(BLD)/etags.$(O) $(BLD)/regex.$(O): stamp_BLD 497 498$(BLD)/ebrowse.$(O) $(BLD)/ctags.$(O): stamp_BLD 499