changeset 19702:e59ec4e58fce

makefile.nt (TLIB0, TOBJ, OBJ0): New macro. (LINK_FLAGS): Separate debugging info from the executable. (LIBS): Include TLIB0. (TEMACS): Link with TLIB0. (EMACS): Copy temacs map file to emacs map file. Update file dependencies.
author Geoff Voelker <voelker@cs.washington.edu>
date Wed, 03 Sep 1997 00:41:32 +0000
parents 18d979b08faf
children 9fa57c73882d
files src/makefile.nt
diffstat 1 files changed, 49 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/makefile.nt	Wed Sep 03 00:37:40 1997 +0000
+++ b/src/makefile.nt	Wed Sep 03 00:41:32 1997 +0000
@@ -36,6 +36,7 @@
 
 EMACS           = $(BLD)\emacs.exe
 TEMACS          = $(BLD)\temacs.exe
+TLIB0           = $(BLD)\temacs0.lib
 TLIB1           = $(BLD)\temacs1.lib
 TLIB2           = $(BLD)\temacs2.lib
 !IFDEF NTGUI
@@ -43,7 +44,7 @@
 !ELSE
 TLIBW32		=
 !ENDIF
-TOBJ            = $(BLD)\emacs.obj
+TOBJ            = $(BLD)\firstfile.obj
 !if $(MSVCNT11)
 TRES		= $(BLD)\emacs.res
 !else
@@ -53,12 +54,17 @@
 
 # see comments in allocate_heap in w32heap.c before changing any of the
 # -stack, -heap, or -base settings.
-LINK_FLAGS      = $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:cv -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map
+LINK_FLAGS      = $(ARCH_LDFLAGS) -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) -subsystem:$(SUBSYSTEM) -entry:_start -map:$(BLD)\temacs.map
 
 #
 # Split up the objects into two sets so that we don't run out of
 # command line space when we link them into a library.
 #
+# Put emacs.obj in a separate lib, since we need to have firstfile.obj
+# as the "main" object file when linking.
+#
+OBJ0 =  $(BLD)\emacs.obj
+
 OBJ1 =  $(BLD)\abbrev.obj       \
 	$(BLD)\alloc.obj        \
 	$(BLD)\alloca.obj       \
@@ -133,7 +139,8 @@
 	   $(BLD)\w32menu.obj	\
 	   $(BLD)\w32reg.obj
 
-LIBS =  $(TLIB1)	\
+LIBS =  $(TLIB0)	\
+	$(TLIB1)	\
 	$(TLIB2)	\
 !IFDEF NTGUI
 	$(TLIBW32)      \
@@ -179,13 +186,14 @@
 $(EMACS):       $(PREPARED_HEADERS) $(DOC) $(TEMACS)
 		cd $(BLD)
 		temacs.exe -batch -l loadup dump
+		copy temacs.map emacs.map
 		cd ..\..
 
 #
 # The undumped executable
 #
 temacs:         $(BLD) $(TEMACS)
-$(TEMACS):      $(TLIB1) $(TLIB2) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
+$(TEMACS):      $(TLIB0) $(TLIB1) $(TLIB2) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES)
 		$(LINK) -out:$(TEMACS) $(LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
 
 #
@@ -202,6 +210,8 @@
 # Build the library.  Split up the build into two phases...otherwise we 
 # run out of command line space.
 #
+$(TLIB0):       $(OBJ0)
+		@- $(AR) -out:$@ $**
 $(TLIB1):       $(OBJ1)
 		@- $(AR) -out:$@ $**
 $(TLIB2):	$(OBJ2)
@@ -306,12 +316,18 @@
 
 $(BLD)\bytecode.obj : \
 	$(SRC)\bytecode.c \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h \
 	$(SRC)\lisp.h \
 	$(SRC)\buffer.h \
 	$(SRC)\syntax.h
 
 $(BLD)\callint.obj : \
 	$(SRC)\callint.c \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h \
 	$(SRC)\lisp.h \
 	$(SRC)\buffer.h \
 	$(SRC)\commands.h \
@@ -534,6 +550,12 @@
 	$(SRC)\m\intel386.h \
 	$(SRC)\config.h
 
+$(BLD)\firstfile.obj : \
+	$(SRC)\firstfile.c \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h
+
 $(BLD)\floatfns.obj : \
 	$(SRC)\floatfns.c \
 	$(EMACS_ROOT)\src\s\ms-w32.h \
@@ -677,7 +699,10 @@
 	$(SRC)\blockinput.h
 
 $(BLD)\lastfile.obj : \
-	$(SRC)\lastfile.c
+	$(SRC)\lastfile.c \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h
 
 $(BLD)\lread.obj : \
 	$(SRC)\lread.c \
@@ -745,7 +770,10 @@
 
 $(BLD)\w32heap.obj : \
 	$(SRC)\w32heap.c \
-	$(SRC)\w32heap.h
+	$(SRC)\w32heap.h \
+	$(SRC)\s\ms-w32.h \
+	$(SRC)\m\intel386.h \
+	$(SRC)\config.h
 
 $(BLD)\w32inevt.obj : \
 	$(SRC)\w32inevt.c \
@@ -764,6 +792,7 @@
 	$(SRC)\config.h \
 	$(SRC)\lisp.h \
 	$(SRC)\w32.h \
+	$(SRC)\w32heap.h \
 	$(SRC)\vmstime.h \
 	$(SRC)\systime.h
 
@@ -986,6 +1015,9 @@
 
 $(BLD)\unexw32.obj : \
 	$(SRC)\unexw32.c \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h \
 	$(SRC)\w32heap.h
 
 $(BLD)\vm-limit.obj : \
@@ -1130,3 +1162,14 @@
 	$(SRC)\w32term.h \
 	$(SRC)\w32gui.h \
 	$(SRC)\blockinput.h
+
+$(BLD)\w32xfns.obj: \
+	$(EMACS_ROOT)\src\s\ms-w32.h \
+	$(EMACS_ROOT)\src\m\intel386.h \
+	$(EMACS_ROOT)\src\config.h \
+	$(SRC)\w32xfns.c \
+	$(SRC)\lisp.h \
+	$(SRC)\w32term.h \
+	$(SRC)\w32.h \
+	$(SRC)\frame.h \
+	$(SRC)\blockinput.h