Merge from emacs-24; up to 2014-04-17T02:05:48Z!eggert@cs.ucla.edu
[bpt/emacs.git] / nt / makefile.w32-in
index 48f4e29..59da034 100644 (file)
@@ -1,5 +1,5 @@
-# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
-# Copyright (C) 2000-2012 Free Software Foundation, Inc.
+# -*- Makefile -*- for GNU Emacs on the Microsoft Windows API.
+# Copyright (C) 2000-2014 Free Software Foundation, Inc.
 #
 # Top level makefile for building GNU Emacs on Windows NT
 #
 # FIXME: This file uses DOS EOLs.  Convert to Unix after 22.1 is out
 #        (and remove or replace this comment).
 
-VERSION                = 24.0.95
+VERSION                = 24.4.50
 
 TMP_DIST_DIR   = emacs-$(VERSION)
 
 TRES           = $(BLD)/emacs.res
 CLIENTRES      = $(BLD)/emacsclient.res
 
-XMFLAGS                =
-
-ALL            = addpm ddeclient runemacs cmdproxy addsection preprep
+LOCAL_FLAGS    = -DOLD_PATHS=1
 
-.PHONY: $(ALL)
+XMFLAGS                =
 
+ALL            = $(BLD)/addpm.exe $(BLD)/ddeclient.exe $(BLD)/runemacs.exe \
+                 $(BLD)/cmdproxy.exe $(BLD)/addsection.exe $(BLD)/preprep.exe
 
-addpm:           stamp_BLD $(BLD)/addpm.exe
 $(BLD)/addpm.exe: $(BLD)/addpm.$(O)
                  $(LINK) $(LINK_OUT)$@ \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) \
                  $(USER32) $(OLE32) $(UUID) $(SHELL32)
 
-ddeclient:       stamp_BLD $(BLD)/ddeclient.exe
 $(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O)
                  $(LINK) $(LINK_OUT)$@ \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
 
-cmdproxy:        stamp_BLD $(BLD)/cmdproxy.exe
 $(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O)
                  $(LINK) $(LINK_OUT)$@ \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
 
-addsection:      stamp_BLD $(BLD)/addsection.exe
 $(BLD)/addsection.exe: $(BLD)/addsection.$(O)
                  $(LINK) $(LINK_OUT)$@ \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
 
-preprep:         stamp_BLD $(BLD)/preprep.exe
 $(BLD)/preprep.exe: $(BLD)/preprep.$(O)
                  $(LINK) $(LINK_OUT)$@ \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS)
@@ -66,13 +61,12 @@ $(BLD)/preprep.exe: $(BLD)/preprep.$(O)
 # The resource file.  NT 3.10 requires the use of cvtres; even though
 # it is not necessary on later versions, it is still ok to use it.
 #
-$(TRES):       emacs.rc icons/emacs.ico emacs.manifest stamp_BLD
+$(TRES):       emacs.rc icons/emacs.ico $(EMACS_MANIFEST) stamp_BLD
                $(RC) $(RC_OUT)$(TRES) emacs.rc
 
 $(CLIENTRES):  emacsclient.rc stamp_BLD
                $(RC) $(RC_OUT)$(CLIENTRES) emacsclient.rc
 
-runemacs:        stamp_BLD $(BLD)/runemacs.exe
 $(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES)
                  $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \
                  $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
@@ -93,7 +87,7 @@ all:  which-sh $(ALL) $(CLIENTRES) all-other-dirs-$(MAKETYPE)
 
 all-other-dirs-$(MAKETYPE): maybe-bootstrap
 
-all-other-dirs-nmake: addsection
+all-other-dirs-nmake: $(BLD)/addsection.exe
        cd ..\lib
        $(MAKE) $(MFLAGS) all
        cd ..\lib-src
@@ -106,7 +100,7 @@ all-other-dirs-nmake: addsection
        $(MAKE) $(MFLAGS) all
        cd ..\nt
 
