Hi Ludo, > If you want to examine the faulty ‘configure’, you can get it from the > tarball at <http://hydra.nixos.org/build/429132>.
Ah, that's the failed build you were talking about. Yes, with this tarball I can reproduce the problem. > What happens is that these lines: > > --8<---------------cut here---------------start------------->8--- > if test "$HAVE_LIBUNISTRING" = yes; then > LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e > "$gl_libunistring_sed_extract_major"` > LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e > "$gl_libunistring_sed_extract_minor"` > LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e > "$gl_libunistring_sed_extract_subminor"` > fi > --8<---------------cut here---------------end--------------->8--- > > ... are executed before $HAVE_LIBUNISTRING has been set, leaving > $LIBUNISTRING_VERSION_* undefined. > It looks like a problem of ordering among the libunistring macros. Yes. I had put an AC_BEFORE into gl_LIBUNISTRING that was meant to catch this problem at 'autoconf' time. But AC_BEFORE is buggy in this case, reported at <http://lists.gnu.org/archive/html/bug-autoconf/2010-05/msg00024.html>. I have applied the fix below. > configure.ac:67: warning: AC_REQUIRE: `AM_ICONV' was expanded before it was > required This problem was fixed in gnulib/m4/iconv.m4 two weeks ago. Please update your imports from gnulib. Bruno 2010-05-31 Bruno Haible <[email protected]> Avoid expanding two macros in the wrong order. * m4/libunistring-base.m4 (gl_LIBUNISTRING_LIB_PREPARE): Require gl_LIBUNISTRING if it is defined. * m4/libunistring.m4 (gl_LIBUNISTRING): Define using AC_DEFUN_ONCE for autoconf >= 2.64. Reported by Ludovic Courtès <[email protected]>. --- m4/libunistring-base.m4.orig Tue Jun 1 01:23:15 2010 +++ m4/libunistring-base.m4 Tue Jun 1 01:20:57 2010 @@ -1,4 +1,4 @@ -# libunistring-base.m4 serial 2 +# libunistring-base.m4 serial 3 dnl Copyright (C) 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -66,6 +66,9 @@ AC_DEFUN([gl_LIBUNISTRING_LIB_PREPARE], [ + dnl Ensure that HAVE_LIBUNISTRING is fully determined at this point. + m4_ifdef([gl_LIBUNISTRING], [AC_REQUIRE([gl_LIBUNISTRING])]) + AC_REQUIRE([AC_PROG_AWK]) dnl Sed expressions to extract the parts of a version number. --- m4/libunistring.m4.orig Tue Jun 1 01:23:15 2010 +++ m4/libunistring.m4 Tue Jun 1 01:22:45 2010 @@ -1,4 +1,4 @@ -# libunistring.m4 serial 6 +# libunistring.m4 serial 7 dnl Copyright (C) 2009-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -12,7 +12,10 @@ dnl Otherwise, it sets and AC_SUBSTs HAVE_LIBUNISTRING=no and LIBUNISTRING and dnl LTLIBUNISTRING to empty. -AC_DEFUN([gl_LIBUNISTRING], +dnl Define gl_LIBUNISTRING using AC_DEFUN_ONCE for Autoconf >= 2.64, in order +dnl to avoid warnings like +dnl "warning: AC_REQUIRE: `gl_LIBUNISTRING' was expanded before it was required". +m4_version_prereq([2.64],[AC_DEFUN_ONCE],[AC_DEFUN])([gl_LIBUNISTRING], [ AC_BEFORE([$0], [gl_LIBUNISTRING_LIBSOURCE]) AC_BEFORE([$0], [gl_LIBUNISTRING_LIBHEADER])
