-# Makefile for GNU Emacs on the Microsoft W32 API.\r
-# Copyright (c) 2000-2001 Free Software Foundation, Inc.\r
+# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.\r
+# Copyright (C) 2000, 2001, 2002, 2003, 2004,\r
+# 2005, 2006 Free Software Foundation, Inc.\r
#\r
# Top level makefile for building GNU Emacs on Windows NT\r
#\r
# This file is part of GNU Emacs.\r
-# \r
+#\r
# GNU Emacs is free software; you can redistribute it and/or modify\r
# it under the terms of the GNU General Public License as published by\r
# the Free Software Foundation; either version 2, or (at your option)\r
# any later version.\r
-# \r
+#\r
# GNU Emacs is distributed in the hope that it will be useful,\r
# but WITHOUT ANY WARRANTY; without even the implied warranty of\r
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
# GNU General Public License for more details.\r
-# \r
+#\r
# You should have received a copy of the GNU General Public License\r
# along with GNU Emacs; see the file COPYING. If not, write to\r
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
-# Boston, MA 02111-1307, USA.\r
+# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,\r
+# Boston, MA 02110-1301, USA.\r
\r
ALL = addpm ddeclient runemacs cmdproxy addsection preprep\r
\r
#\r
# Build emacs\r
#\r
-all: which-sh $(BLD) $(ALL) all-other-dirs-$(MAKETYPE)\r
+all: which-sh $(BLD) $(ALL) maybe-bootstrap all-other-dirs-$(MAKETYPE)\r
\r
all-other-dirs-nmake:\r
cd ..\lib-src\r
### special emacs executable is built from Lisp sources, which is then\r
### used to compile Lisp files. The last step is a "normal" make.\r
\r
+maybe-bootstrap: maybe-bootstrap-$(SHELLTYPE)\r
+\r
+# dummy target to force other targets to be evaluated.\r
+doit:\r
+\r
+maybe-bootstrap-CMD: doit\r
+ @echo .\r
+ @if not EXIST ..\lisp\abbrev.elc echo Essential Lisp files seem to be missing. You should either\r
+ @if not EXIST ..\lisp\abbrev.elc echo do 'make bootstrap' or create 'lisp/abbrev.elc' somehow\r
+ @echo .\r
+ @if not EXIST ..\lisp\abbrev.elc exit -1\r
+\r
+maybe-bootstrap-SH: doit\r
+ @if [ ! -f ../lisp/abbrev.elc ] ; then \\r
+ echo; \\r
+ echo "Essential Lisp files seem to be missing. You should either"; \\r
+ echo "do \`make bootstrap' or create \`lisp/abbrev.elc' somehow."; \\r
+ echo; \\r
+ exit -1; \\r
+ fi\r
+\r
bootstrap: addsection bootstrap-$(MAKETYPE) all\r
\r
bootstrap-nmake:\r
$(MAKE) $(MFLAGS) bootstrap\r
$(MAKE) $(MFLAGS) bootstrap-clean\r
cd ..\lisp\r
- $(MAKE) $(MFLAGS) bootstrap\r
+ $(MAKE) $(MFLAGS) SHELL=$(SHELLTYPE) bootstrap\r
cd ..\lib-src\r
$(MAKE) $(MFLAGS) DOC\r
cd ..\nt\r
- $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin\r
- $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin\r
- $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin\r
- - $(CP) ../lib-src/fns-*.el $(INSTALL_DIR)/bin\r
- - "$(INSTALL_DIR)/bin/addpm" /q\r
+ - "$(INSTALL_DIR)/bin/addpm" -q\r
- $(DEL) ../same-dir.tst\r
- $(DEL) $(INSTALL_DIR)/same-dir.tst\r
echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst"\r
$(MAKE) $(MFLAGS) -C ../lisp install\r
$(MAKE) $(MFLAGS) -C ../leim install\r
\r
+force-info:\r
+# Note that man/makefile knows how to\r
+# put the info files in $(infodir),\r
+# so we can do ok running make in the build dir.\r
+info: force-info info-$(MAKETYPE)\r
+\r
+info-nmake:\r
+ cd ..\man\r
+ $(MAKE) $(MFLAGS) info\r
+ cd ..\lispref\r
+ $(MAKE) $(MFLAGS) info\r
+ cd ..\lispintro\r
+ $(MAKE) $(MFLAGS) info\r
+\r
+info-gmake:\r
+ $(MAKE) $(MFLAGS) -C ../man info\r
+ $(MAKE) $(MFLAGS) -C ../lispref info\r
+ $(MAKE) $(MFLAGS) -C ../lispintro info\r
#\r
# Maintenance\r
-# \r
+#\r
clean: clean-other-dirs-$(MAKETYPE)\r
- $(DEL) *~ $(COMPILER_TEMP_FILES)\r
- $(DEL_TREE) $(OBJDIR)\r
$(MAKE) $(MFLAGS) clean\r
cd ..\lisp\r
$(MAKE) $(MFLAGS) clean\r
+ cd ..\lispintro\r
+ $(MAKE) $(MFLAGS) clean\r
+ cd ..\lispref\r
+ $(MAKE) $(MFLAGS) clean\r
cd ..\leim\r
$(MAKE) $(MFLAGS) clean\r
+ cd ..\man\r
+ $(MAKE) $(MFLAGS) clean\r
cd ..\nt\r
\r
clean-other-dirs-gmake:\r