- Add upstream patch to fix Augeas library detection.
- Appliance explicitly requires libxml2 (because Augeas >= 0.10 requires it), although it was implicitly included already.
This commit is contained in:
parent
d0c2c80348
commit
a53be8ee9f
102
0001-daemon-Use-pkg-config-to-locate-Augeas-CFLAGS-librar.patch
Normal file
102
0001-daemon-Use-pkg-config-to-locate-Augeas-CFLAGS-librar.patch
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
From 615924abaa968398d6529529fa2f31ae23de825b Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Sat, 3 Dec 2011 14:34:52 +0000
|
||||||
|
Subject: [PATCH] daemon: Use pkg-config to locate Augeas CFLAGS / libraries.
|
||||||
|
|
||||||
|
Augeas 0.10 depends on libxml2, so this is now required in the
|
||||||
|
appliance (in fact, it was already present).
|
||||||
|
|
||||||
|
However this exposed two bugs:
|
||||||
|
|
||||||
|
(1) In libguestfs we use a home-brewed recipe for Augeas flags,
|
||||||
|
resulting in this error:
|
||||||
|
/usr/include/augeas.h:24:25: fatal error: libxml/tree.h: No such file or directory
|
||||||
|
|
||||||
|
(2) Augeas's own augeas.pc didn't include the libxml2 flags, so
|
||||||
|
it was broken. This requires a patch to Augeas 0.10, see:
|
||||||
|
https://www.redhat.com/archives/augeas-devel/2011-December/msg00008.html
|
||||||
|
|
||||||
|
Change to using pkg-config to detect Augeas. It is still an optional
|
||||||
|
library.
|
||||||
|
---
|
||||||
|
appliance/packagelist.in | 1 +
|
||||||
|
configure.ac | 29 +++++++++++++----------------
|
||||||
|
daemon/Makefile.am | 4 ++--
|
||||||
|
3 files changed, 16 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/appliance/packagelist.in b/appliance/packagelist.in
|
||||||
|
index 9b723d0..550ba8b 100644
|
||||||
|
--- a/appliance/packagelist.in
|
||||||
|
+++ b/appliance/packagelist.in
|
||||||
|
@@ -105,6 +105,7 @@ gawk
|
||||||
|
grep
|
||||||
|
gzip
|
||||||
|
jfsutils
|
||||||
|
+libxml2
|
||||||
|
lsof
|
||||||
|
lvm2
|
||||||
|
lzop
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 6e67eb0..19eb601 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -315,22 +315,19 @@ AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[
|
||||||
|
AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl])
|
||||||
|
])
|
||||||
|
|
||||||
|
-dnl Check for Augeas (now optional).
|
||||||
|
-AC_CHECK_LIB([augeas],[aug_match],[
|
||||||
|
- have_augeas=yes
|
||||||
|
- AUGEAS_LIB="-laugeas"
|
||||||
|
-
|
||||||
|
- old_LIBS="$LIBS"
|
||||||
|
- LIBS="$LIBS $AUGEAS_LIB"
|
||||||
|
- dnl Check for functions not available in earlier versions of Augeas.
|
||||||
|
- AC_CHECK_FUNCS([aug_load aug_defvar aug_defnode])
|
||||||
|
- LIBS="$old_LIBS"
|
||||||
|
-
|
||||||
|
- ],[have_augeas=no])
|
||||||
|
-if test "x$have_augeas" = "xyes"; then
|
||||||
|
- AC_DEFINE([HAVE_AUGEAS],[1],[Define to 1 if you have Augeas])
|
||||||
|
-fi
|
||||||
|
-AC_SUBST([AUGEAS_LIB])
|
||||||
|
+dnl Check for Augeas (optional).
|
||||||
|
+PKG_CHECK_MODULES([AUGEAS], [augeas],
|
||||||
|
+ [AC_SUBST([AUGEAS_CFLAGS])
|
||||||
|
+ AC_SUBST([AUGEAS_LIBS])
|
||||||
|
+ AC_DEFINE([HAVE_AUGEAS],[1],[Define to 1 if you have Augeas])
|
||||||
|
+
|
||||||
|
+ old_LIBS="$LIBS"
|
||||||
|
+ LIBS="$LIBS $AUGEAS_LIBS"
|
||||||
|
+ dnl Check for functions not available in earlier versions of Augeas.
|
||||||
|
+ AC_CHECK_FUNCS([aug_load aug_defvar aug_defnode])
|
||||||
|
+ LIBS="$old_LIBS"
|
||||||
|
+ ],
|
||||||
|
+ [AC_MSG_WARN([augeas not found, some core features will be disabled])])
|
||||||
|
|
||||||
|
dnl Check for libselinux (optional).
|
||||||
|
AC_CHECK_HEADERS([selinux/selinux.h])
|
||||||
|
diff --git a/daemon/Makefile.am b/daemon/Makefile.am
|
||||||
|
index 71d6a63..a19a157 100644
|
||||||
|
--- a/daemon/Makefile.am
|
||||||
|
+++ b/daemon/Makefile.am
|
||||||
|
@@ -166,7 +166,7 @@ guestfsd_LDADD = \
|
||||||
|
liberrnostring.a \
|
||||||
|
libprotocol.a \
|
||||||
|
$(SELINUX_LIB) \
|
||||||
|
- $(AUGEAS_LIB) \
|
||||||
|
+ $(AUGEAS_LIBS) \
|
||||||
|
$(top_builddir)/gnulib/lib/.libs/libgnu.a \
|
||||||
|
$(GETADDRINFO_LIB) \
|
||||||
|
$(HOSTENT_LIB) \
|
||||||
|
@@ -177,6 +177,6 @@ guestfsd_LDADD = \
|
||||||
|
$(SERVENT_LIB)
|
||||||
|
|
||||||
|
guestfsd_CPPFLAGS = -I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib
|
||||||
|
-guestfsd_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
|
||||||
|
+guestfsd_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS) $(AUGEAS_CFLAGS)
|
||||||
|
|
||||||
|
.PHONY: force
|
||||||
|
--
|
||||||
|
1.7.6
|
||||||
|
|
@ -30,13 +30,16 @@ Summary: Access and modify virtual machine disk images
|
|||||||
Name: libguestfs
|
Name: libguestfs
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Version: 1.15.9
|
Version: 1.15.9
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
URL: http://libguestfs.org/
|
URL: http://libguestfs.org/
|
||||||
Source0: http://libguestfs.org/download/1.15-development/%{name}-%{version}.tar.gz
|
Source0: http://libguestfs.org/download/1.15-development/%{name}-%{version}.tar.gz
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
|
|
||||||
|
# Upstream patch to fix Augeas library detection.
|
||||||
|
Patch0: 0001-daemon-Use-pkg-config-to-locate-Augeas-CFLAGS-librar.patch
|
||||||
|
|
||||||
%if 0%{?rhel} >= 7
|
%if 0%{?rhel} >= 7
|
||||||
ExclusiveArch: x86_64
|
ExclusiveArch: x86_64
|
||||||
%endif
|
%endif
|
||||||
@ -100,6 +103,7 @@ BuildRequires: iputils
|
|||||||
BuildRequires: jfsutils
|
BuildRequires: jfsutils
|
||||||
BuildRequires: kernel
|
BuildRequires: kernel
|
||||||
BuildRequires: libselinux
|
BuildRequires: libselinux
|
||||||
|
BuildRequires: libxml2
|
||||||
BuildRequires: lsof
|
BuildRequires: lsof
|
||||||
BuildRequires: lvm2
|
BuildRequires: lvm2
|
||||||
BuildRequires: lzop
|
BuildRequires: lzop
|
||||||
@ -154,6 +158,7 @@ Requires: iputils
|
|||||||
Requires: jfsutils
|
Requires: jfsutils
|
||||||
Requires: kernel
|
Requires: kernel
|
||||||
Requires: libselinux
|
Requires: libselinux
|
||||||
|
Requires: libxml2
|
||||||
Requires: lsof
|
Requires: lsof
|
||||||
Requires: lvm2
|
Requires: lvm2
|
||||||
Requires: lzop
|
Requires: lzop
|
||||||
@ -586,6 +591,8 @@ for %{name}.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
mkdir -p daemon/m4
|
mkdir -p daemon/m4
|
||||||
|
|
||||||
# Replace developer-specific README that ships with libguestfs, with
|
# Replace developer-specific README that ships with libguestfs, with
|
||||||
@ -961,8 +968,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Sat Dec 3 2011 Richard W.M. Jones <rjones@redhat.com> - 1:1.15.9-1
|
* Sat Dec 3 2011 Richard W.M. Jones <rjones@redhat.com> - 1:1.15.9-2
|
||||||
- New upstream version 1.15.9.
|
- New upstream version 1.15.9.
|
||||||
|
- Add upstream patch to fix Augeas library detection.
|
||||||
|
- Appliance explicitly requires libxml2 (because Augeas >= 0.10 requires it),
|
||||||
|
although it was implicitly included already.
|
||||||
|
|
||||||
* Tue Nov 29 2011 Richard W.M. Jones <rjones@redhat.com> - 1:1.15.8-1
|
* Tue Nov 29 2011 Richard W.M. Jones <rjones@redhat.com> - 1:1.15.8-1
|
||||||
- New upstream version 1.15.8.
|
- New upstream version 1.15.8.
|
||||||
|
Loading…
Reference in New Issue
Block a user