X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/11af46027d22daa11d0df7d5032e6925c990dad1..5fbd17e369ca30a47ab8a2eda0b2f2ea9b690bb4:/src/Makefile.in diff --git a/src/Makefile.in b/src/Makefile.in index dfa5854489..a2754eadac 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,7 +1,7 @@ ### @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. @@ -31,10 +31,8 @@ srcdir = @srcdir@ 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@ @@ -116,6 +114,8 @@ TEMACS_LDFLAGS = $(LD_SWITCH_SYSTEM) $(LD_SWITCH_SYSTEM_TEMACS) ## 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@ @@ -250,7 +250,7 @@ MSDOS_OBJ = MSDOS_X_OBJ = NS_OBJ=@NS_OBJ@ -## nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o nsfont.o macfont.o if HAVE_NS. +## nsterm.o nsfns.o nsmenu.o nsselect.o nsimage.o ns_fontfile if HAVE_NS. NS_OBJC_OBJ=@NS_OBJC_OBJ@ ## Only set if NS_IMPL_GNUSTEP. GNU_OBJC_CFLAGS=@GNU_OBJC_CFLAGS@ @@ -264,8 +264,6 @@ W32_LIBS=@W32_LIBS@ ## 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 @@ -437,8 +435,12 @@ all: emacs$(EXEEXT) $(OTHER_FILES) $(leimdir)/leim-list.el: bootstrap-emacs$(EXEEXT) $(MAKE) -C ../leim leim-list.el EMACS="$(bootstrap_exe)" +## FORCE it so that admin/unidata can decide whether these files +## are up-to-date. Although since charprop depends on bootstrap-emacs, +## and emacs (which recreates bootstrap-emacs) depends on charprop, +## in practice this rule was always run anyway. $(srcdir)/macuvs.h $(lispsource)/international/charprop.el: \ - bootstrap-emacs$(EXEEXT) + bootstrap-emacs$(EXEEXT) FORCE $(MAKE) -C ../admin/unidata all EMACS="../$(bootstrap_exe)" ## The dumped Emacs is as functional and more efficient than @@ -449,17 +451,13 @@ $(srcdir)/macuvs.h $(lispsource)/international/charprop.el: \ 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 @@ -517,10 +515,10 @@ temacs$(EXEEXT): $(LIBXMENU) $(ALLOBJS) \ $(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. @@ -531,7 +529,7 @@ $(oldXMenudir)/libXMenu11.a: FORCE 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) @@ -544,11 +542,8 @@ $(top_srcdir)/aclocal.m4 $(top_srcdir)/configure config.in ../config.status \ 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) @@ -641,7 +636,7 @@ tags: TAGS ../lisp/TAGS $(lwlibdir)/TAGS ## 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=$< $