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