99e353ad451003f6fa5f1b549ad7910f49f8f21a
[android/toolchain/build.git] / configure.ac
1 #   Copyright (C) 2008, 2010, 2011 Google Inc.
2 #
3 # This file is free software; you can redistribute it and/or modify it
4 # under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful, but
9 # WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # General Public License for more details.
12 #
13
14 AC_INIT(android-tools,2.0)
15 AC_PREREQ(2.59)
16
17 AC_CONFIG_FILES([Makefile])
18
19 AC_CANONICAL_SYSTEM
20
21 # Get 'install' or 'install-sh' and its variants.
22 AC_PROG_INSTALL
23
24 # We only allow the following 3 targets:
25 # 1. arm-linux-androideabi (primary target)
26 # 2. arm-eabi (for Android kernel)
27 # 3. arm-newlib-eabi (for gcc testing)
28 # 4. i[3456]86-*-linux-gnu, x86-*-linux-gnu, i[3456]86-*-linux-android, x86-*-linux-android (for x86 targets)
29 # 5. mips*-*-linux* (for mips targets)
30
31 GDB_TARGET=$target
32 case $target in
33   arm-unknown-linux-androideabi | arm-unknown-eabi)
34     BUILD_ANDROID_GCC=yes
35     GDB_TARGET=arm-elf-linux
36     ;;
37   arm-newlib-elf)
38     BUILD_ANDROID_GCC=no
39     ;;
40   i[[3456]]86-*-linux-gnu | x86_64-*-linux-gnu | i[[3456]]86-*-linux-android | x86_64-*-linux-android)
41     BUILD_ANDROID_GCC=yes
42     ;;
43   mips*-*-linux*)
44     BUILD_ANDROID_GCC=yes
45     ;;
46   *)
47     AC_MSG_ERROR(Unsupported target $target.);
48 esac
49 AC_SUBST(BUILD_ANDROID_GCC)
50 AC_SUBST(GDB_TARGET)
51 AC_ARG_PROGRAM
52
53 # TOPLEVEL_CONFIGURE_ARGUMENTS lifted from top-level configure.ac in gcc.
54
55 # Export original configure arguments for use by sub-configures.
56 # Quote arguments with shell meta charatcers.
57 TOPLEVEL_CONFIGURE_ARGUMENTS=
58 TOPLEVEL_NO_GOLD_CONFIGURE_ARGUMENTS=
59
60 set -- "$progname" "$@"
61 for ac_arg
62 do
63   case "$ac_arg" in
64   *" "*|*"      "*|*[[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\']]*)
65     ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"`
66     # if the argument is of the form -foo=baz, quote the baz part only
67     ac_arg=`echo "'$ac_arg'" | sed "s/^'\([[-a-zA-Z0-9]]*=\)/\\1'/"` ;;
68   *) ;;
69   esac
70   # Add the quoted argument to the list.
71   TOPLEVEL_CONFIGURE_ARGUMENTS="$TOPLEVEL_CONFIGURE_ARGUMENTS $ac_arg"
72 done
73 if test "$silent" = yes; then
74   TOPLEVEL_CONFIGURE_ARGUMENTS="$TOPLEVEL_CONFIGURE_ARGUMENTS --silent"
75 fi
76 # Remove the initial space we just introduced and, as these will be
77 # expanded by make, quote '$'.
78 TOPLEVEL_CONFIGURE_ARGUMENTS=`echo "x$TOPLEVEL_CONFIGURE_ARGUMENTS" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
79 AC_SUBST(TOPLEVEL_CONFIGURE_ARGUMENTS)
80
81 # Base args.  Strip norecursion, cache-file, srcdir, host, build,
82 # target, nonopt, and variable assignments.  These are the ones we
83 # might not want to pass down to subconfigures.  Also strip
84 # program-prefix, program-suffix, and program-transform-name, so that
85 # we can pass down a consistent program-transform-name.
86 baseargs=
87 keep_next=no
88 skip_next=no
89 enable_gold=
90 enable_ld_default=
91 eval "set -- $ac_configure_args"
92 for ac_arg
93 do
94   if test X"$skip_next" = X"yes"; then
95     skip_next=no
96     continue
97   fi
98   if test X"$keep_next" = X"yes"; then
99     case $ac_arg in
100       *\'*)
101         ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
102     esac
103     baseargs="$baseargs '$ac_arg'"
104     keep_next=no
105     continue
106   fi
107
108   # Handle separated arguments.  Based on the logic generated by
109   # autoconf 2.59.
110   case $ac_arg in
111     *=* | --config-cache | -C | -disable-* | --disable-* \
112       | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
113       | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
114       | -with-* | --with-* | -without-* | --without-* | --x)
115       separate_arg=no
116       ;;
117     -*)
118       separate_arg=yes
119       ;;
120     *)
121       separate_arg=no
122       ;;
123   esac
124
125   case "$ac_arg" in
126     --no*)
127       continue
128       ;;
129     --c* | \
130     --sr* | \
131     --ho* | \
132     --bu* | \
133     --t* | \
134     --program-* | \
135     -cache_file* | \
136     -srcdir* | \
137     -host* | \
138     -build* | \
139     -target* | \
140     -program-prefix* | \
141     -program-suffix* | \
142     -program-transform-name* )
143       skip_next=$separate_arg
144       continue
145       ;;
146     -*)
147       # Strip argument from --enable-gold=*, since our binutils and
148       # gcc-4.6 take different arguments for dual linker support. We will
149       # pass --enable-gold=both/gold to binutils and --enable-gold=default
150       # gcc-4.6 if dual linker is needed.
151       case "$ac_arg" in
152         --enable-gold | --enable-gold=* )
153           enable_gold="$ac_arg"
154           ac_arg="--enable-gold"
155           ;;
156         --disable-gold )
157           enable_gold=
158           ;;
159         --enable-ld=default )
160           enable_ld_default=yes
161           ;;
162         --disable-ld )
163           enable_ld_default=
164           ;;
165       esac
166
167       # An option.  Add it.
168       case $ac_arg in
169         *\'*)
170           ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
171       esac
172       baseargs="$baseargs '$ac_arg'"
173       keep_next=$separate_arg
174       ;;
175     *)
176       # Either a variable assignment, or a nonopt (triplet).  Don't
177       # pass it down; let the Makefile handle this.
178       continue
179       ;;
180   esac
181 done
182 # Remove the initial space we just introduced and, as these will be
183 # expanded by make, quote '$'.
184 baseargs=`echo "x$baseargs" | sed -e 's/^x *//' -e 's,\\$,$$,g'`
185
186 # Add in --program-transform-name, after --program-prefix and
187 # --program-suffix have been applied to it.  Autoconf has already
188 # doubled dollar signs and backslashes in program_transform_name; we want
189 # the backslashes un-doubled, and then the entire thing wrapped in single
190 # quotes, because this will be expanded first by make and then by the shell.
191 # Also, because we want to override the logic in subdir configure scripts to
192 # choose program_transform_name, replace any s,x,x, with s,y,y,.
193 sed -e "s,\\\\\\\\,\\\\,g; s,','\\\\'',g; s/s,x,x,/s,y,y,/" <<EOF_SED > conftestsed.out
194 ${program_transform_name}
195 EOF_SED
196 gcc_transform_name=`cat conftestsed.out`
197 rm -f conftestsed.out
198 baseargs="$baseargs --program-transform-name='${gcc_transform_name}'"
199 if test "$silent" = yes; then
200   baseargs="$baseargs --silent"
201 fi
202
203 AC_SUBST(baseargs)
204 AC_SUBST(enable_gold)
205 AC_SUBST(enable_ld_default)
206
207 # Strip --with-sysroot, which is really "target" sysroot, from baseargs
208 # to form host_baseargs for building host libraries.  Passing target
209 # --with-sysroot is detrimantal (*1). Invent a new option
210 # --with-host-sysroot if needed in the future.
211 # Note that baseargs are quoted.
212 #
213 # (*1) path dependency_libs= in .libs/libgmpxx.lai has '=' prefix!
214 #
215 host_baseargs=
216 for ac_arg in $baseargs
217 do
218   case $ac_arg in
219   \'--with-sysroot=*\' )
220     ;;
221   *)
222     host_baseargs="$host_baseargs $ac_arg"
223     ;;
224   esac
225 done
226
227 AC_SUBST(host_baseargs)
228
229 ENABLE_GRAPHITE=no
230 AC_ARG_ENABLE([graphite],
231               AC_HELP_STRING([--enable-graphite],
232                              [Enable Graphite optimization @<:@default=no@:>@]))
233 graphite=yes
234 if test x${enableval} != xyes; then
235   graphite=no
236 fi
237 if test "$GCC_MIN_VERSION_4_5_0" == "no"; then
238   graphite=no
239 fi
240 ENABLE_GRAPHITE=$graphite
241 AC_SUBST(ENABLE_GRAPHITE)
242
243 # package to source path
244 case $srcdir in
245  /* | [A-Za-z]:*) package_to_srcdir=$srcdir ;;
246  *) package_to_srcdir=../$srcdir ;;
247 esac
248 AC_SUBST(package_to_srcdir)
249 #
250 # Specify tool component versions
251 #
252
253 # macro to check that we have a package. A package x exists if any one
254 # of the following exists (x is in the format of "tool-version"):
255 # 1. tool/x
256 # 2. tool/x.tar.gz
257 # 3. tool/x.tgz
258 # 4. tool/x.tar.bz2
259 m4_pattern_allow([^AC_MSG_ERROR$])
260 AC_DEFUN([ANDROID_CHECK_PACKAGE],
261 [x=$1; tool=$(echo "$x" | sed -e 's/-.*//'); version=$(echo "$x" | sed -e 's/[[^-]]*-//'); \
262 if test \( ! -d $srcdir/../$tool/$1 \) -a \( x"$version" != x"none"  \) ; then
263   if test -f $srcdir/../$tool/$1.tar ; then
264     mkdir -p temp-src && tar -C temp-src -xf $srcdir/../$tool/$1.tar
265   elif test -f $srcdir/../$tool/$1.tar.gz ; then
266     mkdir -p temp-src && tar -C temp-src -xzf $srcdir/../$tool/$1.tar.gz
267   elif test -f $srcdir/../$tool/$1.tgz ; then
268     mkdir -p temp-src && tar -C temp-src -xzf $srcdir/../$tool/$1.tgz
269   elif test -f $srcdir/../$tool/$1.tar.bz2 ; then
270     mkdir -p temp-src && tar -C temp-src -xjf $srcdir/../$tool/$1.tar.bz2
271   elif test -f $srcdir/../tarballs/$1.tar ; then
272     mkdir -p temp-src && tar -C temp-src -xf $srcdir/../tarballs/$1.tar
273   elif test -f $srcdir/../tarballs/$1.tar.gz ; then
274     mkdir -p temp-src && tar -C temp-src -xzf $srcdir/../tarballs/$1.tar.gz
275   elif test -f $srcdir/../tarballs/$1.tgz ; then
276     mkdir -p temp-src && tar -C temp-src -xzf $srcdir/../tarballs/$1.tgz
277   elif test -f $srcdir/../tarballs/$1.tar.bz2 ; then
278     mkdir -p temp-src && tar -C temp-src -xjf $srcdir/../tarballs/$1.tar.bz2
279   else
280     AC_MSG_ERROR('package $1 does not exist.')
281   fi
282 fi ])
283
284 # binutils version (default is 2.17)
285 AC_MSG_CHECKING([target binutils version to build])
286 AC_ARG_WITH([binutils-version],
287   [  --with-binutils-version=VERSION
288                           use binutils-VERSION (default is 2.17)],
289   [if test x"$withval" != x ; then
290      BINUTILS_VERSION="$withval"
291    fi],
292 [BINUTILS_VERSION="2.17"])
293 AC_MSG_RESULT($BINUTILS_VERSION)
294 AC_SUBST(BINUTILS_VERSION)
295 ANDROID_CHECK_PACKAGE(binutils-${BINUTILS_VERSION})
296
297 m4_pattern_allow(AM_INIT_AUTOMAKE)
298 # macro to find binutils version for dual linker support.
299 # For binutils-2.21 and up, add --enable-gold=default,
300 # else add --enable-gold=both/gold.
301 AC_DEFUN([FIND_BINUTILS_VERSION],
302 [binutils_version_file="${srcdir}/../binutils/$1/bfd/configure.in"
303 if test -f "${binutils_version_file}"; then
304   binutils_version_num=`grep AM_INIT_AUTOMAKE ${binutils_version_file} | \
305                         sed -n "s/[AM_INIT_AUTOMAKE][[^,]]*,*\([[^)]]*\))/\1/p"`
306   BINUTILS_MAJOR=`echo $binutils_version_num | sed -e "s/[[^0-9]].*//"`
307   BINUTILS_MINOR=`echo $binutils_version_num | \
308                   sed  -e "s/^[[0-9]]*\.//" -e "s/[[^0-9]].*//"`
309   if test "$BINUTILS_MAJOR" -gt 2 -o \
310           \( "$BINUTILS_MAJOR" -eq 2 -a "$BINUTILS_MINOR" -ge 21 \); then
311     $2_MIN_VERSION_2_21="yes"
312   else
313     $2_MIN_VERSION_2_21="no"
314   fi
315 else
316   # No configure file found. assume yes.
317   $2_MIN_VERSION_2_21="yes"
318 fi ])
319
320 FIND_BINUTILS_VERSION(binutils-${BINUTILS_VERSION},[BINUTILS])
321 AC_SUBST(BINUTILS_MIN_VERSION_2_21)
322
323 # gold binutils version (default is the same version as the main
324 # binutils package).
325 GOLD_VERSION="$BINUTILS_VERSION"
326 AC_MSG_CHECKING([target gold binutils version to build])
327 AC_ARG_WITH([gold-version],
328   [  --with-gold-version=VERSION
329                           use binutils-VERSION for gold (default is the main binutils version)],
330   [if test x"$withval" != x ; then
331      GOLD_VERSION="$withval"
332    fi])
333 AC_MSG_RESULT($GOLD_VERSION)
334 AC_SUBST(GOLD_VERSION)
335
336 # Skip check if we are using the main binutils for gold.
337 GOLD_MIN_VERSION_2_21="$BINUTILS_MIN_VERSION_2_21"
338 if test x"$GOLD_VERSION" != x"$BINUTILS_VERSION" ; then
339   ANDROID_CHECK_PACKAGE(binutils-${GOLD_VERSION})
340   FIND_BINUTILS_VERSION(binutils-${GOLD_VERSION},[GOLD])
341 fi
342 AC_SUBST(GOLD_MIN_VERSION_2_21)
343
344 # gcc version (default is 4.2.1)
345 AC_MSG_CHECKING([target gcc version to build])
346 AC_ARG_WITH([gcc-version],
347   [  --with-gcc-version=VERSION
348                           use gcc-VERSION (default is 4.2.1)],
349   [if test x"$withval" != x ; then
350      GCC_VERSION="$withval"
351    fi],
352 [GCC_VERSION="4.2.1"])
353 AC_MSG_RESULT($GCC_VERSION)
354 AC_SUBST(GCC_VERSION)
355 ANDROID_CHECK_PACKAGE(gcc-${GCC_VERSION})
356
357 # figure out if we need to build gmp and mpfr for gcc 4.3.0+ 
358 gcc_version_file="${srcdir}/../gcc/gcc-${GCC_VERSION}/gcc/BASE-VER"
359 if test -f "${gcc_version_file}"; then
360   GCC_MAJOR=`head -n 1 $gcc_version_file | sed  -e "s/[[^0-9]].*//"`
361   GCC_MINOR=`head -n 1 $gcc_version_file | \
362             sed  -e "s/^[[0-9]]*\.//" -e "s/[[^0-9]].*//"`
363   if test "$GCC_MAJOR" -gt 4 -o \
364           \( "$GCC_MAJOR" -eq 4 -a "$GCC_MINOR" -ge 3 \) ; then
365     GCC_MIN_VERSION_4_3_0="yes"
366   else
367     GCC_MIN_VERSION_4_3_0="no"
368   fi
369   if test "$GCC_MAJOR" -gt 4 -o \
370               \( "$GCC_MAJOR" -eq 4 -a "$GCC_MINOR" -ge 5 \) ; then
371     GCC_MIN_VERSION_4_5_0="yes"
372   else
373     GCC_MIN_VERSION_4_5_0="no"
374   fi
375   if test "$GCC_MAJOR" -gt 4 -o \
376               \( "$GCC_MAJOR" -eq 4 -a "$GCC_MINOR" -ge 8 \) ; then
377     GCC_MIN_VERSION_4_8_0="yes"
378   else
379     GCC_MIN_VERSION_4_8_0="no"
380   fi
381 else
382   # No version file, assume it is trunk
383   GCC_MIN_VERSION_4_3_0="yes"
384   GCC_MIN_VERSION_4_5_0="yes"
385   GCC_MIN_VERSION_4_8_0="yes"
386 fi
387 AC_SUBST(GCC_MIN_VERSION_4_3_0)
388 AC_SUBST(GCC_MIN_VERSION_4_5_0)
389 AC_SUBST(GCC_MIN_VERSION_4_8_0)
390
391 # newlib version (default is 1.16.0)
392 # newlib is only used for arm-newlib-eabi for testing
393 if test x$target == xarm-newlib-elf ; then 
394 AC_MSG_CHECKING([target newlib version to build])
395 AC_ARG_WITH([newlib-version],
396   [  --with-newlib-version=VERSION
397                           use newlib-VERSION (default is 1.16.0)],
398   [if test x"$withval" != x ; then
399      NEWLIB_VERSION="$withval"
400    fi],
401 [NEWLIB_VERSION="1.16.0"])
402 AC_MSG_RESULT($NEWLIB_VERSION)
403 AC_SUBST(NEWLIB_VERSION)
404 ANDROID_CHECK_PACKAGE(newlib-${NEWLIB_VERSION})
405 fi
406
407 if test "$GCC_MIN_VERSION_4_3_0" == "yes"; then
408 # gmp version (default is 4.2.2)
409 # gmp is only used for gcc version higher than 4.3.0
410 AC_MSG_CHECKING([gmp version])
411 AC_ARG_WITH([gmp-version],
412   [  --with-gmp-version=VERSION
413                           use gmp-VERSION (default is 4.2.2)],
414   [if test x"$withval" != x ; then
415      GMP_VERSION="$withval"
416    fi],
417 [GMP_VERSION="4.2.2"])
418 AC_MSG_RESULT($GMP_VERSION)
419 ANDROID_CHECK_PACKAGE(gmp-${GMP_VERSION})
420
421 # mpfr version (default is 2.3.0)
422 # mpfr is only used for gcc version higher than 4.3.0
423 AC_MSG_CHECKING([mpfr version])
424 AC_ARG_WITH([mpfr-version],
425   [  --with-mpfr-version=VERSION
426                           use mpfr-VERSION (default is 2.3.0)],
427   [if test x"$withval" != x ; then
428      MPFR_VERSION="$withval"
429    fi],
430 [MPFR_VERSION="2.3.0"])
431 AC_MSG_RESULT($MPFR_VERSION)
432 ANDROID_CHECK_PACKAGE(mpfr-${MPFR_VERSION})
433
434 fi
435 AC_SUBST(GMP_VERSION)
436 AC_SUBST(MPFR_VERSION)
437
438 if test "$GCC_MIN_VERSION_4_5_0" == "yes"; then
439 # mpc version (default is 0.8.1)
440 # mpc is only used for gcc version higher than 4.5.0
441 AC_MSG_CHECKING([mpc version])
442 AC_ARG_WITH([mpc-version],
443   [  --with-mpc-version=VERSION
444                           use mpc-VERSION (default is 0.8.1)],
445   [if test x"$withval" != x; then
446      MPC_VERSION="$withval"
447    fi],
448 [MPC_VERSION="0.8.1"])
449 AC_MSG_RESULT($MPC_VERSION)
450 ANDROID_CHECK_PACKAGE(mpc-${MPC_VERSION})
451 fi
452 AC_SUBST(MPC_VERSION)
453
454 if test "$ENABLE_GRAPHITE" == "yes"; then
455 # ppl version (default is 0.11.2)
456 # ppl is only used for gcc 4.5 and 4.6 with graphite optimization.
457 AC_MSG_CHECKING([ppl version])
458 AC_ARG_WITH([ppl-version],
459   [  --with-ppl-version=VERSION
460                          use ppl-VERSION (default is 0.11.2)],
461   [if test x"$withval" != x ; then
462      PPL_VERSION="$withval"
463    fi],
464 [PPL_VERSION="0.11.2"])
465 AC_MSG_RESULT($PPL_VERSION)
466 ANDROID_CHECK_PACKAGE(ppl-${PPL_VERSION})
467 fi
468 AC_SUBST(PPL_VERSION)
469
470 if test "$ENABLE_GRAPHITE" == "yes"; then
471 # cloog-ppl or cloog version (default is 0.15.9)
472 # cloog is only used for gcc 4.5+ with graphite optimization.
473 AC_MSG_CHECKING([cloog version])
474 AC_ARG_WITH([cloog-version],
475   [  --with-cloog-version=VERSION
476                            use cloog-VERSION (default is 0.15.9)],
477   [if test x"$withval" != x ; then
478      CLOOG_VERSION="$withval"
479    fi],
480 [CLOOG_VERSION="0.15.9"])
481 AC_MSG_RESULT($CLOOG_VERSION)
482 case $CLOOG_VERSION in
483   0.15*)
484     # CLooG/PPL relies on the PPL for version 0.15.x
485     CLOOG_VERSION="ppl-$CLOOG_VERSION"
486     ;;
487   0.16*|0.17*|0.18*)
488     # CLooG 0.16+ has its own embedded polyhedral library
489     CLOOG_BACKEND="--enable-cloog-backend=isl"
490     ;;
491   *)
492     AC_MSG_ERROR(Unsupported cloog version);
493 esac
494 AC_SUBST(CLOOG_BACKEND)
495 ANDROID_CHECK_PACKAGE(cloog-${CLOOG_VERSION})
496 fi
497 AC_SUBST(CLOOG_VERSION)
498
499 if test "$ENABLE_GRAPHITE" == "yes"; then
500 # isl version (default is 0.11.1)
501 # isl is only used for gcc 4.8+ with graphite optimization.
502 AC_MSG_CHECKING([isl version])
503 AC_ARG_WITH([isl-version],
504   [  --with-isl-version=VERSION
505                          use isl-VERSION (default is 0.11.1)],
506   [if test x"$withval" != x ; then
507      ISL_VERSION="$withval"
508    fi],
509 [ISL_VERSION="0.11.1"])
510 AC_MSG_RESULT($ISL_VERSION)
511 ANDROID_CHECK_PACKAGE(isl-${ISL_VERSION})
512 fi
513 AC_SUBST(ISL_VERSION)
514
515 # gdb version (default is 6.6)
516 AC_MSG_CHECKING([target gdb version to build])
517 AC_ARG_WITH([gdb-version],
518   [  --with-gdb-version=VERSION
519                           use gdb-VERSION (default is 6.6)],
520   [if test x"$withval" != x ; then
521      GDB_VERSION="$withval"
522    fi],
523 [GDB_VERSION="6.6"])
524 AC_MSG_RESULT($GDB_VERSION)
525 AC_SUBST(GDB_VERSION)
526 ANDROID_CHECK_PACKAGE(gdb-${GDB_VERSION})
527
528 # figure out if we need to build expat for gdb 7.2+
529 gdb_version_file="${srcdir}/../gdb/gdb-${GDB_VERSION}/gdb/version.in"
530 if test -f "${gdb_version_file}"; then
531   GDB_MAJOR=`head -n 1 $gdb_version_file | sed  -e "s/[[^0-9]].*//"`
532   GDB_MINOR=`head -n 1 $gdb_version_file | \
533             sed  -e "s/^[[0-9]]*\.//" -e "s/[[^0-9]].*//"`
534   if test "$GDB_MAJOR" -gt 7 -o \
535           \( "$GDB_MAJOR" -eq 7 -a "$GDB_MINOR" -ge 2 \) ; then
536     GDB_MIN_VERSION_7_2="yes"
537   else
538     GDB_MIN_VERSION_7_2="no"
539   fi
540 else
541   # No version file, assume it is trunk
542   GDB_MIN_VERSION_7_2="yes"
543 fi
544 AC_SUBST(GDB_MIN_VERSION_7_2)
545
546 if test "$GDB_MIN_VERSION_7_2" == "yes"; then
547 # expat version (default is 2.0.1)
548 # expat is only used for gdb version higher than 7.2
549 AC_MSG_CHECKING([expat version])
550 AC_ARG_WITH([expat-version],
551   [  --with-expat-version=VERSION
552                           use expat-VERSION (default is 2.0.1)],
553   [if test x"$withval" != x ; then
554      EXPAT_VERSION="$withval"
555    fi],
556 [EXPAT_VERSION="2.0.1"])
557 AC_MSG_RESULT($EXPAT_VERSION)
558 ANDROID_CHECK_PACKAGE(expat-${EXPAT_VERSION})
559 fi
560 AC_SUBST(EXPAT_VERSION)
561
562 # For certain targets, with gdb 7.2+, the proper gdb target is 
563 # arm-linux-android.
564 if test "$GDB_MIN_VERSION_7_2" == "yes"; then
565 case $target in
566   arm-unknown-linux-androideabi | arm-unknown-eabi)
567     GDB_TARGET=arm-linux-android
568     ;;
569     *)
570     ;;
571 esac
572 fi
573
574 # Sysroot location
575 AC_ARG_WITH([sysroot],
576   [  --with-sysroot=DIR
577                           use target sysroot in DIR],
578   [if test x"$withval" != x ; then
579      if test $build != $host ; then
580        case "$withval" in
581          "$prefix"|"${prefix%/}/"*)
582            ;;
583          *)
584            AC_MSG_ERROR('Target sysroot must be a subdirectory of <prefix> for canadian cross build $prefix ; $withval')
585            ;;
586        esac
587      fi
588
589      sysroot="$withval"
590    fi],
591 [if test $build != $host ; then
592    AC_MSG_ERROR('Target sysroot is not set for canadian cross build')
593  fi])
594 AC_SUBST(sysroot)
595
596 # Specify a location for mpc
597 AC_ARG_WITH(mpc, [  --with-mpc=PATH
598                           specify prefix directory for installed MPC package.],
599   [if test -d "$withval" ; then
600      have_mpc="$withval"
601      have_mpfr="$withval"
602      have_gmp="$withval"
603    elif test x"$withval" != x"no"; then
604      AC_MSG_ERROR(invalid value for --with-mpc)
605    else
606      have_mpc=no
607    fi],
608   [have_mpc=no])
609 AC_SUBST(have_mpc)
610
611 # Specify a location for mpfr
612 AC_ARG_WITH(mpfr, [  --with-mpfr=PATH
613                           specify prefix directory for installed MPFR package.],
614   [if test -d "$withval" ; then
615      have_mpfr="$withval"
616      have_gmp="$withval"
617    elif test x"$withval" != x"no"; then
618      AC_MSG_ERROR(invalid value for --with-mpfr)
619    else
620      have_mpfr=no
621    fi],
622   [have_mpfr=no])
623 AC_SUBST(have_mpfr)
624
625 # Specify a location for gmp
626 AC_ARG_WITH(gmp, [  --with-gmp=PATH
627                           specify prefix directory for the installed GMP package.],
628   [if test -d "$withval" ; then
629      have_gmp="$withval"
630    elif test x"$withval" != x"no"; then
631      AC_MSG_ERROR(invalid value for --with-gmp)
632    else
633      have_gmp=no
634    fi],
635   [have_gmp=no])
636 AC_SUBST(have_gmp)
637
638 # Specify a location for ppl
639 AC_ARG_WITH(ppl, [  --with-ppl=PATH
640                           specify prefix directory for the installed PPL package.],
641   [if test -d "$withval" ; then
642      have_ppl="$withval"
643    elif test x"$withval" != x"no"; then
644      AC_MSG_ERROR(invalid value for --with-ppl)
645    else
646      have_ppl=no
647    fi],
648   [have_ppl=no])
649 AC_SUBST(have_ppl)
650
651 # Specify a location for cloog
652 AC_ARG_WITH(cloog, [  --with-cloog=PATH
653                           specify prefix directory for the installed CLooG package.],
654   [if test -d "$withval" ; then
655      have_cloog="$withval"
656    elif test x"$withval" != x"no"; then
657      AC_MSG_ERROR(invalid value for --with-cloog)
658    else
659      have_cloog=no
660    fi],
661   [have_cloog=no])
662 AC_SUBST(have_cloog)
663
664 # Specify a location for isl
665 AC_ARG_WITH(isl, [  --with-isl=PATH
666                           specify prefix directory for the installed ISL package.],
667   [if test -d "$withval" ; then
668      have_isl="$withval"
669    elif test x"$withval" != x"no"; then
670      AC_MSG_ERROR(invalid value for --with-isl)
671    else
672      have_isl=no
673    fi],
674   [have_isl=no])
675 AC_SUBST(have_isl)
676
677 # Specify a location for expat
678 AC_ARG_WITH(expat, [  --with-expat=PATH
679                           specify prefix directory for the installed EXPAT package.],
680   [if test -d "$withval" ; then
681      have_expat="$withval"
682    elif test x"$withval" != x"no"; then
683      AC_MSG_ERROR(invalid value for --with-expat)
684    else
685      have_expat=no
686    fi],
687   [have_expat=no])
688 AC_SUBST(have_expat)
689
690 AC_OUTPUT