• Luca Boccassi's avatar
    Check for libtoolize instead of libtool on Linux · 89fa904b
    Luca Boccassi authored
    autogen.sh has a check for the libtool binary as a mean to
    check if libtool is available. But distributions like Debian and
    Ubuntu are splitting the libtool package, and the libtool binary is now
    in a separate package. What autoconf actually need is not the libtool
    binary, but libtoolize and other macro files. So check for libtoolize
    instead. On the other hand, OSX only ships libtool, not libtoolize,
    and uses a pre-generated libtool script to build. So check for
    libtoolize first and then for libtool, and fail if neither can be
    found.
    89fa904b
autogen.sh 1.67 KB
#!/bin/sh

#    Copyright (c) 2007-2009 iMatix Corporation
#    Copyright (c) 2007-2011 Other contributors as noted in the AUTHORS file
#
#   This file is part of 0MQ.
#
#   0MQ is free software; you can redistribute it and/or modify it under
#   the terms of the GNU Lesser General Public License as published by
#   the Free Software Foundation; either version 3 of the License, or
#   (at your option) any later version.
#
#   0MQ is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU Lesser General Public License for more details.
#
#   You should have received a copy of the GNU Lesser General Public License
#   along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Script to generate all required files from fresh git checkout.

# Debian and Ubuntu do not shipt libtool anymore, but OSX does not ship libtoolize.
command -v libtoolize >/dev/null 2>&1
if  [ $? -ne 0 ]; then
    command -v libtool >/dev/null 2>&1
    if  [ $? -ne 0 ]; then
        echo "autogen.sh: error: could not find libtool.  libtool is required to run autogen.sh." 1>&2
        exit 1
    fi
fi

command -v autoreconf >/dev/null 2>&1
if [ $? -ne 0 ]; then
    echo "autogen.sh: error: could not find autoreconf.  autoconf and automake are required to run autogen.sh." 1>&2
    exit 1
fi

mkdir -p ./config
if [ $? -ne 0 ]; then
    echo "autogen.sh: error: could not create directory: ./config." 1>&2
    exit 1
fi

autoreconf --install --force --verbose -I config
if [ $? -ne 0 ]; then
    echo "autogen.sh: error: autoreconf exited with status $?" 1>&2
    exit 1
fi