From 6b5ebcb45f3d9b0f6597895e61ce220ca91e25b1 Mon Sep 17 00:00:00 2001 From: Dave Murphy Date: Wed, 24 Aug 2005 04:55:13 +0000 Subject: [PATCH] updated psp patches --- build-devkit.sh | 14 +- dkpsp/patches/binutils-2.16.1.patch | 1176 ++-- dkpsp/patches/newlib-1.13.0.patch | 8474 ++++++++++++++------------- dkpsp/scripts/build-gcc.sh | 7 +- 4 files changed, 5032 insertions(+), 4639 deletions(-) diff --git a/build-devkit.sh b/build-devkit.sh index 8a8b8df..2647858 100644 --- a/build-devkit.sh +++ b/build-devkit.sh @@ -102,7 +102,7 @@ do DOWNLOAD=0 else if test "`wget -V`" ; then - WGET="wget" + WGET=wget else echo "ERROR: Please make sure you have 'wget' installed." exit @@ -164,7 +164,7 @@ then else FOUND=1 fi - + if [ $VERSION -eq 1 ] then if [ ! -f $SRCDIR/$LIBGBA ] @@ -209,14 +209,14 @@ else if [ $VERSION -eq 2 ] then - wget -c $LIBOGC_URL || { echo "Error: Failed to download "$LIBOGC; exit; } + $WGET -c $LIBOGC_URL || { echo "Error: Failed to download "$LIBOGC; exit; } fi if [ $VERSION -eq 1 ] then - wget -c $LIBNDS_URL || { echo "Error: Failed to download "$LIBNDS; exit; } - wget -c $LIBGBA_URL || { echo "Error: Failed to download "$LIBGBA; exit; } + $WGET -c $LIBNDS_URL || { echo "Error: Failed to download "$LIBNDS; exit; } + $WGET -c $LIBGBA_URL || { echo "Error: Failed to download "$LIBGBA; exit; } fi SRCDIR=`pwd` fi @@ -317,13 +317,11 @@ patch -p1 -d $NEWLIB_SRCDIR -i $patchdir/newlib-$NEWLIB_VER.patch || { echo "Err # #else - export CFLAGS='-O2 -pipe' export LDFLAGS='-s' + export DEBUG_FLAGS='' #fi -export CXXFLAGS='-O2 -pipe' -export DEBUG_FLAGS='' #--------------------------------------------------------------------------------- # Build and install devkit components diff --git a/dkpsp/patches/binutils-2.16.1.patch b/dkpsp/patches/binutils-2.16.1.patch index f254555..04b42ed 100644 --- a/dkpsp/patches/binutils-2.16.1.patch +++ b/dkpsp/patches/binutils-2.16.1.patch @@ -1,6 +1,6 @@ -diff -NBaur binutils-2.16.1/bfd/Makefile.am binutils-2.16.1-psp/bfd/Makefile.am +diff -Nbaur binutils-2.16.1/bfd/Makefile.am binutils-2.16.1-psp/bfd/Makefile.am --- binutils-2.16.1/bfd/Makefile.am Sun Jun 12 19:58:52 2005 -+++ binutils-2.16.1-psp/bfd/Makefile.am Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/Makefile.am Wed Aug 24 01:57:12 2005 @@ -3,7 +3,7 @@ AUTOMAKE_OPTIONS = 1.9 cygnus @@ -10,9 +10,9 @@ diff -NBaur binutils-2.16.1/bfd/Makefile.am binutils-2.16.1-psp/bfd/Makefile.am INCDIR = $(srcdir)/../include CSEARCH = -I. -I$(srcdir) -I$(INCDIR) -diff -NBaur binutils-2.16.1/bfd/Makefile.in binutils-2.16.1-psp/bfd/Makefile.in +diff -Nbaur binutils-2.16.1/bfd/Makefile.in binutils-2.16.1-psp/bfd/Makefile.in --- binutils-2.16.1/bfd/Makefile.in Sun Jun 12 19:58:55 2005 -+++ binutils-2.16.1-psp/bfd/Makefile.in Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/Makefile.in Wed Aug 24 01:57:13 2005 @@ -250,7 +250,7 @@ AUTOMAKE_OPTIONS = 1.9 cygnus @@ -22,9 +22,9 @@ diff -NBaur binutils-2.16.1/bfd/Makefile.in binutils-2.16.1-psp/bfd/Makefile.in INCDIR = $(srcdir)/../include CSEARCH = -I. -I$(srcdir) -I$(INCDIR) MKDEP = gcc -MM -diff -NBaur binutils-2.16.1/bfd/archures.c binutils-2.16.1-psp/bfd/archures.c +diff -Nbaur binutils-2.16.1/bfd/archures.c binutils-2.16.1-psp/bfd/archures.c --- binutils-2.16.1/bfd/archures.c Mon Jan 17 14:08:03 2005 -+++ binutils-2.16.1-psp/bfd/archures.c Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/archures.c Wed Aug 24 01:57:12 2005 @@ -155,6 +155,7 @@ .#define bfd_mach_mips16 16 .#define bfd_mach_mips5 5 @@ -33,9 +33,9 @@ diff -NBaur binutils-2.16.1/bfd/archures.c binutils-2.16.1-psp/bfd/archures.c .#define bfd_mach_mipsisa32 32 .#define bfd_mach_mipsisa32r2 33 .#define bfd_mach_mipsisa64 64 -diff -NBaur binutils-2.16.1/bfd/bfd-in2.h binutils-2.16.1-psp/bfd/bfd-in2.h +diff -Nbaur binutils-2.16.1/bfd/bfd-in2.h binutils-2.16.1-psp/bfd/bfd-in2.h --- binutils-2.16.1/bfd/bfd-in2.h Wed Mar 2 21:23:20 2005 -+++ binutils-2.16.1-psp/bfd/bfd-in2.h Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/bfd-in2.h Wed Aug 24 01:57:12 2005 @@ -1600,6 +1600,7 @@ #define bfd_mach_mips16 16 #define bfd_mach_mips5 5 @@ -44,9 +44,9 @@ diff -NBaur binutils-2.16.1/bfd/bfd-in2.h binutils-2.16.1-psp/bfd/bfd-in2.h #define bfd_mach_mipsisa32 32 #define bfd_mach_mipsisa32r2 33 #define bfd_mach_mipsisa64 64 -diff -NBaur binutils-2.16.1/bfd/cpu-mips.c binutils-2.16.1-psp/bfd/cpu-mips.c +diff -Nbaur binutils-2.16.1/bfd/cpu-mips.c binutils-2.16.1-psp/bfd/cpu-mips.c --- binutils-2.16.1/bfd/cpu-mips.c Thu Mar 3 11:40:58 2005 -+++ binutils-2.16.1-psp/bfd/cpu-mips.c Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/cpu-mips.c Wed Aug 24 01:57:13 2005 @@ -86,6 +86,7 @@ I_mipsisa64, I_mipsisa64r2, @@ -65,9 +65,25 @@ diff -NBaur binutils-2.16.1/bfd/cpu-mips.c binutils-2.16.1-psp/bfd/cpu-mips.c }; /* The default architecture is mips:3000, but with a machine number of -diff -NBaur binutils-2.16.1/bfd/elfxx-mips.c binutils-2.16.1-psp/bfd/elfxx-mips.c +diff -Nbaur binutils-2.16.1/bfd/doc/chew.c binutils-2.16.1-psp/bfd/doc/chew.c +--- binutils-2.16.1/bfd/doc/chew.c Thu Mar 3 11:41:02 2005 ++++ binutils-2.16.1-psp/bfd/doc/chew.c Wed Aug 24 02:05:41 2005 +@@ -91,6 +91,12 @@ + #define DEF_SIZE 5000 + #define STACK 50 + ++#ifdef __MINGW32__ ++/* Prevent \r\n\ line endings */ ++#include ++unsigned int _CRT_fmode = _O_BINARY; ++#endif ++ + int internal_wanted; + int internal_mode; + +diff -Nbaur binutils-2.16.1/bfd/elfxx-mips.c binutils-2.16.1-psp/bfd/elfxx-mips.c --- binutils-2.16.1/bfd/elfxx-mips.c Sat May 28 22:58:29 2005 -+++ binutils-2.16.1-psp/bfd/elfxx-mips.c Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/bfd/elfxx-mips.c Wed Aug 24 01:57:12 2005 @@ -4669,6 +4669,9 @@ case E_MIPS_MACH_SB1: return bfd_mach_mips_sb1; @@ -97,17 +113,17 @@ diff -NBaur binutils-2.16.1/bfd/elfxx-mips.c binutils-2.16.1-psp/bfd/elfxx-mips. /* MIPS I extensions. */ { bfd_mach_mips6000, bfd_mach_mips3000 }, -diff -NBaur binutils-2.16.1/bfd/version.h binutils-2.16.1-psp/bfd/version.h +diff -Nbaur binutils-2.16.1/bfd/version.h binutils-2.16.1-psp/bfd/version.h --- binutils-2.16.1/bfd/version.h Sun Jun 12 18:37:59 2005 -+++ binutils-2.16.1-psp/bfd/version.h Mon Jul 25 20:30:55 2005 ++++ binutils-2.16.1-psp/bfd/version.h Wed Aug 24 01:58:28 2005 @@ -1,3 +1,3 @@ -#define BFD_VERSION_DATE 20050612 -+#define BFD_VERSION_DATE (PSPDEV 20050722) ++#define BFD_VERSION_DATE (PSPDEV 20050822) #define BFD_VERSION @bfd_version@ #define BFD_VERSION_STRING @bfd_version_string@ -diff -NBaur binutils-2.16.1/binutils/readelf.c binutils-2.16.1-psp/binutils/readelf.c +diff -Nbaur binutils-2.16.1/binutils/readelf.c binutils-2.16.1-psp/binutils/readelf.c --- binutils-2.16.1/binutils/readelf.c Wed Apr 20 19:43:36 2005 -+++ binutils-2.16.1-psp/binutils/readelf.c Mon Jul 25 20:30:03 2005 ++++ binutils-2.16.1-psp/binutils/readelf.c Wed Aug 24 01:57:13 2005 @@ -2043,6 +2043,7 @@ case E_MIPS_MACH_5500: strcat (buf, ", 5500"); break; case E_MIPS_MACH_SB1: strcat (buf, ", sb1"); break; @@ -116,9 +132,9 @@ diff -NBaur binutils-2.16.1/binutils/readelf.c binutils-2.16.1-psp/binutils/read case 0: /* We simply ignore the field in this case to avoid confusion: MIPS ELF does not specify EF_MIPS_MACH, it is a GNU -diff -NBaur binutils-2.16.1/config.sub binutils-2.16.1-psp/config.sub +diff -Nbaur binutils-2.16.1/config.sub binutils-2.16.1-psp/config.sub --- binutils-2.16.1/config.sub Wed Jan 19 00:34:56 2005 -+++ binutils-2.16.1-psp/config.sub Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/config.sub Wed Aug 24 01:57:13 2005 @@ -253,6 +253,7 @@ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ @@ -146,9 +162,9 @@ diff -NBaur binutils-2.16.1/config.sub binutils-2.16.1-psp/config.sub ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` -diff -NBaur binutils-2.16.1/gas/config/tc-mips.c binutils-2.16.1-psp/gas/config/tc-mips.c +diff -Nbaur binutils-2.16.1/gas/config/tc-mips.c binutils-2.16.1-psp/gas/config/tc-mips.c --- binutils-2.16.1/gas/config/tc-mips.c Sun Jun 12 19:07:03 2005 -+++ binutils-2.16.1-psp/gas/config/tc-mips.c Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/gas/config/tc-mips.c Wed Aug 24 01:57:13 2005 @@ -365,11 +365,15 @@ #define CPU_HAS_MDMX(cpu) (FALSE \ ) @@ -214,9 +230,9 @@ diff -NBaur binutils-2.16.1/gas/config/tc-mips.c binutils-2.16.1-psp/gas/config/ /* MIPS III */ { "r4000", 0, ISA_MIPS3, CPU_R4000 }, -diff -NBaur binutils-2.16.1/gas/configure binutils-2.16.1-psp/gas/configure +diff -Nbaur binutils-2.16.1/gas/configure binutils-2.16.1-psp/gas/configure --- binutils-2.16.1/gas/configure Tue Mar 1 00:43:51 2005 -+++ binutils-2.16.1-psp/gas/configure Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/gas/configure Wed Aug 24 01:57:13 2005 @@ -4537,6 +4537,9 @@ mips64vr | mips64vrel) mips_cpu=vr4100 @@ -227,9 +243,9 @@ diff -NBaur binutils-2.16.1/gas/configure binutils-2.16.1-psp/gas/configure mipsisa32r2* | mipsisa64r2*) mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..r2//' -e 's/el$//'` ;; -diff -NBaur binutils-2.16.1/gas/configure.in binutils-2.16.1-psp/gas/configure.in +diff -Nbaur binutils-2.16.1/gas/configure.in binutils-2.16.1-psp/gas/configure.in --- binutils-2.16.1/gas/configure.in Tue Mar 1 00:43:57 2005 -+++ binutils-2.16.1-psp/gas/configure.in Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/gas/configure.in Wed Aug 24 01:57:13 2005 @@ -222,6 +222,9 @@ mips64vr | mips64vrel) mips_cpu=vr4100 @@ -240,17 +256,17 @@ diff -NBaur binutils-2.16.1/gas/configure.in binutils-2.16.1-psp/gas/configure.i mipsisa32r2* | mipsisa64r2*) changequote(,)dnl mips_cpu=`echo $target_cpu | sed -e 's/[a-z]*..r2//' -e 's/el$//'` -diff -NBaur binutils-2.16.1/include/bin-bugs.h binutils-2.16.1-psp/include/bin-bugs.h +diff -Nbaur binutils-2.16.1/include/bin-bugs.h binutils-2.16.1-psp/include/bin-bugs.h --- binutils-2.16.1/include/bin-bugs.h Fri Jul 23 16:40:19 2004 -+++ binutils-2.16.1-psp/include/bin-bugs.h Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/include/bin-bugs.h Wed Aug 24 01:57:13 2005 @@ -1,3 +1,3 @@ #ifndef REPORT_BUGS_TO -#define REPORT_BUGS_TO "" +#define REPORT_BUGS_TO "" #endif -diff -NBaur binutils-2.16.1/include/elf/common.h binutils-2.16.1-psp/include/elf/common.h +diff -Nbaur binutils-2.16.1/include/elf/common.h binutils-2.16.1-psp/include/elf/common.h --- binutils-2.16.1/include/elf/common.h Fri Oct 8 14:55:08 2004 -+++ binutils-2.16.1-psp/include/elf/common.h Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/include/elf/common.h Wed Aug 24 01:57:13 2005 @@ -93,6 +93,7 @@ #define ET_HIOS 0xFEFF /* Operating system-specific */ #define ET_LOPROC 0xFF00 /* Processor-specific */ @@ -259,9 +275,9 @@ diff -NBaur binutils-2.16.1/include/elf/common.h binutils-2.16.1-psp/include/elf /* Values for e_machine, which identifies the architecture. These numbers are officially assigned by registry@caldera.com. See below for a list of -diff -NBaur binutils-2.16.1/include/elf/mips.h binutils-2.16.1-psp/include/elf/mips.h +diff -Nbaur binutils-2.16.1/include/elf/mips.h binutils-2.16.1-psp/include/elf/mips.h --- binutils-2.16.1/include/elf/mips.h Thu Mar 3 11:58:06 2005 -+++ binutils-2.16.1-psp/include/elf/mips.h Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/include/elf/mips.h Wed Aug 24 01:57:13 2005 @@ -212,6 +212,7 @@ #define E_MIPS_MACH_5400 0x00910000 #define E_MIPS_MACH_5500 0x00980000 @@ -270,12 +286,12 @@ diff -NBaur binutils-2.16.1/include/elf/mips.h binutils-2.16.1-psp/include/elf/m /* Processor specific section indices. These sections do not actually exist. Symbols with a st_shndx field corresponding to one of these -diff -NBaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/opcode/mips.h +diff -Nbaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/opcode/mips.h --- binutils-2.16.1/include/opcode/mips.h Thu Mar 3 11:58:10 2005 -+++ binutils-2.16.1-psp/include/opcode/mips.h Mon Jul 25 20:30:04 2005 -@@ -148,6 +148,19 @@ - #define OP_MASK_EXTMSBD 0x1f /* "ext" MSBD. */ - #define OP_SH_EXTMSBD 11 ++++ binutils-2.16.1-psp/include/opcode/mips.h Wed Aug 24 01:57:13 2005 +@@ -171,6 +171,83 @@ + #define MDMX_FMTSEL_VEC_QH 0x15 + #define MDMX_FMTSEL_VEC_OB 0x16 +#define OP_SH_VFPU_DELTA 0 +#define OP_MASK_VFPU_DELTA 0xfffc @@ -285,15 +301,109 @@ diff -NBaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/op +#define OP_MASK_VFPU_IMM5 0x1f +#define OP_SH_VFPU_IMM8 16 +#define OP_MASK_VFPU_IMM8 0xff -+#define OP_SH_VFPU_CC 18 ++#define OP_SH_VFPU_CC 18 /* Condition code. */ +#define OP_MASK_VFPU_CC 0x7 +#define OP_SH_VFPU_CONST 16 +#define OP_MASK_VFPU_CONST 0x1f ++#define OP_SH_VFPU_COND 0 /* Conditional compare. */ ++#define OP_MASK_VFPU_COND 0xf ++#define OP_SH_VFPU_VMTVC 0 ++#define OP_MASK_VFPU_VMTVC 0xff ++#define OP_SH_VFPU_VMFVC 8 ++#define OP_MASK_VFPU_VMFVC 0xff ++#define OP_SH_VFPU_RWB 1 ++#define OP_MASK_VFPU_RWB 0x1 ++#define OP_SH_VFPU_ROT 16 /* Rotators used in vrot. */ ++#define OP_MASK_VFPU_ROT 0x1f ++#define OP_SH_VFPU_FLOAT16 0 ++#define OP_MASK_VFPU_FLOAT16 0xffff + - #define OP_OP_COP0 0x10 - #define OP_OP_COP1 0x11 - #define OP_OP_COP2 0x12 -@@ -442,6 +455,8 @@ ++/* VFPU registers. */ ++#define OP_SH_VFPU_VD 0 ++#define OP_MASK_VFPU_VD 0x7f ++#define OP_SH_VFPU_VS 8 ++#define OP_MASK_VFPU_VS 0x7f ++#define OP_SH_VFPU_VT 16 ++#define OP_MASK_VFPU_VT 0x7f ++#define OP_SH_VFPU_VT_LO 16 /* Bits 0-4 of vt. */ ++#define OP_MASK_VFPU_VT_LO 0x1f ++#define OP_SH_VFPU_VT_HI 5 /* Right-shifted. */ ++#define OP_MASK_VFPU_VT_HI1 0x1 /* Bit 5 of vt. */ ++#define OP_MASK_VFPU_VT_HI2 0x3 /* Bits 5-6 of vt. */ ++/* Special handling of vs in vmmul instructions. */ ++#define VFPU_OP_VT_VS_VD 0xff800000 ++#define VFPU_OPCODE_VMMUL 0xf0000000 ++ ++/* VFPU prefix instruction operands. The *_SH_* values really specify where ++ the bitfield begins, as VFPU prefix instructions have four operands ++ encoded within the immediate field. */ ++#define VFPU_SH_PFX_NEG 16 ++#define VFPU_MASK_PFX_NEG 0x1 /* Negation. */ ++#define VFPU_SH_PFX_CST 12 ++#define VFPU_MASK_PFX_CST 0x1 /* Constant. */ ++#define VFPU_SH_PFX_ABS_CSTHI 8 ++#define VFPU_MASK_PFX_ABS_CSTHI 0x1 /* Abs/Constant (bit 2). */ ++#define VFPU_MASK_PFX_SWZ_CSTLO 0x3 /* Swizzle/Constant (bits 0-1). */ ++#define VFPU_SH_PFX_MASK 8 ++#define VFPU_MASK_PFX_MASK 0x1 /* Mask. */ ++#define VFPU_MASK_PFX_SAT 0x3 /* Saturation. */ ++ ++/* Special handling of the vrot instructions. */ ++#define VFPU_MASK_OP_SIZE 0x8080 /* Masks the operand size (pair, triple, quad). */ ++#define VFPU_OP_SIZE_PAIR 0x80 ++#define VFPU_OP_SIZE_TRIPLE 0x8000 ++#define VFPU_OP_SIZE_QUAD 0x8080 ++/* Note that these are within the rotators field, and not the full opcode. */ ++#define VFPU_SH_ROT_HI 2 ++#define VFPU_MASK_ROT_HI 0x3 ++#define VFPU_SH_ROT_LO 0 ++#define VFPU_MASK_ROT_LO 0x3 ++#define VFPU_SH_ROT_NEG 4 /* Negation. */ ++#define VFPU_MASK_ROT_NEG 0x1 ++ ++/* VFPU 16-bit floating-point format. */ ++#define VFPU_FLOAT16_EXP_MAX 0x1f ++#define VFPU_SH_FLOAT16_SIGN 15 ++#define VFPU_MASK_FLOAT16_SIGN 0x1 ++#define VFPU_SH_FLOAT16_EXP 10 ++#define VFPU_MASK_FLOAT16_EXP 0x1f ++#define VFPU_SH_FLOAT16_FRAC 0 ++#define VFPU_MASK_FLOAT16_FRAC 0x3ff ++ + /* This structure holds information for a particular instruction. */ + + struct mips_opcode +@@ -258,6 +335,29 @@ + Requires that "+A" or "+E" occur first to set position. + Enforces: 32 < (pos+size) <= 64. + ++ Sony Allegrex VFPU instructions: ++ "?o" ++ "?0" - "?3" ++ "?4" - "?7" ++ "?a" ++ "?b" ++ "?c" ++ "?e" ++ "?f" ++ "?i" ++ "?q" ++ "?r" ++ "?u" ++ "?w" ++ "?d" ++ "?m" ++ "?n" ++ "?s" ++ "?t" ++ "?v" ++ "?x" ++ "?z" ++ + Floating point instructions: + "D" 5 bit destination register (OP_*_FD) + "M" 3 bit compare condition code (OP_*_CCC) (only used for mips4 and up) +@@ -442,6 +542,8 @@ #define INSN_5400 0x01000000 /* NEC VR5500 instruction. */ #define INSN_5500 0x02000000 @@ -302,7 +412,7 @@ diff -NBaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/op /* MIPS ISA defines, use instead of hardcoding ISA level. */ -@@ -489,6 +504,7 @@ +@@ -489,6 +591,7 @@ #define CPU_MIPS64 64 #define CPU_MIPS64R2 65 #define CPU_SB1 12310201 /* octal 'SB', 01. */ @@ -310,7 +420,7 @@ diff -NBaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/op /* Test for membership in an ISA including chip specific ISAs. INSN is pointer to an element of the opcode table; ISA is the specified -@@ -510,6 +526,7 @@ +@@ -510,6 +613,7 @@ || (cpu == CPU_VR4120 && ((insn)->membership & INSN_4120) != 0) \ || (cpu == CPU_VR5400 && ((insn)->membership & INSN_5400) != 0) \ || (cpu == CPU_VR5500 && ((insn)->membership & INSN_5500) != 0) \ @@ -318,9 +428,62 @@ diff -NBaur binutils-2.16.1/include/opcode/mips.h binutils-2.16.1-psp/include/op || 0) /* Please keep this term for easier source merging. */ /* This is a list of macro expanded instructions. -diff -NBaur binutils-2.16.1/ld/Makefile.am binutils-2.16.1-psp/ld/Makefile.am +@@ -625,6 +729,16 @@ + M_LL_AB, + M_LLD_AB, + M_LS_A, ++ M_LVHIP, ++ M_LVHIS, ++ M_LVIP, ++ M_LVIQ, ++ M_LVIS, ++ M_LVIT, ++ M_LVLQ_AB, ++ M_LVRQ_AB, ++ M_LVQ_AB, ++ M_LVQ_AB_2, + M_LW_A, + M_LW_AB, + M_LWC0_A, +@@ -714,6 +828,10 @@ + M_SUB_I, + M_SUBU_I, + M_SUBU_I_2, ++ M_SVLQ_AB, ++ M_SVQ_AB, ++ M_SVRQ_AB, ++ M_SVS_AB, + M_TEQ_I, + M_TGE_I, + M_TGEU_I, +@@ -728,14 +846,24 @@ + M_ULH_A, + M_ULHU, + M_ULHU_A, ++ M_ULVQ, ++ M_ULVQ_AB, ++ M_ULVS, + M_ULW, + M_ULW_A, + M_USH, + M_USH_A, ++ M_USVQ, ++ M_USVQ_AB, ++ M_USVS, + M_USW, + M_USW_A, + M_USD, + M_USD_A, ++ M_VCMOVP, ++ M_VCMOVQ, ++ M_VCMOVS, ++ M_VCMOVT, + M_XOR_I, + M_COP0, + M_COP1, +diff -Nbaur binutils-2.16.1/ld/Makefile.am binutils-2.16.1-psp/ld/Makefile.am --- binutils-2.16.1/ld/Makefile.am Thu Jan 20 19:37:49 2005 -+++ binutils-2.16.1-psp/ld/Makefile.am Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/ld/Makefile.am Wed Aug 24 01:57:13 2005 @@ -190,6 +190,7 @@ eelf_i386_chaos.o \ eelf_i386_fbsd.o \ @@ -339,9 +502,9 @@ diff -NBaur binutils-2.16.1/ld/Makefile.am binutils-2.16.1-psp/ld/Makefile.am eelf_s390.c: $(srcdir)/emulparams/elf_s390.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf_s390 "$(tdir_elf_s390)" -diff -NBaur binutils-2.16.1/ld/Makefile.in binutils-2.16.1-psp/ld/Makefile.in +diff -Nbaur binutils-2.16.1/ld/Makefile.in binutils-2.16.1-psp/ld/Makefile.in --- binutils-2.16.1/ld/Makefile.in Sun Jan 23 05:36:37 2005 -+++ binutils-2.16.1-psp/ld/Makefile.in Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/ld/Makefile.in Wed Aug 24 01:57:13 2005 @@ -315,6 +315,7 @@ eelf_i386_chaos.o \ eelf_i386_fbsd.o \ @@ -360,9 +523,9 @@ diff -NBaur binutils-2.16.1/ld/Makefile.in binutils-2.16.1-psp/ld/Makefile.in eelf_s390.c: $(srcdir)/emulparams/elf_s390.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf_s390 "$(tdir_elf_s390)" -diff -NBaur binutils-2.16.1/ld/configure.tgt binutils-2.16.1-psp/ld/configure.tgt +diff -Nbaur binutils-2.16.1/ld/configure.tgt binutils-2.16.1-psp/ld/configure.tgt --- binutils-2.16.1/ld/configure.tgt Tue Feb 8 19:54:27 2005 -+++ binutils-2.16.1-psp/ld/configure.tgt Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/ld/configure.tgt Wed Aug 24 01:57:13 2005 @@ -428,6 +428,8 @@ mips*vr4100-*-elf*) targ_emul=elf32b4300 ;; mips*vr5000el-*-elf*) targ_emul=elf32l4300 ;; @@ -372,9 +535,9 @@ diff -NBaur binutils-2.16.1/ld/configure.tgt binutils-2.16.1-psp/ld/configure.tg mips*el-*-elf*) targ_emul=elf32elmip ;; mips*-*-elf*) targ_emul=elf32ebmip ;; mips*el-*-rtems*) targ_emul=elf32elmip ;; -diff -NBaur binutils-2.16.1/ld/emulparams/elf_mipsallegrexel_psp.sh binutils-2.16.1-psp/ld/emulparams/elf_mipsallegrexel_psp.sh +diff -Nbaur binutils-2.16.1/ld/emulparams/elf_mipsallegrexel_psp.sh binutils-2.16.1-psp/ld/emulparams/elf_mipsallegrexel_psp.sh --- binutils-2.16.1/ld/emulparams/elf_mipsallegrexel_psp.sh Thu Jan 1 00:00:00 1970 -+++ binutils-2.16.1-psp/ld/emulparams/elf_mipsallegrexel_psp.sh Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/ld/emulparams/elf_mipsallegrexel_psp.sh Wed Aug 24 01:57:13 2005 @@ -0,0 +1,22 @@ +# Based off of the default elf32 MIPS target. However, we use a seperate +# script template because the PSP architecture defines sections that normally @@ -398,9 +561,9 @@ diff -NBaur binutils-2.16.1/ld/emulparams/elf_mipsallegrexel_psp.sh binutils-2.1 + +# Discard the .comment and .pdr sections. +OTHER_SECTIONS="/DISCARD/ : { *(.comment) *(.pdr) }" -diff -NBaur binutils-2.16.1/ld/scripttempl/elf_psp.sc binutils-2.16.1-psp/ld/scripttempl/elf_psp.sc +diff -Nbaur binutils-2.16.1/ld/scripttempl/elf_psp.sc binutils-2.16.1-psp/ld/scripttempl/elf_psp.sc --- binutils-2.16.1/ld/scripttempl/elf_psp.sc Thu Jan 1 00:00:00 1970 -+++ binutils-2.16.1-psp/ld/scripttempl/elf_psp.sc Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/ld/scripttempl/elf_psp.sc Wed Aug 24 01:57:13 2005 @@ -0,0 +1,496 @@ +# +# Unusual variables checked by this code: @@ -898,9 +1061,9 @@ diff -NBaur binutils-2.16.1/ld/scripttempl/elf_psp.sc binutils-2.16.1-psp/ld/scr + ${RELOCATING+${STACKNOTE}} +} +EOF -diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips-dis.c +diff -Nbaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips-dis.c --- binutils-2.16.1/opcodes/mips-dis.c Thu Mar 3 11:49:50 2005 -+++ binutils-2.16.1-psp/opcodes/mips-dis.c Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/opcodes/mips-dis.c Wed Aug 24 01:57:13 2005 @@ -140,6 +140,139 @@ "c0_taglo", "c0_taghi", "c0_errorepc", "c0_desave", }; @@ -1105,7 +1268,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- /* For stock MIPS32, disassemble all applicable MIPS-specified ASEs. Note that MIPS-3D and MDMX are not applicable to MIPS32. (See -@@ -1029,6 +1212,121 @@ +@@ -1029,6 +1212,349 @@ case 'Z': (*info->fprintf_func) (info->stream, "$v%d", (l >> OP_SH_FT) & OP_MASK_FT); @@ -1119,7 +1282,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- + case '\0': + /* xgettext:c-format */ + (*info->fprintf_func) (info->stream, -+ _("# internal error, incomplete extension sequence (?)")); ++ _("# internal error, incomplete VFPU extension sequence (?)")); + return; + + case 'o': @@ -1134,12 +1297,48 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- + case '1': + case '2': + case '3': ++ { ++ unsigned int pos = *d, base = '0'; ++ unsigned int negation = (l >> (pos - (base - VFPU_SH_PFX_NEG))) & VFPU_MASK_PFX_NEG; ++ unsigned int constant = (l >> (pos - (base - VFPU_SH_PFX_CST))) & VFPU_MASK_PFX_CST; ++ unsigned int abs_consthi = ++ (l >> (pos - (base - VFPU_SH_PFX_ABS_CSTHI))) & VFPU_MASK_PFX_ABS_CSTHI; ++ unsigned int swz_constlo = (l >> ((pos - base) * 2)) & VFPU_MASK_PFX_SWZ_CSTLO; ++ ++ if (negation) ++ (*info->fprintf_func) (info->stream, "-"); ++ if (constant) ++ { ++ (*info->fprintf_func) (info->stream, "%s", ++ pfx_cst_names[(abs_consthi << 2) | swz_constlo]); ++ } ++ else ++ { ++ if (abs_consthi) ++ (*info->fprintf_func) (info->stream, "|%s|", ++ pfx_swz_names[swz_constlo]); ++ else ++ (*info->fprintf_func) (info->stream, "%s", ++ pfx_swz_names[swz_constlo]); ++ } ++ } + break; + + case '4': + case '5': + case '6': + case '7': ++ { ++ unsigned int pos = *d, base = '4'; ++ unsigned int mask = (l >> (pos - (base - VFPU_MASK_PFX_MASK))) & VFPU_MASK_PFX_MASK; ++ unsigned int saturation = (l >> ((pos - base) * 2)) & VFPU_MASK_PFX_SAT; ++ ++ if (mask) ++ (*info->fprintf_func) (info->stream, "m"); ++ else ++ (*info->fprintf_func) (info->stream, "%s", ++ pfx_sat_names[saturation]); ++ } + break; + + case 'a': @@ -1174,7 +1373,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- + case 'f': + /* Conditional compare. */ + (*info->fprintf_func) (info->stream, "%s", -+ vfpu_cond_names[l & 0x0f]); ++ vfpu_cond_names[(l >> OP_SH_VFPU_COND) & OP_MASK_VFPU_COND]); + /* Apparently this specifier is unused. */ + d++; + break; @@ -1188,19 +1387,123 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- + case 'q': + /* VFPU control register (vmtvc). */ + (*info->fprintf_func) (info->stream, "$%d", -+ l & 0xff); ++ (l >> OP_SH_VFPU_VMTVC) & OP_MASK_VFPU_VMTVC); + break; + + case 'r': + /* VFPU control register (vmfvc). */ + (*info->fprintf_func) (info->stream, "$%d", -+ (l >> 8) & 0xff); ++ (l >> OP_SH_VFPU_VMFVC) & OP_MASK_VFPU_VMFVC); + break; + + case 'u': ++ /* Convert a VFPU 16-bit floating-point number to IEEE754. */ ++ { ++ union float2int { ++ unsigned int i; ++ float f; ++ } float2int; ++ unsigned short float16 = (l >> OP_SH_VFPU_FLOAT16) & OP_MASK_VFPU_FLOAT16; ++ unsigned int sign = (float16 >> VFPU_SH_FLOAT16_SIGN) & VFPU_MASK_FLOAT16_SIGN; ++ int exponent = (float16 >> VFPU_SH_FLOAT16_EXP) & VFPU_MASK_FLOAT16_EXP; ++ unsigned int fraction = float16 & VFPU_MASK_FLOAT16_FRAC; ++ char signchar = '+' + ((sign == 1) * 2); ++ ++ if (exponent == VFPU_FLOAT16_EXP_MAX) ++ { ++ if (fraction == 0) ++ (*info->fprintf_func) (info->stream, "%cInf", signchar); ++ else ++ (*info->fprintf_func) (info->stream, "%cNaN", signchar); ++ } ++ else if (exponent == 0 && fraction == 0) ++ { ++ (*info->fprintf_func) (info->stream, "%c0", signchar); ++ } ++ else ++ { ++ if (exponent == 0) ++ { ++ do ++ { ++ fraction <<= 1; ++ exponent--; ++ } ++ while (!(fraction & (VFPU_MASK_FLOAT16_FRAC + 1))); ++ ++ fraction &= VFPU_MASK_FLOAT16_FRAC; ++ } ++ ++ /* Convert to 32-bit single-precision IEEE754. */ ++ float2int.i = sign << 31; ++ float2int.i |= (exponent + 112) << 23; ++ float2int.i |= fraction << 13; ++ (*info->fprintf_func) (info->stream, "%g", float2int.f); ++ } ++ } + break; + + case 'w': ++ { ++ const char *elements[4]; ++ unsigned int opcode = l & VFPU_MASK_OP_SIZE; ++ unsigned int rotators = (l >> OP_SH_VFPU_ROT) & OP_MASK_VFPU_ROT; ++ unsigned int opsize, rothi, rotlo, negation, i; ++ ++ /* Determine the operand size so we'll know how many elements to output. */ ++ if (opcode == VFPU_OP_SIZE_PAIR) ++ opsize = 2; ++ else if (opcode == VFPU_OP_SIZE_TRIPLE) ++ opsize = 3; ++ else ++ opsize = (opcode == VFPU_OP_SIZE_QUAD) * 4; /* Sanity check. */ ++ ++ rothi = (rotators >> VFPU_SH_ROT_HI) & VFPU_MASK_ROT_HI; ++ rotlo = (rotators >> VFPU_SH_ROT_LO) & VFPU_MASK_ROT_LO; ++ negation = (rotators >> VFPU_SH_ROT_NEG) & VFPU_MASK_ROT_NEG; ++ ++ if (rothi == rotlo) ++ { ++ if (negation) ++ { ++ elements[0] = "-s"; ++ elements[1] = "-s"; ++ elements[2] = "-s"; ++ elements[3] = "-s"; ++ } ++ else ++ { ++ elements[0] = "s"; ++ elements[1] = "s"; ++ elements[2] = "s"; ++ elements[3] = "s"; ++ } ++ } ++ else ++ { ++ elements[0] = "0"; ++ elements[1] = "0"; ++ elements[2] = "0"; ++ elements[3] = "0"; ++ } ++ if (negation) ++ elements[rothi] = "-s"; ++ else ++ elements[rothi] = "s"; ++ elements[rotlo] = "c"; ++ ++ (*info->fprintf_func) (info->stream, "["); ++ i = 0; ++ for (;;) ++ { ++ (*info->fprintf_func) (info->stream, "%s", ++ elements[i++]); ++ if (i >= opsize) ++ break; ++ (*info->fprintf_func) (info->stream, ","); ++ } ++ (*info->fprintf_func) (info->stream, "]"); ++ } + break; + + case 'd': @@ -1210,26 +1513,114 @@ diff -NBaur binutils-2.16.1/opcodes/mips-dis.c binutils-2.16.1-psp/opcodes/mips- + case 't': + case 'v': + case 'x': ++ { ++ unsigned int vreg = 0; ++ ++ /* The first char specifies the bitfield that contains the register number. */ ++ switch (*d) ++ { ++ case 'd': ++ case 'v': ++ case 'x': ++ vreg = (l >> OP_SH_VFPU_VD) & OP_MASK_VFPU_VD; ++ break; ++ ++ case 'm': ++ /* Combine bits 0-4 of vt with bits 5-6 of vt. */ ++ vreg = ((l >> OP_SH_VFPU_VT_LO) & OP_MASK_VFPU_VT_LO) ++ | ((l & OP_MASK_VFPU_VT_HI2) << OP_SH_VFPU_VT_HI); ++ break; ++ ++ case 'n': ++ /* Combine bits 0-4 of vt with bit 5 of vt. */ ++ vreg = ((l >> OP_SH_VFPU_VT_LO) & OP_MASK_VFPU_VT_LO) ++ | ((l & OP_MASK_VFPU_VT_HI1) << OP_SH_VFPU_VT_HI); ++ break; ++ ++ case 's': ++ { ++ unsigned int temp_vreg = l >> OP_SH_VFPU_VS; ++ ++ vreg = temp_vreg & OP_MASK_VFPU_VS; ++ if ((l & VFPU_OP_VT_VS_VD) == VFPU_OPCODE_VMMUL) ++ { ++ /* vmmul instructions have the RXC bit (bit 13) inverted. */ ++ if (temp_vreg & 0x20) ++ vreg = temp_vreg & 0x5f; ++ else ++ vreg |= 0x20; ++ } ++ } ++ break; ++ ++ case 't': ++ vreg = (l >> OP_SH_VFPU_VT) & OP_MASK_VFPU_VT; ++ break; ++ } ++ ++ /* The next char is the register set vreg comes from. */ ++ d++; ++ switch (*d) ++ { ++ case '0': ++ (*info->fprintf_func) (info->stream, "%s.s", ++ vfpu_sreg_names[vreg]); ++ break; ++ ++ case '1': ++ (*info->fprintf_func) (info->stream, "%s.p", ++ vfpu_vpreg_names[vreg]); ++ break; ++ ++ case '2': ++ (*info->fprintf_func) (info->stream, "%s.t", ++ vfpu_vtreg_names[vreg]); ++ break; ++ ++ case '3': ++ (*info->fprintf_func) (info->stream, "%s.q", ++ vfpu_vqreg_names[vreg]); ++ break; ++ ++ case '5': ++ (*info->fprintf_func) (info->stream, "%s.p", ++ vfpu_mpreg_names[vreg]); ++ break; ++ ++ case '6': ++ (*info->fprintf_func) (info->stream, "%s.t", ++ vfpu_mtreg_names[vreg]); ++ break; ++ ++ case '7': ++ (*info->fprintf_func) (info->stream, "%s.q", ++ vfpu_mqreg_names[vreg]); ++ break; ++ ++ default: ++ /* xgettext:c-format */ ++ (*info->fprintf_func) (info->stream, ++ _("# internal error, undefined vreg modifier(%c)"), ++ *d); ++ break; ++ } ++ ++ /* The last char is unused for disassembly. */ ++ d++; ++ } + break; + + case 'z': + (*info->fprintf_func) (info->stream, "%s", -+ vfpu_rwb_names[(l >> 1) & 0x1]); ++ vfpu_rwb_names[(l >> OP_SH_VFPU_RWB) & OP_MASK_VFPU_RWB]); + break; -+ -+ default: -+ /* xgettext:c-format */ -+ (*info->fprintf_func) (info->stream, -+ _("# internal error, undefined extension sequence (?%c)"), -+ *d); -+ return; + } break; default: -diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips-opc.c +diff -Nbaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips-opc.c --- binutils-2.16.1/opcodes/mips-opc.c Thu Mar 3 11:49:50 2005 -+++ binutils-2.16.1-psp/opcodes/mips-opc.c Mon Jul 25 20:30:04 2005 ++++ binutils-2.16.1-psp/opcodes/mips-opc.c Wed Aug 24 01:57:13 2005 @@ -109,6 +109,7 @@ #define N5 (INSN_5400 | INSN_5500) #define N54 INSN_5400 @@ -1298,7 +1689,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"jr", "s", 0x00000008, 0xfc1fffff, UBD|RD_s, 0, I1 }, {"jr.hb", "s", 0x00000408, 0xfc1fffff, UBD|RD_s, 0, I33 }, {"j", "s", 0x00000008, 0xfc1fffff, UBD|RD_s, 0, I1 }, /* jr */ -@@ -639,18 +645,11 @@ +@@ -639,18 +645,10 @@ {"ld", "t,o(b)", 0xdc000000, 0xfc000000, WR_t|RD_b, 0, I3 }, {"ld", "t,o(b)", 0, (int) M_LD_OB, INSN_MACRO, 0, I1 }, {"ld", "t,A(b)", 0, (int) M_LD_AB, INSN_MACRO, 0, I1 }, @@ -1311,16 +1702,17 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- -{"l.d", "T,A(b)", 0, (int) M_L_DAB, INSN_MACRO, 0, I1 }, -{"ldc2", "E,o(b)", 0xd8000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2 }, -{"ldc2", "E,A(b)", 0, (int) M_LDC2_AB, INSN_MACRO, 0, I2 }, +-{"ldc3", "E,o(b)", 0xdc000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2 }, +-{"ldc3", "E,A(b)", 0, (int) M_LDC3_AB, INSN_MACRO, 0, I2 }, +-{"ldl", "t,o(b)", 0x68000000, 0xfc000000, LDD|WR_t|RD_b, 0, I3 }, +/* ldc1 is at the bottom of the table. */ +/* ldc2 is at the bottom of the table. */ - {"ldc3", "E,o(b)", 0xdc000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2 }, - {"ldc3", "E,A(b)", 0, (int) M_LDC3_AB, INSN_MACRO, 0, I2 }, --{"ldl", "t,o(b)", 0x68000000, 0xfc000000, LDD|WR_t|RD_b, 0, I3 }, ++/* ldc3 is at the bottom of the table. */ +{"ldl", "t,o(b)", 0x68000000, 0xfc000000, LDD|WR_t|RD_b, 0, I3|AL }, {"ldl", "t,A(b)", 0, (int) M_LDL_AB, INSN_MACRO, 0, I3 }, {"ldr", "t,o(b)", 0x6c000000, 0xfc000000, LDD|WR_t|RD_b, 0, I3 }, {"ldr", "t,A(b)", 0, (int) M_LDR_AB, INSN_MACRO, 0, I3 }, -@@ -680,8 +679,7 @@ +@@ -680,8 +678,7 @@ {"lwc1", "E,A(b)", 0, (int) M_LWC1_AB, INSN_MACRO, 0, I1 }, {"l.s", "T,o(b)", 0xc4000000, 0xfc000000, CLD|RD_b|WR_T|FP_S, 0, I1 }, /* lwc1 */ {"l.s", "T,A(b)", 0, (int) M_LWC1_AB, INSN_MACRO, 0, I1 }, @@ -1330,7 +1722,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"lwc3", "E,o(b)", 0xcc000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I1 }, {"lwc3", "E,A(b)", 0, (int) M_LWC3_AB, INSN_MACRO, 0, I1 }, {"lwl", "t,o(b)", 0x88000000, 0xfc000000, LDD|RD_b|WR_t, 0, I1 }, -@@ -713,10 +711,12 @@ +@@ -713,10 +710,12 @@ {"madd.s", "D,R,S,T", 0x4c000020, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_S, 0, I4 }, {"madd.ps", "D,R,S,T", 0x4c000026, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5 }, {"madd", "s,t", 0x0000001c, 0xfc00ffff, RD_s|RD_t|WR_HILO, 0, L1 }, @@ -1343,7 +1735,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"maddu", "s,t", 0x70000001, 0xfc00ffff, RD_s|RD_t|MOD_HILO, 0, I32|N55}, {"maddu", "s,t", 0x70000001, 0xfc00ffff, RD_s|RD_t|WR_HILO|IS_M, 0, G1 }, {"maddu", "d,s,t", 0x70000001, 0xfc0007ff, RD_s|RD_t|WR_HILO|WR_d|IS_M, 0, G1 }, -@@ -756,7 +756,7 @@ +@@ -756,7 +755,7 @@ {"movf.l", "X,Y,N", 0x46a00011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_D, 0, MX|SB1 }, {"movf.s", "D,S,N", 0x46000011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_S, 0, I4|I32 }, {"movf.ps", "D,S,N", 0x46c00011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_D, 0, I5 }, @@ -1352,7 +1744,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"ffc", "d,v", 0x0000000b, 0xfc1f07ff, WR_d|RD_s, 0, L1 }, {"movn.d", "D,S,t", 0x46200013, 0xffe0003f, WR_D|RD_S|RD_t|FP_D, 0, I4|I32 }, {"movn.l", "D,S,t", 0x46a00013, 0xffe0003f, WR_D|RD_S|RD_t|FP_D, 0, MX|SB1 }, -@@ -769,7 +769,7 @@ +@@ -769,7 +768,7 @@ {"movt.l", "X,Y,N", 0x46a10011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_D, 0, MX|SB1 }, {"movt.s", "D,S,N", 0x46010011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_S, 0, I4|I32 }, {"movt.ps", "D,S,N", 0x46c10011, 0xffe3003f, WR_D|RD_S|RD_CC|FP_D, 0, I5 }, @@ -1361,7 +1753,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"ffs", "d,v", 0x0000000a, 0xfc1f07ff, WR_d|RD_s, 0, L1 }, {"movz.d", "D,S,t", 0x46200012, 0xffe0003f, WR_D|RD_S|RD_t|FP_D, 0, I4|I32 }, {"movz.l", "D,S,t", 0x46a00012, 0xffe0003f, WR_D|RD_S|RD_t|FP_D, 0, MX|SB1 }, -@@ -786,8 +786,10 @@ +@@ -786,8 +785,10 @@ {"msub.s", "D,R,S,T", 0x4c000028, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_S, 0, I4 }, {"msub.ps", "D,R,S,T", 0x4c00002e, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5 }, {"msub", "s,t", 0x0000001e, 0xfc00ffff, RD_s|RD_t|WR_HILO, 0, L1 }, @@ -1372,7 +1764,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"msubu", "s,t", 0x70000005, 0xfc00ffff, RD_s|RD_t|MOD_HILO, 0, I32|N55 }, {"mtpc", "t,P", 0x4080c801, 0xffe0ffc1, COD|RD_t|WR_C0, 0, M1|N5 }, {"mtps", "t,P", 0x4080c800, 0xffe0ffc1, COD|RD_t|WR_C0, 0, M1|N5 }, -@@ -936,13 +938,13 @@ +@@ -936,13 +937,13 @@ {"rol", "d,v,I", 0, (int) M_ROL_I, INSN_MACRO, 0, I1 }, {"ror", "d,v,t", 0, (int) M_ROR, INSN_MACRO, 0, I1 }, {"ror", "d,v,I", 0, (int) M_ROR_I, INSN_MACRO, 0, I1 }, @@ -1393,7 +1785,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"round.l.d", "D,S", 0x46200008, 0xffff003f, WR_D|RD_S|FP_D, 0, I3 }, {"round.l.s", "D,S", 0x46000008, 0xffff003f, WR_D|RD_S|FP_S, 0, I3 }, {"round.w.d", "D,S", 0x4620000c, 0xffff003f, WR_D|RD_S|FP_D, 0, I2 }, -@@ -974,24 +976,18 @@ +@@ -974,24 +975,17 @@ {"sdbbp", "c,q", 0x0000000e, 0xfc00003f, TRAP, 0, G2 }, {"sdbbp", "", 0x7000003f, 0xffffffff, TRAP, 0, I32 }, {"sdbbp", "B", 0x7000003f, 0xfc00003f, TRAP, 0, I32 }, @@ -1403,14 +1795,15 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- -{"sdc1", "E,A(b)", 0, (int) M_SDC1_AB, INSN_MACRO, 0, I2 }, -{"sdc2", "E,o(b)", 0xf8000000, 0xfc000000, SM|RD_C2|RD_b, 0, I2 }, -{"sdc2", "E,A(b)", 0, (int) M_SDC2_AB, INSN_MACRO, 0, I2 }, -+/* sdc1 is at the bottom of the table. */ -+/* sdc2 is at the bottom of the table. */ - {"sdc3", "E,o(b)", 0xfc000000, 0xfc000000, SM|RD_C3|RD_b, 0, I2 }, - {"sdc3", "E,A(b)", 0, (int) M_SDC3_AB, INSN_MACRO, 0, I2 }, +-{"sdc3", "E,o(b)", 0xfc000000, 0xfc000000, SM|RD_C3|RD_b, 0, I2 }, +-{"sdc3", "E,A(b)", 0, (int) M_SDC3_AB, INSN_MACRO, 0, I2 }, -{"s.d", "T,o(b)", 0xf4000000, 0xfc000000, SM|RD_T|RD_b|FP_D, 0, I2 }, -{"s.d", "T,o(b)", 0, (int) M_S_DOB, INSN_MACRO, 0, I1 }, -{"s.d", "T,A(b)", 0, (int) M_S_DAB, INSN_MACRO, 0, I1 }, -{"sdl", "t,o(b)", 0xb0000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 }, ++/* sdc1 is at the bottom of the table. */ ++/* sdc2 is at the bottom of the table. */ ++/* sdc3 is at the bottom of the table. */ +/* s.d (sdc1 is at the bottom of the table. */ +{"sdl", "t,o(b)", 0xb0000000, 0xfc000000, SM|RD_t|RD_b, 0, I3|AL }, {"sdl", "t,A(b)", 0, (int) M_SDL_AB, INSN_MACRO, 0, I3 }, @@ -1424,7 +1817,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"selsl", "d,v,t", 0x00000005, 0xfc0007ff, WR_d|RD_s|RD_t, 0, L1 }, {"selsr", "d,v,t", 0x00000001, 0xfc0007ff, WR_d|RD_s|RD_t, 0, L1 }, {"seq", "d,v,t", 0, (int) M_SEQ, INSN_MACRO, 0, I1 }, -@@ -1083,8 +1079,7 @@ +@@ -1083,8 +1077,7 @@ {"swc1", "E,A(b)", 0, (int) M_SWC1_AB, INSN_MACRO, 0, I1 }, {"s.s", "T,o(b)", 0xe4000000, 0xfc000000, SM|RD_T|RD_b|FP_S, 0, I1 }, /* swc1 */ {"s.s", "T,A(b)", 0, (int) M_SWC1_AB, INSN_MACRO, 0, I1 }, @@ -1434,7 +1827,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"swc3", "E,o(b)", 0xec000000, 0xfc000000, SM|RD_C3|RD_b, 0, I1 }, {"swc3", "E,A(b)", 0, (int) M_SWC3_AB, INSN_MACRO, 0, I1 }, {"swl", "t,o(b)", 0xa8000000, 0xfc000000, SM|RD_t|RD_b, 0, I1 }, -@@ -1169,7 +1164,8 @@ +@@ -1169,7 +1162,8 @@ {"waiti", "", 0x42000020, 0xffffffff, TRAP, 0, L1 }, {"wb", "o(b)", 0xbc040000, 0xfc1f0000, SM|RD_b, 0, L1 }, {"wrpgpr", "d,w", 0x41c00000, 0xffe007ff, RD_t, 0, I33 }, @@ -1444,7 +1837,7 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- {"xor", "d,v,t", 0x00000026, 0xfc0007ff, WR_d|RD_s|RD_t, 0, I1 }, {"xor", "t,r,I", 0, (int) M_XOR_I, INSN_MACRO, 0, I1 }, {"xor.ob", "X,Y,Q", 0x7800000d, 0xfc20003f, WR_D|RD_S|RD_T|FP_D, 0, MX|SB1 }, -@@ -1179,6 +1175,320 @@ +@@ -1179,6 +1173,317 @@ {"xor.qh", "X,Y,Q", 0x7820000d, 0xfc20003f, WR_D|RD_S|RD_T|FP_D, 0, MX }, {"xori", "t,r,i", 0x38000000, 0xfc000000, WR_t|RD_s, 0, I1 }, @@ -1452,327 +1845,324 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- +{"bitrev", "d,t", 0x7c000520, 0xffe007ff, WR_d|RD_t, 0, AL }, + +/* Sony Allegrex VFPU instructions. */ -+/* MRB: I don't know all of the instructions that should be using WR_C2/RD_C2 (they're just synonyms -+ for INSN_COP). It's not that important and more for reference, but someone should fill them in later. */ -+/* MRB: I don't know the real macro names either, so they are assumed from the opcode's name. */ +{"bvf", "?c,p", 0x49000000, 0xffe30000, CBD|RD_CC, 0, AL }, +{"bvfl", "?c,p", 0x49020000, 0xffe30000, CBL|RD_CC, 0, AL }, +{"bvt", "?c,p", 0x49010000, 0xffe30000, CBD|RD_CC, 0, AL }, +{"bvtl", "?c,p", 0x49030000, 0xffe30000, CBL|RD_CC, 0, AL }, +{"lv.s", "?m0x,?o(b)", 0xc8000000, 0xfc000000, CLD|RD_s|WR_CC, 0, AL }, -+{"lv.s", "?m0x,A(b)", 0 , 0x00000073, INSN_MACRO, 0, AL }, -+{"ulv.s", "?m0x,o(b)", 0 , 0x000000da, INSN_MACRO, 0, AL }, ++{"lv.s", "?m0x,A(b)", 0, (int) M_LVQ_AB, INSN_MACRO, 0, AL }, ++{"ulv.s", "?m0x,o(b)", 0, (int) M_ULVS, INSN_MACRO, 0, AL }, +{"lv.q", "?n3x,?o(b)", 0xd8000000, 0xfc000002, CLD|RD_s|WR_CC, 0, AL }, -+{"lv.q", "?n3x,A(b)", 0 , 0x00000074, INSN_MACRO, 0, AL }, -+{"ulv.q", "?n3x,?o(b)", 0 , 0x000000dc, INSN_MACRO, 0, AL }, -+{"ulv.q", "?n3x,A(b)", 0 , 0x000000dd, INSN_MACRO, 0, AL }, -+{"lvi.s", "?t0x,l?y0", 0 , 0x00000062, INSN_MACRO, 0, AL }, -+{"lvi.p", "?t1x,?[l?y0,l?y1?]", 0 , 0x00000063, INSN_MACRO, 0, AL }, -+{"lvi.t", "?t2x,?[l?y0,l?y1,l?y2?]", 0 , 0x00000064, INSN_MACRO, 0, AL }, -+{"lvi.q", "?t3x,?[l?y0,l?y1,l?y2,l?y3?]", 0 , 0x00000065, INSN_MACRO, 0, AL }, -+{"lvhi.s", "?t0x,?[?u?y0,?u?y1?]", 0 , 0x00000060, INSN_MACRO, 0, AL }, -+{"lvhi.p", "?t1x,?[?u?y0,?u?y1,?u?y2,?u?y3?]", 0 , 0x00000061, INSN_MACRO, 0, AL }, -+{"sv.s", "?m0x,?o(b)", 0xe8000000, 0xfc000000, SM|RD_s|RD_C0, 0, AL }, -+{"sv.s", "?m0x,A(b)", 0 , 0x000000bf, INSN_MACRO, 0, AL }, -+{"usv.s", "?m0x,o(b)", 0 , 0x000000e4, INSN_MACRO, 0, AL }, -+{"sv.q", "?n3x,?o(b)", 0xf8000000, 0xfc000002, SM|RD_s|RD_C0, 0, AL }, -+{"sv.q", "?n3x,?o(b),?z", 0xf8000000, 0xfc000000, SM|RD_s|RD_C0, 0, AL }, -+{"sv.q", "?n3x,A(b)", 0 , 0x000000c0, INSN_MACRO, 0, AL }, -+{"sv.q", "?n3x,A(b),?z", 0 , 0x000000c0, INSN_MACRO, 0, AL }, -+{"sv.q", "?n3x,A,?z", 0 , 0x000000c0, INSN_MACRO, 0, AL }, -+{"usv.q", "?n3x,?o(b)", 0 , 0x000000e6, INSN_MACRO, 0, AL }, -+{"usv.q", "?n3x,A(b)", 0 , 0x000000e7, INSN_MACRO, 0, AL }, -+{"vwb.q", "?n3x,?o(b)", 0xf8000002, 0xfc000002, SM|RD_s|RD_C0, 0, AL }, ++{"lv.q", "?n3x,A(b)", 0, (int) M_LVQ_AB_2, INSN_MACRO, 0, AL }, ++{"ulv.q", "?n3x,?o(b)", 0, (int) M_ULVQ, INSN_MACRO, 0, AL }, ++{"ulv.q", "?n3x,A(b)", 0, (int) M_ULVQ_AB, INSN_MACRO, 0, AL }, ++{"lvi.s", "?t0x,l?y0", 0, (int) M_LVIS, INSN_MACRO, 0, AL }, ++{"lvi.p", "?t1x,?[l?y0,l?y1?]", 0, (int) M_LVIP, INSN_MACRO, 0, AL }, ++{"lvi.t", "?t2x,?[l?y0,l?y1,l?y2?]", 0, (int) M_LVIT, INSN_MACRO, 0, AL }, ++{"lvi.q", "?t3x,?[l?y0,l?y1,l?y2,l?y3?]", 0, (int) M_LVIQ, INSN_MACRO, 0, AL }, ++{"lvhi.s", "?t0x,?[?u?y0,?u?y1?]", 0, (int) M_LVHIS, INSN_MACRO, 0, AL }, ++{"lvhi.p", "?t1x,?[?u?y0,?u?y1,?u?y2,?u?y3?]", 0, (int) M_LVHIP, INSN_MACRO, 0, AL }, ++{"sv.s", "?m0x,?o(b)", 0xe8000000, 0xfc000000, SM|RD_s|RD_C2, 0, AL }, ++{"sv.s", "?m0x,A(b)", 0, (int) M_SVS_AB, INSN_MACRO, 0, AL }, ++{"usv.s", "?m0x,o(b)", 0, (int) M_USVS, INSN_MACRO, 0, AL }, ++{"sv.q", "?n3x,?o(b)", 0xf8000000, 0xfc000002, SM|RD_s|RD_C2, 0, AL }, ++{"sv.q", "?n3x,?o(b),?z", 0xf8000000, 0xfc000000, SM|RD_s|RD_C2, 0, AL }, ++{"sv.q", "?n3x,A(b)", 0, (int) M_SVQ_AB, INSN_MACRO, 0, AL }, ++{"sv.q", "?n3x,A(b),?z", 0, (int) M_SVQ_AB, INSN_MACRO, 0, AL }, ++{"sv.q", "?n3x,A,?z", 0, (int) M_SVQ_AB, INSN_MACRO, 0, AL }, ++{"usv.q", "?n3x,?o(b)", 0, (int) M_USVQ, INSN_MACRO, 0, AL }, ++{"usv.q", "?n3x,A(b)", 0, (int) M_USVQ_AB, INSN_MACRO, 0, AL }, ++{"vwb.q", "?n3x,?o(b)", 0xf8000002, 0xfc000002, SM|RD_s|RD_C2, 0, AL }, +{"lvl.q", "?n3x,?o(b)", 0xd4000000, 0xfc000002, CLD|RD_s|WR_CC, 0, AL }, -+{"lvl.q", "?n3x,A(b)", 0 , 0x00000075, INSN_MACRO, 0, AL }, ++{"lvl.q", "?n3x,A(b)", 0, (int) M_LVLQ_AB, INSN_MACRO, 0, AL }, +{"lvr.q", "?n3x,?o(b)", 0xd4000002, 0xfc000002, CLD|RD_s|WR_CC, 0, AL }, -+{"lvr.q", "?n3x,A(b)", 0 , 0x00000076, INSN_MACRO, 0, AL }, -+{"svl.q", "?n3x,?o(b)", 0xf4000000, 0xfc000002, SM|RD_s|RD_C0, 0, AL }, -+{"svl.q", "?n3x,A(b)", 0 , 0x000000c1, INSN_MACRO, 0, AL }, -+{"svr.q", "?n3x,?o(b)", 0xf4000002, 0xfc000002, SM|RD_s|RD_C0, 0, AL }, -+{"svr.q", "?n3x,A(b)", 0 , 0x000000c2, INSN_MACRO, 0, AL }, -+{"mtv", "t,?d0z", 0x48e00000, 0xffe0ff80, LCD|WR_t|RD_C0, 0, AL }, -+{"mfv", "t,?d0z", 0x48600000, 0xffe0ff80, COD|RD_t|WR_CC|RD_C0, 0, AL }, -+{"mtvc", "t,?q", 0x48e00000, 0xffe0ff00, LCD|WR_t|RD_C0, 0, AL }, -+{"mfvc", "t,?q", 0x48600000, 0xffe0ff00, COD|RD_t|WR_CC|RD_C0, 0, AL }, -+{"vmtvc", "?q,?s0y", 0xd0510000, 0xffff8000, RD_C0, 0, AL }, -+{"vmfvc", "?d0z,?r", 0xd0500000, 0xffff0080, RD_C0, 0, AL }, -+{"vadd.q", "?d3d,?s3s,?t3t", 0x60008080, 0xff808080, RD_C0, 0, AL }, -+{"vsub.q", "?d3d,?s3s,?t3t", 0x60808080, 0xff808080, RD_C0, 0, AL }, -+{"vdiv.q", "?x3z,?s3y,?t3x", 0x63808080, 0xff808080, RD_C0, 0, AL }, -+{"vmul.q", "?d3d,?s3s,?t3t", 0x64008080, 0xff808080, RD_C0, 0, AL }, -+{"vdot.q", "?d0d,?s3s,?t3t", 0x64808080, 0xff808080, RD_C0, 0, AL }, -+{"vscl.q", "?d3d,?s3s,?t0x", 0x65008080, 0xff808080, RD_C0, 0, AL }, -+{"vhdp.q", "?d0d,?s3y,?t3t", 0x66008080, 0xff808080, RD_C0, 0, AL }, -+{"vcmp.q", "?f2,?s3s,?t3t", 0x6c008080, 0xff8080f0, RD_C0, 0, AL }, -+{"vcmp.q", "?f1,?s3s", 0x6c008080, 0xffff80f0, RD_C0, 0, AL }, -+{"vcmp.q", "?f0", 0x6c008080, 0xfffffff0, RD_C0, 0, AL }, -+{"vmin.q", "?d3d,?s3s,?t3t", 0x6d008080, 0xff808080, RD_C0, 0, AL }, -+{"vmax.q", "?d3d,?s3s,?t3t", 0x6d808080, 0xff808080, RD_C0, 0, AL }, -+{"vsgn.q", "?d3d,?s3s", 0xd04a8080, 0xffff8080, RD_C0, 0, AL }, -+{"vcst.q", "?d3d,?a", 0xd0608080, 0xffe0ff80, RD_C0, 0, AL }, -+{"vscmp.q", "?d3d,?s3s,?t3t", 0x6e808080, 0xff808080, RD_C0, 0, AL }, -+{"vsge.q", "?d3d,?s3s,?t3t", 0x6f008080, 0xff808080, RD_C0, 0, AL }, -+{"vslt.q", "?d3d,?s3s,?t3t", 0x6f808080, 0xff808080, RD_C0, 0, AL }, -+{"vi2uc.q", "?d0m,?s3w", 0xd03c8080, 0xffff8080, RD_C0, 0, AL }, -+{"vi2c.q", "?d0m,?s3w", 0xd03d8080, 0xffff8080, RD_C0, 0, AL }, -+{"vi2us.q", "?d1m,?s3w", 0xd03e8080, 0xffff8080, RD_C0, 0, AL }, -+{"vi2s.q", "?d1m,?s3w", 0xd03f8080, 0xffff8080, RD_C0, 0, AL }, -+{"vmov.q", "?d3d,?s3s", 0xd0008080, 0xffff8080, RD_C0, 0, AL }, -+{"vabs.q", "?d3d,?s3w", 0xd0018080, 0xffff8080, RD_C0, 0, AL }, -+{"vneg.q", "?d3d,?s3w", 0xd0028080, 0xffff8080, RD_C0, 0, AL }, -+{"vidt.q", "?d3d", 0xd0038080, 0xffffff80, RD_C0, 0, AL }, -+{"vsat0.q", "?d3z,?s3s", 0xd0048080, 0xffff8080, RD_C0, 0, AL }, -+{"vsat1.q", "?d3z,?s3s", 0xd0058080, 0xffff8080, RD_C0, 0, AL }, -+{"vzero.q", "?d3d", 0xd0068080, 0xffffff80, RD_C0, 0, AL }, -+{"vone.q", "?d3d", 0xd0078080, 0xffffff80, RD_C0, 0, AL }, -+{"vrcp.q", "?x3z,?s3y", 0xd0108080, 0xffff8080, RD_C0, 0, AL }, -+{"vrsq.q", "?x3z,?s3y", 0xd0118080, 0xffff8080, RD_C0, 0, AL }, -+{"vsin.q", "?x3z,?s3y", 0xd0128080, 0xffff8080, RD_C0, 0, AL }, -+{"vcos.q", "?x3z,?s3y", 0xd0138080, 0xffff8080, RD_C0, 0, AL }, -+{"vexp2.q", "?x3z,?s3y", 0xd0148080, 0xffff8080, RD_C0, 0, AL }, -+{"vlog2.q", "?x3z,?s3y", 0xd0158080, 0xffff8080, RD_C0, 0, AL }, -+{"vsqrt.q", "?x3z,?s3y", 0xd0168080, 0xffff8080, RD_C0, 0, AL }, -+{"vasin.q", "?x3z,?s3y", 0xd0178080, 0xffff8080, RD_C0, 0, AL }, -+{"vnrcp.q", "?x3z,?s3y", 0xd0188080, 0xffff8080, RD_C0, 0, AL }, -+{"vnsin.q", "?x3z,?s3y", 0xd01a8080, 0xffff8080, RD_C0, 0, AL }, -+{"vrexp2.q", "?x3z,?s3y", 0xd01c8080, 0xffff8080, RD_C0, 0, AL }, -+{"vrndi.q", "?d3z", 0xd0218080, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf1.q", "?d3z", 0xd0228080, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf2.q", "?d3z", 0xd0238080, 0xffffff80, RD_C0, 0, AL }, -+{"vf2h.q", "?d1m,?s3s", 0xd0328080, 0xffff8080, RD_C0, 0, AL }, -+{"vsrt1.q", "?d3d,?s3s", 0xd0408080, 0xffff8080, RD_C0, 0, AL }, -+{"vsrt2.q", "?d3d,?s3s", 0xd0418080, 0xffff8080, RD_C0, 0, AL }, -+{"vsrt3.q", "?d3d,?s3s", 0xd0488080, 0xffff8080, RD_C0, 0, AL }, -+{"vsrt4.q", "?d3d,?s3s", 0xd0498080, 0xffff8080, RD_C0, 0, AL }, -+{"vbfy1.q", "?d3d,?s3s", 0xd0428080, 0xffff8080, RD_C0, 0, AL }, -+{"vbfy2.q", "?d3d,?s3s", 0xd0438080, 0xffff8080, RD_C0, 0, AL }, -+{"vocp.q", "?d3d,?s3y", 0xd0448080, 0xffff8080, RD_C0, 0, AL }, -+{"vfad.q", "?d0d,?s3s", 0xd0468080, 0xffff8080, RD_C0, 0, AL }, -+{"vavg.q", "?d0d,?s3s", 0xd0478080, 0xffff8080, RD_C0, 0, AL }, -+{"vf2in.q", "?d3m,?s3s,?b", 0xd2008080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iz.q", "?d3m,?s3s,?b", 0xd2208080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iu.q", "?d3m,?s3s,?b", 0xd2408080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2id.q", "?d3m,?s3s,?b", 0xd2608080, 0xffe08080, RD_C0, 0, AL }, -+{"vi2f.q", "?d3d,?s3w,?b", 0xd2808080, 0xffe08080, RD_C0, 0, AL }, -+{"vcmov.q", "?d3d,?s3s,?e", 0 , 0x000000e9, INSN_MACRO, 0, AL }, -+{"vcmovt.q", "?d3d,?s3s,?e", 0xd2a08080, 0xfff88080, RD_C0, 0, AL }, -+{"vcmovf.q", "?d3d,?s3s,?e", 0xd2a88080, 0xfff88080, RD_C0, 0, AL }, -+{"vmmul.q", "?v7z,?s7y,?t7x", 0xf0008080, 0xff808080, RD_C0, 0, AL }, -+{"vtfm4.q", "?v3z,?s7y,?t3x", 0xf1808080, 0xff808080, RD_C0, 0, AL }, -+{"vhtfm4.q", "?v3z,?s7y,?t3x", 0xf1808000, 0xff808080, RD_C0, 0, AL }, -+{"vmscl.q", "?x7z,?s7y,?t0x", 0xf2008080, 0xff808080, RD_C0, 0, AL }, -+{"vqmul.q", "?v3z,?s3y,?t3x", 0xf2808080, 0xff808080, RD_C0, 0, AL }, -+{"vmmov.q", "?x7z,?s7y", 0xf3808080, 0xffff8080, RD_C0, 0, AL }, -+{"vmidt.q", "?d7z", 0xf3838080, 0xffffff80, RD_C0, 0, AL }, -+{"vmzero.q", "?d7z", 0xf3868080, 0xffffff80, RD_C0, 0, AL }, -+{"vmone.q", "?d7z", 0xf3878080, 0xffffff80, RD_C0, 0, AL }, -+{"vrot.q", "?x3z,?s0y,?w", 0xf3a08080, 0xffe08080, RD_C0, 0, AL }, -+{"vt4444.q", "?d1z,?s3w", 0xd0598080, 0xffff8080, RD_C0, 0, AL }, -+{"vt5551.q", "?d1z,?s3w", 0xd05a8080, 0xffff8080, RD_C0, 0, AL }, -+{"vt5650.q", "?d1z,?s3w", 0xd05b8080, 0xffff8080, RD_C0, 0, AL }, -+{"vadd.t", "?d2d,?s2s,?t2t", 0x60008000, 0xff808080, RD_C0, 0, AL }, -+{"vsub.t", "?d2d,?s2s,?t2t", 0x60808000, 0xff808080, RD_C0, 0, AL }, -+{"vdiv.t", "?x2z,?s2y,?t2x", 0x63808000, 0xff808080, RD_C0, 0, AL }, -+{"vmul.t", "?d2d,?s2s,?t2t", 0x64008000, 0xff808080, RD_C0, 0, AL }, -+{"vdot.t", "?d0d,?s2s,?t2t", 0x64808000, 0xff808080, RD_C0, 0, AL }, -+{"vscl.t", "?d2d,?s2s,?t0x", 0x65008000, 0xff808080, RD_C0, 0, AL }, -+{"vhdp.t", "?d0d,?s2y,?t2t", 0x66008000, 0xff808080, RD_C0, 0, AL }, -+{"vcrs.t", "?d2d,?s2y,?t2x", 0x66808000, 0xff808080, RD_C0, 0, AL }, -+{"vcmp.t", "?f2,?s2s,?t2t", 0x6c008000, 0xff8080f0, RD_C0, 0, AL }, -+{"vcmp.t", "?f1,?s2s", 0x6c008000, 0xffff80f0, RD_C0, 0, AL }, -+{"vcmp.t", "?f0", 0x6c008000, 0xfffffff0, RD_C0, 0, AL }, -+{"vmin.t", "?d2d,?s2s,?t2t", 0x6d008000, 0xff808080, RD_C0, 0, AL }, -+{"vmax.t", "?d2d,?s2s,?t2t", 0x6d808000, 0xff808080, RD_C0, 0, AL }, -+{"vsgn.t", "?d2d,?s2s", 0xd04a8000, 0xffff8080, RD_C0, 0, AL }, -+{"vcst.t", "?d2d,?a", 0xd0608000, 0xffe0ff80, RD_C0, 0, AL }, -+{"vscmp.t", "?d2d,?s2s,?t2t", 0x6e808000, 0xff808080, RD_C0, 0, AL }, -+{"vsge.t", "?d2d,?s2s,?t2t", 0x6f008000, 0xff808080, RD_C0, 0, AL }, -+{"vslt.t", "?d2d,?s2s,?t2t", 0x6f808000, 0xff808080, RD_C0, 0, AL }, -+{"vmov.t", "?d2d,?s2s", 0xd0008000, 0xffff8080, RD_C0, 0, AL }, -+{"vabs.t", "?d2d,?s2w", 0xd0018000, 0xffff8080, RD_C0, 0, AL }, -+{"vneg.t", "?d2d,?s2w", 0xd0028000, 0xffff8080, RD_C0, 0, AL }, -+{"vsat0.t", "?d2z,?s2s", 0xd0048000, 0xffff8080, RD_C0, 0, AL }, -+{"vsat1.t", "?d2z,?s2s", 0xd0058000, 0xffff8080, RD_C0, 0, AL }, -+{"vzero.t", "?d2d", 0xd0068000, 0xffffff80, RD_C0, 0, AL }, -+{"vone.t", "?d2d", 0xd0078000, 0xffffff80, RD_C0, 0, AL }, -+{"vrcp.t", "?x2z,?s2y", 0xd0108000, 0xffff8080, RD_C0, 0, AL }, -+{"vrsq.t", "?x2z,?s2y", 0xd0118000, 0xffff8080, RD_C0, 0, AL }, -+{"vsin.t", "?x2z,?s2y", 0xd0128000, 0xffff8080, RD_C0, 0, AL }, -+{"vcos.t", "?x2z,?s2y", 0xd0138000, 0xffff8080, RD_C0, 0, AL }, -+{"vexp2.t", "?x2z,?s2y", 0xd0148000, 0xffff8080, RD_C0, 0, AL }, -+{"vlog2.t", "?x2z,?s2y", 0xd0158000, 0xffff8080, RD_C0, 0, AL }, -+{"vsqrt.t", "?x2z,?s2y", 0xd0168000, 0xffff8080, RD_C0, 0, AL }, -+{"vasin.t", "?x2z,?s2y", 0xd0178000, 0xffff8080, RD_C0, 0, AL }, -+{"vnrcp.t", "?x2z,?s2y", 0xd0188000, 0xffff8080, RD_C0, 0, AL }, -+{"vnsin.t", "?x2z,?s2y", 0xd01a8000, 0xffff8080, RD_C0, 0, AL }, -+{"vrexp2.t", "?x2z,?s2y", 0xd01c8000, 0xffff8080, RD_C0, 0, AL }, -+{"vrndi.t", "?d2z", 0xd0218000, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf1.t", "?d2z", 0xd0228000, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf2.t", "?d2z", 0xd0238000, 0xffffff80, RD_C0, 0, AL }, -+{"vocp.t", "?d2d,?s2y", 0xd0448000, 0xffff8080, RD_C0, 0, AL }, -+{"vfad.t", "?d0d,?s2s", 0xd0468000, 0xffff8080, RD_C0, 0, AL }, -+{"vavg.t", "?d0d,?s2s", 0xd0478000, 0xffff8080, RD_C0, 0, AL }, -+{"vf2in.t", "?d2m,?s2s,?b", 0xd2008000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iz.t", "?d2m,?s2s,?b", 0xd2208000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iu.t", "?d2m,?s2s,?b", 0xd2408000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2id.t", "?d2m,?s2s,?b", 0xd2608000, 0xffe08080, RD_C0, 0, AL }, -+{"vi2f.t", "?d2d,?s2w,?b", 0xd2808000, 0xffe08080, RD_C0, 0, AL }, -+{"vcmov.t", "?d2d,?s2s,?e", 0 , 0x000000eb, INSN_MACRO, 0, AL }, -+{"vcmovt.t", "?d2d,?s2s,?e", 0xd2a08000, 0xfff88080, RD_C0, 0, AL }, -+{"vcmovf.t", "?d2d,?s2s,?e", 0xd2a88000, 0xfff88080, RD_C0, 0, AL }, -+{"vmmul.t", "?v6z,?s6y,?t6x", 0xf0008000, 0xff808080, RD_C0, 0, AL }, -+{"vtfm3.t", "?v2z,?s6y,?t2x", 0xf1008000, 0xff808080, RD_C0, 0, AL }, -+{"vhtfm3.t", "?v2z,?s6y,?t2x", 0xf1000080, 0xff808080, RD_C0, 0, AL }, -+{"vmscl.t", "?x6z,?s6y,?t0x", 0xf2008000, 0xff808080, RD_C0, 0, AL }, -+{"vmmov.t", "?x6z,?s6y", 0xf3808000, 0xffff8080, RD_C0, 0, AL }, -+{"vmidt.t", "?d6z", 0xf3838000, 0xffffff80, RD_C0, 0, AL }, -+{"vmzero.t", "?d6z", 0xf3868000, 0xffffff80, RD_C0, 0, AL }, -+{"vmone.t", "?d6z", 0xf3878000, 0xffffff80, RD_C0, 0, AL }, -+{"vrot.t", "?x2z,?s0y,?w", 0xf3a08000, 0xffe08080, RD_C0, 0, AL }, -+{"vcrsp.t", "?d2z,?s2y,?t2x", 0xf2808000, 0xff808080, RD_C0, 0, AL }, -+{"vadd.p", "?d1d,?s1s,?t1t", 0x60000080, 0xff808080, RD_C0, 0, AL }, -+{"vsub.p", "?d1d,?s1s,?t1t", 0x60800080, 0xff808080, RD_C0, 0, AL }, -+{"vdiv.p", "?x1z,?s1y,?t1x", 0x63800080, 0xff808080, RD_C0, 0, AL }, -+{"vmul.p", "?d1d,?s1s,?t1t", 0x64000080, 0xff808080, RD_C0, 0, AL }, -+{"vdot.p", "?d0d,?s1s,?t1t", 0x64800080, 0xff808080, RD_C0, 0, AL }, -+{"vscl.p", "?d1d,?s1s,?t0x", 0x65000080, 0xff808080, RD_C0, 0, AL }, -+{"vhdp.p", "?d0d,?s1y,?t1t", 0x66000080, 0xff808080, RD_C0, 0, AL }, -+{"vdet.p", "?d0d,?s1s,?t1x", 0x67000080, 0xff808080, RD_C0, 0, AL }, -+{"vcmp.p", "?f2,?s1s,?t1t", 0x6c000080, 0xff8080f0, RD_C0, 0, AL }, -+{"vcmp.p", "?f1,?s1s", 0x6c000080, 0xffff80f0, RD_C0, 0, AL }, -+{"vcmp.p", "?f0", 0x6c000080, 0xfffffff0, RD_C0, 0, AL }, -+{"vmin.p", "?d1d,?s1s,?t1t", 0x6d000080, 0xff808080, RD_C0, 0, AL }, -+{"vmax.p", "?d1d,?s1s,?t1t", 0x6d800080, 0xff808080, RD_C0, 0, AL }, -+{"vsgn.p", "?d1d,?s1s", 0xd04a0080, 0xffff8080, RD_C0, 0, AL }, -+{"vcst.p", "?d1d,?a", 0xd0600080, 0xffe0ff80, RD_C0, 0, AL }, -+{"vscmp.p", "?d1d,?s1s,?t1t", 0x6e800080, 0xff808080, RD_C0, 0, AL }, -+{"vsge.p", "?d1d,?s1s,?t1t", 0x6f000080, 0xff808080, RD_C0, 0, AL }, -+{"vslt.p", "?d1d,?s1s,?t1t", 0x6f800080, 0xff808080, RD_C0, 0, AL }, -+{"vus2i.p", "?d3m,?s1y", 0xd03a0080, 0xffff8080, RD_C0, 0, AL }, -+{"vs2i.p", "?d3m,?s1y", 0xd03b0080, 0xffff8080, RD_C0, 0, AL }, -+{"vi2us.p", "?d0m,?s1w", 0xd03e0080, 0xffff8080, RD_C0, 0, AL }, -+{"vi2s.p", "?d0m,?s1w", 0xd03f0080, 0xffff8080, RD_C0, 0, AL }, -+{"vmov.p", "?d1d,?s1s", 0xd0000080, 0xffff8080, RD_C0, 0, AL }, -+{"vabs.p", "?d1d,?s1w", 0xd0010080, 0xffff8080, RD_C0, 0, AL }, -+{"vneg.p", "?d1d,?s1w", 0xd0020080, 0xffff8080, RD_C0, 0, AL }, -+{"vidt.p", "?d1d", 0xd0030080, 0xffffff80, RD_C0, 0, AL }, -+{"vsat0.p", "?d1z,?s1s", 0xd0040080, 0xffff8080, RD_C0, 0, AL }, -+{"vsat1.p", "?d1z,?s1s", 0xd0050080, 0xffff8080, RD_C0, 0, AL }, -+{"vzero.p", "?d1d", 0xd0060080, 0xffffff80, RD_C0, 0, AL }, -+{"vone.p", "?d1d", 0xd0070080, 0xffffff80, RD_C0, 0, AL }, -+{"vrcp.p", "?x1z,?s1y", 0xd0100080, 0xffff8080, RD_C0, 0, AL }, -+{"vrsq.p", "?x1z,?s1y", 0xd0110080, 0xffff8080, RD_C0, 0, AL }, -+{"vsin.p", "?x1z,?s1y", 0xd0120080, 0xffff8080, RD_C0, 0, AL }, -+{"vcos.p", "?x1z,?s1y", 0xd0130080, 0xffff8080, RD_C0, 0, AL }, -+{"vexp2.p", "?x1z,?s1y", 0xd0140080, 0xffff8080, RD_C0, 0, AL }, -+{"vlog2.p", "?x1z,?s1y", 0xd0150080, 0xffff8080, RD_C0, 0, AL }, -+{"vsqrt.p", "?x1z,?s1y", 0xd0160080, 0xffff8080, RD_C0, 0, AL }, -+{"vasin.p", "?x1z,?s1y", 0xd0170080, 0xffff8080, RD_C0, 0, AL }, -+{"vnrcp.p", "?x1z,?s1y", 0xd0180080, 0xffff8080, RD_C0, 0, AL }, -+{"vnsin.p", "?x1z,?s1y", 0xd01a0080, 0xffff8080, RD_C0, 0, AL }, -+{"vrexp2.p", "?x1z,?s1y", 0xd01c0080, 0xffff8080, RD_C0, 0, AL }, -+{"vrndi.p", "?d1z", 0xd0210080, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf1.p", "?d1z", 0xd0220080, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf2.p", "?d1z", 0xd0230080, 0xffffff80, RD_C0, 0, AL }, -+{"vf2h.p", "?d0m,?s1s", 0xd0320080, 0xffff8080, RD_C0, 0, AL }, -+{"vh2f.p", "?d3d,?s1y", 0xd0330080, 0xffff8080, RD_C0, 0, AL }, -+{"vbfy1.p", "?d1d,?s1s", 0xd0420080, 0xffff8080, RD_C0, 0, AL }, -+{"vocp.p", "?d1d,?s1y", 0xd0440080, 0xffff8080, RD_C0, 0, AL }, -+{"vsocp.p", "?d3z,?s1y", 0xd0450080, 0xffff8080, RD_C0, 0, AL }, -+{"vfad.p", "?d0d,?s1s", 0xd0460080, 0xffff8080, RD_C0, 0, AL }, -+{"vavg.p", "?d0d,?s1s", 0xd0470080, 0xffff8080, RD_C0, 0, AL }, -+{"vf2in.p", "?d1m,?s1s,?b", 0xd2000080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iz.p", "?d1m,?s1s,?b", 0xd2200080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iu.p", "?d1m,?s1s,?b", 0xd2400080, 0xffe08080, RD_C0, 0, AL }, -+{"vf2id.p", "?d1m,?s1s,?b", 0xd2600080, 0xffe08080, RD_C0, 0, AL }, -+{"vi2f.p", "?d1d,?s1w,?b", 0xd2800080, 0xffe08080, RD_C0, 0, AL }, -+{"vcmov.p", "?d1d,?s1s,?e", 0 , 0x000000e8, INSN_MACRO, 0, AL }, -+{"vcmovt.p", "?d1d,?s1s,?e", 0xd2a00080, 0xfff88080, RD_C0, 0, AL }, -+{"vcmovf.p", "?d1d,?s1s,?e", 0xd2a80080, 0xfff88080, RD_C0, 0, AL }, -+{"vmmul.p", "?v5z,?s5y,?t5x", 0xf0000080, 0xff808080, RD_C0, 0, AL }, -+{"vtfm2.p", "?v1z,?s5y,?t1x", 0xf0800080, 0xff808080, RD_C0, 0, AL }, -+{"vhtfm2.p", "?v1z,?s5y,?t1x", 0xf0800000, 0xff808080, RD_C0, 0, AL }, -+{"vmscl.p", "?x5z,?s5y,?t0x", 0xf2000080, 0xff808080, RD_C0, 0, AL }, -+{"vmmov.p", "?x5z,?s5y", 0xf3800080, 0xffff8080, RD_C0, 0, AL }, -+{"vmidt.p", "?d5z", 0xf3830080, 0xffffff80, RD_C0, 0, AL }, -+{"vmzero.p", "?d5z", 0xf3860080, 0xffffff80, RD_C0, 0, AL }, -+{"vmone.p", "?d5z", 0xf3870080, 0xffffff80, RD_C0, 0, AL }, -+{"vrot.p", "?x1z,?s0y,?w", 0xf3a00080, 0xffe08080, RD_C0, 0, AL }, -+{"vadd.s", "?d0d,?s0s,?t0t", 0x60000000, 0xff808080, RD_C0, 0, AL }, -+{"vsub.s", "?d0d,?s0s,?t0t", 0x60800000, 0xff808080, RD_C0, 0, AL }, -+{"vdiv.s", "?x0d,?s0s,?t0t", 0x63800000, 0xff808080, RD_C0, 0, AL }, -+{"vmul.s", "?d0d,?s0s,?t0t", 0x64000000, 0xff808080, RD_C0, 0, AL }, -+{"vcmp.s", "?f2,?s0s,?t0t", 0x6c000000, 0xff8080f0, RD_C0, 0, AL }, -+{"vcmp.s", "?f1,?s0s", 0x6c000000, 0xffff80f0, RD_C0, 0, AL }, -+{"vcmp.s", "?f0", 0x6c000000, 0xfffffff0, RD_C0, 0, AL }, -+{"vmin.s", "?d0d,?s0s,?t0t", 0x6d000000, 0xff808080, RD_C0, 0, AL }, -+{"vmax.s", "?d0d,?s0s,?t0t", 0x6d800000, 0xff808080, RD_C0, 0, AL }, -+{"vsgn.s", "?d0d,?s0s", 0xd04a0000, 0xffff8080, RD_C0, 0, AL }, -+{"vcst.s", "?d0d,?a", 0xd0600000, 0xffe0ff80, RD_C0, 0, AL }, -+{"vscmp.s", "?d0d,?s0s,?t0t", 0x6e800000, 0xff808080, RD_C0, 0, AL }, -+{"vsge.s", "?d0d,?s0s,?t0t", 0x6f000000, 0xff808080, RD_C0, 0, AL }, -+{"vslt.s", "?d0d,?s0s,?t0t", 0x6f800000, 0xff808080, RD_C0, 0, AL }, -+{"vus2i.s", "?d1m,?s0y", 0xd03a0000, 0xffff8080, RD_C0, 0, AL }, -+{"vs2i.s", "?d1m,?s0y", 0xd03b0000, 0xffff8080, RD_C0, 0, AL }, -+{"vmov.s", "?d0d,?s0s", 0xd0000000, 0xffff8080, RD_C0, 0, AL }, -+{"vabs.s", "?d0d,?s0w", 0xd0010000, 0xffff8080, RD_C0, 0, AL }, -+{"vneg.s", "?d0d,?s0w", 0xd0020000, 0xffff8080, RD_C0, 0, AL }, -+{"vsat0.s", "?d0z,?s0s", 0xd0040000, 0xffff8080, RD_C0, 0, AL }, -+{"vsat1.s", "?d0z,?s0s", 0xd0050000, 0xffff8080, RD_C0, 0, AL }, -+{"vzero.s", "?d0d", 0xd0060000, 0xffffff80, RD_C0, 0, AL }, -+{"vone.s", "?d0d", 0xd0070000, 0xffffff80, RD_C0, 0, AL }, -+{"vrcp.s", "?x0d,?s0s", 0xd0100000, 0xffff8080, RD_C0, 0, AL }, -+{"vrsq.s", "?x0d,?s0s", 0xd0110000, 0xffff8080, RD_C0, 0, AL }, -+{"vsin.s", "?x0d,?s0s", 0xd0120000, 0xffff8080, RD_C0, 0, AL }, -+{"vcos.s", "?x0d,?s0s", 0xd0130000, 0xffff8080, RD_C0, 0, AL }, -+{"vexp2.s", "?x0d,?s0s", 0xd0140000, 0xffff8080, RD_C0, 0, AL }, -+{"vlog2.s", "?x0d,?s0s", 0xd0150000, 0xffff8080, RD_C0, 0, AL }, -+{"vsqrt.s", "?x0d,?s0s", 0xd0160000, 0xffff8080, RD_C0, 0, AL }, -+{"vasin.s", "?x0d,?s0s", 0xd0170000, 0xffff8080, RD_C0, 0, AL }, -+{"vnrcp.s", "?x0d,?s0y", 0xd0180000, 0xffff8080, RD_C0, 0, AL }, -+{"vnsin.s", "?x0d,?s0y", 0xd01a0000, 0xffff8080, RD_C0, 0, AL }, -+{"vrexp2.s", "?x0d,?s0y", 0xd01c0000, 0xffff8080, RD_C0, 0, AL }, -+{"vrnds.s", "?s0y", 0xd0200000, 0xffff80ff, RD_C0, 0, AL }, -+{"vrndi.s", "?d0d", 0xd0210000, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf1.s", "?d0d", 0xd0220000, 0xffffff80, RD_C0, 0, AL }, -+{"vrndf2.s", "?d0d", 0xd0230000, 0xffffff80, RD_C0, 0, AL }, -+{"vh2f.s", "?d1d,?s0y", 0xd0330000, 0xffff8080, RD_C0, 0, AL }, -+{"vsbz.s", "?d0d,?s0s", 0xd0360000, 0xffff8080, RD_C0, 0, AL }, -+{"vsbn.s", "?d0d,?s0s,?t0t", 0x61000000, 0xff808080, RD_C0, 0, AL }, -+{"vlgb.s", "?d0d,?s0s", 0xd0370000, 0xffff8080, RD_C0, 0, AL }, -+{"vocp.s", "?d0d,?s0y", 0xd0440000, 0xffff8080, RD_C0, 0, AL }, -+{"vsocp.s", "?d1z,?s0y", 0xd0450000, 0xffff8080, RD_C0, 0, AL }, -+{"vf2in.s", "?d0m,?s0s,?b", 0xd2000000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iz.s", "?d0m,?s0s,?b", 0xd2200000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2iu.s", "?d0m,?s0s,?b", 0xd2400000, 0xffe08080, RD_C0, 0, AL }, -+{"vf2id.s", "?d0m,?s0s,?b", 0xd2600000, 0xffe08080, RD_C0, 0, AL }, -+{"vi2f.s", "?d0d,?s0w,?b", 0xd2800000, 0xffe08080, RD_C0, 0, AL }, -+{"vcmov.s", "?d0d,?s0s,?e", 0 , 0x000000ea, INSN_MACRO, 0, AL }, -+{"vcmovt.s", "?d0d,?s0s,?e", 0xd2a00000, 0xfff88080, RD_C0, 0, AL }, -+{"vcmovf.s", "?d0d,?s0s,?e", 0xd2a80000, 0xfff88080, RD_C0, 0, AL }, -+{"vwbn.s", "?d0d,?s0s,?i", 0xd3000000, 0xff008080, RD_C0, 0, AL }, -+{"vpfxs", "?0,?1,?2,?3", 0xdc000000, 0xff000000, RD_C0, 0, AL }, -+{"vpfxt", "?0,?1,?2,?3", 0xdd000000, 0xff000000, RD_C0, 0, AL }, -+{"vpfxd", "?4,?5,?6,?7", 0xde000000, 0xff000000, RD_C0, 0, AL }, -+{"viim.s", "?t0d,j", 0xdf000000, 0xff800000, RD_C0, 0, AL }, -+{"vfim.s", "?t0d,?u", 0xdf800000, 0xff800000, RD_C0, 0, AL }, -+{"vnop", "", 0xffff0000, 0xffffffff, RD_C0, 0, AL }, -+{"vflush", "", 0xffff040d, 0xffffffff, RD_C0, 0, AL }, -+{"vsync", "", 0xffff0320, 0xffffffff, RD_C0, 0, AL }, -+{"vsync", "i", 0xffff0000, 0xffff0000, RD_C0, 0, AL }, ++{"lvr.q", "?n3x,A(b)", 0, (int) M_LVRQ_AB, INSN_MACRO, 0, AL }, ++{"svl.q", "?n3x,?o(b)", 0xf4000000, 0xfc000002, SM|RD_s|RD_C2, 0, AL }, ++{"svl.q", "?n3x,A(b)", 0, (int) M_SVLQ_AB, INSN_MACRO, 0, AL }, ++{"svr.q", "?n3x,?o(b)", 0xf4000002, 0xfc000002, SM|RD_s|RD_C2, 0, AL }, ++{"svr.q", "?n3x,A(b)", 0, (int) M_SVRQ_AB, INSN_MACRO, 0, AL }, ++{"mtv", "t,?d0z", 0x48e00000, 0xffe0ff80, LCD|WR_t|WR_C2, 0, AL }, ++{"mfv", "t,?d0z", 0x48600000, 0xffe0ff80, COD|RD_t|WR_CC|RD_C2, 0, AL }, ++{"mtvc", "t,?q", 0x48e00000, 0xffe0ff00, LCD|WR_t|WR_C2, 0, AL }, ++{"mfvc", "t,?q", 0x48600000, 0xffe0ff00, COD|RD_t|WR_CC|RD_C2, 0, AL }, ++{"vmtvc", "?q,?s0y", 0xd0510000, 0xffff8000, WR_C2, 0, AL }, ++{"vmfvc", "?d0z,?r", 0xd0500000, 0xffff0080, RD_C2, 0, AL }, ++{"vadd.q", "?d3d,?s3s,?t3t", 0x60008080, 0xff808080, RD_C2, 0, AL }, ++{"vsub.q", "?d3d,?s3s,?t3t", 0x60808080, 0xff808080, RD_C2, 0, AL }, ++{"vdiv.q", "?x3z,?s3y,?t3x", 0x63808080, 0xff808080, RD_C2, 0, AL }, ++{"vmul.q", "?d3d,?s3s,?t3t", 0x64008080, 0xff808080, RD_C2, 0, AL }, ++{"vdot.q", "?d0d,?s3s,?t3t", 0x64808080, 0xff808080, RD_C2, 0, AL }, ++{"vscl.q", "?d3d,?s3s,?t0x", 0x65008080, 0xff808080, RD_C2, 0, AL }, ++{"vhdp.q", "?d0d,?s3y,?t3t", 0x66008080, 0xff808080, RD_C2, 0, AL }, ++{"vcmp.q", "?f2,?s3s,?t3t", 0x6c008080, 0xff8080f0, RD_C2, 0, AL }, ++{"vcmp.q", "?f1,?s3s", 0x6c008080, 0xffff80f0, RD_C2, 0, AL }, ++{"vcmp.q", "?f0", 0x6c008080, 0xfffffff0, RD_C2, 0, AL }, ++{"vmin.q", "?d3d,?s3s,?t3t", 0x6d008080, 0xff808080, RD_C2, 0, AL }, ++{"vmax.q", "?d3d,?s3s,?t3t", 0x6d808080, 0xff808080, RD_C2, 0, AL }, ++{"vsgn.q", "?d3d,?s3s", 0xd04a8080, 0xffff8080, RD_C2, 0, AL }, ++{"vcst.q", "?d3d,?a", 0xd0608080, 0xffe0ff80, RD_C2, 0, AL }, ++{"vscmp.q", "?d3d,?s3s,?t3t", 0x6e808080, 0xff808080, RD_C2, 0, AL }, ++{"vsge.q", "?d3d,?s3s,?t3t", 0x6f008080, 0xff808080, RD_C2, 0, AL }, ++{"vslt.q", "?d3d,?s3s,?t3t", 0x6f808080, 0xff808080, RD_C2, 0, AL }, ++{"vi2uc.q", "?d0m,?s3w", 0xd03c8080, 0xffff8080, RD_C2, 0, AL }, ++{"vi2c.q", "?d0m,?s3w", 0xd03d8080, 0xffff8080, RD_C2, 0, AL }, ++{"vi2us.q", "?d1m,?s3w", 0xd03e8080, 0xffff8080, RD_C2, 0, AL }, ++{"vi2s.q", "?d1m,?s3w", 0xd03f8080, 0xffff8080, RD_C2, 0, AL }, ++{"vmov.q", "?d3d,?s3s", 0xd0008080, 0xffff8080, RD_C2, 0, AL }, ++{"vabs.q", "?d3d,?s3w", 0xd0018080, 0xffff8080, RD_C2, 0, AL }, ++{"vneg.q", "?d3d,?s3w", 0xd0028080, 0xffff8080, RD_C2, 0, AL }, ++{"vidt.q", "?d3d", 0xd0038080, 0xffffff80, RD_C2, 0, AL }, ++{"vsat0.q", "?d3z,?s3s", 0xd0048080, 0xffff8080, RD_C2, 0, AL }, ++{"vsat1.q", "?d3z,?s3s", 0xd0058080, 0xffff8080, RD_C2, 0, AL }, ++{"vzero.q", "?d3d", 0xd0068080, 0xffffff80, RD_C2, 0, AL }, ++{"vone.q", "?d3d", 0xd0078080, 0xffffff80, RD_C2, 0, AL }, ++{"vrcp.q", "?x3z,?s3y", 0xd0108080, 0xffff8080, RD_C2, 0, AL }, ++{"vrsq.q", "?x3z,?s3y", 0xd0118080, 0xffff8080, RD_C2, 0, AL }, ++{"vsin.q", "?x3z,?s3y", 0xd0128080, 0xffff8080, RD_C2, 0, AL }, ++{"vcos.q", "?x3z,?s3y", 0xd0138080, 0xffff8080, RD_C2, 0, AL }, ++{"vexp2.q", "?x3z,?s3y", 0xd0148080, 0xffff8080, RD_C2, 0, AL }, ++{"vlog2.q", "?x3z,?s3y", 0xd0158080, 0xffff8080, RD_C2, 0, AL }, ++{"vsqrt.q", "?x3z,?s3y", 0xd0168080, 0xffff8080, RD_C2, 0, AL }, ++{"vasin.q", "?x3z,?s3y", 0xd0178080, 0xffff8080, RD_C2, 0, AL }, ++{"vnrcp.q", "?x3z,?s3y", 0xd0188080, 0xffff8080, RD_C2, 0, AL }, ++{"vnsin.q", "?x3z,?s3y", 0xd01a8080, 0xffff8080, RD_C2, 0, AL }, ++{"vrexp2.q", "?x3z,?s3y", 0xd01c8080, 0xffff8080, RD_C2, 0, AL }, ++{"vrndi.q", "?d3z", 0xd0218080, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf1.q", "?d3z", 0xd0228080, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf2.q", "?d3z", 0xd0238080, 0xffffff80, RD_C2, 0, AL }, ++{"vf2h.q", "?d1m,?s3s", 0xd0328080, 0xffff8080, RD_C2, 0, AL }, ++{"vsrt1.q", "?d3d,?s3s", 0xd0408080, 0xffff8080, RD_C2, 0, AL }, ++{"vsrt2.q", "?d3d,?s3s", 0xd0418080, 0xffff8080, RD_C2, 0, AL }, ++{"vsrt3.q", "?d3d,?s3s", 0xd0488080, 0xffff8080, RD_C2, 0, AL }, ++{"vsrt4.q", "?d3d,?s3s", 0xd0498080, 0xffff8080, RD_C2, 0, AL }, ++{"vbfy1.q", "?d3d,?s3s", 0xd0428080, 0xffff8080, RD_C2, 0, AL }, ++{"vbfy2.q", "?d3d,?s3s", 0xd0438080, 0xffff8080, RD_C2, 0, AL }, ++{"vocp.q", "?d3d,?s3y", 0xd0448080, 0xffff8080, RD_C2, 0, AL }, ++{"vfad.q", "?d0d,?s3s", 0xd0468080, 0xffff8080, RD_C2, 0, AL }, ++{"vavg.q", "?d0d,?s3s", 0xd0478080, 0xffff8080, RD_C2, 0, AL }, ++{"vf2in.q", "?d3m,?s3s,?b", 0xd2008080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iz.q", "?d3m,?s3s,?b", 0xd2208080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iu.q", "?d3m,?s3s,?b", 0xd2408080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2id.q", "?d3m,?s3s,?b", 0xd2608080, 0xffe08080, RD_C2, 0, AL }, ++{"vi2f.q", "?d3d,?s3w,?b", 0xd2808080, 0xffe08080, RD_C2, 0, AL }, ++{"vcmov.q", "?d3d,?s3s,?e", 0, (int) M_VCMOVQ, INSN_MACRO, 0, AL }, ++{"vcmovt.q", "?d3d,?s3s,?e", 0xd2a08080, 0xfff88080, RD_C2, 0, AL }, ++{"vcmovf.q", "?d3d,?s3s,?e", 0xd2a88080, 0xfff88080, RD_C2, 0, AL }, ++{"vmmul.q", "?v7z,?s7y,?t7x", 0xf0008080, 0xff808080, RD_C2, 0, AL }, ++{"vtfm4.q", "?v3z,?s7y,?t3x", 0xf1808080, 0xff808080, RD_C2, 0, AL }, ++{"vhtfm4.q", "?v3z,?s7y,?t3x", 0xf1808000, 0xff808080, RD_C2, 0, AL }, ++{"vmscl.q", "?x7z,?s7y,?t0x", 0xf2008080, 0xff808080, RD_C2, 0, AL }, ++{"vqmul.q", "?v3z,?s3y,?t3x", 0xf2808080, 0xff808080, RD_C2, 0, AL }, ++{"vmmov.q", "?x7z,?s7y", 0xf3808080, 0xffff8080, RD_C2, 0, AL }, ++{"vmidt.q", "?d7z", 0xf3838080, 0xffffff80, RD_C2, 0, AL }, ++{"vmzero.q", "?d7z", 0xf3868080, 0xffffff80, RD_C2, 0, AL }, ++{"vmone.q", "?d7z", 0xf3878080, 0xffffff80, RD_C2, 0, AL }, ++{"vrot.q", "?x3z,?s0y,?w", 0xf3a08080, 0xffe08080, RD_C2, 0, AL }, ++{"vt4444.q", "?d1z,?s3w", 0xd0598080, 0xffff8080, RD_C2, 0, AL }, ++{"vt5551.q", "?d1z,?s3w", 0xd05a8080, 0xffff8080, RD_C2, 0, AL }, ++{"vt5650.q", "?d1z,?s3w", 0xd05b8080, 0xffff8080, RD_C2, 0, AL }, ++{"vadd.t", "?d2d,?s2s,?t2t", 0x60008000, 0xff808080, RD_C2, 0, AL }, ++{"vsub.t", "?d2d,?s2s,?t2t", 0x60808000, 0xff808080, RD_C2, 0, AL }, ++{"vdiv.t", "?x2z,?s2y,?t2x", 0x63808000, 0xff808080, RD_C2, 0, AL }, ++{"vmul.t", "?d2d,?s2s,?t2t", 0x64008000, 0xff808080, RD_C2, 0, AL }, ++{"vdot.t", "?d0d,?s2s,?t2t", 0x64808000, 0xff808080, RD_C2, 0, AL }, ++{"vscl.t", "?d2d,?s2s,?t0x", 0x65008000, 0xff808080, RD_C2, 0, AL }, ++{"vhdp.t", "?d0d,?s2y,?t2t", 0x66008000, 0xff808080, RD_C2, 0, AL }, ++{"vcrs.t", "?d2d,?s2y,?t2x", 0x66808000, 0xff808080, RD_C2, 0, AL }, ++{"vcmp.t", "?f2,?s2s,?t2t", 0x6c008000, 0xff8080f0, RD_C2, 0, AL }, ++{"vcmp.t", "?f1,?s2s", 0x6c008000, 0xffff80f0, RD_C2, 0, AL }, ++{"vcmp.t", "?f0", 0x6c008000, 0xfffffff0, RD_C2, 0, AL }, ++{"vmin.t", "?d2d,?s2s,?t2t", 0x6d008000, 0xff808080, RD_C2, 0, AL }, ++{"vmax.t", "?d2d,?s2s,?t2t", 0x6d808000, 0xff808080, RD_C2, 0, AL }, ++{"vsgn.t", "?d2d,?s2s", 0xd04a8000, 0xffff8080, RD_C2, 0, AL }, ++{"vcst.t", "?d2d,?a", 0xd0608000, 0xffe0ff80, RD_C2, 0, AL }, ++{"vscmp.t", "?d2d,?s2s,?t2t", 0x6e808000, 0xff808080, RD_C2, 0, AL }, ++{"vsge.t", "?d2d,?s2s,?t2t", 0x6f008000, 0xff808080, RD_C2, 0, AL }, ++{"vslt.t", "?d2d,?s2s,?t2t", 0x6f808000, 0xff808080, RD_C2, 0, AL }, ++{"vmov.t", "?d2d,?s2s", 0xd0008000, 0xffff8080, RD_C2, 0, AL }, ++{"vabs.t", "?d2d,?s2w", 0xd0018000, 0xffff8080, RD_C2, 0, AL }, ++{"vneg.t", "?d2d,?s2w", 0xd0028000, 0xffff8080, RD_C2, 0, AL }, ++{"vsat0.t", "?d2z,?s2s", 0xd0048000, 0xffff8080, RD_C2, 0, AL }, ++{"vsat1.t", "?d2z,?s2s", 0xd0058000, 0xffff8080, RD_C2, 0, AL }, ++{"vzero.t", "?d2d", 0xd0068000, 0xffffff80, RD_C2, 0, AL }, ++{"vone.t", "?d2d", 0xd0078000, 0xffffff80, RD_C2, 0, AL }, ++{"vrcp.t", "?x2z,?s2y", 0xd0108000, 0xffff8080, RD_C2, 0, AL }, ++{"vrsq.t", "?x2z,?s2y", 0xd0118000, 0xffff8080, RD_C2, 0, AL }, ++{"vsin.t", "?x2z,?s2y", 0xd0128000, 0xffff8080, RD_C2, 0, AL }, ++{"vcos.t", "?x2z,?s2y", 0xd0138000, 0xffff8080, RD_C2, 0, AL }, ++{"vexp2.t", "?x2z,?s2y", 0xd0148000, 0xffff8080, RD_C2, 0, AL }, ++{"vlog2.t", "?x2z,?s2y", 0xd0158000, 0xffff8080, RD_C2, 0, AL }, ++{"vsqrt.t", "?x2z,?s2y", 0xd0168000, 0xffff8080, RD_C2, 0, AL }, ++{"vasin.t", "?x2z,?s2y", 0xd0178000, 0xffff8080, RD_C2, 0, AL }, ++{"vnrcp.t", "?x2z,?s2y", 0xd0188000, 0xffff8080, RD_C2, 0, AL }, ++{"vnsin.t", "?x2z,?s2y", 0xd01a8000, 0xffff8080, RD_C2, 0, AL }, ++{"vrexp2.t", "?x2z,?s2y", 0xd01c8000, 0xffff8080, RD_C2, 0, AL }, ++{"vrndi.t", "?d2z", 0xd0218000, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf1.t", "?d2z", 0xd0228000, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf2.t", "?d2z", 0xd0238000, 0xffffff80, RD_C2, 0, AL }, ++{"vocp.t", "?d2d,?s2y", 0xd0448000, 0xffff8080, RD_C2, 0, AL }, ++{"vfad.t", "?d0d,?s2s", 0xd0468000, 0xffff8080, RD_C2, 0, AL }, ++{"vavg.t", "?d0d,?s2s", 0xd0478000, 0xffff8080, RD_C2, 0, AL }, ++{"vf2in.t", "?d2m,?s2s,?b", 0xd2008000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iz.t", "?d2m,?s2s,?b", 0xd2208000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iu.t", "?d2m,?s2s,?b", 0xd2408000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2id.t", "?d2m,?s2s,?b", 0xd2608000, 0xffe08080, RD_C2, 0, AL }, ++{"vi2f.t", "?d2d,?s2w,?b", 0xd2808000, 0xffe08080, RD_C2, 0, AL }, ++{"vcmov.t", "?d2d,?s2s,?e", 0, (int) M_VCMOVT, INSN_MACRO, 0, AL }, ++{"vcmovt.t", "?d2d,?s2s,?e", 0xd2a08000, 0xfff88080, RD_C2, 0, AL }, ++{"vcmovf.t", "?d2d,?s2s,?e", 0xd2a88000, 0xfff88080, RD_C2, 0, AL }, ++{"vmmul.t", "?v6z,?s6y,?t6x", 0xf0008000, 0xff808080, RD_C2, 0, AL }, ++{"vtfm3.t", "?v2z,?s6y,?t2x", 0xf1008000, 0xff808080, RD_C2, 0, AL }, ++{"vhtfm3.t", "?v2z,?s6y,?t2x", 0xf1000080, 0xff808080, RD_C2, 0, AL }, ++{"vmscl.t", "?x6z,?s6y,?t0x", 0xf2008000, 0xff808080, RD_C2, 0, AL }, ++{"vmmov.t", "?x6z,?s6y", 0xf3808000, 0xffff8080, RD_C2, 0, AL }, ++{"vmidt.t", "?d6z", 0xf3838000, 0xffffff80, RD_C2, 0, AL }, ++{"vmzero.t", "?d6z", 0xf3868000, 0xffffff80, RD_C2, 0, AL }, ++{"vmone.t", "?d6z", 0xf3878000, 0xffffff80, RD_C2, 0, AL }, ++{"vrot.t", "?x2z,?s0y,?w", 0xf3a08000, 0xffe08080, RD_C2, 0, AL }, ++{"vcrsp.t", "?d2z,?s2y,?t2x", 0xf2808000, 0xff808080, RD_C2, 0, AL }, ++{"vadd.p", "?d1d,?s1s,?t1t", 0x60000080, 0xff808080, RD_C2, 0, AL }, ++{"vsub.p", "?d1d,?s1s,?t1t", 0x60800080, 0xff808080, RD_C2, 0, AL }, ++{"vdiv.p", "?x1z,?s1y,?t1x", 0x63800080, 0xff808080, RD_C2, 0, AL }, ++{"vmul.p", "?d1d,?s1s,?t1t", 0x64000080, 0xff808080, RD_C2, 0, AL }, ++{"vdot.p", "?d0d,?s1s,?t1t", 0x64800080, 0xff808080, RD_C2, 0, AL }, ++{"vscl.p", "?d1d,?s1s,?t0x", 0x65000080, 0xff808080, RD_C2, 0, AL }, ++{"vhdp.p", "?d0d,?s1y,?t1t", 0x66000080, 0xff808080, RD_C2, 0, AL }, ++{"vdet.p", "?d0d,?s1s,?t1x", 0x67000080, 0xff808080, RD_C2, 0, AL }, ++{"vcmp.p", "?f2,?s1s,?t1t", 0x6c000080, 0xff8080f0, RD_C2, 0, AL }, ++{"vcmp.p", "?f1,?s1s", 0x6c000080, 0xffff80f0, RD_C2, 0, AL }, ++{"vcmp.p", "?f0", 0x6c000080, 0xfffffff0, RD_C2, 0, AL }, ++{"vmin.p", "?d1d,?s1s,?t1t", 0x6d000080, 0xff808080, RD_C2, 0, AL }, ++{"vmax.p", "?d1d,?s1s,?t1t", 0x6d800080, 0xff808080, RD_C2, 0, AL }, ++{"vsgn.p", "?d1d,?s1s", 0xd04a0080, 0xffff8080, RD_C2, 0, AL }, ++{"vcst.p", "?d1d,?a", 0xd0600080, 0xffe0ff80, RD_C2, 0, AL }, ++{"vscmp.p", "?d1d,?s1s,?t1t", 0x6e800080, 0xff808080, RD_C2, 0, AL }, ++{"vsge.p", "?d1d,?s1s,?t1t", 0x6f000080, 0xff808080, RD_C2, 0, AL }, ++{"vslt.p", "?d1d,?s1s,?t1t", 0x6f800080, 0xff808080, RD_C2, 0, AL }, ++{"vus2i.p", "?d3m,?s1y", 0xd03a0080, 0xffff8080, RD_C2, 0, AL }, ++{"vs2i.p", "?d3m,?s1y", 0xd03b0080, 0xffff8080, RD_C2, 0, AL }, ++{"vi2us.p", "?d0m,?s1w", 0xd03e0080, 0xffff8080, RD_C2, 0, AL }, ++{"vi2s.p", "?d0m,?s1w", 0xd03f0080, 0xffff8080, RD_C2, 0, AL }, ++{"vmov.p", "?d1d,?s1s", 0xd0000080, 0xffff8080, RD_C2, 0, AL }, ++{"vabs.p", "?d1d,?s1w", 0xd0010080, 0xffff8080, RD_C2, 0, AL }, ++{"vneg.p", "?d1d,?s1w", 0xd0020080, 0xffff8080, RD_C2, 0, AL }, ++{"vidt.p", "?d1d", 0xd0030080, 0xffffff80, RD_C2, 0, AL }, ++{"vsat0.p", "?d1z,?s1s", 0xd0040080, 0xffff8080, RD_C2, 0, AL }, ++{"vsat1.p", "?d1z,?s1s", 0xd0050080, 0xffff8080, RD_C2, 0, AL }, ++{"vzero.p", "?d1d", 0xd0060080, 0xffffff80, RD_C2, 0, AL }, ++{"vone.p", "?d1d", 0xd0070080, 0xffffff80, RD_C2, 0, AL }, ++{"vrcp.p", "?x1z,?s1y", 0xd0100080, 0xffff8080, RD_C2, 0, AL }, ++{"vrsq.p", "?x1z,?s1y", 0xd0110080, 0xffff8080, RD_C2, 0, AL }, ++{"vsin.p", "?x1z,?s1y", 0xd0120080, 0xffff8080, RD_C2, 0, AL }, ++{"vcos.p", "?x1z,?s1y", 0xd0130080, 0xffff8080, RD_C2, 0, AL }, ++{"vexp2.p", "?x1z,?s1y", 0xd0140080, 0xffff8080, RD_C2, 0, AL }, ++{"vlog2.p", "?x1z,?s1y", 0xd0150080, 0xffff8080, RD_C2, 0, AL }, ++{"vsqrt.p", "?x1z,?s1y", 0xd0160080, 0xffff8080, RD_C2, 0, AL }, ++{"vasin.p", "?x1z,?s1y", 0xd0170080, 0xffff8080, RD_C2, 0, AL }, ++{"vnrcp.p", "?x1z,?s1y", 0xd0180080, 0xffff8080, RD_C2, 0, AL }, ++{"vnsin.p", "?x1z,?s1y", 0xd01a0080, 0xffff8080, RD_C2, 0, AL }, ++{"vrexp2.p", "?x1z,?s1y", 0xd01c0080, 0xffff8080, RD_C2, 0, AL }, ++{"vrndi.p", "?d1z", 0xd0210080, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf1.p", "?d1z", 0xd0220080, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf2.p", "?d1z", 0xd0230080, 0xffffff80, RD_C2, 0, AL }, ++{"vf2h.p", "?d0m,?s1s", 0xd0320080, 0xffff8080, RD_C2, 0, AL }, ++{"vh2f.p", "?d3d,?s1y", 0xd0330080, 0xffff8080, RD_C2, 0, AL }, ++{"vbfy1.p", "?d1d,?s1s", 0xd0420080, 0xffff8080, RD_C2, 0, AL }, ++{"vocp.p", "?d1d,?s1y", 0xd0440080, 0xffff8080, RD_C2, 0, AL }, ++{"vsocp.p", "?d3z,?s1y", 0xd0450080, 0xffff8080, RD_C2, 0, AL }, ++{"vfad.p", "?d0d,?s1s", 0xd0460080, 0xffff8080, RD_C2, 0, AL }, ++{"vavg.p", "?d0d,?s1s", 0xd0470080, 0xffff8080, RD_C2, 0, AL }, ++{"vf2in.p", "?d1m,?s1s,?b", 0xd2000080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iz.p", "?d1m,?s1s,?b", 0xd2200080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iu.p", "?d1m,?s1s,?b", 0xd2400080, 0xffe08080, RD_C2, 0, AL }, ++{"vf2id.p", "?d1m,?s1s,?b", 0xd2600080, 0xffe08080, RD_C2, 0, AL }, ++{"vi2f.p", "?d1d,?s1w,?b", 0xd2800080, 0xffe08080, RD_C2, 0, AL }, ++{"vcmov.p", "?d1d,?s1s,?e", 0, (int) M_VCMOVP, INSN_MACRO, 0, AL }, ++{"vcmovt.p", "?d1d,?s1s,?e", 0xd2a00080, 0xfff88080, RD_C2, 0, AL }, ++{"vcmovf.p", "?d1d,?s1s,?e", 0xd2a80080, 0xfff88080, RD_C2, 0, AL }, ++{"vmmul.p", "?v5z,?s5y,?t5x", 0xf0000080, 0xff808080, RD_C2, 0, AL }, ++{"vtfm2.p", "?v1z,?s5y,?t1x", 0xf0800080, 0xff808080, RD_C2, 0, AL }, ++{"vhtfm2.p", "?v1z,?s5y,?t1x", 0xf0800000, 0xff808080, RD_C2, 0, AL }, ++{"vmscl.p", "?x5z,?s5y,?t0x", 0xf2000080, 0xff808080, RD_C2, 0, AL }, ++{"vmmov.p", "?x5z,?s5y", 0xf3800080, 0xffff8080, RD_C2, 0, AL }, ++{"vmidt.p", "?d5z", 0xf3830080, 0xffffff80, RD_C2, 0, AL }, ++{"vmzero.p", "?d5z", 0xf3860080, 0xffffff80, RD_C2, 0, AL }, ++{"vmone.p", "?d5z", 0xf3870080, 0xffffff80, RD_C2, 0, AL }, ++{"vrot.p", "?x1z,?s0y,?w", 0xf3a00080, 0xffe08080, RD_C2, 0, AL }, ++{"vadd.s", "?d0d,?s0s,?t0t", 0x60000000, 0xff808080, RD_C2, 0, AL }, ++{"vsub.s", "?d0d,?s0s,?t0t", 0x60800000, 0xff808080, RD_C2, 0, AL }, ++{"vdiv.s", "?x0d,?s0s,?t0t", 0x63800000, 0xff808080, RD_C2, 0, AL }, ++{"vmul.s", "?d0d,?s0s,?t0t", 0x64000000, 0xff808080, RD_C2, 0, AL }, ++{"vcmp.s", "?f2,?s0s,?t0t", 0x6c000000, 0xff8080f0, RD_C2, 0, AL }, ++{"vcmp.s", "?f1,?s0s", 0x6c000000, 0xffff80f0, RD_C2, 0, AL }, ++{"vcmp.s", "?f0", 0x6c000000, 0xfffffff0, RD_C2, 0, AL }, ++{"vmin.s", "?d0d,?s0s,?t0t", 0x6d000000, 0xff808080, RD_C2, 0, AL }, ++{"vmax.s", "?d0d,?s0s,?t0t", 0x6d800000, 0xff808080, RD_C2, 0, AL }, ++{"vsgn.s", "?d0d,?s0s", 0xd04a0000, 0xffff8080, RD_C2, 0, AL }, ++{"vcst.s", "?d0d,?a", 0xd0600000, 0xffe0ff80, RD_C2, 0, AL }, ++{"vscmp.s", "?d0d,?s0s,?t0t", 0x6e800000, 0xff808080, RD_C2, 0, AL }, ++{"vsge.s", "?d0d,?s0s,?t0t", 0x6f000000, 0xff808080, RD_C2, 0, AL }, ++{"vslt.s", "?d0d,?s0s,?t0t", 0x6f800000, 0xff808080, RD_C2, 0, AL }, ++{"vus2i.s", "?d1m,?s0y", 0xd03a0000, 0xffff8080, RD_C2, 0, AL }, ++{"vs2i.s", "?d1m,?s0y", 0xd03b0000, 0xffff8080, RD_C2, 0, AL }, ++{"vmov.s", "?d0d,?s0s", 0xd0000000, 0xffff8080, RD_C2, 0, AL }, ++{"vabs.s", "?d0d,?s0w", 0xd0010000, 0xffff8080, RD_C2, 0, AL }, ++{"vneg.s", "?d0d,?s0w", 0xd0020000, 0xffff8080, RD_C2, 0, AL }, ++{"vsat0.s", "?d0z,?s0s", 0xd0040000, 0xffff8080, RD_C2, 0, AL }, ++{"vsat1.s", "?d0z,?s0s", 0xd0050000, 0xffff8080, RD_C2, 0, AL }, ++{"vzero.s", "?d0d", 0xd0060000, 0xffffff80, RD_C2, 0, AL }, ++{"vone.s", "?d0d", 0xd0070000, 0xffffff80, RD_C2, 0, AL }, ++{"vrcp.s", "?x0d,?s0s", 0xd0100000, 0xffff8080, RD_C2, 0, AL }, ++{"vrsq.s", "?x0d,?s0s", 0xd0110000, 0xffff8080, RD_C2, 0, AL }, ++{"vsin.s", "?x0d,?s0s", 0xd0120000, 0xffff8080, RD_C2, 0, AL }, ++{"vcos.s", "?x0d,?s0s", 0xd0130000, 0xffff8080, RD_C2, 0, AL }, ++{"vexp2.s", "?x0d,?s0s", 0xd0140000, 0xffff8080, RD_C2, 0, AL }, ++{"vlog2.s", "?x0d,?s0s", 0xd0150000, 0xffff8080, RD_C2, 0, AL }, ++{"vsqrt.s", "?x0d,?s0s", 0xd0160000, 0xffff8080, RD_C2, 0, AL }, ++{"vasin.s", "?x0d,?s0s", 0xd0170000, 0xffff8080, RD_C2, 0, AL }, ++{"vnrcp.s", "?x0d,?s0y", 0xd0180000, 0xffff8080, RD_C2, 0, AL }, ++{"vnsin.s", "?x0d,?s0y", 0xd01a0000, 0xffff8080, RD_C2, 0, AL }, ++{"vrexp2.s", "?x0d,?s0y", 0xd01c0000, 0xffff8080, RD_C2, 0, AL }, ++{"vrnds.s", "?s0y", 0xd0200000, 0xffff80ff, RD_C2, 0, AL }, ++{"vrndi.s", "?d0d", 0xd0210000, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf1.s", "?d0d", 0xd0220000, 0xffffff80, RD_C2, 0, AL }, ++{"vrndf2.s", "?d0d", 0xd0230000, 0xffffff80, RD_C2, 0, AL }, ++{"vh2f.s", "?d1d,?s0y", 0xd0330000, 0xffff8080, RD_C2, 0, AL }, ++{"vsbz.s", "?d0d,?s0s", 0xd0360000, 0xffff8080, RD_C2, 0, AL }, ++{"vsbn.s", "?d0d,?s0s,?t0t", 0x61000000, 0xff808080, RD_C2, 0, AL }, ++{"vlgb.s", "?d0d,?s0s", 0xd0370000, 0xffff8080, RD_C2, 0, AL }, ++{"vocp.s", "?d0d,?s0y", 0xd0440000, 0xffff8080, RD_C2, 0, AL }, ++{"vsocp.s", "?d1z,?s0y", 0xd0450000, 0xffff8080, RD_C2, 0, AL }, ++{"vf2in.s", "?d0m,?s0s,?b", 0xd2000000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iz.s", "?d0m,?s0s,?b", 0xd2200000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2iu.s", "?d0m,?s0s,?b", 0xd2400000, 0xffe08080, RD_C2, 0, AL }, ++{"vf2id.s", "?d0m,?s0s,?b", 0xd2600000, 0xffe08080, RD_C2, 0, AL }, ++{"vi2f.s", "?d0d,?s0w,?b", 0xd2800000, 0xffe08080, RD_C2, 0, AL }, ++{"vcmov.s", "?d0d,?s0s,?e", 0, (int) M_VCMOVS, INSN_MACRO, 0, AL }, ++{"vcmovt.s", "?d0d,?s0s,?e", 0xd2a00000, 0xfff88080, RD_C2, 0, AL }, ++{"vcmovf.s", "?d0d,?s0s,?e", 0xd2a80000, 0xfff88080, RD_C2, 0, AL }, ++{"vwbn.s", "?d0d,?s0s,?i", 0xd3000000, 0xff008080, RD_C2, 0, AL }, ++{"vpfxs", "?0,?1,?2,?3", 0xdc000000, 0xff000000, RD_C2, 0, AL }, ++{"vpfxt", "?0,?1,?2,?3", 0xdd000000, 0xff000000, RD_C2, 0, AL }, ++{"vpfxd", "?4,?5,?6,?7", 0xde000000, 0xff000000, RD_C2, 0, AL }, ++{"viim.s", "?t0d,j", 0xdf000000, 0xff800000, RD_C2, 0, AL }, ++{"vfim.s", "?t0d,?u", 0xdf800000, 0xff800000, RD_C2, 0, AL }, ++{"vnop", "", 0xffff0000, 0xffffffff, RD_C2, 0, AL }, ++{"vflush", "", 0xffff040d, 0xffffffff, RD_C2, 0, AL }, ++{"vsync", "", 0xffff0320, 0xffffffff, RD_C2, 0, AL }, ++{"vsync", "i", 0xffff0000, 0xffff0000, RD_C2, 0, AL }, + /* Coprocessor 2 move/branch operations overlap with VR5400 .ob format instructions so they are here for the latters to take precedence. */ {"bc2f", "p", 0x49000000, 0xffff0000, CBD|RD_CC, 0, I1 }, -@@ -1197,6 +1507,32 @@ +@@ -1197,6 +1502,36 @@ {"mtc2", "t,G", 0x48800000, 0xffe007ff, COD|RD_t|WR_C2|WR_CC, 0, I1 }, {"mtc2", "t,G,H", 0x48800000, 0xffe007f8, COD|RD_t|WR_C2|WR_CC, 0, I32 }, {"mthc2", "t,i", 0x48e00000, 0xffe00000, COD|RD_t|WR_C2|WR_CC, 0, I33 }, + +/* Coprocessor 2 load/store operations overlap with the Allegrex VFPU + instructions so they are here for the latters to take precedence. */ -+/* Coprocessor 1 ldc1 and sdc1 also overlap with the VFPU. */ ++/* COP1 ldc1 and sdc1 and COP3 ldc3 and sdc3 also overlap with the VFPU. */ +{"ldc1", "T,o(b)", 0xd4000000, 0xfc000000, CLD|RD_b|WR_T|FP_D, 0, I2 }, +{"ldc1", "E,o(b)", 0xd4000000, 0xfc000000, CLD|RD_b|WR_T|FP_D, 0, I2 }, +{"ldc1", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, 0, I2 }, @@ -1782,6 +2172,8 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- +{"l.d", "T,A(b)", 0, (int) M_L_DAB, INSN_MACRO, 0, I1 }, +{"ldc2", "E,o(b)", 0xd8000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2 }, +{"ldc2", "E,A(b)", 0, (int) M_LDC2_AB, INSN_MACRO, 0, I2 }, ++{"ldc3", "E,o(b)", 0xdc000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2 }, ++{"ldc3", "E,A(b)", 0, (int) M_LDC3_AB, INSN_MACRO, 0, I2 }, +{"lwc2", "E,o(b)", 0xc8000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I1 }, +{"lwc2", "E,A(b)", 0, (int) M_LWC2_AB, INSN_MACRO, 0, I1 }, +{"sdc1", "T,o(b)", 0xf4000000, 0xfc000000, SM|RD_T|RD_b|FP_D, 0, I2 }, @@ -1793,6 +2185,8 @@ diff -NBaur binutils-2.16.1/opcodes/mips-opc.c binutils-2.16.1-psp/opcodes/mips- +{"s.d", "T,A(b)", 0, (int) M_S_DAB, INSN_MACRO, 0, I1 }, +{"sdc2", "E,o(b)", 0xf8000000, 0xfc000000, SM|RD_C2|RD_b, 0, I2 }, +{"sdc2", "E,A(b)", 0, (int) M_SDC2_AB, INSN_MACRO, 0, I2 }, ++{"sdc3", "E,o(b)", 0xfc000000, 0xfc000000, SM|RD_C3|RD_b, 0, I2 }, ++{"sdc3", "E,A(b)", 0, (int) M_SDC3_AB, INSN_MACRO, 0, I2 }, +{"swc2", "E,o(b)", 0xe8000000, 0xfc000000, SM|RD_C2|RD_b, 0, I1 }, +{"swc2", "E,A(b)", 0, (int) M_SWC2_AB, INSN_MACRO, 0, I1 }, diff --git a/dkpsp/patches/newlib-1.13.0.patch b/dkpsp/patches/newlib-1.13.0.patch index 1cdd9ac..aaf21fa 100644 --- a/dkpsp/patches/newlib-1.13.0.patch +++ b/dkpsp/patches/newlib-1.13.0.patch @@ -1,4236 +1,4238 @@ -diff -NBaur newlib-1.13.0/config.sub newlib-1.13.0-psp/config.sub ---- newlib-1.13.0/config.sub Tue Nov 16 01:18:39 2004 -+++ newlib-1.13.0-psp/config.sub Mon Jul 25 23:53:48 2005 -@@ -253,6 +253,7 @@ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ -+ | mipsallegrex | mipsallegrexel \ - | mn10200 | mn10300 \ - | msp430 \ - | ns16k | ns32k \ -@@ -326,6 +327,7 @@ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ -+ | mipsallegrex-* | mipsallegrexel-* \ - | mmix-* \ - | msp430-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ -@@ -664,6 +666,10 @@ - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint -+ ;; -+ psp) -+ basic_machine=mipsallegrexel-psp -+ os=-elf - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` -diff -NBaur newlib-1.13.0/configure newlib-1.13.0-psp/configure ---- newlib-1.13.0/configure Thu Dec 16 19:51:28 2004 -+++ newlib-1.13.0-psp/configure Mon Jul 25 23:53:48 2005 -@@ -1507,6 +1507,9 @@ - mips*-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; -+ mipsallegrex*-*-*) -+ noconfigdirs="$noconfigdirs target-libgloss" -+ ;; - mips*-*-*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" - ;; -diff -NBaur newlib-1.13.0/configure.in newlib-1.13.0-psp/configure.in ---- newlib-1.13.0/configure.in Thu Dec 16 19:51:28 2004 -+++ newlib-1.13.0-psp/configure.in Mon Jul 25 23:53:48 2005 -@@ -716,6 +716,9 @@ - mips*-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; -+ mipsallegrex*-*-*) -+ noconfigdirs="$noconfigdirs target-libgloss" -+ ;; - mips*-*-*) - noconfigdirs="$noconfigdirs gprof ${libgcj}" - ;; -diff -NBaur newlib-1.13.0/newlib/configure.host newlib-1.13.0-psp/newlib/configure.host ---- newlib-1.13.0/newlib/configure.host Tue Oct 5 20:44:24 2004 -+++ newlib-1.13.0-psp/newlib/configure.host Mon Jul 25 23:53:49 2005 -@@ -570,7 +570,14 @@ - ;; - mips*-*-elf*) - default_newlib_io_long_long="yes" -- newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" -+ case "${host}" in -+ mipsallegrex*-psp-*) -+ sys_dir=psp -+ syscall_dir=syscalls -+ newlib_cflags="${newlib_cflags} -G0 -DPREFER_SIZE_OVER_SPEED -DCOMPACT_CTYPE -DCLOCK_PROVIDED -I${prefix}/psp/sdk/include" ;; -+ *) -+ newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" ;; -+ esac - ;; - mmix-*) - syscall_dir=syscalls -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/Makefile.am newlib-1.13.0-psp/newlib/libc/sys/psp/Makefile.am ---- newlib-1.13.0/newlib/libc/sys/psp/Makefile.am Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/Makefile.am Mon Jul 25 23:53:48 2005 -@@ -0,0 +1,22 @@ -+## Process this file with automake to generate Makefile.in -+ -+AUTOMAKE_OPTIONS = cygnus -+ -+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) -+ -+noinst_LIBRARIES = lib.a -+ -+LIBCGLUE_MULT_OBJS = _close.o _exit.o _fork.o _fstat.o _getpid.o _gettimeofday.o _kill.o _lseek.o \ -+ _open.o _read.o _sbrk.o _wait.o _write.o clock.o isatty.o time.o _link.o _unlink.o \ -+ _opendir.o _readdir.o _closedir.o getcwd.o chdir.o realpath.o -+ -+lib_a_SOURCES = libcglue.c pspcwd.c -+lib_a_LIBADD = $(LIBCGLUE_MULT_OBJS) -+ -+all: crt0.o -+ -+$(LIBCGLUE_MULT_OBJS): libcglue.c -+ $(COMPILE) -DF_$* $< -c -o $@ -+ -+ACLOCAL_AMFLAGS = -I ../../.. -+CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/Makefile.in newlib-1.13.0-psp/newlib/libc/sys/psp/Makefile.in ---- newlib-1.13.0/newlib/libc/sys/psp/Makefile.in Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/Makefile.in Mon Jul 25 23:53:48 2005 -@@ -0,0 +1,343 @@ -+# 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@ -+HAVE_LIB = @HAVE_LIB@ -+LDFLAGS = @LDFLAGS@ -+LIB = @LIB@ -+LTLIB = @LTLIB@ -+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 -+ -+LIBCGLUE_MULT_OBJS = _close.o _exit.o _fork.o _fstat.o _getpid.o _gettimeofday.o _kill.o _lseek.o _open.o _read.o _sbrk.o _wait.o _write.o clock.o isatty.o time.o _link.o _unlink.o _opendir.o _readdir.o _closedir.o getcwd.o chdir.o realpath.o -+ -+ -+lib_a_SOURCES = libcglue.c pspcwd.c -+lib_a_LIBADD = $(LIBCGLUE_MULT_OBJS) -+ -+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_DEPENDENCIES = _close.o _exit.o _fork.o _fstat.o _getpid.o \ -+_gettimeofday.o _kill.o _lseek.o _open.o _read.o _sbrk.o _wait.o \ -+_write.o clock.o isatty.o time.o _link.o _unlink.o _opendir.o \ -+_readdir.o _closedir.o getcwd.o chdir.o realpath.o -+lib_a_OBJECTS = libcglue.o pspcwd.o -+CFLAGS = @CFLAGS@ -+COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -+CCLD = $(CC) -+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -+DIST_COMMON = README Makefile.am Makefile.in aclocal.m4 configure \ -+configure.in -+ -+ -+DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -+ -+TAR = tar -+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 -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP)) -+ -+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 -+ -+ -+all: crt0.o -+ -+$(LIBCGLUE_MULT_OBJS): libcglue.c -+ $(COMPILE) -DF_$* $< -c -o $@ -+ -+# 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 -NBaur newlib-1.13.0/newlib/libc/sys/psp/README newlib-1.13.0-psp/newlib/libc/sys/psp/README ---- newlib-1.13.0/newlib/libc/sys/psp/README Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/README Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,16 @@ -+Newlib for PSP -+-- -+ -+This sys/psp directory depends on PSPSDK headers. It expects them to live in -+${prefix}/psp/sdk/include (see newlib/configure.host). -+ -+I used automake 1.4-p6 to generate aclocal.m4 and Makefile.in: -+ -+ aclocal -I ../../.. -+ automake --cygnus -+ -+Autoconf refused to work for me, so I copied configure from sys/sh and modified -+$ac_unique_file to point libcglue.c. -+ -+-- -+Marcus R. Brown -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/aclocal.m4 newlib-1.13.0-psp/newlib/libc/sys/psp/aclocal.m4 ---- newlib-1.13.0/newlib/libc/sys/psp/aclocal.m4 Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/aclocal.m4 Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,1185 @@ -+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. -+ -+# lib-prefix.m4 serial 4 (gettext-0.14.2) -+dnl Copyright (C) 2001-2005 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 From Bruno Haible. -+ -+dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and -+dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't -+dnl require excessive bracketing. -+ifdef([AC_HELP_STRING], -+[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], -+[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) -+ -+dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed -+dnl to access previously installed libraries. The basic assumption is that -+dnl a user will want packages to use other packages he previously installed -+dnl with the same --prefix option. -+dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate -+dnl libraries, but is otherwise very convenient. -+AC_DEFUN([AC_LIB_PREFIX], -+[ -+ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) -+ AC_REQUIRE([AC_PROG_CC]) -+ AC_REQUIRE([AC_CANONICAL_HOST]) -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ dnl By default, look in $includedir and $libdir. -+ use_additional=yes -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ AC_LIB_ARG_WITH([lib-prefix], -+[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib -+ --without-lib-prefix don't search for libraries in includedir and libdir], -+[ -+ if test "X$withval" = "Xno"; then -+ use_additional=no -+ else -+ if test "X$withval" = "X"; then -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ else -+ additional_includedir="$withval/include" -+ additional_libdir="$withval/lib" -+ fi -+ fi -+]) -+ if test $use_additional = yes; then -+ dnl Potentially add $additional_includedir to $CPPFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's already present in $CPPFLAGS, -+ dnl 3. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ for x in $CPPFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux* | gnu* | k*bsd*-gnu) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $CPPFLAGS. -+ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ dnl Potentially add $additional_libdir to $LDFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's already present in $LDFLAGS, -+ dnl 3. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ for x in $LDFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LDFLAGS. -+ LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ fi -+]) -+ -+dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, -+dnl acl_final_exec_prefix, containing the values to which $prefix and -+dnl $exec_prefix will expand at the end of the configure script. -+AC_DEFUN([AC_LIB_PREPARE_PREFIX], -+[ -+ dnl Unfortunately, prefix and exec_prefix get only finally determined -+ dnl at the end of configure. -+ if test "X$prefix" = "XNONE"; then -+ acl_final_prefix="$ac_default_prefix" -+ else -+ acl_final_prefix="$prefix" -+ fi -+ if test "X$exec_prefix" = "XNONE"; then -+ acl_final_exec_prefix='${prefix}' -+ else -+ acl_final_exec_prefix="$exec_prefix" -+ fi -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" -+ prefix="$acl_save_prefix" -+]) -+ -+dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the -+dnl variables prefix and exec_prefix bound to the values they will have -+dnl at the end of the configure script. -+AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], -+[ -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ acl_save_exec_prefix="$exec_prefix" -+ exec_prefix="$acl_final_exec_prefix" -+ $1 -+ exec_prefix="$acl_save_exec_prefix" -+ prefix="$acl_save_prefix" -+]) -+ -+# lib-link.m4 serial 6 (gettext-0.14.3) -+dnl Copyright (C) 2001-2005 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 From Bruno Haible. -+ -+AC_PREREQ(2.50) -+ -+dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and -+dnl the libraries corresponding to explicit and implicit dependencies. -+dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and -+dnl augments the CPPFLAGS variable. -+AC_DEFUN([AC_LIB_LINKFLAGS], -+[ -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ define([Name],[translit([$1],[./-], [___])]) -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ -+ AC_LIB_LINKFLAGS_BODY([$1], [$2]) -+ ac_cv_lib[]Name[]_libs="$LIB[]NAME" -+ ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" -+ ac_cv_lib[]Name[]_cppflags="$INC[]NAME" -+ ]) -+ LIB[]NAME="$ac_cv_lib[]Name[]_libs" -+ LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" -+ INC[]NAME="$ac_cv_lib[]Name[]_cppflags" -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) -+ AC_SUBST([LIB]NAME) -+ AC_SUBST([LTLIB]NAME) -+ dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the -+ dnl results of this search when this library appears as a dependency. -+ HAVE_LIB[]NAME=yes -+ undefine([Name]) -+ undefine([NAME]) -+]) -+ -+dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) -+dnl searches for libname and the libraries corresponding to explicit and -+dnl implicit dependencies, together with the specified include files and -+dnl the ability to compile and link the specified testcode. If found, it -+dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and -+dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and -+dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs -+dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. -+AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], -+[ -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ define([Name],[translit([$1],[./-], [___])]) -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ -+ dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME -+ dnl accordingly. -+ AC_LIB_LINKFLAGS_BODY([$1], [$2]) -+ -+ dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, -+ dnl because if the user has installed lib[]Name and not disabled its use -+ dnl via --without-lib[]Name-prefix, he wants to use it. -+ ac_save_CPPFLAGS="$CPPFLAGS" -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) -+ -+ AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ -+ ac_save_LIBS="$LIBS" -+ LIBS="$LIBS $LIB[]NAME" -+ AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) -+ LIBS="$ac_save_LIBS" -+ ]) -+ if test "$ac_cv_lib[]Name" = yes; then -+ HAVE_LIB[]NAME=yes -+ AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) -+ AC_MSG_CHECKING([how to link with lib[]$1]) -+ AC_MSG_RESULT([$LIB[]NAME]) -+ else -+ HAVE_LIB[]NAME=no -+ dnl If $LIB[]NAME didn't lead to a usable library, we don't need -+ dnl $INC[]NAME either. -+ CPPFLAGS="$ac_save_CPPFLAGS" -+ LIB[]NAME= -+ LTLIB[]NAME= -+ fi -+ AC_SUBST([HAVE_LIB]NAME) -+ AC_SUBST([LIB]NAME) -+ AC_SUBST([LTLIB]NAME) -+ undefine([Name]) -+ undefine([NAME]) -+]) -+ -+dnl Determine the platform dependent parameters needed to use rpath: -+dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, -+dnl hardcode_direct, hardcode_minus_L. -+AC_DEFUN([AC_LIB_RPATH], -+[ -+ dnl Tell automake >= 1.10 to complain if config.rpath is missing. -+ m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) -+ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS -+ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld -+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host -+ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir -+ AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ -+ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ -+ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh -+ . ./conftest.sh -+ rm -f ./conftest.sh -+ acl_cv_rpath=done -+ ]) -+ wl="$acl_cv_wl" -+ libext="$acl_cv_libext" -+ shlibext="$acl_cv_shlibext" -+ hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" -+ hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" -+ hardcode_direct="$acl_cv_hardcode_direct" -+ hardcode_minus_L="$acl_cv_hardcode_minus_L" -+ dnl Determine whether the user wants rpath handling at all. -+ AC_ARG_ENABLE(rpath, -+ [ --disable-rpath do not hardcode runtime library paths], -+ :, enable_rpath=yes) -+]) -+ -+dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and -+dnl the libraries corresponding to explicit and implicit dependencies. -+dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. -+AC_DEFUN([AC_LIB_LINKFLAGS_BODY], -+[ -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ dnl By default, look in $includedir and $libdir. -+ use_additional=yes -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ AC_LIB_ARG_WITH([lib$1-prefix], -+[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib -+ --without-lib$1-prefix don't search for lib$1 in includedir and libdir], -+[ -+ if test "X$withval" = "Xno"; then -+ use_additional=no -+ else -+ if test "X$withval" = "X"; then -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ else -+ additional_includedir="$withval/include" -+ additional_libdir="$withval/lib" -+ fi -+ fi -+]) -+ dnl Search the library and its dependencies in $additional_libdir and -+ dnl $LDFLAGS. Using breadth-first-seach. -+ LIB[]NAME= -+ LTLIB[]NAME= -+ INC[]NAME= -+ rpathdirs= -+ ltrpathdirs= -+ names_already_handled= -+ names_next_round='$1 $2' -+ while test -n "$names_next_round"; do -+ names_this_round="$names_next_round" -+ names_next_round= -+ for name in $names_this_round; do -+ already_handled= -+ for n in $names_already_handled; do -+ if test "$n" = "$name"; then -+ already_handled=yes -+ break -+ fi -+ done -+ if test -z "$already_handled"; then -+ names_already_handled="$names_already_handled $name" -+ dnl See if it was already located by an earlier AC_LIB_LINKFLAGS -+ dnl or AC_LIB_HAVE_LINKFLAGS call. -+ uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` -+ eval value=\"\$HAVE_LIB$uppername\" -+ if test -n "$value"; then -+ if test "$value" = yes; then -+ eval value=\"\$LIB$uppername\" -+ test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" -+ eval value=\"\$LTLIB$uppername\" -+ test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" -+ else -+ dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined -+ dnl that this library doesn't exist. So just drop it. -+ : -+ fi -+ else -+ dnl Search the library lib$name in $additional_libdir and $LDFLAGS -+ dnl and the already constructed $LIBNAME/$LTLIBNAME. -+ found_dir= -+ found_la= -+ found_so= -+ found_a= -+ if test $use_additional = yes; then -+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then -+ found_dir="$additional_libdir" -+ found_so="$additional_libdir/lib$name.$shlibext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ else -+ if test -f "$additional_libdir/lib$name.$libext"; then -+ found_dir="$additional_libdir" -+ found_a="$additional_libdir/lib$name.$libext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ fi -+ fi -+ fi -+ if test "X$found_dir" = "X"; then -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ case "$x" in -+ -L*) -+ dir=`echo "X$x" | sed -e 's/^X-L//'` -+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then -+ found_dir="$dir" -+ found_so="$dir/lib$name.$shlibext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ else -+ if test -f "$dir/lib$name.$libext"; then -+ found_dir="$dir" -+ found_a="$dir/lib$name.$libext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ fi -+ fi -+ ;; -+ esac -+ if test "X$found_dir" != "X"; then -+ break -+ fi -+ done -+ fi -+ if test "X$found_dir" != "X"; then -+ dnl Found the library. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" -+ if test "X$found_so" != "X"; then -+ dnl Linking with a shared library. We attempt to hardcode its -+ dnl directory into the executable's runpath, unless it's the -+ dnl standard /usr/lib. -+ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then -+ dnl No hardcoding is needed. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $found_dir" -+ fi -+ dnl The hardcoding into $LIBNAME is system dependent. -+ if test "$hardcode_direct" = yes; then -+ dnl Using DIR/libNAME.so during linking hardcodes DIR into the -+ dnl resulting binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $found_dir" -+ fi -+ else -+ dnl Rely on "-L$found_dir". -+ dnl But don't add it if it's already contained in the LDFLAGS -+ dnl or the already constructed $LIBNAME -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" -+ fi -+ if test "$hardcode_minus_L" != no; then -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH -+ dnl here, because this doesn't fit in flags passed to the -+ dnl compiler. So give up. No hardcoding. This affects only -+ dnl very old systems. -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ fi -+ else -+ if test "X$found_a" != "X"; then -+ dnl Linking with a static library. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" -+ else -+ dnl We shouldn't come here, but anyway it's good to have a -+ dnl fallback. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" -+ fi -+ fi -+ dnl Assume the include files are nearby. -+ additional_includedir= -+ case "$found_dir" in -+ */lib | */lib/) -+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` -+ additional_includedir="$basedir/include" -+ ;; -+ esac -+ if test "X$additional_includedir" != "X"; then -+ dnl Potentially add $additional_includedir to $INCNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 3. if it's already present in $CPPFLAGS or the already -+ dnl constructed $INCNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux* | gnu* | k*bsd*-gnu) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ for x in $CPPFLAGS $INC[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $INCNAME. -+ INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ fi -+ dnl Look for dependencies. -+ if test -n "$found_la"; then -+ dnl Read the .la file. It defines the variables -+ dnl dlname, library_names, old_library, dependency_libs, current, -+ dnl age, revision, installed, dlopen, dlpreopen, libdir. -+ save_libdir="$libdir" -+ case "$found_la" in -+ */* | *\\*) . "$found_la" ;; -+ *) . "./$found_la" ;; -+ esac -+ libdir="$save_libdir" -+ dnl We use only dependency_libs. -+ for dep in $dependency_libs; do -+ case "$dep" in -+ -L*) -+ additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` -+ dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 3. if it's already present in $LDFLAGS or the already -+ dnl constructed $LIBNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux* | gnu* | k*bsd*-gnu) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LIBNAME. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ haveit= -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LTLIBNAME. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ ;; -+ -R*) -+ dir=`echo "X$dep" | sed -e 's/^X-R//'` -+ if test "$enable_rpath" != no; then -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $dir" -+ fi -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $dir" -+ fi -+ fi -+ ;; -+ -l*) -+ dnl Handle this in the next round. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` -+ ;; -+ *.la) -+ dnl Handle this in the next round. Throw away the .la's -+ dnl directory; it is already contained in a preceding -L -+ dnl option. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` -+ ;; -+ *) -+ dnl Most likely an immediate library name. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" -+ ;; -+ esac -+ done -+ fi -+ else -+ dnl Didn't find the library; assume it is in the system directories -+ dnl known to the linker and runtime loader. (All the system -+ dnl directories known to the linker should also be known to the -+ dnl runtime loader, otherwise the system is severely misconfigured.) -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ done -+ done -+ if test "X$rpathdirs" != "X"; then -+ if test -n "$hardcode_libdir_separator"; then -+ dnl Weird platform: only the last -rpath option counts, the user must -+ dnl pass all path elements in one option. We can arrange that for a -+ dnl single library, but not when more than one $LIBNAMEs are used. -+ alldirs= -+ for found_dir in $rpathdirs; do -+ alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" -+ done -+ dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. -+ acl_save_libdir="$libdir" -+ libdir="$alldirs" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ else -+ dnl The -rpath options are cumulative. -+ for found_dir in $rpathdirs; do -+ acl_save_libdir="$libdir" -+ libdir="$found_dir" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ done -+ fi -+ fi -+ if test "X$ltrpathdirs" != "X"; then -+ dnl When using libtool, the option that works for both libraries and -+ dnl executables is -R. The -R options are cumulative. -+ for found_dir in $ltrpathdirs; do -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" -+ done -+ fi -+]) -+ -+dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, -+dnl unless already present in VAR. -+dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes -+dnl contains two or three consecutive elements that belong together. -+AC_DEFUN([AC_LIB_APPENDTOVAR], -+[ -+ for element in [$2]; do -+ haveit= -+ for x in $[$1]; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X$element"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ [$1]="${[$1]}${[$1]:+ }$element" -+ fi -+ done -+]) -+ -+# lib-ld.m4 serial 3 (gettext-0.13) -+dnl Copyright (C) 1996-2003 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 Subroutines of libtool.m4, -+dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision -+dnl with libtool.m4. -+ -+dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. -+AC_DEFUN([AC_LIB_PROG_LD_GNU], -+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, -+[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -+case `$LD -v 2>&1 conf$$.sh -+ echo "exit 0" >>conf$$.sh -+ chmod +x conf$$.sh -+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ PATH_SEPARATOR=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh -+fi -+ac_prog=ld -+if test "$GCC" = yes; then -+ # Check if gcc -print-prog-name=ld gives a path. -+ AC_MSG_CHECKING([for ld used by GCC]) -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in -+ # Accept absolute paths. -+ [[\\/]* | [A-Za-z]:[\\/]*)] -+ [re_direlt='/[^/][^/]*/\.\./'] -+ # Canonicalize the path of ld -+ ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` -+ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -+ ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` -+ done -+ test -z "$LD" && LD="$ac_prog" -+ ;; -+ "") -+ # If it fails, then pretend we aren't using GCC. -+ ac_prog=ld -+ ;; -+ *) -+ # If it is relative, then search for the first ld in PATH. -+ with_gnu_ld=unknown -+ ;; -+ esac -+elif test "$with_gnu_ld" = yes; then -+ AC_MSG_CHECKING([for GNU ld]) -+else -+ AC_MSG_CHECKING([for non-GNU ld]) -+fi -+AC_CACHE_VAL(acl_cv_path_LD, -+[if test -z "$LD"; then -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ for ac_dir in $PATH; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -+ acl_cv_path_LD="$ac_dir/$ac_prog" -+ # Check to see if the program is GNU ld. I'd rather use --version, -+ # but apparently some GNU ld's only accept -v. -+ # Break only if it was the GNU/non-GNU ld that we prefer. -+ case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in -+ *GNU* | *'with BFD'*) -+ test "$with_gnu_ld" != no && break ;; -+ *) -+ test "$with_gnu_ld" != yes && break ;; -+ esac -+ fi -+ done -+ IFS="$ac_save_ifs" -+else -+ acl_cv_path_LD="$LD" # Let the user override the test with a path. -+fi]) -+LD="$acl_cv_path_LD" -+if test -n "$LD"; then -+ AC_MSG_RESULT($LD) -+else -+ AC_MSG_RESULT(no) -+fi -+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -+AC_LIB_PROG_LD_GNU -+]) -+ -+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.13.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 -NBaur newlib-1.13.0/newlib/libc/sys/psp/configure newlib-1.13.0-psp/newlib/libc/sys/psp/configure ---- newlib-1.13.0/newlib/libc/sys/psp/configure Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/configure Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,1880 @@ -+#! /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=libcglue.c -+ -+# 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.13.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. -+cat > conftest.defs <<\EOF -+s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g -+s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g -+s%\[%\\&%g -+s%\]%\\&%g -+s%\$%$$%g -+EOF -+DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` -+rm -f conftest.defs -+ -+ -+# 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 -NBaur newlib-1.13.0/newlib/libc/sys/psp/configure.in newlib-1.13.0-psp/newlib/libc/sys/psp/configure.in ---- newlib-1.13.0/newlib/libc/sys/psp/configure.in Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/configure.in Mon Jul 25 23:53:48 2005 -@@ -0,0 +1,12 @@ -+dnl This is the newlib/libc/sys/psp configure.in file. -+dnl Process this file with autoconf to produce a configure script. -+ -+AC_PREREQ(2.5) -+AC_INIT(libcglue.c) -+ -+dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. -+AC_CONFIG_AUX_DIR(../../../..) -+ -+NEWLIB_CONFIGURE(../../..) -+ -+AC_OUTPUT(Makefile) -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/crt0.c newlib-1.13.0-psp/newlib/libc/sys/psp/crt0.c ---- newlib-1.13.0/newlib/libc/sys/psp/crt0.c Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/crt0.c Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,3 @@ -+/* The real crt0.c lives in PSPSDK. */ -+ -+void _start() { } -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/libcglue.c newlib-1.13.0-psp/newlib/libc/sys/psp/libcglue.c ---- newlib-1.13.0/newlib/libc/sys/psp/libcglue.c Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/libcglue.c Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,494 @@ -+/* -+ * PSP Software Development Kit - http://www.pspdev.org -+ * ----------------------------------------------------------------------- -+ * Licensed under the BSD license, see LICENSE in PSPSDK root for details. -+ * -+ * libcglue.c - Newlib-compatible system calls. -+ * -+ * Copyright (c) 2005 Marcus R. Brown -+ * Copyright (c) 2005 James Forshaw -+ * Copyright (c) 2005 John Kelley -+ * Copyright (c) 2005 Jim Paris -+ * -+ */ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+/* These functions aren't exposed in any public headers, and they probably don't need to be. */ -+int sceKernelStdin(void); -+int sceKernelStdout(void); -+int sceKernelStderr(void); -+ -+extern char * __psp_argv_0; -+extern int __psp_cwd_initialized; -+extern char __psp_cwd[MAXPATHLEN + 1]; -+extern void __psp_init_cwd(void); -+extern int __psp_path_absolute(const char *in, char *out, int len); -+ -+#ifdef F_getcwd -+char *getcwd(char *buf, size_t size) -+{ -+ if(!__psp_cwd_initialized) -+ __psp_init_cwd(); -+ -+ if(!buf) { -+ errno = EINVAL; -+ return NULL; -+ } -+ -+ if(strlen(__psp_cwd) >= size) { -+ errno = ERANGE; -+ return NULL; -+ } -+ -+ strcpy(buf, __psp_cwd); -+ return buf; -+} -+#endif -+ -+#ifdef F_chdir -+int chdir(const char *path) -+{ -+ char dest[MAXPATHLEN + 1]; -+ SceUID uid; -+ -+ if(!__psp_cwd_initialized) -+ __psp_init_cwd(); -+ -+ if(__psp_path_absolute(path, dest, MAXPATHLEN) < 0) { -+ errno = ENAMETOOLONG; -+ return -1; -+ } -+ -+ /* sceIoChdir doesn't give an indication of whether it worked, -+ so test for existance by attempting to open the dir */ -+ uid = sceIoDopen(dest); -+ if(uid < 0) { -+ errno = ENOTDIR; -+ return -1; -+ } -+ sceIoDclose(uid); -+ -+ sceIoChdir(dest); -+ strcpy(__psp_cwd, dest); -+ return 0; -+} -+#endif -+ -+#ifdef F_realpath -+char *realpath(const char *path, char *resolved_path) -+{ -+ if(!path || !resolved_path) { -+ errno = EINVAL; -+ return NULL; -+ } -+ if(__psp_path_absolute(path, resolved_path, MAXPATHLEN) < 0) { -+ errno = ENAMETOOLONG; -+ return NULL; -+ } -+ return resolved_path; -+} -+#endif -+ -+/* Wrappers of the standard open(), close(), read(), write(), unlink() and lseek() routines. */ -+#ifdef F__open -+int _open(const char *name, int flags, int mode) -+{ -+ int sce_flags; -+ -+ /* Make sure the CWD has been set. */ -+ if (!__psp_cwd_initialized) { -+ __psp_init_cwd(); -+ } -+ -+ /* O_RDONLY starts at 0, where PSP_O_RDONLY starts at 1, so remap the read/write -+ flags by adding 1. */ -+ sce_flags = (flags & O_ACCMODE) + 1; -+ -+ /* Translate standard open flags into the flags understood by the PSP kernel. */ -+ if (flags & O_APPEND) { -+ sce_flags |= PSP_O_APPEND; -+ } -+ if (flags & O_CREAT) { -+ sce_flags |= PSP_O_CREAT; -+ } -+ if (flags & O_TRUNC) { -+ sce_flags |= PSP_O_TRUNC; -+ } -+ if (flags & O_EXCL) { -+ sce_flags |= PSP_O_EXCL; -+ } -+ if (flags & O_NONBLOCK) { -+ sce_flags |= PSP_O_NBLOCK; -+ } -+ -+ return sceIoOpen(name, sce_flags, mode); -+} -+#endif -+ -+#ifdef F__close -+int _close(int fd) -+{ -+ int sce_fd = fd; -+ -+ if (fd == STDIN_FILENO) { -+ sce_fd = sceKernelStdin(); -+ } else if (fd == STDOUT_FILENO) { -+ sce_fd = sceKernelStdout(); -+ } else if (fd == STDERR_FILENO) { -+ sce_fd == sceKernelStderr(); -+ } -+ -+ if (sce_fd < 0) { -+ return -EBADF; -+ } -+ -+ return sceIoClose(sce_fd); -+} -+#endif -+ -+#ifdef F__read -+int _read(int fd, void *buf, size_t size) -+{ -+ int sce_fd = fd; -+ -+ if (fd == STDIN_FILENO) { -+ sce_fd = sceKernelStdin(); -+ } else if (fd == STDOUT_FILENO) { -+ sce_fd = sceKernelStdout(); -+ } else if (fd == STDERR_FILENO) { -+ sce_fd = sceKernelStderr(); -+ } -+ -+ if (sce_fd < 0) { -+ return -EBADF; -+ } -+ -+ return sceIoRead(sce_fd, buf, size); -+} -+#endif -+ -+#ifdef F__write -+int _write(int fd, const void *buf, size_t size) -+{ -+ int sce_fd = fd; -+ -+ if (fd == STDIN_FILENO) { -+ sce_fd = sceKernelStdin(); -+ } else if (fd == STDOUT_FILENO) { -+ sce_fd = sceKernelStdout(); -+ } else if (fd == STDERR_FILENO) { -+ sce_fd = sceKernelStderr(); -+ } -+ -+ if (sce_fd < 0) { -+ return -EBADF; -+ } -+ -+ return sceIoWrite(sce_fd, buf, size); -+} -+#endif -+ -+#ifdef F__lseek -+off_t _lseek(int fd, off_t offset, int whence) -+{ -+ int sce_fd = fd; -+ -+ if (fd == STDIN_FILENO) { -+ sce_fd = sceKernelStdin(); -+ } else if (fd == STDOUT_FILENO) { -+ sce_fd = sceKernelStdout(); -+ } else if (fd == STDERR_FILENO) { -+ sce_fd = sceKernelStderr(); -+ } -+ -+ if (sce_fd < 0) { -+ return -EBADF; -+ } -+ -+ /* We don't have to do anything with the whence argument because SEEK_* == PSP_SEEK_*. */ -+ return (off_t) sceIoLseek(sce_fd, offset, whence); -+} -+#endif -+ -+#ifdef F__unlink -+int _unlink(const char *path) -+{ -+ /* Make sure the CWD has been set. */ -+ if (!__psp_cwd_initialized) { -+ __psp_init_cwd(); -+ } -+ return sceIoRemove(path); -+} -+#endif -+ -+#ifdef F__link -+int _link(const char *name1, const char *name2) -+{ -+ return -1; -+} -+#endif -+ -+#ifdef F__opendir -+DIR *_opendir(const char *filename) -+{ -+ DIR *dirp; -+ SceUID uid; -+ -+ /* Make sure the CWD has been set. */ -+ if (!__psp_cwd_initialized) { -+ __psp_init_cwd(); -+ } -+ -+ dirp = (DIR *)malloc(sizeof(DIR)); -+ -+ uid = sceIoDopen(filename); -+ -+ if (uid < 0) -+ { -+ free(dirp); -+ return NULL; -+ } -+ -+ dirp->uid = uid; -+ -+ return dirp; -+} -+#endif -+ -+#ifdef F__readdir -+struct SceIoDirent *_readdir(DIR *dirp) -+{ -+ SceIoDirent *de; -+ -+ de = (SceIoDirent *)malloc(sizeof(SceIoDirent)); -+ -+ if (sceIoDread(dirp->uid, de) <= 0) -+ { -+ free(de); -+ return NULL; -+ } -+ -+ return de; -+} -+#endif -+ -+#ifdef F__closedir -+int _closedir(DIR *dirp) -+{ -+ if (dirp != NULL) -+ { -+ int uid; -+ uid = dirp->uid; -+ free (dirp); -+ return sceIoDclose(uid); -+ } -+ return -1; -+} -+#endif -+ -+/* Time routines. These wrap around the routines provided by the kernel. */ -+#ifdef F__gettimeofday -+int _gettimeofday(struct timeval *tp, struct timezone *tzp) -+{ -+ return sceKernelLibcGettimeofday(tp, tzp); -+} -+ -+#endif -+ -+/* If we're being built for PSPSDK's libc this function isn't defined. */ -+#ifdef F_glue_gettimeofday -+int gettimeofday(struct timeval *tp, struct timezone *tzp) -+{ -+ return sceKernelLibcGettimeofday(tp, tzp); -+} -+#endif -+ -+#if defined(F_clock) || defined(F_glue_clock) -+clock_t clock(void) -+{ -+ return sceKernelLibcClock(); -+} -+#endif -+ -+#if defined(F_time) || defined(F_glue_time) -+time_t time(time_t *t) -+{ -+ return sceKernelLibcTime(t); -+} -+#endif -+ -+/* PSP-compatible sbrk(). */ -+#if defined(F__sbrk) || defined(F_glue__sbrk) -+/* TODO: Currently our default heap is set to the maximum available block size -+ when sbrk() is first called. Sony seems to always use a default of 64KB, -+ with the expectation that user programs will override the default size with -+ their own desired size. The only reason I can think of them doing this is -+ to allow each PRX to have their own seperate heap. I think that their -+ method is overkill for most user programs. -+ -+ What I'd like to do instead is to use the default of 64KB for PRXes as Sony -+ does, but use the maximum available block size for executables. This avoids -+ the requirement of specifying the heap size manually in user programs. -+ However, we currently don't have a clean way to distinguish PRXes and normal -+ executables, so this code needs to be revisited once we do come up with a -+ way. */ -+#define DEFAULT_PRX_HEAP_SIZE_KB 64 -+ -+/* If defined it specifies the desired size of the heap, in KB. */ -+extern unsigned int sce_newlib_heap_kb_size __attribute__((weak)); -+ -+/* UID of the memory block that represents the heap. */ -+static SceUID __psp_heap_blockid; -+ -+void * _sbrk(ptrdiff_t incr) -+{ -+ static void * heap_bottom = NULL; -+ static void * heap_top = NULL; -+ static void * heap_ptr = NULL; -+ -+ /* Has our heap been initialized? */ -+ if (heap_bottom == NULL) { -+ /* No, initialize the heap. */ -+ SceSize heap_size; -+ -+ if (&sce_newlib_heap_kb_size != NULL) { -+ heap_size = sce_newlib_heap_kb_size * 1024; -+ } else { -+ /* TODO: Here we should distinguish between a PRX and a normal -+ executable. Right now we assume it's an executable. */ -+ if (0 /* is a prx */) { -+ heap_size = DEFAULT_PRX_HEAP_SIZE_KB * 1024; -+ } else { -+ heap_size = sceKernelMaxFreeMemSize(); -+ } -+ } -+ -+ __psp_heap_blockid = sceKernelAllocPartitionMemory(2, "block", PSP_SMEM_Low, heap_size, NULL); -+ if (__psp_heap_blockid > 0) { -+ heap_bottom = sceKernelGetBlockHeadAddr(__psp_heap_blockid); -+ heap_ptr = heap_bottom; -+ heap_top = (unsigned char *) heap_bottom + heap_size; -+ } -+ } -+ -+ void * heap_addr = (void *) -1; -+ void * next_heap_ptr = (void *) ((ptrdiff_t) heap_ptr + incr); -+ if ((heap_bottom != NULL) && (next_heap_ptr >= heap_bottom) && (next_heap_ptr < heap_top)) { -+ heap_addr = heap_ptr; -+ heap_ptr = next_heap_ptr; -+ } -+ -+ return heap_addr; -+} -+ -+/* Free the heap. */ -+int __psp_free_heap(void) -+{ -+ if (__psp_heap_blockid > 0) { -+ return sceKernelFreePartitionMemory(__psp_heap_blockid); -+ } -+ -+ return __psp_heap_blockid; -+} -+#endif -+ -+/* Other POSIX routines that must be defined. */ -+#ifdef F__fstat -+int _fstat(int fd, struct stat *sbuf) -+{ -+ sbuf->st_mode = S_IFCHR; -+ return 0; -+} -+#endif -+ -+#ifdef F_isatty -+int isatty(int fd) -+{ -+ return 1; -+} -+#endif -+ -+/* Unsupported newlib system calls. */ -+#ifdef F__fork -+pid_t fork(void) -+{ -+ return (pid_t) -1; -+} -+#endif -+ -+#ifdef F__getpid -+pid_t _getpid(void) -+{ -+ return (pid_t) -1; -+} -+#endif -+ -+#ifdef F__kill -+int _kill(int unused, int unused2) -+{ -+ return -1; -+} -+#endif -+ -+#ifdef F__wait -+pid_t _wait(int *unused) -+{ -+ return (pid_t) -1; -+} -+#endif -+ -+/* Exit. */ -+#if defined(F__exit) || defined(F_glue__exit) -+extern int sce_newlib_nocreate_thread_in_start __attribute__((weak)); -+ -+extern int __psp_free_heap(void); -+ -+void _exit(int status) -+{ -+ if (&sce_newlib_nocreate_thread_in_start != NULL) { -+ /* Free the heap created by _sbrk(). */ -+ __psp_free_heap(); -+ -+ sceKernelSelfStopUnloadModule(1, 0, NULL); -+ } else { -+ if (status == 0) { -+ /* Free the heap created by _sbrk(). */ -+ __psp_free_heap(); -+ } -+ -+ sceKernelExitThread(status); -+ } -+ -+ while (1) ; -+} -+#endif -+ -+/* newlib's errno.h wants a function that returns a pointer to errno. */ -+#ifdef F_glue___errno -+#undef errno -+ -+int errno; -+ -+/* TODO: Should this be made reentrant (wrapping interrupt disable/enable -+ around it should do it)? */ -+int * __errno(void) -+{ -+ return &errno; -+} -+#endif -diff -NBaur newlib-1.13.0/newlib/libc/sys/psp/pspcwd.c newlib-1.13.0-psp/newlib/libc/sys/psp/pspcwd.c ---- newlib-1.13.0/newlib/libc/sys/psp/pspcwd.c Thu Jan 1 00:00:00 1970 -+++ newlib-1.13.0-psp/newlib/libc/sys/psp/pspcwd.c Mon Jul 25 23:53:49 2005 -@@ -0,0 +1,170 @@ -+/* -+ * PSP Software Development Kit - http://www.pspdev.org -+ * ----------------------------------------------------------------------- -+ * Licensed under the BSD license, see LICENSE in PSPSDK root for details. -+ * -+ * pspcwd.c - Current working directory emulation helper functions -+ * -+ * Copyright (c) 2005 Marcus R. Brown -+ * Copyright (c) 2005 James Forshaw -+ * Copyright (c) 2005 John Kelley -+ * Copyright (c) 2005 Jim Paris -+ * -+ */ -+#include -+#include -+#include -+ -+#include -+#include -+ -+extern char * __psp_argv_0; -+int __psp_cwd_initialized = 0; -+char __psp_cwd[MAXPATHLEN + 1] = { 0 }; -+ -+/* Set the current working directory (CWD) to the path where the module was launched. */ -+void __psp_init_cwd(void) -+{ -+ if (!__psp_cwd_initialized && (__psp_argv_0 != NULL)) { -+ char base_path[MAXPATHLEN + 1]; -+ char *end; -+ -+ __psp_cwd_initialized = 1; -+ -+ strncpy(base_path, __psp_argv_0, sizeof(base_path) - 1); -+ base_path[sizeof(base_path) - 1] = '\0'; -+ end = strrchr(base_path, '/'); -+ if (end != NULL) { -+ *(end + 1) = '\0'; -+ chdir(base_path); -+ } -+ } -+} -+ -+/* Return the number of bytes taken up by the "drive:" prefix, -+ or -1 if it's not found */ -+int __psp_get_drive(const char *d) -+{ -+ int i; -+ for(i=0; d[i]; i++) { -+ if(! ((d[i] >= 'a' && d[i] <= 'z') || -+ (d[i] >= '0' && d[i] <= '9') )) -+ break; -+ } -+ if(d[i] == ':') return i+1; -+ return -1; -+} -+ -+/* Like strcpy, but returns 0 if the string doesn't fit */ -+int __psp_safe_strcpy(char *out, const char *in, int maxlen) -+{ -+ for( ; maxlen > 0 && *in ; maxlen-- ) -+ *(out++) = *(in++); -+ if(maxlen < 1) return 0; -+ *out = 0; -+ return 1; -+} -+ -+/* Like strcat, but returns 0 if the string doesn't fit */ -+int __psp_safe_strcat(char *out, const char *in, int maxlen) -+{ -+ for( ; *out ; out++,maxlen-- ) -+ continue; -+ return __psp_safe_strcpy(out, in, maxlen); -+} -+ -+/* Normalize a pathname (without leading "drive:") by removing -+ . and .. components, duplicated /, etc. */ -+int __psp_path_normalize(char *out, int len) -+{ -+ int i, j; -+ int first, next; -+ -+ /* First append "/" to make the rest easier */ -+ if(!__psp_safe_strcat(out,"/",len)) return -10; -+ -+ /* Convert "//" to "/" */ -+ for(i=0; out[i+1]; i++) { -+ if(out[i]=='/' && out[i+1]=='/') { -+ for(j=i+1; out[j]; j++) -+ out[j] = out[j+1]; -+ i--; -+ } -+ } -+ -+ /* Convert "/./" to "/" */ -+ for(i=0; out[i] && out[i+1] && out[i+2]; i++) { -+ if(out[i]=='/' && out[i+1]=='.' && out[i+2]=='/') { -+ for(j=i+1; out[j]; j++) -+ out[j] = out[j+2]; -+ i--; -+ } -+ } -+ -+ /* Convert "/asdf/../" to "/" until we can't anymore. Also -+ * convert leading "/../" to "/" */ -+ first = next = 0; -+ while(1) { -+ /* If a "../" follows, remove it and the parent */ -+ if(out[next+1] && out[next+1]=='.' && -+ out[next+2] && out[next+2]=='.' && -+ out[next+3] && out[next+3]=='/') { -+ for(j=0; out[first+j+1]; j++) -+ out[first+j+1] = out[next+j+4]; -+ first = next = 0; -+ continue; -+ } -+ -+ /* Find next slash */ -+ first = next; -+ for(next=first+1; out[next] && out[next] != '/'; next++) -+ continue; -+ if(!out[next]) break; -+ } -+ -+ /* Remove trailing "/" */ -+ for(i=1; out[i]; i++) -+ continue; -+ if(i > 1 && out[i-1] == '/') -+ out[i-1] = 0; -+ -+ return 0; -+} -+ -+/* Convert relative path to absolute path. */ -+int __psp_path_absolute(const char *in, char *out, int len) -+{ -+ int dr; -+ -+ /* See what the relative URL starts with */ -+ dr = __psp_get_drive(in); -+ if(dr > 0 && in[dr] == '/') { -+ /* It starts with "drive:/", so it's already absolute */ -+ if(!__psp_safe_strcpy(out, in, len)) -+ return -1; -+ } else if(in[0] == '/') { -+ /* It's absolute, but missing the drive, so use cwd's drive */ -+ if(strlen(__psp_cwd) >= len) -+ return -2; -+ strcpy(out, __psp_cwd); -+ dr = __psp_get_drive(out); -+ out[dr] = 0; -+ if(!__psp_safe_strcat(out, in, len)) -+ return -3; -+ } else { -+ /* It's not absolute, so append it to the current cwd */ -+ if(strlen(__psp_cwd) >= len) -+ return -4; -+ strcpy(out, __psp_cwd); -+ if(!__psp_safe_strcat(out, "/", len)) -+ return -6; -+ if(!__psp_safe_strcat(out, in, len)) -+ return -7; -+ } -+ -+ /* Now normalize the pathname portion */ -+ dr = __psp_get_drive(out); -+ if(dr < 0) dr = 0; -+ return __psp_path_normalize(out + dr, len - dr); -+} -+ +--- newlib-1.13.0.orig/config.sub 2004-11-15 17:18:39.000000000 -0800 ++++ newlib-psp/config.sub 2005-06-24 17:04:02.000000000 -0700 +@@ -253,6 +253,7 @@ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ ++ | mipsallegrex | mipsallegrexel \ + | mn10200 | mn10300 \ + | msp430 \ + | ns16k | ns32k \ +@@ -326,6 +327,7 @@ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ ++ | mipsallegrex-* | mipsallegrexel-* \ + | mmix-* \ + | msp430-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ +@@ -665,6 +667,10 @@ + basic_machine=m68k-atari + os=-mint + ;; ++ psp) ++ basic_machine=mipsallegrexel-psp ++ os=-elf ++ ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; +--- newlib-1.13.0.orig/configure 2004-12-16 11:51:28.000000000 -0800 ++++ newlib-psp/configure 2005-06-19 18:09:12.000000000 -0700 +@@ -1507,6 +1507,9 @@ + mips*-*-linux*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; ++ mipsallegrex*-*-*) ++ noconfigdirs="$noconfigdirs target-libgloss" ++ ;; + mips*-*-*) + noconfigdirs="$noconfigdirs gprof ${libgcj}" + ;; +--- newlib-1.13.0.orig/configure.in 2004-12-16 11:51:28.000000000 -0800 ++++ newlib-psp/configure.in 2005-06-19 18:09:12.000000000 -0700 +@@ -716,6 +716,9 @@ + mips*-*-linux*) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + ;; ++ mipsallegrex*-*-*) ++ noconfigdirs="$noconfigdirs target-libgloss" ++ ;; + mips*-*-*) + noconfigdirs="$noconfigdirs gprof ${libgcj}" + ;; +--- newlib-1.13.0.orig/newlib/libc/sys/psp/Makefile.am 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/Makefile.am 2005-07-23 23:17:04.000000000 -0700 +@@ -0,0 +1,22 @@ ++## Process this file with automake to generate Makefile.in ++ ++AUTOMAKE_OPTIONS = cygnus ++ ++INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) ++ ++noinst_LIBRARIES = lib.a ++ ++LIBCGLUE_MULT_OBJS = _close.o _exit.o _fork.o _fstat.o _getpid.o _gettimeofday.o _kill.o _lseek.o \ ++ _open.o _read.o _sbrk.o _wait.o _write.o clock.o isatty.o time.o _link.o _unlink.o \ ++ _opendir.o _readdir.o _closedir.o getcwd.o chdir.o realpath.o ++ ++lib_a_SOURCES = libcglue.c pspcwd.c ++lib_a_LIBADD = $(LIBCGLUE_MULT_OBJS) ++ ++all: crt0.o ++ ++$(LIBCGLUE_MULT_OBJS): libcglue.c ++ $(COMPILE) -DF_$* $< -c -o $@ ++ ++ACLOCAL_AMFLAGS = -I ../../.. ++CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host +--- newlib-1.13.0.orig/newlib/libc/sys/psp/configure.in 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/configure.in 2005-07-23 22:43:33.000000000 -0700 +@@ -0,0 +1,12 @@ ++dnl This is the newlib/libc/sys/psp configure.in file. ++dnl Process this file with autoconf to produce a configure script. ++ ++AC_PREREQ(2.5) ++AC_INIT(libcglue.c) ++ ++dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. ++AC_CONFIG_AUX_DIR(../../../..) ++ ++NEWLIB_CONFIGURE(../../..) ++ ++AC_OUTPUT(Makefile) +--- newlib-1.13.0.orig/newlib/libc/sys/psp/Makefile.in 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/Makefile.in 2005-07-23 23:18:52.000000000 -0700 +@@ -0,0 +1,343 @@ ++# 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@ ++HAVE_LIB = @HAVE_LIB@ ++LDFLAGS = @LDFLAGS@ ++LIB = @LIB@ ++LTLIB = @LTLIB@ ++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 ++ ++LIBCGLUE_MULT_OBJS = _close.o _exit.o _fork.o _fstat.o _getpid.o _gettimeofday.o _kill.o _lseek.o _open.o _read.o _sbrk.o _wait.o _write.o clock.o isatty.o time.o _link.o _unlink.o _opendir.o _readdir.o _closedir.o getcwd.o chdir.o realpath.o ++ ++ ++lib_a_SOURCES = libcglue.c pspcwd.c ++lib_a_LIBADD = $(LIBCGLUE_MULT_OBJS) ++ ++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_DEPENDENCIES = _close.o _exit.o _fork.o _fstat.o _getpid.o \ ++_gettimeofday.o _kill.o _lseek.o _open.o _read.o _sbrk.o _wait.o \ ++_write.o clock.o isatty.o time.o _link.o _unlink.o _opendir.o \ ++_readdir.o _closedir.o getcwd.o chdir.o realpath.o ++lib_a_OBJECTS = libcglue.o pspcwd.o ++CFLAGS = @CFLAGS@ ++COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ ++DIST_COMMON = README Makefile.am Makefile.in aclocal.m4 configure \ ++configure.in ++ ++ ++DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ++ ++TAR = tar ++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 -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP)) ++ ++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 ++ ++ ++all: crt0.o ++ ++$(LIBCGLUE_MULT_OBJS): libcglue.c ++ $(COMPILE) -DF_$* $< -c -o $@ ++ ++# 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: +--- newlib-1.13.0.orig/newlib/libc/sys/psp/libcglue.c 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/libcglue.c 2005-07-23 21:49:02.000000000 -0700 +@@ -0,0 +1,494 @@ ++/* ++ * PSP Software Development Kit - http://www.pspdev.org ++ * ----------------------------------------------------------------------- ++ * Licensed under the BSD license, see LICENSE in PSPSDK root for details. ++ * ++ * libcglue.c - Newlib-compatible system calls. ++ * ++ * Copyright (c) 2005 Marcus R. Brown ++ * Copyright (c) 2005 James Forshaw ++ * Copyright (c) 2005 John Kelley ++ * Copyright (c) 2005 Jim Paris ++ * ++ */ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++/* These functions aren't exposed in any public headers, and they probably don't need to be. */ ++int sceKernelStdin(void); ++int sceKernelStdout(void); ++int sceKernelStderr(void); ++ ++extern char * __psp_argv_0; ++extern int __psp_cwd_initialized; ++extern char __psp_cwd[MAXPATHLEN + 1]; ++extern void __psp_init_cwd(void); ++extern int __psp_path_absolute(const char *in, char *out, int len); ++ ++#ifdef F_getcwd ++char *getcwd(char *buf, size_t size) ++{ ++ if(!__psp_cwd_initialized) ++ __psp_init_cwd(); ++ ++ if(!buf) { ++ errno = EINVAL; ++ return NULL; ++ } ++ ++ if(strlen(__psp_cwd) >= size) { ++ errno = ERANGE; ++ return NULL; ++ } ++ ++ strcpy(buf, __psp_cwd); ++ return buf; ++} ++#endif ++ ++#ifdef F_chdir ++int chdir(const char *path) ++{ ++ char dest[MAXPATHLEN + 1]; ++ SceUID uid; ++ ++ if(!__psp_cwd_initialized) ++ __psp_init_cwd(); ++ ++ if(__psp_path_absolute(path, dest, MAXPATHLEN) < 0) { ++ errno = ENAMETOOLONG; ++ return -1; ++ } ++ ++ /* sceIoChdir doesn't give an indication of whether it worked, ++ so test for existance by attempting to open the dir */ ++ uid = sceIoDopen(dest); ++ if(uid < 0) { ++ errno = ENOTDIR; ++ return -1; ++ } ++ sceIoDclose(uid); ++ ++ sceIoChdir(dest); ++ strcpy(__psp_cwd, dest); ++ return 0; ++} ++#endif ++ ++#ifdef F_realpath ++char *realpath(const char *path, char *resolved_path) ++{ ++ if(!path || !resolved_path) { ++ errno = EINVAL; ++ return NULL; ++ } ++ if(__psp_path_absolute(path, resolved_path, MAXPATHLEN) < 0) { ++ errno = ENAMETOOLONG; ++ return NULL; ++ } ++ return resolved_path; ++} ++#endif ++ ++/* Wrappers of the standard open(), close(), read(), write(), unlink() and lseek() routines. */ ++#ifdef F__open ++int _open(const char *name, int flags, int mode) ++{ ++ int sce_flags; ++ ++ /* Make sure the CWD has been set. */ ++ if (!__psp_cwd_initialized) { ++ __psp_init_cwd(); ++ } ++ ++ /* O_RDONLY starts at 0, where PSP_O_RDONLY starts at 1, so remap the read/write ++ flags by adding 1. */ ++ sce_flags = (flags & O_ACCMODE) + 1; ++ ++ /* Translate standard open flags into the flags understood by the PSP kernel. */ ++ if (flags & O_APPEND) { ++ sce_flags |= PSP_O_APPEND; ++ } ++ if (flags & O_CREAT) { ++ sce_flags |= PSP_O_CREAT; ++ } ++ if (flags & O_TRUNC) { ++ sce_flags |= PSP_O_TRUNC; ++ } ++ if (flags & O_EXCL) { ++ sce_flags |= PSP_O_EXCL; ++ } ++ if (flags & O_NONBLOCK) { ++ sce_flags |= PSP_O_NBLOCK; ++ } ++ ++ return sceIoOpen(name, sce_flags, mode); ++} ++#endif ++ ++#ifdef F__close ++int _close(int fd) ++{ ++ int sce_fd = fd; ++ ++ if (fd == STDIN_FILENO) { ++ sce_fd = sceKernelStdin(); ++ } else if (fd == STDOUT_FILENO) { ++ sce_fd = sceKernelStdout(); ++ } else if (fd == STDERR_FILENO) { ++ sce_fd == sceKernelStderr(); ++ } ++ ++ if (sce_fd < 0) { ++ return -EBADF; ++ } ++ ++ return sceIoClose(sce_fd); ++} ++#endif ++ ++#ifdef F__read ++int _read(int fd, void *buf, size_t size) ++{ ++ int sce_fd = fd; ++ ++ if (fd == STDIN_FILENO) { ++ sce_fd = sceKernelStdin(); ++ } else if (fd == STDOUT_FILENO) { ++ sce_fd = sceKernelStdout(); ++ } else if (fd == STDERR_FILENO) { ++ sce_fd = sceKernelStderr(); ++ } ++ ++ if (sce_fd < 0) { ++ return -EBADF; ++ } ++ ++ return sceIoRead(sce_fd, buf, size); ++} ++#endif ++ ++#ifdef F__write ++int _write(int fd, const void *buf, size_t size) ++{ ++ int sce_fd = fd; ++ ++ if (fd == STDIN_FILENO) { ++ sce_fd = sceKernelStdin(); ++ } else if (fd == STDOUT_FILENO) { ++ sce_fd = sceKernelStdout(); ++ } else if (fd == STDERR_FILENO) { ++ sce_fd = sceKernelStderr(); ++ } ++ ++ if (sce_fd < 0) { ++ return -EBADF; ++ } ++ ++ return sceIoWrite(sce_fd, buf, size); ++} ++#endif ++ ++#ifdef F__lseek ++off_t _lseek(int fd, off_t offset, int whence) ++{ ++ int sce_fd = fd; ++ ++ if (fd == STDIN_FILENO) { ++ sce_fd = sceKernelStdin(); ++ } else if (fd == STDOUT_FILENO) { ++ sce_fd = sceKernelStdout(); ++ } else if (fd == STDERR_FILENO) { ++ sce_fd = sceKernelStderr(); ++ } ++ ++ if (sce_fd < 0) { ++ return -EBADF; ++ } ++ ++ /* We don't have to do anything with the whence argument because SEEK_* == PSP_SEEK_*. */ ++ return (off_t) sceIoLseek(sce_fd, offset, whence); ++} ++#endif ++ ++#ifdef F__unlink ++int _unlink(const char *path) ++{ ++ /* Make sure the CWD has been set. */ ++ if (!__psp_cwd_initialized) { ++ __psp_init_cwd(); ++ } ++ return sceIoRemove(path); ++} ++#endif ++ ++#ifdef F__link ++int _link(const char *name1, const char *name2) ++{ ++ return -1; ++} ++#endif ++ ++#ifdef F__opendir ++DIR *_opendir(const char *filename) ++{ ++ DIR *dirp; ++ SceUID uid; ++ ++ /* Make sure the CWD has been set. */ ++ if (!__psp_cwd_initialized) { ++ __psp_init_cwd(); ++ } ++ ++ dirp = (DIR *)malloc(sizeof(DIR)); ++ ++ uid = sceIoDopen(filename); ++ ++ if (uid < 0) ++ { ++ free(dirp); ++ return NULL; ++ } ++ ++ dirp->uid = uid; ++ ++ return dirp; ++} ++#endif ++ ++#ifdef F__readdir ++struct SceIoDirent *_readdir(DIR *dirp) ++{ ++ SceIoDirent *de; ++ ++ de = (SceIoDirent *)malloc(sizeof(SceIoDirent)); ++ ++ if (sceIoDread(dirp->uid, de) <= 0) ++ { ++ free(de); ++ return NULL; ++ } ++ ++ return de; ++} ++#endif ++ ++#ifdef F__closedir ++int _closedir(DIR *dirp) ++{ ++ if (dirp != NULL) ++ { ++ int uid; ++ uid = dirp->uid; ++ free (dirp); ++ return sceIoDclose(uid); ++ } ++ return -1; ++} ++#endif ++ ++/* Time routines. These wrap around the routines provided by the kernel. */ ++#ifdef F__gettimeofday ++int _gettimeofday(struct timeval *tp, struct timezone *tzp) ++{ ++ return sceKernelLibcGettimeofday(tp, tzp); ++} ++ ++#endif ++ ++/* If we're being built for PSPSDK's libc this function isn't defined. */ ++#ifdef F_glue_gettimeofday ++int gettimeofday(struct timeval *tp, struct timezone *tzp) ++{ ++ return sceKernelLibcGettimeofday(tp, tzp); ++} ++#endif ++ ++#if defined(F_clock) || defined(F_glue_clock) ++clock_t clock(void) ++{ ++ return sceKernelLibcClock(); ++} ++#endif ++ ++#if defined(F_time) || defined(F_glue_time) ++time_t time(time_t *t) ++{ ++ return sceKernelLibcTime(t); ++} ++#endif ++ ++/* PSP-compatible sbrk(). */ ++#if defined(F__sbrk) || defined(F_glue__sbrk) ++/* TODO: Currently our default heap is set to the maximum available block size ++ when sbrk() is first called. Sony seems to always use a default of 64KB, ++ with the expectation that user programs will override the default size with ++ their own desired size. The only reason I can think of them doing this is ++ to allow each PRX to have their own seperate heap. I think that their ++ method is overkill for most user programs. ++ ++ What I'd like to do instead is to use the default of 64KB for PRXes as Sony ++ does, but use the maximum available block size for executables. This avoids ++ the requirement of specifying the heap size manually in user programs. ++ However, we currently don't have a clean way to distinguish PRXes and normal ++ executables, so this code needs to be revisited once we do come up with a ++ way. */ ++#define DEFAULT_PRX_HEAP_SIZE_KB 64 ++ ++/* If defined it specifies the desired size of the heap, in KB. */ ++extern unsigned int sce_newlib_heap_kb_size __attribute__((weak)); ++ ++/* UID of the memory block that represents the heap. */ ++static SceUID __psp_heap_blockid; ++ ++void * _sbrk(ptrdiff_t incr) ++{ ++ static void * heap_bottom = NULL; ++ static void * heap_top = NULL; ++ static void * heap_ptr = NULL; ++ ++ /* Has our heap been initialized? */ ++ if (heap_bottom == NULL) { ++ /* No, initialize the heap. */ ++ SceSize heap_size; ++ ++ if (&sce_newlib_heap_kb_size != NULL) { ++ heap_size = sce_newlib_heap_kb_size * 1024; ++ } else { ++ /* TODO: Here we should distinguish between a PRX and a normal ++ executable. Right now we assume it's an executable. */ ++ if (0 /* is a prx */) { ++ heap_size = DEFAULT_PRX_HEAP_SIZE_KB * 1024; ++ } else { ++ heap_size = sceKernelMaxFreeMemSize(); ++ } ++ } ++ ++ __psp_heap_blockid = sceKernelAllocPartitionMemory(2, "block", PSP_SMEM_Low, heap_size, NULL); ++ if (__psp_heap_blockid > 0) { ++ heap_bottom = sceKernelGetBlockHeadAddr(__psp_heap_blockid); ++ heap_ptr = heap_bottom; ++ heap_top = (unsigned char *) heap_bottom + heap_size; ++ } ++ } ++ ++ void * heap_addr = (void *) -1; ++ void * next_heap_ptr = (void *) ((ptrdiff_t) heap_ptr + incr); ++ if ((heap_bottom != NULL) && (next_heap_ptr >= heap_bottom) && (next_heap_ptr < heap_top)) { ++ heap_addr = heap_ptr; ++ heap_ptr = next_heap_ptr; ++ } ++ ++ return heap_addr; ++} ++ ++/* Free the heap. */ ++int __psp_free_heap(void) ++{ ++ if (__psp_heap_blockid > 0) { ++ return sceKernelFreePartitionMemory(__psp_heap_blockid); ++ } ++ ++ return __psp_heap_blockid; ++} ++#endif ++ ++/* Other POSIX routines that must be defined. */ ++#ifdef F__fstat ++int _fstat(int fd, struct stat *sbuf) ++{ ++ sbuf->st_mode = S_IFCHR; ++ return 0; ++} ++#endif ++ ++#ifdef F_isatty ++int isatty(int fd) ++{ ++ return 1; ++} ++#endif ++ ++/* Unsupported newlib system calls. */ ++#ifdef F__fork ++pid_t fork(void) ++{ ++ return (pid_t) -1; ++} ++#endif ++ ++#ifdef F__getpid ++pid_t _getpid(void) ++{ ++ return (pid_t) -1; ++} ++#endif ++ ++#ifdef F__kill ++int _kill(int unused, int unused2) ++{ ++ return -1; ++} ++#endif ++ ++#ifdef F__wait ++pid_t _wait(int *unused) ++{ ++ return (pid_t) -1; ++} ++#endif ++ ++/* Exit. */ ++#if defined(F__exit) || defined(F_glue__exit) ++extern int sce_newlib_nocreate_thread_in_start __attribute__((weak)); ++ ++extern int __psp_free_heap(void); ++ ++void _exit(int status) ++{ ++ if (&sce_newlib_nocreate_thread_in_start != NULL) { ++ /* Free the heap created by _sbrk(). */ ++ __psp_free_heap(); ++ ++ sceKernelSelfStopUnloadModule(1, 0, NULL); ++ } else { ++ if (status == 0) { ++ /* Free the heap created by _sbrk(). */ ++ __psp_free_heap(); ++ } ++ ++ sceKernelExitThread(status); ++ } ++ ++ while (1) ; ++} ++#endif ++ ++/* newlib's errno.h wants a function that returns a pointer to errno. */ ++#ifdef F_glue___errno ++#undef errno ++ ++int errno; ++ ++/* TODO: Should this be made reentrant (wrapping interrupt disable/enable ++ around it should do it)? */ ++int * __errno(void) ++{ ++ return &errno; ++} ++#endif +--- newlib-1.13.0.orig/newlib/libc/sys/psp/pspcwd.c 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/pspcwd.c 2005-07-23 21:49:44.000000000 -0700 +@@ -0,0 +1,170 @@ ++/* ++ * PSP Software Development Kit - http://www.pspdev.org ++ * ----------------------------------------------------------------------- ++ * Licensed under the BSD license, see LICENSE in PSPSDK root for details. ++ * ++ * pspcwd.c - Current working directory emulation helper functions ++ * ++ * Copyright (c) 2005 Marcus R. Brown ++ * Copyright (c) 2005 James Forshaw ++ * Copyright (c) 2005 John Kelley ++ * Copyright (c) 2005 Jim Paris ++ * ++ */ ++#include ++#include ++#include ++ ++#include ++#include ++ ++extern char * __psp_argv_0; ++int __psp_cwd_initialized = 0; ++char __psp_cwd[MAXPATHLEN + 1] = { 0 }; ++ ++/* Set the current working directory (CWD) to the path where the module was launched. */ ++void __psp_init_cwd(void) ++{ ++ if (!__psp_cwd_initialized && (__psp_argv_0 != NULL)) { ++ char base_path[MAXPATHLEN + 1]; ++ char *end; ++ ++ __psp_cwd_initialized = 1; ++ ++ strncpy(base_path, __psp_argv_0, sizeof(base_path) - 1); ++ base_path[sizeof(base_path) - 1] = '\0'; ++ end = strrchr(base_path, '/'); ++ if (end != NULL) { ++ *(end + 1) = '\0'; ++ chdir(base_path); ++ } ++ } ++} ++ ++/* Return the number of bytes taken up by the "drive:" prefix, ++ or -1 if it's not found */ ++int __psp_get_drive(const char *d) ++{ ++ int i; ++ for(i=0; d[i]; i++) { ++ if(! ((d[i] >= 'a' && d[i] <= 'z') || ++ (d[i] >= '0' && d[i] <= '9') )) ++ break; ++ } ++ if(d[i] == ':') return i+1; ++ return -1; ++} ++ ++/* Like strcpy, but returns 0 if the string doesn't fit */ ++int __psp_safe_strcpy(char *out, const char *in, int maxlen) ++{ ++ for( ; maxlen > 0 && *in ; maxlen-- ) ++ *(out++) = *(in++); ++ if(maxlen < 1) return 0; ++ *out = 0; ++ return 1; ++} ++ ++/* Like strcat, but returns 0 if the string doesn't fit */ ++int __psp_safe_strcat(char *out, const char *in, int maxlen) ++{ ++ for( ; *out ; out++,maxlen-- ) ++ continue; ++ return __psp_safe_strcpy(out, in, maxlen); ++} ++ ++/* Normalize a pathname (without leading "drive:") by removing ++ . and .. components, duplicated /, etc. */ ++int __psp_path_normalize(char *out, int len) ++{ ++ int i, j; ++ int first, next; ++ ++ /* First append "/" to make the rest easier */ ++ if(!__psp_safe_strcat(out,"/",len)) return -10; ++ ++ /* Convert "//" to "/" */ ++ for(i=0; out[i+1]; i++) { ++ if(out[i]=='/' && out[i+1]=='/') { ++ for(j=i+1; out[j]; j++) ++ out[j] = out[j+1]; ++ i--; ++ } ++ } ++ ++ /* Convert "/./" to "/" */ ++ for(i=0; out[i] && out[i+1] && out[i+2]; i++) { ++ if(out[i]=='/' && out[i+1]=='.' && out[i+2]=='/') { ++ for(j=i+1; out[j]; j++) ++ out[j] = out[j+2]; ++ i--; ++ } ++ } ++ ++ /* Convert "/asdf/../" to "/" until we can't anymore. Also ++ * convert leading "/../" to "/" */ ++ first = next = 0; ++ while(1) { ++ /* If a "../" follows, remove it and the parent */ ++ if(out[next+1] && out[next+1]=='.' && ++ out[next+2] && out[next+2]=='.' && ++ out[next+3] && out[next+3]=='/') { ++ for(j=0; out[first+j+1]; j++) ++ out[first+j+1] = out[next+j+4]; ++ first = next = 0; ++ continue; ++ } ++ ++ /* Find next slash */ ++ first = next; ++ for(next=first+1; out[next] && out[next] != '/'; next++) ++ continue; ++ if(!out[next]) break; ++ } ++ ++ /* Remove trailing "/" */ ++ for(i=1; out[i]; i++) ++ continue; ++ if(i > 1 && out[i-1] == '/') ++ out[i-1] = 0; ++ ++ return 0; ++} ++ ++/* Convert relative path to absolute path. */ ++int __psp_path_absolute(const char *in, char *out, int len) ++{ ++ int dr; ++ ++ /* See what the relative URL starts with */ ++ dr = __psp_get_drive(in); ++ if(dr > 0 && in[dr] == '/') { ++ /* It starts with "drive:/", so it's already absolute */ ++ if(!__psp_safe_strcpy(out, in, len)) ++ return -1; ++ } else if(in[0] == '/') { ++ /* It's absolute, but missing the drive, so use cwd's drive */ ++ if(strlen(__psp_cwd) >= len) ++ return -2; ++ strcpy(out, __psp_cwd); ++ dr = __psp_get_drive(out); ++ out[dr] = 0; ++ if(!__psp_safe_strcat(out, in, len)) ++ return -3; ++ } else { ++ /* It's not absolute, so append it to the current cwd */ ++ if(strlen(__psp_cwd) >= len) ++ return -4; ++ strcpy(out, __psp_cwd); ++ if(!__psp_safe_strcat(out, "/", len)) ++ return -6; ++ if(!__psp_safe_strcat(out, in, len)) ++ return -7; ++ } ++ ++ /* Now normalize the pathname portion */ ++ dr = __psp_get_drive(out); ++ if(dr < 0) dr = 0; ++ return __psp_path_normalize(out + dr, len - dr); ++} ++ +--- newlib-1.13.0.orig/newlib/libc/sys/psp/README 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/README 2005-07-23 23:25:55.000000000 -0700 +@@ -0,0 +1,16 @@ ++Newlib for PSP ++-- ++ ++This sys/psp directory depends on PSPSDK headers. It expects them to live in ++${prefix}/psp/sdk/include (see newlib/configure.host). ++ ++I used automake 1.4-p6 to generate aclocal.m4 and Makefile.in: ++ ++ aclocal -I ../../.. ++ automake --cygnus ++ ++Autoconf refused to work for me, so I copied configure from sys/sh and modified ++$ac_unique_file to point libcglue.c. ++ ++-- ++Marcus R. Brown +--- newlib-1.13.0.orig/newlib/libc/sys/psp/aclocal.m4 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/aclocal.m4 2005-07-23 23:18:42.000000000 -0700 +@@ -0,0 +1,1185 @@ ++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. ++ ++# lib-prefix.m4 serial 4 (gettext-0.14.2) ++dnl Copyright (C) 2001-2005 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 From Bruno Haible. ++ ++dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and ++dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't ++dnl require excessive bracketing. ++ifdef([AC_HELP_STRING], ++[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], ++[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) ++ ++dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed ++dnl to access previously installed libraries. The basic assumption is that ++dnl a user will want packages to use other packages he previously installed ++dnl with the same --prefix option. ++dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate ++dnl libraries, but is otherwise very convenient. ++AC_DEFUN([AC_LIB_PREFIX], ++[ ++ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) ++ AC_REQUIRE([AC_PROG_CC]) ++ AC_REQUIRE([AC_CANONICAL_HOST]) ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ dnl By default, look in $includedir and $libdir. ++ use_additional=yes ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ AC_LIB_ARG_WITH([lib-prefix], ++[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib ++ --without-lib-prefix don't search for libraries in includedir and libdir], ++[ ++ if test "X$withval" = "Xno"; then ++ use_additional=no ++ else ++ if test "X$withval" = "X"; then ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ else ++ additional_includedir="$withval/include" ++ additional_libdir="$withval/lib" ++ fi ++ fi ++]) ++ if test $use_additional = yes; then ++ dnl Potentially add $additional_includedir to $CPPFLAGS. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/include, ++ dnl 2. if it's already present in $CPPFLAGS, ++ dnl 3. if it's /usr/local/include and we are using GCC on Linux, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_includedir" != "X/usr/include"; then ++ haveit= ++ for x in $CPPFLAGS; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-I$additional_includedir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test "X$additional_includedir" = "X/usr/local/include"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux* | gnu* | k*bsd*-gnu) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ if test -d "$additional_includedir"; then ++ dnl Really add $additional_includedir to $CPPFLAGS. ++ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" ++ fi ++ fi ++ fi ++ fi ++ dnl Potentially add $additional_libdir to $LDFLAGS. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/lib, ++ dnl 2. if it's already present in $LDFLAGS, ++ dnl 3. if it's /usr/local/lib and we are using GCC on Linux, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_libdir" != "X/usr/lib"; then ++ haveit= ++ for x in $LDFLAGS; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test "X$additional_libdir" = "X/usr/local/lib"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux*) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LDFLAGS. ++ LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" ++ fi ++ fi ++ fi ++ fi ++ fi ++]) ++ ++dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, ++dnl acl_final_exec_prefix, containing the values to which $prefix and ++dnl $exec_prefix will expand at the end of the configure script. ++AC_DEFUN([AC_LIB_PREPARE_PREFIX], ++[ ++ dnl Unfortunately, prefix and exec_prefix get only finally determined ++ dnl at the end of configure. ++ if test "X$prefix" = "XNONE"; then ++ acl_final_prefix="$ac_default_prefix" ++ else ++ acl_final_prefix="$prefix" ++ fi ++ if test "X$exec_prefix" = "XNONE"; then ++ acl_final_exec_prefix='${prefix}' ++ else ++ acl_final_exec_prefix="$exec_prefix" ++ fi ++ acl_save_prefix="$prefix" ++ prefix="$acl_final_prefix" ++ eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" ++ prefix="$acl_save_prefix" ++]) ++ ++dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the ++dnl variables prefix and exec_prefix bound to the values they will have ++dnl at the end of the configure script. ++AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], ++[ ++ acl_save_prefix="$prefix" ++ prefix="$acl_final_prefix" ++ acl_save_exec_prefix="$exec_prefix" ++ exec_prefix="$acl_final_exec_prefix" ++ $1 ++ exec_prefix="$acl_save_exec_prefix" ++ prefix="$acl_save_prefix" ++]) ++ ++# lib-link.m4 serial 6 (gettext-0.14.3) ++dnl Copyright (C) 2001-2005 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 From Bruno Haible. ++ ++AC_PREREQ(2.50) ++ ++dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and ++dnl the libraries corresponding to explicit and implicit dependencies. ++dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and ++dnl augments the CPPFLAGS variable. ++AC_DEFUN([AC_LIB_LINKFLAGS], ++[ ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ define([Name],[translit([$1],[./-], [___])]) ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ ++ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ++ ac_cv_lib[]Name[]_libs="$LIB[]NAME" ++ ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" ++ ac_cv_lib[]Name[]_cppflags="$INC[]NAME" ++ ]) ++ LIB[]NAME="$ac_cv_lib[]Name[]_libs" ++ LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" ++ INC[]NAME="$ac_cv_lib[]Name[]_cppflags" ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) ++ AC_SUBST([LIB]NAME) ++ AC_SUBST([LTLIB]NAME) ++ dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the ++ dnl results of this search when this library appears as a dependency. ++ HAVE_LIB[]NAME=yes ++ undefine([Name]) ++ undefine([NAME]) ++]) ++ ++dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) ++dnl searches for libname and the libraries corresponding to explicit and ++dnl implicit dependencies, together with the specified include files and ++dnl the ability to compile and link the specified testcode. If found, it ++dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and ++dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and ++dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs ++dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. ++AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], ++[ ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ define([Name],[translit([$1],[./-], [___])]) ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ ++ dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME ++ dnl accordingly. ++ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ++ ++ dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, ++ dnl because if the user has installed lib[]Name and not disabled its use ++ dnl via --without-lib[]Name-prefix, he wants to use it. ++ ac_save_CPPFLAGS="$CPPFLAGS" ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) ++ ++ AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ ++ ac_save_LIBS="$LIBS" ++ LIBS="$LIBS $LIB[]NAME" ++ AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) ++ LIBS="$ac_save_LIBS" ++ ]) ++ if test "$ac_cv_lib[]Name" = yes; then ++ HAVE_LIB[]NAME=yes ++ AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) ++ AC_MSG_CHECKING([how to link with lib[]$1]) ++ AC_MSG_RESULT([$LIB[]NAME]) ++ else ++ HAVE_LIB[]NAME=no ++ dnl If $LIB[]NAME didn't lead to a usable library, we don't need ++ dnl $INC[]NAME either. ++ CPPFLAGS="$ac_save_CPPFLAGS" ++ LIB[]NAME= ++ LTLIB[]NAME= ++ fi ++ AC_SUBST([HAVE_LIB]NAME) ++ AC_SUBST([LIB]NAME) ++ AC_SUBST([LTLIB]NAME) ++ undefine([Name]) ++ undefine([NAME]) ++]) ++ ++dnl Determine the platform dependent parameters needed to use rpath: ++dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, ++dnl hardcode_direct, hardcode_minus_L. ++AC_DEFUN([AC_LIB_RPATH], ++[ ++ dnl Tell automake >= 1.10 to complain if config.rpath is missing. ++ m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) ++ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS ++ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld ++ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host ++ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir ++ AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ ++ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ++ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh ++ . ./conftest.sh ++ rm -f ./conftest.sh ++ acl_cv_rpath=done ++ ]) ++ wl="$acl_cv_wl" ++ libext="$acl_cv_libext" ++ shlibext="$acl_cv_shlibext" ++ hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" ++ hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" ++ hardcode_direct="$acl_cv_hardcode_direct" ++ hardcode_minus_L="$acl_cv_hardcode_minus_L" ++ dnl Determine whether the user wants rpath handling at all. ++ AC_ARG_ENABLE(rpath, ++ [ --disable-rpath do not hardcode runtime library paths], ++ :, enable_rpath=yes) ++]) ++ ++dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and ++dnl the libraries corresponding to explicit and implicit dependencies. ++dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. ++AC_DEFUN([AC_LIB_LINKFLAGS_BODY], ++[ ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ dnl By default, look in $includedir and $libdir. ++ use_additional=yes ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ AC_LIB_ARG_WITH([lib$1-prefix], ++[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib ++ --without-lib$1-prefix don't search for lib$1 in includedir and libdir], ++[ ++ if test "X$withval" = "Xno"; then ++ use_additional=no ++ else ++ if test "X$withval" = "X"; then ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ else ++ additional_includedir="$withval/include" ++ additional_libdir="$withval/lib" ++ fi ++ fi ++]) ++ dnl Search the library and its dependencies in $additional_libdir and ++ dnl $LDFLAGS. Using breadth-first-seach. ++ LIB[]NAME= ++ LTLIB[]NAME= ++ INC[]NAME= ++ rpathdirs= ++ ltrpathdirs= ++ names_already_handled= ++ names_next_round='$1 $2' ++ while test -n "$names_next_round"; do ++ names_this_round="$names_next_round" ++ names_next_round= ++ for name in $names_this_round; do ++ already_handled= ++ for n in $names_already_handled; do ++ if test "$n" = "$name"; then ++ already_handled=yes ++ break ++ fi ++ done ++ if test -z "$already_handled"; then ++ names_already_handled="$names_already_handled $name" ++ dnl See if it was already located by an earlier AC_LIB_LINKFLAGS ++ dnl or AC_LIB_HAVE_LINKFLAGS call. ++ uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` ++ eval value=\"\$HAVE_LIB$uppername\" ++ if test -n "$value"; then ++ if test "$value" = yes; then ++ eval value=\"\$LIB$uppername\" ++ test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" ++ eval value=\"\$LTLIB$uppername\" ++ test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" ++ else ++ dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined ++ dnl that this library doesn't exist. So just drop it. ++ : ++ fi ++ else ++ dnl Search the library lib$name in $additional_libdir and $LDFLAGS ++ dnl and the already constructed $LIBNAME/$LTLIBNAME. ++ found_dir= ++ found_la= ++ found_so= ++ found_a= ++ if test $use_additional = yes; then ++ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then ++ found_dir="$additional_libdir" ++ found_so="$additional_libdir/lib$name.$shlibext" ++ if test -f "$additional_libdir/lib$name.la"; then ++ found_la="$additional_libdir/lib$name.la" ++ fi ++ else ++ if test -f "$additional_libdir/lib$name.$libext"; then ++ found_dir="$additional_libdir" ++ found_a="$additional_libdir/lib$name.$libext" ++ if test -f "$additional_libdir/lib$name.la"; then ++ found_la="$additional_libdir/lib$name.la" ++ fi ++ fi ++ fi ++ fi ++ if test "X$found_dir" = "X"; then ++ for x in $LDFLAGS $LTLIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ case "$x" in ++ -L*) ++ dir=`echo "X$x" | sed -e 's/^X-L//'` ++ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then ++ found_dir="$dir" ++ found_so="$dir/lib$name.$shlibext" ++ if test -f "$dir/lib$name.la"; then ++ found_la="$dir/lib$name.la" ++ fi ++ else ++ if test -f "$dir/lib$name.$libext"; then ++ found_dir="$dir" ++ found_a="$dir/lib$name.$libext" ++ if test -f "$dir/lib$name.la"; then ++ found_la="$dir/lib$name.la" ++ fi ++ fi ++ fi ++ ;; ++ esac ++ if test "X$found_dir" != "X"; then ++ break ++ fi ++ done ++ fi ++ if test "X$found_dir" != "X"; then ++ dnl Found the library. ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" ++ if test "X$found_so" != "X"; then ++ dnl Linking with a shared library. We attempt to hardcode its ++ dnl directory into the executable's runpath, unless it's the ++ dnl standard /usr/lib. ++ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then ++ dnl No hardcoding is needed. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ dnl Use an explicit option to hardcode DIR into the resulting ++ dnl binary. ++ dnl Potentially add DIR to ltrpathdirs. ++ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. ++ haveit= ++ for x in $ltrpathdirs; do ++ if test "X$x" = "X$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ ltrpathdirs="$ltrpathdirs $found_dir" ++ fi ++ dnl The hardcoding into $LIBNAME is system dependent. ++ if test "$hardcode_direct" = yes; then ++ dnl Using DIR/libNAME.so during linking hardcodes DIR into the ++ dnl resulting binary. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then ++ dnl Use an explicit option to hardcode DIR into the resulting ++ dnl binary. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ dnl Potentially add DIR to rpathdirs. ++ dnl The rpathdirs will be appended to $LIBNAME at the end. ++ haveit= ++ for x in $rpathdirs; do ++ if test "X$x" = "X$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ rpathdirs="$rpathdirs $found_dir" ++ fi ++ else ++ dnl Rely on "-L$found_dir". ++ dnl But don't add it if it's already contained in the LDFLAGS ++ dnl or the already constructed $LIBNAME ++ haveit= ++ for x in $LDFLAGS $LIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" ++ fi ++ if test "$hardcode_minus_L" != no; then ++ dnl FIXME: Not sure whether we should use ++ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" ++ dnl here. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH ++ dnl here, because this doesn't fit in flags passed to the ++ dnl compiler. So give up. No hardcoding. This affects only ++ dnl very old systems. ++ dnl FIXME: Not sure whether we should use ++ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" ++ dnl here. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" ++ fi ++ fi ++ fi ++ fi ++ else ++ if test "X$found_a" != "X"; then ++ dnl Linking with a static library. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" ++ else ++ dnl We shouldn't come here, but anyway it's good to have a ++ dnl fallback. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" ++ fi ++ fi ++ dnl Assume the include files are nearby. ++ additional_includedir= ++ case "$found_dir" in ++ */lib | */lib/) ++ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` ++ additional_includedir="$basedir/include" ++ ;; ++ esac ++ if test "X$additional_includedir" != "X"; then ++ dnl Potentially add $additional_includedir to $INCNAME. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/include, ++ dnl 2. if it's /usr/local/include and we are using GCC on Linux, ++ dnl 3. if it's already present in $CPPFLAGS or the already ++ dnl constructed $INCNAME, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_includedir" != "X/usr/include"; then ++ haveit= ++ if test "X$additional_includedir" = "X/usr/local/include"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux* | gnu* | k*bsd*-gnu) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ for x in $CPPFLAGS $INC[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-I$additional_includedir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_includedir"; then ++ dnl Really add $additional_includedir to $INCNAME. ++ INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" ++ fi ++ fi ++ fi ++ fi ++ fi ++ dnl Look for dependencies. ++ if test -n "$found_la"; then ++ dnl Read the .la file. It defines the variables ++ dnl dlname, library_names, old_library, dependency_libs, current, ++ dnl age, revision, installed, dlopen, dlpreopen, libdir. ++ save_libdir="$libdir" ++ case "$found_la" in ++ */* | *\\*) . "$found_la" ;; ++ *) . "./$found_la" ;; ++ esac ++ libdir="$save_libdir" ++ dnl We use only dependency_libs. ++ for dep in $dependency_libs; do ++ case "$dep" in ++ -L*) ++ additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` ++ dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/lib, ++ dnl 2. if it's /usr/local/lib and we are using GCC on Linux, ++ dnl 3. if it's already present in $LDFLAGS or the already ++ dnl constructed $LIBNAME, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_libdir" != "X/usr/lib"; then ++ haveit= ++ if test "X$additional_libdir" = "X/usr/local/lib"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux* | gnu* | k*bsd*-gnu) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ haveit= ++ for x in $LDFLAGS $LIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LIBNAME. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" ++ fi ++ fi ++ haveit= ++ for x in $LDFLAGS $LTLIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LTLIBNAME. ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" ++ fi ++ fi ++ fi ++ fi ++ ;; ++ -R*) ++ dir=`echo "X$dep" | sed -e 's/^X-R//'` ++ if test "$enable_rpath" != no; then ++ dnl Potentially add DIR to rpathdirs. ++ dnl The rpathdirs will be appended to $LIBNAME at the end. ++ haveit= ++ for x in $rpathdirs; do ++ if test "X$x" = "X$dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ rpathdirs="$rpathdirs $dir" ++ fi ++ dnl Potentially add DIR to ltrpathdirs. ++ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. ++ haveit= ++ for x in $ltrpathdirs; do ++ if test "X$x" = "X$dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ ltrpathdirs="$ltrpathdirs $dir" ++ fi ++ fi ++ ;; ++ -l*) ++ dnl Handle this in the next round. ++ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ++ ;; ++ *.la) ++ dnl Handle this in the next round. Throw away the .la's ++ dnl directory; it is already contained in a preceding -L ++ dnl option. ++ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ++ ;; ++ *) ++ dnl Most likely an immediate library name. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" ++ ;; ++ esac ++ done ++ fi ++ else ++ dnl Didn't find the library; assume it is in the system directories ++ dnl known to the linker and runtime loader. (All the system ++ dnl directories known to the linker should also be known to the ++ dnl runtime loader, otherwise the system is severely misconfigured.) ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" ++ fi ++ fi ++ fi ++ done ++ done ++ if test "X$rpathdirs" != "X"; then ++ if test -n "$hardcode_libdir_separator"; then ++ dnl Weird platform: only the last -rpath option counts, the user must ++ dnl pass all path elements in one option. We can arrange that for a ++ dnl single library, but not when more than one $LIBNAMEs are used. ++ alldirs= ++ for found_dir in $rpathdirs; do ++ alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" ++ done ++ dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. ++ acl_save_libdir="$libdir" ++ libdir="$alldirs" ++ eval flag=\"$hardcode_libdir_flag_spec\" ++ libdir="$acl_save_libdir" ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" ++ else ++ dnl The -rpath options are cumulative. ++ for found_dir in $rpathdirs; do ++ acl_save_libdir="$libdir" ++ libdir="$found_dir" ++ eval flag=\"$hardcode_libdir_flag_spec\" ++ libdir="$acl_save_libdir" ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" ++ done ++ fi ++ fi ++ if test "X$ltrpathdirs" != "X"; then ++ dnl When using libtool, the option that works for both libraries and ++ dnl executables is -R. The -R options are cumulative. ++ for found_dir in $ltrpathdirs; do ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" ++ done ++ fi ++]) ++ ++dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, ++dnl unless already present in VAR. ++dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes ++dnl contains two or three consecutive elements that belong together. ++AC_DEFUN([AC_LIB_APPENDTOVAR], ++[ ++ for element in [$2]; do ++ haveit= ++ for x in $[$1]; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X$element"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ [$1]="${[$1]}${[$1]:+ }$element" ++ fi ++ done ++]) ++ ++# lib-ld.m4 serial 3 (gettext-0.13) ++dnl Copyright (C) 1996-2003 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 Subroutines of libtool.m4, ++dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision ++dnl with libtool.m4. ++ ++dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. ++AC_DEFUN([AC_LIB_PROG_LD_GNU], ++[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, ++[# I'd rather use --version here, but apparently some GNU ld's only accept -v. ++case `$LD -v 2>&1 conf$$.sh ++ echo "exit 0" >>conf$$.sh ++ chmod +x conf$$.sh ++ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then ++ PATH_SEPARATOR=';' ++ else ++ PATH_SEPARATOR=: ++ fi ++ rm -f conf$$.sh ++fi ++ac_prog=ld ++if test "$GCC" = yes; then ++ # Check if gcc -print-prog-name=ld gives a path. ++ AC_MSG_CHECKING([for ld used by GCC]) ++ case $host in ++ *-*-mingw*) ++ # gcc leaves a trailing carriage return which upsets mingw ++ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; ++ *) ++ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; ++ esac ++ case $ac_prog in ++ # Accept absolute paths. ++ [[\\/]* | [A-Za-z]:[\\/]*)] ++ [re_direlt='/[^/][^/]*/\.\./'] ++ # Canonicalize the path of ld ++ ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` ++ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ++ ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` ++ done ++ test -z "$LD" && LD="$ac_prog" ++ ;; ++ "") ++ # If it fails, then pretend we aren't using GCC. ++ ac_prog=ld ++ ;; ++ *) ++ # If it is relative, then search for the first ld in PATH. ++ with_gnu_ld=unknown ++ ;; ++ esac ++elif test "$with_gnu_ld" = yes; then ++ AC_MSG_CHECKING([for GNU ld]) ++else ++ AC_MSG_CHECKING([for non-GNU ld]) ++fi ++AC_CACHE_VAL(acl_cv_path_LD, ++[if test -z "$LD"; then ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" ++ for ac_dir in $PATH; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then ++ acl_cv_path_LD="$ac_dir/$ac_prog" ++ # Check to see if the program is GNU ld. I'd rather use --version, ++ # but apparently some GNU ld's only accept -v. ++ # Break only if it was the GNU/non-GNU ld that we prefer. ++ case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in ++ *GNU* | *'with BFD'*) ++ test "$with_gnu_ld" != no && break ;; ++ *) ++ test "$with_gnu_ld" != yes && break ;; ++ esac ++ fi ++ done ++ IFS="$ac_save_ifs" ++else ++ acl_cv_path_LD="$LD" # Let the user override the test with a path. ++fi]) ++LD="$acl_cv_path_LD" ++if test -n "$LD"; then ++ AC_MSG_RESULT($LD) ++else ++ AC_MSG_RESULT(no) ++fi ++test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) ++AC_LIB_PROG_LD_GNU ++]) ++ ++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.13.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 ++] ++) ++ +--- newlib-1.13.0.orig/newlib/libc/sys/psp/configure 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/configure 2005-07-23 22:50:02.000000000 -0700 +@@ -0,0 +1,1880 @@ ++#! /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=libcglue.c ++ ++# 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.13.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. ++cat > conftest.defs <<\EOF ++s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g ++s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g ++s%\[%\\&%g ++s%\]%\\&%g ++s%\$%$$%g ++EOF ++DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` ++rm -f conftest.defs ++ ++ ++# 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 ++ +--- newlib-1.13.0.orig/newlib/libc/sys/psp/crt0.c 1969-12-31 16:00:00.000000000 -0800 ++++ newlib-psp/newlib/libc/sys/psp/crt0.c 2005-07-23 23:27:06.000000000 -0700 +@@ -0,0 +1,3 @@ ++/* The real crt0.c lives in PSPSDK. */ ++ ++void _start() { } +--- newlib-1.13.0.orig/newlib/libc/include/sys/config.h 2004-06-22 14:54:51.000000000 -0700 ++++ newlib-psp/newlib/libc/include/sys/config.h 2005-08-15 14:11:50.806728088 -0700 +@@ -94,6 +94,12 @@ + #endif + #endif + ++/* We compile newlib with -G0 for PSP, but if we're compiling an app with $gp enabled, ++ then _impure_ptr is expected to live in .sdata. */ ++#if defined(__psp__) ++#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) ++#endif ++ + #ifdef __xstormy16__ + #define __SMALL_BITFIELDS + #undef INT_MAX +--- newlib-1.13.0.orig/newlib/configure.host 2004-10-05 12:44:24.000000000 -0700 ++++ newlib-psp/newlib/configure.host 2005-07-23 23:02:26.000000000 -0700 +@@ -570,7 +570,14 @@ + ;; + mips*-*-elf*) + default_newlib_io_long_long="yes" +- newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" ++ case "${host}" in ++ mipsallegrex*-psp-*) ++ sys_dir=psp ++ syscall_dir=syscalls ++ newlib_cflags="${newlib_cflags} -G0 -DPREFER_SIZE_OVER_SPEED -DCOMPACT_CTYPE -DCLOCK_PROVIDED -I${prefix}/psp/sdk/include" ;; ++ *) ++ newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" ;; ++ esac + ;; + mmix-*) + syscall_dir=syscalls diff --git a/dkpsp/scripts/build-gcc.sh b/dkpsp/scripts/build-gcc.sh index 11fcf60..4edc884 100644 --- a/dkpsp/scripts/build-gcc.sh +++ b/dkpsp/scripts/build-gcc.sh @@ -13,7 +13,7 @@ cd $target/binutils --prefix=$prefix --target=$target --disable-nls --disable-shared --disable-debug \ --disable-threads --with-gcc --with-gnu-as --with-gnu-ld --with-stabs \ || { echo "Error configuring binutils"; exit 1; } - + $MAKE || { echo "Error building binutils"; exit 1; } $MAKE install || { echo "Error installing binutils"; exit 1; } @@ -35,13 +35,12 @@ cd $target/gcc ../../$GCC_SRCDIR/configure \ --enable-languages=c,c++ \ - --enable-interwork --disable-multilib\ - --with-gcc --with-gnu-ld --with-gnu-as --with-stabs \ + --disable-multilib\ + --with-gcc --with-gnu-ld --with-gnu-as\ --disable-shared --disable-win32-registry --disable-nls\ --enable-cxx-flags="-G0" \ --target=$target \ --with-newlib \ - --without-headers \ --prefix=$prefix \ || { echo "Error configuring gcc"; exit 1; }