From 7fcf2fc3c3cb31d6fa1d3ff3e2f642ce53903060 Mon Sep 17 00:00:00 2001 From: eulerstorage Date: Tue, 31 Dec 2019 17:23:10 +0800 Subject: [PATCH] package init --- 0000-dmraid-1.0.0.rc16-test_devices.patch | 5422 +++++++++++++++++ 0001-ddf1_lsi_persistent_name.patch | 21 + 0002-pdc_raid10_failure.patch | 15 + 0003-return_error_wo_disks.patch | 22 + 0004-fix_sil_jbod.patch | 57 + 0005-avoid_register.patch | 31 + 0006-move_pattern_file_to_var.patch | 14 + 0007-libversion.patch | 12 + 0008-libversion-display.patch | 43 + ...activation_volume_marked_for_rebuild.patch | 88 + ...nabling_registration_degraded_volume.patch | 176 + ..._20-cleanup_some_compilation_warning.patch | 63 + ..._that_postpones_any_metadata_updates.patch | 215 + ...mraid-fix-build-to-honour-cflags-var.patch | 17 + ...ors-and-warnings-triggered-by-CFLAGS.patch | 65 + 0016-dmraid-fix-destdir.patch | 60 + 0017-dmraid-fix-missing-destdir.patch | 34 + 0018-dmraid-fix-so-flags.patch | 17 + dmraid-1.0.0.rc16.tar.bz2 | Bin 0 -> 224170 bytes dmraid.spec | 408 ++ 20 files changed, 6780 insertions(+) create mode 100644 0000-dmraid-1.0.0.rc16-test_devices.patch create mode 100644 0001-ddf1_lsi_persistent_name.patch create mode 100644 0002-pdc_raid10_failure.patch create mode 100644 0003-return_error_wo_disks.patch create mode 100644 0004-fix_sil_jbod.patch create mode 100644 0005-avoid_register.patch create mode 100644 0006-move_pattern_file_to_var.patch create mode 100644 0007-libversion.patch create mode 100644 0008-libversion-display.patch create mode 100644 0009-bz635995-data_corruption_during_activation_volume_marked_for_rebuild.patch create mode 100644 0011-bz626417_19-enabling_registration_degraded_volume.patch create mode 100644 0012-bz626417_20-cleanup_some_compilation_warning.patch create mode 100644 0013-bz626417_21-add_option_that_postpones_any_metadata_updates.patch create mode 100644 0014-dmraid-fix-build-to-honour-cflags-var.patch create mode 100644 0015-dmraid-fix-errors-and-warnings-triggered-by-CFLAGS.patch create mode 100644 0016-dmraid-fix-destdir.patch create mode 100644 0017-dmraid-fix-missing-destdir.patch create mode 100644 0018-dmraid-fix-so-flags.patch create mode 100644 dmraid-1.0.0.rc16.tar.bz2 create mode 100644 dmraid.spec diff --git a/0000-dmraid-1.0.0.rc16-test_devices.patch b/0000-dmraid-1.0.0.rc16-test_devices.patch new file mode 100644 index 0000000..dd613f7 --- /dev/null +++ b/0000-dmraid-1.0.0.rc16-test_devices.patch @@ -0,0 +1,5422 @@ +diff --git a/configure.in.test_devices b/configure.in +index 8b0ad90..74fd27f 100644 +--- a/configure.in.test_devices ++++ b/configure.in +@@ -133,8 +133,9 @@ AC_ARG_ENABLE(shared_lib, + + echo $ac_n "checking whether to disable testing with mapped devices""... $ac_c" 1>&6 + dnl Disable testing with mapped devices +-AC_ARG_ENABLE(testing, [ --disable-testing Disable testing with mapped devices], \ +-DMRAID_TEST=no, DMRAID_TEST=yes) ++AC_ARG_ENABLE(testing, [ --disable-testing Enable testing with mapped devices], \ ++DMRAID_TEST=$enableval, DMRAID_TEST=yes) ++ + + echo "$ac_t""$DEBUG" 1>&6 + +@@ -165,6 +166,10 @@ if test x$DMRAID_LED = xyes; then + CFLAGS="$CFLAGS -DDMRAID_LED" + fi + ++if test x$DMRAID_TEST = xyes; then ++ CFLAGS="$CFLAGS -DDMRAID_TEST" ++fi ++ + if test x$DMRAID_INTEL_LED = xyes; then + CFLAGS="$CFLAGS -DDMRAID_LED -DDMRAID_INTEL_LED" + fi +@@ -229,7 +234,6 @@ AC_SUBST(CFLAGS) + AC_SUBST(CLDFLAGS) + AC_SUBST(DEBUG) + AC_SUBST(DEBUG_MALLOC) +-AC_SUBST(DMRAID_TEST) + AC_SUBST(DMRAID_VERSION) + AC_SUBST(DMRAID_LIB_VERSION) + AC_SUBST(DIETLIBC) +diff --git a/configure.test_devices b/configure +index f0194d6..995ebb2 100755 +--- a/configure.test_devices ++++ b/configure +@@ -1,9 +1,9 @@ + #! /bin/sh + # Guess values for system-dependent variables and create Makefiles. +-# Generated by GNU Autoconf 2.61. ++# Generated by GNU Autoconf 2.63. + # + # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +-# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ++# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + # This configure script is free software; the Free Software Foundation + # gives unlimited permission to copy, distribute and modify it. + ## --------------------- ## +@@ -15,7 +15,7 @@ DUALCASE=1; export DUALCASE # for MKS sh + if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: +- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which ++ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +@@ -37,17 +37,45 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS + as_cr_digits='0123456789' + as_cr_alnum=$as_cr_Letters$as_cr_digits + +-# The user is always right. +-if test "${PATH_SEPARATOR+set}" != set; then +- echo "#! /bin/sh" >conf$$.sh +- echo "exit 0" >>conf$$.sh +- chmod +x conf$$.sh +- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then +- PATH_SEPARATOR=';' ++as_nl=' ++' ++export as_nl ++# Printing a long string crashes Solaris 7 /usr/bin/printf. ++as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ++as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo ++as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo ++if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then ++ as_echo='printf %s\n' ++ as_echo_n='printf %s' ++else ++ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then ++ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' ++ as_echo_n='/usr/ucb/echo -n' + else +- PATH_SEPARATOR=: ++ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' ++ as_echo_n_body='eval ++ arg=$1; ++ case $arg in ++ *"$as_nl"*) ++ expr "X$arg" : "X\\(.*\\)$as_nl"; ++ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; ++ esac; ++ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ++ ' ++ export as_echo_n_body ++ as_echo_n='sh -c $as_echo_n_body as_echo' + fi +- rm -f conf$$.sh ++ export as_echo_body ++ as_echo='sh -c $as_echo_body as_echo' ++fi ++ ++# The user is always right. ++if test "${PATH_SEPARATOR+set}" != set; then ++ PATH_SEPARATOR=: ++ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { ++ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || ++ PATH_SEPARATOR=';' ++ } + fi + + # Support unset when possible. +@@ -63,8 +91,6 @@ fi + # there to prevent editors from complaining about space-tab. + # (If _AS_PATH_WALK were called with IFS unset, it would disable word + # splitting by setting IFS to empty value.) +-as_nl=' +-' + IFS=" "" $as_nl" + + # Find who we are. Look in the path if we contain no directory separator. +@@ -87,7 +113,7 @@ if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then +- echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 ++ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } + fi + +@@ -100,17 +126,10 @@ PS2='> ' + PS4='+ ' + + # NLS nuisances. +-for as_var in \ +- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ +- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ +- LC_TELEPHONE LC_TIME +-do +- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then +- eval $as_var=C; export $as_var +- else +- ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +- fi +-done ++LC_ALL=C ++export LC_ALL ++LANGUAGE=C ++export LANGUAGE + + # Required to use basename. + if expr a : '\(a\)' >/dev/null 2>&1 && +@@ -132,7 +151,7 @@ as_me=`$as_basename -- "$0" || + $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +-echo X/"$0" | ++$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q +@@ -158,7 +177,7 @@ else + as_have_required=no + fi + +- if test $as_have_required = yes && (eval ": ++ if test $as_have_required = yes && (eval ": + (as_func_return () { + (exit \$1) + } +@@ -240,7 +259,7 @@ IFS=$as_save_IFS + if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: +- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which ++ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +@@ -261,7 +280,7 @@ _ASEOF + if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: +- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which ++ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +@@ -341,10 +360,10 @@ fi + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV +- do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +- done +- export CONFIG_SHELL +- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} ++ do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var ++ done ++ export CONFIG_SHELL ++ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} + fi + + +@@ -413,9 +432,10 @@ fi + + test \$exitcode = 0") || { + echo No shell found that supports shell functions. +- echo Please tell autoconf@gnu.org about your system, +- echo including any error possibly output before this +- echo message ++ echo Please tell bug-autoconf@gnu.org about your system, ++ echo including any error possibly output before this message. ++ echo This can help us improve future autoconf versions. ++ echo Configuration will now proceed without shell functions. + } + + +@@ -451,7 +471,7 @@ test \$exitcode = 0") || { + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || +- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 ++ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems +@@ -479,7 +499,6 @@ case `echo -n x` in + *) + ECHO_N='-n';; + esac +- + if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +@@ -492,19 +511,22 @@ if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file + else + rm -f conf$$.dir +- mkdir conf$$.dir +-fi +-echo >conf$$.file +-if ln -s conf$$.file conf$$ 2>/dev/null; then +- as_ln_s='ln -s' +- # ... but there are two gotchas: +- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. +- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. +- # In both cases, we have to default to `cp -p'. +- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || ++ mkdir conf$$.dir 2>/dev/null ++fi ++if (echo >conf$$.file) 2>/dev/null; then ++ if ln -s conf$$.file conf$$ 2>/dev/null; then ++ as_ln_s='ln -s' ++ # ... but there are two gotchas: ++ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. ++ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. ++ # In both cases, we have to default to `cp -p'. ++ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || ++ as_ln_s='cp -p' ++ elif ln conf$$.file conf$$ 2>/dev/null; then ++ as_ln_s=ln ++ else + as_ln_s='cp -p' +-elif ln conf$$.file conf$$ 2>/dev/null; then +- as_ln_s=ln ++ fi + else + as_ln_s='cp -p' + fi +@@ -529,10 +551,10 @@ else + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then +- test -d "$1/."; ++ test -d "$1/."; + else + case $1 in +- -*)set "./$1";; ++ -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi +@@ -614,99 +636,117 @@ ac_includes_default="\ + #endif" + + ac_default_prefix=/usr/share +-ac_subst_vars='SHELL +-PATH_SEPARATOR +-PACKAGE_NAME +-PACKAGE_TARNAME +-PACKAGE_VERSION +-PACKAGE_STRING +-PACKAGE_BUGREPORT +-exec_prefix +-prefix +-program_transform_name +-bindir +-sbindir +-libexecdir +-datarootdir +-datadir +-sysconfdir +-sharedstatedir +-localstatedir +-includedir +-oldincludedir +-docdir +-infodir +-htmldir +-dvidir +-pdfdir +-psdir +-libdir +-localedir +-mandir +-DEFS +-ECHO_C +-ECHO_N +-ECHO_T +-LIBS +-build_alias +-host_alias +-target_alias +-build +-build_cpu +-build_vendor +-build_os +-host +-host_cpu +-host_vendor +-host_os +-target +-target_cpu +-target_vendor +-target_os +-AWK +-INSTALL_PROGRAM +-INSTALL_SCRIPT +-INSTALL_DATA +-LN_S +-SET_MAKE +-RANLIB +-KLCC +-KLIBC +-KLIBC_PREFIX +-KLIBC_BIN_DIR +-KLIBC_SBIN_DIR +-KLIBC_LIB_DIR +-KLIBC_INCLUDE_DIR +-CC +-CFLAGS +-LDFLAGS +-CPPFLAGS +-ac_ct_CC +-EXEEXT +-OBJEXT +-CPP +-GREP +-EGREP +-CLDFLAGS +-DEBUG +-DEBUG_MALLOC +-DMRAID_TEST +-DMRAID_VERSION +-DMRAID_LIB_VERSION +-DIETLIBC +-GROUP +-JOBS +-LD_DEPS +-FLAVOUR +-LIBSELINUX +-LIBSEPOL +-LIB_SO +-OWNER +-SOFLAG +-STATIC_LINK ++ac_subst_vars='LTLIBOBJS + LIBOBJS +-LTLIBOBJS' ++STATIC_LINK ++SOFLAG ++OWNER ++LIB_SO ++LIBSEPOL ++LIBSELINUX ++FLAVOUR ++LD_DEPS ++JOBS ++GROUP ++DIETLIBC ++DMRAID_LIB_VERSION ++DMRAID_VERSION ++DEBUG_MALLOC ++DEBUG ++CLDFLAGS ++EGREP ++GREP ++CPP ++OBJEXT ++EXEEXT ++ac_ct_CC ++CPPFLAGS ++LDFLAGS ++CFLAGS ++CC ++KLIBC_INCLUDE_DIR ++KLIBC_LIB_DIR ++KLIBC_SBIN_DIR ++KLIBC_BIN_DIR ++KLIBC_PREFIX ++KLIBC ++KLCC ++RANLIB ++SET_MAKE ++LN_S ++INSTALL_DATA ++INSTALL_SCRIPT ++INSTALL_PROGRAM ++AWK ++target_os ++target_vendor ++target_cpu ++target ++host_os ++host_vendor ++host_cpu ++host ++build_os ++build_vendor ++build_cpu ++build ++target_alias ++host_alias ++build_alias ++LIBS ++ECHO_T ++ECHO_N ++ECHO_C ++DEFS ++mandir ++localedir ++libdir ++psdir ++pdfdir ++dvidir ++htmldir ++infodir ++docdir ++oldincludedir ++includedir ++localstatedir ++sharedstatedir ++sysconfdir ++datadir ++datarootdir ++libexecdir ++sbindir ++bindir ++program_transform_name ++prefix ++exec_prefix ++PACKAGE_BUGREPORT ++PACKAGE_STRING ++PACKAGE_VERSION ++PACKAGE_TARNAME ++PACKAGE_NAME ++PATH_SEPARATOR ++SHELL' + ac_subst_files='' ++ac_user_opts=' ++enable_option_checking ++enable_klibc ++with_user ++with_group ++enable_debug ++enable_debug_malloc ++enable_dietlibc ++enable_jobs ++enable_libselinux ++enable_libsepol ++enable_mini ++enable_led ++enable_intel_led ++enable_native_log ++enable_static_link ++enable_shared_lib ++enable_testing ++' + ac_precious_vars='build_alias + host_alias + target_alias +@@ -721,6 +761,8 @@ CPP' + # Initialize some variables set by options. + ac_init_help= + ac_init_version=false ++ac_unrecognized_opts= ++ac_unrecognized_sep= + # The variables have the same names as the options, with + # dashes changed to underlines. + cache_file=/dev/null +@@ -819,13 +861,21 @@ do + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) +- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` ++ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. +- expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && +- { echo "$as_me: error: invalid feature name: $ac_feature" >&2 ++ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && ++ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } +- ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` +- eval enable_$ac_feature=no ;; ++ ac_useropt_orig=$ac_useropt ++ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` ++ case $ac_user_opts in ++ *" ++"enable_$ac_useropt" ++"*) ;; ++ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ++ ac_unrecognized_sep=', ';; ++ esac ++ eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; +@@ -838,13 +888,21 @@ do + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) +- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` ++ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. +- expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && +- { echo "$as_me: error: invalid feature name: $ac_feature" >&2 ++ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && ++ { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } +- ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` +- eval enable_$ac_feature=\$ac_optarg ;; ++ ac_useropt_orig=$ac_useropt ++ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` ++ case $ac_user_opts in ++ *" ++"enable_$ac_useropt" ++"*) ;; ++ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ++ ac_unrecognized_sep=', ';; ++ esac ++ eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ +@@ -1035,22 +1093,38 @@ do + ac_init_version=: ;; + + -with-* | --with-*) +- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` ++ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. +- expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && +- { echo "$as_me: error: invalid package name: $ac_package" >&2 ++ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && ++ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } +- ac_package=`echo $ac_package | sed 's/[-.]/_/g'` +- eval with_$ac_package=\$ac_optarg ;; ++ ac_useropt_orig=$ac_useropt ++ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` ++ case $ac_user_opts in ++ *" ++"with_$ac_useropt" ++"*) ;; ++ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ++ ac_unrecognized_sep=', ';; ++ esac ++ eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) +- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` ++ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. +- expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && +- { echo "$as_me: error: invalid package name: $ac_package" >&2 ++ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && ++ { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } +- ac_package=`echo $ac_package | sed 's/[-.]/_/g'` +- eval with_$ac_package=no ;; ++ ac_useropt_orig=$ac_useropt ++ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` ++ case $ac_user_opts in ++ *" ++"with_$ac_useropt" ++"*) ;; ++ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ++ ac_unrecognized_sep=', ';; ++ esac ++ eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. +@@ -1070,7 +1144,7 @@ do + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + +- -*) { echo "$as_me: error: unrecognized option: $ac_option ++ -*) { $as_echo "$as_me: error: unrecognized option: $ac_option + Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } + ;; +@@ -1079,16 +1153,16 @@ Try \`$0 --help' for more information." >&2 + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && +- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 ++ { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. +- echo "$as_me: WARNING: you should use --build, --host, --target" >&2 ++ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && +- echo "$as_me: WARNING: invalid host type: $ac_option" >&2 ++ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + ;; + +@@ -1097,22 +1171,38 @@ done + + if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` +- { echo "$as_me: error: missing argument to $ac_option" >&2 ++ { $as_echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } + fi + +-# Be sure to have absolute directory names. ++if test -n "$ac_unrecognized_opts"; then ++ case $enable_option_checking in ++ no) ;; ++ fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2 ++ { (exit 1); exit 1; }; } ;; ++ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; ++ esac ++fi ++ ++# Check all directory arguments for consistency. + for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir + do + eval ac_val=\$$ac_var ++ # Remove trailing slashes. ++ case $ac_val in ++ */ ) ++ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` ++ eval $ac_var=\$ac_val;; ++ esac ++ # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac +- { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 ++ { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } + done + +@@ -1127,7 +1217,7 @@ target=$target_alias + if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe +- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. ++ $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes +@@ -1143,10 +1233,10 @@ test "$silent" = yes && exec 6>/dev/null + ac_pwd=`pwd` && test -n "$ac_pwd" && + ac_ls_di=`ls -di .` && + ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || +- { echo "$as_me: error: Working directory cannot be determined" >&2 ++ { $as_echo "$as_me: error: working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } + test "X$ac_ls_di" = "X$ac_pwd_ls_di" || +- { echo "$as_me: error: pwd does not report name of working directory" >&2 ++ { $as_echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + +@@ -1154,12 +1244,12 @@ test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. +- ac_confdir=`$as_dirname -- "$0" || +-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ +- X"$0" : 'X\(//\)[^/]' \| \ +- X"$0" : 'X\(//\)$' \| \ +- X"$0" : 'X\(/\)' \| . 2>/dev/null || +-echo X"$0" | ++ ac_confdir=`$as_dirname -- "$as_myself" || ++$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ ++ X"$as_myself" : 'X\(//\)[^/]' \| \ ++ X"$as_myself" : 'X\(//\)$' \| \ ++ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || ++$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q +@@ -1186,12 +1276,12 @@ else + fi + if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." +- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 ++ { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } + fi + ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" + ac_abs_confdir=`( +- cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 ++ cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 + { (exit 1); exit 1; }; } + pwd)` + # When building in place, set srcdir=. +@@ -1240,9 +1330,9 @@ Configuration: + + Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX +- [$ac_default_prefix] ++ [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX +- [PREFIX] ++ [PREFIX] + + By default, \`make install' will install all the files in + \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +@@ -1252,25 +1342,25 @@ for instance \`--prefix=\$HOME'. + For better control, use the options below. + + Fine tuning of the installation directories: +- --bindir=DIR user executables [EPREFIX/bin] +- --sbindir=DIR system admin executables [EPREFIX/sbin] +- --libexecdir=DIR program executables [EPREFIX/libexec] +- --sysconfdir=DIR read-only single-machine data [PREFIX/etc] +- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] +- --localstatedir=DIR modifiable single-machine data [PREFIX/var] +- --libdir=DIR object code libraries [EPREFIX/lib] +- --includedir=DIR C header files [PREFIX/include] +- --oldincludedir=DIR C header files for non-gcc [/usr/include] +- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] +- --datadir=DIR read-only architecture-independent data [DATAROOTDIR] +- --infodir=DIR info documentation [DATAROOTDIR/info] +- --localedir=DIR locale-dependent data [DATAROOTDIR/locale] +- --mandir=DIR man documentation [DATAROOTDIR/man] +- --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] +- --htmldir=DIR html documentation [DOCDIR] +- --dvidir=DIR dvi documentation [DOCDIR] +- --pdfdir=DIR pdf documentation [DOCDIR] +- --psdir=DIR ps documentation [DOCDIR] ++ --bindir=DIR user executables [EPREFIX/bin] ++ --sbindir=DIR system admin executables [EPREFIX/sbin] ++ --libexecdir=DIR program executables [EPREFIX/libexec] ++ --sysconfdir=DIR read-only single-machine data [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data [PREFIX/var] ++ --libdir=DIR object code libraries [EPREFIX/lib] ++ --includedir=DIR C header files [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc [/usr/include] ++ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] ++ --datadir=DIR read-only architecture-independent data [DATAROOTDIR] ++ --infodir=DIR info documentation [DATAROOTDIR/info] ++ --localedir=DIR locale-dependent data [DATAROOTDIR/locale] ++ --mandir=DIR man documentation [DATAROOTDIR/man] ++ --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] ++ --htmldir=DIR html documentation [DOCDIR] ++ --dvidir=DIR dvi documentation [DOCDIR] ++ --pdfdir=DIR pdf documentation [DOCDIR] ++ --psdir=DIR ps documentation [DOCDIR] + _ACEOF + + cat <<\_ACEOF +@@ -1287,6 +1377,7 @@ if test -n "$ac_init_help"; then + cat <<\_ACEOF + + Optional Features: ++ --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-klibc Use this to link the tools to klibc. Set KLCC to the +@@ -1306,7 +1397,7 @@ Optional Features: + libraries statically. Default is dynamic linking + --enable-shared_lib Use this to generate shared libdmraid and link the + tools to it. Default is static libdmraid +- --disable-testing Disable testing with mapped devices ++ --disable-testing Enable testing with mapped devices + + Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] +@@ -1334,15 +1425,17 @@ fi + if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue +- test -d "$ac_dir" || continue ++ test -d "$ac_dir" || ++ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || ++ continue + ac_builddir=. + + case "$ac_dir" in + .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) +- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` ++ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. +- ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` ++ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; +@@ -1378,7 +1471,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else +- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 ++ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +@@ -1388,10 +1481,10 @@ test -n "$ac_init_help" && exit $ac_status + if $ac_init_version; then + cat <<\_ACEOF + configure +-generated by GNU Autoconf 2.61 ++generated by GNU Autoconf 2.63 + + Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ++2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. + This configure script is free software; the Free Software Foundation + gives unlimited permission to copy, distribute and modify it. + _ACEOF +@@ -1402,7 +1495,7 @@ This file contains any messages produced by compilers while + running configure, to aid debugging if configure makes a mistake. + + It was created by $as_me, which was +-generated by GNU Autoconf 2.61. Invocation command line was ++generated by GNU Autoconf 2.63. Invocation command line was + + $ $0 $@ + +@@ -1438,7 +1531,7 @@ for as_dir in $PATH + do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. +- echo "PATH: $as_dir" ++ $as_echo "PATH: $as_dir" + done + IFS=$as_save_IFS + +@@ -1473,7 +1566,7 @@ do + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) +- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; ++ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; +@@ -1525,11 +1618,12 @@ _ASBOX + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( +- *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; ++ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 ++$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( ++ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac +@@ -1559,9 +1653,9 @@ _ASBOX + do + eval ac_val=\$$ac_var + case $ac_val in +- *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; ++ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac +- echo "$ac_var='\''$ac_val'\''" ++ $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + +@@ -1576,9 +1670,9 @@ _ASBOX + do + eval ac_val=\$$ac_var + case $ac_val in +- *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; ++ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac +- echo "$ac_var='\''$ac_val'\''" ++ $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi +@@ -1594,8 +1688,8 @@ _ASBOX + echo + fi + test "$ac_signal" != 0 && +- echo "$as_me: caught signal $ac_signal" +- echo "$as_me: exit $exit_status" ++ $as_echo "$as_me: caught signal $ac_signal" ++ $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && +@@ -1637,21 +1731,24 @@ _ACEOF + + + # Let the site file select an alternate cache file if it wants to. +-# Prefer explicitly selected file to automatically selected ones. ++# Prefer an explicitly selected file to automatically selected ones. ++ac_site_file1=NONE ++ac_site_file2=NONE + if test -n "$CONFIG_SITE"; then +- set x "$CONFIG_SITE" ++ ac_site_file1=$CONFIG_SITE + elif test "x$prefix" != xNONE; then +- set x "$prefix/share/config.site" "$prefix/etc/config.site" ++ ac_site_file1=$prefix/share/config.site ++ ac_site_file2=$prefix/etc/config.site + else +- set x "$ac_default_prefix/share/config.site" \ +- "$ac_default_prefix/etc/config.site" ++ ac_site_file1=$ac_default_prefix/share/config.site ++ ac_site_file2=$ac_default_prefix/etc/config.site + fi +-shift +-for ac_site_file ++for ac_site_file in "$ac_site_file1" "$ac_site_file2" + do ++ test "x$ac_site_file" = xNONE && continue + if test -r "$ac_site_file"; then +- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +-echo "$as_me: loading site script $ac_site_file" >&6;} ++ { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 ++$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" + fi +@@ -1661,16 +1758,16 @@ if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special + # files actually), so we avoid doing that. + if test -f "$cache_file"; then +- { echo "$as_me:$LINENO: loading cache $cache_file" >&5 +-echo "$as_me: loading cache $cache_file" >&6;} ++ { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5 ++$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi + else +- { echo "$as_me:$LINENO: creating cache $cache_file" >&5 +-echo "$as_me: creating cache $cache_file" >&6;} ++ { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5 ++$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file + fi + +@@ -1684,29 +1781,38 @@ for ac_var in $ac_precious_vars; do + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) +- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ++ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 ++$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) +- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ++ { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 ++$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then +- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} +- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +-echo "$as_me: former value: $ac_old_val" >&2;} +- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +-echo "$as_me: current value: $ac_new_val" >&2;} +- ac_cache_corrupted=: ++ # differences in whitespace do not lead to failure. ++ ac_old_val_w=`echo x $ac_old_val` ++ ac_new_val_w=`echo x $ac_new_val` ++ if test "$ac_old_val_w" != "$ac_new_val_w"; then ++ { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 ++$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ++ ac_cache_corrupted=: ++ else ++ { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 ++$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} ++ eval $ac_var=\$ac_old_val ++ fi ++ { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5 ++$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} ++ { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5 ++$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in +- *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; ++ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in +@@ -1716,10 +1822,12 @@ echo "$as_me: current value: $ac_new_val" >&2;} + fi + done + if $ac_cache_corrupted; then +- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +-echo "$as_me: error: changes in the environment can compromise the build" >&2;} +- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} ++ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++ { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 ++$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 ++$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } + fi + +@@ -1764,8 +1872,8 @@ for ac_dir in autoconf "$srcdir"/autoconf; do + fi + done + if test -z "$ac_aux_dir"; then +- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in autoconf \"$srcdir\"/autoconf" >&5 +-echo "$as_me: error: cannot find install-sh or install.sh in autoconf \"$srcdir\"/autoconf" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in autoconf \"$srcdir\"/autoconf" >&5 ++$as_echo "$as_me: error: cannot find install-sh or install.sh in autoconf \"$srcdir\"/autoconf" >&2;} + { (exit 1); exit 1; }; } + fi + +@@ -1781,34 +1889,34 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + # Make sure we can run config.sub. + $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || +- { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 +-echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 ++$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} + { (exit 1); exit 1; }; } + +-{ echo "$as_me:$LINENO: checking build system type" >&5 +-echo $ECHO_N "checking build system type... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking build system type" >&5 ++$as_echo_n "checking build system type... " >&6; } + if test "${ac_cv_build+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_build_alias=$build_alias + test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` + test "x$ac_build_alias" = x && +- { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 +-echo "$as_me: error: cannot guess build type; you must specify one" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 ++$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;} + { (exit 1); exit 1; }; } + ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || +- { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 +-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 ++$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} + { (exit 1); exit 1; }; } + + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +-echo "${ECHO_T}$ac_cv_build" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5 ++$as_echo "$ac_cv_build" >&6; } + case $ac_cv_build in + *-*-*) ;; +-*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 +-echo "$as_me: error: invalid value of canonical build" >&2;} ++*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 ++$as_echo "$as_me: error: invalid value of canonical build" >&2;} + { (exit 1); exit 1; }; };; + esac + build=$ac_cv_build +@@ -1825,27 +1933,27 @@ IFS=$ac_save_IFS + case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +-{ echo "$as_me:$LINENO: checking host system type" >&5 +-echo $ECHO_N "checking host system type... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking host system type" >&5 ++$as_echo_n "checking host system type... " >&6; } + if test "${ac_cv_host+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build + else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || +- { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 +-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 ++$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} + { (exit 1); exit 1; }; } + fi + + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +-echo "${ECHO_T}$ac_cv_host" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5 ++$as_echo "$ac_cv_host" >&6; } + case $ac_cv_host in + *-*-*) ;; +-*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 +-echo "$as_me: error: invalid value of canonical host" >&2;} ++*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 ++$as_echo "$as_me: error: invalid value of canonical host" >&2;} + { (exit 1); exit 1; }; };; + esac + host=$ac_cv_host +@@ -1862,27 +1970,27 @@ IFS=$ac_save_IFS + case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +-{ echo "$as_me:$LINENO: checking target system type" >&5 +-echo $ECHO_N "checking target system type... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking target system type" >&5 ++$as_echo_n "checking target system type... " >&6; } + if test "${ac_cv_target+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test "x$target_alias" = x; then + ac_cv_target=$ac_cv_host + else + ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || +- { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5 +-echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5 ++$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;} + { (exit 1); exit 1; }; } + fi + + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_target" >&5 +-echo "${ECHO_T}$ac_cv_target" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_target" >&5 ++$as_echo "$ac_cv_target" >&6; } + case $ac_cv_target in + *-*-*) ;; +-*) { { echo "$as_me:$LINENO: error: invalid value of canonical target" >&5 +-echo "$as_me: error: invalid value of canonical target" >&2;} ++*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical target" >&5 ++$as_echo "$as_me: error: invalid value of canonical target" >&2;} + { (exit 1); exit 1; }; };; + esac + target=$ac_cv_target +@@ -1910,10 +2018,10 @@ for ac_prog in gawk mawk nawk awk + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_AWK+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +@@ -1926,7 +2034,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AWK="$ac_prog" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -1937,11 +2045,11 @@ fi + fi + AWK=$ac_cv_prog_AWK + if test -n "$AWK"; then +- { echo "$as_me:$LINENO: result: $AWK" >&5 +-echo "${ECHO_T}$AWK" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $AWK" >&5 ++$as_echo "$AWK" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -1961,11 +2069,12 @@ done + # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" + # OS/2's system install, which has a completely different semantic + # ./install, which can be erroneously created by make from ./install.sh. +-{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } ++# Reject install programs that cannot install multiple files. ++{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 ++$as_echo_n "checking for a BSD-compatible install... " >&6; } + if test -z "$INSTALL"; then + if test "${ac_cv_path_install+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + for as_dir in $PATH +@@ -1994,17 +2103,29 @@ case $as_dir/ in + # program-specific install script used by HP pwplus--don't use. + : + else +- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" +- break 3 ++ rm -rf conftest.one conftest.two conftest.dir ++ echo one > conftest.one ++ echo two > conftest.two ++ mkdir conftest.dir ++ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && ++ test -s conftest.one && test -s conftest.two && ++ test -s conftest.dir/conftest.one && ++ test -s conftest.dir/conftest.two ++ then ++ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" ++ break 3 ++ fi + fi + fi + done + done + ;; + esac ++ + done + IFS=$as_save_IFS + ++rm -rf conftest.one conftest.two conftest.dir + + fi + if test "${ac_cv_path_install+set}" = set; then +@@ -2017,8 +2138,8 @@ fi + INSTALL=$ac_install_sh + fi + fi +-{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +-echo "${ECHO_T}$INSTALL" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5 ++$as_echo "$INSTALL" >&6; } + + # Use test -z because SunOS4 sh mishandles braces in ${var-val}. + # It thinks the first close brace ends the variable substitution. +@@ -2028,22 +2149,23 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + + test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +-{ echo "$as_me:$LINENO: checking whether ln -s works" >&5 +-echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5 ++$as_echo_n "checking whether ln -s works... " >&6; } + LN_S=$as_ln_s + if test "$LN_S" = "ln -s"; then +- { echo "$as_me:$LINENO: result: yes" >&5 +-echo "${ECHO_T}yes" >&6; } ++ { $as_echo "$as_me:$LINENO: result: yes" >&5 ++$as_echo "yes" >&6; } + else +- { echo "$as_me:$LINENO: result: no, using $LN_S" >&5 +-echo "${ECHO_T}no, using $LN_S" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5 ++$as_echo "no, using $LN_S" >&6; } + fi + +-{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } +-set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` ++{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 ++$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } ++set x ${MAKE-make} ++ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` + if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.make <<\_ACEOF + SHELL = /bin/sh +@@ -2060,22 +2182,22 @@ esac + rm -f conftest.make + fi + if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then +- { echo "$as_me:$LINENO: result: yes" >&5 +-echo "${ECHO_T}yes" >&6; } ++ { $as_echo "$as_me:$LINENO: result: yes" >&5 ++$as_echo "yes" >&6; } + SET_MAKE= + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" + fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. + set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_RANLIB+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +@@ -2088,7 +2210,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2099,11 +2221,11 @@ fi + fi + RANLIB=$ac_cv_prog_RANLIB + if test -n "$RANLIB"; then +- { echo "$as_me:$LINENO: result: $RANLIB" >&5 +-echo "${ECHO_T}$RANLIB" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5 ++$as_echo "$RANLIB" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2112,10 +2234,10 @@ if test -z "$ac_cv_prog_RANLIB"; then + ac_ct_RANLIB=$RANLIB + # Extract the first word of "ranlib", so it can be a program name with args. + set dummy ranlib; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$ac_ct_RANLIB"; then + ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. +@@ -2128,7 +2250,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_RANLIB="ranlib" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2139,11 +2261,11 @@ fi + fi + ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB + if test -n "$ac_ct_RANLIB"; then +- { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 +-echo "${ECHO_T}$ac_ct_RANLIB" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 ++$as_echo "$ac_ct_RANLIB" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + if test "x$ac_ct_RANLIB" = x; then +@@ -2151,12 +2273,8 @@ fi + else + case $cross_compiling:$ac_tool_warned in + yes:) +-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&5 +-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&2;} ++{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 ++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} + ac_tool_warned=yes ;; + esac + RANLIB=$ac_ct_RANLIB +@@ -2185,10 +2303,10 @@ if test "X$KLIBC" = Xyes; then + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_KLCC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$KLCC"; then + ac_cv_prog_KLCC="$KLCC" # Let the user override the test. +@@ -2201,7 +2319,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_KLCC="$ac_prog" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2212,11 +2330,11 @@ fi + fi + KLCC=$ac_cv_prog_KLCC + if test -n "$KLCC"; then +- { echo "$as_me:$LINENO: result: $KLCC" >&5 +-echo "${ECHO_T}$KLCC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $KLCC" >&5 ++$as_echo "$KLCC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2229,10 +2347,10 @@ test -n "$KLCC" || KLCC="no" + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_KLCC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$KLCC"; then + ac_cv_prog_KLCC="$KLCC" # Let the user override the test. +@@ -2245,7 +2363,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_KLCC="$ac_prog" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2256,11 +2374,11 @@ fi + fi + KLCC=$ac_cv_prog_KLCC + if test -n "$KLCC"; then +- { echo "$as_me:$LINENO: result: $KLCC" >&5 +-echo "${ECHO_T}$KLCC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $KLCC" >&5 ++$as_echo "$KLCC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2270,8 +2388,8 @@ test -n "$KLCC" || KLCC="no" + + fi + if test "X$KLCC" = Xno; then +- { { echo "$as_me:$LINENO: error: cannot find klibc frontend 'klcc'!" >&5 +-echo "$as_me: error: cannot find klibc frontend 'klcc'!" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: cannot find klibc frontend 'klcc'!" >&5 ++$as_echo "$as_me: error: cannot find klibc frontend 'klcc'!" >&2;} + { (exit 1); exit 1; }; } + fi + +@@ -2287,8 +2405,8 @@ echo "$as_me: error: cannot find klibc frontend 'klcc'!" >&2;} + # At least KLIBC_LIB_DIR should be valid, else klibc is too old or + # something went wrong + if test ! -d "$KLIBC_LIB_DIR"; then +- { { echo "$as_me:$LINENO: error: your klibc installation is too old or not functional!" >&5 +-echo "$as_me: error: your klibc installation is too old or not functional!" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: your klibc installation is too old or not functional!" >&5 ++$as_echo "$as_me: error: your klibc installation is too old or not functional!" >&2;} + { (exit 1); exit 1; }; } + fi + fi +@@ -2309,10 +2427,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. + set dummy ${ac_tool_prefix}gcc; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +@@ -2325,7 +2443,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2336,11 +2454,11 @@ fi + fi + CC=$ac_cv_prog_CC + if test -n "$CC"; then +- { echo "$as_me:$LINENO: result: $CC" >&5 +-echo "${ECHO_T}$CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $CC" >&5 ++$as_echo "$CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2349,10 +2467,10 @@ if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. + set dummy gcc; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +@@ -2365,7 +2483,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="gcc" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2376,11 +2494,11 @@ fi + fi + ac_ct_CC=$ac_cv_prog_ac_ct_CC + if test -n "$ac_ct_CC"; then +- { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +-echo "${ECHO_T}$ac_ct_CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 ++$as_echo "$ac_ct_CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + if test "x$ac_ct_CC" = x; then +@@ -2388,12 +2506,8 @@ fi + else + case $cross_compiling:$ac_tool_warned in + yes:) +-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&5 +-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&2;} ++{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 ++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} + ac_tool_warned=yes ;; + esac + CC=$ac_ct_CC +@@ -2406,10 +2520,10 @@ if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. + set dummy ${ac_tool_prefix}cc; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +@@ -2422,7 +2536,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}cc" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2433,11 +2547,11 @@ fi + fi + CC=$ac_cv_prog_CC + if test -n "$CC"; then +- { echo "$as_me:$LINENO: result: $CC" >&5 +-echo "${ECHO_T}$CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $CC" >&5 ++$as_echo "$CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2446,10 +2560,10 @@ fi + if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. + set dummy cc; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +@@ -2467,7 +2581,7 @@ do + continue + fi + ac_cv_prog_CC="cc" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2490,11 +2604,11 @@ fi + fi + CC=$ac_cv_prog_CC + if test -n "$CC"; then +- { echo "$as_me:$LINENO: result: $CC" >&5 +-echo "${ECHO_T}$CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $CC" >&5 ++$as_echo "$CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2505,10 +2619,10 @@ if test -z "$CC"; then + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. + set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +@@ -2521,7 +2635,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2532,11 +2646,11 @@ fi + fi + CC=$ac_cv_prog_CC + if test -n "$CC"; then +- { echo "$as_me:$LINENO: result: $CC" >&5 +-echo "${ECHO_T}$CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $CC" >&5 ++$as_echo "$CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2549,10 +2663,10 @@ if test -z "$CC"; then + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } + if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +@@ -2565,7 +2679,7 @@ do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="$ac_prog" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi + done +@@ -2576,11 +2690,11 @@ fi + fi + ac_ct_CC=$ac_cv_prog_ac_ct_CC + if test -n "$ac_ct_CC"; then +- { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +-echo "${ECHO_T}$ac_ct_CC" >&6; } ++ { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 ++$as_echo "$ac_ct_CC" >&6; } + else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } ++ { $as_echo "$as_me:$LINENO: result: no" >&5 ++$as_echo "no" >&6; } + fi + + +@@ -2592,12 +2706,8 @@ done + else + case $cross_compiling:$ac_tool_warned in + yes:) +-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&5 +-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&2;} ++{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 ++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} + ac_tool_warned=yes ;; + esac + CC=$ac_ct_CC +@@ -2607,44 +2717,50 @@ fi + fi + + +-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH ++test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH + See \`config.log' for more details." >&5 +-echo "$as_me: error: no acceptable C compiler found in \$PATH ++$as_echo "$as_me: error: no acceptable C compiler found in \$PATH + See \`config.log' for more details." >&2;} +- { (exit 1); exit 1; }; } ++ { (exit 1); exit 1; }; }; } + + # Provide some information about the compiler. +-echo "$as_me:$LINENO: checking for C compiler version" >&5 +-ac_compiler=`set X $ac_compile; echo $2` ++$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 ++set X $ac_compile ++ac_compiler=$2 + { (ac_try="$ac_compiler --version >&5" + case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler --version >&5") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + { (ac_try="$ac_compiler -v >&5" + case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler -v >&5") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + { (ac_try="$ac_compiler -V >&5" + case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler -V >&5") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + + cat >conftest.$ac_ext <<_ACEOF +@@ -2663,27 +2779,22 @@ main () + } + _ACEOF + ac_clean_files_save=$ac_clean_files +-ac_clean_files="$ac_clean_files a.out a.exe b.out" ++ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" + # Try to create an executable without -o first, disregard a.out. + # It will help us diagnose broken compilers, and finding out an intuition + # of exeext. +-{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; } +-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` +-# +-# List of possible output files, starting from the most likely. +-# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) +-# only as a last resort. b.out is created by i960 compilers. +-ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' +-# +-# The IRIX 6 linker writes into existing files which may not be +-# executable, retaining their permissions. Remove them first so a +-# subsequent execution test works. ++{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 ++$as_echo_n "checking for C compiler default output file name... " >&6; } ++ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` ++ ++# The possible output files: ++ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ++ + ac_rmfiles= + for ac_file in $ac_files + do + case $ac_file in +- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; ++ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac + done +@@ -2694,10 +2805,11 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. + # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +@@ -2708,7 +2820,7 @@ for ac_file in $ac_files '' + do + test -f "$ac_file" || continue + case $ac_file in +- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ++ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most +@@ -2735,25 +2847,27 @@ else + ac_file='' + fi + +-{ echo "$as_me:$LINENO: result: $ac_file" >&5 +-echo "${ECHO_T}$ac_file" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5 ++$as_echo "$ac_file" >&6; } + if test -z "$ac_file"; then +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables ++{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables + See \`config.log' for more details." >&5 +-echo "$as_me: error: C compiler cannot create executables ++$as_echo "$as_me: error: C compiler cannot create executables + See \`config.log' for more details." >&2;} +- { (exit 77); exit 77; }; } ++ { (exit 77); exit 77; }; }; } + fi + + ac_exeext=$ac_cv_exeext + + # Check that the compiler produces executables we can run. If not, either + # the compiler is broken, or we cross compile. +-{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5 ++$as_echo_n "checking whether the C compiler works... " >&6; } + # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 + # If not cross compiling, check that we can run a simple program. + if test "$cross_compiling" != yes; then +@@ -2762,49 +2876,53 @@ if test "$cross_compiling" != yes; then + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else +- { { echo "$as_me:$LINENO: error: cannot run C compiled programs. ++ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs. + If you meant to cross compile, use \`--host'. + See \`config.log' for more details." >&5 +-echo "$as_me: error: cannot run C compiled programs. ++$as_echo "$as_me: error: cannot run C compiled programs. + If you meant to cross compile, use \`--host'. + See \`config.log' for more details." >&2;} +- { (exit 1); exit 1; }; } ++ { (exit 1); exit 1; }; }; } + fi + fi + fi +-{ echo "$as_me:$LINENO: result: yes" >&5 +-echo "${ECHO_T}yes" >&6; } ++{ $as_echo "$as_me:$LINENO: result: yes" >&5 ++$as_echo "yes" >&6; } + +-rm -f a.out a.exe conftest$ac_cv_exeext b.out ++rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out + ac_clean_files=$ac_clean_files_save + # Check that the compiler produces executables we can run. If not, either + # the compiler is broken, or we cross compile. +-{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } +-{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 +-echo "${ECHO_T}$cross_compiling" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 ++$as_echo_n "checking whether we are cross compiling... " >&6; } ++{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5 ++$as_echo "$cross_compiling" >&6; } + +-{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 +-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5 ++$as_echo_n "checking for suffix of executables... " >&6; } + if { (ac_try="$ac_link" + case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # If both `conftest.exe' and `conftest' are `present' (well, observable) + # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +@@ -2813,31 +2931,33 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in +- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; ++ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac + done + else +- { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link ++ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link + See \`config.log' for more details." >&5 +-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link ++$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link + See \`config.log' for more details." >&2;} +- { (exit 1); exit 1; }; } ++ { (exit 1); exit 1; }; }; } + fi + + rm -f conftest$ac_cv_exeext +-{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +-echo "${ECHO_T}$ac_cv_exeext" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 ++$as_echo "$ac_cv_exeext" >&6; } + + rm -f conftest.$ac_ext + EXEEXT=$ac_cv_exeext + ac_exeext=$EXEEXT +-{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 +-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5 ++$as_echo_n "checking for suffix of object files... " >&6; } + if test "${ac_cv_objext+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -2860,40 +2980,43 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in +- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; ++ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac + done + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile ++{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile + See \`config.log' for more details." >&5 +-echo "$as_me: error: cannot compute suffix of object files: cannot compile ++$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile + See \`config.log' for more details." >&2;} +- { (exit 1); exit 1; }; } ++ { (exit 1); exit 1; }; }; } + fi + + rm -f conftest.$ac_cv_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +-echo "${ECHO_T}$ac_cv_objext" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 ++$as_echo "$ac_cv_objext" >&6; } + OBJEXT=$ac_cv_objext + ac_objext=$OBJEXT +-{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 ++$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } + if test "${ac_cv_c_compiler_gnu+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -2919,20 +3042,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_compiler_gnu=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_compiler_gnu=no +@@ -2942,15 +3066,19 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_c_compiler_gnu=$ac_compiler_gnu + + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } +-GCC=`test $ac_compiler_gnu = yes && echo yes` ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 ++$as_echo "$ac_cv_c_compiler_gnu" >&6; } ++if test $ac_compiler_gnu = yes; then ++ GCC=yes ++else ++ GCC= ++fi + ac_test_CFLAGS=${CFLAGS+set} + ac_save_CFLAGS=$CFLAGS +-{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 ++$as_echo_n "checking whether $CC accepts -g... " >&6; } + if test "${ac_cv_prog_cc_g+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes +@@ -2977,20 +3105,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + CFLAGS="" +@@ -3015,20 +3144,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_c_werror_flag=$ac_save_c_werror_flag +@@ -3054,20 +3184,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + +@@ -3082,8 +3213,8 @@ fi + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 ++$as_echo "$ac_cv_prog_cc_g" >&6; } + if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS + elif test $ac_cv_prog_cc_g = yes; then +@@ -3099,10 +3230,10 @@ else + CFLAGS= + fi + fi +-{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +-echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 ++$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } + if test "${ac_cv_prog_cc_c89+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_cv_prog_cc_c89=no + ac_save_CC=$CC +@@ -3173,20 +3304,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c89=$ac_arg + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + +@@ -3202,15 +3334,15 @@ fi + # AC_CACHE_VAL + case "x$ac_cv_prog_cc_c89" in + x) +- { echo "$as_me:$LINENO: result: none needed" >&5 +-echo "${ECHO_T}none needed" >&6; } ;; ++ { $as_echo "$as_me:$LINENO: result: none needed" >&5 ++$as_echo "none needed" >&6; } ;; + xno) +- { echo "$as_me:$LINENO: result: unsupported" >&5 +-echo "${ECHO_T}unsupported" >&6; } ;; ++ { $as_echo "$as_me:$LINENO: result: unsupported" >&5 ++$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" +- { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 +-echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; ++ { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 ++$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; + esac + + +@@ -3229,11 +3361,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + + ac_header_dirent=no + for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do +- as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` +-{ echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5 +-echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6; } ++ as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` ++{ $as_echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5 ++$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -3259,20 +3391,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_ac_Header=yes" + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_Header=no" +@@ -3280,12 +3413,15 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } +-if test `eval echo '${'$as_ac_Header'}'` = yes; then ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } ++as_val=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 + _ACEOF + + ac_header_dirent=$ac_hdr; break +@@ -3294,10 +3430,10 @@ fi + done + # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. + if test $ac_header_dirent = dirent.h; then +- { echo "$as_me:$LINENO: checking for library containing opendir" >&5 +-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5 ++$as_echo_n "checking for library containing opendir... " >&6; } + if test "${ac_cv_search_opendir+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS + cat >conftest.$ac_ext <<_ACEOF +@@ -3335,26 +3471,30 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + ac_cv_search_opendir=$ac_res + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_opendir+set}" = set; then +@@ -3369,8 +3509,8 @@ fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 +-echo "${ECHO_T}$ac_cv_search_opendir" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 ++$as_echo "$ac_cv_search_opendir" >&6; } + ac_res=$ac_cv_search_opendir + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" +@@ -3378,10 +3518,10 @@ if test "$ac_res" != no; then + fi + + else +- { echo "$as_me:$LINENO: checking for library containing opendir" >&5 +-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5 ++$as_echo_n "checking for library containing opendir... " >&6; } + if test "${ac_cv_search_opendir+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS + cat >conftest.$ac_ext <<_ACEOF +@@ -3419,26 +3559,30 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + ac_cv_search_opendir=$ac_res + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_opendir+set}" = set; then +@@ -3453,8 +3597,8 @@ fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 +-echo "${ECHO_T}$ac_cv_search_opendir" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 ++$as_echo "$ac_cv_search_opendir" >&6; } + ac_res=$ac_cv_search_opendir + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" +@@ -3468,15 +3612,15 @@ ac_cpp='$CPP $CPPFLAGS' + ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' + ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' + ac_compiler_gnu=$ac_cv_c_compiler_gnu +-{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 ++$as_echo_n "checking how to run the C preprocessor... " >&6; } + # On Suns, sometimes $CPP names a directory. + if test -n "$CPP" && test -d "$CPP"; then + CPP= + fi + if test -z "$CPP"; then + if test "${ac_cv_prog_CPP+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" +@@ -3508,20 +3652,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +@@ -3545,13 +3690,14 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err +@@ -3559,7 +3705,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + # Broken: success on invalid input. + continue + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +@@ -3584,8 +3730,8 @@ fi + else + ac_cv_prog_CPP=$CPP + fi +-{ echo "$as_me:$LINENO: result: $CPP" >&5 +-echo "${ECHO_T}$CPP" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 ++$as_echo "$CPP" >&6; } + ac_preproc_ok=false + for ac_c_preproc_warn_flag in '' yes + do +@@ -3613,20 +3759,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +@@ -3650,13 +3797,14 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err +@@ -3664,7 +3812,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + # Broken: success on invalid input. + continue + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +@@ -3680,11 +3828,13 @@ rm -f conftest.err conftest.$ac_ext + if $ac_preproc_ok; then + : + else +- { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check ++ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check + See \`config.log' for more details." >&5 +-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check ++$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check + See \`config.log' for more details." >&2;} +- { (exit 1); exit 1; }; } ++ { (exit 1); exit 1; }; }; } + fi + + ac_ext=c +@@ -3694,42 +3844,37 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ + ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +-{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +-echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } +-if test "${ac_cv_path_GREP+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 +-else +- # Extract the first word of "grep ggrep" to use in msg output +-if test -z "$GREP"; then +-set dummy grep ggrep; ac_prog_name=$2 ++{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 ++$as_echo_n "checking for grep that handles long lines and -e... " >&6; } + if test "${ac_cv_path_GREP+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else ++ if test -z "$GREP"; then + ac_path_GREP_found=false +-# Loop through the user's path and test for each of PROGNAME-LIST +-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++ # Loop through the user's path and test for each of PROGNAME-LIST ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin + do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do +- for ac_exec_ext in '' $ac_executable_extensions; do +- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" +- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue +- # Check for GNU ac_path_GREP and select it if it is found. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" ++ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue ++# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP + case `"$ac_path_GREP" --version 2>&1` in + *GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; + *) + ac_count=0 +- echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" ++ $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" +- echo 'GREP' >> "conftest.nl" ++ $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` +@@ -3744,74 +3889,60 @@ case `"$ac_path_GREP" --version 2>&1` in + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; + esac + +- +- $ac_path_GREP_found && break 3 ++ $ac_path_GREP_found && break 3 ++ done + done + done +- +-done + IFS=$as_save_IFS +- +- +-fi +- +-GREP="$ac_cv_path_GREP" +-if test -z "$GREP"; then +- { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} ++ if test -z "$ac_cv_path_GREP"; then ++ { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 ++$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +-fi +- ++ fi + else + ac_cv_path_GREP=$GREP + fi + +- + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +-echo "${ECHO_T}$ac_cv_path_GREP" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 ++$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +-{ echo "$as_me:$LINENO: checking for egrep" >&5 +-echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for egrep" >&5 ++$as_echo_n "checking for egrep... " >&6; } + if test "${ac_cv_path_EGREP+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else +- # Extract the first word of "egrep" to use in msg output +-if test -z "$EGREP"; then +-set dummy egrep; ac_prog_name=$2 +-if test "${ac_cv_path_EGREP+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 +-else ++ if test -z "$EGREP"; then + ac_path_EGREP_found=false +-# Loop through the user's path and test for each of PROGNAME-LIST +-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++ # Loop through the user's path and test for each of PROGNAME-LIST ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin + do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do +- for ac_exec_ext in '' $ac_executable_extensions; do +- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" +- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue +- # Check for GNU ac_path_EGREP and select it if it is found. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" ++ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue ++# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP + case `"$ac_path_EGREP" --version 2>&1` in + *GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; + *) + ac_count=0 +- echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" ++ $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" +- echo 'EGREP' >> "conftest.nl" ++ $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` +@@ -3826,40 +3957,31 @@ case `"$ac_path_EGREP" --version 2>&1` in + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; + esac + +- +- $ac_path_EGREP_found && break 3 ++ $ac_path_EGREP_found && break 3 ++ done + done + done +- +-done + IFS=$as_save_IFS +- +- +-fi +- +-EGREP="$ac_cv_path_EGREP" +-if test -z "$EGREP"; then +- { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +-echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} ++ if test -z "$ac_cv_path_EGREP"; then ++ { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 ++$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +-fi +- ++ fi + else + ac_cv_path_EGREP=$EGREP + fi + +- + fi + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +-echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 ++$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +-{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5 ++$as_echo_n "checking for ANSI C header files... " >&6; } + if test "${ac_cv_header_stdc+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -3886,20 +4008,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_stdc=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stdc=no +@@ -3991,37 +4114,40 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + : + else +- echo "$as_me: program exited with status $ac_status" >&5 +-echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: program exited with status $ac_status" >&5 ++$as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ( exit $ac_status ) + ac_cv_header_stdc=no + fi ++rm -rf conftest.dSYM + rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext + fi + + + fi + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +-echo "${ECHO_T}$ac_cv_header_stdc" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 ++$as_echo "$ac_cv_header_stdc" >&6; } + if test $ac_cv_header_stdc = yes; then + + cat >>confdefs.h <<\_ACEOF +@@ -4043,11 +4169,11 @@ fi + for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h + do +-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +-{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ++{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -4065,20 +4191,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_ac_Header=yes" + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_Header=no" +@@ -4086,12 +4213,15 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } +-if test `eval echo '${'$as_ac_Header'}'` = yes; then ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } ++as_val=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 + _ACEOF + + fi +@@ -4104,20 +4234,21 @@ done + + for ac_header in fcntl.h sys/ioctl.h unistd.h + do +-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` ++as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- { echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + else + # Is the header compilable? +-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 ++$as_echo_n "checking $ac_header usability... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -4133,32 +4264,33 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +-echo "${ECHO_T}$ac_header_compiler" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 ++$as_echo "$ac_header_compiler" >&6; } + + # Is the header present? +-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 ++$as_echo_n "checking $ac_header presence... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -4172,69 +4304,73 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no + fi + + rm -f conftest.err conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +-echo "${ECHO_T}$ac_header_preproc" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 ++$as_echo "$ac_header_preproc" >&6; } + + # So? What about this header? + case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 ++$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 ++$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 ++$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 ++$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 ++$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 ++$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + + ;; + esac +-{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + eval "$as_ac_Header=\$ac_header_preproc" + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + + fi +-if test `eval echo '${'$as_ac_Header'}'` = yes; then ++as_val=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 + _ACEOF + + fi +@@ -4245,20 +4381,21 @@ if test x$KLIBC != xyes; then + + for ac_header in malloc.h + do +-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` ++as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- { echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + else + # Is the header compilable? +-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 ++$as_echo_n "checking $ac_header usability... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -4274,32 +4411,33 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +-echo "${ECHO_T}$ac_header_compiler" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 ++$as_echo "$ac_header_compiler" >&6; } + + # Is the header present? +-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 ++$as_echo_n "checking $ac_header presence... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -4313,69 +4451,73 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no + fi + + rm -f conftest.err conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +-echo "${ECHO_T}$ac_header_preproc" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 ++$as_echo "$ac_header_preproc" >&6; } + + # So? What about this header? + case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 ++$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 ++$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 ++$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 ++$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 ++$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 ++$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + + ;; + esac +-{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + eval "$as_ac_Header=\$ac_header_preproc" + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + + fi +-if test `eval echo '${'$as_ac_Header'}'` = yes; then ++as_val=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 + _ACEOF + + fi +@@ -4384,10 +4526,10 @@ done + + fi + +-{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 +-echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 ++$as_echo_n "checking for an ANSI C-conforming const... " >&6; } + if test "${ac_cv_c_const+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -4459,20 +4601,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_const=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_const=no +@@ -4480,20 +4623,20 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 +-echo "${ECHO_T}$ac_cv_c_const" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 ++$as_echo "$ac_cv_c_const" >&6; } + if test $ac_cv_c_const = no; then + + cat >>confdefs.h <<\_ACEOF +-#define const ++#define const /**/ + _ACEOF + + fi + +-{ echo "$as_me:$LINENO: checking for inline" >&5 +-echo $ECHO_N "checking for inline... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for inline" >&5 ++$as_echo_n "checking for inline... " >&6; } + if test "${ac_cv_c_inline+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_cv_c_inline=no + for ac_kw in inline __inline__ __inline; do +@@ -4516,20 +4659,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_inline=$ac_kw + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + +@@ -4540,8 +4684,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done + + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 +-echo "${ECHO_T}$ac_cv_c_inline" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 ++$as_echo "$ac_cv_c_inline" >&6; } + + + case $ac_cv_c_inline in +@@ -4559,26 +4703,58 @@ _ACEOF + ;; + esac + +-{ echo "$as_me:$LINENO: checking for off_t" >&5 +-echo $ECHO_N "checking for off_t... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for off_t" >&5 ++$as_echo_n "checking for off_t... " >&6; } + if test "${ac_cv_type_off_t+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else +- cat >conftest.$ac_ext <<_ACEOF ++ ac_cv_type_off_t=no ++cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + $ac_includes_default +-typedef off_t ac__type_new_; + int + main () + { +-if ((ac__type_new_ *) 0) +- return 0; +-if (sizeof (ac__type_new_)) ++if (sizeof (off_t)) ++ return 0; ++ ; + return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext ++if { (ac_try="$ac_compile" ++case "(($ac_try" in ++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++ *) ac_try_echo=$ac_try;; ++esac ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 ++ (eval "$ac_compile") 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && { ++ test -z "$ac_c_werror_flag" || ++ test ! -s conftest.err ++ } && test -s conftest.$ac_objext; then ++ cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++$ac_includes_default ++int ++main () ++{ ++if (sizeof ((off_t))) ++ return 0; + ; + return 0; + } +@@ -4589,30 +4765,39 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then +- ac_cv_type_off_t=yes ++ : ++else ++ $as_echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ ac_cv_type_off_t=yes ++fi ++ ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_type_off_t=no ++ + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 +-echo "${ECHO_T}$ac_cv_type_off_t" >&6; } +-if test $ac_cv_type_off_t = yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 ++$as_echo "$ac_cv_type_off_t" >&6; } ++if test "x$ac_cv_type_off_t" = x""yes; then + : + else + +@@ -4622,26 +4807,58 @@ _ACEOF + + fi + +-{ echo "$as_me:$LINENO: checking for pid_t" >&5 +-echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for pid_t" >&5 ++$as_echo_n "checking for pid_t... " >&6; } + if test "${ac_cv_type_pid_t+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else +- cat >conftest.$ac_ext <<_ACEOF ++ ac_cv_type_pid_t=no ++cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + $ac_includes_default +-typedef pid_t ac__type_new_; + int + main () + { +-if ((ac__type_new_ *) 0) +- return 0; +-if (sizeof (ac__type_new_)) ++if (sizeof (pid_t)) ++ return 0; ++ ; + return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext ++if { (ac_try="$ac_compile" ++case "(($ac_try" in ++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++ *) ac_try_echo=$ac_try;; ++esac ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 ++ (eval "$ac_compile") 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && { ++ test -z "$ac_c_werror_flag" || ++ test ! -s conftest.err ++ } && test -s conftest.$ac_objext; then ++ cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++$ac_includes_default ++int ++main () ++{ ++if (sizeof ((pid_t))) ++ return 0; + ; + return 0; + } +@@ -4652,30 +4869,39 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then +- ac_cv_type_pid_t=yes ++ : + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_type_pid_t=no ++ ac_cv_type_pid_t=yes + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++else ++ $as_echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 +-echo "${ECHO_T}$ac_cv_type_pid_t" >&6; } +-if test $ac_cv_type_pid_t = yes; then ++ ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++fi ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 ++$as_echo "$ac_cv_type_pid_t" >&6; } ++if test "x$ac_cv_type_pid_t" = x""yes; then + : + else + +@@ -4685,26 +4911,58 @@ _ACEOF + + fi + +-{ echo "$as_me:$LINENO: checking for size_t" >&5 +-echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for size_t" >&5 ++$as_echo_n "checking for size_t... " >&6; } + if test "${ac_cv_type_size_t+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else +- cat >conftest.$ac_ext <<_ACEOF ++ ac_cv_type_size_t=no ++cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF + cat confdefs.h >>conftest.$ac_ext + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + $ac_includes_default +-typedef size_t ac__type_new_; + int + main () + { +-if ((ac__type_new_ *) 0) +- return 0; +-if (sizeof (ac__type_new_)) ++if (sizeof (size_t)) ++ return 0; ++ ; + return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext ++if { (ac_try="$ac_compile" ++case "(($ac_try" in ++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++ *) ac_try_echo=$ac_try;; ++esac ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 ++ (eval "$ac_compile") 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && { ++ test -z "$ac_c_werror_flag" || ++ test ! -s conftest.err ++ } && test -s conftest.$ac_objext; then ++ cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++$ac_includes_default ++int ++main () ++{ ++if (sizeof ((size_t))) ++ return 0; + ; + return 0; + } +@@ -4715,30 +4973,39 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then +- ac_cv_type_size_t=yes ++ : ++else ++ $as_echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ ac_cv_type_size_t=yes ++fi ++ ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_type_size_t=no ++ + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +-echo "${ECHO_T}$ac_cv_type_size_t" >&6; } +-if test $ac_cv_type_size_t = yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 ++$as_echo "$ac_cv_type_size_t" >&6; } ++if test "x$ac_cv_type_size_t" = x""yes; then + : + else + +@@ -4748,10 +5015,10 @@ _ACEOF + + fi + +-{ echo "$as_me:$LINENO: checking for struct stat.st_rdev" >&5 +-echo $ECHO_N "checking for struct stat.st_rdev... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for struct stat.st_rdev" >&5 ++$as_echo_n "checking for struct stat.st_rdev... " >&6; } + if test "${ac_cv_member_struct_stat_st_rdev+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -4776,20 +5043,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_stat_st_rdev=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +@@ -4815,20 +5083,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_stat_st_rdev=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_stat_st_rdev=no +@@ -4839,9 +5108,9 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_rdev" >&5 +-echo "${ECHO_T}$ac_cv_member_struct_stat_st_rdev" >&6; } +-if test $ac_cv_member_struct_stat_st_rdev = yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_rdev" >&5 ++$as_echo "$ac_cv_member_struct_stat_st_rdev" >&6; } ++if test "x$ac_cv_member_struct_stat_st_rdev" = x""yes; then + + cat >>confdefs.h <<_ACEOF + #define HAVE_STRUCT_STAT_ST_RDEV 1 +@@ -4855,10 +5124,10 @@ _ACEOF + fi + + +-{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 +-echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 ++$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } + if test "${ac_cv_header_time+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -4885,20 +5154,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_time=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_time=no +@@ -4906,8 +5176,8 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 +-echo "${ECHO_T}$ac_cv_header_time" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 ++$as_echo "$ac_cv_header_time" >&6; } + if test $ac_cv_header_time = yes; then + + cat >>confdefs.h <<\_ACEOF +@@ -4979,8 +5249,8 @@ fi + + if test x$DIETLIBC = xyes; then + if test x$KLIBC = xyes; then +- { { echo "$as_me:$LINENO: error: You can' enable both dietlibc and klibc!" >&5 +-echo "$as_me: error: You can' enable both dietlibc and klibc!" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: You can' enable both dietlibc and klibc!" >&5 ++$as_echo "$as_me: error: You can' enable both dietlibc and klibc!" >&2;} + { (exit 1); exit 1; }; } + exit 1 + fi +@@ -5067,12 +5337,13 @@ echo $ac_n "checking whether to disable testing with mapped devices""... $ac_c" + # Check whether --enable-testing was given. + if test "${enable_testing+set}" = set; then + enableval=$enable_testing; \ +-DMRAID_TEST=no ++DMRAID_TEST=$enableval + else + DMRAID_TEST=yes + fi + + ++ + echo "$ac_t""$DEBUG" 1>&6 + + if test x$LIB_SO = xyes; then +@@ -5082,8 +5353,8 @@ fi + if test x$STATIC_LINK = xyes; then + FLAVOUR="static " + if test x$LIB_SO = xyes; then +- { { echo "$as_me:$LINENO: error: You can' enable both shared_lib and static_link!" >&5 +-echo "$as_me: error: You can' enable both shared_lib and static_link!" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: You can' enable both shared_lib and static_link!" >&5 ++$as_echo "$as_me: error: You can' enable both shared_lib and static_link!" >&2;} + { (exit 1); exit 1; }; } + exit 1 + fi +@@ -5104,6 +5375,10 @@ if test x$DMRAID_LED = xyes; then + CFLAGS="$CFLAGS -DDMRAID_LED" + fi + ++if test x$DMRAID_TEST = xyes; then ++ CFLAGS="$CFLAGS -DDMRAID_TEST" ++fi ++ + if test x$DMRAID_INTEL_LED = xyes; then + CFLAGS="$CFLAGS -DDMRAID_LED -DDMRAID_INTEL_LED" + fi +@@ -5121,10 +5396,10 @@ if [ "x$exec_prefix" = xNONE -a "x$prefix" = xNONE ]; + fi; + + if test $ac_cv_c_compiler_gnu = yes; then +- { echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 +-echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 ++$as_echo_n "checking whether $CC needs -traditional... " >&6; } + if test "${ac_cv_prog_gcc_traditional+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_pattern="Autoconf.*'x'" + cat >conftest.$ac_ext <<_ACEOF +@@ -5163,17 +5438,17 @@ rm -f conftest* + + fi + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 +-echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 ++$as_echo "$ac_cv_prog_gcc_traditional" >&6; } + if test $ac_cv_prog_gcc_traditional = yes; then + CC="$CC -traditional" + fi + fi + +-{ echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +-echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking return type of signal handlers" >&5 ++$as_echo_n "checking return type of signal handlers... " >&6; } + if test "${ac_cv_type_signal+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -5198,20 +5473,21 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_signal=int + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_signal=void +@@ -5219,8 +5495,8 @@ fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +-echo "${ECHO_T}$ac_cv_type_signal" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 ++$as_echo "$ac_cv_type_signal" >&6; } + + cat >>confdefs.h <<_ACEOF + #define RETSIGTYPE $ac_cv_type_signal +@@ -5230,11 +5506,11 @@ _ACEOF + + for ac_func in vprintf + do +-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +-{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } ++as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ++{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 ++$as_echo_n "checking for $ac_func... " >&6; } + if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -5287,41 +5563,48 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + eval "$as_ac_var=yes" + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + fi +-ac_res=`eval echo '${'$as_ac_var'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } +-if test `eval echo '${'$as_ac_var'}'` = yes; then ++ac_res=`eval 'as_val=${'$as_ac_var'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } ++as_val=`eval 'as_val=${'$as_ac_var'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 + _ACEOF + +-{ echo "$as_me:$LINENO: checking for _doprnt" >&5 +-echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for _doprnt" >&5 ++$as_echo_n "checking for _doprnt... " >&6; } + if test "${ac_cv_func__doprnt+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -5374,32 +5657,36 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + ac_cv_func__doprnt=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func__doprnt=no + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 +-echo "${ECHO_T}$ac_cv_func__doprnt" >&6; } +-if test $ac_cv_func__doprnt = yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 ++$as_echo "$ac_cv_func__doprnt" >&6; } ++if test "x$ac_cv_func__doprnt" = x""yes; then + + cat >>confdefs.h <<\_ACEOF + #define HAVE_DOPRNT 1 +@@ -5416,11 +5703,11 @@ done + + for ac_func in mkdir rmdir uname + do +-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +-{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } ++as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ++{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 ++$as_echo_n "checking for $ac_func... " >&6; } + if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -5473,35 +5760,42 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + eval "$as_ac_var=yes" + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + fi +-ac_res=`eval echo '${'$as_ac_var'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } +-if test `eval echo '${'$as_ac_var'}'` = yes; then ++ac_res=`eval 'as_val=${'$as_ac_var'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } ++as_val=`eval 'as_val=${'$as_ac_var'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 + _ACEOF + + fi +@@ -5509,10 +5803,10 @@ done + + + if test x$READLINE = xyes; then +- { echo "$as_me:$LINENO: checking for library containing tgetent" >&5 +-echo $ECHO_N "checking for library containing tgetent... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for library containing tgetent" >&5 ++$as_echo_n "checking for library containing tgetent... " >&6; } + if test "${ac_cv_search_tgetent+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + ac_func_search_save_LIBS=$LIBS + cat >conftest.$ac_ext <<_ACEOF +@@ -5550,26 +5844,30 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err +- } && test -s conftest$ac_exeext && +- $as_test_x conftest$ac_exeext; then ++ } && test -s conftest$ac_exeext && { ++ test "$cross_compiling" = yes || ++ $as_test_x conftest$ac_exeext ++ }; then + ac_cv_search_tgetent=$ac_res + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + + fi + ++rm -rf conftest.dSYM + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_tgetent+set}" = set; then +@@ -5584,14 +5882,14 @@ fi + rm conftest.$ac_ext + LIBS=$ac_func_search_save_LIBS + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_search_tgetent" >&5 +-echo "${ECHO_T}$ac_cv_search_tgetent" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_tgetent" >&5 ++$as_echo "$ac_cv_search_tgetent" >&6; } + ac_res=$ac_cv_search_tgetent + if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + + else +- { { echo "$as_me:$LINENO: error: termcap could not be found which is required for the ++ { { $as_echo "$as_me:$LINENO: error: termcap could not be found which is required for the + --enable-readline option (which is enabled by default). Either disable readline + support with --disable-readline or download and install termcap from: + ftp.gnu.org/gnu/termcap +@@ -5600,7 +5898,7 @@ Note: if you are using precompiled packages you will also need the development + Note: (n)curses also seems to work as a substitute for termcap. This was + not found either - but you could try installing that as well. + " >&5 +-echo "$as_me: error: termcap could not be found which is required for the ++$as_echo "$as_me: error: termcap could not be found which is required for the + --enable-readline option (which is enabled by default). Either disable readline + support with --disable-readline or download and install termcap from: + ftp.gnu.org/gnu/termcap +@@ -5620,20 +5918,21 @@ if test x$KLIBC != xyes; then + + for ac_header in getopt.h + do +-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` ++as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- { echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++ { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + else + # Is the header compilable? +-{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 ++$as_echo_n "checking $ac_header usability... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -5649,32 +5948,33 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no + fi + + rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +-echo "${ECHO_T}$ac_header_compiler" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 ++$as_echo "$ac_header_compiler" >&6; } + + # Is the header present? +-{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 ++$as_echo_n "checking $ac_header presence... " >&6; } + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -5688,69 +5988,73 @@ case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; + esac +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 ++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" ++$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes + else +- echo "$as_me: failed program was:" >&5 ++ $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no + fi + + rm -f conftest.err conftest.$ac_ext +-{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +-echo "${ECHO_T}$ac_header_preproc" >&6; } ++{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 ++$as_echo "$ac_header_preproc" >&6; } + + # So? What about this header? + case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 ++$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) +- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} +- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 ++$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 ++$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 ++$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 ++$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 ++$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 ++$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + + ;; + esac +-{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } ++{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 ++$as_echo_n "checking for $ac_header... " >&6; } + if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 ++ $as_echo_n "(cached) " >&6 + else + eval "$as_ac_Header=\$ac_header_preproc" + fi +-ac_res=`eval echo '${'$as_ac_Header'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++ac_res=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 ++$as_echo "$ac_res" >&6; } + + fi +-if test `eval echo '${'$as_ac_Header'}'` = yes; then ++as_val=`eval 'as_val=${'$as_ac_Header'} ++ $as_echo "$as_val"'` ++ if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 ++#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 + _ACEOF + CFLAGS="$CFLAGS -DHAVE_GETOPTLONG" + fi +@@ -5791,7 +6095,6 @@ fi + + + +- + ac_config_files="$ac_config_files include/Makefile lib/Makefile man/Makefile tools/Makefile tools/version.h Makefile make.tmpl" + + cat >confcache <<\_ACEOF +@@ -5821,11 +6124,12 @@ _ACEOF + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( +- *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +-echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; ++ *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 ++$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( ++ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac +@@ -5858,12 +6162,12 @@ echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + test "x$cache_file" != "x/dev/null" && +- { echo "$as_me:$LINENO: updating cache $cache_file" >&5 +-echo "$as_me: updating cache $cache_file" >&6;} ++ { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5 ++$as_echo "$as_me: updating cache $cache_file" >&6;} + cat confcache >$cache_file + else +- { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 +-echo "$as_me: not updating unwritable cache $cache_file" >&6;} ++ { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 ++$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi + fi + rm -f confcache +@@ -5880,6 +6184,12 @@ test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + # take arguments), then branch to the quote section. Otherwise, + # look for a macro that doesn't take arguments. + ac_script=' ++:mline ++/\\$/{ ++ N ++ s,\\\n,, ++ b mline ++} + t clear + :clear + s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g +@@ -5909,7 +6219,7 @@ ac_ltlibobjs= + for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' +- ac_i=`echo "$ac_i" | sed "$ac_script"` ++ ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" +@@ -5922,11 +6232,12 @@ LTLIBOBJS=$ac_ltlibobjs + + + : ${CONFIG_STATUS=./config.status} ++ac_write_fail=0 + ac_clean_files_save=$ac_clean_files + ac_clean_files="$ac_clean_files $CONFIG_STATUS" +-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +-echo "$as_me: creating $CONFIG_STATUS" >&6;} +-cat >$CONFIG_STATUS <<_ACEOF ++{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 ++$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} ++cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + #! $SHELL + # Generated by $as_me. + # Run this file to recreate the current configuration. +@@ -5939,7 +6250,7 @@ ac_cs_silent=false + SHELL=\${CONFIG_SHELL-$SHELL} + _ACEOF + +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + ## --------------------- ## + ## M4sh Initialization. ## + ## --------------------- ## +@@ -5949,7 +6260,7 @@ DUALCASE=1; export DUALCASE # for MKS sh + if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: +- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which ++ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +@@ -5971,17 +6282,45 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS + as_cr_digits='0123456789' + as_cr_alnum=$as_cr_Letters$as_cr_digits + +-# The user is always right. +-if test "${PATH_SEPARATOR+set}" != set; then +- echo "#! /bin/sh" >conf$$.sh +- echo "exit 0" >>conf$$.sh +- chmod +x conf$$.sh +- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then +- PATH_SEPARATOR=';' ++as_nl=' ++' ++export as_nl ++# Printing a long string crashes Solaris 7 /usr/bin/printf. ++as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ++as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo ++as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo ++if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then ++ as_echo='printf %s\n' ++ as_echo_n='printf %s' ++else ++ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then ++ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' ++ as_echo_n='/usr/ucb/echo -n' + else +- PATH_SEPARATOR=: ++ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' ++ as_echo_n_body='eval ++ arg=$1; ++ case $arg in ++ *"$as_nl"*) ++ expr "X$arg" : "X\\(.*\\)$as_nl"; ++ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; ++ esac; ++ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ++ ' ++ export as_echo_n_body ++ as_echo_n='sh -c $as_echo_n_body as_echo' + fi +- rm -f conf$$.sh ++ export as_echo_body ++ as_echo='sh -c $as_echo_body as_echo' ++fi ++ ++# The user is always right. ++if test "${PATH_SEPARATOR+set}" != set; then ++ PATH_SEPARATOR=: ++ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { ++ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || ++ PATH_SEPARATOR=';' ++ } + fi + + # Support unset when possible. +@@ -5997,8 +6336,6 @@ fi + # there to prevent editors from complaining about space-tab. + # (If _AS_PATH_WALK were called with IFS unset, it would disable word + # splitting by setting IFS to empty value.) +-as_nl=' +-' + IFS=" "" $as_nl" + + # Find who we are. Look in the path if we contain no directory separator. +@@ -6021,7 +6358,7 @@ if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then +- echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 ++ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } + fi + +@@ -6034,17 +6371,10 @@ PS2='> ' + PS4='+ ' + + # NLS nuisances. +-for as_var in \ +- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ +- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ +- LC_TELEPHONE LC_TIME +-do +- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then +- eval $as_var=C; export $as_var +- else +- ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +- fi +-done ++LC_ALL=C ++export LC_ALL ++LANGUAGE=C ++export LANGUAGE + + # Required to use basename. + if expr a : '\(a\)' >/dev/null 2>&1 && +@@ -6066,7 +6396,7 @@ as_me=`$as_basename -- "$0" || + $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +-echo X/"$0" | ++$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q +@@ -6117,7 +6447,7 @@ $as_unset CDPATH + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || +- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 ++ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems +@@ -6145,7 +6475,6 @@ case `echo -n x` in + *) + ECHO_N='-n';; + esac +- + if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +@@ -6158,19 +6487,22 @@ if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file + else + rm -f conf$$.dir +- mkdir conf$$.dir +-fi +-echo >conf$$.file +-if ln -s conf$$.file conf$$ 2>/dev/null; then +- as_ln_s='ln -s' +- # ... but there are two gotchas: +- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. +- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. +- # In both cases, we have to default to `cp -p'. +- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || ++ mkdir conf$$.dir 2>/dev/null ++fi ++if (echo >conf$$.file) 2>/dev/null; then ++ if ln -s conf$$.file conf$$ 2>/dev/null; then ++ as_ln_s='ln -s' ++ # ... but there are two gotchas: ++ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. ++ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. ++ # In both cases, we have to default to `cp -p'. ++ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || ++ as_ln_s='cp -p' ++ elif ln conf$$.file conf$$ 2>/dev/null; then ++ as_ln_s=ln ++ else + as_ln_s='cp -p' +-elif ln conf$$.file conf$$ 2>/dev/null; then +- as_ln_s=ln ++ fi + else + as_ln_s='cp -p' + fi +@@ -6195,10 +6527,10 @@ else + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then +- test -d "$1/."; ++ test -d "$1/."; + else + case $1 in +- -*)set "./$1";; ++ -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi +@@ -6221,7 +6553,7 @@ exec 6>&1 + # values after options handling. + ac_log=" + This file was extended by $as_me, which was +-generated by GNU Autoconf 2.61. Invocation command line was ++generated by GNU Autoconf 2.63. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS +@@ -6234,26 +6566,33 @@ on `(hostname || uname -n) 2>/dev/null | sed 1q` + + _ACEOF + +-cat >>$CONFIG_STATUS <<_ACEOF ++case $ac_config_files in *" ++"*) set x $ac_config_files; shift; ac_config_files=$*;; ++esac ++ ++ ++ ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + # Files that config.status was made for. + config_files="$ac_config_files" + + _ACEOF + +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + ac_cs_usage="\ + \`$as_me' instantiates files from templates according to the + current configuration. + +-Usage: $0 [OPTIONS] [FILE]... ++Usage: $0 [OPTION]... [FILE]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit +- -q, --quiet do not print progress messages ++ -q, --quiet, --silent ++ do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions +- --file=FILE[:TEMPLATE] +- instantiate the configuration file FILE ++ --file=FILE[:TEMPLATE] ++ instantiate the configuration file FILE + + Configuration files: + $config_files +@@ -6261,24 +6600,25 @@ $config_files + Report bugs to ." + + _ACEOF +-cat >>$CONFIG_STATUS <<_ACEOF ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_cs_version="\\ + config.status +-configured by $0, generated by GNU Autoconf 2.61, +- with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" ++configured by $0, generated by GNU Autoconf 2.63, ++ with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +-Copyright (C) 2006 Free Software Foundation, Inc. ++Copyright (C) 2008 Free Software Foundation, Inc. + This config.status script is free software; the Free Software Foundation + gives unlimited permission to copy, distribute and modify it." + + ac_pwd='$ac_pwd' + srcdir='$srcdir' + INSTALL='$INSTALL' ++AWK='$AWK' ++test -n "\$AWK" || AWK=awk + _ACEOF + +-cat >>$CONFIG_STATUS <<\_ACEOF +-# If no file are specified by the user, then we need to provide default +-# value. By we need to know if files were specified by the user. ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ++# The default lists apply if the user does not specify any file. + ac_need_defaults=: + while test $# != 0 + do +@@ -6300,21 +6640,24 @@ do + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) +- echo "$ac_cs_version"; exit ;; ++ $as_echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift +- CONFIG_FILES="$CONFIG_FILES $ac_optarg" ++ case $ac_optarg in ++ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; ++ esac ++ CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" + ac_need_defaults=false;; + --he | --h | --help | --hel | -h ) +- echo "$ac_cs_usage"; exit ;; ++ $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. +- -*) { echo "$as_me: error: unrecognized option: $1 ++ -*) { $as_echo "$as_me: error: unrecognized option: $1 + Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + +@@ -6333,30 +6676,32 @@ if $ac_cs_silent; then + fi + + _ACEOF +-cat >>$CONFIG_STATUS <<_ACEOF ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + if \$ac_cs_recheck; then +- echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 +- CONFIG_SHELL=$SHELL ++ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion ++ shift ++ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 ++ CONFIG_SHELL='$SHELL' + export CONFIG_SHELL +- exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion ++ exec "\$@" + fi + + _ACEOF +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + exec 5>>config.log + { + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX + ## Running $as_me. ## + _ASBOX +- echo "$ac_log" ++ $as_echo "$ac_log" + } >&5 + + _ACEOF +-cat >>$CONFIG_STATUS <<_ACEOF ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + _ACEOF + +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + + # Handling of arguments. + for ac_config_target in $ac_config_targets +@@ -6370,8 +6715,8 @@ do + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "make.tmpl") CONFIG_FILES="$CONFIG_FILES make.tmpl" ;; + +- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +-echo "$as_me: error: invalid argument: $ac_config_target" >&2;} ++ *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 ++$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac + done +@@ -6410,157 +6755,144 @@ $debug || + (umask 077 && mkdir "$tmp") + } || + { +- echo "$me: cannot create a temporary directory in ." >&2 ++ $as_echo "$as_me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } + } + +-# +-# Set up the sed scripts for CONFIG_FILES section. +-# +- +-# No need to generate the scripts if there are no CONFIG_FILES. +-# This happens for instance when ./config.status config.h ++# Set up the scripts for CONFIG_FILES section. ++# No need to generate them if there are no CONFIG_FILES. ++# This happens for instance with `./config.status config.h'. + if test -n "$CONFIG_FILES"; then + +-_ACEOF + ++ac_cr=' ' ++ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` ++if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ++ ac_cs_awk_cr='\\r' ++else ++ ac_cs_awk_cr=$ac_cr ++fi ++ ++echo 'BEGIN {' >"$tmp/subs1.awk" && ++_ACEOF + + ++{ ++ echo "cat >conf$$subs.awk <<_ACEOF" && ++ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && ++ echo "_ACEOF" ++} >conf$$subs.sh || ++ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 ++$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} ++ { (exit 1); exit 1; }; } ++ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` + ac_delim='%!_!# ' + for ac_last_try in false false false false false :; do +- cat >conf$$subs.sed <<_ACEOF +-SHELL!$SHELL$ac_delim +-PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim +-PACKAGE_NAME!$PACKAGE_NAME$ac_delim +-PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim +-PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim +-PACKAGE_STRING!$PACKAGE_STRING$ac_delim +-PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim +-exec_prefix!$exec_prefix$ac_delim +-prefix!$prefix$ac_delim +-program_transform_name!$program_transform_name$ac_delim +-bindir!$bindir$ac_delim +-sbindir!$sbindir$ac_delim +-libexecdir!$libexecdir$ac_delim +-datarootdir!$datarootdir$ac_delim +-datadir!$datadir$ac_delim +-sysconfdir!$sysconfdir$ac_delim +-sharedstatedir!$sharedstatedir$ac_delim +-localstatedir!$localstatedir$ac_delim +-includedir!$includedir$ac_delim +-oldincludedir!$oldincludedir$ac_delim +-docdir!$docdir$ac_delim +-infodir!$infodir$ac_delim +-htmldir!$htmldir$ac_delim +-dvidir!$dvidir$ac_delim +-pdfdir!$pdfdir$ac_delim +-psdir!$psdir$ac_delim +-libdir!$libdir$ac_delim +-localedir!$localedir$ac_delim +-mandir!$mandir$ac_delim +-DEFS!$DEFS$ac_delim +-ECHO_C!$ECHO_C$ac_delim +-ECHO_N!$ECHO_N$ac_delim +-ECHO_T!$ECHO_T$ac_delim +-LIBS!$LIBS$ac_delim +-build_alias!$build_alias$ac_delim +-host_alias!$host_alias$ac_delim +-target_alias!$target_alias$ac_delim +-build!$build$ac_delim +-build_cpu!$build_cpu$ac_delim +-build_vendor!$build_vendor$ac_delim +-build_os!$build_os$ac_delim +-host!$host$ac_delim +-host_cpu!$host_cpu$ac_delim +-host_vendor!$host_vendor$ac_delim +-host_os!$host_os$ac_delim +-target!$target$ac_delim +-target_cpu!$target_cpu$ac_delim +-target_vendor!$target_vendor$ac_delim +-target_os!$target_os$ac_delim +-AWK!$AWK$ac_delim +-INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim +-INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim +-INSTALL_DATA!$INSTALL_DATA$ac_delim +-LN_S!$LN_S$ac_delim +-SET_MAKE!$SET_MAKE$ac_delim +-RANLIB!$RANLIB$ac_delim +-KLCC!$KLCC$ac_delim +-KLIBC!$KLIBC$ac_delim +-KLIBC_PREFIX!$KLIBC_PREFIX$ac_delim +-KLIBC_BIN_DIR!$KLIBC_BIN_DIR$ac_delim +-KLIBC_SBIN_DIR!$KLIBC_SBIN_DIR$ac_delim +-KLIBC_LIB_DIR!$KLIBC_LIB_DIR$ac_delim +-KLIBC_INCLUDE_DIR!$KLIBC_INCLUDE_DIR$ac_delim +-CC!$CC$ac_delim +-CFLAGS!$CFLAGS$ac_delim +-LDFLAGS!$LDFLAGS$ac_delim +-CPPFLAGS!$CPPFLAGS$ac_delim +-ac_ct_CC!$ac_ct_CC$ac_delim +-EXEEXT!$EXEEXT$ac_delim +-OBJEXT!$OBJEXT$ac_delim +-CPP!$CPP$ac_delim +-GREP!$GREP$ac_delim +-EGREP!$EGREP$ac_delim +-CLDFLAGS!$CLDFLAGS$ac_delim +-DEBUG!$DEBUG$ac_delim +-DEBUG_MALLOC!$DEBUG_MALLOC$ac_delim +-DMRAID_TEST!$DMRAID_TEST$ac_delim +-DMRAID_VERSION!$DMRAID_VERSION$ac_delim +-DMRAID_LIB_VERSION!$DMRAID_LIB_VERSION$ac_delim +-DIETLIBC!$DIETLIBC$ac_delim +-GROUP!$GROUP$ac_delim +-JOBS!$JOBS$ac_delim +-LD_DEPS!$LD_DEPS$ac_delim +-FLAVOUR!$FLAVOUR$ac_delim +-LIBSELINUX!$LIBSELINUX$ac_delim +-LIBSEPOL!$LIBSEPOL$ac_delim +-LIB_SO!$LIB_SO$ac_delim +-OWNER!$OWNER$ac_delim +-SOFLAG!$SOFLAG$ac_delim +-STATIC_LINK!$STATIC_LINK$ac_delim +-LIBOBJS!$LIBOBJS$ac_delim +-LTLIBOBJS!$LTLIBOBJS$ac_delim +-_ACEOF +- +- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 92; then ++ . ./conf$$subs.sh || ++ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 ++$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} ++ { (exit 1); exit 1; }; } ++ ++ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` ++ if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then +- { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +-echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 ++$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi + done ++rm -f conf$$subs.sh ++ ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ++cat >>"\$tmp/subs1.awk" <<\\_ACAWK && ++_ACEOF ++sed -n ' ++h ++s/^/S["/; s/!.*/"]=/ ++p ++g ++s/^[^!]*!// ++:repl ++t repl ++s/'"$ac_delim"'$// ++t delim ++:nl ++h ++s/\(.\{148\}\).*/\1/ ++t more1 ++s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ ++p ++n ++b repl ++:more1 ++s/["\\]/\\&/g; s/^/"/; s/$/"\\/ ++p ++g ++s/.\{148\}// ++t nl ++:delim ++h ++s/\(.\{148\}\).*/\1/ ++t more2 ++s/["\\]/\\&/g; s/^/"/; s/$/"/ ++p ++b ++:more2 ++s/["\\]/\\&/g; s/^/"/; s/$/"\\/ ++p ++g ++s/.\{148\}// ++t delim ++' >$CONFIG_STATUS || ac_write_fail=1 ++rm -f conf$$subs.awk ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ++_ACAWK ++cat >>"\$tmp/subs1.awk" <<_ACAWK && ++ for (key in S) S_is_set[key] = 1 ++ FS = "" + +-ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +-if test -n "$ac_eof"; then +- ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` +- ac_eof=`expr $ac_eof + 1` +-fi ++} ++{ ++ line = $ 0 ++ nfields = split(line, field, "@") ++ substed = 0 ++ len = length(field[1]) ++ for (i = 2; i < nfields; i++) { ++ key = field[i] ++ keylen = length(key) ++ if (S_is_set[key]) { ++ value = S[key] ++ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) ++ len += length(value) + length(field[++i]) ++ substed = 1 ++ } else ++ len += 1 + keylen ++ } + +-cat >>$CONFIG_STATUS <<_ACEOF +-cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof +-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end ++ print line ++} ++ ++_ACAWK + _ACEOF +-sed ' +-s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +-s/^/s,@/; s/!/@,|#_!!_#|/ +-:n +-t n +-s/'"$ac_delim"'$/,g/; t +-s/$/\\/; p +-N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +-' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF +-:end +-s/|#_!!_#|//g +-CEOF$ac_eof ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ++if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then ++ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" ++else ++ cat ++fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ ++ || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 ++$as_echo "$as_me: error: could not setup config files machinery" >&2;} ++ { (exit 1); exit 1; }; } + _ACEOF + +- + # VPATH may cause trouble with some makes, so we remove $(srcdir), + # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and + # trailing colons and then remove the whole line if VPATH becomes empty +@@ -6576,19 +6908,21 @@ s/^[^=]*=[ ]*$// + }' + fi + +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + fi # test -n "$CONFIG_FILES" + + +-for ac_tag in :F $CONFIG_FILES ++eval set X " :F $CONFIG_FILES " ++shift ++for ac_tag + do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; +- :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +-echo "$as_me: error: Invalid tag $ac_tag." >&2;} ++ :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5 ++$as_echo "$as_me: error: invalid tag $ac_tag" >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; +@@ -6617,26 +6951,38 @@ echo "$as_me: error: Invalid tag $ac_tag." >&2;} + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || +- { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +-echo "$as_me: error: cannot find input file: $ac_f" >&2;} ++ { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 ++$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac +- ac_file_inputs="$ac_file_inputs $ac_f" ++ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac ++ ac_file_inputs="$ac_file_inputs '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ +- configure_input="Generated from "`IFS=: +- echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." ++ configure_input='Generated from '` ++ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' ++ `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" +- { echo "$as_me:$LINENO: creating $ac_file" >&5 +-echo "$as_me: creating $ac_file" >&6;} ++ { $as_echo "$as_me:$LINENO: creating $ac_file" >&5 ++$as_echo "$as_me: creating $ac_file" >&6;} + fi ++ # Neutralize special characters interpreted by sed in replacement strings. ++ case $configure_input in #( ++ *\&* | *\|* | *\\* ) ++ ac_sed_conf_input=`$as_echo "$configure_input" | ++ sed 's/[\\\\&|]/\\\\&/g'`;; #( ++ *) ac_sed_conf_input=$configure_input;; ++ esac + + case $ac_tag in +- *:-:* | *:-) cat >"$tmp/stdin";; ++ *:-:* | *:-) cat >"$tmp/stdin" \ ++ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 ++$as_echo "$as_me: error: could not create $ac_file" >&2;} ++ { (exit 1); exit 1; }; } ;; + esac + ;; + esac +@@ -6646,7 +6992,7 @@ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +-echo X"$ac_file" | ++$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q +@@ -6672,7 +7018,7 @@ echo X"$ac_file" | + as_dirs= + while :; do + case $as_dir in #( +- *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( ++ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" +@@ -6681,7 +7027,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +-echo X"$as_dir" | ++$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q +@@ -6702,17 +7048,17 @@ echo X"$as_dir" | + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" +- } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +-echo "$as_me: error: cannot create directory $as_dir" >&2;} ++ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 ++$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + ac_builddir=. + + case "$ac_dir" in + .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) +- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` ++ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. +- ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` ++ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; +@@ -6752,12 +7098,13 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + esac + _ACEOF + +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + # If the template does not know about datarootdir, expand it. + # FIXME: This hack should be removed a few years after 2.60. + ac_datarootdir_hack=; ac_datarootdir_seen= + +-case `sed -n '/datarootdir/ { ++ac_sed_dataroot=' ++/datarootdir/ { + p + q + } +@@ -6766,13 +7113,14 @@ case `sed -n '/datarootdir/ { + /@infodir@/p + /@localedir@/p + /@mandir@/p +-' $ac_file_inputs` in ++' ++case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in + *datarootdir*) ac_datarootdir_seen=yes;; + *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) +- { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +-echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 ++$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + _ACEOF +-cat >>$CONFIG_STATUS <<_ACEOF ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g +@@ -6786,15 +7134,16 @@ _ACEOF + # Neutralize VPATH when `$srcdir' = `.'. + # Shell code in configure.ac might set extrasub. + # FIXME: do we really want to maintain this feature? +-cat >>$CONFIG_STATUS <<_ACEOF +- sed "$ac_vpsub ++cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ++ac_sed_extra="$ac_vpsub + $extrasub + _ACEOF +-cat >>$CONFIG_STATUS <<\_ACEOF ++cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + :t + /@[a-zA-Z_][a-zA-Z_0-9]*@/!b +-s&@configure_input@&$configure_input&;t t ++s|@configure_input@|$ac_sed_conf_input|;t t + s&@top_builddir@&$ac_top_builddir_sub&;t t ++s&@top_build_prefix@&$ac_top_build_prefix&;t t + s&@srcdir@&$ac_srcdir&;t t + s&@abs_srcdir@&$ac_abs_srcdir&;t t + s&@top_srcdir@&$ac_top_srcdir&;t t +@@ -6804,21 +7153,28 @@ s&@abs_builddir@&$ac_abs_builddir&;t t + s&@abs_top_builddir@&$ac_abs_top_builddir&;t t + s&@INSTALL@&$ac_INSTALL&;t t + $ac_datarootdir_hack +-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out ++" ++eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ ++ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 ++$as_echo "$as_me: error: could not create $ac_file" >&2;} ++ { (exit 1); exit 1; }; } + + test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && +- { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' ++ { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' + which seems to be undefined. Please make sure it is defined." >&5 +-echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' ++$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' + which seems to be undefined. Please make sure it is defined." >&2;} + + rm -f "$tmp/stdin" + case $ac_file in +- -) cat "$tmp/out"; rm -f "$tmp/out";; +- *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; +- esac ++ -) cat "$tmp/out" && rm -f "$tmp/out";; ++ *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; ++ esac \ ++ || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 ++$as_echo "$as_me: error: could not create $ac_file" >&2;} ++ { (exit 1); exit 1; }; } + ;; + + +@@ -6833,6 +7189,11 @@ _ACEOF + chmod +x $CONFIG_STATUS + ac_clean_files=$ac_clean_files_save + ++test $ac_write_fail = 0 || ++ { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5 ++$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;} ++ { (exit 1); exit 1; }; } ++ + + # configure is writing to config.log, and then calls config.status. + # config.status does its own redirection, appending to config.log. +@@ -6854,4 +7215,8 @@ if test "$no_create" != yes; then + # would make configure fail if this is the last instruction. + $ac_cs_success || { (exit 1); exit 1; } + fi ++if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then ++ { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 ++$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} ++fi + +diff --git a/lib/device/scan.c.test_devices b/lib/device/scan.c +index 2d06fa4..ec727b2 100644 +--- a/lib/device/scan.c.test_devices ++++ b/lib/device/scan.c +@@ -87,7 +87,7 @@ dm_test_device(struct lib_context *lc, char *path) + struct stat s; + + return !lstat(path, &s) && +- S_ISLNK(s.st_mode) && ++/* S_ISLNK(s.st_mode) && */ /* No symlinks any more. */ + !strncmp(get_basename(lc, path), "dm-", 3); + } + diff --git a/0001-ddf1_lsi_persistent_name.patch b/0001-ddf1_lsi_persistent_name.patch new file mode 100644 index 0000000..c1ba826 --- /dev/null +++ b/0001-ddf1_lsi_persistent_name.patch @@ -0,0 +1,21 @@ +diff --git a/lib/format/ddf/ddf1.c.lsi_name b/lib/format/ddf/ddf1.c +index 05b550b..c8e484b 100644 +--- a/lib/format/ddf/ddf1.c ++++ b/lib/format/ddf/ddf1.c +@@ -696,6 +696,16 @@ name(struct lib_context *lc, struct ddf1 *ddf1, struct raid_dev *rd) + sprintf(b, "%02x%02x%02x%02x", + vd->guid[i], vd->guid[i + 1], + vd->guid[i + 2], vd->guid[i + 3]); ++ ++ /* ++ * Because the LSI bios changes the timestamp in the ++ * metadata on every boot, we have to neutralize it ++ * in order to allow for persistent names. ++ * ++ * Using a dummy string "47114711" for that. ++ */ ++ if (!strncmp((char *) vd->guid, "LSI", 3)) ++ strncpy(buf + prefix + 32, "47114711", 8); + } + + out: diff --git a/0002-pdc_raid10_failure.patch b/0002-pdc_raid10_failure.patch new file mode 100644 index 0000000..38d85df --- /dev/null +++ b/0002-pdc_raid10_failure.patch @@ -0,0 +1,15 @@ +diff --git a/lib/format/ataraid/pdc.c.raid10_failure b/lib/format/ataraid/pdc.c +index b0bb652..8b14d71 100644 +--- a/lib/format/ataraid/pdc.c ++++ b/lib/format/ataraid/pdc.c +@@ -490,7 +490,9 @@ devices(struct raid_dev *rd, void *context) + if (context && pdc->raid.type != PDC_T_SPAN) + *((uint64_t *) context) += rd->sectors; + +- return pdc->raid.total_disks; ++ return is_raid10(pdc) ? ++ pdc->raid.total_disks / 2 : ++ pdc->raid.total_disks; + } + + static int diff --git a/0003-return_error_wo_disks.patch b/0003-return_error_wo_disks.patch new file mode 100644 index 0000000..b751af2 --- /dev/null +++ b/0003-return_error_wo_disks.patch @@ -0,0 +1,22 @@ +diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c +index eb8af10..4da6b64 100644 +--- a/lib/metadata/metadata.c ++++ b/lib/metadata/metadata.c +@@ -2096,7 +2096,7 @@ get_metadata(struct lib_context *lc, enum action action, + + if (!count_devices(lc, DEVICE)) { + log_print(lc, "no block devices found"); +- return 1; ++ return 0; + } + + if (!(M_RAID & p->metadata)) +@@ -2118,7 +2118,7 @@ get_metadata(struct lib_context *lc, enum action action, + if (!OPT_HOT_SPARE_SET(lc) && !OPT_CREATE(lc) + && !count_devices(lc, RAID)) { + format_error(lc, "disks", argv); +- return 1; ++ return 0; + } + + if (M_SET & p->metadata) { diff --git a/0004-fix_sil_jbod.patch b/0004-fix_sil_jbod.patch new file mode 100644 index 0000000..86aaace --- /dev/null +++ b/0004-fix_sil_jbod.patch @@ -0,0 +1,57 @@ +diff --git a/lib/format/ataraid/sil.c.fix_sil_jbod b/lib/format/ataraid/sil.c +index 6089682..8c3df38 100644 +--- a/lib/format/ataraid/sil.c.fix_sil_jbod ++++ b/lib/format/ataraid/sil.c +@@ -1,8 +1,8 @@ + /* + * Silicon Image Medley ATARAID metadata format handler. + * +- * Copyright (C) 2004,2005 Heinz Mauelshagen, Red Hat GmbH. +- * All rights reserved. ++ * Copyright (C) 2004,2005,2009 Heinz Mauelshagen, Red Hat GmbH. ++ * All rights reserved. + * + * See file LICENSE at the top of this source tree for license information. + */ +@@ -166,6 +166,16 @@ sil_valid(struct lib_context *lc, struct dev_info *di, + return 1; + } + ++/* Return number of array sectors. */ ++static uint64_t ++array_size(struct raid_dev *rd) ++{ ++ struct sil *sil = META(rd, sil); ++ ++ return (((uint64_t) sil->array_sectors_high) << 32) + ++ sil->array_sectors_low; ++} ++ + static void + free_sils(struct sil **sils, unsigned int i) + { +@@ -381,6 +391,10 @@ devices(struct raid_dev *rd, void *context) + struct sil *sil = META(rd, sil); + + switch (sil->type) { ++ case SIL_T_JBOD: ++ ret = array_size(rd) < rd->sectors ? ++ 1 : sil->drives_per_striped_set; ++ break; + case SIL_T_RAID0: + case SIL_T_RAID10: + ret = sil->drives_per_striped_set; +@@ -519,12 +533,9 @@ stripes(struct sil *sil) + static uint64_t + sectors(struct raid_dev *rd) + { +- uint64_t array_sectors, ret = 0; ++ uint64_t array_sectors = array_size(rd), ret = 0; + struct sil *sil = META(rd, sil); + +- array_sectors = (((uint64_t) sil->array_sectors_high) << 32) + +- sil->array_sectors_low; +- + switch (sil->type) { + case SIL_T_SPARE: + /* Cook them up... */ diff --git a/0005-avoid_register.patch b/0005-avoid_register.patch new file mode 100644 index 0000000..8301e0f --- /dev/null +++ b/0005-avoid_register.patch @@ -0,0 +1,31 @@ +diff --git a/lib/activate/activate.c.avoid_register b/lib/activate/activate.c +index 1d71ea8..86882f7 100644 +--- a/lib/activate/activate.c.avoid_register ++++ b/lib/activate/activate.c +@@ -964,11 +964,13 @@ activate_subset(struct lib_context *lc, struct raid_set *rs, enum dm_what what) + { + int ret = 0; + char *table = NULL; ++ struct dmraid_format *fmt = get_format(rs); + + if (T_GROUP(rs)) + return 1; + +- if (what == DM_REGISTER) ++ if (what == DM_REGISTER && ++ fmt->metadata_handler) + return register_devices(lc, rs); + + /* Call type handler */ +@@ -1053,8 +1055,10 @@ deactivate_superset(struct lib_context *lc, struct raid_set *rs, + enum dm_what what) + { + int ret = 1, status; ++ struct dmraid_format *fmt = get_format(rs); + +- if (what == DM_REGISTER) ++ if (what == DM_REGISTER && ++ fmt->metadata_handler) + return unregister_devices(lc, rs); + + status = dm_status(lc, rs); diff --git a/0006-move_pattern_file_to_var.patch b/0006-move_pattern_file_to_var.patch new file mode 100644 index 0000000..2420b8b --- /dev/null +++ b/0006-move_pattern_file_to_var.patch @@ -0,0 +1,14 @@ +diff --git a/logwatch/dmeventd.var_cache_logwatch b/logwatch/dmeventd +index 9b01676..9bc262d 100644 +--- a/logwatch/dmeventd.var_cache_logwatch ++++ b/logwatch/dmeventd +@@ -36,8 +36,7 @@ + # Set the location of the folder to store last time stamp + # (This is used to record the last log sent out so repeats + # are not mailed in error.) +-$syslogpattern_file = +- "/etc/logwatch/scripts/services/dmeventd_syslogpattern.txt"; ++$syslogpattern_file = "/var/cache/logwatch/dmeventd/syslogpattern.txt"; + + if (-e $syslogpattern_file) { + open(FD, "+<", $syslogpattern_file) or die $!; diff --git a/0007-libversion.patch b/0007-libversion.patch new file mode 100644 index 0000000..80466c8 --- /dev/null +++ b/0007-libversion.patch @@ -0,0 +1,12 @@ +diff --git a/lib/version.h.libversion b/lib/version.h +index c0e4e68..ca7369b 100644 +--- a/lib/version.h.libversion ++++ b/lib/version.h +@@ -1,6 +1,6 @@ + #ifndef DMRAID_LIB_VERSION + +-#define DMRAID_LIB_VERSION "1.0.0.rc16" ++#define DMRAID_LIB_VERSION "1" + + #define DMRAID_LIB_MAJOR_VERSION 1 + #define DMRAID_LIB_MINOR_VERSION 0 diff --git a/0008-libversion-display.patch b/0008-libversion-display.patch new file mode 100644 index 0000000..8aa07db --- /dev/null +++ b/0008-libversion-display.patch @@ -0,0 +1,43 @@ +diff --git a/lib/misc/lib_context.c b/lib/misc/lib_context.c +index f1995e1..00023e7 100644 +--- a/lib/misc/lib_context.c ++++ b/lib/misc/lib_context.c +@@ -138,25 +138,30 @@ init_paths(struct lib_context *lc, void *arg) + static void + init_version(struct lib_context *lc, void *arg) + { +- lc->version.text = DMRAID_LIB_VERSION; ++ static char version[80]; ++ ++ lc->version.text = version; + lc->version.date = DMRAID_LIB_DATE; + lc->version.v.major = DMRAID_LIB_MAJOR_VERSION; + lc->version.v.minor = DMRAID_LIB_MINOR_VERSION; + lc->version.v.sub_minor = DMRAID_LIB_SUBMINOR_VERSION; + lc->version.v.suffix = DMRAID_LIB_VERSION_SUFFIX; ++ snprintf(version, sizeof(version), "%d.%d.%d.%s", ++ lc->version.v.major, lc->version.v.minor, ++ lc->version.v.sub_minor, lc->version.v.suffix); + } + + /* Put init functions into an array because of the potentially growing list. */ + struct init_fn { + void (*func) (struct lib_context * lc, void *arg); + } init_fn[] = { +- { +- init_options}, { +- init_cmd}, { +- init_lists}, { +- init_mode}, { +- init_paths}, { +-init_version},}; ++ { init_options}, ++ { init_cmd}, ++ { init_lists}, ++ { init_mode}, ++ { init_paths}, ++ { init_version}, ++}; + + struct lib_context * + alloc_lib_context(char **argv) diff --git a/0009-bz635995-data_corruption_during_activation_volume_marked_for_rebuild.patch b/0009-bz635995-data_corruption_during_activation_volume_marked_for_rebuild.patch new file mode 100644 index 0000000..2a902e1 --- /dev/null +++ b/0009-bz635995-data_corruption_during_activation_volume_marked_for_rebuild.patch @@ -0,0 +1,88 @@ +--- a/lib/activate/activate.c ++++ a/lib/activate/activate.c +@@ -370,7 +370,10 @@ get_dm_devs(struct raid_set *rs, int valid) + return ret + get_rds(rs, valid); + } + +-/* Retrieve number of drive to rebuild from metadata format handler. */ ++/* Retrieve number of drive to rebuild from metadata format handler. ++ * ++ * Returns number of drive to rebuild or -1 if there is no drive to rebuild ++ */ + static int + get_rebuild_drive(struct lib_context *lc, struct raid_set *rs, + struct handler_info *info) +@@ -378,25 +381,23 @@ get_rebuild_drive(struct lib_context *lc, struct raid_set *rs, + /* Initialize drive to rebuild invalid. */ + info->data.i32 = -1; + +- if (lc->options[LC_REBUILD_SET].opt) { +- struct raid_dev *rd; ++ struct raid_dev *rd; + +- if (list_empty(&rs->devs)) +- LOG_ERR(lc, 0, "RAID set has no devices!"); ++ if (list_empty(&rs->devs)) ++ LOG_ERR(lc, 0, "RAID set has no devices!"); + +- rd = list_entry(rs->devs.next, typeof(*rd), devs); +- if (rd->fmt->metadata_handler) { +- if (!rd-> +- fmt->metadata_handler(lc, GET_REBUILD_DRIVE_NO, +- info, rs)) +- LOG_ERR(lc, 0, "Can't get rebuild drive #!"); +- } else +- LOG_ERR(lc, 0, +- "Can't rebuild w/o metadata_handler for %s", +- rd->fmt->name); +- } ++ rd = list_entry(rs->devs.next, typeof(*rd), devs); ++ if (rd->fmt->metadata_handler) { ++ if (!rd-> ++ fmt->metadata_handler(lc, GET_REBUILD_DRIVE_NO, ++ info, rs)) ++ LOG_ERR(lc, 0, "Can't get rebuild drive #!"); ++ } else ++ LOG_ERR(lc, 0, ++ "Can't rebuild w/o metadata_handler for %s", ++ rd->fmt->name); + +- return 1; ++ return info->data.i32; + } + + /* Return true if RAID set needs rebuilding. */ +@@ -458,7 +459,7 @@ dm_raid1(struct lib_context *lc, char **table, struct raid_set *rs) + */ + need_sync = rs_need_sync(rs); + rebuild_drive.data.i32 = -1; +- if (need_sync && !get_rebuild_drive(lc, rs, &rebuild_drive)) ++ if (need_sync && get_rebuild_drive(lc, rs, &rebuild_drive) < 0) + return 0; + + if (!_dm_raid1_bol(lc, table, rs, sectors, mirrors, need_sync)) +@@ -540,7 +541,7 @@ _dm_raid45_bol(struct lib_context *lc, char **table, struct raid_set *rs, + + /* Get drive as rebuild target. */ + rebuild_drive.data.i32 = -1; +- if (need_sync && !get_rebuild_drive(lc, rs, &rebuild_drive)) ++ if (need_sync && get_rebuild_drive(lc, rs, &rebuild_drive) < 0) + return 0; + + return p_fmt(lc, table, "0 %U %s core 2 %u %s %s 1 %u %u %d", +--- a/lib/format/ataraid/isw.c ++++ a/lib/format/ataraid/isw.c +@@ -1302,11 +1302,9 @@ isw_metadata_handler(struct lib_context *lc, enum handler_commands command, + case GET_REBUILD_DRIVE_NO: + rd = list_entry(rs->devs.next, typeof(*rd), devs); + isw = META(rd, isw); +- idx = rd_idx_by_name(isw, lc->options[LC_REBUILD_SET].arg.str); +- if (idx < 0) +- return 0; + +- dev = raiddev(isw, idx); ++ /* Get disk to rebuild index form metadata stored on first disk */ ++ dev = raiddev(isw, 0); + disk = isw->disk; + + if (info) { diff --git a/0011-bz626417_19-enabling_registration_degraded_volume.patch b/0011-bz626417_19-enabling_registration_degraded_volume.patch new file mode 100644 index 0000000..d6f3c92 --- /dev/null +++ b/0011-bz626417_19-enabling_registration_degraded_volume.patch @@ -0,0 +1,176 @@ +--- a/lib/events/libdmraid-events-isw.c ++++ a/lib/events/libdmraid-events-isw.c +@@ -308,6 +308,7 @@ static void __dso_dev_copy(struct dso_raid_dev *dst, struct dso_raid_dev *src) + strcpy(dst->name, src->name); + strcpy(dst->major_minor, src->major_minor); + dst->port = src->port; ++ dst->active = src->active; + } + + /* Copy a struct dso_raid_dev. */ +@@ -316,7 +317,7 @@ static void _dso_dev_copy(struct dso_raid_set *rs, struct dso_raid_dev *dst) + struct dso_raid_dev *src = rs->devs + rs->num_devs - 1; + + if (rs->num_devs < 0) +- syslog(LOG_ERR, "Programatic error: num_devs < o"); ++ syslog(LOG_ERR, "Programatic error: num_devs < 0"); + + if (src != dst) + __dso_dev_copy(dst, src); +@@ -595,7 +596,7 @@ static int _get_sysfs_major_minor(const char *d_name, char *major_minor, + * Retrieve device properties for @dev_name from sysfs + * (major:minor and port number) into @dev. + * +- * Return 0 for failure, 0 for success. ++ * Return 1 for failure, 0 for success. + */ + /* FIXME: straighten this by using libsysfs ? */ + static int _set_raid_dev_properties(const char *dev_name, +@@ -611,11 +612,11 @@ static int _set_raid_dev_properties(const char *dev_name, + + /* Get major:minor of this RAID device. */ + if (_get_sysfs_major_minor(dev_name, dev->major_minor, log_type)) +- return -ENOENT; ++ return 1; + + dir_entries = _scandir(sys_scsi_path, &dir_ent, _scandir_dot_filter); + if (dir_entries < 0) +- return -ENOENT; ++ return 1; + + /* Remember length of initial sysfs path. */ + strcpy(path, sys_scsi_path); +@@ -788,8 +789,8 @@ static struct dso_raid_set *_add_raid_dev(struct dso_raid_set *rs, + grown_raid_set->devs + grown_raid_set->num_devs - 1; + + if (_set_raid_dev_properties(d_name, dev, log_type)) { +- dm_free(grown_raid_set); +- return NULL; ++ /* Unable to get device properties - reset them to initial values */ ++ _dso_dev_init(dev); + } + } + +@@ -915,11 +916,9 @@ static struct dso_raid_set *_get_slave_devices(const char *rs_name, + + /* Append to RAID sets list of RAID devices. */ + rs = _add_raid_dev(rs, rs_name, d_name, log_type); +- if (!rs) +- break; ++ _check_raid_dev_active(d_name, rs->devs + rs->num_devs - 1); + + dm_free(dir_ent[i]); +- _check_raid_dev_active(d_name, rs->devs + rs->num_devs - 1); + } + + _destroy_dirent(dir_ent, i, dir_entries); +@@ -957,6 +956,7 @@ static struct dso_raid_set *_create_raid_set(const char *rs_name, + struct dm_task *dmt; + struct dm_info dev_info; + struct dirent *dent, **dir_ent; ++ struct dso_raid_dev *dev = NULL; + + /* Get device Info. */ + dmt = dm_task_create(DM_DEVICE_INFO); +@@ -1007,6 +1007,15 @@ static struct dso_raid_set *_create_raid_set(const char *rs_name, + free(dent); + } + ++ /* Check if all devices are avaliable */ ++ for (dev = rs->devs, i = 0; i < rs->num_devs; i++, dev++) { ++ /* If there is no major:minor number device is missing */ ++ if (*dev->major_minor == '\0') { ++ /* Replace failed device with last device in set; reduce num_devs. */ ++ _dso_dev_copy(rs, dev); ++ } ++ } ++ + return rs; + } + +@@ -1292,13 +1301,13 @@ static enum disk_state_type _process_raid45_event(struct dm_task *dmt, + + dev_status_str = args[num_devs + 1]; + +- /* Consistency check on num_devs and status chars. */ +- i = _get_num_devs_from_status(dev_status_str); +- if (i != num_devs) +- goto err; ++ /* check if is it rebuilding in progress */ ++ if (strchr(dev_status_str, 'i')) ++ return D_FAILURE_NOSYNC; + ++ syslog(LOG_INFO, "dev_status_str= %s", dev_status_str); + /* Check for bad raid45 devices. */ +- for (i = 0, p = dev_status_str; i < rs->num_devs; i++) { ++ for (i = 0, p = dev_status_str; i <= rs->num_devs; i++) { + /* Skip past any non active/dead identifiers. */ + dead = *(p++) == 'D'; + while (*p && *p != 'A' && *p != 'D') +@@ -1318,7 +1327,8 @@ static enum disk_state_type _process_raid45_event(struct dm_task *dmt, + /* Copy last device in set; reduce num_devs. */ + _dso_dev_copy(rs, dev); + ret = D_FAILURE_DISK; +- } ++ } else ++ ret = D_FAILURE_NOSYNC; + } + + return ret; +--- a/lib/register/dmreg.c ++++ a/lib/register/dmreg.c +@@ -374,6 +374,7 @@ static int _dm_raid_state(char *dev_name) + /* Skip past raid45 target chars. */ + if (status[i] != 'p' && + status[i] != 'i' && ++ status[i] != 'D' && + status[i] != 'A') + errors++; + } +@@ -422,17 +423,34 @@ static int _validate_dev_and_dso_names(char *dev_name, char *dso_name) + return (dso_name && _dm_valid_dso(dso_name)) ? 1 : 0; + } + ++/* ++ * Function removes unnecassary path to the DSO library ++ * (leaves only library name) ++ */ ++char * dso_lib_name_prepare(char * dso_path) ++{ ++ char *ptr = NULL; ++ char *lib_name = dso_path; ++ ++ while (ptr = strchr(lib_name, '/')) ++ lib_name = ptr + 1; ++ ++ return lib_name; ++} ++ + /* Register a device to be monitored for events. */ + /* FIXME: correct dev_name vs. _dm_raid_state() check of device. */ + int dm_register_device(char *dev_name, char *dso_name) + { +- int errors, pending, +- ret = _validate_dev_and_dso_names(dev_name, dso_name); ++ int errors, pending,ret; ++ char *dso_lib_name = dso_lib_name_prepare(dso_name); ++ ++ ret= _validate_dev_and_dso_names(dev_name, dso_lib_name); + + if (ret) + return ret; + +- if (dm_monitored_events(&pending, dev_name, dso_name)) { ++ if (dm_monitored_events(&pending, dev_name, dso_lib_name)) { + printf("ERROR: device \"%s\" %s\n", dev_name, + pending ? "has a registration event pending" : + "is already being monitored"); +@@ -452,7 +470,7 @@ int dm_register_device(char *dev_name, char *dso_name) + return 1; + } + +- if (_dm_set_events(EVENTS_REGISTER, dev_name, dso_name)) { ++ if (_dm_set_events(EVENTS_REGISTER, dev_name, dso_lib_name)) { + printf("ERROR: Unable to register a device mapper " + "event handler for device \"%s\"\n", dev_name); + return 1; diff --git a/0012-bz626417_20-cleanup_some_compilation_warning.patch b/0012-bz626417_20-cleanup_some_compilation_warning.patch new file mode 100644 index 0000000..228ecb1 --- /dev/null +++ b/0012-bz626417_20-cleanup_some_compilation_warning.patch @@ -0,0 +1,63 @@ +--- a/lib/events/libdmraid-events-isw.c ++++ a/lib/events/libdmraid-events-isw.c +@@ -101,13 +101,12 @@ enum rebuild_type { REBUILD_START, REBUILD_END }; + static const char *default_dmraid_events_lib = "libdmraid-events.so"; + static const char *sys_dm_dm = "dm-"; + static const char *sys_block_path = "/sys/block/"; +-static const char *sys_dm_path = "/sys/block/dm-"; ++//static const char *sys_dm_path = "/sys/block/dm-"; + static const char *sys_scsi_path = "/sys/class/scsi_device/"; + static const char *sys_slaves_dir = "/slaves"; + static const char *sys_scsi_dev_blk = "/device/block"; + static const char sys_scsi_dev_blk_delims[] = { '/', ':' }; + static const char *sys_dev_dir = "/dev"; +-static const char *syslog_ident = "libdmraid-events"; + + /* Logging. */ + enum log_type { LOG_NAMES, LOG_PORTS, LOG_OPEN_FAILURE, LOG_NONE }; +@@ -1534,7 +1533,7 @@ int register_device(const char *rs_name, const char *uuid, + /* FIXME: need to run first to get syslog() to work. */ + _check_sgpio(); + +- rs_name = basename(rs_name); ++ rs_name = basename((char *)rs_name); + + /* Check for double registration attempt. */ + pthread_mutex_lock(&_register_mutex); +@@ -1595,7 +1594,7 @@ int unregister_device(const char *rs_name, const char *uuid, + { + struct dso_raid_set *prev, *rs; + +- rs_name = basename(rs_name); ++ rs_name = basename((char *)rs_name); + + pthread_mutex_lock(&_register_mutex); + +--- a/lib/format/ataraid/isw.c ++++ a/lib/format/ataraid/isw.c +@@ -1250,7 +1250,7 @@ static int + isw_metadata_handler(struct lib_context *lc, enum handler_commands command, + struct handler_info *info, void *context) + { +- int idx, ret = 0; ++ int ret = 0; + struct raid_set *rs = context; + struct raid_dev *rd = list_entry(rs->devs.next, struct raid_dev, devs); + struct isw *isw, *new_isw; +--- a/lib/register/dmreg.c ++++ a/lib/register/dmreg.c +@@ -427,12 +427,12 @@ static int _validate_dev_and_dso_names(char *dev_name, char *dso_name) + * Function removes unnecassary path to the DSO library + * (leaves only library name) + */ +-char * dso_lib_name_prepare(char * dso_path) ++char *dso_lib_name_prepare(char *dso_path) + { + char *ptr = NULL; + char *lib_name = dso_path; + +- while (ptr = strchr(lib_name, '/')) ++ while ((ptr = strchr(lib_name, '/')) != NULL) + lib_name = ptr + 1; + + return lib_name; diff --git a/0013-bz626417_21-add_option_that_postpones_any_metadata_updates.patch b/0013-bz626417_21-add_option_that_postpones_any_metadata_updates.patch new file mode 100644 index 0000000..e899599 --- /dev/null +++ b/0013-bz626417_21-add_option_that_postpones_any_metadata_updates.patch @@ -0,0 +1,215 @@ +diff --git a/include/dmraid/lib_context.h b/include/dmraid/lib_context.h +index c2e16e6..c2b3c4d 100644 +--- a/include/dmraid/lib_context.h ++++ b/include/dmraid/lib_context.h +@@ -46,7 +46,8 @@ enum lc_options { + LC_CREATE, + LC_REBUILD_SET, + LC_REBUILD_DISK, +- LC_HOT_SPARE_SET, /* Add new options below this one ! */ ++ LC_HOT_SPARE_SET, ++ LC_DEFER_UPDATE, /* Add new options below this one ! */ + LC_OPTIONS_SIZE, /* Must be the last enumerator. */ + }; + +@@ -67,6 +68,7 @@ enum lc_options { + #define OPT_CREATE(lc) (lc_opt(lc, LC_CREATE)) + #define OPT_HOT_SPARE_SET(lc) (lc_opt(lc, LC_HOT_SPARE_SET)) + #define OPT_REBUILD_DISK(lc) (lc_opt(lc, LC_REBUILD_DISK)) ++#define OPT_DEFER_UPDATE(lc) (lc_opt(lc, LC_DEFER_UPDATE)) + + /* Return option value. */ + #define OPT_STR(lc, o) (lc->options[o].arg.str) +@@ -76,6 +78,7 @@ enum lc_options { + #define OPT_STR_PARTCHAR(lc) OPT_STR(lc, LC_PARTCHAR) + #define OPT_STR_HOT_SPARE_SET(lc) OPT_STR(lc, LC_HOT_SPARE_SET) + #define OPT_STR_REBUILD_DISK(lc) OPT_STR(lc, LC_REBUILD_DISK) ++#define OPT_STR_DEFER_UPDATE(lc) OPT_STR(lc, LC_DEFER_UPDATE) + + struct lib_version { + const char *text; +diff --git a/lib/metadata/reconfig.c b/lib/metadata/reconfig.c +index 73f7604..19768a9 100644 +--- a/lib/metadata/reconfig.c ++++ b/lib/metadata/reconfig.c +@@ -249,9 +249,9 @@ add_dev_to_raid(struct lib_context *lc, struct raid_set *rs, + strncat(lib_name, ".so", 3); + } else + goto err; +- ++ + /* Check registration */ +- if (!dm_monitored_events(&pending, sub_rs->name, lib_name)) { ++ if (!dm_monitored_events(&pending, sub_rs->name, lib_name) && !OPT_DEFER_UPDATE(lc)) { + /* If NOT registered update metadata to OK state. */ + if (check_rd->fmt->metadata_handler) + check_rd->fmt->metadata_handler(lc, UPDATE_REBUILD_STATE, NULL, (void *) rs); +diff --git a/man/dmraid.8 b/man/dmraid.8 +index b4de737..62a6091 100644 +--- a/man/dmraid.8 ++++ b/man/dmraid.8 +@@ -11,6 +11,7 @@ dmraid \- discover, configure and activate software (ATA)RAID + [-Z|--rm_partitions] + [--separator SEPARATOR] + [-t|--test] ++ [-u|--update_defer] + [RAID-set...] + + .B dmraid +@@ -38,6 +39,7 @@ dmraid \- discover, configure and activate software (ATA)RAID + {-R| --rebuild} + RAID-set + [device-path] ++ [-u|--update_defer] + + .B dmraid + {-x| --remove} +@@ -118,7 +120,14 @@ underlying the set, ie if sda is part of the set, remove sda1, sda2, etc. + This prevents applications from directly accessiong the disks bypassing dmraid. + RAID set names given on command line don't need to be fully specified + (eg, "dmraid -ay sil" would activate all discovered Silicon Image Medley +-RAID sets). ++RAID sets). Option ++.B -u ++defers metadata update in case of rebuild is triggered parallelly with activation. ++Awoids metadata update to "OK" state if volume is not registered to the event ++monitoring. ++Useful if volume is activating at early stage of booting process when registration ++to the event monitoring is impossible. ++ + + .TP + .I {-b|--block_devices} [device-path...] +@@ -208,7 +217,11 @@ Use CHAR as the separator between the device name and the partition number. + .I {-R| --rebuild} RAID-set [device-path] + Rebuild raid array after a drive has failed and a new drive is added. + For Intel chipset based systems, there are two methods in which a new drive +-is added to the system. ++is added to the system. Option ++.B -u ++defers metadata update in case of rebuild is triggered. ++Awoids metadata update to "OK" state if volume is not registered to the event ++monitoring. + + 1. Using OROM to identify a new drive + During system reboot, enter OROM and mark the new drive as the rebuild drive. +diff --git a/tools/commands.c b/tools/commands.c +index 4c71ae1..a3c77d2 100644 +--- a/tools/commands.c ++++ b/tools/commands.c +@@ -30,7 +30,7 @@ int add_dev_to_array(struct lib_context *lc, struct raid_set *rs, + /* + * Command line options. + */ +-static char const *short_opts = "a:hipP:" ++static char const *short_opts = "a:hipP:u" + #ifndef DMRAID_MINI + "bc::dDEf:glxM:" + #ifdef DMRAID_NATIVE_LOG +@@ -46,6 +46,7 @@ static struct option long_opts[] = { + {"format", required_argument, NULL, 'f'}, + {"partchar", required_argument, NULL, 'P'}, + {"no_partitions", no_argument, NULL, 'p'}, ++ {"update_defer", no_argument, NULL, 'u'}, + # ifndef DMRAID_MINI + {"block_devices", no_argument, NULL, 'b'}, + {"display_columns", optional_argument, NULL, 'c'}, +@@ -197,6 +198,15 @@ check_part_separator(struct lib_context *lc, int arg) + return lc_stralloc_opt(lc, LC_PARTCHAR, optarg) ? 1 : 0; + } + ++/* Defer any mtadata updates in case of volume activation ++ * at early stage of OS boot */ ++static int ++defer_update(struct lib_context *lc, int arg) ++{ ++ lc_inc_opt(lc, arg); ++ return 1; ++} ++ + /* Display help information */ + static int + help(struct lib_context *lc, int arg) +@@ -211,6 +221,7 @@ help(struct lib_context *lc, int arg) + "\t[-P|--partchar CHAR]\n" + "\t[-p|--no_partitions]\n" + "\t[-Z|--rm_partitions]\n" ++ "\t[-d|--update_defer]\n" + "\t[--separator SEPARATOR]\n" "\t[RAID-set...]\n", c); + log_print(lc, "%s\t{-h|--help}\n", c); + log_print(lc, "%s\t{-V/--version}\n", c); +@@ -219,11 +230,12 @@ help(struct lib_context *lc, int arg) + log_print(lc, + "* = [-d|--debug]... [-v|--verbose]... [-i|--ignorelocking]\n"); + log_print(lc, +- "%s\t{-a|--activate} {y|n|yes|no} *\n" ++ "%s\t{-a|--activate} {y|n|yes|no} \n" + "\t[-f|--format FORMAT[,FORMAT...]]\n" + "\t[-P|--partchar CHAR]\n" "\t[-p|--no_partitions]\n" + "\t[--separator SEPARATOR]\n" "\t[-t|--test]\n" +- "\t[-Z|--rm_partitions] [RAID-set...]\n", c); ++ "\t[-Z|--rm_partitions] [RAID-set...]\n" ++ "\t[-u|--update_defer]", c); + log_print(lc, + "%s\t{-b|--block_devices} *\n" + "\t[-c|--display_columns][FIELD[,FIELD...]]...\n" +@@ -255,7 +267,8 @@ help(struct lib_context *lc, int arg) + "\t[--str[i[de]] [0-9]...[kK][bB]]\n" + "\t{--disk[s] \"device-path[, device-path...\"}\n", c); + log_print(lc, "%s\t{-x|--remove RAID-set} \n"); +- log_print(lc, "%s\t{-R|--rebuild} RAID-set [drive_name]\n", c); ++ log_print(lc, "%s\t{-R|--rebuild} RAID-set [drive_name]\n" ++ "\t[-u|--update_defer]", c); + log_print(lc, "%s\t[{-f|--format FORMAT}]\n" + "\t{-S|--spare [RAID-set]} \n" + "\t{-M|--media \"device-path\"}\n", c); +@@ -285,6 +298,19 @@ static struct actions actions[] = { + 0, + }, + ++ /* Defer metadata update */ ++ {'u', ++ UNDEF, ++ UNDEF, ++ ACTIVATE | REBUILD ++#ifndef DMRAID_MINI ++ | DBG | TEST | VERBOSE ++#endif ++ , NO_ARGS, ++ defer_update, ++ LC_DEFER_UPDATE, ++ }, ++ + /* Format option. */ + {'f', + FORMAT, +@@ -726,7 +752,7 @@ handle_args(struct lib_context *lc, int argc, char ***argv) + if (o == 'C') { + *argv += optind - 1; + return 1; +- } else if (o == 'R' && argc == 4) { ++ } else if (o == 'R' && (argc == 4 || argc == 5)) { + if (*(*argv + optind)) + save_drive_name(lc, *(*argv + optind)); + } +@@ -744,7 +770,7 @@ handle_args(struct lib_context *lc, int argc, char ***argv) + ret = check_actions_arguments(lc); + + *argv += optind; +- if (argc == 4 && lc->options[LC_REBUILD_SET].opt) ++ if ((argc == 4 || argc == 5) && lc->options[LC_REBUILD_SET].opt) + *argv += 1; + + return ret; +@@ -871,7 +897,7 @@ struct prepost prepost[] = { + 0, + activate_or_deactivate_sets, + }, +- ++ + #ifndef DMRAID_MINI + /* Display block devices. */ + {BLOCK_DEVICES, +-- +1.7.0.4 + diff --git a/0014-dmraid-fix-build-to-honour-cflags-var.patch b/0014-dmraid-fix-build-to-honour-cflags-var.patch new file mode 100644 index 0000000..1d832b2 --- /dev/null +++ b/0014-dmraid-fix-build-to-honour-cflags-var.patch @@ -0,0 +1,17 @@ +diff -purN 1.0.0.rc16.orig/tools/Makefile.in 1.0.0.rc16.new/tools/Makefile.in +--- 1.0.0.rc16.orig/tools/Makefile.in 2009-09-16 10:55:23.000000000 +0200 ++++ 1.0.0.rc16.new/tools/Makefile.in 2015-07-21 14:51:42.004800788 +0200 +@@ -71,11 +71,11 @@ all: $(TARGETS) + .PHONY: install_dmraid_tools remove_dmraid_tools + + dmraid: $(OBJECTS) $(top_srcdir)/lib/libdmraid.a +- $(CC) -o $@ $(OBJECTS) $(LDFLAGS) -L$(top_srcdir)/lib \ ++ $(CC) -o $@ $(OBJECTS) $(CFLAGS) $(LDFLAGS) -L$(top_srcdir)/lib \ + -L$(DESTDIR)$(libdir) $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) + + dmevent_tool: $(top_srcdir)/lib/libdmraid.a +- $(CC) -o $@ $@.c $(INCLUDES) $(LDFLAGS) -L$(top_srcdir)/lib \ ++ $(CC) -o $@ $@.c $(INCLUDES) $(CFLAGS) $(LDFLAGS) -L$(top_srcdir)/lib \ + -L$(DESTDIR)$(libdir) $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) + + install_dmraid_tools: $(TARGETS) diff --git a/0015-dmraid-fix-errors-and-warnings-triggered-by-CFLAGS.patch b/0015-dmraid-fix-errors-and-warnings-triggered-by-CFLAGS.patch new file mode 100644 index 0000000..0071e75 --- /dev/null +++ b/0015-dmraid-fix-errors-and-warnings-triggered-by-CFLAGS.patch @@ -0,0 +1,65 @@ + lib/events/libdmraid-events-isw.c | 6 +++--- + lib/format/ataraid/jm.c | 4 ++-- + lib/metadata/metadata.c | 2 +- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/lib/events/libdmraid-events-isw.c b/lib/events/libdmraid-events-isw.c +index cc78b58..9d4e902 100644 +--- a/lib/events/libdmraid-events-isw.c ++++ b/lib/events/libdmraid-events-isw.c +@@ -838,13 +838,13 @@ static void _log_either(enum log_type log_type, + + sz = _log_all_devs(log_type, rs, NULL, 0); + if (!sz) { +- syslog(LOG_ERR, msg[0]); ++ syslog(LOG_ERR, "%s", msg[0]); + return; + } + + str = dm_malloc(++sz); + if (!str) { +- syslog(LOG_ERR, msg[1]); ++ syslog(LOG_ERR, "%s", msg[1]); + return; + } + +@@ -1076,7 +1076,7 @@ static enum disk_state_type _process_stripe_event(struct dm_task *dmt, + char *params) + { + int argc, i, num_devs, ret = D_INSYNC; +- char **args, *dev_status_str, *p; ++ char **args = NULL, *dev_status_str, *p; + const char *rs_name = dm_task_get_name(dmt); + struct dso_raid_set *rs = _find_raid_set(rs_name, NULL, 1); + struct dso_raid_dev *dev; +diff --git a/lib/format/ataraid/jm.c b/lib/format/ataraid/jm.c +index 431f0de..d1e5df7 100644 +--- a/lib/format/ataraid/jm.c ++++ b/lib/format/ataraid/jm.c +@@ -32,10 +32,10 @@ name(struct lib_context *lc, struct raid_dev *rd, unsigned int subset) + + /* Sanitize name, make sure it's null terminated */ + strncpy(buf, name, JM_NAME_LEN); +- while (i && isspace(buf[i])) { ++ i = strlen(buf); ++ while (i-- && isspace(buf[i])) { + name[i]='\0'; + buf[i]='\0'; +- --i; + } + + len = strlen(buf) + sizeof(HANDLER) + (jm->mode == JM_T_RAID01 ? 3 : 2); +diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c +index 4da6b64..14dc459 100644 +--- a/lib/metadata/metadata.c ++++ b/lib/metadata/metadata.c +@@ -1433,7 +1433,7 @@ create_raidset(struct lib_context *lc, struct raid_set_descr *rsd) + rd->sectors = 0; + list_add_tail(&rd->devs, &rs->devs); + n++; +- } while (end++ != '\0'); ++ } while (end++ != NULL); + + rs->total_devs = rs->found_devs = n; + rs_tmp = rs; + diff --git a/0016-dmraid-fix-destdir.patch b/0016-dmraid-fix-destdir.patch new file mode 100644 index 0000000..1e90742 --- /dev/null +++ b/0016-dmraid-fix-destdir.patch @@ -0,0 +1,60 @@ + dmraid.spec | 8 ++++---- + make.tmpl.in | 4 ---- + tools/Makefile.in | 4 ++-- + 3 files changed, 6 insertions(+), 10 deletions(-) + +diff --git a/dmraid.spec b/dmraid.spec +index 681964c..5c602dc 100644 +--- a/dmraid.spec ++++ b/dmraid.spec +@@ -59,12 +59,12 @@ Device failure reporting has to be activated manually by activating the + %setup -q -n dmraid/%{version} + + %build +-%configure --prefix=${RPM_BUILD_ROOT}/usr --sbindir=${RPM_BUILD_ROOT}/sbin --libdir=${RPM_BUILD_ROOT}/%{_libdir} --mandir=${RPM_BUILD_ROOT}/%{_mandir} --includedir=${RPM_BUILD_ROOT}/%{_includedir} --enable-debug --enable-libselinux --enable-libsepol --enable-static_link --enable-led --enable-intel_led +-make DESTDIR=$RPM_BUILD_ROOT ++%configure --enable-debug --enable-libselinux --enable-libsepol --enable-static_link --enable-led --enable-intel_led ++make + mv tools/dmraid tools/dmraid.static + make clean +-%configure --prefix=${RPM_BUILD_ROOT}/usr --sbindir=${RPM_BUILD_ROOT}/sbin --libdir=${RPM_BUILD_ROOT}/%{_libdir} --mandir=${RPM_BUILD_ROOT}/%{_mandir} --includedir=${RPM_BUILD_ROOT}/%{_includedir} --enable-debug --enable-libselinux --enable-libsepol --disable-static_linko --enable-led --enable-intel_led +-make DESTDIR=$RPM_BUILD_ROOT ++%configure --enable-debug --enable-libselinux --enable-libsepol --disable-static_linko --enable-led --enable-intel_led ++make + + %install + rm -rf $RPM_BUILD_ROOT +diff --git a/make.tmpl.in b/make.tmpl.in +index 48e5a99..2a26153 100644 +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -88,10 +88,6 @@ INCLUDES+=-I. -I$(top_srcdir)/include -I$(top_srcdir)/lib + + STRIP= + +-ifdef DESTDIR +- INCLUDES+=-I$(DESTDIR)/usr/include +-endif +- + DEPS=$(top_srcdir)/make.tmpl $(top_srcdir)/tools/VERSION Makefile + + OBJECTS=$(SOURCES:%.c=%.o) +diff --git a/tools/Makefile.in b/tools/Makefile.in +index 0342d2a..ea2c915 100644 +--- a/tools/Makefile.in ++++ b/tools/Makefile.in +@@ -72,11 +72,11 @@ all: $(TARGETS) + + dmraid: $(OBJECTS) $(top_srcdir)/lib/libdmraid.a + $(CC) -o $@ $(OBJECTS) $(CFLAGS) $(LDFLAGS) -L$(top_srcdir)/lib \ +- -L$(DESTDIR)$(libdir) $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) ++ $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) + + dmevent_tool: $(top_srcdir)/lib/libdmraid.a + $(CC) -o $@ $@.c $(INCLUDES) $(CFLAGS) $(LDFLAGS) -L$(top_srcdir)/lib \ +- -L$(DESTDIR)$(libdir) $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) ++ $(DMRAIDLIBS) $(DMEVENTTOOLLIBS) $(DMRAIDLIBS) $(LIBS) + + install_dmraid_tools: $(TARGETS) + @echo "Installing $(TARGETS) in $(sbindir)"; \ + diff --git a/0017-dmraid-fix-missing-destdir.patch b/0017-dmraid-fix-missing-destdir.patch new file mode 100644 index 0000000..439ea7b --- /dev/null +++ b/0017-dmraid-fix-missing-destdir.patch @@ -0,0 +1,34 @@ + make.tmpl.in | 14 ++++++-------- + 1 file changed, 6 insertions(+), 8 deletions(-) + +diff --git a/make.tmpl.in b/make.tmpl.in +index 2a26153..1f1d1e5 100644 +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -23,20 +23,18 @@ SOFLAG += @SOFLAG@ + # Setup directory variables + prefix = $(DESTDIR)@prefix@ + exec_prefix = $(DESTDIR)@exec_prefix@ +-bindir = @bindir@ ++bindir = $(DESTDIR)@bindir@ + ifeq ("@KLIBC@", "no") +- libdir = @libdir@ +- sbindir = @sbindir@ +- includedir = @includedir@ +- infodir = @infodir@ +- mandir = @mandir@ ++ libdir = $(DESTDIR)@libdir@ ++ sbindir = $(DESTDIR)@sbindir@ ++ includedir = $(DESTDIR)@includedir@ + else + libdir = $(DESTDIR)@KLIBC_LIB_DIR@ + sbindir = $(DESTDIR)@KLIBC_SBIN_DIR@ + includedir = $(DESTDIR)@KLIBC_INCLUDE_DIR@ +- infodir = @infodir@ +- mandir = @mandir@ + endif ++infodir = $(DESTDIR)@infodir@ ++mandir = $(DESTDIR)@mandir@ + + + # setup misc variables diff --git a/0018-dmraid-fix-so-flags.patch b/0018-dmraid-fix-so-flags.patch new file mode 100644 index 0000000..b80e323 --- /dev/null +++ b/0018-dmraid-fix-so-flags.patch @@ -0,0 +1,17 @@ + make.tmpl.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/make.tmpl.in b/make.tmpl.in +index 1f1d1e5..ef863ba 100644 +--- a/make.tmpl.in ++++ b/make.tmpl.in +@@ -129,7 +129,7 @@ $(TARGETS): $(OBJECTS) + %.so: $(OBJECTS) .export.sym + + %.so: $(OBJECTS) +- $(CC) -shared -Wl,-soname,$(notdir $@).$(DMRAID_LIB_VERSION) \ ++ $(CC) -shared $(CFLAGS) $(LDFLAGS) -Wl,-soname,$(notdir $@).$(DMRAID_LIB_VERSION) \ + -Wl,--version-script,.export.sym $(OBJECTS) -o $@ -ldevmapper-event + + $(LIB_STATIC): $(OBJECTS) + diff --git a/dmraid-1.0.0.rc16.tar.bz2 b/dmraid-1.0.0.rc16.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..a29f39314e7b9ca186d18d32a2356725b736b6d9 GIT binary patch literal 224170 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 z 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 z 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 1.02.02-2 +BuildRequires: device-mapper-event-devel +BuildRequires: libselinux-devel +BuildRequires: libsepol-devel git +Requires: device-mapper >= 1.02.02-2 +Requires: dmraid-events +Requires: kpartx +Requires(post): systemd + +Obsoletes: dmraid-libs < %{version}-%{release} +Provides: dmraid-libs = %{version}-%{release} +Source0: ftp://people.redhat.com/heinzm/sw/dmraid/src/%{name}-%{version}.tar.bz2 + + +Patch0: 0000-dmraid-1.0.0.rc16-test_devices.patch +Patch1: 0001-ddf1_lsi_persistent_name.patch +Patch2: 0002-pdc_raid10_failure.patch +Patch3: 0003-return_error_wo_disks.patch +Patch4: 0004-fix_sil_jbod.patch +Patch5: 0005-avoid_register.patch +Patch6: 0006-move_pattern_file_to_var.patch +Patch7: 0007-libversion.patch +Patch8: 0008-libversion-display.patch + +Patch9: 0009-bz635995-data_corruption_during_activation_volume_marked_for_rebuild.patch +Patch11: 0011-bz626417_19-enabling_registration_degraded_volume.patch +Patch12: 0012-bz626417_20-cleanup_some_compilation_warning.patch +Patch13: 0013-bz626417_21-add_option_that_postpones_any_metadata_updates.patch +Patch14: 0014-dmraid-fix-build-to-honour-cflags-var.patch +Patch15: 0015-dmraid-fix-errors-and-warnings-triggered-by-CFLAGS.patch +Patch16: 0016-dmraid-fix-destdir.patch +Patch17: 0017-dmraid-fix-missing-destdir.patch +Patch18: 0018-dmraid-fix-so-flags.patch + +%description +DMRAID supports RAID device discovery, RAID set activation, creation, +removal, rebuild and display of properties for ATARAID/DDF1 metadata on +Linux >= 2.4 using device-mapper. + +%package -n dmraid-devel +Summary: Development libraries and headers for dmraid. +Group: Development/Libraries +Requires: dmraid = %{version}-%{release}, sgpio + +%description -n dmraid-devel +dmraid-devel provides a library interface for RAID device discovery, +RAID set activation and display of properties for ATARAID volumes. + +%package -n dmraid-events +Summary: dmevent_tool (Device-mapper event tool) and DSO +Group: System Environment/Base +Requires: dmraid = %{version}-%{release}, sgpio +Requires: device-mapper-event + +%description -n dmraid-events +Provides a dmeventd DSO and the dmevent_tool to register devices with it +for device monitoring. All active RAID sets should be manually registered +with dmevent_tool. + +%package -n dmraid-events-logwatch +Summary: dmraid logwatch-based email reporting +Group: System Environment/Base +Requires: dmraid-events = %{version}-%{release}, logwatch, /etc/cron.d + +%description -n dmraid-events-logwatch +Provides device failure reporting via logwatch-based email reporting. +Device failure reporting has to be activated manually by activating the +/etc/cron.d/dmeventd-logwatch entry and by calling the dmevent_tool +(see manual page for examples) for any active RAID sets. + +%prep +%autosetup -n dmraid/%{version} -p1 + +%build +%define _libdir /%{_lib} + +%configure --prefix=/usr --sbindir=%{_sbindir} --libdir=%{_libdir} --mandir=%{_mandir} --includedir=%{_includedir} --enable-debug --disable-static_link --enable-led --enable-intel_led +make + +%install +rm -rf $RPM_BUILD_ROOT +install -m 755 -d $RPM_BUILD_ROOT{%{_libdir},/sbin,%{_sbindir},%{_bindir},%{_libdir},%{_includedir}/dmraid/,/var/lock/dmraid,/etc/cron.d/,/etc/logwatch/conf/services/,/etc/logwatch/scripts/services/,/var/cache/logwatch/dmeventd/} +make DESTDIR=$RPM_BUILD_ROOT install +ln -s dmraid $RPM_BUILD_ROOT/%{_sbindir}/dmraid.static + +# Provide convenience link from dmevent_tool +(cd $RPM_BUILD_ROOT/%{_sbindir} ; ln -f dmevent_tool dm_dso_reg_tool) +(cd $RPM_BUILD_ROOT/%{_mandir}/man8 ; ln -f dmevent_tool.8 dm_dso_reg_tool.8 ; ln -f dmraid.8 dmraid.static.8) + +install -m 644 include/dmraid/*.h $RPM_BUILD_ROOT/%{_includedir}/dmraid/ + +# Install logwatch config file and script for dmeventd +install -m 644 logwatch/dmeventd.conf $RPM_BUILD_ROOT/etc/logwatch/conf/services/dmeventd.conf +install -m 755 logwatch/dmeventd $RPM_BUILD_ROOT/etc/logwatch/scripts/services/dmeventd +install -m 644 logwatch/dmeventd_cronjob.txt $RPM_BUILD_ROOT/etc/cron.d/dmeventd-logwatch +install -m 0700 /dev/null $RPM_BUILD_ROOT/var/cache/logwatch/dmeventd/syslogpattern.txt + +install -d %{buildroot}%{_prefix}/lib/systemd +install -d %{buildroot}%{_unitdir} + +rm -f $RPM_BUILD_ROOT/%{_libdir}/libdmraid.a + +%clean +rm -rf $RPM_BUILD_ROOT + +%post +/sbin/ldconfig + +%postun +/sbin/ldconfig + +%files +%doc CHANGELOG CREDITS KNOWN_BUGS LICENSE LICENSE_GPL LICENSE_LGPL README TODO doc/dmraid_design.txt +/%{_mandir}/man8/dmraid* +%{_sbindir}/dmraid +%{_sbindir}/dmraid.static +%{_libdir}/libdmraid.so* +%{_libdir}/libdmraid-events-isw.so* +%ghost /var/lock/dmraid + +%files -n dmraid-devel +%dir %{_includedir}/dmraid +%{_includedir}/dmraid/* + +%files -n dmraid-events +/%{_mandir}/man8/dmevent_tool* +/%{_mandir}/man8/dm_dso_reg_tool* +%{_sbindir}/dmevent_tool +%{_sbindir}/dm_dso_reg_tool + +%files -n dmraid-events-logwatch +%config(noreplace) /etc/logwatch/* +%config(noreplace) /etc/cron.d/dmeventd-logwatch +%dir /var/cache/logwatch/dmeventd +%ghost /var/cache/logwatch/dmeventd/syslogpattern.txt + +%changelog +* Tue Dec 31 2019 openEuler Buildteam - 1.0.0.rc16-52 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:delete some unused files + +* Tue Oct 29 2019 zhanghaibo - 1.0.0.rc16-51 +- add ghost tag to /var/lock/dmraid + +* Wed Aug 28 2019 zhanghaibo - 1.0.0.rc16-50 +- Type:enhancemnet +- ID:NA +- SUG:NA +- DESC:Package init + +* Fri Dec 2 2011 Heinz Mauelshagen - 1.0.0.rc16-7 +- Avoid error message for sector sizes != 512 bytes + +* Mon May 31 2010 Heinz Mauelshagen - 1.0.0.rc16-6 +- remove superfluous libselinux/libsepol configure options + +* Tue Jan 12 2010 Heinz Mauelshagen - 1.0.0.rc16-5 +- Support DESTDIR in all Makefiles +- Fix handling spares in RAID names in vendor metadata + +* Tue Jan 12 2010 Heinz Mauelshagen - 1.0.0.rc16-4 +- Change dmraid DSO version to "1" and allow for display of + extended internal library version + +* Tue Jan 12 2010 Heinz Mauelshagen - 1.0.0.rc16-3 +- Add logwatch files and move pattern file to /var/cache +- Fix multiple options (eg. "-ccc") not recognized properly + +* Mon Nov 2 2009 Heinz Mauelshagen - 1.0.0.rc16-2 +- Fix manual path in specfile +- fix manual pages for dmraid.static and dm_dso_reg_tool +- ddf1 metadata format handler LSI persistent name fix +- fix pdc metadata format handler to report the correct number + of devices in a RAID10 subset +- move libraries to /lib* in order to avoid catch22 + with unmountable /usr + +* Wed Oct 09 2008 Heinz Mauelshagen - 1.0.0.rc16-1 +- Updated + +* Wed Sep 17 2008 Heinz Mauelshagen - 1.0.0.rc15 +- Added support for RAID set create/delete/rebuild and event handling + (Intel contributions) +- Resolves: rhbz#437169 rhbz#437173 rhbz#437177 rhbz#439088 + +* Fri Feb 08 2008 Ian Kent - 1.0.0.rc15 +- Bug 427550: dmraid segfaults on boot resulting in broken mirror + - patch to fix SEGV when requesting activation of invalid raid set. + the feature. + Related: rhbz#427550 + +* Wed Feb 06 2008 Peter Jones - 1.0.0.rc13-8 +- Revert fix for 381501, since the RHEL kernel doesn't currently support + the feature. + Related: rhbz#381501 +* Fri Jan 18 2008 Ian Kent - 1.0.0.rc13-7 +- fix incorrectly applied patch in spec file. +- Related: rhbz#236891 + +* Wed Nov 21 2007 Ian Kent - 1.0.0.rc13-6 +- Bug 381511: dmraid needs to generate UUIDs for lib device-mapper + - add patch to set UUID. + - add "DMRAID-" prefix to dmraid UUID string. +- Bug 381501: dmraid needs to activate device-mapper mirror resynchronization error handling +- Resolves: rhbz#381511 rhbz#381501 + +* Fri Nov 2 2007 Ian Kent - 1.0.0.rc13-5 +- Fix SEGV on "dmraid -r -E" (bz 236891) +- Resolves: rhbz#236891 + +* Mon Sep 10 2007 Heinz Mauelshagen - 1.0.0.rc13-4 +- Adjusted %dist to rebuild +- Resolves: #211012 + +* Mon Sep 10 2007 Heinz Mauelshagen - 1.0.0.rc13-4 +- Missed a bug with dm map names +- Resolves: #211012 + +* Tue Jun 26 2007 Heinz Mauelshagen - 1.0.0.rc13-3 +- Fix dmraid map names +- Resolves: #211012 +- Fix unaligned access messages + Resolves: #210361, #211150 +- Fix jmicron name parsing (bz#219058) + +* Wed Nov 8 2006 Peter Jones - 1.0.0.rc13-2 +- We didn't change the API or ABI, so don't change the version number + because it'll change the SONAME, which means we have to needlessly rebuild + other packages. + +* Wed Nov 08 2006 Heinz Mauelshagen - 1.0.0.rc14-1 +- asr.c: fixed Adaptec HostRAID DDF1 metadata discovery (bz#211016) +- ddf1_crc.c: added crc() routine to avoid linking to zlib alltogether, + because Ubuntu had problems with this +- dropped zlib build requirement + +* Thu Oct 26 2006 Heinz Mauelshagen - 1.0.0.rc14-bz211016-1 +- ddf1.c: get_size() fixed (bz#211016) +- ddf1_lib.c: ddf1_cr_off_maxpds_helper() fixed (bz#211016) + +* Wed Oct 11 2006 Heinz Mauelshagen - 1.0.0.rc13-1 +- metadata.c: fixed bug returning wrang unified RAID type (bz#210085) +- pdc.c: fixed magic number check + +* Sun Oct 01 2006 Jesse Keating - 1.0.0.rc12-7 +- rebuilt for unwind info generation, broken in gcc-4.1.1-21 + +* Fri Sep 22 2006 Heinz Mauelshagen - 1.0.0.rc12-1 +- sil.c: quorate() OBO fix +- activate.c: handler() OBO fix +- added SNIA DDF1 support +- added reload functionality to devmapper.c +- added log_zero_sectors() to various metadata format handlers +- sil.[ch]: added JBOD support + +* Fri Sep 1 2006 Peter Jones - 1.0.0.rc11-4 +- Require kpartx, so initscripts doesn't have to if you're not using dmraid + +* Thu Aug 17 2006 Jesse Keating - 1.0.0.rc11-3 +- Change Release to follow guidelines, and add dist tag. + +* Thu Aug 17 2006 Peter Jones - 1.0.0.rc11-FC6.3 +- No more excludearch for s390/s390x + +* Fri Jul 28 2006 Peter Jones - 1.0.0.rc11-FC6.2 +- Fix bounds checking on hpt37x error log +- Only build the .so, not the .a +- Fix asc.c duplication in makefile rule + +* Wed Jul 12 2006 Jesse Keating - 1.0.0.rc11-FC6.1.1 +- rebuild + +* Fri Jul 7 2006 Heinz Mauelshagen - 1.0.0.rc11-FC6.1 +- rebuilt for FC6 with dos partition discovery fix (#197573) + +* Tue May 16 2006 Heinz Mauelshagen - 1.0.0.rc11-FC6 +- rebuilt for FC6 with better tag + +* Tue May 16 2006 Heinz Mauelshagen - 1.0.0.rc11-FC5_7.2 +- rebuilt for FC5 + +* Tue May 16 2006 Heinz Mauelshagen - 1.0.0.rc11-FC5_7.1 +- jm.c: checksum() calculation +- misc.c: support "%d" in p_fmt and fix segfault with wrong format identifier +- nv.c: size fix in setup_rd() +- activate.c: + o striped devices could end on non-chunk boundaries + o calc_region_size() calculated too small sizes causing large + dirty logs in memory +- isw.c: set raid5 type to left asymmetric +- toollib.c: fixed 'No RAID...' message +- support selection of RAID5 allocation algorithm in metadata format handlers +- build + +* Mon Mar 27 2006 Milan Broz - 1.0.0.rc10-FC5_6.2 +- fixed /var/lock/dmraid in specfile (#168195) + +* Fri Feb 17 2006 Heinz Mauelshagen - 1.0.0.rc10-FC5_6 +- add doc/dmraid_design.txt to %doc (#181885) +- add --enable-libselinux --enable-libsepol to configure +- rebuilt + +* Fri Feb 10 2006 Jesse Keating - 1.0.0.rc9-FC5_5.2 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 1.0.0.rc9-FC5_5.1 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Sun Jan 22 2006 Peter Jones 1.0.0.rc9-FC5_5 +- Add selinux build deps +- Don't set owner during make install + +* Fri Dec 9 2005 Jesse Keating 1.0.0.rc9-FC5_4.1 +- rebuilt + +* Sun Dec 3 2005 Peter Jones 1.0.0.rc9-FC5_4 +- rebuild for device-mapper-1.02.02-2 + +* Fri Dec 2 2005 Peter Jones 1.0.0.rc9-FC5_3 +- rebuild for device-mapper-1.02.02-1 + +* Thu Nov 10 2005 Peter Jones 1.0.0.rc9-FC5_2 +- update to 1.0.0.rc9 +- make "make install" do the right thing with the DSO +- eliminate duplicate definitions in the headers +- export more symbols in the DSO +- add api calls to retrieve dm tables +- fix DESTDIR for 'make install' +- add api calls to identify degraded devices +- remove several arch excludes + +* Sat Oct 15 2005 Florian La Roche +- add -lselinux -lsepol for new device-mapper deps + +* Fri May 20 2005 Heinz Mauelshagen 1.0.0.rc8-FC4_2 +- specfile change to build static and dynamic binray into one package +- rebuilt + +* Thu May 19 2005 Heinz Mauelshagen 1.0.0.rc8-FC4_1 +- nv.c: fixed stripe size +- sil.c: avoid incarnation_no in name creation, because the Windows + driver changes it every time +- added --ignorelocking option to avoid taking out locks in early boot + where no read/write access to /var is given + +* Wed Mar 16 2005 Elliot Lee +- rebuilt + +* Tue Mar 15 2005 Heinz Mauelshagen 1.0.0.rc6.1-4_FC4 +- VIA metadata format handler +- added RAID10 to lsi metadata format handler +- "dmraid -rD": file device size into {devicename}_{formatname}.size +- "dmraid -tay": pretty print multi-line tables ala "dmsetup table" +- "dmraid -l": display supported RAID levels + manual update +- _sil_read() used LOG_NOTICE rather than LOG_INFO in order to + avoid messages about valid metadata areas being displayed + during "dmraid -vay". +- isw, sil filed metadata offset on "-r -D" in sectors rather than in bytes. +- isw needed dev_sort() to sort RAID devices in sets correctly. +- pdc metadata format handler name creation. Lead to + wrong RAID set grouping logic in some configurations. +- pdc RAID1 size calculation fixed (rc6.1) +- dos.c: partition table code fixes by Paul Moore +- _free_dev_pointers(): fixed potential OOB error +- hpt37x_check: deal with raid_disks = 1 in mirror sets +- pdc_check: status & 0x80 doesn't always show a failed device; + removed that check for now. Status definitions needed. +- sil addition of RAID sets to global list of sets +- sil spare device memory leak +- group_set(): removal of RAID set in case of error +- hpt37x: handle total_secs > device size +- allow -p with -f +- enhanced error message by checking target type against list of + registered target types + +* Fri Jan 21 2005 Alasdair Kergon 1.0.0.rc5f-2 +- Rebuild to pick up new libdevmapper. + +* Fri Nov 26 2004 Heinz Mauelshagen 1.0.0.rc5f +- specfile cleanup + +* Tue Aug 20 2004 Heinz Mauelshagen 1.0.0-rc4-pre1 +- Removed make flag after fixing make.tmpl.in + +* Tue Aug 18 2004 Heinz Mauelshagen 1.0.0-rc3 +- Added make flag to prevent make 3.80 from looping infinitely + +* Thu Jun 17 2004 Heinz Mauelshagen 1.0.0-pre1 +- Created +