bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

coreutils bootstrapping issue on non-GNU platforms


From: Bob Proulx
Subject: coreutils bootstrapping issue on non-GNU platforms
Date: Sat, 30 Dec 2006 21:03:25 -0700
User-agent: Mutt/1.5.9i

Bootstrapping a new architecture from bare metal is often a
problematic exercise in circular dependencies.  I ran into a case of
this while building the coreutils.

Bootstrapping coreutils on a pristine HP-UX 11.23 ia64 machine
produces the following error:

  ./bootstrap: gnulib/gnulib-tool  --import --no-changelog --aux-dir 
.#bootmp/build-aux --doc-base .#bootmp/doc --lib libcoreutils --m4-base 
.#bootmp/m4/ --source-base .#bootmp/lib/ --tests-base .#bootmp/tests 
--local-dir gl --import ...
  sort: illegal option -- g
  Usage: sort [-AbcdfiMmnru] [-T Directory] [-tCharacter] [-y kilobytes] [-o 
File]
             [-k Keydefinition].. [[+Position1][-Position2]].. [-z recsz] 
[File]..

Until GNU sort is available there is a failure.  The native sort does
not support the -g option.  Of course after the first build was
available then I had GNU sort for subsequent builds.

    prereqs=
    my_sed_traces='
      s,#.*$,,
      s,^dnl .*$,,
      s, dnl .*$,,
      /AC_PREREQ/ {
        s,^.*AC_PREREQ([[ ]*\([^])]*\).*$,prereqs="$prereqs \1",p
      }'
    eval `sed -n -e "$my_sed_traces" < "$configure_ac"`
    if test -n "$prereqs"; then
      autoconf_minversion=`for version in $prereqs; do echo $version; done | 
$SORT -g -u | tail -1`
    fi

  if test -z "$autoconf_minversion"; then
    autoconf_minversion=$DEFAULT_AUTOCONF_MINVERSION
  fi
  case "$autoconf_minversion" in
    1.* | 2.[0-4]* | 2.5[0-8]*)
      func_fatal_error "minimum supported autoconf version is 2.59. Try adding 
AC_PREREQ([$DEFAULT_AUTOCONF_MINVERSION]) to your configure.ac." ;;
  esac

Since coreutils sets AC_PREREQ(2.61) in configure.ac the version to be
sorted is "2.61".  The above seems just a little bit much in this case
but I don't understand the case it is trying to guard against.  Isn't
having two AC_PREREQ's in a configure.ac an invalid case?

I can see that this is not fatal if 'sort -g' fails in that case, as
it did for me, because then autoconf_minversion ends up being empty
and is then set to a default value.  But just the same I danced around
the problem manually to avoid it because I did not realize it until I
dug into it in more detail.  If this bootstrapping issue could be
avoided it would be nice.

Bob




reply via email to

[Prev in Thread] Current Thread [Next in Thread]