X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/465384748f74266cec1e2b9c9308eb82efb462b1..57cb2e6f261bb0aad81a9f7e6f3017b54adee068:/src/makefile.w32-in diff --git a/src/makefile.w32-in b/src/makefile.w32-in index ec407c883f..496e890fb0 100644 --- a/src/makefile.w32-in +++ b/src/makefile.w32-in @@ -1,6 +1,6 @@ # -*- Makefile -*- for GNU Emacs on the Microsoft W32 API. # Copyright (C) 2000, 2001, 2002, 2003, 2004, -# 2005, 2006 Free Software Foundation, Inc. +# 2005, 2006, 2007 Free Software Foundation, Inc. # # This file is part of GNU Emacs. # @@ -159,7 +159,7 @@ all: $(ALL) # # The dumped executable # -emacs: $(BLD) $(EMACS) +emacs: stamp_BLD $(EMACS) $(EMACS): $(DOC) $(TEMACS) "$(THISDIR)/$(BLD)/temacs.exe" -batch -l loadup dump -"$(THISDIR)/$(BLD)/emacs.exe" -q -batch -f list-load-path-shadows @@ -170,7 +170,7 @@ $(EMACS): $(DOC) $(TEMACS) # If preload runs out of memory, increase the last argument to addsection # (it is the preload heap size in MB). # -temacs: $(BLD) $(TEMACS) +temacs: stamp_BLD $(TEMACS) $(TEMACS): $(TLIB0) $(TLIB1) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES) \ ../nt/$(BLD)/addsection.exe $(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS) @@ -188,7 +188,7 @@ bootstrap: bootstrap-emacs # WARNING: Do NOT split the part inside $(ARGQUOTE)s into multiple lines as # this can break with GNU Make 3.81 and later if sh.exe is used. bootstrap-temacs: - $(MAKE) $(MFLAGS) temacs CFLAGS=$(ARGQUOTE)$(CFLAGS) -DPURESIZE=5000000$(ARGQUOTE) + $(MAKE) $(MFLAGS) $(XMFLAGS) temacs CFLAGS=$(ARGQUOTE)$(CFLAGS) -DPURESIZE=5000000$(ARGQUOTE) # # Dump an Emacs executable named bootstrap-emacs containing the @@ -213,8 +213,8 @@ bootstrap-clean: # 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): ../nt/emacs.rc - $(RC) $(RC_INCLUDE)../nt $(RC_OUT)$@ $(ALL_DEPS) +$(TRES): ../nt/emacs.rc stamp_BLD + $(RC) $(RC_INCLUDE)../nt $(RC_OUT)$@ ../nt/emacs.rc # # Build the library. Split up the build into two phases...otherwise we @@ -253,6 +253,7 @@ clean: - $(DEL) *~ "s/*~" "m/*~" - $(DEL) $(COMPILER_TEMP_FILES) - $(DEL_TREE) $(OBJDIR) + - $(DEL) stamp_BLD distclean: clean - $(DEL) config.h epaths.h @@ -719,6 +720,8 @@ $(BLD)/fns.$(O) : \ $(EMACS_ROOT)/src/s/ms-w32.h \ $(EMACS_ROOT)/src/m/intel386.h \ $(EMACS_ROOT)/src/config.h \ + $(EMACS_ROOT)/nt/inc/langinfo.h \ + $(EMACS_ROOT)/nt/inc/nl_types.h \ $(SRC)/atimer.h \ $(SRC)/blockinput.h \ $(SRC)/buffer.h \ @@ -1044,6 +1047,8 @@ $(BLD)/w32proc.$(O) : \ $(SRC)/w32proc.c \ $(SRC)/s/ms-w32.h \ $(SRC)/m/intel386.h \ + $(EMACS_ROOT)/nt/inc/langinfo.h \ + $(EMACS_ROOT)/nt/inc/nl_types.h \ $(SRC)/config.h \ $(SRC)/process.h \ $(SRC)/syssignal.h \ @@ -1548,3 +1553,8 @@ $(BLD)/w32bdf.$(O): \ $(SRC)/w32bdf.h \ $(SRC)/w32gui.h \ $(SRC)/w32term.h + +# Each object file depends on stamp_BLD, because in parallel builds we must +# make sure $(BLD) exists before starting compilations. +# +$(OBJ0) $(OBJ1) $(WIN32OBJ) $(BLD)/lastfile.$(O) $(BLD)/firstfile.$(O): stamp_BLD