| #! /bin/sh |
| # libtoolize - Prepare a package to use libtool. |
| # @configure_input@ |
| # Copyright (C) 1996-1999 Free Software Foundation, Inc. |
| # Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 2 of the License, or |
| # (at your option) any later version. |
| # |
| # This program 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 |
| # General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write to the Free Software |
| # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
| # |
| # As a special exception to the GNU General Public License, if you |
| # distribute this file as part of a program that contains a |
| # configuration script generated by Autoconf, you may include it under |
| # the same distribution terms that you use for the rest of that program. |
| |
| # The name of this program. |
| progname=`echo "$0" | sed 's%^.*/%%'` |
| |
| # Constants. |
| PROGRAM=libtoolize |
| PACKAGE=@PACKAGE@ |
| VERSION=@VERSION@ |
| |
| # Directory names. |
| prefix=@prefix@ |
| datadir=@datadir@ |
| pkgdatadir=@pkgdatadir@ |
| aclocaldir=@aclocaldir@ |
| |
| libtool_m4="$aclocaldir/libtool.m4" |
| |
| dry_run=no |
| help="Try \`$progname --help' for more information." |
| rm="rm -f" |
| ln_s="ln -s" |
| cp="cp -f" |
| mkdir="mkdir" |
| |
| # Global variables. |
| automake= |
| copy= |
| force= |
| ltdl= |
| ltdl_tar= |
| status=0 |
| |
| for arg |
| do |
| case "$arg" in |
| --help) |
| cat <<EOF |
| Usage: $progname [OPTION]... |
| |
| Prepare a package to use libtool. |
| |
| --automake work silently, and assume that Automake is in use |
| -c, --copy copy files rather than symlinking them |
| --debug enable verbose shell tracing |
| -n, --dry-run print commands rather than running them |
| -f, --force replace existing files |
| --help display this message and exit |
| --ltdl install libltdl in a subdirectory |
| --ltdl-tar install the libltdl tarball |
| --version print version information and exit |
| |
| You must \`cd' to the top directory of your package before you run |
| \`$progname'. |
| EOF |
| exit 0 |
| ;; |
| |
| --version) |
| echo "$PROGRAM (GNU $PACKAGE) $VERSION" |
| exit 0 |
| ;; |
| |
| --automake) |
| automake=yes |
| ;; |
| |
| -c | --copy) |
| ln_s= |
| ;; |
| |
| --debug) |
| echo "$progname: enabling shell trace mode" |
| set -x |
| ;; |
| |
| -n | --dry-run) |
| if test "$dry_run" != yes; then |
| dry_run=yes |
| rm="echo $rm" |
| test -n "$ln_s" && ln_s="echo $ln_s" |
| cp="echo $cp" |
| mkdir="echo mkdir" |
| fi |
| ;; |
| |
| -f | --force) |
| force=yes |
| ;; |
| |
| --ltdl) |
| ltdl=yes |
| ;; |
| |
| --ltdl-tar) |
| ltdl_tar=yes |
| ;; |
| |
| -*) |
| echo "$progname: unrecognized option \`$arg'" 1>&2 |
| echo "$help" 1>&2 |
| exit 1 |
| ;; |
| |
| *) |
| echo "$progname: too many arguments" 1>&2 |
| echo "$help" 1>&2 |
| exit 1 |
| ;; |
| esac |
| done |
| |
| if test ! -f configure.in; then |
| echo "$progname: \`configure.in' does not exist" 1>&2 |
| echo "$help" 1>&2 |
| exit 1 |
| fi |
| |
| |
| files=`cd $pkgdatadir && ls` |
| if test -z "$files"; then |
| echo "$progname: cannot list files in \`$pkgdatadir'" 1>&2 |
| exit 1 |
| fi |
| files='config.guess config.sub ltconfig ltmain.sh' |
| |
| auxdir=. |
| auxdirline=`egrep '^AC_CONFIG_AUX_DIR' configure.in 2>/dev/null` |
| if test -n "$auxdirline"; then |
| # Handle explicit AC_CONFIG_AUX_DIR settings. |
| auxdir=`echo "$auxdirline" | sed 's/^AC_CONFIG_AUX_DIR(\([^)]*\)).*$/\1/'` |
| |
| if test "$auxdir" = "$auxdirline"; then |
| echo "$progname: invalid AC_CONFIG_AUX_DIR syntax: $auxdirline" 1>&2 |
| exit 1 |
| else |
| # Strip any quote brackets. |
| auxdir=`echo "$auxdir" | sed 's/^\[\(.*\)\]$/\1/g'` |
| case "$auxdir" in |
| *\$*) |
| echo "$progname: cannot handle variables in AC_CONFIG_AUX_DIR" 1>&2 |
| exit 1 |
| ;; |
| *) |
| ;; |
| esac |
| fi |
| else |
| # Try to discover auxdir the same way it is discovered by configure. |
| # Note that we default to the current directory. |
| for dir in . .. ../..; do |
| if test -f $dir/install-sh; then |
| auxdir=$dir |
| break |
| elif test -f $dir/install.sh; then |
| auxdir=$dir |
| break |
| fi |
| done |
| fi |
| |
| if test -z "$automake"; then |
| if egrep '^A[MC]_PROG_LIBTOOL' configure.in >/dev/null 2>&1; then : |
| else |
| echo "Remember to add \`AM_PROG_LIBTOOL' to \`configure.in'." |
| fi |
| |
| if egrep '^AC_PROG_RANLIB' configure.in >/dev/null 2>&1; then |
| echo "Using \`AC_PROG_RANLIB' is rendered obsolete by \`AM_PROG_LIBTOOL'" |
| fi |
| |
| if grep 'generated automatically by aclocal' aclocal.m4 >/dev/null 2>&1; then |
| updatemsg="update your \`aclocal.m4' by running aclocal" |
| else |
| updatemsg="add the contents of \`$libtool_m4' to \`aclocal.m4'" |
| fi |
| |
| if egrep '^AC_DEFUN\(A[MC]_PROG_LIBTOOL' aclocal.m4 >/dev/null 2>&1; then |
| # Check the version number on libtool.m4 and the one used in aclocal.m4. |
| instserial=`grep '^# serial ' $libtool_m4 | grep 'A[MC]_PROG_LIBTOOL' | sed -e 's/^# serial \([0-9][0-9]*\).*$/\1/; q'` |
| |
| if test -z "$instserial"; then |
| echo "$progname: warning: no serial number on \`$libtool_m4'" 1>&2 |
| else |
| # If the local macro has no serial number, we assume it's ancient. |
| localserial=`grep '^# serial ' aclocal.m4 | grep 'A[MC]_PROG_LIBTOOL' | sed -e 's/^# serial \([0-9][0-9]*\).*$/\1/; q'` |
| |
| test -z "$localserial" && localserial=0 |
| |
| if test "$localserial" -lt "$instserial"; then |
| echo "You should $updatemsg." |
| elif test "$localserial" -gt "$instserial"; then |
| echo "$progname: \`$libtool_m4' is serial $instserial, less than $localserial in \`aclocal.m4'" 1>&2 |
| if test -z "$force"; then |
| echo "Use \`--force' to replace newer libtool files with this version." 1>&2 |
| exit 1 |
| fi |
| echo "To remain compatible, you should $updatemsg." |
| fi |
| fi |
| else |
| echo "You should $updatemsg." |
| fi |
| fi |
| |
| |
| if test "x$ltdl" = xyes; then |
| test -d libltdl || $mkdir libltdl |
| ltdlfiles=`cd $pkgdatadir && ls libltdl/*` |
| else |
| ltdlfiles= |
| fi |
| |
| for file in $ltdlfiles; do |
| if test -f "$file" && test -z "$force"; then |
| test -z "$automake" && echo "$progname: \`$file' exists: use \`--force' to overwrite" 1>&2 |
| continue |
| fi |
| |
| $rm $file |
| if test -n "$ln_s" && $ln_s $pkgdatadir/$file $file; then : |
| elif $cp $pkgdatadir/$file $file; then : |
| else |
| echo "$progname: cannot copy \`$pkgdatadir/$file' to \`$file'" 1>&2 |
| status=1 |
| fi |
| done |
| |
| if test "x$ltdl_tar" = x"yes"; then |
| if test "x$dry_run" = x"yes"; then |
| echo "(cd $pkgdatadir > /dev/null && tar -cf - libltdl | gzip --best) > libltdl.tar.gz" |
| elif test -f libltdl.tar.gz && test -z "$force"; then |
| test -z "$automake" && echo "$progname: \`libltdl.tar.gz' exists: use \`--force' to overwrite" 1>&2 |
| else |
| (cd $pkgdatadir > /dev/null && tar -cf - libltdl | gzip --best) > libltdl.tar.gz |
| fi |
| fi |
| |
| # Change to the auxiliary directory. |
| if test "$auxdir" != .; then |
| test -z "$automake" && echo "Putting files in AC_CONFIG_AUX_DIR, \`$auxdir'." |
| cd $auxdir || exit 1 |
| fi |
| |
| for file in $files; do |
| if test -f "$file" && test -z "$force"; then |
| test -z "$automake" && echo "$progname: \`$file' exists: use \`--force' to overwrite" 1>&2 |
| continue |
| fi |
| |
| $rm $file |
| if test -n "$ln_s" && $ln_s $pkgdatadir/$file $file; then : |
| elif $cp $pkgdatadir/$file $file; then : |
| else |
| echo "$progname: cannot copy \`$pkgdatadir/$file' to \`$file'" 1>&2 |
| status=1 |
| fi |
| done |
| |
| exit $status |
| |
| # Local Variables: |
| # mode:shell-script |
| # sh-indentation:2 |
| # End: |