428
+ − 1 # Makefile for Microsoft NMAKE
+ − 2 # Copyright (C) 1995 Board of Trustees, University of Illinois.
442
+ − 3 # Copyright (C) 1995, 1996, 2000 Ben Wing.
428
+ − 4 # Copyright (C) 1995 Sun Microsystems, Inc.
+ − 5 # Copyright (C) 1998 Free Software Foundation, Inc.
+ − 6 #
+ − 7 # This file is part of XEmacs.
+ − 8 #
+ − 9 # XEmacs is free software; you can redistribute it and/or modify it
+ − 10 # under the terms of the GNU General Public License as published by the
+ − 11 # Free Software Foundation; either version 2, or (at your option) any
+ − 12 # later version.
+ − 13 #
+ − 14 # XEmacs is distributed in the hope that it will be useful, but WITHOUT
+ − 15 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ − 16 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ − 17 # for more details.
+ − 18 #
+ − 19 # You should have received a copy of the GNU General Public License
+ − 20 # along with XEmacs; see the file COPYING. If not, write to
+ − 21 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ − 22 # Boston, MA 02111-1307, USA.
+ − 23 #
+ − 24 # Synched up with: Not in FSF.
+ − 25 #
+ − 26
442
+ − 27 default: all
+ − 28
444
+ − 29 # APA: Since there seems to be no way to determine the directory where
+ − 30 # xemacs.mak is located (from within nmake) we just insist on the user
+ − 31 # to invoke nmake in the directory where xemacs.mak is.
+ − 32 !if !exist("$(MAKEDIR)\xemacs.mak")
+ − 33 !error Please run nmake from the directory of this makefile (xemacs\nt).
+ − 34 !endif
+ − 35
+ − 36 XEMACS=$(MAKEDIR)\..
428
+ − 37 LISP=$(XEMACS)\lisp
442
+ − 38 LIB_SRC=$(XEMACS)\lib-src
428
+ − 39 MODULES=$(XEMACS)\modules
+ − 40 NT=$(XEMACS)\nt
+ − 41 OUTDIR=$(NT)\obj
442
+ − 42 SRC=$(XEMACS)\src
+ − 43 LWLIB_SRCDIR=$(XEMACS)\lwlib
+ − 44 MAKEDIRSTRING=$(MAKEDIR:\=\\)
+ − 45 XEMACSDIRSTRING=$(MAKEDIRSTRING:\\nt=)
+ − 46
428
+ − 47
+ − 48 # Define a variable for the 'del' command to use
+ − 49 DEL=-del
+ − 50
+ − 51 # Program name and version
+ − 52
442
+ − 53 !include "$(XEMACS)\version.sh"
+ − 54
+ − 55 !include "config.inc"
428
+ − 56
+ − 57 !if !defined(INFODOCK)
+ − 58 INFODOCK=0
+ − 59 !endif
+ − 60
+ − 61 !if $(INFODOCK)
+ − 62 INFODOCK_VERSION_STRING=$(infodock_major_version).$(infodock_minor_version).$(infodock_build_version)
+ − 63 PROGRAM_DEFINES=-DINFODOCK \
+ − 64 -DPATH_VERSION=\"$(INFODOCK_VERSION_STRING)\" \
+ − 65 -DPATH_PROGNAME=\"infodock\" \
442
+ − 66 -DEMACS_PROGNAME=\"infodock\" \
+ − 67 -DEMACS_VERSION=\"$(INFODOCK_VERSION_STRING)\" \
428
+ − 68 -DINFODOCK_MAJOR_VERSION=$(infodock_major_version) \
+ − 69 -DINFODOCK_MINOR_VERSION=$(infodock_minor_version) \
+ − 70 -DINFODOCK_BUILD_VERSION=$(infodock_build_version)
+ − 71 !else
488
+ − 72 !if "$(emacs_is_beta)" != ""
428
+ − 73 XEMACS_VERSION_STRING=$(emacs_major_version).$(emacs_minor_version)-b$(emacs_beta_version)
+ − 74 !else
488
+ − 75 XEMACS_VERSION_STRING=$(emacs_major_version).$(emacs_minor_version).$(emacs_beta_version)
428
+ − 76 !endif
+ − 77 PROGRAM_DEFINES= \
+ − 78 -DPATH_VERSION=\"$(XEMACS_VERSION_STRING)\" \
442
+ − 79 -DPATH_PROGNAME=\"xemacs\" \
+ − 80 -DEMACS_VERSION=\"$(XEMACS_VERSION_STRING)\" \
+ − 81 -DEMACS_PROGNAME=\"xemacs\"
428
+ − 82 !endif
+ − 83
+ − 84 #
+ − 85 # Command line options defaults
+ − 86 #
+ − 87 !if !defined(INSTALL_DIR)
+ − 88 ! if $(INFODOCK)
+ − 89 INSTALL_DIR=c:\Program Files\Infodock\Infodock-$(INFODOCK_VERSION_STRING)
+ − 90 ! else
+ − 91 INSTALL_DIR=c:\Program Files\XEmacs\XEmacs-$(XEMACS_VERSION_STRING)
+ − 92 ! endif
+ − 93 !endif
+ − 94 !if !defined(HAVE_MULE)
+ − 95 HAVE_MULE=0
+ − 96 !endif
+ − 97 !if !defined(PACKAGE_PATH)
+ − 98 ! if !defined(PACKAGE_PREFIX)
+ − 99 PACKAGE_PREFIX=c:\Program Files\XEmacs
+ − 100 ! endif
+ − 101 ! if $(HAVE_MULE)
+ − 102 PACKAGE_PATH=~\.xemacs;;$(PACKAGE_PREFIX)\site-packages;$(PACKAGE_PREFIX)\mule-packages;$(PACKAGE_PREFIX)\xemacs-packages
+ − 103 ! else
+ − 104 PACKAGE_PATH=~\.xemacs;;$(PACKAGE_PREFIX)\site-packages;$(PACKAGE_PREFIX)\xemacs-packages
+ − 105 ! endif
+ − 106 !endif
+ − 107 PATH_PACKAGEPATH="$(PACKAGE_PATH:\=\\)"
442
+ − 108 !if !defined(HAVE_MS_WINDOWS)
+ − 109 HAVE_MS_WINDOWS=1
428
+ − 110 !endif
442
+ − 111 !if !defined(HAVE_X_WINDOWS)
+ − 112 HAVE_X_WINDOWS=0
428
+ − 113 !endif
+ − 114 !if !defined(HAVE_XPM)
+ − 115 HAVE_XPM=0
+ − 116 !endif
+ − 117 !if !defined(HAVE_PNG)
+ − 118 HAVE_PNG=0
+ − 119 !endif
+ − 120 !if !defined(HAVE_TIFF)
+ − 121 HAVE_TIFF=0
+ − 122 !endif
+ − 123 !if !defined(HAVE_JPEG)
+ − 124 HAVE_JPEG=0
+ − 125 !endif
+ − 126 !if !defined(HAVE_XFACE)
+ − 127 HAVE_XFACE=0
+ − 128 !endif
+ − 129 !if !defined(HAVE_GIF)
+ − 130 HAVE_GIF=1
+ − 131 !endif
488
+ − 132 !if !defined(HAVE_GTK)
+ − 133 HAVE_GTK=0
+ − 134 !endif
428
+ − 135 !if !defined(HAVE_TOOLBARS)
+ − 136 HAVE_TOOLBARS=$(HAVE_XPM)
+ − 137 !endif
+ − 138 !if !defined(HAVE_DIALOGS)
+ − 139 HAVE_DIALOGS=1
+ − 140 !endif
+ − 141 !if !defined(HAVE_MSW_C_DIRED)
+ − 142 HAVE_MSW_C_DIRED=1
+ − 143 !endif
+ − 144 !if !defined(HAVE_NATIVE_SOUND)
+ − 145 HAVE_NATIVE_SOUND=1
+ − 146 !endif
+ − 147 !if !defined(HAVE_WIDGETS)
+ − 148 HAVE_WIDGETS=1
+ − 149 !endif
+ − 150 !if !defined(DEBUG_XEMACS)
+ − 151 DEBUG_XEMACS=0
+ − 152 !endif
442
+ − 153 !if !defined(QUICK_BUILD)
+ − 154 QUICK_BUILD=0
+ − 155 !endif
428
+ − 156 !if !defined(USE_UNION_TYPE)
+ − 157 USE_UNION_TYPE=0
+ − 158 !endif
438
+ − 159 !if !defined(USE_MINITAR)
+ − 160 USE_MINITAR=1
+ − 161 !endif
428
+ − 162 !if !defined(USE_MINIMAL_TAGBITS)
+ − 163 USE_MINIMAL_TAGBITS=0
+ − 164 !endif
+ − 165 !if !defined(USE_INDEXED_LRECORD_IMPLEMENTATION)
+ − 166 USE_INDEXED_LRECORD_IMPLEMENTATION=0
+ − 167 !endif
438
+ − 168 !if !defined(USE_PORTABLE_DUMPER)
+ − 169 USE_PORTABLE_DUMPER=0
+ − 170 !endif
428
+ − 171 !if !defined(GUNG_HO)
+ − 172 GUNG_HO=0
+ − 173 !endif
+ − 174
440
+ − 175 # A little bit of adhockery. Default to use system malloc and
+ − 176 # DLL version of the C runtime library when using portable
+ − 177 # dumping. These are the optimal settings.
+ − 178 !if !defined(USE_SYSTEM_MALLOC)
+ − 179 USE_SYSTEM_MALLOC=$(USE_PORTABLE_DUMPER)
+ − 180 !endif
+ − 181 !if !defined(USE_CRTDLL)
+ − 182 USE_CRTDLL=$(USE_PORTABLE_DUMPER)
+ − 183 !endif
+ − 184
428
+ − 185 #
+ − 186 # System configuration
+ − 187 #
+ − 188 !if !defined(OS)
+ − 189 OS=Windows_95/98
+ − 190 EMACS_CONFIGURATION=i586-pc-win32
+ − 191 !else if "$(PROCESSOR_ARCHITECTURE)" == "x86"
+ − 192 EMACS_CONFIGURATION=i586-pc-win32
+ − 193 !else if "$(PROCESSOR_ARCHITECTURE)" == "MIPS"
+ − 194 EMACS_CONFIGURATION=mips-pc-win32
+ − 195 !else if "$(PROCESSOR_ARCHITECTURE)" == "ALPHA"
+ − 196 EMACS_CONFIGURATION=alpha-pc-win32
+ − 197 !else if "$(PROCESSOR_ARCHITECTURE)" == "PPC"
+ − 198 EMACS_CONFIGURATION=ppc-pc-win32
+ − 199 !else
+ − 200 ! error Unknown processor architecture type $(PROCESSOR_ARCHITECTURE)
+ − 201 !endif
+ − 202
+ − 203 #
+ − 204 # Conf error checks
+ − 205 #
+ − 206 CONFIG_ERROR=0
+ − 207 !if $(INFODOCK) && !exist("..\..\Infodock.rules")
+ − 208 !message Cannot build InfoDock without InfoDock sources
+ − 209 CONFIG_ERROR=1
+ − 210 !endif
440
+ − 211 !if !$(USE_PORTABLE_DUMPER) && $(USE_SYSTEM_MALLOC)
+ − 212 !message Cannot use system allocator when dumping old way, use portable dumper.
+ − 213 CONFIG_ERROR=1
+ − 214 !endif
+ − 215 !if !$(USE_PORTABLE_DUMPER) && $(USE_CRTDLL)
+ − 216 !message Cannot use C runtime DLL when dumping old way, use portable dumper.
+ − 217 CONFIG_ERROR=1
+ − 218 !endif
+ − 219 !if !$(USE_SYSTEM_MALLOC) && $(USE_CRTDLL)
+ − 220 !message GNU malloc currently cannot be used with CRT DLL.
+ − 221 !message [[[Developer note: If you want to fix it, read Q112297 first]]] ####
+ − 222 CONFIG_ERROR=1
+ − 223 !endif
442
+ − 224 !if !$(HAVE_MS_WINDOWS) && !$(HAVE_X_WINDOWS)
+ − 225 !message Please specify at least one HAVE_MS_WINDOWS=1 and/or HAVE_X_WINDOWS=1
428
+ − 226 CONFIG_ERROR=1
+ − 227 !endif
442
+ − 228 !if $(HAVE_X_WINDOWS) && !defined(X11_DIR)
428
+ − 229 !message Please specify root directory for your X11 installation: X11_DIR=path
+ − 230 CONFIG_ERROR=1
+ − 231 !endif
442
+ − 232 !if $(HAVE_X_WINDOWS) && defined(X11_DIR) && !exist("$(X11_DIR)\LIB\X11.LIB")
428
+ − 233 !message Specified X11 directory does not contain "$(X11_DIR)\LIB\X11.LIB"
+ − 234 CONFIG_ERROR=1
+ − 235 !endif
488
+ − 236 !if $(HAVE_MS_WINDOWS) && $(HAVE_GTK) && !defined(GTK_DIR)
+ − 237 !message Please specify root directory for your GTK installation: GTK_DIR=path
+ − 238 CONFIG_ERROR=1
+ − 239 !endif
442
+ − 240 !if $(HAVE_MS_WINDOWS) && $(HAVE_XPM) && !defined(XPM_DIR)
428
+ − 241 !message Please specify root directory for your XPM installation: XPM_DIR=path
+ − 242 CONFIG_ERROR=1
+ − 243 !endif
442
+ − 244 !if $(HAVE_MS_WINDOWS) && $(HAVE_XPM) && defined(XPM_DIR) && !exist("$(XPM_DIR)\lib\Xpm.lib")
428
+ − 245 !message Specified XPM directory does not contain "$(XPM_DIR)\lib\Xpm.lib"
+ − 246 CONFIG_ERROR=1
+ − 247 !endif
442
+ − 248 !if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && !defined(PNG_DIR)
428
+ − 249 !message Please specify root directory for your PNG installation: PNG_DIR=path
+ − 250 CONFIG_ERROR=1
+ − 251 !endif
442
+ − 252 !if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && defined(PNG_DIR) && !exist("$(PNG_DIR)\libpng.lib")
428
+ − 253 !message Specified PNG directory does not contain "$(PNG_DIR)\libpng.lib"
+ − 254 CONFIG_ERROR=1
+ − 255 !endif
442
+ − 256 !if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && !defined(ZLIB_DIR)
428
+ − 257 !message Please specify root directory for your ZLIB installation: ZLIB_DIR=path
+ − 258 CONFIG_ERROR=1
+ − 259 !endif
442
+ − 260 !if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && defined(ZLIB_DIR) && !exist("$(ZLIB_DIR)\zlib.lib")
428
+ − 261 !message Specified ZLIB directory does not contain "$(ZLIB_DIR)\zlib.lib"
+ − 262 CONFIG_ERROR=1
+ − 263 !endif
442
+ − 264 !if $(HAVE_MS_WINDOWS) && $(HAVE_TIFF) && !defined(TIFF_DIR)
428
+ − 265 !message Please specify root directory for your TIFF installation: TIFF_DIR=path
+ − 266 CONFIG_ERROR=1
+ − 267 !endif
442
+ − 268 !if $(HAVE_MS_WINDOWS) && $(HAVE_TIFF) && !exist("$(TIFF_DIR)\libtiff\libtiff.lib")
428
+ − 269 !message Specified TIFF directory does not contain "$(TIFF_DIR)\libtiff\libtiff.lib"
+ − 270 CONFIG_ERROR=1
+ − 271 !endif
442
+ − 272 !if $(HAVE_MS_WINDOWS) && $(HAVE_JPEG) && !defined(JPEG_DIR)
428
+ − 273 !message Please specify root directory for your JPEG installation: JPEG_DIR=path
+ − 274 CONFIG_ERROR=1
+ − 275 !endif
442
+ − 276 !if $(HAVE_MS_WINDOWS) && $(HAVE_JPEG) && !exist("$(JPEG_DIR)\libjpeg.lib")
428
+ − 277 !message Specified JPEG directory does not contain "$(JPEG_DIR)\libjpeg.lib"
+ − 278 CONFIG_ERROR=1
+ − 279 !endif
442
+ − 280 !if $(HAVE_MS_WINDOWS) && $(HAVE_XFACE) && !defined(COMPFACE_DIR)
428
+ − 281 !message Please specify root directory for your COMPFACE installation: COMPFACE_DIR=path
+ − 282 CONFIG_ERROR=1
+ − 283 !endif
442
+ − 284 !if $(HAVE_MS_WINDOWS) && $(HAVE_XFACE) && !exist("$(COMPFACE_DIR)\libcompface.lib")
428
+ − 285 !message Specified COMPFACE directory does not contain "$(COMPFACE_DIR)\libcompface.lib"
+ − 286 CONFIG_ERROR=1
+ − 287 !endif
442
+ − 288 !if $(HAVE_MS_WINDOWS) && $(HAVE_TOOLBARS) && !$(HAVE_XPM)
428
+ − 289 !message Toolbars require XPM support
+ − 290 CONFIG_ERROR=1
+ − 291 !endif
+ − 292 !if $(CONFIG_ERROR)
+ − 293 !error Configuration error(s) found
+ − 294 !endif
+ − 295
+ − 296 #
+ − 297 # Handle GUNG_HO
+ − 298 #
+ − 299 !if defined(GUNG_HO)
+ − 300 USE_MINIMAL_TAGBITS=$(GUNG_HO)
+ − 301 USE_INDEXED_LRECORD_IMPLEMENTATION=$(GUNG_HO)
+ − 302 !endif
+ − 303
+ − 304 #
442
+ − 305 # Whether to use dependency information generated by make-src-depend
+ − 306 #
+ − 307 !if !defined(DEPEND)
+ − 308 DEPEND=0
+ − 309 !endif
+ − 310 !if $(DEPEND)
+ − 311 ! if [if not exist $(OUTDIR)\nul mkdir "$(OUTDIR)"]
+ − 312 ! endif
+ − 313 # generate an nmake-readable version of depend
+ − 314 # #### here, it doesn't seem to matter if we double ^'s!
+ − 315 # results are the same with all single ^ and all double ^^!
+ − 316 # see comment below.
462
+ − 317 # #### Yuuuuuuuuuuck!!! Cygwin is too smart for its own good. If we are
+ − 318 # being run from within Cygwin, a Cygwin Perl seems to require twice as
+ − 319 # much backslash quoting. This does not happen, of course, with a non-
+ − 320 # Cygwin Perl, so in that circumstance, you'd be screwed and would have
+ − 321 # to fix this Makefile to not have a special Cygwin case.
+ − 322 ! if defined(_)
+ − 323 ! if [perl -p -e "s/^\\x23if defined(.+)/!if defined$$1/; s/^\\x23e/!e/;" \
+ − 324 -e "s/([\\s=^])([\\w\\d\\.\\-^]+\\.[ch^])/$$1$(SRC:\=\\\\)\\\\$$2/g;" \
494
+ − 325 -e "s/^(.+)\\.o:(.+)/$(OUTDIR:\=\\\\)\\\\$$1.obj:$$2/;" \
462
+ − 326 < $(SRC)\depend > $(OUTDIR)\depend.tmp]
+ − 327 ! endif
+ − 328 ! else
+ − 329 ! if [perl -p -e "s/^\x23if defined(.+)/!if defined$$1/; s/^\x23e/!e/;" \
442
+ − 330 -e "s/([\s=^])([\w\d\.\-^]+\.[ch^])/$$1$(SRC:\=\\)\\$$2/g;" \
494
+ − 331 -e "s/^(.+)\.o:(.+)/$(OUTDIR:\=\\)\\$$1.obj:$$2/;" \
442
+ − 332 < $(SRC)\depend > $(OUTDIR)\depend.tmp]
462
+ − 333 ! endif
442
+ − 334 ! endif
+ − 335 ! include "$(OUTDIR)\depend.tmp"
+ − 336 !else
+ − 337 ! if [echo WARNING: Compiling without dependency information.]
+ − 338 ! endif
+ − 339 !endif
+ − 340
+ − 341 #
428
+ − 342 # Compiler command echo control. Define VERBOSECC=1 to get verbose compilation.
+ − 343 #
+ − 344 !if !defined(VERBOSECC)
+ − 345 VERBOSECC=0
+ − 346 !endif
+ − 347 !if $(VERBOSECC)
+ − 348 CCV=$(CC)
+ − 349 !else
+ − 350 CCV=@$(CC)
+ − 351 !endif
+ − 352
+ − 353 !if $(DEBUG_XEMACS)
+ − 354 OPT=-Od -Zi
+ − 355 !else
+ − 356 OPT=-O2 -G5
+ − 357 !endif
+ − 358
440
+ − 359 !if $(USE_CRTDLL)
+ − 360 !if $(DEBUG_XEMACS)
+ − 361 C_LIBFLAG=-MDd
+ − 362 LIBC_LIB=msvcrtd.lib
+ − 363 !else
+ − 364 C_LIBFLAG=-MD
+ − 365 LIBC_LIB=msvcrt.lib
+ − 366 !endif
+ − 367 !else
+ − 368 C_LIBFLAG=-ML
+ − 369 LIBC_LIB=libc.lib
+ − 370 !endif
+ − 371
+ − 372 CFLAGS=-nologo -W3 $(OPT) $(C_LIBFLAG)
428
+ − 373
442
+ − 374 !if $(HAVE_X_WINDOWS)
428
+ − 375 X_DEFINES=-DHAVE_X_WINDOWS
+ − 376 X_INCLUDES=-I$(X11_DIR)\include
+ − 377 X_LIBS=-libpath:$(X11_DIR)\lib Xaw.lib Xmu.lib Xt.lib SM.lib ICE.lib Xext.lib X11.lib
+ − 378 !endif
+ − 379
442
+ − 380 !if $(HAVE_MS_WINDOWS)
428
+ − 381 MSW_DEFINES=-DHAVE_MS_WINDOWS -DHAVE_SCROLLBARS -DHAVE_MENUBARS
+ − 382 MSW_INCLUDES=
+ − 383 MSW_LIBS=
+ − 384 !if $(HAVE_MSW_C_DIRED)
+ − 385 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_MSW_C_DIRED
442
+ − 386 MSW_C_DIRED_SRC=$(SRC)\dired-msw.c
428
+ − 387 MSW_C_DIRED_OBJ=$(OUTDIR)\dired-msw.obj
+ − 388 !endif
+ − 389 !if $(HAVE_XPM)
+ − 390 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_XPM -DFOR_MSW
+ − 391 MSW_INCLUDES=$(MSW_INCLUDES) -I"$(XPM_DIR)" -I"$(XPM_DIR)\lib"
+ − 392 MSW_LIBS=$(MSW_LIBS) "$(XPM_DIR)\lib\Xpm.lib"
+ − 393 !endif
+ − 394 !if $(HAVE_GIF)
+ − 395 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_GIF
442
+ − 396 MSW_GIF_SRC=$(SRC)\dgif_lib.c $(SRC)\gif_io.c
428
+ − 397 MSW_GIF_OBJ=$(OUTDIR)\dgif_lib.obj $(OUTDIR)\gif_io.obj
+ − 398 !endif
+ − 399 !if $(HAVE_PNG)
+ − 400 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_PNG
+ − 401 MSW_INCLUDES=$(MSW_INCLUDES) -I"$(PNG_DIR)" -I"$(ZLIB_DIR)"
+ − 402 MSW_LIBS=$(MSW_LIBS) "$(PNG_DIR)\libpng.lib" "$(ZLIB_DIR)\zlib.lib"
+ − 403 !endif
+ − 404 !if $(HAVE_TIFF)
+ − 405 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_TIFF
+ − 406 MSW_INCLUDES=$(MSW_INCLUDES) -I"$(TIFF_DIR)\libtiff"
+ − 407 MSW_LIBS=$(MSW_LIBS) "$(TIFF_DIR)\libtiff\libtiff.lib"
+ − 408 !endif
+ − 409 !if $(HAVE_JPEG)
+ − 410 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_JPEG
+ − 411 MSW_INCLUDES=$(MSW_INCLUDES) -I"$(JPEG_DIR)"
+ − 412 MSW_LIBS=$(MSW_LIBS) "$(JPEG_DIR)\libjpeg.lib"
+ − 413 !endif
+ − 414 !if $(HAVE_XFACE)
+ − 415 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_XFACE
+ − 416 MSW_INCLUDES=$(MSW_INCLUDES) -I"$(COMPFACE_DIR)"
+ − 417 MSW_LIBS=$(MSW_LIBS) "$(COMPFACE_DIR)\libcompface.lib"
+ − 418 !endif
+ − 419 !if $(HAVE_TOOLBARS)
+ − 420 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_TOOLBARS
442
+ − 421 MSW_TOOLBAR_SRC=$(SRC)\toolbar.c $(SRC)\toolbar-msw.c
428
+ − 422 MSW_TOOLBAR_OBJ=$(OUTDIR)\toolbar.obj $(OUTDIR)\toolbar-msw.obj
+ − 423 MSW_LIBS=$(MSW_LIBS) comctl32.lib
+ − 424 !endif
+ − 425 !if $(HAVE_DIALOGS)
+ − 426 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_DIALOGS
442
+ − 427 MSW_DIALOG_SRC=$(SRC)\dialog.c $(SRC)\dialog-msw.c
428
+ − 428 MSW_DIALOG_OBJ=$(OUTDIR)\dialog.obj $(OUTDIR)\dialog-msw.obj
+ − 429 !endif
+ − 430 !if $(HAVE_WIDGETS)
+ − 431 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_WIDGETS
+ − 432 !endif
+ − 433 !if $(HAVE_NATIVE_SOUND)
+ − 434 MSW_DEFINES=$(MSW_DEFINES) -DHAVE_NATIVE_SOUND
+ − 435 !endif
+ − 436 !endif
+ − 437
+ − 438 !if $(HAVE_MULE)
+ − 439 MULE_DEFINES=-DMULE
+ − 440 !endif
+ − 441
+ − 442 !if $(DEBUG_XEMACS)
+ − 443 DEBUG_DEFINES=-DDEBUG_XEMACS -D_DEBUG
+ − 444 DEBUG_FLAGS=-debug:full
+ − 445 !endif
+ − 446
442
+ − 447 !if $(QUICK_BUILD)
+ − 448 QUICK_DEFINES=-DQUICK_BUILD
+ − 449 !endif
+ − 450
428
+ − 451 !if $(USE_MINIMAL_TAGBITS)
+ − 452 TAGBITS_DEFINES=-DUSE_MINIMAL_TAGBITS
+ − 453 !endif
+ − 454 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION)
+ − 455 LRECORD_DEFINES=-DUSE_INDEXED_LRECORD_IMPLEMENTATION
+ − 456 !endif
+ − 457 !if $(USE_UNION_TYPE)
440
+ − 458 UNION_DEFINES=-DUSE_UNION_TYPE
+ − 459 !endif
+ − 460
438
+ − 461 !if $(USE_PORTABLE_DUMPER)
+ − 462 DUMPER_DEFINES=-DPDUMP
+ − 463 !endif
+ − 464
440
+ − 465 !if $(USE_SYSTEM_MALLOC)
+ − 466 MALLOC_DEFINES=-DSYSTEM_MALLOC
+ − 467 !else
+ − 468 MALLOC_DEFINES=-DGNU_MALLOC
428
+ − 469 !endif
+ − 470
+ − 471 # Hard-coded paths
+ − 472
+ − 473 !if $(INFODOCK)
+ − 474 PATH_PREFIX=../..
+ − 475 !else
+ − 476 PATH_PREFIX=..
+ − 477 !endif
+ − 478
+ − 479 PATH_DEFINES=-DPATH_PREFIX=\"$(PATH_PREFIX)\"
+ − 480
+ − 481 # Generic variables
+ − 482
442
+ − 483 INCLUDES=$(X_INCLUDES) $(MSW_INCLUDES) -I$(NT)\inc -I$(SRC) -I$(LWLIB_SRCDIR)
428
+ − 484
+ − 485 DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) \
440
+ − 486 $(TAGBITS_DEFINES) $(LRECORD_DEFINES) $(UNION_DEFINES) \
442
+ − 487 $(DUMPER_DEFINES) $(MALLOC_DEFINES) $(QUICK_DEFINES) \
+ − 488 -DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs \
428
+ − 489 -DHAVE_CONFIG_H $(PROGRAM_DEFINES) $(PATH_DEFINES)
+ − 490
+ − 491 #------------------------------------------------------------------------------
+ − 492
+ − 493 $(OUTDIR)\nul:
+ − 494 -@mkdir $(OUTDIR)
+ − 495
+ − 496 XEMACS_INCLUDES=\
442
+ − 497 $(SRC)\config.h \
+ − 498 $(SRC)\Emacs.ad.h \
+ − 499 $(SRC)\paths.h
428
+ − 500
442
+ − 501 $(SRC)\config.h: config.h
+ − 502 copy config.h $(SRC)
428
+ − 503
442
+ − 504 $(SRC)\Emacs.ad.h: Emacs.ad.h
+ − 505 copy Emacs.ad.h $(SRC)
428
+ − 506
442
+ − 507 $(SRC)\paths.h: paths.h
+ − 508 copy paths.h $(SRC)
428
+ − 509
+ − 510 #------------------------------------------------------------------------------
+ − 511
+ − 512 # lib-src programs
+ − 513
442
+ − 514 LIB_SRC_DEFINES = -DHAVE_CONFIG_H -DWIN32_NATIVE
428
+ − 515
+ − 516 #
+ − 517 # Creating config.values to be used by config.el
+ − 518 #
+ − 519 CONFIG_VALUES = $(LIB_SRC)\config.values
+ − 520 !if [echo Creating $(CONFIG_VALUES) && echo ;;; Do not edit this file!>$(CONFIG_VALUES)]
+ − 521 !endif
+ − 522 # MAKEDIR has to be made into a string.
+ − 523 #!if [echo blddir>>$(CONFIG_VALUES) && echo $(ESC)"$(MAKEDIR:\=\\)\\..$(ESC)">>$(CONFIG_VALUES)]
+ − 524 !if [echo blddir>>$(CONFIG_VALUES) && echo "$(MAKEDIR:\=\\)\\..">>$(CONFIG_VALUES)]
+ − 525 !endif
+ − 526 !if [echo CC>>$(CONFIG_VALUES) && echo "$(CC:\=\\)">>$(CONFIG_VALUES)]
+ − 527 !endif
+ − 528 !if [echo CFLAGS>>$(CONFIG_VALUES) && echo "$(CFLAGS:\=\\)">>$(CONFIG_VALUES)]
+ − 529 !endif
+ − 530 !if [echo CPP>>$(CONFIG_VALUES) && echo "$(CPP:\=\\)">>$(CONFIG_VALUES)]
+ − 531 !endif
+ − 532 !if [echo CPPFLAGS>>$(CONFIG_VALUES) && echo "$(CPPFLAGS:\=\\)">>$(CONFIG_VALUES)]
+ − 533 !endif
+ − 534 !if [echo LISPDIR>>$(CONFIG_VALUES) && echo "$(MAKEDIR:\=\\)\\$(LISP:\=\\)">>$(CONFIG_VALUES)]
+ − 535 !endif
+ − 536 # PATH_PACKAGEPATH is already a quoted string.
+ − 537 !if [echo PACKAGE_PATH>>$(CONFIG_VALUES) && echo $(PATH_PACKAGEPATH)>>$(CONFIG_VALUES)]
+ − 538 !endif
+ − 539
+ − 540 # Inferred rule
+ − 541 {$(LIB_SRC)}.c{$(LIB_SRC)}.exe :
430
+ − 542 cd $(LIB_SRC)
442
+ − 543 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no setargv.obj
430
+ − 544 cd $(NT)
428
+ − 545
+ − 546 # Individual dependencies
+ − 547 ETAGS_DEPS = $(LIB_SRC)/getopt.c $(LIB_SRC)/getopt1.c $(LIB_SRC)/../src/regex.c
+ − 548 $(LIB_SRC)/etags.exe : $(LIB_SRC)/etags.c $(ETAGS_DEPS)
+ − 549 $(LIB_SRC)/movemail.exe: $(LIB_SRC)/movemail.c $(LIB_SRC)/pop.c $(ETAGS_DEPS)
430
+ − 550 cd $(LIB_SRC)
428
+ − 551 $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** wsock32.lib -link -incremental:no
430
+ − 552 cd $(NT)
438
+ − 553 $(LIB_SRC)/minitar.exe : $(NT)/minitar.mak $(NT)/minitar.c
+ − 554 nmake -nologo -f minitar.mak ZLIB="$(ZLIB_DIR)" NT="$(NT)" LIB_SRC="$(LIB_SRC)"
428
+ − 555
+ − 556 LIB_SRC_TOOLS = \
442
+ − 557 $(LIB_SRC)/etags.exe \
428
+ − 558 $(LIB_SRC)/hexl.exe \
442
+ − 559 $(LIB_SRC)/i.exe \
+ − 560 $(LIB_SRC)/make-docfile.exe \
428
+ − 561 $(LIB_SRC)/mmencode.exe \
442
+ − 562 $(LIB_SRC)/movemail.exe \
428
+ − 563 $(LIB_SRC)/sorted-doc.exe \
442
+ − 564 $(LIB_SRC)/wakeup.exe
438
+ − 565 !if $(USE_MINITAR)
+ − 566 LIB_SRC_TOOLS = \
+ − 567 $(LIB_SRC_TOOLS) \
+ − 568 $(LIB_SRC)/minitar.exe
+ − 569 !endif
442
+ − 570 !if $(USE_PORTABLE_DUMPER)
+ − 571 LIB_SRC_TOOLS = \
+ − 572 $(XEMACS_INCLUDES) \
+ − 573 $(LIB_SRC)/make-dump-id.exe \
+ − 574 $(LIB_SRC_TOOLS)
+ − 575 !endif
438
+ − 576
+ − 577 # Shorthand target
+ − 578 minitar: $(LIB_SRC)/minitar.exe
428
+ − 579
+ − 580 #------------------------------------------------------------------------------
+ − 581
442
+ − 582 # dump-id.c file that contains the dump id
428
+ − 583
442
+ − 584 $(SRC)\dump-id.c : $(LIB_SRC)/make-dump-id.exe
+ − 585 cd $(SRC)
+ − 586 $(LIB_SRC)\make-dump-id.exe
+ − 587 cd $(NT)
428
+ − 588
+ − 589 #------------------------------------------------------------------------------
+ − 590
+ − 591 # LASTFILE Library
+ − 592
440
+ − 593 !if !$(USE_SYSTEM_MALLOC) || !$(USE_PORTABLE_DUMPER)
+ − 594
428
+ − 595 LASTFILE=$(OUTDIR)\lastfile.lib
442
+ − 596 LASTFILE_SRC=$(SRC)
428
+ − 597 LASTFILE_FLAGS=$(CFLAGS) $(INCLUDES) -Fo$@ -Fd$* -c
+ − 598 LASTFILE_OBJS= \
+ − 599 $(OUTDIR)\lastfile.obj
+ − 600
+ − 601 $(LASTFILE): $(XEMACS_INCLUDES) $(LASTFILE_OBJS)
+ − 602 link.exe -lib -nologo -out:$@ $(LASTFILE_OBJS)
+ − 603
+ − 604 $(OUTDIR)\lastfile.obj: $(LASTFILE_SRC)\lastfile.c
+ − 605 $(CCV) $(LASTFILE_FLAGS) $**
+ − 606
440
+ − 607 !endif
+ − 608
428
+ − 609 #------------------------------------------------------------------------------
+ − 610
442
+ − 611 !if $(HAVE_X_WINDOWS)
428
+ − 612
+ − 613 # LWLIB Library
+ − 614
+ − 615 LWLIB=$(OUTDIR)\lwlib.lib
+ − 616 LWLIB_FLAGS=$(CFLAGS) $(INCLUDES) $(DEFINES) \
+ − 617 -DNEED_ATHENA -DNEED_LUCID \
+ − 618 -D_WINDOWS -DMENUBARS_LUCID -DSCROLLBARS_LUCID -DDIALOGS_ATHENA \
+ − 619 -Fo$@ -c
+ − 620 LWLIB_OBJS= \
+ − 621 $(OUTDIR)\lwlib-config.obj \
+ − 622 $(OUTDIR)\lwlib-utils.obj \
+ − 623 $(OUTDIR)\lwlib-Xaw.obj \
+ − 624 $(OUTDIR)\lwlib-Xlw.obj \
+ − 625 $(OUTDIR)\lwlib.obj \
+ − 626 $(OUTDIR)\xlwmenu.obj \
+ − 627 $(OUTDIR)\xlwscrollbar.obj
+ − 628
+ − 629 $(LWLIB): $(LWLIB_OBJS)
+ − 630 link.exe -lib -nologo -out:$@ $(LWLIB_OBJS)
+ − 631
442
+ − 632 $(OUTDIR)\lwlib-config.obj: $(LWLIB_SRCDIR)\lwlib-config.c
428
+ − 633 $(CCV) $(LWLIB_FLAGS) $**
+ − 634
442
+ − 635 $(OUTDIR)\lwlib-utils.obj: $(LWLIB_SRCDIR)\lwlib-utils.c
428
+ − 636 $(CCV) $(LWLIB_FLAGS) $**
+ − 637
442
+ − 638 $(OUTDIR)\lwlib-Xaw.obj: $(LWLIB_SRCDIR)\lwlib-Xaw.c
428
+ − 639 $(CCV) $(LWLIB_FLAGS) $**
+ − 640
442
+ − 641 $(OUTDIR)\lwlib-Xlw.obj: $(LWLIB_SRCDIR)\lwlib-Xlw.c
428
+ − 642 $(CCV) $(LWLIB_FLAGS) $**
+ − 643
442
+ − 644 $(OUTDIR)\lwlib.obj: $(LWLIB_SRCDIR)\lwlib.c
428
+ − 645 $(CCV) $(LWLIB_FLAGS) $**
+ − 646
442
+ − 647 $(OUTDIR)\xlwmenu.obj: $(LWLIB_SRCDIR)\xlwmenu.c
428
+ − 648 $(CCV) $(LWLIB_FLAGS) $**
+ − 649
442
+ − 650 $(OUTDIR)\xlwscrollbar.obj: $(LWLIB_SRCDIR)\xlwscrollbar.c
428
+ − 651 $(CCV) $(LWLIB_FLAGS) $**
+ − 652
+ − 653 !endif
+ − 654 #------------------------------------------------------------------------------
+ − 655
+ − 656 DOC=$(LIB_SRC)\DOC
+ − 657 DOC_SRC1=\
442
+ − 658 $(SRC)\abbrev.c \
+ − 659 $(SRC)\alloc.c \
+ − 660 $(SRC)\blocktype.c \
+ − 661 $(SRC)\buffer.c \
+ − 662 $(SRC)\bytecode.c \
+ − 663 $(SRC)\callint.c \
+ − 664 $(SRC)\callproc.c \
+ − 665 $(SRC)\casefiddle.c \
+ − 666 $(SRC)\casetab.c \
+ − 667 $(SRC)\chartab.c \
+ − 668 $(SRC)\cmdloop.c \
+ − 669 $(SRC)\cmds.c \
+ − 670 $(SRC)\console-stream.c \
+ − 671 $(SRC)\console.c \
+ − 672 $(SRC)\data.c \
+ − 673 $(SRC)\device.c
428
+ − 674 DOC_SRC2=\
442
+ − 675 $(SRC)\dired.c \
+ − 676 $(SRC)\doc.c \
+ − 677 $(SRC)\doprnt.c \
+ − 678 $(SRC)\dragdrop.c \
+ − 679 $(SRC)\dynarr.c \
+ − 680 $(SRC)\editfns.c \
+ − 681 $(SRC)\elhash.c \
+ − 682 $(SRC)\emacs.c \
+ − 683 $(SRC)\eval.c \
+ − 684 $(SRC)\event-stream.c \
+ − 685 $(SRC)\events.c \
+ − 686 $(SRC)\extents.c \
+ − 687 $(SRC)\faces.c \
+ − 688 $(SRC)\file-coding.c \
+ − 689 $(SRC)\fileio.c \
+ − 690 $(SRC)\filemode.c \
+ − 691 $(SRC)\floatfns.c \
+ − 692 $(SRC)\fns.c
428
+ − 693 DOC_SRC3=\
442
+ − 694 $(SRC)\font-lock.c \
+ − 695 $(SRC)\frame.c \
+ − 696 $(SRC)\general.c \
+ − 697 $(SRC)\getloadavg.c \
+ − 698 $(SRC)\glyphs.c \
+ − 699 $(SRC)\glyphs-eimage.c \
+ − 700 $(SRC)\glyphs-widget.c \
+ − 701 $(SRC)\gui.c \
+ − 702 $(SRC)\gutter.c \
+ − 703 $(SRC)\hash.c \
+ − 704 $(SRC)\imgproc.c \
+ − 705 $(SRC)\indent.c \
+ − 706 $(SRC)\insdel.c \
+ − 707 $(SRC)\intl.c \
+ − 708 $(SRC)\keymap.c \
+ − 709 $(SRC)\line-number.c \
+ − 710 $(SRC)\lread.c \
+ − 711 $(SRC)\lstream.c \
+ − 712 $(SRC)\macros.c \
+ − 713 $(SRC)\marker.c
428
+ − 714 DOC_SRC4=\
442
+ − 715 $(SRC)\md5.c \
+ − 716 $(SRC)\menubar.c \
+ − 717 $(SRC)\minibuf.c \
+ − 718 $(SRC)\nt.c \
+ − 719 $(SRC)\ntplay.c \
+ − 720 $(SRC)\ntproc.c \
+ − 721 $(SRC)\objects.c \
+ − 722 $(SRC)\opaque.c \
+ − 723 $(SRC)\print.c \
+ − 724 $(SRC)\process.c \
+ − 725 $(SRC)\process-nt.c \
+ − 726 $(SRC)\profile.c \
+ − 727 $(SRC)\rangetab.c \
+ − 728 $(SRC)\realpath.c \
+ − 729 $(SRC)\redisplay-output.c \
+ − 730 $(SRC)\redisplay.c \
+ − 731 $(SRC)\regex.c \
+ − 732 $(SRC)\scrollbar.c \
+ − 733 $(SRC)\search.c \
+ − 734 $(SRC)\select.c \
+ − 735 $(SRC)\signal.c \
+ − 736 $(SRC)\sound.c
428
+ − 737 DOC_SRC5=\
442
+ − 738 $(SRC)\specifier.c \
+ − 739 $(SRC)\strftime.c \
+ − 740 $(SRC)\symbols.c \
+ − 741 $(SRC)\syntax.c \
+ − 742 $(SRC)\sysdep.c \
+ − 743 $(SRC)\termcap.c \
+ − 744 $(SRC)\tparam.c \
+ − 745 $(SRC)\undo.c \
+ − 746 $(SRC)\window.c \
+ − 747 $(SRC)\win32.c \
+ − 748 $(SRC)\widget.c
428
+ − 749
442
+ − 750 !if $(HAVE_X_WINDOWS)
428
+ − 751 DOC_SRC6=\
442
+ − 752 $(SRC)\balloon_help.c \
+ − 753 $(SRC)\console-x.c \
+ − 754 $(SRC)\device-x.c \
+ − 755 $(SRC)\dialog-x.c \
+ − 756 $(SRC)\EmacsFrame.c \
+ − 757 $(SRC)\EmacsManager.c \
+ − 758 $(SRC)\EmacsShell-sub.c\
+ − 759 $(SRC)\EmacsShell.c \
+ − 760 $(SRC)\event-Xt.c \
+ − 761 $(SRC)\frame-x.c \
+ − 762 $(SRC)\glyphs-x.c \
+ − 763 $(SRC)\gui-x.c \
+ − 764 $(SRC)\menubar.c \
+ − 765 $(SRC)\menubar-x.c \
+ − 766 $(SRC)\objects-x.c \
+ − 767 $(SRC)\redisplay-x.c \
+ − 768 $(SRC)\scrollbar-x.c \
+ − 769 $(SRC)\balloon-x.c \
+ − 770 $(SRC)\xgccache.c \
+ − 771 $(SRC)\xmu.c \
+ − 772 $(SRC)\select-x.c
428
+ − 773 !endif
+ − 774
442
+ − 775 !if $(HAVE_MS_WINDOWS)
428
+ − 776 DOC_SRC7=\
442
+ − 777 $(SRC)\console-msw.c \
+ − 778 $(SRC)\device-msw.c \
+ − 779 $(SRC)\event-msw.c \
+ − 780 $(SRC)\frame-msw.c \
+ − 781 $(SRC)\glyphs-msw.c \
+ − 782 $(SRC)\gui-msw.c \
+ − 783 $(SRC)\menubar-msw.c \
+ − 784 $(SRC)\objects-msw.c \
+ − 785 $(SRC)\redisplay-msw.c \
+ − 786 $(SRC)\scrollbar-msw.c \
+ − 787 $(SRC)\select-msw.c \
428
+ − 788 $(MSW_C_DIRED_SRC) \
+ − 789 $(MSW_TOOLBAR_SRC) \
+ − 790 $(MSW_DIALOG_SRC) \
+ − 791 $(MSW_GIF_SRC)
+ − 792 !endif
+ − 793
+ − 794 !if $(HAVE_MULE)
+ − 795 DOC_SRC8=\
442
+ − 796 $(SRC)\mule.c \
+ − 797 $(SRC)\mule-charset.c \
+ − 798 $(SRC)\mule-ccl.c
+ − 799 ! if $(HAVE_X_WINDOWS)
+ − 800 DOC_SRC8=$(DOC_SRC8) $(SRC)\input-method-xlib.c
428
+ − 801 ! endif
+ − 802 !endif
+ − 803
+ − 804 !if $(DEBUG_XEMACS)
+ − 805 DOC_SRC9=\
442
+ − 806 $(SRC)\debug.c \
+ − 807 $(SRC)\tests.c
440
+ − 808 !endif
+ − 809
+ − 810 !if !$(USE_SYSTEM_MALLOC)
+ − 811 DOC_SRC10=\
442
+ − 812 $(SRC)\free-hook.c \
+ − 813 $(SRC)\gmalloc.c \
+ − 814 $(SRC)\ntheap.c \
+ − 815 $(SRC)\vm-limit.c
440
+ − 816 !endif
+ − 817
+ − 818 !if !$(USE_PORTABLE_DUMPER)
+ − 819 DOC_SRC11=\
442
+ − 820 $(SRC)\unexnt.c
+ − 821 !else
+ − 822 DOC_SRC11=\
+ − 823 $(SRC)\dumper.c
428
+ − 824 !endif
+ − 825
+ − 826 #------------------------------------------------------------------------------
+ − 827
+ − 828 # TEMACS Executable
+ − 829
+ − 830 # This may not exist
+ − 831 !if "$(emacs_beta_version)" != ""
+ − 832 EMACS_BETA_VERSION=-DEMACS_BETA_VERSION=$(emacs_beta_version)
+ − 833 !ENDIF
+ − 834
440
+ − 835 !if !$(USE_PORTABLE_DUMPER)
442
+ − 836 TEMACS_ENTRYPOINT=-entry:_start
+ − 837 !else
+ − 838 TEMACS_ENTRYPOINT=-entry:mainCRTStartup
440
+ − 839 !endif
+ − 840
442
+ − 841 TEMACS_DIR=$(SRC)
428
+ − 842 TEMACS=$(TEMACS_DIR)\temacs.exe
+ − 843 TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc
442
+ − 844 TEMACS_SRC=$(SRC)
428
+ − 845 TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) $(MSW_LIBS) \
442
+ − 846 oldnames.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib \
+ − 847 shell32.lib wsock32.lib winmm.lib winspool.lib ole32.lib uuid.lib $(LIBC_LIB)
428
+ − 848 TEMACS_LFLAGS=-nologo $(LIBRARIES) $(DEBUG_FLAGS) -base:0x1000000\
442
+ − 849 -stack:0x800000 $(TEMACS_ENTRYPOINT) -subsystem:windows\
428
+ − 850 -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map \
442
+ − 851 -heap:0x00100000 -nodefaultlib -incremental:no setargv.obj
440
+ − 852 TEMACS_CPP_FLAGS=-c \
428
+ − 853 $(CFLAGS) $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \
+ − 854 -DEMACS_MAJOR_VERSION=$(emacs_major_version) \
+ − 855 -DEMACS_MINOR_VERSION=$(emacs_minor_version) \
+ − 856 $(EMACS_BETA_VERSION) \
442
+ − 857 -DXEMACS_CODENAME=\"$(xemacs_codename:&=and)\" \
428
+ − 858 -DEMACS_CONFIGURATION=\"$(EMACS_CONFIGURATION)\" \
+ − 859 -DPATH_PACKAGEPATH=\"$(PATH_PACKAGEPATH)\"
+ − 860
442
+ − 861 !if $(HAVE_X_WINDOWS)
428
+ − 862 TEMACS_X_OBJS=\
+ − 863 $(OUTDIR)\balloon-x.obj \
+ − 864 $(OUTDIR)\balloon_help.obj \
+ − 865 $(OUTDIR)\console-x.obj \
+ − 866 $(OUTDIR)\device-x.obj \
+ − 867 $(OUTDIR)\dialog-x.obj \
+ − 868 $(OUTDIR)\EmacsFrame.obj \
+ − 869 $(OUTDIR)\EmacsManager.obj \
+ − 870 $(OUTDIR)\EmacsShell.obj \
+ − 871 $(OUTDIR)\TopLevelEmacsShell.obj\
+ − 872 $(OUTDIR)\TransientEmacsShell.obj\
+ − 873 $(OUTDIR)\event-Xt.obj \
+ − 874 $(OUTDIR)\frame-x.obj \
+ − 875 $(OUTDIR)\glyphs-x.obj \
+ − 876 $(OUTDIR)\gui-x.obj \
+ − 877 $(OUTDIR)\menubar-x.obj \
+ − 878 $(OUTDIR)\objects-x.obj \
+ − 879 $(OUTDIR)\redisplay-x.obj \
+ − 880 $(OUTDIR)\scrollbar-x.obj \
+ − 881 $(OUTDIR)\xgccache.obj \
+ − 882 $(OUTDIR)\xmu.obj \
+ − 883 $(OUTDIR)\select-x.obj
+ − 884 !endif
+ − 885
442
+ − 886 !if $(HAVE_MS_WINDOWS)
428
+ − 887 TEMACS_MSW_OBJS=\
+ − 888 $(OUTDIR)\console-msw.obj \
+ − 889 $(OUTDIR)\device-msw.obj \
+ − 890 $(OUTDIR)\event-msw.obj \
+ − 891 $(OUTDIR)\frame-msw.obj \
+ − 892 $(OUTDIR)\glyphs-msw.obj \
+ − 893 $(OUTDIR)\gui-msw.obj \
+ − 894 $(OUTDIR)\menubar-msw.obj \
+ − 895 $(OUTDIR)\objects-msw.obj \
+ − 896 $(OUTDIR)\redisplay-msw.obj \
+ − 897 $(OUTDIR)\scrollbar-msw.obj \
+ − 898 $(OUTDIR)\select-msw.obj \
+ − 899 $(MSW_C_DIRED_OBJ) \
+ − 900 $(MSW_TOOLBAR_OBJ) \
+ − 901 $(MSW_DIALOG_OBJ) \
+ − 902 $(MSW_GIF_OBJ)
+ − 903 !endif
+ − 904
+ − 905 !if $(HAVE_MULE)
+ − 906 TEMACS_MULE_OBJS=\
+ − 907 $(OUTDIR)\mule.obj \
+ − 908 $(OUTDIR)\mule-charset.obj \
+ − 909 $(OUTDIR)\mule-ccl.obj
442
+ − 910 ! if $(HAVE_X_WINDOWS)
428
+ − 911 TEMACS_MULE_OBJS=\
+ − 912 $(TEMACS_MULE_OBJS) $(OUTDIR)\input-method-xlib.obj
+ − 913 ! endif
+ − 914 !endif
+ − 915
+ − 916 !if $(DEBUG_XEMACS)
+ − 917 TEMACS_DEBUG_OBJS=\
440
+ − 918 $(OUTDIR)\debug.obj \
+ − 919 $(OUTDIR)\tests.obj
+ − 920 !endif
+ − 921
+ − 922 !if !$(USE_SYSTEM_MALLOC)
+ − 923 TEMACS_ALLOC_OBJS=\
+ − 924 $(OUTDIR)\free-hook.obj \
+ − 925 $(OUTDIR)\gmalloc.obj \
+ − 926 $(OUTDIR)\ntheap.obj \
+ − 927 $(OUTDIR)\vm-limit.obj
+ − 928 !endif
+ − 929
+ − 930 !if !$(USE_PORTABLE_DUMPER)
+ − 931 TEMACS_DUMP_OBJS=\
+ − 932 $(OUTDIR)\unexnt.obj
442
+ − 933 !else
+ − 934 TEMACS_DUMP_OBJS=\
+ − 935 $(OUTDIR)\dumper.obj
428
+ − 936 !endif
+ − 937
+ − 938 TEMACS_OBJS= \
+ − 939 $(TEMACS_X_OBJS)\
+ − 940 $(TEMACS_MSW_OBJS)\
+ − 941 $(TEMACS_CODING_OBJS)\
+ − 942 $(TEMACS_MULE_OBJS)\
+ − 943 $(TEMACS_DEBUG_OBJS)\
440
+ − 944 $(TEMACS_ALLOC_OBJS)\
+ − 945 $(TEMACS_DUMP_OBJS)\
428
+ − 946 $(OUTDIR)\abbrev.obj \
+ − 947 $(OUTDIR)\alloc.obj \
+ − 948 $(OUTDIR)\blocktype.obj \
+ − 949 $(OUTDIR)\buffer.obj \
+ − 950 $(OUTDIR)\bytecode.obj \
+ − 951 $(OUTDIR)\callint.obj \
+ − 952 $(OUTDIR)\callproc.obj \
+ − 953 $(OUTDIR)\casefiddle.obj \
+ − 954 $(OUTDIR)\casetab.obj \
+ − 955 $(OUTDIR)\chartab.obj \
+ − 956 $(OUTDIR)\cmdloop.obj \
+ − 957 $(OUTDIR)\cmds.obj \
+ − 958 $(OUTDIR)\console-stream.obj \
+ − 959 $(OUTDIR)\console.obj \
+ − 960 $(OUTDIR)\data.obj \
+ − 961 $(OUTDIR)\device.obj \
+ − 962 $(OUTDIR)\dired.obj \
+ − 963 $(OUTDIR)\doc.obj \
+ − 964 $(OUTDIR)\doprnt.obj \
+ − 965 $(OUTDIR)\dragdrop.obj \
+ − 966 $(OUTDIR)\dynarr.obj \
+ − 967 $(OUTDIR)\editfns.obj \
+ − 968 $(OUTDIR)\elhash.obj \
+ − 969 $(OUTDIR)\emacs.obj \
+ − 970 $(OUTDIR)\eval.obj \
+ − 971 $(OUTDIR)\event-stream.obj \
+ − 972 $(OUTDIR)\events.obj \
+ − 973 $(OUTDIR)\extents.obj \
+ − 974 $(OUTDIR)\faces.obj \
+ − 975 $(OUTDIR)\file-coding.obj \
+ − 976 $(OUTDIR)\fileio.obj \
+ − 977 $(OUTDIR)\filemode.obj \
+ − 978 $(OUTDIR)\floatfns.obj \
+ − 979 $(OUTDIR)\fns.obj \
+ − 980 $(OUTDIR)\font-lock.obj \
+ − 981 $(OUTDIR)\frame.obj \
+ − 982 $(OUTDIR)\general.obj \
442
+ − 983 $(OUTDIR)\getloadavg.obj \
428
+ − 984 $(OUTDIR)\glyphs.obj \
+ − 985 $(OUTDIR)\glyphs-eimage.obj \
+ − 986 $(OUTDIR)\glyphs-widget.obj \
+ − 987 $(OUTDIR)\gui.obj \
+ − 988 $(OUTDIR)\gutter.obj \
+ − 989 $(OUTDIR)\hash.obj \
+ − 990 $(OUTDIR)\indent.obj \
+ − 991 $(OUTDIR)\imgproc.obj \
+ − 992 $(OUTDIR)\insdel.obj \
+ − 993 $(OUTDIR)\intl.obj \
+ − 994 $(OUTDIR)\keymap.obj \
+ − 995 $(OUTDIR)\line-number.obj \
+ − 996 $(OUTDIR)\lread.obj \
+ − 997 $(OUTDIR)\lstream.obj \
+ − 998 $(OUTDIR)\macros.obj \
+ − 999 $(OUTDIR)\menubar.obj \
+ − 1000 $(OUTDIR)\marker.obj \
+ − 1001 $(OUTDIR)\md5.obj \
+ − 1002 $(OUTDIR)\minibuf.obj \
+ − 1003 $(OUTDIR)\nt.obj \
+ − 1004 $(OUTDIR)\ntplay.obj \
+ − 1005 $(OUTDIR)\ntproc.obj \
+ − 1006 $(OUTDIR)\objects.obj \
+ − 1007 $(OUTDIR)\opaque.obj \
+ − 1008 $(OUTDIR)\print.obj \
+ − 1009 $(OUTDIR)\process.obj \
+ − 1010 $(OUTDIR)\process-nt.obj \
+ − 1011 $(OUTDIR)\profile.obj \
+ − 1012 $(OUTDIR)\rangetab.obj \
+ − 1013 $(OUTDIR)\realpath.obj \
+ − 1014 $(OUTDIR)\redisplay-output.obj \
+ − 1015 $(OUTDIR)\redisplay.obj \
+ − 1016 $(OUTDIR)\regex.obj \
+ − 1017 $(OUTDIR)\scrollbar.obj \
+ − 1018 $(OUTDIR)\search.obj \
+ − 1019 $(OUTDIR)\select.obj \
+ − 1020 $(OUTDIR)\signal.obj \
+ − 1021 $(OUTDIR)\sound.obj \
+ − 1022 $(OUTDIR)\specifier.obj \
+ − 1023 $(OUTDIR)\strftime.obj \
+ − 1024 $(OUTDIR)\symbols.obj \
+ − 1025 $(OUTDIR)\syntax.obj \
+ − 1026 $(OUTDIR)\sysdep.obj \
+ − 1027 $(OUTDIR)\tparam.obj \
+ − 1028 $(OUTDIR)\undo.obj \
+ − 1029 $(OUTDIR)\widget.obj \
+ − 1030 $(OUTDIR)\window.obj \
442
+ − 1031 $(OUTDIR)\win32.obj
428
+ − 1032
+ − 1033 # Rules
+ − 1034
+ − 1035 .SUFFIXES:
430
+ − 1036 .SUFFIXES: .c .obj .texi .info
428
+ − 1037
+ − 1038 # nmake rule
+ − 1039 !if $(DEBUG_XEMACS)
+ − 1040 {$(TEMACS_SRC)}.c{$(OUTDIR)}.obj:
+ − 1041 $(CCV) $(TEMACS_CPP_FLAGS) $< -Fo$@ -Fr$*.sbr -Fd$(OUTDIR)\temacs.pdb
+ − 1042 !else
+ − 1043 {$(TEMACS_SRC)}.c{$(OUTDIR)}.obj:
+ − 1044 $(CCV) $(TEMACS_CPP_FLAGS) $< -Fo$@
+ − 1045 !endif
+ − 1046
442
+ − 1047 $(OUTDIR)\emacs.obj: $(XEMACS)\version.sh
+ − 1048
428
+ − 1049 $(OUTDIR)\TopLevelEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c
+ − 1050 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@
+ − 1051
+ − 1052 $(OUTDIR)\TransientEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c
+ − 1053 $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TRANSIENT_EMACS_SHELL $** -Fo$@
+ − 1054
+ − 1055 $(OUTDIR)\alloc.obj: $(TEMACS_SRC)\alloc.c
+ − 1056
+ − 1057 #$(TEMACS_SRC)\Emacs.ad.h: $(XEMACS)\etc\Emacs.ad
+ − 1058 # !"sed -f ad2c.sed < $(XEMACS)\etc\Emacs.ad > $(TEMACS_SRC)\Emacs.ad.h"
+ − 1059
+ − 1060 #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in
+ − 1061 # !"cd $(TEMACS_SRC); cp paths.h.in paths.h"
+ − 1062
442
+ − 1063 $(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS) $(OUTDIR)\xemacs.res
428
+ − 1064 !if $(DEBUG_XEMACS)
+ − 1065 @dir /b/s $(OUTDIR)\*.sbr > bscmake.tmp
+ − 1066 bscmake -nologo -o$(TEMACS_BROWSE) @bscmake.tmp
488
+ − 1067 $(DEL) bscmake.tmp
428
+ − 1068 !endif
440
+ − 1069 !if $(USE_PORTABLE_DUMPER)
442
+ − 1070 @if exist $(SRC)\dump-id.c del $(SRC)\dump-id.c
+ − 1071 # make a new dump id file. There is probably a better way to do this, but this works
+ − 1072 @if exist $(OUTDIR)\dump-id.obj del $(OUTDIR)\dump-id.obj
+ − 1073 nmake -nologo -f xemacs.mak OUTDIR=$(OUTDIR) $(OUTDIR)\dump-id.obj
428
+ − 1074 link.exe @<<
442
+ − 1075 $(TEMACS_LFLAGS) -out:$@ $(TEMACS_OBJS) $(TEMACS_LIBS) $(OUTDIR)\dump-id.obj
428
+ − 1076 <<
442
+ − 1077 !else
+ − 1078 link.exe @<<
+ − 1079 $(TEMACS_LFLAGS) -out:$@ $(TEMACS_OBJS) $(OUTDIR)\xemacs.res $(TEMACS_LIBS)
+ − 1080 <<
+ − 1081 !endif
428
+ − 1082
+ − 1083 $(OUTDIR)\xemacs.res: xemacs.rc
+ − 1084 rc -Fo$@ xemacs.rc
+ − 1085
442
+ − 1086
+ − 1087 PROGNAME=$(SRC)\xemacs.exe
+ − 1088 TEMACS_BATCH="$(LIB_SRC)\i" "$(TEMACS)" -batch
+ − 1089 XEMACS_BATCH="$(LIB_SRC)\i" "$(PROGNAME)" -vanilla -batch
+ − 1090
428
+ − 1091 # Section handling automated tests starts here
+ − 1092
+ − 1093 blddir=$(MAKEDIR:\=\\)\\..
442
+ − 1094 temacs_loadup=$(TEMACS_BATCH) -l $(LISP)/loadup.el
428
+ − 1095 dump_temacs = $(temacs_loadup) dump
+ − 1096 run_temacs = $(temacs_loadup) run-temacs
+ − 1097 ## We have automated tests!!
+ − 1098 testdir=../tests/automated
+ − 1099 batch_test_emacs=-batch -l $(testdir)/test-harness.el -f batch-test-emacs $(testdir)
+ − 1100
+ − 1101 # .PHONY: check check-temacs
+ − 1102
+ − 1103 check:
442
+ − 1104 cd $(SRC)
428
+ − 1105 $(PROGNAME) $(batch_test_emacs)
+ − 1106
+ − 1107 check-temacs:
442
+ − 1108 cd $(SRC)
428
+ − 1109 set EMACSBOOTSTRAPLOADPATH=$(LISP)
+ − 1110 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
+ − 1111 $(run_temacs) $(batch_test_emacs)
+ − 1112
+ − 1113 # Section handling automated tests ends here
+ − 1114
442
+ − 1115 # Section handling tags starts here
+ − 1116
+ − 1117 tagslisp=lisp
+ − 1118
+ − 1119 tags:
+ − 1120 @echo If you don't have a copy of etags around, then do 'make lib-src' first.
+ − 1121 @echo To make use of the tags file, put the following in your .emacs:
+ − 1122 @echo (setq tag-table-alist
+ − 1123 @echo '(("$(XEMACSDIRSTRING)\\" . "$(XEMACSDIRSTRING)\\")))
+ − 1124 cd $(XEMACS)
+ − 1125 $(DEL) TAGS
+ − 1126 set PATH=lib-src;%PATH%
+ − 1127 # we need to double ^, but only before backslash! Doubling it elsewhere
+ − 1128 # causes problems. I don't understand this -- CMD.EXE uses ^ as a quoting
+ − 1129 # convention of sorts, but appears to leave it alone inside of double quotes,
+ − 1130 # even before \. Could this be nmake interference?
+ − 1131 etags -a -r "/[ ]*DEF\(VAR\|INE\)_[A-Z_]+[ ]*([ ]*\"\([^^\"]+\)\"/\2/" src\*.c src\*.h lwlib\*.c lwlib\*.h lib-src\*.c lib-src\*.h
+ − 1132 etags -a -l none -r "/^(def\(var\|un\|alias\|const\|macro\|subst\|struct\|face\|group\|custom\|ine-\(function\|compiler-macro\|[a-z-]+alias\)\)[ ]+'?\([^ ]+\)/\3/" $(tagslisp)\*.el
+ − 1133
+ − 1134 # Section handling tags ends here
+ − 1135
428
+ − 1136 # Section handling info starts here
430
+ − 1137
+ − 1138 !if !defined(MAKEINFO)
442
+ − 1139 MAKEINFO=$(XEMACS_BATCH) -l texinfmt -f batch-texinfo-format
430
+ − 1140 !endif
428
+ − 1141
+ − 1142 MANDIR = $(XEMACS)\man
+ − 1143 INFODIR = $(XEMACS)\info
+ − 1144 INFO_FILES= \
+ − 1145 $(INFODIR)\cl.info \
+ − 1146 $(INFODIR)\custom.info \
+ − 1147 $(INFODIR)\emodules.info \
+ − 1148 $(INFODIR)\external-widget.info \
+ − 1149 $(INFODIR)\info.info \
+ − 1150 $(INFODIR)\standards.info \
+ − 1151 $(INFODIR)\term.info \
+ − 1152 $(INFODIR)\termcap.info \
+ − 1153 $(INFODIR)\texinfo.info \
+ − 1154 $(INFODIR)\widget.info \
+ − 1155 $(INFODIR)\xemacs-faq.info \
+ − 1156 $(INFODIR)\xemacs.info \
+ − 1157 $(INFODIR)\lispref.info \
+ − 1158 $(INFODIR)\new-users-guide.info \
+ − 1159 $(INFODIR)\internals.info
+ − 1160
+ − 1161 {$(MANDIR)}.texi{$(INFODIR)}.info:
430
+ − 1162 cd $(MANDIR)
428
+ − 1163 $(MAKEINFO) $**
+ − 1164
430
+ − 1165 XEMACS_SRCS = \
428
+ − 1166 $(MANDIR)\xemacs\abbrevs.texi \
+ − 1167 $(MANDIR)\xemacs\basic.texi \
+ − 1168 $(MANDIR)\xemacs\buffers.texi \
+ − 1169 $(MANDIR)\xemacs\building.texi \
+ − 1170 $(MANDIR)\xemacs\calendar.texi \
+ − 1171 $(MANDIR)\xemacs\cmdargs.texi \
+ − 1172 $(MANDIR)\xemacs\custom.texi \
+ − 1173 $(MANDIR)\xemacs\display.texi \
+ − 1174 $(MANDIR)\xemacs\entering.texi \
+ − 1175 $(MANDIR)\xemacs\files.texi \
+ − 1176 $(MANDIR)\xemacs\fixit.texi \
430
+ − 1177 $(MANDIR)\xemacs\frame.texi \
428
+ − 1178 $(MANDIR)\xemacs\glossary.texi \
+ − 1179 $(MANDIR)\xemacs\gnu.texi \
+ − 1180 $(MANDIR)\xemacs\help.texi \
+ − 1181 $(MANDIR)\xemacs\indent.texi \
+ − 1182 $(MANDIR)\xemacs\keystrokes.texi \
+ − 1183 $(MANDIR)\xemacs\killing.texi \
+ − 1184 $(MANDIR)\xemacs\m-x.texi \
+ − 1185 $(MANDIR)\xemacs\major.texi \
+ − 1186 $(MANDIR)\xemacs\mark.texi \
+ − 1187 $(MANDIR)\xemacs\menus.texi \
+ − 1188 $(MANDIR)\xemacs\mini.texi \
+ − 1189 $(MANDIR)\xemacs\misc.texi \
+ − 1190 $(MANDIR)\xemacs\mouse.texi \
430
+ − 1191 $(MANDIR)\xemacs\mule.texi \
428
+ − 1192 $(MANDIR)\xemacs\new.texi \
430
+ − 1193 $(MANDIR)\xemacs\packages.texi \
428
+ − 1194 $(MANDIR)\xemacs\picture.texi \
+ − 1195 $(MANDIR)\xemacs\programs.texi \
+ − 1196 $(MANDIR)\xemacs\reading.texi \
+ − 1197 $(MANDIR)\xemacs\regs.texi \
+ − 1198 $(MANDIR)\xemacs\search.texi \
+ − 1199 $(MANDIR)\xemacs\sending.texi \
430
+ − 1200 $(MANDIR)\xemacs\startup.texi \
428
+ − 1201 $(MANDIR)\xemacs\text.texi \
+ − 1202 $(MANDIR)\xemacs\trouble.texi \
+ − 1203 $(MANDIR)\xemacs\undo.texi \
430
+ − 1204 $(MANDIR)\xemacs\windows.texi \
+ − 1205 $(MANDIR)\xemacs\xemacs.texi
428
+ − 1206
430
+ − 1207 LISPREF_SRCS = \
428
+ − 1208 $(MANDIR)\lispref\abbrevs.texi \
+ − 1209 $(MANDIR)\lispref\annotations.texi \
+ − 1210 $(MANDIR)\lispref\back.texi \
+ − 1211 $(MANDIR)\lispref\backups.texi \
+ − 1212 $(MANDIR)\lispref\buffers.texi \
+ − 1213 $(MANDIR)\lispref\building.texi \
+ − 1214 $(MANDIR)\lispref\commands.texi \
+ − 1215 $(MANDIR)\lispref\compile.texi \
+ − 1216 $(MANDIR)\lispref\consoles-devices.texi \
+ − 1217 $(MANDIR)\lispref\control.texi \
430
+ − 1218 $(MANDIR)\lispref\customize.texi \
428
+ − 1219 $(MANDIR)\lispref\databases.texi \
+ − 1220 $(MANDIR)\lispref\debugging.texi \
+ − 1221 $(MANDIR)\lispref\dialog.texi \
+ − 1222 $(MANDIR)\lispref\display.texi \
430
+ − 1223 $(MANDIR)\lispref\dragndrop.texi \
428
+ − 1224 $(MANDIR)\lispref\edebug-inc.texi \
+ − 1225 $(MANDIR)\lispref\edebug.texi \
+ − 1226 $(MANDIR)\lispref\errors.texi \
+ − 1227 $(MANDIR)\lispref\eval.texi \
+ − 1228 $(MANDIR)\lispref\extents.texi \
+ − 1229 $(MANDIR)\lispref\faces.texi \
+ − 1230 $(MANDIR)\lispref\files.texi \
+ − 1231 $(MANDIR)\lispref\frames.texi \
+ − 1232 $(MANDIR)\lispref\functions.texi \
+ − 1233 $(MANDIR)\lispref\glyphs.texi \
+ − 1234 $(MANDIR)\lispref\hash-tables.texi \
+ − 1235 $(MANDIR)\lispref\help.texi \
+ − 1236 $(MANDIR)\lispref\hooks.texi \
430
+ − 1237 $(MANDIR)\lispref\index.texi \
428
+ − 1238 $(MANDIR)\lispref\internationalization.texi \
+ − 1239 $(MANDIR)\lispref\intro.texi \
+ − 1240 $(MANDIR)\lispref\keymaps.texi \
+ − 1241 $(MANDIR)\lispref\ldap.texi \
430
+ − 1242 $(MANDIR)\lispref\lispref.texi \
428
+ − 1243 $(MANDIR)\lispref\lists.texi \
+ − 1244 $(MANDIR)\lispref\loading.texi \
+ − 1245 $(MANDIR)\lispref\locals.texi \
+ − 1246 $(MANDIR)\lispref\macros.texi \
+ − 1247 $(MANDIR)\lispref\maps.texi \
+ − 1248 $(MANDIR)\lispref\markers.texi \
+ − 1249 $(MANDIR)\lispref\menus.texi \
+ − 1250 $(MANDIR)\lispref\minibuf.texi \
+ − 1251 $(MANDIR)\lispref\modes.texi \
+ − 1252 $(MANDIR)\lispref\mouse.texi \
+ − 1253 $(MANDIR)\lispref\mule.texi \
+ − 1254 $(MANDIR)\lispref\numbers.texi \
+ − 1255 $(MANDIR)\lispref\objects.texi \
+ − 1256 $(MANDIR)\lispref\os.texi \
+ − 1257 $(MANDIR)\lispref\positions.texi \
+ − 1258 $(MANDIR)\lispref\processes.texi \
+ − 1259 $(MANDIR)\lispref\range-tables.texi \
+ − 1260 $(MANDIR)\lispref\scrollbars.texi \
+ − 1261 $(MANDIR)\lispref\searching.texi \
+ − 1262 $(MANDIR)\lispref\sequences.texi \
+ − 1263 $(MANDIR)\lispref\specifiers.texi \
+ − 1264 $(MANDIR)\lispref\streams.texi \
+ − 1265 $(MANDIR)\lispref\strings.texi \
+ − 1266 $(MANDIR)\lispref\symbols.texi \
+ − 1267 $(MANDIR)\lispref\syntax.texi \
+ − 1268 $(MANDIR)\lispref\text.texi \
+ − 1269 $(MANDIR)\lispref\tips.texi \
+ − 1270 $(MANDIR)\lispref\toolbar.texi \
+ − 1271 $(MANDIR)\lispref\tooltalk.texi \
+ − 1272 $(MANDIR)\lispref\variables.texi \
+ − 1273 $(MANDIR)\lispref\windows.texi \
430
+ − 1274 $(MANDIR)\lispref\x-windows.texi
+ − 1275
+ − 1276 INTERNALS_SRCS = \
+ − 1277 $(MANDIR)\internals\internals.texi \
+ − 1278 $(MANDIR)\internals\index.texi
+ − 1279
+ − 1280 NEW_USERS_GUIDE_SRCS = \
+ − 1281 $(MANDIR)\new-users-guide\custom1.texi \
+ − 1282 $(MANDIR)\new-users-guide\custom2.texi \
+ − 1283 $(MANDIR)\new-users-guide\edit.texi \
+ − 1284 $(MANDIR)\new-users-guide\enter.texi \
+ − 1285 $(MANDIR)\new-users-guide\files.texi \
+ − 1286 $(MANDIR)\new-users-guide\help.texi \
+ − 1287 $(MANDIR)\new-users-guide\modes.texi \
+ − 1288 $(MANDIR)\new-users-guide\new-users-guide.texi \
+ − 1289 $(MANDIR)\new-users-guide\region.texi \
+ − 1290 $(MANDIR)\new-users-guide\search.texi \
+ − 1291 $(MANDIR)\new-users-guide\xmenu.texi
+ − 1292
+ − 1293 $(INFODIR)\xemacs.info: $(XEMACS_SRCS)
+ − 1294 cd $(MANDIR)\xemacs
+ − 1295 $(MAKEINFO) xemacs.texi
+ − 1296 cd ..
428
+ − 1297
+ − 1298
430
+ − 1299 $(INFODIR)\lispref.info: $(LISPREF_SRCS)
+ − 1300 cd $(MANDIR)\lispref
+ − 1301 $(MAKEINFO) lispref.texi
+ − 1302 cd ..
+ − 1303
+ − 1304 $(INFODIR)\internals.info: $(INTERNALS_SRCS)
+ − 1305 cd $(MANDIR)\internals
+ − 1306 $(MAKEINFO) internals.texi
+ − 1307 cd ..
+ − 1308
+ − 1309 $(INFODIR)\new-users-guide.info: $(NEW_USERS_GUIDE_SRCS)
+ − 1310 cd $(MANDIR)\new-users-guide
+ − 1311 $(MAKEINFO) new-users-guide.texi
+ − 1312 cd ..
428
+ − 1313
430
+ − 1314 info: makeinfo-test $(INFO_FILES)
428
+ − 1315
430
+ − 1316 makeinfo-test:
+ − 1317 @<<makeinfo_test.bat
+ − 1318 @echo off
+ − 1319 if exist "$(MAKEINFO)" goto test_done
442
+ − 1320 @$(XEMACS_BATCH) -eval "(condition-case nil (require (quote texinfo)) (t (kill-emacs 1)))"
430
+ − 1321 @if not errorlevel 1 goto suggest_makeinfo
442
+ − 1322 @echo XEmacs 'info' cannot be built!
+ − 1323 @echo Install XEmacs package 'texinfo' (see README.packages).
430
+ − 1324 :suggest_makeinfo
+ − 1325 @echo Consider specifying path to makeinfo program: MAKEINFO=path
442
+ − 1326 @echo as this will build info docs faster than XEmacs using 'texinfo'.
430
+ − 1327 @if errorlevel 1 exit 1
+ − 1328 :test_done
+ − 1329 <<NOKEEP
428
+ − 1330
+ − 1331 # Section handling info ends here
+ − 1332
+ − 1333 #------------------------------------------------------------------------------
+ − 1334
+ − 1335 # LISP bits 'n bobs
+ − 1336
+ − 1337 LOADPATH=$(LISP)
+ − 1338
440
+ − 1339 # Rebuild docfile target
+ − 1340 docfile ::
488
+ − 1341 if exist $(DOC) $(DEL) $(DOC)
440
+ − 1342 docfile :: $(DOC)
+ − 1343
442
+ − 1344 $(DOC): $(LIB_SRC)\make-docfile.exe $(DOC_SRC1) $(DOC_SRC2) $(DOC_SRC3) $(DOC_SRC4) $(DOC_SRC5) $(DOC_SRC6) $(DOC_SRC7) $(DOC_SRC8) $(DOC_SRC9) $(DOC_SRC10) $(DOC_SRC11)
494
+ − 1345 if exist $(DOC) del $(DOC)
440
+ − 1346 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
+ − 1347 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
442
+ − 1348 $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\make-docfile.el -- -o $(DOC) -i $(XEMACS)\site-packages
428
+ − 1349 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC1)
+ − 1350 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC2)
+ − 1351 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC3)
+ − 1352 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC4)
+ − 1353 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC5)
+ − 1354 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC6)
+ − 1355 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC7)
+ − 1356 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC8)
+ − 1357 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9)
440
+ − 1358 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC10)
+ − 1359 $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC11)
428
+ − 1360
+ − 1361 update-elc:
+ − 1362 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
+ − 1363 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
442
+ − 1364 $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\update-elc.el
+ − 1365
+ − 1366 # This file is touched by update-elc.el when redumping is necessary.
+ − 1367 $(TEMACS_DIR)\NEEDTODUMP :
+ − 1368 @echo >$(TEMACS_DIR)\NEEDTODUMP
428
+ − 1369
+ − 1370 # This rule dumps xemacs and then possibly spawns sub-make if PURESPACE
+ − 1371 # requirements have changed.
442
+ − 1372
+ − 1373 $(PROGNAME) : $(TEMACS) $(TEMACS_DIR)\NEEDTODUMP
428
+ − 1374 @echo >$(TEMACS_DIR)\SATISFIED
+ − 1375 cd $(TEMACS_DIR)
+ − 1376 set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH)
440
+ − 1377 set EMACSBOOTSTRAPMODULEPATH=$(MODULES)
442
+ − 1378 $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\loadup.el dump
440
+ − 1379 !if $(USE_PORTABLE_DUMPER)
442
+ − 1380 rc -d INCLUDE_DUMP -Fo $(OUTDIR)\xemacs.res $(NT)\xemacs.rc
+ − 1381 link.exe @<<
+ − 1382 $(TEMACS_LFLAGS) -out:xemacs.exe $(TEMACS_OBJS) $(OUTDIR)\xemacs.res $(TEMACS_LIBS) $(OUTDIR)\dump-id.obj
+ − 1383 <<
+ − 1384 # Make the resource section read/write since almost all of it is the dump
+ − 1385 # data which needs to be writable. This avoids having to copy it.
+ − 1386 editbin -nologo -section:.rsrc,rw xemacs.exe
488
+ − 1387 $(DEL) $(TEMACS_DIR)\xemacs.dmp
440
+ − 1388 !endif
430
+ − 1389 cd $(NT)
428
+ − 1390 @if not exist $(TEMACS_DIR)\SATISFIED nmake -nologo -f xemacs.mak $@
+ − 1391 #------------------------------------------------------------------------------
+ − 1392
+ − 1393 # use this rule to build the complete system
442
+ − 1394 all: installation $(OUTDIR)\nul $(LASTFILE) $(LWLIB) \
+ − 1395 $(LIB_SRC_TOOLS) $(TEMACS) update-elc $(DOC) $(PROGNAME) \
+ − 1396 update-elc-2 update-auto-and-custom info
428
+ − 1397
438
+ − 1398 temacs: $(LASTFILE) $(TEMACS)
428
+ − 1399
+ − 1400 # use this rule to install the system
+ − 1401 install: all
430
+ − 1402 cd $(NT)
428
+ − 1403 @echo Installing in $(INSTALL_DIR) ...
+ − 1404 @echo PlaceHolder > PlaceHolder
+ − 1405 @xcopy /q PROBLEMS "$(INSTALL_DIR)\"
+ − 1406 @xcopy /q PlaceHolder "$(INSTALL_DIR)\lock\"
488
+ − 1407 $(DEL) "$(INSTALL_DIR)\lock\PlaceHolder"
428
+ − 1408 @xcopy /q $(LIB_SRC)\*.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)\"
+ − 1409 @copy $(LIB_SRC)\DOC "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
+ − 1410 @copy $(CONFIG_VALUES) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
442
+ − 1411 @copy $(SRC)\xemacs.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)"
428
+ − 1412 @xcopy /e /q $(XEMACS)\etc "$(INSTALL_DIR)\etc\"
+ − 1413 @xcopy /e /q $(XEMACS)\info "$(INSTALL_DIR)\info\"
+ − 1414 @xcopy /e /q $(XEMACS)\lisp "$(INSTALL_DIR)\lisp\"
+ − 1415 @echo Making skeleton package tree in $(PACKAGE_PREFIX) ...
+ − 1416 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\site-packages\"
488
+ − 1417 $(DEL) "$(PACKAGE_PREFIX)\site-packages\PlaceHolder"
428
+ − 1418 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\mule-packages\"
488
+ − 1419 $(DEL) "$(PACKAGE_PREFIX)\mule-packages\PlaceHolder"
428
+ − 1420 @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\xemacs-packages\"
488
+ − 1421 $(DEL) "$(PACKAGE_PREFIX)\xemacs-packages\PlaceHolder"
+ − 1422 $(DEL) PlaceHolder
428
+ − 1423
442
+ − 1424 mostlyclean:
428
+ − 1425 $(DEL) $(XEMACS)\Installation
442
+ − 1426 $(DEL) $(OUTDIR)\*.lib $(OUTDIR)\*.obj $(OUTDIR)\*.pdb
+ − 1427 $(DEL) $(OUTDIR)\*.res $(OUTDIR)\*.sbr
+ − 1428 $(DEL) $(SRC)\*.exe $(SRC)\*.map $(SRC)\*.bsc $(SRC)\*.pdb
+ − 1429 $(DEL) $(LIB_SRC)\*.exe $(LIB_SRC)\*.obj $(LIB_SRC)\*.pdb
+ − 1430 $(DEL) $(LIB_SRC)\*.res
+ − 1431
+ − 1432 clean: mostlyclean versionclean
+ − 1433 $(DEL) $(XEMACS)\TAGS
+ − 1434
+ − 1435 nicenclean: clean
+ − 1436 $(DEL) $(NT)\*.bak $(NT)\*.orig $(NT)\*.rej $(NT)\*.tmp
+ − 1437 $(DEL) $(LIB_SRC)\*.bak $(LIB_SRC)\*.orig $(LIB_SRC)\*.rej
+ − 1438 $(DEL) $(LIB_SRC)\*.tmp
+ − 1439 $(DEL) $(SRC)\*.bak $(SRC)\*.orig $(SRC)\*.rej $(SRC)\*.tmp
+ − 1440 $(DEL) /s $(LISP)\*.bak $(LISP)\*.orig $(LISP)\*.rej $(LISP)\*.tmp
+ − 1441
+ − 1442 ## This is used in making a distribution.
+ − 1443 ## Do not use it on development directories!
+ − 1444 distclean: nicenclean
+ − 1445 $(DEL) $(SRC)\config.h $(SRC)\paths.h $(SRC)\Emacs.ad.h
+ − 1446 $(DEL) $(LIB_SRC)\$(CONFIG_VALUES)
+ − 1447 $(DEL) $(INFODIR)\*.info*
+ − 1448 $(DEL) /s /q $(LISP)\*.elc
+ − 1449
+ − 1450 realclean: distclean
+ − 1451
+ − 1452 versionclean:
+ − 1453 $(DEL) $(SRC)\xemacs.exe $(LIB_SRC)\DOC
+ − 1454
+ − 1455 #not sure about those wildcards. DOS wildcards are stupid compared to Unix,
+ − 1456 #and could end up deleting *everything* instead of just backup files or
+ − 1457 #whatever.
+ − 1458 #extraclean: realclean
+ − 1459 # $(DEL) *~ *.*~ #* m\*~ m\#* s\*~ s\#*
428
+ − 1460
+ − 1461 depend:
442
+ − 1462 cd $(SRC)
432
+ − 1463 perl ./make-src-depend > depend.tmp
+ − 1464 perl -MFile::Compare -e "compare('depend.tmp', 'depend') && rename('depend.tmp', 'depend') or unlink('depend.tmp')"
428
+ − 1465
442
+ − 1466 $(XEMACS)\Installation:: installation
440
+ − 1467
442
+ − 1468 installation::
428
+ − 1469 @type > $(XEMACS)\Installation <<
+ − 1470 !if defined(OS)
+ − 1471 OS: $(OS)
+ − 1472 !endif
+ − 1473
+ − 1474 XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename:"=\") configured for `$(EMACS_CONFIGURATION)'.
+ − 1475
+ − 1476 Building XEmacs in \"$(MAKEDIR:\=\\)\".
+ − 1477 !if defined(CCV)
+ − 1478 Using compiler \"$(CC) $(CFLAGS)\".
+ − 1479 !endif
+ − 1480 Installing XEmacs in \"$(INSTALL_DIR:\=\\)\".
+ − 1481 Package path is $(PATH_PACKAGEPATH:"=\").
+ − 1482 !if $(INFODOCK)
+ − 1483 Building InfoDock.
+ − 1484 !endif
442
+ − 1485 !if $(HAVE_MS_WINDOWS)
428
+ − 1486 Compiling in support for Microsoft Windows native GUI.
+ − 1487 !endif
442
+ − 1488 !if $(HAVE_X_WINDOWS)
428
+ − 1489 Compiling in support for X-Windows.
+ − 1490 !endif
+ − 1491 !if $(HAVE_MULE)
+ − 1492 Compiling in MULE.
+ − 1493 !endif
488
+ − 1494 !if $(HAVE_GTK)
+ − 1495 --------------------------------------------------------------------
+ − 1496 WARNING: Compiling WITHOUT GTK support.
+ − 1497 WARNING: As of xemacs-21.2-b44
+ − 1498 WARNING: gtk-xemacs is not supported on MSWindows (mingw or msvc).
+ − 1499 WARNING: Yes, we know that gtk has been ported to native MSWindows
+ − 1500 WARNING: but XEmacs is not yet ready to use that port.
+ − 1501 --------------------------------------------------------------------
+ − 1502 !else
+ − 1503 --------------------------------------------------------------------
+ − 1504 WARNING: Compiling without GTK support.
+ − 1505 WARNING: As of xemacs-21.2-b44
+ − 1506 WARNING: gtk-xemacs is not supported on MSWindows (mingw or msvc).
+ − 1507 WARNING: Yes, we know that gtk has been ported to native MSWindows
+ − 1508 WARNING: but XEmacs is not yet ready to use that port.
+ − 1509 --------------------------------------------------------------------
+ − 1510 !endif
428
+ − 1511 !if $(HAVE_XPM)
+ − 1512 Compiling in support for XPM images.
+ − 1513 !else
+ − 1514 --------------------------------------------------------------------
+ − 1515 WARNING: Compiling without XPM support.
+ − 1516 WARNING: You should strongly consider installing XPM.
+ − 1517 WARNING: Otherwise toolbars and other graphics will look suboptimal.
+ − 1518 WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux)
+ − 1519 --------------------------------------------------------------------
+ − 1520 !endif
+ − 1521 !if $(HAVE_GIF)
+ − 1522 Compiling in support for GIF images.
+ − 1523 !endif
+ − 1524 !if $(HAVE_PNG)
+ − 1525 Compiling in support for PNG images.
+ − 1526 !else
+ − 1527 --------------------------------------------------------------------
+ − 1528 WARNING: Compiling without PNG image support.
+ − 1529 WARNING: You should strongly consider installing the PNG libraries.
+ − 1530 WARNING: Otherwise certain images and glyphs may not display.
+ − 1531 WARNING: (a copy may be found in ftp://ftp.xemacs.org/pub/xemacs/aux
+ − 1532 --------------------------------------------------------------------
+ − 1533 !endif
+ − 1534 !if $(HAVE_TIFF)
+ − 1535 Compiling in support for TIFF images.
+ − 1536 !endif
+ − 1537 !if $(HAVE_JPEG)
+ − 1538 Compiling in support for JPEG images.
+ − 1539 !endif
+ − 1540 !if $(HAVE_XFACE)
+ − 1541 Compiling in support for X-Face message headers.
+ − 1542 !endif
+ − 1543 !if $(HAVE_TOOLBARS)
+ − 1544 Compiling in support for toolbars.
+ − 1545 !endif
+ − 1546 !if $(HAVE_DIALOGS)
+ − 1547 Compiling in support for dialogs.
+ − 1548 !endif
+ − 1549 !if $(HAVE_WIDGETS)
+ − 1550 Compiling in support for widgets.
+ − 1551 !endif
+ − 1552 !if $(HAVE_NATIVE_SOUND)
+ − 1553 Compiling in support for native sounds.
+ − 1554 !endif
+ − 1555 !if $(HAVE_MSW_C_DIRED)
+ − 1556 Compiling in fast dired implementation.
+ − 1557 !else
+ − 1558 --------------------------------------------------------------------
+ − 1559 WARNING: Define HAVE_MSW_C_DIRED to be non-zero if you want XEmacs
+ − 1560 WARNING: to use C primitives to significantly speed up dired, at the
+ − 1561 WARNING: expense of an additional ~4KB of code.
+ − 1562 --------------------------------------------------------------------
+ − 1563 !endif
+ − 1564 !if $(USE_MINIMAL_TAGBITS)
+ − 1565 Using minimal tagbits.
+ − 1566 !endif
+ − 1567 !if $(USE_INDEXED_LRECORD_IMPLEMENTATION)
+ − 1568 Using indexed lrecord implementation.
+ − 1569 !endif
+ − 1570 !if $(USE_UNION_TYPE)
+ − 1571 Using union type for Lisp object storage.
+ − 1572 !endif
438
+ − 1573 !if $(USE_PORTABLE_DUMPER)
+ − 1574 Using portable dumper.
+ − 1575 !endif
440
+ − 1576 !if $(USE_SYSTEM_MALLOC)
+ − 1577 Using system malloc.
+ − 1578 !endif
+ − 1579 !if $(USE_CRTDLL)
+ − 1580 Using DLL version of C runtime library
+ − 1581 !endif
428
+ − 1582 !if $(DEBUG_XEMACS)
+ − 1583 Compiling in extra debug checks. XEmacs will be slow!
+ − 1584 !endif
442
+ − 1585 !if $(QUICK_BUILD)
+ − 1586 Disabling non-essential build actions. Use with care!
+ − 1587 !endif
428
+ − 1588 <<NOKEEP
+ − 1589 @echo --------------------------------------------------------------------
+ − 1590 @type $(XEMACS)\Installation
+ − 1591 @echo --------------------------------------------------------------------
+ − 1592
442
+ − 1593 # Update out-of-date .elcs, other than needed for dumping.
+ − 1594 update-elc-2:
+ − 1595 $(XEMACS_BATCH) -l update-elc-2.el -f batch-update-elc-2 $(LISP)
+ − 1596
+ − 1597 # Update auto-autoloads.el and custom-load.el, similar to what
+ − 1598 # XEmacs.rules does for xemacs-packages. This used to delete
+ − 1599 # auto-autoloads.el first, but that's a bad idea, because it forces
+ − 1600 # rebuilding from scratch, which is time-consuming; and the autoload
+ − 1601 # code is specifically written to do in-place updating. However, if
+ − 1602 # your auto-autoload file is messed up and you want it rebuilt from
+ − 1603 # scratch, delete it from the command line and then nmake with this
+ − 1604 # target.
+ − 1605 update-auto-and-custom:
+ − 1606 # Combine into one invocation to avoid repeated startup penalty.
+ − 1607 $(XEMACS_BATCH) -l autoload -f batch-update-one-directory $(LISP) -f batch-byte-compile-one-file $(LISP)\auto-autoloads.el -l cus-dep -f Custom-make-one-dependency $(LISP) -f batch-byte-compile-one-file $(LISP)\custom-load.el
488
+ − 1608 $(DEL) $(LISP)\auto-autoloads.el~
+ − 1609 $(DEL) $(LISP)\custom-load.el~
428
+ − 1610
+ − 1611 # DO NOT DELETE THIS LINE -- make depend depends on it.
+ − 1612