comparison nt/xemacs.mak @ 223:2c611d1463a6 r20-4b10

Import from CVS: tag r20-4b10
author cvs
date Mon, 13 Aug 2007 10:10:54 +0200
parents 6c0ae1f9357f
children 12579d965149
comparison
equal deleted inserted replaced
222:aae4c8b01452 223:2c611d1463a6
1 XEMACS=.. 1 XEMACS=..
2 LISP=$(XEMACS)\lisp 2 LISP=$(XEMACS)\lisp
3 PACKAGE_PATH="~/.xemacs;h:/src/xemacs/packages" 3 PACKAGE_PATH="~/.xemacs;f:/src/xemacs/packages"
4 HAVE_X=0 4 HAVE_X=0
5 HAVE_MSW=1 5 HAVE_MSW=1
6 6
7 HAVE_MULE=0 7 HAVE_MULE=0
8 HAVE_IMAGEMAGICK=0 8 HAVE_IMAGEMAGICK=0
41 MULE_DEFINES=-DMULE 41 MULE_DEFINES=-DMULE
42 !endif 42 !endif
43 43
44 !if $(DEBUG_XEMACS) 44 !if $(DEBUG_XEMACS)
45 DEBUG_DEFINES=-DDEBUG_XEMACS 45 DEBUG_DEFINES=-DDEBUG_XEMACS
46 DEBUG_FLAGS= -debugtype:both -debug:full
46 !endif 47 !endif
47 48
48 !include "..\version.sh" 49 !include "..\version.sh"
49 50
50 # Nothing should need to be edited below this point. 51 # Nothing should need to be edited below this point.
53 # Generic variables 54 # Generic variables
54 55
55 INCLUDES=$(X_INCLUDES) -I$(XEMACS)\nt\inc -I$(XEMACS)\src -I$(XEMACS)\lwlib -I"$(MSVCDIR)\include" 56 INCLUDES=$(X_INCLUDES) -I$(XEMACS)\nt\inc -I$(XEMACS)\src -I$(XEMACS)\lwlib -I"$(MSVCDIR)\include"
56 57
57 DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) -DWIN32 -D_WIN32 \ 58 DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) -DWIN32 -D_WIN32 \
58 -D_M_IX86 -D_X86_ \
59 -DWIN32_LEAN_AND_MEAN -DWINDOWSNT -Demacs -DHAVE_CONFIG_H \ 59 -DWIN32_LEAN_AND_MEAN -DWINDOWSNT -Demacs -DHAVE_CONFIG_H \
60 -D_MSC_VER=999 -D_DEBUG 60 -D_DEBUG
61 61
62 OUTDIR=obj 62 OUTDIR=obj
63 63
64 #------------------------------------------------------------------------------ 64 #------------------------------------------------------------------------------
65 65
69 -@mkdir $(OUTDIR) 69 -@mkdir $(OUTDIR)
70 70
71 XEMACS_INCLUDES=\ 71 XEMACS_INCLUDES=\
72 $(XEMACS)\src\config.h \ 72 $(XEMACS)\src\config.h \
73 $(XEMACS)\src\Emacs.ad.h \ 73 $(XEMACS)\src\Emacs.ad.h \
74 $(XEMACS)\src\paths.h 74 $(XEMACS)\src\paths.h \
75 $(XEMACS)\src\puresize-adjust.h
75 76
76 $(XEMACS)\src\config.h: config.h 77 $(XEMACS)\src\config.h: config.h
77 !copy config.h $(XEMACS)\src 78 !copy config.h $(XEMACS)\src
78 79
79 $(XEMACS)\src\Emacs.ad.h: Emacs.ad.h 80 $(XEMACS)\src\Emacs.ad.h: Emacs.ad.h
80 !copy Emacs.ad.h $(XEMACS)\src 81 !copy Emacs.ad.h $(XEMACS)\src
81 82
82 $(XEMACS)\src\paths.h: paths.h 83 $(XEMACS)\src\paths.h: paths.h
83 !copy paths.h $(XEMACS)\src 84 !copy paths.h $(XEMACS)\src
85
86 $(XEMACS)\src\puresize-adjust.h: puresize-adjust.h
87 !copy puresize-adjust.h $(XEMACS)\src
84 88
85 #------------------------------------------------------------------------------ 89 #------------------------------------------------------------------------------
86 90
87 # LASTFILE Library 91 # LASTFILE Library
88 92
118 $(OUTDIR)\lwlib.obj \ 122 $(OUTDIR)\lwlib.obj \
119 $(OUTDIR)\xlwmenu.obj \ 123 $(OUTDIR)\xlwmenu.obj \
120 $(OUTDIR)\xlwscrollbar.obj 124 $(OUTDIR)\xlwscrollbar.obj
121 125
122 $(LWLIB): $(LWLIB_OBJS) 126 $(LWLIB): $(LWLIB_OBJS)
123 link.exe -lib -nologo -debugtype:both -out:$@ $(LWLIB_OBJS) 127 link.exe -lib -nologo $(DEBUG_FLAGS) -out:$@ $(LWLIB_OBJS)
124 128
125 $(OUTDIR)\lwlib-config.obj: $(LWLIB_SRC)\lwlib-config.c 129 $(OUTDIR)\lwlib-config.obj: $(LWLIB_SRC)\lwlib-config.c
126 $(CC) $(LWLIB_FLAGS) $** 130 $(CC) $(LWLIB_FLAGS) $**
127 131
128 $(OUTDIR)\lwlib-utils.obj: $(LWLIB_SRC)\lwlib-utils.c 132 $(OUTDIR)\lwlib-utils.obj: $(LWLIB_SRC)\lwlib-utils.c
151 LIB_SRC=$(XEMACS)\lib-src 155 LIB_SRC=$(XEMACS)\lib-src
152 LIB_SRC_FLAGS=$(INCLUDES) $(DEFINES) -ML 156 LIB_SRC_FLAGS=$(INCLUDES) $(DEFINES) -ML
153 LIB_SRC_LIBS= kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ 157 LIB_SRC_LIBS= kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
154 advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib libc.lib 158 advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib libc.lib
155 LIB_SRC_LFLAGS=-nologo $(LIB_SRC_LIBS) -base:0x1000000\ 159 LIB_SRC_LFLAGS=-nologo $(LIB_SRC_LIBS) -base:0x1000000\
156 -subsystem:console -pdb:none -debugtype:both -machine:I386\ 160 -subsystem:console -pdb:none $(DEBUG_FLAGS) -machine:I386\
157 -nodefaultlib -out:$@ -debug:full 161 -nodefaultlib -out:$@
158 162
159 DOC=$(LIB_SRC)\DOC 163 DOC=$(LIB_SRC)\DOC
160 DOC_SRC1=\ 164 DOC_SRC1=\
161 $(XEMACS)\src\abbrev.c \ 165 $(XEMACS)\src\abbrev.c \
162 $(XEMACS)\src\alloc.c \ 166 $(XEMACS)\src\alloc.c \
185 $(XEMACS)\src\editfns.c \ 189 $(XEMACS)\src\editfns.c \
186 $(XEMACS)\src\elhash.c \ 190 $(XEMACS)\src\elhash.c \
187 $(XEMACS)\src\emacs.c \ 191 $(XEMACS)\src\emacs.c \
188 $(XEMACS)\src\eval.c \ 192 $(XEMACS)\src\eval.c \
189 $(XEMACS)\src\event-stream.c \ 193 $(XEMACS)\src\event-stream.c \
190 $(XEMACS)\src\event-unixoid.c \
191 $(XEMACS)\src\events.c \ 194 $(XEMACS)\src\events.c \
192 $(XEMACS)\src\extents.c \ 195 $(XEMACS)\src\extents.c \
193 $(XEMACS)\src\faces.c \ 196 $(XEMACS)\src\faces.c \
194 $(XEMACS)\src\fileio.c \ 197 $(XEMACS)\src\fileio.c \
195 $(XEMACS)\src\filelock.c \ 198 $(XEMACS)\src\filelock.c \
225 $(XEMACS)\src\ntproc.c \ 228 $(XEMACS)\src\ntproc.c \
226 $(XEMACS)\src\objects.c \ 229 $(XEMACS)\src\objects.c \
227 $(XEMACS)\src\opaque.c \ 230 $(XEMACS)\src\opaque.c \
228 $(XEMACS)\src\print.c \ 231 $(XEMACS)\src\print.c \
229 $(XEMACS)\src\process.c \ 232 $(XEMACS)\src\process.c \
233 $(XEMACS)\src\profile.c \
230 $(XEMACS)\src\pure.c \ 234 $(XEMACS)\src\pure.c \
231 $(XEMACS)\src\rangetab.c \ 235 $(XEMACS)\src\rangetab.c \
232 $(XEMACS)\src\realpath.c \ 236 $(XEMACS)\src\realpath.c \
233 $(XEMACS)\src\redisplay-output.c \ 237 $(XEMACS)\src\redisplay-output.c \
234 $(XEMACS)\src\redisplay.c \ 238 $(XEMACS)\src\redisplay.c \
319 advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib libc.lib 323 advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib libc.lib
320 324
321 $(OUTDIR)\runemacs.obj: $(XEMACS)\nt\runemacs.c 325 $(OUTDIR)\runemacs.obj: $(XEMACS)\nt\runemacs.c
322 $(CC) -nologo -ML -w $(OPT) -c \ 326 $(CC) -nologo -ML -w $(OPT) -c \
323 -D_DEBUG -DWIN32 -D_WIN32 -DWIN32_LEAN_AND_MEAN \ 327 -D_DEBUG -DWIN32 -D_WIN32 -DWIN32_LEAN_AND_MEAN \
324 -D_M_IX86 -D_X86_ -Demacs -DHAVE_CONFIG_H -D_MSC_VER=999 \ 328 -D_X86_ -Demacs -DHAVE_CONFIG_H \
325 $** -Fo$@ 329 $** -Fo$@
326 330
327 SUPPORT_PROGS=$(MAKE_DOCFILE) $(RUNEMACS) 331 SUPPORT_PROGS=$(MAKE_DOCFILE) $(RUNEMACS)
328 332
329 #------------------------------------------------------------------------------ 333 #------------------------------------------------------------------------------
334 TEMACS=$(TEMACS_DIR)\temacs.exe 338 TEMACS=$(TEMACS_DIR)\temacs.exe
335 TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc 339 TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc
336 TEMACS_SRC=$(XEMACS)\src 340 TEMACS_SRC=$(XEMACS)\src
337 TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) kernel32.lib user32.lib gdi32.lib \ 341 TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) kernel32.lib user32.lib gdi32.lib \
338 winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \ 342 winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
339 uuid.lib wsock32.lib libc.lib 343 uuid.lib wsock32.lib winmm.lib libc.lib
340 TEMACS_LFLAGS=-nologo $(LIBRARIES) -base:0x1000000\ 344 TEMACS_LFLAGS=-nologo $(LIBRARIES) $(DEBUG_FLAGS) -base:0x1000000\
341 -stack:0x800000 -entry:_start -subsystem:console\ 345 -stack:0x800000 -entry:_start -subsystem:console\
342 -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map -debug:full\ 346 -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map \
343 -heap:0x00100000 -out:$@ 347 -heap:0x00100000 -out:$@
344 TEMACS_CPP_FLAGS= $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \ 348 TEMACS_CPP_FLAGS= $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \
345 -DEMACS_MAJOR_VERSION=$(emacs_major_version) \ 349 -DEMACS_MAJOR_VERSION=$(emacs_major_version) \
346 -DEMACS_MINOR_VERSION=$(emacs_minor_version) \ 350 -DEMACS_MINOR_VERSION=$(emacs_minor_version) \
347 -DEMACS_BETA_VERSION=$(emacs_beta_version) \ 351 -DEMACS_BETA_VERSION=$(emacs_beta_version) \
435 $(OUTDIR)\editfns.obj \ 439 $(OUTDIR)\editfns.obj \
436 $(OUTDIR)\elhash.obj \ 440 $(OUTDIR)\elhash.obj \
437 $(OUTDIR)\emacs.obj \ 441 $(OUTDIR)\emacs.obj \
438 $(OUTDIR)\eval.obj \ 442 $(OUTDIR)\eval.obj \
439 $(OUTDIR)\event-stream.obj \ 443 $(OUTDIR)\event-stream.obj \
440 $(OUTDIR)\event-unixoid.obj \
441 $(OUTDIR)\events.obj \ 444 $(OUTDIR)\events.obj \
442 $(OUTDIR)\extents.obj \ 445 $(OUTDIR)\extents.obj \
443 $(OUTDIR)\faces.obj \ 446 $(OUTDIR)\faces.obj \
444 $(OUTDIR)\fileio.obj \ 447 $(OUTDIR)\fileio.obj \
445 $(OUTDIR)\filelock.obj \ 448 $(OUTDIR)\filelock.obj \
473 $(OUTDIR)\ntproc.obj \ 476 $(OUTDIR)\ntproc.obj \
474 $(OUTDIR)\objects.obj \ 477 $(OUTDIR)\objects.obj \
475 $(OUTDIR)\opaque.obj \ 478 $(OUTDIR)\opaque.obj \
476 $(OUTDIR)\print.obj \ 479 $(OUTDIR)\print.obj \
477 $(OUTDIR)\process.obj \ 480 $(OUTDIR)\process.obj \
481 $(OUTDIR)\profile.obj \
478 $(OUTDIR)\pure.obj \ 482 $(OUTDIR)\pure.obj \
479 $(OUTDIR)\rangetab.obj \ 483 $(OUTDIR)\rangetab.obj \
480 $(OUTDIR)\realpath.obj \ 484 $(OUTDIR)\realpath.obj \
481 $(OUTDIR)\redisplay-output.obj \ 485 $(OUTDIR)\redisplay-output.obj \
482 $(OUTDIR)\redisplay.obj \ 486 $(OUTDIR)\redisplay.obj \
509 $(CC) $(TEMACS_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@ 513 $(CC) $(TEMACS_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@
510 514
511 $(OUTDIR)\TransientEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c 515 $(OUTDIR)\TransientEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c
512 $(CC) $(TEMACS_FLAGS) -DDEFINE_TRANSIENT_EMACS_SHELL $** -Fo$@ 516 $(CC) $(TEMACS_FLAGS) -DDEFINE_TRANSIENT_EMACS_SHELL $** -Fo$@
513 517
518 $(OUTDIR)\pure.obj: $(TEMACS_SRC)\pure.c $(TEMACS_SRC)\puresize-adjust.h
519
514 #$(TEMACS_SRC)\Emacs.ad.h: $(XEMACS)\etc\Emacs.ad 520 #$(TEMACS_SRC)\Emacs.ad.h: $(XEMACS)\etc\Emacs.ad
515 # !"sed -f ad2c.sed < $(XEMACS)\etc\Emacs.ad > $(TEMACS_SRC)\Emacs.ad.h" 521 # !"sed -f ad2c.sed < $(XEMACS)\etc\Emacs.ad > $(TEMACS_SRC)\Emacs.ad.h"
516 522
517 #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in 523 #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in
518 # !"cd $(TEMACS_SRC); cp paths.h.in paths.h" 524 # !"cd $(TEMACS_SRC); cp paths.h.in paths.h"
549 !$(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9) 555 !$(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9)
550 556
551 update-elc: $(LOADPATH)\startup.el 557 update-elc: $(LOADPATH)\startup.el
552 !$(TEMACS) -batch -l update-elc.el 558 !$(TEMACS) -batch -l update-elc.el
553 559
554 dump-xemacs: 560 rebuild: $(TEMACS_DIR)\puresize-adjust.h
555 cd $(TEMACS_DIR) 561 !nmake -f xemacs.mak dump-xemacs
556 !$(TEMACS) -batch -l loadup.el dump 562
563 # This rule dumps xemacs and then checks to see if a rebuild is required due
564 # to changing PURESPACE requirements.
565 dump-xemacs: $(TEMACS)
566 !touch rebuild
567 cd $(TEMACS_DIR)
568 !$(TEMACS) -batch -l loadup.el dump
569 cd $(XEMACS)\nt
570 !nmake -f xemacs.mak rebuild
557 571
558 #------------------------------------------------------------------------------ 572 #------------------------------------------------------------------------------
559 573
560 # use this rule to build the complete system 574 # use this rule to build the complete system
561 all: $(LASTFILE) $(LWLIB) $(SUPPORT_PROGS) $(TEMACS) $(TEMACS_BROWSE) $(DOC) dump-xemacs 575 all: $(LASTFILE) $(LWLIB) $(SUPPORT_PROGS) $(TEMACS) $(TEMACS_BROWSE) $(DOC) dump-xemacs
576 -del rebuild
562 577
563 # use this rule to install the system 578 # use this rule to install the system
564 install: 579 install:
565 580
566 # The last line demands that you have a semi-decent shell 581 # The last line demands that you have a semi-decent shell