X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=nt%2Fxemacs.mak;h=8a8254bbd282e739ee081e2d67b3b957c3dde974;hp=9cff2b0634c4d4fef92fe5caff9d8f2a611a19d3;hb=b73e352f264e9da0a00159dc29f318305cbe8636;hpb=113b194be934327de99a168d809271db252c07c4 diff --git a/nt/xemacs.mak b/nt/xemacs.mak index 9cff2b0..8a8254b 100644 --- a/nt/xemacs.mak +++ b/nt/xemacs.mak @@ -30,6 +30,9 @@ MODULES=$(XEMACS)\modules NT=$(XEMACS)\nt OUTDIR=$(NT)\obj +# Define a variable for the 'del' command to use +DEL=-del + # Program name and version !include "..\version.sh" @@ -117,6 +120,9 @@ HAVE_MSW_C_DIRED=1 !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 @@ -129,6 +135,9 @@ USE_MINIMAL_TAGBITS=0 !if !defined(USE_INDEXED_LRECORD_IMPLEMENTATION) USE_INDEXED_LRECORD_IMPLEMENTATION=0 !endif +!if !defined(GUNG_HO) +GUNG_HO=0 +!endif # # System configuration @@ -233,7 +242,7 @@ USE_INDEXED_LRECORD_IMPLEMENTATION=$(GUNG_HO) !endif # -# Compiler command echo control. Define VERBOSECC=1 to get vebose compilation. +# Compiler command echo control. Define VERBOSECC=1 to get verbose compilation. # !if !defined(VERBOSECC) VERBOSECC=0 @@ -308,6 +317,9 @@ MSW_DEFINES=$(MSW_DEFINES) -DHAVE_DIALOGS 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 @@ -405,17 +417,17 @@ CONFIG_VALUES = $(LIB_SRC)\config.values # Inferred rule {$(LIB_SRC)}.c{$(LIB_SRC)}.exe : - @cd $(LIB_SRC) + cd $(LIB_SRC) $(CCV) -I. -I$(XEMACS)/src -I$(XEMACS)/nt/inc $(LIB_SRC_DEFINES) $(CFLAGS) -Fe$@ $** -link -incremental:no - @cd $(NT) + 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) + cd $(NT) LIB_SRC_TOOLS = \ $(LIB_SRC)/make-docfile.exe \ @@ -550,6 +562,7 @@ DOC_SRC3=\ $(XEMACS)\src\glyphs-widget.c \ $(XEMACS)\src\gmalloc.c \ $(XEMACS)\src\gui.c \ + $(XEMACS)\src\gutter.c \ $(XEMACS)\src\hash.c \ $(XEMACS)\src\imgproc.c \ $(XEMACS)\src\indent.c \ @@ -647,8 +660,7 @@ DOC_SRC7=\ DOC_SRC8=\ $(XEMACS)\src\mule.c \ $(XEMACS)\src\mule-charset.c \ - $(XEMACS)\src\mule-ccl.c \ - $(XEMACS)\src\mule-coding.c + $(XEMACS)\src\mule-ccl.c ! if $(HAVE_X) DOC_SRC8=$(DOC_SRC8) $(XEMACS)\src\input-method-xlib.c ! endif @@ -736,8 +748,7 @@ TEMACS_MSW_OBJS=\ TEMACS_MULE_OBJS=\ $(OUTDIR)\mule.obj \ $(OUTDIR)\mule-charset.obj \ - $(OUTDIR)\mule-ccl.obj \ - $(OUTDIR)\mule-coding.obj + $(OUTDIR)\mule-ccl.obj ! if $(HAVE_X) TEMACS_MULE_OBJS=\ $(TEMACS_MULE_OBJS) $(OUTDIR)\input-method-xlib.obj @@ -799,6 +810,7 @@ TEMACS_OBJS= \ $(OUTDIR)\glyphs-widget.obj \ $(OUTDIR)\gmalloc.obj \ $(OUTDIR)\gui.obj \ + $(OUTDIR)\gutter.obj \ $(OUTDIR)\hash.obj \ $(OUTDIR)\indent.obj \ $(OUTDIR)\imgproc.obj \ @@ -849,7 +861,7 @@ TEMACS_OBJS= \ # Rules .SUFFIXES: -.SUFFIXES: .c +.SUFFIXES: .c .obj .texi .info # nmake rule !if $(DEBUG_XEMACS) @@ -878,7 +890,7 @@ $(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 link.exe @<< $(TEMACS_LFLAGS) $(TEMACS_OBJS) $(TEMACS_LIBS) @@ -887,6 +899,229 @@ $(TEMACS): $(TEMACS_INCLUDES) $(TEMACS_OBJS) $(OUTDIR)\xemacs.res: xemacs.rc rc -Fo$@ xemacs.rc +# Section handling automated tests starts here + +SRCDIR=$(MAKEDIR)\..\src +PROGNAME=$(SRCDIR)\xemacs.exe +blddir=$(MAKEDIR:\=\\)\\.. +temacs_loadup=$(TEMACS) -batch -l $(SRCDIR)/../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 $(SRCDIR) + $(PROGNAME) $(batch_test_emacs) + +check-temacs: + cd $(SRCDIR) + set EMACSBOOTSTRAPLOADPATH=$(LISP) + set EMACSBOOTSTRAPMODULEPATH=$(MODULES) + $(run_temacs) $(batch_test_emacs) + +# Section handling automated tests ends here + +# Section handling info starts here + +!if !defined(MAKEINFO) +MAKEINFO=$(PROGNAME) -vanilla -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: + @<$(TEMACS_DIR)\SATISFIED cd $(TEMACS_DIR) set EMACSBOOTSTRAPLOADPATH=$(LISP);$(PACKAGE_PATH) -1 $(TEMACS) -batch -l $(TEMACS_DIR)\..\lisp\loadup.el dump - @cd $(NT) + 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) $(RUNEMACS) \ - $(TEMACS) update-elc $(DOC) dump-xemacs +all: $(XEMACS)\Installation $(OUTDIR)\nul $(LASTFILE) $(LWLIB) \ + $(LIB_SRC_TOOLS) $(RUNEMACS) $(TEMACS) update-elc $(DOC) dump-xemacs \ + $(LISP)/auto-autoloads.el $(LISP)/custom-load.el info 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)" @@ -946,54 +1183,56 @@ install: all @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 Installation + $(DEL) *.bak + $(DEL) *.orig + $(DEL) *.rej + $(DEL) *.tmp + $(DEL) $(XEMACS)\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 + $(DEL) /s /q *.bak *.elc *.orig *.rej + cd $(INFODIR) + $(DEL) *.info* depend: 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 -Installation: - @type > Installation << +$(XEMACS)\Installation: + @type > $(XEMACS)\Installation << !if defined(OS) OS: $(OS) !endif @@ -1056,6 +1295,9 @@ XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename:"=\") configured for `$(EMACS_ !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 @@ -1082,8 +1324,24 @@ XEmacs $(XEMACS_VERSION_STRING) $(xemacs_codename:"=\") configured for `$(EMACS_ !endif <