-all-other-dirs-gmake: addsection
+all-other-dirs-gmake: $(BLD)/addsection.exe
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib all
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src all
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src all
@@ -153,10 +147,10 @@ maybe-bootstrap-SH: doit
 
 # Bootstrap depends on cmdproxy because some Lisp functions
 # loaded during bootstrap may need to run shell commands.
-bootstrap:     addsection cmdproxy bootstrap-$(MAKETYPE)
+bootstrap:     $(BLD)/addsection.exe $(BLD)/cmdproxy.exe bootstrap-$(MAKETYPE)
        $(MAKE) $(MFLAGS) $(XMFLAGS) all
 
-bootstrap-nmake: addsection cmdproxy
+bootstrap-nmake: $(BLD)/addsection.exe $(BLD)/cmdproxy.exe
        cd ..\lisp
        $(MAKE) $(MFLAGS) bootstrap-clean
        cd ..\src
@@ -176,7 +170,7 @@ bootstrap-nmake: addsection cmdproxy
        $(MAKE) $(MFLAGS) DOC
        cd ..\nt
 
-bootstrap-gmake: addsection cmdproxy
+bootstrap-gmake: $(BLD)/addsection.exe $(BLD)/cmdproxy.exe
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap-clean
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src clean
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src clean
@@ -257,17 +251,19 @@ install-other-dirs-gmake: all
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install
        $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install
 
-install-shortcuts: $(INSTALL_DIR)/bin
+install-addpm: $(INSTALL_DIR)/bin $(BLD)/addpm.exe
        - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin
+
+install-shortcuts: install-addpm
        "$(INSTALL_DIR)/bin/addpm" -q
 
 maybe-copy-distfiles: maybe-copy-distfiles-$(SHELLTYPE)
 
 maybe-copy-distfiles-CMD: create-tmp-dist-dir doit
-       @if not $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE)=="" $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin
+       @if not $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin
 
 maybe-copy-distfiles-SH: create-tmp-dist-dir doit
-       @if [ ! $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE)=="" ] ; then \
+       @if [ ! $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" ] ; then \
          $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin ; \
        fi
 
@@ -276,7 +272,7 @@ create-tmp-dist-dir:
 # Also create bin directory for dist files.
        mkdir "$(TMP_DIST_DIR)/bin"
 
-dist: install-bin maybe-copy-distfiles
+dist: install-bin install-addpm maybe-copy-distfiles
        $(CP) "$(INSTALL_DIR)/BUGS" $(TMP_DIST_DIR)
        $(CP) "$(INSTALL_DIR)/COPYING" $(TMP_DIST_DIR)
        $(CP) "$(INSTALL_DIR)/README" $(TMP_DIST_DIR)
@@ -307,11 +303,11 @@ info-nmake:
        $(MAKE) $(MFLAGS) info
        cd $(MAKEDIR)
 
-info-gmake:
-       $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/emacs info
-       $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/misc info
-       $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispref info
-       $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/lispintro info
+info-gmake: emacs misc lispref lispintro
+
+emacs misc lispref lispintro:
+       $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../doc/$@ info
+
 #
 # Maintenance
 #
@@ -319,7 +315,7 @@ clean:      clean-other-dirs-$(MAKETYPE)
        - $(DEL) $(COMPILER_TEMP_FILES)
        - $(DEL_TREE) $(OBJDIR)
        - $(DEL) stamp_BLD
-       - $(DEL) ../etc/DOC ../etc/DOC-X
+       - $(DEL) ../etc/DOC
 
 clean-other-dirs-nmake:
        cd ..\lib
@@ -379,7 +375,7 @@ top-distclean:
        - $(DEL_TREE) oo
        - $(DEL_TREE) oo-spd
        - $(DEL) stamp_BLD
-       - $(DEL) ../etc/DOC ../etc/DOC-X
+       - $(DEL) ../etc/DOC
        - $(DEL) config.log Makefile
        - $(DEL) ../README.W32