summaryrefslogtreecommitdiff
path: root/autobuild.sh
Commit message (Collapse)AuthorAgeFilesLines
* Remove python bindingDaniel P. Berrange2013-11-251-4/+2
| | | | | | | | | | | The python binding now lives in http://libvirt.org/git/?p=libvirt-python.git that repo also provides an RPM which is upgrade compatible with the old libvirt-python sub-RPM. Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* build: make autobuild require rpm build depsEric Blake2013-09-161-2/+9
| | | | | | | | | | | | | | I spent far too long on a new machine trying to figure out why ./autobuild.sh failed due to an rpm build failure (complaining that libvirt_parthelper was supposed to be packaged but was not built), and finally traced it to a missing parted-devel installation. I learned that --nodeps is in place for autobuilder setups, but for developers, removing it would make rpmbuild error out much sooner for a less cryptic failure. * autobuild.sh: Conditionally drop --nodeps from rpmbuild lines. Signed-off-by: Eric Blake <eblake@redhat.com>
* build: add configure option to disable gnulib testsEric Blake2013-08-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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, with autobuilders requesting it to be on. It also helps to allow a make-time override, via VIR_TEST_EXPENSIVE=[01] (much the way automake sets up V=[01] for overriding the configure time default of how verbose to be). 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. * bootstrap.conf (bootstrap_epilogue): Munge gnulib test variable. * configure.ac (--enable-expensive-tests): Add new enable switch. (VIR_TEST_EXPENSIVE_DEFAULT, WITH_EXPENSIVE_TESTS): Set new witnesses. * gnulib/tests/Makefile.am (TESTS): Make tests conditional on configure settings and the VIR_TEST_EXPENSIVE variable. * tests/Makefile.am (TESTS_ENVIRONMENT): Expose VIR_TEST_EXPENSIVE to all tests. * autobuild.sh: Enable all 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@redhat.com>
* Set PKG_CONFIG_LIBDIR in autobuild.shDaniel P. Berrange2013-05-171-0/+2
| | | | | | | | | If PKG_CONFIG_LIBDIR is not set when doing mingw32/64 builds, then pkg-config may silently fallback to native versions of libraries, with predictably bad results. Setting PKG_CONFIG_LIBDIR forces it to only consider the mingw32/64 libraries. Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Disable static libraries by defaultDaniel P. Berrange2013-04-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Every source file is currently built twice by libtool, once for the shared library and once for the static library. Static libs are not commonly packaged by distros and slow down compilation time by more than 50% compared to a shared-only build time. Time for 'make -j 4': shared only: 2 mins 9 secs shared + static: 3 mins 26 secs Time for non-parallel make shared only: 3 mins 32 secs shared + static: 5 mins 41 secs Those few people who really want them, can pass --enable-static to configure Disabling them by default requires use of LT_INIT, but for compat with RHEL5 we can't rely on that. So we conditionally use LT_INIT, but fallback to AM_PROG_LIBTOOL if not present.
* Switch automated builds to use Mingw64 toolchain instead of Mingw32Daniel P. Berrange2012-06-251-13/+33
| | | | | | | | | The Mingw32 toolchain is broadly obsoleted by the Mingw64 toolchain. The latter has been adopted by Fedora 17 and newer. Maintaining a RPM spec for Mingw32 is a needless burden, so switch to a Mingw64 RPM spec (which provides 32 & 64 bit builds). Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Enable all warnings permanently & default to -Werror for GIT buildsDaniel P. Berrange2012-03-271-2/+2
| | | | | | | | | | | | | | | | | | | Given that we auto-detect whether each -Wxxxx flag is supported by GCC, and we are warning-free and use automake silent rules, there is no compelling reason to allow compile warnings to be disabled. Replace the --enable-compile-warnings flag with a simpler --enable-werror flag, which defaults to 'yes' if building from GIT, or 'no' if building from tar.gz This helps ensure that everyone writing patches for libvirt will take care to fix their warning problems before submitting for review * autobuild.sh: Force -Werror * configure.ac: Update for LIBVIRT_COMPILE_WARNINGS macro change * m4/virt-compile-warnings.m4: Permanently enable all warnings, auto-enable Werror for GIT builds
* Disable python explicitly in mingw32 autobuildDaniel P. Berrange2011-12-191-1/+2
|
* build: let autobuild check more codeEric Blake2011-12-151-17/+5
| | | | | | | | | | Some gcc warnings about no % in a printf format string only appear under --disable-nls. And configure.ac should automatically be excluding modules on mingw without us having to be explicit. Improving autobuild.sh to stress more combinations can only help. * autobuild.sh: Add --disable-nls on first build. Update mingw build to rely more on configure.ac detection.
* spec: mingw cleanupsEric Blake2011-10-131-7/+9
| | | | | | | | | | * libvirt.spec.in (%configure): Drop unused %{one} macro. * mingw32-libvirt.spec.in (%{rhel}): Compile ESX but not HyperV on mingw build for RHEL. (%build): Make configure honor spec conditionals. Reorder to match libvirt.spec. * autobuild.sh (mingw): Update list to match. Suggested by Daniel P. Berrange.
* Remove the Open Nebula driverDaniel P. Berrange2011-03-281-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Open Nebula driver has been unmaintained since it was first introduced. The only commits have been for tree-wide cleanups. It also has a major design flaw, in that it only knows about guests that it has created itself, which makes it of very limited use. Discussions wrt evolution of the VMWare ESX driver, concluded that it should limit itself to single-node ESX operation and not try to manage the multi-node architecture of VirtualCenter. Open Nebula is a cluster like Virtual Center, not a single node system, so the same reasoning applies. The DeltaCloud project includes an Open Nebula driver and is a much better fit architecturally, since it is explicitly targetting the distributed multihost cluster scenario. Thus this patch deletes the libvirt Open Nebula driver with the recommendation that people use DeltaCloud for managing it instead. * configure.ac: Remove probe for xmlrpc & --with-one arg * daemon/Makefile.am, daemon/libvirtd.c, src/Makefile.am: Remove ONE driver build * src/opennebula/one_client.c, src/opennebula/one_client.h, src/opennebula/one_conf.c, src/opennebula/one_conf.h, src/opennebula/one_driver.c, src/opennebula/one_driver.c: Delete files * autobuild.sh, libvirt.spec.in, mingw32-libvirt.spec.in: Remove build rules for Open Nebula * docs/drivers.html.in, docs/sitemap.html.in: Remove reference to OpenNebula * docs/drvone.html.in: Delete file
* autobuild.sh: use VPATH buildEric Blake2011-02-211-5/+5
| | | | | | | Try to avoid future regressions on the VPATH front. * autobuild.sh: Uncomment VPATH use. * .gitignore: Exclude build directory.
* test: fix commandtest under autobuild.shEric Blake2010-12-131-1/+1
| | | | | | | * tests/commandtest.c (mymain): Kill off any leaked-in fds. * autobuild.sh: Don't leak fds. Signed-off-by: Eric Blake <eblake@redhat.com>
* build: fix autobuild failures on gcov upgradeEric Blake2010-11-171-1/+1
| | | | | | | | | | | | | | | Last time I ran ./autobuild.sh was on F13; and upgrading to F14 exposed these leftovers due to a newer gcov than what was in the stale files, in the form of spurious messages that break 'make check': +profiling:/home/remote/eblake/libvirt-tmp/tools/virsh-console.gcda:Version mismatch - expected 405R got 404R and concluding with a bug in the autobuild.sh script itself: ./autobuild.sh: line 44: test: =: unary operator expected * autobuild.sh: avoid syntax error on failed test * tools/Makefile.am (CLEANFILES): Clean coverage files.
* xen-proxy: Remove it entirely and use libvirtd insteadMatthias Bolte2010-11-081-2/+1
| | | | | Suggested by danpb, as it's not up-to-date anymore and lacks many functions that were added to libvirtd.
* Add dtrace static probes in libvirtdDaniel P. Berrange2010-10-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds initial support for dtrace static probes in libvirtd daemon, assuming use of systemtap dtrace compat shim on Linux. The probes are inserted for network client connect, disconnect, TLS handshake states and authentication protocol states. This can be tested by running the xample program and then attempting to connect with any libvirt client (virsh, virt-manager, etc). # stap examples/systemtap/client.stp Client fd=44 connected readonly=0 Client fd=44 auth polkit deny pid:24997,uid:500 Client fd=44 disconnected Client fd=46 connected readonly=1 Client fd=46 auth sasl allow test Client fd=46 disconnected The libvirtd.stp file should also really not be required, since it is duplicated info that is already available in the main probes.d definition file. A script to autogenerate the .stp file is needed, either in libvirtd tree, or better as part of systemtap itself. * Makefile.am: Add examples/systemtap subdir * autobuild.sh: Disable dtrace for mingw32 * configure.ac: Add check for dtrace * daemon/.gitignore: Ignore generated dtrace probe file * daemon/Makefile.am: Build dtrace probe header & object files * daemon/libvirtd.stp: SystemTAP convenience probeset * daemon/libvirtd.c: Add connect/disconnect & TLS probes * daemon/remote.c: Add SASL and PolicyKit auth probes * daemon/probes.d: Master probe definition * daemon/libvirtd.h: Add convenience macro for probes so that compilation is a no-op when dtrace is not available * examples/systemtap/Makefile.am, examples/systemtap/client.stp Example systemtap script using dtrace probe markers * libvirt.spec.in: Enable dtrace on F13/RHEL6 * mingw32-libvirt.spec.in: Force disable dtrace
* Basic framework for auditing integrationDaniel P. Berrange2010-10-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Integrate with libaudit.so for auditing of important operations. libvirtd gains a couple of config entries for auditing. By default it will enable auditing, if its enabled on the host. It can be configured to force exit if auditing is disabled on the host. It will can also send audit messages via libvirt internal logging API Places requiring audit reporting can use the VIR_AUDIT macro to report data. This is a no-op unless auditing is enabled * autobuild.sh, mingw32-libvirt.spec.in: Disable audit on mingw * configure.ac: Add check for libaudit * daemon/libvirtd.aug, daemon/libvirtd.conf, daemon/test_libvirtd.aug, daemon/libvirtd.c: Add config options to enable auditing * include/libvirt/virterror.h, src/util/virterror.c: Add VIR_FROM_AUDIT source * libvirt.spec.in: Enable audit * src/util/virtaudit.h, src/util/virtaudit.c: Simple internal API for auditing messages
* autobuild.sh: avoid bashismEric Blake2010-06-041-3/+8
| | | | | * autobuild.sh: Replace 'set -o pipefail' with POSIX alternative. Reported by Matthias Bolte.
* autobuild.sh: provide default prefixEric Blake2010-04-301-0/+1
| | | | | | | | Without this patch and with a clean environment, ./autobuild.sh tried to use ./configure --prefix=/, and fails. * autobuild.sh (AUTOBUILD_INSTALL_ROOT): Provide sensible default. Suggested by Daniel P. Berrange.
* Enable ESX driver build on Mingw32Daniel P. Berrange2009-07-311-1/+0
| | | | | | | | * autobuild.sh, mingw32-libvirt.spec.in: Enable esx on mingw32 * src/esx/esx_driver.c: Define AI_ADDRCONFIG if not set * src/esx/esx_util.c, src/esx/esx_vi_types.c: Always use %lld & friends, since gnulib guarentees we have these and not the target's own variants
* Fix build on mingw32 by disabling netcfDaniel P. Berrange2009-07-301-0/+1
| | | | | * autobuild.sh, mingw32-libvirt.spec.in: Set --without-netcf for mingw32 builds
* Fix misc build problems due to new driversDaniel P. Berrange2009-07-241-0/+2
| | | | | | | | * autobuild.sh: Disable esx/phyp build on mingw32 * configure.in: Fix handling of --without-phyp so it actually works * libvirt.spec.in: Add missing interface.rng * mingw32-libvirt.spec.in: Disable phyp/esx drivers * src/phyp/phyp_driver.c: Fix missing i18n of error messages
* Fix misc Win32 compile warningsDaniel P. Berrange2009-07-231-0/+1
| | | | | | | | | | | | | | | | | | | GCC >= 4.4 assumes the 'printf' attribute refers to the native runtime libraries format specifiers. Thanks to gnulib, libvirt has GNU format specifiers everywhere. This means we need to use 'gnu_printf' with GCC >= 4.4 to get correct compiler checking of printf format specifiers. * HACKING: Document new rules for ATTRIBUTE_FMT_PRINTF * autobuild.sh, mingw32-libvirt.spec.in: Disable OpenNebula driver on mingw32 builds * qemud/dispatch.h, qemud/qemu.h, src/buf.h src/internal.h, src/logging.h, src/security.h, src/sexpr.h, src/util.h, src/virterror_internal.h, src/xend_internal.c: Change over to ATTRIBUTE_FMT_PRINTF. * src/virsh.c: Disable 'cd' and 'pwd' commands on Win32 since they don't compile * src/threads-win32.c: Add missing return value check
* Disable vbox driver for mingw32 buildsDaniel P. Berrange2009-04-191-0/+1
|
* Make error reporting threadsafe by avoiding strerrorDaniel P. Berrange2009-01-201-0/+1
|
* Disable UML build on mingw32Daniel P. Berrange2008-11-241-0/+1
|
* Updated MinGW spec file.Richard W.M. Jones2008-10-101-11/+13
| | | | | | | | | * .cvsignore, Makefile.am, autobuild.sh, configure.in, mingw32-libvirt.spec.in: Import the latest MinGW libvirt spec file. Note that the file has been renamed to conform to new Fedora packaging guidelines. * autobuild.sh: Fix a bug in the generation of the $EXTRA_RELEASE field when autobuilding.
* Fully support mingw buildsDaniel P. Berrange2008-09-051-3/+36
|
* improve parallel build supportJim Meyering2008-08-281-0/+12
| | | | | | | * autobuild.sh: Append -j$N to MAKEFLAGS, if no -j option is there. * libvirt.spec.in: Use %{?_smp_mflags} with "make". Based on a patch from James Morris: http://thread.gmane.org/gmane.comp.emulators.libvirt/8201
* autobuild.sh: Fix minor shell-quoting bugs.Jim Meyering2008-08-211-4/+4
| | | | | | | * autobuild.sh: Remove unnecessary quotes. Don't choke on a file name argument containing a space. Don't misbehave for $AUTOBUILD_INSTALL_ROOT containing a shell meta-character.
* Enable openvz, lxc and xen proxy in automated buildsDaniel P. Berrange2008-07-251-1/+4
|
* Only run coverage tests if lcov is installedDaniel P. Berrange2008-05-291-1/+1
|
* autobuild.sh: Run "make syntax-check", so the autobuilder does this.Jim Meyering2008-02-071-0/+1
|
* Remove all trailing blanks; turn on the rule to detect them.Jim Meyering2008-02-051-1/+1
| | | | | * Makefile.cfg (local-checks-to-skip): Remove sc_trailing_blank. * .x-sc_trailing_blank: New file, to exempt the few binary files.
* Ensure build fails if tests failDaniel P. Berrange2007-06-071-0/+1
|
* Make compiler warnings fatal errors for automated buildsDaniel P. Berrange2007-03-081-1/+3
|
* Added code coverage testing enabled via --enable-test-coverageDaniel P. Berrange2007-02-141-4/+5
|
* Added autobuild control fileDaniel P. Berrange2007-02-071-0/+35