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