[libvirt] [PATCH] build: fix example build on MacOS X

Eric Blake eblake at redhat.com
Thu Sep 30 17:24:05 UTC 2010


Partial reversion of commit 76d87a59, now that bootstrap is smarter.

* .gnulib: Update to latest, for poll and bootstrap fixes.
* bootstrap: Resync from gnulib.
* autogen.sh: Drop redundant tool checks; bootstrap does them
better, by honoring environment variables.
* examples/domain-events/events-c/Makefile.am (INCLUDES)
(event_test_LDADD): Use gnulib library during build.
* bootstrap.conf (gnulib_tool_option_extras): Revert --libtool
addition, now that updated bootstrap does it for us.
Reported by Justin Clift.
---

>> OSX MacPorts has libtool named as glibtool, with libtoolize
>> named as glibtoolize.  This patch adds support for this, and also
>> adds a check for pkg-config, to warn when it is missing.
>
>Hmm - would it be easier to make bootstrap.conf list pkg-config as a
>prerequisite, rather than having to hack up autogen.sh to do that?

Now done, and verified with Justin on IRC (although double-checking
with this exact patch before giving an ACK wouldn't hurt).

 .gnulib        |    2 +-
 autogen.sh     |   37 -------------------------------------
 bootstrap      |   29 +++++++++++++++++++----------
 bootstrap.conf |    1 -
 4 files changed, 20 insertions(+), 49 deletions(-)

diff --git a/.gnulib b/.gnulib
index d45b03e..9f940e9 160000
--- a/.gnulib
+++ b/.gnulib
@@ -1 +1 @@
-Subproject commit d45b03e4eda2218eec0b302d60496b1b3ca2e87c
+Subproject commit 9f940e90a7555c3399c9972d9688483c011068c7
diff --git a/autogen.sh b/autogen.sh
index 01ba59c..3fff381 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -6,43 +6,6 @@ test -z "$srcdir" && srcdir=.

 THEDIR=`pwd`
 cd "$srcdir"
-DIE=0
-
-(autopoint --version) < /dev/null > /dev/null 2>&1 || {
-        echo
-        echo "You must have autopoint installed to compile libvirt."
-        echo "Download the appropriate package for your distribution,"
-        echo "or see http://www.gnu.org/software/gettext"
-        DIE=1
-}
-
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
-	echo
-	echo "You must have autoconf installed to compile libvirt."
-	echo "Download the appropriate package for your distribution,"
-	echo "or see http://www.gnu.org/software/autoconf"
-	DIE=1
-}
-
-(libtool --version) < /dev/null > /dev/null 2>&1 || {
-	echo
-	echo "You must have libtool installed to compile libvirt."
-	echo "Download the appropriate package for your distribution,"
-	echo "or see http://www.gnu.org/software/libtool"
-	DIE=1
-}
-
-(automake --version) < /dev/null > /dev/null 2>&1 || {
-	echo
-	DIE=1
-	echo "You must have automake installed to compile libvirt."
-	echo "Download the appropriate package for your distribution,"
-	echo "or see http://www.gnu.org/software/automake"
-}
-
-if test "$DIE" -eq 1; then
-	exit 1
-fi

 test -f src/libvirt.c || {
 	echo "You must run this script in the top-level libvirt directory"
diff --git a/bootstrap b/bootstrap
index 28df597..e94a29a 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Print a version string.
-scriptversion=2010-09-30.15; # UTC
+scriptversion=2010-09-30.17; # UTC

 # Bootstrap this package from checked-out sources.

@@ -379,6 +379,18 @@ print_versions() {
   # can't depend on column -t
 }

+use_libtool=0
+# We'd like to use grep -E, to see if any of LT_INIT,
+# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
+# but that's not portable enough (e.g., for Solaris).
+grep '^[	 ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \
+  && use_libtool=1
+grep '^[	 ]*LT_INIT' configure.ac >/dev/null \
+  && use_libtool=1
+if test $use_libtool = 1; then
+  find_tool LIBTOOLIZE glibtoolize libtoolize
+fi
+
 if ! printf "$buildreq" | check_versions; then
   test -f README-prereq &&
   echo "See README-prereq for notes on obtaining these prerequisite programs:" >&2
@@ -740,6 +752,12 @@ gnulib_tool_options="\
  --local-dir $local_gl_dir\
  $gnulib_tool_option_extras\
 "
+if test $use_libtool = 1; then
+  case "$gnulib_tool_options " in
+    *' --libtool '*) ;;
+    *) gnulib_tool_options="$gnulib_tool_options --libtool" ;;
+  esac
+fi
 echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
 $gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
 slurp $bt || exit
@@ -788,17 +806,8 @@ for command in \
   "${AUTOMAKE-automake} --add-missing --copy --force-missing"
 do
   if test "$command" = libtool; then
-    use_libtool=0
-    # We'd like to use grep -E, to see if any of LT_INIT,
-    # AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
-    # but that's not portable enough (e.g., for Solaris).
-    grep '^[	 ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \
-      && use_libtool=1
-    grep '^[	 ]*LT_INIT' configure.ac >/dev/null \
-      && use_libtool=1
     test $use_libtool = 0 \
       && continue
-    find_tool LIBTOOLIZE glibtoolize libtoolize
     command="${LIBTOOLIZE-libtoolize} -c -f"
   fi
   echo "$0: $command ..."
diff --git a/bootstrap.conf b/bootstrap.conf
index 1f1d416..7ce1e5d 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -133,7 +133,6 @@ gnulib_mk=Makefile.am
 gnulib_tool_option_extras="\
  --lgpl=2\
  --with-tests\
- --libtool\
 "

 # Convince bootstrap to use multiple m4 directories.
-- 
1.7.2.3




More information about the libvir-list mailing list