revision 185:6755a04c447f
summary |
tree |
shortlog |
changelog |
graph |
changeset |
raw | bz2 | zip | gz changeset | 185:6755a04c447f |
parent | 184:a1f69295dda1 |
child | 186:79bfebd5e0ff |
author | nkeynes |
date | Tue Jul 11 01:35:27 2006 +0000 (15 years ago) |
First commit of system test framework. 3 initial test cases (incomplete):
testide, testmath, and testta
testide, testmath, and testta
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00001.2 +++ b/test/Makefile Tue Jul 11 01:35:27 2006 +00001.3 @@ -0,0 +1,89 @@1.4 +# host compiler and flags1.5 +HOSTCC = gcc1.6 +HOSTCFLAGS = -O21.7 +SH4CC = sh-elf-gcc1.8 +SH4INC = -Iinclude1.9 +SH4CFLAGS = $(SH4INC) -D_arch_dreamcast -D_arch_sub_pristine \1.10 + -O2 -fno-builtin -fno-strict-aliasing -ml -m4-single-only \1.11 + -fno-optimize-sibling-calls1.12 +SH4LD = sh-elf-ld1.13 +SH4LDFLAGS = -fno-builtin -fno-strict-aliasing -ml -m4-single-only \1.14 + -Wl,-Tdc.x -nostartfiles -nostdlib -Llib1.15 +SH4LIBS = -Wl,--start-group -lc -lgcc -lm -Wl,--end-group1.16 +SH4OBJCOPY = sh-elf-objcopy -O binary1.17 +ARMCC = arm-elf-gcc1.18 +ARMCFLAGS = -O21.19 +ARMLD = arm-elf-ld1.20 +ARMOBJCOPY = arm-elf-objcopy1.21 +1.22 +BFDLIB = -L/usr/local/sh-elf-bfd/lib -lbfd -liberty1.23 +BFDINCLUDE = /usr/local/sh-elf-bfd/include1.24 +RUNTEST = ../src/lxdream -c ./lxdream.rc -h -q -p1.25 +1.26 +1.27 +# cygwin1.28 +# these must point to your sh-elf bfd, not the system one1.29 +#BFDLIB = -L/usr/local/lib -lbfd -liberty -lintl1.30 +#BFDINCLUDE = /usr/local/include1.31 +1.32 +#SHARED_OBJECTS = crt0.so dcload-syscall.so dcload-syscalls.so memcpy.so lib.so1.33 +SHARED_OBJECTS =1.34 +1.35 +%.ao: %.c1.36 + $(ARMCC) $(ARMCFLAGS) -o $@ -c $<1.37 +1.38 +%.ao: %.s1.39 + $(ARMCC) $(ARMCFLAGS) -o $@ -c $<1.40 +1.41 +%.so: %.c1.42 + $(SH4CC) $(SH4CFLAGS) -o $@ -c $<1.43 +1.44 +%.so: %.ac1.45 + $(SH4CC) $(SH4CFLAGS) -o $@ -c $<1.46 +1.47 +%.so: %.s1.48 + $(SH4CC) $(SH4CFLAGS) -o $@ -c $<1.49 +1.50 +%.so: %.S1.51 + $(SH4CC) $(SH4CFLAGS) -o $@ -c $<1.52 +1.53 +%.o: %.c1.54 + $(HOSTCC) $(HOSTCFLAGS) -o $@ -c $<1.55 +1.56 +%.arm: %.ao arm_crt0.ao1.57 + $(ARMCC) -Wl,-Ttext,0x00000000 -nostartfiles -nostdlib -e reset -o $@ arm_crt0.ao $< -lgcc1.58 +1.59 +1.60 +%.bin: %.arm1.61 + $(ARMOBJCOPY) -O binary $< $@1.62 +1.63 +%.aso: %.bin bin2c1.64 + ./bin2c $< $<.c1.65 + $(SH4CC) $(SH4CFLAGS) -o $@ -c $<.c1.66 +1.67 +all: build-tests1.68 +1.69 +test: build-tests1.70 + $(RUNTEST) testmath1.71 + $(RUNTEST) testide -d ../disc/test.nrg1.72 + $(RUNTEST) testta < testta.data1.73 +1.74 +build-tests: testmath testide testta1.75 +1.76 +testide: crt0.so testide.so ide.so1.77 + $(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)1.78 +1.79 +testmath: crt0.so $(SHARED_OBJECTS) testmath.so math.so1.80 + $(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)1.81 +1.82 +testta: crt0.so $(SHARED_OBJECTS) testta.so pvr.so dmac.so asic.so lib.so testdata.so1.83 + $(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)1.84 + $(SH4OBJCOPY) testta testta.bin1.85 +1.86 +readdata: crt0.so readdata.so1.87 + $(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)1.88 +1.89 +.PHONY : clean1.90 +clean:1.91 + rm -f *.o *.so *.ao *.ac *.bin mapleid ide readmem dumpasic1.92 +
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00002.2 +++ b/test/README Tue Jul 11 01:35:27 2006 +00002.3 @@ -0,0 +1,15 @@2.4 +2.5 +The test cases in this directory require an sh4 tool chain, as well as an2.6 +arm tool chain if you want to build the AICA tests. The default Makefile2.7 +assumes these are sh-elf and arm-elf targets respectively. A modified copy of2.8 +newlib 1.8.2 prebuilt for SH4 with dc-load support is included as well,2.9 +to save having to set up that part of the environment. The necessary patch2.10 +is in the lib directory if you wish to build from source (newlib is included2.11 +under the terms of the GPL)2.12 +2.13 +crt0.s is included from the dcload distribution, and is assumed to be2.14 +redistributable under the terms of the GPL.2.15 +2.16 +There is currently no configure/automake for this directory - you'll need to2.17 +modify the Makefile directly if needed. This should probably be changed2.18 +eventually
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00003.2 +++ b/test/asic.c Tue Jul 11 01:35:27 2006 +00003.3 @@ -0,0 +1,84 @@3.4 +/**3.5 + * $Id: asic.c,v 1.1 2006-07-11 01:35:23 nkeynes Exp $3.6 + *3.7 + * General ASIC support code3.8 + *3.9 + * Copyright (c) 2006 Nathan Keynes.3.10 + *3.11 + * This program is free software; you can redistribute it and/or modify3.12 + * it under the terms of the GNU General Public License as published by3.13 + * the Free Software Foundation; either version 2 of the License, or3.14 + * (at your option) any later version.3.15 + *3.16 + * This program is distributed in the hope that it will be useful,3.17 + * but WITHOUT ANY WARRANTY; without even the implied warranty of3.18 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the3.19 + * GNU General Public License for more details.3.20 + */3.21 +3.22 +#include "lib.h"3.23 +3.24 +#define ASIC_BASE 0xA05F60003.25 +#define ASIC_PIRQ(n) (ASIC_BASE + 0x900 + (n<<2))3.26 +#define ASIC_IRQA(n) (ASIC_BASE + 0x910 + (n<<2))3.27 +#define ASIC_IRQB(n) (ASIC_BASE + 0x920 + (n<<2))3.28 +#define ASIC_IRQC(n) (ASIC_BASE + 0x930 + (n<<2))3.29 +#define TIMEOUT 100000003.30 +3.31 +/**3.32 + * Wait for an ASIC event.3.33 + * @return 0 if the event occurred, otherwise -1 if the wait timed out.3.34 + */3.35 +int asic_wait( int event )3.36 +{3.37 + int n = event >> 5;3.38 + unsigned int mask = (1<< (event&0x1f));3.39 + int i;3.40 + for( i=0; i<TIMEOUT; i++ ) {3.41 + if( long_read(ASIC_PIRQ(n)) & mask ) {3.42 + return 0;3.43 + }3.44 + }3.45 + return -1; /* Timeout */3.46 +}3.47 +3.48 +/**3.49 + * Clear all asic events3.50 + */3.51 +void asic_clear()3.52 +{3.53 + long_write(ASIC_PIRQ(0), 0xFFFFFFFF);3.54 + long_write(ASIC_PIRQ(1), 0xFFFFFFFF);3.55 + long_write(ASIC_PIRQ(2), 0xFFFFFFFF);3.56 +}3.57 +3.58 +void asic_mask_all()3.59 +{3.60 + long_write(ASIC_IRQA(0), 0);3.61 + long_write(ASIC_IRQA(1), 0);3.62 + long_write(ASIC_IRQA(2), 0);3.63 + long_write(ASIC_IRQB(0), 0);3.64 + long_write(ASIC_IRQB(1), 0);3.65 + long_write(ASIC_IRQB(2), 0);3.66 + long_write(ASIC_IRQC(0), 0);3.67 + long_write(ASIC_IRQC(1), 0);3.68 + long_write(ASIC_IRQC(2), 0);3.69 +}3.70 +3.71 +/**3.72 + * Print the contents of the ASIC event registers to the supplied FILE3.73 + */3.74 +void asic_dump( FILE *f )3.75 +{3.76 + int i,j;3.77 + fprintf( f, "Events: " );3.78 + for( i=0; i<3; i++ ) {3.79 + uint32_t val = long_read(ASIC_PIRQ(i));3.80 + for( j=0; j<32; j++ ) {3.81 + if( val & (1<<j) ) {3.82 + fprintf( f, "%d ", (i<<5)+j );3.83 + }3.84 + }3.85 + }3.86 + fprintf( f, "\n" );3.87 +}
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00004.2 +++ b/test/asic.h Tue Jul 11 01:35:27 2006 +00004.3 @@ -0,0 +1,42 @@4.4 +4.5 +#include <stdio.h>4.6 +4.7 +#define EVENT_PVR_RENDER_DONE 24.8 +#define EVENT_SCANLINE1 34.9 +#define EVENT_SCANLINE2 44.10 +#define EVENT_RETRACE 54.11 +#define EVENT_PVR_UNK 64.12 +#define EVENT_PVR_OPAQUE_DONE 74.13 +#define EVENT_PVR_OPAQUEMOD_DONE 84.14 +#define EVENT_PVR_TRANS_DONE 94.15 +#define EVENT_PVR_TRANSMOD_DONE 104.16 +#define EVENT_MAPLE_DMA 124.17 +#define EVENT_MAPLE_ERR 13 /* ??? */4.18 +#define EVENT_IDE_DMA 144.19 +#define EVENT_SPU_DMA0 154.20 +#define EVENT_SPU_DMA1 164.21 +#define EVENT_SPU_DMA2 174.22 +#define EVENT_SPU_DMA3 184.23 +#define EVENT_PVR_DMA 194.24 +#define EVENT_PVR_PUNCHOUT_DONE 214.25 +4.26 +#define EVENT_IDE 324.27 +#define EVENT_AICA 334.28 +4.29 +/**4.30 + * Wait for an ASIC event.4.31 + * @return 0 if the event occurred, otherwise -1 if the wait timed out.4.32 + */4.33 +int asic_wait( int event );4.34 +4.35 +/**4.36 + * Clear all asic events4.37 + */4.38 +void asic_clear();4.39 +4.40 +/**4.41 + * Print the contents of the ASIC event registers to the supplied FILE4.42 + */4.43 +void asic_dump( FILE *f );4.44 +4.45 +void asic_mask_all();
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00005.2 +++ b/test/bin2c.c Tue Jul 11 01:35:27 2006 +00005.3 @@ -0,0 +1,63 @@5.4 +/* Converts a binary file into a C integer array (for inclusion in5.5 + a source file)5.6 +5.7 + (c)2000 Dan Potter5.8 +5.9 + $Id: bin2c.c,v 1.1 2006-07-11 01:35:23 nkeynes Exp $5.10 + Note: Licensed under the new BSD license, see README.KOS -NK5.11 +*/5.12 +5.13 +#include <stdio.h>5.14 +5.15 +void convert(char *ifn, char *ofn, char *prefix) {5.16 + FILE *i, *o;5.17 + unsigned char buffer[2048];5.18 + int red, left, lc, q;5.19 + char buf[BUFSIZ];5.20 +5.21 + i = fopen(ifn, "rb");5.22 + o = fopen(ofn, "w");5.23 + if (!i || !o) {5.24 + printf("error: can't open input or output file\n");5.25 + return;5.26 + }5.27 +5.28 + fseek(i, 0, SEEK_END); left = ftell(i); fseek(i, 0, SEEK_SET);5.29 + setbuf(o, buf);5.30 +5.31 + fprintf(o, "const int %s_size = %d;\n", prefix, left);5.32 + fprintf(o, "const unsigned char %s_data[%d] =", prefix, left);5.33 + fprintf(o, "{\n\t");5.34 +5.35 + lc = 0;5.36 + while(left > 0) {5.37 + red = fread(buffer, 1, 2048, i);5.38 + left -= red;5.39 + for (q=0; q<red; q++) {5.40 + fprintf(o, "0x%02x, ", buffer[q]);5.41 + if ((++lc) >= 8) {5.42 + lc = 0;5.43 + fprintf(o, "\n\t");5.44 + }5.45 + }5.46 + }5.47 +5.48 + fprintf(o, "\n};\n");5.49 + fclose(i); fclose(o);5.50 +}5.51 +5.52 +int main(int argc, char **argv) {5.53 +5.54 + char *prefix;5.55 +5.56 + argc--;5.57 + if (argc != 2 && argc != 3) {5.58 + printf("usage: bin2c <input> <output> [prefix]\n");5.59 + return 0;5.60 + }5.61 +5.62 + prefix = (argc == 3) ? argv[3] : "file";5.63 + convert(argv[1], argv[2], prefix);5.64 + return 0;5.65 +}5.66 +
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00006.2 +++ b/test/crt0.s Tue Jul 11 01:35:27 2006 +00006.3 @@ -0,0 +1,119 @@6.4 + .section .text6.5 + .global start6.6 + .global ___exit6.7 + .global _atexit6.8 +start:6.9 + mov.l setup_cache_k,r06.10 + mov.l p2_mask,r16.11 + or r1,r06.12 + jmp @r06.13 + nop6.14 +setup_cache:6.15 + mov.l ccr_addr,r06.16 + mov.w ccr_data,r16.17 + mov.l r1,@r06.18 + mov.l start_2_k,r06.19 + nop6.20 + nop6.21 + nop6.22 + nop6.23 + nop6.24 + nop6.25 + nop6.26 + jmp @r06.27 + nop6.28 +start_2:6.29 + mov.l old_stack_k,r146.30 + mov.l r15,@r146.31 + mov.l old_pr_k,r146.32 + sts pr,r156.33 + mov.l r15,@r146.34 + mov.l stack_k,r156.35 +6.36 + ! zero out bss6.37 + mov.l edata_k,r06.38 + mov.l end_k,r16.39 + mov #0,r26.40 +start_l:6.41 + mov.l r2,@r06.42 + add #4,r06.43 + cmp/ge r0,r16.44 + bt start_l6.45 +6.46 +#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY)6.47 + mov.l set_fpscr_k, r16.48 + jsr @r16.49 + mov #0,r46.50 + lds r3,fpscr6.51 +#endif /* defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__) */6.52 +6.53 + ! call the mainline6.54 + mov.l main_k,r06.55 + jsr @r06.56 + or r0,r06.57 +6.58 + ! call exit6.59 + mov r0,r46.60 + mov.l exit_k,r06.61 + jsr @r06.62 + or r0,r06.63 +6.64 +___exit:6.65 + mov.l old_pr_k,r146.66 + mov.l @r14,r156.67 + lds r15,pr6.68 + mov.l old_stack_k,r146.69 + mov.l @r14,r156.70 + rts6.71 + nop6.72 +6.73 +_atexit:6.74 + rts6.75 + nop6.76 +6.77 + .align 46.78 +#if defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(__SH4_SINGLE_ONLY__)6.79 +set_fpscr_k:6.80 + .long ___set_fpscr6.81 +#endif /* defined (__SH3E__) || defined(__SH4_SINGLE__) || defined(__SH4__) || defined(SH4_SINGLE_ONLY) */6.82 +stack_k:6.83 + .long _stack6.84 +edata_k:6.85 + .long _edata6.86 +end_k:6.87 + .long _end6.88 +main_k:6.89 + .long _main6.90 +exit_k:6.91 + .long _exit6.92 +6.93 +old_stack_k:6.94 + .long _old_stack6.95 +old_pr_k:6.96 + .long _old_pr6.97 +6.98 +_old_stack:6.99 + .long 06.100 +_old_pr:6.101 + .long 06.102 +6.103 +setup_cache_k:6.104 + .long setup_cache6.105 +start_2_k:6.106 + .long start_26.107 +p2_mask:6.108 + .long 0xa00000006.109 +ccr_addr:6.110 + .long 0xff00001c6.111 +ccr_data:6.112 + .word 0x090b6.113 +6.114 + .align 46.115 +6.116 +#ifdef __ELF__6.117 + .section .stack,"aw"6.118 +#else6.119 + .section .stack6.120 +#endif6.121 +! _stack: .long 0xdeaddead6.122 +
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00007.2 +++ b/test/dc.x Tue Jul 11 01:35:27 2006 +00007.3 @@ -0,0 +1,228 @@7.4 +/* Sega Dreamcast linker script */7.5 +7.6 +OUTPUT_FORMAT("elf32-shl", "elf32-shl",7.7 + "elf32-shl")7.8 +OUTPUT_ARCH(sh)7.9 +ENTRY(start)7.10 + SEARCH_DIR(/usr/local/dcdev/sh-elf/lib);7.11 +/* Do we need any of these for elf?7.12 + __DYNAMIC = 0; */7.13 +7.14 +MEMORY7.15 +{7.16 + ram (rwx) : ORIGIN = 0x8c010000, LENGTH = 0xfe00007.17 +}7.18 +7.19 +SECTIONS7.20 +{7.21 + /* Read-only sections, merged into text segment: */7.22 +/* . = 0x1000;*/7.23 + .interp : { *(.interp) }7.24 + .hash : { *(.hash) }7.25 + .dynsym : { *(.dynsym) }7.26 + .dynstr : { *(.dynstr) }7.27 + .gnu.version : { *(.gnu.version) }7.28 + .gnu.version_d : { *(.gnu.version_d) }7.29 + .gnu.version_r : { *(.gnu.version_r) }7.30 + .rel.init : { *(.rel.init) }7.31 + .rela.init : { *(.rela.init) }7.32 + .rel.text :7.33 + {7.34 + *(.rel.text)7.35 + *(.rel.text.*)7.36 + *(.rel.gnu.linkonce.t*)7.37 + }7.38 + .rela.text :7.39 + {7.40 + *(.rela.text)7.41 + *(.rela.text.*)7.42 + *(.rela.gnu.linkonce.t*)7.43 + }7.44 + .rel.fini : { *(.rel.fini) }7.45 + .rela.fini : { *(.rela.fini) }7.46 + .rel.rodata :7.47 + {7.48 + *(.rel.rodata)7.49 + *(.rel.rodata.*)7.50 + *(.rel.gnu.linkonce.r*)7.51 + }7.52 + .rela.rodata :7.53 + {7.54 + *(.rela.rodata)7.55 + *(.rela.rodata.*)7.56 + *(.rela.gnu.linkonce.r*)7.57 + }7.58 + .rel.data :7.59 + {7.60 + *(.rel.data)7.61 + *(.rel.data.*)7.62 + *(.rel.gnu.linkonce.d*)7.63 + }7.64 + .rela.data :7.65 + {7.66 + *(.rela.data)7.67 + *(.rela.data.*)7.68 + *(.rela.gnu.linkonce.d*)7.69 + }7.70 + .rel.ctors : { *(.rel.ctors) }7.71 + .rela.ctors : { *(.rela.ctors) }7.72 + .rel.dtors : { *(.rel.dtors) }7.73 + .rela.dtors : { *(.rela.dtors) }7.74 + .rel.got : { *(.rel.got) }7.75 + .rela.got : { *(.rela.got) }7.76 + .rel.sdata :7.77 + {7.78 + *(.rel.sdata)7.79 + *(.rel.sdata.*)7.80 + *(.rel.gnu.linkonce.s*)7.81 + }7.82 + .rela.sdata :7.83 + {7.84 + *(.rela.sdata)7.85 + *(.rela.sdata.*)7.86 + *(.rela.gnu.linkonce.s*)7.87 + }7.88 + .rel.sbss : { *(.rel.sbss) }7.89 + .rela.sbss : { *(.rela.sbss) }7.90 + .rel.bss : { *(.rel.bss) }7.91 + .rela.bss : { *(.rela.bss) }7.92 + .rel.plt : { *(.rel.plt) }7.93 + .rela.plt : { *(.rela.plt) }7.94 + .init :7.95 + {7.96 + KEEP (*(.init))7.97 + } =07.98 + .plt : { *(.plt) }7.99 + .text :7.100 + {7.101 + *(.text)7.102 + *(.text.*)7.103 + *(.stub)7.104 + /* .gnu.warning sections are handled specially by elf32.em. */7.105 + *(.gnu.warning)7.106 + *(.gnu.linkonce.t*)7.107 + } =07.108 + _etext = .;7.109 + PROVIDE (etext = .);7.110 + .fini :7.111 + {7.112 + KEEP (*(.fini))7.113 + } =07.114 + .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) }7.115 + .rodata1 : { *(.rodata1) }7.116 + /* Adjust the address for the data segment. We want to adjust up to7.117 + the same address within the page on the next page up. */7.118 + . = ALIGN(128) + (. & (128 - 1));7.119 + .data :7.120 + {7.121 + *(.data)7.122 + *(.data.*)7.123 + *(.gnu.linkonce.d*)7.124 + SORT(CONSTRUCTORS)7.125 + }7.126 + .data1 : { *(.data1) }7.127 + .eh_frame : { *(.eh_frame) }7.128 + .gcc_except_table : { *(.gcc_except_table) }7.129 + .ctors ALIGN(4):7.130 + {7.131 + ___ctors = .;7.132 + /* gcc uses crtbegin.o to find the start of7.133 + the constructors, so we make sure it is7.134 + first. Because this is a wildcard, it7.135 + doesn't matter if the user does not7.136 + actually link against crtbegin.o; the7.137 + linker won't look for a file to match a7.138 + wildcard. The wildcard also means that it7.139 + doesn't matter which directory crtbegin.o7.140 + is in. */7.141 + KEEP (*crtbegin.o(.ctors))7.142 + /* We don't want to include the .ctor section from7.143 + from the crtend.o file until after the sorted ctors.7.144 + The .ctor section from the crtend file contains the7.145 + end of ctors marker and it must be last */7.146 + KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))7.147 + KEEP (*(SORT(.ctors.*)))7.148 + KEEP (*(.ctors))7.149 + ___ctors_end = .;7.150 + }7.151 + .dtors :7.152 + {7.153 + ___dtors = .;7.154 + KEEP (*crtbegin.o(.dtors))7.155 + KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))7.156 + KEEP (*(SORT(.dtors.*)))7.157 + KEEP (*(.dtors))7.158 + ___dtors_end = .;7.159 + }7.160 + .got : { *(.got.plt) *(.got) }7.161 + .dynamic : { *(.dynamic) }7.162 + /* We want the small data sections together, so single-instruction offsets7.163 + can access them all, and initialized data all before uninitialized, so7.164 + we can shorten the on-disk segment size. */7.165 + .sdata :7.166 + {7.167 + *(.sdata)7.168 + *(.sdata.*)7.169 + *(.gnu.linkonce.s.*)7.170 + }7.171 + _edata = .;7.172 + PROVIDE (edata = .);7.173 + __bss_start = .;7.174 + .sbss :7.175 + {7.176 + *(.dynsbss)7.177 + *(.sbss)7.178 + *(.sbss.*)7.179 + *(.scommon)7.180 + }7.181 + .bss :7.182 + {7.183 + *(.dynbss)7.184 + *(.bss)7.185 + *(.bss.*)7.186 + *(COMMON)7.187 + /* Align here to ensure that the .bss section occupies space up to7.188 + _end. Align after .bss to ensure correct alignment even if the7.189 + .bss section disappears because there are no input sections. */7.190 + . = ALIGN(32 / 8);7.191 + }7.192 + . = ALIGN(32 / 8);7.193 + _end = .;7.194 + PROVIDE (end = .);7.195 + /* Stabs debugging sections. */7.196 + .stab 0 : { *(.stab) }7.197 + .stabstr 0 : { *(.stabstr) }7.198 + .stab.excl 0 : { *(.stab.excl) }7.199 + .stab.exclstr 0 : { *(.stab.exclstr) }7.200 + .stab.index 0 : { *(.stab.index) }7.201 + .stab.indexstr 0 : { *(.stab.indexstr) }7.202 + .comment 0 : { *(.comment) }7.203 + /* DWARF debug sections.7.204 + Symbols in the DWARF debugging sections are relative to the beginning7.205 + of the section so we begin them at 0. */7.206 + /* DWARF 1 */7.207 + .debug 0 : { *(.debug) }7.208 + .line 0 : { *(.line) }7.209 + /* GNU DWARF 1 extensions */7.210 + .debug_srcinfo 0 : { *(.debug_srcinfo) }7.211 + .debug_sfnames 0 : { *(.debug_sfnames) }7.212 + /* DWARF 1.1 and DWARF 2 */7.213 + .debug_aranges 0 : { *(.debug_aranges) }7.214 + .debug_pubnames 0 : { *(.debug_pubnames) }7.215 + /* DWARF 2 */7.216 + .debug_info 0 : { *(.debug_info) }7.217 + .debug_abbrev 0 : { *(.debug_abbrev) }7.218 + .debug_line 0 : { *(.debug_line) }7.219 + .debug_frame 0 : { *(.debug_frame) }7.220 + .debug_str 0 : { *(.debug_str) }7.221 + .debug_loc 0 : { *(.debug_loc) }7.222 + .debug_macinfo 0 : { *(.debug_macinfo) }7.223 + /* SGI/MIPS DWARF 2 extensions */7.224 + .debug_weaknames 0 : { *(.debug_weaknames) }7.225 + .debug_funcnames 0 : { *(.debug_funcnames) }7.226 + .debug_typenames 0 : { *(.debug_typenames) }7.227 + .debug_varnames 0 : { *(.debug_varnames) }7.228 +/* .stack 0x8c00f400 : { _stack = .; *(.stack) }*/7.229 + /* These must appear regardless of . */7.230 + _stack = 0x8d000000;7.231 +}
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00008.2 +++ b/test/dma.h Tue Jul 11 01:35:27 2006 +00008.3 @@ -0,0 +1,47 @@8.4 +/**8.5 + * $Id: dma.h,v 1.1 2006-07-11 01:35:23 nkeynes Exp $8.6 + *8.7 + * DMA support code8.8 + *8.9 + * Copyright (c) 2006 Nathan Keynes.8.10 + *8.11 + * This program is free software; you can redistribute it and/or modify8.12 + * it under the terms of the GNU General Public License as published by8.13 + * the Free Software Foundation; either version 2 of the License, or8.14 + * (at your option) any later version.8.15 + *8.16 + * This program is distributed in the hope that it will be useful,8.17 + * but WITHOUT ANY WARRANTY; without even the implied warranty of8.18 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the8.19 + * GNU General Public License for more details.8.20 + */8.21 +8.22 +#include "lib.h"8.23 +8.24 +/**8.25 + * Setup the DMAC for a transfer. Assumes 32-byte block transfer.8.26 + * Caller is responsible for making sure no-one else is using the8.27 + * channel already.8.28 + *8.29 + * @param channel DMA channel to use, 0 to 38.30 + * @param source source address (if a memory source)8.31 + * @param dest destination address (if a memory destination)8.32 + * @param length number of bytes to transfer (must be a multiple of8.33 + * 32.8.34 + * @param direction 0 = host to device, 1 = device to host8.35 + */8.36 +void dmac_prepare_channel( int channel, uint32_t source, uint32_t dest,8.37 + uint32_t length, int direction );8.38 +8.39 +/**8.40 + * Transfer data to the PVR via DMA. Target address should be8.41 + * 0x10000000 for the TA, and 0x11000000 + VRAM address for VRAM.8.42 + *8.43 + * @param target Target address8.44 + * @param buf Data to write (must be 32-byte aligned)8.45 + * @param length Size of data to write, in bytes.8.46 + * @param region Target region for VRAM writes, 0 for 64-byte region, 1 for 32-byte region.8.47 + *8.48 + * @return 0 on success, non-zero on failure.8.49 + */8.50 +int pvr_dma_write( unsigned int target, char *buf, int length, int region );
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +00009.2 +++ b/test/dmac.c Tue Jul 11 01:35:27 2006 +00009.3 @@ -0,0 +1,128 @@9.4 +/**9.5 + * $Id: dmac.c,v 1.1 2006-07-11 01:35:23 nkeynes Exp $9.6 + *9.7 + * DMA support code9.8 + *9.9 + * Copyright (c) 2006 Nathan Keynes.9.10 + *9.11 + * This program is free software; you can redistribute it and/or modify9.12 + * it under the terms of the GNU General Public License as published by9.13 + * the Free Software Foundation; either version 2 of the License, or9.14 + * (at your option) any later version.9.15 + *9.16 + * This program is distributed in the hope that it will be useful,9.17 + * but WITHOUT ANY WARRANTY; without even the implied warranty of9.18 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the9.19 + * GNU General Public License for more details.9.20 + */9.21 +9.22 +#include "dma.h"9.23 +#include "asic.h"9.24 +9.25 +#define DMA_BASE 0xFFA000009.26 +9.27 +#define DMA_SAR(c) (DMA_BASE+0x00+(c<<4))9.28 +#define DMA_DAR(c) (DMA_BASE+0x04+(c<<4))9.29 +#define DMA_TCR(c) (DMA_BASE+0x08+(c<<4))9.30 +#define DMA_CHCR(c) (DMA_BASE+0x0C+(c<<4))9.31 +#define DMA_OR (DMA_BASE+0x40)9.32 +9.33 +#define ASIC_BASE 0xA05F60009.34 +#define PVR_DMA_DEST (ASIC_BASE+0x800)9.35 +#define PVR_DMA_COUNT (ASIC_BASE+0x804)9.36 +#define PVR_DMA_CTL (ASIC_BASE+0x808)9.37 +#define PVR_DMA_REGION (ASIC_BASE+0x884)9.38 +9.39 +void dmac_dump_channel( FILE *f, unsigned int channel )9.40 +{9.41 + fprintf( f, "DMAC SAR: %08X Count: %08X Ctl: %08X OR: %08X\n",9.42 + long_read(DMA_SAR(channel)), long_read(DMA_TCR(channel)),9.43 + long_read(DMA_CHCR(channel)), long_read(DMA_OR) );9.44 +}9.45 +9.46 +9.47 +/**9.48 + * Setup the DMAC for a transfer. Assumes 32-byte block transfer.9.49 + * Caller is responsible for making sure no-one else is using the9.50 + * channel already.9.51 + *9.52 + * @param channel DMA channel to use, 0 to 39.53 + * @param source source address (if a memory source)9.54 + * @param dest destination address (if a memory destination)9.55 + * @param length number of bytes to transfer (must be a multiple of9.56 + * 32.9.57 + * @param direction 0 = host to device, 1 = device to host9.58 + */9.59 +void dmac_prepare_channel( int channel, uint32_t source, uint32_t dest,9.60 + uint32_t length, int direction )9.61 +{9.62 + uint32_t control;9.63 +9.64 + if( direction == 0 ) {9.65 + /* DMA Disabled, IRQ disabled, 32 byte transfer, burst mode,9.66 + * Memory => Device, Source addr increment, dest addr fixed9.67 + */9.68 + control = 0x000012C0;9.69 + } else {9.70 + /* DMA Disabled, IRQ disabled, 32 byte transfer, burst mode,9.71 + * Device => Memory, Source addr fixed, dest addr increment9.72 + */9.73 + control = 0x000043C0;9.74 + }9.75 + long_write( DMA_CHCR(channel), control );9.76 + long_write( DMA_SAR(channel), source );9.77 + long_write( DMA_DAR(channel), dest );9.78 + long_write( DMA_TCR(channel), (length >> 5) );9.79 + control |= 0x0001;9.80 + long_write( DMA_CHCR(channel), control ); /* Enable DMA channel */9.81 + long_write( DMA_OR, 0x8201 ); /* Ensure the DMAC config is set */9.82 +}9.83 +9.84 +9.85 +int pvr_dma_write( unsigned int target, char *buf, int len, int region )9.86 +{9.87 + uint32_t addr =(uint32_t)buf;9.88 + int result;9.89 + if( (addr & 0xFFFFFFE0) != addr ) {9.90 + fprintf( stderr, "Address error: Attempting DMA from %08X\n", addr );9.91 + return -1;9.92 + } else {9.93 + fprintf( stderr, "PVR DMA transfer from %08X\n", addr );9.94 + }9.95 + long_write( PVR_DMA_CTL, 0 ); /* Stop PVR dma if it's already running */9.96 + asic_clear();9.97 +9.98 + dmac_prepare_channel( 2, (uint32_t)buf, 0, len, 0 ); /* Allocate channel 2 */9.99 + long_write( PVR_DMA_DEST, target );9.100 + long_write( PVR_DMA_COUNT, len );9.101 + long_write( PVR_DMA_REGION, region );9.102 +9.103 + CHECK_IEQUALS( target, long_read(PVR_DMA_DEST) );9.104 + CHECK_IEQUALS( len, long_read(PVR_DMA_COUNT) );9.105 + CHECK_IEQUALS( 0, long_read(PVR_DMA_REGION) );9.106 + CHECK_IEQUALS( (uint32_t)buf, long_read(DMA_SAR(2)) );9.107 + CHECK_IEQUALS( len/32, long_read(DMA_TCR(2)) );9.108 + CHECK_IEQUALS( 0x12C1, long_read(DMA_CHCR(2)) );9.109 +9.110 + long_write( PVR_DMA_CTL, 1 );9.111 + result = asic_wait(EVENT_PVR_DMA);9.112 +9.113 + if( result != 0 ) {9.114 + fprintf( stderr, "PVR DMA failed (timeout)\n" );9.115 + asic_dump(stderr);9.116 + fprintf( stderr, "Dest: %08X Count: %08X Ctl: %08X\n", long_read(PVR_DMA_DEST),9.117 + long_read(PVR_DMA_COUNT), long_read(PVR_DMA_CTL) );9.118 + dmac_dump_channel(stderr, 2);9.119 + long_write( PVR_DMA_CTL, 0 );9.120 + }9.121 +9.122 + CHECK_IEQUALS( 0, long_read(PVR_DMA_CTL) );9.123 + CHECK_IEQUALS( ((uint32_t)buf)+len, long_read(DMA_SAR(2)) );9.124 + CHECK_IEQUALS( 0, long_read(DMA_TCR(2)) );9.125 + CHECK_IEQUALS( 0x12C3, long_read(DMA_CHCR(2)) );9.126 + CHECK_IEQUALS( target, long_read(PVR_DMA_DEST) );9.127 + CHECK_IEQUALS( 0, long_read(PVR_DMA_COUNT) );9.128 + CHECK_IEQUALS( 0, long_read(PVR_DMA_REGION) );9.129 +9.130 + return result;9.131 +}
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000010.2 +++ b/test/ide.c Tue Jul 11 01:35:27 2006 +000010.3 @@ -0,0 +1,418 @@10.4 +#include <assert.h>10.5 +#include <stdlib.h>10.6 +#include "ide.h"10.7 +#include "lib.h"10.8 +10.9 +#define IDE_BASE 0xA05F700010.10 +10.11 +#define IDE_ALTSTATUS IDE_BASE+0x01810.12 +#define IDE_UNKNOWN IDE_BASE+0x01C10.13 +#define IDE_DATA IDE_BASE+0x080 /* 16 bits */10.14 +#define IDE_FEATURE IDE_BASE+0x08410.15 +#define IDE_COUNT IDE_BASE+0x08810.16 +#define IDE_LBA0 IDE_BASE+0x08C10.17 +#define IDE_LBA1 IDE_BASE+0x09010.18 +#define IDE_LBA2 IDE_BASE+0x09410.19 +#define IDE_DEVICE IDE_BASE+0x09810.20 +#define IDE_COMMAND IDE_BASE+0x09C10.21 +#define IDE_ACTIVATE IDE_BASE+0x4E410.22 +10.23 +#define IDE_DEVCONTROL IDE_ALTSTATUS10.24 +#define IDE_ERROR IDE_FEATURE10.25 +#define IDE_STATUS IDE_COMMAND10.26 +10.27 +#define IDE_DMA_ADDR IDE_BASE+0x40410.28 +#define IDE_DMA_SIZE IDE_BASE+0x40810.29 +#define IDE_DMA_DIR IDE_BASE+0x40C10.30 +#define IDE_DMA_CTL1 IDE_BASE+0x41410.31 +#define IDE_DMA_CTL2 IDE_BASE+0x41810.32 +#define IDE_DMA_MAGIC IDE_BASE+0x4B810.33 +#define IDE_DMA_STATUS IDE_BASE+0x4F810.34 +10.35 +#define DMA_BASE 0xFFA0000010.36 +#define DMA_SAR1 DMA_BASE+0x01010.37 +#define DMA_DAR1 DMA_BASE+0x01410.38 +#define DMA_TCR1 DMA_BASE+0x01810.39 +#define DMA_CHCR1 DMA_BASE+0x01C10.40 +#define DMA_SAR2 DMA_BASE+0x02010.41 +#define DMA_DAR2 DMA_BASE+0x02410.42 +#define DMA_TCR2 DMA_BASE+0x02810.43 +#define DMA_CHCR2 DMA_BASE+0x02C10.44 +#define DMA_SAR3 DMA_BASE+0x03010.45 +#define DMA_DAR3 DMA_BASE+0x03410.46 +#define DMA_TCR3 DMA_BASE+0x03810.47 +#define DMA_CHCR3 DMA_BASE+0x03C10.48 +#define DMA_DMAOR DMA_BASE+0x04010.49 +#define QUEUECR0 0xFF00003810.50 +#define QUEUECR1 0xFF00003C10.51 +10.52 +#define IDE_CMD_RESET 0x0810.53 +#define IDE_CMD_PACKET 0xA010.54 +#define IDE_CMD_IDENTIFY_PACKET_DEVICE 0xA110.55 +#define IDE_CMD_IDENTIFY_DEVICE 0xEC10.56 +10.57 +#define MMC_CMD_GET_CONFIGURATION 0x4610.58 +#define GD_CMD_IDENTIFY 0x11 /* guessing */10.59 +10.60 +10.61 +#define IDE_DMA_MAGIC_VALUE 0x8843407F10.62 +10.63 +10.64 +#define MAX_WAIT 1000000010.65 +#define MAX_IRQ_WAIT 100000000010.66 +10.67 +/**10.68 + * Dump all ide registers to stdout.10.69 + */10.70 +void ide_dump_registers() {10.71 + int i,j;10.72 + printf( "IDE registers:\n");10.73 + printf( "Stats: %02X ", byte_read(IDE_ALTSTATUS) );10.74 + printf( "Error: %02X ", byte_read(IDE_ERROR) );10.75 + printf( "Count: %02X ", byte_read(IDE_COUNT) );10.76 + printf( "Dvice: %02X ", byte_read(IDE_DEVICE) );10.77 + if( long_read(ASIC_STATUS1)&1 ) {10.78 + printf( "INTRQ! " );10.79 + }10.80 + if( (long_read(ASIC_STATUS0)>>14)&1 ) {10.81 + printf( "DMARQ! " );10.82 + }10.83 + printf( "\nLBA 0: %02X ", byte_read(IDE_LBA0) );10.84 + printf( "LBA 1: %02X ", byte_read(IDE_LBA1) );10.85 + printf( "LBA 2: %02X ", byte_read(IDE_LBA2) );10.86 + printf( "0x01C: %02X\n", byte_read(IDE_UNKNOWN) );10.87 + printf( "DAddr: %08X ", long_read(IDE_DMA_ADDR) );10.88 + printf( "DSize: %08X ", long_read(IDE_DMA_SIZE) );10.89 + printf( "DDir : %08X ", long_read(IDE_DMA_DIR) );10.90 + printf( "DCtl1: %08X ", long_read(IDE_DMA_CTL1) );10.91 + printf( "DCtl2: %08X\n", long_read(IDE_DMA_CTL2) );10.92 + printf( "DStat: %08X\n", long_read(IDE_DMA_STATUS) );10.93 + printf( "ASIC: " );10.94 + for( i=0; i<12; i+=4 ) {10.95 + unsigned int val = long_read(ASIC_STATUS0+i);10.96 + for( j=0; j<32; j++ ) {10.97 + if( val & (1<<j) ) {10.98 + printf( "%d ", j );10.99 + }10.100 + }10.101 + printf( "| " );10.102 + }10.103 + printf( "\n" );10.104 +}10.105 +10.106 +/**10.107 + * Wait for the IDE INTRQ line to go active (bit 0 of the second word)10.108 + * @return 0 on success, non-zero on timeout10.109 + */10.110 +int ide_wait_irq() {10.111 + unsigned int status;10.112 + int i;10.113 + for( i=0; i<MAX_WAIT; i++ ) {10.114 + status = long_read( ASIC_STATUS1 );10.115 + if( (status&1) != 0 )10.116 + return 0;10.117 + }10.118 + printf( "Timeout waiting for IDE INTRQ\n" );10.119 + ide_dump_registers();10.120 + return 1;10.121 +}10.122 +10.123 +/**10.124 + * Wait for the IDE BSY flag to be de-asserted.10.125 + * @return 0 on success, non-zero on timeout10.126 + */10.127 +int ide_wait_ready() {10.128 + unsigned char status;10.129 + int i;10.130 + for( i=0; i<MAX_WAIT; i++ ) {10.131 + status = byte_read(IDE_ALTSTATUS);10.132 + if( (status & 0x80) != 0x80 )10.133 + return 0;10.134 + }10.135 + printf( "Timeout waiting for IDE to become ready\n" );10.136 + ide_dump_registers();10.137 + return 1;10.138 +}10.139 +10.140 +int ide_wait_dma() {10.141 + unsigned int status;10.142 + int i;10.143 + for( i=0; i<MAX_WAIT; i++ ) {10.144 + status = long_read(IDE_DMA_CTL2);10.145 + if( (status & 1) == 0 )10.146 + return 0;10.147 + }10.148 + printf( "[IDE] Timeout waiting for DMA to become ready\n" );10.149 + return 1;10.150 +}10.151 +10.152 +/**10.153 + * Write the command packet out to the interface.10.154 + * @param cmd 12 byte ATAPI command packet10.155 + * @param dma 1 = dma mode, 0 = pio mode10.156 + */10.157 +int ide_write_command_packet( char *cmd, int dma )10.158 +{10.159 + int i, status;10.160 + unsigned short *spkt = (unsigned short *)cmd;10.161 + unsigned short length = 8;10.162 + if( ide_wait_ready() )10.163 + return 1;10.164 + byte_write( IDE_FEATURE, dma );10.165 + byte_write( IDE_COUNT, 0 );10.166 + byte_write( IDE_LBA0, 0 );10.167 + byte_write( IDE_LBA1, (length&0xFF) );10.168 + byte_write( IDE_LBA2, (length>>8)&0xFF );10.169 + byte_write( IDE_DEVICE, 0 );10.170 + byte_write( IDE_COMMAND, IDE_CMD_PACKET );10.171 + status = byte_read(IDE_ALTSTATUS); /* delay 1 PIO cycle as per spec */10.172 + printf( "After writing PACKET command byte:\n" );10.173 + ide_dump_registers();10.174 + /* Wait until device is ready to accept command */10.175 + if( ide_wait_ready() )10.176 + return 1;10.177 + printf( "Device ready to receive packet:\n" );10.178 + ide_dump_registers();10.179 +10.180 + /* Write the command */10.181 + for( i=0; i<6; i++ ) {10.182 + word_write( IDE_DATA, spkt[i] );10.183 + }10.184 + printf( "After writing command packet:\n" );10.185 + ide_dump_registers();10.186 +}10.187 +10.188 +int ide_read_pio( char *buf, int buflen ) {10.189 + int i;10.190 + unsigned short *bufptr = (unsigned short *)buf;10.191 + unsigned int length = 0, avail;10.192 + int status;10.193 +10.194 + while(1) {10.195 + if( ide_wait_ready() )10.196 + return -1;10.197 + status = byte_read( IDE_STATUS );10.198 + if( (status & 0xE9) == 0x48 ) {10.199 + /* Bytes available */10.200 + avail = (byte_read( IDE_LBA1 )) | (byte_read(IDE_LBA2)<<8);10.201 + for( i=0; i<avail; i+=2 ) {10.202 + if( buflen > 0 ) {10.203 + *bufptr++ = word_read(IDE_DATA);10.204 + buflen-=2;10.205 + }10.206 + }10.207 + length += avail;10.208 + if( avail == 0 ) {10.209 + /* Should never happen */10.210 + printf( "[IDE] Unexpected read length 0\n" );10.211 + return -1;10.212 + }10.213 + } else {10.214 + if( status&0x01 ) {10.215 + printf( "[IDE] ERROR! (%02X)\n", status );10.216 + } else if( (status&0x08) == 0 ) {10.217 + /* No more data */10.218 + return length;10.219 + } else {10.220 + printf( "[IDE] Unexpected status result: %02X\n", status );10.221 + return -1;10.222 + }10.223 + }10.224 + }10.225 +}10.226 +10.227 +int ide_read_dma( char *buf, int buflen )10.228 +{10.229 + int status;10.230 +10.231 + long_write( IDE_DMA_CTL1, 1 );10.232 + long_write( IDE_DMA_CTL2, 1 );10.233 +10.234 + printf( "Started DMA\n" );10.235 + ide_dump_registers();10.236 +10.237 + ide_wait_irq();10.238 + printf( "After IRQ\n" );10.239 + ide_dump_registers();10.240 + long_write( IDE_DMA_CTL1, 0 );10.241 + status = ide_wait_dma();10.242 + printf( "After DMA finished\n");10.243 + ide_dump_registers();10.244 + if( status != 0 ) {10.245 + return -1;10.246 + }10.247 + status = long_read(ASIC_STATUS0);10.248 + if( (status & (1<<14)) == 0 ) {10.249 + printf( "DMARQ cleared already\n");10.250 + } else {10.251 + /*10.252 + status &= ~(1<<14);10.253 + long_write(ASIC_STATUS0, status);10.254 + status = long_read(ASIC_STATUS0);10.255 + */10.256 + byte_read(IDE_STATUS );10.257 + if( (status & (1<<14)) == 0 ) {10.258 + printf( "DMARQ cleared successfully\n" );10.259 + } else {10.260 + printf( "DMARQ not cleared: %08X\n", long_read(ASIC_STATUS0) );10.261 + }10.262 + }10.263 + status = ide_wait_ready();10.264 + printf( "After IDE ready\n");10.265 + ide_dump_registers();10.266 + if( status != 0 ) {10.267 + return -1;10.268 + }10.269 + return long_read( IDE_DMA_STATUS );10.270 +}10.271 +10.272 +int ide_do_packet_command_pio( char *cmd, char *buf, int length )10.273 +{10.274 + ide_write_command_packet( cmd, 0 );10.275 + length = ide_read_pio( buf, length );10.276 + return length;10.277 +}10.278 +10.279 +int ide_do_packet_command_dma( char *cmd, char *buf, int length )10.280 +{10.281 + long_write( QUEUECR0, 0x10 );10.282 + long_write( QUEUECR1, 0x10 );10.283 + long_write( IDE_DMA_MAGIC, IDE_DMA_MAGIC_VALUE );10.284 + long_write( IDE_DMA_ADDR, (unsigned int)buf );10.285 + long_write( IDE_DMA_SIZE, length );10.286 + long_write( IDE_DMA_DIR, 1 );10.287 + ide_write_command_packet( cmd, 1 );10.288 + length = ide_read_dma( buf, length );10.289 + return length;10.290 +}10.291 +10.292 +int ide_init()10.293 +{10.294 + if( ide_wait_ready() )10.295 + return -1;10.296 +10.297 + /** Set Default PIO mode */10.298 + byte_write( IDE_FEATURE, 0x03 );10.299 + byte_write( IDE_COUNT, 0x0B );10.300 + byte_write( IDE_COMMAND, 0xEF );10.301 +10.302 + if( ide_wait_ready() )10.303 + return -1;10.304 +10.305 + /** Set Multi-word DMA mode 2 */10.306 + long_write( 0xA05F7490, 0x222 );10.307 + long_write( 0xA05F7494, 0x222 );10.308 + byte_write( IDE_FEATURE, 0x03 );10.309 + byte_write( IDE_COUNT, 0x22 );10.310 + byte_write( IDE_COMMAND, 0xEF );10.311 + if( ide_wait_ready() )10.312 + return -1;10.313 +10.314 + word_write( 0xA05F7480, 0x400 );10.315 + long_write( 0xA05F7488, 0x200 );10.316 + long_write( 0xA05F748C, 0x200 );10.317 + long_write( 0xA05F74A0, 0x2001 );10.318 + long_write( 0xA05F74A4, 0x2001 );10.319 + long_write( 0xA05F74B4, 0x0001 );10.320 +}10.321 +10.322 +int ide_sense_error( char *buf )10.323 +{10.324 + char cmd[12] = { 0x13,0,0,0, 10,0,0,0, 0,0,0,0 };10.325 + return ide_do_packet_command_pio( cmd, buf, 10 );10.326 +}10.327 +10.328 +void ide_print_sense_error()10.329 +{10.330 + char buf[10];10.331 + if( ide_sense_error(buf) != 10 ) {10.332 + printf( "ERROR - Sense error failed!\n" );10.333 + return;10.334 + }10.335 + int major = buf[2] & 0xFF;10.336 + int minor = buf[8] & 0xFF;10.337 + printf( "[IDE] Error code %02X,%02X\n", major, minor );10.338 +}10.339 +10.340 +int ide_test_ready()10.341 +{10.342 + char cmd[12] = { 0,0,0,0, 0,0,0,0, 0,0,0,0 };10.343 + int length = ide_do_packet_command_pio( cmd, NULL, 0 );10.344 + return length;10.345 +}10.346 +10.347 +int ide_read_toc( char *buf, int length )10.348 +{10.349 + char cmd[12] = { 0x14,0,0,0, 0x98,0,0,0, 0,0,0,0 };10.350 + return ide_do_packet_command_pio( cmd, buf, length );10.351 +}10.352 +10.353 +int ide_get_session( int session, struct gdrom_session *session_data )10.354 +{10.355 + char cmd[12] = {0x15, 0, session, 0, 6,0,0,0, 0,0,0,0 };10.356 + char buf[6];10.357 + int length = ide_do_packet_command_pio( cmd, buf, sizeof(buf) );10.358 + if( length < 0 )10.359 + return length;10.360 + if( length != 6 )10.361 + return -1;10.362 + assert(length == 6);10.363 + session_data->track = ((int)buf[2])&0xFF;10.364 + session_data->lba = (((int)buf[3])&0xFF) << 16 |10.365 + (((int)buf[4])&0xFF) << 8 |10.366 + (((int)buf[5])&0xFF);10.367 + return 0;10.368 +}10.369 +10.370 +int ide_spinup( )10.371 +{10.372 + char cmd[12] = {0x70,0x1F,0,0, 0,0,0,0, 0,0,0,0};10.373 + int length = ide_do_packet_command_pio( cmd, NULL, 0 );10.374 + return length;10.375 +}10.376 +10.377 +int ide_unknown71( char *buf, int length )10.378 +{10.379 + char cmd[12] = {0x71,0,0,0, 0,0,0,0, 0,0,0,0};10.380 + return ide_do_packet_command_pio( cmd, buf, length );10.381 +}10.382 +10.383 +int ide_read_sector_pio( uint32_t sector, uint32_t count, int mode,10.384 + char *buf, int length )10.385 +{10.386 + char cmd[12] = { 0x30,0,0,0, 0,0,0,0, 0,0,0,0 };10.387 +10.388 + cmd[1] = mode;10.389 + cmd[2] = (sector>>16)&0xFF;10.390 + cmd[3] = (sector>>8)&0xFF;10.391 + cmd[4] = sector&0xFF;10.392 + cmd[8] = (count>>16)&0xFF;10.393 + cmd[9] = (count>>8)&0xFF;10.394 + cmd[10] = count&0xFF;10.395 + return ide_do_packet_command_pio( cmd, buf, length );10.396 +}10.397 +10.398 +10.399 +int ide_read_sector_dma( uint32_t sector, uint32_t count, int mode,10.400 + char *buf, int length )10.401 +{10.402 + char cmd[12] = { 0x30,0,0,0, 0,0,0,0, 0,0,0,0 };10.403 +10.404 + cmd[1] = mode;10.405 + cmd[2] = (sector>>16)&0xFF;10.406 + cmd[3] = (sector>>8)&0xFF;10.407 + cmd[4] = sector&0xFF;10.408 + cmd[8] = (count>>16)&0xFF;10.409 + cmd[9] = (count>>8)&0xFF;10.410 + cmd[10] = count&0xFF;10.411 + return ide_do_packet_command_dma( cmd, buf, length );10.412 +}10.413 +10.414 +int ide_read_something( )10.415 +{10.416 + char cmd[12] = { 0x12,0,0,0, 0x0a,0,0,0, 0,0,0,0 };10.417 + char result[10];10.418 + ide_do_packet_command_pio( cmd, result, 10 );10.419 + debug_dump_buffer(result,10);10.420 + return 0;10.421 +}10.422 \ No newline at end of file
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000011.2 +++ b/test/ide.h Tue Jul 11 01:35:27 2006 +000011.3 @@ -0,0 +1,37 @@11.4 +11.5 +struct gdrom_session {11.6 + int track;11.7 + unsigned int lba;11.8 +};11.9 +11.10 +struct gdrom_track {11.11 + int mode;11.12 + unsigned int lba;11.13 +};11.14 +11.15 +struct gdrom_toc {11.16 + struct gdrom_track track[99];11.17 + unsigned int first_lba;11.18 + unsigned int last_lba;11.19 + unsigned int leadout_lba;11.20 +};11.21 +11.22 +int ide_init();11.23 +11.24 +int ide_test_ready();11.25 +11.26 +int ide_sense_error( char *buf );11.27 +11.28 +/**11.29 + * Retrieve session information. If session == 0, returns the11.30 + * end-of-disc information instead.11.31 + */11.32 +int ide_get_session( int session, struct gdrom_session *session_data );11.33 +11.34 +/**11.35 + * Read 1 or more sectors in PIO mode11.36 + */11.37 +int ide_read_sector_pio( unsigned int sector, unsigned int count, int mode,11.38 + char *buf, int length );11.39 +int ide_read_sector_dma( unsigned int sector, unsigned int count, int mode,11.40 + char *buf, int length );
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000012.2 +++ b/test/include/_ansi.h Tue Jul 11 01:35:27 2006 +000012.3 @@ -0,0 +1,71 @@12.4 +/* Provide support for both ANSI and non-ANSI environments. */12.5 +12.6 +/* Some ANSI environments are "broken" in the sense that __STDC__ cannot be12.7 + relied upon to have it's intended meaning. Therefore we must use our own12.8 + concoction: _HAVE_STDC. Always use _HAVE_STDC instead of __STDC__ in newlib12.9 + sources!12.10 +12.11 + To get a strict ANSI C environment, define macro __STRICT_ANSI__. This will12.12 + "comment out" the non-ANSI parts of the ANSI header files (non-ANSI header12.13 + files aren't affected). */12.14 +12.15 +#ifndef _ANSIDECL_H_12.16 +#define _ANSIDECL_H_12.17 +12.18 +#include <sys/config.h>12.19 +12.20 +/* First try to figure out whether we really are in an ANSI C environment. */12.21 +/* FIXME: This probably needs some work. Perhaps sys/config.h can be12.22 + prevailed upon to give us a clue. */12.23 +12.24 +#ifdef __STDC__12.25 +#define _HAVE_STDC12.26 +#endif12.27 +12.28 +#ifdef _HAVE_STDC12.29 +#define _PTR void *12.30 +#define _AND ,12.31 +#define _NOARGS void12.32 +#define _CONST const12.33 +#define _VOLATILE volatile12.34 +#define _SIGNED signed12.35 +#define _DOTS , ...12.36 +#define _VOID void12.37 +#define _EXFUN(name, proto) name proto12.38 +#define _DEFUN(name, arglist, args) name(args)12.39 +#define _DEFUN_VOID(name) name(_NOARGS)12.40 +#define _CAST_VOID (void)12.41 +#ifndef _LONG_DOUBLE12.42 +#define _LONG_DOUBLE long double12.43 +#endif12.44 +#ifndef _PARAMS12.45 +#define _PARAMS(paramlist) paramlist12.46 +#endif12.47 +#else12.48 +#define _PTR char *12.49 +#define _AND ;12.50 +#define _NOARGS12.51 +#define _CONST12.52 +#define _VOLATILE12.53 +#define _SIGNED12.54 +#define _DOTS12.55 +#define _VOID void12.56 +#define _EXFUN(name, proto) name()12.57 +#define _DEFUN(name, arglist, args) name arglist args;12.58 +#define _DEFUN_VOID(name) name()12.59 +#define _CAST_VOID12.60 +#define _LONG_DOUBLE double12.61 +#ifndef _PARAMS12.62 +#define _PARAMS(paramlist) ()12.63 +#endif12.64 +#endif12.65 +12.66 +/* Support gcc's __attribute__ facility. */12.67 +12.68 +#ifdef __GNUC__12.69 +#define _ATTRIBUTE(attrs) __attribute__ (attrs)12.70 +#else12.71 +#define _ATTRIBUTE(attrs)12.72 +#endif12.73 +12.74 +#endif /* _ANSIDECL_H_ */
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000013.2 +++ b/test/include/_syslist.h Tue Jul 11 01:35:27 2006 +000013.3 @@ -0,0 +1,29 @@13.4 +/* internal use only -- mapping of "system calls" for libraries that lose13.5 + and only provide C names, so that we end up in violation of ANSI */13.6 +#ifndef __SYSLIST_H13.7 +#define __SYSLIST_H13.8 +#ifdef MISSING_SYSCALL_NAMES13.9 +#define _close close13.10 +#define _execve execve13.11 +#define _fcntl fcntl13.12 +#define _fork fork13.13 +#define _fstat fstat13.14 +#define _getpid getpid13.15 +#define _gettimeofday gettimeofday13.16 +#define _kill kill13.17 +#define _link link13.18 +#define _lseek lseek13.19 +#define _open open13.20 +#define _read read13.21 +#define _sbrk sbrk13.22 +#define _stat stat13.23 +#define _times times13.24 +#define _unlink unlink13.25 +#define _wait wait13.26 +#define _write write13.27 +/* functions not yet sysfaked */13.28 +#define _opendir opendir13.29 +#define _readdir readdir13.30 +#define _closedir closedir13.31 +#endif13.32 +#endif
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000014.2 +++ b/test/include/ar.h Tue Jul 11 01:35:27 2006 +000014.3 @@ -0,0 +1,69 @@14.4 +/* $NetBSD: ar.h,v 1.4 1994/10/26 00:55:43 cgd Exp $ */14.5 +14.6 +/*-14.7 + * Copyright (c) 1991, 199314.8 + * The Regents of the University of California. All rights reserved.14.9 + * (c) UNIX System Laboratories, Inc.14.10 + * All or some portions of this file are derived from material licensed14.11 + * to the University of California by American Telephone and Telegraph14.12 + * Co. or Unix System Laboratories, Inc. and are reproduced herein with14.13 + * the permission of UNIX System Laboratories, Inc.14.14 + *14.15 + * This code is derived from software contributed to Berkeley by14.16 + * Hugh Smith at The University of Guelph.14.17 + *14.18 + * Redistribution and use in source and binary forms, with or without14.19 + * modification, are permitted provided that the following conditions14.20 + * are met:14.21 + * 1. Redistributions of source code must retain the above copyright14.22 + * notice, this list of conditions and the following disclaimer.14.23 + * 2. Redistributions in binary form must reproduce the above copyright14.24 + * notice, this list of conditions and the following disclaimer in the14.25 + * documentation and/or other materials provided with the distribution.14.26 + * 3. All advertising materials mentioning features or use of this software14.27 + * must display the following acknowledgement:14.28 + * This product includes software developed by the University of14.29 + * California, Berkeley and its contributors.14.30 + * 4. Neither the name of the University nor the names of its contributors14.31 + * may be used to endorse or promote products derived from this software14.32 + * without specific prior written permission.14.33 + *14.34 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND14.35 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE14.36 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE14.37 + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE14.38 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL14.39 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS14.40 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)14.41 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT14.42 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY14.43 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF14.44 + * SUCH DAMAGE.14.45 + *14.46 + * @(#)ar.h 8.2 (Berkeley) 1/21/9414.47 + */14.48 +14.49 +#ifndef _AR_H_14.50 +#define _AR_H_14.51 +14.52 +/* Pre-4BSD archives had these magic numbers in them. */14.53 +#define OARMAG1 017755514.54 +#define OARMAG2 017754514.55 +14.56 +#define ARMAG "!<arch>\n" /* ar "magic number" */14.57 +#define SARMAG 8 /* strlen(ARMAG); */14.58 +14.59 +#define AR_EFMT1 "#1/" /* extended format #1 */14.60 +14.61 +struct ar_hdr {14.62 + char ar_name[16]; /* name */14.63 + char ar_date[12]; /* modification time */14.64 + char ar_uid[6]; /* user id */14.65 + char ar_gid[6]; /* group id */14.66 + char ar_mode[8]; /* octal file permissions */14.67 + char ar_size[10]; /* size in bytes */14.68 +#define ARFMAG "`\n"14.69 + char ar_fmag[2]; /* consistency check */14.70 +};14.71 +14.72 +#endif /* !_AR_H_ */
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000015.2 +++ b/test/include/assert.h Tue Jul 11 01:35:27 2006 +000015.3 @@ -0,0 +1,29 @@15.4 +/*15.5 + assert.h15.6 +*/15.7 +15.8 +#ifdef __cplusplus15.9 +extern "C" {15.10 +#endif15.11 +15.12 +#include "_ansi.h"15.13 +15.14 +#undef assert15.15 +15.16 +#ifdef NDEBUG /* required by ANSI standard */15.17 +#define assert(p) ((void)0)15.18 +#else15.19 +15.20 +#ifdef __STDC__15.21 +#define assert(e) ((e) ? (void)0 : __assert(__FILE__, __LINE__, #e))15.22 +#else /* PCC */15.23 +#define assert(e) ((e) ? (void)0 : __assert(__FILE__, __LINE__, "e"))15.24 +#endif15.25 +15.26 +#endif /* NDEBUG */15.27 +15.28 +void _EXFUN(__assert,(const char *, int, const char *));15.29 +15.30 +#ifdef __cplusplus15.31 +}15.32 +#endif
16.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000016.2 +++ b/test/include/ctype.h Tue Jul 11 01:35:27 2006 +000016.3 @@ -0,0 +1,73 @@16.4 +#ifndef _CTYPE_H_16.5 +#ifdef __cplusplus16.6 +extern "C" {16.7 +#endif16.8 +#define _CTYPE_H_16.9 +16.10 +#include "_ansi.h"16.11 +16.12 +int _EXFUN(isalnum, (int __c));16.13 +int _EXFUN(isalpha, (int __c));16.14 +int _EXFUN(iscntrl, (int __c));16.15 +int _EXFUN(isdigit, (int __c));16.16 +int _EXFUN(isgraph, (int __c));16.17 +int _EXFUN(islower, (int __c));16.18 +int _EXFUN(isprint, (int __c));16.19 +int _EXFUN(ispunct, (int __c));16.20 +int _EXFUN(isspace, (int __c));16.21 +int _EXFUN(isupper, (int __c));16.22 +int _EXFUN(isxdigit,(int __c));16.23 +int _EXFUN(tolower, (int __c));16.24 +int _EXFUN(toupper, (int __c));16.25 +16.26 +#ifndef __STRICT_ANSI__16.27 +int _EXFUN(isascii, (int __c));16.28 +int _EXFUN(toascii, (int __c));16.29 +int _EXFUN(_tolower, (int __c));16.30 +int _EXFUN(_toupper, (int __c));16.31 +#endif16.32 +16.33 +#define _U 0116.34 +#define _L 0216.35 +#define _N 0416.36 +#define _S 01016.37 +#define _P 02016.38 +#define _C 04016.39 +#define _X 010016.40 +#define _B 020016.41 +16.42 +#if !defined(__CYGWIN32__) || defined(__INSIDE_CYGWIN__) || defined(_COMPILING_NEWLIB)16.43 +extern _CONST char _ctype_[];16.44 +#else16.45 +extern _CONST char _ctype_[] __declspec(dllimport);16.46 +#endif16.47 +16.48 +#define isalpha(c) ((_ctype_+1)[(unsigned)(c)]&(_U|_L))16.49 +#define isupper(c) ((_ctype_+1)[(unsigned)(c)]&_U)16.50 +#define islower(c) ((_ctype_+1)[(unsigned)(c)]&_L)16.51 +#define isdigit(c) ((_ctype_+1)[(unsigned)(c)]&_N)16.52 +#define isxdigit(c) ((_ctype_+1)[(unsigned)(c)]&(_X|_N))16.53 +#define isspace(c) ((_ctype_+1)[(unsigned)(c)]&_S)16.54 +#define ispunct(c) ((_ctype_+1)[(unsigned)(c)]&_P)16.55 +#define isalnum(c) ((_ctype_+1)[(unsigned)(c)]&(_U|_L|_N))16.56 +#define isprint(c) ((_ctype_+1)[(unsigned)(c)]&(_P|_U|_L|_N|_B))16.57 +#define isgraph(c) ((_ctype_+1)[(unsigned)(c)]&(_P|_U|_L|_N))16.58 +#define iscntrl(c) ((_ctype_+1)[(unsigned)(c)]&_C)16.59 +/* Non-gcc versions will get the library versions, and will be16.60 + slightly slower */16.61 +#ifdef __GNUC__16.62 +# define toupper(c) \16.63 + ({ int __x = (c); islower(__x) ? (__x - 'a' + 'A') : __x;})16.64 +# define tolower(c) \16.65 + ({ int __x = (c); isupper(__x) ? (__x - 'A' + 'a') : __x;})16.66 +#endif16.67 +16.68 +#ifndef __STRICT_ANSI__16.69 +#define isascii(c) ((unsigned)(c)<=0177)16.70 +#define toascii(c) ((c)&0177)16.71 +#endif16.72 +16.73 +#ifdef __cplusplus16.74 +}16.75 +#endif16.76 +#endif /* _CTYPE_H_ */
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000017.2 +++ b/test/include/dirent.h Tue Jul 11 01:35:27 2006 +000017.3 @@ -0,0 +1,7 @@17.4 +#ifdef __cplusplus17.5 +extern "C" {17.6 +#endif17.7 +#include <sys/dirent.h>17.8 +#ifdef __cplusplus17.9 +}17.10 +#endif
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000018.2 +++ b/test/include/errno.h Tue Jul 11 01:35:27 2006 +000018.3 @@ -0,0 +1,1 @@18.4 +#include <sys/errno.h>
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000019.2 +++ b/test/include/fastmath.h Tue Jul 11 01:35:27 2006 +000019.3 @@ -0,0 +1,13 @@19.4 +#ifndef _FASTMATH_H_19.5 +#ifdef __cplusplus19.6 +extern "C" {19.7 +#endif19.8 +#define _FASTMATH_H_19.9 +19.10 +#include <math.h>19.11 +#include <machine/fastmath.h>19.12 +19.13 +#ifdef __cplusplus19.14 +}19.15 +#endif19.16 +#endif /* _FASTMATH_H_ */
20.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000020.2 +++ b/test/include/fcntl.h Tue Jul 11 01:35:27 2006 +000020.3 @@ -0,0 +1,1 @@20.4 +#include <sys/fcntl.h>
21.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000021.2 +++ b/test/include/grp.h Tue Jul 11 01:35:27 2006 +000021.3 @@ -0,0 +1,85 @@21.4 +/* $NetBSD: grp.h,v 1.7 1995/04/29 05:30:40 cgd Exp $ */21.5 +21.6 +/*-21.7 + * Copyright (c) 1989, 199321.8 + * The Regents of the University of California. All rights reserved.21.9 + * (c) UNIX System Laboratories, Inc.21.10 + * All or some portions of this file are derived from material licensed21.11 + * to the University of California by American Telephone and Telegraph21.12 + * Co. or Unix System Laboratories, Inc. and are reproduced herein with21.13 + * the permission of UNIX System Laboratories, Inc.21.14 + *21.15 + * Redistribution and use in source and binary forms, with or without21.16 + * modification, are permitted provided that the following conditions21.17 + * are met:21.18 + * 1. Redistributions of source code must retain the above copyright21.19 + * notice, this list of conditions and the following disclaimer.21.20 + * 2. Redistributions in binary form must reproduce the above copyright21.21 + * notice, this list of conditions and the following disclaimer in the21.22 + * documentation and/or other materials provided with the distribution.21.23 + * 3. All advertising materials mentioning features or use of this software21.24 + * must display the following acknowledgement:21.25 + * This product includes software developed by the University of21.26 + * California, Berkeley and its contributors.21.27 + * 4. Neither the name of the University nor the names of its contributors21.28 + * may be used to endorse or promote products derived from this software21.29 + * without specific prior written permission.21.30 + *21.31 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND21.32 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE21.33 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE21.34 + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE21.35 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL21.36 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS21.37 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)21.38 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT21.39 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY21.40 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF21.41 + * SUCH DAMAGE.21.42 + *21.43 + * @(#)grp.h 8.2 (Berkeley) 1/21/9421.44 + */21.45 +21.46 +#ifndef _GRP_H_21.47 +#define _GRP_H_21.48 +21.49 +#include <sys/types.h>21.50 +21.51 +#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE)21.52 +#define _PATH_GROUP "/etc/group"21.53 +#endif21.54 +21.55 +struct group {21.56 + char *gr_name; /* group name */21.57 + char *gr_passwd; /* group password */21.58 + gid_t gr_gid; /* group id */21.59 + char **gr_mem; /* group members */21.60 +};21.61 +21.62 +21.63 +#ifdef __cplusplus21.64 +extern "C" {21.65 +#endif21.66 +21.67 +struct group *getgrgid (gid_t);21.68 +struct group *getgrnam (const char *);21.69 +int getgrnam_r (const char *, struct group *,21.70 + char *, size_t, struct group **);21.71 +int getgrgid_r (gid_t, struct group *,21.72 + char *, size_t, struct group **);21.73 +#ifndef _POSIX_SOURCE21.74 +struct group *getgrent (void);21.75 +void setgrent (void);21.76 +void endgrent (void);21.77 +void setgrfile (const char *);21.78 +#ifndef _XOPEN_SOURCE21.79 +char *group_from_gid (gid_t, int);21.80 +int setgroupent (int);21.81 +#endif /* !_XOPEN_SOURCE */21.82 +#endif /* !_POSIX_SOURCE */21.83 +21.84 +#ifdef __cplusplus21.85 +}21.86 +#endif21.87 +21.88 +#endif /* !_GRP_H_ */
22.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000022.2 +++ b/test/include/ieeefp.h Tue Jul 11 01:35:27 2006 +000022.3 @@ -0,0 +1,241 @@22.4 +#ifndef _IEEE_FP_H_22.5 +#define _IEEE_FP_H_22.6 +22.7 +#include "_ansi.h"22.8 +22.9 +#include <machine/ieeefp.h>22.10 +22.11 +/* FIXME FIXME FIXME:22.12 + Neither of __ieee_{float,double}_shape_tape seem to be used anywhere22.13 + except in libm/test. If that is the case, please delete these from here.22.14 + If that is not the case, please insert documentation here describing why22.15 + they're needed. */22.16 +22.17 +#ifdef __IEEE_BIG_ENDIAN22.18 +22.19 +typedef union22.20 +{22.21 + double value;22.22 + struct22.23 + {22.24 + unsigned int sign : 1;22.25 + unsigned int exponent: 11;22.26 + unsigned int fraction0:4;22.27 + unsigned int fraction1:16;22.28 + unsigned int fraction2:16;22.29 + unsigned int fraction3:16;22.30 +22.31 + } number;22.32 + struct22.33 + {22.34 + unsigned int sign : 1;22.35 + unsigned int exponent: 11;22.36 + unsigned int quiet:1;22.37 + unsigned int function0:3;22.38 + unsigned int function1:16;22.39 + unsigned int function2:16;22.40 + unsigned int function3:16;22.41 + } nan;22.42 + struct22.43 + {22.44 + unsigned long msw;22.45 + unsigned long lsw;22.46 + } parts;22.47 + long aslong[2];22.48 +} __ieee_double_shape_type;22.49 +22.50 +#endif22.51 +22.52 +#ifdef __IEEE_LITTLE_ENDIAN22.53 +22.54 +typedef union22.55 +{22.56 + double value;22.57 + struct22.58 + {22.59 +#ifdef __SMALL_BITFIELDS22.60 + unsigned int fraction3:16;22.61 + unsigned int fraction2:16;22.62 + unsigned int fraction1:16;22.63 + unsigned int fraction0: 4;22.64 +#else22.65 + unsigned int fraction1:32;22.66 + unsigned int fraction0:20;22.67 +#endif22.68 + unsigned int exponent :11;22.69 + unsigned int sign : 1;22.70 + } number;22.71 + struct22.72 + {22.73 +#ifdef __SMALL_BITFIELDS22.74 + unsigned int function3:16;22.75 + unsigned int function2:16;22.76 + unsigned int function1:16;22.77 + unsigned int function0:3;22.78 +#else22.79 + unsigned int function1:32;22.80 + unsigned int function0:19;22.81 +#endif22.82 + unsigned int quiet:1;22.83 + unsigned int exponent: 11;22.84 + unsigned int sign : 1;22.85 + } nan;22.86 + struct22.87 + {22.88 + unsigned long lsw;22.89 + unsigned long msw;22.90 + } parts;22.91 +22.92 + long aslong[2];22.93 +22.94 +} __ieee_double_shape_type;22.95 +22.96 +#endif22.97 +22.98 +#ifdef __IEEE_BIG_ENDIAN22.99 +22.100 +typedef union22.101 +{22.102 + float value;22.103 + struct22.104 + {22.105 + unsigned int sign : 1;22.106 + unsigned int exponent: 8;22.107 + unsigned int fraction0: 7;22.108 + unsigned int fraction1: 16;22.109 + } number;22.110 + struct22.111 + {22.112 + unsigned int sign:1;22.113 + unsigned int exponent:8;22.114 + unsigned int quiet:1;22.115 + unsigned int function0:6;22.116 + unsigned int function1:16;22.117 + } nan;22.118 + long p1;22.119 +22.120 +} __ieee_float_shape_type;22.121 +22.122 +#endif22.123 +22.124 +#ifdef __IEEE_LITTLE_ENDIAN22.125 +22.126 +typedef union22.127 +{22.128 + float value;22.129 + struct22.130 + {22.131 + unsigned int fraction0: 7;22.132 + unsigned int fraction1: 16;22.133 + unsigned int exponent: 8;22.134 + unsigned int sign : 1;22.135 + } number;22.136 + struct22.137 + {22.138 + unsigned int function1:16;22.139 + unsigned int function0:6;22.140 + unsigned int quiet:1;22.141 + unsigned int exponent:8;22.142 + unsigned int sign:1;22.143 + } nan;22.144 + long p1;22.145 +22.146 +} __ieee_float_shape_type;22.147 +22.148 +#endif22.149 +22.150 +22.151 +22.152 +22.153 +22.154 +/* FLOATING ROUNDING */22.155 +22.156 +typedef int fp_rnd;22.157 +#define FP_RN 0 /* Round to nearest */22.158 +#define FP_RM 1 /* Round down */22.159 +#define FP_RP 2 /* Round up */22.160 +#define FP_RZ 3 /* Round to zero (trunate) */22.161 +22.162 +fp_rnd _EXFUN(fpgetround,(void));22.163 +fp_rnd _EXFUN(fpsetround, (fp_rnd));22.164 +22.165 +/* EXCEPTIONS */22.166 +22.167 +typedef int fp_except;22.168 +#define FP_X_INV 0x10 /* Invalid operation */22.169 +#define FP_X_DX 0x80 /* Divide by zero */22.170 +#define FP_X_OFL 0x04 /* Overflow exception */22.171 +#define FP_X_UFL 0x02 /* Underflow exception */22.172 +#define FP_X_IMP 0x01 /* imprecise exception */22.173 +22.174 +fp_except _EXFUN(fpgetmask,(void));22.175 +fp_except _EXFUN(fpsetmask,(fp_except));22.176 +fp_except _EXFUN(fpgetsticky,(void));22.177 +fp_except _EXFUN(fpsetsticky, (fp_except));22.178 +22.179 +/* INTEGER ROUNDING */22.180 +22.181 +typedef int fp_rdi;22.182 +#define FP_RDI_TOZ 0 /* Round to Zero */22.183 +#define FP_RDI_RD 1 /* Follow float mode */22.184 +22.185 +fp_rdi _EXFUN(fpgetroundtoi,(void));22.186 +fp_rdi _EXFUN(fpsetroundtoi,(fp_rdi));22.187 +22.188 +int _EXFUN(isnan, (double));22.189 +int _EXFUN(isinf, (double));22.190 +int _EXFUN(finite, (double));22.191 +22.192 +22.193 +22.194 +int _EXFUN(isnanf, (float));22.195 +int _EXFUN(isinff, (float));22.196 +int _EXFUN(finitef, (float));22.197 +22.198 +#define __IEEE_DBL_EXPBIAS 102322.199 +#define __IEEE_FLT_EXPBIAS 12722.200 +22.201 +#define __IEEE_DBL_EXPLEN 1122.202 +#define __IEEE_FLT_EXPLEN 822.203 +22.204 +22.205 +#define __IEEE_DBL_FRACLEN (64 - (__IEEE_DBL_EXPLEN + 1))22.206 +#define __IEEE_FLT_FRACLEN (32 - (__IEEE_FLT_EXPLEN + 1))22.207 +22.208 +#define __IEEE_DBL_MAXPOWTWO ((double)(1L << 32 - 2) * (1L << (32-11) - 32 + 1))22.209 +#define __IEEE_FLT_MAXPOWTWO ((float)(1L << (32-8) - 1))22.210 +22.211 +#define __IEEE_DBL_NAN_EXP 0x7ff22.212 +#define __IEEE_FLT_NAN_EXP 0xff22.213 +22.214 +22.215 +#define isnanf(x) (((*(long *)&(x) & 0x7f800000L)==0x7f800000L) && \22.216 + ((*(long *)&(x) & 0x007fffffL)!=0000000000L))22.217 +22.218 +#define isinff(x) (((*(long *)&(x) & 0x7f800000L)==0x7f800000L) && \22.219 + ((*(long *)&(x) & 0x007fffffL)==0000000000L))22.220 +22.221 +#define finitef(x) (((*(long *)&(x) & 0x7f800000L)!=0x7f800000L))22.222 +22.223 +#ifdef _DOUBLE_IS_32BITS22.224 +#undef __IEEE_DBL_EXPBIAS22.225 +#define __IEEE_DBL_EXPBIAS __IEEE_FLT_EXPBIAS22.226 +22.227 +#undef __IEEE_DBL_EXPLEN22.228 +#define __IEEE_DBL_EXPLEN __IEEE_FLT_EXPLEN22.229 +22.230 +#undef __IEEE_DBL_FRACLEN22.231 +#define __IEEE_DBL_FRACLEN __IEEE_FLT_FRACLEN22.232 +22.233 +#undef __IEEE_DBL_MAXPOWTWO22.234 +#define __IEEE_DBL_MAXPOWTWO __IEEE_FLT_MAXPOWTWO22.235 +22.236 +#undef __IEEE_DBL_NAN_EXP22.237 +#define __IEEE_DBL_NAN_EXP __IEEE_FLT_NAN_EXP22.238 +22.239 +#undef __ieee_double_shape_type22.240 +#define __ieee_double_shape_type __ieee_float_shape_type22.241 +22.242 +#endif /* _DOUBLE_IS_32BITS */22.243 +22.244 +#endif /* _IEEE_FP_H_ */
23.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000023.2 +++ b/test/include/locale.h Tue Jul 11 01:35:27 2006 +000023.3 @@ -0,0 +1,60 @@23.4 +/*23.5 + locale.h23.6 + Values appropriate for the formatting of monetary and other23.7 + numberic quantities.23.8 +*/23.9 +23.10 +#ifndef _LOCALE_H_23.11 +#ifdef __cplusplus23.12 +extern "C" {23.13 +#endif23.14 +#define _LOCALE_H_23.15 +23.16 +#include "_ansi.h"23.17 +23.18 +#ifndef NULL23.19 +#define NULL 0L23.20 +#endif23.21 +23.22 +#define LC_ALL 023.23 +#define LC_COLLATE 123.24 +#define LC_CTYPE 223.25 +#define LC_MONETARY 323.26 +#define LC_NUMERIC 423.27 +#define LC_TIME 523.28 +23.29 +struct lconv23.30 +{23.31 + char *decimal_point;23.32 + char *thousands_sep;23.33 + char *grouping;23.34 + char *int_curr_symbol;23.35 + char *currency_symbol;23.36 + char *mon_decimal_point;23.37 + char *mon_thousands_sep;23.38 + char *mon_grouping;23.39 + char *positive_sign;23.40 + char *negative_sign;23.41 + char int_frac_digits;23.42 + char frac_digits;23.43 + char p_cs_precedes;23.44 + char p_sep_by_space;23.45 + char n_cs_precedes;23.46 + char n_sep_by_space;23.47 + char p_sign_posn;23.48 + char n_sign_posn;23.49 +};23.50 +23.51 +#ifndef _REENT_ONLY23.52 +char *_EXFUN(setlocale,(int category, const char *locale));23.53 +struct lconv *_EXFUN(localeconv,(void));23.54 +#endif23.55 +23.56 +struct _reent;23.57 +char *_EXFUN(_setlocale_r,(struct _reent *, int category, const char *locale));23.58 +struct lconv *_EXFUN(_localeconv_r,(struct _reent *));23.59 +23.60 +#ifdef __cplusplus23.61 +}23.62 +#endif23.63 +#endif /* _LOCALE_H_ */
24.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000024.2 +++ b/test/include/machine/fastmath.h Tue Jul 11 01:35:27 2006 +000024.3 @@ -0,0 +1,100 @@24.4 +#ifdef __sysvnecv70_target24.5 +double EXFUN(fast_sin,(double));24.6 +double EXFUN(fast_cos,(double));24.7 +double EXFUN(fast_tan,(double));24.8 +24.9 +double EXFUN(fast_asin,(double));24.10 +double EXFUN(fast_acos,(double));24.11 +double EXFUN(fast_atan,(double));24.12 +24.13 +double EXFUN(fast_sinh,(double));24.14 +double EXFUN(fast_cosh,(double));24.15 +double EXFUN(fast_tanh,(double));24.16 +24.17 +double EXFUN(fast_asinh,(double));24.18 +double EXFUN(fast_acosh,(double));24.19 +double EXFUN(fast_atanh,(double));24.20 +24.21 +double EXFUN(fast_abs,(double));24.22 +double EXFUN(fast_sqrt,(double));24.23 +double EXFUN(fast_exp2,(double));24.24 +double EXFUN(fast_exp10,(double));24.25 +double EXFUN(fast_expe,(double));24.26 +double EXFUN(fast_log10,(double));24.27 +double EXFUN(fast_log2,(double));24.28 +double EXFUN(fast_loge,(double));24.29 +24.30 +24.31 +#define sin(x) fast_sin(x)24.32 +#define cos(x) fast_cos(x)24.33 +#define tan(x) fast_tan(x)24.34 +#define asin(x) fast_asin(x)24.35 +#define acos(x) fast_acos(x)24.36 +#define atan(x) fast_atan(x)24.37 +#define sinh(x) fast_sinh(x)24.38 +#define cosh(x) fast_cosh(x)24.39 +#define tanh(x) fast_tanh(x)24.40 +#define asinh(x) fast_asinh(x)24.41 +#define acosh(x) fast_acosh(x)24.42 +#define atanh(x) fast_atanh(x)24.43 +#define abs(x) fast_abs(x)24.44 +#define sqrt(x) fast_sqrt(x)24.45 +#define exp2(x) fast_exp2(x)24.46 +#define exp10(x) fast_exp10(x)24.47 +#define expe(x) fast_expe(x)24.48 +#define log10(x) fast_log10(x)24.49 +#define log2(x) fast_log2(x)24.50 +#define loge(x) fast_loge(x)24.51 +24.52 +#ifdef _HAVE_STDC24.53 +/* These functions are in assembler, they really do take floats. This24.54 + can only be used with a real ANSI compiler */24.55 +24.56 +float EXFUN(fast_sinf,(float));24.57 +float EXFUN(fast_cosf,(float));24.58 +float EXFUN(fast_tanf,(float));24.59 +24.60 +float EXFUN(fast_asinf,(float));24.61 +float EXFUN(fast_acosf,(float));24.62 +float EXFUN(fast_atanf,(float));24.63 +24.64 +float EXFUN(fast_sinhf,(float));24.65 +float EXFUN(fast_coshf,(float));24.66 +float EXFUN(fast_tanhf,(float));24.67 +24.68 +float EXFUN(fast_asinhf,(float));24.69 +float EXFUN(fast_acoshf,(float));24.70 +float EXFUN(fast_atanhf,(float));24.71 +24.72 +float EXFUN(fast_absf,(float));24.73 +float EXFUN(fast_sqrtf,(float));24.74 +float EXFUN(fast_exp2f,(float));24.75 +float EXFUN(fast_exp10f,(float));24.76 +float EXFUN(fast_expef,(float));24.77 +float EXFUN(fast_log10f,(float));24.78 +float EXFUN(fast_log2f,(float));24.79 +float EXFUN(fast_logef,(float));24.80 +#define sinf(x) fast_sinf(x)24.81 +#define cosf(x) fast_cosf(x)24.82 +#define tanf(x) fast_tanf(x)24.83 +#define asinf(x) fast_asinf(x)24.84 +#define acosf(x) fast_acosf(x)24.85 +#define atanf(x) fast_atanf(x)24.86 +#define sinhf(x) fast_sinhf(x)24.87 +#define coshf(x) fast_coshf(x)24.88 +#define tanhf(x) fast_tanhf(x)24.89 +#define asinhf(x) fast_asinhf(x)24.90 +#define acoshf(x) fast_acoshf(x)24.91 +#define atanhf(x) fast_atanhf(x)24.92 +#define absf(x) fast_absf(x)24.93 +#define sqrtf(x) fast_sqrtf(x)24.94 +#define exp2f(x) fast_exp2f(x)24.95 +#define exp10f(x) fast_exp10f(x)24.96 +#define expef(x) fast_expef(x)24.97 +#define log10f(x) fast_log10f(x)24.98 +#define log2f(x) fast_log2f(x)24.99 +#define logef(x) fast_logef(x)24.100 +#endif24.101 +/* Override the functions defined in math.h */24.102 +#endif /* __sysvnecv70_target */24.103 +
25.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000025.2 +++ b/test/include/machine/ieeefp.h Tue Jul 11 01:35:27 2006 +000025.3 @@ -0,0 +1,157 @@25.4 +#ifndef __IEEE_BIG_ENDIAN25.5 +#ifndef __IEEE_LITTLE_ENDIAN25.6 +25.7 +#if defined(__arm__) || defined(__thumb__)25.8 +/* ARM always has big-endian words. Within those words the byte ordering25.9 + appears to be big or little endian. Newlib doesn't seem to care about25.10 + the byte ordering within words. */25.11 +#define __IEEE_BIG_ENDIAN25.12 +#endif25.13 +25.14 +#ifdef __hppa__25.15 +#define __IEEE_BIG_ENDIAN25.16 +#endif25.17 +25.18 +#ifdef __sparc__25.19 +#ifdef __LITTLE_ENDIAN_DATA__25.20 +#define __IEEE_LITTLE_ENDIAN25.21 +#else25.22 +#define __IEEE_BIG_ENDIAN25.23 +#endif25.24 +#endif25.25 +25.26 +#if defined(__m68k__) || defined(__mc68000__)25.27 +#define __IEEE_BIG_ENDIAN25.28 +#endif25.29 +25.30 +#if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__)25.31 +#define __IEEE_BIG_ENDIAN25.32 +#define __SMALL_BITFIELDS25.33 +#define _DOUBLE_IS_32BITS25.34 +#endif25.35 +25.36 +#ifdef __H8500__25.37 +#define __IEEE_BIG_ENDIAN25.38 +#define __SMALL_BITFIELDS25.39 +#define _DOUBLE_IS_32BITS25.40 +#endif25.41 +25.42 +#ifdef __sh__25.43 +#ifdef __LITTLE_ENDIAN__25.44 +#define __IEEE_LITTLE_ENDIAN25.45 +#else25.46 +#define __IEEE_BIG_ENDIAN25.47 +#endif25.48 +#if defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__)25.49 +#define _DOUBLE_IS_32BITS25.50 +#endif25.51 +#endif25.52 +25.53 +#ifdef _AM29K25.54 +#define __IEEE_BIG_ENDIAN25.55 +#endif25.56 +25.57 +#ifdef _WIN3225.58 +#define __IEEE_LITTLE_ENDIAN25.59 +#endif25.60 +25.61 +#ifdef __i386__25.62 +#define __IEEE_LITTLE_ENDIAN25.63 +#endif25.64 +25.65 +#ifdef __i960__25.66 +#define __IEEE_LITTLE_ENDIAN25.67 +#endif25.68 +25.69 +#ifdef __M32R__25.70 +#define __IEEE_BIG_ENDIAN25.71 +#endif25.72 +25.73 +#ifdef __TIC80__25.74 +#define __IEEE_LITTLE_ENDIAN25.75 +#endif25.76 +25.77 +#ifdef __MIPSEL__25.78 +#define __IEEE_LITTLE_ENDIAN25.79 +#endif25.80 +#ifdef __MIPSEB__25.81 +#define __IEEE_BIG_ENDIAN25.82 +#endif25.83 +25.84 +/* necv70 was __IEEE_LITTLE_ENDIAN. */25.85 +25.86 +#ifdef __W65__25.87 +#define __IEEE_LITTLE_ENDIAN25.88 +#define __SMALL_BITFIELDS25.89 +#define _DOUBLE_IS_32BITS25.90 +#endif25.91 +25.92 +#if defined(__Z8001__) || defined(__Z8002__)25.93 +#define __IEEE_BIG_ENDIAN25.94 +#endif25.95 +25.96 +#ifdef __m88k__25.97 +#define __IEEE_BIG_ENDIAN25.98 +#endif25.99 +25.100 +#ifdef __mn10300__25.101 +#define __IEEE_LITTLE_ENDIAN25.102 +#endif25.103 +25.104 +#ifdef __mn10200__25.105 +#define __IEEE_LITTLE_ENDIAN25.106 +#define __SMALL_BITFIELDS25.107 +#define _DOUBLE_IS_32BITS25.108 +#endif25.109 +25.110 +#ifdef __v80025.111 +#define __IEEE_LITTLE_ENDIAN25.112 +#endif25.113 +25.114 +#ifdef __v85025.115 +#define __IEEE_LITTLE_ENDIAN25.116 +#endif25.117 +25.118 +#ifdef __D10V__25.119 +#define __IEEE_BIG_ENDIAN25.120 +#define _DOUBLE_IS_32BITS25.121 +#define __SMALL_BITFIELDS25.122 +#endif25.123 +25.124 +#ifdef __PPC__25.125 +#if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX)25.126 +#define __IEEE_BIG_ENDIAN25.127 +#else25.128 +#if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32)25.129 +#define __IEEE_LITTLE_ENDIAN25.130 +#endif25.131 +#endif25.132 +#endif25.133 +25.134 +#ifdef __arc__25.135 +#ifdef __big_endian__25.136 +#define __IEEE_BIG_ENDIAN25.137 +#else25.138 +#define __IEEE_LITTLE_ENDIAN25.139 +#endif25.140 +#endif25.141 +25.142 +#ifdef __fr30__25.143 +#define __IEEE_BIG_ENDIAN25.144 +#endif25.145 +25.146 +#ifdef __mcore__25.147 +#define __IEEE_BIG_ENDIAN25.148 +#endif25.149 +25.150 +25.151 +25.152 +#ifndef __IEEE_BIG_ENDIAN25.153 +#ifndef __IEEE_LITTLE_ENDIAN25.154 +#error Endianess not declared!!25.155 +#endif /* not __IEEE_LITTLE_ENDIAN */25.156 +#endif /* not __IEEE_BIG_ENDIAN */25.157 +25.158 +#endif /* not __IEEE_LITTLE_ENDIAN */25.159 +#endif /* not __IEEE_BIG_ENDIAN */25.160 +
26.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000026.2 +++ b/test/include/machine/setjmp-dj.h Tue Jul 11 01:35:27 2006 +000026.3 @@ -0,0 +1,44 @@26.4 +/*26.5 +** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-295426.6 +**26.7 +** This file is distributed under the terms listed in the document26.8 +** "copying.dj", available from DJ Delorie at the address above.26.9 +** A copy of "copying.dj" should accompany this file; if not, a copy26.10 +** should be available from where this file was obtained. This file26.11 +** may not be distributed without a verbatim copy of "copying.dj".26.12 +**26.13 +** This file is distributed WITHOUT ANY WARRANTY; without even the implied26.14 +** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.26.15 +*/26.16 +26.17 +/* Modified to use SETJMP_DJ_H rather than SETJMP_H to avoid26.18 + conflicting with setjmp.h. Ian Taylor, Cygnus support, April,26.19 + 1993. */26.20 +26.21 +#ifndef _SETJMP_DJ_H_26.22 +#define _SETJMP_DJ_H_26.23 +26.24 +#ifdef __cplusplus26.25 +extern "C" {26.26 +#endif26.27 +26.28 +typedef struct {26.29 + unsigned long eax;26.30 + unsigned long ebx;26.31 + unsigned long ecx;26.32 + unsigned long edx;26.33 + unsigned long esi;26.34 + unsigned long edi;26.35 + unsigned long ebp;26.36 + unsigned long esp;26.37 + unsigned long eip;26.38 +} jmp_buf[1];26.39 +26.40 +extern int setjmp(jmp_buf);26.41 +extern void longjmp(jmp_buf, int);26.42 +26.43 +#ifdef __cplusplus26.44 +}26.45 +#endif26.46 +26.47 +#endif
27.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000027.2 +++ b/test/include/machine/setjmp.h Tue Jul 11 01:35:27 2006 +000027.3 @@ -0,0 +1,168 @@27.4 +#if defined(__arm__) || defined(__thumb__)27.5 +/*27.6 + * All callee preserved registers:27.7 + * v1 - v7, fp, ip, sp, lr, f4, f5, f6, f727.8 + */27.9 +#define _JBLEN 2327.10 +#endif27.11 +27.12 +#ifdef __sparc__27.13 +/*27.14 + * onsstack,sigmask,sp,pc,npc,psr,g1,o0,wbcnt (sigcontext).27.15 + * All else recovered by under/over(flow) handling.27.16 + */27.17 +#define _JBLEN 1327.18 +#endif27.19 +27.20 +/* necv70 was 9 as well. */27.21 +27.22 +#ifdef __mc68000__27.23 +/*27.24 + * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6,27.25 + * fp2-fp7 for 68881.27.26 + * All else recovered by under/over(flow) handling.27.27 + */27.28 +#define _JBLEN 3427.29 +#endif27.30 +27.31 +#if defined(__Z8001__) || defined(__Z8002__)27.32 +/* 16 regs + pc */27.33 +#define _JBLEN 2027.34 +#endif27.35 +27.36 +#ifdef _AM29K27.37 +/*27.38 + * onsstack,sigmask,sp,pc,npc,psr,g1,o0,wbcnt (sigcontext).27.39 + * All else recovered by under/over(flow) handling.27.40 + */27.41 +#define _JBLEN 927.42 +#endif27.43 +27.44 +#if defined(__CYGWIN__) && !defined (_JBLEN)27.45 +#define _JBLEN (13 * 4)27.46 +#elif defined (__i386__)27.47 +#ifdef __unix__27.48 +# define _JBLEN 3627.49 +#else27.50 +#include "setjmp-dj.h"27.51 +#endif27.52 +#endif27.53 +27.54 +#ifdef __i960__27.55 +#define _JBLEN 3527.56 +#endif27.57 +27.58 +#ifdef __M32R__27.59 +/* Only 8 words are currently needed. 10 gives us some slop if we need27.60 + to expand. */27.61 +#define _JBLEN 1027.62 +#endif27.63 +27.64 +#ifdef __mips__27.65 +#define _JBLEN 1127.66 +#endif27.67 +27.68 +#ifdef __m88000__27.69 +#define _JBLEN 2127.70 +#endif27.71 +27.72 +#ifdef __H8300__27.73 +#define _JBLEN 527.74 +typedef int jmp_buf[_JBLEN];27.75 +#endif27.76 +27.77 +#ifdef __H8300H__27.78 +/* same as H8/300 but registers are twice as big */27.79 +#define _JBLEN 527.80 +#define _JBTYPE long27.81 +#endif27.82 +27.83 +#ifdef __H8300S__27.84 +/* same as H8/300 but registers are twice as big */27.85 +#define _JBLEN 527.86 +#define _JBTYPE long27.87 +#endif27.88 +27.89 +#ifdef __H8500__27.90 +#define _JBLEN 427.91 +#endif27.92 +27.93 +#ifdef __sh__27.94 +#define _JBLEN 2027.95 +#endif27.96 +27.97 +#ifdef __v80027.98 +#define _JBLEN 2827.99 +#endif27.100 +27.101 +#ifdef __PPC__27.102 +#define _JBLEN 3227.103 +#define _JBTYPE double27.104 +#endif27.105 +27.106 +#ifdef __hppa__27.107 +/* %r30, %r2-%r18, %r27, pad, %fr12-%fr15.27.108 + Note space exists for the FP registers, but they are not27.109 + saved. */27.110 +#define _JBLEN 2827.111 +#endif27.112 +27.113 +#if defined(__mn10300__) || defined(__mn10200__)27.114 +/* A guess */27.115 +#define _JBLEN 1027.116 +#endif27.117 +27.118 +#ifdef __v85027.119 +/* I think our setjmp is saving 15 regs at the moment. Gives us one word27.120 + slop if we need to expand. */27.121 +#define _JBLEN 1627.122 +#endif27.123 +27.124 +#ifdef __TIC80__27.125 +#define _JBLEN 1327.126 +#endif27.127 +27.128 +#ifdef __D10V__27.129 +#define _JBLEN 827.130 +#endif27.131 +27.132 +#ifdef __D30V__27.133 +#define _JBLEN ((64 /* GPR */ + (2*2) /* ACs */ + 18 /* CRs */) / 2)27.134 +#define _JBTYPE double27.135 +#endif27.136 +27.137 +27.138 +#ifdef __fr30__27.139 +#define _JBLEN 1027.140 +#endif27.141 +27.142 +#ifdef __mcore__27.143 +#define _JBLEN 1627.144 +#endif27.145 +27.146 +#ifdef _JBLEN27.147 +#ifdef _JBTYPE27.148 +typedef _JBTYPE jmp_buf[_JBLEN];27.149 +#else27.150 +typedef int jmp_buf[_JBLEN];27.151 +#endif27.152 +27.153 +#if defined(__CYGWIN32__) || defined(__rtems__)27.154 +#include <signal.h>27.155 +27.156 +/* POSIX sigsetjmp/siglongjmp macros */27.157 +typedef int sigjmp_buf[_JBLEN+2];27.158 +27.159 +#define _SAVEMASK _JBLEN27.160 +#define _SIGMASK (_JBLEN+1)27.161 +27.162 +#define sigsetjmp(env, savemask) (env[_SAVEMASK] = savemask,\27.163 + sigprocmask (SIG_SETMASK, 0, (sigset_t *) &env[_SIGMASK]),\27.164 + setjmp (env))27.165 +27.166 +#define siglongjmp(env, val) (((env[_SAVEMASK])?\27.167 + sigprocmask (SIG_SETMASK, (sigset_t *) &env[_SIGMASK], 0):0),\27.168 + longjmp (env, val))27.169 +27.170 +#endif /* __CYGWIN32__ or __rtems__ */27.171 +#endif
28.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000028.2 +++ b/test/include/machine/time.h Tue Jul 11 01:35:27 2006 +000028.3 @@ -0,0 +1,10 @@28.4 +#ifndef _MACHTIME_H_28.5 +#define _MACHTIME_H_28.6 +28.7 +#if defined(__arm__) || defined(__thumb__)28.8 +#define _CLOCKS_PER_SEC_ 10028.9 +#endif28.10 +28.11 +#endif /* _MACHTIME_H_ */28.12 +28.13 +
29.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000029.2 +++ b/test/include/machine/types.h Tue Jul 11 01:35:27 2006 +000029.3 @@ -0,0 +1,9 @@29.4 +#ifndef _MACHTYPES_H_29.5 +#define _MACHTYPES_H_29.6 +29.7 +#define _CLOCK_T_ unsigned long /* clock() */29.8 +#define _TIME_T_ long /* time() */29.9 +29.10 +#endif /* _MACHTYPES_H_ */29.11 +29.12 +
30.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000030.2 +++ b/test/include/malloc.h Tue Jul 11 01:35:27 2006 +000030.3 @@ -0,0 +1,97 @@30.4 +/* malloc.h -- header file for memory routines. */30.5 +30.6 +#ifndef _INCLUDE_MALLOC_H_30.7 +#define _INCLUDE_MALLOC_H_30.8 +30.9 +#include <_ansi.h>30.10 +#include <sys/reent.h>30.11 +30.12 +#define __need_size_t30.13 +#include <stddef.h>30.14 +30.15 +#ifdef __cplusplus30.16 +extern "C" {30.17 +#endif30.18 +30.19 +/* This version of struct mallinfo must match the one in30.20 + libc/stdlib/mallocr.c. */30.21 +30.22 +struct mallinfo {30.23 + int arena; /* total space allocated from system */30.24 + int ordblks; /* number of non-inuse chunks */30.25 + int smblks; /* unused -- always zero */30.26 + int hblks; /* number of mmapped regions */30.27 + int hblkhd; /* total space in mmapped regions */30.28 + int usmblks; /* unused -- always zero */30.29 + int fsmblks; /* unused -- always zero */30.30 + int uordblks; /* total allocated space */30.31 + int fordblks; /* total non-inuse space */30.32 + int keepcost; /* top-most, releasable (via malloc_trim) space */30.33 +};30.34 +30.35 +/* The routines. */30.36 +30.37 +extern _PTR malloc _PARAMS ((size_t));30.38 +extern _PTR _malloc_r _PARAMS ((struct _reent *, size_t));30.39 +30.40 +extern _VOID free _PARAMS ((_PTR));30.41 +extern _VOID _free_r _PARAMS ((struct _reent *, _PTR));30.42 +30.43 +extern _PTR realloc _PARAMS ((_PTR, size_t));30.44 +extern _PTR _realloc_r _PARAMS ((struct _reent *, _PTR, size_t));30.45 +30.46 +extern _PTR calloc _PARAMS ((size_t, size_t));30.47 +extern _PTR _calloc_r _PARAMS ((struct _reent *, size_t, size_t));30.48 +30.49 +extern _PTR memalign _PARAMS ((size_t, size_t));30.50 +extern _PTR _memalign_r _PARAMS ((struct _reent *, size_t, size_t));30.51 +30.52 +extern struct mallinfo mallinfo _PARAMS ((void));30.53 +extern struct mallinfo _mallinfo_r _PARAMS ((struct _reent *));30.54 +30.55 +extern void malloc_stats _PARAMS ((void));30.56 +extern void _malloc_stats_r _PARAMS ((struct _reent *));30.57 +30.58 +extern int mallopt _PARAMS ((int, int));30.59 +extern int _mallopt_r _PARAMS ((struct _reent *, int, int));30.60 +30.61 +extern size_t malloc_usable_size _PARAMS ((_PTR));30.62 +extern size_t _malloc_usable_size_r _PARAMS ((struct _reent *, _PTR));30.63 +30.64 +/* These aren't too useful on an embedded system, but we define them30.65 + anyhow. */30.66 +30.67 +extern _PTR valloc _PARAMS ((size_t));30.68 +extern _PTR _valloc_r _PARAMS ((struct _reent *, size_t));30.69 +30.70 +extern _PTR pvalloc _PARAMS ((size_t));30.71 +extern _PTR _pvalloc_r _PARAMS ((struct _reent *, size_t));30.72 +30.73 +extern int malloc_trim _PARAMS ((size_t));30.74 +extern int _malloc_trim_r _PARAMS ((struct _reent *, size_t));30.75 +30.76 +/* Some systems provide this, so do too for compatibility. */30.77 +30.78 +extern void cfree _PARAMS ((_PTR));30.79 +30.80 +/* A compatibility routine for an earlier version of the allocator. */30.81 +30.82 +extern _VOID mstats _PARAMS ((char *));30.83 +extern _VOID _mstats_r _PARAMS ((struct _reent *, char *));30.84 +30.85 +#ifdef __CYGWIN32__30.86 +30.87 +/* Cygwin32 needs to be able to copy all the malloc information from30.88 + the parent to the child. However, cygwin32 does not normally copy30.89 + any data in the DLL data section. This routine handles copying30.90 + that information. */30.91 +30.92 +extern int __malloc_copy _PARAMS ((int (*) (void *, void *, void *, int),30.93 + void *, int));30.94 +#endif /* __CYGWIN32 */30.95 +30.96 +#ifdef __cplusplus30.97 +}30.98 +#endif30.99 +30.100 +#endif /* _INCLUDE_MALLOC_H_ */
31.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000031.2 +++ b/test/include/math.h Tue Jul 11 01:35:27 2006 +000031.3 @@ -0,0 +1,273 @@31.4 +/* math.h -- Definitions for the math floating point package. */31.5 +31.6 +#ifndef _MATH_H_31.7 +#ifdef __cplusplus31.8 +extern "C" {31.9 +#endif31.10 +#define _MATH_H_31.11 +31.12 +#include <sys/reent.h>31.13 +#include <machine/ieeefp.h>31.14 +#include "_ansi.h"31.15 +31.16 +#ifndef HUGE_VAL31.17 +31.18 +/* Define HUGE_VAL as infinity, unless HUGE_VAL is already defined31.19 + (which might have been done by something like math-68881.h). */31.20 +31.21 +union __dmath31.22 +{31.23 + __uint32_t i[2];31.24 + double d;31.25 +};31.26 +31.27 +extern const union __dmath __infinity;31.28 +31.29 +#define HUGE_VAL (__infinity.d)31.30 +31.31 +#endif /* ! defined (HUGE_VAL) */31.32 +31.33 +/* Reentrant ANSI C functions. */31.34 +31.35 +#ifndef __math_6888131.36 +extern double atan _PARAMS((double));31.37 +extern double cos _PARAMS((double));31.38 +extern double sin _PARAMS((double));31.39 +extern double tan _PARAMS((double));31.40 +extern double tanh _PARAMS((double));31.41 +extern double frexp _PARAMS((double, int *));31.42 +extern double modf _PARAMS((double, double *));31.43 +extern double ceil _PARAMS((double));31.44 +extern double fabs _PARAMS((double));31.45 +extern double floor _PARAMS((double));31.46 +#endif /* ! defined (__math_68881) */31.47 +31.48 +/* Non reentrant ANSI C functions. */31.49 +31.50 +#ifndef _REENT_ONLY31.51 +#ifndef __math_688131.52 +extern double acos _PARAMS((double));31.53 +extern double asin _PARAMS((double));31.54 +extern double atan2 _PARAMS((double, double));31.55 +extern double cosh _PARAMS((double));31.56 +extern double sinh _PARAMS((double));31.57 +extern double exp _PARAMS((double));31.58 +extern double ldexp _PARAMS((double, int));31.59 +extern double log _PARAMS((double));31.60 +extern double log10 _PARAMS((double));31.61 +extern double pow _PARAMS((double, double));31.62 +extern double sqrt _PARAMS((double));31.63 +extern double fmod _PARAMS((double, double));31.64 +#endif /* ! defined (__math_68881) */31.65 +#endif /* ! defined (_REENT_ONLY) */31.66 +31.67 +#ifndef __STRICT_ANSI__31.68 +31.69 +/* Non ANSI double precision functions. */31.70 +31.71 +extern double infinity _PARAMS((void));31.72 +extern double nan _PARAMS((void));31.73 +extern int isnan _PARAMS((double));31.74 +extern int isinf _PARAMS((double));31.75 +extern int finite _PARAMS((double));31.76 +extern double copysign _PARAMS((double, double));31.77 +extern int ilogb _PARAMS((double));31.78 +31.79 +extern double asinh _PARAMS((double));31.80 +extern double cbrt _PARAMS((double));31.81 +extern double nextafter _PARAMS((double, double));31.82 +extern double rint _PARAMS((double));31.83 +extern double scalbn _PARAMS((double, int));31.84 +31.85 +#ifndef __math_6888131.86 +extern double log1p _PARAMS((double));31.87 +extern double expm1 _PARAMS((double));31.88 +#endif /* ! defined (__math_68881) */31.89 +31.90 +#ifndef _REENT_ONLY31.91 +extern double acosh _PARAMS((double));31.92 +extern double atanh _PARAMS((double));31.93 +extern double remainder _PARAMS((double, double));31.94 +extern double gamma _PARAMS((double));31.95 +extern double gamma_r _PARAMS((double, int *));31.96 +extern double lgamma _PARAMS((double));31.97 +extern double lgamma_r _PARAMS((double, int *));31.98 +extern double erf _PARAMS((double));31.99 +extern double erfc _PARAMS((double));31.100 +extern double y0 _PARAMS((double));31.101 +extern double y1 _PARAMS((double));31.102 +extern double yn _PARAMS((int, double));31.103 +extern double j0 _PARAMS((double));31.104 +extern double j1 _PARAMS((double));31.105 +extern double jn _PARAMS((int, double));31.106 +#define log2(x) (log (x) / M_LOG2_E)31.107 +31.108 +#ifndef __math_6888131.109 +extern double hypot _PARAMS((double, double));31.110 +#endif31.111 +31.112 +extern double cabs();31.113 +extern double drem _PARAMS((double, double));31.114 +31.115 +#endif /* ! defined (_REENT_ONLY) */31.116 +31.117 +/* Single precision versions of ANSI functions. */31.118 +31.119 +extern float atanf _PARAMS((float));31.120 +extern float cosf _PARAMS((float));31.121 +extern float sinf _PARAMS((float));31.122 +extern float tanf _PARAMS((float));31.123 +extern float tanhf _PARAMS((float));31.124 +extern float frexpf _PARAMS((float, int *));31.125 +extern float modff _PARAMS((float, float *));31.126 +extern float ceilf _PARAMS((float));31.127 +extern float fabsf _PARAMS((float));31.128 +extern float floorf _PARAMS((float));31.129 +31.130 +#ifndef _REENT_ONLY31.131 +extern float acosf _PARAMS((float));31.132 +extern float asinf _PARAMS((float));31.133 +extern float atan2f _PARAMS((float, float));31.134 +extern float coshf _PARAMS((float));31.135 +extern float sinhf _PARAMS((float));31.136 +extern float expf _PARAMS((float));31.137 +extern float ldexpf _PARAMS((float, int));31.138 +extern float logf _PARAMS((float));31.139 +extern float log10f _PARAMS((float));31.140 +extern float powf _PARAMS((float, float));31.141 +extern float sqrtf _PARAMS((float));31.142 +extern float fmodf _PARAMS((float, float));31.143 +#endif /* ! defined (_REENT_ONLY) */31.144 +31.145 +/* Other single precision functions. */31.146 +31.147 +extern float infinityf _PARAMS((void));31.148 +extern float nanf _PARAMS((void));31.149 +extern int isnanf _PARAMS((float));31.150 +extern int isinff _PARAMS((float));31.151 +extern int finitef _PARAMS((float));31.152 +extern float copysignf _PARAMS((float, float));31.153 +extern int ilogbf _PARAMS((float));31.154 +31.155 +extern float asinhf _PARAMS((float));31.156 +extern float cbrtf _PARAMS((float));31.157 +extern float nextafterf _PARAMS((float, float));31.158 +extern float rintf _PARAMS((float));31.159 +extern float scalbnf _PARAMS((float, int));31.160 +extern float log1pf _PARAMS((float));31.161 +extern float expm1f _PARAMS((float));31.162 +31.163 +#ifndef _REENT_ONLY31.164 +extern float acoshf _PARAMS((float));31.165 +extern float atanhf _PARAMS((float));31.166 +extern float remainderf _PARAMS((float, float));31.167 +extern float gammaf _PARAMS((float));31.168 +extern float gammaf_r _PARAMS((float, int *));31.169 +extern float lgammaf _PARAMS((float));31.170 +extern float lgammaf_r _PARAMS((float, int *));31.171 +extern float erff _PARAMS((float));31.172 +extern float erfcf _PARAMS((float));31.173 +extern float y0f _PARAMS((float));31.174 +extern float y1f _PARAMS((float));31.175 +extern float ynf _PARAMS((int, float));31.176 +extern float j0f _PARAMS((float));31.177 +extern float j1f _PARAMS((float));31.178 +extern float jnf _PARAMS((int, float));31.179 +#define log2f(x) (logf (x) / (float) M_LOG2_E)31.180 +extern float hypotf _PARAMS((float, float));31.181 +31.182 +extern float cabsf();31.183 +extern float dremf _PARAMS((float, float));31.184 +31.185 +#endif /* ! defined (_REENT_ONLY) */31.186 +31.187 +/* The gamma functions use a global variable, signgam. */31.188 +31.189 +extern int signgam;31.190 +31.191 +/* The exception structure passed to the matherr routine. */31.192 +31.193 +#ifdef __cplusplus31.194 +struct __exception31.195 +#else31.196 +struct exception31.197 +#endif31.198 +{31.199 + int type;31.200 + char *name;31.201 + double arg1;31.202 + double arg2;31.203 + double retval;31.204 + int err;31.205 +};31.206 +31.207 +#ifdef __cplusplus31.208 +extern int matherr _PARAMS((struct __exception *e));31.209 +#else31.210 +extern int matherr _PARAMS((struct exception *e));31.211 +#endif31.212 +31.213 +/* Values for the type field of struct exception. */31.214 +31.215 +#define DOMAIN 131.216 +#define SING 231.217 +#define OVERFLOW 331.218 +#define UNDERFLOW 431.219 +#define TLOSS 531.220 +#define PLOSS 631.221 +31.222 +/* Useful constants. */31.223 +31.224 +#define M_E 2.718281828459045235431.225 +#define M_LOG2E 1.442695040888963407431.226 +#define M_LOG10E 0.4342944819032518276531.227 +#define M_LN2 0.6931471805599453094231.228 +#define M_LN10 2.3025850929940456840231.229 +#define M_PI 3.1415926535897932384631.230 +#define M_TWOPI (M_PI * 2.0)31.231 +#define M_PI_2 1.5707963267948966192331.232 +#define M_PI_4 0.7853981633974483096231.233 +#define M_3PI_4 2.3561944901923448370E031.234 +#define M_SQRTPI 1.7724538509055160279298131.235 +#define M_1_PI 0.3183098861837906715431.236 +#define M_2_PI 0.6366197723675813430831.237 +#define M_2_SQRTPI 1.1283791670955125739031.238 +#define M_SQRT2 1.4142135623730950488031.239 +#define M_SQRT1_2 0.7071067811865475244031.240 +#define M_LN2LO 1.9082149292705877000E-1031.241 +#define M_LN2HI 6.9314718036912381649E-131.242 +#define M_SQRT3 1.7320508075688771900031.243 +#define M_IVLN10 0.43429448190325182765 /* 1 / log(10) */31.244 +#define M_LOG2_E 0.69314718055994530941731.245 +#define M_INVLN2 1.4426950408889633870E0 /* 1 / log(2) */31.246 +31.247 +/* Global control over fdlibm error handling. */31.248 +31.249 +enum __fdlibm_version31.250 +{31.251 + __fdlibm_ieee = -1,31.252 + __fdlibm_svid,31.253 + __fdlibm_xopen,31.254 + __fdlibm_posix31.255 +};31.256 +31.257 +#define _LIB_VERSION_TYPE enum __fdlibm_version31.258 +#define _LIB_VERSION __fdlib_version31.259 +31.260 +extern _CONST _LIB_VERSION_TYPE _LIB_VERSION;31.261 +31.262 +#define _IEEE_ __fdlibm_ieee31.263 +#define _SVID_ __fdlibm_svid31.264 +#define _XOPEN_ __fdlibm_xopen31.265 +#define _POSIX_ __fdlibm_posix31.266 +31.267 +#endif /* ! defined (__STRICT_ANSI__) */31.268 +31.269 +#ifdef __FAST_MATH__31.270 +#include <machine/fastmath.h>31.271 +#endif31.272 +31.273 +#ifdef __cplusplus31.274 +}31.275 +#endif31.276 +#endif /* _MATH_H_ */
32.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000032.2 +++ b/test/include/paths.h Tue Jul 11 01:35:27 2006 +000032.3 @@ -0,0 +1,7 @@32.4 +#ifndef _PATHS_H_32.5 +#define _PATHS_H_32.6 +32.7 +#define _PATH_DEV "/dev/"32.8 +#define _PATH_BSHELL "/bin/sh"32.9 +32.10 +#endif /* _PATHS_H_ */
33.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000033.2 +++ b/test/include/process.h Tue Jul 11 01:35:27 2006 +000033.3 @@ -0,0 +1,60 @@33.4 +/* process.h. This file comes with MSDOS and WIN32 systems. */33.5 +33.6 +#ifndef __PROCESS_H_33.7 +#define __PROCESS_H_33.8 +33.9 +#ifdef __cplusplus33.10 +extern "C" {33.11 +#endif33.12 +33.13 +int execl(const char *path, const char *argv0, ...);33.14 +int execle(const char *path, const char *argv0, ... /*, char * const *envp */);33.15 +int execlp(const char *path, const char *argv0, ...);33.16 +int execlpe(const char *path, const char *argv0, ... /*, char * const *envp */);33.17 +33.18 +int execv(const char *path, char * const *argv);33.19 +int execve(const char *path, char * const *argv, char * const *envp);33.20 +int execvp(const char *path, char * const *argv);33.21 +int execvpe(const char *path, char * const *argv, char * const *envp);33.22 +33.23 +int spawnl(int mode, const char *path, const char *argv0, ...);33.24 +int spawnle(int mode, const char *path, const char *argv0, ... /*, char * const *envp */);33.25 +int spawnlp(int mode, const char *path, const char *argv0, ...);33.26 +int spawnlpe(int mode, const char *path, const char *argv0, ... /*, char * const *envp */);33.27 +33.28 +int spawnv(int mode, const char *path, const char * const *argv);33.29 +int spawnve(int mode, const char *path, char * const *argv, const char * const *envp);33.30 +int spawnvp(int mode, const char *path, const char * const *argv);33.31 +int spawnvpe(int mode, const char *path, const char * const *argv, const char * const *envp);33.32 +33.33 +#ifdef __CYGWIN32__33.34 +/* Secure exec() functions family */33.35 +/* The first arg should really be a HANDLE which is a void *. But we33.36 + can't include windows.h here so... */33.37 +#include <sys/types.h>33.38 +pid_t sexecl(void *, const char *path, const char *argv0, ...);33.39 +pid_t sexecle(void *, const char *path, const char *argv0, ... /*, char * const *envp */);33.40 +pid_t sexeclp(void *, const char *path, const char *argv0, ...);33.41 +pid_t sexeclpe(void *, const char *path, const char *argv0, ... /*, char * const *envp */);33.42 +33.43 +pid_t sexecv(void *, const char *path, const char * const *argv);33.44 +pid_t sexecve(void *, const char *path, const char * const *argv, const char * const *envp);33.45 +pid_t sexecvp(void *, const char *path, const char * const *argv);33.46 +pid_t sexecvpe(void *, const char *path, const char * const *argv, const char * const *envp);33.47 +#endif33.48 +33.49 +int cwait(int *, int, int);33.50 +33.51 +#define _P_WAIT 133.52 +#define _P_NOWAIT 2 /* always generates error */33.53 +#define _P_OVERLAY 333.54 +#define _P_NOWAITO 433.55 +#define _P_DETACH 533.56 +33.57 +#define WAIT_CHILD 133.58 +33.59 +#ifdef __cplusplus33.60 +}33.61 +#endif33.62 +33.63 +#endif
34.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000034.2 +++ b/test/include/pwd.h Tue Jul 11 01:35:27 2006 +000034.3 @@ -0,0 +1,76 @@34.4 +/*-34.5 + * Copyright (c) 1989 The Regents of the University of California.34.6 + * All rights reserved.34.7 + *34.8 + * Redistribution and use in source and binary forms, with or without34.9 + * modification, are permitted provided that the following conditions34.10 + * are met:34.11 + * 1. Redistributions of source code must retain the above copyright34.12 + * notice, this list of conditions and the following disclaimer.34.13 + * 2. Redistributions in binary form must reproduce the above copyright34.14 + * notice, this list of conditions and the following disclaimer in the34.15 + * documentation and/or other materials provided with the distribution.34.16 + * 3. All advertising materials mentioning features or use of this software34.17 + * must display the following acknowledgement:34.18 + * This product includes software developed by the University of34.19 + * California, Berkeley and its contributors.34.20 + * 4. Neither the name of the University nor the names of its contributors34.21 + * may be used to endorse or promote products derived from this software34.22 + * without specific prior written permission.34.23 + *34.24 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND34.25 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE34.26 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE34.27 + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE34.28 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL34.29 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS34.30 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)34.31 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT34.32 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY34.33 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF34.34 + * SUCH DAMAGE.34.35 + *34.36 + * @(#)pwd.h 5.13 (Berkeley) 5/28/9134.37 + */34.38 +34.39 +#ifndef _PWD_H_34.40 +#ifdef __cplusplus34.41 +extern "C" {34.42 +#endif34.43 +#define _PWD_H_34.44 +34.45 +#include <sys/types.h>34.46 +34.47 +#ifndef _POSIX_SOURCE34.48 +#define _PATH_PASSWD "/etc/passwd"34.49 +34.50 +#define _PASSWORD_LEN 128 /* max length, not counting NULL */34.51 +#endif34.52 +34.53 +struct passwd {34.54 + char *pw_name; /* user name */34.55 + char *pw_passwd; /* encrypted password */34.56 + int pw_uid; /* user uid */34.57 + int pw_gid; /* user gid */34.58 + char *pw_comment; /* comment */34.59 + char *pw_gecos; /* Honeywell login info */34.60 + char *pw_dir; /* home directory */34.61 + char *pw_shell; /* default shell */34.62 +};34.63 +34.64 +struct passwd *getpwuid (uid_t);34.65 +struct passwd *getpwnam (const char *);34.66 +int getpwnam_r (const char *, struct passwd *,34.67 + char *, size_t , struct passwd **);34.68 +int getpwuid_r (uid_t, struct passwd *, char *,34.69 + size_t, struct passwd **);34.70 +#ifndef _POSIX_SOURCE34.71 +struct passwd *getpwent (void);34.72 +void setpwent (void);34.73 +void endpwent (void);34.74 +#endif34.75 +34.76 +#ifdef __cplusplus34.77 +}34.78 +#endif34.79 +#endif /* _PWD_H_ */
35.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000035.2 +++ b/test/include/reent.h Tue Jul 11 01:35:27 2006 +000035.3 @@ -0,0 +1,87 @@35.4 +/* This header file provides the reentrancy. */35.5 +35.6 +/* The reentrant system calls here serve two purposes:35.7 +35.8 + 1) Provide reentrant versions of the system calls the ANSI C library35.9 + requires.35.10 + 2) Provide these system calls in a namespace clean way.35.11 +35.12 + It is intended that *all* system calls that the ANSI C library needs35.13 + be declared here. It documents them all in one place. All library access35.14 + to the system is via some form of these functions.35.15 +35.16 + There are three ways a target may provide the needed syscalls.35.17 +35.18 + 1) Define the reentrant versions of the syscalls directly.35.19 + (eg: _open_r, _close_r, etc.). Please keep the namespace clean.35.20 + When you do this, set "syscall_dir" to "syscalls" in configure.in,35.21 + and add -DREENTRANT_SYSCALLS_PROVIDED to target_cflags in configure.in.35.22 +35.23 + 2) Define namespace clean versions of the system calls by prefixing35.24 + them with '_' (eg: _open, _close, etc.). Technically, there won't be35.25 + true reentrancy at the syscall level, but the library will be namespace35.26 + clean.35.27 + When you do this, set "syscall_dir" to "syscalls" in configure.in.35.28 +35.29 + 3) Define or otherwise provide the regular versions of the syscalls35.30 + (eg: open, close, etc.). The library won't be reentrant nor namespace35.31 + clean, but at least it will work.35.32 + When you do this, add -DMISSING_SYSCALL_NAMES to target_cflags in35.33 + configure.in.35.34 +35.35 + Stubs of the reentrant versions of the syscalls exist in the libc/reent35.36 + source directory and are used if REENTRANT_SYSCALLS_PROVIDED isn't defined.35.37 + They use the native system calls: _open, _close, etc. if they're available35.38 + (MISSING_SYSCALL_NAMES is *not* defined), otherwise open, close, etc.35.39 + (MISSING_SYSCALL_NAMES *is* defined). */35.40 +35.41 +/* WARNING: All identifiers here must begin with an underscore. This file is35.42 + included by stdio.h and others and we therefore must only use identifiers35.43 + in the namespace allotted to us. */35.44 +35.45 +#ifndef _REENT_H_35.46 +#ifdef __cplusplus35.47 +extern "C" {35.48 +#endif35.49 +#define _REENT_H_35.50 +35.51 +#include <sys/reent.h>35.52 +#include <sys/_types.h>35.53 +#include <machine/types.h>35.54 +35.55 +#define __need_size_t35.56 +#include <stddef.h>35.57 +35.58 +/* FIXME: not namespace clean */35.59 +struct stat;35.60 +struct tms;35.61 +struct timeval;35.62 +struct timezone;35.63 +35.64 +/* Reentrant versions of system calls. */35.65 +35.66 +extern int _close_r _PARAMS ((struct _reent *, int));35.67 +extern int _execve_r _PARAMS ((struct _reent *, char *, char **, char **));35.68 +extern int _fcntl_r _PARAMS ((struct _reent *, int, int, int));35.69 +extern int _fork_r _PARAMS ((struct _reent *));35.70 +extern int _fstat_r _PARAMS ((struct _reent *, int, struct stat *));35.71 +extern int _getpid_r _PARAMS ((struct _reent *));35.72 +extern int _kill_r _PARAMS ((struct _reent *, int, int));35.73 +extern int _link_r _PARAMS ((struct _reent *, const char *, const char *));35.74 +extern _off_t _lseek_r _PARAMS ((struct _reent *, int, _off_t, int));35.75 +extern int _open_r _PARAMS ((struct _reent *, const char *, int, int));35.76 +extern _ssize_t _read_r _PARAMS ((struct _reent *, int, void *, size_t));35.77 +extern void *_sbrk_r _PARAMS ((struct _reent *, size_t));35.78 +extern int _stat_r _PARAMS ((struct _reent *, const char *, struct stat *));35.79 +extern _CLOCK_T_ _times_r _PARAMS ((struct _reent *, struct tms *));35.80 +extern int _unlink_r _PARAMS ((struct _reent *, const char *));35.81 +extern int _wait_r _PARAMS ((struct _reent *, int *));35.82 +extern _ssize_t _write_r _PARAMS ((struct _reent *, int, const void *, size_t));35.83 +35.84 +/* This one is not guaranteed to be available on all targets. */35.85 +extern int _gettimeofday_r _PARAMS ((struct _reent *, struct timeval *tp, struct timezone *tzp));35.86 +35.87 +#ifdef __cplusplus35.88 +}35.89 +#endif35.90 +#endif /* _REENT_H_ */
36.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000036.2 +++ b/test/include/regdef.h Tue Jul 11 01:35:27 2006 +000036.3 @@ -0,0 +1,7 @@36.4 +/* regdef.h -- define register names. */36.5 +36.6 +/* This is a standard include file for MIPS targets. Other target36.7 + probably don't define it, and attempts to include this file will36.8 + fail. */36.9 +36.10 +#include <machine/regdef.h>
37.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000037.2 +++ b/test/include/setjmp.h Tue Jul 11 01:35:27 2006 +000037.3 @@ -0,0 +1,22 @@37.4 +/*37.5 + setjmp.h37.6 + stubs for future use.37.7 +*/37.8 +37.9 +#ifndef _SETJMP_H_37.10 +#ifdef __cplusplus37.11 +extern "C" {37.12 +#endif37.13 +#define _SETJMP_H_37.14 +37.15 +#include "_ansi.h"37.16 +#include <machine/setjmp.h>37.17 +37.18 +void _EXFUN(longjmp,(jmp_buf __jmpb, int __retval));37.19 +int _EXFUN(setjmp,(jmp_buf __jmpb));37.20 +37.21 +#ifdef __cplusplus37.22 +}37.23 +#endif37.24 +#endif /* _SETJMP_H_ */37.25 +
38.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000038.2 +++ b/test/include/signal.h Tue Jul 11 01:35:27 2006 +000038.3 @@ -0,0 +1,37 @@38.4 +#ifndef _SIGNAL_H_38.5 +#ifdef __cplusplus38.6 +extern "C" {38.7 +#endif38.8 +#define _SIGNAL_H_38.9 +38.10 +#include "_ansi.h"38.11 +#include <sys/signal.h>38.12 +38.13 +typedef int sig_atomic_t; /* Atomic entity type (ANSI) */38.14 +38.15 +#if defined(__STDC__) || defined(__cplusplus)38.16 +#define SIG_DFL ((void (*)(int))0) /* Default action */38.17 +#define SIG_IGN ((void (*)(int))1) /* Ignore action */38.18 +#define SIG_ERR ((void (*)(int))-1) /* Error return */38.19 +#else38.20 +#define SIG_DFL ((void (*)())0) /* Default action */38.21 +#define SIG_IGN ((void (*)())1) /* Ignore action */38.22 +#define SIG_ERR ((void (*)())-1) /* Error return */38.23 +#endif38.24 +38.25 +typedef void (*_sig_func_ptr) (int);38.26 +38.27 +struct _reent;38.28 +38.29 +_sig_func_ptr _EXFUN(_signal_r, (struct _reent *, int, _sig_func_ptr));38.30 +int _EXFUN(_raise_r, (struct _reent *, int));38.31 +38.32 +#ifndef _REENT_ONLY38.33 +_sig_func_ptr _EXFUN(signal, (int, _sig_func_ptr));38.34 +int _EXFUN(raise, (int));38.35 +#endif38.36 +38.37 +#ifdef __cplusplus38.38 +}38.39 +#endif38.40 +#endif /* _SIGNAL_H_ */
39.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000039.2 +++ b/test/include/stdio.h Tue Jul 11 01:35:27 2006 +000039.3 @@ -0,0 +1,313 @@39.4 +/*39.5 + * Copyright (c) 1990 The Regents of the University of California.39.6 + * All rights reserved.39.7 + *39.8 + * Redistribution and use in source and binary forms are permitted39.9 + * provided that the above copyright notice and this paragraph are39.10 + * duplicated in all such forms and that any documentation,39.11 + * advertising materials, and other materials related to such39.12 + * distribution and use acknowledge that the software was developed39.13 + * by the University of California, Berkeley. The name of the39.14 + * University may not be used to endorse or promote products derived39.15 + * from this software without specific prior written permission.39.16 + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR39.17 + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED39.18 + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.39.19 + *39.20 + * @(#)stdio.h 5.3 (Berkeley) 3/15/8639.21 + */39.22 +39.23 +/*39.24 + * NB: to fit things in six character monocase externals, the39.25 + * stdio code uses the prefix `__s' for stdio objects, typically39.26 + * followed by a three-character attempt at a mnemonic.39.27 + */39.28 +39.29 +#ifndef _STDIO_H_39.30 +#ifdef __cplusplus39.31 +extern "C" {39.32 +#endif39.33 +#define _STDIO_H_39.34 +39.35 +#include "_ansi.h"39.36 +39.37 +#define _FSTDIO /* ``function stdio'' */39.38 +39.39 +#define __need_size_t39.40 +#include <stddef.h>39.41 +39.42 +#define __need___va_list39.43 +#include <stdarg.h>39.44 +39.45 +/*39.46 + * <sys/reent.h> defines __sFILE, _fpos_t.39.47 + * They must be defined there because struct _reent needs them (and we don't39.48 + * want reent.h to include this file.39.49 + */39.50 +39.51 +#include <sys/reent.h>39.52 +39.53 +typedef _fpos_t fpos_t;39.54 +39.55 +typedef struct __sFILE FILE;39.56 +39.57 +#define __SLBF 0x0001 /* line buffered */39.58 +#define __SNBF 0x0002 /* unbuffered */39.59 +#define __SRD 0x0004 /* OK to read */39.60 +#define __SWR 0x0008 /* OK to write */39.61 + /* RD and WR are never simultaneously asserted */39.62 +#define __SRW 0x0010 /* open for reading & writing */39.63 +#define __SEOF 0x0020 /* found EOF */39.64 +#define __SERR 0x0040 /* found error */39.65 +#define __SMBF 0x0080 /* _buf is from malloc */39.66 +#define __SAPP 0x0100 /* fdopen()ed in append mode - so must write to end */39.67 +#define __SSTR 0x0200 /* this is an sprintf/snprintf string */39.68 +#define __SOPT 0x0400 /* do fseek() optimisation */39.69 +#define __SNPT 0x0800 /* do not do fseek() optimisation */39.70 +#define __SOFF 0x1000 /* set iff _offset is in fact correct */39.71 +#define __SMOD 0x2000 /* true => fgetline modified _p text */39.72 +39.73 +/*39.74 + * The following three definitions are for ANSI C, which took them39.75 + * from System V, which stupidly took internal interface macros and39.76 + * made them official arguments to setvbuf(), without renaming them.39.77 + * Hence, these ugly _IOxxx names are *supposed* to appear in user code.39.78 + *39.79 + * Although these happen to match their counterparts above, the39.80 + * implementation does not rely on that (so these could be renumbered).39.81 + */39.82 +#define _IOFBF 0 /* setvbuf should set fully buffered */39.83 +#define _IOLBF 1 /* setvbuf should set line buffered */39.84 +#define _IONBF 2 /* setvbuf should set unbuffered */39.85 +39.86 +#ifndef NULL39.87 +#define NULL 039.88 +#endif39.89 +39.90 +#define BUFSIZ 102439.91 +#define EOF (-1)39.92 +39.93 +#define FOPEN_MAX 20 /* must be <= OPEN_MAX <sys/syslimits.h> */39.94 +#define FILENAME_MAX 1024 /* must be <= PATH_MAX <sys/syslimits.h> */39.95 +#define L_tmpnam 1024 /* XXX must be == PATH_MAX */39.96 +#ifndef __STRICT_ANSI__39.97 +#define P_tmpdir "/tmp"39.98 +#endif39.99 +39.100 +#ifndef SEEK_SET39.101 +#define SEEK_SET 0 /* set file offset to offset */39.102 +#endif39.103 +#ifndef SEEK_CUR39.104 +#define SEEK_CUR 1 /* set file offset to current plus offset */39.105 +#endif39.106 +#ifndef SEEK_END39.107 +#define SEEK_END 2 /* set file offset to EOF plus offset */39.108 +#endif39.109 +39.110 +#define TMP_MAX 2639.111 +39.112 +#define stdin (_impure_ptr->_stdin)39.113 +#define stdout (_impure_ptr->_stdout)39.114 +#define stderr (_impure_ptr->_stderr)39.115 +39.116 +#define _stdin_r(x) ((x)->_stdin)39.117 +#define _stdout_r(x) ((x)->_stdout)39.118 +#define _stderr_r(x) ((x)->_stderr)39.119 +39.120 +/*39.121 + * Functions defined in ANSI C standard.39.122 + */39.123 +39.124 +#ifdef __GNUC__39.125 +#define __VALIST __gnuc_va_list39.126 +#else39.127 +#define __VALIST char*39.128 +#endif39.129 +39.130 +#ifndef _REENT_ONLY39.131 +int _EXFUN(remove, (const char *));39.132 +int _EXFUN(rename, (const char *, const char *));39.133 +#endif39.134 +char * _EXFUN(tempnam, (const char *, const char *));39.135 +FILE * _EXFUN(tmpfile, (void));39.136 +char * _EXFUN(tmpnam, (char *));39.137 +int _EXFUN(fclose, (FILE *));39.138 +int _EXFUN(fflush, (FILE *));39.139 +FILE * _EXFUN(freopen, (const char *, const char *, FILE *));39.140 +void _EXFUN(setbuf, (FILE *, char *));39.141 +int _EXFUN(setvbuf, (FILE *, char *, int, size_t));39.142 +int _EXFUN(fprintf, (FILE *, const char *, ...));39.143 +int _EXFUN(fscanf, (FILE *, const char *, ...));39.144 +int _EXFUN(printf, (const char *, ...));39.145 +int _EXFUN(scanf, (const char *, ...));39.146 +int _EXFUN(sscanf, (const char *, const char *, ...));39.147 +int _EXFUN(vfprintf, (FILE *, const char *, __VALIST));39.148 +int _EXFUN(vprintf, (const char *, __VALIST));39.149 +int _EXFUN(vsprintf, (char *, const char *, __VALIST));39.150 +int _EXFUN(vsnprintf, (char *, size_t, const char *, __VALIST));39.151 +int _EXFUN(fgetc, (FILE *));39.152 +char * _EXFUN(fgets, (char *, int, FILE *));39.153 +int _EXFUN(fputc, (int, FILE *));39.154 +int _EXFUN(fputs, (const char *, FILE *));39.155 +int _EXFUN(getc, (FILE *));39.156 +int _EXFUN(getchar, (void));39.157 +char * _EXFUN(gets, (char *));39.158 +int _EXFUN(putc, (int, FILE *));39.159 +int _EXFUN(putchar, (int));39.160 +int _EXFUN(puts, (const char *));39.161 +int _EXFUN(ungetc, (int, FILE *));39.162 +size_t _EXFUN(fread, (_PTR, size_t _size, size_t _n, FILE *));39.163 +size_t _EXFUN(fwrite, (const _PTR , size_t _size, size_t _n, FILE *));39.164 +int _EXFUN(fgetpos, (FILE *, fpos_t *));39.165 +int _EXFUN(fseek, (FILE *, long, int));39.166 +int _EXFUN(fsetpos, (FILE *, const fpos_t *));39.167 +long _EXFUN(ftell, ( FILE *));39.168 +void _EXFUN(rewind, (FILE *));39.169 +void _EXFUN(clearerr, (FILE *));39.170 +int _EXFUN(feof, (FILE *));39.171 +int _EXFUN(ferror, (FILE *));39.172 +void _EXFUN(perror, (const char *));39.173 +#ifndef _REENT_ONLY39.174 +FILE * _EXFUN(fopen, (const char *_name, const char *_type));39.175 +int _EXFUN(sprintf, (char *, const char *, ...));39.176 +int _EXFUN(snprintf, (char *, size_t, const char *, ...));39.177 +#endif39.178 +#ifndef __STRICT_ANSI__39.179 +int _EXFUN(vfiprintf, (FILE *, const char *, __VALIST));39.180 +int _EXFUN(iprintf, (const char *, ...));39.181 +int _EXFUN(fiprintf, (FILE *, const char *, ...));39.182 +int _EXFUN(siprintf, (char *, const char *, ...));39.183 +#endif39.184 +39.185 +/*39.186 + * Routines in POSIX 1003.1.39.187 + */39.188 +39.189 +#ifndef __STRICT_ANSI__39.190 +#ifndef _REENT_ONLY39.191 +FILE * _EXFUN(fdopen, (int, const char *));39.192 +#endif39.193 +int _EXFUN(fileno, (FILE *));39.194 +int _EXFUN(getw, (FILE *));39.195 +int _EXFUN(pclose, (FILE *));39.196 +FILE * _EXFUN(popen, (const char *, const char *));39.197 +int _EXFUN(putw, (int, FILE *));39.198 +void _EXFUN(setbuffer, (FILE *, char *, int));39.199 +int _EXFUN(setlinebuf, (FILE *));39.200 +#endif39.201 +39.202 +/*39.203 + * Recursive versions of the above.39.204 + */39.205 +39.206 +FILE * _EXFUN(_fdopen_r, (struct _reent *, int, const char *));39.207 +FILE * _EXFUN(_fopen_r, (struct _reent *, const char *, const char *));39.208 +int _EXFUN(_getchar_r, (struct _reent *));39.209 +char * _EXFUN(_gets_r, (struct _reent *, char *));39.210 +int _EXFUN(_iprintf_r, (struct _reent *, const char *, ...));39.211 +int _EXFUN(_mkstemp_r, (struct _reent *, char *));39.212 +char * _EXFUN(_mktemp_r, (struct _reent *, char *));39.213 +void _EXFUN(_perror_r, (struct _reent *, const char *));39.214 +int _EXFUN(_printf_r, (struct _reent *, const char *, ...));39.215 +int _EXFUN(_putchar_r, (struct _reent *, int));39.216 +int _EXFUN(_puts_r, (struct _reent *, const char *));39.217 +int _EXFUN(_remove_r, (struct _reent *, const char *));39.218 +int _EXFUN(_rename_r, (struct _reent *,39.219 + const char *_old, const char *_new));39.220 +int _EXFUN(_scanf_r, (struct _reent *, const char *, ...));39.221 +int _EXFUN(_sprintf_r, (struct _reent *, char *, const char *, ...));39.222 +int _EXFUN(_snprintf_r, (struct _reent *, char *, size_t, const char *, ...));39.223 +char * _EXFUN(_tempnam_r, (struct _reent *, const char *, const char *));39.224 +FILE * _EXFUN(_tmpfile_r, (struct _reent *));39.225 +char * _EXFUN(_tmpnam_r, (struct _reent *, char *));39.226 +int _EXFUN(_vfprintf_r, (struct _reent *, FILE *, const char *, __VALIST));39.227 +int _EXFUN(_vprintf_r, (struct _reent *, const char *, __VALIST));39.228 +int _EXFUN(_vsprintf_r, (struct _reent *, char *, const char *, __VALIST));39.229 +int _EXFUN(_vsnprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST));39.230 +39.231 +/*39.232 + * Routines internal to the implementation.39.233 + */39.234 +39.235 +int _EXFUN(__srget, (FILE *));39.236 +int _EXFUN(__swbuf, (int, FILE *));39.237 +39.238 +/*39.239 + * Stdio function-access interface.39.240 + */39.241 +39.242 +#ifndef __STRICT_ANSI__39.243 +FILE *_EXFUN(funopen,(const _PTR _cookie,39.244 + int (*readfn)(_PTR _cookie, char *_buf, int _n),39.245 + int (*writefn)(_PTR _cookie, const char *_buf, int _n),39.246 + fpos_t (*seekfn)(_PTR _cookie, fpos_t _off, int _whence),39.247 + int (*closefn)(_PTR _cookie)));39.248 +39.249 +#define fropen(cookie, fn) funopen(cookie, fn, (int (*)())0, (fpos_t (*)())0, (int (*)())0)39.250 +#define fwopen(cookie, fn) funopen(cookie, (int (*)())0, fn, (fpos_t (*)())0, (int (*)())0)39.251 +#endif39.252 +39.253 +/*39.254 + * The __sfoo macros are here so that we can39.255 + * define function versions in the C library.39.256 + */39.257 +#define __sgetc(p) (--(p)->_r < 0 ? __srget(p) : (int)(*(p)->_p++))39.258 +#ifdef _never /* __GNUC__ */39.259 +/* If this inline is actually used, then systems using coff debugging39.260 + info get hopelessly confused. 21sept93 rich@cygnus.com. */39.261 +static __inline int __sputc(int _c, FILE *_p) {39.262 + if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n'))39.263 + return (*_p->_p++ = _c);39.264 + else39.265 + return (__swbuf(_c, _p));39.266 +}39.267 +#else39.268 +/*39.269 + * This has been tuned to generate reasonable code on the vax using pcc39.270 + */39.271 +#define __sputc(c, p) \39.272 + (--(p)->_w < 0 ? \39.273 + (p)->_w >= (p)->_lbfsize ? \39.274 + (*(p)->_p = (c)), *(p)->_p != '\n' ? \39.275 + (int)*(p)->_p++ : \39.276 + __swbuf('\n', p) : \39.277 + __swbuf((int)(c), p) : \39.278 + (*(p)->_p = (c), (int)*(p)->_p++))39.279 +#endif39.280 +39.281 +#define __sfeof(p) (((p)->_flags & __SEOF) != 0)39.282 +#define __sferror(p) (((p)->_flags & __SERR) != 0)39.283 +#define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF)))39.284 +#define __sfileno(p) ((p)->_file)39.285 +39.286 +#define feof(p) __sfeof(p)39.287 +#define ferror(p) __sferror(p)39.288 +#define clearerr(p) __sclearerr(p)39.289 +39.290 +#if 0 /*ndef __STRICT_ANSI__ - FIXME: must initialize stdio first, use fn */39.291 +#define fileno(p) __sfileno(p)39.292 +#endif39.293 +39.294 +#ifndef lint39.295 +#define getc(fp) __sgetc(fp)39.296 +#define putc(x, fp) __sputc(x, fp)39.297 +#endif /* lint */39.298 +39.299 +#define getchar() getc(stdin)39.300 +#define putchar(x) putc(x, stdout)39.301 +39.302 +#ifndef __STRICT_ANSI__39.303 +/* fast always-buffered version, true iff error */39.304 +#define fast_putc(x,p) (--(p)->_w < 0 ? \39.305 + __swbuf((int)(x), p) == EOF : (*(p)->_p = (x), (p)->_p++, 0))39.306 +39.307 +#define L_cuserid 9 /* posix says it goes in stdio.h :( */39.308 +#ifdef __CYGWIN32__39.309 +#define L_ctermid 1639.310 +#endif39.311 +#endif39.312 +39.313 +#ifdef __cplusplus39.314 +}39.315 +#endif39.316 +#endif /* _STDIO_H_ */
40.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000040.2 +++ b/test/include/stdlib.h Tue Jul 11 01:35:27 2006 +000040.3 @@ -0,0 +1,140 @@40.4 +/*40.5 + * stdlib.h40.6 + *40.7 + * Definitions for common types, variables, and functions.40.8 + */40.9 +40.10 +#ifndef _STDLIB_H_40.11 +#ifdef __cplusplus40.12 +extern "C" {40.13 +#endif40.14 +#define _STDLIB_H_40.15 +40.16 +#include "_ansi.h"40.17 +40.18 +#define __need_size_t40.19 +#define __need_wchar_t40.20 +#include <stddef.h>40.21 +40.22 +#include <sys/reent.h>40.23 +40.24 +typedef struct40.25 +{40.26 + int quot; /* quotient */40.27 + int rem; /* remainder */40.28 +} div_t;40.29 +40.30 +typedef struct40.31 +{40.32 + long quot; /* quotient */40.33 + long rem; /* remainder */40.34 +} ldiv_t;40.35 +40.36 +#ifndef NULL40.37 +#define NULL 040.38 +#endif40.39 +40.40 +#define EXIT_FAILURE 140.41 +#define EXIT_SUCCESS 040.42 +40.43 +#define RAND_MAX 0x7fffffff40.44 +40.45 +#if (defined(__CYGWIN__) || defined(__CYGWIN32__)) && ! defined(_COMPILING_NEWLIB)40.46 +extern __declspec(dllimport) int __mb_cur_max;40.47 +#else40.48 +extern int __mb_cur_max;40.49 +#endif40.50 +40.51 +#define MB_CUR_MAX __mb_cur_max40.52 +40.53 +_VOID _EXFUN(abort,(_VOID) _ATTRIBUTE ((noreturn)));40.54 +int _EXFUN(abs,(int));40.55 +int _EXFUN(atexit,(_VOID (*__func)(_VOID)));40.56 +double _EXFUN(atof,(const char *__nptr));40.57 +#ifndef __STRICT_ANSI__40.58 +float _EXFUN(atoff,(const char *__nptr));40.59 +#endif40.60 +int _EXFUN(atoi,(const char *__nptr));40.61 +long _EXFUN(atol,(const char *__nptr));40.62 +_PTR _EXFUN(bsearch,(const _PTR __key,40.63 + const _PTR __base,40.64 + size_t __nmemb,40.65 + size_t __size,40.66 + int _EXFUN((*_compar),(const _PTR, const _PTR))));40.67 +_PTR _EXFUN(calloc,(size_t __nmemb, size_t __size));40.68 +div_t _EXFUN(div,(int __numer, int __denom));40.69 +_VOID _EXFUN(exit,(int __status) _ATTRIBUTE ((noreturn)));40.70 +_VOID _EXFUN(free,(_PTR));40.71 +char * _EXFUN(getenv,(const char *__string));40.72 +char * _EXFUN(_getenv_r,(struct _reent *, const char *__string));40.73 +char * _EXFUN(_findenv,(_CONST char *, int *));40.74 +char * _EXFUN(_findenv_r,(struct _reent *, _CONST char *, int *));40.75 +long _EXFUN(labs,(long));40.76 +ldiv_t _EXFUN(ldiv,(long __numer, long __denom));40.77 +_PTR _EXFUN(malloc,(size_t __size));40.78 +int _EXFUN(mblen,(const char *, size_t));40.79 +int _EXFUN(_mblen_r,(struct _reent *, const char *, size_t, int *));40.80 +int _EXFUN(mbtowc,(wchar_t *, const char *, size_t));40.81 +int _EXFUN(_mbtowc_r,(struct _reent *, wchar_t *, const char *, size_t, int *));40.82 +int _EXFUN(wctomb,(char *, wchar_t));40.83 +int _EXFUN(_wctomb_r,(struct _reent *, char *, wchar_t, int *));40.84 +size_t _EXFUN(mbstowcs,(wchar_t *, const char *, size_t));40.85 +size_t _EXFUN(_mbstowcs_r,(struct _reent *, wchar_t *, const char *, size_t, int *));40.86 +size_t _EXFUN(wcstombs,(char *, const wchar_t *, size_t));40.87 +size_t _EXFUN(_wcstombs_r,(struct _reent *, char *, const wchar_t *, size_t, int *));40.88 +_VOID _EXFUN(qsort,(_PTR __base, size_t __nmemb, size_t __size, int(*_compar)(const _PTR, const _PTR)));40.89 +int _EXFUN(rand,(_VOID));40.90 +_PTR _EXFUN(realloc,(_PTR __r, size_t __size));40.91 +_VOID _EXFUN(srand,(unsigned __seed));40.92 +double _EXFUN(strtod,(const char *__n, char **_end_PTR));40.93 +#ifndef __STRICT_ANSI__40.94 +float _EXFUN(strtodf,(const char *__n, char **_end_PTR));40.95 +#endif40.96 +long _EXFUN(strtol,(const char *__n, char **_end_PTR, int __base));40.97 +unsigned long _EXFUN(strtoul,(const char *_n_PTR, char **_end_PTR, int __base));40.98 +unsigned long _EXFUN(_strtoul_r,(struct _reent *,const char *_n_PTR, char **_end_PTR, int __base));40.99 +int _EXFUN(system,(const char *__string));40.100 +40.101 +#ifndef __STRICT_ANSI__40.102 +_VOID _EXFUN(cfree,(_PTR));40.103 +int _EXFUN(putenv,(const char *__string));40.104 +int _EXFUN(setenv,(const char *__string, const char *__value, int __overwrite));40.105 +int _EXFUN(_setenv_r,(struct _reent *, const char *__string, const char *__value, int __overwrite));40.106 +40.107 +char * _EXFUN(gcvt,(double,int,char *));40.108 +char * _EXFUN(gcvtf,(float,int,char *));40.109 +char * _EXFUN(fcvt,(double,int,int *,int *));40.110 +char * _EXFUN(fcvtf,(float,int,int *,int *));40.111 +char * _EXFUN(ecvt,(double,int,int *,int *));40.112 +char * _EXFUN(ecvtbuf,(double, int, int*, int*, char *));40.113 +char * _EXFUN(fcvtbuf,(double, int, int*, int*, char *));40.114 +char * _EXFUN(ecvtf,(float,int,int *,int *));40.115 +char * _EXFUN(dtoa,(double, int, int, int *, int*, char**));40.116 +int _EXFUN(rand_r,(unsigned *__seed));40.117 +40.118 +#ifdef __CYGWIN32__40.119 +char * _EXFUN(realpath,(const char *, char *));40.120 +void _EXFUN(unsetenv,(const char *__string));40.121 +int _EXFUN(random,(_VOID));40.122 +long _EXFUN(srandom,(unsigned __seed));40.123 +char * _EXFUN(ptsname, (int));40.124 +int _EXFUN(grantpt, (int));40.125 +int _EXFUN(unlockpt,(int));40.126 +#endif40.127 +40.128 +#endif /* ! __STRICT_ANSI__ */40.129 +40.130 +char * _EXFUN(_dtoa_r,(struct _reent *, double, int, int, int *, int*, char**));40.131 +_PTR _EXFUN(_malloc_r,(struct _reent *, size_t));40.132 +_PTR _EXFUN(_calloc_r,(struct _reent *, size_t, size_t));40.133 +_VOID _EXFUN(_free_r,(struct _reent *, _PTR));40.134 +_PTR _EXFUN(_realloc_r,(struct _reent *, _PTR, size_t));40.135 +_VOID _EXFUN(_mstats_r,(struct _reent *, char *));40.136 +int _EXFUN(_system_r,(struct _reent *, const char *));40.137 +40.138 +_VOID _EXFUN(__eprintf,(const char *, const char *, unsigned int, const char *));40.139 +40.140 +#ifdef __cplusplus40.141 +}40.142 +#endif40.143 +#endif /* _STDLIB_H_ */
41.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000041.2 +++ b/test/include/string.h Tue Jul 11 01:35:27 2006 +000041.3 @@ -0,0 +1,90 @@41.4 +/*41.5 + * string.h41.6 + *41.7 + * Definitions for memory and string functions.41.8 + */41.9 +41.10 +#ifndef _STRING_H_41.11 +#define _STRING_H_41.12 +41.13 +#ifdef __cplusplus41.14 +extern "C" {41.15 +#endif41.16 +41.17 +#include "_ansi.h"41.18 +41.19 +#define __need_size_t41.20 +#include <stddef.h>41.21 +41.22 +#ifndef NULL41.23 +#define NULL 041.24 +#endif41.25 +41.26 +_PTR _EXFUN(memchr,(const _PTR, int, size_t));41.27 +int _EXFUN(memcmp,(const _PTR, const _PTR, size_t));41.28 +_PTR _EXFUN(memcpy,(_PTR, const _PTR, size_t));41.29 +_PTR _EXFUN(memmove,(_PTR, const _PTR, size_t));41.30 +_PTR _EXFUN(memset,(_PTR, int, size_t));41.31 +char *_EXFUN(strcat,(char *, const char *));41.32 +char *_EXFUN(strchr,(const char *, int));41.33 +int _EXFUN(strcmp,(const char *, const char *));41.34 +int _EXFUN(strcoll,(const char *, const char *));41.35 +char *_EXFUN(strcpy,(char *, const char *));41.36 +size_t _EXFUN(strcspn,(const char *, const char *));41.37 +char *_EXFUN(strerror,(int));41.38 +size_t _EXFUN(strlen,(const char *));41.39 +char *_EXFUN(strncat,(char *, const char *, size_t));41.40 +int _EXFUN(strncmp,(const char *, const char *, size_t));41.41 +char *_EXFUN(strncpy,(char *, const char *, size_t));41.42 +char *_EXFUN(strpbrk,(const char *, const char *));41.43 +char *_EXFUN(strrchr,(const char *, int));41.44 +size_t _EXFUN(strspn,(const char *, const char *));41.45 +char *_EXFUN(strstr,(const char *, const char *));41.46 +41.47 +#ifndef _REENT_ONLY41.48 +char *_EXFUN(strtok,(char *, const char *));41.49 +#endif41.50 +41.51 +size_t _EXFUN(strxfrm,(char *, const char *, size_t));41.52 +41.53 +#ifndef __STRICT_ANSI__41.54 +char *_EXFUN(strtok_r,(char *, const char *, char **));41.55 +41.56 +int _EXFUN(bcmp,(const char *, const char *, size_t));41.57 +void _EXFUN(bcopy,(const char *, char *, size_t));41.58 +void _EXFUN(bzero,(char *, size_t));41.59 +int _EXFUN(ffs,(int));41.60 +char *_EXFUN(index,(const char *, int));41.61 +_PTR _EXFUN(memccpy,(_PTR, const _PTR, int, size_t));41.62 +char *_EXFUN(rindex,(const char *, int));41.63 +int _EXFUN(strcasecmp,(const char *, const char *));41.64 +char *_EXFUN(strdup,(const char *));41.65 +int _EXFUN(strncasecmp,(const char *, const char *, size_t));41.66 +char *_EXFUN(strsep,(char **, const char *));41.67 +char *_EXFUN(strlwr,(char *));41.68 +char *_EXFUN(strupr,(char *));41.69 +#ifdef __CYGWIN32__41.70 +char *_EXFUN(strsignal, (int __signo));41.71 +int _EXFUN(strtosigno, (const char *__name));41.72 +#endif41.73 +41.74 +/* These function names are used on Windows and perhaps other systems. */41.75 +#ifndef strcmpi41.76 +#define strcmpi strcasecmp41.77 +#endif41.78 +#ifndef stricmp41.79 +#define stricmp strcasecmp41.80 +#endif41.81 +#ifndef strncmpi41.82 +#define strncmpi strncasecmp41.83 +#endif41.84 +#ifndef strnicmp41.85 +#define strnicmp strncasecmp41.86 +#endif41.87 +41.88 +#endif /* ! __STRICT_ANSI__ */41.89 +41.90 +#ifdef __cplusplus41.91 +}41.92 +#endif41.93 +#endif /* _STRING_H_ */
42.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000042.2 +++ b/test/include/sys/_types.h Tue Jul 11 01:35:27 2006 +000042.3 @@ -0,0 +1,15 @@42.4 +/* ANSI C namespace clean utility typedefs */42.5 +42.6 +/* This file defines various typedefs needed by the system calls that support42.7 + the C library. Basically, they're just the POSIX versions with an '_'42.8 + prepended. This file lives in the `sys' directory so targets can provide42.9 + their own if desired (or they can put target dependant conditionals here).42.10 +*/42.11 +42.12 +#ifndef _SYS__TYPES_H42.13 +#define _SYS__TYPES_H42.14 +42.15 +typedef long _off_t;42.16 +typedef long _ssize_t;42.17 +42.18 +#endif /* _SYS__TYPES_H */
43.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000043.2 +++ b/test/include/sys/config.h Tue Jul 11 01:35:27 2006 +000043.3 @@ -0,0 +1,115 @@43.4 +#ifndef __SYS_CONFIG_H__43.5 +#define __SYS_CONFIG_H__43.6 +43.7 +/* exceptions first */43.8 +/* ??? Why is much of this stuff duplicated with machine/ieeefp.h? */43.9 +#if defined(__H8300__) || defined(__H8500__) || defined (__H8300H__) || defined(__W65__) || defined (__H8300S__)43.10 +#define _FLOAT_ARG float43.11 +#define __SMALL_BITFIELDS43.12 +#define _DOUBLE_IS_32BITS43.13 +#define __IEEE_BIG_ENDIAN43.14 +/* ??? This conditional is true for the h8500 and the w65, defining H830043.15 + in those cases probably isn't the right thing to do. */43.16 +#define H8300 143.17 +#endif43.18 +43.19 +#ifdef __W65__43.20 +#define _DOUBLE_IS_32BITS43.21 +#define __SMALL_BITFIELDS43.22 +#define __IEEE_BIG_ENDIAN43.23 +#undef INT_MAX43.24 +#undef UINT_MAX43.25 +#define INT_MAX 3276743.26 +#define UINT_MAX 6553543.27 +43.28 +#endif43.29 +43.30 +/* 16 bit integer machines */43.31 +#if defined(__Z8001__) || defined(__Z8002__) || defined(__H8300__) || defined(__H8500__) || defined(__W65__) || defined (__H8300H__) || defined (__H8300S__) || defined (__mn10200__)43.32 +43.33 +#undef INT_MAX43.34 +#undef UINT_MAX43.35 +#define INT_MAX 3276743.36 +#define UINT_MAX 6553543.37 +#endif43.38 +43.39 +#if defined(__D10V__)43.40 +#undef INT_MAX43.41 +#undef UINT_MAX43.42 +#define INT_MAX __INT_MAX__43.43 +#define UINT_MAX (__INT_MAX__ * 2U + 1)43.44 +#define _DOUBLE_IS_32BITS43.45 +#define _POINTER_INT short43.46 +#define __IEEE_BIG_ENDIAN43.47 +#endif43.48 +43.49 +#ifdef ___AM29K__43.50 +#define _FLOAT_RET double43.51 +#endif43.52 +43.53 +#ifdef __i386__43.54 +#ifndef __unix__43.55 +/* in other words, go32 */43.56 +#define _FLOAT_RET double43.57 +#endif43.58 +#endif43.59 +43.60 +#ifdef __M32R__43.61 +#define __IEEE_BIG_ENDIAN43.62 +#endif43.63 +43.64 +#ifdef __m68k__43.65 +/* This is defined in machine/ieeefp.h; need to check is it redundant here? */43.66 +#define __IEEE_BIG_ENDIAN43.67 +#endif43.68 +43.69 +#ifdef __mn10300__43.70 +#define __IEEE_LITTLE_ENDIAN43.71 +#endif43.72 +43.73 +#ifdef __mn10200__43.74 +#define _DOUBLE_IS_32BITS43.75 +#define __SMALL_BITFIELDS43.76 +#define __IEEE_LITTLE_ENDIAN43.77 +#endif43.78 +43.79 +#ifdef __TIC80__43.80 +#define __IEEE_LITTLE_ENDIAN43.81 +#endif43.82 +43.83 +#ifdef __v85043.84 +#define __IEEE_LITTLE_ENDIAN43.85 +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__sda__))43.86 +#endif43.87 +43.88 +#ifdef __D30V__43.89 +#define __IEEE_BIG_ENDIAN43.90 +#endif43.91 +43.92 +/* For the PowerPC eabi, force the _impure_ptr to be in .sdata */43.93 +#if defined(__PPC__) && defined(_CALL_SYSV)43.94 +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata")))43.95 +#endif43.96 +43.97 +#ifdef __sparc__43.98 +#ifdef __LITTLE_ENDIAN_DATA__43.99 +#define __IEEE_LITTLE_ENDIAN43.100 +#else43.101 +#define __IEEE_BIG_ENDIAN43.102 +#endif43.103 +#endif43.104 +43.105 +#if INT_MAX == 3276743.106 +typedef long int __int32_t;43.107 +typedef unsigned long int __uint32_t;43.108 +#else43.109 +typedef int __int32_t;43.110 +typedef unsigned int __uint32_t;43.111 +#endif43.112 +43.113 +#ifndef _POINTER_INT43.114 +#define _POINTER_INT long43.115 +#endif43.116 +43.117 +43.118 +#endif /* __SYS_CONFIG_H__ */
44.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000044.2 +++ b/test/include/sys/dirent.h Tue Jul 11 01:35:27 2006 +000044.3 @@ -0,0 +1,15 @@44.4 +/* <dirent.h> includes <sys/dirent.h>, which is this file. On a44.5 + system which supports <dirent.h>, this file is overridden by44.6 + dirent.h in the libc/sys/.../sys directory. On a system which does44.7 + not support <dirent.h>, we will get this file which tries to find44.8 + any other <dirent.h> which may be lurking around. If there isn't44.9 + one, the user will get an error indicating that there is no44.10 + <dirent.h>. */44.11 +44.12 +#ifdef __cplusplus44.13 +extern "C" {44.14 +#endif44.15 +#include_next <dirent.h>44.16 +#ifdef __cplusplus44.17 +}44.18 +#endif
45.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000045.2 +++ b/test/include/sys/errno.h Tue Jul 11 01:35:27 2006 +000045.3 @@ -0,0 +1,154 @@45.4 +/* errno is not a global variable, because that would make using it45.5 + non-reentrant. Instead, its address is returned by the function45.6 + __errno. */45.7 +45.8 +#ifndef _SYS_ERRNO_H_45.9 +#ifdef __cplusplus45.10 +extern "C" {45.11 +#endif45.12 +#define _SYS_ERRNO_H_45.13 +45.14 +#include <sys/reent.h>45.15 +45.16 +#ifndef _REENT_ONLY45.17 +#define errno (*__errno())45.18 +extern int *__errno _PARAMS ((void));45.19 +#endif45.20 +45.21 +#if !defined(__CYGWIN32__) || defined(__INSIDE_CYGWIN__)45.22 +extern _CONST char * _CONST _sys_errlist[];45.23 +extern int _sys_nerr;45.24 +#else45.25 +extern _CONST char * _CONST _sys_errlist[] __declspec(dllimport);45.26 +extern int _sys_nerr __declspec(dllimport);45.27 +#endif45.28 +45.29 +#define __errno_r(ptr) ((ptr)->_errno)45.30 +45.31 +#define EPERM 1 /* Not super-user */45.32 +#define ENOENT 2 /* No such file or directory */45.33 +#define ESRCH 3 /* No such process */45.34 +#define EINTR 4 /* Interrupted system call */45.35 +#define EIO 5 /* I/O error */45.36 +#define ENXIO 6 /* No such device or address */45.37 +#define E2BIG 7 /* Arg list too long */45.38 +#define ENOEXEC 8 /* Exec format error */45.39 +#define EBADF 9 /* Bad file number */45.40 +#define ECHILD 10 /* No children */45.41 +#define EAGAIN 11 /* No more processes */45.42 +#define ENOMEM 12 /* Not enough core */45.43 +#define EACCES 13 /* Permission denied */45.44 +#define EFAULT 14 /* Bad address */45.45 +#define ENOTBLK 15 /* Block device required */45.46 +#define EBUSY 16 /* Mount device busy */45.47 +#define EEXIST 17 /* File exists */45.48 +#define EXDEV 18 /* Cross-device link */45.49 +#define ENODEV 19 /* No such device */45.50 +#define ENOTDIR 20 /* Not a directory */45.51 +#define EISDIR 21 /* Is a directory */45.52 +#define EINVAL 22 /* Invalid argument */45.53 +#define ENFILE 23 /* Too many open files in system */45.54 +#define EMFILE 24 /* Too many open files */45.55 +#define ENOTTY 25 /* Not a typewriter */45.56 +#define ETXTBSY 26 /* Text file busy */45.57 +#define EFBIG 27 /* File too large */45.58 +#define ENOSPC 28 /* No space left on device */45.59 +#define ESPIPE 29 /* Illegal seek */45.60 +#define EROFS 30 /* Read only file system */45.61 +#define EMLINK 31 /* Too many links */45.62 +#define EPIPE 32 /* Broken pipe */45.63 +#define EDOM 33 /* Math arg out of domain of func */45.64 +#define ERANGE 34 /* Math result not representable */45.65 +#define ENOMSG 35 /* No message of desired type */45.66 +#define EIDRM 36 /* Identifier removed */45.67 +#define ECHRNG 37 /* Channel number out of range */45.68 +#define EL2NSYNC 38 /* Level 2 not synchronized */45.69 +#define EL3HLT 39 /* Level 3 halted */45.70 +#define EL3RST 40 /* Level 3 reset */45.71 +#define ELNRNG 41 /* Link number out of range */45.72 +#define EUNATCH 42 /* Protocol driver not attached */45.73 +#define ENOCSI 43 /* No CSI structure available */45.74 +#define EL2HLT 44 /* Level 2 halted */45.75 +#define EDEADLK 45 /* Deadlock condition */45.76 +#define ENOLCK 46 /* No record locks available */45.77 +#define EBADE 50 /* Invalid exchange */45.78 +#define EBADR 51 /* Invalid request descriptor */45.79 +#define EXFULL 52 /* Exchange full */45.80 +#define ENOANO 53 /* No anode */45.81 +#define EBADRQC 54 /* Invalid request code */45.82 +#define EBADSLT 55 /* Invalid slot */45.83 +#define EDEADLOCK 56 /* File locking deadlock error */45.84 +#define EBFONT 57 /* Bad font file fmt */45.85 +#define ENOSTR 60 /* Device not a stream */45.86 +#define ENODATA 61 /* No data (for no delay io) */45.87 +#define ETIME 62 /* Timer expired */45.88 +#define ENOSR 63 /* Out of streams resources */45.89 +#define ENONET 64 /* Machine is not on the network */45.90 +#define ENOPKG 65 /* Package not installed */45.91 +#define EREMOTE 66 /* The object is remote */45.92 +#define ENOLINK 67 /* The link has been severed */45.93 +#define EADV 68 /* Advertise error */45.94 +#define ESRMNT 69 /* Srmount error */45.95 +#define ECOMM 70 /* Communication error on send */45.96 +#define EPROTO 71 /* Protocol error */45.97 +#define EMULTIHOP 74 /* Multihop attempted */45.98 +#define ELBIN 75 /* Inode is remote (not really error) */45.99 +#define EDOTDOT 76 /* Cross mount point (not really error) */45.100 +#define EBADMSG 77 /* Trying to read unreadable message */45.101 +#define ENOTUNIQ 80 /* Given log. name not unique */45.102 +#define EBADFD 81 /* f.d. invalid for this operation */45.103 +#define EREMCHG 82 /* Remote address changed */45.104 +#define ELIBACC 83 /* Can't access a needed shared lib */45.105 +#define ELIBBAD 84 /* Accessing a corrupted shared lib */45.106 +#define ELIBSCN 85 /* .lib section in a.out corrupted */45.107 +#define ELIBMAX 86 /* Attempting to link in too many libs */45.108 +#define ELIBEXEC 87 /* Attempting to exec a shared library */45.109 +#define ENOSYS 88 /* Function not implemented */45.110 +#define ENMFILE 89 /* No more files */45.111 +#define ENOTEMPTY 90 /* Directory not empty */45.112 +#define ENAMETOOLONG 91 /* File or path name too long */45.113 +#define ELOOP 92 /* Too many symbolic links */45.114 +#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */45.115 +#define EPFNOSUPPORT 96 /* Protocol family not supported */45.116 +#define ECONNRESET 104 /* Connection reset by peer */45.117 +#define ENOBUFS 105 /* No buffer space available */45.118 +#define EAFNOSUPPORT 10645.119 +#define EPROTOTYPE 10745.120 +#define ENOTSOCK 10845.121 +#define ENOPROTOOPT 10945.122 +#define ESHUTDOWN 11045.123 +#define ECONNREFUSED 111 /* Connection refused */45.124 +#define EADDRINUSE 112 /* Address already in use */45.125 +#define ECONNABORTED 113 /* Connection aborted */45.126 +#define ENETUNREACH 11445.127 +#define ENETDOWN 11545.128 +#define ETIMEDOUT 11645.129 +#define EHOSTDOWN 11745.130 +#define EHOSTUNREACH 11845.131 +#define EINPROGRESS 11945.132 +#define EALREADY 12045.133 +#define EDESTADDRREQ 12145.134 +#define EMSGSIZE 12245.135 +#define EPROTONOSUPPORT 12345.136 +#define ESOCKTNOSUPPORT 12445.137 +#define EADDRNOTAVAIL 12545.138 +#define ENETRESET 12645.139 +#define EISCONN 12745.140 +#define ENOTCONN 12845.141 +#define ETOOMANYREFS 12945.142 +#define EPROCLIM 13045.143 +#define EUSERS 13145.144 +#define EDQUOT 13245.145 +#define ESTALE 13345.146 +#define ENOTSUP 13445.147 +#define ENOMEDIUM 13545.148 +45.149 +/* From cygwin32. */45.150 +#define EWOULDBLOCK EAGAIN /* Operation would block */45.151 +45.152 +#define __ELASTERROR 2000 /* Users can add values starting here */45.153 +45.154 +#ifdef __cplusplus45.155 +}45.156 +#endif45.157 +#endif /* _SYS_ERRNO_H */
46.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000046.2 +++ b/test/include/sys/fcntl.h Tue Jul 11 01:35:27 2006 +000046.3 @@ -0,0 +1,178 @@46.4 +46.5 +#ifndef _FCNTL_46.6 +#ifdef __cplusplus46.7 +extern "C" {46.8 +#endif46.9 +#define _FCNTL_46.10 +#include <_ansi.h>46.11 +#define _FOPEN (-1) /* from sys/file.h, kernel use only */46.12 +#define _FREAD 0x0001 /* read enabled */46.13 +#define _FWRITE 0x0002 /* write enabled */46.14 +#define _FNDELAY 0x0004 /* non blocking I/O (4.2 style) */46.15 +#define _FAPPEND 0x0008 /* append (writes guaranteed at the end) */46.16 +#define _FMARK 0x0010 /* internal; mark during gc() */46.17 +#define _FDEFER 0x0020 /* internal; defer for next gc pass */46.18 +#define _FASYNC 0x0040 /* signal pgrp when data ready */46.19 +#define _FSHLOCK 0x0080 /* BSD flock() shared lock present */46.20 +#define _FEXLOCK 0x0100 /* BSD flock() exclusive lock present */46.21 +#define _FCREAT 0x0200 /* open with file create */46.22 +#define _FTRUNC 0x0400 /* open with truncation */46.23 +#define _FEXCL 0x0800 /* error on open if file exists */46.24 +#define _FNBIO 0x1000 /* non blocking I/O (sys5 style) */46.25 +#define _FSYNC 0x2000 /* do all writes synchronously */46.26 +#define _FNONBLOCK 0x4000 /* non blocking I/O (POSIX style) */46.27 +#define _FNOCTTY 0x8000 /* don't assign a ctty on this open */46.28 +46.29 +#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)46.30 +46.31 +/*46.32 + * Flag values for open(2) and fcntl(2)46.33 + * The kernel adds 1 to the open modes to turn it into some46.34 + * combination of FREAD and FWRITE.46.35 + */46.36 +#define O_RDONLY 0 /* +1 == FREAD */46.37 +#define O_WRONLY 1 /* +1 == FWRITE */46.38 +#define O_RDWR 2 /* +1 == FREAD|FWRITE */46.39 +#define O_APPEND _FAPPEND46.40 +#define O_CREAT _FCREAT46.41 +#define O_TRUNC _FTRUNC46.42 +#define O_EXCL _FEXCL46.43 +/* O_SYNC _FSYNC not posix, defined below */46.44 +/* O_NDELAY _FNDELAY set in include/fcntl.h */46.45 +/* O_NDELAY _FNBIO set in 5include/fcntl.h */46.46 +#define O_NONBLOCK _FNONBLOCK46.47 +#define O_NOCTTY _FNOCTTY46.48 +/* For machines which care - */46.49 +#if defined (_WIN32) || defined (__CYGWIN__)46.50 +#define _FBINARY 0x1000046.51 +#define _FTEXT 0x2000046.52 +#define _FNOINHERIT 0x4000046.53 +46.54 +#define O_BINARY _FBINARY46.55 +#define O_TEXT _FTEXT46.56 +#define O_NOINHERIT _FNOINHERIT46.57 +46.58 +/* The windows header files define versions with a leading underscore. */46.59 +#define _O_RDONLY O_RDONLY46.60 +#define _O_WRONLY O_WRONLY46.61 +#define _O_RDWR O_RDWR46.62 +#define _O_APPEND O_APPEND46.63 +#define _O_CREAT O_CREAT46.64 +#define _O_TRUNC O_TRUNC46.65 +#define _O_EXCL O_EXCL46.66 +#define _O_TEXT O_TEXT46.67 +#define _O_BINARY O_BINARY46.68 +#define _O_RAW O_BINARY46.69 +#define _O_NOINHERIT O_NOINHERIT46.70 +#endif46.71 +46.72 +#ifndef _POSIX_SOURCE46.73 +46.74 +#define O_SYNC _FSYNC46.75 +46.76 +/*46.77 + * Flags that work for fcntl(fd, F_SETFL, FXXXX)46.78 + */46.79 +#define FAPPEND _FAPPEND46.80 +#define FSYNC _FSYNC46.81 +#define FASYNC _FASYNC46.82 +#define FNBIO _FNBIO46.83 +#define FNONBIO _FNONBLOCK /* XXX fix to be NONBLOCK everywhere */46.84 +#define FNDELAY _FNDELAY46.85 +46.86 +/*46.87 + * Flags that are disallowed for fcntl's (FCNTLCANT);46.88 + * used for opens, internal state, or locking.46.89 + */46.90 +#define FREAD _FREAD46.91 +#define FWRITE _FWRITE46.92 +#define FMARK _FMARK46.93 +#define FDEFER _FDEFER46.94 +#define FSHLOCK _FSHLOCK46.95 +#define FEXLOCK _FEXLOCK46.96 +46.97 +/*46.98 + * The rest of the flags, used only for opens46.99 + */46.100 +#define FOPEN _FOPEN46.101 +#define FCREAT _FCREAT46.102 +#define FTRUNC _FTRUNC46.103 +#define FEXCL _FEXCL46.104 +#define FNOCTTY _FNOCTTY46.105 +46.106 +#endif /* !_POSIX_SOURCE */46.107 +46.108 +/* XXX close on exec request; must match UF_EXCLOSE in user.h */46.109 +#define FD_CLOEXEC 1 /* posix */46.110 +46.111 +/* fcntl(2) requests */46.112 +#define F_DUPFD 0 /* Duplicate fildes */46.113 +#define F_GETFD 1 /* Get fildes flags (close on exec) */46.114 +#define F_SETFD 2 /* Set fildes flags (close on exec) */46.115 +#define F_GETFL 3 /* Get file flags */46.116 +#define F_SETFL 4 /* Set file flags */46.117 +#ifndef _POSIX_SOURCE46.118 +#define F_GETOWN 5 /* Get owner - for ASYNC */46.119 +#define F_SETOWN 6 /* Set owner - for ASYNC */46.120 +#endif /* !_POSIX_SOURCE */46.121 +#define F_GETLK 7 /* Get record-locking information */46.122 +#define F_SETLK 8 /* Set or Clear a record-lock (Non-Blocking) */46.123 +#define F_SETLKW 9 /* Set or Clear a record-lock (Blocking) */46.124 +#ifndef _POSIX_SOURCE46.125 +#define F_RGETLK 10 /* Test a remote lock to see if it is blocked */46.126 +#define F_RSETLK 11 /* Set or unlock a remote lock */46.127 +#define F_CNVT 12 /* Convert a fhandle to an open fd */46.128 +#define F_RSETLKW 13 /* Set or Clear remote record-lock(Blocking) */46.129 +#endif /* !_POSIX_SOURCE */46.130 +46.131 +/* fcntl(2) flags (l_type field of flock structure) */46.132 +#define F_RDLCK 1 /* read lock */46.133 +#define F_WRLCK 2 /* write lock */46.134 +#define F_UNLCK 3 /* remove lock(s) */46.135 +#ifndef _POSIX_SOURCE46.136 +#define F_UNLKSYS 4 /* remove remote locks for a given system */46.137 +#endif /* !_POSIX_SOURCE */46.138 +46.139 +/*#include <sys/stdtypes.h>*/46.140 +46.141 +/* file segment locking set data type - information passed to system by user */46.142 +struct flock {46.143 + short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */46.144 + short l_whence; /* flag to choose starting offset */46.145 + long l_start; /* relative offset, in bytes */46.146 + long l_len; /* length, in bytes; 0 means lock to EOF */46.147 + short l_pid; /* returned with F_GETLK */46.148 + short l_xxx; /* reserved for future use */46.149 +};46.150 +46.151 +#ifndef _POSIX_SOURCE46.152 +/* extended file segment locking set data type */46.153 +struct eflock {46.154 + short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */46.155 + short l_whence; /* flag to choose starting offset */46.156 + long l_start; /* relative offset, in bytes */46.157 + long l_len; /* length, in bytes; 0 means lock to EOF */46.158 + short l_pid; /* returned with F_GETLK */46.159 + short l_xxx; /* reserved for future use */46.160 + long l_rpid; /* Remote process id wanting this lock */46.161 + long l_rsys; /* Remote system id wanting this lock */46.162 +};46.163 +#endif /* !_POSIX_SOURCE */46.164 +46.165 +46.166 +#include <sys/types.h>46.167 +#include <sys/stat.h> /* sigh. for the mode bits for open/creat */46.168 +46.169 +extern int open _PARAMS ((const char *, int, ...));46.170 +extern int creat _PARAMS ((const char *, mode_t));46.171 +extern int fcntl _PARAMS ((int, int, ...));46.172 +46.173 +/* Provide _<systemcall> prototypes for functions provided by some versions46.174 + of newlib. */46.175 +extern int _open _PARAMS ((const char *, int, ...));46.176 +extern int _fcntl _PARAMS ((int, int, ...));46.177 +46.178 +#ifdef __cplusplus46.179 +}46.180 +#endif46.181 +#endif /* !_FCNTL_ */
47.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000047.2 +++ b/test/include/sys/file.h Tue Jul 11 01:35:27 2006 +000047.3 @@ -0,0 +1,2 @@47.4 +47.5 +#include <sys/fcntl.h>
48.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000048.2 +++ b/test/include/sys/param.h Tue Jul 11 01:35:27 2006 +000048.3 @@ -0,0 +1,18 @@48.4 +/* This is a dummy <sys/param.h> file, not customized for any48.5 + particular system. If there is a param.h in libc/sys/SYSDIR/sys,48.6 + it will override this one. */48.7 +48.8 +#ifndef _SYS_PARAM_H48.9 +# define _SYS_PARAM_H48.10 +48.11 +# define HZ (60)48.12 +# define NOFILE (60)48.13 +# define PATHSIZE (1024)48.14 +48.15 +#ifdef __i386__48.16 +#define BIG_ENDIAN 432148.17 +#define LITTLE_ENDIAN 123448.18 +#define BYTE_ORDER LITTLE_ENDIAN48.19 +#endif48.20 +48.21 +#endif
49.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000049.2 +++ b/test/include/sys/reent.h Tue Jul 11 01:35:27 2006 +000049.3 @@ -0,0 +1,238 @@49.4 +/* This header file provides the reentrancy. */49.5 +49.6 +/* WARNING: All identifiers here must begin with an underscore. This file is49.7 + included by stdio.h and others and we therefore must only use identifiers49.8 + in the namespace allotted to us. */49.9 +49.10 +#ifndef _SYS_REENT_H_49.11 +#ifdef __cplusplus49.12 +extern "C" {49.13 +#endif49.14 +#define _SYS_REENT_H_49.15 +49.16 +#include <_ansi.h>49.17 +#include <time.h>49.18 +49.19 +#ifndef __Long49.20 +#if __LONG_MAX__ == 2147483647L49.21 +#define __Long long49.22 +typedef unsigned __Long __ULong;49.23 +#elif __INT_MAX__ == 214748364749.24 +#define __Long int49.25 +typedef unsigned __Long __ULong;49.26 +#endif49.27 +#endif49.28 +49.29 +#ifndef __Long49.30 +#define __Long __int32_t49.31 +typedef __uint32_t __ULong;49.32 +#endif49.33 +49.34 +struct _glue49.35 +{49.36 + struct _glue *_next;49.37 + int _niobs;49.38 + struct __sFILE *_iobs;49.39 +};49.40 +49.41 +struct _Bigint49.42 +{49.43 + struct _Bigint *_next;49.44 + int _k, _maxwds, _sign, _wds;49.45 + __ULong _x[1];49.46 +};49.47 +49.48 +/*49.49 + * atexit() support49.50 + */49.51 +49.52 +#define _ATEXIT_SIZE 32 /* must be at least 32 to guarantee ANSI conformance */49.53 +49.54 +struct _atexit {49.55 + struct _atexit *_next; /* next in list */49.56 + int _ind; /* next index in this table */49.57 + void (*_fns[_ATEXIT_SIZE])(void); /* the table itself */49.58 +};49.59 +49.60 +/*49.61 + * Stdio buffers.49.62 + *49.63 + * This and __sFILE are defined here because we need them for struct _reent,49.64 + * but we don't want stdio.h included when stdlib.h is.49.65 + */49.66 +49.67 +struct __sbuf {49.68 + unsigned char *_base;49.69 + int _size;49.70 +};49.71 +49.72 +/*49.73 + * We need fpos_t for the following, but it doesn't have a leading "_",49.74 + * so we use _fpos_t instead.49.75 + */49.76 +49.77 +typedef long _fpos_t; /* XXX must match off_t in <sys/types.h> */49.78 + /* (and must be `long' for now) */49.79 +49.80 +/*49.81 + * Stdio state variables.49.82 + *49.83 + * The following always hold:49.84 + *49.85 + * if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),49.86 + * _lbfsize is -_bf._size, else _lbfsize is 049.87 + * if _flags&__SRD, _w is 049.88 + * if _flags&__SWR, _r is 049.89 + *49.90 + * This ensures that the getc and putc macros (or inline functions) never49.91 + * try to write or read from a file that is in `read' or `write' mode.49.92 + * (Moreover, they can, and do, automatically switch from read mode to49.93 + * write mode, and back, on "r+" and "w+" files.)49.94 + *49.95 + * _lbfsize is used only to make the inline line-buffered output stream49.96 + * code as compact as possible.49.97 + *49.98 + * _ub, _up, and _ur are used when ungetc() pushes back more characters49.99 + * than fit in the current _bf, or when ungetc() pushes back a character49.100 + * that does not match the previous one in _bf. When this happens,49.101 + * _ub._base becomes non-nil (i.e., a stream has ungetc() data iff49.102 + * _ub._base!=NULL) and _up and _ur save the current values of _p and _r.49.103 + */49.104 +49.105 +struct __sFILE {49.106 + unsigned char *_p; /* current position in (some) buffer */49.107 + int _r; /* read space left for getc() */49.108 + int _w; /* write space left for putc() */49.109 + short _flags; /* flags, below; this FILE is free if 0 */49.110 + short _file; /* fileno, if Unix descriptor, else -1 */49.111 + struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */49.112 + int _lbfsize; /* 0 or -_bf._size, for inline putc */49.113 +49.114 + /* operations */49.115 + _PTR _cookie; /* cookie passed to io functions */49.116 +49.117 + int _EXFUN((*_read),(_PTR _cookie, char *_buf, int _n));49.118 + int _EXFUN((*_write),(_PTR _cookie, const char *_buf, int _n));49.119 + _fpos_t _EXFUN((*_seek),(_PTR _cookie, _fpos_t _offset, int _whence));49.120 + int _EXFUN((*_close),(_PTR _cookie));49.121 +49.122 + /* separate buffer for long sequences of ungetc() */49.123 + struct __sbuf _ub; /* ungetc buffer */49.124 + unsigned char *_up; /* saved _p when _p is doing ungetc data */49.125 + int _ur; /* saved _r when _r is counting ungetc data */49.126 +49.127 + /* tricks to meet minimum requirements even when malloc() fails */49.128 + unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */49.129 + unsigned char _nbuf[1]; /* guarantee a getc() buffer */49.130 +49.131 + /* separate buffer for fgetline() when line crosses buffer boundary */49.132 + struct __sbuf _lb; /* buffer for fgetline() */49.133 +49.134 + /* Unix stdio files get aligned to block boundaries on fseek() */49.135 + int _blksize; /* stat.st_blksize (may be != _bf._size) */49.136 + int _offset; /* current lseek offset */49.137 +49.138 + struct _reent *_data;49.139 +};49.140 +49.141 +/*49.142 + * struct _reent49.143 + *49.144 + * This structure contains *all* globals needed by the library.49.145 + * It's raison d'etre is to facilitate threads by making all library routines49.146 + * reentrant. IE: All state information is contained here.49.147 + */49.148 +49.149 +struct _reent49.150 +{49.151 + /* local copy of errno */49.152 + int _errno;49.153 +49.154 + /* FILE is a big struct and may change over time. To try to achieve binary49.155 + compatibility with future versions, put stdin,stdout,stderr here.49.156 + These are pointers into member __sf defined below. */49.157 + struct __sFILE *_stdin, *_stdout, *_stderr;49.158 +49.159 + int _inc; /* used by tmpnam */49.160 + char _emergency[25];49.161 +49.162 + int _current_category; /* used by setlocale */49.163 + _CONST char *_current_locale;49.164 +49.165 + int __sdidinit; /* 1 means stdio has been init'd */49.166 +49.167 + void _EXFUN((*__cleanup),(struct _reent *));49.168 +49.169 + /* used by mprec routines */49.170 + struct _Bigint *_result;49.171 + int _result_k;49.172 + struct _Bigint *_p5s;49.173 + struct _Bigint **_freelist;49.174 +49.175 + /* used by some fp conversion routines */49.176 + int _cvtlen; /* should be size_t */49.177 + char *_cvtbuf;49.178 +49.179 + union49.180 + {49.181 + struct49.182 + {49.183 + unsigned int _rand_next;49.184 + char * _strtok_last;49.185 + char _asctime_buf[26];49.186 + struct tm _localtime_buf;49.187 + int _gamma_signgam;49.188 + } _reent;49.189 + /* Two next two fields were once used by malloc. They are no longer49.190 + used. They are used to preserve the space used before so as to49.191 + allow addition of new reent fields and keep binary compatibility. */49.192 + struct49.193 + {49.194 +#define _N_LISTS 3049.195 + unsigned char * _nextf[_N_LISTS];49.196 + unsigned int _nmalloc[_N_LISTS];49.197 + } _unused;49.198 + } _new;49.199 +49.200 + /* atexit stuff */49.201 + struct _atexit *_atexit; /* points to head of LIFO stack */49.202 + struct _atexit _atexit0; /* one guaranteed table, required by ANSI */49.203 +49.204 + /* signal info */49.205 + void (**(_sig_func))(int);49.206 +49.207 + /* These are here last so that __sFILE can grow without changing the offsets49.208 + of the above members (on the off chance that future binary compatibility49.209 + would be broken otherwise). */49.210 + struct _glue __sglue; /* root of glue chain */49.211 + struct __sFILE __sf[3]; /* first three file descriptors */49.212 +};49.213 +49.214 +#define _REENT_INIT(var) \49.215 + { 0, &var.__sf[0], &var.__sf[1], &var.__sf[2], 0, "", 0, "C", \49.216 + 0, NULL, NULL, 0, NULL, NULL, 0, NULL, { {1, NULL, "", \49.217 + { 0,0,0,0,0,0,0,0}, 0 } } }49.218 +49.219 +/*49.220 + * All references to struct _reent are via this pointer.49.221 + * Internally, newlib routines that need to reference it should use _REENT.49.222 + */49.223 +49.224 +#ifndef __ATTRIBUTE_IMPURE_PTR__49.225 +#define __ATTRIBUTE_IMPURE_PTR__49.226 +#endif49.227 +49.228 +extern struct _reent *_impure_ptr __ATTRIBUTE_IMPURE_PTR__;49.229 +49.230 +void _reclaim_reent _PARAMS ((struct _reent *));49.231 +49.232 +/* #define _REENT_ONLY define this to get only reentrant routines */49.233 +49.234 +#ifndef _REENT_ONLY49.235 +#define _REENT _impure_ptr49.236 +#endif49.237 +49.238 +#ifdef __cplusplus49.239 +}49.240 +#endif49.241 +#endif /* _SYS_REENT_H_ */
50.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000050.2 +++ b/test/include/sys/resource.h Tue Jul 11 01:35:27 2006 +000050.3 @@ -0,0 +1,15 @@50.4 +#ifndef _SYS_RESOURCE_H_50.5 +#define _SYS_RESOURCE_H_50.6 +50.7 +#include <sys/time.h>50.8 +50.9 +#define RUSAGE_SELF 0 /* calling process */50.10 +#define RUSAGE_CHILDREN -1 /* terminated child processes */50.11 +50.12 +struct rusage {50.13 + struct timeval ru_utime; /* user time used */50.14 + struct timeval ru_stime; /* system time used */50.15 +};50.16 +50.17 +#endif50.18 +
51.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000051.2 +++ b/test/include/sys/signal.h Tue Jul 11 01:35:27 2006 +000051.3 @@ -0,0 +1,182 @@51.4 +/* sys/signal.h */51.5 +51.6 +#ifndef _SYS_SIGNAL_H51.7 +#define _SYS_SIGNAL_H51.8 +51.9 +#ifdef __cplusplus51.10 +extern "C" {51.11 +#endif51.12 +51.13 +#include "_ansi.h"51.14 +51.15 +#ifndef __STRICT_ANSI__51.16 +typedef unsigned long sigset_t;51.17 +struct sigaction51.18 +{51.19 + void (*sa_handler)(int);51.20 + sigset_t sa_mask;51.21 + int sa_flags;51.22 +};51.23 +#define SA_NOCLDSTOP 1 /* only value supported now for sa_flags */51.24 +#define SIG_SETMASK 0 /* set mask with sigprocmask() */51.25 +#define SIG_BLOCK 1 /* set of signals to block */51.26 +#define SIG_UNBLOCK 2 /* set of signals to, well, unblock */51.27 +51.28 +/* These depend upon the type of sigset_t, which right now51.29 + is always a long.. They're in the POSIX namespace, but51.30 + are not ANSI. */51.31 +#define sigaddset(what,sig) (*(what) |= (1<<(sig)))51.32 +#define sigemptyset(what) (*(what) = 0)51.33 +51.34 +int sigprocmask (int __how, const sigset_t *__a, sigset_t *__b);51.35 +51.36 +/* protos for functions found in winsup sources */51.37 +#if defined(__CYGWIN32__)51.38 +#undef sigaddset51.39 +#undef sigemptyset51.40 +/* The first argument to kill should be pid_t. Right now51.41 + <sys/types.h> always defines pid_t to be int. If that ever51.42 + changes, then we will need to do something else, perhaps along the51.43 + lines of <machine/types.h>. */51.44 +int _EXFUN(kill, (int, int));51.45 +int _EXFUN(sigaction, (int, const struct sigaction *, struct sigaction *));51.46 +int _EXFUN(sigaddset, (sigset_t *, const int));51.47 +int _EXFUN(sigdelset, (sigset_t *, const int));51.48 +int _EXFUN(sigismember, (const sigset_t *, int));51.49 +int _EXFUN(sigfillset, (sigset_t *));51.50 +int _EXFUN(sigemptyset, (sigset_t *));51.51 +int _EXFUN(sigpending, (sigset_t *));51.52 +int _EXFUN(sigsuspend, (const sigset_t *));51.53 +int _EXFUN(sigpause, (int));51.54 +#endif51.55 +51.56 +#endif /* __STRICT_ANSI__ */51.57 +51.58 +#if defined(___AM29K__)51.59 +/* These all need to be defined for ANSI C, but I don't think they are51.60 + meaningful. */51.61 +#define SIGABRT 151.62 +#define SIGFPE 151.63 +#define SIGILL 151.64 +#define SIGINT 151.65 +#define SIGSEGV 151.66 +#define SIGTERM 151.67 +/* These need to be defined for POSIX, and some others do too. */51.68 +#define SIGHUP 151.69 +#define SIGQUIT 151.70 +#define NSIG 251.71 +#elif defined(__GO32__)51.72 +#define SIGINT 151.73 +#define SIGKILL 251.74 +#define SIGPIPE 351.75 +#define SIGFPE 451.76 +#define SIGHUP 551.77 +#define SIGTERM 651.78 +#define SIGSEGV 751.79 +#define SIGTSTP 851.80 +#define SIGQUIT 951.81 +#define SIGTRAP 1051.82 +#define SIGILL 1151.83 +#define SIGEMT 1251.84 +#define SIGALRM 1351.85 +#define SIGBUS 1451.86 +#define SIGLOST 1551.87 +#define SIGSTOP 1651.88 +#define SIGABRT 1751.89 +#define SIGUSR1 1851.90 +#define SIGUSR2 1951.91 +#define NSIG 2051.92 +#elif defined(__CYGWIN32__) /* BSD signals symantics */51.93 +#define SIGHUP 1 /* hangup */51.94 +#define SIGINT 2 /* interrupt */51.95 +#define SIGQUIT 3 /* quit */51.96 +#define SIGILL 4 /* illegal instruction (not reset when caught) */51.97 +#define SIGTRAP 5 /* trace trap (not reset when caught) */51.98 +#define SIGABRT 6 /* used by abort */51.99 +#define SIGEMT 7 /* EMT instruction */51.100 +#define SIGFPE 8 /* floating point exception */51.101 +#define SIGKILL 9 /* kill (cannot be caught or ignored) */51.102 +#define SIGBUS 10 /* bus error */51.103 +#define SIGSEGV 11 /* segmentation violation */51.104 +#define SIGSYS 12 /* bad argument to system call */51.105 +#define SIGPIPE 13 /* write on a pipe with no one to read it */51.106 +#define SIGALRM 14 /* alarm clock */51.107 +#define SIGTERM 15 /* software termination signal from kill */51.108 +#define SIGURG 16 /* urgent condition on IO channel */51.109 +#define SIGSTOP 17 /* sendable stop signal not from tty */51.110 +#define SIGTSTP 18 /* stop signal from tty */51.111 +#define SIGCONT 19 /* continue a stopped process */51.112 +#define SIGCHLD 20 /* to parent on child stop or exit */51.113 +#define SIGCLD 20 /* System V name for SIGCHLD */51.114 +#define SIGTTIN 21 /* to readers pgrp upon background tty read */51.115 +#define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */51.116 +#define SIGIO 23 /* input/output possible signal */51.117 +#define SIGPOLL SIGIO /* System V name for SIGIO */51.118 +#define SIGXCPU 24 /* exceeded CPU time limit */51.119 +#define SIGXFSZ 25 /* exceeded file size limit */51.120 +#define SIGVTALRM 26 /* virtual time alarm */51.121 +#define SIGPROF 27 /* profiling time alarm */51.122 +#define SIGWINCH 28 /* window changed */51.123 +#define SIGLOST 29 /* resource lost (eg, record-lock lost) */51.124 +#define SIGUSR1 30 /* user defined signal 1 */51.125 +#define SIGUSR2 31 /* user defined signal 2 */51.126 +#define NSIG 32 /* signal 0 implied */51.127 +#else51.128 +#define SIGHUP 1 /* hangup */51.129 +#define SIGINT 2 /* interrupt */51.130 +#define SIGQUIT 3 /* quit */51.131 +#define SIGILL 4 /* illegal instruction (not reset when caught) */51.132 +#define SIGTRAP 5 /* trace trap (not reset when caught) */51.133 +#define SIGIOT 6 /* IOT instruction */51.134 +#define SIGABRT 6 /* used by abort, replace SIGIOT in the future */51.135 +#define SIGEMT 7 /* EMT instruction */51.136 +#define SIGFPE 8 /* floating point exception */51.137 +#define SIGKILL 9 /* kill (cannot be caught or ignored) */51.138 +#define SIGBUS 10 /* bus error */51.139 +#define SIGSEGV 11 /* segmentation violation */51.140 +#define SIGSYS 12 /* bad argument to system call */51.141 +#define SIGPIPE 13 /* write on a pipe with no one to read it */51.142 +#define SIGALRM 14 /* alarm clock */51.143 +#define SIGTERM 15 /* software termination signal from kill */51.144 +51.145 +#if defined(__svr4__)51.146 +/* svr4 specifics. different signals above 15, and sigaction. */51.147 +#define SIGUSR1 1651.148 +#define SIGUSR2 1751.149 +#define SIGCLD 1851.150 +#define SIGPWR 1951.151 +#define SIGWINCH 2051.152 +#define SIGPOLL 22 /* 20 for x.out binaries!!!! */51.153 +#define SIGSTOP 23 /* sendable stop signal not from tty */51.154 +#define SIGTSTP 24 /* stop signal from tty */51.155 +#define SIGCONT 25 /* continue a stopped process */51.156 +#define SIGTTIN 26 /* to readers pgrp upon background tty read */51.157 +#define SIGTTOU 27 /* like TTIN for output if (tp->t_local<OSTOP) */51.158 +#define NSIG 2851.159 +#else51.160 +#define SIGURG 16 /* urgent condition on IO channel */51.161 +#define SIGSTOP 17 /* sendable stop signal not from tty */51.162 +#define SIGTSTP 18 /* stop signal from tty */51.163 +#define SIGCONT 19 /* continue a stopped process */51.164 +#define SIGCHLD 20 /* to parent on child stop or exit */51.165 +#define SIGCLD 20 /* System V name for SIGCHLD */51.166 +#define SIGTTIN 21 /* to readers pgrp upon background tty read */51.167 +#define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */51.168 +#define SIGIO 23 /* input/output possible signal */51.169 +#define SIGPOLL SIGIO /* System V name for SIGIO */51.170 +#define SIGXCPU 24 /* exceeded CPU time limit */51.171 +#define SIGXFSZ 25 /* exceeded file size limit */51.172 +#define SIGVTALRM 26 /* virtual time alarm */51.173 +#define SIGPROF 27 /* profiling time alarm */51.174 +#define SIGWINCH 28 /* window changed */51.175 +#define SIGLOST 29 /* resource lost (eg, record-lock lost) */51.176 +#define SIGUSR1 30 /* user defined signal 1 */51.177 +#define SIGUSR2 31 /* user defined signal 2 */51.178 +#define NSIG 32 /* signal 0 implied */51.179 +#endif51.180 +#endif51.181 +51.182 +#ifdef __cplusplus51.183 +}51.184 +#endif51.185 +#endif /* _SYS_SIGNAL_H */
52.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000052.2 +++ b/test/include/sys/stat-dj.h Tue Jul 11 01:35:27 2006 +000052.3 @@ -0,0 +1,59 @@52.4 +/* This is file STAT.H */52.5 +/*52.6 +** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-295452.7 +**52.8 +** This file is distributed under the terms listed in the document52.9 +** "copying.dj", available from DJ Delorie at the address above.52.10 +** A copy of "copying.dj" should accompany this file; if not, a copy52.11 +** should be available from where this file was obtained. This file52.12 +** may not be distributed without a verbatim copy of "copying.dj".52.13 +**52.14 +** This file is distributed WITHOUT ANY WARRANTY; without even the implied52.15 +** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.52.16 +*/52.17 +52.18 +#ifndef _STAT_H_52.19 +#define _STAT_H_52.20 +52.21 +struct stat {52.22 + short st_dev;52.23 + short st_ino;52.24 + unsigned short st_mode;52.25 + short st_nlink;52.26 + short st_uid;52.27 + short st_gid;52.28 + short st_rdev;52.29 + short st_align_for_word32;52.30 + long st_size;52.31 + long st_atime;52.32 + long st_mtime;52.33 + long st_ctime;52.34 + long st_blksize;52.35 +};52.36 +52.37 +#define S_IFMT 0xF000 /* file type mask */52.38 +#define S_IFDIR 0x4000 /* directory */52.39 +#define S_IFIFO 0x1000 /* FIFO special */52.40 +#define S_IFCHR 0x2000 /* character special */52.41 +#define S_IFBLK 0x3000 /* block special */52.42 +#define S_IFREG 0x8000 /* or just 0x0000, regular */52.43 +#define S_IREAD 0x0100 /* owner may read */52.44 +#define S_IWRITE 0x0080 /* owner may write */52.45 +#define S_IEXEC 0x0040 /* owner may execute <directory search> */52.46 +52.47 +#define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)52.48 +#define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)52.49 +#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)52.50 +#define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)52.51 +#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)52.52 +52.53 +#ifdef __cplusplus52.54 +extern "C" {52.55 +#endif52.56 +int stat(const char *, struct stat *);52.57 +int fstat(int, struct stat *);52.58 +#ifdef __cplusplus52.59 +}52.60 +#endif52.61 +52.62 +#endif
53.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000053.2 +++ b/test/include/sys/stat.h Tue Jul 11 01:35:27 2006 +000053.3 @@ -0,0 +1,149 @@53.4 +#ifndef _SYS_STAT_H53.5 +#define _SYS_STAT_H53.6 +53.7 +#ifdef __cplusplus53.8 +extern "C" {53.9 +#endif53.10 +53.11 +#include <_ansi.h>53.12 +#include <time.h>53.13 +#include <sys/types.h>53.14 +53.15 +#ifdef __i386__53.16 +#ifdef __MSDOS__53.17 +#include "stat-dj.h"53.18 +#endif53.19 +#endif53.20 +53.21 +/* dj's stat defines _STAT_H_ */53.22 +#ifndef _STAT_H_53.23 +53.24 +/* It is intended that the layout of this structure not change when the53.25 + sizes of any of the basic types change (short, int, long) [via a compile53.26 + time option]. */53.27 +53.28 +struct stat53.29 +{53.30 + dev_t st_dev;53.31 + ino_t st_ino;53.32 + mode_t st_mode;53.33 + nlink_t st_nlink;53.34 + uid_t st_uid;53.35 + gid_t st_gid;53.36 + dev_t st_rdev;53.37 + off_t st_size;53.38 + /* SysV/sco doesn't have the rest... But Solaris, eabi does. */53.39 +#if defined(__svr4__) && !defined(__PPC__) && !defined(__sun__)53.40 + time_t st_atime;53.41 + time_t st_mtime;53.42 + time_t st_ctime;53.43 +#else53.44 + time_t st_atime;53.45 + long st_spare1;53.46 + time_t st_mtime;53.47 + long st_spare2;53.48 + time_t st_ctime;53.49 + long st_spare3;53.50 + long st_blksize;53.51 + long st_blocks;53.52 + long st_spare4[2];53.53 +#endif53.54 +};53.55 +53.56 +#define _IFMT 0170000 /* type of file */53.57 +#define _IFDIR 0040000 /* directory */53.58 +#define _IFCHR 0020000 /* character special */53.59 +#define _IFBLK 0060000 /* block special */53.60 +#define _IFREG 0100000 /* regular */53.61 +#define _IFLNK 0120000 /* symbolic link */53.62 +#define _IFSOCK 0140000 /* socket */53.63 +#define _IFIFO 0010000 /* fifo */53.64 +53.65 +#define S_BLKSIZE 1024 /* size of a block */53.66 +53.67 +#define S_ISUID 0004000 /* set user id on execution */53.68 +#define S_ISGID 0002000 /* set group id on execution */53.69 +#ifndef _POSIX_SOURCE53.70 +#define S_ISVTX 0001000 /* save swapped text even after use */53.71 +#define S_IREAD 0000400 /* read permission, owner */53.72 +#define S_IWRITE 0000200 /* write permission, owner */53.73 +#define S_IEXEC 0000100 /* execute/search permission, owner */53.74 +53.75 +#define S_ENFMT 0002000 /* enforcement-mode locking */53.76 +53.77 +#define S_IFMT _IFMT53.78 +#define S_IFDIR _IFDIR53.79 +#define S_IFCHR _IFCHR53.80 +#define S_IFBLK _IFBLK53.81 +#define S_IFREG _IFREG53.82 +#define S_IFLNK _IFLNK53.83 +#define S_IFSOCK _IFSOCK53.84 +#define S_IFIFO _IFIFO53.85 +#endif /* !_POSIX_SOURCE */53.86 +53.87 +#ifdef _WIN3253.88 +/* The Windows header files define _S_ forms of these, so we do too53.89 + for easier portability. */53.90 +#define _S_IFMT _IFMT53.91 +#define _S_IFDIR _IFDIR53.92 +#define _S_IFCHR _IFCHR53.93 +#define _S_IFIFO _IFIFO53.94 +#define _S_IFREG _IFREG53.95 +#define _S_IREAD 000040053.96 +#define _S_IWRITE 000020053.97 +#define _S_IEXEC 000010053.98 +#endif53.99 +53.100 +#define S_IRWXU 0000700 /* rwx, owner */53.101 +#define S_IRUSR 0000400 /* read permission, owner */53.102 +#define S_IWUSR 0000200 /* write permission, owner */53.103 +#define S_IXUSR 0000100 /* execute/search permission, owner */53.104 +#define S_IRWXG 0000070 /* rwx, group */53.105 +#define S_IRGRP 0000040 /* read permission, group */53.106 +#define S_IWGRP 0000020 /* write permission, grougroup */53.107 +#define S_IXGRP 0000010 /* execute/search permission, group */53.108 +#define S_IRWXO 0000007 /* rwx, other */53.109 +#define S_IROTH 0000004 /* read permission, other */53.110 +#define S_IWOTH 0000002 /* write permission, other */53.111 +#define S_IXOTH 0000001 /* execute/search permission, other */53.112 +53.113 +#define S_ISBLK(m) (((m)&_IFMT) == _IFBLK)53.114 +#define S_ISCHR(m) (((m)&_IFMT) == _IFCHR)53.115 +#define S_ISDIR(m) (((m)&_IFMT) == _IFDIR)53.116 +#define S_ISFIFO(m) (((m)&_IFMT) == _IFIFO)53.117 +#define S_ISREG(m) (((m)&_IFMT) == _IFREG)53.118 +#define S_ISLNK(m) (((m)&_IFMT) == _IFLNK)53.119 +#define S_ISSOCK(m) (((m)&_IFMT) == _IFSOCK)53.120 +53.121 +53.122 +int _EXFUN(chmod,( const char *__path, mode_t __mode ));53.123 +int _EXFUN(fchmod,(int __fd, mode_t __mode));53.124 +int _EXFUN(fstat,( int __fd, struct stat *__sbuf ));53.125 +int _EXFUN(mkdir,( const char *_path, mode_t __mode ));53.126 +int _EXFUN(mkfifo,( const char *__path, mode_t __mode ));53.127 +int _EXFUN(stat,( const char *__path, struct stat *__sbuf ));53.128 +mode_t _EXFUN(umask,( mode_t __mask ));53.129 +53.130 +#if defined(__rtems__)53.131 +int _EXFUN(mknod,( const char *_path, mode_t _mode, dev_t dev ));53.132 +#endif53.133 +53.134 +/* Provide prototypes for most of the _<systemcall> names that are53.135 + provided in newlib for some compilers. */53.136 +int _EXFUN(_fstat,( int __fd, struct stat *__sbuf ));53.137 +int _EXFUN(_stat,( const char *__path, struct stat *__sbuf ));53.138 +53.139 +#ifdef __CYGWIN32__53.140 +int _EXFUN(lstat,( const char *__path, struct stat *__buf ));53.141 +#endif53.142 +53.143 +#if defined(__rtems__)53.144 +int _EXFUN(mknod,( const char *_path, mode_t _mode, dev_t dev ));53.145 +int _EXFUN(lstat,( const char *_path, struct stat *_sbuf ));53.146 +#endif53.147 +53.148 +#endif /* !_STAT_H_ */53.149 +#ifdef __cplusplus53.150 +}53.151 +#endif53.152 +#endif /* _SYS_STAT_H */
54.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000054.2 +++ b/test/include/sys/time.h Tue Jul 11 01:35:27 2006 +000054.3 @@ -0,0 +1,51 @@54.4 +/* time.h -- An implementation of the standard Unix <sys/time.h> file.54.5 + Written by Geoffrey Noer <noer@cygnus.com>54.6 + Public domain; no rights reserved. */54.7 +54.8 +#ifndef _SYS_TIME_H_54.9 +#define _SYS_TIME_H_54.10 +54.11 +#include <_ansi.h>54.12 +#include <sys/types.h>54.13 +54.14 +#ifdef __cplusplus54.15 +extern "C" {54.16 +#endif54.17 +54.18 +#ifndef _WINSOCK_H54.19 +struct timeval {54.20 + long tv_sec;54.21 + long tv_usec;54.22 +};54.23 +54.24 +struct timezone {54.25 + int tz_minuteswest;54.26 + int tz_dsttime;54.27 +};54.28 +54.29 +#ifdef __CYGWIN32__54.30 +#include <sys/select.h>54.31 +#endif /* __CYGWIN32__ */54.32 +54.33 +#endif /* _WINSOCK_H */54.34 +54.35 +#define ITIMER_REAL 054.36 +#define ITIMER_VIRTUAL 154.37 +#define ITIMER_PROF 254.38 +54.39 +struct itimerval {54.40 + struct timeval it_interval;54.41 + struct timeval it_value;54.42 +};54.43 +54.44 +int _EXFUN(gettimeofday, (struct timeval *__p, struct timezone *__z));54.45 +int _EXFUN(settimeofday, (const struct timeval *, const struct timezone *));54.46 +int _EXFUN(utimes, (const char *__path, struct timeval *__tvp));54.47 +int _EXFUN(getitimer, (int __which, struct itimerval *__value));54.48 +int _EXFUN(setitimer, (int __which, const struct itimerval *__value,54.49 + struct itimerval *__ovalue));54.50 +54.51 +#ifdef __cplusplus54.52 +}54.53 +#endif54.54 +#endif /* _SYS_TIME_H_ */
55.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000055.2 +++ b/test/include/sys/timeb.h Tue Jul 11 01:35:27 2006 +000055.3 @@ -0,0 +1,39 @@55.4 +/* timeb.h -- An implementation of the standard Unix <sys/timeb.h> file.55.5 + Written by Ian Lance Taylor <ian@cygnus.com>55.6 + Public domain; no rights reserved.55.7 +55.8 + <sys/timeb.h> declares the structure used by the ftime function, as55.9 + well as the ftime function itself. Newlib does not provide an55.10 + implementation of ftime. */55.11 +55.12 +#ifndef _SYS_TIMEB_H55.13 +55.14 +#ifdef __cplusplus55.15 +extern "C" {55.16 +#endif55.17 +55.18 +#define _SYS_TIMEB_H55.19 +55.20 +#include <_ansi.h>55.21 +#include <machine/types.h>55.22 +55.23 +#ifndef __time_t_defined55.24 +typedef _TIME_T_ time_t;55.25 +#define __time_t_defined55.26 +#endif55.27 +55.28 +struct timeb55.29 +{55.30 + time_t time;55.31 + unsigned short millitm;55.32 + short timezone;55.33 + short dstflag;55.34 +};55.35 +55.36 +extern int ftime _PARAMS ((struct timeb *));55.37 +55.38 +#ifdef __cplusplus55.39 +}55.40 +#endif55.41 +55.42 +#endif /* ! defined (_SYS_TIMEB_H) */
56.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000056.2 +++ b/test/include/sys/times.h Tue Jul 11 01:35:27 2006 +000056.3 @@ -0,0 +1,27 @@56.4 +#ifndef _SYS_TIMES_H56.5 +#ifdef __cplusplus56.6 +extern "C" {56.7 +#endif56.8 +#define _SYS_TIMES_H56.9 +56.10 +#include <_ansi.h>56.11 +#include <machine/types.h>56.12 +56.13 +#ifndef __clock_t_defined56.14 +typedef _CLOCK_T_ clock_t;56.15 +#define __clock_t_defined56.16 +#endif56.17 +56.18 +struct tms {56.19 + clock_t tms_utime; /* user time */56.20 + clock_t tms_stime; /* system time */56.21 + clock_t tms_cutime; /* user time, children */56.22 + clock_t tms_cstime; /* system time, children */56.23 +};56.24 +56.25 +clock_t _EXFUN(times,(struct tms *));56.26 +56.27 +#ifdef __cplusplus56.28 +}56.29 +#endif56.30 +#endif /* !_SYS_TIMES_H */
57.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000057.2 +++ b/test/include/sys/types.h Tue Jul 11 01:35:27 2006 +000057.3 @@ -0,0 +1,174 @@57.4 +/* unified sys/types.h:57.5 + start with sef's sysvi386 version.57.6 + merge go32 version -- a few ifdefs.57.7 + h8300hms, h8300xray, and sysvnecv70 disagree on the following types:57.8 +57.9 + typedef int gid_t;57.10 + typedef int uid_t;57.11 + typedef int dev_t;57.12 + typedef int ino_t;57.13 + typedef int mode_t;57.14 + typedef int caddr_t;57.15 +57.16 + however, these aren't "reasonable" values, the sysvi386 ones make far57.17 + more sense, and should work sufficiently well (in particular, h830057.18 + doesn't have a stat, and the necv70 doesn't matter.) -- eichin57.19 + */57.20 +57.21 +#ifndef _SYS_TYPES_H57.22 +#define _SYS_TYPES_H57.23 +57.24 +#if defined (_WIN32) || defined (__CYGWIN__)57.25 +#define __MS_types__57.26 +#endif57.27 +57.28 +#ifdef __i386__57.29 +#if defined (GO32) || defined (__MSDOS__)57.30 +#define __MS_types__57.31 +#endif57.32 +#endif57.33 +57.34 +# include <stddef.h>57.35 +# include <machine/types.h>57.36 +57.37 +/* To ensure the stat struct's layout doesn't change when sizeof(int), etc.57.38 + changes, we assume sizeof short and long never change and have all types57.39 + used to define struct stat use them and not int where possible.57.40 + Where not possible, _ST_INTxx are used. It would be preferable to not have57.41 + such assumptions, but until the extra fluff is necessary, it's avoided.57.42 + No 64 bit targets use stat yet. What to do about them is postponed57.43 + until necessary. */57.44 +#ifdef __GNUC__57.45 +#define _ST_INT32 __attribute__ ((__mode__ (__SI__)))57.46 +#else57.47 +#define _ST_INT3257.48 +#endif57.49 +57.50 +# ifndef _POSIX_SOURCE57.51 +57.52 +# define physadr physadr_t57.53 +# define quad quad_t57.54 +57.55 +#ifndef _WINSOCK_H57.56 +typedef unsigned char u_char;57.57 +typedef unsigned short u_short;57.58 +typedef unsigned int u_int;57.59 +typedef unsigned long u_long;57.60 +#endif57.61 +57.62 +typedef unsigned short ushort; /* System V compatibility */57.63 +typedef unsigned int uint; /* System V compatibility */57.64 +# endif /*!_POSIX_SOURCE */57.65 +57.66 +#ifndef __time_t_defined57.67 +typedef _TIME_T_ time_t;57.68 +#define __time_t_defined57.69 +#endif57.70 +57.71 +typedef long daddr_t;57.72 +typedef char * caddr_t;57.73 +57.74 +#ifdef __MS_types__57.75 +typedef unsigned long ino_t;57.76 +#else57.77 +#ifdef __sparc__57.78 +typedef unsigned long ino_t;57.79 +#else57.80 +typedef unsigned short ino_t;57.81 +#endif57.82 +#endif57.83 +57.84 +#ifdef __MS_types__57.85 +typedef unsigned long vm_offset_t;57.86 +typedef unsigned long vm_size_t;57.87 +57.88 +#define __BIT_TYPES_DEFINED__57.89 +57.90 +typedef char int8_t;57.91 +typedef unsigned char u_int8_t;57.92 +typedef short int16_t;57.93 +typedef unsigned short u_int16_t;57.94 +typedef int int32_t;57.95 +typedef unsigned int u_int32_t;57.96 +typedef long long int64_t;57.97 +typedef unsigned long long u_int64_t;57.98 +typedef int32_t register_t;57.99 +#endif /* __MS_types__ */57.100 +57.101 +/*57.102 + * All these should be machine specific - right now they are all broken.57.103 + * However, for all of Cygnus' embedded targets, we want them to all be57.104 + * the same. Otherwise things like sizeof (struct stat) might depend on57.105 + * how the file was compiled (e.g. -mint16 vs -mint32, etc.).57.106 + */57.107 +57.108 +typedef short dev_t;57.109 +57.110 +typedef long off_t;57.111 +57.112 +typedef unsigned short uid_t;57.113 +typedef unsigned short gid_t;57.114 +typedef int pid_t;57.115 +typedef long key_t;57.116 +typedef long ssize_t;57.117 +57.118 +#ifdef __MS_types__57.119 +typedef char * addr_t;57.120 +typedef int mode_t;57.121 +#else57.122 +#if defined (__sparc__) && !defined (__sparc_v9__)57.123 +#ifdef __svr4__57.124 +typedef unsigned long mode_t;57.125 +#else57.126 +typedef unsigned short mode_t;57.127 +#endif57.128 +#else57.129 +typedef unsigned int mode_t _ST_INT32;57.130 +#endif57.131 +#endif /* ! __MS_types__ */57.132 +57.133 +typedef unsigned short nlink_t;57.134 +57.135 +/* We don't define fd_set and friends if we are compiling POSIX57.136 + source, or if we have included the Windows Sockets.h header (which57.137 + defines Windows versions of them). Note that a program which57.138 + includes the Windows sockets.h header must know what it is doing;57.139 + it must not call the cygwin32 select function. */57.140 +# if ! defined (_POSIX_SOURCE) && ! defined (_WINSOCK_H)57.141 +57.142 +# define NBBY 8 /* number of bits in a byte */57.143 +/*57.144 + * Select uses bit masks of file descriptors in longs.57.145 + * These macros manipulate such bit fields (the filesystem macros use chars).57.146 + * FD_SETSIZE may be defined by the user, but the default here57.147 + * should be >= NOFILE (param.h).57.148 + */57.149 +# ifndef FD_SETSIZE57.150 +# define FD_SETSIZE 6457.151 +# endif57.152 +57.153 +typedef long fd_mask;57.154 +# define NFDBITS (sizeof (fd_mask) * NBBY) /* bits per mask */57.155 +# ifndef howmany57.156 +# define howmany(x,y) (((x)+((y)-1))/(y))57.157 +# endif57.158 +57.159 +/* We use a macro for fd_set so that including Sockets.h afterwards57.160 + can work. */57.161 +typedef struct _types_fd_set {57.162 + fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)];57.163 +} _types_fd_set;57.164 +57.165 +#define fd_set _types_fd_set57.166 +57.167 +# define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1L << ((n) % NFDBITS)))57.168 +# define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1L << ((n) % NFDBITS)))57.169 +# define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1L << ((n) % NFDBITS)))57.170 +# define FD_ZERO(p) bzero((caddr_t)(p), sizeof (*(p)))57.171 +57.172 +# endif /* ! defined (_POSIX_SOURCE) && ! defined (_WINSOCK_H) */57.173 +57.174 +#undef __MS_types__57.175 +#undef _ST_INT3257.176 +57.177 +#endif /* _SYS_TYPES_H */
58.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000058.2 +++ b/test/include/sys/unistd.h Tue Jul 11 01:35:27 2006 +000058.3 @@ -0,0 +1,175 @@58.4 +#ifndef _SYS_UNISTD_H58.5 +#define _SYS_UNISTD_H58.6 +58.7 +#ifdef __cplusplus58.8 +extern "C" {58.9 +#endif58.10 +58.11 +#include <_ansi.h>58.12 +#include <sys/types.h>58.13 +#define __need_size_t58.14 +#include <stddef.h>58.15 +58.16 +extern char **environ;58.17 +58.18 +void _EXFUN(_exit, (int __status ) _ATTRIBUTE ((noreturn)));58.19 +58.20 +int _EXFUN(access,(const char *__path, int __amode ));58.21 +unsigned _EXFUN(alarm, (unsigned __secs ));58.22 +int _EXFUN(chdir, (const char *__path ));58.23 +int _EXFUN(chmod, (const char *__path, mode_t __mode ));58.24 +int _EXFUN(chown, (const char *__path, uid_t __owner, gid_t __group ));58.25 +int _EXFUN(close, (int __fildes ));58.26 +char _EXFUN(*ctermid, (char *__s ));58.27 +char _EXFUN(*cuserid, (char *__s ));58.28 +int _EXFUN(dup, (int __fildes ));58.29 +int _EXFUN(dup2, (int __fildes, int __fildes2 ));58.30 +int _EXFUN(execl, (const char *__path, const char *, ... ));58.31 +int _EXFUN(execle, (const char *__path, const char *, ... ));58.32 +int _EXFUN(execlp, (const char *__file, const char *, ... ));58.33 +int _EXFUN(execv, (const char *__path, char * const __argv[] ));58.34 +int _EXFUN(execve, (const char *__path, char * const __argv[], char * const __envp[] ));58.35 +int _EXFUN(execvp, (const char *__file, char * const __argv[] ));58.36 +pid_t _EXFUN(fork, (void ));58.37 +long _EXFUN(fpathconf, (int __fd, int __name ));58.38 +int _EXFUN(fsync, (int __fd));58.39 +char _EXFUN(*getcwd, (char *__buf, size_t __size ));58.40 +gid_t _EXFUN(getegid, (void ));58.41 +uid_t _EXFUN(geteuid, (void ));58.42 +gid_t _EXFUN(getgid, (void ));58.43 +int _EXFUN(getgroups, (int __gidsetsize, gid_t __grouplist[] ));58.44 +char _EXFUN(*getlogin, (void ));58.45 +char _EXFUN(*getpass, (__const char *__prompt));58.46 +size_t _EXFUN(getpagesize, (void));58.47 +pid_t _EXFUN(getpgrp, (void ));58.48 +pid_t _EXFUN(getpid, (void ));58.49 +pid_t _EXFUN(getppid, (void ));58.50 +uid_t _EXFUN(getuid, (void ));58.51 +int _EXFUN(isatty, (int __fildes ));58.52 +int _EXFUN(link, (const char *__path1, const char *__path2 ));58.53 +int _EXFUN(nice, (int __nice_value ));58.54 +off_t _EXFUN(lseek, (int __fildes, off_t __offset, int __whence ));58.55 +long _EXFUN(pathconf, (const char *__path, int __name ));58.56 +int _EXFUN(pause, (void ));58.57 +int _EXFUN(pipe, (int __fildes[2] ));58.58 +int _EXFUN(read, (int __fildes, void *__buf, size_t __nbyte ));58.59 +int _EXFUN(rmdir, (const char *__path ));58.60 +void * _EXFUN(sbrk, (size_t __incr));58.61 +int _EXFUN(setgid, (gid_t __gid ));58.62 +int _EXFUN(setpgid, (pid_t __pid, pid_t __pgid ));58.63 +pid_t _EXFUN(setsid, (void ));58.64 +int _EXFUN(setuid, (uid_t __uid ));58.65 +unsigned _EXFUN(sleep, (unsigned int __seconds ));58.66 +void _EXFUN(swab, (const void *, void *, ssize_t));58.67 +long _EXFUN(sysconf, (int __name ));58.68 +pid_t _EXFUN(tcgetpgrp, (int __fildes ));58.69 +int _EXFUN(tcsetpgrp, (int __fildes, pid_t __pgrp_id ));58.70 +char _EXFUN(*ttyname, (int __fildes ));58.71 +int _EXFUN(unlink, (const char *__path ));58.72 +int _EXFUN(write, (int __fildes, const void *__buf, size_t __nbyte ));58.73 +58.74 +/* Provide prototypes for most of the _<systemcall> names that are58.75 + provided in newlib for some compilers. */58.76 +int _EXFUN(_close, (int __fildes ));58.77 +pid_t _EXFUN(_fork, (void ));58.78 +pid_t _EXFUN(_getpid, (void ));58.79 +int _EXFUN(_link, (const char *__path1, const char *__path2 ));58.80 +off_t _EXFUN(_lseek, (int __fildes, off_t __offset, int __whence ));58.81 +int _EXFUN(_read, (int __fildes, void *__buf, size_t __nbyte ));58.82 +void * _EXFUN(_sbrk, (size_t __incr));58.83 +int _EXFUN(_unlink, (const char *__path ));58.84 +int _EXFUN(_write, (int __fildes, const void *__buf, size_t __nbyte ));58.85 +58.86 +#if defined(__CYGWIN32__) || defined(__rtems__)58.87 +unsigned _EXFUN(usleep, (unsigned int __useconds));58.88 +int _EXFUN(ftruncate, (int __fd, off_t __length));58.89 +int _EXFUN(truncate, (const char *, off_t __length));58.90 +int _EXFUN(gethostname, (char *__name, size_t __len));58.91 +char * _EXFUN(mktemp, (char *));58.92 +int _EXFUN(sync, (void));58.93 +int _EXFUN(readlink, (const char *__path, char *__buf, int __buflen));58.94 +int _EXFUN(symlink, (const char *__name1, const char *__name2));58.95 +#endif58.96 +58.97 +# define F_OK 058.98 +# define R_OK 458.99 +# define W_OK 258.100 +# define X_OK 158.101 +58.102 +# define SEEK_SET 058.103 +# define SEEK_CUR 158.104 +# define SEEK_END 258.105 +58.106 +/*58.107 + * RTEMS adheres to a later version of POSIX -- 1003.1b.58.108 + *58.109 + * XXX this version string should change.58.110 + */58.111 +58.112 +#ifdef __rtems__58.113 +#ifndef _POSIX_JOB_CONTROL58.114 +# define _POSIX_JOB_CONTROL 158.115 +#endif58.116 +#ifndef _POSIX_SAVED_IDS58.117 +# define _POSIX_SAVED_IDS 158.118 +#endif58.119 +# define _POSIX_VERSION 199009L58.120 +#else58.121 +#ifdef __svr4__58.122 +# define _POSIX_JOB_CONTROL 158.123 +# define _POSIX_SAVED_IDS 158.124 +# define _POSIX_VERSION 199009L58.125 +#endif58.126 +#endif58.127 +58.128 +#ifdef __CYGWIN32__58.129 +# define _POSIX_JOB_CONTROL 158.130 +# define _POSIX_SAVED_IDS 058.131 +# define _POSIX_VERSION 199009L58.132 +#endif58.133 +58.134 +#define STDIN_FILENO 0 /* standard input file descriptor */58.135 +#define STDOUT_FILENO 1 /* standard output file descriptor */58.136 +#define STDERR_FILENO 2 /* standard error file descriptor */58.137 +58.138 +long _EXFUN(sysconf, (int __name));58.139 +58.140 +# define _SC_ARG_MAX 058.141 +# define _SC_CHILD_MAX 158.142 +# define _SC_CLK_TCK 258.143 +# define _SC_NGROUPS_MAX 358.144 +# define _SC_OPEN_MAX 458.145 +/* no _SC_STREAM_MAX */58.146 +# define _SC_JOB_CONTROL 558.147 +# define _SC_SAVED_IDS 658.148 +# define _SC_VERSION 758.149 +# define _SC_PAGESIZE 858.150 +58.151 +# define _PC_LINK_MAX 058.152 +# define _PC_MAX_CANON 158.153 +# define _PC_MAX_INPUT 258.154 +# define _PC_NAME_MAX 358.155 +# define _PC_PATH_MAX 458.156 +# define _PC_PIPE_BUF 558.157 +# define _PC_CHOWN_RESTRICTED 658.158 +# define _PC_NO_TRUNC 758.159 +# define _PC_VDISABLE 858.160 +# define _PC_ASYNC_IO 958.161 +# define _PC_PRIO_IO 1058.162 +# define _PC_SYNC_IO 1158.163 +58.164 +# ifndef _POSIX_SOURCE58.165 +# define MAXNAMLEN 102458.166 +# endif /* _POSIX_SOURCE */58.167 +58.168 +/* FIXME: This is temporary until winsup gets sorted out. */58.169 +#ifdef __CYGWIN32__58.170 +#define MAXPATHLEN (260 - 1 /* NUL */)58.171 +#else58.172 +# define MAXPATHLEN 102458.173 +#endif58.174 +58.175 +#ifdef __cplusplus58.176 +}58.177 +#endif58.178 +#endif /* _SYS_UNISTD_H */
59.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000059.2 +++ b/test/include/sys/utime.h Tue Jul 11 01:35:27 2006 +000059.3 @@ -0,0 +1,22 @@59.4 +#ifndef _SYS_UTIME_H59.5 +#define _SYS_UTIME_H59.6 +59.7 +/* This is a dummy <sys/utime.h> file, not customized for any59.8 + particular system. If there is a utime.h in libc/sys/SYSDIR/sys,59.9 + it will override this one. */59.10 +59.11 +#ifdef __cplusplus59.12 +extern "C" {59.13 +#endif59.14 +59.15 +struct utimbuf59.16 +{59.17 + time_t actime;59.18 + time_t modtime;59.19 +};59.20 +59.21 +#ifdef __cplusplus59.22 +};59.23 +#endif59.24 +59.25 +#endif /* _SYS_UTIME_H */
60.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000060.2 +++ b/test/include/sys/wait.h Tue Jul 11 01:35:27 2006 +000060.3 @@ -0,0 +1,40 @@60.4 +#ifndef _SYS_WAIT_H60.5 +#define _SYS_WAIT_H60.6 +60.7 +#ifdef __cplusplus60.8 +extern "C" {60.9 +#endif60.10 +60.11 +#include <sys/types.h>60.12 +60.13 +#define WNOHANG 160.14 +#define WUNTRACED 260.15 +60.16 +/* A status looks like:60.17 + <2 bytes info> <2 bytes code>60.18 +60.19 + <code> == 0, child has exited, info is the exit value60.20 + <code> == 1..7e, child has exited, info is the signal number.60.21 + <code> == 7f, child has stopped, info was the signal number.60.22 + <code> == 80, there was a core dump.60.23 +*/60.24 +60.25 +#define WIFEXITED(w) (((w) & 0xff) == 0)60.26 +#define WIFSIGNALED(w) (((w) & 0x7f) > 0 && (((w) & 0x7f) < 0x7f))60.27 +#define WIFSTOPPED(w) (((w) & 0xff) == 0x7f)60.28 +#define WEXITSTATUS(w) (((w) >> 8) & 0xff)60.29 +#define WTERMSIG(w) ((w) & 0x7f)60.30 +#define WSTOPSIG WEXITSTATUS60.31 +60.32 +pid_t wait (int *);60.33 +pid_t waitpid (pid_t, int *, int);60.34 +60.35 +/* Provide prototypes for most of the _<systemcall> names that are60.36 + provided in newlib for some compilers. */60.37 +pid_t _wait (int *);60.38 +60.39 +#ifdef __cplusplus60.40 +};60.41 +#endif60.42 +60.43 +#endif
61.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000061.2 +++ b/test/include/termios.h Tue Jul 11 01:35:27 2006 +000061.3 @@ -0,0 +1,7 @@61.4 +#ifdef __cplusplus61.5 +extern "C" {61.6 +#endif61.7 +#include <sys/termios.h>61.8 +#ifdef __cplusplus61.9 +}61.10 +#endif
62.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000062.2 +++ b/test/include/time.h Tue Jul 11 01:35:27 2006 +000062.3 @@ -0,0 +1,90 @@62.4 +/*62.5 + * time.h62.6 + *62.7 + * Struct and function declarations for dealing with time.62.8 + */62.9 +62.10 +#ifndef _TIME_H_62.11 +#define _TIME_H_62.12 +62.13 +#include "_ansi.h"62.14 +62.15 +#ifdef __cplusplus62.16 +extern "C" {62.17 +#endif62.18 +62.19 +#ifndef NULL62.20 +#define NULL 062.21 +#endif62.22 +62.23 +/* Get _CLOCKS_PER_SEC_ */62.24 +#include <machine/time.h>62.25 +62.26 +#ifndef _CLOCKS_PER_SEC_62.27 +#define _CLOCKS_PER_SEC_ 100062.28 +#endif62.29 +62.30 +#define CLOCKS_PER_SEC _CLOCKS_PER_SEC_62.31 +#define CLK_TCK CLOCKS_PER_SEC62.32 +#define __need_size_t62.33 +#include <stddef.h>62.34 +62.35 +/* Get _CLOCK_T_ and _TIME_T_. */62.36 +#include <machine/types.h>62.37 +62.38 +#ifndef __clock_t_defined62.39 +typedef _CLOCK_T_ clock_t;62.40 +#define __clock_t_defined62.41 +#endif62.42 +62.43 +#ifndef __time_t_defined62.44 +typedef _TIME_T_ time_t;62.45 +#define __time_t_defined62.46 +#endif62.47 +62.48 +struct tm62.49 +{62.50 + int tm_sec;62.51 + int tm_min;62.52 + int tm_hour;62.53 + int tm_mday;62.54 + int tm_mon;62.55 + int tm_year;62.56 + int tm_wday;62.57 + int tm_yday;62.58 + int tm_isdst;62.59 +};62.60 +62.61 +clock_t _EXFUN(clock, (void));62.62 +double _EXFUN(difftime, (time_t _time2, time_t _time1));62.63 +time_t _EXFUN(mktime, (struct tm *_timeptr));62.64 +time_t _EXFUN(time, (time_t *_timer));62.65 +#ifndef _REENT_ONLY62.66 +char *_EXFUN(asctime, (const struct tm *_tblock));62.67 +char *_EXFUN(ctime, (const time_t *_time));62.68 +struct tm *_EXFUN(gmtime, (const time_t *_timer));62.69 +struct tm *_EXFUN(localtime,(const time_t *_timer));62.70 +#endif62.71 +size_t _EXFUN(strftime, (char *_s, size_t _maxsize, const char *_fmt, const struct tm *_t));62.72 +62.73 +char *_EXFUN(asctime_r, (const struct tm *, char *));62.74 +char *_EXFUN(ctime_r, (const time_t *, char *));62.75 +struct tm *_EXFUN(gmtime_r, (const time_t *, struct tm *));62.76 +struct tm *_EXFUN(localtime_r, (const time_t *, struct tm *));62.77 +62.78 +#ifdef __CYGWIN32__62.79 +#ifndef __STRICT_ANSI__62.80 +extern time_t _timezone __declspec(dllimport);62.81 +extern int _daylight __declspec(dllimport);62.82 +extern char *_tzname[2] __declspec(dllimport);62.83 +62.84 +char *_EXFUN(timezone, (void));62.85 +void _EXFUN(tzset, (void));62.86 +#endif62.87 +#endif /* __CYGWIN32__ */62.88 +62.89 +#ifdef __cplusplus62.90 +}62.91 +#endif62.92 +#endif /* _TIME_H_ */62.93 +
63.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000063.2 +++ b/test/include/unctrl.h Tue Jul 11 01:35:27 2006 +000063.3 @@ -0,0 +1,46 @@63.4 +/* From curses.h. */63.5 +/*63.6 + * Copyright (c) 1981, 199363.7 + * The Regents of the University of California. All rights reserved.63.8 + *63.9 + * Redistribution and use in source and binary forms, with or without63.10 + * modification, are permitted provided that the following conditions63.11 + * are met:63.12 + * 1. Redistributions of source code must retain the above copyright63.13 + * notice, this list of conditions and the following disclaimer.63.14 + * 2. Redistributions in binary form must reproduce the above copyright63.15 + * notice, this list of conditions and the following disclaimer in the63.16 + * documentation and/or other materials provided with the distribution.63.17 + * 3. All advertising materials mentioning features or use of this software63.18 + * must display the following acknowledgement:63.19 + * This product includes software developed by the University of63.20 + * California, Berkeley and its contributors.63.21 + * 4. Neither the name of the University nor the names of its contributors63.22 + * may be used to endorse or promote products derived from this software63.23 + * without specific prior written permission.63.24 + *63.25 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND63.26 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE63.27 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE63.28 + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE63.29 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL63.30 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS63.31 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)63.32 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT63.33 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY63.34 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF63.35 + * SUCH DAMAGE.63.36 + */63.37 +63.38 +#ifndef _UNCTRL_H_63.39 +#define _UNCTRL_H_63.40 +63.41 +#include <_ansi.h>63.42 +63.43 +#define unctrl(c) __unctrl[(c) & 0xff]63.44 +#define unctrllen(ch) __unctrllen[(ch) & 0xff]63.45 +63.46 +extern _CONST char * _CONST __unctrl[256]; /* Control strings. */63.47 +extern _CONST char __unctrllen[256]; /* Control strings length. */63.48 +63.49 +#endif /* _UNCTRL_H_ */
64.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000064.2 +++ b/test/include/unistd.h Tue Jul 11 01:35:27 2006 +000064.3 @@ -0,0 +1,6 @@64.4 +#ifndef _UNISTD_H_64.5 +#define _UNISTD_H_64.6 +64.7 +# include <sys/unistd.h>64.8 +64.9 +#endif /* _UNISTD_H_ */
65.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000065.2 +++ b/test/include/utime.h Tue Jul 11 01:35:27 2006 +000065.3 @@ -0,0 +1,10 @@65.4 +#ifdef __cplusplus65.5 +extern "C" {65.6 +#endif65.7 +65.8 +/* The utime function is defined in libc/sys/<arch>/sys if it exists. */65.9 +#include <sys/utime.h>65.10 +65.11 +#ifdef __cplusplus65.12 +}65.13 +#endif
66.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000066.2 +++ b/test/include/utmp.h Tue Jul 11 01:35:27 2006 +000066.3 @@ -0,0 +1,8 @@66.4 +#ifdef __cplusplus66.5 +extern "C" {66.6 +#endif66.7 +#include <sys/utmp.h>66.8 +#ifdef __cplusplus66.9 +}66.10 +#endif66.11 +
67.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000067.2 +++ b/test/lib.c Tue Jul 11 01:35:27 2006 +000067.3 @@ -0,0 +1,20 @@67.4 +#include "lib.h"67.5 +67.6 +void fwrite_dump( FILE *f, char *buf, int length)67.7 +{67.8 + int i,j;67.9 + for( i=0; i<length; i+=16 ) {67.10 + fprintf( f, "%08X: ", i );67.11 + for( j=0; j<16 && i+j < length; j+=4 ) {67.12 + unsigned int val = *((volatile unsigned int *)(buf+i+j));67.13 + fprintf( f, "%02X %02X %02X %02X ", val&0xFF, (val>>8)&0xFF, (val>>16)&0xFF, (val>>24)&0xFF );67.14 + }67.15 + for( ;j<16; j+= 4 ) {67.16 + fprintf( f, " " );67.17 + }67.18 + for( j=0; j<16 && i+j < length; j++ ) {67.19 + fprintf( f, "%c", isprint(buf[i+j]) ? buf[i+j] : '.' );67.20 + }67.21 + fprintf( f, "\n");67.22 + }67.23 +}
68.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000068.2 +++ b/test/lib.h Tue Jul 11 01:35:27 2006 +000068.3 @@ -0,0 +1,59 @@68.4 +#ifndef dc_lib_H68.5 +#define dc_lib_H68.6 +68.7 +#include <stdio.h>68.8 +68.9 +typedef unsigned char uint8_t;68.10 +typedef unsigned short uint16_t;68.11 +typedef unsigned int uint32_t;68.12 +typedef volatile unsigned int vuint32_t;68.13 +typedef volatile unsigned short vuint16_t;68.14 +68.15 +#define ASIC_STATUS0 0xA05F690068.16 +#define ASIC_STATUS1 0xA05F690468.17 +#define ASIC_STATUS2 0xA05F690868.18 +#define ASIC_IRQB0 0xA05F692068.19 +#define ASIC_IRQC2 0xA05f693868.20 +#define IRQB0_MASK 0x0007B00068.21 +68.22 +#define long_read(A) (*((volatile unsigned long*)(A)))68.23 +#define long_write(A, V) ( (*((volatile unsigned long*)(A))) = (V) )68.24 +#define word_read(A) (*((volatile unsigned short*)(A)))68.25 +#define word_write(A, V) ( (*((volatile unsigned short*)(A))) = (V) )68.26 +#define byte_read(A) (unsigned int)(*((volatile unsigned char*)(A)))68.27 +#define byte_write(A, V) ( (*((volatile unsigned char*)(A))) = (V) )68.28 +68.29 +int asic_wait(int event);68.30 +void asic_clear(void);68.31 +void asic_dump(FILE *f);68.32 +68.33 +void fwrite_dump(FILE *f, char *buf, int length);68.34 +68.35 +void *align32(char *buf );68.36 +void write_asic_status(void);68.37 +void reset_asic_status(void);68.38 +void g2_fifo_wait( void );68.39 +68.40 +void spu_memload( uint32_t dst, const void *src, int length );68.41 +void spu_memread( void *dst, uint32_t src, int length );68.42 +void dump_spu_memory( unsigned int from, int length );68.43 +68.44 +struct spudma_struct {68.45 + uint32_t g2_addr;68.46 + uint32_t sh4_addr;68.47 + uint32_t count;68.48 + uint32_t direction;68.49 + uint32_t mode;68.50 + uint32_t enable;68.51 + uint32_t status;68.52 + uint32_t blah;68.53 +};68.54 +extern struct spudma_struct *spudma;68.55 +68.56 +#define get_asic_status() (long_read(ASIC_STATUS0)&EVENT_MAPLE_MASK)68.57 +68.58 +int is_start_pressed();68.59 +68.60 +#define CHECK_IEQUALS( a, b ) if( a != b ) { fprintf(stderr, "Assertion failed at %s:%d: expected %08X, but was %08X\n", __FILE__, __LINE__, a, b ); return -1; }68.61 +68.62 +#endif
69.1 Binary file test/lib/libc.a has changed
70.1 Binary file test/lib/libm.a has changed
71.1 --- /dev/null Thu Jan 01 00:00:00 1970 +000071.2 +++ b/test/lib/newlib-1.8.2-dc.patch Tue Jul 11 01:35:27 2006 +000071.3 @@ -0,0 +1,6701 @@71.4 +diff -urN newlib-1.8.2/config.sub newlib-1.8.2-dc/config.sub71.5 +--- newlib-1.8.2/config.sub 1999-11-21 07:42:37.000000000 +100071.6 ++++ newlib-1.8.2-dc/config.sub 2006-07-06 18:28:31.000000000 +100071.7 +@@ -231,7 +231,8 @@71.8 + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \71.9 + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \71.10 + | clipper-* | orion-* \71.11 +- | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \71.12 ++ | sparclite-* | pdp11-* | sh-* | sh[1234]-* | sh[1234]eb-* \71.13 ++ | powerpc-* | powerpcle-* \71.14 + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \71.15 + | mips64el-* | mips64orion-* | mips64orionel-* \71.16 + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \71.17 +@@ -348,6 +349,10 @@71.18 + da30 | da30-*)71.19 + basic_machine=m68k-da3071.20 + ;;71.21 ++ dc | dreamcast)71.22 ++ basic_machine=sh-sega71.23 ++ os=-dreamcast71.24 ++ ;;71.25 + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)71.26 + basic_machine=mips-dec71.27 + ;;71.28 +@@ -950,7 +955,8 @@71.29 + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \71.30 + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \71.31 + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \71.32 +- | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*)71.33 ++ | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit* \71.34 ++ | -dreamcast* )71.35 + # Remember, each alternative MUST END IN *, to match a version number.71.36 + ;;71.37 + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \71.38 +@@ -1097,6 +1103,9 @@71.39 + sparc-* | *-sun)71.40 + os=-sunos4.1.171.41 + ;;71.42 ++ sh-sega)71.43 ++ os=-dreamcast71.44 ++ ;;71.45 + *-be)71.46 + os=-beos71.47 + ;;71.48 +diff -urN newlib-1.8.2/configure.in newlib-1.8.2-dc/configure.in71.49 +--- newlib-1.8.2/configure.in 1999-11-21 07:57:50.000000000 +100071.50 ++++ newlib-1.8.2-dc/configure.in 2006-07-06 18:28:31.000000000 +100071.51 +@@ -831,6 +831,15 @@71.52 + romp-*-*)71.53 + noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss"71.54 + ;;71.55 ++ sh*-*-dreamcast*)71.56 ++ case "${host}" in71.57 ++ i[3456]86-*-vsta) ;; # don't add gprof back in71.58 ++ i[3456]86-*-go32*) ;; # don't add gprof back in71.59 ++ i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in71.60 ++ *) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;71.61 ++ esac71.62 ++ noconfigdirs="$noconfigdirs target-libgloss"71.63 ++ ;;71.64 + sh-*-*)71.65 + case "${host}" in71.66 + i[3456]86-*-vsta) ;; # don't add gprof back in71.67 +diff -urN newlib-1.8.2/newlib/configure.host newlib-1.8.2-dc/newlib/configure.host71.68 +--- newlib-1.8.2/newlib/configure.host 1999-11-21 07:47:53.000000000 +100071.69 ++++ newlib-1.8.2-dc/newlib/configure.host 2006-07-06 18:31:57.000000000 +100071.70 +@@ -129,7 +129,7 @@71.71 + powerpc*)71.72 + machine_dir=powerpc71.73 + ;;71.74 +- sh)71.75 ++ sh*)71.76 + machine_dir=sh71.77 + ;;71.78 + sparc*)71.79 +@@ -191,6 +191,9 @@71.80 + sys_dir=cygwin71.81 + posix_dir=posix71.82 + ;;71.83 ++ *-*-dc* | *-*-dreamcast*)71.84 ++ sys_dir=dreamcast71.85 ++ ;;71.86 + *-*-netware*)71.87 + signal_dir=71.88 + sys_dir=netware71.89 +@@ -245,7 +248,7 @@71.90 + posix_dir=posix71.91 + ;;71.92 + sh*-*)71.93 +- sys_dir=sh71.94 ++ sys_dir=dreamcast71.95 + ;;71.96 + sparc-sun-sunos*)71.97 + sys_dir=sun471.98 +@@ -296,6 +299,10 @@71.99 + newlib_cflags="${newlib_cflags} -DHAVE_OPENDIR -DHAVE_RENAME -DSIGNAL_PROVIDED -DWANT_PRINTF_LONG_LONG -D_COMPILING_NEWLIB"71.100 + syscall_dir=syscalls71.101 + ;;71.102 ++ *-*-dc* | *-*-dreamcast*)71.103 ++ newlib_cflags="${newlib_cflags} -DNO_EXEC -DHAVE_GETTIMEOFDAY"71.104 ++ syscall_dir=syscalls71.105 ++ ;;71.106 + # RTEMS supplies its own versions of some routines:71.107 + # malloc() (reentrant version)71.108 + # exit() RTEMS has a "global" reent to flush71.109 +diff -urN newlib-1.8.2/newlib/libc/ctype/Makefile.in newlib-1.8.2-dc/newlib/libc/ctype/Makefile.in71.110 +--- newlib-1.8.2/newlib/libc/ctype/Makefile.in 1998-12-01 08:03:43.000000000 +100071.111 ++++ newlib-1.8.2-dc/newlib/libc/ctype/Makefile.in 2006-07-06 18:28:31.000000000 +100071.112 +@@ -1,6 +1,6 @@71.113 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.114 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.115 +71.116 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.117 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.118 + # This Makefile.in is free software; the Free Software Foundation71.119 + # gives unlimited permission to copy and/or distribute it,71.120 + # with or without modifications, as long as this notice is preserved.71.121 +@@ -46,7 +46,7 @@71.122 + AUTOHEADER = @AUTOHEADER@71.123 +71.124 + INSTALL = @INSTALL@71.125 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.126 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.127 + INSTALL_DATA = @INSTALL_DATA@71.128 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.129 + transform = @program_transform_name@71.130 +@@ -78,7 +78,6 @@71.131 + PACKAGE = @PACKAGE@71.132 + RANLIB = @RANLIB@71.133 + VERSION = @VERSION@71.134 +-mach_add_objs = @mach_add_objs@71.135 + machine_dir = @machine_dir@71.136 + newlib_basedir = @newlib_basedir@71.137 + sys_dir = @sys_dir@71.138 +@@ -89,40 +88,11 @@71.139 +71.140 + noinst_LIBRARIES = lib.a71.141 +71.142 +-lib_a_SOURCES = \71.143 +- ctype_.c \71.144 +- isalnum.c \71.145 +- isalpha.c \71.146 +- isascii.c \71.147 +- iscntrl.c \71.148 +- isdigit.c \71.149 +- islower.c \71.150 +- isupper.c \71.151 +- isprint.c \71.152 +- ispunct.c \71.153 +- isspace.c \71.154 +- isxdigit.c \71.155 +- toascii.c \71.156 +- tolower.c \71.157 +- toupper.c \71.158 +- _tolower.c \71.159 +- _toupper.c71.160 +-71.161 +-CHEWOUT_FILES= \71.162 +- isalnum.def \71.163 +- isalpha.def \71.164 +- isascii.def \71.165 +- iscntrl.def \71.166 +- isdigit.def \71.167 +- islower.def \71.168 +- isprint.def \71.169 +- ispunct.def \71.170 +- isspace.def \71.171 +- isupper.def \71.172 +- isxdigit.def \71.173 +- toascii.def \71.174 +- tolower.def \71.175 +- toupper.def71.176 ++lib_a_SOURCES = ctype_.c isalnum.c isalpha.c isascii.c iscntrl.c isdigit.c islower.c isupper.c isprint.c ispunct.c isspace.c isxdigit.c toascii.c tolower.c toupper.c _tolower.c _toupper.c71.177 ++71.178 ++71.179 ++CHEWOUT_FILES = isalnum.def isalpha.def isascii.def iscntrl.def isdigit.def islower.def isprint.def ispunct.def isspace.def isupper.def isxdigit.def toascii.def tolower.def toupper.def71.180 ++71.181 +71.182 + SUFFIXES = .def71.183 +71.184 +@@ -146,22 +116,22 @@71.185 + toascii.o tolower.o toupper.o _tolower.o _toupper.o71.186 + CFLAGS = @CFLAGS@71.187 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.188 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.189 ++CCLD = $(CC)71.190 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.191 + DIST_COMMON = Makefile.am Makefile.in71.192 +71.193 +71.194 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.195 +71.196 + TAR = tar71.197 +-GZIP = --best71.198 ++GZIP_ENV = --best71.199 + SOURCES = $(lib_a_SOURCES)71.200 + OBJECTS = $(lib_a_OBJECTS)71.201 +71.202 +-all: Makefile $(LIBRARIES)71.203 +-71.204 ++all: all-redirect71.205 + .SUFFIXES:71.206 + .SUFFIXES: .S .c .def .o .s71.207 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.208 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.209 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus ctype/Makefile71.210 +71.211 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.212 +@@ -205,8 +175,12 @@71.213 + tags: TAGS71.214 +71.215 + ID: $(HEADERS) $(SOURCES) $(LISP)71.216 ++ list='$(SOURCES) $(HEADERS)'; \71.217 ++ unique=`for i in $$list; do echo $$i; done | \71.218 ++ awk ' { files[$$0] = 1; } \71.219 ++ END { for (i in files) print i; }'`; \71.220 + here=`pwd` && cd $(srcdir) \71.221 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.222 ++ && mkid -f$$here/ID $$unique $(LISP)71.223 +71.224 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.225 + tags=; \71.226 +@@ -234,28 +208,39 @@71.227 + distdir: $(DISTFILES)71.228 + @for file in $(DISTFILES); do \71.229 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.230 +- test -f $(distdir)/$$file \71.231 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.232 +- || cp -p $$d/$$file $(distdir)/$$file; \71.233 ++ if test -d $$d/$$file; then \71.234 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.235 ++ else \71.236 ++ test -f $(distdir)/$$file \71.237 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.238 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.239 ++ fi; \71.240 + done71.241 +-info:71.242 +-dvi:71.243 +-check:71.244 +-installcheck:71.245 +-install-info:71.246 +-install-exec:71.247 +- @$(NORMAL_INSTALL)71.248 +-71.249 +-install-data:71.250 +- @$(NORMAL_INSTALL)71.251 +-71.252 +-install: install-exec install-data all71.253 +- @:71.254 +-71.255 +-uninstall:71.256 +-71.257 ++info-am:71.258 ++info: info-am71.259 ++dvi-am:71.260 ++dvi: dvi-am71.261 ++check-am:71.262 ++check: check-am71.263 ++installcheck-am:71.264 ++installcheck: installcheck-am71.265 ++install-info-am:71.266 ++install-info: install-info-am71.267 ++install-exec-am:71.268 ++install-exec: install-exec-am71.269 ++71.270 ++install-data-am:71.271 ++install-data: install-data-am71.272 ++71.273 ++install-am: all-am71.274 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.275 ++install: install-am71.276 ++uninstall-am:71.277 ++uninstall: uninstall-am71.278 ++all-am: Makefile $(LIBRARIES)71.279 ++all-redirect: all-am71.280 + install-strip:71.281 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.282 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.283 + installdirs:71.284 +71.285 +71.286 +@@ -269,29 +254,38 @@71.287 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.288 +71.289 + maintainer-clean-generic:71.290 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.291 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.292 + mostlyclean-tags mostlyclean-generic71.293 +71.294 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.295 +- mostlyclean71.296 ++mostlyclean: mostlyclean-am71.297 +71.298 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.299 +- distclean-generic clean71.300 +- -rm -f config.status71.301 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.302 ++ mostlyclean-am71.303 +71.304 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.305 ++clean: clean-am71.306 ++71.307 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.308 ++ distclean-tags distclean-generic clean-am71.309 ++71.310 ++distclean: distclean-am71.311 ++71.312 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.313 + maintainer-clean-compile maintainer-clean-tags \71.314 +- maintainer-clean-generic distclean71.315 ++ maintainer-clean-generic distclean-am71.316 + @echo "This command is intended for maintainers to use;"71.317 + @echo "it deletes files that may require special tools to rebuild."71.318 +71.319 ++maintainer-clean: maintainer-clean-am71.320 ++71.321 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.322 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.323 + mostlyclean-compile distclean-compile clean-compile \71.324 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.325 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.326 +-install-info install-exec install-data install uninstall all \71.327 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.328 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.329 ++check-am installcheck-am installcheck install-info-am install-info \71.330 ++install-exec-am install-exec install-data-am install-data install-am \71.331 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.332 ++mostlyclean-generic distclean-generic clean-generic \71.333 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.334 +71.335 +71.336 +diff -urN newlib-1.8.2/newlib/libc/errno/Makefile.in newlib-1.8.2-dc/newlib/libc/errno/Makefile.in71.337 +--- newlib-1.8.2/newlib/libc/errno/Makefile.in 1998-12-01 08:03:43.000000000 +100071.338 ++++ newlib-1.8.2-dc/newlib/libc/errno/Makefile.in 2006-07-06 18:28:31.000000000 +100071.339 +@@ -1,6 +1,6 @@71.340 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.341 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.342 +71.343 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.344 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.345 + # This Makefile.in is free software; the Free Software Foundation71.346 + # gives unlimited permission to copy and/or distribute it,71.347 + # with or without modifications, as long as this notice is preserved.71.348 +@@ -46,7 +46,7 @@71.349 + AUTOHEADER = @AUTOHEADER@71.350 +71.351 + INSTALL = @INSTALL@71.352 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.353 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.354 + INSTALL_DATA = @INSTALL_DATA@71.355 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.356 + transform = @program_transform_name@71.357 +@@ -78,7 +78,6 @@71.358 + PACKAGE = @PACKAGE@71.359 + RANLIB = @RANLIB@71.360 + VERSION = @VERSION@71.361 +-mach_add_objs = @mach_add_objs@71.362 + machine_dir = @machine_dir@71.363 + newlib_basedir = @newlib_basedir@71.364 + sys_dir = @sys_dir@71.365 +@@ -91,7 +90,7 @@71.366 +71.367 + lib_a_SOURCES = errno.c71.368 +71.369 +-CHEWOUT_FILES =71.370 ++CHEWOUT_FILES =71.371 +71.372 + SUFFIXES = .def71.373 +71.374 +@@ -113,22 +112,22 @@71.375 + lib_a_OBJECTS = errno.o71.376 + CFLAGS = @CFLAGS@71.377 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.378 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.379 ++CCLD = $(CC)71.380 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.381 + DIST_COMMON = Makefile.am Makefile.in71.382 +71.383 +71.384 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.385 +71.386 + TAR = tar71.387 +-GZIP = --best71.388 ++GZIP_ENV = --best71.389 + SOURCES = $(lib_a_SOURCES)71.390 + OBJECTS = $(lib_a_OBJECTS)71.391 +71.392 +-all: Makefile $(LIBRARIES)71.393 +-71.394 ++all: all-redirect71.395 + .SUFFIXES:71.396 + .SUFFIXES: .S .c .def .o .s71.397 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.398 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.399 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus errno/Makefile71.400 +71.401 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.402 +@@ -172,8 +171,12 @@71.403 + tags: TAGS71.404 +71.405 + ID: $(HEADERS) $(SOURCES) $(LISP)71.406 ++ list='$(SOURCES) $(HEADERS)'; \71.407 ++ unique=`for i in $$list; do echo $$i; done | \71.408 ++ awk ' { files[$$0] = 1; } \71.409 ++ END { for (i in files) print i; }'`; \71.410 + here=`pwd` && cd $(srcdir) \71.411 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.412 ++ && mkid -f$$here/ID $$unique $(LISP)71.413 +71.414 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.415 + tags=; \71.416 +@@ -201,28 +204,39 @@71.417 + distdir: $(DISTFILES)71.418 + @for file in $(DISTFILES); do \71.419 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.420 +- test -f $(distdir)/$$file \71.421 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.422 +- || cp -p $$d/$$file $(distdir)/$$file; \71.423 ++ if test -d $$d/$$file; then \71.424 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.425 ++ else \71.426 ++ test -f $(distdir)/$$file \71.427 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.428 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.429 ++ fi; \71.430 + done71.431 +-info:71.432 +-dvi:71.433 +-check:71.434 +-installcheck:71.435 +-install-info:71.436 +-install-exec:71.437 +- @$(NORMAL_INSTALL)71.438 +-71.439 +-install-data:71.440 +- @$(NORMAL_INSTALL)71.441 +-71.442 +-install: install-exec install-data all71.443 +- @:71.444 +-71.445 +-uninstall:71.446 +-71.447 ++info-am:71.448 ++info: info-am71.449 ++dvi-am:71.450 ++dvi: dvi-am71.451 ++check-am:71.452 ++check: check-am71.453 ++installcheck-am:71.454 ++installcheck: installcheck-am71.455 ++install-info-am:71.456 ++install-info: install-info-am71.457 ++install-exec-am:71.458 ++install-exec: install-exec-am71.459 ++71.460 ++install-data-am:71.461 ++install-data: install-data-am71.462 ++71.463 ++install-am: all-am71.464 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.465 ++install: install-am71.466 ++uninstall-am:71.467 ++uninstall: uninstall-am71.468 ++all-am: Makefile $(LIBRARIES)71.469 ++all-redirect: all-am71.470 + install-strip:71.471 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.472 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.473 + installdirs:71.474 +71.475 +71.476 +@@ -236,29 +250,38 @@71.477 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.478 +71.479 + maintainer-clean-generic:71.480 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.481 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.482 + mostlyclean-tags mostlyclean-generic71.483 +71.484 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.485 +- mostlyclean71.486 ++mostlyclean: mostlyclean-am71.487 ++71.488 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.489 ++ mostlyclean-am71.490 +71.491 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.492 +- distclean-generic clean71.493 +- -rm -f config.status71.494 ++clean: clean-am71.495 +71.496 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.497 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.498 ++ distclean-tags distclean-generic clean-am71.499 ++71.500 ++distclean: distclean-am71.501 ++71.502 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.503 + maintainer-clean-compile maintainer-clean-tags \71.504 +- maintainer-clean-generic distclean71.505 ++ maintainer-clean-generic distclean-am71.506 + @echo "This command is intended for maintainers to use;"71.507 + @echo "it deletes files that may require special tools to rebuild."71.508 +71.509 ++maintainer-clean: maintainer-clean-am71.510 ++71.511 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.512 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.513 + mostlyclean-compile distclean-compile clean-compile \71.514 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.515 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.516 +-install-info install-exec install-data install uninstall all \71.517 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.518 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.519 ++check-am installcheck-am installcheck install-info-am install-info \71.520 ++install-exec-am install-exec install-data-am install-data install-am \71.521 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.522 ++mostlyclean-generic distclean-generic clean-generic \71.523 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.524 +71.525 +71.526 +diff -urN newlib-1.8.2/newlib/libc/locale/Makefile.in newlib-1.8.2-dc/newlib/libc/locale/Makefile.in71.527 +--- newlib-1.8.2/newlib/libc/locale/Makefile.in 1998-12-01 08:03:44.000000000 +100071.528 ++++ newlib-1.8.2-dc/newlib/libc/locale/Makefile.in 2006-07-06 18:28:31.000000000 +100071.529 +@@ -1,6 +1,6 @@71.530 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.531 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.532 +71.533 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.534 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.535 + # This Makefile.in is free software; the Free Software Foundation71.536 + # gives unlimited permission to copy and/or distribute it,71.537 + # with or without modifications, as long as this notice is preserved.71.538 +@@ -46,7 +46,7 @@71.539 + AUTOHEADER = @AUTOHEADER@71.540 +71.541 + INSTALL = @INSTALL@71.542 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.543 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.544 + INSTALL_DATA = @INSTALL_DATA@71.545 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.546 + transform = @program_transform_name@71.547 +@@ -78,7 +78,6 @@71.548 + PACKAGE = @PACKAGE@71.549 + RANLIB = @RANLIB@71.550 + VERSION = @VERSION@71.551 +-mach_add_objs = @mach_add_objs@71.552 + machine_dir = @machine_dir@71.553 + newlib_basedir = @newlib_basedir@71.554 + sys_dir = @sys_dir@71.555 +@@ -113,22 +112,22 @@71.556 + lib_a_OBJECTS = locale.o71.557 + CFLAGS = @CFLAGS@71.558 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.559 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.560 ++CCLD = $(CC)71.561 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.562 + DIST_COMMON = Makefile.am Makefile.in71.563 +71.564 +71.565 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.566 +71.567 + TAR = tar71.568 +-GZIP = --best71.569 ++GZIP_ENV = --best71.570 + SOURCES = $(lib_a_SOURCES)71.571 + OBJECTS = $(lib_a_OBJECTS)71.572 +71.573 +-all: Makefile $(LIBRARIES)71.574 +-71.575 ++all: all-redirect71.576 + .SUFFIXES:71.577 + .SUFFIXES: .S .c .def .o .s71.578 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.579 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.580 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus locale/Makefile71.581 +71.582 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.583 +@@ -172,8 +171,12 @@71.584 + tags: TAGS71.585 +71.586 + ID: $(HEADERS) $(SOURCES) $(LISP)71.587 ++ list='$(SOURCES) $(HEADERS)'; \71.588 ++ unique=`for i in $$list; do echo $$i; done | \71.589 ++ awk ' { files[$$0] = 1; } \71.590 ++ END { for (i in files) print i; }'`; \71.591 + here=`pwd` && cd $(srcdir) \71.592 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.593 ++ && mkid -f$$here/ID $$unique $(LISP)71.594 +71.595 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.596 + tags=; \71.597 +@@ -201,28 +204,39 @@71.598 + distdir: $(DISTFILES)71.599 + @for file in $(DISTFILES); do \71.600 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.601 +- test -f $(distdir)/$$file \71.602 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.603 +- || cp -p $$d/$$file $(distdir)/$$file; \71.604 ++ if test -d $$d/$$file; then \71.605 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.606 ++ else \71.607 ++ test -f $(distdir)/$$file \71.608 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.609 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.610 ++ fi; \71.611 + done71.612 +-info:71.613 +-dvi:71.614 +-check:71.615 +-installcheck:71.616 +-install-info:71.617 +-install-exec:71.618 +- @$(NORMAL_INSTALL)71.619 +-71.620 +-install-data:71.621 +- @$(NORMAL_INSTALL)71.622 +-71.623 +-install: install-exec install-data all71.624 +- @:71.625 +-71.626 +-uninstall:71.627 +-71.628 ++info-am:71.629 ++info: info-am71.630 ++dvi-am:71.631 ++dvi: dvi-am71.632 ++check-am:71.633 ++check: check-am71.634 ++installcheck-am:71.635 ++installcheck: installcheck-am71.636 ++install-info-am:71.637 ++install-info: install-info-am71.638 ++install-exec-am:71.639 ++install-exec: install-exec-am71.640 ++71.641 ++install-data-am:71.642 ++install-data: install-data-am71.643 ++71.644 ++install-am: all-am71.645 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.646 ++install: install-am71.647 ++uninstall-am:71.648 ++uninstall: uninstall-am71.649 ++all-am: Makefile $(LIBRARIES)71.650 ++all-redirect: all-am71.651 + install-strip:71.652 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.653 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.654 + installdirs:71.655 +71.656 +71.657 +@@ -236,29 +250,38 @@71.658 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.659 +71.660 + maintainer-clean-generic:71.661 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.662 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.663 + mostlyclean-tags mostlyclean-generic71.664 +71.665 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.666 +- mostlyclean71.667 ++mostlyclean: mostlyclean-am71.668 ++71.669 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.670 ++ mostlyclean-am71.671 +71.672 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.673 +- distclean-generic clean71.674 +- -rm -f config.status71.675 ++clean: clean-am71.676 +71.677 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.678 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.679 ++ distclean-tags distclean-generic clean-am71.680 ++71.681 ++distclean: distclean-am71.682 ++71.683 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.684 + maintainer-clean-compile maintainer-clean-tags \71.685 +- maintainer-clean-generic distclean71.686 ++ maintainer-clean-generic distclean-am71.687 + @echo "This command is intended for maintainers to use;"71.688 + @echo "it deletes files that may require special tools to rebuild."71.689 +71.690 ++maintainer-clean: maintainer-clean-am71.691 ++71.692 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.693 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.694 + mostlyclean-compile distclean-compile clean-compile \71.695 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.696 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.697 +-install-info install-exec install-data install uninstall all \71.698 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.699 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.700 ++check-am installcheck-am installcheck install-info-am install-info \71.701 ++install-exec-am install-exec install-data-am install-data install-am \71.702 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.703 ++mostlyclean-generic distclean-generic clean-generic \71.704 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.705 +71.706 +71.707 +diff -urN newlib-1.8.2/newlib/libc/Makefile.in newlib-1.8.2-dc/newlib/libc/Makefile.in71.708 +--- newlib-1.8.2/newlib/libc/Makefile.in 1999-11-21 07:55:49.000000000 +100071.709 ++++ newlib-1.8.2-dc/newlib/libc/Makefile.in 2006-07-06 18:28:31.000000000 +100071.710 +@@ -77,50 +77,30 @@71.711 + NEWLIB_CFLAGS = @NEWLIB_CFLAGS@71.712 + PACKAGE = @PACKAGE@71.713 + RANLIB = @RANLIB@71.714 +-VERSION = 1.8.271.715 ++VERSION = @VERSION@71.716 + machine_dir = @machine_dir@71.717 + newlib_basedir = @newlib_basedir@71.718 + sys_dir = @sys_dir@71.719 +71.720 + AUTOMAKE_OPTIONS = cygnus71.721 +71.722 +-@HAVE_POSIX_DIR_TRUE@POSIX_SUBDIR = \71.723 +-@HAVE_POSIX_DIR_TRUE@posix71.724 ++@HAVE_POSIX_DIR_TRUE@POSIX_SUBDIR = posix71.725 +71.726 +-@HAVE_SIGNAL_DIR_TRUE@SIGNAL_SUBDIR = \71.727 +-@HAVE_SIGNAL_DIR_TRUE@signal71.728 ++@HAVE_SIGNAL_DIR_TRUE@SIGNAL_SUBDIR = signal71.729 +71.730 +-@HAVE_SYSCALL_DIR_TRUE@SYSCALLS_SUBDIR = \71.731 +-@HAVE_SYSCALL_DIR_TRUE@syscalls71.732 ++@HAVE_SYSCALL_DIR_TRUE@SYSCALLS_SUBDIR = syscalls71.733 +71.734 +-@HAVE_UNIX_DIR_TRUE@UNIX_SUBDIR = \71.735 +-@HAVE_UNIX_DIR_TRUE@unix71.736 ++@HAVE_UNIX_DIR_TRUE@UNIX_SUBDIR = unix71.737 +71.738 + # The order of SUBDIRS is important for the integrated documentation.71.739 + # Do not change the order without considering the doc impact.71.740 +-SUBDIRS = stdlib ctype stdio string $(SIGNAL_SUBDIR) time locale sys reent \71.741 +- errno misc machine $(UNIX_SUBDIR) $(POSIX_SUBDIR) $(SYSCALLS_SUBDIR) .71.742 ++SUBDIRS = stdlib ctype stdio string $(SIGNAL_SUBDIR) time locale sys reent errno misc machine $(UNIX_SUBDIR) $(POSIX_SUBDIR) $(SYSCALLS_SUBDIR) .71.743 +71.744 +71.745 + noinst_LIBRARIES = libc.a71.746 + noinst_DATA = $(CRT0)71.747 +71.748 +-SUBLIBS = \71.749 +- stdlib/lib.a \71.750 +- ctype/lib.a \71.751 +- stdio/lib.a \71.752 +- string/lib.a \71.753 +- $(LIBC_SIGNAL_LIB) \71.754 +- time/lib.a \71.755 +- locale/lib.a \71.756 +- $(LIBC_SYS_LIB) \71.757 +- reent/lib.a \71.758 +- errno/lib.a \71.759 +- misc/lib.a \71.760 +- $(LIBC_MACHINE_LIB) \71.761 +- $(LIBC_UNIX_LIB) \71.762 +- $(LIBC_POSIX_LIB) \71.763 +- $(LIBC_SYSCALL_LIB)71.764 ++SUBLIBS = stdlib/lib.a ctype/lib.a stdio/lib.a string/lib.a $(LIBC_SIGNAL_LIB) time/lib.a locale/lib.a $(LIBC_SYS_LIB) reent/lib.a errno/lib.a misc/lib.a $(LIBC_MACHINE_LIB) $(LIBC_UNIX_LIB) $(LIBC_POSIX_LIB) $(LIBC_SYSCALL_LIB)71.765 +71.766 +71.767 + info_TEXINFOS = libc.texinfo71.768 +@@ -129,20 +109,10 @@71.769 + # builds .def files. We don't list subdirectories which don't build71.770 + # .def files; if the list of subdirectories changes, we must change71.771 + # this as well.71.772 +-SUBDEFS = \71.773 +- stdlib/stmp-def \71.774 +- ctype/stmp-def \71.775 +- stdio/stmp-def \71.776 +- string/stmp-def \71.777 +- $(LIBC_SIGNAL_DEF) \71.778 +- time/stmp-def \71.779 +- locale/stmp-def \71.780 +- reent/stmp-def \71.781 +- misc/stmp-def71.782 ++SUBDEFS = stdlib/stmp-def ctype/stmp-def stdio/stmp-def string/stmp-def $(LIBC_SIGNAL_DEF) time/stmp-def locale/stmp-def reent/stmp-def misc/stmp-def71.783 +71.784 +71.785 +-CLEANFILES = crt0.o \71.786 +- sigset.texi stmp-sigset tmp.texi targetdep.tex stmp-targetdep71.787 ++CLEANFILES = crt0.o sigset.texi stmp-sigset tmp.texi targetdep.tex stmp-targetdep71.788 +71.789 +71.790 + ACLOCAL_AMFLAGS = -I ..71.791 +@@ -471,7 +441,7 @@71.792 + @for file in $(DISTFILES); do \71.793 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.794 + if test -d $$d/$$file; then \71.795 +- cp -pr $$/$$file $(distdir)/$$file; \71.796 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.797 + else \71.798 + test -f $(distdir)/$$file \71.799 + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.800 +diff -urN newlib-1.8.2/newlib/libc/misc/Makefile.in newlib-1.8.2-dc/newlib/libc/misc/Makefile.in71.801 +--- newlib-1.8.2/newlib/libc/misc/Makefile.in 1998-12-01 08:03:46.000000000 +100071.802 ++++ newlib-1.8.2-dc/newlib/libc/misc/Makefile.in 2006-07-06 18:28:31.000000000 +100071.803 +@@ -1,6 +1,6 @@71.804 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.805 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.806 +71.807 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.808 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.809 + # This Makefile.in is free software; the Free Software Foundation71.810 + # gives unlimited permission to copy and/or distribute it,71.811 + # with or without modifications, as long as this notice is preserved.71.812 +@@ -46,7 +46,7 @@71.813 + AUTOHEADER = @AUTOHEADER@71.814 +71.815 + INSTALL = @INSTALL@71.816 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.817 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.818 + INSTALL_DATA = @INSTALL_DATA@71.819 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.820 + transform = @program_transform_name@71.821 +@@ -78,7 +78,6 @@71.822 + PACKAGE = @PACKAGE@71.823 + RANLIB = @RANLIB@71.824 + VERSION = @VERSION@71.825 +-mach_add_objs = @mach_add_objs@71.826 + machine_dir = @machine_dir@71.827 + newlib_basedir = @newlib_basedir@71.828 + sys_dir = @sys_dir@71.829 +@@ -113,22 +112,22 @@71.830 + lib_a_OBJECTS = dprintf.o unctrl.o ffs.o71.831 + CFLAGS = @CFLAGS@71.832 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.833 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.834 ++CCLD = $(CC)71.835 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.836 + DIST_COMMON = Makefile.am Makefile.in71.837 +71.838 +71.839 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.840 +71.841 + TAR = tar71.842 +-GZIP = --best71.843 ++GZIP_ENV = --best71.844 + SOURCES = $(lib_a_SOURCES)71.845 + OBJECTS = $(lib_a_OBJECTS)71.846 +71.847 +-all: Makefile $(LIBRARIES)71.848 +-71.849 ++all: all-redirect71.850 + .SUFFIXES:71.851 + .SUFFIXES: .S .c .def .o .s71.852 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.853 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.854 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus misc/Makefile71.855 +71.856 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.857 +@@ -172,8 +171,12 @@71.858 + tags: TAGS71.859 +71.860 + ID: $(HEADERS) $(SOURCES) $(LISP)71.861 ++ list='$(SOURCES) $(HEADERS)'; \71.862 ++ unique=`for i in $$list; do echo $$i; done | \71.863 ++ awk ' { files[$$0] = 1; } \71.864 ++ END { for (i in files) print i; }'`; \71.865 + here=`pwd` && cd $(srcdir) \71.866 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.867 ++ && mkid -f$$here/ID $$unique $(LISP)71.868 +71.869 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.870 + tags=; \71.871 +@@ -201,28 +204,39 @@71.872 + distdir: $(DISTFILES)71.873 + @for file in $(DISTFILES); do \71.874 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.875 +- test -f $(distdir)/$$file \71.876 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.877 +- || cp -p $$d/$$file $(distdir)/$$file; \71.878 ++ if test -d $$d/$$file; then \71.879 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.880 ++ else \71.881 ++ test -f $(distdir)/$$file \71.882 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.883 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.884 ++ fi; \71.885 + done71.886 +-info:71.887 +-dvi:71.888 +-check:71.889 +-installcheck:71.890 +-install-info:71.891 +-install-exec:71.892 +- @$(NORMAL_INSTALL)71.893 +-71.894 +-install-data:71.895 +- @$(NORMAL_INSTALL)71.896 +-71.897 +-install: install-exec install-data all71.898 +- @:71.899 +-71.900 +-uninstall:71.901 +-71.902 ++info-am:71.903 ++info: info-am71.904 ++dvi-am:71.905 ++dvi: dvi-am71.906 ++check-am:71.907 ++check: check-am71.908 ++installcheck-am:71.909 ++installcheck: installcheck-am71.910 ++install-info-am:71.911 ++install-info: install-info-am71.912 ++install-exec-am:71.913 ++install-exec: install-exec-am71.914 ++71.915 ++install-data-am:71.916 ++install-data: install-data-am71.917 ++71.918 ++install-am: all-am71.919 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.920 ++install: install-am71.921 ++uninstall-am:71.922 ++uninstall: uninstall-am71.923 ++all-am: Makefile $(LIBRARIES)71.924 ++all-redirect: all-am71.925 + install-strip:71.926 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.927 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.928 + installdirs:71.929 +71.930 +71.931 +@@ -236,29 +250,38 @@71.932 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.933 +71.934 + maintainer-clean-generic:71.935 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.936 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.937 + mostlyclean-tags mostlyclean-generic71.938 +71.939 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.940 +- mostlyclean71.941 ++mostlyclean: mostlyclean-am71.942 ++71.943 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.944 ++ mostlyclean-am71.945 +71.946 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.947 +- distclean-generic clean71.948 +- -rm -f config.status71.949 ++clean: clean-am71.950 +71.951 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.952 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.953 ++ distclean-tags distclean-generic clean-am71.954 ++71.955 ++distclean: distclean-am71.956 ++71.957 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.958 + maintainer-clean-compile maintainer-clean-tags \71.959 +- maintainer-clean-generic distclean71.960 ++ maintainer-clean-generic distclean-am71.961 + @echo "This command is intended for maintainers to use;"71.962 + @echo "it deletes files that may require special tools to rebuild."71.963 +71.964 ++maintainer-clean: maintainer-clean-am71.965 ++71.966 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.967 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.968 + mostlyclean-compile distclean-compile clean-compile \71.969 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.970 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.971 +-install-info install-exec install-data install uninstall all \71.972 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.973 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.974 ++check-am installcheck-am installcheck install-info-am install-info \71.975 ++install-exec-am install-exec install-data-am install-data install-am \71.976 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.977 ++mostlyclean-generic distclean-generic clean-generic \71.978 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.979 +71.980 +71.981 +diff -urN newlib-1.8.2/newlib/libc/posix/Makefile.in newlib-1.8.2-dc/newlib/libc/posix/Makefile.in71.982 +--- newlib-1.8.2/newlib/libc/posix/Makefile.in 1998-12-01 08:03:46.000000000 +100071.983 ++++ newlib-1.8.2-dc/newlib/libc/posix/Makefile.in 2006-07-06 18:28:31.000000000 +100071.984 +@@ -1,6 +1,6 @@71.985 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.986 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.987 +71.988 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.989 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.990 + # This Makefile.in is free software; the Free Software Foundation71.991 + # gives unlimited permission to copy and/or distribute it,71.992 + # with or without modifications, as long as this notice is preserved.71.993 +@@ -46,7 +46,7 @@71.994 + AUTOHEADER = @AUTOHEADER@71.995 +71.996 + INSTALL = @INSTALL@71.997 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.998 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.999 + INSTALL_DATA = @INSTALL_DATA@71.1000 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.1001 + transform = @program_transform_name@71.1002 +@@ -78,7 +78,6 @@71.1003 + PACKAGE = @PACKAGE@71.1004 + RANLIB = @RANLIB@71.1005 + VERSION = @VERSION@71.1006 +-mach_add_objs = @mach_add_objs@71.1007 + machine_dir = @machine_dir@71.1008 + newlib_basedir = @newlib_basedir@71.1009 + sys_dir = @sys_dir@71.1010 +@@ -89,12 +88,10 @@71.1011 +71.1012 + noinst_LIBRARIES = lib.a71.1013 +71.1014 +-lib_a_SOURCES = \71.1015 +- closedir.c opendir.c readdir.c rewinddir.c scandir.c seekdir.c \71.1016 +- telldir.c execl.c execle.c execlp.c execv.c execve.c execvp.c \71.1017 +- popen.c creat.c isatty.c71.1018 ++lib_a_SOURCES = closedir.c opendir.c readdir.c rewinddir.c scandir.c seekdir.c telldir.c execl.c execle.c execlp.c execv.c execve.c execvp.c popen.c creat.c isatty.c71.1019 +71.1020 +-CHEWOUT_FILES =71.1021 ++71.1022 ++CHEWOUT_FILES =71.1023 +71.1024 + SUFFIXES = .def71.1025 +71.1026 +@@ -118,22 +115,22 @@71.1027 + popen.o creat.o isatty.o71.1028 + CFLAGS = @CFLAGS@71.1029 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.1030 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1031 ++CCLD = $(CC)71.1032 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1033 + DIST_COMMON = Makefile.am Makefile.in71.1034 +71.1035 +71.1036 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.1037 +71.1038 + TAR = tar71.1039 +-GZIP = --best71.1040 ++GZIP_ENV = --best71.1041 + SOURCES = $(lib_a_SOURCES)71.1042 + OBJECTS = $(lib_a_OBJECTS)71.1043 +71.1044 +-all: Makefile $(LIBRARIES)71.1045 +-71.1046 ++all: all-redirect71.1047 + .SUFFIXES:71.1048 + .SUFFIXES: .S .c .def .o .s71.1049 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1050 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1051 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus posix/Makefile71.1052 +71.1053 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.1054 +@@ -177,8 +174,12 @@71.1055 + tags: TAGS71.1056 +71.1057 + ID: $(HEADERS) $(SOURCES) $(LISP)71.1058 ++ list='$(SOURCES) $(HEADERS)'; \71.1059 ++ unique=`for i in $$list; do echo $$i; done | \71.1060 ++ awk ' { files[$$0] = 1; } \71.1061 ++ END { for (i in files) print i; }'`; \71.1062 + here=`pwd` && cd $(srcdir) \71.1063 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.1064 ++ && mkid -f$$here/ID $$unique $(LISP)71.1065 +71.1066 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.1067 + tags=; \71.1068 +@@ -206,28 +207,39 @@71.1069 + distdir: $(DISTFILES)71.1070 + @for file in $(DISTFILES); do \71.1071 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.1072 +- test -f $(distdir)/$$file \71.1073 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1074 +- || cp -p $$d/$$file $(distdir)/$$file; \71.1075 ++ if test -d $$d/$$file; then \71.1076 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.1077 ++ else \71.1078 ++ test -f $(distdir)/$$file \71.1079 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1080 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.1081 ++ fi; \71.1082 + done71.1083 +-info:71.1084 +-dvi:71.1085 +-check:71.1086 +-installcheck:71.1087 +-install-info:71.1088 +-install-exec:71.1089 +- @$(NORMAL_INSTALL)71.1090 +-71.1091 +-install-data:71.1092 +- @$(NORMAL_INSTALL)71.1093 +-71.1094 +-install: install-exec install-data all71.1095 +- @:71.1096 +-71.1097 +-uninstall:71.1098 +-71.1099 ++info-am:71.1100 ++info: info-am71.1101 ++dvi-am:71.1102 ++dvi: dvi-am71.1103 ++check-am:71.1104 ++check: check-am71.1105 ++installcheck-am:71.1106 ++installcheck: installcheck-am71.1107 ++install-info-am:71.1108 ++install-info: install-info-am71.1109 ++install-exec-am:71.1110 ++install-exec: install-exec-am71.1111 ++71.1112 ++install-data-am:71.1113 ++install-data: install-data-am71.1114 ++71.1115 ++install-am: all-am71.1116 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.1117 ++install: install-am71.1118 ++uninstall-am:71.1119 ++uninstall: uninstall-am71.1120 ++all-am: Makefile $(LIBRARIES)71.1121 ++all-redirect: all-am71.1122 + install-strip:71.1123 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.1124 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.1125 + installdirs:71.1126 +71.1127 +71.1128 +@@ -241,29 +253,38 @@71.1129 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.1130 +71.1131 + maintainer-clean-generic:71.1132 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1133 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1134 + mostlyclean-tags mostlyclean-generic71.1135 +71.1136 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1137 +- mostlyclean71.1138 ++mostlyclean: mostlyclean-am71.1139 ++71.1140 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1141 ++ mostlyclean-am71.1142 +71.1143 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.1144 +- distclean-generic clean71.1145 +- -rm -f config.status71.1146 ++clean: clean-am71.1147 +71.1148 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.1149 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.1150 ++ distclean-tags distclean-generic clean-am71.1151 ++71.1152 ++distclean: distclean-am71.1153 ++71.1154 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.1155 + maintainer-clean-compile maintainer-clean-tags \71.1156 +- maintainer-clean-generic distclean71.1157 ++ maintainer-clean-generic distclean-am71.1158 + @echo "This command is intended for maintainers to use;"71.1159 + @echo "it deletes files that may require special tools to rebuild."71.1160 +71.1161 ++maintainer-clean: maintainer-clean-am71.1162 ++71.1163 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.1164 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.1165 + mostlyclean-compile distclean-compile clean-compile \71.1166 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.1167 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.1168 +-install-info install-exec install-data install uninstall all \71.1169 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.1170 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.1171 ++check-am installcheck-am installcheck install-info-am install-info \71.1172 ++install-exec-am install-exec install-data-am install-data install-am \71.1173 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.1174 ++mostlyclean-generic distclean-generic clean-generic \71.1175 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.1176 +71.1177 +71.1178 +diff -urN newlib-1.8.2/newlib/libc/reent/Makefile.in newlib-1.8.2-dc/newlib/libc/reent/Makefile.in71.1179 +--- newlib-1.8.2/newlib/libc/reent/Makefile.in 1998-12-01 08:03:46.000000000 +100071.1180 ++++ newlib-1.8.2-dc/newlib/libc/reent/Makefile.in 2006-07-06 18:28:31.000000000 +100071.1181 +@@ -1,6 +1,6 @@71.1182 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.1183 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.1184 +71.1185 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.1186 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.1187 + # This Makefile.in is free software; the Free Software Foundation71.1188 + # gives unlimited permission to copy and/or distribute it,71.1189 + # with or without modifications, as long as this notice is preserved.71.1190 +@@ -46,7 +46,7 @@71.1191 + AUTOHEADER = @AUTOHEADER@71.1192 +71.1193 + INSTALL = @INSTALL@71.1194 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.1195 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.1196 + INSTALL_DATA = @INSTALL_DATA@71.1197 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.1198 + transform = @program_transform_name@71.1199 +@@ -78,7 +78,6 @@71.1200 + PACKAGE = @PACKAGE@71.1201 + RANLIB = @RANLIB@71.1202 + VERSION = @VERSION@71.1203 +-mach_add_objs = @mach_add_objs@71.1204 + machine_dir = @machine_dir@71.1205 + newlib_basedir = @newlib_basedir@71.1206 + sys_dir = @sys_dir@71.1207 +@@ -89,36 +88,11 @@71.1208 +71.1209 + noinst_LIBRARIES = lib.a71.1210 +71.1211 +-lib_a_SOURCES = \71.1212 +- closer.c \71.1213 +- reent.c \71.1214 +- impure.c \71.1215 +- execr.c \71.1216 +- fstatr.c \71.1217 +- linkr.c \71.1218 +- lseekr.c \71.1219 +- openr.c \71.1220 +- readr.c \71.1221 +- signalr.c \71.1222 +- sbrkr.c \71.1223 +- statr.c \71.1224 +- timer.c \71.1225 +- writer.c71.1226 +-71.1227 +-CHEWOUT_FILES = \71.1228 +- closer.def \71.1229 +- reent.def \71.1230 +- execr.def \71.1231 +- fstatr.def \71.1232 +- linkr.def \71.1233 +- lseekr.def \71.1234 +- openr.def \71.1235 +- readr.def \71.1236 +- signalr.def \71.1237 +- sbrkr.def \71.1238 +- statr.def \71.1239 +- timer.def \71.1240 +- writer.def71.1241 ++lib_a_SOURCES = closer.c reent.c impure.c execr.c fstatr.c linkr.c lseekr.c openr.c readr.c signalr.c sbrkr.c statr.c timer.c writer.c71.1242 ++71.1243 ++71.1244 ++CHEWOUT_FILES = closer.def reent.def execr.def fstatr.def linkr.def lseekr.def openr.def readr.def signalr.def sbrkr.def statr.def timer.def writer.def71.1245 ++71.1246 +71.1247 + SUFFIXES = .def .h71.1248 +71.1249 +@@ -141,22 +115,22 @@71.1250 + lseekr.o openr.o readr.o signalr.o sbrkr.o statr.o timer.o writer.o71.1251 + CFLAGS = @CFLAGS@71.1252 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.1253 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1254 ++CCLD = $(CC)71.1255 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1256 + DIST_COMMON = Makefile.am Makefile.in71.1257 +71.1258 +71.1259 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.1260 +71.1261 + TAR = tar71.1262 +-GZIP = --best71.1263 ++GZIP_ENV = --best71.1264 + SOURCES = $(lib_a_SOURCES)71.1265 + OBJECTS = $(lib_a_OBJECTS)71.1266 +71.1267 +-all: Makefile $(LIBRARIES)71.1268 +-71.1269 ++all: all-redirect71.1270 + .SUFFIXES:71.1271 + .SUFFIXES: .S .c .def .h .o .s71.1272 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1273 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1274 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus reent/Makefile71.1275 +71.1276 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.1277 +@@ -200,8 +174,12 @@71.1278 + tags: TAGS71.1279 +71.1280 + ID: $(HEADERS) $(SOURCES) $(LISP)71.1281 ++ list='$(SOURCES) $(HEADERS)'; \71.1282 ++ unique=`for i in $$list; do echo $$i; done | \71.1283 ++ awk ' { files[$$0] = 1; } \71.1284 ++ END { for (i in files) print i; }'`; \71.1285 + here=`pwd` && cd $(srcdir) \71.1286 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.1287 ++ && mkid -f$$here/ID $$unique $(LISP)71.1288 +71.1289 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.1290 + tags=; \71.1291 +@@ -229,28 +207,39 @@71.1292 + distdir: $(DISTFILES)71.1293 + @for file in $(DISTFILES); do \71.1294 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.1295 +- test -f $(distdir)/$$file \71.1296 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1297 +- || cp -p $$d/$$file $(distdir)/$$file; \71.1298 ++ if test -d $$d/$$file; then \71.1299 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.1300 ++ else \71.1301 ++ test -f $(distdir)/$$file \71.1302 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1303 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.1304 ++ fi; \71.1305 + done71.1306 +-info:71.1307 +-dvi:71.1308 +-check:71.1309 +-installcheck:71.1310 +-install-info:71.1311 +-install-exec:71.1312 +- @$(NORMAL_INSTALL)71.1313 +-71.1314 +-install-data:71.1315 +- @$(NORMAL_INSTALL)71.1316 +-71.1317 +-install: install-exec install-data all71.1318 +- @:71.1319 +-71.1320 +-uninstall:71.1321 +-71.1322 ++info-am:71.1323 ++info: info-am71.1324 ++dvi-am:71.1325 ++dvi: dvi-am71.1326 ++check-am:71.1327 ++check: check-am71.1328 ++installcheck-am:71.1329 ++installcheck: installcheck-am71.1330 ++install-info-am:71.1331 ++install-info: install-info-am71.1332 ++install-exec-am:71.1333 ++install-exec: install-exec-am71.1334 ++71.1335 ++install-data-am:71.1336 ++install-data: install-data-am71.1337 ++71.1338 ++install-am: all-am71.1339 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.1340 ++install: install-am71.1341 ++uninstall-am:71.1342 ++uninstall: uninstall-am71.1343 ++all-am: Makefile $(LIBRARIES)71.1344 ++all-redirect: all-am71.1345 + install-strip:71.1346 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.1347 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.1348 + installdirs:71.1349 +71.1350 +71.1351 +@@ -264,29 +253,38 @@71.1352 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.1353 +71.1354 + maintainer-clean-generic:71.1355 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1356 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1357 + mostlyclean-tags mostlyclean-generic71.1358 +71.1359 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1360 +- mostlyclean71.1361 ++mostlyclean: mostlyclean-am71.1362 +71.1363 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.1364 +- distclean-generic clean71.1365 +- -rm -f config.status71.1366 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1367 ++ mostlyclean-am71.1368 +71.1369 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.1370 ++clean: clean-am71.1371 ++71.1372 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.1373 ++ distclean-tags distclean-generic clean-am71.1374 ++71.1375 ++distclean: distclean-am71.1376 ++71.1377 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.1378 + maintainer-clean-compile maintainer-clean-tags \71.1379 +- maintainer-clean-generic distclean71.1380 ++ maintainer-clean-generic distclean-am71.1381 + @echo "This command is intended for maintainers to use;"71.1382 + @echo "it deletes files that may require special tools to rebuild."71.1383 +71.1384 ++maintainer-clean: maintainer-clean-am71.1385 ++71.1386 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.1387 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.1388 + mostlyclean-compile distclean-compile clean-compile \71.1389 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.1390 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.1391 +-install-info install-exec install-data install uninstall all \71.1392 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.1393 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.1394 ++check-am installcheck-am installcheck install-info-am install-info \71.1395 ++install-exec-am install-exec install-data-am install-data install-am \71.1396 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.1397 ++mostlyclean-generic distclean-generic clean-generic \71.1398 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.1399 +71.1400 +71.1401 +diff -urN newlib-1.8.2/newlib/libc/signal/Makefile.in newlib-1.8.2-dc/newlib/libc/signal/Makefile.in71.1402 +--- newlib-1.8.2/newlib/libc/signal/Makefile.in 1998-12-01 08:03:46.000000000 +100071.1403 ++++ newlib-1.8.2-dc/newlib/libc/signal/Makefile.in 2006-07-06 18:28:31.000000000 +100071.1404 +@@ -1,6 +1,6 @@71.1405 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.1406 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.1407 +71.1408 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.1409 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.1410 + # This Makefile.in is free software; the Free Software Foundation71.1411 + # gives unlimited permission to copy and/or distribute it,71.1412 + # with or without modifications, as long as this notice is preserved.71.1413 +@@ -46,7 +46,7 @@71.1414 + AUTOHEADER = @AUTOHEADER@71.1415 +71.1416 + INSTALL = @INSTALL@71.1417 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.1418 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.1419 + INSTALL_DATA = @INSTALL_DATA@71.1420 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.1421 + transform = @program_transform_name@71.1422 +@@ -78,7 +78,6 @@71.1423 + PACKAGE = @PACKAGE@71.1424 + RANLIB = @RANLIB@71.1425 + VERSION = @VERSION@71.1426 +-mach_add_objs = @mach_add_objs@71.1427 + machine_dir = @machine_dir@71.1428 + newlib_basedir = @newlib_basedir@71.1429 + sys_dir = @sys_dir@71.1430 +@@ -113,22 +112,22 @@71.1431 + lib_a_OBJECTS = raise.o signal.o71.1432 + CFLAGS = @CFLAGS@71.1433 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.1434 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1435 ++CCLD = $(CC)71.1436 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1437 + DIST_COMMON = Makefile.am Makefile.in71.1438 +71.1439 +71.1440 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.1441 +71.1442 + TAR = tar71.1443 +-GZIP = --best71.1444 ++GZIP_ENV = --best71.1445 + SOURCES = $(lib_a_SOURCES)71.1446 + OBJECTS = $(lib_a_OBJECTS)71.1447 +71.1448 +-all: Makefile $(LIBRARIES)71.1449 +-71.1450 ++all: all-redirect71.1451 + .SUFFIXES:71.1452 + .SUFFIXES: .S .c .def .o .s71.1453 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1454 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1455 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus signal/Makefile71.1456 +71.1457 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.1458 +@@ -172,8 +171,12 @@71.1459 + tags: TAGS71.1460 +71.1461 + ID: $(HEADERS) $(SOURCES) $(LISP)71.1462 ++ list='$(SOURCES) $(HEADERS)'; \71.1463 ++ unique=`for i in $$list; do echo $$i; done | \71.1464 ++ awk ' { files[$$0] = 1; } \71.1465 ++ END { for (i in files) print i; }'`; \71.1466 + here=`pwd` && cd $(srcdir) \71.1467 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.1468 ++ && mkid -f$$here/ID $$unique $(LISP)71.1469 +71.1470 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.1471 + tags=; \71.1472 +@@ -201,28 +204,39 @@71.1473 + distdir: $(DISTFILES)71.1474 + @for file in $(DISTFILES); do \71.1475 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.1476 +- test -f $(distdir)/$$file \71.1477 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1478 +- || cp -p $$d/$$file $(distdir)/$$file; \71.1479 ++ if test -d $$d/$$file; then \71.1480 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.1481 ++ else \71.1482 ++ test -f $(distdir)/$$file \71.1483 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1484 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.1485 ++ fi; \71.1486 + done71.1487 +-info:71.1488 +-dvi:71.1489 +-check:71.1490 +-installcheck:71.1491 +-install-info:71.1492 +-install-exec:71.1493 +- @$(NORMAL_INSTALL)71.1494 +-71.1495 +-install-data:71.1496 +- @$(NORMAL_INSTALL)71.1497 +-71.1498 +-install: install-exec install-data all71.1499 +- @:71.1500 +-71.1501 +-uninstall:71.1502 +-71.1503 ++info-am:71.1504 ++info: info-am71.1505 ++dvi-am:71.1506 ++dvi: dvi-am71.1507 ++check-am:71.1508 ++check: check-am71.1509 ++installcheck-am:71.1510 ++installcheck: installcheck-am71.1511 ++install-info-am:71.1512 ++install-info: install-info-am71.1513 ++install-exec-am:71.1514 ++install-exec: install-exec-am71.1515 ++71.1516 ++install-data-am:71.1517 ++install-data: install-data-am71.1518 ++71.1519 ++install-am: all-am71.1520 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.1521 ++install: install-am71.1522 ++uninstall-am:71.1523 ++uninstall: uninstall-am71.1524 ++all-am: Makefile $(LIBRARIES)71.1525 ++all-redirect: all-am71.1526 + install-strip:71.1527 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.1528 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.1529 + installdirs:71.1530 +71.1531 +71.1532 +@@ -236,29 +250,38 @@71.1533 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.1534 +71.1535 + maintainer-clean-generic:71.1536 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1537 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.1538 + mostlyclean-tags mostlyclean-generic71.1539 +71.1540 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1541 +- mostlyclean71.1542 ++mostlyclean: mostlyclean-am71.1543 ++71.1544 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.1545 ++ mostlyclean-am71.1546 +71.1547 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.1548 +- distclean-generic clean71.1549 +- -rm -f config.status71.1550 ++clean: clean-am71.1551 +71.1552 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.1553 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.1554 ++ distclean-tags distclean-generic clean-am71.1555 ++71.1556 ++distclean: distclean-am71.1557 ++71.1558 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.1559 + maintainer-clean-compile maintainer-clean-tags \71.1560 +- maintainer-clean-generic distclean71.1561 ++ maintainer-clean-generic distclean-am71.1562 + @echo "This command is intended for maintainers to use;"71.1563 + @echo "it deletes files that may require special tools to rebuild."71.1564 +71.1565 ++maintainer-clean: maintainer-clean-am71.1566 ++71.1567 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.1568 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.1569 + mostlyclean-compile distclean-compile clean-compile \71.1570 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.1571 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.1572 +-install-info install-exec install-data install uninstall all \71.1573 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.1574 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.1575 ++check-am installcheck-am installcheck install-info-am install-info \71.1576 ++install-exec-am install-exec install-data-am install-data install-am \71.1577 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.1578 ++mostlyclean-generic distclean-generic clean-generic \71.1579 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.1580 +71.1581 +71.1582 +diff -urN newlib-1.8.2/newlib/libc/signal/signal.c newlib-1.8.2-dc/newlib/libc/signal/signal.c71.1583 +--- newlib-1.8.2/newlib/libc/signal/signal.c 1998-03-11 06:09:23.000000000 +100071.1584 ++++ newlib-1.8.2-dc/newlib/libc/signal/signal.c 2006-07-06 18:28:31.000000000 +100071.1585 +@@ -180,13 +180,13 @@71.1586 +71.1587 + switch ((_POINTER_INT) ptr->_sig_func[sig])71.1588 + {71.1589 +- case SIG_DFL:71.1590 ++ case (_POINTER_INT) SIG_DFL:71.1591 + return _kill_r (ptr, _getpid_r (ptr), sig);71.1592 +71.1593 +- case SIG_IGN:71.1594 ++ case (_POINTER_INT) SIG_IGN:71.1595 + break;71.1596 +71.1597 +- case SIG_ERR:71.1598 ++ case (_POINTER_INT) SIG_ERR:71.1599 + ptr->_errno = EINVAL;71.1600 + result = 1;71.1601 + break;71.1602 +@@ -218,13 +218,13 @@71.1603 +71.1604 + switch ((_POINTER_INT) ptr->_sig_func[sig])71.1605 + {71.1606 +- case SIG_DFL:71.1607 ++ case (_POINTER_INT) SIG_DFL:71.1608 + return 1;71.1609 +71.1610 +- case SIG_ERR:71.1611 ++ case (_POINTER_INT) SIG_ERR:71.1612 + return 2;71.1613 +71.1614 +- case SIG_IGN:71.1615 ++ case (_POINTER_INT) SIG_IGN:71.1616 + return 3;71.1617 +71.1618 + default:71.1619 +diff -urN newlib-1.8.2/newlib/libc/stdio/Makefile.in newlib-1.8.2-dc/newlib/libc/stdio/Makefile.in71.1620 +--- newlib-1.8.2/newlib/libc/stdio/Makefile.in 1999-07-07 00:52:14.000000000 +100071.1621 ++++ newlib-1.8.2-dc/newlib/libc/stdio/Makefile.in 2006-07-06 18:28:31.000000000 +100071.1622 +@@ -88,112 +88,12 @@71.1623 +71.1624 + noinst_LIBRARIES = lib.a71.1625 +71.1626 +-lib_a_SOURCES = \71.1627 +- clearerr.c \71.1628 +- fclose.c \71.1629 +- fdopen.c \71.1630 +- feof.c \71.1631 +- ferror.c \71.1632 +- fflush.c \71.1633 +- fgetc.c \71.1634 +- fgetpos.c \71.1635 +- fgets.c \71.1636 +- fileno.c \71.1637 +- findfp.c \71.1638 +- fiprintf.c \71.1639 +- flags.c \71.1640 +- fopen.c \71.1641 +- fprintf.c \71.1642 +- fputc.c \71.1643 +- fputs.c \71.1644 +- fread.c \71.1645 +- freopen.c \71.1646 +- fscanf.c \71.1647 +- fseek.c \71.1648 +- fsetpos.c \71.1649 +- ftell.c \71.1650 +- fvwrite.c \71.1651 +- fwalk.c \71.1652 +- fwrite.c \71.1653 +- getc.c \71.1654 +- getchar.c \71.1655 +- gets.c \71.1656 +- iprintf.c \71.1657 +- makebuf.c \71.1658 +- mktemp.c \71.1659 +- perror.c \71.1660 +- printf.c \71.1661 +- putc.c \71.1662 +- putchar.c \71.1663 +- puts.c \71.1664 +- refill.c \71.1665 +- remove.c \71.1666 +- rename.c \71.1667 +- rewind.c \71.1668 +- rget.c \71.1669 +- scanf.c \71.1670 +- setbuf.c \71.1671 +- setvbuf.c \71.1672 +- siprintf.c \71.1673 +- snprintf.c \71.1674 +- sprintf.c \71.1675 +- sscanf.c \71.1676 +- stdio.c \71.1677 +- tmpfile.c \71.1678 +- tmpnam.c \71.1679 +- ungetc.c \71.1680 +- vfprintf.c \71.1681 +- vfscanf.c \71.1682 +- vprintf.c \71.1683 +- vsnprintf.c \71.1684 +- vsprintf.c \71.1685 +- wbuf.c \71.1686 +- wsetup.c71.1687 ++lib_a_SOURCES = clearerr.c fclose.c fdopen.c feof.c ferror.c fflush.c fgetc.c fgetpos.c fgets.c fileno.c findfp.c fiprintf.c flags.c fopen.c fprintf.c fputc.c fputs.c fread.c freopen.c fscanf.c fseek.c fsetpos.c ftell.c fvwrite.c fwalk.c fwrite.c getc.c getchar.c gets.c iprintf.c makebuf.c mktemp.c perror.c printf.c putc.c putchar.c puts.c refill.c remove.c rename.c rewind.c rget.c scanf.c setbuf.c setvbuf.c siprintf.c snprintf.c sprintf.c sscanf.c stdio.c tmpfile.c tmpnam.c ungetc.c vfprintf.c vfscanf.c vprintf.c vsnprintf.c vsprintf.c wbuf.c wsetup.c71.1688 +71.1689 +71.1690 + lib_a_LIBADD = vfiprintf.o71.1691 +71.1692 +-CHEWOUT_FILES = \71.1693 +- clearerr.def \71.1694 +- fclose.def \71.1695 +- fdopen.def \71.1696 +- feof.def \71.1697 +- ferror.def \71.1698 +- fflush.def \71.1699 +- fgetc.def \71.1700 +- fgetpos.def \71.1701 +- fgets.def \71.1702 +- fileno.def \71.1703 +- fiprintf.def \71.1704 +- fopen.def \71.1705 +- fputc.def \71.1706 +- fputs.def \71.1707 +- fread.def \71.1708 +- freopen.def \71.1709 +- fseek.def \71.1710 +- fsetpos.def \71.1711 +- ftell.def \71.1712 +- fwrite.def \71.1713 +- getc.def \71.1714 +- getchar.def \71.1715 +- gets.def \71.1716 +- iprintf.def \71.1717 +- mktemp.def \71.1718 +- perror.def \71.1719 +- putc.def \71.1720 +- putchar.def \71.1721 +- puts.def \71.1722 +- remove.def \71.1723 +- rename.def \71.1724 +- rewind.def \71.1725 +- setbuf.def \71.1726 +- setvbuf.def \71.1727 +- siprintf.def \71.1728 +- sprintf.def \71.1729 +- sscanf.def \71.1730 +- tmpfile.def \71.1731 +- tmpnam.def \71.1732 +- vfprintf.def71.1733 ++CHEWOUT_FILES = clearerr.def fclose.def fdopen.def feof.def ferror.def fflush.def fgetc.def fgetpos.def fgets.def fileno.def fiprintf.def fopen.def fputc.def fputs.def fread.def freopen.def fseek.def fsetpos.def ftell.def fwrite.def getc.def getchar.def gets.def iprintf.def mktemp.def perror.def putc.def putchar.def puts.def remove.def rename.def rewind.def setbuf.def setvbuf.def siprintf.def sprintf.def sscanf.def tmpfile.def tmpnam.def vfprintf.def71.1734 +71.1735 +71.1736 + SUFFIXES = .def71.1737 +@@ -316,7 +216,7 @@71.1738 + @for file in $(DISTFILES); do \71.1739 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.1740 + if test -d $$d/$$file; then \71.1741 +- cp -pr $$/$$file $(distdir)/$$file; \71.1742 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.1743 + else \71.1744 + test -f $(distdir)/$$file \71.1745 + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1746 +diff -urN newlib-1.8.2/newlib/libc/stdlib/Makefile.in newlib-1.8.2-dc/newlib/libc/stdlib/Makefile.in71.1747 +--- newlib-1.8.2/newlib/libc/stdlib/Makefile.in 1999-05-29 07:23:57.000000000 +100071.1748 ++++ newlib-1.8.2-dc/newlib/libc/stdlib/Makefile.in 2006-07-06 18:28:31.000000000 +100071.1749 +@@ -1,6 +1,6 @@71.1750 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.1751 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.1752 +71.1753 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.1754 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.1755 + # This Makefile.in is free software; the Free Software Foundation71.1756 + # gives unlimited permission to copy and/or distribute it,71.1757 + # with or without modifications, as long as this notice is preserved.71.1758 +@@ -46,7 +46,7 @@71.1759 + AUTOHEADER = @AUTOHEADER@71.1760 +71.1761 + INSTALL = @INSTALL@71.1762 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.1763 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.1764 + INSTALL_DATA = @INSTALL_DATA@71.1765 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.1766 + transform = @program_transform_name@71.1767 +@@ -78,7 +78,6 @@71.1768 + PACKAGE = @PACKAGE@71.1769 + RANLIB = @RANLIB@71.1770 + VERSION = @VERSION@71.1771 +-mach_add_objs = @mach_add_objs@71.1772 + machine_dir = @machine_dir@71.1773 + newlib_basedir = @newlib_basedir@71.1774 + sys_dir = @sys_dir@71.1775 +@@ -89,102 +88,16 @@71.1776 +71.1777 + noinst_LIBRARIES = lib.a71.1778 +71.1779 +-lib_a_SOURCES = \71.1780 +- __adjust.c \71.1781 +- __exp10.c \71.1782 +- __ten_mu.c \71.1783 +- abort.c \71.1784 +- abs.c \71.1785 +- assert.c \71.1786 +- atexit.c \71.1787 +- atof.c \71.1788 +- atoff.c \71.1789 +- atoi.c \71.1790 +- atol.c \71.1791 +- bsearch.c \71.1792 +- calloc.c \71.1793 +- div.c \71.1794 +- dtoa.c \71.1795 +- dtoastub.c \71.1796 +- ecvtbuf.c \71.1797 +- efgcvt.c \71.1798 +- environ.c \71.1799 +- envlock.c \71.1800 +- eprintf.c \71.1801 +- exit.c \71.1802 +- getenv.c \71.1803 +- getenv_r.c \71.1804 +- getopt.c \71.1805 +- labs.c \71.1806 +- ldiv.c \71.1807 +- malign.c \71.1808 +- malloc.c \71.1809 +- mblen.c \71.1810 +- mblen_r.c \71.1811 +- mbstowcs.c \71.1812 +- mbstowcs_r.c \71.1813 +- mbtowc.c \71.1814 +- mbtowc_r.c \71.1815 +- mlock.c \71.1816 +- mprec.c \71.1817 +- msize.c \71.1818 +- mstats.c \71.1819 +- mtrim.c \71.1820 +- putenv.c \71.1821 +- qsort.c \71.1822 +- rand.c \71.1823 +- rand_r.c \71.1824 +- realloc.c \71.1825 +- setenv.c \71.1826 +- setenv_r.c \71.1827 +- strdup.c \71.1828 +- strtod.c \71.1829 +- strtol.c \71.1830 +- strtoul.c \71.1831 +- system.c \71.1832 +- valloc.c \71.1833 +- wcstombs.c \71.1834 +- wcstombs_r.c \71.1835 +- wctomb.c \71.1836 +- wctomb_r.c71.1837 ++lib_a_SOURCES = __adjust.c __exp10.c __ten_mu.c abort.c abs.c assert.c atexit.c atof.c atoff.c atoi.c atol.c bsearch.c calloc.c div.c dtoa.c dtoastub.c ecvtbuf.c efgcvt.c environ.c envlock.c eprintf.c exit.c getenv.c getenv_r.c getopt.c labs.c ldiv.c malign.c malloc.c mblen.c mblen_r.c mbstowcs.c mbstowcs_r.c mbtowc.c mbtowc_r.c mlock.c mprec.c msize.c mstats.c mtrim.c putenv.c qsort.c rand.c rand_r.c realloc.c setenv.c setenv_r.c strdup.c strtod.c strtol.c strtoul.c system.c valloc.c wcstombs.c wcstombs_r.c wctomb.c wctomb_r.c71.1838 ++71.1839 ++71.1840 ++lib_a_LIBADD = mallocr.o freer.o reallocr.o callocr.o cfreer.o malignr.o vallocr.o pvallocr.o mallinfor.o mallstatsr.o msizer.o malloptr.o71.1841 +71.1842 +-lib_a_LIBADD = mallocr.o freer.o reallocr.o callocr.o cfreer.o malignr.o \71.1843 +- vallocr.o pvallocr.o mallinfor.o mallstatsr.o msizer.o malloptr.o71.1844 +71.1845 + MALLOC_COMPILE = $(COMPILE) -DINTERNAL_NEWLIB71.1846 +71.1847 +-CHEWOUT_FILES= \71.1848 +- abort.def \71.1849 +- abs.def \71.1850 +- assert.def \71.1851 +- atexit.def \71.1852 +- atof.def \71.1853 +- ecvtbuf.def \71.1854 +- atoi.def \71.1855 +- bsearch.def \71.1856 +- calloc.def \71.1857 +- div.def \71.1858 +- efgcvt.def \71.1859 +- envlock.def \71.1860 +- exit.def \71.1861 +- getenv.def \71.1862 +- labs.def \71.1863 +- ldiv.def \71.1864 +- malloc.def \71.1865 +- mallocr.def \71.1866 +- mblen.def \71.1867 +- mbstowcs.def \71.1868 +- mbtowc.def \71.1869 +- mlock.def \71.1870 +- mstats.def \71.1871 +- qsort.def \71.1872 +- rand.def \71.1873 +- strtod.def \71.1874 +- strtol.def \71.1875 +- strtoul.def \71.1876 +- system.def \71.1877 +- wcstombs.def \71.1878 +- wctomb.def71.1879 ++CHEWOUT_FILES = abort.def abs.def assert.def atexit.def atof.def ecvtbuf.def atoi.def bsearch.def calloc.def div.def efgcvt.def envlock.def exit.def getenv.def labs.def ldiv.def malloc.def mallocr.def mblen.def mbstowcs.def mbtowc.def mlock.def mstats.def qsort.def rand.def strtod.def strtol.def strtoul.def system.def wcstombs.def wctomb.def71.1880 ++71.1881 +71.1882 + SUFFIXES = .def71.1883 +71.1884 +@@ -207,30 +120,30 @@71.1885 + malloptr.o71.1886 + lib_a_OBJECTS = __adjust.o __exp10.o __ten_mu.o abort.o abs.o assert.o \71.1887 + atexit.o atof.o atoff.o atoi.o atol.o bsearch.o calloc.o div.o dtoa.o \71.1888 +-dtoastub.o ecvtbuf.o efgcvt.o environ.o envlock.o eprintf.o exit.o getenv.o getenv_r.o \71.1889 +-getopt.o labs.o ldiv.o malign.o malloc.o mblen.o mblen_r.o mbstowcs.o \71.1890 +-mbstowcs_r.o mbtowc.o mbtowc_r.o mlock.o mprec.o msize.o mstats.o \71.1891 +-mtrim.o putenv.o qsort.o rand.o rand_r.o realloc.o setenv.o setenv_r.o strdup.o \71.1892 +-strtod.o strtol.o strtoul.o system.o valloc.o wcstombs.o wcstombs_r.o \71.1893 +-wctomb.o wctomb_r.o71.1894 ++dtoastub.o ecvtbuf.o efgcvt.o environ.o envlock.o eprintf.o exit.o \71.1895 ++getenv.o getenv_r.o getopt.o labs.o ldiv.o malign.o malloc.o mblen.o \71.1896 ++mblen_r.o mbstowcs.o mbstowcs_r.o mbtowc.o mbtowc_r.o mlock.o mprec.o \71.1897 ++msize.o mstats.o mtrim.o putenv.o qsort.o rand.o rand_r.o realloc.o \71.1898 ++setenv.o setenv_r.o strdup.o strtod.o strtol.o strtoul.o system.o \71.1899 ++valloc.o wcstombs.o wcstombs_r.o wctomb.o wctomb_r.o71.1900 + CFLAGS = @CFLAGS@71.1901 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.1902 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1903 ++CCLD = $(CC)71.1904 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.1905 + DIST_COMMON = Makefile.am Makefile.in71.1906 +71.1907 +71.1908 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.1909 +71.1910 + TAR = tar71.1911 +-GZIP = --best71.1912 ++GZIP_ENV = --best71.1913 + SOURCES = $(lib_a_SOURCES)71.1914 + OBJECTS = $(lib_a_OBJECTS)71.1915 +71.1916 +-all: Makefile $(LIBRARIES)71.1917 +-71.1918 ++all: all-redirect71.1919 + .SUFFIXES:71.1920 + .SUFFIXES: .S .c .def .o .s71.1921 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1922 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.1923 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus stdlib/Makefile71.1924 +71.1925 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.1926 +@@ -274,8 +187,12 @@71.1927 + tags: TAGS71.1928 +71.1929 + ID: $(HEADERS) $(SOURCES) $(LISP)71.1930 ++ list='$(SOURCES) $(HEADERS)'; \71.1931 ++ unique=`for i in $$list; do echo $$i; done | \71.1932 ++ awk ' { files[$$0] = 1; } \71.1933 ++ END { for (i in files) print i; }'`; \71.1934 + here=`pwd` && cd $(srcdir) \71.1935 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.1936 ++ && mkid -f$$here/ID $$unique $(LISP)71.1937 +71.1938 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.1939 + tags=; \71.1940 +@@ -303,28 +220,39 @@71.1941 + distdir: $(DISTFILES)71.1942 + @for file in $(DISTFILES); do \71.1943 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.1944 +- test -f $(distdir)/$$file \71.1945 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1946 +- || cp -p $$d/$$file $(distdir)/$$file; \71.1947 ++ if test -d $$d/$$file; then \71.1948 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.1949 ++ else \71.1950 ++ test -f $(distdir)/$$file \71.1951 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.1952 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.1953 ++ fi; \71.1954 + done71.1955 +-info:71.1956 +-dvi:71.1957 +-check:71.1958 +-installcheck:71.1959 +-install-info:71.1960 +-install-exec:71.1961 +- @$(NORMAL_INSTALL)71.1962 +-71.1963 +-install-data:71.1964 +- @$(NORMAL_INSTALL)71.1965 +-71.1966 +-install: install-exec install-data all71.1967 +- @:71.1968 +-71.1969 +-uninstall:71.1970 +-71.1971 ++info-am:71.1972 ++info: info-am71.1973 ++dvi-am:71.1974 ++dvi: dvi-am71.1975 ++check-am:71.1976 ++check: check-am71.1977 ++installcheck-am:71.1978 ++installcheck: installcheck-am71.1979 ++install-info-am:71.1980 ++install-info: install-info-am71.1981 ++install-exec-am:71.1982 ++install-exec: install-exec-am71.1983 ++71.1984 ++install-data-am:71.1985 ++install-data: install-data-am71.1986 ++71.1987 ++install-am: all-am71.1988 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.1989 ++install: install-am71.1990 ++uninstall-am:71.1991 ++uninstall: uninstall-am71.1992 ++all-am: Makefile $(LIBRARIES)71.1993 ++all-redirect: all-am71.1994 + install-strip:71.1995 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.1996 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.1997 + installdirs:71.1998 +71.1999 +71.2000 +@@ -338,29 +266,38 @@71.2001 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.2002 +71.2003 + maintainer-clean-generic:71.2004 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.2005 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.2006 + mostlyclean-tags mostlyclean-generic71.2007 +71.2008 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.2009 +- mostlyclean71.2010 ++mostlyclean: mostlyclean-am71.2011 +71.2012 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.2013 +- distclean-generic clean71.2014 +- -rm -f config.status71.2015 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.2016 ++ mostlyclean-am71.2017 +71.2018 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.2019 ++clean: clean-am71.2020 ++71.2021 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.2022 ++ distclean-tags distclean-generic clean-am71.2023 ++71.2024 ++distclean: distclean-am71.2025 ++71.2026 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.2027 + maintainer-clean-compile maintainer-clean-tags \71.2028 +- maintainer-clean-generic distclean71.2029 ++ maintainer-clean-generic distclean-am71.2030 + @echo "This command is intended for maintainers to use;"71.2031 + @echo "it deletes files that may require special tools to rebuild."71.2032 +71.2033 ++maintainer-clean: maintainer-clean-am71.2034 ++71.2035 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.2036 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.2037 + mostlyclean-compile distclean-compile clean-compile \71.2038 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.2039 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.2040 +-install-info install-exec install-data install uninstall all \71.2041 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.2042 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.2043 ++check-am installcheck-am installcheck install-info-am install-info \71.2044 ++install-exec-am install-exec install-data-am install-data install-am \71.2045 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.2046 ++mostlyclean-generic distclean-generic clean-generic \71.2047 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.2048 +71.2049 +71.2050 +diff -urN newlib-1.8.2/newlib/libc/string/Makefile.in newlib-1.8.2-dc/newlib/libc/string/Makefile.in71.2051 +--- newlib-1.8.2/newlib/libc/string/Makefile.in 1998-12-01 08:03:47.000000000 +100071.2052 ++++ newlib-1.8.2-dc/newlib/libc/string/Makefile.in 2006-07-06 18:28:31.000000000 +100071.2053 +@@ -1,6 +1,6 @@71.2054 +-# Makefile.in generated automatically by automake 1.3b from Makefile.am71.2055 ++# Makefile.in generated automatically by automake 1.4 from Makefile.am71.2056 +71.2057 +-# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.71.2058 ++# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.71.2059 + # This Makefile.in is free software; the Free Software Foundation71.2060 + # gives unlimited permission to copy and/or distribute it,71.2061 + # with or without modifications, as long as this notice is preserved.71.2062 +@@ -46,7 +46,7 @@71.2063 + AUTOHEADER = @AUTOHEADER@71.2064 +71.2065 + INSTALL = @INSTALL@71.2066 +-INSTALL_PROGRAM = @INSTALL_PROGRAM@71.2067 ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)71.2068 + INSTALL_DATA = @INSTALL_DATA@71.2069 + INSTALL_SCRIPT = @INSTALL_SCRIPT@71.2070 + transform = @program_transform_name@71.2071 +@@ -78,7 +78,6 @@71.2072 + PACKAGE = @PACKAGE@71.2073 + RANLIB = @RANLIB@71.2074 + VERSION = @VERSION@71.2075 +-mach_add_objs = @mach_add_objs@71.2076 + machine_dir = @machine_dir@71.2077 + newlib_basedir = @newlib_basedir@71.2078 + sys_dir = @sys_dir@71.2079 +@@ -89,49 +88,11 @@71.2080 +71.2081 + noinst_LIBRARIES = lib.a71.2082 +71.2083 +-lib_a_SOURCES = \71.2084 +- bcmp.c \71.2085 +- bcopy.c \71.2086 +- bzero.c \71.2087 +- index.c \71.2088 +- memchr.c \71.2089 +- memcmp.c \71.2090 +- memcpy.c \71.2091 +- memmove.c \71.2092 +- memset.c \71.2093 +- rindex.c \71.2094 +- strcat.c \71.2095 +- strchr.c \71.2096 +- strcmp.c \71.2097 +- strcasecmp.c \71.2098 +- strcoll.c \71.2099 +- strcpy.c \71.2100 +- strcspn.c \71.2101 +- strerror.c \71.2102 +- strlen.c \71.2103 +- strlwr.c \71.2104 +- strncat.c \71.2105 +- strncmp.c \71.2106 +- strncasecmp.c \71.2107 +- strncpy.c \71.2108 +- strpbrk.c \71.2109 +- strrchr.c \71.2110 +- strspn.c \71.2111 +- strtok.c \71.2112 +- strtok_r.c \71.2113 +- strupr.c \71.2114 +- strxfrm.c \71.2115 +- strstr.c \71.2116 +- u_strerr.c71.2117 +-71.2118 +-CHEWOUT_FILES=\71.2119 +-bcmp.def memcpy.def strcmp.def strncat.def strstr.def \71.2120 +-bcopy.def memmove.def strcoll.def strncmp.def strtok.def \71.2121 +-bzero.def memset.def strcpy.def strncpy.def strxfrm.def \71.2122 +-index.def rindex.def strcspn.def strpbrk.def \71.2123 +-memchr.def strcat.def strerror.def strrchr.def \71.2124 +-memcmp.def strchr.def strlen.def strspn.def \71.2125 +-strcasecmp.def strncasecmp.def strlwr.def strupr.def71.2126 ++lib_a_SOURCES = bcmp.c bcopy.c bzero.c index.c memchr.c memcmp.c memcpy.c memmove.c memset.c rindex.c strcat.c strchr.c strcmp.c strcasecmp.c strcoll.c strcpy.c strcspn.c strerror.c strlen.c strlwr.c strncat.c strncmp.c strncasecmp.c strncpy.c strpbrk.c strrchr.c strspn.c strtok.c strtok_r.c strupr.c strxfrm.c strstr.c u_strerr.c71.2127 ++71.2128 ++71.2129 ++CHEWOUT_FILES = bcmp.def memcpy.def strcmp.def strncat.def strstr.def bcopy.def memmove.def strcoll.def strncmp.def strtok.def bzero.def memset.def strcpy.def strncpy.def strxfrm.def index.def rindex.def strcspn.def strpbrk.def memchr.def strcat.def strerror.def strrchr.def memcmp.def strchr.def strlen.def strspn.def strcasecmp.def strncasecmp.def strlwr.def strupr.def71.2130 ++71.2131 +71.2132 + SUFFIXES = .def71.2133 +71.2134 +@@ -157,22 +118,22 @@71.2135 + strspn.o strtok.o strtok_r.o strupr.o strxfrm.o strstr.o u_strerr.o71.2136 + CFLAGS = @CFLAGS@71.2137 + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)71.2138 +-LINK = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.2139 ++CCLD = $(CC)71.2140 ++LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@71.2141 + DIST_COMMON = Makefile.am Makefile.in71.2142 +71.2143 +71.2144 + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)71.2145 +71.2146 + TAR = tar71.2147 +-GZIP = --best71.2148 ++GZIP_ENV = --best71.2149 + SOURCES = $(lib_a_SOURCES)71.2150 + OBJECTS = $(lib_a_OBJECTS)71.2151 +71.2152 +-all: Makefile $(LIBRARIES)71.2153 +-71.2154 ++all: all-redirect71.2155 + .SUFFIXES:71.2156 + .SUFFIXES: .S .c .def .o .s71.2157 +-$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.2158 ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)71.2159 + cd $(top_srcdir) && $(AUTOMAKE) --cygnus string/Makefile71.2160 +71.2161 + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status71.2162 +@@ -216,8 +177,12 @@71.2163 + tags: TAGS71.2164 +71.2165 + ID: $(HEADERS) $(SOURCES) $(LISP)71.2166 ++ list='$(SOURCES) $(HEADERS)'; \71.2167 ++ unique=`for i in $$list; do echo $$i; done | \71.2168 ++ awk ' { files[$$0] = 1; } \71.2169 ++ END { for (i in files) print i; }'`; \71.2170 + here=`pwd` && cd $(srcdir) \71.2171 +- && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)71.2172 ++ && mkid -f$$here/ID $$unique $(LISP)71.2173 +71.2174 + TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)71.2175 + tags=; \71.2176 +@@ -245,28 +210,39 @@71.2177 + distdir: $(DISTFILES)71.2178 + @for file in $(DISTFILES); do \71.2179 + if test -f $$file; then d=.; else d=$(srcdir); fi; \71.2180 +- test -f $(distdir)/$$file \71.2181 +- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.2182 +- || cp -p $$d/$$file $(distdir)/$$file; \71.2183 ++ if test -d $$d/$$file; then \71.2184 ++ cp -pr $$d/$$file $(distdir)/$$file; \71.2185 ++ else \71.2186 ++ test -f $(distdir)/$$file \71.2187 ++ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \71.2188 ++ || cp -p $$d/$$file $(distdir)/$$file || :; \71.2189 ++ fi; \71.2190 + done71.2191 +-info:71.2192 +-dvi:71.2193 +-check:71.2194 +-installcheck:71.2195 +-install-info:71.2196 +-install-exec:71.2197 +- @$(NORMAL_INSTALL)71.2198 +-71.2199 +-install-data:71.2200 +- @$(NORMAL_INSTALL)71.2201 +-71.2202 +-install: install-exec install-data all71.2203 +- @:71.2204 +-71.2205 +-uninstall:71.2206 +-71.2207 ++info-am:71.2208 ++info: info-am71.2209 ++dvi-am:71.2210 ++dvi: dvi-am71.2211 ++check-am:71.2212 ++check: check-am71.2213 ++installcheck-am:71.2214 ++installcheck: installcheck-am71.2215 ++install-info-am:71.2216 ++install-info: install-info-am71.2217 ++install-exec-am:71.2218 ++install-exec: install-exec-am71.2219 ++71.2220 ++install-data-am:71.2221 ++install-data: install-data-am71.2222 ++71.2223 ++install-am: all-am71.2224 ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am71.2225 ++install: install-am71.2226 ++uninstall-am:71.2227 ++uninstall: uninstall-am71.2228 ++all-am: Makefile $(LIBRARIES)71.2229 ++all-redirect: all-am71.2230 + install-strip:71.2231 +- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install71.2232 ++ $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install71.2233 + installdirs:71.2234 +71.2235 +71.2236 +@@ -280,29 +256,38 @@71.2237 + -rm -f config.cache config.log stamp-h stamp-h[0-9]*71.2238 +71.2239 + maintainer-clean-generic:71.2240 +-mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.2241 ++mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \71.2242 + mostlyclean-tags mostlyclean-generic71.2243 +71.2244 +-clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.2245 +- mostlyclean71.2246 ++mostlyclean: mostlyclean-am71.2247 +71.2248 +-distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \71.2249 +- distclean-generic clean71.2250 +- -rm -f config.status71.2251 ++clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \71.2252 ++ mostlyclean-am71.2253 +71.2254 +-maintainer-clean: maintainer-clean-noinstLIBRARIES \71.2255 ++clean: clean-am71.2256 ++71.2257 ++distclean-am: distclean-noinstLIBRARIES distclean-compile \71.2258 ++ distclean-tags distclean-generic clean-am71.2259 ++71.2260 ++distclean: distclean-am71.2261 ++71.2262 ++maintainer-clean-am: maintainer-clean-noinstLIBRARIES \71.2263 + maintainer-clean-compile maintainer-clean-tags \71.2264 +- maintainer-clean-generic distclean71.2265 ++ maintainer-clean-generic distclean-am71.2266 + @echo "This command is intended for maintainers to use;"71.2267 + @echo "it deletes files that may require special tools to rebuild."71.2268 +71.2269 ++maintainer-clean: maintainer-clean-am71.2270 ++71.2271 + .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \71.2272 + clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \71.2273 + mostlyclean-compile distclean-compile clean-compile \71.2274 + maintainer-clean-compile tags mostlyclean-tags distclean-tags \71.2275 +-clean-tags maintainer-clean-tags distdir info dvi installcheck \71.2276 +-install-info install-exec install-data install uninstall all \71.2277 +-installdirs mostlyclean-generic distclean-generic clean-generic \71.2278 ++clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \71.2279 ++check-am installcheck-am installcheck install-info-am install-info \71.2280 ++install-exec-am install-exec install-data-am install-data install-am \71.2281 ++install uninstall-am uninstall all-redirect all-am all installdirs \71.2282 ++mostlyclean-generic distclean-generic clean-generic \71.2283 + maintainer-clean-generic clean mostlyclean distclean maintainer-clean71.2284 +71.2285 +71.2286 +diff -urN newlib-1.8.2/newlib/libc/sys/configure newlib-1.8.2-dc/newlib/libc/sys/configure71.2287 +--- newlib-1.8.2/newlib/libc/sys/configure 1999-06-04 07:34:55.000000000 +100071.2288 ++++ newlib-1.8.2-dc/newlib/libc/sys/configure 2006-07-06 18:28:31.000000000 +100071.2289 +@@ -1342,7 +1342,7 @@71.2290 + if { (eval echo configure:1343: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then71.2291 + for file in conftest.*; do71.2292 + case $file in71.2293 +- *.c | *.o | *.obj | *.ilk | *.pdb) ;;71.2294 ++ *.c | *.o | *.obj) ;;71.2295 + *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;71.2296 + esac71.2297 + done71.2298 +diff -urN newlib-1.8.2/newlib/libc/sys/dreamcast/absolute_vfs.c newlib-1.8.2-dc/newlib/libc/sys/dreamcast/absolute_vfs.c71.2299 +--- newlib-1.8.2/newlib/libc/sys/dreamcast/absolute_vfs.c 1970-01-01 10:00:00.000000000 +100071.2300 ++++ newlib-1.8.2-dc/newlib/libc/sys/dreamcast/absolute_vfs.c 2006-07-06 18:28:31.000000000 +100071.2301 +@@ -0,0 +1,11 @@71.2302 ++#include "vfs.h"71.2303 ++71.2304 ++int _newlib_vfs_is_absolute (void)71.2305 ++{71.2306 ++ return 0;71.2307 ++}71.2308 ++71.2309 ++void _newlib_vfs_absolute_load (void)71.2310 ++{71.2311 ++ _newlib_vfs_initialized = VFS_LOADER_ABSOLUTE;71.2312 ++}71.2313 +diff -urN newlib-1.8.2/newlib/libc/sys/dreamcast/aclocal.m4 newlib-1.8.2-dc/newlib/libc/sys/dreamcast/aclocal.m471.2314 +--- newlib-1.8.2/newlib/libc/sys/dreamcast/