# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
-# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-# 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2000-2011 Free Software Foundation, Inc.
# This file is part of GNU Emacs.
# HAVE_CONFIG_H is required by some generic gnu sources stuck into
# the emacs source tree.
#
-LOCAL_FLAGS = -Demacs=1 -DHAVE_CONFIG_H -I../nt/inc -DHAVE_NTGUI=1 $(EMACS_EXTRA_C_FLAGS)
+LOCAL_FLAGS = -Demacs=1 -DHAVE_CONFIG_H -I../lib -I../nt/inc -DHAVE_NTGUI=1 $(EMACS_EXTRA_C_FLAGS)
SRC = .
EMACS = $(BLD)/emacs.exe
TEMACS_TMP = $(BLD)/temacs.bin
TLIB0 = $(BLD)/temacs0.$(A)
TLIB1 = $(BLD)/temacs1.$(A)
-TLIBW32 = $(BLD)/temacw32.$(A)
+TLIB2 = $(BLD)/temacs2.$(A)
TOBJ = $(BLD)/firstfile.$(O)
TRES = $(BLD)/emacs.res
TLASTLIB = $(BLD)/lastfile.$(A)
+GNULIB = ../lib/$(BLD)/libgnu.$(A)
DOC = $(OBJDIR)/etc/DOC-X
$(BLD)/scroll.$(O) \
$(BLD)/search.$(O) \
$(BLD)/sound.$(O) \
- $(BLD)/syntax.$(O) \
- $(BLD)/sysdep.$(O) \
+ $(BLD)/syntax.$(O)
+
+OBJ2 = $(BLD)/sysdep.$(O) \
$(BLD)/term.$(O) \
$(BLD)/tparam.$(O) \
$(BLD)/undo.$(O) \
$(BLD)/fringe.$(O) \
$(BLD)/image.$(O) \
$(BLD)/terminal.$(O) \
- $(BLD)/menu.$(O)
-
-WIN32OBJ = $(BLD)/w32term.$(O) \
- $(BLD)/w32xfns.$(O) \
- $(BLD)/w32fns.$(O) \
- $(BLD)/xfaces.$(O) \
- $(BLD)/w32select.$(O) \
- $(BLD)/w32menu.$(O) \
- $(BLD)/w32reg.$(O)
-
-FONTOBJ = $(BLD)/w32font.$(O) $(BLD)/w32uniscribe.$(O)
+ $(BLD)/menu.$(O) \
+ $(BLD)/w32term.$(O) \
+ $(BLD)/w32xfns.$(O) \
+ $(BLD)/w32fns.$(O) \
+ $(BLD)/xfaces.$(O) \
+ $(BLD)/w32select.$(O) \
+ $(BLD)/w32menu.$(O) \
+ $(BLD)/w32reg.$(O) \
+ $(BLD)/w32font.$(O) \
+ $(BLD)/w32uniscribe.$(O)
LIBS = $(TLIB0) \
$(TLIB1) \
- $(TLIBW32) \
+ $(TLIB2) \
$(TLASTLIB) \
+ $(GNULIB) \
$(WINMM) \
$(ADVAPI32) \
$(GDI32) \
$(COMDLG32) \
$(USER32) \
- $(MPR) \
+ $(MPR) \
$(SHELL32) \
$(WINSPOOL) \
$(OLE32) \
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
+ -"$(THISDIR)/$(BLD)/emacs.exe" -batch -f list-load-path-shadows
#
# The undumped executable
# (it is the preload heap size in MB).
#
temacs: stamp_BLD $(TEMACS)
-$(TEMACS): $(TLIB0) $(TLIB1) $(TLIBW32) $(TLASTLIB) $(TOBJ) $(TRES) \
- ../nt/$(BLD)/addsection.exe
+$(TEMACS): $(TLIB0) $(TLIB1) $(TLIB2) $(TLASTLIB) $(TOBJ) $(TRES) \
+ ../nt/$(BLD)/addsection.exe $(GNULIB)
$(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
"../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP 21
echo #define BUILDOBJ ^"\> buildobj.h
echo $(OBJ0) \>> buildobj.h
echo $(OBJ1) \>> buildobj.h
- echo $(WIN32OBJ) \>> buildobj.h
- echo $(FONTOBJ) \>> buildobj.h
+ echo $(OBJ2) \>> buildobj.h
echo ^">> buildobj.h
+# "
+# The above line is here to countermand the single quote
+# on the last "echo" command above, wrt font-lock.
make-buildobj-SH:
echo '#define BUILDOBJ $(DQUOTE)\' > buildobj.h
echo $(OBJ0) '\' >> buildobj.h
echo $(OBJ1) '\' >> buildobj.h
- echo $(WIN32OBJ) '\' >> buildobj.h
- echo $(FONTOBJ) '\' >> buildobj.h
+ echo $(OBJ2) '\' >> buildobj.h
echo '$(DQUOTE)' >> buildobj.h
bootstrap: bootstrap-emacs
$(TLIB1): $(OBJ1)
- $(DEL) $@
$(AR) $(AR_OUT)$@ $(ALL_DEPS)
-$(TLIBW32): $(WIN32OBJ) $(FONTOBJ)
+$(TLIB2): $(OBJ2)
- $(DEL) $@
$(AR) $(AR_OUT)$@ $(ALL_DEPS)
##
## This works only with GNU Make.
-TAGS: $(OBJ0) $(OBJ1) $(WIN32OBJ) $(FONTOBJ)
+TAGS: $(OBJ0) $(OBJ1) $(OBJ2)
$(MAKE) $(MFLAGS) TAGS-$(MAKETYPE)
-TAGS-LISP: $(OBJ0) $(OBJ1) $(WIN32OBJ) $(FONTOBJ)
+TAGS-LISP: $(OBJ0) $(OBJ1) $(OBJ2)
$(MAKE) $(MFLAGS) TAGS-LISP-$(MAKETYPE)
TAGS-gmake:
../lib-src/$(BLD)/etags.exe -a --regex=@../nt/emacs-src.tags \
$(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ1))
../lib-src/$(BLD)/etags.exe -a --regex=@../nt/emacs-src.tags \
- $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(WIN32OBJ)) \
- $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(FONTOBJ)) \
+ $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ2)) \
$(CURDIR)/*.h
TAGS-nmake:
# Each object file depends on stamp_BLD, because in parallel builds we must
# make sure $(BLD) exists before starting compilations.
#
-$(OBJ0) $(OBJ1) $(WIN32OBJ) $(FONTOBJ) $(BLD)/lastfile.$(O) $(BLD)/firstfile.$(O): stamp_BLD
+$(OBJ0) $(OBJ1) $(OBJ2) $(BLD)/lastfile.$(O) $(BLD)/firstfile.$(O): stamp_BLD