1 # This is a frozen state file generated by GNU m4 1.4
6 AS_DIRNAME_m4_defun_pro([AS_DIRNAME])AS_REQUIRE([_$0_PREPARE])dnl
8 _AS_DIRNAME_EXPR([$1]) 2>/dev/null ||
9 _AS_DIRNAME_SED([$1])[]_m4_defun_epi([AS_DIRNAME])
13 _m4_divert(VERSION)350
15 m4_changequotechangequote
17 m4_location(_AS_TEST_PREPARE)../../lib/m4sugar/m4sh.m4:1066
19 m4_location(AS_IF)../../lib/m4sugar/m4sh.m4:523
21 _AS_BASENAME_EXPR_m4_defun_pro([_AS_BASENAME_EXPR])AS_REQUIRE([_AS_EXPR_PREPARE])dnl
22 $as_expr X/[]$1 : '.*/\([[^/][^/]*]\)/*$' \| \
23 X[]$1 : 'X\(//\)$' \| \
24 X[]$1 : 'X\(/\)' \| .[]_m4_defun_epi([_AS_BASENAME_EXPR])
26 m4_re_word[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_][abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789]*
28 _AS_QUOTE_IFELSEm4_bmatch([$1],
33 _AS_ECHO_UNQUOTEDecho "$1" >&m4_default([$2], [AS_MESSAGE_FD])
35 _AS_LN_S_PREPARE_m4_defun_pro([_AS_LN_S_PREPARE])rm -f conf$$ conf$$.exe conf$$.file
36 if test -d conf$$.dir; then
37 rm -f conf$$.dir/conf$$.file
43 if ln -s conf$$.file conf$$ 2>/dev/null; then
45 # ... but there are two gotchas:
46 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
47 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
48 # In both cases, we have to default to `cp -p'.
49 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
51 elif ln conf$$.file conf$$ 2>/dev/null; then
56 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
57 rmdir conf$$.dir 2>/dev/null
58 []_m4_defun_epi([_AS_LN_S_PREPARE])
60 m4_includem4_include_unique([$1])dnl
61 m4_builtin([include], [$1])
63 _m4_divert(M4SH-INIT)5
65 m4_cr_digits0123456789
67 AT_COPYRIGHTAS_COPYRIGHT([$1])[]dnl
68 m4_divert_text([VERSION_NOTICES],
72 m4_signm4_bmatch([$1],
77 m4_location__file__:__line__
79 AS_WARNAS_MESSAGE([WARNING: $1], [2])
81 AS_VAR_GETAS_LITERAL_IF([$1],
83 [`eval echo '${'m4_bpatsubst($1, [[\\`]], [\\\&])'}'`])
85 m4_location(AS_TR_SH)../../lib/m4sugar/m4sh.m4:1354
87 m4_location(_AS_ECHO_N_PREPARE)../../lib/m4sugar/m4sh.m4:640
89 AS_BOURNE_COMPATIBLE# Be more Bourne compatible
90 DUALCASE=1; export DUALCASE # for MKS sh
94 m4_text_box@%:@@%:@ m4_bpatsubst([$1], [.], m4_if([$2], [], [[-]], [[$2]])) @%:@@%:@
96 @%:@@%:@ m4_bpatsubst([$1], [.], m4_if([$2], [], [[-]], [[$2]])) @%:@@%:@[]dnl
99 m4_flattenm4_translit(m4_bpatsubst([[[$1]]], [\\
105 AS_PREPARE_m4_defun_pro([AS_PREPARE])m4_divert_text([M4SH-INIT], [_AS_PREPARE])[]_m4_defun_epi([AS_PREPARE])
107 m4_location(_AT_ARG_OPTION)autotest/general.m4:1099
109 _m4_divert(HELP_END)304
111 m4_form4_pushdef([$1], m4_eval([$2]))dnl
112 m4_if(m4_eval(([$3]) > $1), 1,
113 [m4_pushdef([_m4_step], m4_eval(m4_default([$4], 1)))dnl
114 m4_assert(_m4_step > 0)dnl
115 _m4_for([$1], m4_eval((([$3]) - $1) / _m4_step * _m4_step + $1), _m4_step, [$5])],
116 m4_eval(([$3]) < $1), 1,
117 [m4_pushdef([_m4_step], m4_eval(m4_default([$4], -1)))dnl
118 m4_assert(_m4_step < 0)dnl
119 _m4_for([$1], m4_eval(($1 - ([$3])) / -(_m4_step) * _m4_step + $1), _m4_step, [$5])],
120 [m4_pushdef(_m4_step,[])dnl
122 m4_popdef([_m4_step])dnl
125 m4_copy_unm4m4_copy([$1], m4_bpatsubst([$1], [^m4_\(.*\)], [[\1]]))
127 _AS_BOX_INDIRsed 'h;s/./m4_default([$2], [-])/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
131 _m4_defun_pro_outerm4_copy([_m4_divert_diversion], [_m4_divert_dump])dnl
132 m4_divert_push([GROW])dnl
137 _AS_ECHO_NAS_REQUIRE([_AS_ECHO_N_PREPARE])dnl
138 echo $ECHO_N "_AS_QUOTE([$1])$ECHO_C" >&m4_default([$2],
141 m4_casem4_if([$#], 0, [],
145 [$0([$1], m4_shiftn(3, $@))])
147 _m4_dumpdefs_downm4_ifdef([_m4_dumpdefs],
148 [m4_pushdef([$1], m4_defn([_m4_dumpdefs]))dnl
149 m4_popdef([_m4_dumpdefs])dnl
150 _m4_dumpdefs_down([$1])])
152 AS_VAR_POPDEFm4_popdef([$1])
154 _m4_divert(PARSE_ARGS_BEGIN)200
156 _AS_ECHO_N_PREPARE_m4_defun_pro([_AS_ECHO_N_PREPARE])ECHO_C= ECHO_N= ECHO_T=
160 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
166 []_m4_defun_epi([_AS_ECHO_N_PREPARE])
168 _AS_EXPR_PREPARE_m4_defun_pro([_AS_EXPR_PREPARE])if expr a : '\(a\)' >/dev/null 2>&1 &&
169 test "X`expr 00001 : '.*\(...\)'`" = X001; then
174 []_m4_defun_epi([_AS_EXPR_PREPARE])
176 m4_include(autotest/general.m4)
180 _AS_LINENO_PREPAREAS_REQUIRE([_AS_CR_PREPARE])dnl
181 _AS_DETECT_SUGGESTED([_AS_LINENO_WORKS])
182 _AS_LINENO_WORKS || {
184 # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
185 # uniformly replaced by the line number. The first 'sed' inserts a
186 # line-number line after each line using $LINENO; the second 'sed'
187 # does the real work. The second script uses 'N' to pair each
188 # line-number line with the line containing $LINENO, and appends
189 # trailing '-' during substitution so that $LINENO is not a special
191 # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
192 # scripts with optimization help from Paolo Bonzini. Blame Lee
193 # E. McMahon (1931-1989) for sed's syntax. :-)
205 s/[[$]]LINENO\([[^'$as_cr_alnum'_]].*\n\)\(.*\)/\2\1\2/
209 chmod +x "$as_me.lineno" ||
210 AS_ERROR([cannot create $as_me.lineno; rerun with a POSIX shell])
212 # Don't try to exec as it changes $[0], causing all sort of problems
213 # (the dirname of $[0] is not the place where we might find the
214 # original and so on. Autoconf is especially sensitive to this).
216 # Exit status is that of the last command.
223 m4_location(_AS_DIRNAME_SED)../../lib/m4sugar/m4sh.m4:767
225 _m4_foreachm4_ifval([$2],
226 [m4_define([$1], m4_car($2))$3[]dnl
227 _m4_foreach([$1], m4_cdr($2), [$3])])
231 m4_location(AS_VERSION_COMPARE)../../lib/m4sugar/m4sh.m4:1307
233 m4_include(m4sugar/version.m4)
235 m4_PACKAGE_BUGREPORTbug-autoconf@gnu.org
237 m4_bmatchm4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
238 [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])],
240 [m4_if(m4_bregexp([$1], [$2]), -1, [$0([$1], m4_shiftn(3, $@))],
243 m4_splitm4_ifval([$1], [_m4_split($@)])
245 m4_append_uniqm4_ifdef([$1],
246 [m4_bmatch([$3]m4_defn([$1])[$3], m4_re_escape([$3$2$3]), [],
250 _AS_DIRNAME_PREPARE_m4_defun_pro([_AS_DIRNAME_PREPARE])if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
255 []_m4_defun_epi([_AS_DIRNAME_PREPARE])
257 m4_PACKAGE_TARNAMEautoconf
259 m4_list_cmpm4_if([$1$2], [()()], 0,
260 [$1], [()], [$0((0), [$2])],
261 [$2], [()], [$0([$1], (0))],
262 [m4_case(m4_cmp(m4_car$1, m4_car$2),
265 0, [$0((m4_shift$1), (m4_shift$2))])])
267 m4_expansion_stack_popm4_popdef([m4_expansion_stack])
269 _m4_divertm4_ifdef([_m4_divert($1)],
270 [m4_indir([_m4_divert($1)])],
273 m4_location(AS_PREPARE)../../lib/m4sugar/m4sh.m4:445
275 m4_requirem4_ifdef([_m4_expanding($1)],
276 [m4_fatal([$0: circular dependency of $1])])dnl
277 m4_ifndef([_m4_divert_dump],
278 [m4_fatal([$0($1): cannot be used outside of an ]dnl
279 m4_bmatch([$0], [^AC_], [[AC_DEFUN]], [[m4_defun]])['d macro])])dnl
282 [_m4_require_call([$1], [$2])])dnl
285 m4_version_unletterm4_translit(m4_bpatsubsts([$1],
286 [\([0-9]+\)\([abcdefghi]\)],
287 [m4_eval(\1 + 1).-1.\2],
288 [\([0-9]+\)\([jklmnopqrs]\)],
289 [m4_eval(\1 + 1).-1.1\2],
290 [\([0-9]+\)\([tuvwxyz]\)],
291 [m4_eval(\1 + 1).-1.2\2]),
292 [abcdefghijklmnopqrstuvwxyz],
293 [12345678901234567890123456])
295 AS_VAR_PUSHDEFAS_LITERAL_IF([$2],
296 [m4_pushdef([$1], [AS_TR_SH($2)])],
298 m4_pushdef([$1], [$as_[$1]])])
300 m4_warn_m4_warn([$1], [$2],
301 m4_ifdef([m4_expansion_stack],
302 [m4_defn([m4_expansion_stack])
303 m4_location[: the top level]]))dnl
306 m4_location(_AS_PREPARE)../../lib/m4sugar/m4sh.m4:437
308 _AS_CR_PREPARE_m4_defun_pro([_AS_CR_PREPARE])# Avoid depending upon Character Ranges.
309 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
310 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
311 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
312 as_cr_digits='0123456789'
313 as_cr_alnum=$as_cr_Letters$as_cr_digits
314 []_m4_defun_epi([_AS_CR_PREPARE])
318 m4_divertm4_define([m4_divert_stack], m4_location[: $0: $1]_m4_divert_n_stack)dnl
319 m4_builtin([divert], _m4_divert([$1]))dnl
322 _AS_BASENAME_SED_m4_defun_pro([_AS_BASENAME_SED])echo X/[]$1 |
323 sed ['/^.*\/\([^/][^/]*\)\/*$/{
335 s/.*/./; q'][]_m4_defun_epi([_AS_BASENAME_SED])
337 m4_version_comparem4_list_cmp((m4_split(m4_version_unletter([$1]), [\.])),
338 (m4_split(m4_version_unletter([$2]), [\.])))
342 m4_location(_AS_DETECT_SUGGESTED)../../lib/m4sugar/m4sh.m4:224
348 AS_HELP_STRINGm4_pushdef([AS_Prefix], m4_default([$3], [ ]))dnl
349 m4_pushdef([AS_Prefix_Format],
350 [ %-]m4_eval(m4_len(AS_Prefix) - 3)[s ])dnl [ %-23s ]
351 m4_text_wrap([$2], AS_Prefix, m4_format(AS_Prefix_Format, [$1]))dnl
352 m4_popdef([AS_Prefix_Format])dnl
353 m4_popdef([AS_Prefix])dnl
356 m4_cr_LettersabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
358 _m4_divert(GROW)10000
360 AT_LINEm4_bpatsubst(__file__, [^\(.*/\)*\(.*\)], [[\2]]):__line__
362 _AS_VERSION_COMPARE_PREPARE_m4_defun_pro([_AS_VERSION_COMPARE_PREPARE])[as_awk_strverscmp='
363 # Use only awk features that work with 7th edition Unix awk (1978).
364 # My, what an old awk you have, Mr. Solaris!
366 while (length(v1) && length(v2)) {
367 # Set d1 to be the next thing to compare from v1, and likewise for d2.
368 # Normally this is a single character, but if v1 and v2 contain digits,
369 # compare them as integers and fractions as strverscmp does.
370 if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) {
371 # Split v1 and v2 into their leading digit string components d1 and d2,
372 # and advance v1 and v2 past the leading digit strings.
373 for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue
374 for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue
375 d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1)
376 d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1)
379 # Compare two fractions.
380 while (d1 ~ /^0/ && d2 ~ /^0/) {
381 d1 = substr(d1, 2); len1--
382 d2 = substr(d2, 2); len2--
384 if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) {
385 # The two components differ in length, and the common prefix
386 # contains only leading zeros. Consider the longer to be less.
390 # Otherwise, compare as strings.
395 # A fraction is less than an integer.
400 # An integer is greater than a fraction.
403 # Compare two integers.
409 # The normal case, without worrying about digits.
410 d1 = substr(v1, 1, 1); v1 = substr(v1, 2)
411 d2 = substr(v2, 1, 1); v2 = substr(v2, 2)
416 # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10),
417 # which mishandles some comparisons of empty strings to integers.
418 if (length(v2)) exit 1
419 if (length(v1)) exit 2
421 '][]_m4_defun_epi([_AS_VERSION_COMPARE_PREPARE])
423 m4_re_string[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789]*
425 m4_location(m4_join)../../lib/m4sugar/m4sugar.m4:1489
427 _AS_TR_SH_PREPARE_m4_defun_pro([_AS_TR_SH_PREPARE])AS_REQUIRE([_AS_CR_PREPARE])dnl
428 # Sed expression to map a string onto a valid variable name.
429 as_tr_sh="eval sed 'y%*+%pp%;s%[[^_$as_cr_alnum]]%_%g'"
430 []_m4_defun_epi([_AS_TR_SH_PREPARE])
432 _AS_PATH_SEPARATOR_PREPARE_m4_defun_pro([_AS_PATH_SEPARATOR_PREPARE])# The user is always right.
433 if test "${PATH_SEPARATOR+set}" != set; then
434 echo "#! /bin/sh" >conf$$.sh
435 echo "exit 0" >>conf$$.sh
437 if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
444 []_m4_defun_epi([_AS_PATH_SEPARATOR_PREPARE])
446 AT_ARG_OPTION_ARG_m4_defun_pro([AT_ARG_OPTION_ARG])_AT_ARG_OPTION([$1],[$2],1,[$3],[$4])[]_m4_defun_epi([AT_ARG_OPTION_ARG])
450 m4_appendm4_define([$1],
451 m4_ifdef([$1], [m4_defn([$1])$3])[$2])
453 AT_TESTEDm4_append_uniq([AT_tested], [$1], [
456 AS_TR_SH_m4_defun_pro([AS_TR_SH])AS_REQUIRE([_$0_PREPARE])dnl
458 [m4_bpatsubst(m4_translit([[$1]], [*+], [pp]),
459 [[^a-zA-Z0-9_]], [_])],
460 [`echo "$1" | $as_tr_sh`])[]_m4_defun_epi([AS_TR_SH])
462 AT_DATAcat >$1 <<'_ATEOF'
466 AS_BASENAME_m4_defun_pro([AS_BASENAME])AS_REQUIRE([_$0_PREPARE])dnl
467 $as_basename -- $1 ||
468 _AS_BASENAME_EXPR([$1]) 2>/dev/null ||
469 _AS_BASENAME_SED([$1])[]_m4_defun_epi([AS_BASENAME])
471 m4_tolowerm4_translit([$1], m4_defn([m4_cr_LETTERS]), m4_defn([m4_cr_letters]))
473 AT_CLEANUPm4_append([AT_help_all],
474 m4_defn([AT_ordinal]);m4_defn([AT_line]);m4_defn([AT_description]);m4_ifdef([AT_keywords], [m4_defn([AT_keywords])]);
476 m4_divert_pop([TEST_SCRIPT])dnl Back to TESTS
478 echo "# -*- compilation -*-" >> "$at_group_log"
480 echo "AT_ordinal. m4_defn([AT_line]): testing $1..."
482 m4_undivert([TEST_SCRIPT])dnl Insert the code here
484 $at_times_p && times >"$at_times_file"
485 ) AS_MESSAGE_LOG_FD>&1 2>&1 | eval $at_tee_pipe
486 at_status=`cat "$at_status_file"`
489 m4_divert_pop([TESTS])dnl Back to KILL.
492 m4_location(_AS_LN_S_PREPARE)../../lib/m4sugar/m4sh.m4:916
494 m4_fatalm4_errprintn(m4_location[: error: $1])dnl
495 m4_expansion_stack_dump()dnl
496 m4_exit(m4_if([$2],, 1, [$2]))
500 _m4_divert(M4SH-SANITIZE)4
502 _m4_divert(DEFAULTS)100
504 m4_location(_AS_TR_CPP_PREPARE)../../lib/m4sugar/m4sh.m4:1363
506 _AS_UNSET_PREPARE_m4_defun_pro([_AS_UNSET_PREPARE])# Support unset when possible.
507 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
512 []_m4_defun_epi([_AS_UNSET_PREPARE])
514 _AS_CASEm4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
515 [$#], 1, [ *) $1 ;;],
516 [$#], 2, [ $1) m4_default([$2], [:]) ;;],
517 [ $1) m4_default([$2], [:]) ;;
518 $0(m4_shiftn(2, $@))])dnl
523 _m4_divert_n_stackm4_ifdef([m4_divert_stack], [
524 m4_defn([m4_divert_stack])])
526 _AS_ECHO_LOG_AS_ECHO([$as_me:$LINENO: $1], [AS_MESSAGE_LOG_FD])
530 m4_qlenm4_len(m4_bpatsubsts([[$1]], [@\(<:\|:>\|S|\|%:\)@], [P], [@&t@]))
536 _AS_BASENAME_PREPARE_m4_defun_pro([_AS_BASENAME_PREPARE])if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
541 []_m4_defun_epi([_AS_BASENAME_PREPARE])
543 m4_rename_m4m4_rename([$1], [m4_$1])
545 _m4_defun_prom4_ifndef([m4_expansion_stack], [_m4_defun_pro_outer[]])dnl
546 m4_expansion_stack_push(m4_defn([m4_location($1)])[: $1 is expanded from...])dnl
547 m4_pushdef([_m4_expanding($1)])dnl
554 _AT_ARG_OPTION_m4_defun_pro([_AT_ARG_OPTION])m4_divert_once([HELP_OTHER],
559 ])dnl m4_divert_once HELP_OTHER
560 m4_divert_text([HELP_OTHER],
564 dnl Turn our options into our desired strings
565 m4_ifdef([AT_first_option],[m4_undefine([AT_first_option])])dnl
566 m4_ifdef([AT_case],[m4_undefine([AT_case])])dnl
567 m4_ifdef([AT_case_no],[m4_undefine([AT_case_no])])dnl
568 m4_ifdef([AT_case_arg],[m4_undefine([AT_case_arg])])dnl
569 m4_foreach([AT_option], m4_split(m4_normalize([$1]),[[ \|]+]),
570 [m4_define_default([AT_first_option],AT_option)dnl
571 m4_append([AT_case],m4_if(m4_len(AT_option),1,[],[-])[-]AT_option, [ | ])dnl
572 m4_append([AT_case_no],[--no]AT_option, [ | ])dnl
573 m4_append([AT_case_arg],m4_if(m4_len(AT_option),1,[],[-])[-]AT_option[=*], [ | ])dnl
574 ])dnl m4_foreach AT_option
575 dnl keep track so we or the user may process ACTION-IF-NOT-GIVEN
576 m4_divert_once([PARSE_ARGS_BEGIN],
579 ## Set up package specific options.
582 m4_divert_text([PARSE_ARGS_BEGIN],
583 [dnl Provide a default value for options without arguments.
584 m4_ifvaln([$3],,[at_arg_[]m4_bpatsubst([AT_first_option], -, _)=false])dnl
585 at_arg_given_[]m4_bpatsubst([AT_first_option], -, _)=false
586 ])dnl m4_divert_text DEFAULTS
587 m4_ifval([$3],[m4_divert_once([PARSE_ARGS_END],
590 ## Verify our last option didn't require an argument
592 AS_IF([test -n "$at_prev"],[AS_ERROR([`$at_prev' requires an argument.])])])])
593 m4_divert_text([PARSE_ARGS],
594 [dnl Parse the options and args when necessary.
597 at_prev=--m4_bpatsubst([AT_first_option], -, _)
600 at_arg_[]m4_bpatsubst([AT_first_option], -, _)=$at_optarg
601 at_arg_given_[]m4_bpatsubst([AT_first_option], -, _)=:
606 at_arg_[]m4_bpatsubst([AT_first_option], -, _)=:
607 at_arg_given_[]m4_bpatsubst([AT_first_option], -, _)=:
608 m4_ifval([$4],[$4])dnl
612 at_arg_[]m4_bpatsubst([AT_first_option], -, _)=false
613 at_arg_given_[]m4_bpatsubst([AT_first_option], -, _)=:
614 m4_ifval([$4],[$4])dnl
616 ])dnl m4_divert_text PARSE_ARGS
618 [m4_divert_once([PARSE_ARGS_END],
621 ## Process package specific options when _not_ supplied.
622 ##])dnl m4_divert_once PARSE_ARGS_END
623 m4_divert_text([PARSE_ARGS_END],
625 AS_IF([$at_arg_given_[]m4_bpatsubst([AT_first_option], -, _)],,[$5])dnl
626 ])dnl m4_divert_text PARSE_ARGS_END
628 []_m4_defun_epi([_AT_ARG_OPTION])
632 m4_cr_symbols1abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_
634 m4_cr_symbols2abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789
636 _m4_mapm4_ifval([$2],
637 [$1(m4_fst($2))[]_m4_map([$1], m4_cdr($2))])
639 AS_LITERAL_IFm4_bmatch(m4_quote($1), [[`$]],
642 m4_cr_lettersabcdefghijklmnopqrstuvwxyz
644 m4_divert_oncem4_expand_once([m4_divert_text([$1], [$2])])
646 m4_location(AS_BASENAME)../../lib/m4sugar/m4sh.m4:715
648 m4_beforem4_provide_if([$2],
649 [m4_warn([syntax], [$2 was called before $1])])
651 m4_location(AS_SHELL_SANITIZE)../../lib/m4sugar/m4sh.m4:411
653 m4_defnm4_ifndef([$1],
654 [m4_fatal([$0: undefined macro: $1])])dnl
655 m4_builtin([defn], $@)
657 m4_location(_AS_TR_SH_PREPARE)../../lib/m4sugar/m4sh.m4:1341
659 m4_sincludem4_include_unique([$1])dnl
660 m4_builtin([sinclude], [$1])
662 _m4_divert(HEADER-COMMENT)2
666 _AS_RUNm4_ifval([$2],
668 _AS_BOURNE_COMPATIBLE
672 [(eval "AS_ESCAPE(m4_quote($1))")])
674 _m4_divert(TESTS_END)402
676 m4_defun_oncem4_define([m4_location($1)], m4_location)dnl
679 [m4_warn([syntax], [$1 invoked multiple times])],
680 [_m4_defun_pro([$1])$2[]_m4_defun_epi([$1])])])
682 _AT_CHECK$at_traceoff
683 echo "$at_srcdir/AT_LINE: AS_ESCAPE([$1])"
684 echo AT_LINE >"$at_check_line_file"
687 if test -n "$at_traceon"; then
688 _AT_DECIDE_TRACEABLE([$1])
691 if test -n "$at_trace_this"; then
692 ( $at_traceon; $1 ) >"$at_stdout" 2>"$at_stder1"
694 grep '^ *+' "$at_stder1" >&2
695 grep -v '^ *+' "$at_stder1" >"$at_stderr"
697 ( :; $1 ) >"$at_stdout" 2>"$at_stderr"
704 stderr, [echo stderr:; tee stderr <"$at_stderr"],
705 ignore, [echo stderr:; cat "$at_stderr"],
706 experr, [$at_diff experr "$at_stderr" || at_failed=:],
707 [], [$at_diff "$at_devnull" "$at_stderr" || at_failed=:],
708 [echo >>"$at_stderr"; echo "m4_ifval([$7],[AS_ESCAPE([$4])],[$4])" | $at_diff - "$at_stderr" || at_failed=:])
711 stdout, [echo stdout:; tee stdout <"$at_stdout"],
712 ignore, [echo stdout:; cat "$at_stdout"],
713 expout, [$at_diff expout "$at_stdout" || at_failed=:],
714 [], [$at_diff "$at_devnull" "$at_stdout" || at_failed=:],
715 [echo >>"$at_stdout"; echo "m4_ifval([$7],[AS_ESCAPE([$3])],[$3])" | $at_diff - "$at_stdout" || at_failed=:])
716 dnl Check exit val. Don't `skip' if we are precisely checking $? = 77.
720 [ 77) echo 77 > "$at_status_file"; exit 77;;
722 m4_if([$2], [ignore],
724 [ m4_default([$2], [0])) ;;
725 *) echo "$at_srcdir/AT_LINE: exit code was $at_status, expected m4_default([$2], [0])"
728 AS_IF($at_failed, [$5
729 m4_ifdef([AT_capture_files],
730 [for file in AT_capture_files
731 do echo "$file:"; sed 's/^/> /' "$file"; done])
732 echo 1 > "$at_status_file"
737 m4_ifsetm4_ifdef([$1],
738 [m4_ifval(m4_defn([$1]), [$2], [$3])],
743 m4_text_box([Platform.])
745 hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
746 uname -m = `(uname -m) 2>/dev/null || echo unknown`
747 uname -r = `(uname -r) 2>/dev/null || echo unknown`
748 uname -s = `(uname -s) 2>/dev/null || echo unknown`
749 uname -v = `(uname -v) 2>/dev/null || echo unknown`
751 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
752 /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
754 /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
755 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
756 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
757 /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
758 /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
759 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
760 /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
764 _AS_PATH_WALK([$PATH], [echo "PATH: $as_dir"])
769 # Forbidden tokens and exceptions.
770 m4_pattern_forbid([^_?AS_])
772 # Bangshe and minimal initialization.
773 m4_divert_text([BINSH], [@%:@! /bin/sh])
774 m4_divert_text([M4SH-SANITIZE], [AS_SHELL_SANITIZE])
775 AS_REQUIRE([_AS_SHELL_FN_SPY])
778 m4_divert_pop([KILL])[]dnl
779 m4_divert_push([BODY])[]dnl
782 _AS_ECHO_AS_ECHO_UNQUOTED([_AS_QUOTE([$1])], [$2])
784 m4_location(_AS_BASENAME_PREPARE)../../lib/m4sugar/m4sh.m4:728
788 m4_foreachm4_pushdef([$1])_m4_foreach($@)m4_popdef([$1])
792 m4_location(_AS_EXPR_PREPARE)../../lib/m4sugar/m4sh.m4:817
796 m4_debugmodedebugmode
800 m4_location(_AS_MKDIR_P_PREPARE)../../lib/m4sugar/m4sh.m4:963
802 m4_location(AS_UNSET)../../lib/m4sugar/m4sh.m4:548
804 m4_expand_oncem4_provide_if(m4_ifval([$2], [[$2]], [[$1]]),
806 [m4_provide(m4_ifval([$2], [[$2]], [[$1]]))[]$1])
808 m4_errprintnm4_errprint([$1
811 m4_location(_AS_DETECT_REQUIRED)../../lib/m4sugar/m4sh.m4:213
813 _AS_TR_PREPARE_m4_defun_pro([_AS_TR_PREPARE])AS_REQUIRE([_AS_TR_SH_PREPARE])dnl
814 AS_REQUIRE([_AS_TR_CPP_PREPARE])dnl
815 []_m4_defun_epi([_AS_TR_PREPARE])
817 m4_location(AS_DIRNAME)../../lib/m4sugar/m4sh.m4:773
819 _AS_MKDIR_P_PREPARE_m4_defun_pro([_AS_MKDIR_P_PREPARE])if mkdir -p . 2>/dev/null; then
822 test -d ./-p && rmdir ./-p
825 []_m4_defun_epi([_AS_MKDIR_P_PREPARE])
827 m4_cdrm4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
829 [m4_dquote(m4_shift($@))])
831 m4_location(AS_CASE)../../lib/m4sugar/m4sh.m4:476
833 m4_location(_AS_TR_PREPARE)../../lib/m4sugar/m4sh.m4:1386
835 m4_location(AT_ARG_OPTION)autotest/general.m4:1119
837 m4_text_wrapm4_pushdef([m4_Prefix], [$2])dnl
838 m4_pushdef([m4_Prefix1], m4_default([$3], [m4_Prefix]))dnl
839 m4_pushdef([m4_Width], m4_default([$4], 79))dnl
840 m4_pushdef([m4_Cursor], m4_qlen(m4_Prefix1))dnl
841 m4_pushdef([m4_Separator], [])dnl
843 m4_if(m4_eval(m4_qlen(m4_Prefix1) > m4_len(m4_Prefix)),
844 1, [m4_define([m4_Cursor], m4_len(m4_Prefix))
846 m4_if(m4_eval(m4_qlen(m4_Prefix1) < m4_len(m4_Prefix)),
848 [m4_define([m4_Cursor], m4_len(m4_Prefix))[]dnl
849 m4_for(m4_Space, m4_qlen(m4_Prefix1), m4_eval(m4_len(m4_Prefix) - 1),
852 m4_foreach_w([m4_Word], [$1],
853 [m4_define([m4_Cursor], m4_eval(m4_Cursor + m4_qlen(m4_defn([m4_Word])) + 1))dnl
854 dnl New line if too long, else insert a space unless it is the first
856 m4_if(m4_eval(m4_Cursor > m4_Width),
857 1, [m4_define([m4_Cursor],
858 m4_eval(m4_len(m4_Prefix) + m4_qlen(m4_defn([m4_Word])) + 1))]
861 m4_defn([m4_Word])[]dnl
862 m4_define([m4_Separator], [ ])])dnl
863 m4_popdef([m4_Separator])dnl
864 m4_popdef([m4_Cursor])dnl
865 m4_popdef([m4_Width])dnl
866 m4_popdef([m4_Prefix1])dnl
867 m4_popdef([m4_Prefix])dnl
870 m4_file_appendm4_syscmd([cat >>$1 <<_m4eof
874 m4_if(m4_sysval, [0], [],
875 [m4_fatal([$0: cannot write: $1])])
877 m4_location(AS_TR_CPP)../../lib/m4sugar/m4sh.m4:1378
879 m4_location(_AS_BASENAME_SED)../../lib/m4sugar/m4sh.m4:709
883 _AT_DECIDE_TRACEABLEdnl Utility macros.
884 m4_pushdef([at_lf], [
887 dnl Examine COMMANDS for a reason to never trace COMMANDS.
888 m4_pushdef([at_reason],
890 [`.*`], [[a `...` command substitution]],
891 [\$(], [[a $(...) command substitution]],
892 [\${], [[a ${...} parameter expansion]],
893 at_lf, [[an embedded newline]],
897 m4_ifval(m4_defn([at_reason]),
898 [echo 'Not enabling shell tracing (command contains ]m4_defn([at_reason])[)'],
899 [m4_bmatch([$1], [\$],
900 dnl COMMANDS may contain parameter expansions; expand them at runtime.
901 [case "AS_ESCAPE([$1], [`"\])" in
903 '*) echo 'Not enabling shell tracing (command contains an embedded newline)' ;;
904 *) at_trace_this=yes ;;
906 dnl We know at build time that tracing COMMANDS is always safe.
907 [at_trace_this=yes])])[]dnl
908 m4_popdef([at_lf])[]dnl
909 m4_popdef([at_reason])
913 _AS_DETECT_REQUIRED_m4_defun_pro([_AS_DETECT_REQUIRED])m4_require([_AS_DETECT_BETTER_SHELL])dnl
914 m4_expand_once([m4_append([_AS_DETECT_REQUIRED_BODY], [
916 ])], [_AS_DETECT_REQUIRED_provide($1)])[]_m4_defun_epi([_AS_DETECT_REQUIRED])
923 AS_VAR_SETAS_LITERAL_IF([$1],
925 [eval "$1=AS_ESCAPE([$2])"])
927 m4_PACKAGE_VERSION2.61
929 m4_assertm4_if(m4_eval([$1]), 0,
930 [m4_fatal([assert failed: $1], [$2])])
932 m4_divert_pushm4_pushdef([m4_divert_stack], m4_location[: $0: $1]_m4_divert_n_stack)dnl
933 m4_pushdef([_m4_divert_diversion], [$1])dnl
934 m4_builtin([divert], _m4_divert([$1]))dnl
939 m4_dom4_if($#, 0, [],
941 [$1[]m4_do(m4_shift($@))])
943 m4_define_defaultm4_ifndef([$1], [m4_define($@)])
945 AT_BANNERm4_define([AT_banner_ordinal], m4_incr(AT_banner_ordinal))
946 m4_append([AT_groups_all], [ banner-]m4_defn([AT_banner_ordinal]))
947 m4_divert_text([TESTS],
949 banner-AT_banner_ordinal ) @%:@ Banner AT_banner_ordinal. AT_LINE
959 m4_location(_AS_BASENAME_EXPR)../../lib/m4sugar/m4sh.m4:693
963 m4_ifndefm4_ifdef([$1], [$3], [$2])
965 m4_location(_AS_UNSET_PREPARE)../../lib/m4sugar/m4sh.m4:539
967 _AS_IFm4_ifval([$2$3],
969 m4_default([$2], [:])
970 m4_ifval([$3], [$0(m4_shiftn(2, $@))])],
977 AS_TMPDIR# Create a (secure) tmp directory for tmp files.
978 m4_if([$2], [], [: ${TMPDIR=/tmp}])
980 tmp=`(umask 077 && mktemp -d "m4_default([$2], [$TMPDIR])/$1XXXXXX") 2>/dev/null` &&
981 test -n "$tmp" && test -d "$tmp"
984 tmp=m4_default([$2], [$TMPDIR])/$1$$-$RANDOM
985 (umask 077 && mkdir "$tmp")
988 echo "$me: cannot create a temporary directory in m4_default([$2], [$TMPDIR])" >&2
993 m4_PACKAGE_STRINGGNU Autoconf 2.61
997 AS_COPYRIGHTm4_divert_text([HEADER-COPYRIGHT],
1001 AS_TEST_X_m4_defun_pro([AS_TEST_X])AS_REQUIRE([_AS_TEST_PREPARE])dnl
1003 []_m4_defun_epi([AS_TEST_X])
1005 AT_ARG_OPTION_m4_defun_pro([AT_ARG_OPTION])_AT_ARG_OPTION([$1],[$2],,[$3],[$4])[]_m4_defun_epi([AT_ARG_OPTION])
1007 m4_undivertm4_builtin([undivert], _m4_divert([$1]))
1009 AS_MESSAGEm4_ifset([AS_MESSAGE_LOG_FD],
1010 [{ _AS_ECHO_LOG([$1])
1011 _AS_ECHO([$as_me: $1], [$2]);}],
1012 [_AS_ECHO([$as_me: $1], [$2])])[]dnl
1015 _m4_require_callm4_define([_m4_divert_grow], m4_decr(_m4_divert_grow))dnl
1016 m4_divert_push(_m4_divert_grow)dnl
1017 m4_default([$2], [$1])
1021 [$1 is m4_require'd but not m4_defun'd])])dnl
1022 m4_divert(m4_defn([_m4_divert_dump]))dnl
1023 m4_undivert(_m4_divert_grow)dnl
1024 m4_divert_pop(_m4_divert_grow)dnl
1025 m4_define([_m4_divert_grow], m4_incr(_m4_divert_grow))dnl
1030 AS_UNSET_m4_defun_pro([AS_UNSET])AS_REQUIRE([_AS_UNSET_PREPARE])dnl
1031 $as_unset $1 || test "${$1+set}" != set || { $1=$2; export $1; }[]_m4_defun_epi([AS_UNSET])
1037 AS_SET_CATFILEcase $2 in
1042 [[\\/]]* | ?:[[\\/]]* ) $1=$3;;
1048 m4_bpatsubstpatsubst
1052 _AS_TEST_PREPARE_m4_defun_pro([_AS_TEST_PREPARE])if test -x / >/dev/null 2>&1; then
1055 if ls -dL / >/dev/null 2>&1; then
1062 if test -d "$[]1"; then
1068 case `ls -ld'$as_ls_L_option' "$[]1" 2>/dev/null` in
1069 ???[[sx]]*):;;*)false;;esac;fi
1073 dnl as_executable_p is present for backward compatibility with Libtool
1074 dnl 1.5.22, but it should go away at some point.
1075 as_executable_p=$as_test_x
1076 []_m4_defun_epi([_AS_TEST_PREPARE])
1078 AS_VAR_TEST_SETAS_LITERAL_IF([$1],
1079 [test "${$1+set}" = set],
1080 [{ as_var=$1; eval "test \"\${$as_var+set}\" = set"; }])
1082 _AT_NORMALIZE_TEST_GROUP_NUMBER
1085 $at_format*) break;;
1091 _AS_BOX_LITERALcat <<\_ASBOX
1095 m4_init# All the M4sugar macros start with `m4_', except `dnl' kept as is
1096 # for sake of simplicity.
1097 m4_pattern_forbid([^_?m4_])
1098 m4_pattern_forbid([^dnl$])
1100 # _m4_divert_diversion should be defined:
1101 m4_divert_push([KILL])
1103 # Check the divert push/pop perfect balance.
1104 m4_wrap([m4_divert_pop([])
1105 m4_ifdef([_m4_divert_diversion],
1106 [m4_fatal([$0: unbalanced m4_divert_push:]_m4_divert_n_stack)])[]])
1109 _AS_DIRNAME_EXPR_m4_defun_pro([_AS_DIRNAME_EXPR])AS_REQUIRE([_AS_EXPR_PREPARE])dnl
1110 $as_expr X[]$1 : 'X\(.*[[^/]]\)//*[[^/][^/]]*/*$' \| \
1111 X[]$1 : 'X\(//\)[[^/]]' \| \
1112 X[]$1 : 'X\(//\)$' \| \
1113 X[]$1 : 'X\(/\)' \| .[]_m4_defun_epi([_AS_DIRNAME_EXPR])
1115 m4_popdefm4_ifndef([$1],
1116 [m4_fatal([$0: undefined macro: $1])])dnl
1117 m4_builtin([popdef], $@)
1119 _AT_CREATE_DEBUGGING_SCRIPT {
1121 echo 'test "${ZSH_VERSION+set}" = set && alias -g '\''${1+"$[@]"}'\''='\''"$[@]"'\'''
1123 echo 'exec ${CONFIG_SHELL-'"$SHELL"'}' "$[0]" \
1124 '-v -d' "$at_debug_args" "$at_group" '${1+"$[@]"}'
1126 } >$at_group_dir/run
1127 chmod +x $at_group_dir/run
1130 AS_MKDIR_PAS_REQUIRE([_$0_PREPARE])dnl
1133 -*) as_dir=./$as_dir;;
1135 test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
1139 *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #(
1140 *) as_qdir=$as_dir;;
1142 as_dirs="'$as_qdir' $as_dirs"
1143 as_dir=`AS_DIRNAME("$as_dir")`
1144 test -d "$as_dir" && break
1146 test -z "$as_dirs" || eval "mkdir $as_dirs"
1147 } || test -d "$as_dir" || AS_ERROR([cannot create directory $as_dir]); }dnl
1150 m4_cmpm4_sign(m4_eval([$1 - $2]))
1156 m4_renamem4_copy([$1], [$2])m4_undefine([$1])
1159 dnl Try to limit the amount of conditionals that we emit.
1163 [:], [m4_define([AT_xfail], [at_xfail=yes])],
1164 [true], [m4_define([AT_xfail], [at_xfail=yes])],
1165 [m4_append([AT_xfail], [
1166 $1 && at_xfail=yes])])
1168 m4_qdeltam4_eval(m4_qlen([$1]) - m4_len([$1]))
1170 m4_divert_textm4_divert_push([$1])dnl
1172 m4_divert_pop([$1])dnl
1175 _m4_splitm4_changequote(``, '')dnl
1176 [dnl Can't use m4_default here instead of m4_if, because m4_default uses
1177 dnl [ and ] as quotes.
1178 m4_bpatsubst(````$1'''',
1179 m4_if(``$2'',, ``[ ]+'', ``$2''),
1181 m4_changequote([, ])
1185 AS_BOXAS_LITERAL_IF([$1],
1186 [_AS_BOX_LITERAL($@)],
1187 [_AS_BOX_INDIR($@)])
1189 m4_cr_LETTERSABCDEFGHIJKLMNOPQRSTUVWXYZ
1191 _m4_divert(PARSE_ARGS_END)202
1193 m4_location(AT_ARG_OPTION_ARG)autotest/general.m4:1139
1195 _AS_QUOTE_AS_QUOTE_IFELSE([$1],
1196 [AS_ESCAPE([$1], m4_default([$2], [`""]))],
1197 [m4_warn([obsolete],
1198 [back quotes and double quotes must not be escaped in: $1])dnl
1201 m4_noquotem4_changequote(-=<{,}>=-)$1-=<{}>=-m4_changequote([,])
1205 AT_CHECK_NOESCAPE_AT_CHECK([$1],[$2],[$3],[$4],[$5],[$6])
1207 AS_EXIT{ (exit m4_default([$1], 1)); exit m4_default([$1], 1); }
1209 m4_version_prereqm4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]), [$1]), -1,
1211 [m4_fatal([Autoconf version $1 or higher is required],
1218 _m4_divert(TESTS)401
1220 _AS_DETECT_BETTER_SHELLm4_provide_if([_AS_DETECT_BETTER_SHELL],
1221 [m4_warn([syntax], [_AS_DETECT_BETTER_SHELL invoked multiple times])],
1222 [_m4_defun_pro([_AS_DETECT_BETTER_SHELL])m4_wrap([m4_divert_text([M4SH-SANITIZE], [
1223 AS_REQUIRE([_AS_UNSET_PREPARE])dnl
1224 if test "x$CONFIG_SHELL" = x; then
1225 AS_IF([_AS_RUN([_AS_DETECT_REQUIRED_BODY]) 2>/dev/null],
1226 [as_have_required=yes],
1227 [as_have_required=no])
1228 AS_IF([test $as_have_required = yes && dnl
1229 _AS_RUN([_AS_DETECT_SUGGESTED_BODY]) 2> /dev/null],
1231 [as_candidate_shells=
1232 _AS_PATH_WALK([/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH],
1235 for as_base in sh bash ksh sh5; do
1236 as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
1240 for as_shell in $as_candidate_shells $SHELL; do
1241 # Try only shells that exist, to save several forks.
1242 AS_IF([{ test -f "$as_shell" || test -f "$as_shell.exe"; } &&
1243 _AS_RUN([_AS_DETECT_REQUIRED_BODY],
1244 [("$as_shell") 2> /dev/null])],
1245 [CONFIG_SHELL=$as_shell
1246 as_have_required=yes
1247 AS_IF([_AS_RUN([_AS_DETECT_SUGGESTED_BODY], ["$as_shell" 2> /dev/null])],
1251 AS_IF([test "x$CONFIG_SHELL" != x],
1252 [for as_var in BASH_ENV ENV
1253 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
1256 exec "$CONFIG_SHELL" "$as_myself" ${1+"$[@]"}])
1258 AS_IF([test $as_have_required = no],
1259 [echo This script requires a shell more modern than all the
1260 echo shells that I found on your system. Please install a
1261 echo modern shell, or manually run the script under such a
1262 echo shell if you do have one.
1266 ])])[]_m4_defun_epi([_AS_DETECT_BETTER_SHELL])])
1268 _m4_divert(VERSION_END)352
1270 m4_location(_AS_DIRNAME_EXPR)../../lib/m4sugar/m4sh.m4:747
1272 m4_warningm4_errprintn(m4_location[: warning: $1])
1274 m4_mapm4_if([$2], [[]], [],
1275 [_m4_map([$1], [$2])])
1277 m4_divert_popm4_ifndef([_m4_divert_diversion],
1278 [m4_fatal([too many m4_divert_pop])])dnl
1280 [$1], m4_defn([_m4_divert_diversion]), [],
1281 [m4_fatal([$0($1): diversion mismatch: ]_m4_divert_n_stack)])dnl
1282 m4_popdef([m4_divert_stack])dnl
1283 m4_popdef([_m4_divert_diversion])dnl
1284 m4_builtin([divert],
1285 m4_ifdef([_m4_divert_diversion],
1286 [_m4_divert(m4_defn([_m4_divert_diversion]))],
1290 m4_expansion_stack_dumpm4_ifdef([m4_expansion_stack],
1291 [m4_errprintn(m4_defn([m4_expansion_stack]))])dnl
1292 m4_errprintn(m4_location[: the top level])
1294 _m4_divert(HEADER-REVISION)1
1296 _AS_DIRNAME_SED_m4_defun_pro([_AS_DIRNAME_SED])echo X[]$1 |
1297 sed ['/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1313 s/.*/./; q'][]_m4_defun_epi([_AS_DIRNAME_SED])
1315 m4_map_sepm4_if([$3], [[]], [],
1316 [$1(m4_fst($3))[]_m4_map([$2[]$1], m4_cdr($3))])
1318 _AS_PREPARE_m4_defun_pro([_AS_PREPARE])_AS_LINENO_PREPARE
1328 []_m4_defun_epi([_AS_PREPARE])
1330 m4_undefinem4_ifndef([$1],
1331 [m4_fatal([$0: undefined macro: $1])])dnl
1332 m4_builtin([undefine], $@)
1336 AS_SHELL_SANITIZE_m4_defun_pro([AS_SHELL_SANITIZE])## --------------------- ##
1337 ## M4sh Initialization. ##
1338 ## --------------------- ##
1340 AS_BOURNE_COMPATIBLE
1344 _AS_PATH_SEPARATOR_PREPARE
1348 # We need space, tab and new line, in precisely that order. Quoting is
1349 # there to prevent editors from complaining about space-tab.
1350 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
1351 # splitting by setting IFS to empty value.)
1356 # Find who we are. Look in the path if we contain no directory separator.
1358 *[[\\/]]* ) as_myself=$[0] ;;
1359 *) _AS_PATH_WALK([],
1360 [test -r "$as_dir/$[0]" && as_myself=$as_dir/$[0] && break])
1363 # We did not find ourselves, most probably we were run as `sh COMMAND'
1364 # in which case we are not to be found in the path.
1365 if test "x$as_myself" = x; then
1368 if test ! -f "$as_myself"; then
1369 echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
1373 # Work around bugs in pre-3.0 UWIN ksh.
1374 for as_var in ENV MAIL MAILPATH
1375 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
1383 LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
1384 LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
1385 LC_TELEPHONE LC_TIME
1387 if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
1388 eval $as_var=C; export $as_var
1390 ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
1394 # Required to use basename.
1396 _AS_BASENAME_PREPARE
1398 # Name of the executable.
1399 as_me=`AS_BASENAME("$[0]")`
1403 []_m4_defun_epi([AS_SHELL_SANITIZE])
1407 [m4_define([$1], m4_eval($1+[$3]))_m4_for([$1], [$2], [$3], [$4])])
1411 m4_location(AS_LN_S)../../lib/m4sugar/m4sh.m4:926
1413 m4_location(AS_EXECUTABLE_P)../../lib/m4sugar/m4sh.m4:802
1415 m4_ifvalm4_if([$1], [], [$3], [$2])
1417 m4_dumpdefs_m4_dumpdefs_up([$1])dnl
1418 _m4_dumpdefs_down([$1])
1420 m4_changecomchangecom
1422 AS_IF_m4_defun_pro([AS_IF])m4_ifval([$2$3],
1424 m4_default([$2], [:])
1425 m4_ifval([$3], [_$0(m4_shiftn(2, $@))])[]dnl
1428 []_m4_defun_epi([AS_IF])
1430 m4_providem4_define([m4_provide($1)])
1432 m4_defaultm4_ifval([$1], [$1], [$2])
1434 _AS_DETECT_SUGGESTED_m4_defun_pro([_AS_DETECT_SUGGESTED])m4_require([_AS_DETECT_BETTER_SHELL])dnl
1435 m4_expand_once([m4_append([_AS_DETECT_SUGGESTED_BODY], [
1437 ])], [_AS_DETECT_SUGGESTED_provide($1)])[]_m4_defun_epi([_AS_DETECT_SUGGESTED])
1439 m4_join_m4_defun_pro([m4_join])m4_case([$#],
1442 [[$2][$1]$0([$1], m4_shiftn(2, $@))])[]_m4_defun_epi([m4_join])
1444 m4_foreach_wm4_foreach([$1], m4_split(m4_normalize([$2])), [$3])
1446 m4_provide_ifm4_ifdef([m4_provide($1)],
1455 m4_normalizem4_strip(m4_flatten([$1]))
1459 _AS_DETECT_REQUIRED_BODY:
1461 AS_REQUIREm4_provide_if([$1], [],
1462 [m4_divert_text([M4SH-INIT], [m4_default([$2], [$1])])])
1464 m4_defunm4_define([m4_location($1)], m4_location)dnl
1466 [_m4_defun_pro([$1])$2[]_m4_defun_epi([$1])])
1468 m4_debugfiledebugfile
1470 AS_LN_S_m4_defun_pro([AS_LN_S])AS_REQUIRE([_AS_LN_S_PREPARE])dnl
1472 []_m4_defun_epi([AS_LN_S])
1474 _m4_divert(PREPARE_TESTS)400
1476 _m4_divert(HEADER-COPYRIGHT)3
1478 _m4_divert(TEST_SCRIPT)403
1480 AT_INITm4_pattern_forbid([^_?AT_])
1481 m4_define([AT_TESTSUITE_NAME],
1482 m4_defn([AT_PACKAGE_STRING])[ test suite]m4_ifval([$1], [: $1]))
1483 m4_define([AT_ordinal], 0)
1484 m4_define([AT_banner_ordinal], 0)
1485 m4_define([AT_groups_all], [])
1486 m4_define([AT_help_all], [])
1489 [Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software
1491 This test suite is free software; the Free Software Foundation gives
1492 unlimited permission to copy, distribute and modify it.])
1494 m4_divert_push([DEFAULTS])dnl
1496 SHELL=${CONFIG_SHELL-/bin/sh}
1501 # Load the config file.
1502 for at_file in atconfig atlocal
1504 test -r $at_file || continue
1505 . ./$at_file || AS_ERROR([invalid content: $at_file])
1508 # Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix:
1509 : ${at_top_build_prefix=$at_top_builddir}
1511 # atconfig delivers names relative to the directory the test suite is
1512 # in, but the groups themselves are run in testsuite-dir/group-dir.
1513 if test -n "$at_top_srcdir"; then
1515 for at_dir in srcdir top_srcdir top_build_prefix
1517 at_val=AS_VAR_GET([at_$at_dir])
1518 AS_VAR_SET([$at_dir], [$at_val/../..])
1522 # Not all shells have the 'times' builtin; the subshell is needed to make
1523 # sure we discard the 'times: not found' message from the shell.
1525 (times) >/dev/null 2>&1 && at_times_p=:
1527 # CLI Arguments to pass to the debugging scripts.
1531 # Shall we be verbose?
1535 # Shall we keep the debug scripts? Must be `:' when the suite is
1536 # run by a debug script, so that the script doesn't remove itself.
1538 # Display help message?
1540 # Display the version message?
1544 # Test groups to run
1547 # The directory we are in.
1549 # The directory the whole suite works in.
1550 # Should be absolutely to let the user `cd' at will.
1551 at_suite_dir=$at_dir/$as_me.dir
1552 # The file containing the suite.
1553 at_suite_log=$at_dir/$as_me.log
1554 # The file containing the location of the last AT_CHECK.
1555 at_check_line_file=$at_suite_dir/at-check-line
1556 # The file containing the exit status of the last command.
1557 at_status_file=$at_suite_dir/at-status
1558 # The files containing the output of the tested commands.
1559 at_stdout=$at_suite_dir/at-stdout
1560 at_stder1=$at_suite_dir/at-stder1
1561 at_stderr=$at_suite_dir/at-stderr
1562 # The file containing dates.
1563 at_times_file=$at_suite_dir/at-times
1564 m4_divert_pop([DEFAULTS])dnl
1565 m4_wrap([m4_divert_text([DEFAULTS],
1567 # List of the tested programs.
1568 at_tested='m4_ifdef([AT_tested], [AT_tested])'
1569 # List of the all the test groups.
1570 at_groups_all='AT_groups_all'
1571 # As many question marks as there are digits in the last test group number.
1572 # Used to normalize the test group numbers so that `ls' lists them in
1574 at_format='m4_bpatsubst(m4_defn([AT_ordinal]), [.], [?])'
1575 # Description of all the test groups.
1576 at_help_all="AS_ESCAPE(m4_defn([AT_help_all]))"])])dnl
1577 m4_divert_push([PARSE_ARGS])dnl
1582 # If the previous option needs an argument, assign it.
1583 if test -n "$at_prev"; then
1584 at_option=$at_prev=$at_option
1589 *=*) at_optarg=`expr "x$at_option" : 'x[[^=]]*=\(.*\)'` ;;
1593 # Accept the important Cygnus configure options, so we can diagnose typos.
1609 test -d "$at_suite_dir" &&
1610 find "$at_suite_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
1611 rm -f -r "$at_suite_dir" "$at_suite_log"
1625 at_verbose=echo; at_quiet=:
1629 at_traceon='set -x'; at_traceoff='set +x'
1632 [[0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]])
1633 at_groups="$at_groups$at_option "
1637 [[0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-])
1638 at_range_start=`echo $at_option |tr -d X-`
1639 at_range=`echo " $at_groups_all " | \
1640 sed -e 's/^.* \('$at_range_start' \)/\1/'`
1641 at_groups="$at_groups$at_range "
1644 [-[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9]])
1645 at_range_end=`echo $at_option |tr -d X-`
1646 at_range=`echo " $at_groups_all " | \
1647 sed -e 's/\( '$at_range_end'\) .*$/\1/'`
1648 at_groups="$at_groups$at_range "
1651 [[0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9]] | \
1652 [[0-9]-[0-9][0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9]] | \
1653 [[0-9][0-9]-[0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9][0-9][0-9]] | \
1654 [[0-9][0-9][0-9]-[0-9][0-9][0-9]] | \
1655 [[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]] | \
1656 [[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]] )
1657 at_range_start=`expr $at_option : '\(.*\)-'`
1658 at_range_end=`expr $at_option : '.*-\(.*\)'`
1659 if test $at_range_start -gt $at_range_end; then
1660 at_tmp=$at_range_end
1661 at_range_end=$at_range_start
1662 at_range_start=$at_tmp
1664 at_range=`echo " $at_groups_all " | \
1665 sed -e 's/^.*\( '$at_range_start' \)/\1/' \
1666 -e 's/\( '$at_range_end'\) .*$/\1/'`
1667 at_groups="$at_groups$at_range "
1675 at_groups_selected=$at_help_all
1687 at_keyword=`expr "X$at_keyword" : 'X!\(.*\)'`
1690 # It is on purpose that we match the test group titles too.
1691 at_groups_selected=`echo "$at_groups_selected" |
1692 grep -i $at_invert ["^[1-9][^;]*;.*[; ]$at_keyword[ ;]"]`
1694 at_groups_selected=`echo "$at_groups_selected" | sed 's/;.*//'`
1695 # Smash the newlines.
1696 at_groups="$at_groups`echo $at_groups_selected` "
1698 m4_divert_pop([PARSE_ARGS])dnl
1699 dnl Process *=* last to allow for user specified --option=* type arguments.
1700 m4_divert_push([PARSE_ARGS_END])dnl
1703 at_envvar=`expr "x$at_option" : 'x\([[^=]]*\)='`
1704 # Reject names that are not valid shell variable names.
1705 expr "x$at_envvar" : "[.*[^_$as_cr_alnum]]" >/dev/null &&
1706 AS_ERROR([invalid variable name: $at_envvar])
1707 at_value=`echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"`
1708 eval "$at_envvar='$at_value'"
1710 # Propagate to debug scripts.
1711 at_debug_args="$at_debug_args $at_envvar='$at_value'"
1714 *) echo "$as_me: invalid option: $at_option" >&2
1715 echo "Try \`$[0] --help' for more information." >&2
1721 # Selected test groups.
1722 if test -z "$at_groups"; then
1723 at_groups=$at_groups_all
1725 # Sort the tests, removing duplicates:
1726 at_groups=`echo $at_groups | tr ' ' "$as_nl" | sort -nu`
1727 # and add banners. (Passing at_groups_all is tricky--see the comment
1728 # starting with "Passing at_groups is tricky.")
1729 at_groups=`echo "$at_groups$as_nl $at_groups_all" |
1730 awk ['BEGIN { FS = "@" } # Effectively switch off field splitting.
1731 /^$/ { next } # Ignore the empty line.
1732 !/ / { groups++; selected[$ 0] = 1; next }
1733 # The last line, containing at_groups_all.
1735 n = split($ 0, a, " ")
1736 # If there are several tests, select their banners:
1738 for (i = 1; i <= n; i++) {
1739 if (a[i] ~ /^banner-/)
1741 else if (banner != "" && selected[a[i]] == 1)
1742 selected[banner] = 1
1745 for (i = 1; i <= n; i++)
1746 if (selected[a[i]] == 1)
1747 list = list " " a[i]
1751 m4_divert_pop([PARSE_ARGS_END])dnl
1752 m4_divert_push([HELP])dnl
1757 Usage: $[0] [[OPTION]... [VARIABLE=VALUE]... [TESTS]]
1759 Run all the tests, or the selected TESTS, given by numeric ranges, and
1760 save a detailed log file. Upon failure, create debugging scripts.
1762 You should not change environment variables unless explicitly passed
1763 as command line arguments. Set \`AUTOTEST_PATH' to select the executables
1764 to exercise. Each relative directory is expanded as build and source
1765 directories relatively to the top level of this distribution. E.g.,
1767 $ $[0] AUTOTEST_PATH=bin
1769 possibly amounts into
1771 PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH
1773 m4_divert_pop([HELP])dnl
1774 m4_divert_push([HELP_MODES])dnl
1778 -h, --help print the help message, then exit
1779 -V, --version print version number, then exit
1780 -c, --clean remove all the files this test suite might create and exit
1781 -l, --list describes all the tests, or the selected TESTS
1783 m4_divert_pop([HELP_MODES])dnl
1784 m4_divert_push([HELP_TUNING])dnl
1788 -k, --keywords=KEYWORDS
1789 select the tests matching all the comma-separated KEYWORDS
1790 multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD
1791 -e, --errexit abort as soon as a test fails; implies --debug
1792 -v, --verbose force more detailed output
1793 default for debugging scripts
1794 -d, --debug inhibit clean up and top-level logging
1795 default for debugging scripts
1796 -x, --trace enable tests shell tracing
1798 m4_divert_pop([HELP_TUNING])dnl
1799 m4_divert_push([HELP_END])dnl
1802 Report bugs to <AT_PACKAGE_BUGREPORT>.
1810 AT_TESTSUITE_NAME test groups:
1812 NUM: FILE-NAME:LINE TEST-GROUP-NAME
1816 # Passing at_groups is tricky. We cannot use it to form a literal string
1817 # or regexp because of the limitation of AIX awk. And Solaris' awk
1818 # doesn't grok more than 99 fields in a record, so we have to use `split'.
1819 echo "$at_groups$as_nl$at_help_all" |
1820 awk 'BEGIN { FS = ";" }
1822 for (n = split($ 0, a, " "); n; n--) selected[[a[n]]] = 1
1826 if (selected[[$ 1]]) {
1827 printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3
1828 if ($ 4) printf " %s\n", $ 4
1833 m4_divert_pop([HELP_END])dnl
1834 m4_divert_push([VERSION])dnl
1835 if $at_version_p; then
1836 echo "$as_me (AT_PACKAGE_STRING)"
1838 m4_divert_pop([VERSION])dnl
1839 m4_divert_push([VERSION_END])dnl
1843 m4_divert_pop([VERSION_END])dnl
1844 m4_divert_push([PREPARE_TESTS])dnl
1846 # Don't take risks: use only absolute directories in PATH.
1848 # For stand-alone test suites, AUTOTEST_PATH is relative to `.'.
1850 # For embedded test suites, AUTOTEST_PATH is relative to the top level
1851 # of the package. Then expand it into build/src parts, since users
1852 # may create executables in both places.
1853 AUTOTEST_PATH=`echo $AUTOTEST_PATH | sed "s&:&$PATH_SEPARATOR&g"`
1855 _AS_PATH_WALK([$AUTOTEST_PATH $PATH],
1856 [test -n "$at_path" && at_path=$at_path$PATH_SEPARATOR
1858 [[\\/]]* | ?:[[\\/]]* )
1859 at_path=$at_path$as_dir
1862 if test -z "$at_top_build_prefix"; then
1863 # Stand-alone test suite.
1864 at_path=$at_path$as_dir
1866 # Embedded test suite.
1867 at_path=$at_path$at_top_build_prefix$as_dir$PATH_SEPARATOR
1868 at_path=$at_path$at_top_srcdir/$as_dir
1873 # Now build and simplify PATH.
1875 # There might be directories that don't exist, but don't redirect
1876 # builtins' (eg., cd) stderr directly: Ultrix's sh hates that.
1878 _AS_PATH_WALK([$at_path],
1879 [as_dir=`(cd "$as_dir" && pwd) 2>/dev/null`
1880 test -d "$as_dir" || continue
1883 $as_dir$PATH_SEPARATOR* | \
1884 *$PATH_SEPARATOR$as_dir | \
1885 *$PATH_SEPARATOR$as_dir$PATH_SEPARATOR* ) ;;
1888 *) PATH=$PATH$PATH_SEPARATOR$as_dir ;;
1892 # Setting up the FDs.
1893 # 5 is the log file. Not to be overwritten if `-d'.
1894 m4_define([AS_MESSAGE_LOG_FD], [5])
1895 if $at_debug_p; then
1896 at_suite_log=/dev/null
1900 exec AS_MESSAGE_LOG_FD>>"$at_suite_log"
1903 AS_BOX(m4_defn([AT_TESTSUITE_NAME])[.])
1905 AS_BOX(m4_defn([AT_TESTSUITE_NAME])[.])
1908 echo "$as_me: command line was:"
1909 echo " $ $[0] $at_cli_args"
1912 # Try to find a few ChangeLogs in case it might help determining the
1913 # exact version. Use the relative dir: if the top dir is a symlink,
1914 # find will not follow it (and options to follow the links are not
1915 # portable), which would result in no output here.
1916 if test -n "$at_top_srcdir"; then
1917 AS_BOX([ChangeLogs.])
1919 for at_file in `find "$at_top_srcdir" -name ChangeLog -print`
1921 echo "$as_me: $at_file:"
1922 sed 's/^/| /;10q' $at_file
1930 # Contents of the config files.
1931 for at_file in atconfig atlocal
1933 test -r $at_file || continue
1934 echo "$as_me: $at_file:"
1935 sed 's/^/| /' $at_file
1939 AS_BOX([Tested programs.])
1941 } >&AS_MESSAGE_LOG_FD
1943 # Report what programs are being tested.
1944 for at_program in : $at_tested
1946 test "$at_program" = : && continue
1947 _AS_PATH_WALK([$PATH], [test -f "$as_dir/$at_program" && break])
1948 if test -f "$as_dir/$at_program"; then
1950 echo "$at_srcdir/AT_LINE: $as_dir/$at_program --version"
1951 "$as_dir/$at_program" --version
1953 } >&AS_MESSAGE_LOG_FD 2>&1
1955 AS_ERROR([cannot find $at_program])
1960 AS_BOX([Running the tests.])
1961 } >&AS_MESSAGE_LOG_FD
1963 at_start_date=`date`
1964 at_start_time=`date +%s 2>/dev/null`
1965 echo "$as_me: starting at: $at_start_date" >&AS_MESSAGE_LOG_FD
1972 m4_divert_pop([PREPARE_TESTS])dnl
1973 m4_divert_push([TESTS])dnl
1975 # Create the master directory if it doesn't already exist.
1976 test -d "$at_suite_dir" ||
1977 mkdir "$at_suite_dir" ||
1978 AS_ERROR([cannot create '$at_suite_dir'])
1980 # Can we diff with `/dev/null'? DU 5.0 refuses.
1981 if diff /dev/null /dev/null >/dev/null 2>&1; then
1982 at_devnull=/dev/null
1984 at_devnull=$at_suite_dir/devnull
1988 # Use `diff -u' when possible.
1989 if at_diff=`diff -u "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_diff"
1997 for at_group in $at_groups
1999 # Be sure to come back to the top test directory.
2004 at_group_log=$at_suite_log
2008 at_group_normalized=$at_group
2009 _AT_NORMALIZE_TEST_GROUP_NUMBER(at_group_normalized)
2011 # Create a fresh directory for the next test group, and enter.
2012 at_group_dir=$at_suite_dir/$at_group_normalized
2013 at_group_log=$at_group_dir/$as_me.log
2014 if test -d "$at_group_dir"; then
2015 find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
2016 rm -fr "$at_group_dir"
2018 # Be tolerant if the above `rm' was not able to remove the directory.
2019 AS_MKDIR_P([$at_group_dir])
2024 echo 0 > "$at_status_file"
2026 # Clearly separate the test groups when verbose.
2027 test $at_group_count != 0 && $at_verbose
2029 # In verbose mode, append to the log file *and* show on
2030 # the standard output; in quiet mode only write to the log
2031 if test $at_verbose = echo; then
2032 at_tee_pipe='tee -a "$at_group_log"'
2034 at_tee_pipe='cat >> "$at_group_log"'
2038 dnl Test groups inserted here (TESTS).
2039 m4_divert_pop([TESTS])[]dnl
2040 m4_divert_push([TESTS_END])[]dnl
2043 echo "$as_me: no such test group: $at_group" >&2
2048 # Be sure to come back to the suite directory, in particular
2049 # since below we might `rm' the group directory we are in currently.
2055 if test ! -f "$at_check_line_file"; then
2056 sed "s/^ */$as_me: warning: /" <<_ATEOF
2057 A failure happened in a test group before any test could be
2058 run. This means that test suite is improperly designed. Please
2059 report this failure to <AT_PACKAGE_BUGREPORT>.
2061 echo "$at_setup_line" >"$at_check_line_file"
2063 at_group_count=`expr 1 + $at_group_count`
2064 $at_verbose $ECHO_N "$at_group. $at_setup_line: $ECHO_C"
2065 echo $ECHO_N "$at_group. $at_setup_line: $ECHO_C" >> "$at_group_log"
2066 case $at_xfail:$at_status in
2068 at_msg="UNEXPECTED PASS"
2069 at_xpass_list="$at_xpass_list $at_group"
2070 at_errexit=$at_errexit_p
2074 at_pass_list="$at_pass_list $at_group"
2078 at_msg='skipped ('`cat "$at_check_line_file"`')'
2079 at_skip_list="$at_skip_list $at_group"
2083 at_msg='expected failure ('`cat "$at_check_line_file"`')'
2084 at_xfail_list="$at_xfail_list $at_group"
2088 at_msg='FAILED ('`cat "$at_check_line_file"`')'
2089 at_fail_list="$at_fail_list $at_group"
2090 at_errexit=$at_errexit_p
2093 # Make sure there is a separator even with long titles.
2095 at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg"
2098 # $at_times_file is only available if the group succeeded.
2099 # We're not including the group log, so the success message
2100 # is written in the global log separately. But we also
2101 # write to the group log in case they're using -d.
2102 if test -f "$at_times_file"; then
2103 at_log_msg="$at_log_msg ("`sed 1d "$at_times_file"`')'
2104 rm -f "$at_times_file"
2106 echo "$at_log_msg" >> "$at_group_log"
2107 echo "$at_log_msg" >&AS_MESSAGE_LOG_FD
2109 # Cleanup the group directory, unless the user wants the files.
2110 if $at_debug_p ; then
2111 _AT_CREATE_DEBUGGING_SCRIPT
2112 elif test -d "$at_group_dir"; then
2113 find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
2114 rm -fr "$at_group_dir"
2118 # Upon failure, include the log into the testsuite's global
2119 # log. The failure message is written in the group log. It
2120 # is later included in the global log.
2121 echo "$at_log_msg" >> "$at_group_log"
2123 # Upon failure, keep the group directory for autopsy, and
2124 # create the debugging script.
2125 _AT_CREATE_DEBUGGING_SCRIPT
2126 $at_errexit && break
2133 # Back to the top directory.
2136 # Compute the duration of the suite.
2138 at_stop_time=`date +%s 2>/dev/null`
2139 echo "$as_me: ending at: $at_stop_date" >&AS_MESSAGE_LOG_FD
2140 case $at_start_time,$at_stop_time in
2142 at_duration_s=`expr $at_stop_time - $at_start_time`
2143 at_duration_m=`expr $at_duration_s / 60`
2144 at_duration_h=`expr $at_duration_m / 60`
2145 at_duration_s=`expr $at_duration_s % 60`
2146 at_duration_m=`expr $at_duration_m % 60`
2147 at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s"
2148 echo "$as_me: test suite duration: $at_duration" >&AS_MESSAGE_LOG_FD
2152 # Wrap up the test suite with summary statistics.
2153 at_skip_count=`set dummy $at_skip_list; shift; echo $[@%:@]`
2154 at_fail_count=`set dummy $at_fail_list; shift; echo $[@%:@]`
2155 at_xpass_count=`set dummy $at_xpass_list; shift; echo $[@%:@]`
2156 at_xfail_count=`set dummy $at_xfail_list; shift; echo $[@%:@]`
2158 at_run_count=`expr $at_group_count - $at_skip_count`
2159 at_unexpected_count=`expr $at_xpass_count + $at_fail_count`
2160 at_total_fail_count=`expr $at_xfail_count + $at_fail_count`
2163 AS_BOX([Test results.])
2167 AS_BOX([Test results.])
2169 } >&AS_MESSAGE_LOG_FD
2172 dnl FIXME: this code is as far from i18n-cleanness as man
2173 dnl could imagine...
2175 if test $at_run_count = 1; then
2179 at_result="$at_run_count tests"
2182 if $at_errexit_p && test $at_unexpected_count != 0; then
2183 if test $at_xpass_count = 1; then
2184 at_result="$at_result $at_were run, one passed"
2186 at_result="$at_result $at_were run, one failed"
2188 at_result="$at_result unexpectedly and inhibited subsequent tests."
2190 # Don't you just love exponential explosion of the number of cases?
2191 case $at_xpass_count:$at_fail_count:$at_xfail_count in
2193 0:0:0) at_result="$at_result $at_were successful." ;;
2194 0:0:*) at_result="$at_result behaved as expected." ;;
2196 # Some unexpected failures
2197 0:*:0) at_result="$at_result $at_were run,
2198 $at_fail_count failed unexpectedly." ;;
2200 # Some failures, both expected and unexpected
2201 0:*:1) at_result="$at_result $at_were run,
2202 $at_total_fail_count failed ($at_xfail_count expected failure)." ;;
2203 0:*:*) at_result="$at_result $at_were run,
2204 $at_total_fail_count failed ($at_xfail_count expected failures)." ;;
2206 # No unexpected failures, but some xpasses
2207 *:0:*) at_result="$at_result $at_were run,
2208 $at_xpass_count passed unexpectedly." ;;
2210 # No expected failures, but failures and xpasses
2211 *:1:0) at_result="$at_result $at_were run,
2212 $at_unexpected_count did not behave as expected ($at_fail_count unexpected failure)." ;;
2213 *:*:0) at_result="$at_result $at_were run,
2214 $at_unexpected_count did not behave as expected ($at_fail_count unexpected failures)." ;;
2217 *:*:1) at_result="$at_result $at_were run,
2218 $at_xpass_count passed unexpectedly,
2219 $at_total_fail_count failed ($at_xfail_count expected failure)." ;;
2220 *:*:*) at_result="$at_result $at_were run,
2221 $at_xpass_count passed unexpectedly,
2222 $at_total_fail_count failed ($at_xfail_count expected failures)." ;;
2225 if test $at_skip_count = 0 && test $at_run_count -gt 1; then
2226 at_result="All $at_result"
2230 # Now put skips in the mix.
2231 case $at_skip_count in
2233 1) at_result="$at_result
2234 1 test was skipped." ;;
2235 *) at_result="$at_result
2236 $at_skip_count tests were skipped." ;;
2239 if test $at_unexpected_count = 0; then
2241 echo "$at_result" >&AS_MESSAGE_LOG_FD
2243 echo "ERROR: $at_result" >&2
2244 echo "ERROR: $at_result" >&AS_MESSAGE_LOG_FD
2247 AS_BOX([Summary of the failures.])
2249 # Summary of failed and skipped tests.
2250 if test $at_fail_count != 0; then
2251 echo "Failed tests:"
2252 $SHELL "$[0]" $at_fail_list --list
2255 if test $at_skip_count != 0; then
2256 echo "Skipped tests:"
2257 $SHELL "$[0]" $at_skip_list --list
2260 if test $at_xpass_count != 0; then
2261 echo "Unexpected passes:"
2262 $SHELL "$[0]" $at_xpass_list --list
2265 if test $at_fail_count != 0; then
2266 AS_BOX([Detailed failed tests.])
2268 for at_group in $at_fail_list
2270 at_group_normalized=$at_group
2271 _AT_NORMALIZE_TEST_GROUP_NUMBER(at_group_normalized)
2272 cat "$at_suite_dir/$at_group_normalized/$as_me.log"
2277 if test -n "$at_top_srcdir"; then
2278 AS_BOX([${at_top_build_prefix}config.log])
2279 sed 's/^/| /' ${at_top_build_prefix}config.log
2282 } >&AS_MESSAGE_LOG_FD
2284 AS_BOX([$as_me.log was created.])
2287 echo "Please send \`${at_testdir+${at_testdir}/}$as_me.log' and all information you think might help:"
2289 echo " To: <AT_PACKAGE_BUGREPORT>"
2290 echo " Subject: @<:@AT_PACKAGE_STRING@:>@ $as_me:dnl
2291 $at_fail_list${at_fail_list:+ failed${at_xpass_list:+,}}dnl
2292 $at_xpass_list${at_xpass_list:+ passed unexpectedly}"
2294 if test $at_debug_p = false; then
2296 echo 'You may investigate any problem if you feel able to do so, in which'
2297 echo 'case the test suite provides a good starting point. Its output may'
2298 echo "be found below \`${at_testdir+${at_testdir}/}$as_me.dir'."
2305 m4_divert_pop([TESTS_END])dnl
2306 dnl End of AT_INIT: divert to KILL, only test groups are to be
2307 dnl output, the rest is ignored. Current diversion is BODY, inherited
2309 m4_divert_pop([BODY])
2310 m4_divert_push([KILL])
2313 m4_location(_AS_DIRNAME_PREPARE)../../lib/m4sugar/m4sh.m4:784
2318 test "x$as_lineno_1" != "x$as_lineno_2" &&
2319 test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2"
2321 m4_location(_AS_CR_PREPARE)../../lib/m4sugar/m4sh.m4:1332
2323 AS_REQUIRE_SHELL_FN_AS_DETECT_REQUIRED([_AS_SHELL_FN_WORK])dnl
2324 m4_provide_if([AS_SHELL_FN_$1], [],
2325 [m4_provide([AS_SHELL_FN_$1])m4_divert_text([M4SH-INIT], [$1() {
2329 AT_KEYWORDSm4_append_uniq([AT_keywords], [$1], [ ])
2331 AS_ESCAPEm4_bpatsubst([$1],
2332 m4_dquote(m4_default([$2], [\"$`])),
2335 m4_copym4_define([$2], m4_defn([$1]))
2337 AS_EXECUTABLE_P_m4_defun_pro([AS_EXECUTABLE_P])AS_REQUIRE([_AS_TEST_PREPARE])dnl
2338 { test -f $1 && AS_TEST_X([$1]); }dnl
2339 []_m4_defun_epi([AS_EXECUTABLE_P])
2343 AT_CAPTURE_FILEm4_append_uniq([AT_capture_files], ["$1"], [ \
2346 AT_SETUPm4_ifdef([AT_keywords], [m4_undefine([AT_keywords])])
2347 m4_ifdef([AT_capture_files], [m4_undefine([AT_capture_files])])
2348 m4_define([AT_line], AT_LINE)
2349 m4_define([AT_xfail], [at_xfail=no])
2350 m4_define([AT_description], [$1])
2351 m4_define([AT_ordinal], m4_incr(AT_ordinal))
2352 m4_append([AT_groups_all], [ ]m4_defn([AT_ordinal]))
2353 m4_divert_push([TESTS])dnl
2354 AT_ordinal ) @%:@ AT_ordinal. m4_defn([AT_line]): $1
2355 at_setup_line='m4_defn([AT_line])'
2356 at_desc="AS_ESCAPE([$1])"
2357 $at_quiet $ECHO_N "m4_format([%3d: %-]m4_eval(47 - m4_qdelta([$1]))[s],
2358 AT_ordinal, AS_ESCAPE([[$1]]))[]$ECHO_C"
2359 m4_divert_push([TEST_SCRIPT])dnl
2362 m4_toupperm4_translit([$1], m4_defn([m4_cr_letters]), m4_defn([m4_cr_LETTERS]))
2364 _m4_shiftnm4_if([$1], 0,
2366 [_m4_shiftn(m4_eval([$1]-1), m4_shift(m4_shift($@)))])
2368 _m4_divert(VERSION_NOTICES)351
2370 _AS_TR_CPP_PREPARE_m4_defun_pro([_AS_TR_CPP_PREPARE])AS_REQUIRE([_AS_CR_PREPARE])dnl
2371 # Sed expression to map a string onto a valid CPP name.
2372 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[[^_$as_cr_alnum]]%_%g'"
2373 []_m4_defun_epi([_AS_TR_CPP_PREPARE])
2377 AS_VERSION_COMPARE_m4_defun_pro([AS_VERSION_COMPARE])AS_REQUIRE([_$0_PREPARE])dnl
2380 dnl This usage is portable even to ancient awk,
2381 dnl so don't worry about finding a "nice" awk version.
2382 awk "$as_awk_strverscmp" v1="$as_arg_v1" v2="$as_arg_v2" /dev/null
2388 []_m4_defun_epi([AS_VERSION_COMPARE])
2390 m4_include_uniquem4_ifdef([m4_include($1)],
2391 [m4_warn([syntax], [file `$1' included several times])])dnl
2392 m4_define([m4_include($1)])
2394 _m4_divert(BODY)1000
2396 m4_expansion_stack_pushm4_pushdef([m4_expansion_stack],
2397 [$1]m4_ifdef([m4_expansion_stack], [
2398 m4_defn([m4_expansion_stack])]))
2400 _m4_divert(HELP_TUNING)302
2402 m4_re_escapem4_bpatsubst([$1],
2403 [[][*+.?\^$]], [\\\&])
2405 m4_location(AS_TEST_X)../../lib/m4sugar/m4sh.m4:793
2407 _AS_BOURNE_COMPATIBLEAS_IF([test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1],
2410 [#] Zsh 3.x and 4.x performs word splitting on ${1+"$[@]"}, which
2411 # is contrary to our usage. Disable this feature.
2412 alias -g '${1+"$[@]"}'='"$[@]"'
2413 setopt NO_GLOB_SUBST],
2414 [AS_CASE([`(set -o) 2>/dev/null`], [*posix*], [set -o posix])])
2417 AS_TR_CPP_m4_defun_pro([AS_TR_CPP])AS_REQUIRE([_$0_PREPARE])dnl
2419 [m4_bpatsubst(m4_translit([[$1]],
2420 [*abcdefghijklmnopqrstuvwxyz],
2421 [PABCDEFGHIJKLMNOPQRSTUVWXYZ]),
2422 [[^A-Z0-9_]], [_])],
2423 [`echo "$1" | $as_tr_cpp`])[]_m4_defun_epi([AS_TR_CPP])
2427 m4_shiftnm4_assert(($1 >= 0) && ($# > $1))dnl
2430 AS_CASE_m4_defun_pro([AS_CASE])m4_ifval([$2$3],
2432 _AS_CASE(m4_shift($@))
2435 []_m4_defun_epi([AS_CASE])
2437 AS_ERROR{ AS_MESSAGE([error: $1], [2])
2438 AS_EXIT([$2]); }[]dnl
2441 _m4_defun_epi_outerm4_undefine([_m4_divert_dump])dnl
2442 m4_divert_pop([GROW])dnl
2443 m4_undivert([GROW])dnl
2448 m4_stripm4_bpatsubsts([[$1]],
2453 _m4_divert(HELP_OTHER)303
2455 _m4_divert(HELP_MODES)301
2457 AT_CHECK_AT_CHECK([$1],[$2],[$3],[$4],[$5],[$6],1)
2459 m4_location(_AS_VERSION_COMPARE_PREPARE)../../lib/m4sugar/m4sh.m4:1288
2461 m4_bpatsubstsm4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])],
2462 [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])],
2463 [$#], 2, [m4_builtin([patsubst], $@)],
2464 [$0(m4_builtin([patsubst], [[$1]], [$2], [$3]),
2467 _AS_PATH_WALKAS_REQUIRE([_AS_PATH_SEPARATOR_PREPARE])dnl
2468 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2469 m4_bmatch([$1], [[:;]],
2471 for as_dir in $as_dummy],
2472 [for as_dir in m4_default([$1], [$PATH])])
2475 test -z "$as_dir" && as_dir=.
2481 m4_PACKAGE_NAMEGNU Autoconf
2483 _m4_defun_epim4_popdef([_m4_expanding($1)])dnl
2484 m4_expansion_stack_pop()dnl
2485 m4_ifndef([m4_expansion_stack], [_m4_defun_epi_outer[]])dnl
2489 _AS_SHELL_FN_WORKas_func_return () {
2492 as_func_success () {
2495 as_func_failure () {
2498 as_func_ret_success () {
2501 as_func_ret_failure () {
2506 AS_IF([as_func_success], [],
2508 echo as_func_success failed.])
2509 AS_IF([as_func_failure],
2511 echo as_func_failure succeeded.])
2512 AS_IF([as_func_ret_success], [],
2514 echo as_func_ret_success failed.])
2515 AS_IF([as_func_ret_failure],
2517 echo as_func_ret_failure succeeded.])
2518 AS_IF([( set x; as_func_ret_success y && test x = "[$]1" )], [],
2520 echo positional parameters were not saved.])
2521 test $exitcode = 0[]dnl
2524 _AS_SHELL_FN_SPY_AS_DETECT_SUGGESTED([_AS_SHELL_FN_WORK])
2525 _AS_RUN([_AS_SHELL_FN_WORK]) || {
2526 echo No shell found that supports shell functions.
2527 echo Please tell autoconf@gnu.org about your system,
2528 echo including any error possibly output before this
2533 m4_location(_AS_DETECT_BETTER_SHELL)../../lib/m4sugar/m4sh.m4:286
2535 _m4_divert(PARSE_ARGS)201
2537 AS_VAR_SET_IFAS_IF([AS_VAR_TEST_SET([$1])], [$2], [$3])
2539 _AS_DETECT_SUGGESTED_BODY:
2541 _m4_dumpdefs_upm4_ifdef([$1],
2542 [m4_pushdef([_m4_dumpdefs], m4_defn([$1]))dnl
2545 _m4_dumpdefs_up([$1])])
2547 m4_location(_AS_PATH_SEPARATOR_PREPARE)../../lib/m4sugar/m4sh.m4:982
2550 # End of frozen state file