Annotation of rpl/autogen.sh, revision 1.6

1.1       bertrand    1: #!/bin/sh
                      2: #                        a u t o g e n . s h
                      3: #
                      4: # Copyright (c) 2005-2009 United States Government as represented by
                      5: # the U.S. Army Research Laboratory.
                      6: #
                      7: # Redistribution and use in source and binary forms, with or without
                      8: # modification, are permitted provided that the following conditions
                      9: # are met:
                     10: #
                     11: # 1. Redistributions of source code must retain the above copyright
                     12: # notice, this list of conditions and the following disclaimer.
                     13: #
                     14: # 2. Redistributions in binary form must reproduce the above
                     15: # copyright notice, this list of conditions and the following
                     16: # disclaimer in the documentation and/or other materials provided
                     17: # with the distribution.
                     18: #
                     19: # 3. The name of the author may not be used to endorse or promote
                     20: # products derived from this software without specific prior written
                     21: # permission.
                     22: #
                     23: # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
                     24: # OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
                     25: # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     26: # ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
                     27: # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     28: # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
                     29: # GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     30: # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
                     31: # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
                     32: # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
                     33: # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     34: #
                     35: ###
                     36: #
                     37: # Script for automatically preparing the sources for compilation by
                     38: # performing the myriad of necessary steps.  The script attempts to
                     39: # detect proper version support, and outputs warnings about particular
                     40: # systems that have autotool peculiarities.
                     41: #
                     42: # Basically, if everything is set up and installed correctly, the
                     43: # script will validate that minimum versions of the GNU Build System
                     44: # tools are installed, account for several common configuration
                     45: # issues, and then simply run autoreconf for you.
                     46: #
                     47: # If autoreconf fails, which can happen for many valid configurations,
                     48: # this script proceeds to run manual preparation steps effectively
                     49: # providing a POSIX shell script (mostly complete) reimplementation of
                     50: # autoreconf.
                     51: #
                     52: # The AUTORECONF, AUTOCONF, AUTOMAKE, LIBTOOLIZE, ACLOCAL, AUTOHEADER
                     53: # environment variables and corresponding _OPTIONS variables (e.g.
                     54: # AUTORECONF_OPTIONS) may be used to override the default automatic
                     55: # detection behaviors.  Similarly the _VERSION variables will override
                     56: # the minimum required version numbers.
                     57: #
                     58: # Examples:
                     59: #
                     60: #   To obtain help on usage:
                     61: #     ./autogen.sh --help
                     62: #
                     63: #   To obtain verbose output:
                     64: #     ./autogen.sh --verbose
                     65: #
                     66: #   To skip autoreconf and prepare manually:
                     67: #     AUTORECONF=false ./autogen.sh
                     68: #
                     69: #   To verbosely try running with an older (unsupported) autoconf:
                     70: #     AUTOCONF_VERSION=2.50 ./autogen.sh --verbose
                     71: #
                     72: # Author:
                     73: #   Christopher Sean Morrison <morrison@brlcad.org>
                     74: #
                     75: # Patches:
                     76: #   Sebastian Pipping <sebastian@pipping.org>
                     77: #
                     78: ######################################################################
                     79: 
                     80: # set to minimum acceptable version of autoconf
                     81: if [ "x$AUTOCONF_VERSION" = "x" ] ; then
                     82:     AUTOCONF_VERSION=2.52
                     83: fi
                     84: # set to minimum acceptable version of automake
                     85: if [ "x$AUTOMAKE_VERSION" = "x" ] ; then
                     86:     AUTOMAKE_VERSION=1.6.0
                     87: fi
                     88: # set to minimum acceptable version of libtool
                     89: if [ "x$LIBTOOL_VERSION" = "x" ] ; then
                     90:     LIBTOOL_VERSION=1.4.2
                     91: fi
                     92: 
                     93: 
                     94: ##################
                     95: # ident function #
                     96: ##################
                     97: ident ( ) {
                     98:     # extract copyright from header
                     99:     __copyright="`grep Copyright $AUTOGEN_SH | head -${HEAD_N}1 | awk '{print $4}'`"
                    100:     if [ "x$__copyright" = "x" ] ; then
                    101:    __copyright="`date +%Y`"
                    102:     fi
                    103: 
                    104:     # extract version from CVS Id string
1.6     ! bertrand  105:     __id="$Id: autogen.sh,v 1.5 2013/03/23 17:57:55 bertrand Exp $"
1.1       bertrand  106:     __version="`echo $__id | sed 's/.*\([0-9][0-9][0-9][0-9]\)[-\/]\([0-9][0-9]\)[-\/]\([0-9][0-9]\).*/\1\2\3/'`"
                    107:     if [ "x$__version" = "x" ] ; then
                    108:    __version=""
                    109:     fi
                    110: 
                    111:     echo "autogen.sh build preparation script by Christopher Sean Morrison"
                    112:     echo "  + config.guess download patch by Sebastian Pipping (2008-12-03)"
                    113:     echo "revised 3-clause BSD-style license, copyright (c) $__copyright"
                    114:     echo "script version $__version, ISO/IEC 9945 POSIX shell script"
                    115: }
                    116: 
                    117: 
                    118: ##################
                    119: # USAGE FUNCTION #
                    120: ##################
                    121: usage ( ) {
                    122:     echo "Usage: $AUTOGEN_SH [-h|--help] [-v|--verbose] [-q|--quiet] [-d|--download] [--version]"
                    123:     echo "    --help      Help on $NAME_OF_AUTOGEN usage"
                    124:     echo "    --verbose   Verbose progress output"
                    125:     echo "    --quiet     Quiet suppressed progress output"
                    126:     echo "    --download  Download the latest config.guess from gnulib"
                    127:     echo "    --version   Only perform GNU Build System version checks"
                    128:     echo
                    129:     echo "Description: This script will validate that minimum versions of the"
                    130:     echo "GNU Build System tools are installed and then run autoreconf for you."
                    131:     echo "Should autoreconf fail, manual preparation steps will be run"
                    132:     echo "potentially accounting for several common preparation issues.  The"
                    133: 
                    134:     echo "AUTORECONF, AUTOCONF, AUTOMAKE, LIBTOOLIZE, ACLOCAL, AUTOHEADER,"
                    135:     echo "PROJECT, & CONFIGURE environment variables and corresponding _OPTIONS"
                    136:     echo "variables (e.g. AUTORECONF_OPTIONS) may be used to override the"
                    137:     echo "default automatic detection behavior."
                    138:     echo
                    139: 
                    140:     ident
                    141: 
                    142:     return 0
                    143: }
                    144: 
                    145: 
                    146: ##########################
                    147: # VERSION_ERROR FUNCTION #
                    148: ##########################
                    149: version_error ( ) {
                    150:     if [ "x$1" = "x" ] ; then
                    151:    echo "INTERNAL ERROR: version_error was not provided a version"
                    152:    exit 1
                    153:     fi
                    154:     if [ "x$2" = "x" ] ; then
                    155:    echo "INTERNAL ERROR: version_error was not provided an application name"
                    156:    exit 1
                    157:     fi
                    158:     $ECHO
                    159:     $ECHO "ERROR:  To prepare the ${PROJECT} build system from scratch,"
                    160:     $ECHO "        at least version $1 of $2 must be installed."
                    161:     $ECHO
                    162:     $ECHO "$NAME_OF_AUTOGEN does not need to be run on the same machine that will"
                    163:     $ECHO "run configure or make.  Either the GNU Autotools will need to be installed"
                    164:     $ECHO "or upgraded on this system, or $NAME_OF_AUTOGEN must be run on the source"
                    165:     $ECHO "code on another system and then transferred to here. -- Cheers!"
                    166:     $ECHO
                    167: }
                    168: 
                    169: ##########################
                    170: # VERSION_CHECK FUNCTION #
                    171: ##########################
                    172: version_check ( ) {
                    173:     if [ "x$1" = "x" ] ; then
                    174:    echo "INTERNAL ERROR: version_check was not provided a minimum version"
                    175:    exit 1
                    176:     fi
                    177:     _min="$1"
                    178:     if [ "x$2" = "x" ] ; then
                    179:    echo "INTERNAL ERROR: version check was not provided a comparison version"
                    180:    exit 1
                    181:     fi
                    182:     _cur="$2"
                    183: 
                    184:     # needed to handle versions like 1.10 and 1.4-p6
                    185:     _min="`echo ${_min}. | sed 's/[^0-9]/./g' | sed 's/\.\././g'`"
                    186:     _cur="`echo ${_cur}. | sed 's/[^0-9]/./g' | sed 's/\.\././g'`"
                    187: 
                    188:     _min_major="`echo $_min | cut -d. -f1`"
                    189:     _min_minor="`echo $_min | cut -d. -f2`"
                    190:     _min_patch="`echo $_min | cut -d. -f3`"
                    191: 
                    192:     _cur_major="`echo $_cur | cut -d. -f1`"
                    193:     _cur_minor="`echo $_cur | cut -d. -f2`"
                    194:     _cur_patch="`echo $_cur | cut -d. -f3`"
                    195: 
                    196:     if [ "x$_min_major" = "x" ] ; then
                    197:    _min_major=0
                    198:     fi
                    199:     if [ "x$_min_minor" = "x" ] ; then
                    200:    _min_minor=0
                    201:     fi
                    202:     if [ "x$_min_patch" = "x" ] ; then
                    203:    _min_patch=0
                    204:     fi
                    205:     if [ "x$_cur_minor" = "x" ] ; then
                    206:    _cur_major=0
                    207:     fi
                    208:     if [ "x$_cur_minor" = "x" ] ; then
                    209:    _cur_minor=0
                    210:     fi
                    211:     if [ "x$_cur_patch" = "x" ] ; then
                    212:    _cur_patch=0
                    213:     fi
                    214: 
                    215:     $VERBOSE_ECHO "Checking if ${_cur_major}.${_cur_minor}.${_cur_patch} is greater than ${_min_major}.${_min_minor}.${_min_patch}"
                    216: 
                    217:     if [ $_min_major -lt $_cur_major ] ; then
                    218:    return 0
                    219:     elif [ $_min_major -eq $_cur_major ] ; then
                    220:    if [ $_min_minor -lt $_cur_minor ] ; then
                    221:        return 0
                    222:    elif [ $_min_minor -eq $_cur_minor ] ; then
                    223:        if [ $_min_patch -lt $_cur_patch ] ; then
                    224:        return 0
                    225:        elif [ $_min_patch -eq $_cur_patch ] ; then
                    226:        return 0
                    227:        fi
                    228:    fi
                    229:     fi
                    230:     return 1
                    231: }
                    232: 
                    233: 
                    234: ######################################
                    235: # LOCATE_CONFIGURE_TEMPLATE FUNCTION #
                    236: ######################################
                    237: locate_configure_template ( ) {
                    238:     _pwd="`pwd`"
                    239:     if test -f "./configure.ac" ; then
                    240:    echo "./configure.ac"
                    241:     elif test -f "./configure.in" ; then
                    242:    echo "./configure.in"
                    243:     elif test -f "$_pwd/configure.ac" ; then
                    244:    echo "$_pwd/configure.ac"
                    245:     elif test -f "$_pwd/configure.in" ; then
                    246:    echo "$_pwd/configure.in"
                    247:     elif test -f "$PATH_TO_AUTOGEN/configure.ac" ; then
                    248:    echo "$PATH_TO_AUTOGEN/configure.ac"
                    249:     elif test -f "$PATH_TO_AUTOGEN/configure.in" ; then
                    250:    echo "$PATH_TO_AUTOGEN/configure.in"
                    251:     fi
                    252: }
                    253: 
                    254: 
                    255: ##################
                    256: # argument check #
                    257: ##################
                    258: ARGS="$*"
                    259: PATH_TO_AUTOGEN="`dirname $0`"
                    260: NAME_OF_AUTOGEN="`basename $0`"
                    261: AUTOGEN_SH="$PATH_TO_AUTOGEN/$NAME_OF_AUTOGEN"
                    262: 
                    263: LIBTOOL_M4="${PATH_TO_AUTOGEN}/misc/libtool.m4"
                    264: 
                    265: if [ "x$HELP" = "x" ] ; then
                    266:     HELP=no
                    267: fi
                    268: if [ "x$QUIET" = "x" ] ; then
                    269:     QUIET=no
                    270: fi
                    271: if [ "x$VERBOSE" = "x" ] ; then
                    272:     VERBOSE=no
                    273: fi
                    274: if [ "x$VERSION_ONLY" = "x" ] ; then
                    275:     VERSION_ONLY=no
                    276: fi
                    277: if [ "x$DOWNLOAD" = "x" ] ; then
                    278:     DOWNLOAD=no
                    279: fi
                    280: if [ "x$AUTORECONF_OPTIONS" = "x" ] ; then
                    281:     AUTORECONF_OPTIONS="-i -f"
                    282: fi
                    283: if [ "x$AUTOCONF_OPTIONS" = "x" ] ; then
                    284:     AUTOCONF_OPTIONS="-f"
                    285: fi
                    286: if [ "x$AUTOMAKE_OPTIONS" = "x" ] ; then
                    287:     AUTOMAKE_OPTIONS="-a -c -f"
                    288: fi
                    289: ALT_AUTOMAKE_OPTIONS="-a -c"
                    290: if [ "x$LIBTOOLIZE_OPTIONS" = "x" ] ; then
                    291:     LIBTOOLIZE_OPTIONS="--automake -c -f"
                    292: fi
                    293: ALT_LIBTOOLIZE_OPTIONS="--automake --copy --force"
                    294: if [ "x$ACLOCAL_OPTIONS" = "x" ] ; then
                    295:     ACLOCAL_OPTIONS=""
                    296: fi
                    297: if [ "x$AUTOHEADER_OPTIONS" = "x" ] ; then
                    298:     AUTOHEADER_OPTIONS=""
                    299: fi
                    300: if [ "x$CONFIG_GUESS_URL" = "x" ] ; then
                    301:     CONFIG_GUESS_URL="http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f=build-aux/config.guess;hb=HEAD"
                    302: fi
                    303: for arg in $ARGS ; do
                    304:     case "x$arg" in
                    305:    x--help) HELP=yes ;;
                    306:    x-[hH]) HELP=yes ;;
                    307:    x--quiet) QUIET=yes ;;
                    308:    x-[qQ]) QUIET=yes ;;
                    309:    x--verbose) VERBOSE=yes ;;
                    310:    x-[dD]) DOWNLOAD=yes ;;
                    311:    x--download) DOWNLOAD=yes ;;
                    312:    x-[vV]) VERBOSE=yes ;;
                    313:    x--version) VERSION_ONLY=yes ;;
                    314:    *)
                    315:        echo "Unknown option: $arg"
                    316:        echo
                    317:        usage
                    318:        exit 1
                    319:        ;;
                    320:     esac
                    321: done
                    322: 
                    323: 
                    324: #####################
                    325: # environment check #
                    326: #####################
                    327: 
                    328: # sanity check before recursions potentially begin
                    329: if [ ! -f "$AUTOGEN_SH" ] ; then
                    330:     echo "INTERNAL ERROR: $AUTOGEN_SH does not exist"
                    331:     if [ ! "x$0" = "x$AUTOGEN_SH" ] ; then
                    332:    echo "INTERNAL ERROR: dirname/basename inconsistency: $0 != $AUTOGEN_SH"
                    333:     fi
                    334:     exit 1
                    335: fi
                    336: 
                    337: # force locale setting to C so things like date output as expected
                    338: LC_ALL=C
                    339: 
                    340: # commands that this script expects
                    341: for __cmd in echo head tail pwd ; do
                    342:     echo "test" | $__cmd > /dev/null 2>&1
                    343:     if [ $? != 0 ] ; then
                    344:    echo "INTERNAL ERROR: '${__cmd}' command is required"
                    345:    exit 2
                    346:     fi
                    347: done
                    348: echo "test" | grep "test" > /dev/null 2>&1
                    349: if test ! x$? = x0 ; then
                    350:     echo "INTERNAL ERROR: grep command is required"
                    351:     exit 1
                    352: fi
                    353: echo "test" | sed "s/test/test/" > /dev/null 2>&1
                    354: if test ! x$? = x0 ; then
                    355:     echo "INTERNAL ERROR: sed command is required"
                    356:     exit 1
                    357: fi
                    358: 
                    359: 
                    360: # determine the behavior of echo
                    361: case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
                    362:     *c*,-n*) ECHO_N= ECHO_C='
                    363: ' ECHO_T=' ' ;;
                    364:     *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
                    365:     *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
                    366: esac
                    367: 
                    368: # determine the behavior of head
                    369: case "x`echo 'head' | head -n 1 2>&1`" in
                    370:     *xhead*) HEAD_N="n " ;;
                    371:     *) HEAD_N="" ;;
                    372: esac
                    373: 
                    374: # determine the behavior of tail
                    375: case "x`echo 'tail' | tail -n 1 2>&1`" in
                    376:     *xtail*) TAIL_N="n " ;;
                    377:     *) TAIL_N="" ;;
                    378: esac
                    379: 
                    380: VERBOSE_ECHO=:
                    381: ECHO=:
                    382: if [ "x$QUIET" = "xyes" ] ; then
                    383:     if [ "x$VERBOSE" = "xyes" ] ; then
                    384:    echo "Verbose output quelled by quiet option.  Further output disabled."
                    385:     fi
                    386: else
                    387:     ECHO=echo
                    388:     if [ "x$VERBOSE" = "xyes" ] ; then
                    389:    echo "Verbose output enabled"
                    390:    VERBOSE_ECHO=echo
                    391:     fi
                    392: fi
                    393: 
                    394: 
                    395: # allow a recursive run to disable further recursions
                    396: if [ "x$RUN_RECURSIVE" = "x" ] ; then
                    397:     RUN_RECURSIVE=yes
                    398: fi
                    399: 
                    400: 
                    401: ################################################
                    402: # check for help arg and bypass version checks #
                    403: ################################################
                    404: if [ "x`echo $ARGS | sed 's/.*[hH][eE][lL][pP].*/help/'`" = "xhelp" ] ; then
                    405:     HELP=yes
                    406: fi
                    407: if [ "x$HELP" = "xyes" ] ; then
                    408:     usage
                    409:     $ECHO "---"
                    410:     $ECHO "Help was requested.  No preparation or configuration will be performed."
                    411:     exit 0
                    412: fi
                    413: 
                    414: 
                    415: #######################
                    416: # set up signal traps #
                    417: #######################
                    418: untrap_abnormal ( ) {
                    419:     for sig in 1 2 13 15; do
                    420:    trap - $sig
                    421:     done
                    422: }
                    423: 
                    424: # do this cleanup whenever we exit.
                    425: trap '
                    426:     # start from the root
                    427:     if test -d "$START_PATH" ; then
                    428:    cd "$START_PATH"
                    429:     fi
                    430: 
                    431:     # restore/delete backup files
                    432:     if test "x$PFC_INIT" = "x1" ; then
                    433:    recursive_restore
                    434:     fi
                    435: ' 0
                    436: 
                    437: # trap SIGHUP (1), SIGINT (2), SIGPIPE (13), SIGTERM (15)
                    438: for sig in 1 2 13 15; do
                    439:     trap '
                    440:    $ECHO ""
                    441:    $ECHO "Aborting $NAME_OF_AUTOGEN: caught signal '$sig'"
                    442: 
                    443:    # start from the root
                    444:    if test -d "$START_PATH" ; then
                    445:        cd "$START_PATH"
                    446:    fi
                    447: 
                    448:    # clean up on abnormal exit
                    449:    $VERBOSE_ECHO "rm -rf autom4te.cache"
                    450:    rm -rf autom4te.cache
                    451: 
                    452:    if test -f "acinclude.m4.$$.backup" ; then
                    453:        $VERBOSE_ECHO "cat acinclude.m4.$$.backup > acinclude.m4"
                    454:        chmod u+w acinclude.m4
                    455:        cat acinclude.m4.$$.backup > acinclude.m4
                    456: 
                    457:        $VERBOSE_ECHO "rm -f acinclude.m4.$$.backup"
                    458:        rm -f acinclude.m4.$$.backup
                    459:         fi
                    460: 
                    461:    { (exit 1); exit 1; }
                    462: ' $sig
                    463: done
                    464: 
                    465: 
                    466: #############################
                    467: # look for a configure file #
                    468: #############################
                    469: if [ "x$CONFIGURE" = "x" ] ; then
                    470:     CONFIGURE="`locate_configure_template`"
                    471:     if [ ! "x$CONFIGURE" = "x" ] ; then
                    472:    $VERBOSE_ECHO "Found a configure template: $CONFIGURE"
                    473:     fi
                    474: else
                    475:     $ECHO "Using CONFIGURE environment variable override: $CONFIGURE"
                    476: fi
                    477: if [ "x$CONFIGURE" = "x" ] ; then
                    478:     if [ "x$VERSION_ONLY" = "xyes" ] ; then
                    479:    CONFIGURE=/dev/null
                    480:     else
                    481:    $ECHO
                    482:    $ECHO "A configure.ac or configure.in file could not be located implying"
                    483:    $ECHO "that the GNU Build System is at least not used in this directory.  In"
                    484:    $ECHO "any case, there is nothing to do here without one of those files."
                    485:    $ECHO
                    486:    $ECHO "ERROR: No configure.in or configure.ac file found in `pwd`"
                    487:    exit 1
                    488:     fi
                    489: fi
                    490: 
                    491: ####################
                    492: # get project name #
                    493: ####################
                    494: if [ "x$PROJECT" = "x" ] ; then
                    495:     PROJECT="`grep AC_INIT $CONFIGURE | grep -v '.*#.*AC_INIT' | tail -${TAIL_N}1 | sed 's/^[  ]*AC_INIT(\([^,)]*\).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    496:     if [ "x$PROJECT" = "xAC_INIT" ] ; then
                    497:    # projects might be using the older/deprecated arg-less AC_INIT .. look for AM_INIT_AUTOMAKE instead
                    498:    PROJECT="`grep AM_INIT_AUTOMAKE $CONFIGURE | grep -v '.*#.*AM_INIT_AUTOMAKE' | tail -${TAIL_N}1 | sed 's/^[     ]*AM_INIT_AUTOMAKE(\([^,)]*\).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    499:     fi
                    500:     if [ "x$PROJECT" = "xAM_INIT_AUTOMAKE" ] ; then
                    501:    PROJECT="project"
                    502:     fi
                    503:     if [ "x$PROJECT" = "x" ] ; then
                    504:    PROJECT="project"
                    505:     fi
                    506: else
                    507:     $ECHO "Using PROJECT environment variable override: $PROJECT"
                    508: fi
                    509: $ECHO "Preparing the $PROJECT build system...please wait"
                    510: $ECHO
                    511: 
                    512: 
                    513: ########################
                    514: # check for autoreconf #
                    515: ########################
                    516: HAVE_AUTORECONF=no
                    517: if [ "x$AUTORECONF" = "x" ] ; then
                    518:     for AUTORECONF in autoreconf ; do
                    519:    $VERBOSE_ECHO "Checking autoreconf version: $AUTORECONF --version"
                    520:    $AUTORECONF --version > /dev/null 2>&1
                    521:    if [ $? = 0 ] ; then
                    522:        HAVE_AUTORECONF=yes
                    523:        break
                    524:    fi
                    525:     done
                    526: else
                    527:     HAVE_AUTORECONF=yes
                    528:     $ECHO "Using AUTORECONF environment variable override: $AUTORECONF"
                    529: fi
                    530: 
                    531: 
                    532: ##########################
                    533: # autoconf version check #
                    534: ##########################
                    535: _acfound=no
                    536: if [ "x$AUTOCONF" = "x" ] ; then
                    537:     for AUTOCONF in autoconf ; do
                    538:    $VERBOSE_ECHO "Checking autoconf version: $AUTOCONF --version"
                    539:    $AUTOCONF --version > /dev/null 2>&1
                    540:    if [ $? = 0 ] ; then
                    541:        _acfound=yes
                    542:        break
                    543:    fi
                    544:     done
                    545: else
                    546:     _acfound=yes
                    547:     $ECHO "Using AUTOCONF environment variable override: $AUTOCONF"
                    548: fi
                    549: 
                    550: _report_error=no
                    551: if [ ! "x$_acfound" = "xyes" ] ; then
                    552:     $ECHO "ERROR:  Unable to locate GNU Autoconf."
                    553:     _report_error=yes
                    554: else
                    555:     _version="`$AUTOCONF --version | head -${HEAD_N}1 | sed 's/[^0-9]*\([0-9\.][0-9\.]*\)/\1/'`"
                    556:     if [ "x$_version" = "x" ] ; then
                    557:    _version="0.0.0"
                    558:     fi
                    559:     $ECHO "Found GNU Autoconf version $_version"
                    560:     version_check "$AUTOCONF_VERSION" "$_version"
                    561:     if [ $? -ne 0 ] ; then
                    562:    _report_error=yes
                    563:     fi
                    564: fi
                    565: if [ "x$_report_error" = "xyes" ] ; then
                    566:     version_error "$AUTOCONF_VERSION" "GNU Autoconf"
                    567:     exit 1
                    568: fi
                    569: 
                    570: 
                    571: ##########################
                    572: # automake version check #
                    573: ##########################
                    574: _amfound=no
                    575: if [ "x$AUTOMAKE" = "x" ] ; then
                    576:     for AUTOMAKE in automake ; do
                    577:    $VERBOSE_ECHO "Checking automake version: $AUTOMAKE --version"
                    578:    $AUTOMAKE --version > /dev/null 2>&1
                    579:    if [ $? = 0 ] ; then
                    580:        _amfound=yes
                    581:        break
                    582:    fi
                    583:     done
                    584: else
                    585:     _amfound=yes
                    586:     $ECHO "Using AUTOMAKE environment variable override: $AUTOMAKE"
                    587: fi
                    588: 
                    589: 
                    590: _report_error=no
                    591: if [ ! "x$_amfound" = "xyes" ] ; then
                    592:     $ECHO
                    593:     $ECHO "ERROR: Unable to locate GNU Automake."
                    594:     _report_error=yes
                    595: else
                    596:     _version="`$AUTOMAKE --version | head -${HEAD_N}1 | sed 's/[^0-9]*\([0-9\.][0-9\.]*\)/\1/'`"
                    597:     if [ "x$_version" = "x" ] ; then
                    598:    _version="0.0.0"
                    599:     fi
                    600:     $ECHO "Found GNU Automake version $_version"
                    601:     version_check "$AUTOMAKE_VERSION" "$_version"
                    602:     if [ $? -ne 0 ] ; then
                    603:    _report_error=yes
                    604:     fi
                    605: fi
                    606: if [ "x$_report_error" = "xyes" ] ; then
                    607:     version_error "$AUTOMAKE_VERSION" "GNU Automake"
                    608:     exit 1
                    609: fi
                    610: 
                    611: 
                    612: ########################
                    613: # check for libtoolize #
                    614: ########################
                    615: HAVE_LIBTOOLIZE=yes
                    616: HAVE_ALT_LIBTOOLIZE=no
                    617: _ltfound=no
                    618: if [ "x$LIBTOOLIZE" = "x" ] ; then
                    619:     LIBTOOLIZE=libtoolize
                    620:     $VERBOSE_ECHO "Checking libtoolize version: $LIBTOOLIZE --version"
                    621:     $LIBTOOLIZE --version > /dev/null 2>&1
                    622:     if [ ! $? = 0 ] ; then
                    623:    HAVE_LIBTOOLIZE=no
                    624:    $ECHO
                    625:    if [ "x$HAVE_AUTORECONF" = "xno" ] ; then
                    626:        $ECHO "Warning:  libtoolize does not appear to be available."
                    627:    else
                    628:        $ECHO "Warning:  libtoolize does not appear to be available.  This means that"
                    629:        $ECHO "the automatic build preparation via autoreconf will probably not work."
                    630:        $ECHO "Preparing the build by running each step individually, however, should"
                    631:        $ECHO "work and will be done automatically for you if autoreconf fails."
                    632:    fi
                    633: 
                    634:    # look for some alternates
                    635:    for tool in glibtoolize libtoolize15 libtoolize14 libtoolize13 ; do
                    636:        $VERBOSE_ECHO "Checking libtoolize alternate: $tool --version"
                    637:        _glibtoolize="`$tool --version > /dev/null 2>&1`"
                    638:        if [ $? = 0 ] ; then
                    639:        $VERBOSE_ECHO "Found $tool --version"
                    640:        _glti="`which $tool`"
                    641:        if [ "x$_glti" = "x" ] ; then
                    642:            $VERBOSE_ECHO "Cannot find $tool with which"
                    643:            continue;
                    644:        fi
                    645:        if test ! -f "$_glti" ; then
                    646:            $VERBOSE_ECHO "Cannot use $tool, $_glti is not a file"
                    647:            continue;
                    648:        fi
                    649:        _gltidir="`dirname $_glti`"
                    650:        if [ "x$_gltidir" = "x" ] ; then
                    651:            $VERBOSE_ECHO "Cannot find $tool path with dirname of $_glti"
                    652:            continue;
                    653:        fi
                    654:        if test ! -d "$_gltidir" ; then
                    655:            $VERBOSE_ECHO "Cannot use $tool, $_gltidir is not a directory"
                    656:            continue;
                    657:        fi
                    658:        HAVE_ALT_LIBTOOLIZE=yes
                    659:        LIBTOOLIZE="$tool"
                    660:        $ECHO
                    661:        $ECHO "Fortunately, $tool was found which means that your system may simply"
                    662:        $ECHO "have a non-standard or incomplete GNU Autotools install.  If you have"
                    663:        $ECHO "sufficient system access, it may be possible to quell this warning by"
                    664:        $ECHO "running:"
                    665:        $ECHO
                    666:        sudo -V > /dev/null 2>&1
                    667:        if [ $? = 0 ] ; then
                    668:            $ECHO "   sudo ln -s $_glti $_gltidir/libtoolize"
                    669:            $ECHO
                    670:        else
                    671:            $ECHO "   ln -s $_glti $_gltidir/libtoolize"
                    672:            $ECHO
                    673:            $ECHO "Run that as root or with proper permissions to the $_gltidir directory"
                    674:            $ECHO
                    675:        fi
                    676:        _ltfound=yes
                    677:        break
                    678:        fi
                    679:    done
                    680:     else
                    681:    _ltfound=yes
                    682:     fi
                    683: else
                    684:     _ltfound=yes
                    685:     $ECHO "Using LIBTOOLIZE environment variable override: $LIBTOOLIZE"
                    686: fi
                    687: 
                    688: 
                    689: ############################
                    690: # libtoolize version check #
                    691: ############################
                    692: _report_error=no
                    693: if [ ! "x$_ltfound" = "xyes" ] ; then
                    694:     $ECHO
                    695:     $ECHO "ERROR: Unable to locate GNU Libtool."
                    696:     _report_error=yes
                    697: else
                    698:     _version="`$LIBTOOLIZE --version | head -${HEAD_N}1 | sed 's/[^0-9]*\([0-9\.][0-9\.]*\)/\1/'`"
                    699:     if [ "x$_version" = "x" ] ; then
                    700:    _version="0.0.0"
                    701:     fi
                    702:     $ECHO "Found GNU Libtool version $_version"
                    703:     version_check "$LIBTOOL_VERSION" "$_version"
                    704:     if [ $? -ne 0 ] ; then
                    705:    _report_error=yes
                    706:     fi
                    707: fi
                    708: if [ "x$_report_error" = "xyes" ] ; then
                    709:     version_error "$LIBTOOL_VERSION" "GNU Libtool"
                    710:     exit 1
                    711: fi
                    712: 
                    713: 
                    714: #####################
                    715: # check for aclocal #
                    716: #####################
                    717: if [ "x$ACLOCAL" = "x" ] ; then
                    718:     for ACLOCAL in aclocal ; do
                    719:    $VERBOSE_ECHO "Checking aclocal version: $ACLOCAL --version"
                    720:    $ACLOCAL --version > /dev/null 2>&1
                    721:    if [ $? = 0 ] ; then
                    722:        break
                    723:    fi
                    724:     done
                    725: else
                    726:     $ECHO "Using ACLOCAL environment variable override: $ACLOCAL"
                    727: fi
                    728: 
                    729: 
                    730: ########################
                    731: # check for autoheader #
                    732: ########################
                    733: if [ "x$AUTOHEADER" = "x" ] ; then
                    734:     for AUTOHEADER in autoheader ; do
                    735:    $VERBOSE_ECHO "Checking autoheader version: $AUTOHEADER --version"
                    736:    $AUTOHEADER --version > /dev/null 2>&1
                    737:    if [ $? = 0 ] ; then
                    738:        break
                    739:    fi
                    740:     done
                    741: else
                    742:     $ECHO "Using AUTOHEADER environment variable override: $AUTOHEADER"
                    743: fi
                    744: 
                    745: 
                    746: #########################
                    747: # check if version only #
                    748: #########################
                    749: $VERBOSE_ECHO "Checking whether to only output version information"
                    750: if [ "x$VERSION_ONLY" = "xyes" ] ; then
                    751:     $ECHO
                    752:     ident
                    753:     $ECHO "---"
                    754:     $ECHO "Version requested.  No preparation or configuration will be performed."
                    755:     exit 0
                    756: fi
                    757: 
                    758: 
                    759: #################################
                    760: # PROTECT_FROM_CLOBBER FUNCTION #
                    761: #################################
                    762: protect_from_clobber ( ) {
                    763:     PFC_INIT=1
                    764: 
                    765:     # protect COPYING & INSTALL from overwrite by automake.  the
                    766:     # automake force option will (inappropriately) ignore the existing
                    767:     # contents of a COPYING and/or INSTALL files (depending on the
                    768:     # version) instead of just forcing *missing* files like it does
                    769:     # for AUTHORS, NEWS, and README. this is broken but extremely
                    770:     # prevalent behavior, so we protect against it by keeping a backup
                    771:     # of the file that can later be restored.
                    772: 
                    773:     for file in COPYING INSTALL ; do
                    774:    if test -f ${file} ; then
                    775:        if test -f ${file}.$$.protect_from_automake.backup ; then
                    776:        $VERBOSE_ECHO "Already backed up ${file} in `pwd`"
                    777:        else
                    778:        $VERBOSE_ECHO "Backing up ${file} in `pwd`"
                    779:        $VERBOSE_ECHO "cp -p ${file} ${file}.$$.protect_from_automake.backup"
                    780:        cp -p ${file} ${file}.$$.protect_from_automake.backup
                    781:        fi
                    782:    fi
                    783:     done
                    784: }
                    785: 
                    786: 
                    787: ##############################
                    788: # RECURSIVE_PROTECT FUNCTION #
                    789: ##############################
                    790: recursive_protect ( ) {
                    791: 
                    792:     # for projects using recursive configure, run the build
                    793:     # preparation steps for the subdirectories.  this function assumes
                    794:     # START_PATH was set to pwd before recursion begins so that
                    795:     # relative paths work.
                    796: 
                    797:     # git 'r done, protect COPYING and INSTALL from being clobbered
                    798:     protect_from_clobber
                    799: 
                    800:     if test -d autom4te.cache ; then
                    801:    $VERBOSE_ECHO "Found an autom4te.cache directory, deleting it"
                    802:    $VERBOSE_ECHO "rm -rf autom4te.cache"
                    803:    rm -rf autom4te.cache
                    804:     fi
                    805: 
                    806:     # find configure template
                    807:     _configure="`locate_configure_template`"
                    808:     if [ "x$_configure" = "x" ] ; then
                    809:    return
                    810:     fi
                    811:     # $VERBOSE_ECHO "Looking for configure template found `pwd`/$_configure"
                    812: 
                    813:     # look for subdirs
                    814:     # $VERBOSE_ECHO "Looking for subdirs in `pwd`"
                    815:     _det_config_subdirs="`grep AC_CONFIG_SUBDIRS $_configure | grep -v '.*#.*AC_CONFIG_SUBDIRS' | sed 's/^[    ]*AC_CONFIG_SUBDIRS(\(.*\)).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    816:     CHECK_DIRS=""
                    817:     for dir in $_det_config_subdirs ; do
                    818:    if test -d "`pwd`/$dir" ; then
                    819:        CHECK_DIRS="$CHECK_DIRS \"`pwd`/$dir\""
                    820:    fi
                    821:     done
                    822: 
                    823:     # process subdirs
                    824:     if [ ! "x$CHECK_DIRS" = "x" ] ; then
                    825:    $VERBOSE_ECHO "Recursively scanning the following directories:"
                    826:    $VERBOSE_ECHO "  $CHECK_DIRS"
                    827:    for dir in $CHECK_DIRS ; do
                    828:        $VERBOSE_ECHO "Protecting files from automake in $dir"
                    829:        cd "$START_PATH"
                    830:        eval "cd $dir"
                    831: 
                    832:        # recursively git 'r done
                    833:        recursive_protect
                    834:    done
                    835:     fi
                    836: } # end of recursive_protect
                    837: 
                    838: 
                    839: #############################
                    840: # RESTORE_CLOBBERED FUNCION #
                    841: #############################
                    842: restore_clobbered ( ) {
                    843: 
                    844:     # The automake (and autoreconf by extension) -f/--force-missing
                    845:     # option may overwrite COPYING and INSTALL even if they do exist.
                    846:     # Here we restore the files if necessary.
                    847: 
                    848:     spacer=no
                    849: 
                    850:     for file in COPYING INSTALL ; do
                    851:    if test -f ${file}.$$.protect_from_automake.backup ; then
                    852:        if test -f ${file} ; then
                    853:        # compare entire content, restore if needed
                    854:        if test "x`cat ${file}`" != "x`cat ${file}.$$.protect_from_automake.backup`" ; then
                    855:        if test "x$spacer" = "xno" ; then
                    856:            $VERBOSE_ECHO
                    857:            spacer=yes
                    858:        fi
                    859:        # restore the backup
                    860:        $VERBOSE_ECHO "Restoring ${file} from backup (automake -f likely clobbered it)"
                    861:        $VERBOSE_ECHO "rm -f ${file}"
                    862:        rm -f ${file}
                    863:        $VERBOSE_ECHO "mv ${file}.$$.protect_from_automake.backup ${file}"
                    864:        mv ${file}.$$.protect_from_automake.backup ${file}
                    865:        fi # check contents
                    866:        elif test -f ${file}.$$.protect_from_automake.backup ; then
                    867:        $VERBOSE_ECHO "mv ${file}.$$.protect_from_automake.backup ${file}"
                    868:        mv ${file}.$$.protect_from_automake.backup ${file}
                    869:        fi # -f ${file}
                    870:    
                    871:        # just in case
                    872:        $VERBOSE_ECHO "rm -f ${file}.$$.protect_from_automake.backup"
                    873:        rm -f ${file}.$$.protect_from_automake.backup
                    874:    fi # -f ${file}.$$.protect_from_automake.backup
                    875:     done
                    876: 
                    877:     CONFIGURE="`locate_configure_template`"
                    878:     if [ "x$CONFIGURE" = "x" ] ; then
                    879:    return
                    880:     fi
                    881: 
                    882:     _aux_dir="`grep AC_CONFIG_AUX_DIR $CONFIGURE | grep -v '.*#.*AC_CONFIG_AUX_DIR' | tail -${TAIL_N}1 | sed 's/^[     ]*AC_CONFIG_AUX_DIR(\(.*\)).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    883:     if test ! -d "$_aux_dir" ; then
                    884:    _aux_dir=.
                    885:     fi
                    886: 
                    887:     for file in config.guess config.sub ltmain.sh ; do
                    888:    if test -f "${_aux_dir}/${file}" ; then
                    889:        $VERBOSE_ECHO "rm -f \"${_aux_dir}/${file}.backup\""
                    890:        rm -f "${_aux_dir}/${file}.backup"
                    891:    fi
                    892:     done
                    893: } # end of restore_clobbered
                    894: 
                    895: 
                    896: ##############################
                    897: # RECURSIVE_RESTORE FUNCTION #
                    898: ##############################
                    899: recursive_restore ( ) {
                    900: 
                    901:     # restore COPYING and INSTALL from backup if they were clobbered
                    902:     # for each directory recursively.
                    903: 
                    904:     # git 'r undone
                    905:     restore_clobbered
                    906: 
                    907:     # find configure template
                    908:     _configure="`locate_configure_template`"
                    909:     if [ "x$_configure" = "x" ] ; then
                    910:    return
                    911:     fi
                    912: 
                    913:     # look for subdirs
                    914:     _det_config_subdirs="`grep AC_CONFIG_SUBDIRS $_configure | grep -v '.*#.*AC_CONFIG_SUBDIRS' | sed 's/^[    ]*AC_CONFIG_SUBDIRS(\(.*\)).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    915:     CHECK_DIRS=""
                    916:     for dir in $_det_config_subdirs ; do
                    917:    if test -d "`pwd`/$dir" ; then
                    918:        CHECK_DIRS="$CHECK_DIRS \"`pwd`/$dir\""
                    919:    fi
                    920:     done
                    921: 
                    922:     # process subdirs
                    923:     if [ ! "x$CHECK_DIRS" = "x" ] ; then
                    924:    $VERBOSE_ECHO "Recursively scanning the following directories:"
                    925:    $VERBOSE_ECHO "  $CHECK_DIRS"
                    926:    for dir in $CHECK_DIRS ; do
                    927:        $VERBOSE_ECHO "Checking files for automake damage in $dir"
                    928:        cd "$START_PATH"
                    929:        eval "cd $dir"
                    930: 
                    931:        # recursively git 'r undone
                    932:        recursive_restore
                    933:    done
                    934:     fi
                    935: } # end of recursive_restore
                    936: 
                    937: 
                    938: #######################
                    939: # INITIALIZE FUNCTION #
                    940: #######################
                    941: initialize ( ) {
                    942: 
                    943:     # this routine performs a variety of directory-specific
                    944:     # initializations.  some are sanity checks, some are preventive,
                    945:     # and some are necessary setup detection.
                    946:     #
                    947:     # this function sets:
                    948:     #   CONFIGURE
                    949:     #   SEARCH_DIRS
                    950:     #   CONFIG_SUBDIRS
                    951: 
                    952:     ##################################
                    953:     # check for a configure template #
                    954:     ##################################
                    955:     CONFIGURE="`locate_configure_template`"
                    956:     if [ "x$CONFIGURE" = "x" ] ; then
                    957:    $ECHO
                    958:    $ECHO "A configure.ac or configure.in file could not be located implying"
                    959:    $ECHO "that the GNU Build System is at least not used in this directory.  In"
                    960:    $ECHO "any case, there is nothing to do here without one of those files."
                    961:    $ECHO
                    962:    $ECHO "ERROR: No configure.in or configure.ac file found in `pwd`"
                    963:    exit 1
                    964:     fi
                    965: 
                    966:     #####################
                    967:     # detect an aux dir #
                    968:     #####################
                    969:     _aux_dir="`grep AC_CONFIG_AUX_DIR $CONFIGURE | grep -v '.*#.*AC_CONFIG_AUX_DIR' | tail -${TAIL_N}1 | sed 's/^[     ]*AC_CONFIG_AUX_DIR(\(.*\)).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    970:     if test ! -d "$_aux_dir" ; then
                    971:    _aux_dir=.
                    972:     else
                    973:    $VERBOSE_ECHO "Detected auxillary directory: $_aux_dir"
                    974:     fi
                    975: 
                    976:     ################################
                    977:     # detect a recursive configure #
                    978:     ################################
                    979:     CONFIG_SUBDIRS=""
                    980:     _det_config_subdirs="`grep AC_CONFIG_SUBDIRS $CONFIGURE | grep -v '.*#.*AC_CONFIG_SUBDIRS' | sed 's/^[     ]*AC_CONFIG_SUBDIRS(\(.*\)).*/\1/' | sed 's/.*\[\(.*\)\].*/\1/'`"
                    981:     for dir in $_det_config_subdirs ; do
                    982:    if test -d "`pwd`/$dir" ; then
                    983:        $VERBOSE_ECHO "Detected recursive configure directory: `pwd`/$dir"
                    984:        CONFIG_SUBDIRS="$CONFIG_SUBDIRS `pwd`/$dir"
                    985:    fi
                    986:     done
                    987: 
                    988:     ###########################################################
                    989:     # make sure certain required files exist for GNU projects #
                    990:     ###########################################################
                    991:     _marker_found=""
                    992:     _marker_found_message_intro='Detected non-GNU marker "'
                    993:     _marker_found_message_mid='" in '
                    994:     for marker in foreign cygnus ; do
                    995:    _marker_found_message=${_marker_found_message_intro}${marker}${_marker_found_message_mid}
                    996:    _marker_found="`grep 'AM_INIT_AUTOMAKE.*'${marker} $CONFIGURE`"
                    997:    if [ ! "x$_marker_found" = "x" ] ; then
                    998:        $VERBOSE_ECHO "${_marker_found_message}`basename \"$CONFIGURE\"`"
                    999:        break
                   1000:    fi
                   1001:    if test -f "`dirname \"$CONFIGURE\"/Makefile.am`" ; then
                   1002:        _marker_found="`grep 'AUTOMAKE_OPTIONS.*'${marker} Makefile.am`"
                   1003:        if [ ! "x$_marker_found" = "x" ] ; then
                   1004:        $VERBOSE_ECHO "${_marker_found_message}Makefile.am"
                   1005:        break
                   1006:        fi
                   1007:    fi
                   1008:     done
                   1009:     if [ "x${_marker_found}" = "x" ] ; then
                   1010:    _suggest_foreign=no
                   1011:    for file in AUTHORS COPYING ChangeLog INSTALL NEWS README ; do
                   1012:        if [ ! -f $file ] ; then
                   1013:        $VERBOSE_ECHO "Touching ${file} since it does not exist"
                   1014:        _suggest_foreign=yes
                   1015:        touch $file
                   1016:        fi
                   1017:    done
                   1018: 
                   1019:    if [ "x${_suggest_foreign}" = "xyes" ] ; then
                   1020:        $ECHO
                   1021:        $ECHO "Warning: Several files expected of projects that conform to the GNU"
                   1022:        $ECHO "coding standards were not found.  The files were automatically added"
                   1023:        $ECHO "for you since you do not have a 'foreign' declaration specified."
                   1024:        $ECHO
                   1025:        $ECHO "Considered adding 'foreign' to AM_INIT_AUTOMAKE in `basename \"$CONFIGURE\"`"
                   1026:        if test -f "`dirname \"$CONFIGURE\"/Makefile.am`" ; then
                   1027:        $ECHO "or to AUTOMAKE_OPTIONS in your top-level Makefile.am file."
                   1028:        fi
                   1029:        $ECHO
                   1030:    fi
                   1031:     fi
                   1032: 
                   1033:     ##################################################
                   1034:     # make sure certain generated files do not exist #
                   1035:     ##################################################
                   1036:     for file in config.guess config.sub ltmain.sh ; do
                   1037:    if test -f "${_aux_dir}/${file}" ; then
                   1038:        $VERBOSE_ECHO "mv -f \"${_aux_dir}/${file}\" \"${_aux_dir}/${file}.backup\""
                   1039:        mv -f "${_aux_dir}/${file}" "${_aux_dir}/${file}.backup"
                   1040:    fi
                   1041:     done
                   1042: 
                   1043:     ############################
                   1044:     # search alternate m4 dirs #
                   1045:     ############################
                   1046:     SEARCH_DIRS=""
                   1047:     for dir in m4 ; do
                   1048:    if [ -d $dir ] ; then
                   1049:        $VERBOSE_ECHO "Found extra aclocal search directory: $dir"
                   1050:        SEARCH_DIRS="$SEARCH_DIRS -I $dir"
                   1051:    fi
                   1052:     done
                   1053: 
                   1054:     ######################################
                   1055:     # remove any previous build products #
                   1056:     ######################################
                   1057:     if test -d autom4te.cache ; then
                   1058:    $VERBOSE_ECHO "Found an autom4te.cache directory, deleting it"
                   1059:    $VERBOSE_ECHO "rm -rf autom4te.cache"
                   1060:    rm -rf autom4te.cache
                   1061:     fi
                   1062: # tcl/tk (and probably others) have a customized aclocal.m4, so can't delete it
                   1063: #     if test -f aclocal.m4 ; then
                   1064: #  $VERBOSE_ECHO "Found an aclocal.m4 file, deleting it"
                   1065: #  $VERBOSE_ECHO "rm -f aclocal.m4"
                   1066: #  rm -f aclocal.m4
                   1067: #     fi
                   1068: 
                   1069: } # end of initialize()
                   1070: 
                   1071: 
                   1072: ##############
                   1073: # initialize #
                   1074: ##############
                   1075: 
                   1076: # stash path
                   1077: START_PATH="`pwd`"
                   1078: 
                   1079: # Before running autoreconf or manual steps, some prep detection work
                   1080: # is necessary or useful.  Only needs to occur once per directory, but
                   1081: # does need to traverse the entire subconfigure hierarchy to protect
                   1082: # files from being clobbered even by autoreconf.
                   1083: recursive_protect
                   1084: 
                   1085: # start from where we started
                   1086: cd "$START_PATH"
                   1087: 
                   1088: # get ready to process
                   1089: initialize
                   1090: 
                   1091: 
                   1092: #########################################
                   1093: # DOWNLOAD_GNULIB_CONFIG_GUESS FUNCTION #
                   1094: #########################################
                   1095: 
                   1096: # TODO - should make sure wget/curl exist and/or work before trying to
                   1097: # use them.
                   1098: 
                   1099: download_gnulib_config_guess () {
                   1100:     # abuse gitweb to download gnulib's latest config.guess via HTTP
                   1101:     config_guess_temp="config.guess.$$.download"
                   1102:     ret=1
                   1103:     for __cmd in wget curl fetch ; do
                   1104:    $VERBOSE_ECHO "Checking for command ${__cmd}"
                   1105:    ${__cmd} --version > /dev/null 2>&1
                   1106:    ret=$?
                   1107:    if [ ! $ret = 0 ] ; then
                   1108:        continue
                   1109:         fi
                   1110: 
                   1111:    __cmd_version=`${__cmd} --version | head -n 1 | sed -e 's/^[^0-9]\+//' -e 's/ .*//'`
                   1112:    $VERBOSE_ECHO "Found ${__cmd} ${__cmd_version}"
                   1113: 
                   1114:    opts=""
                   1115:    case ${__cmd} in
                   1116:        wget)
                   1117:        opts="-O" 
                   1118:        ;;
                   1119:        curl)
                   1120:        opts="-o"
                   1121:        ;;
                   1122:        fetch)
                   1123:        opts="-t 5 -f"
                   1124:        ;;
                   1125:    esac
                   1126: 
                   1127:    $VERBOSE_ECHO "Running $__cmd \"${CONFIG_GUESS_URL}\" $opts \"${config_guess_temp}\""
                   1128:    eval "$__cmd \"${CONFIG_GUESS_URL}\" $opts \"${config_guess_temp}\"" > /dev/null 2>&1
                   1129:    if [ $? = 0 ] ; then
                   1130:        mv -f "${config_guess_temp}" ${_aux_dir}/config.guess
                   1131:        ret=0
                   1132:        break
                   1133:    fi
                   1134:     done
                   1135: 
                   1136:     if [ ! $ret = 0 ] ; then
                   1137:    $ECHO "Warning: config.guess download failed from: $CONFIG_GUESS_URL"
                   1138:    rm -f "${config_guess_temp}"
                   1139:     fi
                   1140: }
                   1141: 
                   1142: 
                   1143: ##############################
                   1144: # LIBTOOLIZE_NEEDED FUNCTION #
                   1145: ##############################
                   1146: libtoolize_needed () {
                   1147:     ret=1 # means no, don't need libtoolize
                   1148:     for feature in AC_PROG_LIBTOOL AM_PROG_LIBTOOL LT_INIT ; do
                   1149:    $VERBOSE_ECHO "Searching for $feature in $CONFIGURE"
                   1150:    found="`grep \"^$feature.*\" $CONFIGURE`"
                   1151:    if [ ! "x$found" = "x" ] ; then
                   1152:        ret=0 # means yes, need to run libtoolize
                   1153:        break
                   1154:    fi
                   1155:     done
                   1156:     return ${ret}
                   1157: }
                   1158: 
                   1159: 
                   1160: 
                   1161: ############################################
                   1162: # prepare build via autoreconf or manually #
                   1163: ############################################
                   1164: reconfigure_manually=no
                   1165: if [ "x$HAVE_AUTORECONF" = "xyes" ] ; then
                   1166:     $ECHO
                   1167:     $ECHO $ECHO_N "Automatically preparing build ... $ECHO_C"
                   1168: 
                   1169:     $VERBOSE_ECHO "$AUTORECONF $SEARCH_DIRS $AUTORECONF_OPTIONS"
                   1170:     autoreconf_output="`$AUTORECONF $SEARCH_DIRS $AUTORECONF_OPTIONS 2>&1`"
                   1171:     ret=$?
                   1172:     $VERBOSE_ECHO "$autoreconf_output"
                   1173: 
                   1174:     if [ ! $ret = 0 ] ; then
                   1175:    if [ "x$HAVE_ALT_LIBTOOLIZE" = "xyes" ] ; then
                   1176:        if [ ! "x`echo \"$autoreconf_output\" | grep libtoolize | grep \"No such file or directory\"`" = "x" ] ; then
                   1177:        $ECHO
                   1178:        $ECHO "Warning: autoreconf failed but due to what is usually a common libtool"
                   1179:        $ECHO "misconfiguration issue.  This problem is encountered on systems that"
                   1180:        $ECHO "have installed libtoolize under a different name without providing a"
                   1181:        $ECHO "symbolic link or without setting the LIBTOOLIZE environment variable."
                   1182:        $ECHO
                   1183:        $ECHO "Restarting the preparation steps with LIBTOOLIZE set to $LIBTOOLIZE"
                   1184: 
                   1185:        export LIBTOOLIZE
                   1186:        RUN_RECURSIVE=no
                   1187:        export RUN_RECURSIVE
                   1188:        untrap_abnormal
                   1189: 
                   1190:        $VERBOSE_ECHO sh $AUTOGEN_SH "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9"
                   1191:        sh "$AUTOGEN_SH" "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9"
                   1192:        exit $?
                   1193:        fi
                   1194:    fi
                   1195: 
                   1196:    $ECHO "Warning: $AUTORECONF failed"
                   1197: 
                   1198:    if test -f ltmain.sh ; then
                   1199:        $ECHO "libtoolize being run by autoreconf is not creating ltmain.sh in the auxillary directory like it should"
                   1200:    fi
                   1201: 
                   1202:    $ECHO "Attempting to run the preparation steps individually"
                   1203:    reconfigure_manually=yes
                   1204:     else
                   1205:    if [ "x$DOWNLOAD" = "xyes" ] ; then
                   1206:        if libtoolize_needed ; then
                   1207:        download_gnulib_config_guess
                   1208:        fi
                   1209:    fi
                   1210:     fi
                   1211: else
                   1212:     reconfigure_manually=yes
                   1213: fi
                   1214: 
                   1215: 
                   1216: ############################
                   1217: # LIBTOOL_FAILURE FUNCTION #
                   1218: ############################
                   1219: libtool_failure ( ) {
                   1220: 
                   1221:     # libtool is rather error-prone in comparison to the other
                   1222:     # autotools and this routine attempts to compensate for some
                   1223:     # common failures.  the output after a libtoolize failure is
                   1224:     # parsed for an error related to AC_PROG_LIBTOOL and if found, we
                   1225:     # attempt to inject a project-provided libtool.m4 file.
                   1226: 
                   1227:     _autoconf_output="$1"
                   1228: 
                   1229:     if [ "x$RUN_RECURSIVE" = "xno" ] ; then
                   1230:    # we already tried the libtool.m4, don't try again
                   1231:    return 1
                   1232:     fi
                   1233: 
                   1234:     if test -f "$LIBTOOL_M4" ; then
                   1235:    found_libtool="`$ECHO $_autoconf_output | grep AC_PROG_LIBTOOL`"
                   1236:    if test ! "x$found_libtool" = "x" ; then
                   1237:        if test -f acinclude.m4 ; then
                   1238:        rm -f acinclude.m4.$$.backup
                   1239:        $VERBOSE_ECHO "cat acinclude.m4 > acinclude.m4.$$.backup"
                   1240:        cat acinclude.m4 > acinclude.m4.$$.backup
                   1241:        fi
                   1242:        $VERBOSE_ECHO "cat \"$LIBTOOL_M4\" >> acinclude.m4"
                   1243:        chmod u+w acinclude.m4
                   1244:        cat "$LIBTOOL_M4" >> acinclude.m4
                   1245: 
                   1246:        # don't keep doing this
                   1247:        RUN_RECURSIVE=no
                   1248:        export RUN_RECURSIVE
                   1249:        untrap_abnormal
                   1250: 
                   1251:        $ECHO
                   1252:        $ECHO "Restarting the preparation steps with libtool macros in acinclude.m4"
                   1253:        $VERBOSE_ECHO sh $AUTOGEN_SH "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9"
                   1254:        sh "$AUTOGEN_SH" "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9"
                   1255:        exit $?
                   1256:    fi
                   1257:     fi
                   1258: }
                   1259: 
                   1260: 
                   1261: ###########################
                   1262: # MANUAL_AUTOGEN FUNCTION #
                   1263: ###########################
                   1264: manual_autogen ( ) {
                   1265: 
                   1266:     ##################################################
                   1267:     # Manual preparation steps taken are as follows: #
                   1268:     #   aclocal [-I m4]                              #
                   1269:     #   libtoolize --automake -c -f                  #
                   1270:     #   aclocal [-I m4]                              #
                   1271:     #   autoconf -f                                  #
                   1272:     #   autoheader                                   #
                   1273:     #   automake -a -c -f                            #
                   1274:     ##################################################
                   1275: 
                   1276:     ###########
                   1277:     # aclocal #
                   1278:     ###########
                   1279:     $VERBOSE_ECHO "$ACLOCAL $SEARCH_DIRS $ACLOCAL_OPTIONS"
                   1280:     aclocal_output="`$ACLOCAL $SEARCH_DIRS $ACLOCAL_OPTIONS 2>&1`"
                   1281:     ret=$?
                   1282:     $VERBOSE_ECHO "$aclocal_output"
                   1283:     if [ ! $ret = 0 ] ; then $ECHO "ERROR: $ACLOCAL failed" && exit 2 ; fi
                   1284: 
                   1285:     ##############
                   1286:     # libtoolize #
                   1287:     ##############
                   1288:     if libtoolize_needed ; then
                   1289:    if [ "x$HAVE_LIBTOOLIZE" = "xyes" ] ; then
                   1290:        $VERBOSE_ECHO "$LIBTOOLIZE $LIBTOOLIZE_OPTIONS"
                   1291:        libtoolize_output="`$LIBTOOLIZE $LIBTOOLIZE_OPTIONS 2>&1`"
                   1292:        ret=$?
                   1293:        $VERBOSE_ECHO "$libtoolize_output"
                   1294: 
                   1295:        if [ ! $ret = 0 ] ; then $ECHO "ERROR: $LIBTOOLIZE failed" && exit 2 ; fi
                   1296:    else
                   1297:        if [ "x$HAVE_ALT_LIBTOOLIZE" = "xyes" ] ; then
                   1298:        $VERBOSE_ECHO "$LIBTOOLIZE $ALT_LIBTOOLIZE_OPTIONS"
                   1299:        libtoolize_output="`$LIBTOOLIZE $ALT_LIBTOOLIZE_OPTIONS 2>&1`"
                   1300:        ret=$?
                   1301:        $VERBOSE_ECHO "$libtoolize_output"
                   1302: 
                   1303:        if [ ! $ret = 0 ] ; then $ECHO "ERROR: $LIBTOOLIZE failed" && exit 2 ; fi
                   1304:        fi
                   1305:    fi
                   1306: 
                   1307:    ###########
                   1308:    # aclocal #
                   1309:    ###########
                   1310:    # re-run again as instructed by libtoolize
                   1311:    $VERBOSE_ECHO "$ACLOCAL $SEARCH_DIRS $ACLOCAL_OPTIONS"
                   1312:    aclocal_output="`$ACLOCAL $SEARCH_DIRS $ACLOCAL_OPTIONS 2>&1`"
                   1313:    ret=$?
                   1314:    $VERBOSE_ECHO "$aclocal_output"
                   1315: 
                   1316:    # libtoolize might put ltmain.sh in the wrong place
                   1317:    if test -f ltmain.sh ; then
                   1318:        if test ! -f "${_aux_dir}/ltmain.sh" ; then
                   1319:        $ECHO
                   1320:        $ECHO "Warning:  $LIBTOOLIZE is creating ltmain.sh in the wrong directory"
                   1321:        $ECHO
                   1322:        $ECHO "Fortunately, the problem can be worked around by simply copying the"
                   1323:        $ECHO "file to the appropriate location (${_aux_dir}/).  This has been done for you."
                   1324:        $ECHO
                   1325:        $VERBOSE_ECHO "cp -p ltmain.sh \"${_aux_dir}/ltmain.sh\""
                   1326:        cp -p ltmain.sh "${_aux_dir}/ltmain.sh"
                   1327:        $ECHO $ECHO_N "Continuing build preparation ... $ECHO_C"
                   1328:        fi
                   1329:    fi # ltmain.sh
                   1330: 
                   1331:    if [ "x$DOWNLOAD" = "xyes" ] ; then
                   1332:        download_gnulib_config_guess
                   1333:    fi
                   1334:     fi # libtoolize_needed
                   1335: 
                   1336:     ############
                   1337:     # autoconf #
                   1338:     ############
                   1339:     $VERBOSE_ECHO
                   1340:     $VERBOSE_ECHO "$AUTOCONF $AUTOCONF_OPTIONS"
                   1341:     autoconf_output="`$AUTOCONF $AUTOCONF_OPTIONS 2>&1`"
                   1342:     ret=$?
                   1343:     $VERBOSE_ECHO "$autoconf_output"
                   1344: 
                   1345:     if [ ! $ret = 0 ] ; then
                   1346:    # retry without the -f and check for usage of macros that are too new
                   1347:    ac2_59_macros="AC_C_RESTRICT AC_INCLUDES_DEFAULT AC_LANG_ASSERT AC_LANG_WERROR AS_SET_CATFILE"
                   1348:    ac2_55_macros="AC_COMPILER_IFELSE AC_FUNC_MBRTOWC AC_HEADER_STDBOOL AC_LANG_CONFTEST AC_LANG_SOURCE AC_LANG_PROGRAM AC_LANG_CALL AC_LANG_FUNC_TRY_LINK AC_MSG_FAILURE AC_PREPROC_IFELSE"
                   1349:    ac2_54_macros="AC_C_BACKSLASH_A AC_CONFIG_LIBOBJ_DIR AC_GNU_SOURCE AC_PROG_EGREP AC_PROG_FGREP AC_REPLACE_FNMATCH AC_FUNC_FNMATCH_GNU AC_FUNC_REALLOC AC_TYPE_MBSTATE_T"
                   1350: 
                   1351:    macros_to_search=""
                   1352:    ac_major="`echo ${AUTOCONF_VERSION}. | cut -d. -f1 | sed 's/[^0-9]//g'`"
                   1353:    ac_minor="`echo ${AUTOCONF_VERSION}. | cut -d. -f2 | sed 's/[^0-9]//g'`"
                   1354: 
                   1355:    if [ $ac_major -lt 2 ] ; then
                   1356:        macros_to_search="$ac2_59_macros $ac2_55_macros $ac2_54_macros"
                   1357:    else
                   1358:        if [ $ac_minor -lt 54 ] ; then
                   1359:        macros_to_search="$ac2_59_macros $ac2_55_macros $ac2_54_macros"
                   1360:        elif [ $ac_minor -lt 55 ] ; then
                   1361:        macros_to_search="$ac2_59_macros $ac2_55_macros"
                   1362:        elif [ $ac_minor -lt 59 ] ; then
                   1363:        macros_to_search="$ac2_59_macros"
                   1364:        fi
                   1365:    fi
                   1366: 
                   1367:    configure_ac_macros=__none__
                   1368:    for feature in $macros_to_search ; do
                   1369:        $VERBOSE_ECHO "Searching for $feature in $CONFIGURE"
                   1370:        found="`grep \"^$feature.*\" $CONFIGURE`"
                   1371:        if [ ! "x$found" = "x" ] ; then
                   1372:        if [ "x$configure_ac_macros" = "x__none__" ] ; then
                   1373:            configure_ac_macros="$feature"
                   1374:        else
                   1375:            configure_ac_macros="$feature $configure_ac_macros"
                   1376:        fi
                   1377:        fi
                   1378:    done
                   1379:    if [ ! "x$configure_ac_macros" = "x__none__" ] ; then
                   1380:        $ECHO
                   1381:        $ECHO "Warning:  Unsupported macros were found in $CONFIGURE"
                   1382:        $ECHO
                   1383:        $ECHO "The `basename \"$CONFIGURE\"` file was scanned in order to determine if any"
                   1384:        $ECHO "unsupported macros are used that exceed the minimum version"
                   1385:        $ECHO "settings specified within this file.  As such, the following macros"
                   1386:        $ECHO "should be removed from configure.ac or the version numbers in this"
                   1387:        $ECHO "file should be increased:"
                   1388:        $ECHO
                   1389:        $ECHO "$configure_ac_macros"
                   1390:        $ECHO
                   1391:        $ECHO $ECHO_N "Ignorantly continuing build preparation ... $ECHO_C"
                   1392:    fi
                   1393: 
                   1394:    ###################
                   1395:    # autoconf, retry #
                   1396:    ###################
                   1397:    $VERBOSE_ECHO
                   1398:    $VERBOSE_ECHO "$AUTOCONF"
                   1399:    autoconf_output="`$AUTOCONF 2>&1`"
                   1400:    ret=$?
                   1401:    $VERBOSE_ECHO "$autoconf_output"
                   1402: 
                   1403:    if [ ! $ret = 0 ] ; then
                   1404:        # test if libtool is busted
                   1405:        libtool_failure "$autoconf_output"
                   1406: 
                   1407:        # let the user know what went wrong
                   1408:        cat <<EOF
                   1409: $autoconf_output
                   1410: EOF
                   1411:        $ECHO "ERROR: $AUTOCONF failed"
                   1412:        exit 2
                   1413:    else
                   1414:        # autoconf sans -f and possibly sans unsupported options succeed so warn verbosely
                   1415:        $ECHO
                   1416:        $ECHO "Warning: autoconf seems to have succeeded by removing the following options:"
                   1417:        $ECHO " AUTOCONF_OPTIONS=\"$AUTOCONF_OPTIONS\""
                   1418:        $ECHO
                   1419:        $ECHO "Removing those options should not be necessary and indicate some other"
                   1420:        $ECHO "problem with the build system.  The build preparation is highly suspect"
                   1421:        $ECHO "and may result in configuration or compilation errors.  Consider"
                   1422:        if [ "x$VERBOSE_ECHO" = "x:" ] ; then
                   1423:        $ECHO "rerunning the build preparation with verbose output enabled."
                   1424:        $ECHO " $AUTOGEN_SH --verbose"
                   1425:        else
                   1426:        $ECHO "reviewing the minimum GNU Autotools version settings contained in"
                   1427:        $ECHO "this script along with the macros being used in your `basename \"$CONFIGURE\"` file."
                   1428:        fi
                   1429:        $ECHO
                   1430:        $ECHO $ECHO_N "Continuing build preparation ... $ECHO_C"
                   1431:    fi # autoconf ret = 0
                   1432:     fi # autoconf ret = 0
                   1433: 
                   1434:     ##############
                   1435:     # autoheader #
                   1436:     ##############
                   1437:     need_autoheader=no
                   1438:     for feature in AM_CONFIG_HEADER AC_CONFIG_HEADER ; do
                   1439:    $VERBOSE_ECHO "Searching for $feature in $CONFIGURE"
                   1440:    found="`grep \"^$feature.*\" $CONFIGURE`"
                   1441:    if [ ! "x$found" = "x" ] ; then
                   1442:        need_autoheader=yes
                   1443:        break
                   1444:    fi
                   1445:     done
                   1446:     if [ "x$need_autoheader" = "xyes" ] ; then
                   1447:    $VERBOSE_ECHO "$AUTOHEADER $AUTOHEADER_OPTIONS"
                   1448:    autoheader_output="`$AUTOHEADER $AUTOHEADER_OPTIONS 2>&1`"
                   1449:    ret=$?
                   1450:    $VERBOSE_ECHO "$autoheader_output"
                   1451:    if [ ! $ret = 0 ] ; then $ECHO "ERROR: $AUTOHEADER failed" && exit 2 ; fi
                   1452:     fi # need_autoheader
                   1453: 
                   1454:     ############
                   1455:     # automake #
                   1456:     ############
                   1457:     need_automake=no
                   1458:     for feature in AM_INIT_AUTOMAKE ; do
                   1459:    $VERBOSE_ECHO "Searching for $feature in $CONFIGURE"
                   1460:    found="`grep \"^$feature.*\" $CONFIGURE`"
                   1461:    if [ ! "x$found" = "x" ] ; then
                   1462:        need_automake=yes
                   1463:        break
                   1464:    fi
                   1465:     done
                   1466: 
                   1467:     if [ "x$need_automake" = "xyes" ] ; then
                   1468:    $VERBOSE_ECHO "$AUTOMAKE $AUTOMAKE_OPTIONS"
                   1469:    automake_output="`$AUTOMAKE $AUTOMAKE_OPTIONS 2>&1`"
                   1470:    ret=$?
                   1471:    $VERBOSE_ECHO "$automake_output"
                   1472: 
                   1473:    if [ ! $ret = 0 ] ; then
                   1474: 
                   1475:        ###################
                   1476:        # automake, retry #
                   1477:        ###################
                   1478:        $VERBOSE_ECHO
                   1479:        $VERBOSE_ECHO "$AUTOMAKE $ALT_AUTOMAKE_OPTIONS"
                   1480:        # retry without the -f
                   1481:        automake_output="`$AUTOMAKE $ALT_AUTOMAKE_OPTIONS 2>&1`"
                   1482:        ret=$?
                   1483:        $VERBOSE_ECHO "$automake_output"
                   1484: 
                   1485:        if [ ! $ret = 0 ] ; then
                   1486:        # test if libtool is busted
                   1487:        libtool_failure "$automake_output"
                   1488: 
                   1489:        # let the user know what went wrong
                   1490:        cat <<EOF
                   1491: $automake_output
                   1492: EOF
                   1493:        $ECHO "ERROR: $AUTOMAKE failed"
                   1494:        exit 2
                   1495:        fi # automake retry
                   1496:    fi # automake ret = 0
                   1497:     fi # need_automake
                   1498: } # end of manual_autogen
                   1499: 
                   1500: 
                   1501: #####################################
                   1502: # RECURSIVE_MANUAL_AUTOGEN FUNCTION #
                   1503: #####################################
                   1504: recursive_manual_autogen ( ) {
                   1505: 
                   1506:     # run the build preparation steps manually for this directory
                   1507:     manual_autogen
                   1508: 
                   1509:     # for projects using recursive configure, run the build
                   1510:     # preparation steps for the subdirectories.
                   1511:     if [ ! "x$CONFIG_SUBDIRS" = "x" ] ; then
                   1512:    $VERBOSE_ECHO "Recursively configuring the following directories:"
                   1513:    $VERBOSE_ECHO "  $CONFIG_SUBDIRS"
                   1514:    for dir in $CONFIG_SUBDIRS ; do
                   1515:        $VERBOSE_ECHO "Processing recursive configure in $dir"
                   1516:        cd "$START_PATH"
                   1517:        cd "$dir"
                   1518: 
                   1519:        # new directory, prepare
                   1520:        initialize
                   1521: 
                   1522:        # run manual steps for the subdir and any others below
                   1523:        recursive_manual_autogen
                   1524:    done
                   1525:     fi
                   1526: }
                   1527: 
                   1528: 
                   1529: ################################
                   1530: # run manual preparation steps #
                   1531: ################################
                   1532: if [ "x$reconfigure_manually" = "xyes" ] ; then
                   1533:     $ECHO
                   1534:     $ECHO $ECHO_N "Preparing build ... $ECHO_C"
                   1535: 
                   1536:     recursive_manual_autogen
                   1537: fi
                   1538: 
                   1539: 
                   1540: #########################
                   1541: # restore and summarize #
                   1542: #########################
                   1543: cd "$START_PATH"
                   1544: 
                   1545: # restore COPYING and INSTALL from backup if necessary
                   1546: recursive_restore
                   1547: 
                   1548: # make sure we end up with a configure script
                   1549: config_ac="`locate_configure_template`"
                   1550: config="`echo $config_ac | sed 's/\.ac$//' | sed 's/\.in$//'`"
                   1551: if [ "x$config" = "x" ] ; then
                   1552:     $VERBOSE_ECHO "Could not locate the configure template (from `pwd`)"
                   1553: fi
                   1554: 
                   1555: # summarize
                   1556: $ECHO "done"
                   1557: $ECHO
                   1558: if test "x$config" = "x" -o ! -f "$config" ; then
                   1559:     $ECHO "WARNING: The $PROJECT build system should now be prepared but there"
                   1560:     $ECHO "does not seem to be a resulting configure file.  This is unexpected"
                   1561:     $ECHO "and likely the result of an error.  You should run $NAME_OF_AUTOGEN"
                   1562:     $ECHO "with the --verbose option to get more details on a potential"
                   1563:     $ECHO "misconfiguration."
                   1564: else
                   1565:     $ECHO "The $PROJECT build system is now prepared.  To build here, run:"
                   1566:     $ECHO "  $config"
                   1567:     $ECHO "  make"
                   1568: fi
                   1569: 
                   1570: 
                   1571: # Local Variables:
                   1572: # mode: sh
                   1573: # tab-width: 8
                   1574: # sh-basic-offset: 4
                   1575: # sh-indentation: 4
                   1576: # indent-tabs-mode: t
                   1577: # End:
                   1578: # ex: shiftwidth=4 tabstop=8

CVSweb interface <joel.bertrand@systella.fr>