2 # Usage: sh -x ./autogen.sh [WORKBOOK]
6 [ -f GUILE-VERSION
] ||
{
7 echo "autogen.sh: run this command only at the top of guile-core."
11 ######################################################################
12 ### Find workbook and make symlinks.
14 workbook
=..
/workbook
# assume "cvs co hack"
15 test x
$1 = x || workbook
=$1
16 if [ ! -d $workbook ] ; then
17 echo "ERROR: could not find workbook dir"
18 echo " re-run like so: $0 WORKBOOK"
21 : found workbook
at $workbook
22 workbook
=`(cd $workbook ; pwd)`
24 workbookdistfiles
="ANON-CVS HACKING SNAPSHOTS"
25 for f
in $workbookdistfiles ; do
27 ln -s $workbook/build
/dist-files
/$f $f
29 rm -f examples
/example.gdbinit
30 ln -s $workbook/build
/dist-files
/.gdbinit examples
/example.gdbinit
32 # TODO: This should be moved to dist-guile
33 mscripts
=..
/guile-scripts
35 $mscripts/render-bugs
> BUGS
37 ######################################################################
39 # Make sure this matches the ACLOCAL invokation in Makefile.am
43 ######################################################################
46 # Get a clean version.
48 libtoolize
--force --copy --automake --ltdl
50 # Fix older versions of libtool.
51 # Make sure we use a ./configure.in compatible autoconf in ./libltdl/
52 if [ -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
59 # Maybe patch ltdl.c. This is only needed for 1.4.2 and earlier.
60 if 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 @@
65 find_handle_callback (filename, data, ignored)
70 lt_dlhandle *handle = (lt_dlhandle *) data;
71 - int found = access (filename, R_OK);
72 + int found = !access (filename, F_OK);
74 /* Bail out if file cannot be read... */
78 /* Try to dlopen the file, but do not continue searching in any
83 echo "WARNING: could not patch libltdl, but this is probably OK."
86 ######################################################################
89 # configure.in reqs autoconf-2.53; try to find it
90 for 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
94 autoheader
=autoheader
$suf
99 if test -z "$autoconf"; then
100 echo "ERROR: Please install autoconf 2.53"
103 ################################################################
105 #detect automake version
108 # configure.in reqs autoconf-2.53; try to find it
109 for 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
117 if test -z "$automake"; then
118 echo "ERROR: Please install automake 1.6.x"
123 ################################################################
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.
131 $automake --add-missing
132 $automake --add-missing
134 # Make sure that libltdl uses the same autoconf version as the rest.
137 (cd libltdl
&& aclocal
)
138 (cd libltdl
&& autoconf
)
139 (cd libltdl
&& $automake --gnu --add-missing)
141 echo "guile-readline..."
142 (cd guile-readline
&& .
/autogen.sh
)
144 echo "Now run configure and make."
145 echo "You must pass the \`--enable-maintainer-mode' option to configure."
147 # autogen.sh ends here