### @configure_input@
-# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2014
-# Free Software Foundation, Inc.
+# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2015 Free Software
+# Foundation, Inc.
# This file is part of GNU Emacs.
top_srcdir = @top_srcdir@
# MinGW CPPFLAGS may use this.
abs_top_srcdir=@abs_top_srcdir@
-ntsource = $(top_srcdir)/nt
VPATH = $(srcdir)
CC = @CC@
-WINDRES = @WINDRES@
CFLAGS = @CFLAGS@
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
## around this, newer ones setfattr. See Bug#11398 and Bug#16343.
PAXCTL = @PAXCTL@
SETFATTR = @SETFATTR@
+PAXCTL_if_present = $(or $(PAXCTL),: paxctl)
+SETFATTR_if_present = $(or $(SETFATTR),: setfattr)
## Some systems define this to request special libraries.
LIBS_SYSTEM=@LIBS_SYSTEM@
## emacs.res if HAVE_W32
EMACSRES = @EMACSRES@
-## emacs-*.manifest if HAVE_W32
-EMACS_MANIFEST = @EMACS_MANIFEST@
## If HAVE_W32, compiler arguments for including
## the resource file in the binary.
## Cygwin: -Wl,emacs.res
emacs$(EXEEXT): temacs$(EXEEXT) \
$(etc)/DOC $(lisp) $(leimdir)/leim-list.el \
$(lispsource)/international/charprop.el
- if test "$(CANNOT_DUMP)" = "yes"; then \
- rm -f emacs$(EXEEXT); \
- ln temacs$(EXEEXT) emacs$(EXEEXT); \
- else \
- LC_ALL=C $(RUN_TEMACS) -batch -l loadup dump || exit 1; \
- test "X$(PAXCTL)" = X || $(PAXCTL) -zex emacs$(EXEEXT); \
- while test -f bootstrap-emacs$(EXEEXT); do \
- rm -f bootstrap-emacs$(EXEEXT); \
- done; \
- ln emacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \
- fi
+ifeq ($(CANNOT_DUMP),yes)
+ ln -f temacs$(EXEEXT) $@
+else
+ LC_ALL=C $(RUN_TEMACS) -batch -l loadup dump
+ $(PAXCTL_if_present) -zex $@
+ ln -f $@ bootstrap-emacs$(EXEEXT)
+endif
## We run make-docfile twice because the command line may get too long
## on some systems. The sed command operating on lisp.mk also reduces
$(AM_V_CCLD)$(CC) $(ALL_CFLAGS) $(TEMACS_LDFLAGS) $(LDFLAGS) \
-o temacs $(ALLOBJS) $(lib)/libgnu.a $(W32_RES_LINK) $(LIBES)
$(MKDIR_P) $(etc)
- test "$(CANNOT_DUMP)" = "yes" || \
- test "X$(PAXCTL)" = X || $(PAXCTL) -r temacs$(EXEEXT)
- test "$(CANNOT_DUMP)" = "yes" || test -z "$(SETFATTR)" || \
- $(SETFATTR) -n user.pax.flags -v r $@
+ifneq ($(CANNOT_DUMP),yes)
+ $(PAXCTL_if_present) -r $@
+ $(SETFATTR_if_present) -n user.pax.flags -v er $@
+endif
## The following oldxmenu-related rules are only (possibly) used if
## HAVE_X11 && !USE_GTK, but there is no harm in always defining them.
FORCE:
.PHONY: FORCE
-ACLOCAL_INPUTS = $(top_srcdir)/configure.ac $(wildcard $(top_srcdir)/m4/*.m4)
+ACLOCAL_INPUTS = $(top_srcdir)/configure.ac $(top_srcdir)/m4/*.m4
AUTOCONF_INPUTS = $(top_srcdir)/configure.ac $(top_srcdir)/aclocal.m4
$(top_srcdir)/aclocal.m4: $(ACLOCAL_INPUTS)
$(top_srcdir)/configure config.in: $(AUTOCONF_INPUTS)
doc.o: buildobj.h
-emacs.res: $(ntsource)/emacs.rc \
- $(ntsource)/icons/emacs.ico \
- $(ntsource)/$(EMACS_MANIFEST)
- $(WINDRES) -O COFF --include-dir=$(top_srcdir)/nt \
- -o $@ $(ntsource)/emacs.rc
+emacs.res: FORCE
+ $(MAKE) -C ../nt ../src/emacs.res
.PHONY: ns-app
ns-app: emacs$(EXEEXT)
## bootstrap-emacs$(EXEEXT) as an order-only prerequisite.
%.elc: %.el | bootstrap-emacs$(EXEEXT)
- @$(MAKE) -C ../lisp compile-onefile THEFILE=$< EMACS="$(bootstrap_exe)"
+ @$(MAKE) -C ../lisp EMACS="$(bootstrap_exe)" THEFILE=$< $<c
## VCSWITNESS points to the file that holds info about the current checkout.
## We use it as a heuristic to decide when to rebuild loaddefs.el.
## files from loadup.el in source form.
bootstrap-emacs$(EXEEXT): temacs$(EXEEXT)
$(MAKE) -C ../lisp update-subdirs
- if test "$(CANNOT_DUMP)" = "yes"; then \
- rm -f bootstrap-emacs$(EXEEXT); \
- ln temacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \
- else \
- $(RUN_TEMACS) --batch --load loadup bootstrap || exit 1; \
- test "X$(PAXCTL)" = X || $(PAXCTL) -zex emacs$(EXEEXT); \
- mv -f emacs$(EXEEXT) bootstrap-emacs$(EXEEXT); \
- fi
+ifeq ($(CANNOT_DUMP),yes)
+ ln -f temacs$(EXEEXT) $@
+else
+ $(RUN_TEMACS) --batch --load loadup bootstrap
+ $(PAXCTL_if_present) -zex emacs$(EXEEXT)
+ mv -f emacs$(EXEEXT) $@
+endif
@: Compile some files earlier to speed up further compilation.
$(MAKE) -C ../lisp compile-first EMACS="$(bootstrap_exe)"