From 4ac234ad576cf9068419805ef338701024265afb Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Thu, 16 May 2019 10:42:27 -0700 Subject: [PATCH] Distribute test cases in tarballs by default MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * INSTALL, INSTALL.REPO, admin/make-tarball.txt: Mention ‘make check’. * configure.ac: Update comment. * etc/NEWS: Say that tarballs have a test directory. * make-dist (with_tests): Default to "yes". Add an option --no-tests to make it "no". --- INSTALL | 4 ++++ INSTALL.REPO | 4 ++-- admin/make-tarball.txt | 2 +- configure.ac | 3 +-- etc/NEWS | 4 ++++ make-dist | 11 ++++++++--- 6 files changed, 20 insertions(+), 8 deletions(-) diff --git a/INSTALL b/INSTALL index b2a06b3d153..6934022c4e5 100644 --- a/INSTALL +++ b/INSTALL @@ -82,6 +82,10 @@ sections if you need to. src/emacs -Q + To test Emacs further (intended mostly to help developers): + + make check + 6. Assuming that the program 'src/emacs' starts and displays its opening screen, you can install the program and its auxiliary files into their installation directories: diff --git a/INSTALL.REPO b/INSTALL.REPO index 6dca9dd7147..b7433856c6b 100644 --- a/INSTALL.REPO +++ b/INSTALL.REPO @@ -32,8 +32,8 @@ can invoke './configure -C'. After configuring, build Emacs as follows: $ make -If you want to install Emacs, type 'make install' instead of 'make' in -the last command. +You can also type 'make check' to test and 'make install' to install +Emacs. Occasionally the file 'lisp/loaddefs.el' (and similar automatically generated files, such as 'esh-groups.el', and '*-loaddefs.el' in some diff --git a/admin/make-tarball.txt b/admin/make-tarball.txt index 47b60173f8e..43992a0bb2b 100644 --- a/admin/make-tarball.txt +++ b/admin/make-tarball.txt @@ -115,7 +115,7 @@ General steps (for each step, check for possible errors): results against the new tar contents. 7. tar -xf emacs-NEW.tar; cd emacs-NEW - ./configure --prefix=/tmp/emacs && make && make install + ./configure --prefix=/tmp/emacs && make check && make install Use 'script' or M-x compile to save the compilation log in compile-NEW.log and compare it against an old one. The easiest way to do that is to visit the old log in Emacs, change the version diff --git a/configure.ac b/configure.ac index d13dddfd9a9..0f1fd5d26ef 100644 --- a/configure.ac +++ b/configure.ac @@ -5726,9 +5726,8 @@ m4_define([subdir_makefiles], SUBDIR_MAKEFILES="subdir_makefiles" AC_CONFIG_FILES(subdir_makefiles) -dnl test/ is not present in release tarfiles. +dnl The test/ directory is missing if './make-dist --no-tests' was used. opt_makefile=test/Makefile - if test -f "$srcdir/$opt_makefile.in"; then SUBDIR_MAKEFILES="$SUBDIR_MAKEFILES $opt_makefile" dnl Again, it's best not to use a variable. Though you can add diff --git a/etc/NEWS b/etc/NEWS index ce637a7679b..8c059157ba5 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -101,6 +101,10 @@ option was useful with modern debugging tools such as AddressSanitizer. (See etc/DEBUG for the details of using the modern replacements of the removed configure options.) ++++ +** The distribution tarball now has test cases; 'make check' runs them. +This is intended mostly to help developers. + --- ** Emacs now requires GTK 2.24 and GTK 3.10 for the GTK 2 and GTK 3 builds respectively. diff --git a/make-dist b/make-dist index 74660032e93..e4e6d40d982 100755 --- a/make-dist +++ b/make-dist @@ -52,7 +52,7 @@ make_tar=no default_gzip=gzip newer="" with_info=yes -with_tests=no +with_tests=yes changelog=yes verbose=no @@ -110,11 +110,16 @@ while [ $# -gt 0 ]; do ;; ## Include the test/ directory. - ## This option is mainly for the hydra build server. + ## This is for backward compability to when --no-tests was the default. "--tests") with_tests=yes ;; + ## Exclude the test/ directory. + "--no-tests") + with_tests=no + ;; + "--verbose") verbose=yes ;; @@ -131,9 +136,9 @@ while [ $# -gt 0 ]; do echo " --no-update don't recompile or do analogous things" echo " --no-changelog don't generate the top-level ChangeLog" echo " --no-info don't include info files" + echo " --no-tests don't include the test/ directory" echo " --snapshot same as --clean-up --no-update --tar --no-check" echo " --tar make a tar file" - echo " --tests include the test/ directory" echo " --verbose noisier output" echo "" exit 0 -- 2.39.2