10b498c4a5e31fa36c53c2970f1ffa77e3b2a5cf
[gpgme.git] / autogen.sh
1 #!/bin/sh
2 # Run this to generate all the initial makefiles, etc.
3 # It is only needed for the CVS version.
4
5 PGM=GPGME
6 lib_config_files=""
7 autoconf_vers=2.13
8 automake_vers=1.4
9 aclocal_vers=1.4
10 libtool_vers=1.3
11
12 DIE=no
13 if test "$1" = "--build-w32"; then
14     shift
15     target=i386--mingw32
16     if [ ! -f ./config.guess ]; then
17         echo "./config.guess not found" >&2
18         exit 1
19     fi
20     host=`./config.guess`
21         
22     if ! mingw32 --version >/dev/null; then
23         echo "We need at least version 0.3 of MingW32/CPD" >&2
24         exit 1
25     fi
26
27     if [ -f config.h ]; then
28         if grep HAVE_DOSISH_SYSTEM config.h | grep undef >/dev/null; then
29             echo "Pease run a 'make distclean' first" >&2
30             exit 1
31         fi
32     fi
33
34     crossinstalldir=`mingw32 --install-dir`
35     crossbindir=`mingw32 --get-bindir 2>/dev/null` \
36                || crossbindir="$crossinstalldir/bin"
37     crosslibdir=`mingw32 --get-libdir 2>/dev/null` \
38                || crosslibdir="$crossinstalldir/i386--mingw32/lib"
39     crossincdir=`mingw32 --get-includedir 2>/dev/null` \
40                || crossincdir="$crossinstalldir/i386--mingw32/include"
41     CC=`mingw32 --get-path gcc`
42     CPP=`mingw32 --get-path cpp`
43     AR=`mingw32 --get-path ar`
44     RANLIB=`mingw32 --get-path ranlib`
45     export CC CPP AR RANLIB 
46
47     disable_foo_tests=""
48     if [ -n "$lib_config_files" ]; then
49         for i in $lib_config_files; do
50             j=`echo $i | tr '[a-z-]' '[A-Z_]'`
51             eval "$j=${crossbindir}/$i"
52             export $j
53             disable_foo_tests="$disable_foo_tests --disable-`echo $i| \
54                            sed 's,-config$,,'`-test"
55             if [ ! -f "${crossbindir}/$i" ]; then                   
56                 echo "$i not installed for MingW32" >&2
57                 DIE=yes
58             fi
59         done
60     fi
61     [ $DIE = yes ] && exit 1
62
63     ./configure --host=${host} --target=${target}  ${disable_foo_tests} \
64                 --bindir=${crossbindir} --libdir=${crosslibdir} \
65                 --includedir=${crossincdir}  $*
66     exit $?
67 fi
68
69
70
71 if (autoconf --version) < /dev/null > /dev/null 2>&1 ; then
72     if (autoconf --version | awk 'NR==1 { if( $3 >= '$autoconf_vers') \
73                                exit 1; exit 0; }');
74     then
75        echo "**Error**: "\`autoconf\'" is too old."
76        echo '           (version ' $autoconf_vers ' or newer is required)'
77        DIE="yes"
78     fi
79 else
80     echo
81     echo "**Error**: You must have "\`autoconf\'" installed to compile $PGM."
82     echo '           (version ' $autoconf_vers ' or newer is required)'
83     DIE="yes"
84 fi
85
86 if (automake --version) < /dev/null > /dev/null 2>&1 ; then
87   if (automake --version | awk 'NR==1 { if( $4 >= '$automake_vers') \
88                              exit 1; exit 0; }');
89      then
90      echo "**Error**: "\`automake\'" is too old."
91      echo '           (version ' $automake_vers ' or newer is required)'
92      DIE="yes"
93   fi
94   if (aclocal --version) < /dev/null > /dev/null 2>&1; then
95     if (aclocal --version | awk 'NR==1 { if( $4 >= '$aclocal_vers' ) \
96                                                 exit 1; exit 0; }' );
97     then
98       echo "**Error**: "\`aclocal\'" is too old."
99       echo '           (version ' $aclocal_vers ' or newer is required)'
100       DIE="yes"
101     fi
102   else
103     echo
104     echo "**Error**: Missing "\`aclocal\'".  The version of "\`automake\'
105     echo "           installed doesn't appear recent enough."
106     DIE="yes"
107   fi
108 else
109     echo
110     echo "**Error**: You must have "\`automake\'" installed to compile $PGM."
111     echo '           (version ' $automake_vers ' or newer is required)'
112     DIE="yes"
113 fi
114
115
116 if (libtool --version) < /dev/null > /dev/null 2>&1 ; then
117     if (libtool --version | awk 'NR==1 { if( $4 >= '$libtool_vers') \
118                                exit 1; exit 0; }');
119     then
120        echo "**Error**: "\`libtool\'" is too old."
121        echo '           (version ' $libtool_vers ' or newer is required)'
122        DIE="yes"
123     fi
124 else
125     echo
126     echo "**Error**: You must have "\`libtool\'" installed to compile $PGM."
127     echo '           (version ' $libtool_vers ' or newer is required)'
128     DIE="yes"
129 fi
130
131 if test "$DIE" = "yes"; then
132     exit 1
133 fi
134
135 echo "Running libtoolize...  Ignore non-fatal messages."
136 echo "no" | libtoolize
137
138
139 echo "Running aclocal..."
140 aclocal
141 echo "Running autoheader..."
142 autoheader
143 echo "Running automake --gnu ..."
144 automake --gnu;
145 echo "Running autoconf..."
146 autoconf
147
148 if test "$*" = ""; then
149     conf_options="--enable-maintainer-mode"
150 else
151    conf_options=$*
152 fi
153 echo "Running ./configure $conf_options"
154 ./configure $conf_options
155
156
157
158