From e315b421151336f4447ebc0aead2328dd130fc03 Mon Sep 17 00:00:00 2001 From: Ralf Corsepius Date: Thu, 9 Nov 2006 11:19:05 +0000 Subject: New (Merge BFIN patches). --- .../gcc-core-4.2-20061031-rtems4.8-20061109.diff | 902 +++++ .../patches/newlib-1.14.0-rtems4.8-20061109.diff | 4235 ++++++++++++++++++++ 2 files changed, 5137 insertions(+) create mode 100644 contrib/crossrpms/patches/gcc-core-4.2-20061031-rtems4.8-20061109.diff create mode 100644 contrib/crossrpms/patches/newlib-1.14.0-rtems4.8-20061109.diff (limited to 'contrib') diff --git a/contrib/crossrpms/patches/gcc-core-4.2-20061031-rtems4.8-20061109.diff b/contrib/crossrpms/patches/gcc-core-4.2-20061031-rtems4.8-20061109.diff new file mode 100644 index 0000000000..dd3c3e4206 --- /dev/null +++ b/contrib/crossrpms/patches/gcc-core-4.2-20061031-rtems4.8-20061109.diff @@ -0,0 +1,902 @@ +diff -uNr gcc-4.2-20061031.orig/gcc/builtins.def gcc-4.2-20061031/gcc/builtins.def +--- gcc-4.2-20061031.orig/gcc/builtins.def 2006-10-09 18:27:14.000000000 +0200 ++++ gcc-4.2-20061031/gcc/builtins.def 2006-11-09 10:14:51.000000000 +0100 +@@ -255,9 +255,9 @@ + DEF_LIB_BUILTIN (BUILT_IN_FREXP, "frexp", BT_FN_DOUBLE_DOUBLE_INTPTR, ATTR_MATHFN_FPROUNDING_STORE) + DEF_C99_C90RES_BUILTIN (BUILT_IN_FREXPF, "frexpf", BT_FN_FLOAT_FLOAT_INTPTR, ATTR_MATHFN_FPROUNDING_STORE) + DEF_C99_C90RES_BUILTIN (BUILT_IN_FREXPL, "frexpl", BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR, ATTR_MATHFN_FPROUNDING_STORE) +-DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMA, "gamma", BT_FN_DOUBLE_DOUBLE, ATTR_MATHFN_FPROUNDING_ERRNO) +-DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMAF, "gammaf", BT_FN_FLOAT_FLOAT, ATTR_MATHFN_FPROUNDING_ERRNO) +-DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMAL, "gammal", BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_MATHFN_FPROUNDING_ERRNO) ++DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMA, "gamma", BT_FN_DOUBLE_DOUBLE, ATTR_MATHFN_FPROUNDING_STORE) ++DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMAF, "gammaf", BT_FN_FLOAT_FLOAT, ATTR_MATHFN_FPROUNDING_STORE) ++DEF_EXT_LIB_BUILTIN (BUILT_IN_GAMMAL, "gammal", BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_MATHFN_FPROUNDING_STORE) + DEF_GCC_BUILTIN (BUILT_IN_HUGE_VAL, "huge_val", BT_FN_DOUBLE, ATTR_CONST_NOTHROW_LIST) + DEF_GCC_BUILTIN (BUILT_IN_HUGE_VALF, "huge_valf", BT_FN_FLOAT, ATTR_CONST_NOTHROW_LIST) + DEF_GCC_BUILTIN (BUILT_IN_HUGE_VALL, "huge_vall", BT_FN_LONGDOUBLE, ATTR_CONST_NOTHROW_LIST) +@@ -291,9 +291,9 @@ + DEF_GCC_BUILTIN (BUILT_IN_LFLOOR, "lfloor", BT_FN_LONG_DOUBLE, ATTR_MATHFN_FPROUNDING) + DEF_GCC_BUILTIN (BUILT_IN_LFLOORF, "lfloorf", BT_FN_LONG_FLOAT, ATTR_MATHFN_FPROUNDING) + DEF_GCC_BUILTIN (BUILT_IN_LFLOORL, "lfloorl", BT_FN_LONG_LONGDOUBLE, ATTR_MATHFN_FPROUNDING) +-DEF_C99_BUILTIN (BUILT_IN_LGAMMA, "lgamma", BT_FN_DOUBLE_DOUBLE, ATTR_MATHFN_FPROUNDING_ERRNO) +-DEF_C99_BUILTIN (BUILT_IN_LGAMMAF, "lgammaf", BT_FN_FLOAT_FLOAT, ATTR_MATHFN_FPROUNDING_ERRNO) +-DEF_C99_BUILTIN (BUILT_IN_LGAMMAL, "lgammal", BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_MATHFN_FPROUNDING_ERRNO) ++DEF_C99_BUILTIN (BUILT_IN_LGAMMA, "lgamma", BT_FN_DOUBLE_DOUBLE, ATTR_MATHFN_FPROUNDING_STORE) ++DEF_C99_BUILTIN (BUILT_IN_LGAMMAF, "lgammaf", BT_FN_FLOAT_FLOAT, ATTR_MATHFN_FPROUNDING_STORE) ++DEF_C99_BUILTIN (BUILT_IN_LGAMMAL, "lgammal", BT_FN_LONGDOUBLE_LONGDOUBLE, ATTR_MATHFN_FPROUNDING_STORE) + DEF_GCC_BUILTIN (BUILT_IN_LLCEIL, "llceil", BT_FN_LONGLONG_DOUBLE, ATTR_MATHFN_FPROUNDING) + DEF_GCC_BUILTIN (BUILT_IN_LLCEILF, "llceilf", BT_FN_LONGLONG_FLOAT, ATTR_MATHFN_FPROUNDING) + DEF_GCC_BUILTIN (BUILT_IN_LLCEILL, "llceill", BT_FN_LONGLONG_LONGDOUBLE, ATTR_MATHFN_FPROUNDING) +diff -uNr gcc-4.2-20061031.orig/gcc/ChangeLog gcc-4.2-20061031/gcc/ChangeLog +--- gcc-4.2-20061031.orig/gcc/ChangeLog 2006-10-30 09:03:50.000000000 +0100 ++++ gcc-4.2-20061031/gcc/ChangeLog 2006-11-09 10:14:08.000000000 +0100 +@@ -1,3 +1,109 @@ ++2006-11-08 Brooks Moses ++ ++ * doc/invoke.texi: Minor formatting fixes in option lists. ++ ++2006-11-08 Eric Christopher ++ ++ Backport from mainline: ++ * config.gcc: Add x86_64-darwin host support. ++ * config.host: Ditto. ++ * config/i386/darwin64.h: New file. ++ * config/i386/t-darwin64: Ditto. ++ ++2006-11-08 Janis Johnson ++ ++ * gcc/doc/sourcebuild.texi (Test Directives): Add output-exists ++ and output-exists-not. ++ ++2006-11-07 Richard Guenther ++ ++ PR tree-optimization/29610 ++ * tree-cfgcleanup.c (cleanup_control_flow): Honor return value ++ of tree_purge_dead_eh_edges as it may free dominators. ++ ++ * g++.dg/other/pr29610.C: New testcase. ++ ++2006-11-07 Jie Zhang ++ ++ * gcc.c (process_command): Treat -b as normal switch if its argument ++ has no dash. ++ ++2006-11-06 Vladimir Prus ++ ++ Backport from mainline: ++ * config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do not ++ set inhibit_libc. ++ * config/arm/t-strongarm-elf: Likewise. ++ * config/arm/t-pe: Likewise. ++ * config/arm/t-arm-elf: Likewise. ++ * config/arm/t-xscale-elf: Likewise. ++ * config/arm/t-arm-coff: Likewise. ++ * config/arm/t-xscale-coff: Likewise. ++ * config/arm/t-wince-pe: Likewise. ++ ++2006-11-06 Richard Guenther ++ ++ Backport from mainline: ++ 2006-10-21 Richard Guenther ++ ++ PR target/19116 ++ * config/i386/i386.c (override_options): Do not set MASK_IEEE_FP ++ if flag_unsafe_math_optimizations is specified. We have ++ flag_finite_math_only for that. ++ * config/i386/i386.md (sqrtxf2): Do not require TARGET_IEEE_FP ++ or flag_unsafe_math_optimizations. ++ ++ PR middle-end/28796 ++ * simplify-rtx.c (simplify_const_relational_operation): ++ Do not constant-fold ORDERED and UNORDERED for ++ flag_unsafe_math_optimizations but only we do not need to ++ honor NaNs for the given mode. ++ ++2006-11-05 Jakub Jelinek ++ ++ PR middle-end/29695 ++ * fold-const.c (fold_ternary): Fix A < 0 ? : 0 ++ simplification. ++ ++2006-11-02 Brooks Moses ++ ++ * doc/invoke.texi: Fix mfp-trap-mode typo. ++ ++2006-11-02 Eric Botcazou ++ ++ * doc/install.texi (sparc-sun-solaris2*): Update GMP/MPFR build ++ instructions. ++ (sparc64-sun-solaris2*): Likewise. ++ ++2006-11-02 Uros Bizjak ++ ++ PR target/29377 ++ * config/h8300/h8300.c (h8300_emit_stack_adjustment): Change "size" ++ argument to HOST_WIDE_INT. Update function prototype. ++ (round_frame_size): Change return type to HOST_WIDE_INT. Change ++ "size" argument to HOST_WIDE_INT. Update function prototype. ++ ++2006-11-01 Chris Johns ++ ++ PR bootstrap/28400 ++ * Makefile.in (install-driver): Use exeext when installing ++ $target-gcc-$version. ++ ++2006-11-01 Andrew Haley ++ ++ * fold-const.c (fold_unary): Don't fold (t1)(t2) to (t1) if this ++ is a Java program. ++ ++2006-11-01 Kaveh R. Ghazi ++ ++ * builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE. ++ ++2006-10-31 Eric Botcazou ++ ++ PR target/24071 ++ * gthr-posix.h (__gthread_active_p): New implementation on Solaris. ++ * gthr-posix95.h (__gthread_active_p): Likewise. ++ + 2006-10-30 Jakub Jelinek + + PR tree-optimization/29637 +@@ -136,13 +242,13 @@ + (init_alias_heapvars): Initialize nonlocal_for_type and + nonlocal_all. + (delete_alias_heapvars): Free nonlocal_for_type and null out +- nonlocal_all. ++ nonlocal_all. + + 2006-10-19 Eric Botcazou + + * fold-const.c (add_double): Rename to add_double_with_sign. + Add 'unsigned_p' parameter and take it into account for the overflow. +- (mul_double): Rename to mul_double_with_sign. ++ (mul_double): Rename to mul_double_with_sign. + Add 'unsigned_p' parameter and take it into account for the overflow. + (fold_div_compare): Call add_double_with_sign instead of add_double + and mul_double_with_sign instead of mul_double, passing them the +@@ -199,17 +305,17 @@ + 2006-10-17 Wolfgang Gellerich + + * config/s390/contraints.md: New file. +- * config/s390/s390-protos.h (s390_mem_constraint, +- s390_O_constraint_str, s390_N_constraint_str, ++ * config/s390/s390-protos.h (s390_mem_constraint, ++ s390_O_constraint_str, s390_N_constraint_str, + s390_float_const_zero_p): Function prototypes added. +- * config/s390/s390.c (s390_extra_constraint_str, +- s390_const_double_ok_for_constraint_p, ++ * config/s390/s390.c (s390_extra_constraint_str, ++ s390_const_double_ok_for_constraint_p, + s390_const_ok_for_constraint_p): Functions removed. + (s390_mem_constraint, s390_O_constraint_str, s390_N_constraint_str, + s390_float_const_zero_p): New functions. + * config/s390/s390.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_CONSTRAINT_P, +- CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR, +- EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT, CONSTRAINT_LEN): ++ CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR, ++ EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT, CONSTRAINT_LEN): + Macro definitions removed. + (s390_const_ok_for_constraint_p, s390_const_double_ok_for_constraint_p, + s390_extra_constraint_str): Functions removed. +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/rtems-elf.h gcc-4.2-20061031/gcc/config/arm/rtems-elf.h +--- gcc-4.2-20061031.orig/gcc/config/arm/rtems-elf.h 2005-11-21 23:56:34.000000000 +0100 ++++ gcc-4.2-20061031/gcc/config/arm/rtems-elf.h 2006-11-09 10:15:12.000000000 +0100 +@@ -27,6 +27,7 @@ + #define TARGET_OS_CPP_BUILTINS() \ + do { \ + builtin_define ("__rtems__"); \ ++ builtin_define ("__USE_INIT_FINI__"); \ + builtin_assert ("system=rtems"); \ + } while (0) + +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-arm-coff gcc-4.2-20061031/gcc/config/arm/t-arm-coff +--- gcc-4.2-20061031.orig/gcc/config/arm/t-arm-coff 2003-07-02 01:26:43.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-arm-coff 2006-11-09 10:15:12.000000000 +0100 +@@ -31,4 +31,4 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-arm-elf gcc-4.2-20061031/gcc/config/arm/t-arm-elf +--- gcc-4.2-20061031.orig/gcc/config/arm/t-arm-elf 2005-12-21 18:48:07.000000000 +0100 ++++ gcc-4.2-20061031/gcc/config/arm/t-arm-elf 2006-11-09 10:15:12.000000000 +0100 +@@ -67,7 +67,7 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline + + # Assemble startup files. + $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-pe gcc-4.2-20061031/gcc/config/arm/t-pe +--- gcc-4.2-20061031.orig/gcc/config/arm/t-pe 2004-05-15 14:41:35.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-pe 2006-11-09 10:15:12.000000000 +0100 +@@ -29,4 +29,4 @@ + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc ++TARGET_LIBGCC2_CFLAGS = +\ No newline at end of file +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-strongarm-elf gcc-4.2-20061031/gcc/config/arm/t-strongarm-elf +--- gcc-4.2-20061031.orig/gcc/config/arm/t-strongarm-elf 2001-09-14 12:19:30.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-strongarm-elf 2006-11-09 10:15:12.000000000 +0100 +@@ -32,7 +32,7 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline + + # Assemble startup files. + $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-strongarm-pe gcc-4.2-20061031/gcc/config/arm/t-strongarm-pe +--- gcc-4.2-20061031.orig/gcc/config/arm/t-strongarm-pe 2003-07-02 01:26:43.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-strongarm-pe 2006-11-09 10:15:12.000000000 +0100 +@@ -35,4 +35,4 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-wince-pe gcc-4.2-20061031/gcc/config/arm/t-wince-pe +--- gcc-4.2-20061031.orig/gcc/config/arm/t-wince-pe 2004-05-15 14:41:35.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-wince-pe 2006-11-09 10:15:12.000000000 +0100 +@@ -34,4 +34,4 @@ + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc ++TARGET_LIBGCC2_CFLAGS = +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-xscale-coff gcc-4.2-20061031/gcc/config/arm/t-xscale-coff +--- gcc-4.2-20061031.orig/gcc/config/arm/t-xscale-coff 2004-05-15 14:41:35.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-xscale-coff 2006-11-09 10:15:12.000000000 +0100 +@@ -42,4 +42,4 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline +diff -uNr gcc-4.2-20061031.orig/gcc/config/arm/t-xscale-elf gcc-4.2-20061031/gcc/config/arm/t-xscale-elf +--- gcc-4.2-20061031.orig/gcc/config/arm/t-xscale-elf 2004-05-15 14:41:35.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/arm/t-xscale-elf 2006-11-09 10:15:12.000000000 +0100 +@@ -54,7 +54,7 @@ + # Currently there is a bug somewhere in GCC's alias analysis + # or scheduling code that is breaking _fpmul_parts in fp-bit.c. + # Disabling function inlining is a workaround for this problem. +-TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline ++TARGET_LIBGCC2_CFLAGS = -fno-inline + + # Assemble startup files. + $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) +diff -uNr gcc-4.2-20061031.orig/gcc/config/bfin/bfin.h gcc-4.2-20061031/gcc/config/bfin/bfin.h +--- gcc-4.2-20061031.orig/gcc/config/bfin/bfin.h 2006-10-05 12:46:41.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/bfin/bfin.h 2006-11-09 10:15:12.000000000 +0100 +@@ -39,8 +39,8 @@ + #define TARGET_CPU_CPP_BUILTINS() \ + do \ + { \ +- builtin_define ("bfin"); \ +- builtin_define ("BFIN"); \ ++ builtin_define_std ("bfin"); \ ++ builtin_define_std ("BFIN"); \ + builtin_define ("__ADSPBLACKFIN__"); \ + if (TARGET_FDPIC) \ + builtin_define ("__BFIN_FDPIC__"); \ +diff -uNr gcc-4.2-20061031.orig/gcc/config/bfin/rtems.h gcc-4.2-20061031/gcc/config/bfin/rtems.h +--- gcc-4.2-20061031.orig/gcc/config/bfin/rtems.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.2-20061031/gcc/config/bfin/rtems.h 2006-11-09 10:15:12.000000000 +0100 +@@ -0,0 +1,29 @@ ++/* Definitions for rtems targeting a bfin ++ Copyright (C) 2006 Free Software Foundation, Inc. ++ Contributed by Ralf Corsépius (ralf.corsepius@rtems.org). ++ ++This file is part of GCC. ++ ++GCC is free software; you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 2, or (at your option) ++any later version. ++ ++GCC is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with GCC; see the file COPYING. If not, write to ++the Free Software Foundation, 51 Franklin Street, Fifth Floor, ++Boston, MA 02110-1301, USA. */ ++ ++/* Target OS preprocessor built-ins. */ ++#define TARGET_OS_CPP_BUILTINS() \ ++ do \ ++ { \ ++ builtin_define ("__rtems__"); \ ++ builtin_assert ("system=rtems"); \ ++ } \ ++ while (0) +diff -uNr gcc-4.2-20061031.orig/gcc/config/c4x/rtems.h gcc-4.2-20061031/gcc/config/c4x/rtems.h +--- gcc-4.2-20061031.orig/gcc/config/c4x/rtems.h 2005-06-25 03:22:41.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/c4x/rtems.h 2006-11-09 10:15:12.000000000 +0100 +@@ -24,6 +24,5 @@ + #define TARGET_OS_CPP_BUILTINS() \ + do { \ + builtin_define ("__rtems__"); \ +- builtin_define ("__USE_INIT_FINI__"); \ + builtin_assert ("system=rtems"); \ + } while (0) +diff -uNr gcc-4.2-20061031.orig/gcc/config/h8300/h8300.c gcc-4.2-20061031/gcc/config/h8300/h8300.c +--- gcc-4.2-20061031.orig/gcc/config/h8300/h8300.c 2006-08-28 15:51:04.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/h8300/h8300.c 2006-11-09 10:15:12.000000000 +0100 +@@ -83,8 +83,8 @@ + static int h8300_saveall_function_p (tree); + static int h8300_monitor_function_p (tree); + static int h8300_os_task_function_p (tree); +-static void h8300_emit_stack_adjustment (int, unsigned int); +-static int round_frame_size (int); ++static void h8300_emit_stack_adjustment (int, HOST_WIDE_INT); ++static HOST_WIDE_INT round_frame_size (HOST_WIDE_INT); + static unsigned int compute_saved_regs (void); + static void push (int); + static void pop (int); +@@ -510,7 +510,7 @@ + SIZE to adjust the stack pointer. */ + + static void +-h8300_emit_stack_adjustment (int sign, unsigned int size) ++h8300_emit_stack_adjustment (int sign, HOST_WIDE_INT size) + { + /* If the frame size is 0, we don't have anything to do. */ + if (size == 0) +@@ -546,8 +546,8 @@ + + /* Round up frame size SIZE. */ + +-static int +-round_frame_size (int size) ++static HOST_WIDE_INT ++round_frame_size (HOST_WIDE_INT size) + { + return ((size + STACK_BOUNDARY / BITS_PER_UNIT - 1) + & -STACK_BOUNDARY / BITS_PER_UNIT); +diff -uNr gcc-4.2-20061031.orig/gcc/config/i386/darwin64.h gcc-4.2-20061031/gcc/config/i386/darwin64.h +--- gcc-4.2-20061031.orig/gcc/config/i386/darwin64.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.2-20061031/gcc/config/i386/darwin64.h 2006-11-09 10:15:11.000000000 +0100 +@@ -0,0 +1,35 @@ ++/* Target definitions for x86_64 running Darwin. ++ Copyright (C) 2006 Free Software Foundation, Inc. ++ Contributed by Apple Computer Inc. ++ ++This file is part of GCC. ++ ++GCC is free software; you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 2, or (at your option) ++any later version. ++ ++GCC is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with GCC; see the file COPYING. If not, write to ++the Free Software Foundation, 51 Franklin Street, Fifth Floor, ++Boston, MA 02110-1301, USA. */ ++ ++#undef TARGET_VERSION ++#define TARGET_VERSION fprintf (stderr, " (x86_64 Darwin)"); ++ ++#undef DARWIN_ARCH_SPEC ++#define DARWIN_ARCH_SPEC "%{m32:i386;:x86_64}" ++ ++#undef DARWIN_SUBARCH_SPEC ++#define DARWIN_SUBARCH_SPEC DARWIN_ARCH_SPEC ++ ++#undef SUBTARGET_EXTRA_SPECS ++#define SUBTARGET_EXTRA_SPECS \ ++ { "darwin_arch", DARWIN_ARCH_SPEC }, \ ++ { "darwin_crt2", "" }, \ ++ { "darwin_subarch", DARWIN_SUBARCH_SPEC }, +diff -uNr gcc-4.2-20061031.orig/gcc/config/i386/i386.c gcc-4.2-20061031/gcc/config/i386/i386.c +--- gcc-4.2-20061031.orig/gcc/config/i386/i386.c 2006-10-16 21:53:29.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/i386/i386.c 2006-11-09 10:15:11.000000000 +0100 +@@ -1847,7 +1847,7 @@ + + /* If we're doing fast math, we don't care about comparison order + wrt NaNs. This lets us use a shorter comparison sequence. */ +- if (flag_unsafe_math_optimizations) ++ if (flag_finite_math_only) + target_flags &= ~MASK_IEEE_FP; + + /* If the architecture always has an FPU, turn off NO_FANCY_MATH_387, +diff -uNr gcc-4.2-20061031.orig/gcc/config/i386/i386.md gcc-4.2-20061031/gcc/config/i386/i386.md +--- gcc-4.2-20061031.orig/gcc/config/i386/i386.md 2006-09-07 19:53:18.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/i386/i386.md 2006-11-09 10:15:11.000000000 +0100 +@@ -15560,8 +15560,7 @@ + (define_insn "sqrtxf2" + [(set (match_operand:XF 0 "register_operand" "=f") + (sqrt:XF (match_operand:XF 1 "register_operand" "0")))] +- "TARGET_USE_FANCY_MATH_387 +- && (TARGET_IEEE_FP || flag_unsafe_math_optimizations) " ++ "TARGET_USE_FANCY_MATH_387" + "fsqrt" + [(set_attr "type" "fpspc") + (set_attr "mode" "XF") +diff -uNr gcc-4.2-20061031.orig/gcc/config/i386/t-darwin64 gcc-4.2-20061031/gcc/config/i386/t-darwin64 +--- gcc-4.2-20061031.orig/gcc/config/i386/t-darwin64 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.2-20061031/gcc/config/i386/t-darwin64 2006-11-09 10:15:11.000000000 +0100 +@@ -0,0 +1,3 @@ ++SHLIB_VERPFX = $(srcdir)/config/i386/darwin-libgcc ++LIB2_SIDITI_CONV_FUNCS=yes ++LIB2FUNCS_EXTRA = $(srcdir)/config/darwin-64.c +diff -uNr gcc-4.2-20061031.orig/gcc/config/mips/elf.h gcc-4.2-20061031/gcc/config/mips/elf.h +--- gcc-4.2-20061031.orig/gcc/config/mips/elf.h 2006-10-08 09:35:47.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config/mips/elf.h 2006-11-09 10:15:12.000000000 +0100 +@@ -49,6 +49,4 @@ + #undef ENDFILE_SPEC + #define ENDFILE_SPEC "crtend%O%s crtn%O%s" + +-#define NO_IMPLICIT_EXTERN_C 1 +- + #define HANDLE_PRAGMA_PACK_PUSH_POP 1 +diff -uNr gcc-4.2-20061031.orig/gcc/config.gcc gcc-4.2-20061031/gcc/config.gcc +--- gcc-4.2-20061031.orig/gcc/config.gcc 2006-10-16 01:05:31.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config.gcc 2006-11-09 10:15:11.000000000 +0100 +@@ -786,6 +786,11 @@ + tmake_file=bfin/t-bfin-elf + use_collect2=no + ;; ++bfin*-rtems*) ++ tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h" ++ tmake_file="bfin/t-bfin-elf t-rtems" ++ use_collect2=no ++ ;; + bfin*-*) + tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" + tmake_file=bfin/t-bfin +@@ -1013,6 +1018,12 @@ + with_arch=${with_arch:-nocona} + with_cpu=${with_cpu:-generic} + ;; ++x86_64-*-darwin*) ++ with_arch=${with_arch:-nocona} ++ with_cpu=${with_cpu:-generic} ++ tmake_file="t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin" ++ tm_file="${tm_file} ${cpu_type}/darwin64.h" ++ ;; + i[34567]86-*-elf*) + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h" + tmake_file="i386/t-i386elf t-svr4" +diff -uNr gcc-4.2-20061031.orig/gcc/config.host gcc-4.2-20061031/gcc/config.host +--- gcc-4.2-20061031.orig/gcc/config.host 2006-09-23 01:50:51.000000000 +0200 ++++ gcc-4.2-20061031/gcc/config.host 2006-11-09 10:15:11.000000000 +0100 +@@ -177,7 +177,7 @@ + i[34567]86-*-interix3*) + host_xmake_file="${host_xmake_file} x-interix" + ;; +- i[34567]86-*-darwin*) ++ i[34567]86-*-darwin* | x86_64-*-darwin*) + out_host_hook_obj="${out_host_hook_obj} host-i386-darwin.o" + host_xmake_file="${host_xmake_file} i386/x-darwin" + ;; +diff -uNr gcc-4.2-20061031.orig/gcc/DATESTAMP gcc-4.2-20061031/gcc/DATESTAMP +--- gcc-4.2-20061031.orig/gcc/DATESTAMP 2006-10-31 01:17:29.000000000 +0100 ++++ gcc-4.2-20061031/gcc/DATESTAMP 2006-11-09 10:14:07.000000000 +0100 +@@ -1 +1 @@ +-20061031 ++20061109 +diff -uNr gcc-4.2-20061031.orig/gcc/doc/install.texi gcc-4.2-20061031/gcc/doc/install.texi +--- gcc-4.2-20061031.orig/gcc/doc/install.texi 2006-10-20 01:39:45.000000000 +0200 ++++ gcc-4.2-20061031/gcc/doc/install.texi 2006-11-09 10:14:07.000000000 +0100 +@@ -3848,12 +3848,15 @@ + To work around this problem, compile with @option{-gstabs+} instead of + plain @option{-g}. + +-When configuring the GNU Multiple Precision Library (GMP) version 4.1.x +-on a Solaris 7 or later system, the canonical target triplet must be +-specified as the @command{build} parameter on the configure line: ++When configuring the GNU Multiple Precision Library (GMP) or the MPFR ++library on a Solaris 7 or later system, the canonical target triplet ++must be specified as the @command{build} parameter on the configure ++line. This triplet can be obtained by invoking ./config.guess in ++the toplevel source directory of GCC (and not that of GMP or MPFR). ++For example on a Solaris 7 system: + + @smallexample +-./configure --build=sparc-sun-solaris2.7 --prefix=xxx --enable-mpfr ++ % ./configure --build=sparc-sun-solaris2.7 --prefix=xxx + @end smallexample + + @html +@@ -3933,15 +3936,24 @@ + @end html + @heading @anchor{sparc64-x-solaris2}sparc64-*-solaris2* + ++When configuring the GNU Multiple Precision Library (GMP) or the ++MPFR library, the canonical target triplet must be specified as ++the @command{build} parameter on the configure line. For example ++on a Solaris 7 system: ++ ++@smallexample ++ % ./configure --build=sparc64-sun-solaris2.7 --prefix=xxx ++@end smallexample ++ + The following compiler flags must be specified in the configure + step in order to bootstrap this target with the Sun compiler: + + @smallexample +- % CC="cc -xildoff -xarch=v9" @var{srcdir}/configure [@var{options}] [@var{target}] ++ % CC="cc -xarch=v9 -xildoff" @var{srcdir}/configure [@var{options}] [@var{target}] + @end smallexample + +-@option{-xildoff} turns off the incremental linker, and @option{-xarch=v9} +-specifies the SPARC-V9 architecture to the Sun linker and assembler. ++@option{-xarch=v9} specifies the SPARC-V9 architecture to the Sun toolchain ++and @option{-xildoff} turns off the incremental linker. + + @html +
+diff -uNr gcc-4.2-20061031.orig/gcc/doc/invoke.texi gcc-4.2-20061031/gcc/doc/invoke.texi +--- gcc-4.2-20061031.orig/gcc/doc/invoke.texi 2006-10-19 11:19:21.000000000 +0200 ++++ gcc-4.2-20061031/gcc/doc/invoke.texi 2006-11-09 10:14:07.000000000 +0100 +@@ -197,8 +197,7 @@ + @item Objective-C and Objective-C++ Language Options + @xref{Objective-C and Objective-C++ Dialect Options,,Options Controlling + Objective-C and Objective-C++ Dialects}. +-@gccoptlist{ +--fconstant-string-class=@var{class-name} @gol ++@gccoptlist{-fconstant-string-class=@var{class-name} @gol + -fgnu-runtime -fnext-runtime @gol + -fno-nil-receivers @gol + -fobjc-call-cxx-cdtors @gol +@@ -216,8 +215,8 @@ + @item Language Independent Options + @xref{Language Independent Options,,Options to Control Diagnostic Messages Formatting}. + @gccoptlist{-fmessage-length=@var{n} @gol +--fdiagnostics-show-location=@r{[}once@r{|}every-line@r{]}} @gol +--fdiagnostics-show-option ++-fdiagnostics-show-location=@r{[}once@r{|}every-line@r{]} @gol ++-fdiagnostics-show-option} + + @item Warning Options + @xref{Warning Options,,Options to Request or Suppress Warnings}. +@@ -8352,7 +8351,7 @@ + as well. + + @item su +-Like @samp{su}, but the instructions are marked to be safe for software ++Like @samp{u}, but the instructions are marked to be safe for software + completion (see Alpha architecture manual for details). + + @item sui +diff -uNr gcc-4.2-20061031.orig/gcc/doc/sourcebuild.texi gcc-4.2-20061031/gcc/doc/sourcebuild.texi +--- gcc-4.2-20061031.orig/gcc/doc/sourcebuild.texi 2006-10-16 21:51:55.000000000 +0200 ++++ gcc-4.2-20061031/gcc/doc/sourcebuild.texi 2006-11-09 10:14:07.000000000 +0100 +@@ -1134,6 +1134,12 @@ + Passes if @var{regex} does not match demangled text in the dump file with + suffix @var{suffix}. + ++@item output-exists [@{ target/xfail @var{selector} @}] ++Passes if compiler output file exists. ++ ++@item output-exists-not [@{ target/xfail @var{selector} @}] ++Passes if compiler output file does not exist. ++ + @item run-gcov @var{sourcefile} + Check line counts in @command{gcov} tests. + +diff -uNr gcc-4.2-20061031.orig/gcc/fold-const.c gcc-4.2-20061031/gcc/fold-const.c +--- gcc-4.2-20061031.orig/gcc/fold-const.c 2006-10-19 22:22:04.000000000 +0200 ++++ gcc-4.2-20061031/gcc/fold-const.c 2006-11-09 10:14:08.000000000 +0100 +@@ -7397,6 +7397,8 @@ + - the final type is a pointer type and the initial type not + - the initial type is a pointer to an array and the final type + not. */ ++ /* Java pointer type conversions generate checks in some ++ cases, so we explicitly disallow this optimization. */ + if (! inside_float && ! inter_float && ! final_float + && ! inside_vec && ! inter_vec && ! final_vec + && (inter_prec >= inside_prec || inter_prec >= final_prec) +@@ -7412,7 +7414,9 @@ + && final_ptr == inside_ptr + && ! (inside_ptr + && TREE_CODE (TREE_TYPE (inside_type)) == ARRAY_TYPE +- && TREE_CODE (TREE_TYPE (type)) != ARRAY_TYPE)) ++ && TREE_CODE (TREE_TYPE (type)) != ARRAY_TYPE) ++ && ! ((strcmp (lang_hooks.name, "GNU Java") == 0) ++ && final_ptr)) + return fold_build1 (code, type, TREE_OPERAND (op0, 0)); + } + +@@ -11184,13 +11188,76 @@ + + /* A < 0 ? : 0 is simply (A & ). */ + if (TREE_CODE (arg0) == LT_EXPR +- && integer_zerop (TREE_OPERAND (arg0, 1)) +- && integer_zerop (op2) +- && (tem = sign_bit_p (TREE_OPERAND (arg0, 0), arg1))) +- return fold_convert (type, +- fold_build2 (BIT_AND_EXPR, +- TREE_TYPE (tem), tem, +- fold_convert (TREE_TYPE (tem), arg1))); ++ && integer_zerop (TREE_OPERAND (arg0, 1)) ++ && integer_zerop (op2) ++ && (tem = sign_bit_p (TREE_OPERAND (arg0, 0), arg1))) ++ { ++ /* sign_bit_p only checks ARG1 bits within A's precision. ++ If has wider type than A, bits outside ++ of A's precision in need to be checked. ++ If they are all 0, this optimization needs to be done ++ in unsigned A's type, if they are all 1 in signed A's type, ++ otherwise this can't be done. */ ++ if (TYPE_PRECISION (TREE_TYPE (tem)) ++ < TYPE_PRECISION (TREE_TYPE (arg1)) ++ && TYPE_PRECISION (TREE_TYPE (tem)) ++ < TYPE_PRECISION (type)) ++ { ++ unsigned HOST_WIDE_INT mask_lo; ++ HOST_WIDE_INT mask_hi; ++ int inner_width, outer_width; ++ tree tem_type; ++ ++ inner_width = TYPE_PRECISION (TREE_TYPE (tem)); ++ outer_width = TYPE_PRECISION (TREE_TYPE (arg1)); ++ if (outer_width > TYPE_PRECISION (type)) ++ outer_width = TYPE_PRECISION (type); ++ ++ if (outer_width > HOST_BITS_PER_WIDE_INT) ++ { ++ mask_hi = ((unsigned HOST_WIDE_INT) -1 ++ >> (2 * HOST_BITS_PER_WIDE_INT - outer_width)); ++ mask_lo = -1; ++ } ++ else ++ { ++ mask_hi = 0; ++ mask_lo = ((unsigned HOST_WIDE_INT) -1 ++ >> (HOST_BITS_PER_WIDE_INT - outer_width)); ++ } ++ if (inner_width > HOST_BITS_PER_WIDE_INT) ++ { ++ mask_hi &= ~((unsigned HOST_WIDE_INT) -1 ++ >> (HOST_BITS_PER_WIDE_INT - inner_width)); ++ mask_lo = 0; ++ } ++ else ++ mask_lo &= ~((unsigned HOST_WIDE_INT) -1 ++ >> (HOST_BITS_PER_WIDE_INT - inner_width)); ++ ++ if ((TREE_INT_CST_HIGH (arg1) & mask_hi) == mask_hi ++ && (TREE_INT_CST_LOW (arg1) & mask_lo) == mask_lo) ++ { ++ tem_type = lang_hooks.types.signed_type (TREE_TYPE (tem)); ++ tem = fold_convert (tem_type, tem); ++ } ++ else if ((TREE_INT_CST_HIGH (arg1) & mask_hi) == 0 ++ && (TREE_INT_CST_LOW (arg1) & mask_lo) == 0) ++ { ++ tem_type = lang_hooks.types.unsigned_type (TREE_TYPE (tem)); ++ tem = fold_convert (tem_type, tem); ++ } ++ else ++ tem = NULL; ++ } ++ ++ if (tem) ++ return fold_convert (type, ++ fold_build2 (BIT_AND_EXPR, ++ TREE_TYPE (tem), tem, ++ fold_convert (TREE_TYPE (tem), ++ arg1))); ++ } + + /* (A >> N) & 1 ? (1 << N) : 0 is simply A & (1 << N). A & 1 was + already handled above. */ +diff -uNr gcc-4.2-20061031.orig/gcc/gcc.c gcc-4.2-20061031/gcc/gcc.c +--- gcc-4.2-20061031.orig/gcc/gcc.c 2006-07-18 18:07:44.000000000 +0200 ++++ gcc-4.2-20061031/gcc/gcc.c 2006-11-09 10:14:08.000000000 +0100 +@@ -3744,7 +3744,10 @@ + switch (c) + { + case 'b': +- if (NULL == strchr(argv[i] + 2, '-')) break; ++ if (NULL == strchr(argv[i] + 2, '-')) ++ goto normal_switch; ++ ++ /* Fall through. */ + case 'V': + fatal ("'-%c' must come at the start of the command line", c); + break; +diff -uNr gcc-4.2-20061031.orig/gcc/gthr-posix95.h gcc-4.2-20061031/gcc/gthr-posix95.h +--- gcc-4.2-20061031.orig/gcc/gthr-posix95.h 2006-01-26 23:00:28.000000000 +0100 ++++ gcc-4.2-20061031/gcc/gthr-posix95.h 2006-11-09 10:15:12.000000000 +0100 +@@ -109,6 +109,59 @@ + + #if SUPPORTS_WEAK && GTHREAD_USE_WEAK + ++/* On Solaris 2.6 up to 9, the libc exposes a POSIX threads interface even if ++ -pthreads is not specified. The functions are dummies and most return an ++ error value. However pthread_once returns 0 without invoking the routine ++ it is passed so we cannot pretend that the interface is active if -pthreads ++ is not specified. On Solaris 2.5.1, the interface is not exposed at all so ++ we need to play the usual game with weak symbols. On Solaris 10 and up, a ++ working interface is always exposed. */ ++ ++#if defined(__sun) && defined(__svr4__) ++ ++static volatile int __gthread_active = -1; ++ ++static void ++__gthread_trigger (void) ++{ ++ __gthread_active = 1; ++} ++ ++static inline int ++__gthread_active_p (void) ++{ ++ static pthread_mutex_t __gthread_active_mutex = PTHREAD_MUTEX_INITIALIZER; ++ static pthread_once_t __gthread_active_once = PTHREAD_ONCE_INIT; ++ ++ /* Avoid reading __gthread_active twice on the main code path. */ ++ int __gthread_active_latest_value = __gthread_active; ++ ++ /* This test is not protected to avoid taking a lock on the main code ++ path so every update of __gthread_active in a threaded program must ++ be atomic with regard to the result of the test. */ ++ if (__builtin_expect (__gthread_active_latest_value < 0, 0)) ++ { ++ if (__gthrw_(pthread_once)) ++ { ++ /* If this really is a threaded program, then we must ensure that ++ __gthread_active has been set to 1 before exiting this block. */ ++ __gthrw_(pthread_mutex_lock) (&__gthread_active_mutex); ++ __gthrw_(pthread_once) (&__gthread_active_once, __gthread_trigger); ++ __gthrw_(pthread_mutex_unlock) (&__gthread_active_mutex); ++ } ++ ++ /* Make sure we'll never enter this block again. */ ++ if (__gthread_active < 0) ++ __gthread_active = 0; ++ ++ __gthread_active_latest_value = __gthread_active; ++ } ++ ++ return __gthread_active_latest_value != 0; ++} ++ ++#else /* not Solaris */ ++ + static inline int + __gthread_active_p (void) + { +@@ -117,6 +170,8 @@ + return __gthread_active_ptr != 0; + } + ++#endif /* Solaris */ ++ + #else /* not SUPPORTS_WEAK */ + + static inline int +diff -uNr gcc-4.2-20061031.orig/gcc/gthr-posix.h gcc-4.2-20061031/gcc/gthr-posix.h +--- gcc-4.2-20061031.orig/gcc/gthr-posix.h 2006-03-02 03:47:40.000000000 +0100 ++++ gcc-4.2-20061031/gcc/gthr-posix.h 2006-11-09 10:15:11.000000000 +0100 +@@ -142,6 +142,59 @@ + + #if SUPPORTS_WEAK && GTHREAD_USE_WEAK + ++/* On Solaris 2.6 up to 9, the libc exposes a POSIX threads interface even if ++ -pthreads is not specified. The functions are dummies and most return an ++ error value. However pthread_once returns 0 without invoking the routine ++ it is passed so we cannot pretend that the interface is active if -pthreads ++ is not specified. On Solaris 2.5.1, the interface is not exposed at all so ++ we need to play the usual game with weak symbols. On Solaris 10 and up, a ++ working interface is always exposed. */ ++ ++#if defined(__sun) && defined(__svr4__) ++ ++static volatile int __gthread_active = -1; ++ ++static void ++__gthread_trigger (void) ++{ ++ __gthread_active = 1; ++} ++ ++static inline int ++__gthread_active_p (void) ++{ ++ static pthread_mutex_t __gthread_active_mutex = PTHREAD_MUTEX_INITIALIZER; ++ static pthread_once_t __gthread_active_once = PTHREAD_ONCE_INIT; ++ ++ /* Avoid reading __gthread_active twice on the main code path. */ ++ int __gthread_active_latest_value = __gthread_active; ++ ++ /* This test is not protected to avoid taking a lock on the main code ++ path so every update of __gthread_active in a threaded program must ++ be atomic with regard to the result of the test. */ ++ if (__builtin_expect (__gthread_active_latest_value < 0, 0)) ++ { ++ if (__gthrw_(pthread_once)) ++ { ++ /* If this really is a threaded program, then we must ensure that ++ __gthread_active has been set to 1 before exiting this block. */ ++ __gthrw_(pthread_mutex_lock) (&__gthread_active_mutex); ++ __gthrw_(pthread_once) (&__gthread_active_once, __gthread_trigger); ++ __gthrw_(pthread_mutex_unlock) (&__gthread_active_mutex); ++ } ++ ++ /* Make sure we'll never enter this block again. */ ++ if (__gthread_active < 0) ++ __gthread_active = 0; ++ ++ __gthread_active_latest_value = __gthread_active; ++ } ++ ++ return __gthread_active_latest_value != 0; ++} ++ ++#else /* not Solaris */ ++ + static inline int + __gthread_active_p (void) + { +@@ -150,6 +203,8 @@ + return __gthread_active_ptr != 0; + } + ++#endif /* Solaris */ ++ + #else /* not SUPPORTS_WEAK */ + + static inline int +diff -uNr gcc-4.2-20061031.orig/gcc/Makefile.in gcc-4.2-20061031/gcc/Makefile.in +--- gcc-4.2-20061031.orig/gcc/Makefile.in 2006-10-14 03:25:39.000000000 +0200 ++++ gcc-4.2-20061031/gcc/Makefile.in 2006-11-09 10:15:11.000000000 +0100 +@@ -3729,9 +3729,9 @@ + install-driver: installdirs xgcc$(exeext) + -rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext) + -$(INSTALL_PROGRAM) xgcc$(exeext) $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext) +- -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version) ++ -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext) + -( cd $(DESTDIR)$(bindir) && \ +- $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version) ) ++ $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version)$(exeext) ) + -if [ -f gcc-cross$(exeext) ] ; then \ + if [ -d $(DESTDIR)$(gcc_tooldir)/bin/. ] ; then \ + rm -f $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \ +diff -uNr gcc-4.2-20061031.orig/gcc/simplify-rtx.c gcc-4.2-20061031/gcc/simplify-rtx.c +--- gcc-4.2-20061031.orig/gcc/simplify-rtx.c 2006-09-05 19:41:22.000000000 +0200 ++++ gcc-4.2-20061031/gcc/simplify-rtx.c 2006-11-09 10:15:11.000000000 +0100 +@@ -3747,10 +3747,10 @@ + return simplify_const_relational_operation (signed_condition (code), + mode, tem, const0_rtx); + +- if (flag_unsafe_math_optimizations && code == ORDERED) ++ if (! HONOR_NANS (mode) && code == ORDERED) + return const_true_rtx; + +- if (flag_unsafe_math_optimizations && code == UNORDERED) ++ if (! HONOR_NANS (mode) && code == UNORDERED) + return const0_rtx; + + /* For modes without NaNs, if the two operands are equal, we know the +diff -uNr gcc-4.2-20061031.orig/gcc/tree-cfgcleanup.c gcc-4.2-20061031/gcc/tree-cfgcleanup.c +--- gcc-4.2-20061031.orig/gcc/tree-cfgcleanup.c 2006-07-17 15:14:38.000000000 +0200 ++++ gcc-4.2-20061031/gcc/tree-cfgcleanup.c 2006-11-09 10:15:11.000000000 +0100 +@@ -160,7 +160,7 @@ + + /* If the last statement of the block could throw and now cannot, + we need to prune cfg. */ +- tree_purge_dead_eh_edges (bb); ++ retval |= tree_purge_dead_eh_edges (bb); + + if (bsi_end_p (bsi)) + continue; diff --git a/contrib/crossrpms/patches/newlib-1.14.0-rtems4.8-20061109.diff b/contrib/crossrpms/patches/newlib-1.14.0-rtems4.8-20061109.diff new file mode 100644 index 0000000000..5d89c160f7 --- /dev/null +++ b/contrib/crossrpms/patches/newlib-1.14.0-rtems4.8-20061109.diff @@ -0,0 +1,4235 @@ +diff -uNr newlib-1.14.0/newlib/configure.host newlib-1.14.0-rtems4.8-20061109/newlib/configure.host +--- newlib-1.14.0/newlib/configure.host 2005-12-12 12:25:07.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/configure.host 2006-11-09 07:50:30.000000000 +0100 +@@ -96,6 +96,9 @@ + avr*) + newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mcall-prologues" + ;; ++ bfin) ++ machine_dir=bfin ++ ;; + cris | crisv32) + machine_dir=cris + ;; +@@ -190,8 +193,8 @@ + machine_dir=mn10300 + ;; + mt*) +- machine_dir=mt +- ;; ++ machine_dir=mt ++ ;; + or16) + ;; + or32) +@@ -326,6 +329,9 @@ + have_crt0="no" + fi + ;; ++ bfin-*-*) ++ sys_dir= ++ ;; + crx*) + sys_dir= + ;; +@@ -526,6 +532,9 @@ + avr*) + newlib_cflags="${newlib_cflags} -DNO_EXEC -DSMALL_MEMORY -DMISSING_SYSCALL_NAMES" + ;; ++ bfin*) ++ syscall_dir=syscalls ++ ;; + cris-*-* | crisv32-*-*) + default_newlib_io_long_long="yes" + newlib_cflags="${newlib_cflags} -DHAVE_RENAME -DHAVE_GETTIMEOFDAY -D_USE_WRITE -DCOMPACT_CTYPE" +diff -uNr newlib-1.14.0/newlib/libc/include/machine/ieeefp.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/machine/ieeefp.h +--- newlib-1.14.0/newlib/libc/include/machine/ieeefp.h 2005-12-13 23:57:31.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/machine/ieeefp.h 2006-11-09 07:50:30.000000000 +0100 +@@ -278,6 +278,10 @@ + #define __IEEE_LITTLE_ENDIAN + #endif + ++#ifdef __BFIN__ ++#define __IEEE_LITTLE_ENDIAN ++#endif ++ + #ifndef __IEEE_BIG_ENDIAN + #ifndef __IEEE_LITTLE_ENDIAN + #error Endianess not declared!! +diff -uNr newlib-1.14.0/newlib/libc/include/machine/setjmp.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/machine/setjmp.h +--- newlib-1.14.0/newlib/libc/include/machine/setjmp.h 2005-12-13 23:57:31.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/machine/setjmp.h 2006-11-09 07:50:30.000000000 +0100 +@@ -21,9 +21,13 @@ + #define _JBLEN 13 + #endif + ++#ifdef __BFIN__ ++#define _JBLEN 40 ++#endif ++ + /* necv70 was 9 as well. */ + +-#ifdef __mc68000__ ++#if defined(__m68k__) || defined(__mc68000__) + /* + * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6, + * fp2-fp7 for 68881. +@@ -204,6 +208,11 @@ + #define _JBLEN 16 + #endif + ++#ifdef __SPU__ ++#define _JBLEN 50 ++#define _JBTYPE __attribute__ (( __vector_size__ (16) )) int ++#endif ++ + #ifdef __xstormy16__ + /* 4 GPRs plus SP plus PC. */ + #define _JBLEN 8 +@@ -252,6 +261,7 @@ + #if defined(__GNUC__) + + #define sigsetjmp(env, savemask) \ ++ __extension__ \ + ({ \ + sigjmp_buf *_sjbuf = &(env); \ + ((*_sjbuf)[_SAVEMASK] = savemask,\ +@@ -260,6 +270,7 @@ + }) + + #define siglongjmp(env, val) \ ++ __extension__ \ + ({ \ + sigjmp_buf *_sjbuf = &(env); \ + ((((*_sjbuf)[_SAVEMASK]) ? \ +diff -uNr newlib-1.14.0/newlib/libc/include/pthread.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/pthread.h +--- newlib-1.14.0/newlib/libc/include/pthread.h 2002-10-08 15:03:07.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/pthread.h 2006-11-09 07:50:30.000000000 +0100 +@@ -50,18 +50,18 @@ + + /* Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 */ + +-int _EXFUN(pthread_mutexattr_init, (pthread_mutexattr_t *attr)); +-int _EXFUN(pthread_mutexattr_destroy, (pthread_mutexattr_t *attr)); ++int _EXFUN(pthread_mutexattr_init, (pthread_mutexattr_t *__attr)); ++int _EXFUN(pthread_mutexattr_destroy, (pthread_mutexattr_t *__attr)); + int _EXFUN(pthread_mutexattr_getpshared, +- (const pthread_mutexattr_t *attr, int *pshared)); ++ (_CONST pthread_mutexattr_t *__attr, int *__pshared)); + int _EXFUN(pthread_mutexattr_setpshared, +- (pthread_mutexattr_t *attr, int pshared)); ++ (pthread_mutexattr_t *__attr, int __pshared)); + + /* Initializing and Destroying a Mutex, P1003.1c/Draft 10, p. 87 */ + + int _EXFUN(pthread_mutex_init, +- (pthread_mutex_t *mutex, const pthread_mutexattr_t *attr)); +-int _EXFUN(pthread_mutex_destroy, (pthread_mutex_t *mutex)); ++ (pthread_mutex_t *__mutex, _CONST pthread_mutexattr_t *__attr)); ++int _EXFUN(pthread_mutex_destroy, (pthread_mutex_t *__mutex)); + + /* This is used to statically initialize a pthread_mutex_t. Example: + +@@ -73,31 +73,31 @@ + /* Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 + NOTE: P1003.4b/D8 adds pthread_mutex_timedlock(), p. 29 */ + +-int _EXFUN(pthread_mutex_lock, (pthread_mutex_t *mutex)); +-int _EXFUN(pthread_mutex_trylock, (pthread_mutex_t *mutex)); +-int _EXFUN(pthread_mutex_unlock, (pthread_mutex_t *mutex)); ++int _EXFUN(pthread_mutex_lock, (pthread_mutex_t *__mutex)); ++int _EXFUN(pthread_mutex_trylock, (pthread_mutex_t *__mutex)); ++int _EXFUN(pthread_mutex_unlock, (pthread_mutex_t *__mutex)); + + #if defined(_POSIX_TIMEOUTS) + + int _EXFUN(pthread_mutex_timedlock, +- (pthread_mutex_t *mutex, const struct timespec *timeout)); ++ (pthread_mutex_t *__mutex, _CONST struct timespec *__timeout)); + + #endif /* _POSIX_TIMEOUTS */ + + /* Condition Variable Initialization Attributes, P1003.1c/Draft 10, p. 96 */ + +-int _EXFUN(pthread_condattr_init, (pthread_condattr_t *attr)); +-int _EXFUN(pthread_condattr_destroy, (pthread_condattr_t *attr)); ++int _EXFUN(pthread_condattr_init, (pthread_condattr_t *__attr)); ++int _EXFUN(pthread_condattr_destroy, (pthread_condattr_t *__attr)); + int _EXFUN(pthread_condattr_getpshared, +- (const pthread_condattr_t *attr, int *pshared)); ++ (_CONST pthread_condattr_t *__attr, int *__pshared)); + int _EXFUN(pthread_condattr_setpshared, +- (pthread_condattr_t *attr, int pshared)); ++ (pthread_condattr_t *__attr, int __pshared)); + + /* Initializing and Destroying a Condition Variable, P1003.1c/Draft 10, p. 87 */ + + int _EXFUN(pthread_cond_init, +- (pthread_cond_t *cond, const pthread_condattr_t *attr)); +-int _EXFUN(pthread_cond_destroy, (pthread_cond_t *mutex)); ++ (pthread_cond_t *__cond, _CONST pthread_condattr_t *__attr)); ++int _EXFUN(pthread_cond_destroy, (pthread_cond_t *__mutex)); + + /* This is used to statically initialize a pthread_cond_t. Example: + +@@ -108,49 +108,50 @@ + + /* Broadcasting and Signaling a Condition, P1003.1c/Draft 10, p. 101 */ + +-int _EXFUN(pthread_cond_signal, (pthread_cond_t *cond)); +-int _EXFUN(pthread_cond_broadcast, (pthread_cond_t *cond)); ++int _EXFUN(pthread_cond_signal, (pthread_cond_t *__cond)); ++int _EXFUN(pthread_cond_broadcast, (pthread_cond_t *__cond)); + + /* Waiting on a Condition, P1003.1c/Draft 10, p. 105 */ + + int _EXFUN(pthread_cond_wait, +- (pthread_cond_t *cond, pthread_mutex_t *mutex)); ++ (pthread_cond_t *__cond, pthread_mutex_t *__mutex)); + + int _EXFUN(pthread_cond_timedwait, +- (pthread_cond_t *cond, pthread_mutex_t *mutex, +- const struct timespec *abstime)); ++ (pthread_cond_t *__cond, pthread_mutex_t *__mutex, ++ _CONST struct timespec *__abstime)); + + #if defined(_POSIX_THREAD_PRIORITY_SCHEDULING) + + /* Thread Creation Scheduling Attributes, P1003.1c/Draft 10, p. 120 */ + + int _EXFUN(pthread_attr_setscope, +- (pthread_attr_t *attr, int contentionscope)); ++ (pthread_attr_t *__attr, int __contentionscope)); + int _EXFUN(pthread_attr_getscope, +- (const pthread_attr_t *attr, int *contentionscope)); ++ (_CONST pthread_attr_t *__attr, int *__contentionscope)); + int _EXFUN(pthread_attr_setinheritsched, +- (pthread_attr_t *attr, int inheritsched)); ++ (pthread_attr_t *__attr, int __inheritsched)); + int _EXFUN(pthread_attr_getinheritsched, +- (const pthread_attr_t *attr, int *inheritsched)); +-int _EXFUN(pthread_attr_setschedpolicy, (pthread_attr_t *attr, int policy)); ++ (_CONST pthread_attr_t *__attr, int *__inheritsched)); ++int _EXFUN(pthread_attr_setschedpolicy, ++ (pthread_attr_t *__attr, int __policy)); + int _EXFUN(pthread_attr_getschedpolicy, +- (const pthread_attr_t *attr, int *policy)); ++ (_CONST pthread_attr_t *__attr, int *__policy)); + + #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ + + int _EXFUN(pthread_attr_setschedparam, +- (pthread_attr_t *attr, const struct sched_param *param)); ++ (pthread_attr_t *__attr, _CONST struct sched_param *__param)); + int _EXFUN(pthread_attr_getschedparam, +- (const pthread_attr_t *attr, struct sched_param *param)); ++ (_CONST pthread_attr_t *__attr, struct sched_param *__param)); + + #if defined(_POSIX_THREAD_PRIORITY_SCHEDULING) + + /* Dynamic Thread Scheduling Parameters Access, P1003.1c/Draft 10, p. 124 */ + + int _EXFUN(pthread_getschedparam, +- (pthread_t thread, int *policy, struct sched_param *param)); ++ (pthread_t __pthread, int *__policy, struct sched_param *__param)); + int _EXFUN(pthread_setschedparam, +- (pthread_t thread, int policy, struct sched_param *param)); ++ (pthread_t __pthread, int __policy, struct sched_param *__param)); + + #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ + +@@ -159,13 +160,13 @@ + /* Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 */ + + int _EXFUN(pthread_mutexattr_setprotocol, +- (pthread_mutexattr_t *attr, int protocol)); ++ (pthread_mutexattr_t *__attr, int __protocol)); + int _EXFUN(pthread_mutexattr_getprotocol, +- (const pthread_mutexattr_t *attr, int *protocol)); ++ (_CONST pthread_mutexattr_t *__attr, int *__protocol)); + int _EXFUN(pthread_mutexattr_setprioceiling, +- (pthread_mutexattr_t *attr, int prioceiling)); ++ (pthread_mutexattr_t *__attr, int __prioceiling)); + int _EXFUN(pthread_mutexattr_getprioceiling, +- (const pthread_mutexattr_t *attr, int *prioceiling)); ++ (_CONST pthread_mutexattr_t *__attr, int *__prioceiling)); + + #endif /* _POSIX_THREAD_PRIO_INHERIT || _POSIX_THREAD_PRIO_PROTECT */ + +@@ -174,46 +175,46 @@ + /* Change the Priority Ceiling of a Mutex, P1003.1c/Draft 10, p. 131 */ + + int _EXFUN(pthread_mutex_setprioceiling, +- (pthread_mutex_t *mutex, int prioceiling, int *old_ceiling)); ++ (pthread_mutex_t *__mutex, int __prioceiling, int *__old_ceiling)); + int _EXFUN(pthread_mutex_getprioceiling, +- (pthread_mutex_t *mutex, int *prioceiling)); ++ (pthread_mutex_t *__mutex, int *__prioceiling)); + + #endif /* _POSIX_THREAD_PRIO_PROTECT */ + + /* Thread Creation Attributes, P1003.1c/Draft 10, p, 140 */ + +-int _EXFUN(pthread_attr_init, (pthread_attr_t *attr)); +-int _EXFUN(pthread_attr_destroy, (pthread_attr_t *attr)); ++int _EXFUN(pthread_attr_init, (pthread_attr_t *__attr)); ++int _EXFUN(pthread_attr_destroy, (pthread_attr_t *__attr)); + int _EXFUN(pthread_attr_getstacksize, +- (const pthread_attr_t *attr, size_t *stacksize)); ++ (_CONST pthread_attr_t *__attr, size_t *__stacksize)); + int _EXFUN(pthread_attr_setstacksize, +- (pthread_attr_t *attr, size_t stacksize)); ++ (pthread_attr_t *__attr, size_t stacksize)); + int _EXFUN(pthread_attr_getstackaddr, +- (const pthread_attr_t *attr, void **stackaddr)); ++ (_CONST pthread_attr_t *__attr, void **__stackaddr)); + int _EXFUN(pthread_attr_setstackaddr, +- (pthread_attr_t *attr, void *stackaddr)); ++ (pthread_attr_t *__attr, void *__stackaddr)); + int _EXFUN(pthread_attr_getdetachstate, +- (const pthread_attr_t *attr, int *detachstate)); ++ (_CONST pthread_attr_t *__attr, int *__detachstate)); + int _EXFUN(pthread_attr_setdetachstate, +- (pthread_attr_t *attr, int detachstate)); ++ (pthread_attr_t *__attr, int __detachstate)); + + /* Thread Creation, P1003.1c/Draft 10, p. 144 */ + + int _EXFUN(pthread_create, +- (pthread_t *thread, const pthread_attr_t *attr, +- void *(*start_routine)( void * ), void *arg)); ++ (pthread_t *__pthread, _CONST pthread_attr_t *__attr, ++ void *(*__start_routine)( void * ), void *__arg)); + + /* Wait for Thread Termination, P1003.1c/Draft 10, p. 147 */ + +-int _EXFUN(pthread_join, (pthread_t thread, void **value_ptr)); ++int _EXFUN(pthread_join, (pthread_t __pthread, void **__value_ptr)); + + /* Detaching a Thread, P1003.1c/Draft 10, p. 149 */ + +-int _EXFUN(pthread_detach, (pthread_t thread)); ++int _EXFUN(pthread_detach, (pthread_t __pthread)); + + /* Thread Termination, p1003.1c/Draft 10, p. 150 */ + +-void _EXFUN(pthread_exit, (void *value_ptr)); ++void _EXFUN(pthread_exit, (void *__value_ptr)); + + /* Get Calling Thread's ID, p1003.1c/Draft 10, p. XXX */ + +@@ -221,7 +222,7 @@ + + /* Compare Thread IDs, p1003.1c/Draft 10, p. 153 */ + +-int _EXFUN(pthread_equal, (pthread_t t1, pthread_t t2)); ++int _EXFUN(pthread_equal, (pthread_t __t1, pthread_t __t2)); + + /* Dynamic Package Initialization */ + +@@ -234,21 +235,22 @@ + #define PTHREAD_ONCE_INIT { 1, 0 } /* is initialized and not run */ + + int _EXFUN(pthread_once, +- (pthread_once_t *once_control, void (*init_routine)(void))); ++ (pthread_once_t *__once_control, void (*__init_routine)(void))); + + /* Thread-Specific Data Key Create, P1003.1c/Draft 10, p. 163 */ + + int _EXFUN(pthread_key_create, +- (pthread_key_t *key, void (*destructor)( void * ))); ++ (pthread_key_t *__key, void (*__destructor)( void * ))); + + /* Thread-Specific Data Management, P1003.1c/Draft 10, p. 165 */ + +-int _EXFUN(pthread_setspecific, (pthread_key_t key, const void *value)); +-void * _EXFUN(pthread_getspecific, (pthread_key_t key)); ++int _EXFUN(pthread_setspecific, ++ (pthread_key_t __key, _CONST void *__value)); ++void * _EXFUN(pthread_getspecific, (pthread_key_t __key)); + + /* Thread-Specific Data Key Deletion, P1003.1c/Draft 10, p. 167 */ + +-int _EXFUN(pthread_key_delete, (pthread_key_t key)); ++int _EXFUN(pthread_key_delete, (pthread_key_t __key)); + + /* Execution of a Thread, P1003.1c/Draft 10, p. 181 */ + +@@ -260,38 +262,94 @@ + + #define PTHREAD_CANCELED ((void *) -1) + +-int _EXFUN(pthread_cancel, (pthread_t thread)); ++int _EXFUN(pthread_cancel, (pthread_t __pthread)); + + /* Setting Cancelability State, P1003.1c/Draft 10, p. 183 */ + +-int _EXFUN(pthread_setcancelstate, (int state, int *oldstate)); +-int _EXFUN(pthread_setcanceltype, (int type, int *oldtype)); ++int _EXFUN(pthread_setcancelstate, (int __state, int *__oldstate)); ++int _EXFUN(pthread_setcanceltype, (int __type, int *__oldtype)); + void _EXFUN(pthread_testcancel, (void)); + + /* Establishing Cancellation Handlers, P1003.1c/Draft 10, p. 184 */ + +-void _EXFUN(pthread_cleanup_push, (void (*routine)( void * ), void *arg)); +-void _EXFUN(pthread_cleanup_pop, (int execute)); ++void _EXFUN(pthread_cleanup_push, ++ (void (*__routine)( void * ), void *__arg)); ++void _EXFUN(pthread_cleanup_pop, (int __execute)); + + #if defined(_POSIX_THREAD_CPUTIME) + + /* Accessing a Thread CPU-time Clock, P1003.4b/D8, p. 58 */ + + int _EXFUN(pthread_getcpuclockid, +- (pthread_t thread_id, clockid_t *clock_id)); ++ (pthread_t __pthread_id, clockid_t *__clock_id)); + + /* CPU-time Clock Thread Creation Attribute, P1003.4b/D8, p. 59 */ + + int _EXFUN(pthread_attr_setcputime, +- (pthread_attr_t *attr, int clock_allowed)); ++ (pthread_attr_t *__attr, int __clock_allowed)); + + int _EXFUN(pthread_attr_getcputime, +- (pthread_attr_t *attr, int *clock_allowed)); ++ (pthread_attr_t *__attr, int *__clock_allowed)); + + #endif /* defined(_POSIX_THREAD_CPUTIME) */ + ++ + #endif /* defined(_POSIX_THREADS) */ + ++#if defined(_POSIX_BARRIERS) ++ ++int _EXFUN(pthread_barrierattr_init, (pthread_barrierattr_t *__attr)); ++int _EXFUN(pthread_barrierattr_destroy, (pthread_barrierattr_t *__attr)); ++int _EXFUN(pthread_barrierattr_getpshared, ++ (_CONST pthread_barrierattr_t *__attr, int *__pshared)); ++int _EXFUN(pthread_barrierattr_setpshared, ++ (pthread_barrierattr_t *__attr, int __pshared)); ++ ++#define PTHREAD_BARRIER_SERIAL_THREAD -1 ++ ++int _EXFUN(pthread_barrier_init, ++ (pthread_barrier_t *__barrier, ++ _CONST pthread_barrierattr_t *__attr, unsigned __count)); ++int _EXFUN(pthread_barrier_destroy, (pthread_barrier_t *__barrier)); ++int _EXFUN(pthread_barrier_wait,(pthread_barrier_t *__barrier)); ++ ++#endif /* defined(_POSIX_BARRIERS) */ ++ ++#if defined(_POSIX_SPIN_LOCKS) ++ ++int _EXFUN(pthread_spin_init, ++ (pthread_spinlock_t *__spinlock, int __pshared)); ++int _EXFUN(pthread_spin_destroy, (pthread_spinlock_t *__spinlock)); ++int _EXFUN(pthread_spin_lock, (pthread_spinlock_t *__spinlock)); ++int _EXFUN(pthread_spin_trylock, (pthread_spinlock_t *__spinlock)); ++int _EXFUN(pthread_spin_unlock, (pthread_spinlock_t *__spinlock)); ++ ++#endif /* defined(_POSIX_SPIN_LOCKS) */ ++ ++#if defined(_POSIX_READER_WRITER_LOCKS) ++ ++int _EXFUN(pthread_rwlockattr_init, (pthread_rwlockattr_t *__attr)); ++int _EXFUN(pthread_rwlockattr_destroy, (pthread_rwlockattr_t *__attr)); ++int _EXFUN(pthread_rwlockattr_getpshared, ++ (_CONST pthread_rwlockattr_t *__attr, int *__pshared)); ++int _EXFUN(pthread_rwlockattr_setpshared, ++ (pthread_rwlockattr_t *__attr, int __pshared)); ++ ++int _EXFUN(pthread_rwlock_init, ++ (pthread_rwlock_t *__rwlock, _CONST pthread_rwlockattr_t *__attr)); ++int _EXFUN(pthread_rwlock_destroy, (pthread_rwlock_t *__rwlock)); ++int _EXFUN(pthread_rwlock_rdlock,(pthread_rwlock_t *__rwlock)); ++int _EXFUN(pthread_rwlock_tryrdlock,(pthread_rwlock_t *__rwlock)); ++int _EXFUN(pthread_rwlock_timedrdlock, ++ (pthread_rwlock_t *__rwlock, _CONST struct timespec *__abstime)); ++int _EXFUN(pthread_rwlock_wrlock,(pthread_rwlock_t *__rwlock)); ++int _EXFUN(pthread_rwlock_trywrlock,(pthread_rwlock_t *__rwlock)); ++int _EXFUN(pthread_rwlock_timedwrlock, ++ (pthread_rwlock_t *__rwlock, _CONST struct timespec *__abstime)); ++ ++#endif /* defined(_POSIX_READER_WRITER_LOCKS) */ ++ ++ + #ifdef __cplusplus + } + #endif +diff -uNr newlib-1.14.0/newlib/libc/include/sys/features.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/features.h +--- newlib-1.14.0/newlib/libc/include/sys/features.h 2005-10-18 20:39:46.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/features.h 2006-11-09 07:50:30.000000000 +0100 +@@ -45,6 +45,9 @@ + #define _POSIX_SHARED_MEMORY_OBJECTS 1 + #define _POSIX_SYNCHRONIZED_IO 1 + #define _POSIX_TIMERS 1 ++#define _POSIX_BARRIERS 200112L ++#define _POSIX_READER_WRITER_LOCKS 200112L ++#define _POSIX_SPIN_LOCKS 200112L + + + /* In P1003.1b but defined by drafts at least as early as P1003.1c/D10 */ +diff -uNr newlib-1.14.0/newlib/libc/include/sys/_types.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/_types.h +--- newlib-1.14.0/newlib/libc/include/sys/_types.h 2004-06-11 22:37:09.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/_types.h 2006-11-09 07:50:30.000000000 +0100 +@@ -39,4 +39,7 @@ + /* Iconv descriptor type */ + typedef void *_iconv_t; + ++typedef long * __intptr_t; ++typedef unsigned long* __uintptr_t; ++ + #endif /* _SYS__TYPES_H */ +diff -uNr newlib-1.14.0/newlib/libc/include/sys/types.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/types.h +--- newlib-1.14.0/newlib/libc/include/sys/types.h 2005-12-08 20:45:43.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/include/sys/types.h 2006-11-09 07:50:30.000000000 +0100 +@@ -373,6 +373,36 @@ + #endif + #endif /* defined(_POSIX_THREADS) */ + ++/* POSIX Barrier Types */ ++ ++#if defined(_POSIX_BARRIERS) ++typedef __uint32_t pthread_barrier_t; /* POSIX Barrier Object */ ++typedef struct { ++ int is_initialized; /* is this structure initialized? */ ++#if defined(_POSIX_THREAD_PROCESS_SHARED) ++ int process_shared; /* allow this to be shared amongst processes */ ++#endif ++} pthread_barrierattr_t; ++#endif /* defined(_POSIX_BARRIERS) */ ++ ++/* POSIX Spin Lock Types */ ++ ++#if defined(_POSIX_SPIN_LOCKS) ++typedef __uint32_t pthread_spinlock_t; /* POSIX Spin Lock Object */ ++#endif /* defined(_POSIX_SPIN_LOCKS) */ ++ ++/* POSIX Reader/Writer Lock Types */ ++ ++#if defined(_POSIX_READER_WRITER_LOCKS) ++typedef __uint32_t pthread_rwlock_t; /* POSIX RWLock Object */ ++typedef struct { ++ int is_initialized; /* is this structure initialized? */ ++#if defined(_POSIX_THREAD_PROCESS_SHARED) ++ int process_shared; /* allow this to be shared amongst processes */ ++#endif ++} pthread_rwlockattr_t; ++#endif /* defined(_POSIX_READER_WRITER_LOCKS) */ ++ + #endif /* !__need_inttypes */ + + #undef __need_inttypes +diff -uNr newlib-1.14.0/newlib/libc/machine/arm/machine/endian.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/arm/machine/endian.h +--- newlib-1.14.0/newlib/libc/machine/arm/machine/endian.h 2004-05-07 22:29:24.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/arm/machine/endian.h 1970-01-01 01:00:00.000000000 +0100 +@@ -1,12 +0,0 @@ +-/* ARM configuration file */ +- +-#ifndef _MACHINE_ENDIAN_H +-# define _MACHINE_ENDIAN_H +- +-#ifdef __ARMEB__ +-#define BYTE_ORDER BIG_ENDIAN +-#else +-#define BYTE_ORDER LITTLE_ENDIAN +-#endif +- +-#endif +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/aclocal.m4 newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/aclocal.m4 +--- newlib-1.14.0/newlib/libc/machine/bfin/aclocal.m4 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/aclocal.m4 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,366 @@ ++dnl aclocal.m4 generated automatically by aclocal 1.4-p6 ++ ++dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. ++dnl This file is free software; the Free Software Foundation ++dnl gives unlimited permission to copy and/or distribute it, ++dnl with or without modifications, as long as this notice is preserved. ++ ++dnl This program is distributed in the hope that it will be useful, ++dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++dnl PARTICULAR PURPOSE. ++ ++dnl This provides configure definitions used by all the newlib ++dnl configure.in files. ++ ++dnl Basic newlib configury. This calls basic introductory stuff, ++dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs ++dnl configure.host. The only argument is the relative path to the top ++dnl newlib directory. ++ ++AC_DEFUN(NEWLIB_CONFIGURE, ++[ ++dnl Default to --enable-multilib ++AC_ARG_ENABLE(multilib, ++[ --enable-multilib build many library versions (default)], ++[case "${enableval}" in ++ yes) multilib=yes ;; ++ no) multilib=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;; ++ esac], [multilib=yes])dnl ++ ++dnl Support --enable-target-optspace ++AC_ARG_ENABLE(target-optspace, ++[ --enable-target-optspace optimize for space], ++[case "${enableval}" in ++ yes) target_optspace=yes ;; ++ no) target_optspace=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;; ++ esac], [target_optspace=])dnl ++ ++dnl Support --enable-malloc-debugging - currently only supported for Cygwin ++AC_ARG_ENABLE(malloc-debugging, ++[ --enable-malloc-debugging indicate malloc debugging requested], ++[case "${enableval}" in ++ yes) malloc_debugging=yes ;; ++ no) malloc_debugging=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;; ++ esac], [malloc_debugging=])dnl ++ ++dnl Support --enable-newlib-multithread ++AC_ARG_ENABLE(newlib-multithread, ++[ --enable-newlib-multithread enable support for multiple threads], ++[case "${enableval}" in ++ yes) newlib_multithread=yes ;; ++ no) newlib_multithread=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;; ++ esac], [newlib_multithread=yes])dnl ++ ++dnl Support --enable-newlib-iconv ++AC_ARG_ENABLE(newlib-iconv, ++[ --enable-newlib-iconv enable iconv library support], ++[if test "${newlib_iconv+set}" != set; then ++ case "${enableval}" in ++ yes) newlib_iconv=yes ;; ++ no) newlib_iconv=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;; ++ esac ++ fi], [newlib_iconv=${newlib_iconv}])dnl ++ ++dnl Support --enable-newlib-elix-level ++AC_ARG_ENABLE(newlib-elix-level, ++[ --enable-newlib-elix-level supply desired elix library level (1-4)], ++[case "${enableval}" in ++ 0) newlib_elix_level=0 ;; ++ 1) newlib_elix_level=1 ;; ++ 2) newlib_elix_level=2 ;; ++ 3) newlib_elix_level=3 ;; ++ 4) newlib_elix_level=4 ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;; ++ esac], [newlib_elix_level=0])dnl ++ ++dnl Support --disable-newlib-io-float ++AC_ARG_ENABLE(newlib-io-float, ++[ --disable-newlib-io-float disable printf/scanf family float support], ++[case "${enableval}" in ++ yes) newlib_io_float=yes ;; ++ no) newlib_io_float=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;; ++ esac], [newlib_io_float=yes])dnl ++ ++dnl Support --disable-newlib-supplied-syscalls ++AC_ARG_ENABLE(newlib-supplied-syscalls, ++[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls], ++[case "${enableval}" in ++ yes) newlib_may_supply_syscalls=yes ;; ++ no) newlib_may_supply_syscalls=no ;; ++ *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;; ++ esac], [newlib_may_supply_syscalls=yes])dnl ++ ++AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes) ++ ++dnl We may get other options which we don't document: ++dnl --with-target-subdir, --with-multisrctop, --with-multisubdir ++ ++test -z "[$]{with_target_subdir}" && with_target_subdir=. ++ ++if test "[$]{srcdir}" = "."; then ++ if test "[$]{with_target_subdir}" != "."; then ++ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1" ++ else ++ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1" ++ fi ++else ++ newlib_basedir="[$]{srcdir}/$1" ++fi ++AC_SUBST(newlib_basedir) ++ ++AC_CANONICAL_SYSTEM ++ ++AM_INIT_AUTOMAKE(newlib, 1.14.0) ++ ++# FIXME: We temporarily define our own version of AC_PROG_CC. This is ++# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We ++# are probably using a cross compiler, which will not be able to fully ++# link an executable. This should really be fixed in autoconf ++# itself. ++ ++AC_DEFUN(LIB_AC_PROG_CC, ++[AC_BEFORE([$0], [AC_PROG_CPP])dnl ++AC_CHECK_PROG(CC, gcc, gcc) ++if test -z "$CC"; then ++ AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc) ++ test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH]) ++fi ++ ++AC_PROG_CC_GNU ++ ++if test $ac_cv_prog_gcc = yes; then ++ GCC=yes ++dnl Check whether -g works, even if CFLAGS is set, in case the package ++dnl plays around with CFLAGS (such as to build both debugging and ++dnl normal versions of a library), tasteless as that idea is. ++ ac_test_CFLAGS="${CFLAGS+set}" ++ ac_save_CFLAGS="$CFLAGS" ++ CFLAGS= ++ AC_PROG_CC_G ++ if test "$ac_test_CFLAGS" = set; then ++ CFLAGS="$ac_save_CFLAGS" ++ elif test $ac_cv_prog_cc_g = yes; then ++ CFLAGS="-g -O2" ++ else ++ CFLAGS="-O2" ++ fi ++else ++ GCC= ++ test "${CFLAGS+set}" = set || CFLAGS="-g" ++fi ++]) ++ ++LIB_AC_PROG_CC ++ ++AC_CHECK_TOOL(AS, as) ++AC_CHECK_TOOL(AR, ar) ++AC_CHECK_TOOL(RANLIB, ranlib, :) ++ ++AC_PROG_INSTALL ++ ++AM_MAINTAINER_MODE ++ ++# We need AC_EXEEXT to keep automake happy in cygnus mode. However, ++# at least currently, we never actually build a program, so we never ++# need to use $(EXEEXT). Moreover, the test for EXEEXT normally ++# fails, because we are probably configuring with a cross compiler ++# which can't create executables. So we include AC_EXEEXT to keep ++# automake happy, but we don't execute it, since we don't care about ++# the result. ++if false; then ++ AC_EXEEXT ++fi ++ ++. [$]{newlib_basedir}/configure.host ++ ++newlib_cflags="[$]{newlib_cflags} -fno-builtin" ++ ++NEWLIB_CFLAGS=${newlib_cflags} ++AC_SUBST(NEWLIB_CFLAGS) ++ ++LDFLAGS=${ldflags} ++AC_SUBST(LDFLAGS) ++ ++AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0) ++AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1) ++AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2) ++AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3) ++AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4) ++ ++AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes) ++ ++# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we ++# use oext, which is set in configure.host based on the target platform. ++OBJEXT=${oext} ++ ++AC_SUBST(OBJEXT) ++AC_SUBST(oext) ++AC_SUBST(aext) ++ ++AC_SUBST(libm_machine_dir) ++AC_SUBST(machine_dir) ++AC_SUBST(sys_dir) ++]) ++ ++# Do all the work for Automake. This macro actually does too much -- ++# some checks are only needed if your package does certain things. ++# But this isn't really a big deal. ++ ++# serial 1 ++ ++dnl Usage: ++dnl AM_INIT_AUTOMAKE(package,version, [no-define]) ++ ++AC_DEFUN([AM_INIT_AUTOMAKE], ++[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl ++AC_REQUIRE([AC_PROG_INSTALL]) ++PACKAGE=[$1] ++AC_SUBST(PACKAGE) ++VERSION=[$2] ++AC_SUBST(VERSION) ++dnl test to see if srcdir already configured ++if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then ++ AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) ++fi ++ifelse([$3],, ++AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) ++AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) ++AC_REQUIRE([AM_SANITY_CHECK]) ++AC_REQUIRE([AC_ARG_PROGRAM]) ++dnl FIXME This is truly gross. ++missing_dir=`cd $ac_aux_dir && pwd` ++AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir) ++AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) ++AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir) ++AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) ++AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) ++AC_REQUIRE([AC_PROG_MAKE_SET])]) ++ ++# Copyright 2002 Free Software Foundation, Inc. ++ ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++ ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ++ ++# AM_AUTOMAKE_VERSION(VERSION) ++# ---------------------------- ++# Automake X.Y traces this macro to ensure aclocal.m4 has been ++# generated from the m4 files accompanying Automake X.Y. ++AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"]) ++ ++# AM_SET_CURRENT_AUTOMAKE_VERSION ++# ------------------------------- ++# Call AM_AUTOMAKE_VERSION so it can be traced. ++# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. ++AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], ++ [AM_AUTOMAKE_VERSION([1.4-p6])]) ++ ++# ++# Check to make sure that the build environment is sane. ++# ++ ++AC_DEFUN([AM_SANITY_CHECK], ++[AC_MSG_CHECKING([whether build environment is sane]) ++# Just in case ++sleep 1 ++echo timestamp > conftestfile ++# Do `set' in a subshell so we don't clobber the current shell's ++# arguments. Must try -L first in case configure is actually a ++# symlink; some systems play weird games with the mod time of symlinks ++# (eg FreeBSD returns the mod time of the symlink's containing ++# directory). ++if ( ++ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` ++ if test "[$]*" = "X"; then ++ # -L didn't work. ++ set X `ls -t $srcdir/configure conftestfile` ++ fi ++ if test "[$]*" != "X $srcdir/configure conftestfile" \ ++ && test "[$]*" != "X conftestfile $srcdir/configure"; then ++ ++ # If neither matched, then we have a broken ls. This can happen ++ # if, for instance, CONFIG_SHELL is bash and it inherits a ++ # broken ls alias from the environment. This has actually ++ # happened. Such a system could not be considered "sane". ++ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken ++alias in your environment]) ++ fi ++ ++ test "[$]2" = conftestfile ++ ) ++then ++ # Ok. ++ : ++else ++ AC_MSG_ERROR([newly created file is older than distributed files! ++Check your system clock]) ++fi ++rm -f conftest* ++AC_MSG_RESULT(yes)]) ++ ++dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) ++dnl The program must properly implement --version. ++AC_DEFUN([AM_MISSING_PROG], ++[AC_MSG_CHECKING(for working $2) ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if ($2 --version) < /dev/null > /dev/null 2>&1; then ++ $1=$2 ++ AC_MSG_RESULT(found) ++else ++ $1="$3/missing $2" ++ AC_MSG_RESULT(missing) ++fi ++AC_SUBST($1)]) ++ ++# Define a conditional. ++ ++AC_DEFUN([AM_CONDITIONAL], ++[AC_SUBST($1_TRUE) ++AC_SUBST($1_FALSE) ++if $2; then ++ $1_TRUE= ++ $1_FALSE='#' ++else ++ $1_TRUE='#' ++ $1_FALSE= ++fi]) ++ ++# Add --enable-maintainer-mode option to configure. ++# From Jim Meyering ++ ++# serial 1 ++ ++AC_DEFUN([AM_MAINTAINER_MODE], ++[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) ++ dnl maintainer-mode is disabled by default ++ AC_ARG_ENABLE(maintainer-mode, ++[ --enable-maintainer-mode enable make rules and dependencies not useful ++ (and sometimes confusing) to the casual installer], ++ USE_MAINTAINER_MODE=$enableval, ++ USE_MAINTAINER_MODE=no) ++ AC_MSG_RESULT($USE_MAINTAINER_MODE) ++ AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) ++ MAINT=$MAINTAINER_MODE_TRUE ++ AC_SUBST(MAINT)dnl ++] ++) ++ +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/configure newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/configure +--- newlib-1.14.0/newlib/libc/machine/bfin/configure 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/configure 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,1899 @@ ++#! /bin/sh ++ ++# Guess values for system-dependent variables and create Makefiles. ++# Generated automatically using autoconf version 2.13 ++# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. ++# ++# This configure script is free software; the Free Software Foundation ++# gives unlimited permission to copy, distribute and modify it. ++ ++# Defaults: ++ac_help= ++ac_default_prefix=/usr/local ++# Any additions from configure.in: ++ac_help="$ac_help ++ --enable-multilib build many library versions (default)" ++ac_help="$ac_help ++ --enable-target-optspace optimize for space" ++ac_help="$ac_help ++ --enable-malloc-debugging indicate malloc debugging requested" ++ac_help="$ac_help ++ --enable-newlib-multithread enable support for multiple threads" ++ac_help="$ac_help ++ --enable-newlib-iconv enable iconv library support" ++ac_help="$ac_help ++ --enable-newlib-elix-level supply desired elix library level (1-4)" ++ac_help="$ac_help ++ --disable-newlib-io-float disable printf/scanf family float support" ++ac_help="$ac_help ++ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls" ++ac_help="$ac_help ++ --enable-maintainer-mode enable make rules and dependencies not useful ++ (and sometimes confusing) to the casual installer" ++ ++# Initialize some variables set by options. ++# The variables have the same names as the options, with ++# dashes changed to underlines. ++build=NONE ++cache_file=./config.cache ++exec_prefix=NONE ++host=NONE ++no_create= ++nonopt=NONE ++no_recursion= ++prefix=NONE ++program_prefix=NONE ++program_suffix=NONE ++program_transform_name=s,x,x, ++silent= ++site= ++srcdir= ++target=NONE ++verbose= ++x_includes=NONE ++x_libraries=NONE ++bindir='${exec_prefix}/bin' ++sbindir='${exec_prefix}/sbin' ++libexecdir='${exec_prefix}/libexec' ++datadir='${prefix}/share' ++sysconfdir='${prefix}/etc' ++sharedstatedir='${prefix}/com' ++localstatedir='${prefix}/var' ++libdir='${exec_prefix}/lib' ++includedir='${prefix}/include' ++oldincludedir='/usr/include' ++infodir='${prefix}/info' ++mandir='${prefix}/man' ++ ++# Initialize some other variables. ++subdirs= ++MFLAGS= MAKEFLAGS= ++SHELL=${CONFIG_SHELL-/bin/sh} ++# Maximum number of lines to put in a shell here document. ++ac_max_here_lines=12 ++ ++ac_prev= ++for ac_option ++do ++ ++ # If the previous option needs an argument, assign it. ++ if test -n "$ac_prev"; then ++ eval "$ac_prev=\$ac_option" ++ ac_prev= ++ continue ++ fi ++ ++ case "$ac_option" in ++ -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; ++ *) ac_optarg= ;; ++ esac ++ ++ # Accept the important Cygnus configure options, so we can diagnose typos. ++ ++ case "$ac_option" in ++ ++ -bindir | --bindir | --bindi | --bind | --bin | --bi) ++ ac_prev=bindir ;; ++ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) ++ bindir="$ac_optarg" ;; ++ ++ -build | --build | --buil | --bui | --bu) ++ ac_prev=build ;; ++ -build=* | --build=* | --buil=* | --bui=* | --bu=*) ++ build="$ac_optarg" ;; ++ ++ -cache-file | --cache-file | --cache-fil | --cache-fi \ ++ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ++ ac_prev=cache_file ;; ++ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ ++ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) ++ cache_file="$ac_optarg" ;; ++ ++ -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ++ ac_prev=datadir ;; ++ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ ++ | --da=*) ++ datadir="$ac_optarg" ;; ++ ++ -disable-* | --disable-*) ++ ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` ++ # Reject names that are not valid shell variable names. ++ if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then ++ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } ++ fi ++ ac_feature=`echo $ac_feature| sed 's/-/_/g'` ++ eval "enable_${ac_feature}=no" ;; ++ ++ -enable-* | --enable-*) ++ ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` ++ # Reject names that are not valid shell variable names. ++ if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then ++ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } ++ fi ++ ac_feature=`echo $ac_feature| sed 's/-/_/g'` ++ case "$ac_option" in ++ *=*) ;; ++ *) ac_optarg=yes ;; ++ esac ++ eval "enable_${ac_feature}='$ac_optarg'" ;; ++ ++ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ ++ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ ++ | --exec | --exe | --ex) ++ ac_prev=exec_prefix ;; ++ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ ++ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ ++ | --exec=* | --exe=* | --ex=*) ++ exec_prefix="$ac_optarg" ;; ++ ++ -gas | --gas | --ga | --g) ++ # Obsolete; use --with-gas. ++ with_gas=yes ;; ++ ++ -help | --help | --hel | --he) ++ # Omit some internal or obsolete options to make the list less imposing. ++ # This message is too long to be a string in the A/UX 3.1 sh. ++ cat << EOF ++Usage: configure [options] [host] ++Options: [defaults in brackets after descriptions] ++Configuration: ++ --cache-file=FILE cache test results in FILE ++ --help print this message ++ --no-create do not create output files ++ --quiet, --silent do not print \`checking...' messages ++ --version print the version of autoconf that created configure ++Directory and file names: ++ --prefix=PREFIX install architecture-independent files in PREFIX ++ [$ac_default_prefix] ++ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX ++ [same as prefix] ++ --bindir=DIR user executables in DIR [EPREFIX/bin] ++ --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] ++ --libexecdir=DIR program executables in DIR [EPREFIX/libexec] ++ --datadir=DIR read-only architecture-independent data in DIR ++ [PREFIX/share] ++ --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] ++ --sharedstatedir=DIR modifiable architecture-independent data in DIR ++ [PREFIX/com] ++ --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] ++ --libdir=DIR object code libraries in DIR [EPREFIX/lib] ++ --includedir=DIR C header files in DIR [PREFIX/include] ++ --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] ++ --infodir=DIR info documentation in DIR [PREFIX/info] ++ --mandir=DIR man documentation in DIR [PREFIX/man] ++ --srcdir=DIR find the sources in DIR [configure dir or ..] ++ --program-prefix=PREFIX prepend PREFIX to installed program names ++ --program-suffix=SUFFIX append SUFFIX to installed program names ++ --program-transform-name=PROGRAM ++ run sed PROGRAM on installed program names ++EOF ++ cat << EOF ++Host type: ++ --build=BUILD configure for building on BUILD [BUILD=HOST] ++ --host=HOST configure for HOST [guessed] ++ --target=TARGET configure for TARGET [TARGET=HOST] ++Features and packages: ++ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) ++ --enable-FEATURE[=ARG] include FEATURE [ARG=yes] ++ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] ++ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) ++ --x-includes=DIR X include files are in DIR ++ --x-libraries=DIR X library files are in DIR ++EOF ++ if test -n "$ac_help"; then ++ echo "--enable and --with options recognized:$ac_help" ++ fi ++ exit 0 ;; ++ ++ -host | --host | --hos | --ho) ++ ac_prev=host ;; ++ -host=* | --host=* | --hos=* | --ho=*) ++ host="$ac_optarg" ;; ++ ++ -includedir | --includedir | --includedi | --included | --include \ ++ | --includ | --inclu | --incl | --inc) ++ ac_prev=includedir ;; ++ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ ++ | --includ=* | --inclu=* | --incl=* | --inc=*) ++ includedir="$ac_optarg" ;; ++ ++ -infodir | --infodir | --infodi | --infod | --info | --inf) ++ ac_prev=infodir ;; ++ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) ++ infodir="$ac_optarg" ;; ++ ++ -libdir | --libdir | --libdi | --libd) ++ ac_prev=libdir ;; ++ -libdir=* | --libdir=* | --libdi=* | --libd=*) ++ libdir="$ac_optarg" ;; ++ ++ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ ++ | --libexe | --libex | --libe) ++ ac_prev=libexecdir ;; ++ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ ++ | --libexe=* | --libex=* | --libe=*) ++ libexecdir="$ac_optarg" ;; ++ ++ -localstatedir | --localstatedir | --localstatedi | --localstated \ ++ | --localstate | --localstat | --localsta | --localst \ ++ | --locals | --local | --loca | --loc | --lo) ++ ac_prev=localstatedir ;; ++ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ ++ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ ++ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) ++ localstatedir="$ac_optarg" ;; ++ ++ -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ++ ac_prev=mandir ;; ++ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) ++ mandir="$ac_optarg" ;; ++ ++ -nfp | --nfp | --nf) ++ # Obsolete; use --without-fp. ++ with_fp=no ;; ++ ++ -no-create | --no-create | --no-creat | --no-crea | --no-cre \ ++ | --no-cr | --no-c) ++ no_create=yes ;; ++ ++ -no-recursion | --no-recursion | --no-recursio | --no-recursi \ ++ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ++ no_recursion=yes ;; ++ ++ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ ++ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ ++ | --oldin | --oldi | --old | --ol | --o) ++ ac_prev=oldincludedir ;; ++ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ ++ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ ++ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) ++ oldincludedir="$ac_optarg" ;; ++ ++ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ++ ac_prev=prefix ;; ++ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) ++ prefix="$ac_optarg" ;; ++ ++ -program-prefix | --program-prefix | --program-prefi | --program-pref \ ++ | --program-pre | --program-pr | --program-p) ++ ac_prev=program_prefix ;; ++ -program-prefix=* | --program-prefix=* | --program-prefi=* \ ++ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) ++ program_prefix="$ac_optarg" ;; ++ ++ -program-suffix | --program-suffix | --program-suffi | --program-suff \ ++ | --program-suf | --program-su | --program-s) ++ ac_prev=program_suffix ;; ++ -program-suffix=* | --program-suffix=* | --program-suffi=* \ ++ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) ++ program_suffix="$ac_optarg" ;; ++ ++ -program-transform-name | --program-transform-name \ ++ | --program-transform-nam | --program-transform-na \ ++ | --program-transform-n | --program-transform- \ ++ | --program-transform | --program-transfor \ ++ | --program-transfo | --program-transf \ ++ | --program-trans | --program-tran \ ++ | --progr-tra | --program-tr | --program-t) ++ ac_prev=program_transform_name ;; ++ -program-transform-name=* | --program-transform-name=* \ ++ | --program-transform-nam=* | --program-transform-na=* \ ++ | --program-transform-n=* | --program-transform-=* \ ++ | --program-transform=* | --program-transfor=* \ ++ | --program-transfo=* | --program-transf=* \ ++ | --program-trans=* | --program-tran=* \ ++ | --progr-tra=* | --program-tr=* | --program-t=*) ++ program_transform_name="$ac_optarg" ;; ++ ++ -q | -quiet | --quiet | --quie | --qui | --qu | --q \ ++ | -silent | --silent | --silen | --sile | --sil) ++ silent=yes ;; ++ ++ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ++ ac_prev=sbindir ;; ++ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ ++ | --sbi=* | --sb=*) ++ sbindir="$ac_optarg" ;; ++ ++ -sharedstatedir | --sharedstatedir | --sharedstatedi \ ++ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ ++ | --sharedst | --shareds | --shared | --share | --shar \ ++ | --sha | --sh) ++ ac_prev=sharedstatedir ;; ++ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ ++ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ ++ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ ++ | --sha=* | --sh=*) ++ sharedstatedir="$ac_optarg" ;; ++ ++ -site | --site | --sit) ++ ac_prev=site ;; ++ -site=* | --site=* | --sit=*) ++ site="$ac_optarg" ;; ++ ++ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ++ ac_prev=srcdir ;; ++ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) ++ srcdir="$ac_optarg" ;; ++ ++ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ ++ | --syscon | --sysco | --sysc | --sys | --sy) ++ ac_prev=sysconfdir ;; ++ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ ++ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) ++ sysconfdir="$ac_optarg" ;; ++ ++ -target | --target | --targe | --targ | --tar | --ta | --t) ++ ac_prev=target ;; ++ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) ++ target="$ac_optarg" ;; ++ ++ -v | -verbose | --verbose | --verbos | --verbo | --verb) ++ verbose=yes ;; ++ ++ -version | --version | --versio | --versi | --vers) ++ echo "configure generated by autoconf version 2.13" ++ exit 0 ;; ++ ++ -with-* | --with-*) ++ ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` ++ # Reject names that are not valid shell variable names. ++ if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then ++ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } ++ fi ++ ac_package=`echo $ac_package| sed 's/-/_/g'` ++ case "$ac_option" in ++ *=*) ;; ++ *) ac_optarg=yes ;; ++ esac ++ eval "with_${ac_package}='$ac_optarg'" ;; ++ ++ -without-* | --without-*) ++ ac_package=`echo $ac_option|sed -e 's/-*without-//'` ++ # Reject names that are not valid shell variable names. ++ if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then ++ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } ++ fi ++ ac_package=`echo $ac_package| sed 's/-/_/g'` ++ eval "with_${ac_package}=no" ;; ++ ++ --x) ++ # Obsolete; use --with-x. ++ with_x=yes ;; ++ ++ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ ++ | --x-incl | --x-inc | --x-in | --x-i) ++ ac_prev=x_includes ;; ++ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ ++ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) ++ x_includes="$ac_optarg" ;; ++ ++ -x-libraries | --x-libraries | --x-librarie | --x-librari \ ++ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ++ ac_prev=x_libraries ;; ++ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ ++ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) ++ x_libraries="$ac_optarg" ;; ++ ++ -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } ++ ;; ++ ++ *) ++ if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then ++ echo "configure: warning: $ac_option: invalid host type" 1>&2 ++ fi ++ if test "x$nonopt" != xNONE; then ++ { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ++ fi ++ nonopt="$ac_option" ++ ;; ++ ++ esac ++done ++ ++if test -n "$ac_prev"; then ++ { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } ++fi ++ ++trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 ++ ++# File descriptor usage: ++# 0 standard input ++# 1 file creation ++# 2 errors and warnings ++# 3 some systems may open it to /dev/tty ++# 4 used on the Kubota Titan ++# 6 checking for... messages and results ++# 5 compiler messages saved in config.log ++if test "$silent" = yes; then ++ exec 6>/dev/null ++else ++ exec 6>&1 ++fi ++exec 5>./config.log ++ ++echo "\ ++This file contains any messages produced by compilers while ++running configure, to aid debugging if configure makes a mistake. ++" 1>&5 ++ ++# Strip out --no-create and --no-recursion so they do not pile up. ++# Also quote any args containing shell metacharacters. ++ac_configure_args= ++for ac_arg ++do ++ case "$ac_arg" in ++ -no-create | --no-create | --no-creat | --no-crea | --no-cre \ ++ | --no-cr | --no-c) ;; ++ -no-recursion | --no-recursion | --no-recursio | --no-recursi \ ++ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; ++ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) ++ ac_configure_args="$ac_configure_args '$ac_arg'" ;; ++ *) ac_configure_args="$ac_configure_args $ac_arg" ;; ++ esac ++done ++ ++# NLS nuisances. ++# Only set these to C if already set. These must not be set unconditionally ++# because not all systems understand e.g. LANG=C (notably SCO). ++# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! ++# Non-C LC_CTYPE values break the ctype check. ++if test "${LANG+set}" = set; then LANG=C; export LANG; fi ++if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi ++if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi ++if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi ++ ++# confdefs.h avoids OS command line length limits that DEFS can exceed. ++rm -rf conftest* confdefs.h ++# AIX cpp loses on an empty file, so make sure it contains at least a newline. ++echo > confdefs.h ++ ++# A filename unique to this package, relative to the directory that ++# configure is in, which we can look for to find out if srcdir is correct. ++ac_unique_file=Makefile.am ++ ++# Find the source files, if location was not specified. ++if test -z "$srcdir"; then ++ ac_srcdir_defaulted=yes ++ # Try the directory containing this script, then its parent. ++ ac_prog=$0 ++ ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` ++ test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. ++ srcdir=$ac_confdir ++ if test ! -r $srcdir/$ac_unique_file; then ++ srcdir=.. ++ fi ++else ++ ac_srcdir_defaulted=no ++fi ++if test ! -r $srcdir/$ac_unique_file; then ++ if test "$ac_srcdir_defaulted" = yes; then ++ { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } ++ else ++ { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } ++ fi ++fi ++srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` ++ ++# Prefer explicitly selected file to automatically selected ones. ++if test -z "$CONFIG_SITE"; then ++ if test "x$prefix" != xNONE; then ++ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" ++ else ++ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" ++ fi ++fi ++for ac_site_file in $CONFIG_SITE; do ++ if test -r "$ac_site_file"; then ++ echo "loading site script $ac_site_file" ++ . "$ac_site_file" ++ fi ++done ++ ++if test -r "$cache_file"; then ++ echo "loading cache $cache_file" ++ . $cache_file ++else ++ echo "creating cache $cache_file" ++ > $cache_file ++fi ++ ++ac_ext=c ++# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ++ac_cpp='$CPP $CPPFLAGS' ++ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ++ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' ++cross_compiling=$ac_cv_prog_cc_cross ++ ++ac_exeext= ++ac_objext=o ++if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then ++ # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. ++ if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then ++ ac_n= ac_c=' ++' ac_t=' ' ++ else ++ ac_n=-n ac_c= ac_t= ++ fi ++else ++ ac_n= ac_c='\c' ac_t= ++fi ++ ++ ++ ++ac_aux_dir= ++for ac_dir in ../../../.. $srcdir/../../../..; do ++ if test -f $ac_dir/install-sh; then ++ ac_aux_dir=$ac_dir ++ ac_install_sh="$ac_aux_dir/install-sh -c" ++ break ++ elif test -f $ac_dir/install.sh; then ++ ac_aux_dir=$ac_dir ++ ac_install_sh="$ac_aux_dir/install.sh -c" ++ break ++ fi ++done ++if test -z "$ac_aux_dir"; then ++ { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; } ++fi ++ac_config_guess=$ac_aux_dir/config.guess ++ac_config_sub=$ac_aux_dir/config.sub ++ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. ++ ++ ++am__api_version="1.4" ++# Find a good install program. We prefer a C program (faster), ++# so one script is as good as another. But avoid the broken or ++# incompatible versions: ++# SysV /etc/install, /usr/sbin/install ++# SunOS /usr/etc/install ++# IRIX /sbin/install ++# AIX /bin/install ++# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag ++# AFS /usr/afsws/bin/install, which mishandles nonexistent args ++# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" ++# ./install, which can be erroneously created by make from ./install.sh. ++echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ++echo "configure:578: checking for a BSD compatible install" >&5 ++if test -z "$INSTALL"; then ++if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" ++ for ac_dir in $PATH; do ++ # Account for people who put trailing slashes in PATH elements. ++ case "$ac_dir/" in ++ /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; ++ *) ++ # OSF1 and SCO ODT 3.0 have their own names for install. ++ # Don't use installbsd from OSF since it installs stuff as root ++ # by default. ++ for ac_prog in ginstall scoinst install; do ++ if test -f $ac_dir/$ac_prog; then ++ if test $ac_prog = install && ++ grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then ++ # AIX install. It has an incompatible calling convention. ++ : ++ else ++ ac_cv_path_install="$ac_dir/$ac_prog -c" ++ break 2 ++ fi ++ fi ++ done ++ ;; ++ esac ++ done ++ IFS="$ac_save_IFS" ++ ++fi ++ if test "${ac_cv_path_install+set}" = set; then ++ INSTALL="$ac_cv_path_install" ++ else ++ # As a last resort, use the slow shell script. We don't cache a ++ # path for INSTALL within a source directory, because that will ++ # break other packages using the cache if that directory is ++ # removed, or if the path is relative. ++ INSTALL="$ac_install_sh" ++ fi ++fi ++echo "$ac_t""$INSTALL" 1>&6 ++ ++# Use test -z because SunOS4 sh mishandles braces in ${var-val}. ++# It thinks the first close brace ends the variable substitution. ++test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' ++ ++test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' ++ ++test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' ++ ++echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 ++echo "configure:631: checking whether build environment is sane" >&5 ++# Just in case ++sleep 1 ++echo timestamp > conftestfile ++# Do `set' in a subshell so we don't clobber the current shell's ++# arguments. Must try -L first in case configure is actually a ++# symlink; some systems play weird games with the mod time of symlinks ++# (eg FreeBSD returns the mod time of the symlink's containing ++# directory). ++if ( ++ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` ++ if test "$*" = "X"; then ++ # -L didn't work. ++ set X `ls -t $srcdir/configure conftestfile` ++ fi ++ if test "$*" != "X $srcdir/configure conftestfile" \ ++ && test "$*" != "X conftestfile $srcdir/configure"; then ++ ++ # If neither matched, then we have a broken ls. This can happen ++ # if, for instance, CONFIG_SHELL is bash and it inherits a ++ # broken ls alias from the environment. This has actually ++ # happened. Such a system could not be considered "sane". ++ { echo "configure: error: ls -t appears to fail. Make sure there is not a broken ++alias in your environment" 1>&2; exit 1; } ++ fi ++ ++ test "$2" = conftestfile ++ ) ++then ++ # Ok. ++ : ++else ++ { echo "configure: error: newly created file is older than distributed files! ++Check your system clock" 1>&2; exit 1; } ++fi ++rm -f conftest* ++echo "$ac_t""yes" 1>&6 ++if test "$program_transform_name" = s,x,x,; then ++ program_transform_name= ++else ++ # Double any \ or $. echo might interpret backslashes. ++ cat <<\EOF_SED > conftestsed ++s,\\,\\\\,g; s,\$,$$,g ++EOF_SED ++ program_transform_name="`echo $program_transform_name|sed -f conftestsed`" ++ rm -f conftestsed ++fi ++test "$program_prefix" != NONE && ++ program_transform_name="s,^,${program_prefix},; $program_transform_name" ++# Use a double $ so make ignores it. ++test "$program_suffix" != NONE && ++ program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" ++ ++# sed with no file args requires a program. ++test "$program_transform_name" = "" && program_transform_name="s,x,x," ++ ++echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 ++echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5 ++set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` ++if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ cat > conftestmake <<\EOF ++all: ++ @echo 'ac_maketemp="${MAKE}"' ++EOF ++# GNU make sometimes prints "make[1]: Entering...", which would confuse us. ++eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` ++if test -n "$ac_maketemp"; then ++ eval ac_cv_prog_make_${ac_make}_set=yes ++else ++ eval ac_cv_prog_make_${ac_make}_set=no ++fi ++rm -f conftestmake ++fi ++if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then ++ echo "$ac_t""yes" 1>&6 ++ SET_MAKE= ++else ++ echo "$ac_t""no" 1>&6 ++ SET_MAKE="MAKE=${MAKE-make}" ++fi ++ ++if test $host != $build; then ++ ac_tool_prefix=${host_alias}- ++else ++ ac_tool_prefix= ++fi ++ ++echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 ++echo "configure:721: checking for Cygwin environment" >&5 ++if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then ++ rm -rf conftest* ++ ac_cv_cygwin=yes ++else ++ echo "configure: failed program was:" >&5 ++ cat conftest.$ac_ext >&5 ++ rm -rf conftest* ++ ac_cv_cygwin=no ++fi ++rm -f conftest* ++rm -f conftest* ++fi ++ ++echo "$ac_t""$ac_cv_cygwin" 1>&6 ++CYGWIN= ++test "$ac_cv_cygwin" = yes && CYGWIN=yes ++echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 ++echo "configure:754: checking for mingw32 environment" >&5 ++if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then ++ rm -rf conftest* ++ ac_cv_mingw32=yes ++else ++ echo "configure: failed program was:" >&5 ++ cat conftest.$ac_ext >&5 ++ rm -rf conftest* ++ ac_cv_mingw32=no ++fi ++rm -f conftest* ++rm -f conftest* ++fi ++ ++echo "$ac_t""$ac_cv_mingw32" 1>&6 ++MINGW32= ++test "$ac_cv_mingw32" = yes && MINGW32=yes ++ ++# Check whether --enable-multilib or --disable-multilib was given. ++if test "${enable_multilib+set}" = set; then ++ enableval="$enable_multilib" ++ case "${enableval}" in ++ yes) multilib=yes ;; ++ no) multilib=no ;; ++ *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;; ++ esac ++else ++ multilib=yes ++fi ++ ++# Check whether --enable-target-optspace or --disable-target-optspace was given. ++if test "${enable_target_optspace+set}" = set; then ++ enableval="$enable_target_optspace" ++ case "${enableval}" in ++ yes) target_optspace=yes ;; ++ no) target_optspace=no ;; ++ *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;; ++ esac ++else ++ target_optspace= ++fi ++ ++# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given. ++if test "${enable_malloc_debugging+set}" = set; then ++ enableval="$enable_malloc_debugging" ++ case "${enableval}" in ++ yes) malloc_debugging=yes ;; ++ no) malloc_debugging=no ;; ++ *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;; ++ esac ++else ++ malloc_debugging= ++fi ++ ++# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given. ++if test "${enable_newlib_multithread+set}" = set; then ++ enableval="$enable_newlib_multithread" ++ case "${enableval}" in ++ yes) newlib_multithread=yes ;; ++ no) newlib_multithread=no ;; ++ *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;; ++ esac ++else ++ newlib_multithread=yes ++fi ++ ++# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given. ++if test "${enable_newlib_iconv+set}" = set; then ++ enableval="$enable_newlib_iconv" ++ if test "${newlib_iconv+set}" != set; then ++ case "${enableval}" in ++ yes) newlib_iconv=yes ;; ++ no) newlib_iconv=no ;; ++ *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;; ++ esac ++ fi ++else ++ newlib_iconv=${newlib_iconv} ++fi ++ ++# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given. ++if test "${enable_newlib_elix_level+set}" = set; then ++ enableval="$enable_newlib_elix_level" ++ case "${enableval}" in ++ 0) newlib_elix_level=0 ;; ++ 1) newlib_elix_level=1 ;; ++ 2) newlib_elix_level=2 ;; ++ 3) newlib_elix_level=3 ;; ++ 4) newlib_elix_level=4 ;; ++ *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;; ++ esac ++else ++ newlib_elix_level=0 ++fi ++ ++# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given. ++if test "${enable_newlib_io_float+set}" = set; then ++ enableval="$enable_newlib_io_float" ++ case "${enableval}" in ++ yes) newlib_io_float=yes ;; ++ no) newlib_io_float=no ;; ++ *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;; ++ esac ++else ++ newlib_io_float=yes ++fi ++ ++# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given. ++if test "${enable_newlib_supplied_syscalls+set}" = set; then ++ enableval="$enable_newlib_supplied_syscalls" ++ case "${enableval}" in ++ yes) newlib_may_supply_syscalls=yes ;; ++ no) newlib_may_supply_syscalls=no ;; ++ *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;; ++ esac ++else ++ newlib_may_supply_syscalls=yes ++fi ++ ++ ++ ++if test x${newlib_may_supply_syscalls} = xyes; then ++ MAY_SUPPLY_SYSCALLS_TRUE= ++ MAY_SUPPLY_SYSCALLS_FALSE='#' ++else ++ MAY_SUPPLY_SYSCALLS_TRUE='#' ++ MAY_SUPPLY_SYSCALLS_FALSE= ++fi ++ ++ ++test -z "${with_target_subdir}" && with_target_subdir=. ++ ++if test "${srcdir}" = "."; then ++ if test "${with_target_subdir}" != "."; then ++ newlib_basedir="${srcdir}/${with_multisrctop}../../../.." ++ else ++ newlib_basedir="${srcdir}/${with_multisrctop}../../.." ++ fi ++else ++ newlib_basedir="${srcdir}/../../.." ++fi ++ ++ ++ ++# Do some error checking and defaulting for the host and target type. ++# The inputs are: ++# configure --host=HOST --target=TARGET --build=BUILD NONOPT ++# ++# The rules are: ++# 1. You are not allowed to specify --host, --target, and nonopt at the ++# same time. ++# 2. Host defaults to nonopt. ++# 3. If nonopt is not specified, then host defaults to the current host, ++# as determined by config.guess. ++# 4. Target and build default to nonopt. ++# 5. If nonopt is not specified, then target and build default to host. ++ ++# The aliases save the names the user supplied, while $host etc. ++# will get canonicalized. ++case $host---$target---$nonopt in ++NONE---*---* | *---NONE---* | *---*---NONE) ;; ++*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; ++esac ++ ++ ++# Make sure we can run config.sub. ++if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : ++else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } ++fi ++ ++echo $ac_n "checking host system type""... $ac_c" 1>&6 ++echo "configure:936: checking host system type" >&5 ++ ++host_alias=$host ++case "$host_alias" in ++NONE) ++ case $nonopt in ++ NONE) ++ if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : ++ else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } ++ fi ;; ++ *) host_alias=$nonopt ;; ++ esac ;; ++esac ++ ++host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` ++host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` ++host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` ++host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` ++echo "$ac_t""$host" 1>&6 ++ ++echo $ac_n "checking target system type""... $ac_c" 1>&6 ++echo "configure:957: checking target system type" >&5 ++ ++target_alias=$target ++case "$target_alias" in ++NONE) ++ case $nonopt in ++ NONE) target_alias=$host_alias ;; ++ *) target_alias=$nonopt ;; ++ esac ;; ++esac ++ ++target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` ++target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` ++target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` ++target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` ++echo "$ac_t""$target" 1>&6 ++ ++echo $ac_n "checking build system type""... $ac_c" 1>&6 ++echo "configure:975: checking build system type" >&5 ++ ++build_alias=$build ++case "$build_alias" in ++NONE) ++ case $nonopt in ++ NONE) build_alias=$host_alias ;; ++ *) build_alias=$nonopt ;; ++ esac ;; ++esac ++ ++build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` ++build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` ++build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` ++build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` ++echo "$ac_t""$build" 1>&6 ++ ++test "$host_alias" != "$target_alias" && ++ test "$program_prefix$program_suffix$program_transform_name" = \ ++ NONENONEs,x,x, && ++ program_prefix=${target_alias}- ++ ++ ++ ++PACKAGE=newlib ++ ++VERSION=1.14.0 ++ ++if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then ++ { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } ++fi ++cat >> confdefs.h <> confdefs.h <&6 ++echo "configure:1018: checking for working aclocal-${am__api_version}" >&5 ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then ++ ACLOCAL=aclocal-${am__api_version} ++ echo "$ac_t""found" 1>&6 ++else ++ ACLOCAL="$missing_dir/missing aclocal-${am__api_version}" ++ echo "$ac_t""missing" 1>&6 ++fi ++ ++echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 ++echo "configure:1031: checking for working autoconf" >&5 ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if (autoconf --version) < /dev/null > /dev/null 2>&1; then ++ AUTOCONF=autoconf ++ echo "$ac_t""found" 1>&6 ++else ++ AUTOCONF="$missing_dir/missing autoconf" ++ echo "$ac_t""missing" 1>&6 ++fi ++ ++echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6 ++echo "configure:1044: checking for working automake-${am__api_version}" >&5 ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then ++ AUTOMAKE=automake-${am__api_version} ++ echo "$ac_t""found" 1>&6 ++else ++ AUTOMAKE="$missing_dir/missing automake-${am__api_version}" ++ echo "$ac_t""missing" 1>&6 ++fi ++ ++echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 ++echo "configure:1057: checking for working autoheader" >&5 ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if (autoheader --version) < /dev/null > /dev/null 2>&1; then ++ AUTOHEADER=autoheader ++ echo "$ac_t""found" 1>&6 ++else ++ AUTOHEADER="$missing_dir/missing autoheader" ++ echo "$ac_t""missing" 1>&6 ++fi ++ ++echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 ++echo "configure:1070: checking for working makeinfo" >&5 ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if (makeinfo --version) < /dev/null > /dev/null 2>&1; then ++ MAKEINFO=makeinfo ++ echo "$ac_t""found" 1>&6 ++else ++ MAKEINFO="$missing_dir/missing makeinfo" ++ echo "$ac_t""missing" 1>&6 ++fi ++ ++ ++ ++# FIXME: We temporarily define our own version of AC_PROG_CC. This is ++# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We ++# are probably using a cross compiler, which will not be able to fully ++# link an executable. This should really be fixed in autoconf ++# itself. ++ ++ ++ ++# Extract the first word of "gcc", so it can be a program name with args. ++set dummy gcc; ac_word=$2 ++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1095: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$CC"; then ++ ac_cv_prog_CC="$CC" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ ac_cv_prog_CC="gcc" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++fi ++fi ++CC="$ac_cv_prog_CC" ++if test -n "$CC"; then ++ echo "$ac_t""$CC" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1125: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$CC"; then ++ ac_cv_prog_CC="$CC" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_prog_rejected=no ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then ++ ac_prog_rejected=yes ++ continue ++ fi ++ ac_cv_prog_CC="cc" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++if test $ac_prog_rejected = yes; then ++ # We found a bogon in the path, so make sure we never use it. ++ set dummy $ac_cv_prog_CC ++ shift ++ if test $# -gt 0; then ++ # We chose a different compiler from the bogus one. ++ # However, it has the same basename, so the bogon will be chosen ++ # first if we set CC to just the basename; use the full file name. ++ shift ++ set dummy "$ac_dir/$ac_word" "$@" ++ shift ++ ac_cv_prog_CC="$@" ++ fi ++fi ++fi ++fi ++CC="$ac_cv_prog_CC" ++if test -n "$CC"; then ++ echo "$ac_t""$CC" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++fi ++ ++ test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } ++fi ++ ++echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 ++echo "configure:1174: checking whether we are using GNU C" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ++ ac_cv_prog_gcc=yes ++else ++ ac_cv_prog_gcc=no ++fi ++fi ++ ++echo "$ac_t""$ac_cv_prog_gcc" 1>&6 ++ ++if test $ac_cv_prog_gcc = yes; then ++ GCC=yes ++ ac_test_CFLAGS="${CFLAGS+set}" ++ ac_save_CFLAGS="$CFLAGS" ++ CFLAGS= ++ echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 ++echo "configure:1198: checking whether ${CC-cc} accepts -g" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ echo 'void f(){}' > conftest.c ++if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then ++ ac_cv_prog_cc_g=yes ++else ++ ac_cv_prog_cc_g=no ++fi ++rm -f conftest* ++ ++fi ++ ++echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 ++ if test "$ac_test_CFLAGS" = set; then ++ CFLAGS="$ac_save_CFLAGS" ++ elif test $ac_cv_prog_cc_g = yes; then ++ CFLAGS="-g -O2" ++ else ++ CFLAGS="-O2" ++ fi ++else ++ GCC= ++ test "${CFLAGS+set}" = set || CFLAGS="-g" ++fi ++ ++ ++# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. ++set dummy ${ac_tool_prefix}as; ac_word=$2 ++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1229: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$AS"; then ++ ac_cv_prog_AS="$AS" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ ac_cv_prog_AS="${ac_tool_prefix}as" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++ test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as" ++fi ++fi ++AS="$ac_cv_prog_AS" ++if test -n "$AS"; then ++ echo "$ac_t""$AS" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++fi ++ ++ ++ ++# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. ++set dummy ${ac_tool_prefix}ar; ac_word=$2 ++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1261: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$AR"; then ++ ac_cv_prog_AR="$AR" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ ac_cv_prog_AR="${ac_tool_prefix}ar" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++ test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" ++fi ++fi ++AR="$ac_cv_prog_AR" ++if test -n "$AR"; then ++ echo "$ac_t""$AR" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++fi ++ ++ ++ ++# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1293: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$RANLIB"; then ++ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++fi ++fi ++RANLIB="$ac_cv_prog_RANLIB" ++if test -n "$RANLIB"; then ++ echo "$ac_t""$RANLIB" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++fi ++ ++ ++if test -z "$ac_cv_prog_RANLIB"; then ++if test -n "$ac_tool_prefix"; then ++ # Extract the first word of "ranlib", so it can be a program name with args. ++set dummy ranlib; ac_word=$2 ++echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 ++echo "configure:1325: checking for $ac_word" >&5 ++if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test -n "$RANLIB"; then ++ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. ++else ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" ++ ac_dummy="$PATH" ++ for ac_dir in $ac_dummy; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f $ac_dir/$ac_word; then ++ ac_cv_prog_RANLIB="ranlib" ++ break ++ fi ++ done ++ IFS="$ac_save_ifs" ++ test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" ++fi ++fi ++RANLIB="$ac_cv_prog_RANLIB" ++if test -n "$RANLIB"; then ++ echo "$ac_t""$RANLIB" 1>&6 ++else ++ echo "$ac_t""no" 1>&6 ++fi ++ ++else ++ RANLIB=":" ++fi ++fi ++ ++ ++# Find a good install program. We prefer a C program (faster), ++# so one script is as good as another. But avoid the broken or ++# incompatible versions: ++# SysV /etc/install, /usr/sbin/install ++# SunOS /usr/etc/install ++# IRIX /sbin/install ++# AIX /bin/install ++# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag ++# AFS /usr/afsws/bin/install, which mishandles nonexistent args ++# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" ++# ./install, which can be erroneously created by make from ./install.sh. ++echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 ++echo "configure:1370: checking for a BSD compatible install" >&5 ++if test -z "$INSTALL"; then ++if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" ++ for ac_dir in $PATH; do ++ # Account for people who put trailing slashes in PATH elements. ++ case "$ac_dir/" in ++ /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; ++ *) ++ # OSF1 and SCO ODT 3.0 have their own names for install. ++ # Don't use installbsd from OSF since it installs stuff as root ++ # by default. ++ for ac_prog in ginstall scoinst install; do ++ if test -f $ac_dir/$ac_prog; then ++ if test $ac_prog = install && ++ grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then ++ # AIX install. It has an incompatible calling convention. ++ : ++ else ++ ac_cv_path_install="$ac_dir/$ac_prog -c" ++ break 2 ++ fi ++ fi ++ done ++ ;; ++ esac ++ done ++ IFS="$ac_save_IFS" ++ ++fi ++ if test "${ac_cv_path_install+set}" = set; then ++ INSTALL="$ac_cv_path_install" ++ else ++ # As a last resort, use the slow shell script. We don't cache a ++ # path for INSTALL within a source directory, because that will ++ # break other packages using the cache if that directory is ++ # removed, or if the path is relative. ++ INSTALL="$ac_install_sh" ++ fi ++fi ++echo "$ac_t""$INSTALL" 1>&6 ++ ++# Use test -z because SunOS4 sh mishandles braces in ${var-val}. ++# It thinks the first close brace ends the variable substitution. ++test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' ++ ++test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' ++ ++test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' ++ ++ ++echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 ++echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5 ++ # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. ++if test "${enable_maintainer_mode+set}" = set; then ++ enableval="$enable_maintainer_mode" ++ USE_MAINTAINER_MODE=$enableval ++else ++ USE_MAINTAINER_MODE=no ++fi ++ ++ echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 ++ ++ ++if test $USE_MAINTAINER_MODE = yes; then ++ MAINTAINER_MODE_TRUE= ++ MAINTAINER_MODE_FALSE='#' ++else ++ MAINTAINER_MODE_TRUE='#' ++ MAINTAINER_MODE_FALSE= ++fi ++ MAINT=$MAINTAINER_MODE_TRUE ++ ++ ++ ++# We need AC_EXEEXT to keep automake happy in cygnus mode. However, ++# at least currently, we never actually build a program, so we never ++# need to use $(EXEEXT). Moreover, the test for EXEEXT normally ++# fails, because we are probably configuring with a cross compiler ++# which can't create executables. So we include AC_EXEEXT to keep ++# automake happy, but we don't execute it, since we don't care about ++# the result. ++if false; then ++ ++ ++echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 ++echo "configure:1458: checking for executable suffix" >&5 ++if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then ++ echo $ac_n "(cached) $ac_c" 1>&6 ++else ++ if test "$CYGWIN" = yes || test "$MINGW32" = yes; then ++ ac_cv_exeext=.exe ++else ++ rm -f conftest* ++ echo 'int main () { return 0; }' > conftest.$ac_ext ++ ac_cv_exeext= ++ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then ++ for file in conftest.*; do ++ case $file in ++ *.c | *.o | *.obj) ;; ++ *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; ++ esac ++ done ++ else ++ { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; } ++ fi ++ rm -f conftest* ++ test x"${ac_cv_exeext}" = x && ac_cv_exeext=no ++fi ++fi ++ ++EXEEXT="" ++test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext} ++echo "$ac_t""${ac_cv_exeext}" 1>&6 ++ac_exeext=$EXEEXT ++ ++fi ++ ++. ${newlib_basedir}/configure.host ++ ++newlib_cflags="${newlib_cflags} -fno-builtin" ++ ++NEWLIB_CFLAGS=${newlib_cflags} ++ ++ ++LDFLAGS=${ldflags} ++ ++ ++ ++ ++if test x${newlib_elix_level} = x0; then ++ ELIX_LEVEL_0_TRUE= ++ ELIX_LEVEL_0_FALSE='#' ++else ++ ELIX_LEVEL_0_TRUE='#' ++ ELIX_LEVEL_0_FALSE= ++fi ++ ++ ++if test x${newlib_elix_level} = x1; then ++ ELIX_LEVEL_1_TRUE= ++ ELIX_LEVEL_1_FALSE='#' ++else ++ ELIX_LEVEL_1_TRUE='#' ++ ELIX_LEVEL_1_FALSE= ++fi ++ ++ ++if test x${newlib_elix_level} = x2; then ++ ELIX_LEVEL_2_TRUE= ++ ELIX_LEVEL_2_FALSE='#' ++else ++ ELIX_LEVEL_2_TRUE='#' ++ ELIX_LEVEL_2_FALSE= ++fi ++ ++ ++if test x${newlib_elix_level} = x3; then ++ ELIX_LEVEL_3_TRUE= ++ ELIX_LEVEL_3_FALSE='#' ++else ++ ELIX_LEVEL_3_TRUE='#' ++ ELIX_LEVEL_3_FALSE= ++fi ++ ++ ++if test x${newlib_elix_level} = x4; then ++ ELIX_LEVEL_4_TRUE= ++ ELIX_LEVEL_4_FALSE='#' ++else ++ ELIX_LEVEL_4_TRUE='#' ++ ELIX_LEVEL_4_FALSE= ++fi ++ ++ ++ ++if test x${use_libtool} = xyes; then ++ USE_LIBTOOL_TRUE= ++ USE_LIBTOOL_FALSE='#' ++else ++ USE_LIBTOOL_TRUE='#' ++ USE_LIBTOOL_FALSE= ++fi ++ ++# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we ++# use oext, which is set in configure.host based on the target platform. ++OBJEXT=${oext} ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++trap '' 1 2 15 ++cat > confcache <<\EOF ++# This file is a shell script that caches the results of configure ++# tests run on this system so they can be shared between configure ++# scripts and configure runs. It is not useful on other systems. ++# If it contains results you don't want to keep, you may remove or edit it. ++# ++# By default, configure uses ./config.cache as the cache file, ++# creating it if it does not exist already. You can give configure ++# the --cache-file=FILE option to use a different cache file; that is ++# what configure does when it calls configure scripts in ++# subdirectories, so they share the cache. ++# Giving --cache-file=/dev/null disables caching, for debugging configure. ++# config.status only pays attention to the cache file if you give it the ++# --recheck option to rerun configure. ++# ++EOF ++# The following way of writing the cache mishandles newlines in values, ++# but we know of no workaround that is simple, portable, and efficient. ++# So, don't put newlines in cache variables' values. ++# Ultrix sh set writes to stderr and can't be redirected directly, ++# and sets the high bit in the cache file unless we assign to the vars. ++(set) 2>&1 | ++ case `(ac_space=' '; set | grep ac_space) 2>&1` in ++ *ac_space=\ *) ++ # `set' does not quote correctly, so add quotes (double-quote substitution ++ # turns \\\\ into \\, and sed turns \\ into \). ++ sed -n \ ++ -e "s/'/'\\\\''/g" \ ++ -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" ++ ;; ++ *) ++ # `set' quotes correctly as required by POSIX, so do not add quotes. ++ sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' ++ ;; ++ esac >> confcache ++if cmp -s $cache_file confcache; then ++ : ++else ++ if test -w $cache_file; then ++ echo "updating cache $cache_file" ++ cat confcache > $cache_file ++ else ++ echo "not updating unwritable cache $cache_file" ++ fi ++fi ++rm -f confcache ++ ++trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 ++ ++test "x$prefix" = xNONE && prefix=$ac_default_prefix ++# Let make expand exec_prefix. ++test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' ++ ++# Any assignment to VPATH causes Sun make to only execute ++# the first set of double-colon rules, so remove it if not needed. ++# If there is a colon in the path, we need to keep it. ++if test "x$srcdir" = x.; then ++ ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' ++fi ++ ++trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 ++ ++# Transform confdefs.h into DEFS. ++# Protect against shell expansion while executing Makefile rules. ++# Protect against Makefile macro expansion. ++# ++# If the first sed substitution is executed (which looks for macros that ++# take arguments), then we branch to the quote section. Otherwise, ++# look for a macro that doesn't take arguments. ++cat >confdef2opt.sed <<\_ACEOF ++t clear ++: clear ++s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g ++t quote ++s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g ++t quote ++d ++: quote ++s,[ `~#$^&*(){}\\|;'"<>?],\\&,g ++s,\[,\\&,g ++s,\],\\&,g ++s,\$,$$,g ++p ++_ACEOF ++# We use echo to avoid assuming a particular line-breaking character. ++# The extra dot is to prevent the shell from consuming trailing ++# line-breaks from the sub-command output. A line-break within ++# single-quotes doesn't work because, if this script is created in a ++# platform that uses two characters for line-breaks (e.g., DOS), tr ++# would break. ++ac_LF_and_DOT=`echo; echo .` ++DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` ++rm -f confdef2opt.sed ++ ++ ++# Without the "./", some shells look in PATH for config.status. ++: ${CONFIG_STATUS=./config.status} ++ ++echo creating $CONFIG_STATUS ++rm -f $CONFIG_STATUS ++cat > $CONFIG_STATUS </dev/null | sed 1q`: ++# ++# $0 $ac_configure_args ++# ++# Compiler output produced by configure, useful for debugging ++# configure, is in ./config.log if it exists. ++ ++ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" ++for ac_option ++do ++ case "\$ac_option" in ++ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ++ echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" ++ exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; ++ -version | --version | --versio | --versi | --vers | --ver | --ve | --v) ++ echo "$CONFIG_STATUS generated by autoconf version 2.13" ++ exit 0 ;; ++ -help | --help | --hel | --he | --h) ++ echo "\$ac_cs_usage"; exit 0 ;; ++ *) echo "\$ac_cs_usage"; exit 1 ;; ++ esac ++done ++ ++ac_given_srcdir=$srcdir ++ac_given_INSTALL="$INSTALL" ++ ++trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 ++EOF ++cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF ++$ac_vpsub ++$extrasub ++s%@SHELL@%$SHELL%g ++s%@CFLAGS@%$CFLAGS%g ++s%@CPPFLAGS@%$CPPFLAGS%g ++s%@CXXFLAGS@%$CXXFLAGS%g ++s%@FFLAGS@%$FFLAGS%g ++s%@DEFS@%$DEFS%g ++s%@LDFLAGS@%$LDFLAGS%g ++s%@LIBS@%$LIBS%g ++s%@exec_prefix@%$exec_prefix%g ++s%@prefix@%$prefix%g ++s%@program_transform_name@%$program_transform_name%g ++s%@bindir@%$bindir%g ++s%@sbindir@%$sbindir%g ++s%@libexecdir@%$libexecdir%g ++s%@datadir@%$datadir%g ++s%@sysconfdir@%$sysconfdir%g ++s%@sharedstatedir@%$sharedstatedir%g ++s%@localstatedir@%$localstatedir%g ++s%@libdir@%$libdir%g ++s%@includedir@%$includedir%g ++s%@oldincludedir@%$oldincludedir%g ++s%@infodir@%$infodir%g ++s%@mandir@%$mandir%g ++s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g ++s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g ++s%@newlib_basedir@%$newlib_basedir%g ++s%@host@%$host%g ++s%@host_alias@%$host_alias%g ++s%@host_cpu@%$host_cpu%g ++s%@host_vendor@%$host_vendor%g ++s%@host_os@%$host_os%g ++s%@target@%$target%g ++s%@target_alias@%$target_alias%g ++s%@target_cpu@%$target_cpu%g ++s%@target_vendor@%$target_vendor%g ++s%@target_os@%$target_os%g ++s%@build@%$build%g ++s%@build_alias@%$build_alias%g ++s%@build_cpu@%$build_cpu%g ++s%@build_vendor@%$build_vendor%g ++s%@build_os@%$build_os%g ++s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g ++s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g ++s%@INSTALL_DATA@%$INSTALL_DATA%g ++s%@PACKAGE@%$PACKAGE%g ++s%@VERSION@%$VERSION%g ++s%@ACLOCAL@%$ACLOCAL%g ++s%@AUTOCONF@%$AUTOCONF%g ++s%@AUTOMAKE@%$AUTOMAKE%g ++s%@AUTOHEADER@%$AUTOHEADER%g ++s%@MAKEINFO@%$MAKEINFO%g ++s%@SET_MAKE@%$SET_MAKE%g ++s%@CC@%$CC%g ++s%@AS@%$AS%g ++s%@AR@%$AR%g ++s%@RANLIB@%$RANLIB%g ++s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g ++s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g ++s%@MAINT@%$MAINT%g ++s%@EXEEXT@%$EXEEXT%g ++s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g ++s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g ++s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g ++s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g ++s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g ++s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g ++s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g ++s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g ++s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g ++s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g ++s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g ++s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g ++s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g ++s%@OBJEXT@%$OBJEXT%g ++s%@oext@%$oext%g ++s%@aext@%$aext%g ++s%@libm_machine_dir@%$libm_machine_dir%g ++s%@machine_dir@%$machine_dir%g ++s%@sys_dir@%$sys_dir%g ++ ++CEOF ++EOF ++ ++cat >> $CONFIG_STATUS <<\EOF ++ ++# Split the substitutions into bite-sized pieces for seds with ++# small command number limits, like on Digital OSF/1 and HP-UX. ++ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. ++ac_file=1 # Number of current file. ++ac_beg=1 # First line for current file. ++ac_end=$ac_max_sed_cmds # Line after last line for current file. ++ac_more_lines=: ++ac_sed_cmds="" ++while $ac_more_lines; do ++ if test $ac_beg -gt 1; then ++ sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file ++ else ++ sed "${ac_end}q" conftest.subs > conftest.s$ac_file ++ fi ++ if test ! -s conftest.s$ac_file; then ++ ac_more_lines=false ++ rm -f conftest.s$ac_file ++ else ++ if test -z "$ac_sed_cmds"; then ++ ac_sed_cmds="sed -f conftest.s$ac_file" ++ else ++ ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" ++ fi ++ ac_file=`expr $ac_file + 1` ++ ac_beg=$ac_end ++ ac_end=`expr $ac_end + $ac_max_sed_cmds` ++ fi ++done ++if test -z "$ac_sed_cmds"; then ++ ac_sed_cmds=cat ++fi ++EOF ++ ++cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF ++for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then ++ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". ++ case "$ac_file" in ++ *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` ++ ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; ++ *) ac_file_in="${ac_file}.in" ;; ++ esac ++ ++ # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. ++ ++ # Remove last slash and all that follows it. Not all systems have dirname. ++ ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` ++ if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then ++ # The file is in a subdirectory. ++ test ! -d "$ac_dir" && mkdir "$ac_dir" ++ ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" ++ # A "../" for each directory in $ac_dir_suffix. ++ ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` ++ else ++ ac_dir_suffix= ac_dots= ++ fi ++ ++ case "$ac_given_srcdir" in ++ .) srcdir=. ++ if test -z "$ac_dots"; then top_srcdir=. ++ else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; ++ /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; ++ *) # Relative path. ++ srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" ++ top_srcdir="$ac_dots$ac_given_srcdir" ;; ++ esac ++ ++ case "$ac_given_INSTALL" in ++ [/$]*) INSTALL="$ac_given_INSTALL" ;; ++ *) INSTALL="$ac_dots$ac_given_INSTALL" ;; ++ esac ++ ++ echo creating "$ac_file" ++ rm -f "$ac_file" ++ configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." ++ case "$ac_file" in ++ *Makefile*) ac_comsub="1i\\ ++# $configure_input" ;; ++ *) ac_comsub= ;; ++ esac ++ ++ ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` ++ sed -e "$ac_comsub ++s%@configure_input@%$configure_input%g ++s%@srcdir@%$srcdir%g ++s%@top_srcdir@%$top_srcdir%g ++s%@INSTALL@%$INSTALL%g ++" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file ++fi; done ++rm -f conftest.s* ++ ++EOF ++cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF ++ ++exit 0 ++EOF ++chmod +x $CONFIG_STATUS ++rm -fr confdefs* $ac_clean_files ++test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 ++ +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/configure.in newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/configure.in +--- newlib-1.14.0/newlib/libc/machine/bfin/configure.in 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/configure.in 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,12 @@ ++dnl This is the newlib/libc/machine/bfin configure.in file. ++dnl Process this file with autoconf to produce a configure script. ++ ++AC_PREREQ(2.5) ++AC_INIT(Makefile.am) ++ ++dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. ++AC_CONFIG_AUX_DIR(../../../..) ++ ++NEWLIB_CONFIGURE(../../..) ++ ++AC_OUTPUT(Makefile) +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/longjmp.S newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/longjmp.S +--- newlib-1.14.0/newlib/libc/machine/bfin/longjmp.S 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/longjmp.S 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,115 @@ ++/* ++ * longjmp for the Blackfin processor ++ * ++ * Copyright (C) 2006 Analog Devices, Inc. ++ * ++ * The authors hereby grant permission to use, copy, modify, distribute, ++ * and license this software and its documentation for any purpose, provided ++ * that existing copyright notices are retained in all copies and that this ++ * notice is included verbatim in any distributions. No written agreement, ++ * license, or royalty fee is required for any of the authorized uses. ++ * Modifications to this software may be copyrighted by their authors ++ * and need not follow the licensing terms described here, provided that ++ * the new terms are clearly indicated on the first page of each file where ++ * they apply. ++ */ ++ ++#define _ASM ++#define _SETJMP_H ++ ++ ++.text; ++.align 4; ++.globl _longjmp; ++.type _longjmp, STT_FUNC; ++_longjmp: ++ P0 = R0; ++ R0 = [P0 + 0x00]; ++ [--SP] = R0; /* Put P0 on the stack */ ++ ++ P1 = [P0 + 0x04]; ++ P2 = [P0 + 0x08]; ++ P3 = [P0 + 0x0C]; ++ P4 = [P0 + 0x10]; ++ P5 = [P0 + 0x14]; ++ ++ FP = [P0 + 0x18]; ++ R0 = [SP++]; /* Grab P0 from old stack */ ++ SP = [P0 + 0x1C]; /* Update Stack Pointer */ ++ [--SP] = R0; /* Put P0 on new stack */ ++ [--SP] = R1; /* Put VAL arg on new stack */ ++ ++ R0 = [P0 + 0x20]; /* Data Registers */ ++ R1 = [P0 + 0x24]; ++ R2 = [P0 + 0x28]; ++ R3 = [P0 + 0x2C]; ++ R4 = [P0 + 0x30]; ++ R5 = [P0 + 0x34]; ++ R6 = [P0 + 0x38]; ++ R7 = [P0 + 0x3C]; ++ ++ R0 = [P0 + 0x40]; ++ ASTAT = R0; ++ ++ R0 = [P0 + 0x44]; /* Loop Counters */ ++ LC0 = R0; ++ R0 = [P0 + 0x48]; ++ LC1 = R0; ++ ++ R0 = [P0 + 0x4C]; /* Accumulators */ ++ A0.W = R0; ++ R0 = [P0 + 0x50]; ++ A0.X = R0; ++ R0 = [P0 + 0x54]; ++ A1.W = R0; ++ R0 = [P0 + 0x58]; ++ A1.X = R0; ++ ++ R0 = [P0 + 0x5C]; /* Index Registers */ ++ I0 = R0; ++ R0 = [P0 + 0x60]; ++ I1 = R0; ++ R0 = [P0 + 0x64]; ++ I2 = R0; ++ R0 = [P0 + 0x68]; ++ I3 = R0; ++ ++ R0 = [P0 + 0x6C]; /* Modifier Registers */ ++ M0 = R0; ++ R0 = [P0 + 0x70]; ++ M1 = R0; ++ R0 = [P0 + 0x74]; ++ M2 = R0; ++ R0 = [P0 + 0x78]; ++ M3 = R0; ++ ++ R0 = [P0 + 0x7C]; /* Length Registers */ ++ L0 = R0; ++ R0 = [P0 + 0x80]; ++ L1 = R0; ++ R0 = [P0 + 0x84]; ++ L2 = R0; ++ R0 = [P0 + 0x88]; ++ L3 = R0; ++ ++ R0 = [P0 + 0x8C]; /* Base Registers */ ++ B0 = R0; ++ R0 = [P0 + 0x90]; ++ B1 = R0; ++ R0 = [P0 + 0x94]; ++ B2 = R0; ++ R0 = [P0 + 0x98]; ++ B3 = R0; ++ ++ R0 = [P0 + 0x9C]; /* Return Address (PC) */ ++ RETS = R0; ++ ++ R0 = [SP++]; ++ P0 = [SP++]; ++ ++ CC = R0 == 0; ++ IF !CC JUMP 1f; ++ R0 = 1; ++1: ++ RTS; ++.size _longjmp, .-_longjmp; +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/Makefile.am newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/Makefile.am +--- newlib-1.14.0/newlib/libc/machine/bfin/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/Makefile.am 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,12 @@ ++## Process this file with automake to generate Makefile.in ++ ++AUTOMAKE_OPTIONS = cygnus ++ ++INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) ++ ++noinst_LIBRARIES = lib.a ++ ++lib_a_SOURCES = setjmp.S longjmp.S ++ ++ACLOCAL_AMFLAGS = -I ../../.. ++CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/Makefile.in newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/Makefile.in +--- newlib-1.14.0/newlib/libc/machine/bfin/Makefile.in 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/Makefile.in 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,327 @@ ++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am ++ ++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. ++# This Makefile.in is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++# PARTICULAR PURPOSE. ++ ++ ++SHELL = @SHELL@ ++ ++srcdir = @srcdir@ ++top_srcdir = @top_srcdir@ ++VPATH = @srcdir@ ++prefix = @prefix@ ++exec_prefix = @exec_prefix@ ++ ++bindir = @bindir@ ++sbindir = @sbindir@ ++libexecdir = @libexecdir@ ++datadir = @datadir@ ++sysconfdir = @sysconfdir@ ++sharedstatedir = @sharedstatedir@ ++localstatedir = @localstatedir@ ++libdir = @libdir@ ++infodir = @infodir@ ++mandir = @mandir@ ++includedir = @includedir@ ++oldincludedir = /usr/include ++ ++DESTDIR = ++ ++pkgdatadir = $(datadir)/@PACKAGE@ ++pkglibdir = $(libdir)/@PACKAGE@ ++pkgincludedir = $(includedir)/@PACKAGE@ ++ ++top_builddir = . ++ ++ACLOCAL = @ACLOCAL@ ++AUTOCONF = @AUTOCONF@ ++AUTOMAKE = @AUTOMAKE@ ++AUTOHEADER = @AUTOHEADER@ ++ ++INSTALL = @INSTALL@ ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) ++INSTALL_DATA = @INSTALL_DATA@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ ++transform = @program_transform_name@ ++ ++NORMAL_INSTALL = : ++PRE_INSTALL = : ++POST_INSTALL = : ++NORMAL_UNINSTALL = : ++PRE_UNINSTALL = : ++POST_UNINSTALL = : ++build_alias = @build_alias@ ++build_triplet = @build@ ++host_alias = @host_alias@ ++host_triplet = @host@ ++target_alias = @target_alias@ ++target_triplet = @target@ ++AR = @AR@ ++AS = @AS@ ++CC = @CC@ ++CPP = @CPP@ ++EXEEXT = @EXEEXT@ ++LDFLAGS = @LDFLAGS@ ++MAINT = @MAINT@ ++MAKEINFO = @MAKEINFO@ ++NEWLIB_CFLAGS = @NEWLIB_CFLAGS@ ++OBJEXT = @OBJEXT@ ++PACKAGE = @PACKAGE@ ++RANLIB = @RANLIB@ ++VERSION = @VERSION@ ++aext = @aext@ ++libm_machine_dir = @libm_machine_dir@ ++machine_dir = @machine_dir@ ++newlib_basedir = @newlib_basedir@ ++oext = @oext@ ++sys_dir = @sys_dir@ ++ ++AUTOMAKE_OPTIONS = cygnus ++ ++INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) ++ ++noinst_LIBRARIES = lib.a ++ ++lib_a_SOURCES = setjmp.S longjmp.S ++ ++ACLOCAL_AMFLAGS = -I ../../.. ++CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs ++CONFIG_CLEAN_FILES = ++LIBRARIES = $(noinst_LIBRARIES) ++ ++ ++DEFS = @DEFS@ -I. -I$(srcdir) ++CPPFLAGS = @CPPFLAGS@ ++LIBS = @LIBS@ ++lib_a_LIBADD = ++lib_a_OBJECTS = setjmp.o longjmp.o ++CFLAGS = @CFLAGS@ ++COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ ++DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in ++ ++ ++DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ++ ++TAR = gtar ++GZIP_ENV = --best ++SOURCES = $(lib_a_SOURCES) ++OBJECTS = $(lib_a_OBJECTS) ++ ++all: all-redirect ++.SUFFIXES: ++.SUFFIXES: .S .c .o .s ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) ++ cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile ++ ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ cd $(top_builddir) \ ++ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status ++ ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \ ++ ../../../acinclude.m4 ../../../aclocal.m4 \ ++ ../../../libtool.m4 ++ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) ++ ++config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++ $(SHELL) ./config.status --recheck ++$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) ++ cd $(srcdir) && $(AUTOCONF) ++ ++mostlyclean-noinstLIBRARIES: ++ ++clean-noinstLIBRARIES: ++ -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) ++ ++distclean-noinstLIBRARIES: ++ ++maintainer-clean-noinstLIBRARIES: ++ ++.c.o: ++ $(COMPILE) -c $< ++ ++.s.o: ++ $(COMPILE) -c $< ++ ++.S.o: ++ $(COMPILE) -c $< ++ ++mostlyclean-compile: ++ -rm -f *.o core *.core ++ ++clean-compile: ++ ++distclean-compile: ++ -rm -f *.tab.c ++ ++maintainer-clean-compile: ++ ++lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES) ++ -rm -f lib.a ++ $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD) ++ $(RANLIB) lib.a ++ ++tags: TAGS ++ ++ID: $(HEADERS) $(SOURCES) $(LISP) ++ list='$(SOURCES) $(HEADERS)'; \ ++ unique=`for i in $$list; do echo $$i; done | \ ++ awk ' { files[$$0] = 1; } \ ++ END { for (i in files) print i; }'`; \ ++ here=`pwd` && cd $(srcdir) \ ++ && mkid -f$$here/ID $$unique $(LISP) ++ ++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) ++ tags=; \ ++ here=`pwd`; \ ++ list='$(SOURCES) $(HEADERS)'; \ ++ unique=`for i in $$list; do echo $$i; done | \ ++ awk ' { files[$$0] = 1; } \ ++ END { for (i in files) print i; }'`; \ ++ test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ ++ || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) ++ ++mostlyclean-tags: ++ ++clean-tags: ++ ++distclean-tags: ++ -rm -f TAGS ID ++ ++maintainer-clean-tags: ++ ++distdir = $(PACKAGE)-$(VERSION) ++top_distdir = $(distdir) ++ ++# This target untars the dist file and tries a VPATH configuration. Then ++# it guarantees that the distribution is self-contained by making another ++# tarfile. ++distcheck: dist ++ -rm -rf $(distdir) ++ GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz ++ mkdir $(distdir)/=build ++ mkdir $(distdir)/=inst ++ dc_install_base=`cd $(distdir)/=inst && pwd`; \ ++ cd $(distdir)/=build \ ++ && ../configure --srcdir=.. --prefix=$$dc_install_base \ ++ && $(MAKE) $(AM_MAKEFLAGS) \ ++ && $(MAKE) $(AM_MAKEFLAGS) dvi \ ++ && $(MAKE) $(AM_MAKEFLAGS) check \ ++ && $(MAKE) $(AM_MAKEFLAGS) install \ ++ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ ++ && $(MAKE) $(AM_MAKEFLAGS) dist ++ -rm -rf $(distdir) ++ @banner="$(distdir).tar.gz is ready for distribution"; \ ++ dashes=`echo "$$banner" | sed s/./=/g`; \ ++ echo "$$dashes"; \ ++ echo "$$banner"; \ ++ echo "$$dashes" ++dist: distdir ++ -chmod -R a+r $(distdir) ++ GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) ++ -rm -rf $(distdir) ++dist-all: distdir ++ -chmod -R a+r $(distdir) ++ GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) ++ -rm -rf $(distdir) ++distdir: $(DISTFILES) ++ -rm -rf $(distdir) ++ mkdir $(distdir) ++ -chmod 777 $(distdir) ++ @for file in $(DISTFILES); do \ ++ if test -f $$file; then d=.; else d=$(srcdir); fi; \ ++ if test -d $$d/$$file; then \ ++ cp -pr $$d/$$file $(distdir)/$$file; \ ++ else \ ++ test -f $(distdir)/$$file \ ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ ++ || cp -p $$d/$$file $(distdir)/$$file || :; \ ++ fi; \ ++ done ++info-am: ++info: info-am ++dvi-am: ++dvi: dvi-am ++check-am: ++check: check-am ++installcheck-am: ++installcheck: installcheck-am ++install-info-am: ++install-info: install-info-am ++install-exec-am: ++install-exec: install-exec-am ++ ++install-data-am: ++install-data: install-data-am ++ ++install-am: all-am ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am ++install: install-am ++uninstall-am: ++uninstall: uninstall-am ++all-am: Makefile $(LIBRARIES) ++all-redirect: all-am ++install-strip: ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install ++installdirs: ++ ++ ++mostlyclean-generic: ++ ++clean-generic: ++ ++distclean-generic: ++ -rm -f Makefile $(CONFIG_CLEAN_FILES) ++ -rm -f config.cache config.log stamp-h stamp-h[0-9]* ++ ++maintainer-clean-generic: ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ ++ mostlyclean-tags mostlyclean-generic ++ ++mostlyclean: mostlyclean-am ++ ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \ ++ mostlyclean-am ++ ++clean: clean-am ++ ++distclean-am: distclean-noinstLIBRARIES distclean-compile \ ++ distclean-tags distclean-generic clean-am ++ ++distclean: distclean-am ++ -rm -f config.status ++ ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ ++ maintainer-clean-compile maintainer-clean-tags \ ++ maintainer-clean-generic distclean-am ++ @echo "This command is intended for maintainers to use;" ++ @echo "it deletes files that may require special tools to rebuild." ++ ++maintainer-clean: maintainer-clean-am ++ -rm -f config.status ++ ++.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ ++clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ ++mostlyclean-compile distclean-compile clean-compile \ ++maintainer-clean-compile tags mostlyclean-tags distclean-tags \ ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \ ++check-am installcheck-am installcheck install-info-am install-info \ ++install-exec-am install-exec install-data-am install-data install-am \ ++install uninstall-am uninstall all-redirect all-am all installdirs \ ++mostlyclean-generic distclean-generic clean-generic \ ++maintainer-clean-generic clean mostlyclean distclean maintainer-clean ++ ++ ++# Tell versions [3.59,3.63) of GNU make to not export all variables. ++# Otherwise a system limit (for SysV at least) may be exceeded. ++.NOEXPORT: +diff -uNr newlib-1.14.0/newlib/libc/machine/bfin/setjmp.S newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/setjmp.S +--- newlib-1.14.0/newlib/libc/machine/bfin/setjmp.S 1970-01-01 01:00:00.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/machine/bfin/setjmp.S 2006-11-09 07:50:30.000000000 +0100 +@@ -0,0 +1,108 @@ ++/* ++ * setjmp for the Blackfin processor ++ * ++ * Copyright (C) 2006 Analog Devices, Inc. ++ * ++ * The authors hereby grant permission to use, copy, modify, distribute, ++ * and license this software and its documentation for any purpose, provided ++ * that existing copyright notices are retained in all copies and that this ++ * notice is included verbatim in any distributions. No written agreement, ++ * license, or royalty fee is required for any of the authorized uses. ++ * Modifications to this software may be copyrighted by their authors ++ * and need not follow the licensing terms described here, provided that ++ * the new terms are clearly indicated on the first page of each file where ++ * they apply. ++ */ ++ ++ ++#define _ASM ++#define _SETJMP_H ++ ++.text; ++.align 4; ++.globl _setjmp; ++.type _setjmp, STT_FUNC; ++ ++_setjmp: ++ [--SP] = P0; /* Save P0 */ ++ P0 = R0; ++ R0 = [SP++]; ++ [P0 + 0x00] = R0; /* Save saved P0 */ ++ [P0 + 0x04] = P1; ++ [P0 + 0x08] = P2; ++ [P0 + 0x0C] = P3; ++ [P0 + 0x10] = P4; ++ [P0 + 0x14] = P5; ++ ++ [P0 + 0x18] = FP; /* Frame Pointer */ ++ [P0 + 0x1C] = SP; /* Stack Pointer */ ++ ++ [P0 + 0x20] = P0; /* Data Registers */ ++ [P0 + 0x24] = R1; ++ [P0 + 0x28] = R2; ++ [P0 + 0x2C] = R3; ++ [P0 + 0x30] = R4; ++ [P0 + 0x34] = R5; ++ [P0 + 0x38] = R6; ++ [P0 + 0x3C] = R7; ++ ++ R0 = ASTAT; ++ [P0 + 0x40] = R0; ++ ++ R0 = LC0; /* Loop Counters */ ++ [P0 + 0x44] = R0; ++ R0 = LC1; ++ [P0 + 0x48] = R0; ++ ++ R0 = A0.W; /* Accumulators */ ++ [P0 + 0x4C] = R0; ++ R0 = A0.X; ++ [P0 + 0x50] = R0; ++ R0 = A1.W; ++ [P0 + 0x54] = R0; ++ R0 = A1.X; ++ [P0 + 0x58] = R0; ++ ++ R0 = I0; /* Index Registers */ ++ [P0 + 0x5C] = R0; ++ R0 = I1; ++ [P0 + 0x60] = R0; ++ R0 = I2; ++ [P0 + 0x64] = R0; ++ R0 = I3; ++ [P0 + 0x68] = R0; ++ ++ R0 = M0; /* Modifier Registers */ ++ [P0 + 0x6C] = R0; ++ R0 = M1; ++ [P0 + 0x70] = R0; ++ R0 = M2; ++ [P0 + 0x74] = R0; ++ R0 = M3; ++ [P0 + 0x78] = R0; ++ ++ R0 = L0; /* Length Registers */ ++ [P0 + 0x7c] = R0; ++ R0 = L1; ++ [P0 + 0x80] = R0; ++ R0 = L2; ++ [P0 + 0x84] = R0; ++ R0 = L3; ++ [P0 + 0x88] = R0; ++ ++ R0 = B0; /* Base Registers */ ++ [P0 + 0x8C] = R0; ++ R0 = B1; ++ [P0 + 0x90] = R0; ++ R0 = B2; ++ [P0 + 0x94] = R0; ++ R0 = B3; ++ [P0 + 0x98] = R0; ++ ++ R0 = RETS; ++ [P0 + 0x9C] = R0; ++ ++ R0 = 0; ++ ++ RTS; ++.size _setjmp, .-_setjmp; +diff -uNr newlib-1.14.0/newlib/libc/reent/reent.c newlib-1.14.0-rtems4.8-20061109/newlib/libc/reent/reent.c +--- newlib-1.14.0/newlib/libc/reent/reent.c 2004-09-09 21:46:54.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/reent/reent.c 2006-11-09 07:50:30.000000000 +0100 +@@ -69,6 +69,8 @@ + + _free_r (ptr, _REENT_MP_FREELIST(ptr)); + } ++ if (_REENT_MP_RESULT(ptr)) ++ _free_r (ptr, _REENT_MP_RESULT(ptr)); + + #ifdef _REENT_SMALL + if (ptr->_emergency) +diff -uNr newlib-1.14.0/newlib/libc/search/db_local.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/db_local.h +--- newlib-1.14.0/newlib/libc/search/db_local.h 2002-06-25 01:05:08.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/db_local.h 2006-11-09 07:50:30.000000000 +0100 +@@ -50,7 +50,7 @@ + #define MAX_PAGE_NUMBER 0xffffffff /* >= # of pages in a file */ + typedef __uint32_t pgno_t; + #define MAX_PAGE_OFFSET 65535 /* >= # of bytes in a page */ +-typedef __uint16_t indx_t; ++typedef __uint_least16_t indx_t; + #define MAX_REC_NUMBER 0xffffffff /* >= # of records in a tree */ + typedef __uint32_t recno_t; + +@@ -191,12 +191,12 @@ + * P_16_COPY swap from one location to another + */ + #define M_16_SWAP(a) { \ +- __uint16_t _tmp = a; \ ++ __uint_least16_t _tmp = a; \ + ((char *)&a)[0] = ((char *)&_tmp)[1]; \ + ((char *)&a)[1] = ((char *)&_tmp)[0]; \ + } + #define P_16_SWAP(a) { \ +- __uint16_t _tmp = *(__uint16_t *)a; \ ++ __uint_least16_t _tmp = *(__uint_least16_t *)a; \ + ((char *)a)[0] = ((char *)&_tmp)[1]; \ + ((char *)a)[1] = ((char *)&_tmp)[0]; \ + } +diff -uNr newlib-1.14.0/newlib/libc/search/extern.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/extern.h +--- newlib-1.14.0/newlib/libc/search/extern.h 2002-06-20 21:51:31.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/extern.h 2006-11-09 07:50:30.000000000 +0100 +@@ -48,7 +48,7 @@ + int __delpair(HTAB *, BUFHEAD *, int); + int __expand_table(HTAB *); + int __find_bigpair(HTAB *, BUFHEAD *, int, char *, int); +-__uint16_t __find_last_page(HTAB *, BUFHEAD **); ++__uint_least16_t __find_last_page(HTAB *, BUFHEAD **); + void __free_ovflpage(HTAB *, BUFHEAD *); + BUFHEAD *__get_buf(HTAB *, __uint32_t, BUFHEAD *, int); + int __get_page(HTAB *, char *, __uint32_t, int, int, int); +diff -uNr newlib-1.14.0/newlib/libc/search/hash_bigkey.c newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_bigkey.c +--- newlib-1.14.0/newlib/libc/search/hash_bigkey.c 2002-06-25 01:05:08.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_bigkey.c 2006-11-09 07:50:30.000000000 +0100 +@@ -96,13 +96,13 @@ + BUFHEAD *bufp; + const DBT *key, *val; + { +- __uint16_t *p; ++ __uint_least16_t *p; + int key_size, n, val_size; +- __uint16_t space, move_bytes, off; ++ __uint_least16_t space, move_bytes, off; + char *cp, *key_data, *val_data; + + cp = bufp->page; /* Character pointer of p. */ +- p = (__uint16_t *)cp; ++ p = (__uint_least16_t *)cp; + + key_data = (char *)key->data; + key_size = key->size; +@@ -140,7 +140,7 @@ + OFFSET(p) = off; + } else + p[n - 2] = FULL_KEY; +- p = (__uint16_t *)bufp->page; ++ p = (__uint_least16_t *)bufp->page; + cp = bufp->page; + bufp->flags |= BUF_MOD; + } +@@ -170,7 +170,7 @@ + if (!bufp) + return (-1); + cp = bufp->page; +- p = (__uint16_t *)cp; ++ p = (__uint_least16_t *)cp; + } else + p[n] = FULL_KEY_DATA; + bufp->flags |= BUF_MOD; +@@ -195,12 +195,12 @@ + BUFHEAD *bufp; + { + BUFHEAD *last_bfp, *rbufp; +- __uint16_t *bp, pageno; ++ __uint_least16_t *bp, pageno; + int key_done, n; + + rbufp = bufp; + last_bfp = NULL; +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + pageno = 0; + key_done = 0; + +@@ -223,7 +223,7 @@ + last_bfp = rbufp; + if (!rbufp) + return (-1); /* Error. */ +- bp = (__uint16_t *)rbufp->page; ++ bp = (__uint_least16_t *)rbufp->page; + } + + /* +@@ -238,7 +238,7 @@ + pageno = bp[n - 1]; + + /* Now, bp is the first page of the pair. */ +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + if (n > 2) { + /* There is an overflow page. */ + bp[1] = pageno; +@@ -276,13 +276,13 @@ + char *key; + int size; + { +- __uint16_t *bp; ++ __uint_least16_t *bp; + char *p; + int ksize; +- __uint16_t bytes; ++ __uint_least16_t bytes; + char *kkey; + +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + p = bufp->page; + ksize = size; + kkey = key; +@@ -298,7 +298,7 @@ + if (!bufp) + return (-3); + p = bufp->page; +- bp = (__uint16_t *)p; ++ bp = (__uint_least16_t *)p; + ndx = 1; + } + +@@ -320,17 +320,17 @@ + * of the pair; 0 if there isn't any (i.e. big pair is the last key in the + * bucket) + */ +-extern __uint16_t ++extern __uint_least16_t + __find_last_page(hashp, bpp) + HTAB *hashp; + BUFHEAD **bpp; + { + BUFHEAD *bufp; +- __uint16_t *bp, pageno; ++ __uint_least16_t *bp, pageno; + int n; + + bufp = *bpp; +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + for (;;) { + n = bp[0]; + +@@ -347,7 +347,7 @@ + bufp = __get_buf(hashp, pageno, bufp, 0); + if (!bufp) + return (0); /* Need to indicate an error! */ +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + } + + *bpp = bufp; +@@ -370,15 +370,15 @@ + int set_current; + { + BUFHEAD *save_p; +- __uint16_t *bp, len, off, save_addr; ++ __uint_least16_t *bp, len, off, save_addr; + char *tp; + +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + while (bp[ndx + 1] == PARTIAL_KEY) { + bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!bufp) + return (-1); +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + ndx = 1; + } + +@@ -386,7 +386,7 @@ + bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!bufp) + return (-1); +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + save_p = bufp; + save_addr = save_p->addr; + off = bp[1]; +@@ -407,7 +407,7 @@ + bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!bufp) + return (-1); +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + } else { + /* The data is all on one page. */ + tp = (char *)bp; +@@ -426,7 +426,7 @@ + if (!hashp->cpage) + return (-1); + hashp->cndx = 1; +- if (!((__uint16_t *) ++ if (!((__uint_least16_t *) + hashp->cpage->page)[0]) { + hashp->cbucket++; + hashp->cpage = NULL; +@@ -458,14 +458,14 @@ + BUFHEAD *bufp; + int len, set; + { +- __uint16_t *bp; ++ __uint_least16_t *bp; + char *p; + BUFHEAD *xbp; +- __uint16_t save_addr; ++ __uint_least16_t save_addr; + int mylen, totlen; + + p = bufp->page; +- bp = (__uint16_t *)p; ++ bp = (__uint_least16_t *)p; + mylen = hashp->BSIZE - bp[1]; + save_addr = bufp->addr; + +@@ -485,7 +485,7 @@ + __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!hashp->cpage) + return (-1); +- else if (!((__uint16_t *)hashp->cpage->page)[0]) { ++ else if (!((__uint_least16_t *)hashp->cpage->page)[0]) { + hashp->cbucket++; + hashp->cpage = NULL; + } +@@ -537,10 +537,10 @@ + BUFHEAD *xbp; + char *p; + int mylen, totlen; +- __uint16_t *bp, save_addr; ++ __uint_least16_t *bp, save_addr; + + p = bufp->page; +- bp = (__uint16_t *)p; ++ bp = (__uint_least16_t *)p; + mylen = hashp->BSIZE - bp[1]; + + save_addr = bufp->addr; +@@ -583,11 +583,11 @@ + SPLIT_RETURN *ret; + { + BUFHEAD *tmpp; +- __uint16_t *tp; ++ __uint_least16_t *tp; + BUFHEAD *bp; + DBT key, val; + __uint32_t change; +- __uint16_t free_space, n, off; ++ __uint_least16_t free_space, n, off; + + bp = big_keyp; + +@@ -619,14 +619,14 @@ + (tmpp->ovfl ? tmpp->ovfl->addr : 0), (bp ? bp->addr : 0)); + #endif + tmpp->ovfl = bp; /* one of op/np point to big_keyp */ +- tp = (__uint16_t *)tmpp->page; ++ tp = (__uint_least16_t *)tmpp->page; + #ifdef DEBUG + assert(FREESPACE(tp) >= OVFLSIZE); + #endif + n = tp[0]; + off = OFFSET(tp); + free_space = FREESPACE(tp); +- tp[++n] = (__uint16_t)addr; ++ tp[++n] = (__uint_least16_t)addr; + tp[++n] = OVFLPAGE; + tp[0] = n; + OFFSET(tp) = off; +@@ -642,7 +642,7 @@ + ret->newp = np; + ret->oldp = op; + +- tp = (__uint16_t *)big_keyp->page; ++ tp = (__uint_least16_t *)big_keyp->page; + big_keyp->flags |= BUF_MOD; + if (tp[0] > 2) { + /* +diff -uNr newlib-1.14.0/newlib/libc/search/hash_buf.c newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_buf.c +--- newlib-1.14.0/newlib/libc/search/hash_buf.c 2004-05-26 19:57:10.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_buf.c 2006-11-09 07:50:30.000000000 +0100 +@@ -176,7 +176,7 @@ + BUFHEAD *next_xbp; + SEGMENT segp; + int segment_ndx; +- __uint16_t oaddr, *shortp; ++ __uint_least16_t oaddr, *shortp; + + oaddr = 0; + bp = LRU; +@@ -212,7 +212,7 @@ + * Set oaddr before __put_page so that you get it + * before bytes are swapped. + */ +- shortp = (__uint16_t *)bp->page; ++ shortp = (__uint_least16_t *)bp->page; + if (shortp[0]) + oaddr = shortp[shortp[0] - 1]; + if ((bp->flags & BUF_MOD) && __put_page(hashp, bp->page, +@@ -255,7 +255,7 @@ + (oaddr != xbp->addr)) + break; + +- shortp = (__uint16_t *)xbp->page; ++ shortp = (__uint_least16_t *)xbp->page; + if (shortp[0]) + /* set before __put_page */ + oaddr = shortp[shortp[0] - 1]; +diff -uNr newlib-1.14.0/newlib/libc/search/hash.c newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash.c +--- newlib-1.14.0/newlib/libc/search/hash.c 2004-05-26 19:57:10.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash.c 2006-11-09 07:50:30.000000000 +0100 +@@ -628,10 +628,10 @@ + { + BUFHEAD *rbufp; + BUFHEAD *bufp, *save_bufp; +- __uint16_t *bp; ++ __uint_least16_t *bp; + int n, ndx, off, size; + char *kp; +- __uint16_t pageno; ++ __uint_least16_t pageno; + + #ifdef HASH_STATISTICS + hash_accesses++; +@@ -647,7 +647,7 @@ + + /* Pin the bucket chain */ + rbufp->flags |= BUF_PIN; +- for (bp = (__uint16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;) ++ for (bp = (__uint_least16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;) + if (bp[1] >= REAL_KEY) { + /* Real key/data pair */ + if (size == off - *bp && +@@ -666,7 +666,7 @@ + return (ERROR); + } + /* FOR LOOP INIT */ +- bp = (__uint16_t *)rbufp->page; ++ bp = (__uint_least16_t *)rbufp->page; + n = *bp++; + ndx = 1; + off = hashp->BSIZE; +@@ -688,7 +688,7 @@ + return (ERROR); + } + /* FOR LOOP INIT */ +- bp = (__uint16_t *)rbufp->page; ++ bp = (__uint_least16_t *)rbufp->page; + n = *bp++; + ndx = 1; + off = hashp->BSIZE; +@@ -722,7 +722,7 @@ + save_bufp->flags &= ~BUF_PIN; + return (ABNORMAL); + case HASH_GET: +- bp = (__uint16_t *)rbufp->page; ++ bp = (__uint_least16_t *)rbufp->page; + if (bp[ndx + 1] < REAL_KEY) { + if (__big_return(hashp, rbufp, ndx, val, 0)) + return (ERROR); +@@ -758,7 +758,7 @@ + __uint32_t bucket; + BUFHEAD *bufp; + HTAB *hashp; +- __uint16_t *bp, ndx; ++ __uint_least16_t *bp, ndx; + + hashp = (HTAB *)dbp->internal; + if (flag && flag != R_FIRST && flag != R_NEXT) { +@@ -783,7 +783,7 @@ + if (!bufp) + return (ERROR); + hashp->cpage = bufp; +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + if (bp[0]) + break; + } +@@ -793,7 +793,7 @@ + return (ABNORMAL); + } + } else +- bp = (__uint16_t *)hashp->cpage->page; ++ bp = (__uint_least16_t *)hashp->cpage->page; + + #ifdef DEBUG + assert(bp); +@@ -804,7 +804,7 @@ + __get_buf(hashp, bp[hashp->cndx], bufp, 0); + if (!bufp) + return (ERROR); +- bp = (__uint16_t *)(bufp->page); ++ bp = (__uint_least16_t *)(bufp->page); + hashp->cndx = 1; + } + if (!bp[0]) { +diff -uNr newlib-1.14.0/newlib/libc/search/hash.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash.h +--- newlib-1.14.0/newlib/libc/search/hash.h 2002-07-02 20:18:58.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash.h 2006-11-09 07:50:30.000000000 +0100 +@@ -102,7 +102,7 @@ + #define NCACHED 32 /* number of bit maps and spare + * points */ + int spares[NCACHED];/* spare pages for overflow */ +- __uint16_t bitmaps[NCACHED]; /* address of overflow page ++ __uint_least16_t bitmaps[NCACHED]; /* address of overflow page + * bitmaps */ + } HASHHDR; + +diff -uNr newlib-1.14.0/newlib/libc/search/hash_page.c newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_page.c +--- newlib-1.14.0/newlib/libc/search/hash_page.c 2002-09-19 23:28:51.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/hash_page.c 2006-11-09 07:50:30.000000000 +0100 +@@ -77,16 +77,16 @@ + static __uint32_t *fetch_bitmap(HTAB *, int); + static __uint32_t first_free(__uint32_t); + static int open_temp(HTAB *); +-static __uint16_t overflow_page(HTAB *); ++static __uint_least16_t overflow_page(HTAB *); + static void putpair(char *, const DBT *, const DBT *); +-static void squeeze_key(__uint16_t *, const DBT *, const DBT *); ++static void squeeze_key(__uint_least16_t *, const DBT *, const DBT *); + static int ugly_split + (HTAB *, __uint32_t, BUFHEAD *, BUFHEAD *, int, int); + + #define PAGE_INIT(P) { \ +- ((__uint16_t *)(P))[0] = 0; \ +- ((__uint16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint16_t); \ +- ((__uint16_t *)(P))[2] = hashp->BSIZE; \ ++ ((__uint_least16_t *)(P))[0] = 0; \ ++ ((__uint_least16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint_least16_t); \ ++ ((__uint_least16_t *)(P))[2] = hashp->BSIZE; \ + } + + /* +@@ -99,9 +99,9 @@ + char *p; + const DBT *key, *val; + { +- __uint16_t *bp, n, off; ++ __uint_least16_t *bp, n, off; + +- bp = (__uint16_t *)p; ++ bp = (__uint_least16_t *)p; + + /* Enter the key first. */ + n = bp[0]; +@@ -117,7 +117,7 @@ + + /* Adjust page info. */ + bp[0] = n; +- bp[n + 1] = off - ((n + 3) * sizeof(__uint16_t)); ++ bp[n + 1] = off - ((n + 3) * sizeof(__uint_least16_t)); + bp[n + 2] = off; + } + +@@ -132,11 +132,11 @@ + BUFHEAD *bufp; + int ndx; + { +- __uint16_t *bp, newoff; ++ __uint_least16_t *bp, newoff; + int n; +- __uint16_t pairlen; ++ __uint_least16_t pairlen; + +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + n = bp[0]; + + if (bp[ndx + 1] < REAL_KEY) +@@ -167,7 +167,7 @@ + } + /* Finally adjust the page data */ + bp[n] = OFFSET(bp) + pairlen; +- bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint16_t); ++ bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint_least16_t); + bp[0] = n - 2; + hashp->NKEYS--; + +@@ -185,15 +185,15 @@ + __uint32_t obucket, nbucket; + { + BUFHEAD *new_bufp, *old_bufp; +- __uint16_t *ino; ++ __uint_least16_t *ino; + char *np; + DBT key, val; + int n, ndx, retval; +- __uint16_t copyto, diff, off, moved; ++ __uint_least16_t copyto, diff, off, moved; + char *op; + +- copyto = (__uint16_t)hashp->BSIZE; +- off = (__uint16_t)hashp->BSIZE; ++ copyto = (__uint_least16_t)hashp->BSIZE; ++ off = (__uint_least16_t)hashp->BSIZE; + old_bufp = __get_buf(hashp, obucket, NULL, 0); + if (old_bufp == NULL) + return (-1); +@@ -204,7 +204,7 @@ + old_bufp->flags |= (BUF_MOD | BUF_PIN); + new_bufp->flags |= (BUF_MOD | BUF_PIN); + +- ino = (__uint16_t *)(op = old_bufp->page); ++ ino = (__uint_least16_t *)(op = old_bufp->page); + np = new_bufp->page; + + moved = 0; +@@ -246,13 +246,13 @@ + + /* Now clean up the page */ + ino[0] -= moved; +- FREESPACE(ino) = copyto - sizeof(__uint16_t) * (ino[0] + 3); ++ FREESPACE(ino) = copyto - sizeof(__uint_least16_t) * (ino[0] + 3); + OFFSET(ino) = copyto; + + #ifdef DEBUG3 + (void)fprintf(stderr, "split %d/%d\n", +- ((__uint16_t *)np)[0] / 2, +- ((__uint16_t *)op)[0] / 2); ++ ((__uint_least16_t *)np)[0] / 2, ++ ((__uint_least16_t *)op)[0] / 2); + #endif + /* unpin both pages */ + old_bufp->flags &= ~BUF_PIN; +@@ -284,22 +284,22 @@ + int moved; /* Number of pairs moved to new page. */ + { + BUFHEAD *bufp; /* Buffer header for ino */ +- __uint16_t *ino; /* Page keys come off of */ +- __uint16_t *np; /* New page */ +- __uint16_t *op; /* Page keys go on to if they aren't moving */ ++ __uint_least16_t *ino; /* Page keys come off of */ ++ __uint_least16_t *np; /* New page */ ++ __uint_least16_t *op; /* Page keys go on to if they aren't moving */ + + BUFHEAD *last_bfp; /* Last buf header OVFL needing to be freed */ + DBT key, val; + SPLIT_RETURN ret; +- __uint16_t n, off, ov_addr, scopyto; ++ __uint_least16_t n, off, ov_addr, scopyto; + char *cino; /* Character value of ino */ + + bufp = old_bufp; +- ino = (__uint16_t *)old_bufp->page; +- np = (__uint16_t *)new_bufp->page; +- op = (__uint16_t *)old_bufp->page; ++ ino = (__uint_least16_t *)old_bufp->page; ++ np = (__uint_least16_t *)new_bufp->page; ++ op = (__uint_least16_t *)old_bufp->page; + last_bfp = NULL; +- scopyto = (__uint16_t)copyto; /* ANSI */ ++ scopyto = (__uint_least16_t)copyto; /* ANSI */ + + n = ino[0] - 1; + while (n < ino[0]) { +@@ -310,16 +310,16 @@ + old_bufp = ret.oldp; + if (!old_bufp) + return (-1); +- op = (__uint16_t *)old_bufp->page; ++ op = (__uint_least16_t *)old_bufp->page; + new_bufp = ret.newp; + if (!new_bufp) + return (-1); +- np = (__uint16_t *)new_bufp->page; ++ np = (__uint_least16_t *)new_bufp->page; + bufp = ret.nextp; + if (!bufp) + return (0); + cino = (char *)bufp->page; +- ino = (__uint16_t *)cino; ++ ino = (__uint_least16_t *)cino; + last_bfp = ret.nextp; + } else if (ino[n + 1] == OVFLPAGE) { + ov_addr = ino[n]; +@@ -329,14 +329,14 @@ + */ + ino[0] -= (moved + 2); + FREESPACE(ino) = +- scopyto - sizeof(__uint16_t) * (ino[0] + 3); ++ scopyto - sizeof(__uint_least16_t) * (ino[0] + 3); + OFFSET(ino) = scopyto; + + bufp = __get_buf(hashp, ov_addr, bufp, 0); + if (!bufp) + return (-1); + +- ino = (__uint16_t *)bufp->page; ++ ino = (__uint_least16_t *)bufp->page; + n = 1; + scopyto = hashp->BSIZE; + moved = 0; +@@ -364,7 +364,7 @@ + __add_ovflpage(hashp, old_bufp); + if (!old_bufp) + return (-1); +- op = (__uint16_t *)old_bufp->page; ++ op = (__uint_least16_t *)old_bufp->page; + putpair((char *)op, &key, &val); + } + old_bufp->flags |= BUF_MOD; +@@ -377,7 +377,7 @@ + __add_ovflpage(hashp, new_bufp); + if (!new_bufp) + return (-1); +- np = (__uint16_t *)new_bufp->page; ++ np = (__uint_least16_t *)new_bufp->page; + putpair((char *)np, &key, &val); + } + new_bufp->flags |= BUF_MOD; +@@ -402,10 +402,10 @@ + BUFHEAD *bufp; + const DBT *key, *val; + { +- __uint16_t *bp, *sop; ++ __uint_least16_t *bp, *sop; + int do_expand; + +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + do_expand = 0; + while (bp[0] && (bp[2] < REAL_KEY || bp[bp[0]] < REAL_KEY)) + /* Exception case */ +@@ -417,7 +417,7 @@ + bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!bufp) + return (-1); +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + } else + /* Try to squeeze key on this page */ + if (FREESPACE(bp) > PAIRSIZE(key, val)) { +@@ -427,7 +427,7 @@ + bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0); + if (!bufp) + return (-1); +- bp = (__uint16_t *)bufp->page; ++ bp = (__uint_least16_t *)bufp->page; + } + + if (PAIRFITS(bp, key, val)) +@@ -437,7 +437,7 @@ + bufp = __add_ovflpage(hashp, bufp); + if (!bufp) + return (-1); +- sop = (__uint16_t *)bufp->page; ++ sop = (__uint_least16_t *)bufp->page; + + if (PAIRFITS(sop, key, val)) + putpair((char *)sop, key, val); +@@ -468,12 +468,12 @@ + HTAB *hashp; + BUFHEAD *bufp; + { +- __uint16_t *sp; +- __uint16_t ndx, ovfl_num; ++ __uint_least16_t *sp; ++ __uint_least16_t ndx, ovfl_num; + #ifdef DEBUG1 + int tmp1, tmp2; + #endif +- sp = (__uint16_t *)bufp->page; ++ sp = (__uint_least16_t *)bufp->page; + + /* Check if we are dynamically determining the fill factor */ + if (hashp->FFACTOR == DEF_FFACTOR) { +@@ -525,7 +525,7 @@ + { + int fd, page, size; + int rsize; +- __uint16_t *bp; ++ __uint_least16_t *bp; + + fd = hashp->fp; + size = hashp->BSIZE; +@@ -541,7 +541,7 @@ + if ((lseek(fd, (off_t)page << hashp->BSHIFT, SEEK_SET) == -1) || + ((rsize = read(fd, p, size)) == -1)) + return (-1); +- bp = (__uint16_t *)p; ++ bp = (__uint_least16_t *)p; + if (!rsize) + bp[0] = 0; /* We hit the EOF, so initialize a new page */ + else +@@ -600,9 +600,9 @@ + for (i = 0; i < max; i++) + M_32_SWAP(((int *)p)[i]); + } else { +- max = ((__uint16_t *)p)[0] + 2; ++ max = ((__uint_least16_t *)p)[0] + 2; + for (i = 0; i <= max; i++) +- M_16_SWAP(((__uint16_t *)p)[i]); ++ M_16_SWAP(((__uint_least16_t *)p)[i]); + } + } + if (is_bucket) +@@ -643,7 +643,7 @@ + hashp->BSIZE - clearbytes); + ip[clearints - 1] = ALL_SET << (nbits & BYTE_MASK); + SETBIT(ip, 0); +- hashp->BITMAPS[ndx] = (__uint16_t)pnum; ++ hashp->BITMAPS[ndx] = (__uint_least16_t)pnum; + hashp->mapp[ndx] = ip; + return (0); + } +@@ -663,13 +663,13 @@ + return (i); + } + +-static __uint16_t ++static __uint_least16_t + overflow_page(hashp) + HTAB *hashp; + { + __uint32_t *freep; + int max_free, offset, splitnum; +- __uint16_t addr; ++ __uint_least16_t addr; + int bit, first_page, free_bit, free_page, i, in_use_bits, j; + #ifdef DEBUG2 + int tmp1, tmp2; +@@ -816,16 +816,16 @@ + HTAB *hashp; + BUFHEAD *obufp; + { +- __uint16_t addr; ++ __uint_least16_t addr; + __uint32_t *freep; + int bit_address, free_page, free_bit; +- __uint16_t ndx; ++ __uint_least16_t ndx; + + addr = obufp->addr; + #ifdef DEBUG1 + (void)fprintf(stderr, "Freeing %d\n", addr); + #endif +- ndx = (((__uint16_t)addr) >> SPLITSHIFT); ++ ndx = (((__uint_least16_t)addr) >> SPLITSHIFT); + bit_address = + (ndx ? hashp->SPARES[ndx - 1] : 0) + (addr & SPLITMASK) - 1; + if (bit_address < hashp->LAST_FREED) +@@ -883,11 +883,11 @@ + */ + static void + squeeze_key(sp, key, val) +- __uint16_t *sp; ++ __uint_least16_t *sp; + const DBT *key, *val; + { + char *p; +- __uint16_t free_space, n, off, pageno; ++ __uint_least16_t free_space, n, off, pageno; + + p = (char *)sp; + n = sp[0]; +diff -uNr newlib-1.14.0/newlib/libc/search/page.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/page.h +--- newlib-1.14.0/newlib/libc/search/page.h 2002-06-20 21:51:31.000000000 +0200 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/search/page.h 2006-11-09 07:50:30.000000000 +0100 +@@ -74,20 +74,20 @@ + * You might as well do this up front. + */ + +-#define PAIRSIZE(K,D) (2*sizeof(__uint16_t) + (K)->size + (D)->size) +-#define BIGOVERHEAD (4*sizeof(__uint16_t)) +-#define KEYSIZE(K) (4*sizeof(__uint16_t) + (K)->size); +-#define OVFLSIZE (2*sizeof(__uint16_t)) ++#define PAIRSIZE(K,D) (2*sizeof(__uint_least16_t) + (K)->size + (D)->size) ++#define BIGOVERHEAD (4*sizeof(__uint_least16_t)) ++#define KEYSIZE(K) (4*sizeof(__uint_least16_t) + (K)->size); ++#define OVFLSIZE (2*sizeof(__uint_least16_t)) + #define FREESPACE(P) ((P)[(P)[0]+1]) + #define OFFSET(P) ((P)[(P)[0]+2]) + #define PAIRFITS(P,K,D) \ + (((P)[2] >= REAL_KEY) && \ + (PAIRSIZE((K),(D)) + OVFLSIZE) <= FREESPACE((P))) +-#define PAGE_META(N) (((N)+3) * sizeof(__uint16_t)) ++#define PAGE_META(N) (((N)+3) * sizeof(__uint_least16_t)) + + typedef struct { + BUFHEAD *newp; + BUFHEAD *oldp; + BUFHEAD *nextp; +- __uint16_t next_addr; ++ __uint_least16_t next_addr; + } SPLIT_RETURN; +diff -uNr newlib-1.14.0/newlib/libc/sys/rtems/machine/param.h newlib-1.14.0-rtems4.8-20061109/newlib/libc/sys/rtems/machine/param.h +--- newlib-1.14.0/newlib/libc/sys/rtems/machine/param.h 2002-11-07 20:27:36.000000000 +0100 ++++ newlib-1.14.0-rtems4.8-20061109/newlib/libc/sys/rtems/machine/param.h 2006-11-09 07:50:30.000000000 +0100 +@@ -34,8 +34,13 @@ + #define DEV_BSHIFT 9 /* log2(DEV_BSIZE) */ + #define DEV_BSIZE (1<