*** empty log message ***
[bpt/guile.git] / autogen.sh
1 #!/bin/sh
2 # Usage: sh -x ./autogen.sh [WORKBOOK]
3
4 set -e
5
6 [ -f GUILE-VERSION ] || {
7 echo "autogen.sh: run this command only at the top of guile-core."
8 exit 1
9 }
10
11 ######################################################################
12 ### Find workbook and make symlinks.
13
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"
19 exit 1
20 fi
21 : found workbook at $workbook
22 workbook=`(cd $workbook ; pwd)`
23
24 workbookdistfiles="ANON-CVS HACKING SNAPSHOTS"
25 for f in $workbookdistfiles ; do
26 rm -f $f
27 ln -s $workbook/build/dist-files/$f $f
28 done
29 rm -f examples/example.gdbinit
30 ln -s $workbook/build/dist-files/.gdbinit examples/example.gdbinit
31
32 # TODO: This should be moved to dist-guile
33 mscripts=../guile-scripts
34 rm -f BUGS
35 $mscripts/render-bugs > BUGS
36
37 ######################################################################
38
39 # Make sure this matches the ACLOCAL invokation in Makefile.am
40
41 ./guile-aclocal.sh
42
43 ######################################################################
44 ### Libtool setup.
45
46 # Get a clean version.
47 libtoolize --force --copy --automake
48
49 ######################################################################
50
51
52 # configure.in reqs autoconf-2.53; try to find it
53 for suf in "-2.53" "2.53" "" false; do
54 version=`autoconf$suf --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 100 + $2}'`
55 if test "0$version" -eq 253; then
56 autoconf=autoconf$suf
57 autoheader=autoheader$suf
58 break
59 fi
60 done
61
62 if test -z "$autoconf"; then
63 echo "ERROR: Please install autoconf 2.53"
64 exit 1
65 fi
66 ################################################################
67
68 #detect automake version
69
70
71 # configure.in reqs autoconf-2.53; try to find it
72 for suf in "-1.6" "1.6" "" false; do
73 version=`automake$suf --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 10 + $2}'`
74 if test "0$version" -eq 16; then
75 automake=automake$suf
76 break
77 fi
78 done
79
80 if test -z "$automake"; then
81 echo "ERROR: Please install automake 1.6.x"
82 exit 1
83 fi
84
85
86 ################################################################
87 $autoheader
88 $autoconf
89
90 # Automake has a bug that will let it only add one copy of a missing
91 # file. We need two mdate-sh, tho, one in doc/ref/ and one in
92 # doc/tutorial/. We run automake twice as a workaround.
93
94 $automake --add-missing
95 $automake --add-missing
96
97 # Make sure that libltdl uses the same autoconf version as the rest.
98 #
99 echo "libltdl..."
100 (cd libltdl && aclocal)
101 (cd libltdl && autoconf)
102 (cd libltdl && $automake --gnu --add-missing)
103
104 echo "guile-readline..."
105 (cd guile-readline && ./autogen.sh)
106
107 echo "Now run configure and make."
108 echo "You must pass the \`--enable-maintainer-mode' option to configure."
109
110 # autogen.sh ends here