[HarfBuzz] [Behdad] Re: question about new autogen.sh

mpsuzuki at hiroshima-u.ac.jp mpsuzuki at hiroshima-u.ac.jp
Sun Jan 9 23:44:12 PST 2011


Thank you for quick fix!

Regards,
mpsuzuki

On Mon, 10 Jan 2011 02:29:25 -0500
Behdad Esfahbod <behdad at behdad.org> wrote:

>On 01/10/11 02:17, suzuki toshiya wrote:
>> Dear Behdad,
>> 
>> The latest commit reduces autogen.sh extremely (using
>> autoreconf only), and it fails on my Debian GNU/Linux
>> system. What is wrong?
>
>My bad.  Should be fixed.
>
>behdad
>
>> $ sh -x ./autogen.sh
>> + test -n ''
>> ++ dirname ./autogen.sh
>> + srcdir=.
>> + test -n .
>> ++ pwd
>> + olddir=/media/usbdisk/tmp/harfbuzz-ng
>> + cd .
>> ++ which autoreconf
>> + AUTORECONF=/usr/bin/autoreconf
>> + test -z /usr/bin/autoreconf
>> + autoreconf --force --install
>> aclocal: couldn't open directory `m4': No such file or directory
>> autoreconf: aclocal failed with exit status: 1
>> + exit 1
>> 
>> $ autoreconf --version
>> autoreconf (GNU Autoconf) 2.63
>> Copyright (C) 2008 Free Software Foundation, Inc.
>> License GPLv2+: GNU GPL version 2 or later
>> <http://gnu.org/licenses/old-licenses/gpl-2.0.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.
>> 
>> Written by David J. MacKenzie and Akim Demaille.
>> 
>> Regards,
>> mpsuzuki
>> 
>> Behdad Esfahbod wrote:
>>>  Makefile.am     |    2  autogen.sh      |  188
>>> +++-----------------------------------------------------
>>>  configure.ac    |   22 ++++--
>>>  src/Makefile.am |    7 +-
>>>  4 files changed, 33 insertions(+), 186 deletions(-)
>>>
>>> New commits:
>>> commit 7bbe14bed8a886ea5b293c927c4bf937cbfc6f51
>>> Author: Behdad Esfahbod <behdad at behdad.org>
>>> Date:   Sun Jan 9 22:29:14 2011 -0500
>>>
>>>     Fix 'make distcheck'
>>>
>>> diff --git a/src/Makefile.am b/src/Makefile.am
>>> index ae9cf4c..751465d 100644
>>> --- a/src/Makefile.am
>>> +++ b/src/Makefile.am
>>> @@ -1,7 +1,7 @@
>>>  # Process this file with automake to produce Makefile.in
>>>  
>>>  NULL =
>>> -EXTRA_DIST = +EXTRA_DIST =
>>>  
>>>  # The following warning options are useful for debugging: -Wpadded
>>> -Wcast-align
>>>  #AM_CXXFLAGS =
>>> @@ -119,7 +119,7 @@ test_SOURCES = test.c
>>>  test_CPPFLAGS = $(HBCFLAGS)
>>>  test_LDADD = libharfbuzz.la $(HBLIBS)
>>>  
>>> -TESTS = \
>>> +dist_check_SCRIPTS = \
>>>      check-c-linkage-decls.sh \
>>>      check-header-guards.sh \
>>>      check-internal-symbols.sh \
>>> @@ -127,7 +127,8 @@ TESTS = \
>>>  
>>>  if HAVE_ICU
>>>  else
>>> -TESTS += check-libstdc++.sh
>>> +dist_check_SCRIPTS += check-libstdc++.sh
>>>  endif
>>>  
>>> +
>>>  -include $(top_srcdir)/git.mk
>>> commit 2abe1264a580858bf7803af1701117a462375fb4
>>> Author: Javier Jard$(D+Q(Bn <jjardon at gnome.org>
>>> Date:   Sun Jan 9 22:18:53 2011 -0500
>>>
>>>     Bug 31174 - Update autotools configuration
>>>
>>> diff --git a/Makefile.am b/Makefile.am
>>> index e81c0bc..8ec2c1e 100644
>>> --- a/Makefile.am
>>> +++ b/Makefile.am
>>> @@ -1,3 +1,5 @@
>>> +ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
>>> +
>>>  SUBDIRS = src
>>>  
>>>  pkgconfigdir = $(libdir)/pkgconfig
>>> diff --git a/autogen.sh b/autogen.sh
>>> index fb0148b..f207aa7 100755
>>> --- a/autogen.sh
>>> +++ b/autogen.sh
>>> @@ -1,185 +1,19 @@
>>>  #!/bin/sh
>>>  # Run this to generate all the initial makefiles, etc.
>>> -set -e
>>>  
>>> -ARGV0=$0
>>> +test -n "$srcdir" || srcdir=`dirname "$0"`
>>> +test -n "$srcdir" || srcdir=.
>>>  
>>> -# Allow invocation from a separate build directory; in that case, we change
>>> -# to the source directory to run the auto*, then change back before running
>>> configure
>>> -srcdir=`dirname $ARGV0`
>>> -test -z "$srcdir" && srcdir=.
>>> -
>>> -ORIGDIR=`pwd`
>>> +olddir=`pwd`
>>>  cd $srcdir
>>>  
>>> -PACKAGE=harfbuzz
>>> -
>>> -LIBTOOLIZE_FLAGS="--copy --force --automake"
>>> -ACLOCAL_FLAGS=""
>>> -AUTOHEADER=${AUTOHEADER-autoheader}
>>> -GTKDOCIZE_FLAGS="--copy"
>>> -GTKDOCIZE=${GTKDOCIZE-gtkdocize}
>>> -AUTOMAKE_FLAGS="--add-missing --gnu -Wall"
>>> -AUTOCONF=${AUTOCONF-autoconf}
>>> -
>>> -CONFIGURE_AC=
>>> -test -f configure.ac && CONFIGURE_AC=configure.ac
>>> -
>>> -if test "X$CONFIGURE_AC" = X; then
>>> -  echo "$ARGV0: ERROR: No $srcdir/configure.in or $srcdir/configure.ac found."
>>> -  exit 1
>>> +AUTORECONF=`which autoreconf`
>>> +if test -z $AUTORECONF; then
>>> +    echo "*** No autoreconf found, please install it ***"
>>> +    exit 1
>>> +else
>>> +    autoreconf --force --install || exit $?
>>>  fi
>>>  
>>> -extract_version() {
>>> -    grep "^ *$1" "$CONFIGURE_AC" | sed 's/.*(\[*\([^])]*\)]*).*/\1/'
>>> -}
>>> -
>>> -autoconf_min_vers=`extract_version AC_PREREQ`
>>> -automake_min_vers=`extract_version AM_INIT_AUTOMAKE`
>>> -libtoolize_min_vers=`extract_version AC_PROG_LIBTOOL`
>>> -aclocal_min_vers=$automake_min_vers
>>> -
>>> -
>>> -# Not all echo versions allow -n, so we check what is possible. This test is
>>> -# based on the one in autoconf.
>>> -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
>>> -  *c*,-n*) ECHO_N= ;;
>>> -  *c*,*  ) ECHO_N=-n ;;
>>> -  *)       ECHO_N= ;;
>>> -esac
>>> -
>>> -
>>> -# some terminal codes ...
>>> -boldface="`tput bold 2>/dev/null || true`"
>>> -normal="`tput sgr0 2>/dev/null || true`"
>>> -printbold() {
>>> -    echo $ECHO_N "$boldface"
>>> -    echo "$@"
>>> -    echo $ECHO_N "$normal"
>>> -}
>>> -printerr() {
>>> -    echo "$@" >&2
>>> -}
>>> -
>>> -
>>> -# Usage:
>>> -#     compare_versions MIN_VERSION ACTUAL_VERSION
>>> -# returns true if ACTUAL_VERSION >= MIN_VERSION
>>> -compare_versions() {
>>> -    ch_min_version=$1
>>> -    ch_actual_version=$2
>>> -    ch_status=0
>>> -    IFS="${IFS=         }"; ch_save_IFS="$IFS"; IFS="."
>>> -    set $ch_actual_version
>>> -    for ch_min in $ch_min_version; do
>>> -        ch_cur=`echo $1 | sed 's/[^0-9].*$//'`; shift # remove letter suffixes
>>> -        if [ -z "$ch_min" ]; then break; fi
>>> -        if [ -z "$ch_cur" ]; then ch_status=1; break; fi
>>> -        if [ $ch_cur -gt $ch_min ]; then break; fi
>>> -        if [ $ch_cur -lt $ch_min ]; then ch_status=1; break; fi
>>> -    done
>>> -    IFS="$ch_save_IFS"
>>> -    return $ch_status
>>> -}
>>> -
>>> -# Usage:
>>> -#     version_check PACKAGE VARIABLE CHECKPROGS MIN_VERSION SOURCE
>>> -# checks to see if the package is available
>>> -version_check() {
>>> -    vc_package=$1
>>> -    vc_variable=$2
>>> -    vc_checkprogs=$3
>>> -    vc_min_version=$4
>>> -    vc_source=$5
>>> -    vc_status=1
>>> -
>>> -    vc_checkprog=`eval echo "\\$$vc_variable"`
>>> -    if [ -n "$vc_checkprog" ]; then
>>> -    printbold "using $vc_checkprog for $vc_package"
>>> -    return 0
>>> -    fi
>>> -
>>> -    printbold "checking for $vc_package >= $vc_min_version..."
>>> -    for vc_checkprog in $vc_checkprogs; do
>>> -    echo $ECHO_N "  testing $vc_checkprog... "
>>> -    if $vc_checkprog --version < /dev/null > /dev/null 2>&1; then
>>> -        vc_actual_version=`$vc_checkprog --version | head -n 1 | \
>>> -                               sed 's/^.*[     ]\([0-9.]*[a-z]*\).*$/\1/'`
>>> -        if compare_versions $vc_min_version $vc_actual_version; then
>>> -        echo "found $vc_actual_version"
>>> -        # set variable
>>> -        eval "$vc_variable=$vc_checkprog"
>>> -        vc_status=0
>>> -        break
>>> -        else
>>> -        echo "too old (found version $vc_actual_version)"
>>> -        fi
>>> -    else
>>> -        echo "not found."
>>> -    fi
>>> -    done
>>> -    if [ "$vc_status" != 0 ]; then
>>> -    printerr "***Error***: You must have $vc_package >= $vc_min_version
>>> installed"
>>> -    printerr "  to build $PROJECT.  Download the appropriate package for"
>>> -    printerr "  from your distribution or get the source tarball at"
>>> -        printerr "    $vc_source"
>>> -    printerr
>>> -    fi
>>> -    return $vc_status
>>> -}
>>> -
>>> -
>>> -version_check autoconf AUTOCONF $AUTOCONF $autoconf_min_vers \
>>> -   
>>> "http://ftp.gnu.org/pub/gnu/autoconf/autoconf-${autoconf_min_vers}.tar.gz"
>>> || DIE=1
>>> -
>>> -#
>>> -# Hunt for an appropriate version of automake and aclocal; we can't
>>> -# assume that 'automake' is necessarily the most recent installed version
>>> -#
>>> -# We check automake first to allow it to be a newer version than we know
>>> about.
>>> -#
>>> -version_check automake AUTOMAKE "$AUTOMAKE automake automake-1.10
>>> automake-1.9 automake-1.8 automake-1.7" $automake_min_vers \
>>> -   
>>> "http://ftp.gnu.org/pub/gnu/automake/automake-${automake_min_vers}.tar.gz"
>>> || DIE=1
>>> -ACLOCAL=`echo $AUTOMAKE | sed s/automake/aclocal/`
>>> -
>>> -
>>> -version_check libtool LIBTOOLIZE "$LIBTOOLIZE glibtoolize libtoolize"
>>> $libtoolize_min_vers \
>>> -    "http://ftp.gnu.org/pub/gnu/libtool/libtool-${libtool_min_vers}.tar.gz"
>>> || DIE=1
>>> -
>>> -if test -n "$DIE"; then
>>> -  exit 1
>>> -fi
>>> -
>>> -
>>> -if test -z "$*"; then
>>> -  echo "$ARGV0:    Note: \`./configure' will be run with no arguments."
>>> -  echo "        If you wish to pass any to it, please specify them on the"
>>> -  echo "        \`$0' command line."
>>> -  echo
>>> -fi
>>> -
>>> -do_cmd() {
>>> -    echo "$ARGV0: running \`$@'"
>>> -    $@
>>> -}
>>> -
>>> -do_cmd $LIBTOOLIZE $LIBTOOLIZE_FLAGS
>>> -
>>> -do_cmd $ACLOCAL $ACLOCAL_FLAGS
>>> -
>>> -do_cmd $AUTOHEADER
>>> -
>>> -touch ChangeLog
>>> -
>>> -#do_cmd $GTKDOCIZE $GTKDOCIZE_FLAGS
>>> -
>>> -do_cmd $AUTOMAKE $AUTOMAKE_FLAGS
>>> -
>>> -do_cmd $AUTOCONF
>>> -
>>> -cd "$ORIGDIR" || exit 1
>>> -
>>> -rm -f config.cache
>>> -
>>> -do_cmd $srcdir/configure \
>>> -    ${1+"$@"} && echo "Now type \`make' to compile $PROJECT." || exit 1
>>> +cd $olddir
>>> +test -n "$NOCONFIGURE" || "$srcdir/configure" "$@"
>>> diff --git a/configure.ac b/configure.ac
>>> index 8f308dc..3c0d7af 100644
>>> --- a/configure.ac
>>> +++ b/configure.ac
>>> @@ -1,17 +1,27 @@
>>> -AC_PREREQ(2.59)
>>> -AC_INIT(harfbuzz, 0.3,
>>> [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz])
>>> +AC_PREREQ([2.64])
>>> +AC_INIT([harfbuzz],
>>> +        [0.3],
>>> +        [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz],
>>> +        [harfbuzz],
>>> +        [http://freedesktop.org/wiki/Software/harfbuzz])
>>> +
>>>  AC_CONFIG_SRCDIR([harfbuzz.pc.in])
>>>  AC_CONFIG_HEADERS([config.h])
>>> -AM_INIT_AUTOMAKE([1.9.6 gnu dist-bzip2 no-dist-gzip -Wall no-define])
>>> -m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
>>> +AC_CONFIG_MACRO_DIR([m4])
>>> +
>>> +AM_INIT_AUTOMAKE([1.11.1 gnu dist-bzip2 no-dist-gzip -Wall no-define])
>>>  
>>> -AC_LIBTOOL_WIN32_DLL
>>> -AC_PROG_LIBTOOL dnl ([1.4]) Don't remove!
>>> +AM_SILENT_RULES([yes])
>>>  
>>> +# Check for programs
>>>  AC_PROG_CC
>>>  AM_PROG_CC_C_O
>>>  AC_PROG_CXX
>>>  
>>> +# Initialize libtool
>>> +LT_PREREQ([2.2])
>>> +LT_INIT([win32-dll])
>>> +
>>>  AC_CHECK_FUNCS(mprotect sysconf getpagesize)
>>>  AC_CHECK_HEADERS(unistd.h sys/mman.h)
>>>  
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> HarfBuzz mailing list
>>> HarfBuzz at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
>> 
>> 



More information about the HarfBuzz mailing list