Use AC_LIBLTDL_CONVENIENCE instead of AC_LIBLTDL_INSTALLABLE.
[bpt/guile.git] / autogen.sh
CommitLineData
5d94b2fe 1#!/bin/sh
3be5cdf2 2# Usage: sh -x ./autogen.sh [WORKBOOK]
5d94b2fe 3
fc4fc6f6
RB
4set -e
5
0b49b6ae 6[ -f GUILE-VERSION ] || {
3be5cdf2 7 echo "autogen.sh: run this command only at the top of guile-core."
0b49b6ae
JB
8 exit 1
9}
10
3be5cdf2
TTN
11######################################################################
12### Find workbook and make symlinks.
13
14workbook=../workbook # assume "cvs co hack"
15test x$1 = x || workbook=$1
16if [ ! -d $workbook ] ; then
17 echo "ERROR: could not find workbook dir"
18 echo " re-run like so: $0 WORKBOOK"
19 exit 1
20fi
21: found workbook at $workbook
22workbook=`(cd $workbook ; pwd)`
23
2e562f3a 24workbookdistfiles="ANON-CVS HACKING SNAPSHOTS"
3be5cdf2
TTN
25for f in $workbookdistfiles ; do
26 rm -f $f
27 ln -s $workbook/build/dist-files/$f $f
28done
29rm -f examples/example.gdbinit
30ln -s $workbook/build/dist-files/.gdbinit examples/example.gdbinit
0859b96a
TTN
31
32# TODO: This should be moved to dist-guile
feec7802 33mscripts=../guile-scripts
0859b96a
TTN
34rm -f BUGS
35$mscripts/render-bugs > BUGS
36
3be5cdf2
TTN
37######################################################################
38
af304e84
MV
39# Make sure this matches the ACLOCAL invokation in Makefile.am
40
65545721
ML
41./guile-aclocal.sh
42
fc4fc6f6
RB
43######################################################################
44### Libtool setup.
45
46# Get a clean version.
47rm -rf libltdl
48libtoolize --force --copy --automake --ltdl
49
452e3661 50# Fix older versions of libtool.
fc4fc6f6 51# Make sure we use a ./configure.in compatible autoconf in ./libltdl/
452e3661
MV
52if [ -f libltdl/configure.in ]; then
53 mv libltdl/configure.in libltdl/configure.tmp
54 echo 'AC_PREREQ(2.50)' > libltdl/configure.in
55 cat libltdl/configure.tmp >> libltdl/configure.in
56 rm libltdl/configure.tmp
57fi
0f59dd5f
MV
58
59# Maybe patch ltdl.c. This is only needed for 1.4.2 and earlier.
60if patch libltdl/ltdl.c <<EOP
61--- ltdl.c~ Fri Apr 12 18:52:48 2002
62+++ ltdl.c Tue Jul 9 14:12:47 2002
63@@ -2246,15 +2246,15 @@
64 static int
65 find_handle_callback (filename, data, ignored)
66 char *filename;
67 lt_ptr data;
68 lt_ptr ignored;
69 {
70 lt_dlhandle *handle = (lt_dlhandle *) data;
71- int found = access (filename, R_OK);
72+ int found = !access (filename, F_OK);
73
74 /* Bail out if file cannot be read... */
75 if (!found)
76 return 0;
77
78 /* Try to dlopen the file, but do not continue searching in any
79 case. */
80EOP
81then true
82else
83 echo "WARNING: could not patch libltdl, but this is probably OK."
84fi
85
fc4fc6f6
RB
86######################################################################
87
34d19ef6
HWN
88
89# configure.in reqs autoconf-2.53; try to find it
90for suf in "-2.53" "2.53" "" false; do
91 version=`autoconf$suf --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 100 + $2}'`
92 if test "0$version" -eq 253; then
93 autoconf=autoconf$suf
94 autoheader=autoheader$suf
95 break
96 fi
97done
98
99if test -z "$autoconf"; then
100 echo "ERROR: Please install autoconf 2.53"
101 exit 1
102fi
afc8e572
HWN
103################################################################
104
105#detect automake version
106
107
108# configure.in reqs autoconf-2.53; try to find it
109for suf in "-1.6" "1.6" "" false; do
110 version=`automake$suf --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 10 + $2}'`
111 if test "0$version" -eq 16; then
112 automake=automake$suf
113 break
114 fi
115done
116
117if test -z "$automake"; then
118 echo "ERROR: Please install automake 1.6.x"
119 exit 1
120fi
34d19ef6
HWN
121
122
123################################################################
124$autoheader
125$autoconf
1901873f
MV
126
127# Automake has a bug that will let it only add one copy of a missing
128# file. We need two mdate-sh, tho, one in doc/ref/ and one in
129# doc/tutorial/. We run automake twice as a workaround.
130
afc8e572
HWN
131$automake --add-missing
132$automake --add-missing
0b49b6ae 133
cebb2d1f
MV
134# Make sure that libltdl uses the same autoconf version as the rest.
135#
fc4fc6f6 136echo "libltdl..."
feec7802 137(cd libltdl && aclocal)
fc4fc6f6 138(cd libltdl && autoconf)
afc8e572 139(cd libltdl && $automake --gnu --add-missing)
cebb2d1f 140
fc4fc6f6
RB
141echo "guile-readline..."
142(cd guile-readline && ./autogen.sh)
9e74987f
MV
143
144echo "Now run configure and make."
f2ae4555 145echo "You must pass the \`--enable-maintainer-mode' option to configure."
3be5cdf2
TTN
146
147# autogen.sh ends here