aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorGlenn Morris2013-11-02 13:32:22 -0700
committerGlenn Morris2013-11-02 13:32:22 -0700
commit67bb589ef9106a0031deb0292008d3592fff4240 (patch)
tree0845223d2bc81728ae3495e73ea1e3d4185939a1 /test
parent90d2a845ccfde9f25aa3fa67f27c60601e104ccd (diff)
downloademacs-67bb589ef9106a0031deb0292008d3592fff4240.tar.gz
emacs-67bb589ef9106a0031deb0292008d3592fff4240.zip
test/automated/Makefile.in remove stuff unnecessarily copied from lisp
* test/automated/Makefile.in (abs_top_srcdir): Remove variable. (emacs): Use abs_srcdir rather than abs_top_srcdir. (doit, compile, compile-always): Remove stuff copied from lisp/. (all, check, bootstrap-clean, distclean, maintainer-clean): Declare PHONY. Remove comments copied from lisp/.
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog8
-rw-r--r--test/automated/Makefile.in55
2 files changed, 14 insertions, 49 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index 23d5f4e048a..260a5bb72ff 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,14 +1,14 @@
12013-11-02 Glenn Morris <rgm@gnu.org> 12013-11-02 Glenn Morris <rgm@gnu.org>
2 2
3 * automated/Makefile.in (top_builddir, abs_test, abs_lispsrc, lisp) 3 * automated/Makefile.in (top_builddir, abs_test, abs_lispsrc, lisp)
4 (test): Remove variables. 4 (test, abs_top_srcdir): Remove variables.
5 (abs_srcdir): New, set by configure. 5 (abs_srcdir): New, set by configure.
6 (emacs): Use abs_top_srcdir, abs_srcdir rather than abs_lispsrc, 6 (emacs): Use abs_srcdir rather than abs_lispsrc, abs_test.
7 abs_test.
8 (lisp-compile): Use ../../lisp rather than $lisp. 7 (lisp-compile): Use ../../lisp rather than $lisp.
9 (compile-main, compile-clean, compile-always, bootstrap-clean) 8 (compile-main, compile-clean, compile-always, bootstrap-clean)
10 (check): Use srcdir rather than $test. Check cd return value. 9 (check): Use srcdir rather than $test. Check cd return value.
11 (compile-always): Depend on bootstrap-clean. 10 (doit, compile, compile-always): Remove stuff copied from lisp/.
11 (all, check, bootstrap-clean, distclean, maintainer-clean): PHONY.
12 12
132013-10-31 Michael Albinus <michael.albinus@gmx.de> 132013-10-31 Michael Albinus <michael.albinus@gmx.de>
14 14
diff --git a/test/automated/Makefile.in b/test/automated/Makefile.in
index d729a08cb76..a84d8a7b349 100644
--- a/test/automated/Makefile.in
+++ b/test/automated/Makefile.in
@@ -21,7 +21,6 @@ SHELL = @SHELL@
21 21
22srcdir = @srcdir@ 22srcdir = @srcdir@
23abs_srcdir = @abs_srcdir@ 23abs_srcdir = @abs_srcdir@
24abs_top_srcdir = @abs_top_srcdir@
25abs_top_builddir = @abs_top_builddir@ 24abs_top_builddir = @abs_top_builddir@
26VPATH = $(srcdir) 25VPATH = $(srcdir)
27 26
@@ -34,17 +33,13 @@ VPATH = $(srcdir)
34EMACS = ${abs_top_builddir}/src/emacs 33EMACS = ${abs_top_builddir}/src/emacs
35 34
36# Command line flags for Emacs. 35# Command line flags for Emacs.
37
38EMACSOPT = -batch --no-site-file --no-site-lisp 36EMACSOPT = -batch --no-site-file --no-site-lisp
39 37
40# Extra flags to pass to the byte compiler 38# Extra flags to pass to the byte compiler.
41BYTE_COMPILE_EXTRA_FLAGS = 39BYTE_COMPILE_EXTRA_FLAGS =
42# For example to not display the undefined function warnings you can use this:
43# BYTE_COMPILE_EXTRA_FLAGS = --eval '(setq byte-compile-warnings (quote (not unresolved)))'
44# The example above is just for developers, it should not be used by default.
45 40
46# The actual Emacs command run in the targets below. 41# The actual Emacs command run in the targets below.
47emacs = EMACSLOADPATH="$(abs_top_srcdir)/lisp:$(abs_srcdir)" LC_ALL=C "$(EMACS)" $(EMACSOPT) 42emacs = EMACSLOADPATH="$(abs_srcdir)/../../lisp:$(abs_srcdir)" LC_ALL=C "$(EMACS)" $(EMACSOPT)
48 43
49# Common command to find subdirectories 44# Common command to find subdirectories
50setwins=subdirs=`find . -type d -print`; \ 45setwins=subdirs=`find . -type d -print`; \
@@ -54,42 +49,24 @@ setwins=subdirs=`find . -type d -print`; \
54 esac; \ 49 esac; \
55 done 50 done
56 51
57all: check 52.PHONY: all check
58
59doit:
60 53
54all: check
61 55
62# Files MUST be compiled one by one. If we compile several files in a 56# The compilation stuff is copied from lisp/Makefile - see comments there.
63# row (i.e., in the same instance of Emacs) we can't make sure that
64# the compilation environment is clean. We also set the load-path of
65# the Emacs used for compilation to the current directory and its
66# subdirectories, to make sure require's and load's in the files being
67# compiled find the right files.
68 57
69.SUFFIXES: .elc .el 58.SUFFIXES: .elc .el
70 59
71# An old-fashioned suffix rule, which, according to the GNU Make manual,
72# cannot have prerequisites.
73.el.elc: 60.el.elc:
74 @echo Compiling $< 61 @echo Compiling $<
75 @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $< 62 @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
76 63
77.PHONY: lisp-compile compile-main compile compile-always 64
65.PHONY: lisp-compile compile-targets compile-main compile-clean
78 66
79lisp-compile: 67lisp-compile:
80 cd ../../lisp && $(MAKE) $(MFLAGS) compile EMACS="$(EMACS)" 68 cd ../../lisp && $(MAKE) $(MFLAGS) compile EMACS="$(EMACS)"
81 69
82# In `compile-main' we could directly do
83# ... | xargs $(MAKE) $(MFLAGS) EMACS="$(EMACS)"
84# and it works, but it generates a lot of messages like
85# make[2]: « gnus/gnus-mlspl.elc » is up to date.
86# so instead, we use "xargs echo" to split the list of file into manageable
87# chunks and then use an intermediate `compile-targets' target so the
88# actual targets (the .elc files) are not mentioned as targets on the
89# make command line.
90
91
92.PHONY: compile-targets
93# TARGETS is set dynamically in the recursive call from `compile-main'. 70# TARGETS is set dynamically in the recursive call from `compile-main'.
94compile-targets: $(TARGETS) 71compile-targets: $(TARGETS)
95 72
@@ -107,7 +84,6 @@ compile-main: compile-clean lisp-compile
107 $(MAKE) $(MFLAGS) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \ 84 $(MAKE) $(MFLAGS) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
108 done 85 done
109 86
110.PHONY: compile-clean
111# Erase left-over .elc files that do not have a corresponding .el file. 87# Erase left-over .elc files that do not have a corresponding .el file.
112compile-clean: 88compile-clean:
113 @cd $(srcdir) && $(setwins); \ 89 @cd $(srcdir) && $(setwins); \
@@ -119,20 +95,8 @@ compile-clean:
119 fi \ 95 fi \
120 done 96 done
121 97
122# Compile all Lisp files, but don't recompile those that are up to 98
123# date. Some .el files don't get compiled because they set the 99.PHONY: bootstrap-clean distclean maintainer-clean
124# local variable no-byte-compile.
125# Calling make recursively because suffix rule cannot have prerequisites.
126# Explicitly pass EMACS (sometimes ../src/bootstrap-emacs) to those
127# sub-makes that run rules that use it, for the sake of some non-GNU makes.
128compile: $(LOADDEFS) autoloads compile-first
129 $(MAKE) $(MFLAGS) compile-main EMACS="$(EMACS)"
130
131# Compile all Lisp files. This is like `compile' but compiles files
132# unconditionally. Some files don't actually get compiled because they
133# set the local variable no-byte-compile.
134compile-always: bootstrap-clean
135 $(MAKE) $(MFLAGS) compile EMACS="$(EMACS)"
136 100
137bootstrap-clean: 101bootstrap-clean:
138 -cd $(srcdir) && rm -f *.elc */*.elc */*/*.elc */*/*/*.elc 102 -cd $(srcdir) && rm -f *.elc */*.elc */*/*.elc */*/*/*.elc
@@ -142,6 +106,7 @@ distclean:
142 106
143maintainer-clean: distclean bootstrap-clean 107maintainer-clean: distclean bootstrap-clean
144 108
109
145check: compile-main 110check: compile-main
146 @(cd $(srcdir) && $(setwins); \ 111 @(cd $(srcdir) && $(setwins); \
147 pattern=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \ 112 pattern=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \