[libvirt] [PATCH 2/2] build: add configure option to disable gnulib tests
Peter Krempa
pkrempa at redhat.com
Thu Aug 1 13:10:44 UTC 2013
On 08/01/13 00:48, Eric Blake wrote:
> The gnulib testsuite is relatively stable - the only times it is
> likely to have a test change from pass to fail is on a gnulib
> submodule update or a major system change (such as moving from
> Fedora 18 to 19, or other large change to libc). While it is an
> important test for end users on arbitrary machines (to make sure
> that the portability glue works for their machine), it mostly
> wastes time for development testing (as most developers aren't
> making any of the major changes that would cause gnulib tests
> to alter behavior). Thus, it pays to make the tests optional
> at configure time, defaulting to off for development, on for
> tarballs, and where autobuilders can force the tests on. It also
> helps to make the configure choice have a runtime-override, by
> using 'make check VIR_TEST_EXPENSIVE=1'.
>
> Automake has some pretty hard-coded magic with regards to the
> TESTS variable; I had quite a job figuring out how to keep
> 'make distcheck' passing regardless of the configure option
> setting in use, while still disabling the tests at runtime
> when I did not configure them on and did not use the override
> variable. Thankfully, we require GNU make, which lets me
> hide some information from Automake's magic handling of TESTS.
>
> build: add configure option to disable gnulib tests
> * configure.ac (--enable-gnulib-tests): Add new enable switch.
> (WITH_GNULIB_TESTS): Set new witness.
> * gnulib/tests/Makefile.am (TESTS): Make tests conditional on
> oth configure settings and the VIR_TEST_EXPENSIVE variable.
> * autobuild.sh: Enable tests during autobuilds.
> * libvirt.spec.in (%configure): Likewise.
> * mingw-libvirt.spec.in (%mingw_configure): Likewise.
> * docs/hacking.html.in: Document the option.
> * HACKING: Regenerate.
>
> Signed-off-by: Eric Blake <eblake at redhat.com>
> ---
> HACKING | 9 +++++++++
> autobuild.sh | 3 +++
> bootstrap.conf | 3 ++-
> configure.ac | 18 ++++++++++++++++++
> docs/hacking.html.in | 13 +++++++++++++
> gnulib/tests/Makefile.am | 13 ++++++++++++-
> libvirt.spec.in | 1 +
> mingw-libvirt.spec.in | 4 ++--
> 8 files changed, 60 insertions(+), 4 deletions(-)
>
...
> diff --git a/docs/hacking.html.in b/docs/hacking.html.in
> index 8120b19..3fda9f0 100644
> --- a/docs/hacking.html.in
> +++ b/docs/hacking.html.in
...
> @@ -136,6 +148,7 @@
> <pre>
> ./qemuxml2xmltest
> </pre>
> +
Stray newline addition? Or is the XSL transformation playing weird again?
> <p>There is also a <code>./run</code> script at the top level,
> to make it easier to run programs that have not yet been
> installed, as well as to wrap invocations of various tests
When I configure libvirt with --enable-gnulib-tests then the
VIR_TEST_EXPENSIVE doesn't get set and the expensive tests are not being
run.
Otherwise I really like this addition. I'll be sending some tests
checking the VIR_TEST_EXPENSIVE env variable today.
Peter
More information about the libvir-list
mailing list