1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# -*- Autotest -*-
AT_BANNER([Compatibility with other tools.])
# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software
# Foundation, Inc.
#
# 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, 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., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
## --------- ##
## Libtool. ##
## --------- ##
AT_SETUP([Libtool])
# Skip this test if there is no libtoolize.
AT_CHECK([libtoolize --version || exit 77],
ignore, ignore, ignore)
# CVS Autoconf probably does not work with too old Libtools.
AT_CHECK([[
case `libtoolize --version |
sed -n '/^.* \([0-9][0-9.a-z]*\)$/{
s//\1/
p
q
}'` in
0.* ) exit 77;;
1.[0123]* ) exit 77;;
esac]],
ignore, ignore, ignore)
# FIXME: Once Libtool `configure.ac' aware, change this.
# Using a configure.in, have libtoolize confess where libtool.m4 is.
AT_DATA([configure.in],
[[AC_INIT
# The other tests are relying on Autoconf's own copy of install-sh
# etc. via AC_CONFIG_AUX_DIR(..). Don't do that here, since we don't
# want libtoolize to pollute Autoconf's srcdir.
AC_CONFIG_AUX_DIR(.)
AC_PROG_LIBTOOL
]])
# Some libtoolize complain if you don't have an aclocal.m4.
AT_CHECK([touch aclocal.m4])
AT_CHECK([libtoolize], 0, [stdout], ignore)
# Some broken libtoolize fail to install a functional config.guess.
AT_CHECK([./config.guess || exit 77], [], [ignore], [ignore])
# Make sure at-path contains something valid, and let the test suite
# display it when verbose. And fail, skipping would too easily hide
# problems.
AT_CHECK([sed -n ["s,^.*\`\\(/[^']*\\)'.*,\\1,p"] stdout], 0, [stdout])
AT_CHECK([test -f "`cat stdout`"])
# libtoolize installed everything but install-sh...
touch install-sh
# Build the concatenation of libtool.m4 and configure.ac.
cp `cat stdout` configure.in
cat >>configure.in <<_EOF
AC_INIT
AC_CONFIG_AUX_DIR(.)
AC_CANONICAL_SYSTEM
AC_PROG_LIBTOOL
_EOF
# FIXME: Once Libtool really fixed, stop ignoring stderr.
AT_CHECK_AUTOCONF([], [], [], [ignore])
# Ignore stderr, because ltconfig always loads the cache, which is
# /dev/null, and some shells choke on this. For instance with Bash
# 2.05, you get:
#
# loading cache /dev/null within ltconfig
# ./ltconfig: .: /dev/null: not a regular file
#
# But the script executes properly.
AT_CHECK_CONFIGURE([], [], [], [ignore])
AT_CLEANUP(install-sh ltconfig libtool at-path ltmain.sh config.guess config.sub)
|