comparison nt/xemacs.mak @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents 6719134a07c2
children 2f8bb876ab1d
comparison
equal deleted inserted replaced
397:f4aeb21a5bad 398:74fd4e045ea6
22 # Boston, MA 02111-1307, USA. 22 # Boston, MA 02111-1307, USA.
23 # 23 #
24 # Synched up with: Not in FSF. 24 # Synched up with: Not in FSF.
25 # 25 #
26 26
27 # Shell escape character. Used for escaping ', ` and " in commands.
28 ESC=^
29
30 XEMACS=.. 27 XEMACS=..
31 LISP=$(XEMACS)\lisp 28 LISP=$(XEMACS)\lisp
32 MODULES=$(XEMACS)\modules 29 MODULES=$(XEMACS)\modules
33 NT=$(XEMACS)\nt 30 NT=$(XEMACS)\nt
34 OUTDIR=$(NT)\obj 31 OUTDIR=$(NT)\obj
32
33 # Define a variable for the 'del' command to use
34 DEL=-del
35 35
36 # Program name and version 36 # Program name and version
37 37
38 !include "..\version.sh" 38 !include "..\version.sh"
39 39
118 HAVE_MSW_C_DIRED=1 118 HAVE_MSW_C_DIRED=1
119 !endif 119 !endif
120 !if !defined(HAVE_NATIVE_SOUND) 120 !if !defined(HAVE_NATIVE_SOUND)
121 HAVE_NATIVE_SOUND=1 121 HAVE_NATIVE_SOUND=1
122 !endif 122 !endif
123 !if !defined(HAVE_WIDGETS)
124 HAVE_WIDGETS=1
125 !endif
123 !if !defined(DEBUG_XEMACS) 126 !if !defined(DEBUG_XEMACS)
124 DEBUG_XEMACS=0 127 DEBUG_XEMACS=0
125 !endif 128 !endif
126 !if !defined(USE_UNION_TYPE) 129 !if !defined(USE_UNION_TYPE)
127 USE_UNION_TYPE=0 130 USE_UNION_TYPE=0
128 !endif 131 !endif
132 !if !defined(USE_MINITAR)
133 USE_MINITAR=1
134 !endif
129 !if !defined(USE_MINIMAL_TAGBITS) 135 !if !defined(USE_MINIMAL_TAGBITS)
130 USE_MINIMAL_TAGBITS=0 136 USE_MINIMAL_TAGBITS=0
131 !endif 137 !endif
132 !if !defined(USE_INDEXED_LRECORD_IMPLEMENTATION) 138 !if !defined(USE_INDEXED_LRECORD_IMPLEMENTATION)
133 USE_INDEXED_LRECORD_IMPLEMENTATION=0 139 USE_INDEXED_LRECORD_IMPLEMENTATION=0
134 !endif 140 !endif
141 !if !defined(USE_PORTABLE_DUMPER)
142 USE_PORTABLE_DUMPER=0
143 !endif
144 !if !defined(GUNG_HO)
145 GUNG_HO=0
146 !endif
147
148 # A little bit of adhockery. Default to use system malloc and
149 # DLL version of the C runtime library when using portable
150 # dumping. These are the optimal settings.
151 !if !defined(USE_SYSTEM_MALLOC)
152 USE_SYSTEM_MALLOC=$(USE_PORTABLE_DUMPER)
153 !endif
154 !if !defined(USE_CRTDLL)
155 USE_CRTDLL=$(USE_PORTABLE_DUMPER)
156 !endif
135 157
136 # 158 #
137 # System configuration 159 # System configuration
138 # 160 #
139 !if !defined(OS) 161 !if !defined(OS)
140 OS=Windows_95/98 162 OS=Windows_95/98
141 # command.com doesn't like or need '^' as an escape character
142 ESC=
143 EMACS_CONFIGURATION=i586-pc-win32 163 EMACS_CONFIGURATION=i586-pc-win32
144 !else if "$(PROCESSOR_ARCHITECTURE)" == "x86" 164 !else if "$(PROCESSOR_ARCHITECTURE)" == "x86"
145 EMACS_CONFIGURATION=i586-pc-win32 165 EMACS_CONFIGURATION=i586-pc-win32
146 !else if "$(PROCESSOR_ARCHITECTURE)" == "MIPS" 166 !else if "$(PROCESSOR_ARCHITECTURE)" == "MIPS"
147 EMACS_CONFIGURATION=mips-pc-win32 167 EMACS_CONFIGURATION=mips-pc-win32
159 CONFIG_ERROR=0 179 CONFIG_ERROR=0
160 !if $(INFODOCK) && !exist("..\..\Infodock.rules") 180 !if $(INFODOCK) && !exist("..\..\Infodock.rules")
161 !message Cannot build InfoDock without InfoDock sources 181 !message Cannot build InfoDock without InfoDock sources
162 CONFIG_ERROR=1 182 CONFIG_ERROR=1
163 !endif 183 !endif
184 !if !$(USE_PORTABLE_DUMPER) && $(USE_SYSTEM_MALLOC)
185 !message Cannot use system allocator when dumping old way, use portable dumper.
186 CONFIG_ERROR=1
187 !endif
188 !if !$(USE_PORTABLE_DUMPER) && $(USE_CRTDLL)
189 !message Cannot use C runtime DLL when dumping old way, use portable dumper.
190 CONFIG_ERROR=1
191 !endif
192 !if !$(USE_SYSTEM_MALLOC) && $(USE_CRTDLL)
193 !message GNU malloc currently cannot be used with CRT DLL.
194 !message [[[Developer note: If you want to fix it, read Q112297 first]]] ####
195 CONFIG_ERROR=1
196 !endif
164 !if !$(HAVE_MSW) && !$(HAVE_X) 197 !if !$(HAVE_MSW) && !$(HAVE_X)
165 !message Please specify at least one HAVE_MSW=1 and/or HAVE_X=1 198 !message Please specify at least one HAVE_MSW=1 and/or HAVE_X=1
166 CONFIG_ERROR=1 199 CONFIG_ERROR=1
167 !endif 200 !endif
168 !if $(HAVE_X) && !defined(X11_DIR) 201 !if $(HAVE_X) && !defined(X11_DIR)
236 USE_MINIMAL_TAGBITS=$(GUNG_HO) 269 USE_MINIMAL_TAGBITS=$(GUNG_HO)
237 USE_INDEXED_LRECORD_IMPLEMENTATION=$(GUNG_HO) 270 USE_INDEXED_LRECORD_IMPLEMENTATION=$(GUNG_HO)
238 !endif 271 !endif
239 272
240 # 273 #
241 # Small configuration report 274 # Compiler command echo control. Define VERBOSECC=1 to get verbose compilation.
242 #
243 !if !defined(CONF_REPORT_ALREADY_PRINTED)
244 !if [set CONF_REPORT_ALREADY_PRINTED=1]
245 !endif
246 !message ------------------------------------------------
247 !message XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename) configured for "$(EMACS_CONFIGURATION)".
248 !message
249 !message Installation directory is "$(INSTALL_DIR)".
250 !message Package path is "$(PACKAGE_PATH)".
251 !message
252 !if $(INFODOCK)
253 !message Building InfoDock.
254 !endif
255 !if $(HAVE_MSW)
256 !message Compiling in support for native GUI.
257 !endif
258 !if $(HAVE_X)
259 !message Compiling in support for X-Windows.
260 !endif
261 !if $(HAVE_MULE)
262 !message Compiling in MULE.
263 !endif
264 !if $(HAVE_XPM)
265 !message Compiling in support for XPM images.
266 !endif
267 !if $(HAVE_GIF)
268 !message Compiling in support for GIF images.
269 !endif
270 !if $(HAVE_PNG)
271 !message Compiling in support for PNG images.
272 !endif
273 !if $(HAVE_TIFF)
274 !message Compiling in support for TIFF images.
275 !endif
276 !if $(HAVE_JPEG)
277 !message Compiling in support for JPEG images.
278 !endif
279 !if $(HAVE_XFACE)
280 !message Compiling in support for X-Face message headers.
281 !endif
282 !if $(HAVE_TOOLBARS)
283 !message Compiling in support for toolbars.
284 !endif
285 !if $(HAVE_DIALOGS)
286 !message Compiling in support for dialogs.
287 !endif
288 !if $(HAVE_NATIVE_SOUND)
289 !message Compiling in support for native sounds.
290 !endif
291 !if $(HAVE_MSW_C_DIRED)
292 # Define HAVE_MSW_C_DIRED to be non-zero if you want XEmacs to use C
293 # primitives to significantly speed up dired, at the expense of an
294 # additional ~4KB of code.
295 !message Compiling in fast dired implementation.
296 !endif
297 !if $(USE_MINIMAL_TAGBITS)
298 !message Using minimal tagbits.
299 !endif
300 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION)
301 !message Using indexed lrecord implementation.
302 !endif
303 !if $(USE_UNION_TYPE)
304 !message Using union type for Lisp object storage.
305 !endif
306 !if $(DEBUG_XEMACS)
307 !message Compiling in extra debug checks. XEmacs will be slow!
308 !endif
309 !message ------------------------------------------------
310 !message
311 !endif # !defined(CONF_REPORT_ALREADY_PRINTED)
312
313 #
314 # Compiler command echo control. Define VERBOSECC=1 to get vebose compilation.
315 # 275 #
316 !if !defined(VERBOSECC) 276 !if !defined(VERBOSECC)
317 VERBOSECC=0 277 VERBOSECC=0
318 !endif 278 !endif
319 !if $(VERBOSECC) 279 !if $(VERBOSECC)
326 OPT=-Od -Zi 286 OPT=-Od -Zi
327 !else 287 !else
328 OPT=-O2 -G5 288 OPT=-O2 -G5
329 !endif 289 !endif
330 290
331 CFLAGS=-nologo -W3 $(OPT) 291 !if $(USE_CRTDLL)
292 !if $(DEBUG_XEMACS)
293 C_LIBFLAG=-MDd
294 LIBC_LIB=msvcrtd.lib
295 !else
296 C_LIBFLAG=-MD
297 LIBC_LIB=msvcrt.lib
298 !endif
299 !else
300 C_LIBFLAG=-ML
301 LIBC_LIB=libc.lib
302 !endif
303
304 CFLAGS=-nologo -W3 $(OPT) $(C_LIBFLAG)
332 305
333 !if $(HAVE_X) 306 !if $(HAVE_X)
334 X_DEFINES=-DHAVE_X_WINDOWS 307 X_DEFINES=-DHAVE_X_WINDOWS
335 X_INCLUDES=-I$(X11_DIR)\include 308 X_INCLUDES=-I$(X11_DIR)\include
336 X_LIBS=-libpath:$(X11_DIR)\lib Xaw.lib Xmu.lib Xt.lib SM.lib ICE.lib Xext.lib X11.lib 309 X_LIBS=-libpath:$(X11_DIR)\lib Xaw.lib Xmu.lib Xt.lib SM.lib ICE.lib Xext.lib X11.lib
384 !if $(HAVE_DIALOGS) 357 !if $(HAVE_DIALOGS)
385 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_DIALOGS 358 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_DIALOGS
386 MSW_DIALOG_SRC=$(XEMACS)\src\dialog.c $(XEMACS)\src\dialog-msw.c 359 MSW_DIALOG_SRC=$(XEMACS)\src\dialog.c $(XEMACS)\src\dialog-msw.c
387 MSW_DIALOG_OBJ=$(OUTDIR)\dialog.obj $(OUTDIR)\dialog-msw.obj 360 MSW_DIALOG_OBJ=$(OUTDIR)\dialog.obj $(OUTDIR)\dialog-msw.obj
388 !endif 361 !endif
362 !if $(HAVE_WIDGETS)
363 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_WIDGETS
364 !endif
389 !if $(HAVE_NATIVE_SOUND) 365 !if $(HAVE_NATIVE_SOUND)
390 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_NATIVE_SOUND 366 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_NATIVE_SOUND
391 !endif 367 !endif
392 !endif 368 !endif
393 369
406 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION) 382 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION)
407 LRECORD_DEFINES=-DUSE_INDEXED_LRECORD_IMPLEMENTATION 383 LRECORD_DEFINES=-DUSE_INDEXED_LRECORD_IMPLEMENTATION
408 !endif 384 !endif
409 !if $(USE_UNION_TYPE) 385 !if $(USE_UNION_TYPE)
410 UNION_DEFINES=-DUSE_UNION_TYPE 386 UNION_DEFINES=-DUSE_UNION_TYPE
387 !endif
388
389 !if $(USE_PORTABLE_DUMPER)
390 DUMPER_DEFINES=-DPDUMP
391 !endif
392
393 !if $(USE_SYSTEM_MALLOC)
394 MALLOC_DEFINES=-DSYSTEM_MALLOC
395 !else
396 MALLOC_DEFINES=-DGNU_MALLOC
411 !endif 397 !endif
412 398
413 # Hard-coded paths 399 # Hard-coded paths
414 400
415 !if $(INFODOCK) 401 !if $(INFODOCK)
424 410
425 INCLUDES=$(X_INCLUDES) $(MSW_INCLUDES) -I$(XEMACS)\nt\inc -I$(XEMACS)\src -I$(XEMACS)\lwlib 411 INCLUDES=$(X_INCLUDES) $(MSW_INCLUDES) -I$(XEMACS)\nt\inc -I$(XEMACS)\src -I$(XEMACS)\lwlib
426 412
427 DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) \ 413 DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) \
428 $(TAGBITS_DEFINES) $(LRECORD_DEFINES) $(UNION_DEFINES) \ 414 $(TAGBITS_DEFINES) $(LRECORD_DEFINES) $(UNION_DEFINES) \
415 $(DUMPER_DEFINES) $(MALLOC_DEFINES) \
429 -DWIN32 -D_WIN32 -DWIN32_LEAN_AND_MEAN -DWINDOWSNT -Demacs \ 416 -DWIN32 -D_WIN32 -DWIN32_LEAN_AND_MEAN -DWINDOWSNT -Demacs \
430 -DHAVE_CONFIG_H $(PROGRAM_DEFINES) $(PATH_DEFINES) 417 -DHAVE_CONFIG_H $(PROGRAM_DEFINES) $(PATH_DEFINES)
431
432 #
433 # Creating simplified versions of Installation and Installation.el
434 #
435 # Some values cannot be written on the same line with
436 # their key, since they cannot be put inside an echo command.
437 # Macro substitution (:"=\", :\=\\) can be performed on values in order
438 # to create a legal string in LISP for Installation.el.
439 #
440 !if [echo OS: $(OS)>Installation] ||\
441 [echo XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename:"=\") configured for $(ESC)`$(EMACS_CONFIGURATION)$(ESC)'.>>Installation] ||\
442 [echo Where should the build process find the source code?>>Installation] ||\
443 [echo $(MAKEDIR:\=\\)>>Installation]
444 !endif
445 # Compiler Information
446 !if defined(CCV) &&\
447 [echo What compiler should XEmacs be built with?>>Installation] &&\
448 [echo $(CC) $(CFLAGS)>>Installation]
449 !endif
450 # Window System Information
451 !if [echo What window system should XEmacs use?>>Installation]
452 !endif
453 !if (defined (HAVE_X) && $(HAVE_X) == 1)
454 !if [echo X11>>Installation]
455 !endif
456 !endif
457 !if (defined (HAVE_MSW) && $(HAVE_MSW) == 1)
458 !if [echo MS Windows>>Installation]
459 !endif
460 !endif
461 # Creation of Installation.el
462 !if [type Installation] ||\
463 [echo (setq Installation-string $(ESC)">Installation.el] ||\
464 [type Installation >>Installation.el] ||\
465 [echo $(ESC)")>>Installation.el]
466 !endif
467
468 418
469 #------------------------------------------------------------------------------ 419 #------------------------------------------------------------------------------
470 420
471 default: $(OUTDIR)\nul all 421 default: $(OUTDIR)\nul all
472 422
474 -@mkdir $(OUTDIR) 424 -@mkdir $(OUTDIR)
475 425
476 XEMACS_INCLUDES=\ 426 XEMACS_INCLUDES=\
477 $(XEMACS)\src\config.h \ 427 $(XEMACS)\src\config.h \
478 $(XEMACS)\src\Emacs.ad.h \ 428 $(XEMACS)\src\Emacs.ad.h \
479 $(XEMACS)\src\paths.h \ 429 $(XEMACS)\src\paths.h
480 $(XEMACS)\src\puresize-adjust.h
481 430
482 $(XEMACS)\src\config.h: config.h 431 $(XEMACS)\src\config.h: config.h
483 copy config.h $(XEMACS)\src 432 copy config.h $(XEMACS)\src
484 433
485 $(XEMACS)\src\Emacs.ad.h: Emacs.ad.h 434 $(XEMACS)\src\Emacs.ad.h: Emacs.ad.h
486 copy Emacs.ad.h $(XEMACS)\src 435 copy Emacs.ad.h $(XEMACS)\src
487 436
488 $(XEMACS)\src\paths.h: paths.h 437 $(XEMACS)\src\paths.h: paths.h
489 copy paths.h $(XEMACS)\src 438 copy paths.h $(XEMACS)\src
490 439
491 $(XEMACS)\src\puresize-adjust.h: puresize-adjust.h
492 copy puresize-adjust.h $(XEMACS)\src
493
494 #------------------------------------------------------------------------------ 440 #------------------------------------------------------------------------------
495 441
496 # lib-src programs 442 # lib-src programs
497 443
498 LIB_SRC = $(XEMACS)\lib-src 444 LIB_SRC = $(XEMACS)\lib-src
503 # 449 #
504 CONFIG_VALUES = $(LIB_SRC)\config.values 450 CONFIG_VALUES = $(LIB_SRC)\config.values
505 !if [echo Creating $(CONFIG_VALUES) && echo ;;; Do not edit this file!>$(CONFIG_VALUES)] 451 !if [echo Creating $(CONFIG_VALUES) && echo ;;; Do not edit this file!>$(CONFIG_VALUES)]
506 !endif 452 !endif
507 # MAKEDIR has to be made into a string. 453 # MAKEDIR has to be made into a string.
508 !if [echo blddir>>$(CONFIG_VALUES) && echo $(ESC)"$(MAKEDIR:\=\\)\\..$(ESC)">>$(CONFIG_VALUES)] 454 #!if [echo blddir>>$(CONFIG_VALUES) && echo $(ESC)"$(MAKEDIR:\=\\)\\..$(ESC)">>$(CONFIG_VALUES)]
509 !endif 455 !if [echo blddir>>$(CONFIG_VALUES) && echo "$(MAKEDIR:\=\\)\\..">>$(CONFIG_VALUES)]
510 !if [echo CC>>$(CONFIG_VALUES) && echo $(ESC)"$(CC:\=\\)$(ESC)">>$(CONFIG_VALUES)] 456 !endif
511 !endif 457 !if [echo CC>>$(CONFIG_VALUES) && echo "$(CC:\=\\)">>$(CONFIG_VALUES)]
512 !if [echo CFLAGS>>$(CONFIG_VALUES) && echo $(ESC)"$(CFLAGS:\=\\)$(ESC)">>$(CONFIG_VALUES)] 458 !endif
513 !endif 459 !if [echo CFLAGS>>$(CONFIG_VALUES) && echo "$(CFLAGS:\=\\)">>$(CONFIG_VALUES)]
514 !if [echo CPP>>$(CONFIG_VALUES) && echo $(ESC)"$(CPP:\=\\)$(ESC)">>$(CONFIG_VALUES)] 460 !endif
515 !endif 461 !if [echo CPP>>$(CONFIG_VALUES) && echo "$(CPP:\=\\)">>$(CONFIG_VALUES)]
516 !if [echo CPPFLAGS>>$(CONFIG_VALUES) && echo $(ESC)"$(CPPFLAGS:\=\\)$(ESC)">>$(CONFIG_VALUES)] 462 !endif
517 !endif 463 !if [echo CPPFLAGS>>$(CONFIG_VALUES) && echo "$(CPPFLAGS:\=\\)">>$(CONFIG_VALUES)]
518 !if [echo LISPDIR>>$(CONFIG_VALUES) && echo $(ESC)"$(MAKEDIR:\=\\)\\$(LISP:\=\\)$(ESC)">>$(CONFIG_VALUES)] 464 !endif
465 !if [echo LISPDIR>>$(CONFIG_VALUES) && echo "$(MAKEDIR:\=\\)\\$(LISP:\=\\)">>$(CONFIG_VALUES)]
519 !endif 466 !endif
520 # PATH_PACKAGEPATH is already a quoted string. 467 # PATH_PACKAGEPATH is already a quoted string.
521 !if [echo PACKAGE_PATH>>$(CONFIG_VALUES) && echo $(PATH_PACKAGEPATH)>>$(CONFIG_VALUES)] 468 !if [echo PACKAGE_PATH>>$(CONFIG_VALUES) && echo $(PATH_PACKAGEPATH)>>$(CONFIG_VALUES)]
522 !endif 469 !endif
523 470
524 # Inferred rule 471 # Inferred rule
525 {$(LIB_SRC)}.c{$(LIB_SRC)}.exe : 472 {$(LIB_SRC)}.c{$(LIB_SRC)}.exe :
526 @cd $(LIB_SRC) 473 cd $(LIB_SRC)
527 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no 474 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no
528 @cd $(NT) 475 cd $(NT)
529 476
530 # Individual dependencies 477 # Individual dependencies
531 ETAGS_DEPS = $(LIB_SRC)/getopt.c $(LIB_SRC)/getopt1.c $(LIB_SRC)/../src/regex.c 478 ETAGS_DEPS = $(LIB_SRC)/getopt.c $(LIB_SRC)/getopt1.c $(LIB_SRC)/../src/regex.c
532 $(LIB_SRC)/etags.exe : $(LIB_SRC)/etags.c $(ETAGS_DEPS) 479 $(LIB_SRC)/etags.exe : $(LIB_SRC)/etags.c $(ETAGS_DEPS)
533 $(LIB_SRC)/movemail.exe: $(LIB_SRC)/movemail.c $(LIB_SRC)/pop.c $(ETAGS_DEPS) 480 $(LIB_SRC)/movemail.exe: $(LIB_SRC)/movemail.c $(LIB_SRC)/pop.c $(ETAGS_DEPS)
534 @cd $(LIB_SRC) 481 cd $(LIB_SRC)
535 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** wsock32.lib -link -incremental:no 482 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** wsock32.lib -link -incremental:no
536 @cd $(NT) 483 cd $(NT)
484 $(LIB_SRC)/minitar.exe : $(NT)/minitar.mak $(NT)/minitar.c
485 nmake -nologo -f minitar.mak ZLIB="$(ZLIB_DIR)" NT="$(NT)" LIB_SRC="$(LIB_SRC)"
537 486
538 LIB_SRC_TOOLS = \ 487 LIB_SRC_TOOLS = \
539 $(LIB_SRC)/make-docfile.exe \ 488 $(LIB_SRC)/make-docfile.exe \
540 $(LIB_SRC)/hexl.exe \ 489 $(LIB_SRC)/hexl.exe \
541 $(LIB_SRC)/movemail.exe \ 490 $(LIB_SRC)/movemail.exe \
542 $(LIB_SRC)/mmencode.exe \ 491 $(LIB_SRC)/mmencode.exe \
543 $(LIB_SRC)/sorted-doc.exe \ 492 $(LIB_SRC)/sorted-doc.exe \
544 $(LIB_SRC)/wakeup.exe \ 493 $(LIB_SRC)/wakeup.exe \
545 $(LIB_SRC)/etags.exe 494 $(LIB_SRC)/etags.exe
495 !if $(USE_MINITAR)
496 LIB_SRC_TOOLS = \
497 $(LIB_SRC_TOOLS) \
498 $(LIB_SRC)/minitar.exe
499 !endif
500
501 # Shorthand target
502 minitar: $(LIB_SRC)/minitar.exe
546 503
547 #------------------------------------------------------------------------------ 504 #------------------------------------------------------------------------------
548 505
549 # runxemacs proglet 506 # runxemacs proglet
550 507
557 rc -I$(LIB_SRC) -Fo$@ $** 514 rc -I$(LIB_SRC) -Fo$@ $**
558 515
559 #------------------------------------------------------------------------------ 516 #------------------------------------------------------------------------------
560 517
561 # LASTFILE Library 518 # LASTFILE Library
519
520 !if !$(USE_SYSTEM_MALLOC) || !$(USE_PORTABLE_DUMPER)
562 521
563 LASTFILE=$(OUTDIR)\lastfile.lib 522 LASTFILE=$(OUTDIR)\lastfile.lib
564 LASTFILE_SRC=$(XEMACS)\src 523 LASTFILE_SRC=$(XEMACS)\src
565 LASTFILE_FLAGS=$(CFLAGS) $(INCLUDES) -Fo$@ -Fd$* -c 524 LASTFILE_FLAGS=$(CFLAGS) $(INCLUDES) -Fo$@ -Fd$* -c
566 LASTFILE_OBJS= \ 525 LASTFILE_OBJS= \
569 $(LASTFILE): $(XEMACS_INCLUDES) $(LASTFILE_OBJS) 528 $(LASTFILE): $(XEMACS_INCLUDES) $(LASTFILE_OBJS)
570 link.exe -lib -nologo -out:$@ $(LASTFILE_OBJS) 529 link.exe -lib -nologo -out:$@ $(LASTFILE_OBJS)
571 530
572 $(OUTDIR)\lastfile.obj: $(LASTFILE_SRC)\lastfile.c 531 $(OUTDIR)\lastfile.obj: $(LASTFILE_SRC)\lastfile.c
573 $(CCV) $(LASTFILE_FLAGS) $** 532 $(CCV) $(LASTFILE_FLAGS) $**
533
534 !endif
574 535
575 #------------------------------------------------------------------------------ 536 #------------------------------------------------------------------------------
576 537
577 !if $(HAVE_X) 538 !if $(HAVE_X)
578 539
659 $(XEMACS)\src\floatfns.c \ 620 $(XEMACS)\src\floatfns.c \
660 $(XEMACS)\src\fns.c 621 $(XEMACS)\src\fns.c
661 DOC_SRC3=\ 622 DOC_SRC3=\
662 $(XEMACS)\src\font-lock.c \ 623 $(XEMACS)\src\font-lock.c \
663 $(XEMACS)\src\frame.c \ 624 $(XEMACS)\src\frame.c \
664 $(XEMACS)\src\free-hook.c \
665 $(XEMACS)\src\general.c \ 625 $(XEMACS)\src\general.c \
666 $(XEMACS)\src\glyphs.c \ 626 $(XEMACS)\src\glyphs.c \
667 $(XEMACS)\src\glyphs-eimage.c \ 627 $(XEMACS)\src\glyphs-eimage.c \
668 $(XEMACS)\src\glyphs-widget.c \ 628 $(XEMACS)\src\glyphs-widget.c \
669 $(XEMACS)\src\gmalloc.c \
670 $(XEMACS)\src\gui.c \ 629 $(XEMACS)\src\gui.c \
630 $(XEMACS)\src\gutter.c \
671 $(XEMACS)\src\hash.c \ 631 $(XEMACS)\src\hash.c \
672 $(XEMACS)\src\imgproc.c \ 632 $(XEMACS)\src\imgproc.c \
673 $(XEMACS)\src\indent.c \ 633 $(XEMACS)\src\indent.c \
674 $(XEMACS)\src\insdel.c \ 634 $(XEMACS)\src\insdel.c \
675 $(XEMACS)\src\intl.c \ 635 $(XEMACS)\src\intl.c \
682 DOC_SRC4=\ 642 DOC_SRC4=\
683 $(XEMACS)\src\md5.c \ 643 $(XEMACS)\src\md5.c \
684 $(XEMACS)\src\menubar.c \ 644 $(XEMACS)\src\menubar.c \
685 $(XEMACS)\src\minibuf.c \ 645 $(XEMACS)\src\minibuf.c \
686 $(XEMACS)\src\nt.c \ 646 $(XEMACS)\src\nt.c \
687 $(XEMACS)\src\ntheap.c \
688 $(XEMACS)\src\ntplay.c \ 647 $(XEMACS)\src\ntplay.c \
689 $(XEMACS)\src\ntproc.c \ 648 $(XEMACS)\src\ntproc.c \
690 $(XEMACS)\src\objects.c \ 649 $(XEMACS)\src\objects.c \
691 $(XEMACS)\src\opaque.c \ 650 $(XEMACS)\src\opaque.c \
692 $(XEMACS)\src\print.c \ 651 $(XEMACS)\src\print.c \
698 $(XEMACS)\src\redisplay-output.c \ 657 $(XEMACS)\src\redisplay-output.c \
699 $(XEMACS)\src\redisplay.c \ 658 $(XEMACS)\src\redisplay.c \
700 $(XEMACS)\src\regex.c \ 659 $(XEMACS)\src\regex.c \
701 $(XEMACS)\src\scrollbar.c \ 660 $(XEMACS)\src\scrollbar.c \
702 $(XEMACS)\src\search.c \ 661 $(XEMACS)\src\search.c \
662 $(XEMACS)\src\select.c \
703 $(XEMACS)\src\signal.c \ 663 $(XEMACS)\src\signal.c \
704 $(XEMACS)\src\sound.c 664 $(XEMACS)\src\sound.c
705 DOC_SRC5=\ 665 DOC_SRC5=\
706 $(XEMACS)\src\specifier.c \ 666 $(XEMACS)\src\specifier.c \
707 $(XEMACS)\src\strftime.c \ 667 $(XEMACS)\src\strftime.c \
709 $(XEMACS)\src\syntax.c \ 669 $(XEMACS)\src\syntax.c \
710 $(XEMACS)\src\sysdep.c \ 670 $(XEMACS)\src\sysdep.c \
711 $(XEMACS)\src\termcap.c \ 671 $(XEMACS)\src\termcap.c \
712 $(XEMACS)\src\tparam.c \ 672 $(XEMACS)\src\tparam.c \
713 $(XEMACS)\src\undo.c \ 673 $(XEMACS)\src\undo.c \
714 $(XEMACS)\src\unexnt.c \
715 $(XEMACS)\src\vm-limit.c \
716 $(XEMACS)\src\window.c \ 674 $(XEMACS)\src\window.c \
717 $(XEMACS)\src\widget.c 675 $(XEMACS)\src\widget.c
718 676
719 !if $(HAVE_X) 677 !if $(HAVE_X)
720 DOC_SRC6=\ 678 DOC_SRC6=\
736 $(XEMACS)\src\redisplay-x.c \ 694 $(XEMACS)\src\redisplay-x.c \
737 $(XEMACS)\src\scrollbar-x.c \ 695 $(XEMACS)\src\scrollbar-x.c \
738 $(XEMACS)\src\balloon-x.c \ 696 $(XEMACS)\src\balloon-x.c \
739 $(XEMACS)\src\xgccache.c \ 697 $(XEMACS)\src\xgccache.c \
740 $(XEMACS)\src\xmu.c \ 698 $(XEMACS)\src\xmu.c \
741 $(XEMACS)\src\xselect.c 699 $(XEMACS)\src\select-x.c
742 !endif 700 !endif
743 701
744 !if $(HAVE_MSW) 702 !if $(HAVE_MSW)
745 DOC_SRC7=\ 703 DOC_SRC7=\
746 $(XEMACS)\src\console-msw.c \ 704 $(XEMACS)\src\console-msw.c \
762 720
763 !if $(HAVE_MULE) 721 !if $(HAVE_MULE)
764 DOC_SRC8=\ 722 DOC_SRC8=\
765 $(XEMACS)\src\mule.c \ 723 $(XEMACS)\src\mule.c \
766 $(XEMACS)\src\mule-charset.c \ 724 $(XEMACS)\src\mule-charset.c \
767 $(XEMACS)\src\mule-ccl.c \ 725 $(XEMACS)\src\mule-ccl.c
768 $(XEMACS)\src\mule-coding.c
769 ! if $(HAVE_X) 726 ! if $(HAVE_X)
770 DOC_SRC8=$(DOC_SRC8) $(XEMACS)\src\input-method-xlib.c 727 DOC_SRC8=$(DOC_SRC8) $(XEMACS)\src\input-method-xlib.c
771 ! endif 728 ! endif
772 !endif 729 !endif
773 730
774 !if $(DEBUG_XEMACS) 731 !if $(DEBUG_XEMACS)
775 DOC_SRC9=\ 732 DOC_SRC9=\
776 $(XEMACS)\src\debug.c 733 $(XEMACS)\src\debug.c \
734 $(XEMACS)\src\tests.c
735 !endif
736
737 !if !$(USE_SYSTEM_MALLOC)
738 DOC_SRC10=\
739 $(XEMACS)\src\free-hook.c \
740 $(XEMACS)\src\gmalloc.c \
741 $(XEMACS)\src\ntheap.c \
742 $(XEMACS)\src\vm-limit.c
743 !endif
744
745 !if !$(USE_PORTABLE_DUMPER)
746 DOC_SRC11=\
747 $(XEMACS)\src\unexnt.c
777 !endif 748 !endif
778 749
779 #------------------------------------------------------------------------------ 750 #------------------------------------------------------------------------------
780 751
781 # TEMACS Executable 752 # TEMACS Executable
782 753
783 # This may not exist 754 # This may not exist
784 !if "$(emacs_beta_version)" != "" 755 !if "$(emacs_beta_version)" != ""
785 EMACS_BETA_VERSION=-DEMACS_BETA_VERSION=$(emacs_beta_version) 756 EMACS_BETA_VERSION=-DEMACS_BETA_VERSION=$(emacs_beta_version)
786 !ENDIF 757 !ENDIF
758
759 !if !$(USE_PORTABLE_DUMPER)
760 TEMACS_ENTRYPOINT=-entry:_start
761 !endif
787 762
788 TEMACS_DIR=$(XEMACS)\src 763 TEMACS_DIR=$(XEMACS)\src
789 TEMACS=$(TEMACS_DIR)\temacs.exe 764 TEMACS=$(TEMACS_DIR)\temacs.exe
790 TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc 765 TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc
791 TEMACS_SRC=$(XEMACS)\src 766 TEMACS_SRC=$(XEMACS)\src
792 TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) $(MSW_LIBS) \ 767 TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) $(MSW_LIBS) \
793 kernel32.lib user32.lib gdi32.lib advapi32.lib \ 768 oldnames.lib kernel32.lib user32.lib gdi32.lib advapi32.lib \
794 shell32.lib wsock32.lib winmm.lib libc.lib 769 shell32.lib wsock32.lib winmm.lib winspool.lib $(LIBC_LIB)
795 TEMACS_LFLAGS=-nologo $(LIBRARIES) $(DEBUG_FLAGS) -base:0x1000000\ 770 TEMACS_LFLAGS=-nologo $(LIBRARIES) $(DEBUG_FLAGS) -base:0x1000000\
796 -stack:0x800000 -entry:_start -subsystem:console\ 771 -stack:0x800000 $(TEMACS_ENTRYPOINT) -subsystem:console\
797 -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map \ 772 -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map \
798 -heap:0x00100000 -out:$@ 773 -heap:0x00100000 -out:$@ -nodefaultlib
799 TEMACS_CPP_FLAGS=-ML -c \ 774 TEMACS_CPP_FLAGS=-c \
800 $(CFLAGS) $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \ 775 $(CFLAGS) $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \
801 -DEMACS_MAJOR_VERSION=$(emacs_major_version) \ 776 -DEMACS_MAJOR_VERSION=$(emacs_major_version) \
802 -DEMACS_MINOR_VERSION=$(emacs_minor_version) \ 777 -DEMACS_MINOR_VERSION=$(emacs_minor_version) \
803 $(EMACS_BETA_VERSION) \ 778 $(EMACS_BETA_VERSION) \
804 -DXEMACS_CODENAME=\"$(xemacs_codename)\" \ 779 -DXEMACS_CODENAME=\"$(xemacs_codename)\" \
825 $(OUTDIR)\objects-x.obj \ 800 $(OUTDIR)\objects-x.obj \
826 $(OUTDIR)\redisplay-x.obj \ 801 $(OUTDIR)\redisplay-x.obj \
827 $(OUTDIR)\scrollbar-x.obj \ 802 $(OUTDIR)\scrollbar-x.obj \
828 $(OUTDIR)\xgccache.obj \ 803 $(OUTDIR)\xgccache.obj \
829 $(OUTDIR)\xmu.obj \ 804 $(OUTDIR)\xmu.obj \
830 $(OUTDIR)\xselect.obj 805 $(OUTDIR)\select-x.obj
831 !endif 806 !endif
832 807
833 !if $(HAVE_MSW) 808 !if $(HAVE_MSW)
834 TEMACS_MSW_OBJS=\ 809 TEMACS_MSW_OBJS=\
835 $(OUTDIR)\console-msw.obj \ 810 $(OUTDIR)\console-msw.obj \
851 826
852 !if $(HAVE_MULE) 827 !if $(HAVE_MULE)
853 TEMACS_MULE_OBJS=\ 828 TEMACS_MULE_OBJS=\
854 $(OUTDIR)\mule.obj \ 829 $(OUTDIR)\mule.obj \
855 $(OUTDIR)\mule-charset.obj \ 830 $(OUTDIR)\mule-charset.obj \
856 $(OUTDIR)\mule-ccl.obj \ 831 $(OUTDIR)\mule-ccl.obj
857 $(OUTDIR)\mule-coding.obj
858 ! if $(HAVE_X) 832 ! if $(HAVE_X)
859 TEMACS_MULE_OBJS=\ 833 TEMACS_MULE_OBJS=\
860 $(TEMACS_MULE_OBJS) $(OUTDIR)\input-method-xlib.obj 834 $(TEMACS_MULE_OBJS) $(OUTDIR)\input-method-xlib.obj
861 ! endif 835 ! endif
862 !endif 836 !endif
863 837
864 !if $(DEBUG_XEMACS) 838 !if $(DEBUG_XEMACS)
865 TEMACS_DEBUG_OBJS=\ 839 TEMACS_DEBUG_OBJS=\
866 $(OUTDIR)\debug.obj 840 $(OUTDIR)\debug.obj \
841 $(OUTDIR)\tests.obj
842 !endif
843
844 !if !$(USE_SYSTEM_MALLOC)
845 TEMACS_ALLOC_OBJS=\
846 $(OUTDIR)\free-hook.obj \
847 $(OUTDIR)\gmalloc.obj \
848 $(OUTDIR)\ntheap.obj \
849 $(OUTDIR)\vm-limit.obj
850 !endif
851
852 !if !$(USE_PORTABLE_DUMPER)
853 TEMACS_DUMP_OBJS=\
854 $(OUTDIR)\unexnt.obj
867 !endif 855 !endif
868 856
869 TEMACS_OBJS= \ 857 TEMACS_OBJS= \
870 $(TEMACS_X_OBJS)\ 858 $(TEMACS_X_OBJS)\
871 $(TEMACS_MSW_OBJS)\ 859 $(TEMACS_MSW_OBJS)\
872 $(TEMACS_CODING_OBJS)\ 860 $(TEMACS_CODING_OBJS)\
873 $(TEMACS_MULE_OBJS)\ 861 $(TEMACS_MULE_OBJS)\
874 $(TEMACS_DEBUG_OBJS)\ 862 $(TEMACS_DEBUG_OBJS)\
863 $(TEMACS_ALLOC_OBJS)\
864 $(TEMACS_DUMP_OBJS)\
875 $(OUTDIR)\abbrev.obj \ 865 $(OUTDIR)\abbrev.obj \
876 $(OUTDIR)\alloc.obj \ 866 $(OUTDIR)\alloc.obj \
877 $(OUTDIR)\alloca.obj \ 867 $(OUTDIR)\alloca.obj \
878 $(OUTDIR)\blocktype.obj \ 868 $(OUTDIR)\blocktype.obj \
879 $(OUTDIR)\buffer.obj \ 869 $(OUTDIR)\buffer.obj \
907 $(OUTDIR)\filemode.obj \ 897 $(OUTDIR)\filemode.obj \
908 $(OUTDIR)\floatfns.obj \ 898 $(OUTDIR)\floatfns.obj \
909 $(OUTDIR)\fns.obj \ 899 $(OUTDIR)\fns.obj \
910 $(OUTDIR)\font-lock.obj \ 900 $(OUTDIR)\font-lock.obj \
911 $(OUTDIR)\frame.obj \ 901 $(OUTDIR)\frame.obj \
912 $(OUTDIR)\free-hook.obj \
913 $(OUTDIR)\general.obj \ 902 $(OUTDIR)\general.obj \
914 $(OUTDIR)\glyphs.obj \ 903 $(OUTDIR)\glyphs.obj \
915 $(OUTDIR)\glyphs-eimage.obj \ 904 $(OUTDIR)\glyphs-eimage.obj \
916 $(OUTDIR)\glyphs-widget.obj \ 905 $(OUTDIR)\glyphs-widget.obj \
917 $(OUTDIR)\gmalloc.obj \
918 $(OUTDIR)\gui.obj \ 906 $(OUTDIR)\gui.obj \
907 $(OUTDIR)\gutter.obj \
919 $(OUTDIR)\hash.obj \ 908 $(OUTDIR)\hash.obj \
920 $(OUTDIR)\indent.obj \ 909 $(OUTDIR)\indent.obj \
921 $(OUTDIR)\imgproc.obj \ 910 $(OUTDIR)\imgproc.obj \
922 $(OUTDIR)\insdel.obj \ 911 $(OUTDIR)\insdel.obj \
923 $(OUTDIR)\intl.obj \ 912 $(OUTDIR)\intl.obj \
929 $(OUTDIR)\menubar.obj \ 918 $(OUTDIR)\menubar.obj \
930 $(OUTDIR)\marker.obj \ 919 $(OUTDIR)\marker.obj \
931 $(OUTDIR)\md5.obj \ 920 $(OUTDIR)\md5.obj \
932 $(OUTDIR)\minibuf.obj \ 921 $(OUTDIR)\minibuf.obj \
933 $(OUTDIR)\nt.obj \ 922 $(OUTDIR)\nt.obj \
934 $(OUTDIR)\ntheap.obj \
935 $(OUTDIR)\ntplay.obj \ 923 $(OUTDIR)\ntplay.obj \
936 $(OUTDIR)\ntproc.obj \ 924 $(OUTDIR)\ntproc.obj \
937 $(OUTDIR)\objects.obj \ 925 $(OUTDIR)\objects.obj \
938 $(OUTDIR)\opaque.obj \ 926 $(OUTDIR)\opaque.obj \
939 $(OUTDIR)\print.obj \ 927 $(OUTDIR)\print.obj \
945 $(OUTDIR)\redisplay-output.obj \ 933 $(OUTDIR)\redisplay-output.obj \
946 $(OUTDIR)\redisplay.obj \ 934 $(OUTDIR)\redisplay.obj \
947 $(OUTDIR)\regex.obj \ 935 $(OUTDIR)\regex.obj \
948 $(OUTDIR)\scrollbar.obj \ 936 $(OUTDIR)\scrollbar.obj \
949 $(OUTDIR)\search.obj \ 937 $(OUTDIR)\search.obj \
938 $(OUTDIR)\select.obj \
950 $(OUTDIR)\signal.obj \ 939 $(OUTDIR)\signal.obj \
951 $(OUTDIR)\sound.obj \ 940 $(OUTDIR)\sound.obj \
952 $(OUTDIR)\specifier.obj \ 941 $(OUTDIR)\specifier.obj \
953 $(OUTDIR)\strftime.obj \ 942 $(OUTDIR)\strftime.obj \
954 $(OUTDIR)\symbols.obj \ 943 $(OUTDIR)\symbols.obj \
955 $(OUTDIR)\syntax.obj \ 944 $(OUTDIR)\syntax.obj \
956 $(OUTDIR)\sysdep.obj \ 945 $(OUTDIR)\sysdep.obj \
957 $(OUTDIR)\tparam.obj \ 946 $(OUTDIR)\tparam.obj \
958 $(OUTDIR)\undo.obj \ 947 $(OUTDIR)\undo.obj \
959 $(OUTDIR)\unexnt.obj \
960 $(OUTDIR)\vm-limit.obj \
961 $(OUTDIR)\widget.obj \ 948 $(OUTDIR)\widget.obj \
962 $(OUTDIR)\window.obj \ 949 $(OUTDIR)\window.obj \
963 $(OUTDIR)\xemacs.res 950 $(OUTDIR)\xemacs.res
964 951
965 # Rules 952 # Rules
966 953
967 .SUFFIXES: 954 .SUFFIXES:
968 .SUFFIXES: .c 955 .SUFFIXES: .c .obj .texi .info
969 956
970 # nmake rule 957 # nmake rule
971 !if $(DEBUG_XEMACS) 958 !if $(DEBUG_XEMACS)
972 {$(TEMACS_SRC)}.c{$(OUTDIR)}.obj: 959 {$(TEMACS_SRC)}.c{$(OUTDIR)}.obj:
973 $(CCV) $(TEMACS_CPP_FLAGS) $< -Fo$@ -Fr$*.sbr -Fd$(OUTDIR)\temacs.pdb 960 $(CCV) $(TEMACS_CPP_FLAGS) $< -Fo$@ -Fr$*.sbr -Fd$(OUTDIR)\temacs.pdb
980 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@ 967 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@
981 968
982 $(OUTDIR)\TransientEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c 969 $(OUTDIR)\TransientEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c
983 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TRANSIENT_EMACS_SHELL $** -Fo$@ 970 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TRANSIENT_EMACS_SHELL $** -Fo$@
984 971
985 $(OUTDIR)\alloc.obj: $(TEMACS_SRC)\alloc.c $(TEMACS_SRC)\puresize-adjust.h 972 $(OUTDIR)\alloc.obj: $(TEMACS_SRC)\alloc.c
986 973
987 #$(TEMACS_SRC)\Emacs.ad.h: $(XEMACS)\etc\Emacs.ad 974 #$(TEMACS_SRC)\Emacs.ad.h: $(XEMACS)\etc\Emacs.ad
988 # !"sed -f ad2c.sed < $(XEMACS)\etc\Emacs.ad > $(TEMACS_SRC)\Emacs.ad.h" 975 # !"sed -f ad2c.sed < $(XEMACS)\etc\Emacs.ad > $(TEMACS_SRC)\Emacs.ad.h"
989 976
990 #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in 977 #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in
992 979
993 $(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS) 980 $(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS)
994 !if $(DEBUG_XEMACS) 981 !if $(DEBUG_XEMACS)
995 @dir /b/s $(OUTDIR)\*.sbr > bscmake.tmp 982 @dir /b/s $(OUTDIR)\*.sbr > bscmake.tmp
996 bscmake -nologo -o$(TEMACS_BROWSE) @bscmake.tmp 983 bscmake -nologo -o$(TEMACS_BROWSE) @bscmake.tmp
997 @del bscmake.tmp 984 @$(DEL) bscmake.tmp
985 !endif
986 !if $(USE_PORTABLE_DUMPER)
987 @if exist $(TEMACS_DIR)\xemacs.dmp del $(TEMACS_DIR)\xemacs.dmp
998 !endif 988 !endif
999 link.exe @<< 989 link.exe @<<
1000 $(TEMACS_LFLAGS) $(TEMACS_OBJS) $(TEMACS_LIBS) 990 $(TEMACS_LFLAGS) $(TEMACS_OBJS) $(TEMACS_LIBS)
1001 << 991 <<
1002 992
1003 $(OUTDIR)\xemacs.res: xemacs.rc 993 $(OUTDIR)\xemacs.res: xemacs.rc
1004 rc -Fo$@ xemacs.rc 994 rc -Fo$@ xemacs.rc
1005 995
996 # Section handling automated tests starts here
997
998 SRCDIR=$(MAKEDIR)\..\src
999 PROGNAME=$(SRCDIR)\xemacs.exe
1000 blddir=$(MAKEDIR:\=\\)\\..
1001 temacs_loadup=$(TEMACS) -batch -l $(SRCDIR)/../lisp/loadup.el
1002 dump_temacs = $(temacs_loadup) dump
1003 run_temacs = $(temacs_loadup) run-temacs
1004 ## We have automated tests!!
1005 testdir=../tests/automated
1006 batch_test_emacs=-batch -l $(testdir)/test-harness.el -f batch-test-emacs $(testdir)
1007
1008 # .PHONY: check check-temacs
1009
1010 check:
1011 cd $(SRCDIR)
1012 $(PROGNAME) $(batch_test_emacs)
1013
1014 check-temacs:
1015 cd $(SRCDIR)
1016 set EMACSBOOTSTRAPLOADPATH=$(LISP)
1017 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
1018 $(run_temacs) $(batch_test_emacs)
1019
1020 # Section handling automated tests ends here
1021
1022 # Section handling info starts here
1023
1024 !if !defined(MAKEINFO)
1025 MAKEINFO=$(PROGNAME) -vanilla -batch -l texinfmt -f batch-texinfo-format
1026 !endif
1027
1028 MANDIR = $(XEMACS)\man
1029 INFODIR = $(XEMACS)\info
1030 INFO_FILES= \
1031 $(INFODIR)\cl.info \
1032 $(INFODIR)\custom.info \
1033 $(INFODIR)\emodules.info \
1034 $(INFODIR)\external-widget.info \
1035 $(INFODIR)\info.info \
1036 $(INFODIR)\standards.info \
1037 $(INFODIR)\term.info \
1038 $(INFODIR)\termcap.info \
1039 $(INFODIR)\texinfo.info \
1040 $(INFODIR)\widget.info \
1041 $(INFODIR)\xemacs-faq.info \
1042 $(INFODIR)\xemacs.info \
1043 $(INFODIR)\lispref.info \
1044 $(INFODIR)\new-users-guide.info \
1045 $(INFODIR)\internals.info
1046
1047 {$(MANDIR)}.texi{$(INFODIR)}.info:
1048 cd $(MANDIR)
1049 $(MAKEINFO) $**
1050
1051 XEMACS_SRCS = \
1052 $(MANDIR)\xemacs\abbrevs.texi \
1053 $(MANDIR)\xemacs\basic.texi \
1054 $(MANDIR)\xemacs\buffers.texi \
1055 $(MANDIR)\xemacs\building.texi \
1056 $(MANDIR)\xemacs\calendar.texi \
1057 $(MANDIR)\xemacs\cmdargs.texi \
1058 $(MANDIR)\xemacs\custom.texi \
1059 $(MANDIR)\xemacs\display.texi \
1060 $(MANDIR)\xemacs\entering.texi \
1061 $(MANDIR)\xemacs\files.texi \
1062 $(MANDIR)\xemacs\fixit.texi \
1063 $(MANDIR)\xemacs\frame.texi \
1064 $(MANDIR)\xemacs\glossary.texi \
1065 $(MANDIR)\xemacs\gnu.texi \
1066 $(MANDIR)\xemacs\help.texi \
1067 $(MANDIR)\xemacs\indent.texi \
1068 $(MANDIR)\xemacs\keystrokes.texi \
1069 $(MANDIR)\xemacs\killing.texi \
1070 $(MANDIR)\xemacs\m-x.texi \
1071 $(MANDIR)\xemacs\major.texi \
1072 $(MANDIR)\xemacs\mark.texi \
1073 $(MANDIR)\xemacs\menus.texi \
1074 $(MANDIR)\xemacs\mini.texi \
1075 $(MANDIR)\xemacs\misc.texi \
1076 $(MANDIR)\xemacs\mouse.texi \
1077 $(MANDIR)\xemacs\mule.texi \
1078 $(MANDIR)\xemacs\new.texi \
1079 $(MANDIR)\xemacs\packages.texi \
1080 $(MANDIR)\xemacs\picture.texi \
1081 $(MANDIR)\xemacs\programs.texi \
1082 $(MANDIR)\xemacs\reading.texi \
1083 $(MANDIR)\xemacs\regs.texi \
1084 $(MANDIR)\xemacs\search.texi \
1085 $(MANDIR)\xemacs\sending.texi \
1086 $(MANDIR)\xemacs\startup.texi \
1087 $(MANDIR)\xemacs\text.texi \
1088 $(MANDIR)\xemacs\trouble.texi \
1089 $(MANDIR)\xemacs\undo.texi \
1090 $(MANDIR)\xemacs\windows.texi \
1091 $(MANDIR)\xemacs\xemacs.texi
1092
1093 LISPREF_SRCS = \
1094 $(MANDIR)\lispref\abbrevs.texi \
1095 $(MANDIR)\lispref\annotations.texi \
1096 $(MANDIR)\lispref\back.texi \
1097 $(MANDIR)\lispref\backups.texi \
1098 $(MANDIR)\lispref\buffers.texi \
1099 $(MANDIR)\lispref\building.texi \
1100 $(MANDIR)\lispref\commands.texi \
1101 $(MANDIR)\lispref\compile.texi \
1102 $(MANDIR)\lispref\consoles-devices.texi \
1103 $(MANDIR)\lispref\control.texi \
1104 $(MANDIR)\lispref\customize.texi \
1105 $(MANDIR)\lispref\databases.texi \
1106 $(MANDIR)\lispref\debugging.texi \
1107 $(MANDIR)\lispref\dialog.texi \
1108 $(MANDIR)\lispref\display.texi \
1109 $(MANDIR)\lispref\dragndrop.texi \
1110 $(MANDIR)\lispref\edebug-inc.texi \
1111 $(MANDIR)\lispref\edebug.texi \
1112 $(MANDIR)\lispref\errors.texi \
1113 $(MANDIR)\lispref\eval.texi \
1114 $(MANDIR)\lispref\extents.texi \
1115 $(MANDIR)\lispref\faces.texi \
1116 $(MANDIR)\lispref\files.texi \
1117 $(MANDIR)\lispref\frames.texi \
1118 $(MANDIR)\lispref\functions.texi \
1119 $(MANDIR)\lispref\glyphs.texi \
1120 $(MANDIR)\lispref\hash-tables.texi \
1121 $(MANDIR)\lispref\help.texi \
1122 $(MANDIR)\lispref\hooks.texi \
1123 $(MANDIR)\lispref\index.texi \
1124 $(MANDIR)\lispref\internationalization.texi \
1125 $(MANDIR)\lispref\intro.texi \
1126 $(MANDIR)\lispref\keymaps.texi \
1127 $(MANDIR)\lispref\ldap.texi \
1128 $(MANDIR)\lispref\lispref.texi \
1129 $(MANDIR)\lispref\lists.texi \
1130 $(MANDIR)\lispref\loading.texi \
1131 $(MANDIR)\lispref\locals.texi \
1132 $(MANDIR)\lispref\macros.texi \
1133 $(MANDIR)\lispref\maps.texi \
1134 $(MANDIR)\lispref\markers.texi \
1135 $(MANDIR)\lispref\menus.texi \
1136 $(MANDIR)\lispref\minibuf.texi \
1137 $(MANDIR)\lispref\modes.texi \
1138 $(MANDIR)\lispref\mouse.texi \
1139 $(MANDIR)\lispref\mule.texi \
1140 $(MANDIR)\lispref\numbers.texi \
1141 $(MANDIR)\lispref\objects.texi \
1142 $(MANDIR)\lispref\os.texi \
1143 $(MANDIR)\lispref\positions.texi \
1144 $(MANDIR)\lispref\processes.texi \
1145 $(MANDIR)\lispref\range-tables.texi \
1146 $(MANDIR)\lispref\scrollbars.texi \
1147 $(MANDIR)\lispref\searching.texi \
1148 $(MANDIR)\lispref\sequences.texi \
1149 $(MANDIR)\lispref\specifiers.texi \
1150 $(MANDIR)\lispref\streams.texi \
1151 $(MANDIR)\lispref\strings.texi \
1152 $(MANDIR)\lispref\symbols.texi \
1153 $(MANDIR)\lispref\syntax.texi \
1154 $(MANDIR)\lispref\text.texi \
1155 $(MANDIR)\lispref\tips.texi \
1156 $(MANDIR)\lispref\toolbar.texi \
1157 $(MANDIR)\lispref\tooltalk.texi \
1158 $(MANDIR)\lispref\variables.texi \
1159 $(MANDIR)\lispref\windows.texi \
1160 $(MANDIR)\lispref\x-windows.texi
1161
1162 INTERNALS_SRCS = \
1163 $(MANDIR)\internals\internals.texi \
1164 $(MANDIR)\internals\index.texi
1165
1166 NEW_USERS_GUIDE_SRCS = \
1167 $(MANDIR)\new-users-guide\custom1.texi \
1168 $(MANDIR)\new-users-guide\custom2.texi \
1169 $(MANDIR)\new-users-guide\edit.texi \
1170 $(MANDIR)\new-users-guide\enter.texi \
1171 $(MANDIR)\new-users-guide\files.texi \
1172 $(MANDIR)\new-users-guide\help.texi \
1173 $(MANDIR)\new-users-guide\modes.texi \
1174 $(MANDIR)\new-users-guide\new-users-guide.texi \
1175 $(MANDIR)\new-users-guide\region.texi \
1176 $(MANDIR)\new-users-guide\search.texi \
1177 $(MANDIR)\new-users-guide\xmenu.texi
1178
1179 $(INFODIR)\xemacs.info: $(XEMACS_SRCS)
1180 cd $(MANDIR)\xemacs
1181 $(MAKEINFO) xemacs.texi
1182 cd ..
1183
1184
1185 $(INFODIR)\lispref.info: $(LISPREF_SRCS)
1186 cd $(MANDIR)\lispref
1187 $(MAKEINFO) lispref.texi
1188 cd ..
1189
1190 $(INFODIR)\internals.info: $(INTERNALS_SRCS)
1191 cd $(MANDIR)\internals
1192 $(MAKEINFO) internals.texi
1193 cd ..
1194
1195 $(INFODIR)\new-users-guide.info: $(NEW_USERS_GUIDE_SRCS)
1196 cd $(MANDIR)\new-users-guide
1197 $(MAKEINFO) new-users-guide.texi
1198 cd ..
1199
1200 info: makeinfo-test $(INFO_FILES)
1201
1202 makeinfo-test:
1203 @<<makeinfo_test.bat
1204 @echo off
1205 if exist "$(MAKEINFO)" goto test_done
1206 @"$(PROGNAME)" -batch -vanilla -eval "(condition-case nil (require (quote texinfo)) (t (kill-emacs 1)))"
1207 @if not errorlevel 1 goto suggest_makeinfo
1208 @echo XEmacs `info' cannot be built!
1209 @echo Install XEmacs package `texinfo' (see README.packages).
1210 :suggest_makeinfo
1211 @echo Consider specifying path to makeinfo program: MAKEINFO=path
1212 @echo as this will build info docs faster than XEmacs using `texinfo'.
1213 @if errorlevel 1 exit 1
1214 :test_done
1215 <<NOKEEP
1216
1217 # Section handling info ends here
1218
1006 #------------------------------------------------------------------------------ 1219 #------------------------------------------------------------------------------
1007 1220
1008 # LISP bits 'n bobs 1221 # LISP bits 'n bobs
1009 1222
1010 LOADPATH=$(LISP) 1223 LOADPATH=$(LISP)
1011 1224
1225 # Rebuild docfile target
1226 docfile ::
1227 if exist $(DOC) del $(DOC)
1228 docfile :: $(DOC)
1229
1012 $(DOC): $(LIB_SRC)\make-docfile.exe 1230 $(DOC): $(LIB_SRC)\make-docfile.exe
1013 -del $(DOC) 1231 if exist $(DOC) del $(DOC)
1232 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
1233 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
1014 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\make-docfile.el -- -o $(DOC) -i $(XEMACS)\site-packages 1234 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\make-docfile.el -- -o $(DOC) -i $(XEMACS)\site-packages
1015 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC1) 1235 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC1)
1016 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC2) 1236 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC2)
1017 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC3) 1237 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC3)
1018 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC4) 1238 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC4)
1019 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC5) 1239 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC5)
1020 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC6) 1240 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC6)
1021 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC7) 1241 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC7)
1022 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC8) 1242 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC8)
1023 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9) 1243 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9)
1024 1244 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC10)
1025 $(LISP)\Installation.el: Installation.el 1245 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC11)
1026 copy Installation.el $(LISP) 1246
1027 1247 update-elc:
1028 update-elc: $(LISP)\Installation.el
1029 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) 1248 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
1030 set EMACSBOOTSTRAPMODULEPATH=$(MODULES) 1249 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
1031 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\update-elc.el 1250 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\update-elc.el
1032 1251
1033 # This rule dumps xemacs and then possibly spawns sub-make if PURESPACE 1252 # This rule dumps xemacs and then possibly spawns sub-make if PURESPACE
1034 # requirements has changed. 1253 # requirements have changed.
1035 dump-xemacs: $(TEMACS) 1254 dump-xemacs: temacs
1036 @echo >$(TEMACS_DIR)\SATISFIED 1255 @echo >$(TEMACS_DIR)\SATISFIED
1037 cd $(TEMACS_DIR) 1256 cd $(TEMACS_DIR)
1038 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) 1257 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
1258 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
1039 -1 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\loadup.el dump 1259 -1 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\loadup.el dump
1040 @cd $(NT) 1260 !if $(USE_PORTABLE_DUMPER)
1261 copy temacs.exe xemacs.exe
1262 !endif
1263 cd $(NT)
1041 @if not exist $(TEMACS_DIR)\SATISFIED nmake -nologo -f xemacs.mak $@ 1264 @if not exist $(TEMACS_DIR)\SATISFIED nmake -nologo -f xemacs.mak $@
1042
1043 #------------------------------------------------------------------------------ 1265 #------------------------------------------------------------------------------
1044 1266
1045 # use this rule to build the complete system 1267 # use this rule to build the complete system
1046 all: $(OUTDIR)\nul $(LASTFILE) $(LWLIB) $(LIB_SRC_TOOLS) $(RUNEMACS) \ 1268 all: $(XEMACS)\Installation $(OUTDIR)\nul $(LASTFILE) $(LWLIB) \
1047 $(TEMACS) update-elc $(DOC) dump-xemacs 1269 $(LIB_SRC_TOOLS) $(RUNEMACS) $(TEMACS) update-elc $(DOC) dump-xemacs \
1048 1270 $(LISP)/auto-autoloads.el $(LISP)/custom-load.el info
1049 temacs: $(TEMACS) 1271
1272 temacs: $(LASTFILE) $(TEMACS)
1050 1273
1051 # use this rule to install the system 1274 # use this rule to install the system
1052 install: all 1275 install: all
1276 cd $(NT)
1053 @echo Installing in $(INSTALL_DIR) ... 1277 @echo Installing in $(INSTALL_DIR) ...
1054 @echo PlaceHolder > PlaceHolder 1278 @echo PlaceHolder > PlaceHolder
1055 @xcopy /q PROBLEMS "$(INSTALL_DIR)\" 1279 @xcopy /q PROBLEMS "$(INSTALL_DIR)\"
1056 @xcopy /q PlaceHolder "$(INSTALL_DIR)\lock\" 1280 @xcopy /q PlaceHolder "$(INSTALL_DIR)\lock\"
1057 @del "$(INSTALL_DIR)\lock\PlaceHolder" 1281 @$(DEL) "$(INSTALL_DIR)\lock\PlaceHolder"
1058 @xcopy /q $(LIB_SRC)\*.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)\" 1282 @xcopy /q $(LIB_SRC)\*.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)\"
1059 @copy $(LIB_SRC)\DOC "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" 1283 @copy $(LIB_SRC)\DOC "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
1060 @copy $(CONFIG_VALUES) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" 1284 @copy $(CONFIG_VALUES) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
1061 @copy $(XEMACS)\src\xemacs.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" 1285 @copy $(XEMACS)\src\xemacs.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
1286 !if $(USE_PORTABLE_DUMPER)
1287 @copy $(XEMACS)\src\xemacs.dmp "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
1288 !endif
1062 @copy $(RUNEMACS) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" 1289 @copy $(RUNEMACS) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
1063 @xcopy /e /q $(XEMACS)\etc "$(INSTALL_DIR)\etc\" 1290 @xcopy /e /q $(XEMACS)\etc "$(INSTALL_DIR)\etc\"
1064 @xcopy /e /q $(XEMACS)\info "$(INSTALL_DIR)\info\" 1291 @xcopy /e /q $(XEMACS)\info "$(INSTALL_DIR)\info\"
1065 @xcopy /e /q $(XEMACS)\lisp "$(INSTALL_DIR)\lisp\" 1292 @xcopy /e /q $(XEMACS)\lisp "$(INSTALL_DIR)\lisp\"
1066 @echo Making skeleton package tree in $(PACKAGE_PREFIX) ... 1293 @echo Making skeleton package tree in $(PACKAGE_PREFIX) ...
1067 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\site-packages\" 1294 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\site-packages\"
1068 @del "$(PACKAGE_PREFIX)\site-packages\PlaceHolder" 1295 @$(DEL) "$(PACKAGE_PREFIX)\site-packages\PlaceHolder"
1069 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\mule-packages\" 1296 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\mule-packages\"
1070 @del "$(PACKAGE_PREFIX)\mule-packages\PlaceHolder" 1297 @$(DEL) "$(PACKAGE_PREFIX)\mule-packages\PlaceHolder"
1071 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\xemacs-packages\" 1298 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\xemacs-packages\"
1072 @del "$(PACKAGE_PREFIX)\xemacs-packages\PlaceHolder" 1299 @$(DEL) "$(PACKAGE_PREFIX)\xemacs-packages\PlaceHolder"
1073 @del PlaceHolder 1300 @$(DEL) PlaceHolder
1074 1301
1075 distclean: 1302 distclean:
1076 del *.bak 1303 $(DEL) *.bak
1077 del *.orig 1304 $(DEL) *.orig
1078 del *.rej 1305 $(DEL) *.rej
1079 del *.tmp 1306 $(DEL) *.tmp
1080 del Installation 1307 $(DEL) $(XEMACS)\Installation
1081 del Installation.el
1082 cd $(OUTDIR) 1308 cd $(OUTDIR)
1083 del *.lib 1309 $(DEL) *.lib
1084 del *.obj 1310 $(DEL) *.obj
1085 del *.pdb 1311 $(DEL) *.pdb
1086 del *.res 1312 $(DEL) *.res
1087 del *.sbr 1313 $(DEL) *.sbr
1088 cd $(XEMACS)\$(TEMACS_DIR) 1314 cd $(XEMACS)\$(TEMACS_DIR)
1089 del puresize-adjust.h 1315 $(DEL) config.h
1090 del config.h 1316 $(DEL) paths.h
1091 del paths.h 1317 $(DEL) Emacs.ad.h
1092 del Emacs.ad.h 1318 $(DEL) *.bak
1093 del *.bak 1319 $(DEL) *.orig
1094 del *.orig 1320 $(DEL) *.rej
1095 del *.rej 1321 $(DEL) *.exe
1096 del *.exe 1322 $(DEL) *.map
1097 del *.map 1323 $(DEL) *.bsc
1098 del *.bsc 1324 $(DEL) *.pdb
1099 del *.pdb
1100 cd $(LIB_SRC) 1325 cd $(LIB_SRC)
1101 del DOC 1326 $(DEL) DOC
1102 del *.bak 1327 $(DEL) *.bak
1103 del *.orig 1328 $(DEL) *.orig
1104 del *.rej 1329 $(DEL) *.rej
1105 del *.exe 1330 $(DEL) *.exe
1106 del *.obj 1331 $(DEL) *.obj
1107 del *.pdb 1332 $(DEL) *.pdb
1108 del *.res 1333 $(DEL) *.res
1109 del $(CONFIG_VALUES) 1334 $(DEL) $(CONFIG_VALUES)
1110 cd $(LISP) 1335 cd $(LISP)
1111 -del /s /q *.bak *.elc *.orig *.rej 1336 $(DEL) /s /q *.bak *.elc *.orig *.rej
1337 cd $(INFODIR)
1338 $(DEL) *.info*
1112 1339
1113 depend: 1340 depend:
1114 mkdepend -f xemacs.mak -p$(OUTDIR)\ -o.obj -w9999 -- $(TEMACS_CPP_FLAGS) -- $(DOC_SRC1) $(DOC_SRC2) $(DOC_SRC3) $(DOC_SRC4) $(DOC_SRC5) $(DOC_SRC6) $(DOC_SRC7) $(DOC_SRC8) $(DOC_SRC9) $(LASTFILE_SRC)\lastfile.c $(LIB_SRC)\make-docfile.c $(LIB_SRC)\run.c 1341 cd $(SRCDIR)
1342 perl ./make-src-depend > depend.tmp
1343 perl -MFile::Compare -e "compare('depend.tmp', 'depend') && rename('depend.tmp', 'depend') or unlink('depend.tmp')"
1344
1345 installation::
1346 @if exist $(XEMACS)\Installation del $(XEMACS)\Installation
1347
1348 installation:: $(XEMACS)\Installation
1349
1350 $(XEMACS)\Installation:
1351 @type > $(XEMACS)\Installation <<
1352 !if defined(OS)
1353 OS: $(OS)
1354 !endif
1355
1356 XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename:"=\") configured for `$(EMACS_CONFIGURATION)'.
1357
1358 Building XEmacs in \"$(MAKEDIR:\=\\)\".
1359 !if defined(CCV)
1360 Using compiler \"$(CC) $(CFLAGS)\".
1361 !endif
1362 Installing XEmacs in \"$(INSTALL_DIR:\=\\)\".
1363 Package path is $(PATH_PACKAGEPATH:"=\").
1364 !if $(INFODOCK)
1365 Building InfoDock.
1366 !endif
1367 !if $(HAVE_MSW)
1368 Compiling in support for Microsoft Windows native GUI.
1369 !endif
1370 !if $(HAVE_X)
1371 Compiling in support for X-Windows.
1372 !endif
1373 !if $(HAVE_MULE)
1374 Compiling in MULE.
1375 !endif
1376 !if $(HAVE_XPM)
1377 Compiling in support for XPM images.
1378 !else
1379 --------------------------------------------------------------------
1380 WARNING: Compiling without XPM support.
1381 WARNING: You should strongly consider installing XPM.
1382 WARNING: Otherwise toolbars and other graphics will look suboptimal.
1383 WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)
1384 --------------------------------------------------------------------
1385 !endif
1386 !if $(HAVE_GIF)
1387 Compiling in support for GIF images.
1388 !endif
1389 !if $(HAVE_PNG)
1390 Compiling in support for PNG images.
1391 !else
1392 --------------------------------------------------------------------
1393 WARNING: Compiling without PNG image support.
1394 WARNING: You should strongly consider installing the PNG libraries.
1395 WARNING: Otherwise certain images and glyphs may not display.
1396 WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux
1397 --------------------------------------------------------------------
1398 !endif
1399 !if $(HAVE_TIFF)
1400 Compiling in support for TIFF images.
1401 !endif
1402 !if $(HAVE_JPEG)
1403 Compiling in support for JPEG images.
1404 !endif
1405 !if $(HAVE_XFACE)
1406 Compiling in support for X-Face message headers.
1407 !endif
1408 !if $(HAVE_TOOLBARS)
1409 Compiling in support for toolbars.
1410 !endif
1411 !if $(HAVE_DIALOGS)
1412 Compiling in support for dialogs.
1413 !endif
1414 !if $(HAVE_WIDGETS)
1415 Compiling in support for widgets.
1416 !endif
1417 !if $(HAVE_NATIVE_SOUND)
1418 Compiling in support for native sounds.
1419 !endif
1420 !if $(HAVE_MSW_C_DIRED)
1421 Compiling in fast dired implementation.
1422 !else
1423 --------------------------------------------------------------------
1424 WARNING: Define HAVE_MSW_C_DIRED to be non-zero if you want XEmacs
1425 WARNING: to use C primitives to significantly speed up dired, at the
1426 WARNING: expense of an additional ~4KB of code.
1427 --------------------------------------------------------------------
1428 !endif
1429 !if $(USE_MINIMAL_TAGBITS)
1430 Using minimal tagbits.
1431 !endif
1432 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION)
1433 Using indexed lrecord implementation.
1434 !endif
1435 !if $(USE_UNION_TYPE)
1436 Using union type for Lisp object storage.
1437 !endif
1438 !if $(USE_PORTABLE_DUMPER)
1439 Using portable dumper.
1440 !endif
1441 !if $(USE_SYSTEM_MALLOC)
1442 Using system malloc.
1443 !endif
1444 !if $(USE_CRTDLL)
1445 Using DLL version of C runtime library
1446 !endif
1447 !if $(DEBUG_XEMACS)
1448 Compiling in extra debug checks. XEmacs will be slow!
1449 !endif
1450 <<NOKEEP
1451 @echo --------------------------------------------------------------------
1452 @type $(XEMACS)\Installation
1453 @echo --------------------------------------------------------------------
1454
1455 # Update auto-autoloads.el and custom-load.el similar to what
1456 # XEmacs.rules does for xemacs-packages.
1457 VANILLA=-vanilla
1458 FORCE:
1459 $(LISP)\auto-autoloads.el: FORCE
1460 @$(DEL) $(LISP)\auto-autoloads.el
1461 $(PROGNAME) $(VANILLA) -batch \
1462 -l autoload -f batch-update-directory $(LISP)
1463 $(PROGNAME) $(VANILLA) -batch \
1464 -f batch-byte-compile $@
1465 @$(DEL) $(LISP)\auto-autoloads.el~
1466
1467 $(LISP)\custom-load.el: FORCE
1468 $(PROGNAME) $(VANILLA) -batch -l cus-dep \
1469 -f Custom-make-dependencies $(LISP)
1115 1470
1116 # DO NOT DELETE THIS LINE -- make depend depends on it. 1471 # DO NOT DELETE THIS LINE -- make depend depends on it.
1117 1472