Core: Add mechanisms to test for address space randomization
[charm.git] / src / scripts / configure
1 #! /bin/sh
2 # Guess values for system-dependent variables and create Makefiles.
3 # Generated by GNU Autoconf 2.61.
4 #
5 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
6 # 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
7 # This configure script is free software; the Free Software Foundation
8 # gives unlimited permission to copy, distribute and modify it.
9 ## --------------------- ##
10 ## M4sh Initialization.  ##
11 ## --------------------- ##
12
13 # Be more Bourne compatible
14 DUALCASE=1; export DUALCASE # for MKS sh
15 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
16   emulate sh
17   NULLCMD=:
18   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
19   # is contrary to our usage.  Disable this feature.
20   alias -g '${1+"$@"}'='"$@"'
21   setopt NO_GLOB_SUBST
22 else
23   case `(set -o) 2>/dev/null` in
24   *posix*) set -o posix ;;
25 esac
26
27 fi
28
29
30
31
32 # PATH needs CR
33 # Avoid depending upon Character Ranges.
34 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
35 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
36 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
37 as_cr_digits='0123456789'
38 as_cr_alnum=$as_cr_Letters$as_cr_digits
39
40 # The user is always right.
41 if test "${PATH_SEPARATOR+set}" != set; then
42   echo "#! /bin/sh" >conf$$.sh
43   echo  "exit 0"   >>conf$$.sh
44   chmod +x conf$$.sh
45   if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
46     PATH_SEPARATOR=';'
47   else
48     PATH_SEPARATOR=:
49   fi
50   rm -f conf$$.sh
51 fi
52
53 # Support unset when possible.
54 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
55   as_unset=unset
56 else
57   as_unset=false
58 fi
59
60
61 # IFS
62 # We need space, tab and new line, in precisely that order.  Quoting is
63 # there to prevent editors from complaining about space-tab.
64 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
65 # splitting by setting IFS to empty value.)
66 as_nl='
67 '
68 IFS=" ""        $as_nl"
69
70 # Find who we are.  Look in the path if we contain no directory separator.
71 case $0 in
72   *[\\/]* ) as_myself=$0 ;;
73   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
74 for as_dir in $PATH
75 do
76   IFS=$as_save_IFS
77   test -z "$as_dir" && as_dir=.
78   test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
79 done
80 IFS=$as_save_IFS
81
82      ;;
83 esac
84 # We did not find ourselves, most probably we were run as `sh COMMAND'
85 # in which case we are not to be found in the path.
86 if test "x$as_myself" = x; then
87   as_myself=$0
88 fi
89 if test ! -f "$as_myself"; then
90   echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
91   { (exit 1); exit 1; }
92 fi
93
94 # Work around bugs in pre-3.0 UWIN ksh.
95 for as_var in ENV MAIL MAILPATH
96 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
97 done
98 PS1='$ '
99 PS2='> '
100 PS4='+ '
101
102 # NLS nuisances.
103 for as_var in \
104   LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
105   LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
106   LC_TELEPHONE LC_TIME
107 do
108   if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
109     eval $as_var=C; export $as_var
110   else
111     ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
112   fi
113 done
114
115 # Required to use basename.
116 if expr a : '\(a\)' >/dev/null 2>&1 &&
117    test "X`expr 00001 : '.*\(...\)'`" = X001; then
118   as_expr=expr
119 else
120   as_expr=false
121 fi
122
123 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
124   as_basename=basename
125 else
126   as_basename=false
127 fi
128
129
130 # Name of the executable.
131 as_me=`$as_basename -- "$0" ||
132 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
133          X"$0" : 'X\(//\)$' \| \
134          X"$0" : 'X\(/\)' \| . 2>/dev/null ||
135 echo X/"$0" |
136     sed '/^.*\/\([^/][^/]*\)\/*$/{
137             s//\1/
138             q
139           }
140           /^X\/\(\/\/\)$/{
141             s//\1/
142             q
143           }
144           /^X\/\(\/\).*/{
145             s//\1/
146             q
147           }
148           s/.*/./; q'`
149
150 # CDPATH.
151 $as_unset CDPATH
152
153
154 if test "x$CONFIG_SHELL" = x; then
155   if (eval ":") 2>/dev/null; then
156   as_have_required=yes
157 else
158   as_have_required=no
159 fi
160
161   if test $as_have_required = yes &&     (eval ":
162 (as_func_return () {
163   (exit \$1)
164 }
165 as_func_success () {
166   as_func_return 0
167 }
168 as_func_failure () {
169   as_func_return 1
170 }
171 as_func_ret_success () {
172   return 0
173 }
174 as_func_ret_failure () {
175   return 1
176 }
177
178 exitcode=0
179 if as_func_success; then
180   :
181 else
182   exitcode=1
183   echo as_func_success failed.
184 fi
185
186 if as_func_failure; then
187   exitcode=1
188   echo as_func_failure succeeded.
189 fi
190
191 if as_func_ret_success; then
192   :
193 else
194   exitcode=1
195   echo as_func_ret_success failed.
196 fi
197
198 if as_func_ret_failure; then
199   exitcode=1
200   echo as_func_ret_failure succeeded.
201 fi
202
203 if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
204   :
205 else
206   exitcode=1
207   echo positional parameters were not saved.
208 fi
209
210 test \$exitcode = 0) || { (exit 1); exit 1; }
211
212 (
213   as_lineno_1=\$LINENO
214   as_lineno_2=\$LINENO
215   test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
216   test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
217 ") 2> /dev/null; then
218   :
219 else
220   as_candidate_shells=
221     as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
222 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
223 do
224   IFS=$as_save_IFS
225   test -z "$as_dir" && as_dir=.
226   case $as_dir in
227          /*)
228            for as_base in sh bash ksh sh5; do
229              as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
230            done;;
231        esac
232 done
233 IFS=$as_save_IFS
234
235
236       for as_shell in $as_candidate_shells $SHELL; do
237          # Try only shells that exist, to save several forks.
238          if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
239                 { ("$as_shell") 2> /dev/null <<\_ASEOF
240 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
241   emulate sh
242   NULLCMD=:
243   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
244   # is contrary to our usage.  Disable this feature.
245   alias -g '${1+"$@"}'='"$@"'
246   setopt NO_GLOB_SUBST
247 else
248   case `(set -o) 2>/dev/null` in
249   *posix*) set -o posix ;;
250 esac
251
252 fi
253
254
255 :
256 _ASEOF
257 }; then
258   CONFIG_SHELL=$as_shell
259                as_have_required=yes
260                if { "$as_shell" 2> /dev/null <<\_ASEOF
261 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
262   emulate sh
263   NULLCMD=:
264   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
265   # is contrary to our usage.  Disable this feature.
266   alias -g '${1+"$@"}'='"$@"'
267   setopt NO_GLOB_SUBST
268 else
269   case `(set -o) 2>/dev/null` in
270   *posix*) set -o posix ;;
271 esac
272
273 fi
274
275
276 :
277 (as_func_return () {
278   (exit $1)
279 }
280 as_func_success () {
281   as_func_return 0
282 }
283 as_func_failure () {
284   as_func_return 1
285 }
286 as_func_ret_success () {
287   return 0
288 }
289 as_func_ret_failure () {
290   return 1
291 }
292
293 exitcode=0
294 if as_func_success; then
295   :
296 else
297   exitcode=1
298   echo as_func_success failed.
299 fi
300
301 if as_func_failure; then
302   exitcode=1
303   echo as_func_failure succeeded.
304 fi
305
306 if as_func_ret_success; then
307   :
308 else
309   exitcode=1
310   echo as_func_ret_success failed.
311 fi
312
313 if as_func_ret_failure; then
314   exitcode=1
315   echo as_func_ret_failure succeeded.
316 fi
317
318 if ( set x; as_func_ret_success y && test x = "$1" ); then
319   :
320 else
321   exitcode=1
322   echo positional parameters were not saved.
323 fi
324
325 test $exitcode = 0) || { (exit 1); exit 1; }
326
327 (
328   as_lineno_1=$LINENO
329   as_lineno_2=$LINENO
330   test "x$as_lineno_1" != "x$as_lineno_2" &&
331   test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
332
333 _ASEOF
334 }; then
335   break
336 fi
337
338 fi
339
340       done
341
342       if test "x$CONFIG_SHELL" != x; then
343   for as_var in BASH_ENV ENV
344         do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
345         done
346         export CONFIG_SHELL
347         exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
348 fi
349
350
351     if test $as_have_required = no; then
352   echo This script requires a shell more modern than all the
353       echo shells that I found on your system.  Please install a
354       echo modern shell, or manually run the script under such a
355       echo shell if you do have one.
356       { (exit 1); exit 1; }
357 fi
358
359
360 fi
361
362 fi
363
364
365
366 (eval "as_func_return () {
367   (exit \$1)
368 }
369 as_func_success () {
370   as_func_return 0
371 }
372 as_func_failure () {
373   as_func_return 1
374 }
375 as_func_ret_success () {
376   return 0
377 }
378 as_func_ret_failure () {
379   return 1
380 }
381
382 exitcode=0
383 if as_func_success; then
384   :
385 else
386   exitcode=1
387   echo as_func_success failed.
388 fi
389
390 if as_func_failure; then
391   exitcode=1
392   echo as_func_failure succeeded.
393 fi
394
395 if as_func_ret_success; then
396   :
397 else
398   exitcode=1
399   echo as_func_ret_success failed.
400 fi
401
402 if as_func_ret_failure; then
403   exitcode=1
404   echo as_func_ret_failure succeeded.
405 fi
406
407 if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
408   :
409 else
410   exitcode=1
411   echo positional parameters were not saved.
412 fi
413
414 test \$exitcode = 0") || {
415   echo No shell found that supports shell functions.
416   echo Please tell autoconf@gnu.org about your system,
417   echo including any error possibly output before this
418   echo message
419 }
420
421
422
423   as_lineno_1=$LINENO
424   as_lineno_2=$LINENO
425   test "x$as_lineno_1" != "x$as_lineno_2" &&
426   test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
427
428   # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
429   # uniformly replaced by the line number.  The first 'sed' inserts a
430   # line-number line after each line using $LINENO; the second 'sed'
431   # does the real work.  The second script uses 'N' to pair each
432   # line-number line with the line containing $LINENO, and appends
433   # trailing '-' during substitution so that $LINENO is not a special
434   # case at line end.
435   # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
436   # scripts with optimization help from Paolo Bonzini.  Blame Lee
437   # E. McMahon (1931-1989) for sed's syntax.  :-)
438   sed -n '
439     p
440     /[$]LINENO/=
441   ' <$as_myself |
442     sed '
443       s/[$]LINENO.*/&-/
444       t lineno
445       b
446       :lineno
447       N
448       :loop
449       s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
450       t loop
451       s/-\n.*//
452     ' >$as_me.lineno &&
453   chmod +x "$as_me.lineno" ||
454     { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
455    { (exit 1); exit 1; }; }
456
457   # Don't try to exec as it changes $[0], causing all sort of problems
458   # (the dirname of $[0] is not the place where we might find the
459   # original and so on.  Autoconf is especially sensitive to this).
460   . "./$as_me.lineno"
461   # Exit status is that of the last command.
462   exit
463 }
464
465
466 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
467   as_dirname=dirname
468 else
469   as_dirname=false
470 fi
471
472 ECHO_C= ECHO_N= ECHO_T=
473 case `echo -n x` in
474 -n*)
475   case `echo 'x\c'` in
476   *c*) ECHO_T=' ';;     # ECHO_T is single tab character.
477   *)   ECHO_C='\c';;
478   esac;;
479 *)
480   ECHO_N='-n';;
481 esac
482
483 if expr a : '\(a\)' >/dev/null 2>&1 &&
484    test "X`expr 00001 : '.*\(...\)'`" = X001; then
485   as_expr=expr
486 else
487   as_expr=false
488 fi
489
490 rm -f conf$$ conf$$.exe conf$$.file
491 if test -d conf$$.dir; then
492   rm -f conf$$.dir/conf$$.file
493 else
494   rm -f conf$$.dir
495   mkdir conf$$.dir
496 fi
497 echo >conf$$.file
498 if ln -s conf$$.file conf$$ 2>/dev/null; then
499   as_ln_s='ln -s'
500   # ... but there are two gotchas:
501   # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
502   # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
503   # In both cases, we have to default to `cp -p'.
504   ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
505     as_ln_s='cp -p'
506 elif ln conf$$.file conf$$ 2>/dev/null; then
507   as_ln_s=ln
508 else
509   as_ln_s='cp -p'
510 fi
511 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
512 rmdir conf$$.dir 2>/dev/null
513
514 if mkdir -p . 2>/dev/null; then
515   as_mkdir_p=:
516 else
517   test -d ./-p && rmdir ./-p
518   as_mkdir_p=false
519 fi
520
521 if test -x / >/dev/null 2>&1; then
522   as_test_x='test -x'
523 else
524   if ls -dL / >/dev/null 2>&1; then
525     as_ls_L_option=L
526   else
527     as_ls_L_option=
528   fi
529   as_test_x='
530     eval sh -c '\''
531       if test -d "$1"; then
532         test -d "$1/.";
533       else
534         case $1 in
535         -*)set "./$1";;
536         esac;
537         case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
538         ???[sx]*):;;*)false;;esac;fi
539     '\'' sh
540   '
541 fi
542 as_executable_p=$as_test_x
543
544 # Sed expression to map a string onto a valid CPP name.
545 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
546
547 # Sed expression to map a string onto a valid variable name.
548 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
549
550
551
552 exec 7<&0 </dev/null 6>&1
553
554 # Name of the host.
555 # hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
556 # so uname gets run too.
557 ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
558
559 #
560 # Initializations.
561 #
562 ac_default_prefix=/usr/local
563 ac_clean_files=
564 ac_config_libobj_dir=.
565 LIBOBJS=
566 cross_compiling=no
567 subdirs=
568 MFLAGS=
569 MAKEFLAGS=
570 SHELL=${CONFIG_SHELL-/bin/sh}
571
572 # Identity of this package.
573 PACKAGE_NAME=
574 PACKAGE_TARNAME=
575 PACKAGE_VERSION=
576 PACKAGE_STRING=
577 PACKAGE_BUGREPORT=
578
579 ac_unique_file="./Makefile"
580 ac_subst_vars='SHELL
581 PATH_SEPARATOR
582 PACKAGE_NAME
583 PACKAGE_TARNAME
584 PACKAGE_VERSION
585 PACKAGE_STRING
586 PACKAGE_BUGREPORT
587 exec_prefix
588 prefix
589 program_transform_name
590 bindir
591 sbindir
592 libexecdir
593 datarootdir
594 datadir
595 sysconfdir
596 sharedstatedir
597 localstatedir
598 includedir
599 oldincludedir
600 docdir
601 infodir
602 htmldir
603 dvidir
604 pdfdir
605 psdir
606 libdir
607 localedir
608 mandir
609 DEFS
610 ECHO_C
611 ECHO_N
612 ECHO_T
613 LIBS
614 build_alias
615 host_alias
616 target_alias
617 base_version
618 SYNC
619 WGET
620 LYNX
621 TELNET
622 UUDECODE
623 LIBOBJS
624 LTLIBOBJS'
625 ac_subst_files=''
626       ac_precious_vars='build_alias
627 host_alias
628 target_alias'
629
630
631 # Initialize some variables set by options.
632 ac_init_help=
633 ac_init_version=false
634 # The variables have the same names as the options, with
635 # dashes changed to underlines.
636 cache_file=/dev/null
637 exec_prefix=NONE
638 no_create=
639 no_recursion=
640 prefix=NONE
641 program_prefix=NONE
642 program_suffix=NONE
643 program_transform_name=s,x,x,
644 silent=
645 site=
646 srcdir=
647 verbose=
648 x_includes=NONE
649 x_libraries=NONE
650
651 # Installation directory options.
652 # These are left unexpanded so users can "make install exec_prefix=/foo"
653 # and all the variables that are supposed to be based on exec_prefix
654 # by default will actually change.
655 # Use braces instead of parens because sh, perl, etc. also accept them.
656 # (The list follows the same order as the GNU Coding Standards.)
657 bindir='${exec_prefix}/bin'
658 sbindir='${exec_prefix}/sbin'
659 libexecdir='${exec_prefix}/libexec'
660 datarootdir='${prefix}/share'
661 datadir='${datarootdir}'
662 sysconfdir='${prefix}/etc'
663 sharedstatedir='${prefix}/com'
664 localstatedir='${prefix}/var'
665 includedir='${prefix}/include'
666 oldincludedir='/usr/include'
667 docdir='${datarootdir}/doc/${PACKAGE}'
668 infodir='${datarootdir}/info'
669 htmldir='${docdir}'
670 dvidir='${docdir}'
671 pdfdir='${docdir}'
672 psdir='${docdir}'
673 libdir='${exec_prefix}/lib'
674 localedir='${datarootdir}/locale'
675 mandir='${datarootdir}/man'
676
677 ac_prev=
678 ac_dashdash=
679 for ac_option
680 do
681   # If the previous option needs an argument, assign it.
682   if test -n "$ac_prev"; then
683     eval $ac_prev=\$ac_option
684     ac_prev=
685     continue
686   fi
687
688   case $ac_option in
689   *=*)  ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
690   *)    ac_optarg=yes ;;
691   esac
692
693   # Accept the important Cygnus configure options, so we can diagnose typos.
694
695   case $ac_dashdash$ac_option in
696   --)
697     ac_dashdash=yes ;;
698
699   -bindir | --bindir | --bindi | --bind | --bin | --bi)
700     ac_prev=bindir ;;
701   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
702     bindir=$ac_optarg ;;
703
704   -build | --build | --buil | --bui | --bu)
705     ac_prev=build_alias ;;
706   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
707     build_alias=$ac_optarg ;;
708
709   -cache-file | --cache-file | --cache-fil | --cache-fi \
710   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
711     ac_prev=cache_file ;;
712   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
713   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
714     cache_file=$ac_optarg ;;
715
716   --config-cache | -C)
717     cache_file=config.cache ;;
718
719   -datadir | --datadir | --datadi | --datad)
720     ac_prev=datadir ;;
721   -datadir=* | --datadir=* | --datadi=* | --datad=*)
722     datadir=$ac_optarg ;;
723
724   -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
725   | --dataroo | --dataro | --datar)
726     ac_prev=datarootdir ;;
727   -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
728   | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
729     datarootdir=$ac_optarg ;;
730
731   -disable-* | --disable-*)
732     ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
733     # Reject names that are not valid shell variable names.
734     expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
735       { echo "$as_me: error: invalid feature name: $ac_feature" >&2
736    { (exit 1); exit 1; }; }
737     ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
738     eval enable_$ac_feature=no ;;
739
740   -docdir | --docdir | --docdi | --doc | --do)
741     ac_prev=docdir ;;
742   -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
743     docdir=$ac_optarg ;;
744
745   -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
746     ac_prev=dvidir ;;
747   -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
748     dvidir=$ac_optarg ;;
749
750   -enable-* | --enable-*)
751     ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
752     # Reject names that are not valid shell variable names.
753     expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
754       { echo "$as_me: error: invalid feature name: $ac_feature" >&2
755    { (exit 1); exit 1; }; }
756     ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
757     eval enable_$ac_feature=\$ac_optarg ;;
758
759   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
760   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
761   | --exec | --exe | --ex)
762     ac_prev=exec_prefix ;;
763   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
764   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
765   | --exec=* | --exe=* | --ex=*)
766     exec_prefix=$ac_optarg ;;
767
768   -gas | --gas | --ga | --g)
769     # Obsolete; use --with-gas.
770     with_gas=yes ;;
771
772   -help | --help | --hel | --he | -h)
773     ac_init_help=long ;;
774   -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
775     ac_init_help=recursive ;;
776   -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
777     ac_init_help=short ;;
778
779   -host | --host | --hos | --ho)
780     ac_prev=host_alias ;;
781   -host=* | --host=* | --hos=* | --ho=*)
782     host_alias=$ac_optarg ;;
783
784   -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
785     ac_prev=htmldir ;;
786   -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
787   | --ht=*)
788     htmldir=$ac_optarg ;;
789
790   -includedir | --includedir | --includedi | --included | --include \
791   | --includ | --inclu | --incl | --inc)
792     ac_prev=includedir ;;
793   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
794   | --includ=* | --inclu=* | --incl=* | --inc=*)
795     includedir=$ac_optarg ;;
796
797   -infodir | --infodir | --infodi | --infod | --info | --inf)
798     ac_prev=infodir ;;
799   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
800     infodir=$ac_optarg ;;
801
802   -libdir | --libdir | --libdi | --libd)
803     ac_prev=libdir ;;
804   -libdir=* | --libdir=* | --libdi=* | --libd=*)
805     libdir=$ac_optarg ;;
806
807   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
808   | --libexe | --libex | --libe)
809     ac_prev=libexecdir ;;
810   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
811   | --libexe=* | --libex=* | --libe=*)
812     libexecdir=$ac_optarg ;;
813
814   -localedir | --localedir | --localedi | --localed | --locale)
815     ac_prev=localedir ;;
816   -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
817     localedir=$ac_optarg ;;
818
819   -localstatedir | --localstatedir | --localstatedi | --localstated \
820   | --localstate | --localstat | --localsta | --localst | --locals)
821     ac_prev=localstatedir ;;
822   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
823   | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
824     localstatedir=$ac_optarg ;;
825
826   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
827     ac_prev=mandir ;;
828   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
829     mandir=$ac_optarg ;;
830
831   -nfp | --nfp | --nf)
832     # Obsolete; use --without-fp.
833     with_fp=no ;;
834
835   -no-create | --no-create | --no-creat | --no-crea | --no-cre \
836   | --no-cr | --no-c | -n)
837     no_create=yes ;;
838
839   -no-recursion | --no-recursion | --no-recursio | --no-recursi \
840   | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
841     no_recursion=yes ;;
842
843   -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
844   | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
845   | --oldin | --oldi | --old | --ol | --o)
846     ac_prev=oldincludedir ;;
847   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
848   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
849   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
850     oldincludedir=$ac_optarg ;;
851
852   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
853     ac_prev=prefix ;;
854   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
855     prefix=$ac_optarg ;;
856
857   -program-prefix | --program-prefix | --program-prefi | --program-pref \
858   | --program-pre | --program-pr | --program-p)
859     ac_prev=program_prefix ;;
860   -program-prefix=* | --program-prefix=* | --program-prefi=* \
861   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
862     program_prefix=$ac_optarg ;;
863
864   -program-suffix | --program-suffix | --program-suffi | --program-suff \
865   | --program-suf | --program-su | --program-s)
866     ac_prev=program_suffix ;;
867   -program-suffix=* | --program-suffix=* | --program-suffi=* \
868   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
869     program_suffix=$ac_optarg ;;
870
871   -program-transform-name | --program-transform-name \
872   | --program-transform-nam | --program-transform-na \
873   | --program-transform-n | --program-transform- \
874   | --program-transform | --program-transfor \
875   | --program-transfo | --program-transf \
876   | --program-trans | --program-tran \
877   | --progr-tra | --program-tr | --program-t)
878     ac_prev=program_transform_name ;;
879   -program-transform-name=* | --program-transform-name=* \
880   | --program-transform-nam=* | --program-transform-na=* \
881   | --program-transform-n=* | --program-transform-=* \
882   | --program-transform=* | --program-transfor=* \
883   | --program-transfo=* | --program-transf=* \
884   | --program-trans=* | --program-tran=* \
885   | --progr-tra=* | --program-tr=* | --program-t=*)
886     program_transform_name=$ac_optarg ;;
887
888   -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
889     ac_prev=pdfdir ;;
890   -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
891     pdfdir=$ac_optarg ;;
892
893   -psdir | --psdir | --psdi | --psd | --ps)
894     ac_prev=psdir ;;
895   -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
896     psdir=$ac_optarg ;;
897
898   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
899   | -silent | --silent | --silen | --sile | --sil)
900     silent=yes ;;
901
902   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
903     ac_prev=sbindir ;;
904   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
905   | --sbi=* | --sb=*)
906     sbindir=$ac_optarg ;;
907
908   -sharedstatedir | --sharedstatedir | --sharedstatedi \
909   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
910   | --sharedst | --shareds | --shared | --share | --shar \
911   | --sha | --sh)
912     ac_prev=sharedstatedir ;;
913   -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
914   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
915   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
916   | --sha=* | --sh=*)
917     sharedstatedir=$ac_optarg ;;
918
919   -site | --site | --sit)
920     ac_prev=site ;;
921   -site=* | --site=* | --sit=*)
922     site=$ac_optarg ;;
923
924   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
925     ac_prev=srcdir ;;
926   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
927     srcdir=$ac_optarg ;;
928
929   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
930   | --syscon | --sysco | --sysc | --sys | --sy)
931     ac_prev=sysconfdir ;;
932   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
933   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
934     sysconfdir=$ac_optarg ;;
935
936   -target | --target | --targe | --targ | --tar | --ta | --t)
937     ac_prev=target_alias ;;
938   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
939     target_alias=$ac_optarg ;;
940
941   -v | -verbose | --verbose | --verbos | --verbo | --verb)
942     verbose=yes ;;
943
944   -version | --version | --versio | --versi | --vers | -V)
945     ac_init_version=: ;;
946
947   -with-* | --with-*)
948     ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
949     # Reject names that are not valid shell variable names.
950     expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
951       { echo "$as_me: error: invalid package name: $ac_package" >&2
952    { (exit 1); exit 1; }; }
953     ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
954     eval with_$ac_package=\$ac_optarg ;;
955
956   -without-* | --without-*)
957     ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
958     # Reject names that are not valid shell variable names.
959     expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
960       { echo "$as_me: error: invalid package name: $ac_package" >&2
961    { (exit 1); exit 1; }; }
962     ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
963     eval with_$ac_package=no ;;
964
965   --x)
966     # Obsolete; use --with-x.
967     with_x=yes ;;
968
969   -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
970   | --x-incl | --x-inc | --x-in | --x-i)
971     ac_prev=x_includes ;;
972   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
973   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
974     x_includes=$ac_optarg ;;
975
976   -x-libraries | --x-libraries | --x-librarie | --x-librari \
977   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
978     ac_prev=x_libraries ;;
979   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
980   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
981     x_libraries=$ac_optarg ;;
982
983   -*) { echo "$as_me: error: unrecognized option: $ac_option
984 Try \`$0 --help' for more information." >&2
985    { (exit 1); exit 1; }; }
986     ;;
987
988   *=*)
989     ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
990     # Reject names that are not valid shell variable names.
991     expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
992       { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
993    { (exit 1); exit 1; }; }
994     eval $ac_envvar=\$ac_optarg
995     export $ac_envvar ;;
996
997   *)
998     # FIXME: should be removed in autoconf 3.0.
999     echo "$as_me: WARNING: you should use --build, --host, --target" >&2
1000     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
1001       echo "$as_me: WARNING: invalid host type: $ac_option" >&2
1002     : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
1003     ;;
1004
1005   esac
1006 done
1007
1008 if test -n "$ac_prev"; then
1009   ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1010   { echo "$as_me: error: missing argument to $ac_option" >&2
1011    { (exit 1); exit 1; }; }
1012 fi
1013
1014 # Be sure to have absolute directory names.
1015 for ac_var in   exec_prefix prefix bindir sbindir libexecdir datarootdir \
1016                 datadir sysconfdir sharedstatedir localstatedir includedir \
1017                 oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
1018                 libdir localedir mandir
1019 do
1020   eval ac_val=\$$ac_var
1021   case $ac_val in
1022     [\\/$]* | ?:[\\/]* )  continue;;
1023     NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
1024   esac
1025   { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
1026    { (exit 1); exit 1; }; }
1027 done
1028
1029 # There might be people who depend on the old broken behavior: `$host'
1030 # used to hold the argument of --host etc.
1031 # FIXME: To remove some day.
1032 build=$build_alias
1033 host=$host_alias
1034 target=$target_alias
1035
1036 # FIXME: To remove some day.
1037 if test "x$host_alias" != x; then
1038   if test "x$build_alias" = x; then
1039     cross_compiling=maybe
1040     echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
1041     If a cross compiler is detected then cross compile mode will be used." >&2
1042   elif test "x$build_alias" != "x$host_alias"; then
1043     cross_compiling=yes
1044   fi
1045 fi
1046
1047 ac_tool_prefix=
1048 test -n "$host_alias" && ac_tool_prefix=$host_alias-
1049
1050 test "$silent" = yes && exec 6>/dev/null
1051
1052
1053 ac_pwd=`pwd` && test -n "$ac_pwd" &&
1054 ac_ls_di=`ls -di .` &&
1055 ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1056   { echo "$as_me: error: Working directory cannot be determined" >&2
1057    { (exit 1); exit 1; }; }
1058 test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
1059   { echo "$as_me: error: pwd does not report name of working directory" >&2
1060    { (exit 1); exit 1; }; }
1061
1062
1063 # Find the source files, if location was not specified.
1064 if test -z "$srcdir"; then
1065   ac_srcdir_defaulted=yes
1066   # Try the directory containing this script, then the parent directory.
1067   ac_confdir=`$as_dirname -- "$0" ||
1068 $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1069          X"$0" : 'X\(//\)[^/]' \| \
1070          X"$0" : 'X\(//\)$' \| \
1071          X"$0" : 'X\(/\)' \| . 2>/dev/null ||
1072 echo X"$0" |
1073     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1074             s//\1/
1075             q
1076           }
1077           /^X\(\/\/\)[^/].*/{
1078             s//\1/
1079             q
1080           }
1081           /^X\(\/\/\)$/{
1082             s//\1/
1083             q
1084           }
1085           /^X\(\/\).*/{
1086             s//\1/
1087             q
1088           }
1089           s/.*/./; q'`
1090   srcdir=$ac_confdir
1091   if test ! -r "$srcdir/$ac_unique_file"; then
1092     srcdir=..
1093   fi
1094 else
1095   ac_srcdir_defaulted=no
1096 fi
1097 if test ! -r "$srcdir/$ac_unique_file"; then
1098   test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
1099   { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
1100    { (exit 1); exit 1; }; }
1101 fi
1102 ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1103 ac_abs_confdir=`(
1104         cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
1105    { (exit 1); exit 1; }; }
1106         pwd)`
1107 # When building in place, set srcdir=.
1108 if test "$ac_abs_confdir" = "$ac_pwd"; then
1109   srcdir=.
1110 fi
1111 # Remove unnecessary trailing slashes from srcdir.
1112 # Double slashes in file names in object file debugging info
1113 # mess up M-x gdb in Emacs.
1114 case $srcdir in
1115 */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1116 esac
1117 for ac_var in $ac_precious_vars; do
1118   eval ac_env_${ac_var}_set=\${${ac_var}+set}
1119   eval ac_env_${ac_var}_value=\$${ac_var}
1120   eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
1121   eval ac_cv_env_${ac_var}_value=\$${ac_var}
1122 done
1123
1124 #
1125 # Report the --help message.
1126 #
1127 if test "$ac_init_help" = "long"; then
1128   # Omit some internal or obsolete options to make the list less imposing.
1129   # This message is too long to be a string in the A/UX 3.1 sh.
1130   cat <<_ACEOF
1131 \`configure' configures this package to adapt to many kinds of systems.
1132
1133 Usage: $0 [OPTION]... [VAR=VALUE]...
1134
1135 To assign environment variables (e.g., CC, CFLAGS...), specify them as
1136 VAR=VALUE.  See below for descriptions of some of the useful variables.
1137
1138 Defaults for the options are specified in brackets.
1139
1140 Configuration:
1141   -h, --help              display this help and exit
1142       --help=short        display options specific to this package
1143       --help=recursive    display the short help of all the included packages
1144   -V, --version           display version information and exit
1145   -q, --quiet, --silent   do not print \`checking...' messages
1146       --cache-file=FILE   cache test results in FILE [disabled]
1147   -C, --config-cache      alias for \`--cache-file=config.cache'
1148   -n, --no-create         do not create output files
1149       --srcdir=DIR        find the sources in DIR [configure dir or \`..']
1150
1151 Installation directories:
1152   --prefix=PREFIX         install architecture-independent files in PREFIX
1153                           [$ac_default_prefix]
1154   --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
1155                           [PREFIX]
1156
1157 By default, \`make install' will install all the files in
1158 \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
1159 an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1160 for instance \`--prefix=\$HOME'.
1161
1162 For better control, use the options below.
1163
1164 Fine tuning of the installation directories:
1165   --bindir=DIR           user executables [EPREFIX/bin]
1166   --sbindir=DIR          system admin executables [EPREFIX/sbin]
1167   --libexecdir=DIR       program executables [EPREFIX/libexec]
1168   --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
1169   --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
1170   --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
1171   --libdir=DIR           object code libraries [EPREFIX/lib]
1172   --includedir=DIR       C header files [PREFIX/include]
1173   --oldincludedir=DIR    C header files for non-gcc [/usr/include]
1174   --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
1175   --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
1176   --infodir=DIR          info documentation [DATAROOTDIR/info]
1177   --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
1178   --mandir=DIR           man documentation [DATAROOTDIR/man]
1179   --docdir=DIR           documentation root [DATAROOTDIR/doc/PACKAGE]
1180   --htmldir=DIR          html documentation [DOCDIR]
1181   --dvidir=DIR           dvi documentation [DOCDIR]
1182   --pdfdir=DIR           pdf documentation [DOCDIR]
1183   --psdir=DIR            ps documentation [DOCDIR]
1184 _ACEOF
1185
1186   cat <<\_ACEOF
1187 _ACEOF
1188 fi
1189
1190 if test -n "$ac_init_help"; then
1191
1192   cat <<\_ACEOF
1193
1194 _ACEOF
1195 ac_status=$?
1196 fi
1197
1198 if test "$ac_init_help" = "recursive"; then
1199   # If there are subdirs, report their specific --help.
1200   for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
1201     test -d "$ac_dir" || continue
1202     ac_builddir=.
1203
1204 case "$ac_dir" in
1205 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
1206 *)
1207   ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
1208   # A ".." for each directory in $ac_dir_suffix.
1209   ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
1210   case $ac_top_builddir_sub in
1211   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
1212   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
1213   esac ;;
1214 esac
1215 ac_abs_top_builddir=$ac_pwd
1216 ac_abs_builddir=$ac_pwd$ac_dir_suffix
1217 # for backward compatibility:
1218 ac_top_builddir=$ac_top_build_prefix
1219
1220 case $srcdir in
1221   .)  # We are building in place.
1222     ac_srcdir=.
1223     ac_top_srcdir=$ac_top_builddir_sub
1224     ac_abs_top_srcdir=$ac_pwd ;;
1225   [\\/]* | ?:[\\/]* )  # Absolute name.
1226     ac_srcdir=$srcdir$ac_dir_suffix;
1227     ac_top_srcdir=$srcdir
1228     ac_abs_top_srcdir=$srcdir ;;
1229   *) # Relative name.
1230     ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
1231     ac_top_srcdir=$ac_top_build_prefix$srcdir
1232     ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
1233 esac
1234 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
1235
1236     cd "$ac_dir" || { ac_status=$?; continue; }
1237     # Check for guested configure.
1238     if test -f "$ac_srcdir/configure.gnu"; then
1239       echo &&
1240       $SHELL "$ac_srcdir/configure.gnu" --help=recursive
1241     elif test -f "$ac_srcdir/configure"; then
1242       echo &&
1243       $SHELL "$ac_srcdir/configure" --help=recursive
1244     else
1245       echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
1246     fi || ac_status=$?
1247     cd "$ac_pwd" || { ac_status=$?; break; }
1248   done
1249 fi
1250
1251 test -n "$ac_init_help" && exit $ac_status
1252 if $ac_init_version; then
1253   cat <<\_ACEOF
1254 configure
1255 generated by GNU Autoconf 2.61
1256
1257 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
1258 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
1259 This configure script is free software; the Free Software Foundation
1260 gives unlimited permission to copy, distribute and modify it.
1261 _ACEOF
1262   exit
1263 fi
1264 cat >config.log <<_ACEOF
1265 This file contains any messages produced by compilers while
1266 running configure, to aid debugging if configure makes a mistake.
1267
1268 It was created by $as_me, which was
1269 generated by GNU Autoconf 2.61.  Invocation command line was
1270
1271   $ $0 $@
1272
1273 _ACEOF
1274 exec 5>>config.log
1275 {
1276 cat <<_ASUNAME
1277 ## --------- ##
1278 ## Platform. ##
1279 ## --------- ##
1280
1281 hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
1282 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1283 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1284 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1285 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1286
1287 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
1288 /bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
1289
1290 /bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
1291 /usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
1292 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
1293 /usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
1294 /bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
1295 /usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
1296 /bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
1297
1298 _ASUNAME
1299
1300 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
1301 for as_dir in $PATH
1302 do
1303   IFS=$as_save_IFS
1304   test -z "$as_dir" && as_dir=.
1305   echo "PATH: $as_dir"
1306 done
1307 IFS=$as_save_IFS
1308
1309 } >&5
1310
1311 cat >&5 <<_ACEOF
1312
1313
1314 ## ----------- ##
1315 ## Core tests. ##
1316 ## ----------- ##
1317
1318 _ACEOF
1319
1320
1321 # Keep a trace of the command line.
1322 # Strip out --no-create and --no-recursion so they do not pile up.
1323 # Strip out --silent because we don't want to record it for future runs.
1324 # Also quote any args containing shell meta-characters.
1325 # Make two passes to allow for proper duplicate-argument suppression.
1326 ac_configure_args=
1327 ac_configure_args0=
1328 ac_configure_args1=
1329 ac_must_keep_next=false
1330 for ac_pass in 1 2
1331 do
1332   for ac_arg
1333   do
1334     case $ac_arg in
1335     -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
1336     -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1337     | -silent | --silent | --silen | --sile | --sil)
1338       continue ;;
1339     *\'*)
1340       ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
1341     esac
1342     case $ac_pass in
1343     1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
1344     2)
1345       ac_configure_args1="$ac_configure_args1 '$ac_arg'"
1346       if test $ac_must_keep_next = true; then
1347         ac_must_keep_next=false # Got value, back to normal.
1348       else
1349         case $ac_arg in
1350           *=* | --config-cache | -C | -disable-* | --disable-* \
1351           | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
1352           | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
1353           | -with-* | --with-* | -without-* | --without-* | --x)
1354             case "$ac_configure_args0 " in
1355               "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
1356             esac
1357             ;;
1358           -* ) ac_must_keep_next=true ;;
1359         esac
1360       fi
1361       ac_configure_args="$ac_configure_args '$ac_arg'"
1362       ;;
1363     esac
1364   done
1365 done
1366 $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
1367 $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
1368
1369 # When interrupted or exit'd, cleanup temporary files, and complete
1370 # config.log.  We remove comments because anyway the quotes in there
1371 # would cause problems or look ugly.
1372 # WARNING: Use '\'' to represent an apostrophe within the trap.
1373 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
1374 trap 'exit_status=$?
1375   # Save into config.log some information that might help in debugging.
1376   {
1377     echo
1378
1379     cat <<\_ASBOX
1380 ## ---------------- ##
1381 ## Cache variables. ##
1382 ## ---------------- ##
1383 _ASBOX
1384     echo
1385     # The following way of writing the cache mishandles newlines in values,
1386 (
1387   for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
1388     eval ac_val=\$$ac_var
1389     case $ac_val in #(
1390     *${as_nl}*)
1391       case $ac_var in #(
1392       *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
1393 echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
1394       esac
1395       case $ac_var in #(
1396       _ | IFS | as_nl) ;; #(
1397       *) $as_unset $ac_var ;;
1398       esac ;;
1399     esac
1400   done
1401   (set) 2>&1 |
1402     case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
1403     *${as_nl}ac_space=\ *)
1404       sed -n \
1405         "s/'\''/'\''\\\\'\'''\''/g;
1406           s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
1407       ;; #(
1408     *)
1409       sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
1410       ;;
1411     esac |
1412     sort
1413 )
1414     echo
1415
1416     cat <<\_ASBOX
1417 ## ----------------- ##
1418 ## Output variables. ##
1419 ## ----------------- ##
1420 _ASBOX
1421     echo
1422     for ac_var in $ac_subst_vars
1423     do
1424       eval ac_val=\$$ac_var
1425       case $ac_val in
1426       *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
1427       esac
1428       echo "$ac_var='\''$ac_val'\''"
1429     done | sort
1430     echo
1431
1432     if test -n "$ac_subst_files"; then
1433       cat <<\_ASBOX
1434 ## ------------------- ##
1435 ## File substitutions. ##
1436 ## ------------------- ##
1437 _ASBOX
1438       echo
1439       for ac_var in $ac_subst_files
1440       do
1441         eval ac_val=\$$ac_var
1442         case $ac_val in
1443         *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
1444         esac
1445         echo "$ac_var='\''$ac_val'\''"
1446       done | sort
1447       echo
1448     fi
1449
1450     if test -s confdefs.h; then
1451       cat <<\_ASBOX
1452 ## ----------- ##
1453 ## confdefs.h. ##
1454 ## ----------- ##
1455 _ASBOX
1456       echo
1457       cat confdefs.h
1458       echo
1459     fi
1460     test "$ac_signal" != 0 &&
1461       echo "$as_me: caught signal $ac_signal"
1462     echo "$as_me: exit $exit_status"
1463   } >&5
1464   rm -f core *.core core.conftest.* &&
1465     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
1466     exit $exit_status
1467 ' 0
1468 for ac_signal in 1 2 13 15; do
1469   trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
1470 done
1471 ac_signal=0
1472
1473 # confdefs.h avoids OS command line length limits that DEFS can exceed.
1474 rm -f -r conftest* confdefs.h
1475
1476 # Predefined preprocessor variables.
1477
1478 cat >>confdefs.h <<_ACEOF
1479 #define PACKAGE_NAME "$PACKAGE_NAME"
1480 _ACEOF
1481
1482
1483 cat >>confdefs.h <<_ACEOF
1484 #define PACKAGE_TARNAME "$PACKAGE_TARNAME"
1485 _ACEOF
1486
1487
1488 cat >>confdefs.h <<_ACEOF
1489 #define PACKAGE_VERSION "$PACKAGE_VERSION"
1490 _ACEOF
1491
1492
1493 cat >>confdefs.h <<_ACEOF
1494 #define PACKAGE_STRING "$PACKAGE_STRING"
1495 _ACEOF
1496
1497
1498 cat >>confdefs.h <<_ACEOF
1499 #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
1500 _ACEOF
1501
1502
1503 # Let the site file select an alternate cache file if it wants to.
1504 # Prefer explicitly selected file to automatically selected ones.
1505 if test -n "$CONFIG_SITE"; then
1506   set x "$CONFIG_SITE"
1507 elif test "x$prefix" != xNONE; then
1508   set x "$prefix/share/config.site" "$prefix/etc/config.site"
1509 else
1510   set x "$ac_default_prefix/share/config.site" \
1511         "$ac_default_prefix/etc/config.site"
1512 fi
1513 shift
1514 for ac_site_file
1515 do
1516   if test -r "$ac_site_file"; then
1517     { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
1518 echo "$as_me: loading site script $ac_site_file" >&6;}
1519     sed 's/^/| /' "$ac_site_file" >&5
1520     . "$ac_site_file"
1521   fi
1522 done
1523
1524 if test -r "$cache_file"; then
1525   # Some versions of bash will fail to source /dev/null (special
1526   # files actually), so we avoid doing that.
1527   if test -f "$cache_file"; then
1528     { echo "$as_me:$LINENO: loading cache $cache_file" >&5
1529 echo "$as_me: loading cache $cache_file" >&6;}
1530     case $cache_file in
1531       [\\/]* | ?:[\\/]* ) . "$cache_file";;
1532       *)                      . "./$cache_file";;
1533     esac
1534   fi
1535 else
1536   { echo "$as_me:$LINENO: creating cache $cache_file" >&5
1537 echo "$as_me: creating cache $cache_file" >&6;}
1538   >$cache_file
1539 fi
1540
1541 # Check that the precious variables saved in the cache have kept the same
1542 # value.
1543 ac_cache_corrupted=false
1544 for ac_var in $ac_precious_vars; do
1545   eval ac_old_set=\$ac_cv_env_${ac_var}_set
1546   eval ac_new_set=\$ac_env_${ac_var}_set
1547   eval ac_old_val=\$ac_cv_env_${ac_var}_value
1548   eval ac_new_val=\$ac_env_${ac_var}_value
1549   case $ac_old_set,$ac_new_set in
1550     set,)
1551       { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
1552 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
1553       ac_cache_corrupted=: ;;
1554     ,set)
1555       { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
1556 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
1557       ac_cache_corrupted=: ;;
1558     ,);;
1559     *)
1560       if test "x$ac_old_val" != "x$ac_new_val"; then
1561         { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
1562 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
1563         { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
1564 echo "$as_me:   former value:  $ac_old_val" >&2;}
1565         { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
1566 echo "$as_me:   current value: $ac_new_val" >&2;}
1567         ac_cache_corrupted=:
1568       fi;;
1569   esac
1570   # Pass precious variables to config.status.
1571   if test "$ac_new_set" = set; then
1572     case $ac_new_val in
1573     *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
1574     *) ac_arg=$ac_var=$ac_new_val ;;
1575     esac
1576     case " $ac_configure_args " in
1577       *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
1578       *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
1579     esac
1580   fi
1581 done
1582 if $ac_cache_corrupted; then
1583   { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
1584 echo "$as_me: error: changes in the environment can compromise the build" >&2;}
1585   { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
1586 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
1587    { (exit 1); exit 1; }; }
1588 fi
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606 ac_ext=c
1607 ac_cpp='$CPP $CPPFLAGS'
1608 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
1609 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
1610 ac_compiler_gnu=$ac_cv_c_compiler_gnu
1611
1612
1613
1614 ac_config_headers="$ac_config_headers conv-autoconfig.h"
1615
1616
1617 CHARMINC="."
1618 test -r ./conv-config.sh && . ./conv-config.sh
1619
1620 #keep it a decimal
1621 VERSION=60100
1622 echo $VERSION > ../include/VERSION
1623
1624 cat >>confdefs.h <<_ACEOF
1625 #define CHARM_VERSION $VERSION
1626 _ACEOF
1627
1628
1629 { echo "$as_me:$LINENO: checking machine name" >&5
1630 echo $ECHO_N "checking machine name... $ECHO_C" >&6; }
1631 version=`pwd | awk -F/ '{print $(NF-1)}'`
1632 base_version=`cat .vdir`
1633
1634 cat >>confdefs.h <<_ACEOF
1635 #define CMK_MACHINE_NAME "$version"
1636 _ACEOF
1637
1638 { echo "$as_me:$LINENO: result: $version" >&5
1639 echo "${ECHO_T}$version" >&6; }
1640
1641
1642 t="test.cpp"
1643 tc="test.c"
1644
1645 charmout="charmconfig.out"
1646 /bin/rm -rf $charmout
1647
1648 # test result passed in $1
1649 # If the test suceeded, print $3 and set "pass"/clear "fail"
1650 # If the test failed, print $2 and clear "pass"/set "fail"
1651 test_result() {
1652         if test $1 -eq 0
1653         then
1654                 { echo "$as_me:$LINENO: result: \"$3\"" >&5
1655 echo "${ECHO_T}\"$3\"" >&6; }
1656                 pass="1"
1657                 fail="0"
1658         else
1659                 { echo "$as_me:$LINENO: result: \"$4\"" >&5
1660 echo "${ECHO_T}\"$4\"" >&6; }
1661                 pass="0"
1662                 fail="1"
1663 # For debugging the configure script, just "export autoconf_debug=1"
1664 #  to get this verbose data on any failed tests:
1665                 if test ! -z "$autoconf_debug"
1666                 then
1667                         echo "------- test script for $2 failed:"
1668                         cat out
1669                         echo "------- the test program was:"
1670                         cat $t
1671                         echo "-------"
1672                 fi
1673         fi
1674 }
1675
1676 # Test: tries to compile C file $t (described by $1).
1677 #  If successful, prints $2 and sets $pass/clears $fail
1678 #  If failure, prints $3 and sets $pass/clears $fail
1679 #  additional arguments to c++ compiler are passed as $4
1680 test_cc() {
1681         { echo "$as_me:$LINENO: checking \"$1\"" >&5
1682 echo $ECHO_N "checking \"$1\"... $ECHO_C" >&6; }
1683         echo "### $1" >> $charmout
1684         cat $tc >> $charmout
1685         echo $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $OPTS_CC $OPTS_LD -c $tc -o test.o $4 >> $charmout
1686         $CMK_CC -I../include -I. $CMK_LIBDIR $CMK_INCDIR $OPTS_CC $OPTS_LD -c $tc -o test.o $4 > out 2>&1
1687         test_result $? "$1" "$2" "$3"
1688         strictpass=$pass
1689         strictfail=$fail
1690         if test $pass -eq 1
1691         then
1692           if cat out | grep -i "warn" > /dev/null 2>&1
1693           then
1694             strictpass="0" && strictfail="1"
1695           fi
1696         fi
1697         cat out >> $charmout
1698         /bin/rm -f out
1699 }
1700
1701 # Test: tries to compile C++ file $t (described by $1).
1702 #  If successful, prints $2 and sets $pass/clears $fail
1703 #  If failure, prints $3 and sets $pass/clears $fail
1704 #  additional arguments to c++ compiler are passed as $4
1705 test_cxx() {
1706         { echo "$as_me:$LINENO: checking \"$1\"" >&5
1707 echo $ECHO_N "checking \"$1\"... $ECHO_C" >&6; }
1708         echo "### $1" >> $charmout
1709         cat $t >> $charmout
1710         echo $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $OPTS_CXX $OPTS_LD -c $t -o test.o $4 >> $charmout
1711         $CMK_CXX -I../include -I. $CMK_LIBDIR $CMK_INCDIR $OPTS_CXX $OPTS_LD -c $t -o test.o $4 > out 2>&1
1712         test_result $? "$1" "$2" "$3"
1713         strictpass=$pass
1714         strictfail=$fail
1715         if test $pass -eq 1
1716         then
1717           if cat out | grep -i "warn" > /dev/null 2>&1
1718           then
1719             strictpass="0" && strictfail="1"
1720           fi
1721         fi
1722         cat out >> $charmout
1723         /bin/rm -f out
1724 }
1725
1726 # Testlink: tries to compile and link a C++ file $t (described by $1).
1727 #  If successful, prints $2 and sets $pass/clears $fail
1728 #  If failure, prints $3 and sets $pass/clears $fail
1729 #  additional arguments to c++ compiler are passed as $4
1730 test_link() {
1731         { echo "$as_me:$LINENO: checking \"$1\"" >&5
1732 echo $ECHO_N "checking \"$1\"... $ECHO_C" >&6; }
1733         echo "### $1" >> $charmout
1734         cat $t >> $charmout
1735         echo $CMK_CXX -I../include -I. $CMK_INCDIR $OPTS_CXX -c $t -o test.o $4 >> $charmout
1736         $CMK_CXX -I../include -I. $CMK_INCDIR $OPTS_CXX -c $t -o test.o $4 > out 2>&1
1737         if test $? -ne 0
1738         then
1739           test_result 1 "$1" "$2" "$3"
1740         else
1741           echo $CMK_LDXX -o testlink test.o $CMK_LIBDIR $OPTS_LD $CMK_SYSLIBS $4 >> $charmout
1742           $CMK_LDXX -o testlink test.o $CMK_LIBDIR $OPTS_LD $CMK_SYSLIBS $4 >> out 2>&1
1743           ret=$?
1744           test ! -x testlink && ret=1
1745           test_result $ret "$1" "$2" "$3"
1746         fi
1747         strictpass=$pass
1748         strictfail=$fail
1749         if test $pass -eq 1
1750         then
1751           if cat out | grep -i "warn" > /dev/null 2>&1
1752           then
1753             strictpass="0" && strictfail="1"
1754           fi
1755         fi
1756         cat out >> $charmout
1757         /bin/rm -f out
1758 }
1759
1760 # Testlinkc: tries to compile and link a C file $t (described by $1).
1761 #  If successful, prints $2 and sets $pass/clears $fail
1762 #  If failure, prints $3 and sets $pass/clears $fail
1763 #  additional arguments to c++ compiler are passed as $4
1764 test_linkc() {
1765         { echo "$as_me:$LINENO: checking \"$1\"" >&5
1766 echo $ECHO_N "checking \"$1\"... $ECHO_C" >&6; }
1767         echo "### $1" >> $charmout
1768         cat $tc >> $charmout
1769         echo $CMK_CC -I../include -I. $CMK_INCDIR $OPTS_CC -c $tc -o test.o $4 >> $charmout
1770         $CMK_CC -I../include -I. $CMK_INCDIR $OPTS_CC -c $tc -o test.o $4 > out 2>&1
1771         if test $? -ne 0
1772         then
1773           test_result 1 "$1" "$2" "$3"
1774         else
1775           echo $CMK_LD -o testlink test.o $CMK_LIBDIR $OPTS_LD $CMK_SYSLIBS $4 >> $charmout
1776           $CMK_LD -o testlink test.o $CMK_LIBDIR $OPTS_LD $CMK_SYSLIBS $4 >> out 2>&1
1777           test_result $? "$1" "$2" "$3"
1778         fi
1779         strictpass=$pass
1780         strictfail=$fail
1781         if test $pass -eq 1
1782         then
1783           if cat out | grep -i "warn" > /dev/null 2>&1
1784           then
1785             strictpass="0" && strictfail="1"
1786           fi
1787         fi
1788         cat out >> $charmout
1789         /bin/rm -f out
1790 }
1791
1792 # test_linkso $1 $2 $3 $4, where
1793 # $1: debug msg
1794 # $2: yes msg
1795 # $3: no msg
1796 # $4: extra link option
1797 test_linkso() {
1798         { echo "$as_me:$LINENO: checking \"$1\"" >&5
1799 echo $ECHO_N "checking \"$1\"... $ECHO_C" >&6; }
1800         echo $1 >> $charmout
1801         cat $t >> $charmout
1802         echo $CMK_CXX -I../include -I. $CMK_INCDIR $OPTS_CXX -c $t -o test.o $4 >> $charmout
1803         $CMK_CXX -I../include -I. $CMK_INCDIR $OPTS_CXX -c $t -o test.o $4 > out 2>&1
1804         if test $? = 1
1805         then
1806           test_result 1 "$1" "$2" "$3"
1807         else
1808           echo $CMK_LD -I../include -I. $CMK_LIBDIR $OPTS_LD $CMK_LD_SHARED test.o -o testlink.$CMK_SHARED_SUF $4 >> $charmout
1809           $CMK_LD -I../include -I. $CMK_LIBDIR $OPTS_LD $CMK_LD_SHARED test.o -o testlink.$CMK_SHARED_SUF $4 > out 2>&1
1810           test_result $? "$1" "$2" "$3"
1811         fi
1812         cat out >> $charmout
1813         /bin/rm -f out testlink.$CMK_SHARED_SUF
1814 }
1815
1816 # add into conv-mach-opt.sh
1817 # add_flag $1 $2
1818 # $2 is description
1819 add_flag() {
1820         key=`echo $1 | cut -d'=' -f1`
1821         last=`grep $key ../include/conv-mach-opt.sh 2>/dev/null | tail -1`
1822         skip=0
1823         if test -n "$last" -a  "$last" = "$1"
1824         then
1825           skip=1
1826         fi
1827         if test $skip = 0
1828         then
1829           cat >> ../include/conv-mach-opt.sh << EOT
1830
1831 # Option added by configure script's $2 section
1832 $1
1833
1834 EOT
1835         fi
1836 }
1837
1838 test_finish() {
1839         rm -f $t $tc testlink test.o    > /dev/null 2>&1
1840         /bin/rm -f out
1841         exit $1
1842 }
1843
1844 # try to decide the version of glibc
1845 get_glibc_version() {
1846 t=test.c
1847 cat > $t <<EOT
1848 #include <stdio.h>
1849 #include <gnu/libc-version.h>
1850 int main (void) { puts (gnu_get_libc_version ()); return 0; }
1851 EOT
1852 gcc -o gver test.c
1853 GLIBCVERSION=`./gver`
1854 /bin/rm -f $t gver
1855 }
1856
1857 cat > $t <<EOT
1858 #include <stdio.h>
1859 void foo(void) {
1860         printf("Hello, world!\n");
1861 }
1862 EOT
1863 #echo "set C++ compiler as: $CMK_CXX $OPTS_CXX $OPTS"
1864 { echo "$as_me:$LINENO: checking \"C++ compiler as\"" >&5
1865 echo $ECHO_N "checking \"C++ compiler as\"... $ECHO_C" >&6; }
1866 { echo "$as_me:$LINENO: result: \"$CMK_CXX $OPTS_CXX $OPTS\"" >&5
1867 echo "${ECHO_T}\"$CMK_CXX $OPTS_CXX $OPTS\"" >&6; }
1868 test_cxx "whether C++ compiler works" "ok" "no" ""
1869 if test $fail -eq 1
1870 then
1871         echo "Cannot compile C++ programs with $CMK_CXX"
1872         echo " (check your charm++ version)"
1873         test_finish 1
1874 fi
1875
1876 cat > $t <<EOT
1877 #include <stdio.h>
1878 int main() {
1879         printf("Hello, world!\n");
1880         return 0;
1881 }
1882 EOT
1883 #echo "set C++ linker as: $CMK_LDXX $OPTS_LDXX"
1884 { echo "$as_me:$LINENO: checking \"C++ linker as\"" >&5
1885 echo $ECHO_N "checking \"C++ linker as\"... $ECHO_C" >&6; }
1886 { echo "$as_me:$LINENO: result: \"$CMK_LDXX $OPTS_LDXX\"" >&5
1887 echo "${ECHO_T}\"$CMK_LDXX $OPTS_LDXX\"" >&6; }
1888 test_link "whether linker works" "ok" "no" ""
1889 if test $fail -eq 1
1890 then
1891         echo "Cannot link C++ programs with $CMK_LDXX"
1892         echo " (check your charm++ version)"
1893         test_finish 1
1894 fi
1895
1896 if test "$base_version" = "net-linux"
1897 then
1898   test_link "whether linker accept --allow-multiple-definition" "ok" "no" "-Wl,--allow-multiple-definition"
1899   if test $pass -eq 1
1900   then
1901         add_flag CMK_LDXX='"$CMK_LDXX -Wl,--allow-multiple-definition"' "net-linux linker"
1902   fi
1903 fi
1904
1905 # Perform the tests
1906
1907 #### Check if compiler if 64 bit ####
1908 cat > $t <<EOT
1909 #include <stdio.h>
1910
1911 int foo()
1912 {
1913 int x[sizeof(void *) - 7];
1914 return x[0];
1915 }
1916 EOT
1917 test_cxx "whether compiler is 64bit" "yes" "no" ""
1918
1919 cat >>confdefs.h <<_ACEOF
1920 #define CMK_SIZET_64BIT $strictpass
1921 _ACEOF
1922
1923
1924
1925 #### check strings.h ####
1926 cat > $t <<EOT
1927 #include <strings.h>
1928 int main() {
1929   char str[8];
1930   bzero(str, 8);
1931   return 0;
1932 }
1933 EOT
1934 test_cxx "whether has strings.h " "yes" "no" ""
1935
1936 cat >>confdefs.h <<_ACEOF
1937 #define CMK_HAS_STRINGS_H $pass
1938 _ACEOF
1939
1940
1941 #### test if has values.h ####
1942 cat > $t <<EOT
1943 #include <values.h>
1944 int main() {
1945   double d = MAXDOUBLE;
1946   return 0;
1947 }
1948 EOT
1949 test_cxx "whether has values.h " "yes" "no" ""
1950
1951 cat >>confdefs.h <<_ACEOF
1952 #define CMK_HAS_VALUES_H $pass
1953 _ACEOF
1954
1955
1956 #### test if has stdint.h ####
1957 cat > $t <<EOT
1958 #include <stdint.h>
1959 int main() {
1960   return 0;
1961 }
1962 EOT
1963 test_cxx "whether has stdint.h " "yes" "no" ""
1964
1965 cat >>confdefs.h <<_ACEOF
1966 #define CMK_HAS_STDINT_H $pass
1967 _ACEOF
1968
1969
1970 #### test if has malloc.h ####
1971 cat > $t <<EOT
1972 #include <malloc.h>
1973 int main() {
1974   return 0;
1975 }
1976 EOT
1977 test_cxx "whether has malloc.h " "yes" "no" ""
1978
1979 cat >>confdefs.h <<_ACEOF
1980 #define CMK_HAS_MALLOC_H $pass
1981 _ACEOF
1982
1983
1984 #### test if has alloca.h ####
1985 cat > $t <<EOT
1986 #include <alloca.h>
1987 int main() {
1988   double *s=(double *)alloca(sizeof(double));
1989   *s=1.0;
1990   return 0;
1991 }
1992 EOT
1993 test_cxx "whether has alloca.h " "yes" "no" ""
1994
1995 cat >>confdefs.h <<_ACEOF
1996 #define CMK_HAS_ALLOCA_H $pass
1997 _ACEOF
1998
1999
2000 #### test if has regex.h ####
2001 cat > $t <<EOT
2002 #include <regex.h>
2003 int main() {
2004   regex_t re;
2005   regcomp(&re, ".*MOD.*", REG_EXTENDED|REG_NOSUB);
2006   return 0;
2007 }
2008 EOT
2009 test_cxx "whether has regex.h " "yes" "no" ""
2010
2011 cat >>confdefs.h <<_ACEOF
2012 #define CMK_HAS_REGEX_H $pass
2013 _ACEOF
2014
2015
2016 #### Check bool ####
2017 cat > $t <<EOT
2018 #include <stdlib.h>
2019 bool foo(void) { return true; }
2020 EOT
2021 test_cxx "whether C++ bool works" "ok" "no" ""
2022
2023 cat >>confdefs.h <<_ACEOF
2024 #define CMK_BOOL_DEFINED $pass
2025 _ACEOF
2026
2027
2028 #### Check long long ####
2029 cat > $t <<EOT
2030 #include <stdlib.h>
2031 long long foo(void) { return 17; }
2032 EOT
2033 test_cxx "whether long long works" "ok" "no" ""
2034
2035 cat >>confdefs.h <<_ACEOF
2036 #define CMK_LONG_LONG_DEFINED $pass
2037 _ACEOF
2038
2039
2040 #### Check __int64 ####
2041 cat > $t <<EOT
2042 #include <stdlib.h>
2043 __int64 foo(void) { return 17; }
2044 EOT
2045 test_cxx "whether __int64 works" "ok" "no" ""
2046
2047 cat >>confdefs.h <<_ACEOF
2048 #define CMK___int64_DEFINED 1
2049 _ACEOF
2050
2051
2052 #### Check long double ####
2053 cat > $t <<EOT
2054 #include <stdlib.h>
2055 long double foo(void) { return 17.0; }
2056 EOT
2057 test_cxx "whether long double works" "ok" "no" ""
2058
2059 cat >>confdefs.h <<_ACEOF
2060 #define CMK_LONG_DOUBLE_DEFINED $strictpass
2061 _ACEOF
2062
2063
2064 #### Check ucontext and FPU pointer ####
2065 cat > $t <<EOT
2066 #include <ucontext.h>
2067 struct _libc_fpstate   fpstate;
2068 fpregset_t *fp;
2069 EOT
2070 test_cxx "whether ucontext has FPU pointer" "yes" "no" ""
2071
2072 cat >>confdefs.h <<_ACEOF
2073 #define CMK_CONTEXT_FPU_POINTER $pass
2074 _ACEOF
2075
2076
2077 if test $pass -eq 1
2078 then
2079 cat > $t <<EOT
2080 #include <ucontext.h>
2081
2082 int main()
2083 {
2084   ucontext_t context;
2085   context.uc_mcontext.uc_regs = 0;
2086 }
2087 EOT
2088 test_cxx "whether ucontext uses uc_regs" "yes" "no" ""
2089
2090 cat >>confdefs.h <<_ACEOF
2091 #define CMK_CONTEXT_FPU_POINTER_UCREGS $pass
2092 _ACEOF
2093
2094 fi
2095
2096 cat > $t <<EOT
2097 #include <ucontext.h>
2098 vrregset_t *v_regs;
2099 ucontext_t  uc;
2100
2101 void foo()
2102 {
2103   vrregset_t *ptr = uc.uc_mcontext.v_regs;
2104 }
2105 EOT
2106 test_cxx "whether ucontext has pointer (v_regs) of vector type" "yes" "no" ""
2107
2108 cat >>confdefs.h <<_ACEOF
2109 #define CMK_CONTEXT_V_REGS $pass
2110 _ACEOF
2111
2112
2113 ###################### C++ Compiler Features #####################
2114
2115 #### check C inline ####
2116 cat > $tc <<EOT
2117 inline static int foo()
2118 {
2119   return 1;
2120 }
2121 EOT
2122 test_cc "whether inline works in C" "yes" "no" ""
2123
2124 cat >>confdefs.h <<_ACEOF
2125 #define CMK_C_INLINE $strictpass
2126 _ACEOF
2127
2128
2129 #### check explicit ####
2130 cat > $t <<EOT
2131 #include <stdlib.h>
2132 class er {
2133  protected:
2134    explicit er(unsigned int inType) {};
2135 };
2136 EOT
2137 test_cxx "whether C++ class explicit keyword works" "ok" "no" ""
2138
2139 cat >>confdefs.h <<_ACEOF
2140 #define CMK_EXPLICIT $pass
2141 _ACEOF
2142
2143
2144 #### check if signed char is same as char ####
2145 cat > $t <<EOT
2146 #include <stdlib.h>
2147 class er {
2148  protected:
2149    void operator()(char &v,const char *desc=NULL) {};
2150    void operator()(signed char &v,const char *desc=NULL) {};
2151 };
2152 EOT
2153 test_cxx "whether C++ signed char and char differ" "yes" "no" ""
2154
2155 cat >>confdefs.h <<_ACEOF
2156 #define CMK_SIGNEDCHAR_DIFF_CHAR $pass
2157 _ACEOF
2158
2159
2160 #### check if C++ casts work ####
2161 cat > $t <<EOT
2162 int foo(float *t) {return *reinterpret_cast<int *>(t);}
2163 EOT
2164 test_cxx "whether C++ *_casts<> work" "ok" "no" ""
2165
2166 cat >>confdefs.h <<_ACEOF
2167 #define CMK_CPP_CAST_LEGAL $pass
2168 _ACEOF
2169
2170
2171 cat >>confdefs.h <<_ACEOF
2172 #define CMK_CPP_CAST_ILLEGAL $fail
2173 _ACEOF
2174
2175
2176
2177 ### check if varsize array on stack ####
2178 cat > $t <<EOT
2179 #include <stdio.h>
2180 void foo()
2181 {
2182   int size=10;
2183   char arrsize;
2184 }
2185
2186 EOT
2187 test_cxx "whether C++ allows declaration of varsize array" "yes" "no" ""
2188
2189 cat >>confdefs.h <<_ACEOF
2190 #define CMK_DECLARE_VARSIZE_ARRAY $pass
2191 _ACEOF
2192
2193
2194
2195 #### check if templated members work ####
2196 cat > $t <<EOT
2197 typedef void (*func_t)(void);
2198 class foo_foo {
2199 protected:
2200         int len;
2201 };
2202 class foo: public foo_foo {
2203 public:
2204         template<func_t f> //Templated member function
2205         void memb(void) {f(); len++;}
2206 };
2207 inline void fn() {}
2208 void myfunc()
2209 {
2210   foo x;
2211   x.template memb<fn>();
2212 }
2213 EOT
2214 test_cxx "whether templated member functions work" "ok" "no" ""
2215
2216 cat >>confdefs.h <<_ACEOF
2217 #define CMK_TEMPLATE_MEMBERS_BROKEN $fail
2218 _ACEOF
2219
2220
2221 ##### check if the stl headers use .h #####
2222 cat > $t <<EOT
2223 #include <iostream>
2224 void foo(void) { std::cout<<"Hello, world"<<std::endl; }
2225 EOT
2226 test_cxx "whether including STL <foo> works" "ok" "no" ""
2227
2228 cat >>confdefs.h <<_ACEOF
2229 #define CMK_STL_USE_DOT_H $fail
2230 _ACEOF
2231
2232
2233 cat >>confdefs.h <<_ACEOF
2234 #define CMK_STL_DONT_USE_DOT_H $pass
2235 _ACEOF
2236
2237
2238 #### check if std::vector works ######
2239 cat > $t <<EOT
2240 #include <vector>
2241
2242 int foo(void) {
2243   std::vector<int> v;
2244   v.push_back(2); v.push_back(3);
2245   std::vector<int>::iterator it=v.begin();
2246   it++;
2247   return *it;
2248 }
2249 EOT
2250 test_cxx "whether the std:: names for STL work" "ok" "no" ""
2251
2252 cat >>confdefs.h <<_ACEOF
2253 #define CMK_USE_STL $pass
2254 _ACEOF
2255
2256
2257 #### check if namespaces can be defined #####
2258 cat > $t <<EOT
2259 namespace foo {
2260         int x;
2261 };
2262 EOT
2263 test_cxx "whether namespaces work" "ok" "no" ""
2264
2265 cat >>confdefs.h <<_ACEOF
2266 #define CMK_NAMESPACES_BROKEN $fail
2267 _ACEOF
2268
2269
2270
2271 #### check if typeinfo exists and works #####
2272 cat > $t <<EOT
2273 #include <typeinfo>
2274 const char *foo(void) {
2275         int x;
2276         return typeid(x).name();
2277 }
2278 EOT
2279 test_cxx "whether typeinfo/typeid works" "ok" "no" ""
2280
2281 cat >>confdefs.h <<_ACEOF
2282 #define CMK_HAS_TYPEINFO $pass
2283 _ACEOF
2284
2285
2286 #### check if iterator_traits is defined #####
2287 cat > $t <<EOT
2288 #include <iterator>
2289
2290 template <typename T> // T models Input Iterator
2291 typename std::iterator_traits<T>::value_type accumulate(T first, T last)
2292 {
2293       typename std::iterator_traits<T>::value_type result = 0;
2294       while(first != last)
2295             result += *first++;
2296       return result;
2297 }
2298 EOT
2299 test_cxx "whether std::iterator_traits is defined" "ok" "no" ""
2300
2301 cat >>confdefs.h <<_ACEOF
2302 #define CMK_HAS_ITERATOR_TRAITS $pass
2303 _ACEOF
2304
2305
2306 #### check if std::distance is defined #####
2307 cat > $t <<EOT
2308 #include <vector>
2309 #include <iterator>
2310
2311 int foo()
2312 {
2313   std::vector<int> tree;
2314   return std::distance(tree.begin(), tree.end());
2315 }
2316 EOT
2317 test_cxx "whether std::distance is defined" "ok" "no" ""
2318
2319 cat >>confdefs.h <<_ACEOF
2320 #define CMK_HAS_STD_DISTANCE $pass
2321 _ACEOF
2322
2323
2324
2325 #### test if we can have multiple delete like this ####
2326 cat > $t <<EOT
2327 class foo {
2328 public:
2329   void operator delete(void*p){};
2330   void operator delete(void*p,int*){};
2331 };
2332 EOT
2333 test_cxx "whether operator delete can be overloaded in same class" "ok" "no" ""
2334
2335 cat >>confdefs.h <<_ACEOF
2336 #define CMK_MULTIPLE_DELETE $strictpass
2337 _ACEOF
2338
2339
2340
2341 #### test if we can use gcc x86 assembly like this ####
2342 cat > $t <<EOT
2343 double foo(void)
2344 {
2345   unsigned long long int v;
2346   int *lo=0+(int *)&v;
2347   int *hi=1+(int *)&v;
2348   __asm__ __volatile__(
2349       "rdtsc; movl %%edx,%0; movl %%eax,%1"
2350       : /* output  */ "=m" (*hi), "=m" (*lo)
2351       : /* input */
2352       : /* trashes */ "%edx", "%eax"
2353   );
2354   return v;
2355 }
2356 EOT
2357 test_cxx "whether GCC x86 assembly works" "yes" "no" ""
2358
2359 cat >>confdefs.h <<_ACEOF
2360 #define CMK_GCC_X86_ASM $strictpass
2361 _ACEOF
2362
2363
2364 #### test if we can use gcc x86 assembly like this ####
2365 if test $strictpass = 1
2366 then
2367 cat > $t <<EOT
2368 int foo(void)
2369 {
2370   int x;
2371   asm("lock incl %0" :: "m" (x));
2372   asm("lock decl %0" :: "m" (x));
2373   return x;
2374 }
2375 EOT
2376 test_cxx "whether GCC x86 assembly for atomic increment works" "yes" "no" ""
2377
2378 cat >>confdefs.h <<_ACEOF
2379 #define CMK_GCC_X86_ASM_ATOMICINCREMENT $strictpass
2380 _ACEOF
2381
2382 fi
2383
2384 #### test if we can use gcc IA64 assembly like this ####
2385 cat > $t <<EOT
2386 double foo(void)
2387 {
2388         unsigned long long int x;
2389         __asm__ __volatile__("mov %0=ar.itc" : "=r"(x) :: "memory");
2390         return x;
2391 }
2392 EOT
2393 test_cxx "whether GCC IA64 assembly works" "yes" "no" ""
2394
2395 cat >>confdefs.h <<_ACEOF
2396 #define CMK_GCC_IA64_ASM $strictpass
2397 _ACEOF
2398
2399
2400
2401 #### test if we can use PPC assembly like this ####
2402 cat > $t <<EOT
2403 double foo(void)
2404 {
2405         unsigned long long int x;
2406         asm volatile("eieio" ::: "memory");
2407         return x;
2408 }
2409 EOT
2410 test_cxx "whether PPC assembly works" "yes" "no" ""
2411
2412 cat >>confdefs.h <<_ACEOF
2413 #define CMK_PPC_ASM $strictpass
2414 _ACEOF
2415
2416
2417
2418
2419 #### test if we can use __thread ####
2420 cat > $t <<EOT
2421 __thread unsigned long long int x;
2422 static __thread  int y;
2423 void foo(void)
2424 {
2425         x = 1;
2426         y = 1;
2427 }
2428 EOT
2429 test_cxx "whether __thread (Thread Local Storage) is supported" "yes" "no" ""
2430
2431 cat >>confdefs.h <<_ACEOF
2432 #define CMK_TLS_THREAD $strictpass
2433 _ACEOF
2434
2435
2436 #### test if we can build MPI ####
2437 cat > $t <<EOT
2438 #include "mpi.h"
2439 int main(int argc, char **argv)
2440 {
2441   MPI_Init(&argc, &argv);
2442 }
2443 EOT
2444 mv -f ../include/mpi.h ../include/mpi.h.bak 2>/dev/null
2445 test_cxx "whether build on MPI" "yes" "no" ""
2446
2447 cat >>confdefs.h <<_ACEOF
2448 #define CMK_BUILD_ON_MPI $strictpass
2449 _ACEOF
2450
2451 BUILD_MPI=$strictpass
2452
2453 if test $strictpass -eq 1
2454 then
2455 cat > $t <<EOT
2456 #include "mpi.h"
2457 int main(int argc, char **argv)
2458 {
2459   int thread_level, provided;
2460   thread_level = MPI_THREAD_FUNNELED;
2461   MPI_Init_thread(&argc, &argv, thread_level, &provided);
2462 }
2463 EOT
2464 test_cxx "whether MPI_Init_thread is supported" "yes" "no" ""
2465
2466 cat >>confdefs.h <<_ACEOF
2467 #define CMK_MPI_INIT_THREAD $strictpass
2468 _ACEOF
2469
2470 fi
2471 mv -f ../include/mpi.h.bak ../include/mpi.h 2>/dev/null
2472
2473
2474 ################### Syscalls and Libraries ###################
2475
2476 #### test for log2 ###
2477 cat > $t <<EOT
2478 #include <math.h>
2479 int main() {
2480   int i = log2(10);
2481   return 0;
2482 }
2483 EOT
2484 test_link "whether has log2" "yes" "no" ""
2485
2486 cat >>confdefs.h <<_ACEOF
2487 #define CMK_HAS_LOG2 $pass
2488 _ACEOF
2489
2490
2491 #### test for sqrtf ###
2492 cat > $t <<EOT
2493 #include <math.h>
2494 int main() {
2495   float i = sqrtf((float)10.0);
2496   return 0;
2497 }
2498 EOT
2499 test_link "whether has sqrtf" "yes" "no" ""
2500
2501 cat >>confdefs.h <<_ACEOF
2502 #define CMK_HAS_SQRTF $pass
2503 _ACEOF
2504
2505
2506 #### test for mkstemp ###
2507 cat > $t <<EOT
2508 #include <stdlib.h>
2509 #include <string.h>
2510 int main() {
2511   char fname[128];
2512   strcpy(fname, "/tmp/fdXXX.XXX");
2513   mkstemp(fname);
2514   return 0;
2515 }
2516 EOT
2517 test_link "whether has mkstemp" "yes" "no" ""
2518
2519 cat >>confdefs.h <<_ACEOF
2520 #define CMK_USE_MKSTEMP $pass
2521 _ACEOF
2522
2523
2524 #### test for system ###
2525 cat > $t <<EOT
2526 #include <stdlib.h>
2527 int main() {
2528   system("/bin/ls");
2529   return 0;
2530 }
2531 EOT
2532 test_link "whether has system" "yes" "no" ""
2533
2534 cat >>confdefs.h <<_ACEOF
2535 #define CMK_HAS_SYSTEM $pass
2536 _ACEOF
2537
2538
2539 #### test for sbrk ###
2540 cat > $t <<EOT
2541 #include <unistd.h>
2542 int main() {
2543   void *ptr  = sbrk(0);
2544 }
2545 EOT
2546 test_link "whether has sbrk" "yes" "no" ""
2547
2548 cat >>confdefs.h <<_ACEOF
2549 #define CMK_HAS_SBRK $pass
2550 _ACEOF
2551
2552
2553 #### test for mstats ###
2554 cat > $t <<EOT
2555 #include <malloc.h>
2556 int main() {
2557   struct mstats ms = mstats();
2558 }
2559 EOT
2560 test_link "whether has mstats" "yes" "no" ""
2561
2562 cat >>confdefs.h <<_ACEOF
2563 #define CMK_HAS_MSTATS $pass
2564 _ACEOF
2565
2566
2567 #### test for mallinfo ###
2568 cat > $t <<EOT
2569 #include <malloc.h>
2570 int main() {
2571   struct mallinfo mi = mallinfo();
2572 }
2573 EOT
2574 test_link "whether has mallinfo" "yes" "no" ""
2575
2576 cat >>confdefs.h <<_ACEOF
2577 #define CMK_HAS_MALLINFO $pass
2578 _ACEOF
2579
2580
2581 #### test for popen ###
2582 cat > $t <<EOT
2583 #include <stdio.h>
2584 int main() {
2585   FILE *p = popen("/bin/ps", "r");
2586   pclose(p);
2587 }
2588 EOT
2589 test_link "whether has popen" "yes" "no" ""
2590
2591 cat >>confdefs.h <<_ACEOF
2592 #define CMK_HAS_POPEN $pass
2593 _ACEOF
2594
2595
2596 #### test for poll ###
2597 cat > $t <<EOT
2598 #include <poll.h>
2599 void foo(void) {
2600   struct pollfd pos[3];
2601   poll(pos, 1, 1);
2602 }
2603 EOT
2604 test_cxx "whether poll() syscall exists" "yes" "no" ""
2605
2606 cat >>confdefs.h <<_ACEOF
2607 #define CMK_USE_POLL $pass
2608 _ACEOF
2609
2610
2611 #### check if getpid exists ####
2612 cat > $t <<EOT
2613 #include <sys/types.h>
2614 #include <unistd.h>
2615
2616 void foo(void *a) {
2617     pid_t = getpid();
2618 }
2619 EOT
2620 test_cc "whether getpid() exists" "yes" "no" ""
2621
2622 cat >>confdefs.h <<_ACEOF
2623 #define CMK_HAS_GETPID $pass
2624 _ACEOF
2625
2626
2627 #### test for setpriority ###
2628 cat > $t <<EOT
2629 #include <sys/time.h>
2630 #include <sys/resource.h>
2631 void foo(void) {
2632   setpriority(PRIO_PROCESS, 0, 0);
2633 }
2634 EOT
2635 test_cxx "whether setpriority() exists" "yes" "no" ""
2636
2637 cat >>confdefs.h <<_ACEOF
2638 #define CMK_HAS_SETPRIORITY $pass
2639 _ACEOF
2640
2641
2642 #### test for system ###
2643 cat > $t <<EOT
2644 #include "ckdll_system.C"
2645 EOT
2646 test_cxx "whether to use signal-safe system() " "yes" "no" ""
2647
2648 cat >>confdefs.h <<_ACEOF
2649 #define CMK_SIGSAFE_SYSTEM $pass
2650 _ACEOF
2651
2652
2653 ### test sched_setaffinity ####
2654 cat > $tc <<EOT
2655 #include <stdlib.h>
2656 #include <stdio.h>
2657 #include <unistd.h>
2658
2659 #define _GNU_SOURCE
2660 #include <sched.h>
2661 long sched_setaffinity(pid_t pid, unsigned int len, unsigned long *user_mask_ptr);
2662 long sched_getaffinity(pid_t pid, unsigned int len, unsigned long *user_mask_ptr);
2663
2664 int main()
2665 {
2666   unsigned long mask = 0xffffffff;
2667   unsigned int len = sizeof(mask);
2668
2669   if (sched_setaffinity(0, len, &mask) < 0) {
2670     return -1;
2671   }
2672   return 0;
2673 }
2674 EOT
2675 test_linkc "whether sched_setaffinity call exists" "yes" "no" ""
2676
2677 cat >>confdefs.h <<_ACEOF
2678 #define CMK_HAS_SETAFFINITY $pass
2679 _ACEOF
2680
2681
2682 ### test pthread_setaffinity_np ####
2683 cat > $tc <<EOT
2684 #include <stdlib.h>
2685 #include <stdio.h>
2686 #include <unistd.h>
2687 #include <pthread.h>
2688
2689 int main()
2690 {
2691   unsigned long mask = 0xffffffff;
2692   unsigned int len = sizeof(mask);
2693
2694   if (pthread_setaffinity_np(pthread_self(), len, &mask) < 0) {
2695     return -1;
2696   }
2697   return 0;
2698 }
2699 EOT
2700 test_linkc "whether pthread_setaffinity_np call exists" "yes" "no" "-lpthread"
2701
2702 cat >>confdefs.h <<_ACEOF
2703 #define CMK_HAS_PTHREAD_SETAFFINITY $pass
2704 _ACEOF
2705
2706
2707 #### check bindprocessors on AIX ####
2708 cat > $tc <<EOT
2709 #include <stdlib.h>
2710 #include <stdio.h>
2711 #include <unistd.h>
2712
2713 #include <sys/processor.h>
2714
2715 int main()
2716 {
2717   int retValue = 0;
2718   int pid;
2719   pid = getpid();
2720   if (bindprocessor(BINDPROCESS, pid, 0) == -1) return -1;
2721   return 0;
2722 }
2723 EOT
2724 test_linkc "whether bindprocessor call exists" "yes" "no" ""
2725
2726 cat >>confdefs.h <<_ACEOF
2727 #define CMK_HAS_BINDPROCESSOR $pass
2728 _ACEOF
2729
2730
2731
2732 #### check if dlopen works ####
2733 skip_dl=0
2734 # for bproc, ignore -ldl
2735 test -n "$CMK_BPROC" && skip_dl=1
2736 test -n "$CMK_NO_DL" && skip_dl=1
2737 dl_opt='-ldl'
2738 #workaround for pgcc 4.0, -ldl crash linking, so use -Wl,-ldl to skip the prelinker.
2739 case "$CMK_CXX" in
2740 pgCC*) dl_opt='-Wl,-ldl' ;;
2741 esac
2742
2743 if test $skip_dl -eq 0
2744 then
2745
2746 cat > $t <<EOT
2747 #include "ckdll_dlopen.C"
2748 int main() {
2749         CkDll dll("foo.so");
2750         return 0;
2751 }
2752 EOT
2753 test_link "whether dlopen links without $dl_opt" "yes" "no" ""
2754 noldl=$pass
2755 test_link "whether dlopen links with $dl_opt" "yes" "no" "$dl_opt"
2756 if test $pass -eq 1
2757 then
2758 #dlopen requires -ldl: add it to our link line
2759         add_flag CMK_LIBS='"$CMK_LIBS '$dl_opt'"' "dlopen"
2760 fi
2761
2762 if test $pass -eq 1 -o $noldl -eq 1
2763 then
2764 # One version or another of dlopen worked: compile it in
2765
2766 cat >>confdefs.h <<_ACEOF
2767 #define CMK_DLL_USE_DLOPEN 1
2768 _ACEOF
2769
2770 fi
2771
2772 ### test gethostname ####
2773 cat > $tc <<EOT
2774 #include <stdlib.h>
2775 #include <stdio.h>
2776 #include <unistd.h>
2777
2778 int main()
2779 {
2780   char hostname[1000];
2781   gethostname(hostname, 999);
2782   return 0;
2783 }
2784 EOT
2785 test_linkc "whether gethostname call exists" "yes" "no" ""
2786
2787 cat >>confdefs.h <<_ACEOF
2788 #define CMK_HAS_GETHOSTNAME $pass
2789 _ACEOF
2790
2791
2792 #### check if getProcAddress works ####
2793 cat > $t <<EOT
2794 #include "ckdll_win32.C"
2795 EOT
2796 test_cxx "whether getProcAddress works" "yes" "no" ""
2797
2798 cat >>confdefs.h <<_ACEOF
2799 #define CMK_DLL_USE_WIN32 $pass
2800 _ACEOF
2801
2802
2803 fi    # end of skip_dl
2804
2805 #### check if socklen_t exists ####
2806 cat > $t <<EOT
2807 #include <sys/types.h>
2808 #include <sys/socket.h>
2809
2810 void foo(void) {
2811         int i;
2812         socklen_t s=sizeof(i);
2813 }
2814 EOT
2815 test_cxx "whether has socklen_t" "yes" "no" ""
2816
2817 cat >>confdefs.h <<_ACEOF
2818 #define CMK_HAS_SOCKLEN $pass
2819 _ACEOF
2820
2821
2822 #### check if mmap exists ####
2823 cat > $t <<EOT
2824 #include <sys/types.h>
2825 #include <sys/mman.h>
2826
2827 void *foo(void *a,int l,int fd) {
2828         return mmap((caddr_t)a,l,PROT_READ+PROT_WRITE,
2829                  MAP_FIXED+MAP_PRIVATE,fd,0);
2830 }
2831 EOT
2832 test_cxx "whether the mmap() syscall exists" "yes" "no" ""
2833
2834 cat >>confdefs.h <<_ACEOF
2835 #define CMK_HAS_MMAP $pass
2836 _ACEOF
2837
2838
2839 #### check if mmap accepts MAP_ANON ####
2840 cat > $t <<EOT
2841 #include <sys/types.h>
2842 #include <sys/mman.h>
2843
2844 void *foo(void *a,int l) {
2845         return mmap((caddr_t)a,l,PROT_READ+PROT_WRITE,
2846                 MAP_FIXED+MAP_PRIVATE+MAP_ANON,-1,0);
2847 }
2848 EOT
2849 test_cxx "whether mmap() accepts MAP_ANON" "yes" "no" ""
2850
2851 cat >>confdefs.h <<_ACEOF
2852 #define CMK_HAS_MMAP_ANON $pass
2853 _ACEOF
2854
2855
2856 #### check if mmap accepts MAP_NORESERVE ####
2857 cat > $t <<EOT
2858 #include <sys/types.h>
2859 #include <sys/mman.h>
2860
2861 void *foo(void *a,int l) {
2862         return mmap((caddr_t)a,l,PROT_READ+PROT_WRITE,
2863                 MAP_FIXED+MAP_PRIVATE+MAP_NORESERVE,-1,0);
2864 }
2865 EOT
2866 test_cxx "whether mmap() accepts MAP_NORESERVE" "yes" "no" ""
2867
2868 cat >>confdefs.h <<_ACEOF
2869 #define CMK_HAS_MMAP_NORESERVE $pass
2870 _ACEOF
2871
2872
2873 #### check if get_myaddress exists ####
2874 cat > $t <<EOT
2875 #include <rpc/rpc.h>
2876
2877 void foo(void *a) {
2878     get_myaddress((struct sockaddr_in*)a);
2879 }
2880 EOT
2881 test_cxx "whether get_myaddress() exists" "yes" "no" ""
2882
2883 cat >>confdefs.h <<_ACEOF
2884 #define CMK_HAS_GET_MYADDRESS $pass
2885 _ACEOF
2886
2887
2888 #### check if glibc backtrace exists ####
2889 cat > $t <<EOT
2890 #include "cmibacktrace.c"
2891
2892 int main() {
2893         int nLevels=1;
2894         void *stack;
2895         CmiBacktraceRecord(&stack,0,&nLevels);
2896         return 0;
2897 }
2898 EOT
2899 TRACE_LINK_FLAG="-rdynamic"
2900 test_link "whether glibc backtrace works" "yes" "no" "-DCMK_USE_BACKTRACE=1 $TRACE_LINK_FLAG"
2901
2902 cat >>confdefs.h <<_ACEOF
2903 #define CMK_USE_BACKTRACE $pass
2904 _ACEOF
2905
2906
2907 if test $strictpass -eq 1
2908 then
2909         add_flag 'CMK_LD="$CMK_LD '$TRACE_LINK_FLAG'"' "backtrace"
2910         add_flag 'CMK_LDXX="$CMK_LDXX '$TRACE_LINK_FLAG'"' "backtrace"
2911 fi
2912
2913 #### test sleep ####
2914 cat > $t <<EOT
2915 #include <unistd.h>
2916 int main() {
2917   sleep(1);
2918   return 0;
2919 }
2920 EOT
2921 test_cxx "whether has sleep " "yes" "no" ""
2922
2923 cat >>confdefs.h <<_ACEOF
2924 #define CMK_HAS_SLEEP $pass
2925 _ACEOF
2926
2927
2928
2929 #### test personality() and ADDR_NO_RANDOMIZE ####
2930 # Only works on modern Linux systems
2931 cat > $t <<EOT
2932 #include <sys/personality.h>
2933 int main() {
2934     int orig_persona = personality(0xffffffff);
2935     personality(orig_persona | ADDR_NO_RANDOMIZE);
2936     return 0;
2937 }
2938 EOT
2939 test_cxx "whether personality() and ADDR_NO_RANDOMIZE exist" "yes" "no" ""
2940
2941 cat >>confdefs.h <<_ACEOF
2942 #define CMK_HAS_ADDR_NO_RANDOMIZE $pass
2943 _ACEOF
2944
2945
2946
2947 #### test if has zlib ####
2948 # bproc doesnot like -lz in any case
2949 if test -z "$CMK_BPROC"
2950 then
2951
2952 cat > $t <<EOT
2953 #include <zlib.h>
2954 int main() {
2955   gzFile f = gzopen("/tmp/x","r");
2956   gzprintf(f, "test...\n");
2957   gzclose(f);
2958   return 0;
2959 }
2960 EOT
2961 test_link "whether has zlib" "yes" "no" "-lz"
2962
2963 cat >>confdefs.h <<_ACEOF
2964 #define CMK_PROJECTIONS_USE_ZLIB $pass
2965 _ACEOF
2966
2967 if test $pass -eq 1
2968 then
2969         add_flag 'CMK_LIBZ="-lz"' "zlib"
2970 fi
2971
2972 fi
2973
2974 #### test if has elf.h ####
2975 cat > $t <<EOT
2976 #include <elf.h>
2977 typedef Elf32_Addr ELF_TYPE_Addr;
2978 int main() {
2979 }
2980 EOT
2981 test_cxx "whether has elf.h " "yes" "no" ""
2982
2983 cat >>confdefs.h <<_ACEOF
2984 #define CMK_HAS_ELF_H $pass
2985 _ACEOF
2986
2987
2988 #### test if has Multiprocessing.h for apple ####
2989 cat > $t <<EOT
2990 #include <Carbon/Carbon.h>
2991 #include <Multiprocessing.h>
2992 int main() {
2993   int a = MPProcessorsScheduled();
2994 }
2995 EOT
2996 test_cxx "whether has Multiprocessing.h for Apple " "yes" "no" ""
2997
2998 cat >>confdefs.h <<_ACEOF
2999 #define CMK_HAS_MULTIPROCESSING_H $pass
3000 _ACEOF
3001
3002
3003 #### test if "ntohl" is available ####
3004 cat > $t <<EOT
3005 #if defined(_WIN32) && ! defined(__CYGWIN__) || defined(__MINGW_H)
3006 #include <winsock.h>
3007 #else
3008 #include <netinet/in.h>
3009 #include <arpa/inet.h>
3010 #endif
3011
3012 int main() {
3013   int i = 100;
3014   i = ntohl(i);
3015   return 0;
3016 }
3017 EOT
3018 test_link "whether ntohl is available" "yes" "no" ""
3019
3020 cat >>confdefs.h <<_ACEOF
3021 #define CMK_HAS_NTOHL $pass
3022 _ACEOF
3023
3024
3025 ### test for libjpeg ####
3026 cat > $t <<EOT
3027 #include <stdio.h>
3028 #include <stdlib.h>
3029 #include "jpeglib.h"
3030
3031 int main()
3032 {
3033   struct jpeg_compress_struct cinfo;
3034   jpeg_create_compress(&cinfo);
3035   return 0;
3036 }
3037 EOT
3038 test_link "whether has libjpeg" "yes" "no" "-ljpeg"
3039
3040 cat >>confdefs.h <<_ACEOF
3041 #define CMK_USE_LIBJPEG $pass
3042 _ACEOF
3043
3044 if test $pass -eq 1
3045 then
3046         add_flag 'CMK_LIBJPEG="-ljpeg"' "libjpeg"
3047 fi
3048
3049 #### check if PAPI exists ####
3050 if test -n "$CMK_USE_PAPI"
3051 then
3052 cat > $t <<EOT
3053 #include <stdio.h>
3054 #include <papi.h>
3055
3056 int main() {
3057     int Events[1] = { PAPI_TOT_CYC };
3058     if (PAPI_start_counters(Events, 1) != PAPI_OK) return 1;
3059     return 0;
3060 }
3061 EOT
3062 test_link "whether PAPI exists" "yes" "no" "-lpapi"
3063
3064 cat >>confdefs.h <<_ACEOF
3065 #define CMK_HAS_COUNTER_PAPI $pass
3066 _ACEOF
3067
3068 if test $pass -eq 1
3069 then
3070         add_flag 'CMK_LIBS="$CMK_LIBS -lpapi"' "papi"
3071 fi
3072 fi
3073
3074 #### test if Python headers are installed ####
3075 PYTHON_VERSION=`python -V 2>&1 | awk {'print $2'} | awk -F. {'print $1"."$2'}`
3076 cat > $t <<EOT
3077 #include "python${PYTHON_VERSION}/Python.h"
3078 #include "python${PYTHON_VERSION}/compile.h"
3079 #include "python${PYTHON_VERSION}/eval.h"
3080 #include "python${PYTHON_VERSION}/node.h"
3081
3082 int main() {
3083     Py_Initialize();
3084     PyEval_InitThreads();
3085     struct _node* programNode = PyParser_SimpleParseString("return 1\n",Py_file_input);
3086     PyCodeObject *program = PyNode_Compile(programNode, "");
3087 }
3088 EOT
3089 test_link "whether Python is installed" "yes" "no" "-lpython$PYTHON_VERSION -lpthread -lutil -ldl"
3090
3091 cat >>confdefs.h <<_ACEOF
3092 #define CMK_HAS_PYTHON $pass
3093 _ACEOF
3094
3095
3096 cat >>confdefs.h <<_ACEOF
3097 #define CMK_PYTHON_VERSION ${PYTHON_VERSION}
3098 _ACEOF
3099
3100 if test $pass -eq 1
3101 then
3102         add_flag "CMK_BUILD_PYTHON=$PYTHON_VERSION" "python"
3103 fi
3104
3105 #### test if it can build shared library ####
3106 cat > $t <<EOT
3107 #include "stdlib.h"
3108 extern int foo();
3109 int foo1() {
3110   void * t= malloc(2);
3111   foo();
3112   return 0;
3113 }
3114 EOT
3115 test_linkso "whether can build shared library" "yes" "no" ""
3116 if test $pass -eq 0
3117 then
3118         add_flag 'CMK_NO_BUILD_SHARED="true"' "build-shared"
3119 else
3120         BUILD_SHARED=1
3121         if test $BUILD_MPI -eq 1
3122         then
3123 cat > $t <<EOT
3124 #include "stdlib.h"
3125 #include "mpi.h"
3126 extern int foo();
3127 int foo(int argc, char ** argv) {
3128   void * t= malloc(2);
3129   foo();
3130   MPI_Init(&argc, &argv);
3131   return 0;
3132 }
3133 EOT
3134                 test_linkso "whether can build shared library with MPI" "yes" "no" ""
3135                 BUILD_SHARED=$pass
3136         fi
3137         if test $BUILD_SHARED -eq 1
3138         then
3139                 add_flag 'CMK_NO_BUILD_SHARED="false"' "build-shared"
3140         else
3141                 add_flag 'CMK_NO_BUILD_SHARED="true"' "build-shared"
3142         fi
3143 fi
3144
3145 #### test the version number of bproc ####
3146 if test -n "$CMK_BPROC"
3147 then
3148 cat > $t <<EOT
3149 #include <stdio.h>
3150 #include <sys/bproc.h>
3151 int main()
3152 {
3153   struct bproc_version_t vers;
3154   bproc_version(&vers);
3155   printf("%s\n", vers.version_string);
3156 }
3157 EOT
3158 test_link "whether bproc compiles" "yes" "no" "-lbproc"
3159 if test $pass -eq 1
3160 then
3161 { echo "$as_me:$LINENO: checking \"bproc version\"" >&5
3162 echo $ECHO_N "checking \"bproc version\"... $ECHO_C" >&6; }
3163 bproc_ver=`./testlink`
3164 if test x$bproc_ver = x
3165 then
3166 test_result 0 "bproc version" "ERROR" ""
3167 test_finish 1
3168 else
3169 test_result 0 "bproc version" "$bproc_ver" ""
3170 fi
3171 bproc_ver=`echo $bproc_ver | cut -d'.' -f1`
3172
3173 cat >>confdefs.h <<_ACEOF
3174 #define CMK_BPROC_VERSION $bproc_ver
3175 _ACEOF
3176
3177 fi
3178 fi
3179
3180 #### test the if command sync exists ####
3181 # Extract the first word of "sync", so it can be a program name with args.
3182 set dummy sync; ac_word=$2
3183 { echo "$as_me:$LINENO: checking for $ac_word" >&5
3184 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
3185 if test "${ac_cv_prog_SYNC+set}" = set; then
3186   echo $ECHO_N "(cached) $ECHO_C" >&6
3187 else
3188   if test -n "$SYNC"; then
3189   ac_cv_prog_SYNC="$SYNC" # Let the user override the test.
3190 else
3191 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3192 for as_dir in $PATH
3193 do
3194   IFS=$as_save_IFS
3195   test -z "$as_dir" && as_dir=.
3196   for ac_exec_ext in '' $ac_executable_extensions; do
3197   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3198     ac_cv_prog_SYNC="sync "
3199     echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3200     break 2
3201   fi
3202 done
3203 done
3204 IFS=$as_save_IFS
3205
3206 fi
3207 fi
3208 SYNC=$ac_cv_prog_SYNC
3209 if test -n "$SYNC"; then
3210   { echo "$as_me:$LINENO: result: $SYNC" >&5
3211 echo "${ECHO_T}$SYNC" >&6; }
3212 else
3213   { echo "$as_me:$LINENO: result: no" >&5
3214 echo "${ECHO_T}no" >&6; }
3215 fi
3216
3217
3218 if test -n "$SYNC"
3219 then
3220
3221 cat >>confdefs.h <<_ACEOF
3222 #define CMK_HAS_SYNC 1
3223 _ACEOF
3224
3225 fi
3226
3227 ################## Fortran #########################
3228
3229 #echo "set F77 compiler as: $CMK_CF77"
3230 { echo "$as_me:$LINENO: checking \"F77 compiler as\"" >&5
3231 echo $ECHO_N "checking \"F77 compiler as\"... $ECHO_C" >&6; }
3232 { echo "$as_me:$LINENO: result: \"$CMK_CF77\"" >&5
3233 echo "${ECHO_T}\"$CMK_CF77\"" >&6; }
3234
3235 { echo "$as_me:$LINENO: checking \"whether Fortran 77 compiler works\"" >&5
3236 echo $ECHO_N "checking \"whether Fortran 77 compiler works\"... $ECHO_C" >&6; }
3237 ### test fortran 77 compiler ###
3238 cat > conftest.f <<EOF
3239       SUBROUTINE FOO_foo
3240       END
3241 EOF
3242 $CMK_CF77 -c conftest.f > /dev/null 2> /dev/null
3243 if test ! -r conftest.o
3244 then
3245   { echo "$as_me:$LINENO: result: \"no\"" >&5
3246 echo "${ECHO_T}\"no\"" >&6; }
3247 else
3248   { echo "$as_me:$LINENO: result: \"yes\"" >&5
3249 echo "${ECHO_T}\"yes\"" >&6; }
3250 fi
3251
3252 ### test fortran 90 compiler ###
3253 #echo "set F90 compiler as: $CMK_CF90"
3254 { echo "$as_me:$LINENO: checking \"F90 compiler as\"" >&5
3255 echo $ECHO_N "checking \"F90 compiler as\"... $ECHO_C" >&6; }
3256 { echo "$as_me:$LINENO: result: \"$CMK_CF90\"" >&5
3257 echo "${ECHO_T}\"$CMK_CF90\"" >&6; }
3258
3259 { echo "$as_me:$LINENO: checking \"whether Fortran 90 compiler works\"" >&5
3260 echo $ECHO_N "checking \"whether Fortran 90 compiler works\"... $ECHO_C" >&6; }
3261 cat > conftest2.f90 <<EOF
3262       SUBROUTINE FOO_foo
3263       END
3264 EOF
3265 $CMK_CF90 -c conftest2.f90 > /dev/null 2> /dev/null
3266 if test ! -r conftest2.o
3267 then
3268   { echo "$as_me:$LINENO: result: \"no\"" >&5
3269 echo "${ECHO_T}\"no\"" >&6; }
3270 else
3271   { echo "$as_me:$LINENO: result: \"yes\"" >&5
3272 echo "${ECHO_T}\"yes\"" >&6; }
3273   mv -f conftest2.o conftest.o
3274   USE_FORTRAN90=1
3275 fi
3276
3277 ### check fortran name mangling
3278 { echo "$as_me:$LINENO: checking subroutine name used by Fortran 90 compiler" >&5
3279 echo $ECHO_N "checking subroutine name used by Fortran 90 compiler... $ECHO_C" >&6; }
3280
3281 if test -r conftest.o
3282 then
3283   if test "${fortran_postfix+set}" = set; then
3284   echo $ECHO_N "(cached) $ECHO_C" >&6
3285 else
3286   NAME=`$CMK_NM conftest.o | grep "foo_foo__"`
3287   if test "$NAME" != ""
3288   then
3289     fortran_postfix=TWOSCORE
3290
3291 cat >>confdefs.h <<_ACEOF
3292 #define CMK_FORTRAN_USES_TWOSCORE 1
3293 _ACEOF
3294
3295   else
3296     NAME=`$CMK_NM conftest.o | grep "foo_foo_"`
3297     if test "$NAME" != ""
3298     then
3299       fortran_postfix=ONESCORE
3300
3301 cat >>confdefs.h <<_ACEOF
3302 #define CMK_FORTRAN_USES_ONESCORE 1
3303 _ACEOF
3304
3305     else
3306       NAME=`$CMK_NM conftest.o | grep "foo_foo"`
3307       if test "$NAME" != ""
3308       then
3309         fortran_postfix=NOSCORE
3310
3311 cat >>confdefs.h <<_ACEOF
3312 #define CMK_FORTRAN_USES_NOSCORE 1
3313 _ACEOF
3314
3315       else
3316         NAME=`$CMK_NM conftest.o | grep "FOO_FOO"`
3317         if test "$NAME" != ""
3318         then
3319           fortran_postfix=ALLCAPS
3320
3321 cat >>confdefs.h <<_ACEOF
3322 #define CMK_FORTRAN_USES_ALLCAPS 1
3323 _ACEOF
3324
3325         else
3326           echo "#################################################"
3327           echo "FORTRAN compiler generated name not supported yet"
3328           echo "#################################################"
3329         fi
3330       fi
3331     fi
3332   fi
3333   rm -f conftest.f conftest.o
3334
3335 fi
3336
3337   { echo "$as_me:$LINENO: result: $fortran_postfix" >&5
3338 echo "${ECHO_T}$fortran_postfix" >&6; }
3339 else
3340   { echo "$as_me:$LINENO: result: \"Fortran compiler not working\"" >&5
3341 echo "${ECHO_T}\"Fortran compiler not working\"" >&6; }
3342 fi
3343
3344 ### check module name ###
3345
3346 if test "$USE_FORTRAN90" = 1
3347 then
3348   cat > conftest.f90 <<EOF
3349       MODULE testmod
3350         interface
3351           function fpup_issizing(p)
3352           INTEGER :: p
3353           logical fpup_issizing
3354           end function
3355         end interface
3356       END MODULE
3357 EOF
3358   { echo "$as_me:$LINENO: checking Fortran 90 mod name is capital" >&5
3359 echo $ECHO_N "checking Fortran 90 mod name is capital... $ECHO_C" >&6; }
3360   $CMK_CF90 -c conftest.f90 > /dev/null 2> /dev/null
3361   name=`ls TESTMOD.* 2>/dev/null`
3362   if test -n "$name"
3363   then
3364         { echo "$as_me:$LINENO: result: \"yes\"" >&5
3365 echo "${ECHO_T}\"yes\"" >&6; }
3366         add_flag 'CMK_MOD_NAME_ALLCAPS=1' "mod name capital"
3367   else
3368         { echo "$as_me:$LINENO: result: \"no\"" >&5
3369 echo "${ECHO_T}\"no\"" >&6; }
3370         name=`ls testmod.* 2>/dev/null`
3371   fi
3372   if test -n "$name"
3373   then
3374         { echo "$as_me:$LINENO: checking Fortran 90 mod name extension" >&5
3375 echo $ECHO_N "checking Fortran 90 mod name extension... $ECHO_C" >&6; }
3376         ext=`echo $name | sed -e 's/^[^.]*\.//'`
3377         add_flag 'CMK_MOD_EXT="'$ext'"' "mod name extension"
3378         { echo "$as_me:$LINENO: result: \"$ext\"" >&5
3379 echo "${ECHO_T}\"$ext\"" >&6; }
3380         /bin/rm -f $name
3381   fi
3382   /bin/rm -f conftest.f90
3383 fi
3384
3385 ### go get libpthread.a from charm website ###
3386 if test "$base_version" = "net-linux" || test "$base_version" = "mpi-linux"
3387 then
3388 case $version in
3389 *linux*smp*|*linux*vmi*)
3390   if test ! -r ../lib/libpthread.a
3391   then
3392     # Extract the first word of "wget", so it can be a program name with args.
3393 set dummy wget; ac_word=$2
3394 { echo "$as_me:$LINENO: checking for $ac_word" >&5
3395 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
3396 if test "${ac_cv_prog_WGET+set}" = set; then
3397   echo $ECHO_N "(cached) $ECHO_C" >&6
3398 else
3399   if test -n "$WGET"; then
3400   ac_cv_prog_WGET="$WGET" # Let the user override the test.
3401 else
3402 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3403 for as_dir in $PATH
3404 do
3405   IFS=$as_save_IFS
3406   test -z "$as_dir" && as_dir=.
3407   for ac_exec_ext in '' $ac_executable_extensions; do
3408   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3409     ac_cv_prog_WGET="wget "
3410     echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3411     break 2
3412   fi
3413 done
3414 done
3415 IFS=$as_save_IFS
3416
3417 fi
3418 fi
3419 WGET=$ac_cv_prog_WGET
3420 if test -n "$WGET"; then
3421   { echo "$as_me:$LINENO: result: $WGET" >&5
3422 echo "${ECHO_T}$WGET" >&6; }
3423 else
3424   { echo "$as_me:$LINENO: result: no" >&5
3425 echo "${ECHO_T}no" >&6; }
3426 fi
3427
3428
3429     # Extract the first word of "lynx", so it can be a program name with args.
3430 set dummy lynx; ac_word=$2
3431 { echo "$as_me:$LINENO: checking for $ac_word" >&5
3432 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
3433 if test "${ac_cv_prog_LYNX+set}" = set; then
3434   echo $ECHO_N "(cached) $ECHO_C" >&6
3435 else
3436   if test -n "$LYNX"; then
3437   ac_cv_prog_LYNX="$LYNX" # Let the user override the test.
3438 else
3439 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3440 for as_dir in $PATH
3441 do
3442   IFS=$as_save_IFS
3443   test -z "$as_dir" && as_dir=.
3444   for ac_exec_ext in '' $ac_executable_extensions; do
3445   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3446     ac_cv_prog_LYNX="lynx "
3447     echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3448     break 2
3449   fi
3450 done
3451 done
3452 IFS=$as_save_IFS
3453
3454 fi
3455 fi
3456 LYNX=$ac_cv_prog_LYNX
3457 if test -n "$LYNX"; then
3458   { echo "$as_me:$LINENO: result: $LYNX" >&5
3459 echo "${ECHO_T}$LYNX" >&6; }
3460 else
3461   { echo "$as_me:$LINENO: result: no" >&5
3462 echo "${ECHO_T}no" >&6; }
3463 fi
3464
3465
3466     # Extract the first word of "telnet", so it can be a program name with args.
3467 set dummy telnet; ac_word=$2
3468 { echo "$as_me:$LINENO: checking for $ac_word" >&5
3469 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
3470 if test "${ac_cv_prog_TELNET+set}" = set; then
3471   echo $ECHO_N "(cached) $ECHO_C" >&6
3472 else
3473   if test -n "$TELNET"; then
3474   ac_cv_prog_TELNET="$TELNET" # Let the user override the test.
3475 else
3476 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3477 for as_dir in $PATH
3478 do
3479   IFS=$as_save_IFS
3480   test -z "$as_dir" && as_dir=.
3481   for ac_exec_ext in '' $ac_executable_extensions; do
3482   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3483     ac_cv_prog_TELNET="telnet "
3484     echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3485     break 2
3486   fi
3487 done
3488 done
3489 IFS=$as_save_IFS
3490
3491 fi
3492 fi
3493 TELNET=$ac_cv_prog_TELNET
3494 if test -n "$TELNET"; then
3495   { echo "$as_me:$LINENO: result: $TELNET" >&5
3496 echo "${ECHO_T}$TELNET" >&6; }
3497 else
3498   { echo "$as_me:$LINENO: result: no" >&5
3499 echo "${ECHO_T}no" >&6; }
3500 fi
3501
3502
3503     # Extract the first word of "uudecode", so it can be a program name with args.
3504 set dummy uudecode; ac_word=$2
3505 { echo "$as_me:$LINENO: checking for $ac_word" >&5
3506 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
3507 if test "${ac_cv_prog_UUDECODE+set}" = set; then
3508   echo $ECHO_N "(cached) $ECHO_C" >&6
3509 else
3510   if test -n "$UUDECODE"; then
3511   ac_cv_prog_UUDECODE="$UUDECODE" # Let the user override the test.
3512 else
3513 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3514 for as_dir in $PATH
3515 do
3516   IFS=$as_save_IFS
3517   test -z "$as_dir" && as_dir=.
3518   for ac_exec_ext in '' $ac_executable_extensions; do
3519   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3520     ac_cv_prog_UUDECODE="uudecode "
3521     echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3522     break 2
3523   fi
3524 done
3525 done
3526 IFS=$as_save_IFS
3527
3528 fi
3529 fi
3530 UUDECODE=$ac_cv_prog_UUDECODE
3531 if test -n "$UUDECODE"; then
3532   { echo "$as_me:$LINENO: result: $UUDECODE" >&5
3533 echo "${ECHO_T}$UUDECODE" >&6; }
3534 else
3535   { echo "$as_me:$LINENO: result: no" >&5
3536 echo "${ECHO_T}no" >&6; }
3537 fi
3538
3539
3540
3541     CHARMIP='128.174.241.81'
3542 #    CHARMIP='charm.cs.uiuc.edu'
3543 #    VERSION=`nm /lib/libc.so.6 | grep "A GLIBC_" | tail -1 | sed -e "s/00000000 A GLIBC_//g"`
3544     { echo "$as_me:$LINENO: checking glibc version" >&5
3545 echo $ECHO_N "checking glibc version... $ECHO_C" >&6; }
3546     get_glibc_version
3547     { echo "$as_me:$LINENO: result: $GLIBCVERSION" >&5
3548 echo "${ECHO_T}$GLIBCVERSION" >&6; }
3549     if test 1 = `expr $GLIBCVERSION \> 2.2.92`
3550     then
3551       cat >> ./conv-mach-opt.h << EOT
3552 #undef CMK_LINUX_PTHREAD_HACK
3553 EOT
3554     else
3555       L="libpthread-$GLIBCVERSION.a"
3556       LSO="libpthread-$GLIBCVERSION.so"
3557       URL="http://${CHARMIP}/distrib/$L"
3558       URLSO="http://${CHARMIP}/distrib/$LSO"
3559       finish=0
3560       printf "getting $L from $URL ..."
3561       if test -n "$WGET"
3562       then
3563         printf "(wget) ..."
3564         $WGET $URL > /dev/null 2>&1  && mv $L ../lib && finish=1
3565         $WGET $URLSO > /dev/null 2>&1  && mv $LSO ../lib_so
3566       fi
3567       if test $finish = 0 && test -n "$LYNX"
3568       then
3569         printf "(lynx) ..."
3570         $LYNX -source $URL > $L 2>/dev/null
3571         if file -L $L | grep 'archive' > /dev/null
3572         then
3573           mv $L ../lib && finish=1
3574         fi
3575         $LYNX -source $URLSO > $L 2>/dev/null
3576       fi
3577       if test $finish = 0 && test -n "$TELNET" && test -n "$UUDECODE"
3578       then
3579         printf "(telnet) ..."
3580         cat > get_libpthread <<EOT
3581 #! /bin/sh
3582 echo "GET /distrib/libpthread-$GLIBCVERSION.uu 1.0"
3583 echo
3584 # exit normally when the telnet session closes.
3585 trap "exit 0" 13
3586 while : ; do
3587  echo
3588  sleep 1
3589 done
3590 EOT
3591         /bin/sh ./get_libpthread | ($TELNET $CHARMIP 80 > .uulib 2>/dev/null); $UUDECODE .uulib 2>/dev/null && rm -f .uulib && mv $L ../lib && finish=1
3592       fi
3593       ln -s $L ../lib/libpthread.a
3594       ln -s $LSO ../lib_so/libpthread.so
3595       if test $finish = 0 || test ! -r ../lib/libpthread.a
3596       then
3597         /bin/rm -f ../lib/libpthread.a
3598         echo "failed"
3599         echo "#####################################################################"
3600         echo "wget, lynx or telnet must be installed to get libpthread.a from charm website."
3601         echo "Alternately, your version of GLIBC ($GLIBCVERSION) is not yet supported--"
3602         echo " contact ppl@cs.uiuc.edu for assistance."
3603         echo "#####################################################################"
3604         exit 1
3605       else
3606         echo "done"
3607       fi
3608     fi
3609   fi
3610   ;;
3611 esac
3612 fi
3613
3614 ac_config_files="$ac_config_files libs/ck-libs/ampi/ampiCC libs/ck-libs/ampi/ampirun"
3615
3616 ac_config_commands="$ac_config_commands default"
3617
3618 cat >confcache <<\_ACEOF
3619 # This file is a shell script that caches the results of configure
3620 # tests run on this system so they can be shared between configure
3621 # scripts and configure runs, see configure's option --config-cache.
3622 # It is not useful on other systems.  If it contains results you don't
3623 # want to keep, you may remove or edit it.
3624 #
3625 # config.status only pays attention to the cache file if you give it
3626 # the --recheck option to rerun configure.
3627 #
3628 # `ac_cv_env_foo' variables (set or unset) will be overridden when
3629 # loading this file, other *unset* `ac_cv_foo' will be assigned the
3630 # following values.
3631
3632 _ACEOF
3633
3634 # The following way of writing the cache mishandles newlines in values,
3635 # but we know of no workaround that is simple, portable, and efficient.
3636 # So, we kill variables containing newlines.
3637 # Ultrix sh set writes to stderr and can't be redirected directly,
3638 # and sets the high bit in the cache file unless we assign to the vars.
3639 (
3640   for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
3641     eval ac_val=\$$ac_var
3642     case $ac_val in #(
3643     *${as_nl}*)
3644       case $ac_var in #(
3645       *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
3646 echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
3647       esac
3648       case $ac_var in #(
3649       _ | IFS | as_nl) ;; #(
3650       *) $as_unset $ac_var ;;
3651       esac ;;
3652     esac
3653   done
3654
3655   (set) 2>&1 |
3656     case $as_nl`(ac_space=' '; set) 2>&1` in #(
3657     *${as_nl}ac_space=\ *)
3658       # `set' does not quote correctly, so add quotes (double-quote
3659       # substitution turns \\\\ into \\, and sed turns \\ into \).
3660       sed -n \
3661         "s/'/'\\\\''/g;
3662           s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
3663       ;; #(
3664     *)
3665       # `set' quotes correctly as required by POSIX, so do not add quotes.
3666       sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
3667       ;;
3668     esac |
3669     sort
3670 ) |
3671   sed '
3672      /^ac_cv_env_/b end
3673      t clear
3674      :clear
3675      s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
3676      t end
3677      s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
3678      :end' >>confcache
3679 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
3680   if test -w "$cache_file"; then
3681     test "x$cache_file" != "x/dev/null" &&
3682       { echo "$as_me:$LINENO: updating cache $cache_file" >&5
3683 echo "$as_me: updating cache $cache_file" >&6;}
3684     cat confcache >$cache_file
3685   else
3686     { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
3687 echo "$as_me: not updating unwritable cache $cache_file" >&6;}
3688   fi
3689 fi
3690 rm -f confcache
3691
3692 test "x$prefix" = xNONE && prefix=$ac_default_prefix
3693 # Let make expand exec_prefix.
3694 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
3695
3696 DEFS=-DHAVE_CONFIG_H
3697
3698 ac_libobjs=
3699 ac_ltlibobjs=
3700 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
3701   # 1. Remove the extension, and $U if already installed.
3702   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
3703   ac_i=`echo "$ac_i" | sed "$ac_script"`
3704   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
3705   #    will be set to the directory where LIBOBJS objects are built.
3706   ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
3707   ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
3708 done
3709 LIBOBJS=$ac_libobjs
3710
3711 LTLIBOBJS=$ac_ltlibobjs
3712
3713
3714
3715 : ${CONFIG_STATUS=./config.status}
3716 ac_clean_files_save=$ac_clean_files
3717 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
3718 { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
3719 echo "$as_me: creating $CONFIG_STATUS" >&6;}
3720 cat >$CONFIG_STATUS <<_ACEOF
3721 #! $SHELL
3722 # Generated by $as_me.
3723 # Run this file to recreate the current configuration.
3724 # Compiler output produced by configure, useful for debugging
3725 # configure, is in config.log if it exists.
3726
3727 debug=false
3728 ac_cs_recheck=false
3729 ac_cs_silent=false
3730 SHELL=\${CONFIG_SHELL-$SHELL}
3731 _ACEOF
3732
3733 cat >>$CONFIG_STATUS <<\_ACEOF
3734 ## --------------------- ##
3735 ## M4sh Initialization.  ##
3736 ## --------------------- ##
3737
3738 # Be more Bourne compatible
3739 DUALCASE=1; export DUALCASE # for MKS sh
3740 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
3741   emulate sh
3742   NULLCMD=:
3743   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
3744   # is contrary to our usage.  Disable this feature.
3745   alias -g '${1+"$@"}'='"$@"'
3746   setopt NO_GLOB_SUBST
3747 else
3748   case `(set -o) 2>/dev/null` in
3749   *posix*) set -o posix ;;
3750 esac
3751
3752 fi
3753
3754
3755
3756
3757 # PATH needs CR
3758 # Avoid depending upon Character Ranges.
3759 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
3760 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
3761 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
3762 as_cr_digits='0123456789'
3763 as_cr_alnum=$as_cr_Letters$as_cr_digits
3764
3765 # The user is always right.
3766 if test "${PATH_SEPARATOR+set}" != set; then
3767   echo "#! /bin/sh" >conf$$.sh
3768   echo  "exit 0"   >>conf$$.sh
3769   chmod +x conf$$.sh
3770   if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
3771     PATH_SEPARATOR=';'
3772   else
3773     PATH_SEPARATOR=:
3774   fi
3775   rm -f conf$$.sh
3776 fi
3777
3778 # Support unset when possible.
3779 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
3780   as_unset=unset
3781 else
3782   as_unset=false
3783 fi
3784
3785
3786 # IFS
3787 # We need space, tab and new line, in precisely that order.  Quoting is
3788 # there to prevent editors from complaining about space-tab.
3789 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
3790 # splitting by setting IFS to empty value.)
3791 as_nl='
3792 '
3793 IFS=" ""        $as_nl"
3794
3795 # Find who we are.  Look in the path if we contain no directory separator.
3796 case $0 in
3797   *[\\/]* ) as_myself=$0 ;;
3798   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3799 for as_dir in $PATH
3800 do
3801   IFS=$as_save_IFS
3802   test -z "$as_dir" && as_dir=.
3803   test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
3804 done
3805 IFS=$as_save_IFS
3806
3807      ;;
3808 esac
3809 # We did not find ourselves, most probably we were run as `sh COMMAND'
3810 # in which case we are not to be found in the path.
3811 if test "x$as_myself" = x; then
3812   as_myself=$0
3813 fi
3814 if test ! -f "$as_myself"; then
3815   echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
3816   { (exit 1); exit 1; }
3817 fi
3818
3819 # Work around bugs in pre-3.0 UWIN ksh.
3820 for as_var in ENV MAIL MAILPATH
3821 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
3822 done
3823 PS1='$ '
3824 PS2='> '
3825 PS4='+ '
3826
3827 # NLS nuisances.
3828 for as_var in \
3829   LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
3830   LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
3831   LC_TELEPHONE LC_TIME
3832 do
3833   if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
3834     eval $as_var=C; export $as_var
3835   else
3836     ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
3837   fi
3838 done
3839
3840 # Required to use basename.
3841 if expr a : '\(a\)' >/dev/null 2>&1 &&
3842    test "X`expr 00001 : '.*\(...\)'`" = X001; then
3843   as_expr=expr
3844 else
3845   as_expr=false
3846 fi
3847
3848 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
3849   as_basename=basename
3850 else
3851   as_basename=false
3852 fi
3853
3854
3855 # Name of the executable.
3856 as_me=`$as_basename -- "$0" ||
3857 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
3858          X"$0" : 'X\(//\)$' \| \
3859          X"$0" : 'X\(/\)' \| . 2>/dev/null ||
3860 echo X/"$0" |
3861     sed '/^.*\/\([^/][^/]*\)\/*$/{
3862             s//\1/
3863             q
3864           }
3865           /^X\/\(\/\/\)$/{
3866             s//\1/
3867             q
3868           }
3869           /^X\/\(\/\).*/{
3870             s//\1/
3871             q
3872           }
3873           s/.*/./; q'`
3874