X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=buildconf.sh;h=96715929c6ced752d67261d0c76b6f106b20e994;hp=1ded9da60d8fde5b4b2a214aae1466d87b8f6811;hb=99f1879827d5be93a6363b5adbc83b824135dd88;hpb=69392bd6f5e182f413fd406c598d4ae0108f166c diff --git a/buildconf.sh b/buildconf.sh index 1ded9da..9671592 100755 --- a/buildconf.sh +++ b/buildconf.sh @@ -1,9 +1,135 @@ #!/bin/sh -# $Id: buildconf.sh,v 1.2 2001-02-26 22:52:54 adam Exp $ -aclocal || exit 1 -libtoolize --force >/dev/null 2>&1 || exit 2 -automake -a >/dev/null 2>&1 || exit 3 -autoconf || exit 4 + +automake=automake +aclocal=aclocal +autoconf=autoconf +libtoolize=libtoolize +autoheader=autoheader + +test -d config || mkdir config +if [ -d .git ]; then + git submodule init + git submodule update +fi +if [ "`uname -s`" = FreeBSD ]; then + # FreeBSD intalls the various auto* tools with version numbers + echo "Using special configuration for FreeBSD ..." + automake=automake19 + aclocal="aclocal19 -I /usr/local/share/aclocal" + autoconf=autoconf259 + libtoolize=libtoolize15 + autoheader=autoheader259 +fi + +if [ "`uname -s`" = Darwin ]; then + echo "Using special configuration for Darwin/MacOS ..." + libtoolize=glibtoolize +fi + +if $automake --version|head -1 |grep '1\.[4-7]'; then + echo "automake 1.4-1.7 is active. You should use automake 1.8 or later" + if [ -f /etc/debian_version ]; then + echo " sudo apt-get install automake1.9" + echo " sudo update-alternatives --config automake" + fi + exit 1 +fi + +set -x +$aclocal -I m4 +if grep AC_CONFIG_HEADERS configure.ac >/dev/null; then + $autoheader +fi +if grep AM_PROG_LIBTOOL configure.ac >/dev/null; then + has_libtool=true +else + has_libtool=false +fi + +$libtoolize --automake --force +$automake --add-missing +$autoconf +set - if [ -f config.cache ]; then rm config.cache fi + +enable_configure=false +enable_help=true +sh_flags="" +conf_flags="" +case $1 in + -d) + sh_cflags="-g -Wall -Wdeclaration-after-statement -Wstrict-prototypes" + sh_cxxflags="-g -Wall" + enable_configure=true + enable_help=false + shift + ;; + -c) + sh_cflags="" + sh_cxxflags="" + enable_configure=true + enable_help=false + shift + ;; +esac + +if $enable_configure; then + if [ -n "$sh_cflags" ]; then + if $has_libtool; then + CFLAGS="$sh_cflags" CXXFLAGS="$sh_cxxflags" ./configure --disable-shared --enable-static $* + else + CFLAGS="$sh_cflags" CXXFLAGS="$sh_cxxflags" ./configure $* + fi + else + ./configure $* + fi +fi +if $enable_help; then + cat <