Mercurial > hg > xemacs-beta
diff nt/xemacs.mak @ 412:697ef44129c6 r21-2-14
Import from CVS: tag r21-2-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:20:41 +0200 |
parents | de805c49cfc1 |
children | da8ed4261e83 |
line wrap: on
line diff
--- a/nt/xemacs.mak Mon Aug 13 11:19:22 2007 +0200 +++ b/nt/xemacs.mak Mon Aug 13 11:20:41 2007 +0200 @@ -24,28 +24,15 @@ # Synched up with: Not in FSF. # -default: all - XEMACS=.. LISP=$(XEMACS)\lisp -LIB_SRC=$(XEMACS)\lib-src MODULES=$(XEMACS)\modules NT=$(XEMACS)\nt OUTDIR=$(NT)\obj -SRC=$(XEMACS)\src -LWLIB_SRCDIR=$(XEMACS)\lwlib -MAKEDIRSTRING=$(MAKEDIR:\=\\) -XEMACSDIRSTRING=$(MAKEDIRSTRING:\\nt=) - - -# Define a variable for the 'del' command to use -DEL=-del # Program name and version -!include "$(XEMACS)\version.sh" - -!include "config.inc" +!include "..\version.sh" !if !defined(INFODOCK) INFODOCK=0 @@ -56,8 +43,6 @@ PROGRAM_DEFINES=-DINFODOCK \ -DPATH_VERSION=\"$(INFODOCK_VERSION_STRING)\" \ -DPATH_PROGNAME=\"infodock\" \ - -DEMACS_PROGNAME=\"infodock\" \ - -DEMACS_VERSION=\"$(INFODOCK_VERSION_STRING)\" \ -DINFODOCK_MAJOR_VERSION=$(infodock_major_version) \ -DINFODOCK_MINOR_VERSION=$(infodock_minor_version) \ -DINFODOCK_BUILD_VERSION=$(infodock_build_version) @@ -69,9 +54,7 @@ !endif PROGRAM_DEFINES= \ -DPATH_VERSION=\"$(XEMACS_VERSION_STRING)\" \ - -DPATH_PROGNAME=\"xemacs\" \ - -DEMACS_VERSION=\"$(XEMACS_VERSION_STRING)\" \ - -DEMACS_PROGNAME=\"xemacs\" + -DPATH_PROGNAME=\"xemacs\" !endif # @@ -98,11 +81,11 @@ ! endif !endif PATH_PACKAGEPATH="$(PACKAGE_PATH:\=\\)" -!if !defined(HAVE_MS_WINDOWS) -HAVE_MS_WINDOWS=1 +!if !defined(HAVE_MSW) +HAVE_MSW=1 !endif -!if !defined(HAVE_X_WINDOWS) -HAVE_X_WINDOWS=0 +!if !defined(HAVE_X) +HAVE_X=0 !endif !if !defined(HAVE_XPM) HAVE_XPM=0 @@ -134,43 +117,18 @@ !if !defined(HAVE_NATIVE_SOUND) HAVE_NATIVE_SOUND=1 !endif -!if !defined(HAVE_WIDGETS) -HAVE_WIDGETS=1 -!endif !if !defined(DEBUG_XEMACS) DEBUG_XEMACS=0 !endif -!if !defined(QUICK_BUILD) -QUICK_BUILD=0 -!endif !if !defined(USE_UNION_TYPE) USE_UNION_TYPE=0 !endif -!if !defined(USE_MINITAR) -USE_MINITAR=1 -!endif !if !defined(USE_MINIMAL_TAGBITS) USE_MINIMAL_TAGBITS=0 !endif !if !defined(USE_INDEXED_LRECORD_IMPLEMENTATION) USE_INDEXED_LRECORD_IMPLEMENTATION=0 !endif -!if !defined(USE_PORTABLE_DUMPER) -USE_PORTABLE_DUMPER=0 -!endif -!if !defined(GUNG_HO) -GUNG_HO=0 -!endif - -# A little bit of adhockery. Default to use system malloc and -# DLL version of the C runtime library when using portable -# dumping. These are the optimal settings. -!if !defined(USE_SYSTEM_MALLOC) -USE_SYSTEM_MALLOC=$(USE_PORTABLE_DUMPER) -!endif -!if !defined(USE_CRTDLL) -USE_CRTDLL=$(USE_PORTABLE_DUMPER) -!endif # # System configuration @@ -198,80 +156,67 @@ !message Cannot build InfoDock without InfoDock sources CONFIG_ERROR=1 !endif -!if !$(USE_PORTABLE_DUMPER) && $(USE_SYSTEM_MALLOC) -!message Cannot use system allocator when dumping old way, use portable dumper. -CONFIG_ERROR=1 -!endif -!if !$(USE_PORTABLE_DUMPER) && $(USE_CRTDLL) -!message Cannot use C runtime DLL when dumping old way, use portable dumper. +!if !$(HAVE_MSW) && !$(HAVE_X) +!message Please specify at least one HAVE_MSW=1 and/or HAVE_X=1 CONFIG_ERROR=1 !endif -!if !$(USE_SYSTEM_MALLOC) && $(USE_CRTDLL) -!message GNU malloc currently cannot be used with CRT DLL. -!message [[[Developer note: If you want to fix it, read Q112297 first]]] #### -CONFIG_ERROR=1 -!endif -!if !$(HAVE_MS_WINDOWS) && !$(HAVE_X_WINDOWS) -!message Please specify at least one HAVE_MS_WINDOWS=1 and/or HAVE_X_WINDOWS=1 -CONFIG_ERROR=1 -!endif -!if $(HAVE_X_WINDOWS) && !defined(X11_DIR) +!if $(HAVE_X) && !defined(X11_DIR) !message Please specify root directory for your X11 installation: X11_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_X_WINDOWS) && defined(X11_DIR) && !exist("$(X11_DIR)\LIB\X11.LIB") +!if $(HAVE_X) && defined(X11_DIR) && !exist("$(X11_DIR)\LIB\X11.LIB") !message Specified X11 directory does not contain "$(X11_DIR)\LIB\X11.LIB" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_XPM) && !defined(XPM_DIR) +!if $(HAVE_MSW) && $(HAVE_XPM) && !defined(XPM_DIR) !message Please specify root directory for your XPM installation: XPM_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_XPM) && defined(XPM_DIR) && !exist("$(XPM_DIR)\lib\Xpm.lib") +!if $(HAVE_MSW) && $(HAVE_XPM) && defined(XPM_DIR) && !exist("$(XPM_DIR)\lib\Xpm.lib") !message Specified XPM directory does not contain "$(XPM_DIR)\lib\Xpm.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && !defined(PNG_DIR) +!if $(HAVE_MSW) && $(HAVE_PNG) && !defined(PNG_DIR) !message Please specify root directory for your PNG installation: PNG_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && defined(PNG_DIR) && !exist("$(PNG_DIR)\libpng.lib") +!if $(HAVE_MSW) && $(HAVE_PNG) && defined(PNG_DIR) && !exist("$(PNG_DIR)\libpng.lib") !message Specified PNG directory does not contain "$(PNG_DIR)\libpng.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && !defined(ZLIB_DIR) +!if $(HAVE_MSW) && $(HAVE_PNG) && !defined(ZLIB_DIR) !message Please specify root directory for your ZLIB installation: ZLIB_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_PNG) && defined(ZLIB_DIR) && !exist("$(ZLIB_DIR)\zlib.lib") +!if $(HAVE_MSW) && $(HAVE_PNG) && defined(ZLIB_DIR) && !exist("$(ZLIB_DIR)\zlib.lib") !message Specified ZLIB directory does not contain "$(ZLIB_DIR)\zlib.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_TIFF) && !defined(TIFF_DIR) +!if $(HAVE_MSW) && $(HAVE_TIFF) && !defined(TIFF_DIR) !message Please specify root directory for your TIFF installation: TIFF_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_TIFF) && !exist("$(TIFF_DIR)\libtiff\libtiff.lib") +!if $(HAVE_MSW) && $(HAVE_TIFF) && !exist("$(TIFF_DIR)\libtiff\libtiff.lib") !message Specified TIFF directory does not contain "$(TIFF_DIR)\libtiff\libtiff.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_JPEG) && !defined(JPEG_DIR) +!if $(HAVE_MSW) && $(HAVE_JPEG) && !defined(JPEG_DIR) !message Please specify root directory for your JPEG installation: JPEG_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_JPEG) && !exist("$(JPEG_DIR)\libjpeg.lib") +!if $(HAVE_MSW) && $(HAVE_JPEG) && !exist("$(JPEG_DIR)\libjpeg.lib") !message Specified JPEG directory does not contain "$(JPEG_DIR)\libjpeg.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_XFACE) && !defined(COMPFACE_DIR) +!if $(HAVE_MSW) && $(HAVE_XFACE) && !defined(COMPFACE_DIR) !message Please specify root directory for your COMPFACE installation: COMPFACE_DIR=path CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_XFACE) && !exist("$(COMPFACE_DIR)\libcompface.lib") +!if $(HAVE_MSW) && $(HAVE_XFACE) && !exist("$(COMPFACE_DIR)\libcompface.lib") !message Specified COMPFACE directory does not contain "$(COMPFACE_DIR)\libcompface.lib" CONFIG_ERROR=1 !endif -!if $(HAVE_MS_WINDOWS) && $(HAVE_TOOLBARS) && !$(HAVE_XPM) +!if $(HAVE_MSW) && $(HAVE_TOOLBARS) && !$(HAVE_XPM) !message Toolbars require XPM support CONFIG_ERROR=1 !endif @@ -288,31 +233,7 @@ !endif # -# Whether to use dependency information generated by make-src-depend -# -!if !defined(DEPEND) -DEPEND=0 -!endif -!if $(DEPEND) -! if [if not exist $(OUTDIR)\nul mkdir "$(OUTDIR)"] -! endif -# generate an nmake-readable version of depend -# #### here, it doesn't seem to matter if we double ^'s! -# results are the same with all single ^ and all double ^^! -# see comment below. -! if [perl -p -e "s/^\x23ifdef (.+)/!if defined($$1)/; s/^\x23e/!e/;" \ - -e "s/([\s=^])([\w\d\.\-^]+\.[ch^])/$$1$(SRC:\=\\)\\$$2/g;" \ - -e "s/^(.+)\.o:(.+)/$(OUTDIR:\=\\)\\$$1.obj:$$2 $(NT:\=\\)\\config.inc/;" \ - < $(SRC)\depend > $(OUTDIR)\depend.tmp] -! endif -! include "$(OUTDIR)\depend.tmp" -!else -! if [echo WARNING: Compiling without dependency information.] -! endif -!endif - -# -# Compiler command echo control. Define VERBOSECC=1 to get verbose compilation. +# Compiler command echo control. Define VERBOSECC=1 to get vebose compilation. # !if !defined(VERBOSECC) VERBOSECC=0 @@ -329,34 +250,21 @@ OPT=-O2 -G5 !endif -!if $(USE_CRTDLL) -!if $(DEBUG_XEMACS) -C_LIBFLAG=-MDd -LIBC_LIB=msvcrtd.lib -!else -C_LIBFLAG=-MD -LIBC_LIB=msvcrt.lib -!endif -!else -C_LIBFLAG=-ML -LIBC_LIB=libc.lib -!endif +CFLAGS=-nologo -W3 $(OPT) -CFLAGS=-nologo -W3 $(OPT) $(C_LIBFLAG) - -!if $(HAVE_X_WINDOWS) +!if $(HAVE_X) X_DEFINES=-DHAVE_X_WINDOWS X_INCLUDES=-I$(X11_DIR)\include X_LIBS=-libpath:$(X11_DIR)\lib Xaw.lib Xmu.lib Xt.lib SM.lib ICE.lib Xext.lib X11.lib !endif -!if $(HAVE_MS_WINDOWS) +!if $(HAVE_MSW) MSW_DEFINES=-DHAVE_MS_WINDOWS -DHAVE_SCROLLBARS -DHAVE_MENUBARS MSW_INCLUDES= MSW_LIBS= !if $(HAVE_MSW_C_DIRED) MSW_DEFINES=$(MSW_DEFINES) -DHAVE_MSW_C_DIRED -MSW_C_DIRED_SRC=$(SRC)\dired-msw.c +MSW_C_DIRED_SRC=$(XEMACS)\src\dired-msw.c MSW_C_DIRED_OBJ=$(OUTDIR)\dired-msw.obj !endif !if $(HAVE_XPM) @@ -366,7 +274,7 @@ !endif !if $(HAVE_GIF) MSW_DEFINES=$(MSW_DEFINES) -DHAVE_GIF -MSW_GIF_SRC=$(SRC)\dgif_lib.c $(SRC)\gif_io.c +MSW_GIF_SRC=$(XEMACS)\src\dgif_lib.c $(XEMACS)\src\gif_io.c MSW_GIF_OBJ=$(OUTDIR)\dgif_lib.obj $(OUTDIR)\gif_io.obj !endif !if $(HAVE_PNG) @@ -391,18 +299,15 @@ !endif !if $(HAVE_TOOLBARS) MSW_DEFINES=$(MSW_DEFINES) -DHAVE_TOOLBARS -MSW_TOOLBAR_SRC=$(SRC)\toolbar.c $(SRC)\toolbar-msw.c +MSW_TOOLBAR_SRC=$(XEMACS)\src\toolbar.c $(XEMACS)\src\toolbar-msw.c MSW_TOOLBAR_OBJ=$(OUTDIR)\toolbar.obj $(OUTDIR)\toolbar-msw.obj MSW_LIBS=$(MSW_LIBS) comctl32.lib !endif !if $(HAVE_DIALOGS) MSW_DEFINES=$(MSW_DEFINES) -DHAVE_DIALOGS -MSW_DIALOG_SRC=$(SRC)\dialog.c $(SRC)\dialog-msw.c +MSW_DIALOG_SRC=$(XEMACS)\src\dialog.c $(XEMACS)\src\dialog-msw.c MSW_DIALOG_OBJ=$(OUTDIR)\dialog.obj $(OUTDIR)\dialog-msw.obj !endif -!if $(HAVE_WIDGETS) -MSW_DEFINES=$(MSW_DEFINES) -DHAVE_WIDGETS -!endif !if $(HAVE_NATIVE_SOUND) MSW_DEFINES=$(MSW_DEFINES) -DHAVE_NATIVE_SOUND !endif @@ -417,10 +322,6 @@ DEBUG_FLAGS=-debug:full !endif -!if $(QUICK_BUILD) -QUICK_DEFINES=-DQUICK_BUILD -!endif - !if $(USE_MINIMAL_TAGBITS) TAGBITS_DEFINES=-DUSE_MINIMAL_TAGBITS !endif @@ -431,16 +332,6 @@ UNION_DEFINES=-DUSE_UNION_TYPE !endif -!if $(USE_PORTABLE_DUMPER) -DUMPER_DEFINES=-DPDUMP -!endif - -!if $(USE_SYSTEM_MALLOC) -MALLOC_DEFINES=-DSYSTEM_MALLOC -!else -MALLOC_DEFINES=-DGNU_MALLOC -!endif - # Hard-coded paths !if $(INFODOCK) @@ -453,38 +344,40 @@ # Generic variables -INCLUDES=$(X_INCLUDES) $(MSW_INCLUDES) -I$(NT)\inc -I$(SRC) -I$(LWLIB_SRCDIR) +INCLUDES=$(X_INCLUDES) $(MSW_INCLUDES) -I$(XEMACS)\nt\inc -I$(XEMACS)\src -I$(XEMACS)\lwlib DEFINES=$(X_DEFINES) $(MSW_DEFINES) $(MULE_DEFINES) \ $(TAGBITS_DEFINES) $(LRECORD_DEFINES) $(UNION_DEFINES) \ - $(DUMPER_DEFINES) $(MALLOC_DEFINES) $(QUICK_DEFINES) \ - -DWIN32_LEAN_AND_MEAN -DWIN32_NATIVE -Demacs \ + -DWIN32 -D_WIN32 -DWIN32_LEAN_AND_MEAN -DWINDOWSNT -Demacs \ -DHAVE_CONFIG_H $(PROGRAM_DEFINES) $(PATH_DEFINES) #------------------------------------------------------------------------------ +default: $(OUTDIR)\nul all + $(OUTDIR)\nul: -@mkdir $(OUTDIR) XEMACS_INCLUDES=\ - $(SRC)\config.h \ - $(SRC)\Emacs.ad.h \ - $(SRC)\paths.h + $(XEMACS)\src\config.h \ + $(XEMACS)\src\Emacs.ad.h \ + $(XEMACS)\src\paths.h -$(SRC)\config.h: config.h - copy config.h $(SRC) +$(XEMACS)\src\config.h: config.h + copy config.h $(XEMACS)\src -$(SRC)\Emacs.ad.h: Emacs.ad.h - copy Emacs.ad.h $(SRC) +$(XEMACS)\src\Emacs.ad.h: Emacs.ad.h + copy Emacs.ad.h $(XEMACS)\src -$(SRC)\paths.h: paths.h - copy paths.h $(SRC) +$(XEMACS)\src\paths.h: paths.h + copy paths.h $(XEMACS)\src #------------------------------------------------------------------------------ # lib-src programs -LIB_SRC_DEFINES = -DHAVE_CONFIG_H -DWIN32_NATIVE +LIB_SRC = $(XEMACS)\lib-src +LIB_SRC_DEFINES = -DHAVE_CONFIG_H -DWIN32 -DWINDOWSNT # # Creating config.values to be used by config.el @@ -512,61 +405,45 @@ # Inferred rule {$(LIB_SRC)}.c{$(LIB_SRC)}.exe : - cd $(LIB_SRC) - $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no setargv.obj - cd $(NT) + @cd $(LIB_SRC) + $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no + @cd $(NT) # Individual dependencies ETAGS_DEPS = $(LIB_SRC)/getopt.c $(LIB_SRC)/getopt1.c $(LIB_SRC)/../src/regex.c $(LIB_SRC)/etags.exe : $(LIB_SRC)/etags.c $(ETAGS_DEPS) $(LIB_SRC)/movemail.exe: $(LIB_SRC)/movemail.c $(LIB_SRC)/pop.c $(ETAGS_DEPS) - cd $(LIB_SRC) + @cd $(LIB_SRC) $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** wsock32.lib -link -incremental:no - cd $(NT) -$(LIB_SRC)/minitar.exe : $(NT)/minitar.mak $(NT)/minitar.c - nmake -nologo -f minitar.mak ZLIB="$(ZLIB_DIR)" NT="$(NT)" LIB_SRC="$(LIB_SRC)" + @cd $(NT) LIB_SRC_TOOLS = \ - $(LIB_SRC)/etags.exe \ + $(LIB_SRC)/make-docfile.exe \ $(LIB_SRC)/hexl.exe \ - $(LIB_SRC)/i.exe \ - $(LIB_SRC)/make-docfile.exe \ + $(LIB_SRC)/movemail.exe \ $(LIB_SRC)/mmencode.exe \ - $(LIB_SRC)/movemail.exe \ $(LIB_SRC)/sorted-doc.exe \ - $(LIB_SRC)/wakeup.exe -!if $(USE_MINITAR) -LIB_SRC_TOOLS = \ - $(LIB_SRC_TOOLS) \ - $(LIB_SRC)/minitar.exe -!endif -!if $(USE_PORTABLE_DUMPER) -LIB_SRC_TOOLS = \ - $(XEMACS_INCLUDES) \ - $(LIB_SRC)/make-dump-id.exe \ - $(LIB_SRC_TOOLS) -!endif - -# Shorthand target -minitar: $(LIB_SRC)/minitar.exe + $(LIB_SRC)/wakeup.exe \ + $(LIB_SRC)/etags.exe #------------------------------------------------------------------------------ -# dump-id.c file that contains the dump id +# runxemacs proglet + +RUNEMACS = $(XEMACS)\src\runxemacs.exe -$(SRC)\dump-id.c : $(LIB_SRC)/make-dump-id.exe - cd $(SRC) - $(LIB_SRC)\make-dump-id.exe - cd $(NT) +$(RUNEMACS): $(LIB_SRC)\run.c $(LIB_SRC)\run.res + $(CCV) -I$(LIB_SRC) $(CFLAGS) -Fe$@ -Fo$(LIB_SRC) -Fd$(LIB_SRC)\ $** kernel32.lib user32.lib -link -incremental:no + +$(LIB_SRC)\run.res: $(LIB_SRC)\run.rc + rc -I$(LIB_SRC) -Fo$@ $** #------------------------------------------------------------------------------ # LASTFILE Library -!if !$(USE_SYSTEM_MALLOC) || !$(USE_PORTABLE_DUMPER) - LASTFILE=$(OUTDIR)\lastfile.lib -LASTFILE_SRC=$(SRC) +LASTFILE_SRC=$(XEMACS)\src LASTFILE_FLAGS=$(CFLAGS) $(INCLUDES) -Fo$@ -Fd$* -c LASTFILE_OBJS= \ $(OUTDIR)\lastfile.obj @@ -577,15 +454,14 @@ $(OUTDIR)\lastfile.obj: $(LASTFILE_SRC)\lastfile.c $(CCV) $(LASTFILE_FLAGS) $** -!endif - #------------------------------------------------------------------------------ -!if $(HAVE_X_WINDOWS) +!if $(HAVE_X) # LWLIB Library LWLIB=$(OUTDIR)\lwlib.lib +LWLIB_SRC=$(XEMACS)\lwlib LWLIB_FLAGS=$(CFLAGS) $(INCLUDES) $(DEFINES) \ -DNEED_ATHENA -DNEED_LUCID \ -D_WINDOWS -DMENUBARS_LUCID -DSCROLLBARS_LUCID -DDIALOGS_ATHENA \ @@ -602,25 +478,25 @@ $(LWLIB): $(LWLIB_OBJS) link.exe -lib -nologo -out:$@ $(LWLIB_OBJS) -$(OUTDIR)\lwlib-config.obj: $(LWLIB_SRCDIR)\lwlib-config.c +$(OUTDIR)\lwlib-config.obj: $(LWLIB_SRC)\lwlib-config.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\lwlib-utils.obj: $(LWLIB_SRCDIR)\lwlib-utils.c +$(OUTDIR)\lwlib-utils.obj: $(LWLIB_SRC)\lwlib-utils.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\lwlib-Xaw.obj: $(LWLIB_SRCDIR)\lwlib-Xaw.c +$(OUTDIR)\lwlib-Xaw.obj: $(LWLIB_SRC)\lwlib-Xaw.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\lwlib-Xlw.obj: $(LWLIB_SRCDIR)\lwlib-Xlw.c +$(OUTDIR)\lwlib-Xlw.obj: $(LWLIB_SRC)\lwlib-Xlw.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\lwlib.obj: $(LWLIB_SRCDIR)\lwlib.c +$(OUTDIR)\lwlib.obj: $(LWLIB_SRC)\lwlib.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\xlwmenu.obj: $(LWLIB_SRCDIR)\xlwmenu.c +$(OUTDIR)\xlwmenu.obj: $(LWLIB_SRC)\xlwmenu.c $(CCV) $(LWLIB_FLAGS) $** -$(OUTDIR)\xlwscrollbar.obj: $(LWLIB_SRCDIR)\xlwscrollbar.c +$(OUTDIR)\xlwscrollbar.obj: $(LWLIB_SRC)\xlwscrollbar.c $(CCV) $(LWLIB_FLAGS) $** !endif @@ -628,135 +504,138 @@ DOC=$(LIB_SRC)\DOC DOC_SRC1=\ - $(SRC)\abbrev.c \ - $(SRC)\alloc.c \ - $(SRC)\alloca.c \ - $(SRC)\blocktype.c \ - $(SRC)\buffer.c \ - $(SRC)\bytecode.c \ - $(SRC)\callint.c \ - $(SRC)\callproc.c \ - $(SRC)\casefiddle.c \ - $(SRC)\casetab.c \ - $(SRC)\chartab.c \ - $(SRC)\cmdloop.c \ - $(SRC)\cmds.c \ - $(SRC)\console-stream.c \ - $(SRC)\console.c \ - $(SRC)\data.c \ - $(SRC)\device.c + $(XEMACS)\src\abbrev.c \ + $(XEMACS)\src\alloc.c \ + $(XEMACS)\src\alloca.c \ + $(XEMACS)\src\blocktype.c \ + $(XEMACS)\src\buffer.c \ + $(XEMACS)\src\bytecode.c \ + $(XEMACS)\src\callint.c \ + $(XEMACS)\src\callproc.c \ + $(XEMACS)\src\casefiddle.c \ + $(XEMACS)\src\casetab.c \ + $(XEMACS)\src\chartab.c \ + $(XEMACS)\src\cmdloop.c \ + $(XEMACS)\src\cmds.c \ + $(XEMACS)\src\console-stream.c \ + $(XEMACS)\src\console.c \ + $(XEMACS)\src\data.c \ + $(XEMACS)\src\device.c DOC_SRC2=\ - $(SRC)\dired.c \ - $(SRC)\doc.c \ - $(SRC)\doprnt.c \ - $(SRC)\dragdrop.c \ - $(SRC)\dynarr.c \ - $(SRC)\editfns.c \ - $(SRC)\elhash.c \ - $(SRC)\emacs.c \ - $(SRC)\eval.c \ - $(SRC)\event-stream.c \ - $(SRC)\events.c \ - $(SRC)\extents.c \ - $(SRC)\faces.c \ - $(SRC)\file-coding.c \ - $(SRC)\fileio.c \ - $(SRC)\filemode.c \ - $(SRC)\floatfns.c \ - $(SRC)\fns.c + $(XEMACS)\src\dired.c \ + $(XEMACS)\src\doc.c \ + $(XEMACS)\src\doprnt.c \ + $(XEMACS)\src\dragdrop.c \ + $(XEMACS)\src\dynarr.c \ + $(XEMACS)\src\editfns.c \ + $(XEMACS)\src\elhash.c \ + $(XEMACS)\src\emacs.c \ + $(XEMACS)\src\eval.c \ + $(XEMACS)\src\event-stream.c \ + $(XEMACS)\src\events.c \ + $(XEMACS)\src\extents.c \ + $(XEMACS)\src\faces.c \ + $(XEMACS)\src\file-coding.c \ + $(XEMACS)\src\fileio.c \ + $(XEMACS)\src\filemode.c \ + $(XEMACS)\src\floatfns.c \ + $(XEMACS)\src\fns.c DOC_SRC3=\ - $(SRC)\font-lock.c \ - $(SRC)\frame.c \ - $(SRC)\general.c \ - $(SRC)\glyphs.c \ - $(SRC)\glyphs-eimage.c \ - $(SRC)\glyphs-widget.c \ - $(SRC)\gui.c \ - $(SRC)\gutter.c \ - $(SRC)\hash.c \ - $(SRC)\imgproc.c \ - $(SRC)\indent.c \ - $(SRC)\insdel.c \ - $(SRC)\intl.c \ - $(SRC)\keymap.c \ - $(SRC)\line-number.c \ - $(SRC)\lread.c \ - $(SRC)\lstream.c \ - $(SRC)\macros.c \ - $(SRC)\marker.c + $(XEMACS)\src\font-lock.c \ + $(XEMACS)\src\frame.c \ + $(XEMACS)\src\free-hook.c \ + $(XEMACS)\src\general.c \ + $(XEMACS)\src\glyphs.c \ + $(XEMACS)\src\glyphs-eimage.c \ + $(XEMACS)\src\glyphs-widget.c \ + $(XEMACS)\src\gmalloc.c \ + $(XEMACS)\src\gui.c \ + $(XEMACS)\src\hash.c \ + $(XEMACS)\src\imgproc.c \ + $(XEMACS)\src\indent.c \ + $(XEMACS)\src\insdel.c \ + $(XEMACS)\src\intl.c \ + $(XEMACS)\src\keymap.c \ + $(XEMACS)\src\line-number.c \ + $(XEMACS)\src\lread.c \ + $(XEMACS)\src\lstream.c \ + $(XEMACS)\src\macros.c \ + $(XEMACS)\src\marker.c DOC_SRC4=\ - $(SRC)\md5.c \ - $(SRC)\menubar.c \ - $(SRC)\minibuf.c \ - $(SRC)\nt.c \ - $(SRC)\ntplay.c \ - $(SRC)\ntproc.c \ - $(SRC)\objects.c \ - $(SRC)\opaque.c \ - $(SRC)\print.c \ - $(SRC)\process.c \ - $(SRC)\process-nt.c \ - $(SRC)\profile.c \ - $(SRC)\rangetab.c \ - $(SRC)\realpath.c \ - $(SRC)\redisplay-output.c \ - $(SRC)\redisplay.c \ - $(SRC)\regex.c \ - $(SRC)\scrollbar.c \ - $(SRC)\search.c \ - $(SRC)\select.c \ - $(SRC)\signal.c \ - $(SRC)\sound.c + $(XEMACS)\src\md5.c \ + $(XEMACS)\src\menubar.c \ + $(XEMACS)\src\minibuf.c \ + $(XEMACS)\src\nt.c \ + $(XEMACS)\src\ntheap.c \ + $(XEMACS)\src\ntplay.c \ + $(XEMACS)\src\ntproc.c \ + $(XEMACS)\src\objects.c \ + $(XEMACS)\src\opaque.c \ + $(XEMACS)\src\print.c \ + $(XEMACS)\src\process.c \ + $(XEMACS)\src\process-nt.c \ + $(XEMACS)\src\profile.c \ + $(XEMACS)\src\rangetab.c \ + $(XEMACS)\src\realpath.c \ + $(XEMACS)\src\redisplay-output.c \ + $(XEMACS)\src\redisplay.c \ + $(XEMACS)\src\regex.c \ + $(XEMACS)\src\scrollbar.c \ + $(XEMACS)\src\search.c \ + $(XEMACS)\src\signal.c \ + $(XEMACS)\src\sound.c DOC_SRC5=\ - $(SRC)\specifier.c \ - $(SRC)\strftime.c \ - $(SRC)\symbols.c \ - $(SRC)\syntax.c \ - $(SRC)\sysdep.c \ - $(SRC)\termcap.c \ - $(SRC)\tparam.c \ - $(SRC)\undo.c \ - $(SRC)\window.c \ - $(SRC)\widget.c + $(XEMACS)\src\specifier.c \ + $(XEMACS)\src\strftime.c \ + $(XEMACS)\src\symbols.c \ + $(XEMACS)\src\syntax.c \ + $(XEMACS)\src\sysdep.c \ + $(XEMACS)\src\termcap.c \ + $(XEMACS)\src\tparam.c \ + $(XEMACS)\src\undo.c \ + $(XEMACS)\src\unexnt.c \ + $(XEMACS)\src\vm-limit.c \ + $(XEMACS)\src\window.c \ + $(XEMACS)\src\widget.c -!if $(HAVE_X_WINDOWS) +!if $(HAVE_X) DOC_SRC6=\ - $(SRC)\balloon_help.c \ - $(SRC)\console-x.c \ - $(SRC)\device-x.c \ - $(SRC)\dialog-x.c \ - $(SRC)\EmacsFrame.c \ - $(SRC)\EmacsManager.c \ - $(SRC)\EmacsShell-sub.c\ - $(SRC)\EmacsShell.c \ - $(SRC)\event-Xt.c \ - $(SRC)\frame-x.c \ - $(SRC)\glyphs-x.c \ - $(SRC)\gui-x.c \ - $(SRC)\menubar.c \ - $(SRC)\menubar-x.c \ - $(SRC)\objects-x.c \ - $(SRC)\redisplay-x.c \ - $(SRC)\scrollbar-x.c \ - $(SRC)\balloon-x.c \ - $(SRC)\xgccache.c \ - $(SRC)\xmu.c \ - $(SRC)\select-x.c + $(XEMACS)\src\balloon_help.c \ + $(XEMACS)\src\console-x.c \ + $(XEMACS)\src\device-x.c \ + $(XEMACS)\src\dialog-x.c \ + $(XEMACS)\src\EmacsFrame.c \ + $(XEMACS)\src\EmacsManager.c \ + $(XEMACS)\src\EmacsShell-sub.c\ + $(XEMACS)\src\EmacsShell.c \ + $(XEMACS)\src\event-Xt.c \ + $(XEMACS)\src\frame-x.c \ + $(XEMACS)\src\glyphs-x.c \ + $(XEMACS)\src\gui-x.c \ + $(XEMACS)\src\menubar.c \ + $(XEMACS)\src\menubar-x.c \ + $(XEMACS)\src\objects-x.c \ + $(XEMACS)\src\redisplay-x.c \ + $(XEMACS)\src\scrollbar-x.c \ + $(XEMACS)\src\balloon-x.c \ + $(XEMACS)\src\xgccache.c \ + $(XEMACS)\src\xmu.c \ + $(XEMACS)\src\xselect.c !endif -!if $(HAVE_MS_WINDOWS) +!if $(HAVE_MSW) DOC_SRC7=\ - $(SRC)\console-msw.c \ - $(SRC)\device-msw.c \ - $(SRC)\event-msw.c \ - $(SRC)\frame-msw.c \ - $(SRC)\glyphs-msw.c \ - $(SRC)\gui-msw.c \ - $(SRC)\menubar-msw.c \ - $(SRC)\objects-msw.c \ - $(SRC)\redisplay-msw.c \ - $(SRC)\scrollbar-msw.c \ - $(SRC)\select-msw.c \ + $(XEMACS)\src\console-msw.c \ + $(XEMACS)\src\device-msw.c \ + $(XEMACS)\src\event-msw.c \ + $(XEMACS)\src\frame-msw.c \ + $(XEMACS)\src\glyphs-msw.c \ + $(XEMACS)\src\gui-msw.c \ + $(XEMACS)\src\menubar-msw.c \ + $(XEMACS)\src\objects-msw.c \ + $(XEMACS)\src\redisplay-msw.c \ + $(XEMACS)\src\scrollbar-msw.c \ + $(XEMACS)\src\select-msw.c \ $(MSW_C_DIRED_SRC) \ $(MSW_TOOLBAR_SRC) \ $(MSW_DIALOG_SRC) \ @@ -765,34 +644,18 @@ !if $(HAVE_MULE) DOC_SRC8=\ - $(SRC)\mule.c \ - $(SRC)\mule-charset.c \ - $(SRC)\mule-ccl.c -! if $(HAVE_X_WINDOWS) - DOC_SRC8=$(DOC_SRC8) $(SRC)\input-method-xlib.c + $(XEMACS)\src\mule.c \ + $(XEMACS)\src\mule-charset.c \ + $(XEMACS)\src\mule-ccl.c \ + $(XEMACS)\src\mule-coding.c +! if $(HAVE_X) + DOC_SRC8=$(DOC_SRC8) $(XEMACS)\src\input-method-xlib.c ! endif !endif !if $(DEBUG_XEMACS) DOC_SRC9=\ - $(SRC)\debug.c \ - $(SRC)\tests.c -!endif - -!if !$(USE_SYSTEM_MALLOC) -DOC_SRC10=\ - $(SRC)\free-hook.c \ - $(SRC)\gmalloc.c \ - $(SRC)\ntheap.c \ - $(SRC)\vm-limit.c -!endif - -!if !$(USE_PORTABLE_DUMPER) -DOC_SRC11=\ - $(SRC)\unexnt.c -!else -DOC_SRC11=\ - $(SRC)\dumper.c + $(XEMACS)\src\debug.c !endif #------------------------------------------------------------------------------ @@ -804,33 +667,27 @@ EMACS_BETA_VERSION=-DEMACS_BETA_VERSION=$(emacs_beta_version) !ENDIF -!if !$(USE_PORTABLE_DUMPER) -TEMACS_ENTRYPOINT=-entry:_start -!else -TEMACS_ENTRYPOINT=-entry:mainCRTStartup -!endif - -TEMACS_DIR=$(SRC) +TEMACS_DIR=$(XEMACS)\src TEMACS=$(TEMACS_DIR)\temacs.exe TEMACS_BROWSE=$(TEMACS_DIR)\temacs.bsc -TEMACS_SRC=$(SRC) +TEMACS_SRC=$(XEMACS)\src TEMACS_LIBS=$(LASTFILE) $(LWLIB) $(X_LIBS) $(MSW_LIBS) \ - oldnames.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib \ - shell32.lib wsock32.lib winmm.lib winspool.lib ole32.lib uuid.lib $(LIBC_LIB) + kernel32.lib user32.lib gdi32.lib advapi32.lib \ + shell32.lib wsock32.lib winmm.lib libc.lib TEMACS_LFLAGS=-nologo $(LIBRARIES) $(DEBUG_FLAGS) -base:0x1000000\ - -stack:0x800000 $(TEMACS_ENTRYPOINT) -subsystem:windows\ + -stack:0x800000 -entry:_start -subsystem:console\ -pdb:$(TEMACS_DIR)\temacs.pdb -map:$(TEMACS_DIR)\temacs.map \ - -heap:0x00100000 -nodefaultlib -incremental:no setargv.obj -TEMACS_CPP_FLAGS=-c \ + -heap:0x00100000 -out:$@ +TEMACS_CPP_FLAGS=-ML -c \ $(CFLAGS) $(INCLUDES) $(DEFINES) $(DEBUG_DEFINES) \ -DEMACS_MAJOR_VERSION=$(emacs_major_version) \ -DEMACS_MINOR_VERSION=$(emacs_minor_version) \ $(EMACS_BETA_VERSION) \ - -DXEMACS_CODENAME=\"$(xemacs_codename:&=and)\" \ + -DXEMACS_CODENAME=\"$(xemacs_codename)\" \ -DEMACS_CONFIGURATION=\"$(EMACS_CONFIGURATION)\" \ -DPATH_PACKAGEPATH=\"$(PATH_PACKAGEPATH)\" -!if $(HAVE_X_WINDOWS) +!if $(HAVE_X) TEMACS_X_OBJS=\ $(OUTDIR)\balloon-x.obj \ $(OUTDIR)\balloon_help.obj \ @@ -852,10 +709,10 @@ $(OUTDIR)\scrollbar-x.obj \ $(OUTDIR)\xgccache.obj \ $(OUTDIR)\xmu.obj \ - $(OUTDIR)\select-x.obj + $(OUTDIR)\xselect.obj !endif -!if $(HAVE_MS_WINDOWS) +!if $(HAVE_MSW) TEMACS_MSW_OBJS=\ $(OUTDIR)\console-msw.obj \ $(OUTDIR)\device-msw.obj \ @@ -878,8 +735,9 @@ TEMACS_MULE_OBJS=\ $(OUTDIR)\mule.obj \ $(OUTDIR)\mule-charset.obj \ - $(OUTDIR)\mule-ccl.obj -! if $(HAVE_X_WINDOWS) + $(OUTDIR)\mule-ccl.obj \ + $(OUTDIR)\mule-coding.obj +! if $(HAVE_X) TEMACS_MULE_OBJS=\ $(TEMACS_MULE_OBJS) $(OUTDIR)\input-method-xlib.obj ! endif @@ -887,24 +745,7 @@ !if $(DEBUG_XEMACS) TEMACS_DEBUG_OBJS=\ - $(OUTDIR)\debug.obj \ - $(OUTDIR)\tests.obj -!endif - -!if !$(USE_SYSTEM_MALLOC) -TEMACS_ALLOC_OBJS=\ - $(OUTDIR)\free-hook.obj \ - $(OUTDIR)\gmalloc.obj \ - $(OUTDIR)\ntheap.obj \ - $(OUTDIR)\vm-limit.obj -!endif - -!if !$(USE_PORTABLE_DUMPER) -TEMACS_DUMP_OBJS=\ - $(OUTDIR)\unexnt.obj -!else -TEMACS_DUMP_OBJS=\ - $(OUTDIR)\dumper.obj + $(OUTDIR)\debug.obj !endif TEMACS_OBJS= \ @@ -913,8 +754,6 @@ $(TEMACS_CODING_OBJS)\ $(TEMACS_MULE_OBJS)\ $(TEMACS_DEBUG_OBJS)\ - $(TEMACS_ALLOC_OBJS)\ - $(TEMACS_DUMP_OBJS)\ $(OUTDIR)\abbrev.obj \ $(OUTDIR)\alloc.obj \ $(OUTDIR)\alloca.obj \ @@ -952,12 +791,13 @@ $(OUTDIR)\fns.obj \ $(OUTDIR)\font-lock.obj \ $(OUTDIR)\frame.obj \ + $(OUTDIR)\free-hook.obj \ $(OUTDIR)\general.obj \ $(OUTDIR)\glyphs.obj \ $(OUTDIR)\glyphs-eimage.obj \ $(OUTDIR)\glyphs-widget.obj \ + $(OUTDIR)\gmalloc.obj \ $(OUTDIR)\gui.obj \ - $(OUTDIR)\gutter.obj \ $(OUTDIR)\hash.obj \ $(OUTDIR)\indent.obj \ $(OUTDIR)\imgproc.obj \ @@ -973,6 +813,7 @@ $(OUTDIR)\md5.obj \ $(OUTDIR)\minibuf.obj \ $(OUTDIR)\nt.obj \ + $(OUTDIR)\ntheap.obj \ $(OUTDIR)\ntplay.obj \ $(OUTDIR)\ntproc.obj \ $(OUTDIR)\objects.obj \ @@ -988,7 +829,6 @@ $(OUTDIR)\regex.obj \ $(OUTDIR)\scrollbar.obj \ $(OUTDIR)\search.obj \ - $(OUTDIR)\select.obj \ $(OUTDIR)\signal.obj \ $(OUTDIR)\sound.obj \ $(OUTDIR)\specifier.obj \ @@ -998,13 +838,16 @@ $(OUTDIR)\sysdep.obj \ $(OUTDIR)\tparam.obj \ $(OUTDIR)\undo.obj \ + $(OUTDIR)\unexnt.obj \ + $(OUTDIR)\vm-limit.obj \ $(OUTDIR)\widget.obj \ - $(OUTDIR)\window.obj + $(OUTDIR)\window.obj \ + $(OUTDIR)\xemacs.res # Rules .SUFFIXES: -.SUFFIXES: .c .obj .texi .info +.SUFFIXES: .c # nmake rule !if $(DEBUG_XEMACS) @@ -1015,8 +858,6 @@ $(CCV) $(TEMACS_CPP_FLAGS) $< -Fo$@ !endif -$(OUTDIR)\emacs.obj: $(XEMACS)\version.sh - $(OUTDIR)\TopLevelEmacsShell.obj: $(TEMACS_SRC)\EmacsShell-sub.c $(CCV) $(TEMACS_CPP_FLAGS) -DDEFINE_TOP_LEVEL_EMACS_SHELL $** -Fo$@ @@ -1031,292 +872,28 @@ #$(TEMACS_SRC)\paths.h: $(TEMACS_SRC)\paths.h.in # !"cd $(TEMACS_SRC); cp paths.h.in paths.h" -$(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS) $(OUTDIR)\xemacs.res +$(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS) !if $(DEBUG_XEMACS) @dir /b/s $(OUTDIR)\*.sbr > bscmake.tmp bscmake -nologo -o$(TEMACS_BROWSE) @bscmake.tmp - @$(DEL) bscmake.tmp + @del bscmake.tmp !endif -!if $(USE_PORTABLE_DUMPER) - @if exist $(SRC)\dump-id.c del $(SRC)\dump-id.c -# make a new dump id file. There is probably a better way to do this, but this works - @if exist $(OUTDIR)\dump-id.obj del $(OUTDIR)\dump-id.obj - nmake -nologo -f xemacs.mak OUTDIR=$(OUTDIR) $(OUTDIR)\dump-id.obj link.exe @<< - $(TEMACS_LFLAGS) -out:$@ $(TEMACS_OBJS) $(TEMACS_LIBS) $(OUTDIR)\dump-id.obj + $(TEMACS_LFLAGS) $(TEMACS_OBJS) $(TEMACS_LIBS) << -!else - link.exe @<< - $(TEMACS_LFLAGS) -out:$@ $(TEMACS_OBJS) $(OUTDIR)\xemacs.res $(TEMACS_LIBS) -<< -!endif $(OUTDIR)\xemacs.res: xemacs.rc rc -Fo$@ xemacs.rc - -PROGNAME=$(SRC)\xemacs.exe -TEMACS_BATCH="$(LIB_SRC)\i" "$(TEMACS)" -batch -XEMACS_BATCH="$(LIB_SRC)\i" "$(PROGNAME)" -vanilla -batch - -# Section handling automated tests starts here - -blddir=$(MAKEDIR:\=\\)\\.. -temacs_loadup=$(TEMACS_BATCH) -l $(LISP)/loadup.el -dump_temacs = $(temacs_loadup) dump -run_temacs = $(temacs_loadup) run-temacs -## We have automated tests!! -testdir=../tests/automated -batch_test_emacs=-batch -l $(testdir)/test-harness.el -f batch-test-emacs $(testdir) - -# .PHONY: check check-temacs - -check: - cd $(SRC) - $(PROGNAME) $(batch_test_emacs) - -check-temacs: - cd $(SRC) - set EMACSBOOTSTRAPLOADPATH=$(LISP) - set EMACSBOOTSTRAPMODULEPATH=$(MODULES) - $(run_temacs) $(batch_test_emacs) - -# Section handling automated tests ends here - -# Section handling tags starts here - -tagslisp=lisp - -tags: - @echo If you don't have a copy of etags around, then do 'make lib-src' first. - @echo To make use of the tags file, put the following in your .emacs: - @echo (setq tag-table-alist - @echo '(("$(XEMACSDIRSTRING)\\" . "$(XEMACSDIRSTRING)\\"))) - cd $(XEMACS) - $(DEL) TAGS - set PATH=lib-src;%PATH% -# we need to double ^, but only before backslash! Doubling it elsewhere -# causes problems. I don't understand this -- CMD.EXE uses ^ as a quoting -# convention of sorts, but appears to leave it alone inside of double quotes, -# even before \. Could this be nmake interference? - etags -a -r "/[ ]*DEF\(VAR\|INE\)_[A-Z_]+[ ]*([ ]*\"\([^^\"]+\)\"/\2/" src\*.c src\*.h lwlib\*.c lwlib\*.h lib-src\*.c lib-src\*.h - 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 - -# Section handling tags ends here - -# Section handling info starts here - -!if !defined(MAKEINFO) -MAKEINFO=$(XEMACS_BATCH) -l texinfmt -f batch-texinfo-format -!endif - -MANDIR = $(XEMACS)\man -INFODIR = $(XEMACS)\info -INFO_FILES= \ - $(INFODIR)\cl.info \ - $(INFODIR)\custom.info \ - $(INFODIR)\emodules.info \ - $(INFODIR)\external-widget.info \ - $(INFODIR)\info.info \ - $(INFODIR)\standards.info \ - $(INFODIR)\term.info \ - $(INFODIR)\termcap.info \ - $(INFODIR)\texinfo.info \ - $(INFODIR)\widget.info \ - $(INFODIR)\xemacs-faq.info \ - $(INFODIR)\xemacs.info \ - $(INFODIR)\lispref.info \ - $(INFODIR)\new-users-guide.info \ - $(INFODIR)\internals.info - -{$(MANDIR)}.texi{$(INFODIR)}.info: - cd $(MANDIR) - $(MAKEINFO) $** - -XEMACS_SRCS = \ - $(MANDIR)\xemacs\abbrevs.texi \ - $(MANDIR)\xemacs\basic.texi \ - $(MANDIR)\xemacs\buffers.texi \ - $(MANDIR)\xemacs\building.texi \ - $(MANDIR)\xemacs\calendar.texi \ - $(MANDIR)\xemacs\cmdargs.texi \ - $(MANDIR)\xemacs\custom.texi \ - $(MANDIR)\xemacs\display.texi \ - $(MANDIR)\xemacs\entering.texi \ - $(MANDIR)\xemacs\files.texi \ - $(MANDIR)\xemacs\fixit.texi \ - $(MANDIR)\xemacs\frame.texi \ - $(MANDIR)\xemacs\glossary.texi \ - $(MANDIR)\xemacs\gnu.texi \ - $(MANDIR)\xemacs\help.texi \ - $(MANDIR)\xemacs\indent.texi \ - $(MANDIR)\xemacs\keystrokes.texi \ - $(MANDIR)\xemacs\killing.texi \ - $(MANDIR)\xemacs\m-x.texi \ - $(MANDIR)\xemacs\major.texi \ - $(MANDIR)\xemacs\mark.texi \ - $(MANDIR)\xemacs\menus.texi \ - $(MANDIR)\xemacs\mini.texi \ - $(MANDIR)\xemacs\misc.texi \ - $(MANDIR)\xemacs\mouse.texi \ - $(MANDIR)\xemacs\mule.texi \ - $(MANDIR)\xemacs\new.texi \ - $(MANDIR)\xemacs\packages.texi \ - $(MANDIR)\xemacs\picture.texi \ - $(MANDIR)\xemacs\programs.texi \ - $(MANDIR)\xemacs\reading.texi \ - $(MANDIR)\xemacs\regs.texi \ - $(MANDIR)\xemacs\search.texi \ - $(MANDIR)\xemacs\sending.texi \ - $(MANDIR)\xemacs\startup.texi \ - $(MANDIR)\xemacs\text.texi \ - $(MANDIR)\xemacs\trouble.texi \ - $(MANDIR)\xemacs\undo.texi \ - $(MANDIR)\xemacs\windows.texi \ - $(MANDIR)\xemacs\xemacs.texi - -LISPREF_SRCS = \ - $(MANDIR)\lispref\abbrevs.texi \ - $(MANDIR)\lispref\annotations.texi \ - $(MANDIR)\lispref\back.texi \ - $(MANDIR)\lispref\backups.texi \ - $(MANDIR)\lispref\buffers.texi \ - $(MANDIR)\lispref\building.texi \ - $(MANDIR)\lispref\commands.texi \ - $(MANDIR)\lispref\compile.texi \ - $(MANDIR)\lispref\consoles-devices.texi \ - $(MANDIR)\lispref\control.texi \ - $(MANDIR)\lispref\customize.texi \ - $(MANDIR)\lispref\databases.texi \ - $(MANDIR)\lispref\debugging.texi \ - $(MANDIR)\lispref\dialog.texi \ - $(MANDIR)\lispref\display.texi \ - $(MANDIR)\lispref\dragndrop.texi \ - $(MANDIR)\lispref\edebug-inc.texi \ - $(MANDIR)\lispref\edebug.texi \ - $(MANDIR)\lispref\errors.texi \ - $(MANDIR)\lispref\eval.texi \ - $(MANDIR)\lispref\extents.texi \ - $(MANDIR)\lispref\faces.texi \ - $(MANDIR)\lispref\files.texi \ - $(MANDIR)\lispref\frames.texi \ - $(MANDIR)\lispref\functions.texi \ - $(MANDIR)\lispref\glyphs.texi \ - $(MANDIR)\lispref\hash-tables.texi \ - $(MANDIR)\lispref\help.texi \ - $(MANDIR)\lispref\hooks.texi \ - $(MANDIR)\lispref\index.texi \ - $(MANDIR)\lispref\internationalization.texi \ - $(MANDIR)\lispref\intro.texi \ - $(MANDIR)\lispref\keymaps.texi \ - $(MANDIR)\lispref\ldap.texi \ - $(MANDIR)\lispref\lispref.texi \ - $(MANDIR)\lispref\lists.texi \ - $(MANDIR)\lispref\loading.texi \ - $(MANDIR)\lispref\locals.texi \ - $(MANDIR)\lispref\macros.texi \ - $(MANDIR)\lispref\maps.texi \ - $(MANDIR)\lispref\markers.texi \ - $(MANDIR)\lispref\menus.texi \ - $(MANDIR)\lispref\minibuf.texi \ - $(MANDIR)\lispref\modes.texi \ - $(MANDIR)\lispref\mouse.texi \ - $(MANDIR)\lispref\mule.texi \ - $(MANDIR)\lispref\numbers.texi \ - $(MANDIR)\lispref\objects.texi \ - $(MANDIR)\lispref\os.texi \ - $(MANDIR)\lispref\positions.texi \ - $(MANDIR)\lispref\processes.texi \ - $(MANDIR)\lispref\range-tables.texi \ - $(MANDIR)\lispref\scrollbars.texi \ - $(MANDIR)\lispref\searching.texi \ - $(MANDIR)\lispref\sequences.texi \ - $(MANDIR)\lispref\specifiers.texi \ - $(MANDIR)\lispref\streams.texi \ - $(MANDIR)\lispref\strings.texi \ - $(MANDIR)\lispref\symbols.texi \ - $(MANDIR)\lispref\syntax.texi \ - $(MANDIR)\lispref\text.texi \ - $(MANDIR)\lispref\tips.texi \ - $(MANDIR)\lispref\toolbar.texi \ - $(MANDIR)\lispref\tooltalk.texi \ - $(MANDIR)\lispref\variables.texi \ - $(MANDIR)\lispref\windows.texi \ - $(MANDIR)\lispref\x-windows.texi - -INTERNALS_SRCS = \ - $(MANDIR)\internals\internals.texi \ - $(MANDIR)\internals\index.texi - -NEW_USERS_GUIDE_SRCS = \ - $(MANDIR)\new-users-guide\custom1.texi \ - $(MANDIR)\new-users-guide\custom2.texi \ - $(MANDIR)\new-users-guide\edit.texi \ - $(MANDIR)\new-users-guide\enter.texi \ - $(MANDIR)\new-users-guide\files.texi \ - $(MANDIR)\new-users-guide\help.texi \ - $(MANDIR)\new-users-guide\modes.texi \ - $(MANDIR)\new-users-guide\new-users-guide.texi \ - $(MANDIR)\new-users-guide\region.texi \ - $(MANDIR)\new-users-guide\search.texi \ - $(MANDIR)\new-users-guide\xmenu.texi - -$(INFODIR)\xemacs.info: $(XEMACS_SRCS) - cd $(MANDIR)\xemacs - $(MAKEINFO) xemacs.texi - cd .. - - -$(INFODIR)\lispref.info: $(LISPREF_SRCS) - cd $(MANDIR)\lispref - $(MAKEINFO) lispref.texi - cd .. - -$(INFODIR)\internals.info: $(INTERNALS_SRCS) - cd $(MANDIR)\internals - $(MAKEINFO) internals.texi - cd .. - -$(INFODIR)\new-users-guide.info: $(NEW_USERS_GUIDE_SRCS) - cd $(MANDIR)\new-users-guide - $(MAKEINFO) new-users-guide.texi - cd .. - -info: makeinfo-test $(INFO_FILES) - -makeinfo-test: - @<<makeinfo_test.bat -@echo off -if exist "$(MAKEINFO)" goto test_done -@$(XEMACS_BATCH) -eval "(condition-case nil (require (quote texinfo)) (t (kill-emacs 1)))" -@if not errorlevel 1 goto suggest_makeinfo -@echo XEmacs `info' cannot be built! -@echo Install XEmacs package `texinfo' (see README.packages). -:suggest_makeinfo -@echo Consider specifying path to makeinfo program: MAKEINFO=path -@echo as this will build info docs faster than XEmacs using `texinfo'. -@if errorlevel 1 exit 1 -:test_done -<<NOKEEP - -# Section handling info ends here - #------------------------------------------------------------------------------ # LISP bits 'n bobs LOADPATH=$(LISP) -# Rebuild docfile target -docfile :: - if exist $(DOC) del $(DOC) -docfile :: $(DOC) - -$(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) - if exist $(DOC) del $(DOC) - set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) - set EMACSBOOTSTRAPMODULEPATH=$(MODULES) - $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\make-docfile.el -- -o $(DOC) -i $(XEMACS)\site-packages +$(DOC): $(LIB_SRC)\make-docfile.exe + -del $(DOC) + $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\make-docfile.el -- -o $(DOC) -i $(XEMACS)\site-packages $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC1) $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC2) $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC3) @@ -1326,119 +903,95 @@ $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC7) $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC8) $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC9) - $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC10) - $(LIB_SRC)\make-docfile.exe -a $(DOC) -d $(TEMACS_SRC) $(DOC_SRC11) update-elc: set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) set EMACSBOOTSTRAPMODULEPATH=$(MODULES) - $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\update-elc.el - -# This file is touched by update-elc.el when redumping is necessary. -$(TEMACS_DIR)\NEEDTODUMP : - @echo >$(TEMACS_DIR)\NEEDTODUMP + $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\update-elc.el # This rule dumps xemacs and then possibly spawns sub-make if PURESPACE -# requirements have changed. - -$(PROGNAME) : $(TEMACS) $(TEMACS_DIR)\NEEDTODUMP +# requirements has changed. +dump-xemacs: $(TEMACS) @echo >$(TEMACS_DIR)\SATISFIED cd $(TEMACS_DIR) set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) - set EMACSBOOTSTRAPMODULEPATH=$(MODULES) - -1 $(TEMACS_BATCH) -l $(TEMACS_DIR)\..\lisp\loadup.el dump -!if $(USE_PORTABLE_DUMPER) - rc -d INCLUDE_DUMP -Fo $(OUTDIR)\xemacs.res $(NT)\xemacs.rc - link.exe @<< - $(TEMACS_LFLAGS) -out:xemacs.exe $(TEMACS_OBJS) $(OUTDIR)\xemacs.res $(TEMACS_LIBS) $(OUTDIR)\dump-id.obj -<< -# Make the resource section read/write since almost all of it is the dump -# data which needs to be writable. This avoids having to copy it. - editbin -nologo -section:.rsrc,rw xemacs.exe - del $(TEMACS_DIR)\xemacs.dmp -!endif - cd $(NT) + -1 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\loadup.el dump + @cd $(NT) @if not exist $(TEMACS_DIR)\SATISFIED nmake -nologo -f xemacs.mak $@ + #------------------------------------------------------------------------------ # use this rule to build the complete system -all: installation $(OUTDIR)\nul $(LASTFILE) $(LWLIB) \ - $(LIB_SRC_TOOLS) $(TEMACS) update-elc $(DOC) $(PROGNAME) \ - update-auto-and-custom info +all: Installation $(OUTDIR)\nul $(LASTFILE) $(LWLIB) $(LIB_SRC_TOOLS) $(RUNEMACS) \ + $(TEMACS) update-elc $(DOC) dump-xemacs -temacs: $(LASTFILE) $(TEMACS) +temacs: $(TEMACS) # use this rule to install the system install: all - cd $(NT) @echo Installing in $(INSTALL_DIR) ... @echo PlaceHolder > PlaceHolder @xcopy /q PROBLEMS "$(INSTALL_DIR)\" @xcopy /q PlaceHolder "$(INSTALL_DIR)\lock\" - @$(DEL) "$(INSTALL_DIR)\lock\PlaceHolder" + @del "$(INSTALL_DIR)\lock\PlaceHolder" @xcopy /q $(LIB_SRC)\*.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)\" @copy $(LIB_SRC)\DOC "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" @copy $(CONFIG_VALUES) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" - @copy $(SRC)\xemacs.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" + @copy $(XEMACS)\src\xemacs.exe "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" + @copy $(RUNEMACS) "$(INSTALL_DIR)\$(EMACS_CONFIGURATION)" @xcopy /e /q $(XEMACS)\etc "$(INSTALL_DIR)\etc\" @xcopy /e /q $(XEMACS)\info "$(INSTALL_DIR)\info\" @xcopy /e /q $(XEMACS)\lisp "$(INSTALL_DIR)\lisp\" @echo Making skeleton package tree in $(PACKAGE_PREFIX) ... @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\site-packages\" - @$(DEL) "$(PACKAGE_PREFIX)\site-packages\PlaceHolder" + @del "$(PACKAGE_PREFIX)\site-packages\PlaceHolder" @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\mule-packages\" - @$(DEL) "$(PACKAGE_PREFIX)\mule-packages\PlaceHolder" + @del "$(PACKAGE_PREFIX)\mule-packages\PlaceHolder" @xcopy /q PlaceHolder "$(PACKAGE_PREFIX)\xemacs-packages\" - @$(DEL) "$(PACKAGE_PREFIX)\xemacs-packages\PlaceHolder" - @$(DEL) PlaceHolder + @del "$(PACKAGE_PREFIX)\xemacs-packages\PlaceHolder" + @del PlaceHolder distclean: - $(DEL) *.bak - $(DEL) *.orig - $(DEL) *.rej - $(DEL) *.tmp - $(DEL) $(XEMACS)\Installation + del *.bak + del *.orig + del *.rej + del *.tmp + del Installation cd $(OUTDIR) - $(DEL) *.lib - $(DEL) *.obj - $(DEL) *.pdb - $(DEL) *.res - $(DEL) *.sbr + del *.lib + del *.obj + del *.pdb + del *.res + del *.sbr cd $(XEMACS)\$(TEMACS_DIR) - $(DEL) config.h - $(DEL) paths.h - $(DEL) Emacs.ad.h - $(DEL) *.bak - $(DEL) *.orig - $(DEL) *.rej - $(DEL) *.exe - $(DEL) *.map - $(DEL) *.bsc - $(DEL) *.pdb + del config.h + del paths.h + del Emacs.ad.h + del *.bak + del *.orig + del *.rej + del *.exe + del *.map + del *.bsc + del *.pdb cd $(LIB_SRC) - $(DEL) DOC - $(DEL) *.bak - $(DEL) *.orig - $(DEL) *.rej - $(DEL) *.exe - $(DEL) *.obj - $(DEL) *.pdb - $(DEL) *.res - $(DEL) $(CONFIG_VALUES) + del DOC + del *.bak + del *.orig + del *.rej + del *.exe + del *.obj + del *.pdb + del *.res + del $(CONFIG_VALUES) cd $(LISP) - $(DEL) /s /q *.bak *.elc *.orig *.rej - cd $(INFODIR) - $(DEL) *.info* + -del /s /q *.bak *.elc *.orig *.rej depend: - cd $(SRC) - perl ./make-src-depend > depend.tmp - perl -MFile::Compare -e "compare('depend.tmp', 'depend') && rename('depend.tmp', 'depend') or unlink('depend.tmp')" + mkdepend -f xemacs.mak -p$(OUTDIR)\ -o.obj -w9999 -- $(TEMACS_CPP_FLAGS) -- $(DOC_SRC1) $(DOC_SRC2) $(DOC_SRC3) $(DOC_SRC4) $(DOC_SRC5) $(DOC_SRC6) $(DOC_SRC7) $(DOC_SRC8) $(DOC_SRC9) $(LASTFILE_SRC)\lastfile.c $(LIB_SRC)\make-docfile.c $(LIB_SRC)\run.c -$(XEMACS)\Installation:: installation - -installation:: - @type > $(XEMACS)\Installation << +Installation: + @type > Installation << !if defined(OS) OS: $(OS) !endif @@ -1454,10 +1007,10 @@ !if $(INFODOCK) Building InfoDock. !endif -!if $(HAVE_MS_WINDOWS) +!if $(HAVE_MSW) Compiling in support for Microsoft Windows native GUI. !endif -!if $(HAVE_X_WINDOWS) +!if $(HAVE_X) Compiling in support for X-Windows. !endif !if $(HAVE_MULE) @@ -1501,9 +1054,6 @@ !if $(HAVE_DIALOGS) Compiling in support for dialogs. !endif -!if $(HAVE_WIDGETS) - Compiling in support for widgets. -!endif !if $(HAVE_NATIVE_SOUND) Compiling in support for native sounds. !endif @@ -1525,36 +1075,13 @@ !if $(USE_UNION_TYPE) Using union type for Lisp object storage. !endif -!if $(USE_PORTABLE_DUMPER) - Using portable dumper. -!endif -!if $(USE_SYSTEM_MALLOC) - Using system malloc. -!endif -!if $(USE_CRTDLL) - Using DLL version of C runtime library -!endif !if $(DEBUG_XEMACS) Compiling in extra debug checks. XEmacs will be slow! !endif -!if $(QUICK_BUILD) - Disabling non-essential build actions. Use with care! -!endif <<NOKEEP @echo -------------------------------------------------------------------- - @type $(XEMACS)\Installation + @type Installation @echo -------------------------------------------------------------------- -# Update auto-autoloads.el and custom-load.el similar to what -# XEmacs.rules does for xemacs-packages. -update-auto-and-custom: -# Don't delete this, because it forces rebuilding from scratch, -# which is time-consuming; and the autoload code is specifically -# written to do in-place updating. -# @$(DEL) $(LISP)\auto-autoloads.el -# Combine into one invocation to avoid repeated startup penalty. - $(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-dependencies $(LISP) - @$(DEL) $(LISP)\auto-autoloads.el~ - # DO NOT DELETE THIS LINE -- make depend depends on it.