]> git.eshelyaron.com Git - emacs.git/commitdiff
Get rid of --chdir usage in test/automated
authorGlenn Morris <rgm@gnu.org>
Tue, 5 Nov 2013 02:58:40 +0000 (21:58 -0500)
committerGlenn Morris <rgm@gnu.org>
Tue, 5 Nov 2013 02:58:40 +0000 (21:58 -0500)
* test/automated/Makefile.in (EMACSOPT): Move -L here.
(emacs): Set EMACS_TEST_DIRECTORY in the environment.
(setwins): Don't assume called from srcdir.  Remove legacy stuff.
(.el.elc): No more need to pass -L here.
(compile-main): Get rid of sub-shell and cd.
(compile-clean, check): Get rid of cd.

test/ChangeLog
test/automated/Makefile.in

index 43ba409ae0e8227e5551c01725d105c15ef07a5c..53e1af2056799bd050db9cf81c698163e807b01b 100644 (file)
@@ -1,5 +1,13 @@
 2013-11-05  Glenn Morris  <rgm@gnu.org>
 
+       Get rid of --chdir usage.
+       * automated/Makefile.in (EMACSOPT): Move -L here.
+       (emacs): Set EMACS_TEST_DIRECTORY in the environment.
+       (setwins): Don't assume called from srcdir.  Remove legacy stuff.
+       (.el.elc): No more need to pass -L here.
+       (compile-main): Get rid of sub-shell and cd.
+       (compile-clean, check): Get rid of cd.
+
        Make it possible to run tests with a different working directory.
        * automated/flymake-tests.el (flymake-tests-data-directory): New.
        (flymake-tests--current-face): Use flymake-tests-data-directory.
index e03ebbbf82de91f796f3d453263287dd38a2586c..63cffd9f828faa2486ea59934ebfe30005740f86 100644 (file)
@@ -28,19 +28,20 @@ VPATH = $(srcdir)
 EMACS = ../../src/emacs
 
 # Command line flags for Emacs.
-EMACSOPT = -batch --no-site-file --no-site-lisp
+EMACSOPT = -batch --no-site-file --no-site-lisp -L :$(srcdir)
 
 # Extra flags to pass to the byte compiler.
 BYTE_COMPILE_EXTRA_FLAGS =
 
 # The actual Emacs command run in the targets below.
 # Prevent any setting of EMACSLOADPATH in user environment causing problems.
-emacs = unset EMACSLOADPATH; LC_ALL=C "$(EMACS)" $(EMACSOPT)
+emacs = unset EMACSLOADPATH; \
+       LC_ALL=C EMACS_TEST_DIRECTORY=$(srcdir) "$(EMACS)" $(EMACSOPT)
 
 # Common command to find subdirectories
-setwins=subdirs=`find . -type d -print`; \
+setwins=subdirs=`find $(srcdir) -type d -print`; \
        for file in $$subdirs; do \
-          case $$file in */.* | */.*/* | */=* | ./data* ) ;; \
+          case $$file in */data* | */flymake* ) ;; \
                *) wins="$$wins$${wins:+ }$$file" ;; \
           esac; \
         done
@@ -55,7 +56,7 @@ all: check
 
 .el.elc:
        @echo Compiling $<
-       @$(emacs) -L :$(srcdir) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
+       @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
 
 
 .PHONY: compile-targets compile-main compile-clean
@@ -66,20 +67,20 @@ compile-targets: $(TARGETS)
 # Compile all the Elisp files that need it.  Beware: it approximates
 # `no-byte-compile', so watch out for false-positives!
 compile-main: compile-clean
-       @(cd $(srcdir) && $(setwins); \
+       @$(setwins); \
        els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
        for el in $$els; do \
          test -f $$el || continue; \
          test ! -f $${el}c && GREP_OPTIONS= grep '^;.*no-byte-compile: t' $$el > /dev/null && continue; \
          echo "$${el}c"; \
-       done | xargs echo) | \
+       done | xargs echo | \
        while read chunk; do \
          $(MAKE) $(MFLAGS) compile-targets EMACS="$(EMACS)" TARGETS="$$chunk"; \
        done
 
 # Erase left-over .elc files that do not have a corresponding .el file.
 compile-clean:
-       @cd $(srcdir) && $(setwins); \
+       @$(setwins); \
        elcs=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.elc |g'`; \
        for el in $$(echo $$elcs | sed -e 's/\.elc/\.el/g'); do \
          if test -f "$$el" -o \! -f "$${el}c"; then :; else \
@@ -101,7 +102,7 @@ maintainer-clean: distclean bootstrap-clean
 
 
 check: compile-main
-       @thisdir=`pwd`; cd $(srcdir) && $(setwins); \
+       @$(setwins); \
        pattern=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
        for el in $$pattern; do \
          test -f $$el || continue; \
@@ -109,7 +110,6 @@ check: compile-main
          els="$$els $$el"; \
        done; \
        echo Testing $$els; \
-       cd "$$thisdir"; \
-       $(emacs) --chdir $(srcdir) -L :. $$args -f ert-run-tests-batch-and-exit
+       $(emacs) $$args -f ert-run-tests-batch-and-exit
 
 # Makefile ends here.