From: Eric Blake Date: Mon, 5 Dec 2011 17:22:10 +0000 (-0700) Subject: spec: make it easier to autoreconf when building rpm X-Git-Tag: v0.9.6.1~45 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f0ba1c096a7e128194db7bf8916f3c69fba5797e;p=thirdparty%2Flibvirt.git spec: make it easier to autoreconf when building rpm Over time, Fedora and RHEL RPMs have often backported upstream patches that touched configure.ac and/or Makefile.am; this necessitates rerunning the autotools for the patch to be effective. Making this a one-liner spec tweak will make it easier for future backports to pull patches without having to find all the places to touch to properly use the autotools. Meanwhile, there have been historical instances where an update in the autotools caused FTBFS situations, so this is not on by default. * libvirt.spec.in (enable_autotools): New variable, default off. (BuildRequires): Conditionally add autotools. (%build): Conditionally use them before configure. * mingw32-libvirt.spec.in: Likewise. (cherry picked from commit 9c417636c4045735712c066595ff31539ac88bff) Conflicts: mingw32-libvirt.spec.in - caused by change in context --- diff --git a/libvirt.spec.in b/libvirt.spec.in index cfc3a43ab8..8579ba8ffa 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -8,6 +8,11 @@ sed -ne 's/^\.fc\?\([0-9]\+\).*/%%define fedora \1/p')} %endif +# Default to skipping autoreconf. Distros can change just this one line +# (or provide a command-line override) if they backport any patches that +# touch configure.ac or Makefile.am. +%{!?enable_autotools:%define enable_autotools 0} + # A client only build will create a libvirt.so only containing # the generic RPC driver, and test driver and no libvirtd # Default to a full server + client build @@ -330,6 +335,12 @@ Requires: libcgroup Requires: dmidecode # All build-time requirements +%if 0%{?enable_autotools} +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gettext-devel +BuildRequires: libtool +%endif BuildRequires: python-devel %if %{with_xen} @@ -700,6 +711,9 @@ of recent versions of Linux (and other OSes). %define with_packager_version --with-packager-version="%{release}" +%if 0%{?enable_autotools} +autoreconf -if +%endif %configure %{?_without_xen} \ %{?_without_qemu} \ %{?_without_openvz} \ diff --git a/mingw32-libvirt.spec.in b/mingw32-libvirt.spec.in index f651d11015..e071c38eeb 100644 --- a/mingw32-libvirt.spec.in +++ b/mingw32-libvirt.spec.in @@ -5,6 +5,11 @@ %define __find_provides %{_mingw32_findprovides} %define __debug_install_post %{_mingw32_debug_install_post} +# Default to skipping autoreconf. Distros can change just this one line +# (or provide a command-line override) if they backport any patches that +# touch configure.ac or Makefile.am. +%{!?enable_autotools:%define enable_autotools 0} + Name: mingw32-libvirt Version: @VERSION@ Release: 3%{?dist}%{?extra_release} @@ -28,6 +33,12 @@ BuildRequires: mingw32-portablexdr BuildRequires: pkgconfig # Need native version for msgfmt BuildRequires: gettext +%if 0%{?enable_autotools} +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gettext-devel +BuildRequires: libtool +%endif BuildArch: noarch @@ -42,6 +53,10 @@ MinGW Windows libvirt virtualization library. %build +%if 0%{?enable_autotools} +autoreconf -if +%endif + # XXX enable SASL in future %{_mingw32_configure} \ --without-sasl \