Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcvs2svn <>2006-03-21 03:57:36 +0300
committercvs2svn <>2006-03-21 03:57:36 +0300
commitddb02d1f5553098dc2e0a16e5b7bef099b1f27ce (patch)
tree5595c2c02519ae121ba4c7ee8997c495dadb9e9d
parentf84325d0899e5052fd59892ece265f7c2bd6c6a7 (diff)
This commit was manufactured by cvs2svn to create tag 'csl-arm-2004-q3'.csl-arm-2004-q3
Sprout from newlib-csl-20060320-branch 2006-03-21 00:57:35 UTC cvs2svn 'This commit was manufactured by cvs2svn to create branch 'newlib-' Cherrypick from master 2004-09-30 16:34:36 UTC Nick Clifton <nickc@redhat.com> 'Enable target-libgloss for crx-*-*.': COPYING.LIBGLOSS COPYING.NEWLIB ChangeLog MAINTAINERS Makefile.def Makefile.in Makefile.tpl config-ml.in config.guess config.if config.sub config/ChangeLog config/accross.m4 config/acx.m4 config/gcc-lib-path.m4 config/mh-mingw32 config/mt-gnu config/no-executables.m4 config/warnings.m4 configure configure.in etc/ChangeLog etc/Makefile.in etc/configure.texi etc/standards.texi etc/texi2pod.pl gettext.m4 include/COPYING include/ChangeLog include/ChangeLog-9103 include/MAINTAINERS include/alloca-conf.h include/ansidecl.h include/aout/ChangeLog include/aout/adobe.h include/aout/aout64.h include/aout/ar.h include/aout/dynix3.h include/aout/encap.h include/aout/host.h include/aout/hp300hpux.h include/aout/ranlib.h include/aout/reloc.h include/aout/stab.def include/aout/stab_gnu.h include/aout/sun4.h include/bfdlink.h include/bin-bugs.h include/bout.h include/coff/ChangeLog include/coff/ChangeLog-9103 include/coff/a29k.h include/coff/alpha.h include/coff/apollo.h include/coff/arm.h include/coff/aux-coff.h include/coff/ecoff.h include/coff/external.h include/coff/go32exe.h include/coff/h8300.h include/coff/h8500.h include/coff/i386.h include/coff/i860.h include/coff/i960.h include/coff/ia64.h include/coff/internal.h include/coff/m68k.h include/coff/m88k.h include/coff/mcore.h include/coff/mips.h include/coff/mipspe.h include/coff/or32.h include/coff/pe.h include/coff/powerpc.h include/coff/rs6000.h include/coff/rs6k64.h include/coff/sh.h include/coff/sparc.h include/coff/symconst.h include/coff/ti.h include/coff/tic30.h include/coff/tic4x.h include/coff/tic54x.h include/coff/tic80.h include/coff/w65.h include/coff/we32k.h include/coff/xcoff.h include/coff/z8k.h include/demangle.h include/dis-asm.h include/dyn-string.h include/elf/ChangeLog include/elf/ChangeLog-9103 include/elf/alpha.h include/elf/arc.h include/elf/arm.h include/elf/avr.h include/elf/common.h include/elf/cr16c.h include/elf/cris.h include/elf/crx.h include/elf/d10v.h include/elf/d30v.h include/elf/dlx.h include/elf/dwarf.h include/elf/dwarf2.h include/elf/external.h include/elf/fr30.h include/elf/frv.h include/elf/h8.h include/elf/hppa.h include/elf/i370.h include/elf/i386.h include/elf/i860.h include/elf/i960.h include/elf/ia64.h include/elf/internal.h include/elf/ip2k.h include/elf/iq2000.h include/elf/m32r.h include/elf/m68hc11.h include/elf/m68k.h include/elf/mcore.h include/elf/mips.h include/elf/mmix.h include/elf/mn10200.h include/elf/mn10300.h include/elf/msp430.h include/elf/openrisc.h include/elf/or32.h include/elf/pj.h include/elf/ppc.h include/elf/ppc64.h include/elf/reloc-macros.h include/elf/s390.h include/elf/sh.h include/elf/sparc.h include/elf/v850.h include/elf/vax.h include/elf/x86-64.h include/elf/xstormy16.h include/elf/xtensa.h include/fibheap.h include/filenames.h include/floatformat.h include/fnmatch.h include/gdb/ChangeLog include/gdb/callback.h include/gdb/fileio.h include/gdb/remote-sim.h include/gdb/signals.h include/gdb/sim-arm.h include/gdb/sim-d10v.h include/gdb/sim-frv.h include/gdb/sim-h8300.h include/gdb/sim-ppc.h include/gdb/sim-sh.h include/getopt.h include/hashtab.h include/hp-symtab.h include/ieee.h include/libiberty.h include/md5.h include/nlm/ChangeLog include/nlm/alpha-ext.h include/nlm/common.h include/nlm/external.h include/nlm/i386-ext.h include/nlm/internal.h include/nlm/sparc32-ext.h include/oasys.h include/objalloc.h include/obstack.h include/opcode/ChangeLog include/opcode/ChangeLog-9103 include/opcode/a29k.h include/opcode/alpha.h include/opcode/arc.h include/opcode/arm.h include/opcode/avr.h include/opcode/cgen.h include/opcode/convex.h include/opcode/cris.h include/opcode/crx.h include/opcode/d10v.h include/opcode/d30v.h include/opcode/dlx.h include/opcode/h8300.h include/opcode/hppa.h include/opcode/i370.h include/opcode/i386.h include/opcode/i860.h include/opcode/i960.h include/opcode/ia64.h include/opcode/m68hc11.h include/opcode/m68k.h include/opcode/m88k.h include/opcode/mips.h include/opcode/mmix.h include/opcode/mn10300.h include/opcode/msp430.h include/opcode/np1.h include/opcode/ns32k.h include/opcode/or32.h include/opcode/pdp11.h include/opcode/pj.h include/opcode/pn.h include/opcode/ppc.h include/opcode/pyr.h include/opcode/s390.h include/opcode/sparc.h include/opcode/tic4x.h include/opcode/tic54x.h include/opcode/tic80.h include/opcode/v850.h include/opcode/vax.h include/os9k.h include/partition.h include/progress.h include/safe-ctype.h include/sort.h include/splay-tree.h include/symcat.h include/ternary.h include/xregex.h include/xregex2.h include/xtensa-config.h include/xtensa-isa-internal.h include/xtensa-isa.h install-sh libgloss/ChangeLog libgloss/arm/Makefile.in libgloss/arm/configure libgloss/arm/configure.in libgloss/arm/crt0.S libgloss/arm/elf-redboot.ld libgloss/arm/libcfunc.c libgloss/arm/redboot-crt0.S libgloss/arm/swi.h libgloss/arm/syscalls.c libgloss/arm/trap.S libgloss/configure libgloss/configure.in libgloss/iq2000/sim.ld libgloss/libnosys/Makefile.in libgloss/libnosys/configure libgloss/libnosys/configure.in libgloss/libnosys/warning.h libgloss/m68hc11/sim-valid-m68hc11.ld libgloss/m68hc11/sim-valid-m68hc12.ld libgloss/m68k/Makefile.in libgloss/m68k/bcc.ld libgloss/m68k/crt0.S libgloss/m68k/idp.ld libgloss/m68k/idpgdb.ld libgloss/m68k/mvme135.ld libgloss/m68k/mvme162.ld libgloss/m68k/sbc5204.ld libgloss/m68k/sbc5206.ld libgloss/m68k/sim.ld libgloss/mcore/elf-cmb.ld libgloss/mips/array.ld libgloss/mips/cfe.ld libgloss/mips/ddb-kseg0.ld libgloss/mips/ddb.ld libgloss/mips/dve.ld libgloss/mips/idt.ld libgloss/mips/idt32.ld libgloss/mips/idt64.ld libgloss/mips/idtecoff.ld libgloss/mips/jmr3904app-java.ld libgloss/mips/jmr3904app.ld libgloss/mips/jmr3904dram-java.ld libgloss/mips/jmr3904dram.ld libgloss/mips/lsi.ld libgloss/mips/nullmon.ld libgloss/mips/pmon.ld libgloss/mips/regs.S libgloss/mn10200/eval.ld libgloss/mn10200/sim.ld libgloss/mn10300/asb2303.ld libgloss/mn10300/asb2305.ld libgloss/mn10300/eval.ld libgloss/mn10300/sim.ld libgloss/rs6000/Makefile.in libgloss/rs6000/ads.ld libgloss/rs6000/mbx.ld libgloss/rs6000/simulator.S libgloss/rs6000/yellowknife.ld libgloss/sh/sh1lcevb.ld libgloss/sh/sh2lcevb.ld libgloss/sh/sh3bb.ld libgloss/sh/sh3lcevb.ld libgloss/sparc/elfsim.ld libgloss/sparc/ex930.ld libgloss/sparc/ex931.ld libgloss/sparc/ex934.ld libgloss/sparc/sparc86x.ld libgloss/xstormy16/eva_app.ld libgloss/xstormy16/eva_stub.ld libgloss/xstormy16/sim_high.ld libgloss/xstormy16/sim_rom.ld libtool.m4 ltcf-c.sh ltcf-cxx.sh ltcf-gcj.sh ltconfig ltmain.sh missing mkinstalldirs newlib/ChangeLog newlib/MAINTAINERS newlib/Makefile.am newlib/Makefile.in newlib/NEWS newlib/README newlib/acinclude.m4 newlib/aclocal.m4 newlib/configure newlib/configure.host newlib/configure.in newlib/doc/aclocal.m4 newlib/doc/configure newlib/iconvdata/aclocal.m4 newlib/iconvdata/configure newlib/iconvdata/jis0208.h newlib/libc/Makefile.am newlib/libc/Makefile.in newlib/libc/aclocal.m4 newlib/libc/argz/argz_insert.c newlib/libc/configure newlib/libc/configure.in newlib/libc/ctype/ctype.tex newlib/libc/ctype/ctype_.c newlib/libc/ctype/islower.c newlib/libc/ctype/isupper.c newlib/libc/ctype/iswalnum.c newlib/libc/ctype/iswalpha.c newlib/libc/ctype/iswblank.c newlib/libc/ctype/iswcntrl.c newlib/libc/ctype/iswdigit.c newlib/libc/ctype/iswgraph.c newlib/libc/ctype/iswlower.c newlib/libc/ctype/iswprint.c newlib/libc/ctype/iswpunct.c newlib/libc/ctype/iswspace.c newlib/libc/ctype/iswupper.c newlib/libc/ctype/iswxdigit.c newlib/libc/ctype/tolower.c newlib/libc/ctype/toupper.c newlib/libc/ctype/towctrans.c newlib/libc/ctype/towlower.c newlib/libc/ctype/towupper.c newlib/libc/include/_syslist.h newlib/libc/include/ctype.h newlib/libc/include/ieeefp.h newlib/libc/include/machine/ieeefp.h newlib/libc/include/machine/setjmp.h newlib/libc/include/machine/types.h newlib/libc/include/math.h newlib/libc/include/pwd.h newlib/libc/include/stdio.h newlib/libc/include/stdlib.h newlib/libc/include/string.h newlib/libc/include/sys/config.h newlib/libc/include/sys/dirent.h newlib/libc/include/sys/fcntl.h newlib/libc/include/sys/features.h newlib/libc/include/sys/reent.h newlib/libc/include/sys/signal.h newlib/libc/include/sys/time.h newlib/libc/include/sys/types.h newlib/libc/include/sys/unistd.h newlib/libc/include/time.h newlib/libc/libc.texinfo newlib/libc/machine/a29k/aclocal.m4 newlib/libc/machine/a29k/configure newlib/libc/machine/aclocal.m4 newlib/libc/machine/arm/aclocal.m4 newlib/libc/machine/arm/configure newlib/libc/machine/arm/setjmp.S newlib/libc/machine/configure newlib/libc/machine/d10v/aclocal.m4 newlib/libc/machine/d10v/configure newlib/libc/machine/d30v/aclocal.m4 newlib/libc/machine/d30v/configure newlib/libc/machine/fr30/aclocal.m4 newlib/libc/machine/fr30/configure newlib/libc/machine/frv/aclocal.m4 newlib/libc/machine/frv/configure newlib/libc/machine/h8300/aclocal.m4 newlib/libc/machine/h8300/configure newlib/libc/machine/h8500/aclocal.m4 newlib/libc/machine/h8500/configure newlib/libc/machine/hppa/aclocal.m4 newlib/libc/machine/hppa/configure newlib/libc/machine/i386/aclocal.m4 newlib/libc/machine/i386/configure newlib/libc/machine/i960/aclocal.m4 newlib/libc/machine/i960/configure newlib/libc/machine/iq2000/aclocal.m4 newlib/libc/machine/iq2000/configure newlib/libc/machine/m32r/aclocal.m4 newlib/libc/machine/m32r/configure newlib/libc/machine/m68hc11/aclocal.m4 newlib/libc/machine/m68hc11/configure newlib/libc/machine/m68k/aclocal.m4 newlib/libc/machine/m68k/configure newlib/libc/machine/m88k/aclocal.m4 newlib/libc/machine/m88k/configure newlib/libc/machine/mips/aclocal.m4 newlib/libc/machine/mips/configure newlib/libc/machine/mn10200/aclocal.m4 newlib/libc/machine/mn10200/configure newlib/libc/machine/mn10300/aclocal.m4 newlib/libc/machine/mn10300/configure newlib/libc/machine/necv70/aclocal.m4 newlib/libc/machine/necv70/configure newlib/libc/machine/powerpc/aclocal.m4 newlib/libc/machine/powerpc/configure newlib/libc/machine/powerpc/vfprintf.c newlib/libc/machine/powerpc/vfscanf.c newlib/libc/machine/sh/Makefile.in newlib/libc/machine/sh/aclocal.m4 newlib/libc/machine/sh/configure newlib/libc/machine/sparc/aclocal.m4 newlib/libc/machine/sparc/configure newlib/libc/machine/tic4x/aclocal.m4 newlib/libc/machine/tic4x/configure newlib/libc/machine/tic80/aclocal.m4 newlib/libc/machine/tic80/configure newlib/libc/machine/v850/aclocal.m4 newlib/libc/machine/v850/configure newlib/libc/machine/w65/aclocal.m4 newlib/libc/machine/w65/configure newlib/libc/machine/xscale/Makefile.in newlib/libc/machine/xscale/aclocal.m4 newlib/libc/machine/xscale/configure newlib/libc/machine/xstormy16/aclocal.m4 newlib/libc/machine/xstormy16/configure newlib/libc/machine/z8k/Makefile.am newlib/libc/machine/z8k/Makefile.in newlib/libc/machine/z8k/aclocal.m4 newlib/libc/machine/z8k/configure newlib/libc/machine/z8k/setjmp.S newlib/libc/misc/Makefile.am newlib/libc/misc/Makefile.in newlib/libc/misc/unctrl.c newlib/libc/posix/scandir.c newlib/libc/reent/reent.tex newlib/libc/signal/signal.c newlib/libc/stdio/Makefile.am newlib/libc/stdio/Makefile.in newlib/libc/stdio/clearerr.c newlib/libc/stdio/fclose.c newlib/libc/stdio/feof.c newlib/libc/stdio/ferror.c newlib/libc/stdio/fflush.c newlib/libc/stdio/fgetc.c newlib/libc/stdio/fgetpos.c newlib/libc/stdio/fgets.c newlib/libc/stdio/fileno.c newlib/libc/stdio/findfp.c newlib/libc/stdio/fiprintf.c newlib/libc/stdio/fputc.c newlib/libc/stdio/fputs.c newlib/libc/stdio/fread.c newlib/libc/stdio/freopen.c newlib/libc/stdio/fseek.c newlib/libc/stdio/ftell.c newlib/libc/stdio/fwrite.c newlib/libc/stdio/getc.c newlib/libc/stdio/getchar.c newlib/libc/stdio/getdelim.c newlib/libc/stdio/getw.c newlib/libc/stdio/iprintf.c newlib/libc/stdio/local.h newlib/libc/stdio/perror.c newlib/libc/stdio/printf.c newlib/libc/stdio/putc.c newlib/libc/stdio/putchar.c newlib/libc/stdio/puts.c newlib/libc/stdio/putw.c newlib/libc/stdio/refill.c newlib/libc/stdio/scanf.c newlib/libc/stdio/setvbuf.c newlib/libc/stdio/siprintf.c newlib/libc/stdio/sprintf.c newlib/libc/stdio/sscanf.c newlib/libc/stdio/stdio.tex newlib/libc/stdio/ungetc.c newlib/libc/stdio/vfprintf.c newlib/libc/stdio/vfscanf.c newlib/libc/stdio/vprintf.c newlib/libc/stdio/vscanf.c newlib/libc/stdio/wbuf.c newlib/libc/stdio/wsetup.c newlib/libc/stdio64/fgetpos64.c newlib/libc/stdio64/freopen64.c newlib/libc/stdio64/fseeko64.c newlib/libc/stdio64/ftello64.c newlib/libc/stdlib/__atexit.c newlib/libc/stdlib/__call_atexit.c newlib/libc/stdlib/a64l.c newlib/libc/stdlib/assert.c newlib/libc/stdlib/efgcvt.c newlib/libc/stdlib/envlock.c newlib/libc/stdlib/getopt.c newlib/libc/stdlib/ldtoa.c newlib/libc/stdlib/mallocr.c newlib/libc/stdlib/mlock.c newlib/libc/stdlib/mstats.c newlib/libc/stdlib/putenv.c newlib/libc/stdlib/putenv_r.c newlib/libc/stdlib/rand.c newlib/libc/stdlib/rand48.c newlib/libc/stdlib/setenv_r.c newlib/libc/stdlib/strtod.c newlib/libc/string/bcmp.c newlib/libc/string/memchr.c newlib/libc/string/memcmp.c newlib/libc/string/strcasecmp.c newlib/libc/string/strcoll.c newlib/libc/string/strcspn.c newlib/libc/string/strerror_r.c newlib/libc/string/strings.tex newlib/libc/string/strlwr.c newlib/libc/string/strncasecmp.c newlib/libc/string/strncat.c newlib/libc/string/strndup_r.c newlib/libc/string/strnlen.c newlib/libc/string/strpbrk.c newlib/libc/string/strtok.c newlib/libc/string/strupr.c newlib/libc/string/wcscat.c newlib/libc/string/wcschr.c newlib/libc/string/wcscmp.c newlib/libc/string/wcscoll.c newlib/libc/string/wcscpy.c newlib/libc/string/wcscspn.c newlib/libc/string/wcslcat.c newlib/libc/string/wcslcpy.c newlib/libc/string/wcslen.c newlib/libc/string/wcsncat.c newlib/libc/string/wcsncmp.c newlib/libc/string/wcsncpy.c newlib/libc/string/wcsnlen.c newlib/libc/string/wcspbrk.c newlib/libc/string/wcsrchr.c newlib/libc/string/wcsspn.c newlib/libc/string/wcsstr.c newlib/libc/string/wcstrings.tex newlib/libc/string/wcswidth.c newlib/libc/string/wcwidth.c newlib/libc/string/wmemchr.c newlib/libc/string/wmemcmp.c newlib/libc/string/wmemcpy.c newlib/libc/string/wmemmove.c newlib/libc/string/wmemset.c newlib/libc/sys.tex newlib/libc/sys/a29khif/aclocal.m4 newlib/libc/sys/a29khif/configure newlib/libc/sys/aclocal.m4 newlib/libc/sys/arc/aclocal.m4 newlib/libc/sys/arc/configure newlib/libc/sys/arc/syscalls.c newlib/libc/sys/arm/Makefile.am newlib/libc/sys/arm/Makefile.in newlib/libc/sys/arm/aclocal.m4 newlib/libc/sys/arm/configure newlib/libc/sys/arm/crt0.S newlib/libc/sys/arm/libcfunc.c newlib/libc/sys/arm/swi.h newlib/libc/sys/arm/syscalls.c newlib/libc/sys/arm/trap.S newlib/libc/sys/configure newlib/libc/sys/configure.in newlib/libc/sys/d10v/aclocal.m4 newlib/libc/sys/d10v/configure newlib/libc/sys/decstation/aclocal.m4 newlib/libc/sys/decstation/configure newlib/libc/sys/h8300hms/aclocal.m4 newlib/libc/sys/h8300hms/configure newlib/libc/sys/h8500hms/aclocal.m4 newlib/libc/sys/h8500hms/configure newlib/libc/sys/linux/Makefile.am newlib/libc/sys/linux/Makefile.in newlib/libc/sys/linux/aclocal.m4 newlib/libc/sys/linux/aio.c newlib/libc/sys/linux/argp/argp-fs-xinl.c newlib/libc/sys/linux/argp/argp-xinl.c newlib/libc/sys/linux/configure newlib/libc/sys/linux/dl/dl-cache.c newlib/libc/sys/linux/dl/dl-load.c newlib/libc/sys/linux/dl/dl-open.c newlib/libc/sys/linux/dl/dl-reloc.c newlib/libc/sys/linux/dl/dl-runtime.c newlib/libc/sys/linux/dl/dlfcn.h newlib/libc/sys/linux/dl/do-rel.h newlib/libc/sys/linux/dl/dynamic-link.h newlib/libc/sys/linux/dl/ldsodefs.h newlib/libc/sys/linux/getpwnam.c newlib/libc/sys/linux/getpwuid.c newlib/libc/sys/linux/iconv/gconv_open.c newlib/libc/sys/linux/iconv/gconv_simple.c newlib/libc/sys/linux/include/dlfcn.h newlib/libc/sys/linux/include/getopt.h newlib/libc/sys/linux/include/stdint.h newlib/libc/sys/linux/include/time.h newlib/libc/sys/linux/include/unistd.h newlib/libc/sys/linux/inode.c newlib/libc/sys/linux/linuxthreads/Makefile.am newlib/libc/sys/linux/linuxthreads/Makefile.in newlib/libc/sys/linux/linuxthreads/aclocal.m4 newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h newlib/libc/sys/linux/linuxthreads/config.h newlib/libc/sys/linux/linuxthreads/configure newlib/libc/sys/linux/linuxthreads/machine/aclocal.m4 newlib/libc/sys/linux/linuxthreads/machine/configure newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m4 newlib/libc/sys/linux/linuxthreads/machine/i386/configure newlib/libc/sys/linux/machine/aclocal.m4 newlib/libc/sys/linux/machine/configure newlib/libc/sys/linux/machine/i386/aclocal.m4 newlib/libc/sys/linux/machine/i386/configure newlib/libc/sys/linux/machine/i386/dl-machine.h newlib/libc/sys/linux/machine/i386/weakalias.h newlib/libc/sys/linux/net/gethostbydns.c newlib/libc/sys/linux/net/ns_ntoa.c newlib/libc/sys/linux/shared.ld newlib/libc/sys/linux/stdlib/glob.c newlib/libc/sys/linux/sys/cdefs.h newlib/libc/sys/linux/sys/dirent.h newlib/libc/sys/linux/sys/lock.h newlib/libc/sys/linux/sys/stat.h newlib/libc/sys/linux/sys/types.h newlib/libc/sys/linux/sys/unistd.h newlib/libc/sys/m88kbug/aclocal.m4 newlib/libc/sys/m88kbug/configure newlib/libc/sys/mmixware/aclocal.m4 newlib/libc/sys/mmixware/configure newlib/libc/sys/netware/aclocal.m4 newlib/libc/sys/netware/configure newlib/libc/sys/rtems/aclocal.m4 newlib/libc/sys/rtems/configure newlib/libc/sys/rtems/crt0.c newlib/libc/sys/sh/aclocal.m4 newlib/libc/sys/sh/configure newlib/libc/sys/sparc64/aclocal.m4 newlib/libc/sys/sparc64/configure newlib/libc/sys/sun4/aclocal.m4 newlib/libc/sys/sun4/configure newlib/libc/sys/sysmec/aclocal.m4 newlib/libc/sys/sysmec/configure newlib/libc/sys/sysnec810/aclocal.m4 newlib/libc/sys/sysnec810/configure newlib/libc/sys/sysnecv850/aclocal.m4 newlib/libc/sys/sysnecv850/configure newlib/libc/sys/sysvi386/aclocal.m4 newlib/libc/sys/sysvi386/configure newlib/libc/sys/sysvnecv70/aclocal.m4 newlib/libc/sys/sysvnecv70/configure newlib/libc/sys/tic80/aclocal.m4 newlib/libc/sys/tic80/configure newlib/libc/sys/w65/aclocal.m4 newlib/libc/sys/w65/configure newlib/libc/sys/z8ksim/aclocal.m4 newlib/libc/sys/z8ksim/configure newlib/libc/time/Makefile.am newlib/libc/time/Makefile.in newlib/libc/time/local.h newlib/libc/time/mktime.c newlib/libc/time/mktm_r.c newlib/libc/time/strftime.c newlib/libc/time/strptime.c newlib/libc/time/time.tex newlib/libc/time/tzlock.c newlib/libc/time/tzset_r.c newlib/libc/unix/Makefile.am newlib/libc/unix/Makefile.in newlib/libc/unix/getcwd.c newlib/libc/unix/getlogin.c newlib/libc/unix/getpass.c newlib/libc/unix/getut.c newlib/libc/unix/ttyname.c newlib/libm/aclocal.m4 newlib/libm/common/Makefile.am newlib/libm/common/Makefile.in newlib/libm/common/common.tex newlib/libm/common/fdlibm.h newlib/libm/common/s_fmax.c newlib/libm/common/s_fmin.c newlib/libm/common/s_fpclassify.c newlib/libm/common/s_lrint.c newlib/libm/common/s_modf.c newlib/libm/common/sf_fmax.c newlib/libm/common/sf_fmin.c newlib/libm/common/sf_lrint.c newlib/libm/common/sf_round.c newlib/libm/configure newlib/libm/libm.texinfo newlib/libm/machine/aclocal.m4 newlib/libm/machine/configure newlib/libm/machine/i386/aclocal.m4 newlib/libm/machine/i386/configure newlib/libm/math/Makefile.am newlib/libm/math/Makefile.in newlib/libm/math/ef_atan2.c newlib/libm/math/ef_hypot.c newlib/libm/math/math.tex newlib/libm/math/s_infconst.c newlib/libm/math/s_isinf.c newlib/libm/math/s_isnan.c newlib/libm/math/s_ldexp.c newlib/libm/math/sf_isinf.c newlib/libm/math/sf_isnan.c newlib/libm/math/w_j0.c newlib/libm/math/w_log.c newlib/libm/mathfp/Makefile.am newlib/libm/mathfp/Makefile.in newlib/libm/mathfp/mathfp.tex newlib/libm/mathfp/s_atangent.c newlib/libm/mathfp/s_frexp.c newlib/libm/mathfp/s_infconst.c newlib/libm/mathfp/s_isinf.c newlib/libm/mathfp/s_isnan.c newlib/libm/mathfp/s_ldexp.c newlib/libm/mathfp/s_logarithm.c newlib/libm/mathfp/s_mathcnst.c newlib/libm/mathfp/s_pow.c newlib/libm/mathfp/sf_atangent.c newlib/libm/mathfp/sf_frexp.c newlib/libm/mathfp/sf_isinf.c newlib/libm/mathfp/sf_isnan.c newlib/libm/mathfp/sf_pow.c newlib/libm/mathfp/w_jn.c newlib/newlib.hin newlib/stamp-h.in newlib/testsuite/include/check.h newlib/testsuite/lib/checkoutput.exp newlib/testsuite/lib/flags.exp newlib/testsuite/lib/newlib.exp newlib/testsuite/lib/passfail.exp src-release symlink-tree ylwrap Cherrypick from cygnus 1999-05-03 07:29:06 UTC Richard Henderson <rth@redhat.com> '19990502 sourceware import': COPYING COPYING.LIB include/aout/hp.h include/aout/hppa.h include/coff/sym.h include/fopen-bin.h include/fopen-same.h include/fopen-vms.h include/gdbm.h include/nlm/ppc-ext.h include/opcode/mn10200.h include/opcode/tahoe.h include/opcode/tic30.h move-if-change setup.com Delete: config/depstand.m4 config/enable.m4 config/gxx-include-dir.m4 config/lead-dot.m4 config/mh-ppc-aix config/stdint.m4 config/tls.m4 depcomp libgloss/cris/Makefile.in libgloss/cris/configure libgloss/cris/configure.in libgloss/cris/crt0.S libgloss/cris/crti.c libgloss/cris/crtn.c libgloss/cris/gensyscalls libgloss/cris/lcrt0.c libgloss/cris/linunistd.h libgloss/cris/outbyte.c libgloss/cris/setup.S libgloss/crx/Makefile.in libgloss/crx/_exit.c libgloss/crx/_getenv.c libgloss/crx/_rename.c libgloss/crx/close.c libgloss/crx/configure libgloss/crx/configure.in libgloss/crx/crt0.S libgloss/crx/crti.S libgloss/crx/crtn.S libgloss/crx/dvz_hndl.c libgloss/crx/flg_hndl.c libgloss/crx/fstat.c libgloss/crx/getpid.c libgloss/crx/iad_hndl.c libgloss/crx/intable.c libgloss/crx/isatty.c libgloss/crx/kill.c libgloss/crx/lseek.c libgloss/crx/open.c libgloss/crx/putnum.c libgloss/crx/read.c libgloss/crx/sbrk.c libgloss/crx/sim.ld libgloss/crx/stat.c libgloss/crx/svc_hndl.c libgloss/crx/time.c libgloss/crx/und_hndl.c libgloss/crx/unlink.c libgloss/crx/write.c libgloss/libnosys/chown.c libgloss/libnosys/readlink.c libgloss/libnosys/symlink.c libgloss/m32c/Makefile.in libgloss/m32c/abort.S libgloss/m32c/argv.S libgloss/m32c/argvlen.S libgloss/m32c/chdir.S libgloss/m32c/chmod.S libgloss/m32c/close.S libgloss/m32c/configure libgloss/m32c/configure.in libgloss/m32c/crt0.S libgloss/m32c/crtn.S libgloss/m32c/exit.S libgloss/m32c/fstat.S libgloss/m32c/genscript libgloss/m32c/getpid.S libgloss/m32c/gettimeofday.S libgloss/m32c/heaptop.S libgloss/m32c/isatty.S libgloss/m32c/kill.S libgloss/m32c/link.S libgloss/m32c/lseek.S libgloss/m32c/m32c.tmpl libgloss/m32c/m32csys.h libgloss/m32c/open.S libgloss/m32c/read.S libgloss/m32c/sbrk.c libgloss/m32c/stat.S libgloss/m32c/time.S libgloss/m32c/times.S libgloss/m32c/unlink.S libgloss/m32c/utime.S libgloss/m32c/write.S libgloss/m68k/dbug-cf.sc libgloss/mt/16-002.ld libgloss/mt/16-003.ld libgloss/mt/64-001.ld libgloss/mt/Makefile.in libgloss/mt/access.c libgloss/mt/chmod.c libgloss/mt/close.c libgloss/mt/configure libgloss/mt/configure.in libgloss/mt/crt0-16-002.S libgloss/mt/crt0-16-003.S libgloss/mt/crt0-64-001.S libgloss/mt/crt0-ms2.S libgloss/mt/crt0.S libgloss/mt/exit-16-002.c libgloss/mt/exit-16-003.c libgloss/mt/exit-64-001.c libgloss/mt/exit-ms2.c libgloss/mt/exit.c libgloss/mt/fstat.c libgloss/mt/getpid.c libgloss/mt/gettime.c libgloss/mt/isatty.c libgloss/mt/kill.c libgloss/mt/lseek.c libgloss/mt/ms2.ld libgloss/mt/open.c libgloss/mt/read.c libgloss/mt/sbrk.c libgloss/mt/startup-16-002.S libgloss/mt/startup-16-003.S libgloss/mt/startup-64-001.S libgloss/mt/startup-ms2.S libgloss/mt/stat.c libgloss/mt/time.c libgloss/mt/times.c libgloss/mt/trap.S libgloss/mt/trap.h libgloss/mt/unlink.c libgloss/mt/utime.c libgloss/mt/write.c libgloss/rs6000/sim-getrusage.S newlib/acconfig.h newlib/libc/include/getopt.h newlib/libc/include/inttypes.h newlib/libc/include/libgen.h newlib/libc/include/machine/_types.h newlib/libc/include/stdint.h newlib/libc/include/sys/string.h newlib/libc/machine/arm/machine/endian.h newlib/libc/machine/arm/machine/param.h newlib/libc/machine/cris/Makefile.am newlib/libc/machine/cris/Makefile.in newlib/libc/machine/cris/aclocal.m4 newlib/libc/machine/cris/configure newlib/libc/machine/cris/configure.in newlib/libc/machine/cris/include/pthread.h newlib/libc/machine/cris/libcdtor.c newlib/libc/machine/cris/memcpy.c newlib/libc/machine/cris/memmove.c newlib/libc/machine/cris/memset.c newlib/libc/machine/cris/setjmp.c newlib/libc/machine/cris/sys/errno.h newlib/libc/machine/cris/sys/fcntl.h newlib/libc/machine/cris/sys/signal.h newlib/libc/machine/crx/Makefile.am newlib/libc/machine/crx/Makefile.in newlib/libc/machine/crx/aclocal.m4 newlib/libc/machine/crx/configure newlib/libc/machine/crx/configure.in newlib/libc/machine/crx/getenv.c newlib/libc/machine/crx/setjmp.S newlib/libc/machine/crx/sys/asm.h newlib/libc/machine/crx/sys/libh.h newlib/libc/machine/crx/sys/syscall.h newlib/libc/machine/m32c/Makefile.am newlib/libc/machine/m32c/Makefile.in newlib/libc/machine/m32c/aclocal.m4 newlib/libc/machine/m32c/configure newlib/libc/machine/m32c/configure.in newlib/libc/machine/m32c/setjmp.S newlib/libc/machine/mt/Makefile.am newlib/libc/machine/mt/Makefile.in newlib/libc/machine/mt/aclocal.m4 newlib/libc/machine/mt/configure newlib/libc/machine/mt/configure.in newlib/libc/machine/mt/setjmp.S newlib/libc/machine/z8k/memcmp.S newlib/libc/machine/z8k/memcpy.S newlib/libc/machine/z8k/memmove.S newlib/libc/machine/z8k/memset.S newlib/libc/misc/init.c newlib/libc/stdio/asiprintf.c newlib/libc/stdio/dprintf.c newlib/libc/stdio/fiscanf.c newlib/libc/stdio/iscanf.c newlib/libc/stdio/sccl.c newlib/libc/stdio/siscanf.c newlib/libc/stdio/sniprintf.c newlib/libc/stdio/vasiprintf.c newlib/libc/stdio/vdprintf.c newlib/libc/stdio/viprintf.c newlib/libc/stdio/viscanf.c newlib/libc/stdio/vsiprintf.c newlib/libc/stdio/vsiscanf.c newlib/libc/stdio/vsniprintf.c newlib/libc/sys/arm/aeabi_atexit.c newlib/libc/sys/arm/sys/param.h newlib/libc/sys/linux/bits/initspin.h newlib/libc/sys/linux/bits/libc-lock.h newlib/libc/sys/linux/bits/pthreadtypes.h newlib/libc/sys/linux/bits/typesizes.h newlib/libc/sys/linux/dl/dl-local.h newlib/libc/sys/linux/getpwent.c newlib/libc/sys/linux/include/ltdl.h newlib/libc/sys/linux/sys/string.h newlib/libc/sys/rdos/Makefile.am newlib/libc/sys/rdos/Makefile.in newlib/libc/sys/rdos/aclocal.m4 newlib/libc/sys/rdos/chown.c newlib/libc/sys/rdos/close.c newlib/libc/sys/rdos/config.h newlib/libc/sys/rdos/configure newlib/libc/sys/rdos/configure.in newlib/libc/sys/rdos/crt0.S newlib/libc/sys/rdos/execve.c newlib/libc/sys/rdos/fork.c newlib/libc/sys/rdos/fstat.c newlib/libc/sys/rdos/getenv.c newlib/libc/sys/rdos/getpid.c newlib/libc/sys/rdos/gettod.c newlib/libc/sys/rdos/isatty.c newlib/libc/sys/rdos/kill.c newlib/libc/sys/rdos/link.c newlib/libc/sys/rdos/lseek.c newlib/libc/sys/rdos/open.c newlib/libc/sys/rdos/rdos.S newlib/libc/sys/rdos/rdos.h newlib/libc/sys/rdos/rdoshelp.c newlib/libc/sys/rdos/read.c newlib/libc/sys/rdos/readlink.c newlib/libc/sys/rdos/sbrk.c newlib/libc/sys/rdos/stat.c newlib/libc/sys/rdos/symlink.c newlib/libc/sys/rdos/times.c newlib/libc/sys/rdos/unlink.c newlib/libc/sys/rdos/user.def newlib/libc/sys/rdos/wait.c newlib/libc/sys/rdos/write.c newlib/libc/time/gettzinfo.c newlib/libc/time/tzvars.c newlib/libc/unix/basename.c newlib/libc/unix/dirname.c newlib/libm/common/s_infconst.c newlib/libm/common/s_isinf.c newlib/libm/common/s_isinfd.c newlib/libm/common/s_isnan.c newlib/libm/common/s_isnand.c newlib/libm/common/sf_isinf.c newlib/libm/common/sf_isinff.c newlib/libm/common/sf_isnan.c newlib/libm/common/sf_isnanf.c newlib/testsuite/newlib.string/memmove1.c
-rw-r--r--COPYING8
-rw-r--r--COPYING.LIB6
-rw-r--r--COPYING.LIBGLOSS4
-rw-r--r--COPYING.NEWLIB6
-rw-r--r--ChangeLog964
-rw-r--r--MAINTAINERS31
-rw-r--r--Makefile.def84
-rw-r--r--Makefile.in22902
-rw-r--r--Makefile.tpl1206
-rw-r--r--config-ml.in20
-rwxr-xr-xconfig.guess568
-rw-r--r--config.if37
-rwxr-xr-xconfig.sub119
-rw-r--r--config/ChangeLog110
-rw-r--r--config/accross.m498
-rw-r--r--config/acx.m4264
-rw-r--r--config/depstand.m4136
-rw-r--r--config/enable.m438
-rw-r--r--config/gcc-lib-path.m415
-rw-r--r--config/gxx-include-dir.m426
-rw-r--r--config/lead-dot.m432
-rw-r--r--config/mh-mingw327
-rw-r--r--config/mh-ppc-aix8
-rw-r--r--config/mt-gnu2
-rw-r--r--config/no-executables.m42
-rw-r--r--config/stdint.m4486
-rw-r--r--config/tls.m421
-rw-r--r--config/warnings.m414
-rwxr-xr-xconfigure4401
-rw-r--r--configure.in813
-rwxr-xr-xdepcomp553
-rw-r--r--etc/ChangeLog76
-rw-r--r--etc/Makefile.in33
-rw-r--r--etc/configure.texi12
-rw-r--r--etc/standards.texi16
-rw-r--r--etc/texi2pod.pl56
-rw-r--r--gettext.m412
-rw-r--r--include/COPYING340
-rw-r--r--include/ChangeLog144
-rw-r--r--include/ChangeLog-91032737
-rw-r--r--include/MAINTAINERS1
-rw-r--r--include/alloca-conf.h24
-rw-r--r--include/ansidecl.h341
-rw-r--r--include/aout/ChangeLog212
-rw-r--r--include/aout/adobe.h313
-rw-r--r--include/aout/aout64.h519
-rw-r--r--include/aout/ar.h52
-rw-r--r--include/aout/dynix3.h86
-rw-r--r--include/aout/encap.h135
-rw-r--r--include/aout/host.h42
-rw-r--r--include/aout/hp.h82
-rw-r--r--include/aout/hp300hpux.h119
-rw-r--r--include/aout/hppa.h7
-rw-r--r--include/aout/ranlib.h62
-rw-r--r--include/aout/reloc.h66
-rw-r--r--include/aout/stab.def271
-rw-r--r--include/aout/stab_gnu.h54
-rw-r--r--include/aout/sun4.h235
-rw-r--r--include/bfdlink.h692
-rw-r--r--include/bin-bugs.h3
-rw-r--r--include/bout.h191
-rw-r--r--include/coff/ChangeLog23
-rw-r--r--include/coff/ChangeLog-91031160
-rw-r--r--include/coff/a29k.h148
-rw-r--r--include/coff/alpha.h382
-rw-r--r--include/coff/apollo.h124
-rw-r--r--include/coff/arm.h128
-rw-r--r--include/coff/aux-coff.h48
-rw-r--r--include/coff/ecoff.h408
-rw-r--r--include/coff/external.h254
-rw-r--r--include/coff/go32exe.h37
-rw-r--r--include/coff/h8300.h54
-rw-r--r--include/coff/h8500.h46
-rw-r--r--include/coff/i386.h71
-rw-r--r--include/coff/i860.h86
-rw-r--r--include/coff/i960.h319
-rw-r--r--include/coff/ia64.h88
-rw-r--r--include/coff/internal.h746
-rw-r--r--include/coff/m68k.h81
-rw-r--r--include/coff/m88k.h196
-rw-r--r--include/coff/mcore.h71
-rw-r--r--include/coff/mips.h343
-rw-r--r--include/coff/mipspe.h66
-rw-r--r--include/coff/or32.h287
-rw-r--r--include/coff/pe.h313
-rw-r--r--include/coff/powerpc.h58
-rw-r--r--include/coff/rs6000.h267
-rw-r--r--include/coff/rs6k64.h260
-rw-r--r--include/coff/sh.h147
-rw-r--r--include/coff/sparc.h155
-rw-r--r--include/coff/sym.h484
-rw-r--r--include/coff/symconst.h177
-rw-r--r--include/coff/ti.h473
-rw-r--r--include/coff/tic30.h50
-rw-r--r--include/coff/tic4x.h46
-rw-r--r--include/coff/tic54x.h59
-rw-r--r--include/coff/tic80.h122
-rw-r--r--include/coff/w65.h46
-rw-r--r--include/coff/we32k.h60
-rw-r--r--include/coff/xcoff.h639
-rw-r--r--include/coff/z8k.h48
-rw-r--r--include/demangle.h533
-rw-r--r--include/dis-asm.h318
-rw-r--r--include/dyn-string.h63
-rw-r--r--include/elf/ChangeLog116
-rw-r--r--include/elf/ChangeLog-91031914
-rw-r--r--include/elf/alpha.h126
-rw-r--r--include/elf/arc.h56
-rw-r--r--include/elf/arm.h161
-rw-r--r--include/elf/avr.h58
-rw-r--r--include/elf/common.h753
-rw-r--r--include/elf/cr16c.h258
-rw-r--r--include/elf/cris.h101
-rw-r--r--include/elf/crx.h53
-rw-r--r--include/elf/d10v.h38
-rw-r--r--include/elf/d30v.h42
-rw-r--r--include/elf/dlx.h53
-rw-r--r--include/elf/dwarf.h320
-rw-r--r--include/elf/dwarf2.h775
-rw-r--r--include/elf/external.h276
-rw-r--r--include/elf/fr30.h42
-rw-r--r--include/elf/frv.h114
-rw-r--r--include/elf/h8.h100
-rw-r--r--include/elf/hppa.h552
-rw-r--r--include/elf/i370.h68
-rw-r--r--include/elf/i386.h73
-rw-r--r--include/elf/i860.h66
-rw-r--r--include/elf/i960.h37
-rw-r--r--include/elf/ia64.h216
-rw-r--r--include/elf/internal.h254
-rw-r--r--include/elf/ip2k.h62
-rw-r--r--include/elf/iq2000.h58
-rw-r--r--include/elf/m32r.h119
-rw-r--r--include/elf/m68hc11.h95
-rw-r--r--include/elf/m68k.h58
-rw-r--r--include/elf/mcore.h46
-rw-r--r--include/elf/mips.h976
-rw-r--r--include/elf/mmix.h171
-rw-r--r--include/elf/mn10200.h39
-rw-r--r--include/elf/mn10300.h68
-rw-r--r--include/elf/msp430.h58
-rw-r--r--include/elf/openrisc.h39
-rw-r--r--include/elf/or32.h62
-rw-r--r--include/elf/pj.h44
-rw-r--r--include/elf/ppc.h164
-rw-r--r--include/elf/ppc64.h156
-rw-r--r--include/elf/reloc-macros.h101
-rw-r--r--include/elf/s390.h125
-rw-r--r--include/elf/sh.h224
-rw-r--r--include/elf/sparc.h175
-rw-r--r--include/elf/v850.h121
-rw-r--r--include/elf/vax.h51
-rw-r--r--include/elf/x86-64.h56
-rw-r--r--include/elf/xstormy16.h57
-rw-r--r--include/elf/xtensa.h88
-rw-r--r--include/fibheap.h86
-rw-r--r--include/filenames.h51
-rw-r--r--include/floatformat.h133
-rw-r--r--include/fnmatch.h70
-rw-r--r--include/fopen-bin.h27
-rw-r--r--include/fopen-same.h27
-rw-r--r--include/fopen-vms.h24
-rw-r--r--include/gdb/ChangeLog130
-rw-r--r--include/gdb/callback.h279
-rw-r--r--include/gdb/fileio.h146
-rw-r--r--include/gdb/remote-sim.h282
-rw-r--r--include/gdb/signals.h237
-rw-r--r--include/gdb/sim-arm.h114
-rw-r--r--include/gdb/sim-d10v.h142
-rw-r--r--include/gdb/sim-frv.h53
-rw-r--r--include/gdb/sim-h8300.h78
-rw-r--r--include/gdb/sim-ppc.h771
-rw-r--r--include/gdb/sim-sh.h170
-rw-r--r--include/gdbm.h91
-rw-r--r--include/getopt.h144
-rw-r--r--include/hashtab.h200
-rw-r--r--include/hp-symtab.h1866
-rw-r--r--include/ieee.h165
-rw-r--r--include/libiberty.h366
-rw-r--r--include/md5.h142
-rw-r--r--include/nlm/ChangeLog93
-rw-r--r--include/nlm/alpha-ext.h166
-rw-r--r--include/nlm/common.h123
-rw-r--r--include/nlm/external.h174
-rw-r--r--include/nlm/i386-ext.h116
-rw-r--r--include/nlm/internal.h309
-rw-r--r--include/nlm/ppc-ext.h163
-rw-r--r--include/nlm/sparc32-ext.h120
-rw-r--r--include/oasys.h192
-rw-r--r--include/objalloc.h115
-rw-r--r--include/obstack.h611
-rw-r--r--include/opcode/ChangeLog109
-rw-r--r--include/opcode/ChangeLog-91033102
-rw-r--r--include/opcode/a29k.h281
-rw-r--r--include/opcode/alpha.h237
-rw-r--r--include/opcode/arc.h323
-rw-r--r--include/opcode/arm.h96
-rw-r--r--include/opcode/avr.h265
-rw-r--r--include/opcode/cgen.h1460
-rw-r--r--include/opcode/convex.h1707
-rw-r--r--include/opcode/cris.h300
-rw-r--r--include/opcode/crx.h395
-rw-r--r--include/opcode/d10v.h208
-rw-r--r--include/opcode/d30v.h286
-rw-r--r--include/opcode/dlx.h282
-rw-r--r--include/opcode/h8300.h1892
-rw-r--r--include/opcode/hppa.h874
-rw-r--r--include/opcode/i370.h265
-rw-r--r--include/opcode/i386.h1612
-rw-r--r--include/opcode/i860.h507
-rw-r--r--include/opcode/i960.h525
-rw-r--r--include/opcode/ia64.h392
-rw-r--r--include/opcode/m68hc11.h427
-rw-r--r--include/opcode/m68k.h381
-rw-r--r--include/opcode/m88k.h453
-rw-r--r--include/opcode/mips.h914
-rw-r--r--include/opcode/mmix.h186
-rw-r--r--include/opcode/mn10200.h110
-rw-r--r--include/opcode/mn10300.h169
-rw-r--r--include/opcode/msp430.h216
-rw-r--r--include/opcode/np1.h422
-rw-r--r--include/opcode/ns32k.h487
-rw-r--r--include/opcode/or32.h180
-rw-r--r--include/opcode/pdp11.h85
-rw-r--r--include/opcode/pj.h49
-rw-r--r--include/opcode/pn.h282
-rw-r--r--include/opcode/ppc.h310
-rw-r--r--include/opcode/pyr.h305
-rw-r--r--include/opcode/s390.h141
-rw-r--r--include/opcode/sparc.h241
-rw-r--r--include/opcode/tahoe.h213
-rw-r--r--include/opcode/tic30.h691
-rw-r--r--include/opcode/tic4x.h1079
-rw-r--r--include/opcode/tic54x.h163
-rw-r--r--include/opcode/tic80.h282
-rw-r--r--include/opcode/v850.h166
-rw-r--r--include/opcode/vax.h382
-rw-r--r--include/os9k.h181
-rw-r--r--include/partition.h85
-rw-r--r--include/progress.h37
-rw-r--r--include/safe-ctype.h119
-rw-r--r--include/sort.h48
-rw-r--r--include/splay-tree.h159
-rw-r--r--include/symcat.h49
-rw-r--r--include/ternary.h51
-rw-r--r--include/xregex.h28
-rw-r--r--include/xregex2.h571
-rw-r--r--include/xtensa-config.h139
-rw-r--r--include/xtensa-isa-internal.h114
-rw-r--r--include/xtensa-isa.h230
-rwxr-xr-xinstall-sh17
-rw-r--r--libgloss/ChangeLog409
-rw-r--r--libgloss/arm/Makefile.in4
-rw-r--r--libgloss/arm/configure33
-rw-r--r--libgloss/arm/configure.in11
-rw-r--r--libgloss/arm/crt0.S60
-rw-r--r--libgloss/arm/elf-redboot.ld1
-rw-r--r--libgloss/arm/libcfunc.c60
-rw-r--r--libgloss/arm/redboot-crt0.S28
-rw-r--r--libgloss/arm/swi.h8
-rw-r--r--libgloss/arm/syscalls.c163
-rw-r--r--libgloss/arm/trap.S2
-rwxr-xr-xlibgloss/configure27
-rw-r--r--libgloss/configure.in13
-rw-r--r--libgloss/cris/Makefile.in277
-rwxr-xr-xlibgloss/cris/configure1203
-rw-r--r--libgloss/cris/configure.in90
-rw-r--r--libgloss/cris/crt0.S83
-rw-r--r--libgloss/cris/crti.c77
-rw-r--r--libgloss/cris/crtn.c51
-rw-r--r--libgloss/cris/gensyscalls252
-rw-r--r--libgloss/cris/lcrt0.c128
-rw-r--r--libgloss/cris/linunistd.h421
-rw-r--r--libgloss/cris/outbyte.c9
-rw-r--r--libgloss/cris/setup.S44
-rw-r--r--libgloss/crx/Makefile.in156
-rw-r--r--libgloss/crx/_exit.c23
-rw-r--r--libgloss/crx/_getenv.c36
-rw-r--r--libgloss/crx/_rename.c21
-rw-r--r--libgloss/crx/close.c21
-rwxr-xr-xlibgloss/crx/configure1228
-rw-r--r--libgloss/crx/configure.in75
-rw-r--r--libgloss/crx/crt0.S93
-rw-r--r--libgloss/crx/crti.S47
-rw-r--r--libgloss/crx/crtn.S41
-rw-r--r--libgloss/crx/dvz_hndl.c23
-rw-r--r--libgloss/crx/flg_hndl.c23
-rw-r--r--libgloss/crx/fstat.c30
-rw-r--r--libgloss/crx/getpid.c26
-rw-r--r--libgloss/crx/iad_hndl.c23
-rw-r--r--libgloss/crx/intable.c37
-rw-r--r--libgloss/crx/isatty.c27
-rw-r--r--libgloss/crx/kill.c29
-rw-r--r--libgloss/crx/lseek.c21
-rw-r--r--libgloss/crx/open.c41
-rw-r--r--libgloss/crx/putnum.c41
-rw-r--r--libgloss/crx/read.c21
-rw-r--r--libgloss/crx/sbrk.c56
-rw-r--r--libgloss/crx/sim.ld126
-rw-r--r--libgloss/crx/stat.c30
-rw-r--r--libgloss/crx/svc_hndl.c23
-rw-r--r--libgloss/crx/time.c55
-rw-r--r--libgloss/crx/und_hndl.c23
-rw-r--r--libgloss/crx/unlink.c21
-rw-r--r--libgloss/crx/write.c21
-rw-r--r--libgloss/iq2000/sim.ld1
-rw-r--r--libgloss/libnosys/Makefile.in15
-rw-r--r--libgloss/libnosys/chown.c24
-rwxr-xr-xlibgloss/libnosys/configure62
-rw-r--r--libgloss/libnosys/configure.in22
-rw-r--r--libgloss/libnosys/readlink.c24
-rw-r--r--libgloss/libnosys/symlink.c22
-rw-r--r--libgloss/libnosys/warning.h13
-rw-r--r--libgloss/m32c/Makefile.in193
-rw-r--r--libgloss/m32c/abort.S50
-rw-r--r--libgloss/m32c/argv.S35
-rw-r--r--libgloss/m32c/argvlen.S35
-rw-r--r--libgloss/m32c/chdir.S35
-rw-r--r--libgloss/m32c/chmod.S35
-rw-r--r--libgloss/m32c/close.S35
-rwxr-xr-xlibgloss/m32c/configure1204
-rw-r--r--libgloss/m32c/configure.in90
-rw-r--r--libgloss/m32c/crt0.S177
-rw-r--r--libgloss/m32c/crtn.S58
-rw-r--r--libgloss/m32c/exit.S40
-rw-r--r--libgloss/m32c/fstat.S35
-rw-r--r--libgloss/m32c/genscript79
-rw-r--r--libgloss/m32c/getpid.S35
-rw-r--r--libgloss/m32c/gettimeofday.S35
-rw-r--r--libgloss/m32c/heaptop.S36
-rw-r--r--libgloss/m32c/isatty.S36
-rw-r--r--libgloss/m32c/kill.S35
-rw-r--r--libgloss/m32c/link.S35
-rw-r--r--libgloss/m32c/lseek.S35
-rw-r--r--libgloss/m32c/m32c.tmpl212
-rw-r--r--libgloss/m32c/m32csys.h44
-rw-r--r--libgloss/m32c/open.S35
-rw-r--r--libgloss/m32c/read.S35
-rw-r--r--libgloss/m32c/sbrk.c45
-rw-r--r--libgloss/m32c/stat.S35
-rw-r--r--libgloss/m32c/time.S35
-rw-r--r--libgloss/m32c/times.S35
-rw-r--r--libgloss/m32c/unlink.S35
-rw-r--r--libgloss/m32c/utime.S35
-rw-r--r--libgloss/m32c/write.S35
-rw-r--r--libgloss/m68hc11/sim-valid-m68hc11.ld1
-rw-r--r--libgloss/m68hc11/sim-valid-m68hc12.ld1
-rw-r--r--libgloss/m68k/Makefile.in22
-rw-r--r--libgloss/m68k/bcc.ld9
-rw-r--r--libgloss/m68k/crt0.S2
-rw-r--r--libgloss/m68k/dbug-cf.sc112
-rw-r--r--libgloss/m68k/idp.ld9
-rw-r--r--libgloss/m68k/idpgdb.ld9
-rw-r--r--libgloss/m68k/mvme135.ld9
-rw-r--r--libgloss/m68k/mvme162.ld9
-rw-r--r--libgloss/m68k/sbc5204.ld9
-rw-r--r--libgloss/m68k/sbc5206.ld9
-rw-r--r--libgloss/m68k/sim.ld9
-rw-r--r--libgloss/mcore/elf-cmb.ld1
-rw-r--r--libgloss/mips/array.ld16
-rw-r--r--libgloss/mips/cfe.ld17
-rw-r--r--libgloss/mips/ddb-kseg0.ld13
-rw-r--r--libgloss/mips/ddb.ld13
-rw-r--r--libgloss/mips/dve.ld17
-rw-r--r--libgloss/mips/idt.ld17
-rw-r--r--libgloss/mips/idt32.ld17
-rw-r--r--libgloss/mips/idt64.ld17
-rw-r--r--libgloss/mips/idtecoff.ld16
-rw-r--r--libgloss/mips/jmr3904app-java.ld17
-rw-r--r--libgloss/mips/jmr3904app.ld17
-rw-r--r--libgloss/mips/jmr3904dram-java.ld17
-rw-r--r--libgloss/mips/jmr3904dram.ld17
-rw-r--r--libgloss/mips/lsi.ld16
-rw-r--r--libgloss/mips/nullmon.ld17
-rw-r--r--libgloss/mips/pmon.ld17
-rw-r--r--libgloss/mips/regs.S7
-rw-r--r--libgloss/mn10200/eval.ld1
-rw-r--r--libgloss/mn10200/sim.ld1
-rw-r--r--libgloss/mn10300/asb2303.ld1
-rw-r--r--libgloss/mn10300/asb2305.ld1
-rw-r--r--libgloss/mn10300/eval.ld1
-rw-r--r--libgloss/mn10300/sim.ld1
-rw-r--r--libgloss/mt/16-002.ld248
-rw-r--r--libgloss/mt/16-003.ld258
-rw-r--r--libgloss/mt/64-001.ld282
-rw-r--r--libgloss/mt/Makefile.in128
-rw-r--r--libgloss/mt/access.c33
-rw-r--r--libgloss/mt/chmod.c11
-rw-r--r--libgloss/mt/close.c11
-rwxr-xr-xlibgloss/mt/configure1204
-rw-r--r--libgloss/mt/configure.in90
-rw-r--r--libgloss/mt/crt0-16-002.S111
-rw-r--r--libgloss/mt/crt0-16-003.S112
-rw-r--r--libgloss/mt/crt0-64-001.S144
-rw-r--r--libgloss/mt/crt0-ms2.S121
-rw-r--r--libgloss/mt/crt0.S63
-rw-r--r--libgloss/mt/exit-16-002.c12
-rw-r--r--libgloss/mt/exit-16-003.c12
-rw-r--r--libgloss/mt/exit-64-001.c12
-rw-r--r--libgloss/mt/exit-ms2.c12
-rw-r--r--libgloss/mt/exit.c10
-rw-r--r--libgloss/mt/fstat.c14
-rw-r--r--libgloss/mt/getpid.c10
-rw-r--r--libgloss/mt/gettime.c12
-rw-r--r--libgloss/mt/isatty.c11
-rw-r--r--libgloss/mt/kill.c11
-rw-r--r--libgloss/mt/lseek.c14
-rw-r--r--libgloss/mt/ms2.ld271
-rw-r--r--libgloss/mt/open.c11
-rw-r--r--libgloss/mt/read.c12
-rw-r--r--libgloss/mt/sbrk.c24
-rw-r--r--libgloss/mt/startup-16-002.S628
-rw-r--r--libgloss/mt/startup-16-003.S838
-rw-r--r--libgloss/mt/startup-64-001.S378
-rw-r--r--libgloss/mt/startup-ms2.S840
-rw-r--r--libgloss/mt/stat.c12
-rw-r--r--libgloss/mt/time.c11
-rw-r--r--libgloss/mt/times.c12
-rw-r--r--libgloss/mt/trap.S34
-rw-r--r--libgloss/mt/trap.h5
-rw-r--r--libgloss/mt/unlink.c11
-rw-r--r--libgloss/mt/utime.c13
-rw-r--r--libgloss/mt/write.c13
-rw-r--r--libgloss/rs6000/Makefile.in5
-rw-r--r--libgloss/rs6000/ads.ld1
-rw-r--r--libgloss/rs6000/mbx.ld1
-rw-r--r--libgloss/rs6000/sim-getrusage.S25
-rw-r--r--libgloss/rs6000/simulator.S8
-rw-r--r--libgloss/rs6000/yellowknife.ld1
-rw-r--r--libgloss/sh/sh1lcevb.ld1
-rw-r--r--libgloss/sh/sh2lcevb.ld1
-rw-r--r--libgloss/sh/sh3bb.ld1
-rw-r--r--libgloss/sh/sh3lcevb.ld1
-rw-r--r--libgloss/sparc/elfsim.ld1
-rw-r--r--libgloss/sparc/ex930.ld1
-rw-r--r--libgloss/sparc/ex931.ld1
-rw-r--r--libgloss/sparc/ex934.ld1
-rw-r--r--libgloss/sparc/sparc86x.ld1
-rw-r--r--libgloss/xstormy16/eva_app.ld1
-rw-r--r--libgloss/xstormy16/eva_stub.ld1
-rw-r--r--libgloss/xstormy16/sim_high.ld1
-rw-r--r--libgloss/xstormy16/sim_rom.ld1
-rw-r--r--libtool.m4119
-rw-r--r--ltcf-c.sh6
-rw-r--r--ltcf-cxx.sh5
-rw-r--r--ltcf-gcj.sh2
-rwxr-xr-xltconfig18
-rw-r--r--ltmain.sh62
-rwxr-xr-xmissing23
-rwxr-xr-xmkinstalldirs26
-rwxr-xr-xmove-if-change44
-rw-r--r--newlib/ChangeLog1371
-rw-r--r--newlib/MAINTAINERS7
-rw-r--r--newlib/Makefile.am43
-rw-r--r--newlib/Makefile.in55
-rw-r--r--newlib/NEWS24
-rw-r--r--newlib/README24
-rw-r--r--newlib/acconfig.h153
-rw-r--r--newlib/acinclude.m45
-rw-r--r--newlib/aclocal.m45
-rwxr-xr-xnewlib/configure253
-rw-r--r--newlib/configure.host71
-rw-r--r--newlib/configure.in61
-rw-r--r--newlib/doc/aclocal.m45
-rwxr-xr-xnewlib/doc/configure13
-rw-r--r--newlib/iconvdata/aclocal.m45
-rwxr-xr-xnewlib/iconvdata/configure99
-rw-r--r--newlib/iconvdata/jis0208.h16
-rw-r--r--newlib/libc/Makefile.am12
-rw-r--r--newlib/libc/Makefile.in4
-rw-r--r--newlib/libc/aclocal.m45
-rw-r--r--newlib/libc/argz/argz_insert.c4
-rwxr-xr-xnewlib/libc/configure101
-rw-r--r--newlib/libc/configure.in2
-rw-r--r--newlib/libc/ctype/ctype.tex36
-rw-r--r--newlib/libc/ctype/ctype_.c35
-rw-r--r--newlib/libc/ctype/islower.c6
-rw-r--r--newlib/libc/ctype/isupper.c4
-rw-r--r--newlib/libc/ctype/iswalnum.c6
-rw-r--r--newlib/libc/ctype/iswalpha.c4
-rw-r--r--newlib/libc/ctype/iswblank.c4
-rw-r--r--newlib/libc/ctype/iswcntrl.c6
-rw-r--r--newlib/libc/ctype/iswdigit.c4
-rw-r--r--newlib/libc/ctype/iswgraph.c4
-rw-r--r--newlib/libc/ctype/iswlower.c6
-rw-r--r--newlib/libc/ctype/iswprint.c4
-rw-r--r--newlib/libc/ctype/iswpunct.c4
-rw-r--r--newlib/libc/ctype/iswspace.c6
-rw-r--r--newlib/libc/ctype/iswupper.c6
-rw-r--r--newlib/libc/ctype/iswxdigit.c6
-rw-r--r--newlib/libc/ctype/tolower.c10
-rw-r--r--newlib/libc/ctype/toupper.c10
-rw-r--r--newlib/libc/ctype/towctrans.c4
-rw-r--r--newlib/libc/ctype/towlower.c10
-rw-r--r--newlib/libc/ctype/towupper.c10
-rw-r--r--newlib/libc/include/_syslist.h15
-rw-r--r--newlib/libc/include/ctype.h27
-rw-r--r--newlib/libc/include/getopt.h136
-rw-r--r--newlib/libc/include/ieeefp.h7
-rw-r--r--newlib/libc/include/inttypes.h290
-rw-r--r--newlib/libc/include/libgen.h23
-rw-r--r--newlib/libc/include/machine/_types.h121
-rw-r--r--newlib/libc/include/machine/ieeefp.h17
-rw-r--r--newlib/libc/include/machine/setjmp.h48
-rw-r--r--newlib/libc/include/machine/types.h19
-rw-r--r--newlib/libc/include/math.h93
-rw-r--r--newlib/libc/include/pwd.h4
-rw-r--r--newlib/libc/include/stdint.h401
-rw-r--r--newlib/libc/include/stdio.h40
-rw-r--r--newlib/libc/include/stdlib.h50
-rw-r--r--newlib/libc/include/string.h7
-rw-r--r--newlib/libc/include/sys/config.h18
-rw-r--r--newlib/libc/include/sys/dirent.h8
-rw-r--r--newlib/libc/include/sys/fcntl.h6
-rw-r--r--newlib/libc/include/sys/features.h1
-rw-r--r--newlib/libc/include/sys/reent.h4
-rw-r--r--newlib/libc/include/sys/signal.h7
-rw-r--r--newlib/libc/include/sys/string.h2
-rw-r--r--newlib/libc/include/sys/time.h8
-rw-r--r--newlib/libc/include/sys/types.h54
-rw-r--r--newlib/libc/include/sys/unistd.h7
-rw-r--r--newlib/libc/include/time.h54
-rw-r--r--newlib/libc/libc.texinfo31
-rw-r--r--newlib/libc/machine/a29k/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/a29k/configure11
-rw-r--r--newlib/libc/machine/aclocal.m416
-rw-r--r--newlib/libc/machine/arm/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/arm/configure11
-rw-r--r--newlib/libc/machine/arm/machine/endian.h12
-rw-r--r--newlib/libc/machine/arm/machine/param.h14
-rw-r--r--newlib/libc/machine/arm/setjmp.S31
-rwxr-xr-xnewlib/libc/machine/configure169
-rw-r--r--newlib/libc/machine/cris/Makefile.am21
-rw-r--r--newlib/libc/machine/cris/Makefile.in382
-rw-r--r--newlib/libc/machine/cris/aclocal.m4369
-rwxr-xr-xnewlib/libc/machine/cris/configure1883
-rw-r--r--newlib/libc/machine/cris/configure.in12
-rw-r--r--newlib/libc/machine/cris/include/pthread.h93
-rw-r--r--newlib/libc/machine/cris/libcdtor.c91
-rw-r--r--newlib/libc/machine/cris/memcpy.c236
-rw-r--r--newlib/libc/machine/cris/memmove.c257
-rw-r--r--newlib/libc/machine/cris/memset.c259
-rw-r--r--newlib/libc/machine/cris/setjmp.c212
-rw-r--r--newlib/libc/machine/cris/sys/errno.h166
-rw-r--r--newlib/libc/machine/cris/sys/fcntl.h163
-rw-r--r--newlib/libc/machine/cris/sys/signal.h89
-rw-r--r--newlib/libc/machine/crx/Makefile.am12
-rw-r--r--newlib/libc/machine/crx/Makefile.in327
-rw-r--r--newlib/libc/machine/crx/aclocal.m4369
-rwxr-xr-xnewlib/libc/machine/crx/configure1883
-rw-r--r--newlib/libc/machine/crx/configure.in12
-rw-r--r--newlib/libc/machine/crx/getenv.c24
-rw-r--r--newlib/libc/machine/crx/setjmp.S51
-rw-r--r--newlib/libc/machine/crx/sys/asm.h421
-rw-r--r--newlib/libc/machine/crx/sys/libh.h51
-rw-r--r--newlib/libc/machine/crx/sys/syscall.h61
-rw-r--r--newlib/libc/machine/d10v/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/d10v/configure11
-rw-r--r--newlib/libc/machine/d30v/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/d30v/configure11
-rw-r--r--newlib/libc/machine/fr30/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/fr30/configure11
-rw-r--r--newlib/libc/machine/frv/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/frv/configure11
-rw-r--r--newlib/libc/machine/h8300/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/h8300/configure11
-rw-r--r--newlib/libc/machine/h8500/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/h8500/configure11
-rw-r--r--newlib/libc/machine/hppa/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/hppa/configure11
-rw-r--r--newlib/libc/machine/i386/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/i386/configure99
-rw-r--r--newlib/libc/machine/i960/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/i960/configure11
-rw-r--r--newlib/libc/machine/iq2000/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/iq2000/configure11
-rw-r--r--newlib/libc/machine/m32c/Makefile.am12
-rw-r--r--newlib/libc/machine/m32c/Makefile.in327
-rw-r--r--newlib/libc/machine/m32c/aclocal.m4369
-rwxr-xr-xnewlib/libc/machine/m32c/configure1883
-rw-r--r--newlib/libc/machine/m32c/configure.in12
-rw-r--r--newlib/libc/machine/m32c/setjmp.S133
-rw-r--r--newlib/libc/machine/m32r/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/m32r/configure11
-rw-r--r--newlib/libc/machine/m68hc11/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/m68hc11/configure11
-rw-r--r--newlib/libc/machine/m68k/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/m68k/configure11
-rw-r--r--newlib/libc/machine/m88k/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/m88k/configure11
-rw-r--r--newlib/libc/machine/mips/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/mips/configure11
-rw-r--r--newlib/libc/machine/mn10200/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/mn10200/configure11
-rw-r--r--newlib/libc/machine/mn10300/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/mn10300/configure11
-rw-r--r--newlib/libc/machine/mt/Makefile.am12
-rw-r--r--newlib/libc/machine/mt/Makefile.in327
-rw-r--r--newlib/libc/machine/mt/aclocal.m4369
-rwxr-xr-xnewlib/libc/machine/mt/configure1883
-rw-r--r--newlib/libc/machine/mt/configure.in12
-rw-r--r--newlib/libc/machine/mt/setjmp.S99
-rw-r--r--newlib/libc/machine/necv70/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/necv70/configure11
-rw-r--r--newlib/libc/machine/powerpc/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/powerpc/configure11
-rw-r--r--newlib/libc/machine/powerpc/vfprintf.c5
-rw-r--r--newlib/libc/machine/powerpc/vfscanf.c111
-rw-r--r--newlib/libc/machine/sh/Makefile.in4
-rw-r--r--newlib/libc/machine/sh/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/sh/configure27
-rw-r--r--newlib/libc/machine/sparc/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/sparc/configure11
-rw-r--r--newlib/libc/machine/tic4x/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/tic4x/configure11
-rw-r--r--newlib/libc/machine/tic80/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/tic80/configure11
-rw-r--r--newlib/libc/machine/v850/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/v850/configure11
-rw-r--r--newlib/libc/machine/w65/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/w65/configure11
-rw-r--r--newlib/libc/machine/xscale/Makefile.in4
-rw-r--r--newlib/libc/machine/xscale/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/xscale/configure11
-rw-r--r--newlib/libc/machine/xstormy16/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/xstormy16/configure11
-rw-r--r--newlib/libc/machine/z8k/Makefile.am2
-rw-r--r--newlib/libc/machine/z8k/Makefile.in4
-rw-r--r--newlib/libc/machine/z8k/aclocal.m45
-rwxr-xr-xnewlib/libc/machine/z8k/configure11
-rw-r--r--newlib/libc/machine/z8k/memcmp.S185
-rw-r--r--newlib/libc/machine/z8k/memcpy.S145
-rw-r--r--newlib/libc/machine/z8k/memmove.S180
-rw-r--r--newlib/libc/machine/z8k/memset.S135
-rw-r--r--newlib/libc/machine/z8k/setjmp.S44
-rw-r--r--newlib/libc/misc/Makefile.am2
-rw-r--r--newlib/libc/misc/Makefile.in7
-rw-r--r--newlib/libc/misc/init.c60
-rw-r--r--newlib/libc/misc/unctrl.c2
-rw-r--r--newlib/libc/posix/scandir.c6
-rw-r--r--newlib/libc/reent/reent.tex4
-rw-r--r--newlib/libc/signal/signal.c32
-rw-r--r--newlib/libc/stdio/Makefile.am37
-rw-r--r--newlib/libc/stdio/Makefile.in103
-rw-r--r--newlib/libc/stdio/asiprintf.c100
-rw-r--r--newlib/libc/stdio/clearerr.c5
-rw-r--r--newlib/libc/stdio/dprintf.c129
-rw-r--r--newlib/libc/stdio/fclose.c4
-rw-r--r--newlib/libc/stdio/feof.c4
-rw-r--r--newlib/libc/stdio/ferror.c2
-rw-r--r--newlib/libc/stdio/fflush.c16
-rw-r--r--newlib/libc/stdio/fgetc.c2
-rw-r--r--newlib/libc/stdio/fgetpos.c3
-rw-r--r--newlib/libc/stdio/fgets.c2
-rw-r--r--newlib/libc/stdio/fileno.c2
-rw-r--r--newlib/libc/stdio/findfp.c22
-rw-r--r--newlib/libc/stdio/fiprintf.c39
-rw-r--r--newlib/libc/stdio/fiscanf.c78
-rw-r--r--newlib/libc/stdio/fputc.c2
-rw-r--r--newlib/libc/stdio/fputs.c4
-rw-r--r--newlib/libc/stdio/fread.c20
-rw-r--r--newlib/libc/stdio/freopen.c69
-rw-r--r--newlib/libc/stdio/fseek.c13
-rw-r--r--newlib/libc/stdio/ftell.c8
-rw-r--r--newlib/libc/stdio/fwrite.c2
-rw-r--r--newlib/libc/stdio/getc.c3
-rw-r--r--newlib/libc/stdio/getchar.c2
-rw-r--r--newlib/libc/stdio/getdelim.c12
-rw-r--r--newlib/libc/stdio/getw.c7
-rw-r--r--newlib/libc/stdio/iprintf.c42
-rw-r--r--newlib/libc/stdio/iscanf.c78
-rw-r--r--newlib/libc/stdio/local.h11
-rw-r--r--newlib/libc/stdio/perror.c2
-rw-r--r--newlib/libc/stdio/printf.c4
-rw-r--r--newlib/libc/stdio/putc.c3
-rw-r--r--newlib/libc/stdio/putchar.c2
-rw-r--r--newlib/libc/stdio/puts.c2
-rw-r--r--newlib/libc/stdio/putw.c5
-rw-r--r--newlib/libc/stdio/refill.c10
-rw-r--r--newlib/libc/stdio/scanf.c4
-rw-r--r--newlib/libc/stdio/sccl.c127
-rw-r--r--newlib/libc/stdio/setvbuf.c4
-rw-r--r--newlib/libc/stdio/siprintf.c97
-rw-r--r--newlib/libc/stdio/siscanf.c195
-rw-r--r--newlib/libc/stdio/sniprintf.c103
-rw-r--r--newlib/libc/stdio/sprintf.c3
-rw-r--r--newlib/libc/stdio/sscanf.c10
-rw-r--r--newlib/libc/stdio/stdio.tex33
-rw-r--r--newlib/libc/stdio/ungetc.c6
-rw-r--r--newlib/libc/stdio/vasiprintf.c75
-rw-r--r--newlib/libc/stdio/vdprintf.c46
-rw-r--r--newlib/libc/stdio/vfprintf.c51
-rw-r--r--newlib/libc/stdio/vfscanf.c203
-rw-r--r--newlib/libc/stdio/viprintf.c163
-rw-r--r--newlib/libc/stdio/viscanf.c139
-rw-r--r--newlib/libc/stdio/vprintf.c4
-rw-r--r--newlib/libc/stdio/vscanf.c4
-rw-r--r--newlib/libc/stdio/vsiprintf.c73
-rw-r--r--newlib/libc/stdio/vsiscanf.c74
-rw-r--r--newlib/libc/stdio/vsniprintf.c115
-rw-r--r--newlib/libc/stdio/wbuf.c2
-rw-r--r--newlib/libc/stdio/wsetup.c8
-rw-r--r--newlib/libc/stdio64/fgetpos64.c3
-rw-r--r--newlib/libc/stdio64/freopen64.c69
-rw-r--r--newlib/libc/stdio64/fseeko64.c6
-rw-r--r--newlib/libc/stdio64/ftello64.c6
-rw-r--r--newlib/libc/stdlib/__atexit.c4
-rw-r--r--newlib/libc/stdlib/__call_atexit.c4
-rw-r--r--newlib/libc/stdlib/a64l.c55
-rw-r--r--newlib/libc/stdlib/assert.c2
-rw-r--r--newlib/libc/stdlib/efgcvt.c2
-rw-r--r--newlib/libc/stdlib/envlock.c2
-rw-r--r--newlib/libc/stdlib/getopt.c503
-rw-r--r--newlib/libc/stdlib/ldtoa.c32
-rw-r--r--newlib/libc/stdlib/mallocr.c22
-rw-r--r--newlib/libc/stdlib/mlock.c2
-rw-r--r--newlib/libc/stdlib/mstats.c4
-rw-r--r--newlib/libc/stdlib/putenv.c2
-rw-r--r--newlib/libc/stdlib/putenv_r.c2
-rw-r--r--newlib/libc/stdlib/rand.c4
-rw-r--r--newlib/libc/stdlib/rand48.c2
-rw-r--r--newlib/libc/stdlib/setenv_r.c2
-rw-r--r--newlib/libc/stdlib/strtod.c37
-rw-r--r--newlib/libc/string/bcmp.c2
-rw-r--r--newlib/libc/string/memchr.c4
-rw-r--r--newlib/libc/string/memcmp.c4
-rw-r--r--newlib/libc/string/strcasecmp.c4
-rw-r--r--newlib/libc/string/strcoll.c2
-rw-r--r--newlib/libc/string/strcspn.c2
-rw-r--r--newlib/libc/string/strerror_r.c2
-rw-r--r--newlib/libc/string/strings.tex4
-rw-r--r--newlib/libc/string/strlwr.c6
-rw-r--r--newlib/libc/string/strncasecmp.c4
-rw-r--r--newlib/libc/string/strncat.c1
-rw-r--r--newlib/libc/string/strndup_r.c14
-rw-r--r--newlib/libc/string/strnlen.c4
-rw-r--r--newlib/libc/string/strpbrk.c2
-rw-r--r--newlib/libc/string/strtok.c26
-rw-r--r--newlib/libc/string/strupr.c4
-rw-r--r--newlib/libc/string/wcscat.c1
-rw-r--r--newlib/libc/string/wcschr.c1
-rw-r--r--newlib/libc/string/wcscmp.c1
-rw-r--r--newlib/libc/string/wcscoll.c2
-rw-r--r--newlib/libc/string/wcscpy.c1
-rw-r--r--newlib/libc/string/wcscspn.c1
-rw-r--r--newlib/libc/string/wcslcat.c12
-rw-r--r--newlib/libc/string/wcslcpy.c8
-rw-r--r--newlib/libc/string/wcslen.c1
-rw-r--r--newlib/libc/string/wcsncat.c1
-rw-r--r--newlib/libc/string/wcsncmp.c1
-rw-r--r--newlib/libc/string/wcsncpy.c1
-rw-r--r--newlib/libc/string/wcsnlen.c9
-rw-r--r--newlib/libc/string/wcspbrk.c1
-rw-r--r--newlib/libc/string/wcsrchr.c1
-rw-r--r--newlib/libc/string/wcsspn.c2
-rw-r--r--newlib/libc/string/wcsstr.c2
-rw-r--r--newlib/libc/string/wcstrings.tex16
-rw-r--r--newlib/libc/string/wcswidth.c18
-rw-r--r--newlib/libc/string/wcwidth.c12
-rw-r--r--newlib/libc/string/wmemchr.c9
-rw-r--r--newlib/libc/string/wmemcmp.c9
-rw-r--r--newlib/libc/string/wmemcpy.c9
-rw-r--r--newlib/libc/string/wmemmove.c15
-rw-r--r--newlib/libc/string/wmemset.c11
-rw-r--r--newlib/libc/sys.tex85
-rw-r--r--newlib/libc/sys/a29khif/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/a29khif/configure11
-rw-r--r--newlib/libc/sys/aclocal.m416
-rw-r--r--newlib/libc/sys/arc/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/arc/configure11
-rw-r--r--newlib/libc/sys/arc/syscalls.c15
-rw-r--r--newlib/libc/sys/arm/Makefile.am6
-rw-r--r--newlib/libc/sys/arm/Makefile.in8
-rw-r--r--newlib/libc/sys/arm/aclocal.m45
-rw-r--r--newlib/libc/sys/arm/aeabi_atexit.c10
-rwxr-xr-xnewlib/libc/sys/arm/configure11
-rw-r--r--newlib/libc/sys/arm/crt0.S60
-rw-r--r--newlib/libc/sys/arm/libcfunc.c2
-rw-r--r--newlib/libc/sys/arm/swi.h8
-rw-r--r--newlib/libc/sys/arm/sys/param.h19
-rw-r--r--newlib/libc/sys/arm/syscalls.c26
-rw-r--r--newlib/libc/sys/arm/trap.S2
-rwxr-xr-xnewlib/libc/sys/configure171
-rw-r--r--newlib/libc/sys/configure.in2
-rw-r--r--newlib/libc/sys/d10v/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/d10v/configure11
-rw-r--r--newlib/libc/sys/decstation/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/decstation/configure11
-rw-r--r--newlib/libc/sys/h8300hms/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/h8300hms/configure11
-rw-r--r--newlib/libc/sys/h8500hms/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/h8500hms/configure11
-rw-r--r--newlib/libc/sys/linux/Makefile.am3
-rw-r--r--newlib/libc/sys/linux/Makefile.in2
-rw-r--r--newlib/libc/sys/linux/aclocal.m45
-rw-r--r--newlib/libc/sys/linux/aio.c2
-rw-r--r--newlib/libc/sys/linux/argp/argp-fs-xinl.c2
-rw-r--r--newlib/libc/sys/linux/argp/argp-xinl.c2
-rw-r--r--newlib/libc/sys/linux/bits/initspin.h28
-rw-r--r--newlib/libc/sys/linux/bits/libc-lock.h380
-rw-r--r--newlib/libc/sys/linux/bits/pthreadtypes.h152
-rw-r--r--newlib/libc/sys/linux/bits/typesizes.h66
-rwxr-xr-xnewlib/libc/sys/linux/configure101
-rw-r--r--newlib/libc/sys/linux/dl/dl-cache.c2
-rw-r--r--newlib/libc/sys/linux/dl/dl-load.c4
-rw-r--r--newlib/libc/sys/linux/dl/dl-local.h65
-rw-r--r--newlib/libc/sys/linux/dl/dl-open.c4
-rw-r--r--newlib/libc/sys/linux/dl/dl-reloc.c52
-rw-r--r--newlib/libc/sys/linux/dl/dl-runtime.c4
-rw-r--r--newlib/libc/sys/linux/dl/dlfcn.h84
-rw-r--r--newlib/libc/sys/linux/dl/do-rel.h10
-rw-r--r--newlib/libc/sys/linux/dl/dynamic-link.h25
-rw-r--r--newlib/libc/sys/linux/dl/ldsodefs.h3
-rw-r--r--newlib/libc/sys/linux/getpwent.c30
-rw-r--r--newlib/libc/sys/linux/getpwnam.c12
-rw-r--r--newlib/libc/sys/linux/getpwuid.c12
-rw-r--r--newlib/libc/sys/linux/iconv/gconv_open.c5
-rw-r--r--newlib/libc/sys/linux/iconv/gconv_simple.c75
-rw-r--r--newlib/libc/sys/linux/include/dlfcn.h149
-rw-r--r--newlib/libc/sys/linux/include/getopt.h7
-rw-r--r--newlib/libc/sys/linux/include/ltdl.h361
-rw-r--r--newlib/libc/sys/linux/include/stdint.h269
-rw-r--r--newlib/libc/sys/linux/include/time.h22
-rw-r--r--newlib/libc/sys/linux/include/unistd.h2
-rw-r--r--newlib/libc/sys/linux/inode.c1
-rw-r--r--newlib/libc/sys/linux/linuxthreads/Makefile.am9
-rw-r--r--newlib/libc/sys/linux/linuxthreads/Makefile.in9
-rw-r--r--newlib/libc/sys/linux/linuxthreads/aclocal.m45
-rw-r--r--newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h31
-rw-r--r--newlib/libc/sys/linux/linuxthreads/config.h1
-rwxr-xr-xnewlib/libc/sys/linux/linuxthreads/configure101
-rw-r--r--newlib/libc/sys/linux/linuxthreads/machine/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/linux/linuxthreads/machine/configure99
-rw-r--r--newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/linux/linuxthreads/machine/i386/configure101
-rw-r--r--newlib/libc/sys/linux/machine/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/linux/machine/configure99
-rw-r--r--newlib/libc/sys/linux/machine/i386/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/linux/machine/i386/configure101
-rw-r--r--newlib/libc/sys/linux/machine/i386/dl-machine.h27
-rw-r--r--newlib/libc/sys/linux/machine/i386/weakalias.h2
-rw-r--r--newlib/libc/sys/linux/net/gethostbydns.c18
-rw-r--r--newlib/libc/sys/linux/net/ns_ntoa.c3
-rw-r--r--newlib/libc/sys/linux/shared.ld8
-rw-r--r--newlib/libc/sys/linux/stdlib/glob.c1
-rw-r--r--newlib/libc/sys/linux/sys/cdefs.h8
-rw-r--r--newlib/libc/sys/linux/sys/dirent.h1
-rw-r--r--newlib/libc/sys/linux/sys/lock.h1
-rw-r--r--newlib/libc/sys/linux/sys/stat.h13
-rw-r--r--newlib/libc/sys/linux/sys/string.h8
-rw-r--r--newlib/libc/sys/linux/sys/types.h3
-rw-r--r--newlib/libc/sys/linux/sys/unistd.h11
-rw-r--r--newlib/libc/sys/m88kbug/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/m88kbug/configure11
-rw-r--r--newlib/libc/sys/mmixware/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/mmixware/configure11
-rw-r--r--newlib/libc/sys/netware/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/netware/configure11
-rw-r--r--newlib/libc/sys/rdos/Makefile.am17
-rw-r--r--newlib/libc/sys/rdos/Makefile.in376
-rw-r--r--newlib/libc/sys/rdos/aclocal.m41226
-rwxr-xr-xnewlib/libc/sys/rdos/chown.c11
-rw-r--r--newlib/libc/sys/rdos/close.c36
-rw-r--r--newlib/libc/sys/rdos/config.h1
-rwxr-xr-xnewlib/libc/sys/rdos/configure1876
-rw-r--r--newlib/libc/sys/rdos/configure.in12
-rw-r--r--newlib/libc/sys/rdos/crt0.S406
-rw-r--r--newlib/libc/sys/rdos/execve.c10
-rwxr-xr-xnewlib/libc/sys/rdos/fork.c10
-rwxr-xr-xnewlib/libc/sys/rdos/fstat.c45
-rw-r--r--newlib/libc/sys/rdos/getenv.c83
-rw-r--r--newlib/libc/sys/rdos/getpid.c10
-rw-r--r--newlib/libc/sys/rdos/gettod.c15
-rw-r--r--newlib/libc/sys/rdos/isatty.c9
-rw-r--r--newlib/libc/sys/rdos/kill.c10
-rw-r--r--newlib/libc/sys/rdos/link.c10
-rwxr-xr-xnewlib/libc/sys/rdos/lseek.c59
-rwxr-xr-xnewlib/libc/sys/rdos/open.c59
-rw-r--r--newlib/libc/sys/rdos/rdos.S7528
-rwxr-xr-xnewlib/libc/sys/rdos/rdos.h344
-rw-r--r--newlib/libc/sys/rdos/rdoshelp.c162
-rw-r--r--newlib/libc/sys/rdos/read.c35
-rwxr-xr-xnewlib/libc/sys/rdos/readlink.c11
-rw-r--r--newlib/libc/sys/rdos/sbrk.c33
-rwxr-xr-xnewlib/libc/sys/rdos/stat.c12
-rwxr-xr-xnewlib/libc/sys/rdos/symlink.c10
-rw-r--r--newlib/libc/sys/rdos/times.c11
-rw-r--r--newlib/libc/sys/rdos/unlink.c10
-rw-r--r--newlib/libc/sys/rdos/user.def368
-rw-r--r--newlib/libc/sys/rdos/wait.c10
-rw-r--r--newlib/libc/sys/rdos/write.c35
-rw-r--r--newlib/libc/sys/rtems/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/rtems/configure11
-rw-r--r--newlib/libc/sys/rtems/crt0.c27
-rw-r--r--newlib/libc/sys/sh/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sh/configure11
-rw-r--r--newlib/libc/sys/sparc64/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sparc64/configure11
-rw-r--r--newlib/libc/sys/sun4/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sun4/configure11
-rw-r--r--newlib/libc/sys/sysmec/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sysmec/configure11
-rw-r--r--newlib/libc/sys/sysnec810/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sysnec810/configure11
-rw-r--r--newlib/libc/sys/sysnecv850/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sysnecv850/configure11
-rw-r--r--newlib/libc/sys/sysvi386/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sysvi386/configure11
-rw-r--r--newlib/libc/sys/sysvnecv70/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/sysvnecv70/configure11
-rw-r--r--newlib/libc/sys/tic80/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/tic80/configure11
-rw-r--r--newlib/libc/sys/w65/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/w65/configure11
-rw-r--r--newlib/libc/sys/z8ksim/aclocal.m45
-rwxr-xr-xnewlib/libc/sys/z8ksim/configure11
-rw-r--r--newlib/libc/time/Makefile.am4
-rw-r--r--newlib/libc/time/Makefile.in19
-rw-r--r--newlib/libc/time/gettzinfo.c15
-rw-r--r--newlib/libc/time/local.h18
-rw-r--r--newlib/libc/time/mktime.c26
-rw-r--r--newlib/libc/time/mktm_r.c55
-rw-r--r--newlib/libc/time/strftime.c575
-rw-r--r--newlib/libc/time/strptime.c11
-rw-r--r--newlib/libc/time/time.tex16
-rw-r--r--newlib/libc/time/tzlock.c2
-rw-r--r--newlib/libc/time/tzset_r.c68
-rw-r--r--newlib/libc/time/tzvars.c10
-rw-r--r--newlib/libc/unix/Makefile.am4
-rw-r--r--newlib/libc/unix/Makefile.in4
-rw-r--r--newlib/libc/unix/basename.c25
-rw-r--r--newlib/libc/unix/dirname.c28
-rw-r--r--newlib/libc/unix/getcwd.c10
-rw-r--r--newlib/libc/unix/getlogin.c8
-rw-r--r--newlib/libc/unix/getpass.c2
-rw-r--r--newlib/libc/unix/getut.c12
-rw-r--r--newlib/libc/unix/ttyname.c16
-rw-r--r--newlib/libm/aclocal.m45
-rw-r--r--newlib/libm/common/Makefile.am15
-rw-r--r--newlib/libm/common/Makefile.in69
-rw-r--r--newlib/libm/common/common.tex12
-rw-r--r--newlib/libm/common/fdlibm.h4
-rw-r--r--newlib/libm/common/s_fmax.c4
-rw-r--r--newlib/libm/common/s_fmin.c4
-rw-r--r--newlib/libm/common/s_fpclassify.c4
-rw-r--r--newlib/libm/common/s_infconst.c40
-rw-r--r--newlib/libm/common/s_isinf.c29
-rw-r--r--newlib/libm/common/s_isnan.c135
-rw-r--r--newlib/libm/common/s_lrint.c13
-rw-r--r--newlib/libm/common/s_modf.c2
-rw-r--r--newlib/libm/common/sf_fmax.c4
-rw-r--r--newlib/libm/common/sf_fmin.c4
-rw-r--r--newlib/libm/common/sf_isinff.c27
-rw-r--r--newlib/libm/common/sf_isnanf.c37
-rw-r--r--newlib/libm/common/sf_lrint.c12
-rw-r--r--newlib/libm/common/sf_round.c4
-rwxr-xr-xnewlib/libm/configure99
-rw-r--r--newlib/libm/libm.texinfo4
-rw-r--r--newlib/libm/machine/aclocal.m45
-rwxr-xr-xnewlib/libm/machine/configure99
-rw-r--r--newlib/libm/machine/i386/aclocal.m45
-rwxr-xr-xnewlib/libm/machine/i386/configure99
-rw-r--r--newlib/libm/math/Makefile.am12
-rw-r--r--newlib/libm/math/Makefile.in70
-rw-r--r--newlib/libm/math/ef_atan2.c4
-rw-r--r--newlib/libm/math/ef_hypot.c2
-rw-r--r--newlib/libm/math/math.tex37
-rw-r--r--newlib/libm/math/s_infconst.c15
-rw-r--r--newlib/libm/math/s_isinf.c (renamed from newlib/libm/common/s_isinfd.c)11
-rw-r--r--newlib/libm/math/s_isnan.c (renamed from newlib/libm/common/s_isnand.c)32
-rw-r--r--newlib/libm/math/s_ldexp.c2
-rw-r--r--newlib/libm/math/sf_isinf.c (renamed from newlib/libm/common/sf_isinf.c)24
-rw-r--r--newlib/libm/math/sf_isnan.c (renamed from newlib/libm/common/sf_isnan.c)25
-rw-r--r--newlib/libm/math/w_j0.c2
-rw-r--r--newlib/libm/math/w_log.c2
-rw-r--r--newlib/libm/mathfp/Makefile.am9
-rw-r--r--newlib/libm/mathfp/Makefile.in49
-rw-r--r--newlib/libm/mathfp/mathfp.tex37
-rw-r--r--newlib/libm/mathfp/s_atangent.c4
-rw-r--r--newlib/libm/mathfp/s_frexp.c21
-rw-r--r--newlib/libm/mathfp/s_infconst.c15
-rw-r--r--newlib/libm/mathfp/s_isinf.c37
-rw-r--r--newlib/libm/mathfp/s_isnan.c125
-rw-r--r--newlib/libm/mathfp/s_ldexp.c2
-rw-r--r--newlib/libm/mathfp/s_logarithm.c5
-rw-r--r--newlib/libm/mathfp/s_mathcnst.c6
-rw-r--r--newlib/libm/mathfp/s_pow.c5
-rw-r--r--newlib/libm/mathfp/sf_atangent.c4
-rw-r--r--newlib/libm/mathfp/sf_frexp.c21
-rw-r--r--newlib/libm/mathfp/sf_isinf.c48
-rw-r--r--newlib/libm/mathfp/sf_isnan.c48
-rw-r--r--newlib/libm/mathfp/sf_pow.c5
-rw-r--r--newlib/libm/mathfp/w_jn.c2
-rw-r--r--newlib/newlib.hin11
-rw-r--r--newlib/stamp-h.in1
-rw-r--r--newlib/testsuite/include/check.h1
-rw-r--r--newlib/testsuite/lib/checkoutput.exp13
-rw-r--r--newlib/testsuite/lib/flags.exp8
-rw-r--r--newlib/testsuite/lib/newlib.exp4
-rw-r--r--newlib/testsuite/lib/passfail.exp10
-rw-r--r--newlib/testsuite/newlib.string/memmove1.c184
-rw-r--r--setup.com1
-rw-r--r--src-release58
-rwxr-xr-xsymlink-tree4
-rwxr-xr-xylwrap244
1005 files changed, 74608 insertions, 74995 deletions
diff --git a/COPYING b/COPYING
index 623b6258a..60549be51 100644
--- a/COPYING
+++ b/COPYING
@@ -2,7 +2,7 @@
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -291,7 +291,7 @@ convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
+ Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
@@ -313,7 +313,7 @@ Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
- Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
diff --git a/COPYING.LIB b/COPYING.LIB
index 778d0bb5b..161a3d1d4 100644
--- a/COPYING.LIB
+++ b/COPYING.LIB
@@ -2,7 +2,7 @@
Version 2, June 1991
Copyright (C) 1991 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -464,8 +464,8 @@ convey the exclusion of warranty; and each file should have at least the
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
- Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- MA 02110-1301, USA
+ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+ MA 02111-1307, USA
Also add information on how to contact you by electronic and paper mail.
diff --git a/COPYING.LIBGLOSS b/COPYING.LIBGLOSS
index d6f99e51f..741bc2fe0 100644
--- a/COPYING.LIBGLOSS
+++ b/COPYING.LIBGLOSS
@@ -126,8 +126,8 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU CC; see the file COPYING. If not, write to
-the Free Software Foundation, 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA.
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.
(4) Advanced Micro Devices
diff --git a/COPYING.NEWLIB b/COPYING.NEWLIB
index 141ca017e..60b63dfac 100644
--- a/COPYING.NEWLIB
+++ b/COPYING.NEWLIB
@@ -561,8 +561,8 @@ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- 02110-1301 USA.
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
(22) Xavier Leroy LGPL License (i[3456]86-*-linux* targets only)
@@ -731,7 +731,7 @@ files in the newlib subdirectory default to the following copyright.
It should be noted that Red Hat Incorporated now owns copyrights
belonging to Cygnus Solutions and Cygnus Support.
-Copyright (c) 1994, 1997, 2001, 2002, 2003, 2004, 2005 Red Hat Incorporated.
+Copyright (c) 1994, 1997, 2001, 2002, 2003, 2004 Red Hat Incorporated.
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/ChangeLog b/ChangeLog
index c0126cd14..8b3ecc9ac 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,959 +1,7 @@
-2006-03-14 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.in: Regenerate.
-
-2006-03-14 Paolo Bonzini <bonzini@gnu.org>
-
- Sync with gcc:
- 2006-03-10 Aldy Hernandez <aldyh@redhat.com>
-
- * configure.in: Handle --disable-<component> generically.
- * configure: Regenerate.
-
- 2006-02-21 Rafael Avila de Espindola <rafael.espindola@gmail.com>
-
- * Makefile.tpl (BUILD_CONFIGDIRS): Remove.
- (TARGET_CONFIGDIRS): Remove.
- * configure.in: Remove AC_SUBST(target_configdirs).
- * Makefile.in, configure: Regenerated.
-
-
-2006-03-01 H.J. Lu <hongjiu.lu@intel.com>
-
- PR libgcj/17311
- * ltmain.sh: Don't use "$finalize_rpath" for compile.
-
-2006-02-20 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/25670
-
- * Makefile.tpl ([+compare-target+]): Print explanation messages.
-
- * Makefile.def (ADAFLAGS, BOOT_ADAFLAGS, LANGUAGES): New flags_to_pass.
- * Makefile.tpl (BASE_FLAGS_TO_PASS): Support optional flags_to_pass.
- (EXTRA_GCC_FLAGS): Remove ADAFLAGS, BOOT_ADAFLAGS, LANGUAGES,
- BUILD_PREFIX, BUILD_PREFIX_1.
- * configure.in: (BUILD_PREFIX, BUILD_PREFIX_1): Don't substitute.
-
- * Makefile.def (bootstrap stage 1): Pass LIBCFLAGS too.
- * Makefile.tpl (POSTSTAGE1_FLAGS_TO_PASS): Override LIBCFLAGS too.
-
- * Makefile.tpl (configure-stage[+id+]-[+prefix+][+module+],
- all-stage[+id+]-[+prefix+][+module+], : Use $(current_stage) instead
- of `cat stage_current`. Always provide the `r' and `s' variables.
- (clean-stage[+id+]-[+prefix+][+module+]): Likewise, and make it into
- a single shell execution.
- (configure-[+prefix+][+module+], all-[+prefix+][+module+]): For
- bootstrapped modules, make the stage1 module if the build was not
- started yet, else build the current stage.
- (all-host, all-target): Omit bootstrapped modules (if bootstrapping).
- (all-build, all-host, all-target, [+make_target+]-host,
- [+make_target+]-target): Do not use \-continued lines.
- (target modules): Depend on stage_last, not all-gcc, if bootstrapping.
- (current_stage, restrap, stage_last): New.
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
-
-2006-02-14 Paolo Bonzini <bonzini@gnu.org>
-
- Sync from gcc:
-
- 2006-01-31 Richard Guenther <rguenther@suse.de>
- Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.def (target_modules): Add libgcc-math target module.
- * configure.in (target_libraries): Add libgcc-math target library.
- (--enable-libgcc-math): New configure switch.
- * Makefile.in: Re-generate.
- * configure: Re-generate.
- * libgcc-math: New toplevel directory.
-
- 2006-01-18 Richard Henderson <rth@redhat.com>
- Jakub Jelinek <jakub@redhat.com>
- Diego Novillo <dnovillo@redhat.com>
-
- * libgomp: New directory.
- * Makefile.def: Add target_module libgomp.
- * Makefile.in: Regenerate.
- * configure.in (target_libraries): Add target-libgomp.
- * configure: Regenerate.
-
-2006-02-14 Paolo Bonzini <bonzini@gnu.org>
- Andreas Schwab <schwab@suse.de>
-
- * configure: Regenerate.
-
-2006-01-16 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in: Set with_gnu_as, with_gnu_ld, with_newlib earlier.
- Set md_exec_prefix. Use ACX_CHECK_INSTALLED_TARGET_TOOL to find
- the assembler, linker and binutils.
- * configure: Regenerate.
-
-2006-01-16 Nick Clifton <nickc@redhat.com>
-
- * config.sub, config.guess: Sync from config repository.
-
-2006-01-05 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.tpl (clean-stage[+id+]-[+prefix+][+module+]): Remove
- @ from continuation.
- * Makefile.in: Rebuilt.
-
-2006-01-04 Paolo Bonzini <bonzini@gnu.org>
-
- Sync from gcc:
-
- 2006-01-04 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/24252
-
- * Makefile.def (flags_to_pass): Add STAGE1_CFLAGS and STAGE1_LANGUAGES.
- * Makefile.tpl (OBJDUMP): New.
- (EXTRA_HOST_FLAGS): Add it.
- (EXTRA_GCC_FLAGS): Remove flags already specified in flags_to_pass.
-
- * Makefile.tpl (stage[+id+]-start, stage[+id+]-end): Do not try
- to use symbolic links between directories. Avoid race conditions
- or make them harmless.
- * configure.in: Do not try to use symbolic links between directories.
-
- * Makefile.def (LEAN): Pass.
- * Makefile.tpl (LEAN): Define.
- (stage[+id+]-start): Accept that the previous directory does not
- exist, if the bootstrap is lean.
- (stage[+id+]-bubble): Invoke lean bootstrap commands after
- stage[+id+]-start. Use a makefile variable and an `if' instead of a
- configure substitution.
- ([+compare-target+]): Likewise.
- ([+bootstrap-target+]-lean): New.
- * configure.in: Remove lean bootstrap support from here.
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
-
- 2006-01-02 Andreas Schwab <schwab@suse.de>
-
- * configure.in: When reconfiguring remove Makefile in
- all stage directories.
- * configure: Regenerate.
-
-2005-12-27 Leif Ekblad <leif@rdos.net>
-
- * configure.in: Add support for RDOS target.
- * configure: Regenerate.
-
-2005-12-27 Nick Clifton <nickc@redhat.com>
-
- PR binutils/1990
- * libtool.m4: Synchronize with version in GCC sources.
-
-2005-12-20 Paolo Bonzini <bonzini@gnu.org>
-
- Revert Ada-related part of the previous change.
-
- * Makefile.def (ADAFLAGS, BOOT_ADAFLAGS, ADAFLAGS_FOR_TARGET):
- Do not pass.
- * Makefile.tpl (BOOT_ADAFLAGS): Do not define.
- * Makefile.in: Regenerate.
- * configure.in: Do not include mt-ppc-aix target fragment.
- * configure: Regenerate.
-
-2005-12-19 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in: Select appropriate fragments for PowerPC/AIX.
- * configure: Regenerate.
-
- * Makefile.def (flags_to_pass): Add ADAFLAGS, BOOT_ADAFLAGS,
- BOOT_CFLAGS, BOOT_LDFLAGS.
- * Makefile.tpl (POSTSTAGE1_FLAGS_TO_PASS): Handle BOOT_ADAFLAGS,
- BOOT_CFLAGS, BOOT_LDFLAGS.
- (TARGET_FLAGS_TO_PASS): Handle ADAFLAGS_FOR_TARGET.
- (stage[+id+]-bubble): Pass flags recursively to the comparison target.
- (stage): Fail if we cannot complete the work.
- * Makefile.in: Regenerate.
-
-2005-12-16 Jeff Johnston <jjohnstn@redhat.com>
-
- * COPYING.NEWLIB: Update copyright year for default
- copyright.
-
-2005-12-15 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl (all, do-[+make_target+], do-check, install,
- install-host-nogcc): Don't invoke $(stage) at the end.
- * Makefile.in: Regenerate.
-
-2005-12-14 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in: Flip the top-level bootstrap switch.
- * configure: Regenerate.
-
- Merge from gcc:
-
- 2005-12-14 Daniel Jacobowitz <dan@codesourcery.com>
-
- * Makefile.tpl: Throughout the file, use : $(MAKE) along with
- $(stage) and $(unstage).
- (EXTRA_TARGET_FLAGS): Correct double-quoting.
- (all): Remove stray semicolon.
- (local-distclean): Don't handle multilib.tmp and multilib.out.
- (install.all): Set $s for consistency.
- (configure-[+prefix+][+module+]): Instead of [+deps+], handle
- check_multilibs setting. Always make the install directory.
- (configure-stage[+id+]-[+prefix+][+module+]): Likewise.
- Correct @if/@endif.
- (all-stage[+id+]-[+prefix+][+module+]): Correct @if/@endif.
- ($(TARGET_SUBDIR)/[+module+]/multilib.out): Remove.
- (stage[+id+]-start, stage[+id+]-end): Stage $(TARGET_SUBDIR).
- (multilib.out): Remove.
- * Makefile.in: Regenerated.
-
-2005-12-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * config.sub: Replace ms1 arch with mt. Allow ms1 as alias.
- * configure.in: Replace ms1 arch with mt.
- * configure: Rebuilt.
-
-2005-12-05 Paolo Bonzini <bonzini@gnu.org>
-
- Sync with gcc:
-
-2005-12-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * config.sub: Replace ms1 arch with mt. Allow ms1 as alias.
- * configure.in: Replace ms1 arch with mt.
- * configure: Rebuilt.
-
-2005-12-05 Paolo Bonzini <bonzini@gnu.org>
-
- Sync with gcc:
-
- 2005-12-05 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in (CONFIGURED_BISON, CONFIGURED_YACC, CONFIGURED_M4,
- CONFIGURED_FLEX, CONFIGURED_LEX, CONFIGURED_MAKEINFO): Remove
- "CONFIGURED_" from the AC_CHECK_PROGS invocation. Move below.
- Find in-tree tools if available.
- (EXPECT, RUNTEST, LIPO, STRIP): Find them and substitute them.
- (CONFIGURED_*_FOR_TARGET): Don't set nor substitute.
- (*_FOR_TARGET): Set them with GCC_TARGET_TOOL.
- (COMPILER_*_FOR_TARGET): New.
- * Makefile.tpl (HOST_EXPORTS): Add *_FOR_TARGET symbols that gcc needs.
- (BASE_TARGET_EXPORTS): Use COMPILER_*_FOR_TARGET symbols.
- (CONFIGURED_*, USUAL_*): Remove.
- (BISON, YACC, FLEX, LEX, M4, MAKEINFO, EXPECT, RUNTEST, LIPO,
- STRIP): Use autoconf substitutions.
- (COMPILER_AS_FOR_TARGET, COMPILER_LD_FOR_TARGET,
- COMPILER_NM_FOR_TARGET): New.
- (EXTRA_HOST_FLAGS): Pass LIPO and STRIP.
-
- (all): Make all-host and all-target in parallel.
- (do-[+make_target+], do-check, install, [+compare-target+]): Ensure
- that $$r and $$s are set before invoking a recursive make.
- (stage[+id+]-bubble): Likewise, and invoke the comparison at the end.
- ([+bootstrap-target+]): Inline most of the `all' target.
-
- 2005-11-29 Ben Elliston <bje@au.ibm.com>
-
- * Makefile.tpl (clean-target-libgcc): Invoke clean-target-libgcc
- from the gcc build directory.
- * Makefile.in: Regenerate.
-
- 2005-11-29 Ben Elliston <bje@au.ibm.com>
-
- * Makefile.def: Add new libdecnumber host_module. Make all-gcc
- depend on all-libdecnumber.
- * configure.in (host_libs): Include libdecnumber.
- * Makefile.in: Regenerate.
- * configure: Likewise.
-
- 2005-11-21 Kean Johnston <jkj@sco.com>
-
- * config.sub, config.guess: Sync from upstream sources.
-
-2005-11-11 Daniel Jacobowitz <dan@codesourcery.com>
-
- * Makefile.def: Remove gdb dependencies for gdbtk.
- * Makefile.tpl (CONFIGURE_GDB_TK, INSTALL_GDB_TK): New variables.
- (configure-gdb, install-gdb): New rules.
- * configure.in: Set CONFIGURE_GDB_TK and INSTALL_GDB_TK.
- * Makefile.in, configure: Regenerated.
-
-2005-10-22 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/24297
- * Makefile.tpl (do-[+make-target+], do-check, install,
- stage[+id+]-bubble, [+compare-target+]): Ensure $$r and $$s
- are set before recursing.
- * Makefile.in: Regenerate.
-
-2005-10-20 Eric Botcazou <ebotcazou@adacore.com>
-
- PR bootstrap/18939
- * Makefile.def (gcc) <target>: Fix thinko.
- * Makefile.in: Regenerate.
-
-2005-10-17 Bernd Schmidt <bernd.schmidt@analog.com>
-
- * configure.in (bfin-*-*): Use test, not brackets, in if statement.
- * configure: Regenerate.
-
-2005-10-09 Kazu Hirata <kazu@codesourcery.com>
-
- * configure.in (arm-*-linux-gnueabi): Add to noconfigdirs
- target-libffi, target-qthreads, target-libjava, and
- targetlibobjc.
- * configure: Regenerate.
-
-2005-10-06 Daniel Jacobowitz <dan@codesourcery.com>
-
- * Makefile.def (flags_to_pass): Add OBJDUMP_FOR_TARGET.
- * Makefile.tpl (BASE_TARGET_EXPORTS): Add OBJDUMP.
- (OBJDUMP_FOR_TARGET, CONFIGURED_OBJDUMP_FOR_TARGET)
- (USUAL_OBJDUMP_FOR_TARGET): New.
- (EXTRA_TARGET_FLAGS): Add OBJDUMP.
- * configure.in: Check for $OBJDUMP_FOR_TARGET.
- * configure, Makefile.in: Regenerated.
-
-2005-10-05 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl (all) [gcc-no-bootstrap]: Make prebootstrap packages
- before other host packages.
-
-2005-10-05 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/22340
-
- * configure.in (default_target): Remove.
- * Makefile.tpl (all): Do not use prerequisites as subroutines
- (all) [gcc-bootstrap]: Bootstrap gcc first if it was not done yet.
- (do-[+make_target+], check, install, [+bootstrap_target+]): Do not
- use prerequisites as subroutines.
- (check-host, check-target): New.
- (bootstrap configure & all targets): Do not use stage*-start
- if the directory layout is already ok.
- (non-bootstrap configure & all targets): Prepend a $(unstage).
- (stage[+id+]-bubble): Do that here. Do not use NOTPARALLEL.
- (NOTPARALLEL): Remove.
- (unstage, stage variables): New variables.
- (unstage, stage targets): Simply expand to those variables.
-
- * configure: Regenerate.
- * Makefile.in: Regenerate.
-
-2005-10-04 James E Wilson <wilson@specifix.com>
-
- * Makefile.def (lang_env_dependencies): Add libmudflap.
- * Makefile.in: Regenerate.
-
-2005-10-03 Catherine Moore <clm@cm00re.com>
-
- * configure.in (bfin-*-*): Support bfin.
- * configure: Regenerated.
-
-2005-09-30 H.J. Lu <hongjiu.lu@intel.com>
-
- * configure.in (*-*-darwin*): Build bfd, binutils and opcodes.
- * configure: Regenerated.
-
-2005-09-28 Geoffrey Keating <geoffk@apple.com>
-
- * Makefile.tpl (BASE_TARGET_EXPORTS): Add LIPO, STRIP.
- (LIPO_FOR_TARGET): New.
- (CONFIGURED_LIPO_FOR_TARGET): New.
- (USUAL_LIPO_FOR_TARGET): New.
- (STRIP_FOR_TARGET): New.
- (CONFIGURED_STRIP_FOR_TARGET): New.
- (USUAL_STRIP_FOR_TARGET): New.
- * Makefile.def (flags_to_pass): Add LIPO_FOR_TARGET and
- STRIP_FOR_TARGET.
- * configure.in: Set LIPO_FOR_TARGET, STRIP_FOR_TARGET,
- CONFIGURED_LIPO_FOR_TARGET, CONFIGURED_STRIP_FOR_TARGET.
- * Makefile.in: Regenerate.
- * configure: Regenerate.
-
-2005-09-19 David Edelsohn <edelsohn@gnu.org>
-
- * configure.in (powerpc-*-aix*): Add target-libssp to noconfigdirs.
- (rs6000-*-aix*): Same.
- * configure: Regenerate.
-
-2005-09-14 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * configure.in: Recognize f95 in the --enable-languages option,
- and substitute it for fortran, issuing a warning.
- * configure: Regenerate.
-
-2005-09-07 Ben Elliston <bje@au.ibm.com>
-
- Import from Autoconf sources:
-
- 2005-09-06 Paul Eggert <eggert@cs.ucla.edu>
- * move-if-change: Don't output "$2 is unchanged"; suggested by Ben
- Elliston. Handle weird characters correctly.
-
-2005-08-30 Phil Edwards <phil@codesourcery.com>
-
- * configure.in (*-*-vxworks*): Add target-libstdc++-v3 to noconfigdirs.
- * configure: Regenerated.
-
-2005-08-20 Richard Earnshaw <richard.earnshaw@arm.com>
-
- * Makefile.def (libssp): Add to lang_env_dependencies.
- * Makefile.in: Regenerate.
-
-2005-08-17 Christian Groessler <chris@groessler.org>
-
- * Makefile.tpl: (USUAL_CC_FOR_TARGET): Add missing trailing slash.
- * Makefile.in: Regenerate.
-
-2005-08-12 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in: Replace NCN_STRICT_CHECK_TOOL with
- NCN_STRICT_CHECK_TOOLS, and likewise for NCN_STRICT_CHECK_TARGET_TOOLS.
- Look for alternate names of the target cc and c++
- * configure: Regenerate.
-
-2005-08-08 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in (CC_FOR_TARGET, CXX_FOR_TARGET, GCJ_FOR_TARGET,
- GCC_FOR_TARGET, RAW_CXX_FOR_TARGET, GFORTRAN_FOR_TARGET): Find
- them with NCN_STRICT_CHECK_TARGET_TOOL, like the other target
- tools; remove code to manually set them.
- (Target tools): Look in the environment for them.
- * Makefile.tpl (CC_FOR_TARGET, CXX_FOR_TARGET, GCJ_FOR_TARGET,
- GCC_FOR_TARGET, RAW_CXX_FOR_TARGET, GFORTRAN_FOR_TARGET): Redefine.
- (AS_FOR_TARGET, LD_FOR_TARGET, NM_FOR_TARGET): Look into gcc
- build directory.
- (CONFIGURED_CC_FOR_TARGET, CONFIGURED_CXX_FOR_TARGET,
- CONFIGURED_GCJ_FOR_TARGET, CONFIGURED_GCC_FOR_TARGET,
- CONFIGURED_GFORTRAN_FOR_TARGET, USUAL_CC_FOR_TARGET,
- USUAL_CXX_FOR_TARGET, USUAL_GCJ_FOR_TARGET, USUAL_GCC_FOR_TARGET,
- USUAL_RAW_CXX_FOR_TARGET, USUAL_GFORTRAN_FOR_TARGET): New.
- (CXX_FOR_TARGET_FOR_RECURSIVE_MAKE,
- RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE, RECURSE_FLAGS): Delete.
- * configure: Regenerate.
- * Makefile.in: Regenerate.
-
-2005-07-27 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.tpl (EXTRA_TARGET_FLAGS): Set LDFLAGS=LDFLAGS_FOR_TARGET.
- * Makefile.def (flags_to_pass): Add LDFLAGS_FOR_TARGET.
- * Makefile.in: Regenerated.
-
-2005-07-26 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.tpl (SYSROOT_CFLAGS_FOR_TARGET): New variable.
- (CFLAGS_FOR_TARGET): Use it.
- (CXXFLAGS_FOR_TARGET): Likewise.
- * Makefile.in: Regenerated.
- * configure.in (--with-build-sysroot): New option.
- * configure: Regenerated.
-
-2005-07-24 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl: Wrap install between unstage and stage
- * Makefile.in: Regenerate.
-
-2005-07-16 Kelley Cook <kcook@gcc.gnu.org>
-
- * all files: Update FSF address.
-
-2005-07-14 Jim Blandy <jimb@redhat.com>
-
- * configure.in: Add cases for Renesas m32c.
- * configure: Regenerated.
-
-2005-07-14 Kelley Cook <kcook@gcc.gnu.org>
-
- * COPYING, compile, config-ml.in, config.guess,
- config.sub, install-sh, missing, mkinstalldirs,
- symlink-tree, ylwrap: Sync from upstream sources.
-
-2005-07-13 Eric Christopher <echristo@redhat.com>
-
- * configure.in: Add toplevel noconfigdir support for tpf.
- * configure: Regenerate.
-
-2005-07-11 Jakub Jelinek <jakub@redhat.com>
-
- * Makefile.def (target_modules): Add libssp.
- * configure.in (target_libraries): Add target-libssp.
- * configure: Rebuilt.
- * Makefile.in: Rebuilt.
-
-2005-07-11 Paolo Bonzini <bonzini@gnu.org>
-
- PR ada/22340
-
- * Makefile.def: Sync with gcc.
- * Makefile.tpl (POSTSTAGE1_FLAGS_TO_PASS): Fix pasto.
- * Makefile.in: Regenerate.
-
-2005-07-07 Andreas Schwab <schwab@suse.de>
-
- * Makefile.def (flags_to_pass): Add CFLAGS_FOR_BUILD.
- * Makefile.tpl (EXTRA_GCC_FLAGS): Don't pass CFLAGS_FOR_BUILD here.
- * Makefile.in: Regenerated.
-
-2005-07-07 Kazu Hirata <kazu@codesourcery.com>
-
- * configure.in: Add --enable-libssp and --disable-libssp.
- * configure: Regenerate with autoconf-2.13.
-
-2005-07-06 Geoffrey Keating <geoffk@apple.com>
-
- * configure.in: Don't build sim or rda when targetting darwin.
- * configure: Regenerate.
-
-2005-07-04 Ben Elliston <bje@gnu.org>
-
- * src-release (do-proto-toplev): Remove dejagnu bits.
- (DEJAGNU_SUPPORT_DIRS): Remove.
- (dejagnu.tar.bz2, dejagnu.tar): Likewise.
- (GDBD_SUPPORT_DIRS): Likewise.
- (gdb+dejagnu.tar.bz2, gdb+dejagnu.tar): Likewise.
- (INSIGHTD_SUPPORT_DIRS): Likewise.
- (insight+dejagnu.tar.bz2, insight+dejagnu.tar): Likewise.
-
-2005-06-30 Ben Elliston <bje@gnu.org>
-
- * setup.com (mpw): Remove unused directive.
-
-2005-06-22 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.def (stagefeedback): Come after profile.
- Define profiledbootstrap target.
- * Makefile.tpl (profiledbootstrap): Remove.
- (stageprofile-end): Zap stagefeedback.
- (stagefeedback-start): Copy all .gcda files, not only GCC's.
- * Makefile.in: Regenerate.
-
-2005-06-13 Zack Weinberg <zack@codesourcery.com>
-
- * depcomp: Update from automake CVS. Add 'ia64hp' stanza.
- In 'cpp' stanza, support '#line' as well as '# '.
-
-2005-06-07 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.in (unsupported_languages): New macro.
- <mmix-knuth-mmixware>: Set unsupported_languages. Name explicit
- non-ported target libraries in noconfigdirs.
- <cris-*, crisv32-*> Ditto, except for non-aout, non-elf,
- non-linux-gnu. Remove libgcj_ex_libffi.
- <lang_frag loop>: Set add_this_lang=no if the language is in
- unsupported_languages.
- * configure: Regenerate.
-
-2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
-
- * configure.in: Fix typo in handling of --with-mpfr-dir.
- * configure: Regenerate.
-
-2005-06-02 Jim Blandy <jimb@redhat.com>
-
- * config.sub: Add cases for the Renesas m32c. (This patch has been
- accepted into the master sources.)
-
-2005-06-02 Aldy Hernandez <aldyh@redhat.com>
- Michael Snyder <msnyder@redhat.com>
- Stan Cox <scox@redhat.com>
-
- * configure.in: Set noconfigdirs for ms1.
-
- * configure: Regenerate.
-
-2005-05-25 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl (stage[+id+]-start): Iterate over target module as well.
- (Dependencies): Consider target modules for bootstrap dependencies.
- Make target bootstrap modules depend on each stage's gcc.
- * Makefile.in: Regenerate.
-
-2005-05-20 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.def (configure-gcc): Depend on binutils having been built.
- (all-gcc): No need to do it here.
- * Makefile.in: Regenerate.
-
-2005-05-19 Paul Brook <paul@codesourcery.com>
-
- * configure.in: Rewrite misleading error message when requested
- language cannot be built.
- * configure: Regenerate.
-
-2005-05-15 Daniel Jacobowitz <dan@codesourcery.com>
-
- * ylwrap: Import from Automake 1.9.5.
-
-2005-05-04 Mike Stump <mrs@apple.com>
-
- * configure.in: Always pass --target to target configures as
- otherwise rebuilds that do --recheck will fail.
- * configure: Rebuilt.
-
-2005-05-04 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Rename from
- STAGE_HOST_EXPORTS.
- (configure, all): Add bootstrap support.
- (Host modules, target modules): Pass post-stage1 flags and exports.
- (Top-level bootstrap): Remove bootstrap rules, expanded elsewhere.
- * Makefile.in: Regenerate.
-
-2005-04-29 Paolo Bonzini <bonzini@gnu.org>
-
- Sync from gcc:
-
- 2005-04-22 Bernd Schmidt <bernd.schmidt@analog.com>
-
- * config.sub: Update from master copy.
-
- 2005-04-19 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.in <crisv32-*-*, cris-*-*>: New local variable
- libgcj_ex_libffi. Have specific match for *-*-linux*. Separate
- matches for "*-*-aout" and "*-*-elf". Don't disable libffi for
- "*-*-elf" and "*-*-linux*".
- * configure: Regenerate.
-
-2005-04-06 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl (BUILD_CONFIGARGS): Include --with-build-subdir.
- (TARGET_CONFIGARGS): Include --with-target-subdir.
- (configure, all): New macros. Use them throughout.
-
-2005-04-05 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.tpl: Sync with gcc.
- * Makefile.in: Regenerate.
-
-2005-03-30 J"orn Rennecke <joern.rennecke@st.com>
-
- * config/mh-mingw32: Delete.
- * configure.in: Don't use it.
- * configure: Regenerate.
-
-2005-03-31 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.def (bfd, opcodes, libstdc++-v3, libmudflap): Set lib_path.
- * Makefile.tpl (SET_LIB_PATH, REALLY_SET_LIB_PATH): Remove.
- (HOST_EXPORTS, STAGE_HOST_EXPORTS, TARGET_EXPORTS): Set $(RPATH_ENVVAR).
- (HOST_LIB_PATH): Generate from Makefile.def.
- (TARGET_LIB_PATH): Likewise.
- (Old bootstrap targets): Include TARGET_LIB_PATH into RPATH_ENVVAR.
- * Makefile.in: Regenerate.
- * configure.in (set_lib_path, SET_LIB_PATH, SET_GCC_LIB_PATH): Remove.
- (RPATH_ENVVAR): Include Darwin case.
- * configure: Regenerate.
-
-2005-03-25 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in (RPATH_ENVVAR): Set to DYLD_LIBRARY_PATH on Darwin.
- * configure: Regenerate.
-
-2005-03-21 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.def: Remove libstdcxx_incdir, libsubdir, gxx_include_dir,
- gcc_version, and gcc_version_trigger from set of flags to pass.
- * Makefile.tpl: Remove definitions of above variables.
- (config.status): Remove dependency on $(gcc_version_trigger).
- * Makefile.in: Regenerate.
- * configure.in: Do not reference config/gcc-version.m4 nor
- config/gxx-include-dir.m4. Do not invoke TL_AC_GCC_VERSION nor
- TL_AC_GXX_INCLUDE_DIR. Do not set gcc_version_trigger.
- * configure: Regenerate.
-
-2005-03-16 Manfred Hollstein <manfred.h@gmx.net>
- Andrew Pinski <pinskia@physics.uc.edu>
-
- * Makefile.tpl (check-[+module+]): Fix shell statement inside if ... fi.
- * Makefile.in: Regenerate.
-
-2005-03-01 Alexandre Oliva <aoliva@redhat.com>
-
- PR libgcj/20160
- * ltmain.sh: Avoid creating archives with components that have
- duplicate basenames.
-
-2005-02-28 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR bootstrap/20250
- * Makefile.tpl (HOST target installs): Fix copy and pasto, use install
- instead of check.
- * Makefile.in: Regenerate.
-
-2005-02-28 Paolo Bonzini <bonzini@gnu.org>
-
- Sync from gcc.
-
- 2005-02-28 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/17383
- * Makefile.def (target_modules): Remove "stage", now unnecessary.
- * Makefile.tpl (HOST_SUBDIR): New substitution.
- (STAGE_HOST_EXPORTS, EXPECT, HOST_LIB_PATH, USUAL_AR_FOR_TARGET,
- USUAL_AS_FOR_TARGET, USUAL_DLLTOOL_FOR_TARGET, USUAL_GCC_FOR_TARGET,
- USUAL_LD_FOR_TARGET, USUAL_NM_FOR_TARGET, USUAL_OBJDUMP_FOR_TARGET,
- USUAL_RANLIB_FOR_TARGET, USUAL_WINDRES_FOR_TARGET): Use it.
- (Host modules, Bootstrapped modules): Use it.
- (Build modules, Target modules): Do not create symlink trees,
- always configure out-of-srcdir.
- (distclean): Try removing $(host_subdir) with rm before using rm -rf.
- * configure.in (FLAGS_FOR_TARGET, CC_FOR_TARGET, GCJ_FOR_TARGET,
- GFORTRAN_FOR_TARGET, CXX_FOR_TARGET, RAW_CXX_FOR_TARGET): Use
- $(HOST_SUBDIR). Create a symlink for host_subdir.
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
-
- Merged from libada-gnattools-branch:
- 2004-11-28 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.def: Add gnattools as a module, depending on target-libada.
- * Makefile.in: Regenerate.
- * configure.in: Include gnattools in host_tools; disable it if ada
- is disabled.
- * configure: Regenerate.
-
-2005-02-23 Nick Clifton <nickc@redhat.com>
-
- * configure: Regenerate.
-
-2005-02-22 Paul Schlie <schlie@comcast.net>
-
- * configure.in: Allow darwin targeted ports to build tk, itcl and
- libgui.
-
-2005-02-21 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR libgcj/10353
- * configure.in (noconfigdirs) <sparc-*-solaris2.[0-6]>: Add libgcj.
- * configure: Regenerate.
-
-2005-02-08 Andrew Cagney <cagney@gnu.org>
-
- * MAINTAINERS: Delete reference to dejagnu/ and mmalloc/ from the
- gdb/ section. Update GDB's URL.
-
-2005-01-31 Andrew Cagney <cagney@gnu.org>
-
- * gettext.m4: Only set ENABLE_NLS when gettext is present.
-
-2005-01-29 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.in (noconfigdirs) <crisv32-*-*>: Match like cris-*-*.
- <crisv32-*-*, cris-*-*>: Only disable target-newlib and
- target-libgloss when not *-*-elf and *-*-aout.
- * configure: Regenerate.
-
-2005-01-27 Andrew Cagney <cagney@gnu.org>
-
- * gettext.m4: Don't use NONE as a default for CATOBJEXT.
-
-2005-01-24 Andrew Cagney <cagney@gnu.org>
-
- * gettext.m4: Only fall back to ../intl/ when it's present.
-
-2005-01-17 Kelley Cook <kcook@gcc.gnu.org>
-
- * install-sh, config.sub: Import from upstream.
-
-2005-01-17 Kelley Cook <kcook@gcc.gnu.org>
-
- PR bootstrap/18222
- * Makefile.def: Pass CPPFLAGS_FOR_TARGET.
- * Makefile.tpl: Define target CPPFLAGS on CPPFLAGS_FOR_TARGET.
- * Makefile.in: Regenerate.
-
-2005-01-03 Paolo Bonzini <bonzini@gnu.org>
-
- Revert 2004-12-28 Makefile changes, a better fix will be
- applied to mainline and src after GCC 4.0 branches.
-
-2004-12-28 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/17383
-
- * Makefile.def (target_modules): Remove stage parameter,
- it is always true now.
- * Makefile.tpl (configure-build-[+module+],
- configure-target-[+module+]): Always build symlink tree
- for the directory and for include. BUILD_SUBDIR and
- TARGET_SUBDIR cannot be . anymore.
- * Makefile.in: Regenerate.
-
-2004-12-25 David Edelsohn <edelsohn@gnu.org>
-
- Revert 2004-12-08 Makefile changes.
-
-2004-12-16 Andrew Stubbs <andrew.stubbs@st.com>
-
- * configure.in (sh64-*-*): Reenable gprof.
- * configure: Regenerate.
-
-2004-12-09 Jim Blandy <jimb@redhat.com>
-
- * MAINTAINERS: List 'depcomp' as part of automake.
-
-2004-12-08 David Edelsohn <edelsohn@gnu.org>
-
- * Makefile.def (flags_to_pass): Add PICFLAG_FOR_TARGET.
- * Makefile.tpl (EXTRA_HOST_FLAGS): Add PICFLAG.
- (EXTRA_TARGET_FLAGS): Add PICFLAG.
- * Makefile.in: Regenerate.
-
-2004-12-07 Matt Kraai <kraai@ftbfs.org>
-
- * Makefile.tpl: Generate normal dependencies if the LHS module is
- not bootstrapped.
- * Makefile.in: Regenerate.
-
-2004-12-03 Richard Sandiford <rsandifo@redhat.com>
-
- * configure.in: Include config/gxx-include-dir.m4. Use
- TL_AC_GXX_INCLUDE_DIR. Remove some now-redundant AC_SUBSTs.
- * configure: Regenerate.
-
-2004-12-03 Richard Sandiford <rsandifo@redhat.com>
-
- * config.if: Delete.
- * configure.in: Set libstdcxx_incdir directly.
- * configure: Regenerate.
- * MAINTAINERS: Remove mention of config.if.
- * src-release (DEVO_SUPPORT): Remove config.if.
-
-2004-12-02 Eric Christopher <echristo@redhat.com>
-
- * Makefile.tpl (clean-target-libgcc): Add stmp-dirs to list
- of things to remove.
- * Makefile.in: Regenerate.
-
-2004-12-02 Richard Sandiford <rsandifo@redhat.com>
-
- * configure.in: Clear gcc_version_trigger if the file doesn't exist.
- * configure: Regenerate.
-
-2004-12-02 Richard Sandiford <rsandifo@redhat.com>
-
- * configure.in: Include config/gcc-version.m4. Use TL_AC_GCC_VERSION
- to set gcc_version_trigger. Remove some now-redundant AC_SUBSTs.
- * configure: Regenerate.
-
-2004-11-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * configure.in (hppa*-*-linux*): Don't add libgcj to noconfigdirs.
- (hppa*64*-*-*): Delete incorrect comment.
- * configure: Rebuilt.
-
-2004-11-15 Kelley Cook <kcook@gcc.gnu.org>
-
- * install-sh, compile: Import from automake.
-
-2004-11-15 Kelley Cook <kcook@gcc.gnu.org>
-
- * config.guess, config.sub: Import from savannnah.
-
-2004-11-12 Mike Stump <mrs@apple.com>
-
- * Makefile.def: Add html support.
- * Makefile.tpl: Likewise.
- * Makefile.in: Regenerate.
-
-2004-11-11 Geoffrey Keating <geoffk@apple.com>
-
- PR 18423
- * configure.in: Remove all instances of build-fixincludes from
- noconfigdirs.
- (build_configargs): Supply --target to subdirectories.
- * configure: Regenerate.
-
- * Makefile.def: Make gcc install depend on fixincludes install.
- * Makefile.in: Regenerate.
-
-2004-11-08 Hans-Peter Nilsson <hp@bitrange.com>
-
- * configure.in (noconfigdirs) [mmix-*-*]: Disable
- target-libgfortran.
- * configure: Regenerate.
-
-2004-11-07 David Edelsohn <edelsohn@gnu.org>
-
- * config-ml.in: Pass FCFLAGS for multilibs, handle GFORTRAN
- like CC.
-
-2004-11-05 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.def (host fixincludes): Specify missing targets.
- * Makefile.in: Regenerate.
-
-2004-11-04 H.J. Lu <hongjiu.lu@intel.com>
-
- PR other/17783
- * configure.in: Set up LD_LIBRARY_PATH by default for gcc.
- * configure: Regenerated.
-
-2004-11-04 Daniel Jacobowitz <dan@debian.org>
-
- * configure.in (arm-*-oabi*, thumb-*-oabi*): Remove.
- * configure: Regenerated.
-
-2004-10-28 Eric B. Weddington <ericw@evcohs.com>
-
- PR target/18151
- * configure.in (case ${target}): Do not build fixincludes for avr.
- * configure: Regenerated.
-
-2004-10-26 Paolo Bonzini <bonzini@gnu.org>
-
- * configure.in (case ${target}): Do not build fixincludes
- on platforms where it is not used.
- * configure: Regenerated.
-
-2004-10-23 Daniel Jacobowitz <dan@debian.org>
-
- * configure.in: Use an absolute path to install-sh.
- * configure: Regenerated.
-
-2004-10-19 Andrew Cagney <cagney@gnu.org>
-
- * src-release (do-djunpack, do-md5sum): Install the generated file
- directly into the proto-toplev/ directory.
-
-2004-10-19 Andrew Cagney <cagney@gnu.org>
-
- * src-release (GDB_SUPPORT_DIRS): Remove utils and intl.
-
-2004-10-12 Kelley Cook <kcook@gcc.gnu.org>
-
- * configure.in (*-*-cygwin*): Supress warning if newlib not present.
- * configure: Regenerate.
-
-2004-10-06 Paolo Bonzini <bonzini@gnu.org>
-
- Fix wrong conflict resolution in:
-
- 2004-08-16 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.in: Regenerate.
- * Makefile.tpl (Autogenerated `all-*' targets): Invoke $(TARGET-*)
- in the recursive `make', instead of hardwiring `all'.
- (Autogenerated TARGET-* variables): New.
-
-2004-10-05 Ulrich Weigand <uweigand@de.ibm.com>
-
- Merged from GCC / libtool upstream:
- 2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
- * ltcf-c.sh (tpf*): Add ld_shlibs=yes.
- * ltcf-cxx.sh (tpf*): Likewise.
- * ltconfig (tpf*): Add TPF OS configuration support.
-
2004-09-30 Tomer Levi <Tomer.Levi@nsc.com>
* configure.in: Enable target-libgloss for crx-*-*.
- * configure: Regenerate.
+ * configure: Regenerate.
2004-09-24 Michael Roth <mroth@nessie.de>
@@ -995,7 +43,7 @@
* configure: Regenerate.
2004-09-09 Daniel Berlin <dberlin@dberlin.org>
-
+
* Makefile.def: Remove libbanshee.
* Makefile.tpl: Ditto.
* configure.in: Ditto.
@@ -1011,7 +59,7 @@
* config.sub: Import latest version from master repository.
* config.guess: Likewise.
This includes these changes:
-
+
2004-08-27 Hans-Peter Nilsson <hp@axis.com>
* config.sub: Handle crisv32, alias etraxfs.
@@ -1098,7 +146,7 @@
* config.sub: Add support for National Semiconductor CRX target.
2004-09-03 Jan Beulich <jbeulich@novell.com>
-
+
* configure.in: Remove target-libstdc++-v3 from noconfigdirs for
*-*-netware, but add target-libmudflap.
Consolidate *-*-netware targets (of which really only i?86 exists)
@@ -1124,8 +172,8 @@
* Makefile.in: Move BOOT_CFLAGS above host makefile fragment include.
* configure.in: add test for powerpc-*-darwin* to specify makefile frag
* configure: regenerate
- * config/mh-ppc-darwin: create file, override BOOT_CFLAGS for
- -mdynamic-no-pic
+ * config/mh-ppc-darwin: create file, override BOOT_CFLAGS for
+ -mdynamic-no-pic
2004-08-31 Paolo Bonzini <bonzini@gnu.org>
diff --git a/MAINTAINERS b/MAINTAINERS
index b2077e7c2..8c9696b9f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -5,11 +5,7 @@ COPYING, COPYING.LIB, README
http://gnu.org.
Makefile.*; configure; configure.in; src-release
- Any global maintainer can approve changes to these
- files, but they should be aware that they need to
- be kept in sync with their counterparts in the GCC
- repository. Also please notify the following of
- any committed patches:
+ Please notify the following of any committed patches.
binutils@sources.redhat.com
gdb-patches@sources.redhat.com
@@ -36,13 +32,14 @@ config.guess; config.sub; readline/support/config.{sub,guess}
binutils@sources.redhat.com
gdb-patches@sources.redhat.com
-depcomp
- Send bug reports and patches to bug-automake@gnu.org.
+dejagnu/
+ dejagnu: http://www.gnu.org/software/dejagnu/
+ Patches to bug-dejagnu@gnu.org
-gdb/; readline/; sim/; GDB's part of include/
- GDB: http://www.gnu.org/software/gdb/
+gdb/; mmalloc/; readline/; sim/; GDB's part of include/ & dejagnu/
+ gdb: http://sources.redhat.com/gdb/
Patches to gdb-patches@sources.redhat.com.
- See also gdb/MAINTAINERS and sim/MAINTAINERS.
+ See also gdb/MAINTAINERS, sim/MAINTAINERS, mmalloc/MAINTAINERS.
include/
See binutils/, gdb/, sid/, gcc/, libiberty/ etc.
@@ -98,17 +95,9 @@ winsup/
General discussion cygwin@sources.redhat.com.
See also winsup/MAINTAINERS.
-config-ml.in; makefile.vms; mkdep; setup.com;
-etc/; intl/; utils/;
- Any global maintainer can approve changes to these
- files and directories.
-
-compile; depcomp; install-sh; missing; ylwrap;
-config/
- Any global maintainer can approve changes to these
- files and directories, but they should be aware
- that they need to be kept in sync with their
- counterparts in the GCC repository.
+config-ml.in; setup.com; missing; makefile.vms; utils/; config/;
+config.if; makefile.vms; missing; ylwrap; mkdep; etc/; install-sh; intl/
+ Ask DJ Delorie <dj@redhat.com> after reading the libiberty entry.
modules file
Obviously changes to this file should not go through
diff --git a/Makefile.def b/Makefile.def
index 3227a4456..366405a18 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -4,7 +4,7 @@ AutoGen definitions Makefile.tpl;
// Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
// This file was originally written by Nathanael Nerode.
//
-// Copyright 2002, 2003, 2004, 2005, 2006 Free Software Foundation
+// Copyright 2002, 2003 Free Software Foundation
//
// This file is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
@@ -18,7 +18,7 @@ AutoGen definitions Makefile.tpl;
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// "missing" indicates that that module doesn't supply
@@ -37,8 +37,8 @@ host_modules= { module= ash; };
host_modules= { module= autoconf; };
host_modules= { module= automake; };
host_modules= { module= bash; };
-host_modules= { module= bfd; lib_path=.; bootstrap=true; };
-host_modules= { module= opcodes; lib_path=.; bootstrap=true; };
+host_modules= { module= bfd; bootstrap=true; };
+host_modules= { module= opcodes; bootstrap=true; };
host_modules= { module= binutils; bootstrap=true; };
host_modules= { module= bison; no_check_cross= true; };
host_modules= { module= byacc; no_check_cross= true; };
@@ -51,16 +51,10 @@ host_modules= { module= fastjar; no_check_cross= true; };
host_modules= { module= fileutils; };
host_modules= { module= findutils; };
host_modules= { module= find; };
-host_modules= { module= fixincludes;
- missing= info;
- missing= dvi;
- missing= TAGS;
- missing= install-info;
- missing= installcheck; };
host_modules= { module= flex; no_check_cross= true; };
host_modules= { module= gas; bootstrap=true; };
host_modules= { module= gcc; bootstrap=true;
- target="`if [ -f stage_last ]; then echo quickstrap ; else echo all; fi`";
+ target="`if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi`";
extra_make_flags="$(EXTRA_GCC_FLAGS)"; };
host_modules= { module= gawk; };
host_modules= { module= gettext; };
@@ -75,7 +69,6 @@ host_modules= { module= tcl;
host_modules= { module= itcl; };
host_modules= { module= ld; bootstrap=true; };
host_modules= { module= libcpp; bootstrap=true; };
-host_modules= { module= libdecnumber; bootstrap=true; };
host_modules= { module= libgui; };
host_modules= { module= libiberty; bootstrap=true; };
host_modules= { module= libtool; };
@@ -112,16 +105,13 @@ host_modules= { module= libtermcap; no_check=true;
missing=distclean;
missing=maintainer-clean; };
host_modules= { module= utils; no_check=true; };
-host_modules= { module= gnattools; };
-target_modules = { module= libstdc++-v3; lib_path=.libs; raw_cxx=true; };
-target_modules = { module= libmudflap; lib_path=.libs; };
-target_modules = { module= libssp; lib_path=.libs; };
-target_modules = { module= libgcc-math; lib_path=.libs; };
+target_modules = { module= libstdc++-v3; raw_cxx=true; };
+target_modules = { module= libmudflap; };
target_modules = { module= newlib; };
target_modules = { module= libgfortran; };
target_modules = { module= libobjc; };
-target_modules = { module= libtermcap; no_check=true;
+target_modules = { module= libtermcap; no_check=true; stage=true;
missing=mostlyclean;
missing=clean;
missing=distclean;
@@ -133,12 +123,11 @@ target_modules = { module= gperf; };
target_modules = { module= examples; no_check=true; no_install=true; };
target_modules = { module= libffi; };
target_modules = { module= libjava; raw_cxx=true; };
-target_modules = { module= zlib; };
+target_modules = { module= zlib; stage=true; };
target_modules = { module= boehm-gc; };
target_modules = { module= qthreads; };
target_modules = { module= rda; };
target_modules = { module= libada; };
-target_modules = { module= libgomp; lib_path=.libs; };
// These are (some of) the make targets to be done in each subdirectory.
// Not all; these are the ones which don't have special options.
@@ -148,8 +137,6 @@ recursive_targets = { make_target= info;
depend=configure; };
recursive_targets = { make_target= dvi;
depend=configure; };
-recursive_targets = { make_target= html;
- depend=configure; };
recursive_targets = { make_target= TAGS;
depend=configure; };
recursive_targets = { make_target= install-info;
@@ -176,6 +163,8 @@ flags_to_pass = { flag= infodir ; };
flags_to_pass = { flag= libdir ; };
flags_to_pass = { flag= libexecdir ; };
flags_to_pass = { flag= lispdir ; };
+flags_to_pass = { flag= libstdcxx_incdir ; };
+flags_to_pass = { flag= libsubdir ; };
flags_to_pass = { flag= localstatedir ; };
flags_to_pass = { flag= mandir ; };
flags_to_pass = { flag= oldincludedir ; };
@@ -185,12 +174,14 @@ flags_to_pass = { flag= sharedstatedir ; };
flags_to_pass = { flag= sysconfdir ; };
flags_to_pass = { flag= tooldir ; };
flags_to_pass = { flag= build_tooldir ; };
+flags_to_pass = { flag= gxx_include_dir ; };
+flags_to_pass = { flag= gcc_version ; };
+flags_to_pass = { flag= gcc_version_trigger ; };
flags_to_pass = { flag= target_alias ; };
// Build tools
flags_to_pass = { flag= BISON ; };
flags_to_pass = { flag= CC_FOR_BUILD ; };
-flags_to_pass = { flag= CFLAGS_FOR_BUILD ; };
flags_to_pass = { flag= CXX_FOR_BUILD ; };
flags_to_pass = { flag= EXPECT ; };
flags_to_pass = { flag= FLEX ; };
@@ -207,45 +198,30 @@ flags_to_pass = { flag= SHELL ; };
flags_to_pass = { flag= YACC ; };
// Host tools
-flags_to_pass = { flag= ADAFLAGS ; optional=true ; };
flags_to_pass = { flag= AR_FLAGS ; };
-flags_to_pass = { flag= BOOT_ADAFLAGS ; optional=true ; };
-flags_to_pass = { flag= BOOT_CFLAGS ; };
-flags_to_pass = { flag= BOOT_LDFLAGS ; };
flags_to_pass = { flag= CFLAGS ; };
flags_to_pass = { flag= CXXFLAGS ; };
flags_to_pass = { flag= LDFLAGS ; };
flags_to_pass = { flag= LIBCFLAGS ; };
flags_to_pass = { flag= LIBCXXFLAGS ; };
-flags_to_pass = { flag= STAGE1_CFLAGS ; };
-flags_to_pass = { flag= STAGE1_LANGUAGES ; };
// Target tools
flags_to_pass = { flag= AR_FOR_TARGET ; };
flags_to_pass = { flag= AS_FOR_TARGET ; };
flags_to_pass = { flag= CC_FOR_TARGET ; };
flags_to_pass = { flag= CFLAGS_FOR_TARGET ; };
-flags_to_pass = { flag= CPPFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= CXX_FOR_TARGET ; };
flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; };
flags_to_pass = { flag= GCJ_FOR_TARGET ; };
flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; };
flags_to_pass = { flag= LD_FOR_TARGET ; };
-flags_to_pass = { flag= LIPO_FOR_TARGET ; };
-flags_to_pass = { flag= LDFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= LIBCFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= LIBCXXFLAGS_FOR_TARGET ; };
flags_to_pass = { flag= NM_FOR_TARGET ; };
-flags_to_pass = { flag= OBJDUMP_FOR_TARGET ; };
flags_to_pass = { flag= RANLIB_FOR_TARGET ; };
-flags_to_pass = { flag= STRIP_FOR_TARGET ; };
flags_to_pass = { flag= WINDRES_FOR_TARGET ; };
-// Miscellaneous
-flags_to_pass = { flag= LANGUAGES ; optional=true ; };
-flags_to_pass = { flag= LEAN ; };
-
// Inter-module dependencies
// Build modules
@@ -261,9 +237,9 @@ dependencies = { module=all-build-fixincludes; on=all-build-libiberty; };
// Host modules specific to gcc.
dependencies = { module=configure-gcc; on=configure-intl; };
-dependencies = { module=configure-gcc; on=all-binutils; };
-dependencies = { module=configure-gcc; on=all-gas; };
-dependencies = { module=configure-gcc; on=all-ld; };
+dependencies = { module=configure-gcc; on=configure-binutils; };
+dependencies = { module=configure-gcc; on=configure-gas; };
+dependencies = { module=configure-gcc; on=configure-ld; };
dependencies = { module=all-gcc; on=all-libiberty; hard=true; };
dependencies = { module=all-gcc; on=all-intl; };
dependencies = { module=all-gcc; on=all-build-texinfo; };
@@ -272,23 +248,22 @@ dependencies = { module=all-gcc; on=all-build-byacc; };
dependencies = { module=all-gcc; on=all-build-flex; };
dependencies = { module=all-gcc; on=all-build-libiberty; };
dependencies = { module=all-gcc; on=all-build-fixincludes; };
+dependencies = { module=all-gcc; on=all-binutils; };
+dependencies = { module=all-gcc; on=all-gas; };
+dependencies = { module=all-gcc; on=all-ld; };
dependencies = { module=all-gcc; on=all-zlib; };
dependencies = { module=all-gcc; on=all-libcpp; hard=true; };
-dependencies = { module=all-gcc; on=all-libdecnumber; hard=true; };
-dependencies = { module=all-gcc; on=all-libiberty; };
-dependencies = { module=all-gcc; on=all-fixincludes; };
-dependencies = { module=install-gcc ; on=install-fixincludes; };
+dependencies = { module=all-gcc; on=all-build-libiberty; };
dependencies = { module=configure-libcpp; on=configure-libiberty; hard=true; };
dependencies = { module=configure-libcpp; on=configure-intl; };
dependencies = { module=all-libcpp; on=all-libiberty; hard=true; };
dependencies = { module=all-libcpp; on=all-intl; };
-dependencies = { module=all-fixincludes; on=all-libiberty; };
-
-dependencies = { module=all-gnattools; on=all-target-libada; };
-
// Host modules specific to gdb.
+dependencies = { module=configure-gdb; on=configure-itcl; };
+dependencies = { module=configure-gdb; on=configure-tcl; };
+dependencies = { module=configure-gdb; on=configure-tk; };
dependencies = { module=configure-gdb; on=configure-sim; };
dependencies = { module=all-gdb; on=all-libiberty; };
dependencies = { module=all-gdb; on=all-opcodes; };
@@ -297,6 +272,10 @@ dependencies = { module=all-gdb; on=all-readline; };
dependencies = { module=all-gdb; on=all-build-bison; };
dependencies = { module=all-gdb; on=all-build-byacc; };
dependencies = { module=all-gdb; on=all-sim; };
+dependencies = { module=install-gdb; on=install-tcl; };
+dependencies = { module=install-gdb; on=install-tk; };
+dependencies = { module=install-gdb; on=install-itcl; };
+dependencies = { module=install-gdb; on=install-libgui; };
dependencies = { module=configure-libgui; on=configure-tcl; };
dependencies = { module=configure-libgui; on=configure-tk; };
@@ -426,9 +405,7 @@ lang_env_dependencies = { module=libada; };
lang_env_dependencies = { module=libgfortran; };
lang_env_dependencies = { module=libffi; };
lang_env_dependencies = { module=libjava; cxx=true; };
-lang_env_dependencies = { module=libmudflap; };
lang_env_dependencies = { module=libobjc; };
-lang_env_dependencies = { module=libssp; };
lang_env_dependencies = { module=libstdc++-v3; };
lang_env_dependencies = { module=zlib; };
@@ -464,7 +441,7 @@ bootstrap_stage = {
id=1 ;
stage_configure_flags='--disable-intermodule \
--disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"' ;
- stage_make_flags='CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)"' ; };
+ stage_make_flags='CFLAGS="$(STAGE1_CFLAGS)"' ; };
bootstrap_stage = {
id=2 ; prev=1 ;
bootstrap_target=bootstrap2 ;
@@ -488,7 +465,6 @@ bootstrap_stage = {
stage_configure_flags="@stage2_werror_flag@" ;
stage_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"' ; };
bootstrap_stage = {
- id=feedback ; prev=profile ;
- bootstrap_target=profiledbootstrap ;
+ id=feedback ; prev=1 ;
stage_configure_flags="@stage2_werror_flag@" ;
stage_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-use"' ; };
diff --git a/Makefile.in b/Makefile.in
index eae74a72e..26df74199 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -3,7 +3,7 @@
#
# Makefile for directory with subdirs to build.
# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-# 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
+# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# -------------------------------
@@ -72,23 +72,45 @@ LN_S = @LN_S@
# Miscellaneous non-standard autoconf-set variables
# -------------------------------------------------
+# The file containing GCC's version number.
+gcc_version_trigger = @gcc_version_trigger@
+gcc_version = @gcc_version@
+
# The gcc driver likes to know the arguments it was configured with.
TOPLEVEL_CONFIGURE_ARGUMENTS=@TOPLEVEL_CONFIGURE_ARGUMENTS@
+gxx_include_dir = @gxx_include_dir@
+libstdcxx_incdir = @libstdcxx_incdir@
+
tooldir = @tooldir@
build_tooldir = @build_tooldir@
+# Directory in which the compiler finds executables, libraries, etc.
+libsubdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)
GDB_NLM_DEPS =
# This is the name of the environment variable used for the path to
# the libraries.
RPATH_ENVVAR = @RPATH_ENVVAR@
+# This is set by configure to REALLY_SET_LIB_PATH if --enable-shared
+# was used.
+SET_LIB_PATH = @SET_LIB_PATH@
+
+# configure.in sets SET_LIB_PATH to this if --enable-shared was used.
+# Some platforms don't like blank entries, so we remove duplicate,
+# leading and trailing colons.
+REALLY_SET_LIB_PATH = \
+ @SET_GCC_LIB_PATH@ \
+ $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+
+# This is the list of directories to be built for the build system.
+BUILD_CONFIGDIRS = libiberty
# Build programs are put under this directory.
BUILD_SUBDIR = @build_subdir@
# This is set by the configure script to the arguments to use when configuring
# directories built for the build system.
-BUILD_CONFIGARGS = @build_configargs@ --with-build-subdir="$(BUILD_SUBDIR)"
+BUILD_CONFIGARGS = @build_configargs@
# This is the list of variables to export in the environment when
# configuring any subdirectory. It must also be exported whenever
@@ -127,12 +149,8 @@ SUBDIRS = @configdirs@
# This is set by the configure script to the arguments to use when configuring
# directories built for the host system.
HOST_CONFIGARGS = @host_configargs@
-# Host programs are put under this directory, which is . except if building
-# with srcdir=..
-HOST_SUBDIR = @host_subdir@
# This is the list of variables to export in the environment when
-# configuring subdirectories for the host system. We need to pass
-# some to the GCC configure because of its hybrid host/target nature.
+# configuring subdirectories for the host system.
HOST_EXPORTS = \
$(BASE_EXPORTS) \
CC="$(CC)"; export CC; \
@@ -151,59 +169,47 @@ HOST_EXPORTS = \
WINDRES="$(WINDRES)"; export WINDRES; \
OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
- AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
- AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
- GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
- LD_FOR_TARGET="$(LD_FOR_TARGET)"; export LD_FOR_TARGET; \
- NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
- OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
- RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
-@if gcc-bootstrap
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
-@endif gcc-bootstrap
- $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
# Similar, for later GCC stages.
-POSTSTAGE1_HOST_EXPORTS = \
+STAGE_HOST_EXPORTS = \
$(HOST_EXPORTS) \
- CC="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
- -B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
- CC_FOR_BUILD="$(STAGE_CC_WRAPPER) \
- $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
- -B$$r/$(HOST_SUBDIR)/prev-gcc/ \
- -B$(build_tooldir)/bin/"; export CC_FOR_BUILD;
+ CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
+ CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD;
+# This is set by the configure script to the list of directories which
+# should be built using the target tools.
+TARGET_CONFIGDIRS = @target_configdirs@
# Target libraries are put under this directory:
TARGET_SUBDIR = @target_subdir@
# This is set by the configure script to the arguments to use when configuring
# directories built for the target.
-TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
+TARGET_CONFIGARGS = @target_configargs@
# This is the list of variables to export in the environment when
# configuring subdirectories for the host system.
BASE_TARGET_EXPORTS = \
$(BASE_EXPORTS) \
AR="$(AR_FOR_TARGET)"; export AR; \
- AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
+ AS="$(AS_FOR_TARGET)"; export AS; \
CC="$(CC_FOR_TARGET)"; export CC; \
CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
- CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
+ CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
- LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
+ LD="$(LD_FOR_TARGET)"; export LD; \
LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
- LIPO="$(LIPO_FOR_TARGET)"; export LIPO; \
- NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
- OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
+ NM="$(NM_FOR_TARGET)"; export NM; \
RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
- STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
- $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
RAW_CXX_TARGET_EXPORTS = \
$(BASE_TARGET_EXPORTS) \
@@ -247,16 +253,48 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
# Flags to pass to stage2 and later makes. They are defined
# here so that they can be overridden by Makefile fragments.
BOOT_CFLAGS= -g -O2
-BOOT_LDFLAGS=
-BISON = @BISON@
-YACC = @YACC@
-FLEX = @FLEX@
-LEX = @LEX@
-M4 = @M4@
-MAKEINFO = @MAKEINFO@
-EXPECT = @EXPECT@
-RUNTEST = @RUNTEST@
+CONFIGURED_BISON = @CONFIGURED_BISON@
+BISON = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/bison/tests/bison ; \
+ else \
+ echo ${CONFIGURED_BISON} ; \
+ fi`
+
+CONFIGURED_YACC = @CONFIGURED_YACC@
+YACC = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/bison/tests/bison -y ; \
+ elif [ -f $$r/$(BUILD_SUBDIR)/byacc/byacc ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/byacc/byacc ; \
+ else \
+ echo ${CONFIGURED_YACC} ; \
+ fi`
+
+CONFIGURED_FLEX = @CONFIGURED_FLEX@
+FLEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
+ else echo ${CONFIGURED_FLEX} ; fi`
+
+CONFIGURED_LEX = @CONFIGURED_LEX@
+LEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
+ else echo ${CONFIGURED_LEX} ; fi`
+
+CONFIGURED_M4 = @CONFIGURED_M4@
+M4 = `if [ -f $$r/$(BUILD_SUBDIR)/m4/m4 ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/m4/m4 ; \
+ else echo ${CONFIGURED_M4} ; fi`
+
+# For an installed makeinfo, we require it to be from texinfo 4.2 or
+# higher, else we use the "missing" dummy. We also pass the subdirectory
+# makeinfo even if only the Makefile is there, because Texinfo builds its
+# manual when made, and it requires its own version.
+CONFIGURED_MAKEINFO = @CONFIGURED_MAKEINFO@
+MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo ; \
+ else if (${CONFIGURED_MAKEINFO} --version \
+ | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])') >/dev/null 2>&1; \
+ then echo ${CONFIGURED_MAKEINFO}; else echo $$s/missing makeinfo; fi; fi`
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still
@@ -264,74 +302,185 @@ RUNTEST = @RUNTEST@
# (Default to avoid splitting info files by setting the threshold high.)
MAKEINFOFLAGS = --split-size=5000000
+EXPECT = `if [ -f $$r/expect/expect ] ; \
+ then echo $$r/expect/expect ; \
+ else echo expect ; fi`
+
+RUNTEST = `if [ -f $$s/dejagnu/runtest ] ; \
+ then echo $$s/dejagnu/runtest ; \
+ else echo runtest ; fi`
+
# ---------------------------------------------
# Programs producing files for the HOST machine
# ---------------------------------------------
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that programs built for the host machine work.
+HOST_LIB_PATH = $$r/bfd:$$r/opcodes
+
AS = @AS@
+
AR = @AR@
AR_FLAGS = rc
+
CC = @CC@
+CFLAGS = @CFLAGS@
+LIBCFLAGS = $(CFLAGS)
+
CXX = @CXX@
+CXXFLAGS = @CXXFLAGS@
+LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
+
DLLTOOL = @DLLTOOL@
-LD = @LD@
-LIPO = @LIPO@
+
NM = @NM@
-OBJDUMP = @OBJDUMP@
+
+LD = @LD@
+LDFLAGS =
+
RANLIB = @RANLIB@
-STRIP = @STRIP@
+
WINDRES = @WINDRES@
-CFLAGS = @CFLAGS@
-LDFLAGS =
-LIBCFLAGS = $(CFLAGS)
-CXXFLAGS = @CXXFLAGS@
-LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
PICFLAG =
# -----------------------------------------------
# Programs producing files for the TARGET machine
# -----------------------------------------------
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that prorgams built for the target machine work.
+TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:$$r/$(TARGET_SUBDIR)/libmudflap/.libs
+
FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
AR_FOR_TARGET=@AR_FOR_TARGET@
-AS_FOR_TARGET=@AS_FOR_TARGET@
-CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
+CONFIGURED_AR_FOR_TARGET=@CONFIGURED_AR_FOR_TARGET@
+USUAL_AR_FOR_TARGET = ` \
+ if [ -f $$r/binutils/ar ] ; then \
+ echo $$r/binutils/ar ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(AR); \
+ else \
+ echo $(CONFIGURED_AR_FOR_TARGET) ; \
+ fi; \
+ fi`
+AS_FOR_TARGET=@AS_FOR_TARGET@
+CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@
+USUAL_AS_FOR_TARGET = ` \
+ if [ -f $$r/gas/as-new ] ; then \
+ echo $$r/gas/as-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=as ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(AS); \
+ else \
+ echo $(CONFIGURED_AS_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+CC_FOR_TARGET = @CC_FOR_TARGET@
+# During gcc bootstrap, if we use some random cc for stage1 then
+# CFLAGS will be just -g. We want to ensure that TARGET libraries
+# (which we know are built with gcc) are built with optimizations so
+# prepend -O2 when setting CFLAGS_FOR_TARGET.
+CFLAGS_FOR_TARGET = -O2 $(CFLAGS)
# If GCC_FOR_TARGET is not overriden on the command line, then this
# variable is passed down to the gcc Makefile, where it is used to
# build libgcc2.a. We define it here so that it can itself be
# overridden on the command line.
-GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET)
+GCC_FOR_TARGET=@GCC_FOR_TARGET@
+USUAL_GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) $$r/gcc/xgcc -B$$r/gcc/ $(FLAGS_FOR_TARGET)
+LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+
+CXX_FOR_TARGET = @CXX_FOR_TARGET@
+RAW_CXX_FOR_TARGET = @RAW_CXX_FOR_TARGET@
+CXX_FOR_TARGET_FOR_RECURSIVE_MAKE = @CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@
+RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE = @RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS)
+LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+
DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
+CONFIGURED_DLLTOOL_FOR_TARGET=@CONFIGURED_DLLTOOL_FOR_TARGET@
+USUAL_DLLTOOL_FOR_TARGET = ` \
+ if [ -f $$r/binutils/dlltool ] ; then \
+ echo $$r/binutils/dlltool ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(DLLTOOL); \
+ else \
+ echo $(CONFIGURED_DLLTOOL_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+GCJ_FOR_TARGET = @GCJ_FOR_TARGET@
+GFORTRAN_FOR_TARGET = @GFORTRAN_FOR_TARGET@
+
LD_FOR_TARGET=@LD_FOR_TARGET@
+CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@
+USUAL_LD_FOR_TARGET = ` \
+ if [ -f $$r/ld/ld-new ] ; then \
+ echo $$r/ld/ld-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=ld ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(LD); \
+ else \
+ echo $(CONFIGURED_LD_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+LDFLAGS_FOR_TARGET =
-LIPO_FOR_TARGET=@LIPO_FOR_TARGET@
NM_FOR_TARGET=@NM_FOR_TARGET@
-OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
+CONFIGURED_NM_FOR_TARGET=@CONFIGURED_NM_FOR_TARGET@
+USUAL_NM_FOR_TARGET = ` \
+ if [ -f $$r/binutils/nm-new ] ; then \
+ echo $$r/binutils/nm-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=nm ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(NM); \
+ else \
+ echo $(CONFIGURED_NM_FOR_TARGET) ; \
+ fi; \
+ fi`
+
RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
-STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
-WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
+CONFIGURED_RANLIB_FOR_TARGET=@CONFIGURED_RANLIB_FOR_TARGET@
+USUAL_RANLIB_FOR_TARGET = ` \
+ if [ -f $$r/binutils/ranlib ] ; then \
+ echo $$r/binutils/ranlib ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ if [ x'$(RANLIB)' != x ]; then \
+ echo $(RANLIB); \
+ else \
+ echo ranlib; \
+ fi; \
+ else \
+ echo $(CONFIGURED_RANLIB_FOR_TARGET) ; \
+ fi; \
+ fi`
-COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
-COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
-COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
+WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
+CONFIGURED_WINDRES_FOR_TARGET=@CONFIGURED_WINDRES_FOR_TARGET@
+USUAL_WINDRES_FOR_TARGET = ` \
+ if [ -f $$r/binutils/windres ] ; then \
+ echo $$r/binutils/windres ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(WINDRES); \
+ else \
+ echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
+ fi; \
+ fi`
-# During gcc bootstrap, if we use some random cc for stage1 then
-# CFLAGS will be just -g. We want to ensure that TARGET libraries
-# (which we know are built with gcc) are built with optimizations so
-# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
-LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-LDFLAGS_FOR_TARGET =
PICFLAG_FOR_TARGET =
# ------------------------------------
@@ -340,7 +489,7 @@ PICFLAG_FOR_TARGET =
# The first rule in the file had better be this one. Don't put any above it.
# This lives here to allow makefile fragments to contain dependencies.
-all:
+@default_target@:
#### host and target specific makefile fragments come in here.
@target_makefile_frag@
@@ -349,53 +498,6 @@ all:
@host_makefile_frag@
###
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that prorgams built for the target machine work.
-TARGET_LIB_PATH = $(TARGET_LIB_PATH_libstdc++-v3)$(TARGET_LIB_PATH_libmudflap)$(TARGET_LIB_PATH_libssp)$(TARGET_LIB_PATH_libgcc-math)$(TARGET_LIB_PATH_libgomp)$(HOST_LIB_PATH_gcc)
-
-@if target-libstdc++-v3
-TARGET_LIB_PATH_libstdc++-v3 = $$r/$(TARGET_SUBDIR)/libstdc++-v3/.libs:
-@endif target-libstdc++-v3
-
-@if target-libmudflap
-TARGET_LIB_PATH_libmudflap = $$r/$(TARGET_SUBDIR)/libmudflap/.libs:
-@endif target-libmudflap
-
-@if target-libssp
-TARGET_LIB_PATH_libssp = $$r/$(TARGET_SUBDIR)/libssp/.libs:
-@endif target-libssp
-
-@if target-libgcc-math
-TARGET_LIB_PATH_libgcc-math = $$r/$(TARGET_SUBDIR)/libgcc-math/.libs:
-@endif target-libgcc-math
-
-@if target-libgomp
-TARGET_LIB_PATH_libgomp = $$r/$(TARGET_SUBDIR)/libgomp/.libs:
-@endif target-libgomp
-
-
-
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that programs built for the host machine work.
-HOST_LIB_PATH = $(HOST_LIB_PATH_bfd)$(HOST_LIB_PATH_opcodes)
-
-# Define HOST_LIB_PATH_gcc here, for the sake of TARGET_LIB_PATH, ouch
-@if gcc
-HOST_LIB_PATH_gcc = $$r/$(HOST_SUBDIR)/gcc:$$r/$(HOST_SUBDIR)/prev-gcc:
-@endif gcc
-
-
-@if bfd
-HOST_LIB_PATH_bfd = \
- $$r/$(HOST_SUBDIR)/bfd/.:$$r/$(HOST_SUBDIR)/prev-bfd/.:
-@endif bfd
-
-@if opcodes
-HOST_LIB_PATH_opcodes = \
- $$r/$(HOST_SUBDIR)/opcodes/.:$$r/$(HOST_SUBDIR)/prev-opcodes/.:
-@endif opcodes
-
-
# Flags to pass down to all sub-makes.
BASE_FLAGS_TO_PASS = \
"DESTDIR=$(DESTDIR)" \
@@ -409,6 +511,8 @@ BASE_FLAGS_TO_PASS = \
"libdir=$(libdir)" \
"libexecdir=$(libexecdir)" \
"lispdir=$(lispdir)" \
+ "libstdcxx_incdir=$(libstdcxx_incdir)" \
+ "libsubdir=$(libsubdir)" \
"localstatedir=$(localstatedir)" \
"mandir=$(mandir)" \
"oldincludedir=$(oldincludedir)" \
@@ -418,10 +522,12 @@ BASE_FLAGS_TO_PASS = \
"sysconfdir=$(sysconfdir)" \
"tooldir=$(tooldir)" \
"build_tooldir=$(build_tooldir)" \
+ "gxx_include_dir=$(gxx_include_dir)" \
+ "gcc_version=$(gcc_version)" \
+ "gcc_version_trigger=$(gcc_version_trigger)" \
"target_alias=$(target_alias)" \
"BISON=$(BISON)" \
"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
- "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
"CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
"EXPECT=$(EXPECT)" \
"FLEX=$(FLEX)" \
@@ -436,45 +542,40 @@ BASE_FLAGS_TO_PASS = \
"RUNTESTFLAGS=$(RUNTESTFLAGS)" \
"SHELL=$(SHELL)" \
"YACC=$(YACC)" \
- "`echo 'ADAFLAGS=$(ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"AR_FLAGS=$(AR_FLAGS)" \
- "`echo 'BOOT_ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "BOOT_CFLAGS=$(BOOT_CFLAGS)" \
- "BOOT_LDFLAGS=$(BOOT_LDFLAGS)" \
"CFLAGS=$(CFLAGS)" \
"CXXFLAGS=$(CXXFLAGS)" \
"LDFLAGS=$(LDFLAGS)" \
"LIBCFLAGS=$(LIBCFLAGS)" \
"LIBCXXFLAGS=$(LIBCXXFLAGS)" \
- "STAGE1_CFLAGS=$(STAGE1_CFLAGS)" \
- "STAGE1_LANGUAGES=$(STAGE1_LANGUAGES)" \
"AR_FOR_TARGET=$(AR_FOR_TARGET)" \
"AS_FOR_TARGET=$(AS_FOR_TARGET)" \
"CC_FOR_TARGET=$(CC_FOR_TARGET)" \
"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
- "CPPFLAGS_FOR_TARGET=$(CPPFLAGS_FOR_TARGET)" \
"CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
"CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \
"DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \
"GCJ_FOR_TARGET=$(GCJ_FOR_TARGET)" \
"GFORTRAN_FOR_TARGET=$(GFORTRAN_FOR_TARGET)" \
"LD_FOR_TARGET=$(LD_FOR_TARGET)" \
- "LIPO_FOR_TARGET=$(LIPO_FOR_TARGET)" \
- "LDFLAGS_FOR_TARGET=$(LDFLAGS_FOR_TARGET)" \
"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
"LIBCXXFLAGS_FOR_TARGET=$(LIBCXXFLAGS_FOR_TARGET)" \
"NM_FOR_TARGET=$(NM_FOR_TARGET)" \
- "OBJDUMP_FOR_TARGET=$(OBJDUMP_FOR_TARGET)" \
"RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
- "STRIP_FOR_TARGET=$(STRIP_FOR_TARGET)" \
"WINDRES_FOR_TARGET=$(WINDRES_FOR_TARGET)" \
- "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "LEAN=$(LEAN)" \
"CONFIG_SHELL=$(SHELL)" \
"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)"
-# We leave this in just in case, but it is not needed anymore.
-RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS)
+# For any flags above that may contain shell code that varies from one
+# target library to another. When doing recursive invocations of the
+# top-level Makefile, we don't want the outer make to evaluate them,
+# so we pass these variables down unchanged. They must not contain
+# single nor double quotes.
+RECURSE_FLAGS = \
+ CXX_FOR_TARGET='$(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
+ RAW_CXX_FOR_TARGET='$(RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
+
+RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS)
# Flags to pass down to most sub-makes, in which we're building with
# the host environment.
@@ -485,11 +586,8 @@ EXTRA_HOST_FLAGS = \
'CXX=$(CXX)' \
'DLLTOOL=$(DLLTOOL)' \
'LD=$(LD)' \
- 'LIPO=$(LIPO)' \
'NM=$(NM)' \
- 'OBJDUMP=$(OBJDUMP)' \
'RANLIB=$(RANLIB)' \
- 'STRIP=$(STRIP)' \
'WINDRES=$(WINDRES)'
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
@@ -507,23 +605,20 @@ X11_FLAGS_TO_PASS = \
'X11_EXTRA_LIBS=$(X11_EXTRA_LIBS)'
# Flags to pass down to makes which are built with the target environment.
-# The double $ decreases the length of the command line; those variables
-# are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them. The
-# COMPILER_ prefixed variables are not passed down so we expand them here.
+# The double $ decreases the length of the command line; the variables
+# are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.
EXTRA_TARGET_FLAGS = \
'AR=$$(AR_FOR_TARGET)' \
- 'AS=$(COMPILER_AS_FOR_TARGET)' \
+ 'AS=$$(AS_FOR_TARGET)' \
'CC=$$(CC_FOR_TARGET)' \
'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
'CXX=$$(CXX_FOR_TARGET)' \
'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
- 'LD=$(COMPILER_LD_FOR_TARGET)' \
- 'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
+ 'LD=$$(LD_FOR_TARGET)' \
'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
- 'NM=$(COMPILER_NM_FOR_TARGET)' \
- 'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
+ 'NM=$$(NM_FOR_TARGET)' \
'RANLIB=$$(RANLIB_FOR_TARGET)' \
'WINDRES=$$(WINDRES_FOR_TARGET)'
@@ -536,12 +631,19 @@ TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
# The BUILD_* variables are a special case, which are used for the gcc
# cross-building scheme.
EXTRA_GCC_FLAGS = \
+ 'BUILD_PREFIX=$(BUILD_PREFIX)' \
+ 'BUILD_PREFIX_1=$(BUILD_PREFIX_1)' \
"GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
+ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+ "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
+ "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'STAGE1_CFLAGS=$(STAGE1_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'BOOT_CFLAGS=$(BOOT_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'BOOT_ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
@@ -565,7 +667,6 @@ configure-host: \
maybe-configure-fileutils \
maybe-configure-findutils \
maybe-configure-find \
- maybe-configure-fixincludes \
maybe-configure-flex \
maybe-configure-gas \
maybe-configure-gcc \
@@ -581,7 +682,6 @@ configure-host: \
maybe-configure-itcl \
maybe-configure-ld \
maybe-configure-libcpp \
- maybe-configure-libdecnumber \
maybe-configure-libgui \
maybe-configure-libiberty \
maybe-configure-libtool \
@@ -613,14 +713,11 @@ configure-host: \
maybe-configure-guile \
maybe-configure-tk \
maybe-configure-libtermcap \
- maybe-configure-utils \
- maybe-configure-gnattools
+ maybe-configure-utils
.PHONY: configure-target
configure-target: \
maybe-configure-target-libstdc++-v3 \
maybe-configure-target-libmudflap \
- maybe-configure-target-libssp \
- maybe-configure-target-libgcc-math \
maybe-configure-target-newlib \
maybe-configure-target-libgfortran \
maybe-configure-target-libobjc \
@@ -636,153 +733,108 @@ configure-target: \
maybe-configure-target-boehm-gc \
maybe-configure-target-qthreads \
maybe-configure-target-rda \
- maybe-configure-target-libada \
- maybe-configure-target-libgomp
+ maybe-configure-target-libada
# The target built for a native non-bootstrap build.
.PHONY: all
-all:
-@if gcc-bootstrap
- [ -f stage_final ] || echo stage3 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) `cat stage_final`-bubble
-@endif gcc-bootstrap
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if [ -f stage_last ]; then \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target; \
- else \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target; \
- fi
+all: unstage all-host all-target stage
.PHONY: all-build
-
-all-build: maybe-all-build-libiberty
-all-build: maybe-all-build-bison
-all-build: maybe-all-build-byacc
-all-build: maybe-all-build-flex
-all-build: maybe-all-build-m4
-all-build: maybe-all-build-texinfo
-all-build: maybe-all-build-fixincludes
-
+all-build: \
+ maybe-all-build-libiberty \
+ maybe-all-build-bison \
+ maybe-all-build-byacc \
+ maybe-all-build-flex \
+ maybe-all-build-m4 \
+ maybe-all-build-texinfo \
+ maybe-all-build-fixincludes
.PHONY: all-host
-
-all-host: maybe-all-ash
-all-host: maybe-all-autoconf
-all-host: maybe-all-automake
-all-host: maybe-all-bash
-@if bfd-no-bootstrap
-all-host: maybe-all-bfd
-@endif bfd-no-bootstrap
-@if opcodes-no-bootstrap
-all-host: maybe-all-opcodes
-@endif opcodes-no-bootstrap
-@if binutils-no-bootstrap
-all-host: maybe-all-binutils
-@endif binutils-no-bootstrap
-all-host: maybe-all-bison
-all-host: maybe-all-byacc
-all-host: maybe-all-bzip2
-all-host: maybe-all-dejagnu
-all-host: maybe-all-diff
-all-host: maybe-all-dosutils
-all-host: maybe-all-etc
-all-host: maybe-all-fastjar
-all-host: maybe-all-fileutils
-all-host: maybe-all-findutils
-all-host: maybe-all-find
-all-host: maybe-all-fixincludes
-all-host: maybe-all-flex
-@if gas-no-bootstrap
-all-host: maybe-all-gas
-@endif gas-no-bootstrap
-@if gcc-no-bootstrap
-all-host: maybe-all-gcc
-@endif gcc-no-bootstrap
-all-host: maybe-all-gawk
-all-host: maybe-all-gettext
-all-host: maybe-all-gnuserv
-all-host: maybe-all-gprof
-all-host: maybe-all-gzip
-all-host: maybe-all-hello
-all-host: maybe-all-indent
-@if intl-no-bootstrap
-all-host: maybe-all-intl
-@endif intl-no-bootstrap
-all-host: maybe-all-tcl
-all-host: maybe-all-itcl
-@if ld-no-bootstrap
-all-host: maybe-all-ld
-@endif ld-no-bootstrap
-@if libcpp-no-bootstrap
-all-host: maybe-all-libcpp
-@endif libcpp-no-bootstrap
-@if libdecnumber-no-bootstrap
-all-host: maybe-all-libdecnumber
-@endif libdecnumber-no-bootstrap
-all-host: maybe-all-libgui
-@if libiberty-no-bootstrap
-all-host: maybe-all-libiberty
-@endif libiberty-no-bootstrap
-all-host: maybe-all-libtool
-all-host: maybe-all-m4
-all-host: maybe-all-make
-all-host: maybe-all-mmalloc
-all-host: maybe-all-patch
-all-host: maybe-all-perl
-all-host: maybe-all-prms
-all-host: maybe-all-rcs
-all-host: maybe-all-readline
-all-host: maybe-all-release
-all-host: maybe-all-recode
-all-host: maybe-all-sed
-all-host: maybe-all-send-pr
-all-host: maybe-all-shellutils
-all-host: maybe-all-sid
-all-host: maybe-all-sim
-all-host: maybe-all-tar
-all-host: maybe-all-texinfo
-all-host: maybe-all-textutils
-all-host: maybe-all-time
-all-host: maybe-all-uudecode
-all-host: maybe-all-wdiff
-all-host: maybe-all-zip
-@if zlib-no-bootstrap
-all-host: maybe-all-zlib
-@endif zlib-no-bootstrap
-all-host: maybe-all-gdb
-all-host: maybe-all-expect
-all-host: maybe-all-guile
-all-host: maybe-all-tk
-all-host: maybe-all-libtermcap
-all-host: maybe-all-utils
-all-host: maybe-all-gnattools
-
+all-host: \
+ maybe-all-ash \
+ maybe-all-autoconf \
+ maybe-all-automake \
+ maybe-all-bash \
+ maybe-all-bfd \
+ maybe-all-opcodes \
+ maybe-all-binutils \
+ maybe-all-bison \
+ maybe-all-byacc \
+ maybe-all-bzip2 \
+ maybe-all-dejagnu \
+ maybe-all-diff \
+ maybe-all-dosutils \
+ maybe-all-etc \
+ maybe-all-fastjar \
+ maybe-all-fileutils \
+ maybe-all-findutils \
+ maybe-all-find \
+ maybe-all-flex \
+ maybe-all-gas \
+ maybe-all-gcc \
+ maybe-all-gawk \
+ maybe-all-gettext \
+ maybe-all-gnuserv \
+ maybe-all-gprof \
+ maybe-all-gzip \
+ maybe-all-hello \
+ maybe-all-indent \
+ maybe-all-intl \
+ maybe-all-tcl \
+ maybe-all-itcl \
+ maybe-all-ld \
+ maybe-all-libcpp \
+ maybe-all-libgui \
+ maybe-all-libiberty \
+ maybe-all-libtool \
+ maybe-all-m4 \
+ maybe-all-make \
+ maybe-all-mmalloc \
+ maybe-all-patch \
+ maybe-all-perl \
+ maybe-all-prms \
+ maybe-all-rcs \
+ maybe-all-readline \
+ maybe-all-release \
+ maybe-all-recode \
+ maybe-all-sed \
+ maybe-all-send-pr \
+ maybe-all-shellutils \
+ maybe-all-sid \
+ maybe-all-sim \
+ maybe-all-tar \
+ maybe-all-texinfo \
+ maybe-all-textutils \
+ maybe-all-time \
+ maybe-all-uudecode \
+ maybe-all-wdiff \
+ maybe-all-zip \
+ maybe-all-zlib \
+ maybe-all-gdb \
+ maybe-all-expect \
+ maybe-all-guile \
+ maybe-all-tk \
+ maybe-all-libtermcap \
+ maybe-all-utils
.PHONY: all-target
-
-all-target: maybe-all-target-libstdc++-v3
-all-target: maybe-all-target-libmudflap
-all-target: maybe-all-target-libssp
-all-target: maybe-all-target-libgcc-math
-all-target: maybe-all-target-newlib
-all-target: maybe-all-target-libgfortran
-all-target: maybe-all-target-libobjc
-all-target: maybe-all-target-libtermcap
-all-target: maybe-all-target-winsup
-all-target: maybe-all-target-libgloss
-all-target: maybe-all-target-libiberty
-all-target: maybe-all-target-gperf
-all-target: maybe-all-target-examples
-all-target: maybe-all-target-libffi
-all-target: maybe-all-target-libjava
-all-target: maybe-all-target-zlib
-all-target: maybe-all-target-boehm-gc
-all-target: maybe-all-target-qthreads
-all-target: maybe-all-target-rda
-all-target: maybe-all-target-libada
-all-target: maybe-all-target-libgomp
+all-target: \
+ maybe-all-target-libstdc++-v3 \
+ maybe-all-target-libmudflap \
+ maybe-all-target-newlib \
+ maybe-all-target-libgfortran \
+ maybe-all-target-libobjc \
+ maybe-all-target-libtermcap \
+ maybe-all-target-winsup \
+ maybe-all-target-libgloss \
+ maybe-all-target-libiberty \
+ maybe-all-target-gperf \
+ maybe-all-target-examples \
+ maybe-all-target-libffi \
+ maybe-all-target-libjava \
+ maybe-all-target-zlib \
+ maybe-all-target-boehm-gc \
+ maybe-all-target-qthreads \
+ maybe-all-target-rda \
+ maybe-all-target-libada
# Do a target for all the subdirectories. A ``make do-X'' will do a
# ``make X'' in all subdirectories (because, in general, there is a
@@ -790,1055 +842,842 @@ all-target: maybe-all-target-libgomp
# but it may do additional work as well).
.PHONY: do-info
-do-info:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) info-host \
- info-target
-
+do-info: unstage info-host info-target stage
.PHONY: info-host
-
-info-host: maybe-info-ash
-info-host: maybe-info-autoconf
-info-host: maybe-info-automake
-info-host: maybe-info-bash
-info-host: maybe-info-bfd
-info-host: maybe-info-opcodes
-info-host: maybe-info-binutils
-info-host: maybe-info-bison
-info-host: maybe-info-byacc
-info-host: maybe-info-bzip2
-info-host: maybe-info-dejagnu
-info-host: maybe-info-diff
-info-host: maybe-info-dosutils
-info-host: maybe-info-etc
-info-host: maybe-info-fastjar
-info-host: maybe-info-fileutils
-info-host: maybe-info-findutils
-info-host: maybe-info-find
-info-host: maybe-info-fixincludes
-info-host: maybe-info-flex
-info-host: maybe-info-gas
-info-host: maybe-info-gcc
-info-host: maybe-info-gawk
-info-host: maybe-info-gettext
-info-host: maybe-info-gnuserv
-info-host: maybe-info-gprof
-info-host: maybe-info-gzip
-info-host: maybe-info-hello
-info-host: maybe-info-indent
-info-host: maybe-info-intl
-info-host: maybe-info-tcl
-info-host: maybe-info-itcl
-info-host: maybe-info-ld
-info-host: maybe-info-libcpp
-info-host: maybe-info-libdecnumber
-info-host: maybe-info-libgui
-info-host: maybe-info-libiberty
-info-host: maybe-info-libtool
-info-host: maybe-info-m4
-info-host: maybe-info-make
-info-host: maybe-info-mmalloc
-info-host: maybe-info-patch
-info-host: maybe-info-perl
-info-host: maybe-info-prms
-info-host: maybe-info-rcs
-info-host: maybe-info-readline
-info-host: maybe-info-release
-info-host: maybe-info-recode
-info-host: maybe-info-sed
-info-host: maybe-info-send-pr
-info-host: maybe-info-shellutils
-info-host: maybe-info-sid
-info-host: maybe-info-sim
-info-host: maybe-info-tar
-info-host: maybe-info-texinfo
-info-host: maybe-info-textutils
-info-host: maybe-info-time
-info-host: maybe-info-uudecode
-info-host: maybe-info-wdiff
-info-host: maybe-info-zip
-info-host: maybe-info-zlib
-info-host: maybe-info-gdb
-info-host: maybe-info-expect
-info-host: maybe-info-guile
-info-host: maybe-info-tk
-info-host: maybe-info-libtermcap
-info-host: maybe-info-utils
-info-host: maybe-info-gnattools
+info-host: \
+ maybe-info-ash \
+ maybe-info-autoconf \
+ maybe-info-automake \
+ maybe-info-bash \
+ maybe-info-bfd \
+ maybe-info-opcodes \
+ maybe-info-binutils \
+ maybe-info-bison \
+ maybe-info-byacc \
+ maybe-info-bzip2 \
+ maybe-info-dejagnu \
+ maybe-info-diff \
+ maybe-info-dosutils \
+ maybe-info-etc \
+ maybe-info-fastjar \
+ maybe-info-fileutils \
+ maybe-info-findutils \
+ maybe-info-find \
+ maybe-info-flex \
+ maybe-info-gas \
+ maybe-info-gcc \
+ maybe-info-gawk \
+ maybe-info-gettext \
+ maybe-info-gnuserv \
+ maybe-info-gprof \
+ maybe-info-gzip \
+ maybe-info-hello \
+ maybe-info-indent \
+ maybe-info-intl \
+ maybe-info-tcl \
+ maybe-info-itcl \
+ maybe-info-ld \
+ maybe-info-libcpp \
+ maybe-info-libgui \
+ maybe-info-libiberty \
+ maybe-info-libtool \
+ maybe-info-m4 \
+ maybe-info-make \
+ maybe-info-mmalloc \
+ maybe-info-patch \
+ maybe-info-perl \
+ maybe-info-prms \
+ maybe-info-rcs \
+ maybe-info-readline \
+ maybe-info-release \
+ maybe-info-recode \
+ maybe-info-sed \
+ maybe-info-send-pr \
+ maybe-info-shellutils \
+ maybe-info-sid \
+ maybe-info-sim \
+ maybe-info-tar \
+ maybe-info-texinfo \
+ maybe-info-textutils \
+ maybe-info-time \
+ maybe-info-uudecode \
+ maybe-info-wdiff \
+ maybe-info-zip \
+ maybe-info-zlib \
+ maybe-info-gdb \
+ maybe-info-expect \
+ maybe-info-guile \
+ maybe-info-tk \
+ maybe-info-libtermcap \
+ maybe-info-utils
.PHONY: info-target
-
-info-target: maybe-info-target-libstdc++-v3
-info-target: maybe-info-target-libmudflap
-info-target: maybe-info-target-libssp
-info-target: maybe-info-target-libgcc-math
-info-target: maybe-info-target-newlib
-info-target: maybe-info-target-libgfortran
-info-target: maybe-info-target-libobjc
-info-target: maybe-info-target-libtermcap
-info-target: maybe-info-target-winsup
-info-target: maybe-info-target-libgloss
-info-target: maybe-info-target-libiberty
-info-target: maybe-info-target-gperf
-info-target: maybe-info-target-examples
-info-target: maybe-info-target-libffi
-info-target: maybe-info-target-libjava
-info-target: maybe-info-target-zlib
-info-target: maybe-info-target-boehm-gc
-info-target: maybe-info-target-qthreads
-info-target: maybe-info-target-rda
-info-target: maybe-info-target-libada
-info-target: maybe-info-target-libgomp
+info-target: \
+ maybe-info-target-libstdc++-v3 \
+ maybe-info-target-libmudflap \
+ maybe-info-target-newlib \
+ maybe-info-target-libgfortran \
+ maybe-info-target-libobjc \
+ maybe-info-target-libtermcap \
+ maybe-info-target-winsup \
+ maybe-info-target-libgloss \
+ maybe-info-target-libiberty \
+ maybe-info-target-gperf \
+ maybe-info-target-examples \
+ maybe-info-target-libffi \
+ maybe-info-target-libjava \
+ maybe-info-target-zlib \
+ maybe-info-target-boehm-gc \
+ maybe-info-target-qthreads \
+ maybe-info-target-rda \
+ maybe-info-target-libada
.PHONY: do-dvi
-do-dvi:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) dvi-host \
- dvi-target
-
+do-dvi: unstage dvi-host dvi-target stage
.PHONY: dvi-host
-
-dvi-host: maybe-dvi-ash
-dvi-host: maybe-dvi-autoconf
-dvi-host: maybe-dvi-automake
-dvi-host: maybe-dvi-bash
-dvi-host: maybe-dvi-bfd
-dvi-host: maybe-dvi-opcodes
-dvi-host: maybe-dvi-binutils
-dvi-host: maybe-dvi-bison
-dvi-host: maybe-dvi-byacc
-dvi-host: maybe-dvi-bzip2
-dvi-host: maybe-dvi-dejagnu
-dvi-host: maybe-dvi-diff
-dvi-host: maybe-dvi-dosutils
-dvi-host: maybe-dvi-etc
-dvi-host: maybe-dvi-fastjar
-dvi-host: maybe-dvi-fileutils
-dvi-host: maybe-dvi-findutils
-dvi-host: maybe-dvi-find
-dvi-host: maybe-dvi-fixincludes
-dvi-host: maybe-dvi-flex
-dvi-host: maybe-dvi-gas
-dvi-host: maybe-dvi-gcc
-dvi-host: maybe-dvi-gawk
-dvi-host: maybe-dvi-gettext
-dvi-host: maybe-dvi-gnuserv
-dvi-host: maybe-dvi-gprof
-dvi-host: maybe-dvi-gzip
-dvi-host: maybe-dvi-hello
-dvi-host: maybe-dvi-indent
-dvi-host: maybe-dvi-intl
-dvi-host: maybe-dvi-tcl
-dvi-host: maybe-dvi-itcl
-dvi-host: maybe-dvi-ld
-dvi-host: maybe-dvi-libcpp
-dvi-host: maybe-dvi-libdecnumber
-dvi-host: maybe-dvi-libgui
-dvi-host: maybe-dvi-libiberty
-dvi-host: maybe-dvi-libtool
-dvi-host: maybe-dvi-m4
-dvi-host: maybe-dvi-make
-dvi-host: maybe-dvi-mmalloc
-dvi-host: maybe-dvi-patch
-dvi-host: maybe-dvi-perl
-dvi-host: maybe-dvi-prms
-dvi-host: maybe-dvi-rcs
-dvi-host: maybe-dvi-readline
-dvi-host: maybe-dvi-release
-dvi-host: maybe-dvi-recode
-dvi-host: maybe-dvi-sed
-dvi-host: maybe-dvi-send-pr
-dvi-host: maybe-dvi-shellutils
-dvi-host: maybe-dvi-sid
-dvi-host: maybe-dvi-sim
-dvi-host: maybe-dvi-tar
-dvi-host: maybe-dvi-texinfo
-dvi-host: maybe-dvi-textutils
-dvi-host: maybe-dvi-time
-dvi-host: maybe-dvi-uudecode
-dvi-host: maybe-dvi-wdiff
-dvi-host: maybe-dvi-zip
-dvi-host: maybe-dvi-zlib
-dvi-host: maybe-dvi-gdb
-dvi-host: maybe-dvi-expect
-dvi-host: maybe-dvi-guile
-dvi-host: maybe-dvi-tk
-dvi-host: maybe-dvi-libtermcap
-dvi-host: maybe-dvi-utils
-dvi-host: maybe-dvi-gnattools
+dvi-host: \
+ maybe-dvi-ash \
+ maybe-dvi-autoconf \
+ maybe-dvi-automake \
+ maybe-dvi-bash \
+ maybe-dvi-bfd \
+ maybe-dvi-opcodes \
+ maybe-dvi-binutils \
+ maybe-dvi-bison \
+ maybe-dvi-byacc \
+ maybe-dvi-bzip2 \
+ maybe-dvi-dejagnu \
+ maybe-dvi-diff \
+ maybe-dvi-dosutils \
+ maybe-dvi-etc \
+ maybe-dvi-fastjar \
+ maybe-dvi-fileutils \
+ maybe-dvi-findutils \
+ maybe-dvi-find \
+ maybe-dvi-flex \
+ maybe-dvi-gas \
+ maybe-dvi-gcc \
+ maybe-dvi-gawk \
+ maybe-dvi-gettext \
+ maybe-dvi-gnuserv \
+ maybe-dvi-gprof \
+ maybe-dvi-gzip \
+ maybe-dvi-hello \
+ maybe-dvi-indent \
+ maybe-dvi-intl \
+ maybe-dvi-tcl \
+ maybe-dvi-itcl \
+ maybe-dvi-ld \
+ maybe-dvi-libcpp \
+ maybe-dvi-libgui \
+ maybe-dvi-libiberty \
+ maybe-dvi-libtool \
+ maybe-dvi-m4 \
+ maybe-dvi-make \
+ maybe-dvi-mmalloc \
+ maybe-dvi-patch \
+ maybe-dvi-perl \
+ maybe-dvi-prms \
+ maybe-dvi-rcs \
+ maybe-dvi-readline \
+ maybe-dvi-release \
+ maybe-dvi-recode \
+ maybe-dvi-sed \
+ maybe-dvi-send-pr \
+ maybe-dvi-shellutils \
+ maybe-dvi-sid \
+ maybe-dvi-sim \
+ maybe-dvi-tar \
+ maybe-dvi-texinfo \
+ maybe-dvi-textutils \
+ maybe-dvi-time \
+ maybe-dvi-uudecode \
+ maybe-dvi-wdiff \
+ maybe-dvi-zip \
+ maybe-dvi-zlib \
+ maybe-dvi-gdb \
+ maybe-dvi-expect \
+ maybe-dvi-guile \
+ maybe-dvi-tk \
+ maybe-dvi-libtermcap \
+ maybe-dvi-utils
.PHONY: dvi-target
-
-dvi-target: maybe-dvi-target-libstdc++-v3
-dvi-target: maybe-dvi-target-libmudflap
-dvi-target: maybe-dvi-target-libssp
-dvi-target: maybe-dvi-target-libgcc-math
-dvi-target: maybe-dvi-target-newlib
-dvi-target: maybe-dvi-target-libgfortran
-dvi-target: maybe-dvi-target-libobjc
-dvi-target: maybe-dvi-target-libtermcap
-dvi-target: maybe-dvi-target-winsup
-dvi-target: maybe-dvi-target-libgloss
-dvi-target: maybe-dvi-target-libiberty
-dvi-target: maybe-dvi-target-gperf
-dvi-target: maybe-dvi-target-examples
-dvi-target: maybe-dvi-target-libffi
-dvi-target: maybe-dvi-target-libjava
-dvi-target: maybe-dvi-target-zlib
-dvi-target: maybe-dvi-target-boehm-gc
-dvi-target: maybe-dvi-target-qthreads
-dvi-target: maybe-dvi-target-rda
-dvi-target: maybe-dvi-target-libada
-dvi-target: maybe-dvi-target-libgomp
-
-.PHONY: do-html
-do-html:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) html-host \
- html-target
-
-
-.PHONY: html-host
-
-html-host: maybe-html-ash
-html-host: maybe-html-autoconf
-html-host: maybe-html-automake
-html-host: maybe-html-bash
-html-host: maybe-html-bfd
-html-host: maybe-html-opcodes
-html-host: maybe-html-binutils
-html-host: maybe-html-bison
-html-host: maybe-html-byacc
-html-host: maybe-html-bzip2
-html-host: maybe-html-dejagnu
-html-host: maybe-html-diff
-html-host: maybe-html-dosutils
-html-host: maybe-html-etc
-html-host: maybe-html-fastjar
-html-host: maybe-html-fileutils
-html-host: maybe-html-findutils
-html-host: maybe-html-find
-html-host: maybe-html-fixincludes
-html-host: maybe-html-flex
-html-host: maybe-html-gas
-html-host: maybe-html-gcc
-html-host: maybe-html-gawk
-html-host: maybe-html-gettext
-html-host: maybe-html-gnuserv
-html-host: maybe-html-gprof
-html-host: maybe-html-gzip
-html-host: maybe-html-hello
-html-host: maybe-html-indent
-html-host: maybe-html-intl
-html-host: maybe-html-tcl
-html-host: maybe-html-itcl
-html-host: maybe-html-ld
-html-host: maybe-html-libcpp
-html-host: maybe-html-libdecnumber
-html-host: maybe-html-libgui
-html-host: maybe-html-libiberty
-html-host: maybe-html-libtool
-html-host: maybe-html-m4
-html-host: maybe-html-make
-html-host: maybe-html-mmalloc
-html-host: maybe-html-patch
-html-host: maybe-html-perl
-html-host: maybe-html-prms
-html-host: maybe-html-rcs
-html-host: maybe-html-readline
-html-host: maybe-html-release
-html-host: maybe-html-recode
-html-host: maybe-html-sed
-html-host: maybe-html-send-pr
-html-host: maybe-html-shellutils
-html-host: maybe-html-sid
-html-host: maybe-html-sim
-html-host: maybe-html-tar
-html-host: maybe-html-texinfo
-html-host: maybe-html-textutils
-html-host: maybe-html-time
-html-host: maybe-html-uudecode
-html-host: maybe-html-wdiff
-html-host: maybe-html-zip
-html-host: maybe-html-zlib
-html-host: maybe-html-gdb
-html-host: maybe-html-expect
-html-host: maybe-html-guile
-html-host: maybe-html-tk
-html-host: maybe-html-libtermcap
-html-host: maybe-html-utils
-html-host: maybe-html-gnattools
-
-.PHONY: html-target
-
-html-target: maybe-html-target-libstdc++-v3
-html-target: maybe-html-target-libmudflap
-html-target: maybe-html-target-libssp
-html-target: maybe-html-target-libgcc-math
-html-target: maybe-html-target-newlib
-html-target: maybe-html-target-libgfortran
-html-target: maybe-html-target-libobjc
-html-target: maybe-html-target-libtermcap
-html-target: maybe-html-target-winsup
-html-target: maybe-html-target-libgloss
-html-target: maybe-html-target-libiberty
-html-target: maybe-html-target-gperf
-html-target: maybe-html-target-examples
-html-target: maybe-html-target-libffi
-html-target: maybe-html-target-libjava
-html-target: maybe-html-target-zlib
-html-target: maybe-html-target-boehm-gc
-html-target: maybe-html-target-qthreads
-html-target: maybe-html-target-rda
-html-target: maybe-html-target-libada
-html-target: maybe-html-target-libgomp
+dvi-target: \
+ maybe-dvi-target-libstdc++-v3 \
+ maybe-dvi-target-libmudflap \
+ maybe-dvi-target-newlib \
+ maybe-dvi-target-libgfortran \
+ maybe-dvi-target-libobjc \
+ maybe-dvi-target-libtermcap \
+ maybe-dvi-target-winsup \
+ maybe-dvi-target-libgloss \
+ maybe-dvi-target-libiberty \
+ maybe-dvi-target-gperf \
+ maybe-dvi-target-examples \
+ maybe-dvi-target-libffi \
+ maybe-dvi-target-libjava \
+ maybe-dvi-target-zlib \
+ maybe-dvi-target-boehm-gc \
+ maybe-dvi-target-qthreads \
+ maybe-dvi-target-rda \
+ maybe-dvi-target-libada
.PHONY: do-TAGS
-do-TAGS:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) TAGS-host \
- TAGS-target
-
+do-TAGS: unstage TAGS-host TAGS-target stage
.PHONY: TAGS-host
-
-TAGS-host: maybe-TAGS-ash
-TAGS-host: maybe-TAGS-autoconf
-TAGS-host: maybe-TAGS-automake
-TAGS-host: maybe-TAGS-bash
-TAGS-host: maybe-TAGS-bfd
-TAGS-host: maybe-TAGS-opcodes
-TAGS-host: maybe-TAGS-binutils
-TAGS-host: maybe-TAGS-bison
-TAGS-host: maybe-TAGS-byacc
-TAGS-host: maybe-TAGS-bzip2
-TAGS-host: maybe-TAGS-dejagnu
-TAGS-host: maybe-TAGS-diff
-TAGS-host: maybe-TAGS-dosutils
-TAGS-host: maybe-TAGS-etc
-TAGS-host: maybe-TAGS-fastjar
-TAGS-host: maybe-TAGS-fileutils
-TAGS-host: maybe-TAGS-findutils
-TAGS-host: maybe-TAGS-find
-TAGS-host: maybe-TAGS-fixincludes
-TAGS-host: maybe-TAGS-flex
-TAGS-host: maybe-TAGS-gas
-TAGS-host: maybe-TAGS-gcc
-TAGS-host: maybe-TAGS-gawk
-TAGS-host: maybe-TAGS-gettext
-TAGS-host: maybe-TAGS-gnuserv
-TAGS-host: maybe-TAGS-gprof
-TAGS-host: maybe-TAGS-gzip
-TAGS-host: maybe-TAGS-hello
-TAGS-host: maybe-TAGS-indent
-TAGS-host: maybe-TAGS-intl
-TAGS-host: maybe-TAGS-tcl
-TAGS-host: maybe-TAGS-itcl
-TAGS-host: maybe-TAGS-ld
-TAGS-host: maybe-TAGS-libcpp
-TAGS-host: maybe-TAGS-libdecnumber
-TAGS-host: maybe-TAGS-libgui
-TAGS-host: maybe-TAGS-libiberty
-TAGS-host: maybe-TAGS-libtool
-TAGS-host: maybe-TAGS-m4
-TAGS-host: maybe-TAGS-make
-TAGS-host: maybe-TAGS-mmalloc
-TAGS-host: maybe-TAGS-patch
-TAGS-host: maybe-TAGS-perl
-TAGS-host: maybe-TAGS-prms
-TAGS-host: maybe-TAGS-rcs
-TAGS-host: maybe-TAGS-readline
-TAGS-host: maybe-TAGS-release
-TAGS-host: maybe-TAGS-recode
-TAGS-host: maybe-TAGS-sed
-TAGS-host: maybe-TAGS-send-pr
-TAGS-host: maybe-TAGS-shellutils
-TAGS-host: maybe-TAGS-sid
-TAGS-host: maybe-TAGS-sim
-TAGS-host: maybe-TAGS-tar
-TAGS-host: maybe-TAGS-texinfo
-TAGS-host: maybe-TAGS-textutils
-TAGS-host: maybe-TAGS-time
-TAGS-host: maybe-TAGS-uudecode
-TAGS-host: maybe-TAGS-wdiff
-TAGS-host: maybe-TAGS-zip
-TAGS-host: maybe-TAGS-zlib
-TAGS-host: maybe-TAGS-gdb
-TAGS-host: maybe-TAGS-expect
-TAGS-host: maybe-TAGS-guile
-TAGS-host: maybe-TAGS-tk
-TAGS-host: maybe-TAGS-libtermcap
-TAGS-host: maybe-TAGS-utils
-TAGS-host: maybe-TAGS-gnattools
+TAGS-host: \
+ maybe-TAGS-ash \
+ maybe-TAGS-autoconf \
+ maybe-TAGS-automake \
+ maybe-TAGS-bash \
+ maybe-TAGS-bfd \
+ maybe-TAGS-opcodes \
+ maybe-TAGS-binutils \
+ maybe-TAGS-bison \
+ maybe-TAGS-byacc \
+ maybe-TAGS-bzip2 \
+ maybe-TAGS-dejagnu \
+ maybe-TAGS-diff \
+ maybe-TAGS-dosutils \
+ maybe-TAGS-etc \
+ maybe-TAGS-fastjar \
+ maybe-TAGS-fileutils \
+ maybe-TAGS-findutils \
+ maybe-TAGS-find \
+ maybe-TAGS-flex \
+ maybe-TAGS-gas \
+ maybe-TAGS-gcc \
+ maybe-TAGS-gawk \
+ maybe-TAGS-gettext \
+ maybe-TAGS-gnuserv \
+ maybe-TAGS-gprof \
+ maybe-TAGS-gzip \
+ maybe-TAGS-hello \
+ maybe-TAGS-indent \
+ maybe-TAGS-intl \
+ maybe-TAGS-tcl \
+ maybe-TAGS-itcl \
+ maybe-TAGS-ld \
+ maybe-TAGS-libcpp \
+ maybe-TAGS-libgui \
+ maybe-TAGS-libiberty \
+ maybe-TAGS-libtool \
+ maybe-TAGS-m4 \
+ maybe-TAGS-make \
+ maybe-TAGS-mmalloc \
+ maybe-TAGS-patch \
+ maybe-TAGS-perl \
+ maybe-TAGS-prms \
+ maybe-TAGS-rcs \
+ maybe-TAGS-readline \
+ maybe-TAGS-release \
+ maybe-TAGS-recode \
+ maybe-TAGS-sed \
+ maybe-TAGS-send-pr \
+ maybe-TAGS-shellutils \
+ maybe-TAGS-sid \
+ maybe-TAGS-sim \
+ maybe-TAGS-tar \
+ maybe-TAGS-texinfo \
+ maybe-TAGS-textutils \
+ maybe-TAGS-time \
+ maybe-TAGS-uudecode \
+ maybe-TAGS-wdiff \
+ maybe-TAGS-zip \
+ maybe-TAGS-zlib \
+ maybe-TAGS-gdb \
+ maybe-TAGS-expect \
+ maybe-TAGS-guile \
+ maybe-TAGS-tk \
+ maybe-TAGS-libtermcap \
+ maybe-TAGS-utils
.PHONY: TAGS-target
-
-TAGS-target: maybe-TAGS-target-libstdc++-v3
-TAGS-target: maybe-TAGS-target-libmudflap
-TAGS-target: maybe-TAGS-target-libssp
-TAGS-target: maybe-TAGS-target-libgcc-math
-TAGS-target: maybe-TAGS-target-newlib
-TAGS-target: maybe-TAGS-target-libgfortran
-TAGS-target: maybe-TAGS-target-libobjc
-TAGS-target: maybe-TAGS-target-libtermcap
-TAGS-target: maybe-TAGS-target-winsup
-TAGS-target: maybe-TAGS-target-libgloss
-TAGS-target: maybe-TAGS-target-libiberty
-TAGS-target: maybe-TAGS-target-gperf
-TAGS-target: maybe-TAGS-target-examples
-TAGS-target: maybe-TAGS-target-libffi
-TAGS-target: maybe-TAGS-target-libjava
-TAGS-target: maybe-TAGS-target-zlib
-TAGS-target: maybe-TAGS-target-boehm-gc
-TAGS-target: maybe-TAGS-target-qthreads
-TAGS-target: maybe-TAGS-target-rda
-TAGS-target: maybe-TAGS-target-libada
-TAGS-target: maybe-TAGS-target-libgomp
+TAGS-target: \
+ maybe-TAGS-target-libstdc++-v3 \
+ maybe-TAGS-target-libmudflap \
+ maybe-TAGS-target-newlib \
+ maybe-TAGS-target-libgfortran \
+ maybe-TAGS-target-libobjc \
+ maybe-TAGS-target-libtermcap \
+ maybe-TAGS-target-winsup \
+ maybe-TAGS-target-libgloss \
+ maybe-TAGS-target-libiberty \
+ maybe-TAGS-target-gperf \
+ maybe-TAGS-target-examples \
+ maybe-TAGS-target-libffi \
+ maybe-TAGS-target-libjava \
+ maybe-TAGS-target-zlib \
+ maybe-TAGS-target-boehm-gc \
+ maybe-TAGS-target-qthreads \
+ maybe-TAGS-target-rda \
+ maybe-TAGS-target-libada
.PHONY: do-install-info
-do-install-info:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) install-info-host \
- install-info-target
-
+do-install-info: unstage install-info-host install-info-target stage
.PHONY: install-info-host
-
-install-info-host: maybe-install-info-ash
-install-info-host: maybe-install-info-autoconf
-install-info-host: maybe-install-info-automake
-install-info-host: maybe-install-info-bash
-install-info-host: maybe-install-info-bfd
-install-info-host: maybe-install-info-opcodes
-install-info-host: maybe-install-info-binutils
-install-info-host: maybe-install-info-bison
-install-info-host: maybe-install-info-byacc
-install-info-host: maybe-install-info-bzip2
-install-info-host: maybe-install-info-dejagnu
-install-info-host: maybe-install-info-diff
-install-info-host: maybe-install-info-dosutils
-install-info-host: maybe-install-info-etc
-install-info-host: maybe-install-info-fastjar
-install-info-host: maybe-install-info-fileutils
-install-info-host: maybe-install-info-findutils
-install-info-host: maybe-install-info-find
-install-info-host: maybe-install-info-fixincludes
-install-info-host: maybe-install-info-flex
-install-info-host: maybe-install-info-gas
-install-info-host: maybe-install-info-gcc
-install-info-host: maybe-install-info-gawk
-install-info-host: maybe-install-info-gettext
-install-info-host: maybe-install-info-gnuserv
-install-info-host: maybe-install-info-gprof
-install-info-host: maybe-install-info-gzip
-install-info-host: maybe-install-info-hello
-install-info-host: maybe-install-info-indent
-install-info-host: maybe-install-info-intl
-install-info-host: maybe-install-info-tcl
-install-info-host: maybe-install-info-itcl
-install-info-host: maybe-install-info-ld
-install-info-host: maybe-install-info-libcpp
-install-info-host: maybe-install-info-libdecnumber
-install-info-host: maybe-install-info-libgui
-install-info-host: maybe-install-info-libiberty
-install-info-host: maybe-install-info-libtool
-install-info-host: maybe-install-info-m4
-install-info-host: maybe-install-info-make
-install-info-host: maybe-install-info-mmalloc
-install-info-host: maybe-install-info-patch
-install-info-host: maybe-install-info-perl
-install-info-host: maybe-install-info-prms
-install-info-host: maybe-install-info-rcs
-install-info-host: maybe-install-info-readline
-install-info-host: maybe-install-info-release
-install-info-host: maybe-install-info-recode
-install-info-host: maybe-install-info-sed
-install-info-host: maybe-install-info-send-pr
-install-info-host: maybe-install-info-shellutils
-install-info-host: maybe-install-info-sid
-install-info-host: maybe-install-info-sim
-install-info-host: maybe-install-info-tar
-install-info-host: maybe-install-info-texinfo
-install-info-host: maybe-install-info-textutils
-install-info-host: maybe-install-info-time
-install-info-host: maybe-install-info-uudecode
-install-info-host: maybe-install-info-wdiff
-install-info-host: maybe-install-info-zip
-install-info-host: maybe-install-info-zlib
-install-info-host: maybe-install-info-gdb
-install-info-host: maybe-install-info-expect
-install-info-host: maybe-install-info-guile
-install-info-host: maybe-install-info-tk
-install-info-host: maybe-install-info-libtermcap
-install-info-host: maybe-install-info-utils
-install-info-host: maybe-install-info-gnattools
+install-info-host: \
+ maybe-install-info-ash \
+ maybe-install-info-autoconf \
+ maybe-install-info-automake \
+ maybe-install-info-bash \
+ maybe-install-info-bfd \
+ maybe-install-info-opcodes \
+ maybe-install-info-binutils \
+ maybe-install-info-bison \
+ maybe-install-info-byacc \
+ maybe-install-info-bzip2 \
+ maybe-install-info-dejagnu \
+ maybe-install-info-diff \
+ maybe-install-info-dosutils \
+ maybe-install-info-etc \
+ maybe-install-info-fastjar \
+ maybe-install-info-fileutils \
+ maybe-install-info-findutils \
+ maybe-install-info-find \
+ maybe-install-info-flex \
+ maybe-install-info-gas \
+ maybe-install-info-gcc \
+ maybe-install-info-gawk \
+ maybe-install-info-gettext \
+ maybe-install-info-gnuserv \
+ maybe-install-info-gprof \
+ maybe-install-info-gzip \
+ maybe-install-info-hello \
+ maybe-install-info-indent \
+ maybe-install-info-intl \
+ maybe-install-info-tcl \
+ maybe-install-info-itcl \
+ maybe-install-info-ld \
+ maybe-install-info-libcpp \
+ maybe-install-info-libgui \
+ maybe-install-info-libiberty \
+ maybe-install-info-libtool \
+ maybe-install-info-m4 \
+ maybe-install-info-make \
+ maybe-install-info-mmalloc \
+ maybe-install-info-patch \
+ maybe-install-info-perl \
+ maybe-install-info-prms \
+ maybe-install-info-rcs \
+ maybe-install-info-readline \
+ maybe-install-info-release \
+ maybe-install-info-recode \
+ maybe-install-info-sed \
+ maybe-install-info-send-pr \
+ maybe-install-info-shellutils \
+ maybe-install-info-sid \
+ maybe-install-info-sim \
+ maybe-install-info-tar \
+ maybe-install-info-texinfo \
+ maybe-install-info-textutils \
+ maybe-install-info-time \
+ maybe-install-info-uudecode \
+ maybe-install-info-wdiff \
+ maybe-install-info-zip \
+ maybe-install-info-zlib \
+ maybe-install-info-gdb \
+ maybe-install-info-expect \
+ maybe-install-info-guile \
+ maybe-install-info-tk \
+ maybe-install-info-libtermcap \
+ maybe-install-info-utils
.PHONY: install-info-target
-
-install-info-target: maybe-install-info-target-libstdc++-v3
-install-info-target: maybe-install-info-target-libmudflap
-install-info-target: maybe-install-info-target-libssp
-install-info-target: maybe-install-info-target-libgcc-math
-install-info-target: maybe-install-info-target-newlib
-install-info-target: maybe-install-info-target-libgfortran
-install-info-target: maybe-install-info-target-libobjc
-install-info-target: maybe-install-info-target-libtermcap
-install-info-target: maybe-install-info-target-winsup
-install-info-target: maybe-install-info-target-libgloss
-install-info-target: maybe-install-info-target-libiberty
-install-info-target: maybe-install-info-target-gperf
-install-info-target: maybe-install-info-target-examples
-install-info-target: maybe-install-info-target-libffi
-install-info-target: maybe-install-info-target-libjava
-install-info-target: maybe-install-info-target-zlib
-install-info-target: maybe-install-info-target-boehm-gc
-install-info-target: maybe-install-info-target-qthreads
-install-info-target: maybe-install-info-target-rda
-install-info-target: maybe-install-info-target-libada
-install-info-target: maybe-install-info-target-libgomp
+install-info-target: \
+ maybe-install-info-target-libstdc++-v3 \
+ maybe-install-info-target-libmudflap \
+ maybe-install-info-target-newlib \
+ maybe-install-info-target-libgfortran \
+ maybe-install-info-target-libobjc \
+ maybe-install-info-target-libtermcap \
+ maybe-install-info-target-winsup \
+ maybe-install-info-target-libgloss \
+ maybe-install-info-target-libiberty \
+ maybe-install-info-target-gperf \
+ maybe-install-info-target-examples \
+ maybe-install-info-target-libffi \
+ maybe-install-info-target-libjava \
+ maybe-install-info-target-zlib \
+ maybe-install-info-target-boehm-gc \
+ maybe-install-info-target-qthreads \
+ maybe-install-info-target-rda \
+ maybe-install-info-target-libada
.PHONY: do-installcheck
-do-installcheck:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) installcheck-host \
- installcheck-target
-
+do-installcheck: unstage installcheck-host installcheck-target stage
.PHONY: installcheck-host
-
-installcheck-host: maybe-installcheck-ash
-installcheck-host: maybe-installcheck-autoconf
-installcheck-host: maybe-installcheck-automake
-installcheck-host: maybe-installcheck-bash
-installcheck-host: maybe-installcheck-bfd
-installcheck-host: maybe-installcheck-opcodes
-installcheck-host: maybe-installcheck-binutils
-installcheck-host: maybe-installcheck-bison
-installcheck-host: maybe-installcheck-byacc
-installcheck-host: maybe-installcheck-bzip2
-installcheck-host: maybe-installcheck-dejagnu
-installcheck-host: maybe-installcheck-diff
-installcheck-host: maybe-installcheck-dosutils
-installcheck-host: maybe-installcheck-etc
-installcheck-host: maybe-installcheck-fastjar
-installcheck-host: maybe-installcheck-fileutils
-installcheck-host: maybe-installcheck-findutils
-installcheck-host: maybe-installcheck-find
-installcheck-host: maybe-installcheck-fixincludes
-installcheck-host: maybe-installcheck-flex
-installcheck-host: maybe-installcheck-gas
-installcheck-host: maybe-installcheck-gcc
-installcheck-host: maybe-installcheck-gawk
-installcheck-host: maybe-installcheck-gettext
-installcheck-host: maybe-installcheck-gnuserv
-installcheck-host: maybe-installcheck-gprof
-installcheck-host: maybe-installcheck-gzip
-installcheck-host: maybe-installcheck-hello
-installcheck-host: maybe-installcheck-indent
-installcheck-host: maybe-installcheck-intl
-installcheck-host: maybe-installcheck-tcl
-installcheck-host: maybe-installcheck-itcl
-installcheck-host: maybe-installcheck-ld
-installcheck-host: maybe-installcheck-libcpp
-installcheck-host: maybe-installcheck-libdecnumber
-installcheck-host: maybe-installcheck-libgui
-installcheck-host: maybe-installcheck-libiberty
-installcheck-host: maybe-installcheck-libtool
-installcheck-host: maybe-installcheck-m4
-installcheck-host: maybe-installcheck-make
-installcheck-host: maybe-installcheck-mmalloc
-installcheck-host: maybe-installcheck-patch
-installcheck-host: maybe-installcheck-perl
-installcheck-host: maybe-installcheck-prms
-installcheck-host: maybe-installcheck-rcs
-installcheck-host: maybe-installcheck-readline
-installcheck-host: maybe-installcheck-release
-installcheck-host: maybe-installcheck-recode
-installcheck-host: maybe-installcheck-sed
-installcheck-host: maybe-installcheck-send-pr
-installcheck-host: maybe-installcheck-shellutils
-installcheck-host: maybe-installcheck-sid
-installcheck-host: maybe-installcheck-sim
-installcheck-host: maybe-installcheck-tar
-installcheck-host: maybe-installcheck-texinfo
-installcheck-host: maybe-installcheck-textutils
-installcheck-host: maybe-installcheck-time
-installcheck-host: maybe-installcheck-uudecode
-installcheck-host: maybe-installcheck-wdiff
-installcheck-host: maybe-installcheck-zip
-installcheck-host: maybe-installcheck-zlib
-installcheck-host: maybe-installcheck-gdb
-installcheck-host: maybe-installcheck-expect
-installcheck-host: maybe-installcheck-guile
-installcheck-host: maybe-installcheck-tk
-installcheck-host: maybe-installcheck-libtermcap
-installcheck-host: maybe-installcheck-utils
-installcheck-host: maybe-installcheck-gnattools
+installcheck-host: \
+ maybe-installcheck-ash \
+ maybe-installcheck-autoconf \
+ maybe-installcheck-automake \
+ maybe-installcheck-bash \
+ maybe-installcheck-bfd \
+ maybe-installcheck-opcodes \
+ maybe-installcheck-binutils \
+ maybe-installcheck-bison \
+ maybe-installcheck-byacc \
+ maybe-installcheck-bzip2 \
+ maybe-installcheck-dejagnu \
+ maybe-installcheck-diff \
+ maybe-installcheck-dosutils \
+ maybe-installcheck-etc \
+ maybe-installcheck-fastjar \
+ maybe-installcheck-fileutils \
+ maybe-installcheck-findutils \
+ maybe-installcheck-find \
+ maybe-installcheck-flex \
+ maybe-installcheck-gas \
+ maybe-installcheck-gcc \
+ maybe-installcheck-gawk \
+ maybe-installcheck-gettext \
+ maybe-installcheck-gnuserv \
+ maybe-installcheck-gprof \
+ maybe-installcheck-gzip \
+ maybe-installcheck-hello \
+ maybe-installcheck-indent \
+ maybe-installcheck-intl \
+ maybe-installcheck-tcl \
+ maybe-installcheck-itcl \
+ maybe-installcheck-ld \
+ maybe-installcheck-libcpp \
+ maybe-installcheck-libgui \
+ maybe-installcheck-libiberty \
+ maybe-installcheck-libtool \
+ maybe-installcheck-m4 \
+ maybe-installcheck-make \
+ maybe-installcheck-mmalloc \
+ maybe-installcheck-patch \
+ maybe-installcheck-perl \
+ maybe-installcheck-prms \
+ maybe-installcheck-rcs \
+ maybe-installcheck-readline \
+ maybe-installcheck-release \
+ maybe-installcheck-recode \
+ maybe-installcheck-sed \
+ maybe-installcheck-send-pr \
+ maybe-installcheck-shellutils \
+ maybe-installcheck-sid \
+ maybe-installcheck-sim \
+ maybe-installcheck-tar \
+ maybe-installcheck-texinfo \
+ maybe-installcheck-textutils \
+ maybe-installcheck-time \
+ maybe-installcheck-uudecode \
+ maybe-installcheck-wdiff \
+ maybe-installcheck-zip \
+ maybe-installcheck-zlib \
+ maybe-installcheck-gdb \
+ maybe-installcheck-expect \
+ maybe-installcheck-guile \
+ maybe-installcheck-tk \
+ maybe-installcheck-libtermcap \
+ maybe-installcheck-utils
.PHONY: installcheck-target
-
-installcheck-target: maybe-installcheck-target-libstdc++-v3
-installcheck-target: maybe-installcheck-target-libmudflap
-installcheck-target: maybe-installcheck-target-libssp
-installcheck-target: maybe-installcheck-target-libgcc-math
-installcheck-target: maybe-installcheck-target-newlib
-installcheck-target: maybe-installcheck-target-libgfortran
-installcheck-target: maybe-installcheck-target-libobjc
-installcheck-target: maybe-installcheck-target-libtermcap
-installcheck-target: maybe-installcheck-target-winsup
-installcheck-target: maybe-installcheck-target-libgloss
-installcheck-target: maybe-installcheck-target-libiberty
-installcheck-target: maybe-installcheck-target-gperf
-installcheck-target: maybe-installcheck-target-examples
-installcheck-target: maybe-installcheck-target-libffi
-installcheck-target: maybe-installcheck-target-libjava
-installcheck-target: maybe-installcheck-target-zlib
-installcheck-target: maybe-installcheck-target-boehm-gc
-installcheck-target: maybe-installcheck-target-qthreads
-installcheck-target: maybe-installcheck-target-rda
-installcheck-target: maybe-installcheck-target-libada
-installcheck-target: maybe-installcheck-target-libgomp
+installcheck-target: \
+ maybe-installcheck-target-libstdc++-v3 \
+ maybe-installcheck-target-libmudflap \
+ maybe-installcheck-target-newlib \
+ maybe-installcheck-target-libgfortran \
+ maybe-installcheck-target-libobjc \
+ maybe-installcheck-target-libtermcap \
+ maybe-installcheck-target-winsup \
+ maybe-installcheck-target-libgloss \
+ maybe-installcheck-target-libiberty \
+ maybe-installcheck-target-gperf \
+ maybe-installcheck-target-examples \
+ maybe-installcheck-target-libffi \
+ maybe-installcheck-target-libjava \
+ maybe-installcheck-target-zlib \
+ maybe-installcheck-target-boehm-gc \
+ maybe-installcheck-target-qthreads \
+ maybe-installcheck-target-rda \
+ maybe-installcheck-target-libada
.PHONY: do-mostlyclean
-do-mostlyclean:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) mostlyclean-host \
- mostlyclean-target
-
+do-mostlyclean: unstage mostlyclean-host mostlyclean-target stage
.PHONY: mostlyclean-host
-
-mostlyclean-host: maybe-mostlyclean-ash
-mostlyclean-host: maybe-mostlyclean-autoconf
-mostlyclean-host: maybe-mostlyclean-automake
-mostlyclean-host: maybe-mostlyclean-bash
-mostlyclean-host: maybe-mostlyclean-bfd
-mostlyclean-host: maybe-mostlyclean-opcodes
-mostlyclean-host: maybe-mostlyclean-binutils
-mostlyclean-host: maybe-mostlyclean-bison
-mostlyclean-host: maybe-mostlyclean-byacc
-mostlyclean-host: maybe-mostlyclean-bzip2
-mostlyclean-host: maybe-mostlyclean-dejagnu
-mostlyclean-host: maybe-mostlyclean-diff
-mostlyclean-host: maybe-mostlyclean-dosutils
-mostlyclean-host: maybe-mostlyclean-etc
-mostlyclean-host: maybe-mostlyclean-fastjar
-mostlyclean-host: maybe-mostlyclean-fileutils
-mostlyclean-host: maybe-mostlyclean-findutils
-mostlyclean-host: maybe-mostlyclean-find
-mostlyclean-host: maybe-mostlyclean-fixincludes
-mostlyclean-host: maybe-mostlyclean-flex
-mostlyclean-host: maybe-mostlyclean-gas
-mostlyclean-host: maybe-mostlyclean-gcc
-mostlyclean-host: maybe-mostlyclean-gawk
-mostlyclean-host: maybe-mostlyclean-gettext
-mostlyclean-host: maybe-mostlyclean-gnuserv
-mostlyclean-host: maybe-mostlyclean-gprof
-mostlyclean-host: maybe-mostlyclean-gzip
-mostlyclean-host: maybe-mostlyclean-hello
-mostlyclean-host: maybe-mostlyclean-indent
-mostlyclean-host: maybe-mostlyclean-intl
-mostlyclean-host: maybe-mostlyclean-tcl
-mostlyclean-host: maybe-mostlyclean-itcl
-mostlyclean-host: maybe-mostlyclean-ld
-mostlyclean-host: maybe-mostlyclean-libcpp
-mostlyclean-host: maybe-mostlyclean-libdecnumber
-mostlyclean-host: maybe-mostlyclean-libgui
-mostlyclean-host: maybe-mostlyclean-libiberty
-mostlyclean-host: maybe-mostlyclean-libtool
-mostlyclean-host: maybe-mostlyclean-m4
-mostlyclean-host: maybe-mostlyclean-make
-mostlyclean-host: maybe-mostlyclean-mmalloc
-mostlyclean-host: maybe-mostlyclean-patch
-mostlyclean-host: maybe-mostlyclean-perl
-mostlyclean-host: maybe-mostlyclean-prms
-mostlyclean-host: maybe-mostlyclean-rcs
-mostlyclean-host: maybe-mostlyclean-readline
-mostlyclean-host: maybe-mostlyclean-release
-mostlyclean-host: maybe-mostlyclean-recode
-mostlyclean-host: maybe-mostlyclean-sed
-mostlyclean-host: maybe-mostlyclean-send-pr
-mostlyclean-host: maybe-mostlyclean-shellutils
-mostlyclean-host: maybe-mostlyclean-sid
-mostlyclean-host: maybe-mostlyclean-sim
-mostlyclean-host: maybe-mostlyclean-tar
-mostlyclean-host: maybe-mostlyclean-texinfo
-mostlyclean-host: maybe-mostlyclean-textutils
-mostlyclean-host: maybe-mostlyclean-time
-mostlyclean-host: maybe-mostlyclean-uudecode
-mostlyclean-host: maybe-mostlyclean-wdiff
-mostlyclean-host: maybe-mostlyclean-zip
-mostlyclean-host: maybe-mostlyclean-zlib
-mostlyclean-host: maybe-mostlyclean-gdb
-mostlyclean-host: maybe-mostlyclean-expect
-mostlyclean-host: maybe-mostlyclean-guile
-mostlyclean-host: maybe-mostlyclean-tk
-mostlyclean-host: maybe-mostlyclean-libtermcap
-mostlyclean-host: maybe-mostlyclean-utils
-mostlyclean-host: maybe-mostlyclean-gnattools
+mostlyclean-host: \
+ maybe-mostlyclean-ash \
+ maybe-mostlyclean-autoconf \
+ maybe-mostlyclean-automake \
+ maybe-mostlyclean-bash \
+ maybe-mostlyclean-bfd \
+ maybe-mostlyclean-opcodes \
+ maybe-mostlyclean-binutils \
+ maybe-mostlyclean-bison \
+ maybe-mostlyclean-byacc \
+ maybe-mostlyclean-bzip2 \
+ maybe-mostlyclean-dejagnu \
+ maybe-mostlyclean-diff \
+ maybe-mostlyclean-dosutils \
+ maybe-mostlyclean-etc \
+ maybe-mostlyclean-fastjar \
+ maybe-mostlyclean-fileutils \
+ maybe-mostlyclean-findutils \
+ maybe-mostlyclean-find \
+ maybe-mostlyclean-flex \
+ maybe-mostlyclean-gas \
+ maybe-mostlyclean-gcc \
+ maybe-mostlyclean-gawk \
+ maybe-mostlyclean-gettext \
+ maybe-mostlyclean-gnuserv \
+ maybe-mostlyclean-gprof \
+ maybe-mostlyclean-gzip \
+ maybe-mostlyclean-hello \
+ maybe-mostlyclean-indent \
+ maybe-mostlyclean-intl \
+ maybe-mostlyclean-tcl \
+ maybe-mostlyclean-itcl \
+ maybe-mostlyclean-ld \
+ maybe-mostlyclean-libcpp \
+ maybe-mostlyclean-libgui \
+ maybe-mostlyclean-libiberty \
+ maybe-mostlyclean-libtool \
+ maybe-mostlyclean-m4 \
+ maybe-mostlyclean-make \
+ maybe-mostlyclean-mmalloc \
+ maybe-mostlyclean-patch \
+ maybe-mostlyclean-perl \
+ maybe-mostlyclean-prms \
+ maybe-mostlyclean-rcs \
+ maybe-mostlyclean-readline \
+ maybe-mostlyclean-release \
+ maybe-mostlyclean-recode \
+ maybe-mostlyclean-sed \
+ maybe-mostlyclean-send-pr \
+ maybe-mostlyclean-shellutils \
+ maybe-mostlyclean-sid \
+ maybe-mostlyclean-sim \
+ maybe-mostlyclean-tar \
+ maybe-mostlyclean-texinfo \
+ maybe-mostlyclean-textutils \
+ maybe-mostlyclean-time \
+ maybe-mostlyclean-uudecode \
+ maybe-mostlyclean-wdiff \
+ maybe-mostlyclean-zip \
+ maybe-mostlyclean-zlib \
+ maybe-mostlyclean-gdb \
+ maybe-mostlyclean-expect \
+ maybe-mostlyclean-guile \
+ maybe-mostlyclean-tk \
+ maybe-mostlyclean-libtermcap \
+ maybe-mostlyclean-utils
.PHONY: mostlyclean-target
-
-mostlyclean-target: maybe-mostlyclean-target-libstdc++-v3
-mostlyclean-target: maybe-mostlyclean-target-libmudflap
-mostlyclean-target: maybe-mostlyclean-target-libssp
-mostlyclean-target: maybe-mostlyclean-target-libgcc-math
-mostlyclean-target: maybe-mostlyclean-target-newlib
-mostlyclean-target: maybe-mostlyclean-target-libgfortran
-mostlyclean-target: maybe-mostlyclean-target-libobjc
-mostlyclean-target: maybe-mostlyclean-target-libtermcap
-mostlyclean-target: maybe-mostlyclean-target-winsup
-mostlyclean-target: maybe-mostlyclean-target-libgloss
-mostlyclean-target: maybe-mostlyclean-target-libiberty
-mostlyclean-target: maybe-mostlyclean-target-gperf
-mostlyclean-target: maybe-mostlyclean-target-examples
-mostlyclean-target: maybe-mostlyclean-target-libffi
-mostlyclean-target: maybe-mostlyclean-target-libjava
-mostlyclean-target: maybe-mostlyclean-target-zlib
-mostlyclean-target: maybe-mostlyclean-target-boehm-gc
-mostlyclean-target: maybe-mostlyclean-target-qthreads
-mostlyclean-target: maybe-mostlyclean-target-rda
-mostlyclean-target: maybe-mostlyclean-target-libada
-mostlyclean-target: maybe-mostlyclean-target-libgomp
+mostlyclean-target: \
+ maybe-mostlyclean-target-libstdc++-v3 \
+ maybe-mostlyclean-target-libmudflap \
+ maybe-mostlyclean-target-newlib \
+ maybe-mostlyclean-target-libgfortran \
+ maybe-mostlyclean-target-libobjc \
+ maybe-mostlyclean-target-libtermcap \
+ maybe-mostlyclean-target-winsup \
+ maybe-mostlyclean-target-libgloss \
+ maybe-mostlyclean-target-libiberty \
+ maybe-mostlyclean-target-gperf \
+ maybe-mostlyclean-target-examples \
+ maybe-mostlyclean-target-libffi \
+ maybe-mostlyclean-target-libjava \
+ maybe-mostlyclean-target-zlib \
+ maybe-mostlyclean-target-boehm-gc \
+ maybe-mostlyclean-target-qthreads \
+ maybe-mostlyclean-target-rda \
+ maybe-mostlyclean-target-libada
.PHONY: do-clean
-do-clean:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) clean-host \
- clean-target
-
+do-clean: unstage clean-host clean-target stage
.PHONY: clean-host
-
-clean-host: maybe-clean-ash
-clean-host: maybe-clean-autoconf
-clean-host: maybe-clean-automake
-clean-host: maybe-clean-bash
-clean-host: maybe-clean-bfd
-clean-host: maybe-clean-opcodes
-clean-host: maybe-clean-binutils
-clean-host: maybe-clean-bison
-clean-host: maybe-clean-byacc
-clean-host: maybe-clean-bzip2
-clean-host: maybe-clean-dejagnu
-clean-host: maybe-clean-diff
-clean-host: maybe-clean-dosutils
-clean-host: maybe-clean-etc
-clean-host: maybe-clean-fastjar
-clean-host: maybe-clean-fileutils
-clean-host: maybe-clean-findutils
-clean-host: maybe-clean-find
-clean-host: maybe-clean-fixincludes
-clean-host: maybe-clean-flex
-clean-host: maybe-clean-gas
-clean-host: maybe-clean-gcc
-clean-host: maybe-clean-gawk
-clean-host: maybe-clean-gettext
-clean-host: maybe-clean-gnuserv
-clean-host: maybe-clean-gprof
-clean-host: maybe-clean-gzip
-clean-host: maybe-clean-hello
-clean-host: maybe-clean-indent
-clean-host: maybe-clean-intl
-clean-host: maybe-clean-tcl
-clean-host: maybe-clean-itcl
-clean-host: maybe-clean-ld
-clean-host: maybe-clean-libcpp
-clean-host: maybe-clean-libdecnumber
-clean-host: maybe-clean-libgui
-clean-host: maybe-clean-libiberty
-clean-host: maybe-clean-libtool
-clean-host: maybe-clean-m4
-clean-host: maybe-clean-make
-clean-host: maybe-clean-mmalloc
-clean-host: maybe-clean-patch
-clean-host: maybe-clean-perl
-clean-host: maybe-clean-prms
-clean-host: maybe-clean-rcs
-clean-host: maybe-clean-readline
-clean-host: maybe-clean-release
-clean-host: maybe-clean-recode
-clean-host: maybe-clean-sed
-clean-host: maybe-clean-send-pr
-clean-host: maybe-clean-shellutils
-clean-host: maybe-clean-sid
-clean-host: maybe-clean-sim
-clean-host: maybe-clean-tar
-clean-host: maybe-clean-texinfo
-clean-host: maybe-clean-textutils
-clean-host: maybe-clean-time
-clean-host: maybe-clean-uudecode
-clean-host: maybe-clean-wdiff
-clean-host: maybe-clean-zip
-clean-host: maybe-clean-zlib
-clean-host: maybe-clean-gdb
-clean-host: maybe-clean-expect
-clean-host: maybe-clean-guile
-clean-host: maybe-clean-tk
-clean-host: maybe-clean-libtermcap
-clean-host: maybe-clean-utils
-clean-host: maybe-clean-gnattools
+clean-host: \
+ maybe-clean-ash \
+ maybe-clean-autoconf \
+ maybe-clean-automake \
+ maybe-clean-bash \
+ maybe-clean-bfd \
+ maybe-clean-opcodes \
+ maybe-clean-binutils \
+ maybe-clean-bison \
+ maybe-clean-byacc \
+ maybe-clean-bzip2 \
+ maybe-clean-dejagnu \
+ maybe-clean-diff \
+ maybe-clean-dosutils \
+ maybe-clean-etc \
+ maybe-clean-fastjar \
+ maybe-clean-fileutils \
+ maybe-clean-findutils \
+ maybe-clean-find \
+ maybe-clean-flex \
+ maybe-clean-gas \
+ maybe-clean-gcc \
+ maybe-clean-gawk \
+ maybe-clean-gettext \
+ maybe-clean-gnuserv \
+ maybe-clean-gprof \
+ maybe-clean-gzip \
+ maybe-clean-hello \
+ maybe-clean-indent \
+ maybe-clean-intl \
+ maybe-clean-tcl \
+ maybe-clean-itcl \
+ maybe-clean-ld \
+ maybe-clean-libcpp \
+ maybe-clean-libgui \
+ maybe-clean-libiberty \
+ maybe-clean-libtool \
+ maybe-clean-m4 \
+ maybe-clean-make \
+ maybe-clean-mmalloc \
+ maybe-clean-patch \
+ maybe-clean-perl \
+ maybe-clean-prms \
+ maybe-clean-rcs \
+ maybe-clean-readline \
+ maybe-clean-release \
+ maybe-clean-recode \
+ maybe-clean-sed \
+ maybe-clean-send-pr \
+ maybe-clean-shellutils \
+ maybe-clean-sid \
+ maybe-clean-sim \
+ maybe-clean-tar \
+ maybe-clean-texinfo \
+ maybe-clean-textutils \
+ maybe-clean-time \
+ maybe-clean-uudecode \
+ maybe-clean-wdiff \
+ maybe-clean-zip \
+ maybe-clean-zlib \
+ maybe-clean-gdb \
+ maybe-clean-expect \
+ maybe-clean-guile \
+ maybe-clean-tk \
+ maybe-clean-libtermcap \
+ maybe-clean-utils
.PHONY: clean-target
-
-clean-target: maybe-clean-target-libstdc++-v3
-clean-target: maybe-clean-target-libmudflap
-clean-target: maybe-clean-target-libssp
-clean-target: maybe-clean-target-libgcc-math
-clean-target: maybe-clean-target-newlib
-clean-target: maybe-clean-target-libgfortran
-clean-target: maybe-clean-target-libobjc
-clean-target: maybe-clean-target-libtermcap
-clean-target: maybe-clean-target-winsup
-clean-target: maybe-clean-target-libgloss
-clean-target: maybe-clean-target-libiberty
-clean-target: maybe-clean-target-gperf
-clean-target: maybe-clean-target-examples
-clean-target: maybe-clean-target-libffi
-clean-target: maybe-clean-target-libjava
-clean-target: maybe-clean-target-zlib
-clean-target: maybe-clean-target-boehm-gc
-clean-target: maybe-clean-target-qthreads
-clean-target: maybe-clean-target-rda
-clean-target: maybe-clean-target-libada
-clean-target: maybe-clean-target-libgomp
+clean-target: \
+ maybe-clean-target-libstdc++-v3 \
+ maybe-clean-target-libmudflap \
+ maybe-clean-target-newlib \
+ maybe-clean-target-libgfortran \
+ maybe-clean-target-libobjc \
+ maybe-clean-target-libtermcap \
+ maybe-clean-target-winsup \
+ maybe-clean-target-libgloss \
+ maybe-clean-target-libiberty \
+ maybe-clean-target-gperf \
+ maybe-clean-target-examples \
+ maybe-clean-target-libffi \
+ maybe-clean-target-libjava \
+ maybe-clean-target-zlib \
+ maybe-clean-target-boehm-gc \
+ maybe-clean-target-qthreads \
+ maybe-clean-target-rda \
+ maybe-clean-target-libada
.PHONY: do-distclean
-do-distclean:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) distclean-host \
- distclean-target
-
+do-distclean: unstage distclean-host distclean-target stage
.PHONY: distclean-host
-
-distclean-host: maybe-distclean-ash
-distclean-host: maybe-distclean-autoconf
-distclean-host: maybe-distclean-automake
-distclean-host: maybe-distclean-bash
-distclean-host: maybe-distclean-bfd
-distclean-host: maybe-distclean-opcodes
-distclean-host: maybe-distclean-binutils
-distclean-host: maybe-distclean-bison
-distclean-host: maybe-distclean-byacc
-distclean-host: maybe-distclean-bzip2
-distclean-host: maybe-distclean-dejagnu
-distclean-host: maybe-distclean-diff
-distclean-host: maybe-distclean-dosutils
-distclean-host: maybe-distclean-etc
-distclean-host: maybe-distclean-fastjar
-distclean-host: maybe-distclean-fileutils
-distclean-host: maybe-distclean-findutils
-distclean-host: maybe-distclean-find
-distclean-host: maybe-distclean-fixincludes
-distclean-host: maybe-distclean-flex
-distclean-host: maybe-distclean-gas
-distclean-host: maybe-distclean-gcc
-distclean-host: maybe-distclean-gawk
-distclean-host: maybe-distclean-gettext
-distclean-host: maybe-distclean-gnuserv
-distclean-host: maybe-distclean-gprof
-distclean-host: maybe-distclean-gzip
-distclean-host: maybe-distclean-hello
-distclean-host: maybe-distclean-indent
-distclean-host: maybe-distclean-intl
-distclean-host: maybe-distclean-tcl
-distclean-host: maybe-distclean-itcl
-distclean-host: maybe-distclean-ld
-distclean-host: maybe-distclean-libcpp
-distclean-host: maybe-distclean-libdecnumber
-distclean-host: maybe-distclean-libgui
-distclean-host: maybe-distclean-libiberty
-distclean-host: maybe-distclean-libtool
-distclean-host: maybe-distclean-m4
-distclean-host: maybe-distclean-make
-distclean-host: maybe-distclean-mmalloc
-distclean-host: maybe-distclean-patch
-distclean-host: maybe-distclean-perl
-distclean-host: maybe-distclean-prms
-distclean-host: maybe-distclean-rcs
-distclean-host: maybe-distclean-readline
-distclean-host: maybe-distclean-release
-distclean-host: maybe-distclean-recode
-distclean-host: maybe-distclean-sed
-distclean-host: maybe-distclean-send-pr
-distclean-host: maybe-distclean-shellutils
-distclean-host: maybe-distclean-sid
-distclean-host: maybe-distclean-sim
-distclean-host: maybe-distclean-tar
-distclean-host: maybe-distclean-texinfo
-distclean-host: maybe-distclean-textutils
-distclean-host: maybe-distclean-time
-distclean-host: maybe-distclean-uudecode
-distclean-host: maybe-distclean-wdiff
-distclean-host: maybe-distclean-zip
-distclean-host: maybe-distclean-zlib
-distclean-host: maybe-distclean-gdb
-distclean-host: maybe-distclean-expect
-distclean-host: maybe-distclean-guile
-distclean-host: maybe-distclean-tk
-distclean-host: maybe-distclean-libtermcap
-distclean-host: maybe-distclean-utils
-distclean-host: maybe-distclean-gnattools
+distclean-host: \
+ maybe-distclean-ash \
+ maybe-distclean-autoconf \
+ maybe-distclean-automake \
+ maybe-distclean-bash \
+ maybe-distclean-bfd \
+ maybe-distclean-opcodes \
+ maybe-distclean-binutils \
+ maybe-distclean-bison \
+ maybe-distclean-byacc \
+ maybe-distclean-bzip2 \
+ maybe-distclean-dejagnu \
+ maybe-distclean-diff \
+ maybe-distclean-dosutils \
+ maybe-distclean-etc \
+ maybe-distclean-fastjar \
+ maybe-distclean-fileutils \
+ maybe-distclean-findutils \
+ maybe-distclean-find \
+ maybe-distclean-flex \
+ maybe-distclean-gas \
+ maybe-distclean-gcc \
+ maybe-distclean-gawk \
+ maybe-distclean-gettext \
+ maybe-distclean-gnuserv \
+ maybe-distclean-gprof \
+ maybe-distclean-gzip \
+ maybe-distclean-hello \
+ maybe-distclean-indent \
+ maybe-distclean-intl \
+ maybe-distclean-tcl \
+ maybe-distclean-itcl \
+ maybe-distclean-ld \
+ maybe-distclean-libcpp \
+ maybe-distclean-libgui \
+ maybe-distclean-libiberty \
+ maybe-distclean-libtool \
+ maybe-distclean-m4 \
+ maybe-distclean-make \
+ maybe-distclean-mmalloc \
+ maybe-distclean-patch \
+ maybe-distclean-perl \
+ maybe-distclean-prms \
+ maybe-distclean-rcs \
+ maybe-distclean-readline \
+ maybe-distclean-release \
+ maybe-distclean-recode \
+ maybe-distclean-sed \
+ maybe-distclean-send-pr \
+ maybe-distclean-shellutils \
+ maybe-distclean-sid \
+ maybe-distclean-sim \
+ maybe-distclean-tar \
+ maybe-distclean-texinfo \
+ maybe-distclean-textutils \
+ maybe-distclean-time \
+ maybe-distclean-uudecode \
+ maybe-distclean-wdiff \
+ maybe-distclean-zip \
+ maybe-distclean-zlib \
+ maybe-distclean-gdb \
+ maybe-distclean-expect \
+ maybe-distclean-guile \
+ maybe-distclean-tk \
+ maybe-distclean-libtermcap \
+ maybe-distclean-utils
.PHONY: distclean-target
-
-distclean-target: maybe-distclean-target-libstdc++-v3
-distclean-target: maybe-distclean-target-libmudflap
-distclean-target: maybe-distclean-target-libssp
-distclean-target: maybe-distclean-target-libgcc-math
-distclean-target: maybe-distclean-target-newlib
-distclean-target: maybe-distclean-target-libgfortran
-distclean-target: maybe-distclean-target-libobjc
-distclean-target: maybe-distclean-target-libtermcap
-distclean-target: maybe-distclean-target-winsup
-distclean-target: maybe-distclean-target-libgloss
-distclean-target: maybe-distclean-target-libiberty
-distclean-target: maybe-distclean-target-gperf
-distclean-target: maybe-distclean-target-examples
-distclean-target: maybe-distclean-target-libffi
-distclean-target: maybe-distclean-target-libjava
-distclean-target: maybe-distclean-target-zlib
-distclean-target: maybe-distclean-target-boehm-gc
-distclean-target: maybe-distclean-target-qthreads
-distclean-target: maybe-distclean-target-rda
-distclean-target: maybe-distclean-target-libada
-distclean-target: maybe-distclean-target-libgomp
+distclean-target: \
+ maybe-distclean-target-libstdc++-v3 \
+ maybe-distclean-target-libmudflap \
+ maybe-distclean-target-newlib \
+ maybe-distclean-target-libgfortran \
+ maybe-distclean-target-libobjc \
+ maybe-distclean-target-libtermcap \
+ maybe-distclean-target-winsup \
+ maybe-distclean-target-libgloss \
+ maybe-distclean-target-libiberty \
+ maybe-distclean-target-gperf \
+ maybe-distclean-target-examples \
+ maybe-distclean-target-libffi \
+ maybe-distclean-target-libjava \
+ maybe-distclean-target-zlib \
+ maybe-distclean-target-boehm-gc \
+ maybe-distclean-target-qthreads \
+ maybe-distclean-target-rda \
+ maybe-distclean-target-libada
.PHONY: do-maintainer-clean
-do-maintainer-clean:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) maintainer-clean-host \
- maintainer-clean-target
-
+do-maintainer-clean: unstage maintainer-clean-host maintainer-clean-target stage
.PHONY: maintainer-clean-host
-
-maintainer-clean-host: maybe-maintainer-clean-ash
-maintainer-clean-host: maybe-maintainer-clean-autoconf
-maintainer-clean-host: maybe-maintainer-clean-automake
-maintainer-clean-host: maybe-maintainer-clean-bash
-maintainer-clean-host: maybe-maintainer-clean-bfd
-maintainer-clean-host: maybe-maintainer-clean-opcodes
-maintainer-clean-host: maybe-maintainer-clean-binutils
-maintainer-clean-host: maybe-maintainer-clean-bison
-maintainer-clean-host: maybe-maintainer-clean-byacc
-maintainer-clean-host: maybe-maintainer-clean-bzip2
-maintainer-clean-host: maybe-maintainer-clean-dejagnu
-maintainer-clean-host: maybe-maintainer-clean-diff
-maintainer-clean-host: maybe-maintainer-clean-dosutils
-maintainer-clean-host: maybe-maintainer-clean-etc
-maintainer-clean-host: maybe-maintainer-clean-fastjar
-maintainer-clean-host: maybe-maintainer-clean-fileutils
-maintainer-clean-host: maybe-maintainer-clean-findutils
-maintainer-clean-host: maybe-maintainer-clean-find
-maintainer-clean-host: maybe-maintainer-clean-fixincludes
-maintainer-clean-host: maybe-maintainer-clean-flex
-maintainer-clean-host: maybe-maintainer-clean-gas
-maintainer-clean-host: maybe-maintainer-clean-gcc
-maintainer-clean-host: maybe-maintainer-clean-gawk
-maintainer-clean-host: maybe-maintainer-clean-gettext
-maintainer-clean-host: maybe-maintainer-clean-gnuserv
-maintainer-clean-host: maybe-maintainer-clean-gprof
-maintainer-clean-host: maybe-maintainer-clean-gzip
-maintainer-clean-host: maybe-maintainer-clean-hello
-maintainer-clean-host: maybe-maintainer-clean-indent
-maintainer-clean-host: maybe-maintainer-clean-intl
-maintainer-clean-host: maybe-maintainer-clean-tcl
-maintainer-clean-host: maybe-maintainer-clean-itcl
-maintainer-clean-host: maybe-maintainer-clean-ld
-maintainer-clean-host: maybe-maintainer-clean-libcpp
-maintainer-clean-host: maybe-maintainer-clean-libdecnumber
-maintainer-clean-host: maybe-maintainer-clean-libgui
-maintainer-clean-host: maybe-maintainer-clean-libiberty
-maintainer-clean-host: maybe-maintainer-clean-libtool
-maintainer-clean-host: maybe-maintainer-clean-m4
-maintainer-clean-host: maybe-maintainer-clean-make
-maintainer-clean-host: maybe-maintainer-clean-mmalloc
-maintainer-clean-host: maybe-maintainer-clean-patch
-maintainer-clean-host: maybe-maintainer-clean-perl
-maintainer-clean-host: maybe-maintainer-clean-prms
-maintainer-clean-host: maybe-maintainer-clean-rcs
-maintainer-clean-host: maybe-maintainer-clean-readline
-maintainer-clean-host: maybe-maintainer-clean-release
-maintainer-clean-host: maybe-maintainer-clean-recode
-maintainer-clean-host: maybe-maintainer-clean-sed
-maintainer-clean-host: maybe-maintainer-clean-send-pr
-maintainer-clean-host: maybe-maintainer-clean-shellutils
-maintainer-clean-host: maybe-maintainer-clean-sid
-maintainer-clean-host: maybe-maintainer-clean-sim
-maintainer-clean-host: maybe-maintainer-clean-tar
-maintainer-clean-host: maybe-maintainer-clean-texinfo
-maintainer-clean-host: maybe-maintainer-clean-textutils
-maintainer-clean-host: maybe-maintainer-clean-time
-maintainer-clean-host: maybe-maintainer-clean-uudecode
-maintainer-clean-host: maybe-maintainer-clean-wdiff
-maintainer-clean-host: maybe-maintainer-clean-zip
-maintainer-clean-host: maybe-maintainer-clean-zlib
-maintainer-clean-host: maybe-maintainer-clean-gdb
-maintainer-clean-host: maybe-maintainer-clean-expect
-maintainer-clean-host: maybe-maintainer-clean-guile
-maintainer-clean-host: maybe-maintainer-clean-tk
-maintainer-clean-host: maybe-maintainer-clean-libtermcap
-maintainer-clean-host: maybe-maintainer-clean-utils
-maintainer-clean-host: maybe-maintainer-clean-gnattools
+maintainer-clean-host: \
+ maybe-maintainer-clean-ash \
+ maybe-maintainer-clean-autoconf \
+ maybe-maintainer-clean-automake \
+ maybe-maintainer-clean-bash \
+ maybe-maintainer-clean-bfd \
+ maybe-maintainer-clean-opcodes \
+ maybe-maintainer-clean-binutils \
+ maybe-maintainer-clean-bison \
+ maybe-maintainer-clean-byacc \
+ maybe-maintainer-clean-bzip2 \
+ maybe-maintainer-clean-dejagnu \
+ maybe-maintainer-clean-diff \
+ maybe-maintainer-clean-dosutils \
+ maybe-maintainer-clean-etc \
+ maybe-maintainer-clean-fastjar \
+ maybe-maintainer-clean-fileutils \
+ maybe-maintainer-clean-findutils \
+ maybe-maintainer-clean-find \
+ maybe-maintainer-clean-flex \
+ maybe-maintainer-clean-gas \
+ maybe-maintainer-clean-gcc \
+ maybe-maintainer-clean-gawk \
+ maybe-maintainer-clean-gettext \
+ maybe-maintainer-clean-gnuserv \
+ maybe-maintainer-clean-gprof \
+ maybe-maintainer-clean-gzip \
+ maybe-maintainer-clean-hello \
+ maybe-maintainer-clean-indent \
+ maybe-maintainer-clean-intl \
+ maybe-maintainer-clean-tcl \
+ maybe-maintainer-clean-itcl \
+ maybe-maintainer-clean-ld \
+ maybe-maintainer-clean-libcpp \
+ maybe-maintainer-clean-libgui \
+ maybe-maintainer-clean-libiberty \
+ maybe-maintainer-clean-libtool \
+ maybe-maintainer-clean-m4 \
+ maybe-maintainer-clean-make \
+ maybe-maintainer-clean-mmalloc \
+ maybe-maintainer-clean-patch \
+ maybe-maintainer-clean-perl \
+ maybe-maintainer-clean-prms \
+ maybe-maintainer-clean-rcs \
+ maybe-maintainer-clean-readline \
+ maybe-maintainer-clean-release \
+ maybe-maintainer-clean-recode \
+ maybe-maintainer-clean-sed \
+ maybe-maintainer-clean-send-pr \
+ maybe-maintainer-clean-shellutils \
+ maybe-maintainer-clean-sid \
+ maybe-maintainer-clean-sim \
+ maybe-maintainer-clean-tar \
+ maybe-maintainer-clean-texinfo \
+ maybe-maintainer-clean-textutils \
+ maybe-maintainer-clean-time \
+ maybe-maintainer-clean-uudecode \
+ maybe-maintainer-clean-wdiff \
+ maybe-maintainer-clean-zip \
+ maybe-maintainer-clean-zlib \
+ maybe-maintainer-clean-gdb \
+ maybe-maintainer-clean-expect \
+ maybe-maintainer-clean-guile \
+ maybe-maintainer-clean-tk \
+ maybe-maintainer-clean-libtermcap \
+ maybe-maintainer-clean-utils
.PHONY: maintainer-clean-target
-
-maintainer-clean-target: maybe-maintainer-clean-target-libstdc++-v3
-maintainer-clean-target: maybe-maintainer-clean-target-libmudflap
-maintainer-clean-target: maybe-maintainer-clean-target-libssp
-maintainer-clean-target: maybe-maintainer-clean-target-libgcc-math
-maintainer-clean-target: maybe-maintainer-clean-target-newlib
-maintainer-clean-target: maybe-maintainer-clean-target-libgfortran
-maintainer-clean-target: maybe-maintainer-clean-target-libobjc
-maintainer-clean-target: maybe-maintainer-clean-target-libtermcap
-maintainer-clean-target: maybe-maintainer-clean-target-winsup
-maintainer-clean-target: maybe-maintainer-clean-target-libgloss
-maintainer-clean-target: maybe-maintainer-clean-target-libiberty
-maintainer-clean-target: maybe-maintainer-clean-target-gperf
-maintainer-clean-target: maybe-maintainer-clean-target-examples
-maintainer-clean-target: maybe-maintainer-clean-target-libffi
-maintainer-clean-target: maybe-maintainer-clean-target-libjava
-maintainer-clean-target: maybe-maintainer-clean-target-zlib
-maintainer-clean-target: maybe-maintainer-clean-target-boehm-gc
-maintainer-clean-target: maybe-maintainer-clean-target-qthreads
-maintainer-clean-target: maybe-maintainer-clean-target-rda
-maintainer-clean-target: maybe-maintainer-clean-target-libada
-maintainer-clean-target: maybe-maintainer-clean-target-libgomp
+maintainer-clean-target: \
+ maybe-maintainer-clean-target-libstdc++-v3 \
+ maybe-maintainer-clean-target-libmudflap \
+ maybe-maintainer-clean-target-newlib \
+ maybe-maintainer-clean-target-libgfortran \
+ maybe-maintainer-clean-target-libobjc \
+ maybe-maintainer-clean-target-libtermcap \
+ maybe-maintainer-clean-target-winsup \
+ maybe-maintainer-clean-target-libgloss \
+ maybe-maintainer-clean-target-libiberty \
+ maybe-maintainer-clean-target-gperf \
+ maybe-maintainer-clean-target-examples \
+ maybe-maintainer-clean-target-libffi \
+ maybe-maintainer-clean-target-libjava \
+ maybe-maintainer-clean-target-zlib \
+ maybe-maintainer-clean-target-boehm-gc \
+ maybe-maintainer-clean-target-qthreads \
+ maybe-maintainer-clean-target-rda \
+ maybe-maintainer-clean-target-libada
# Here are the targets which correspond to the do-X targets.
-.PHONY: info installcheck dvi html install-info
+.PHONY: info installcheck dvi install-info
.PHONY: clean distclean mostlyclean maintainer-clean realclean
.PHONY: local-clean local-distclean local-maintainer-clean
info: do-info
installcheck: do-installcheck
dvi: do-dvi
-html: do-html
# Make sure makeinfo is built before we do a `make info', if we're
# in fact building texinfo.
@@ -1855,14 +1694,11 @@ local-clean:
local-distclean:
-rm -f Makefile config.status config.cache mh-frag mt-frag
- -rm -f maybedep.tmp serdep.tmp
+ -rm -f multilib.out multilib.tmp maybedep.tmp serdep.tmp
-if [ "$(TARGET_SUBDIR)" != "." ]; then \
rm -rf $(TARGET_SUBDIR); \
else true; fi
-rm -rf $(BUILD_SUBDIR)
- -if [ "$(HOST_SUBDIR)" != "." ]; then \
- rm -rf $(HOST_SUBDIR); \
- else true; fi
-rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile
-rm -f texinfo/doc/Makefile texinfo/po/POTFILES
-rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null
@@ -1880,10 +1716,13 @@ maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean
maintainer-clean: local-distclean
realclean: maintainer-clean
-# Extra dependency for clean-target, owing to the mixed nature of gcc.
+# Extra dependency for clean-target, owing to the mixed nature of gcc
clean-target: clean-target-libgcc
clean-target-libgcc:
- test ! -d gcc || (cd gcc && $(MAKE) $@)
+ test ! -d gcc/libgcc || \
+ (cd gcc/libgcc && find . -type d -print) | \
+ while read d; do rm -f gcc/$$d/libgcc.a || : ; done
+ -rm -rf gcc/libgcc
# Check target.
@@ -1891,8 +1730,7 @@ clean-target-libgcc:
check: do-check
# Only include modules actually being configured and built.
-.PHONY: check-host
-check-host: \
+do-check: unstage \
maybe-check-ash \
maybe-check-autoconf \
maybe-check-automake \
@@ -1911,7 +1749,6 @@ check-host: \
maybe-check-fileutils \
maybe-check-findutils \
maybe-check-find \
- maybe-check-fixincludes \
maybe-check-flex \
maybe-check-gas \
maybe-check-gcc \
@@ -1927,7 +1764,6 @@ check-host: \
maybe-check-itcl \
maybe-check-ld \
maybe-check-libcpp \
- maybe-check-libdecnumber \
maybe-check-libgui \
maybe-check-libiberty \
maybe-check-libtool \
@@ -1960,14 +1796,8 @@ check-host: \
maybe-check-tk \
maybe-check-libtermcap \
maybe-check-utils \
- maybe-check-gnattools
-
-.PHONY: check-target
-check-target: \
maybe-check-target-libstdc++-v3 \
maybe-check-target-libmudflap \
- maybe-check-target-libssp \
- maybe-check-target-libgcc-math \
maybe-check-target-newlib \
maybe-check-target-libgfortran \
maybe-check-target-libobjc \
@@ -1983,14 +1813,7 @@ check-target: \
maybe-check-target-boehm-gc \
maybe-check-target-qthreads \
maybe-check-target-rda \
- maybe-check-target-libada \
- maybe-check-target-libgomp
-
-do-check:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) check-host check-target
+ maybe-check-target-libada stage
# Automated reporting of test results.
@@ -2016,11 +1839,7 @@ mail-report-with-warnings.log: warning.log
# Installation targets.
.PHONY: install uninstall
-install:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) installdirs install-host install-target
+install: installdirs install-host install-target
.PHONY: install-host-nogcc
install-host-nogcc: \
@@ -2042,7 +1861,6 @@ install-host-nogcc: \
maybe-install-fileutils \
maybe-install-findutils \
maybe-install-find \
- maybe-install-fixincludes \
maybe-install-flex \
maybe-install-gas \
maybe-install-gawk \
@@ -2057,7 +1875,6 @@ install-host-nogcc: \
maybe-install-itcl \
maybe-install-ld \
maybe-install-libcpp \
- maybe-install-libdecnumber \
maybe-install-libgui \
maybe-install-libiberty \
maybe-install-libtool \
@@ -2089,8 +1906,7 @@ install-host-nogcc: \
maybe-install-guile \
maybe-install-tk \
maybe-install-libtermcap \
- maybe-install-utils \
- maybe-install-gnattools
+ maybe-install-utils
.PHONY: install-host
install-host: \
@@ -2112,7 +1928,6 @@ install-host: \
maybe-install-fileutils \
maybe-install-findutils \
maybe-install-find \
- maybe-install-fixincludes \
maybe-install-flex \
maybe-install-gas \
maybe-install-gcc \
@@ -2128,7 +1943,6 @@ install-host: \
maybe-install-itcl \
maybe-install-ld \
maybe-install-libcpp \
- maybe-install-libdecnumber \
maybe-install-libgui \
maybe-install-libiberty \
maybe-install-libtool \
@@ -2160,15 +1974,12 @@ install-host: \
maybe-install-guile \
maybe-install-tk \
maybe-install-libtermcap \
- maybe-install-utils \
- maybe-install-gnattools
+ maybe-install-utils
.PHONY: install-target
install-target: \
maybe-install-target-libstdc++-v3 \
maybe-install-target-libmudflap \
- maybe-install-target-libssp \
- maybe-install-target-libgcc-math \
maybe-install-target-newlib \
maybe-install-target-libgfortran \
maybe-install-target-libobjc \
@@ -2184,8 +1995,7 @@ install-target: \
maybe-install-target-boehm-gc \
maybe-install-target-qthreads \
maybe-install-target-rda \
- maybe-install-target-libada \
- maybe-install-target-libgomp
+ maybe-install-target-libada
uninstall:
@echo "the uninstall target is not supported in this tree"
@@ -2194,7 +2004,7 @@ uninstall:
install.all: install-no-fixedincludes
@if [ -f ./gcc/Makefile ] ; then \
r=`${PWD_COMMAND}` ; export r ; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd ./gcc && \
$(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
@@ -2238,418 +2048,521 @@ etags tags: TAGS
# built are.
TAGS: do-TAGS
-# ------------------------------------
-# Macros for configure and all targets
-# ------------------------------------
-
-
-
-
-
# --------------------------------------
# Modules which run on the build machine
# --------------------------------------
-
.PHONY: configure-build-libiberty maybe-configure-build-libiberty
maybe-configure-build-libiberty:
@if build-libiberty
maybe-configure-build-libiberty: configure-build-libiberty
-configure-build-libiberty:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \
+configure-build-libiberty:
+ @test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/libiberty; \
cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/libiberty "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/libiberty"; \
+ libsrcdir="$$s/libiberty"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-libiberty
-
-
-
-
.PHONY: all-build-libiberty maybe-all-build-libiberty
maybe-all-build-libiberty:
@if build-libiberty
TARGET-build-libiberty=all
maybe-all-build-libiberty: all-build-libiberty
all-build-libiberty: configure-build-libiberty
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/libiberty && \
- $(MAKE) $(TARGET-build-libiberty))
+ $(MAKE) $(TARGET-build-libiberty))
@endif build-libiberty
-
-
-
-
.PHONY: configure-build-bison maybe-configure-build-bison
maybe-configure-build-bison:
@if build-bison
maybe-configure-build-bison: configure-build-bison
-configure-build-bison:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/bison/Makefile || exit 0; \
+configure-build-bison:
+ @test ! -f $(BUILD_SUBDIR)/bison/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/bison ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/bison; \
cd "$(BUILD_SUBDIR)/bison" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/bison/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/bison"; \
- libsrcdir="$$s/bison"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/bison "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/bison"; \
+ libsrcdir="$$s/bison"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-bison
-
-
-
-
.PHONY: all-build-bison maybe-all-build-bison
maybe-all-build-bison:
@if build-bison
TARGET-build-bison=all
maybe-all-build-bison: all-build-bison
all-build-bison: configure-build-bison
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/bison && \
- $(MAKE) $(TARGET-build-bison))
+ $(MAKE) $(TARGET-build-bison))
@endif build-bison
-
-
-
-
.PHONY: configure-build-byacc maybe-configure-build-byacc
maybe-configure-build-byacc:
@if build-byacc
maybe-configure-build-byacc: configure-build-byacc
-configure-build-byacc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/byacc/Makefile || exit 0; \
+configure-build-byacc:
+ @test ! -f $(BUILD_SUBDIR)/byacc/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/byacc ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/byacc; \
cd "$(BUILD_SUBDIR)/byacc" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/byacc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/byacc"; \
- libsrcdir="$$s/byacc"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/byacc "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/byacc"; \
+ libsrcdir="$$s/byacc"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-byacc
-
-
-
-
.PHONY: all-build-byacc maybe-all-build-byacc
maybe-all-build-byacc:
@if build-byacc
TARGET-build-byacc=all
maybe-all-build-byacc: all-build-byacc
all-build-byacc: configure-build-byacc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/byacc && \
- $(MAKE) $(TARGET-build-byacc))
+ $(MAKE) $(TARGET-build-byacc))
@endif build-byacc
-
-
-
-
.PHONY: configure-build-flex maybe-configure-build-flex
maybe-configure-build-flex:
@if build-flex
maybe-configure-build-flex: configure-build-flex
-configure-build-flex:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/flex/Makefile || exit 0; \
+configure-build-flex:
+ @test ! -f $(BUILD_SUBDIR)/flex/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/flex ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/flex; \
cd "$(BUILD_SUBDIR)/flex" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/flex/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/flex"; \
- libsrcdir="$$s/flex"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/flex "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/flex"; \
+ libsrcdir="$$s/flex"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-flex
-
-
-
-
.PHONY: all-build-flex maybe-all-build-flex
maybe-all-build-flex:
@if build-flex
TARGET-build-flex=all
maybe-all-build-flex: all-build-flex
all-build-flex: configure-build-flex
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/flex && \
- $(MAKE) $(TARGET-build-flex))
+ $(MAKE) $(TARGET-build-flex))
@endif build-flex
-
-
-
-
.PHONY: configure-build-m4 maybe-configure-build-m4
maybe-configure-build-m4:
@if build-m4
maybe-configure-build-m4: configure-build-m4
-configure-build-m4:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/m4/Makefile || exit 0; \
+configure-build-m4:
+ @test ! -f $(BUILD_SUBDIR)/m4/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/m4 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/m4; \
cd "$(BUILD_SUBDIR)/m4" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/m4/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/m4"; \
- libsrcdir="$$s/m4"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/m4 "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/m4"; \
+ libsrcdir="$$s/m4"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-m4
-
-
-
-
.PHONY: all-build-m4 maybe-all-build-m4
maybe-all-build-m4:
@if build-m4
TARGET-build-m4=all
maybe-all-build-m4: all-build-m4
all-build-m4: configure-build-m4
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/m4 && \
- $(MAKE) $(TARGET-build-m4))
+ $(MAKE) $(TARGET-build-m4))
@endif build-m4
-
-
-
-
.PHONY: configure-build-texinfo maybe-configure-build-texinfo
maybe-configure-build-texinfo:
@if build-texinfo
maybe-configure-build-texinfo: configure-build-texinfo
-configure-build-texinfo:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/texinfo/Makefile || exit 0; \
+configure-build-texinfo:
+ @test ! -f $(BUILD_SUBDIR)/texinfo/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/texinfo ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/texinfo; \
cd "$(BUILD_SUBDIR)/texinfo" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/texinfo/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/texinfo"; \
- libsrcdir="$$s/texinfo"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/texinfo "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/texinfo"; \
+ libsrcdir="$$s/texinfo"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-texinfo
-
-
-
-
.PHONY: all-build-texinfo maybe-all-build-texinfo
maybe-all-build-texinfo:
@if build-texinfo
TARGET-build-texinfo=all
maybe-all-build-texinfo: all-build-texinfo
all-build-texinfo: configure-build-texinfo
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/texinfo && \
- $(MAKE) $(TARGET-build-texinfo))
+ $(MAKE) $(TARGET-build-texinfo))
@endif build-texinfo
-
-
-
-
.PHONY: configure-build-fixincludes maybe-configure-build-fixincludes
maybe-configure-build-fixincludes:
@if build-fixincludes
maybe-configure-build-fixincludes: configure-build-fixincludes
-configure-build-fixincludes:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(BUILD_SUBDIR)/fixincludes/Makefile || exit 0; \
+configure-build-fixincludes:
+ @test ! -f $(BUILD_SUBDIR)/fixincludes/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/fixincludes ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
echo Configuring in $(BUILD_SUBDIR)/fixincludes; \
cd "$(BUILD_SUBDIR)/fixincludes" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(BUILD_SUBDIR)/fixincludes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/fixincludes"; \
- libsrcdir="$$s/fixincludes"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/fixincludes "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/fixincludes"; \
+ libsrcdir="$$s/fixincludes"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(BUILD_CONFIGARGS) $${srcdiroption} \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" \
|| exit 1
@endif build-fixincludes
-
-
-
-
.PHONY: all-build-fixincludes maybe-all-build-fixincludes
maybe-all-build-fixincludes:
@if build-fixincludes
TARGET-build-fixincludes=all
maybe-all-build-fixincludes: all-build-fixincludes
all-build-fixincludes: configure-build-fixincludes
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(BUILD_EXPORTS) \
(cd $(BUILD_SUBDIR)/fixincludes && \
- $(MAKE) $(TARGET-build-fixincludes))
+ $(MAKE) $(TARGET-build-fixincludes))
@endif build-fixincludes
-
-
-
# --------------------------------------
# Modules which run on the host machine
# --------------------------------------
-
.PHONY: configure-ash maybe-configure-ash
maybe-configure-ash:
@if ash
maybe-configure-ash: configure-ash
-configure-ash:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-ash:
+ @test ! -f ash/Makefile || exit 0; \
+ [ -d ash ] || mkdir ash; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ash/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ash ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/ash; \
- cd "$(HOST_SUBDIR)/ash" || exit 1; \
+ echo Configuring in ash; \
+ cd ash || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ash/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ash"; \
+ libsrcdir="$$s/ash";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ash"; \
+ libsrcdir="$$s/ash";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ash"; \
- libsrcdir="$$s/ash"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif ash
-
-
-
-
.PHONY: all-ash maybe-all-ash
maybe-all-ash:
@if ash
-TARGET-ash=all
maybe-all-ash: all-ash
all-ash: configure-ash
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ash && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-ash))
+ (cd ash && $(MAKE) $(FLAGS_TO_PASS) all)
@endif ash
-
-
-
.PHONY: check-ash maybe-check-ash
maybe-check-ash:
@if ash
maybe-check-ash: check-ash
check-ash:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ash && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd ash && $(MAKE) $(FLAGS_TO_PASS) check)
@endif ash
@@ -2659,12 +2572,11 @@ maybe-install-ash:
maybe-install-ash: install-ash
install-ash: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ash && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd ash && $(MAKE) $(FLAGS_TO_PASS) install)
@endif ash
@@ -2677,16 +2589,16 @@ maybe-info-ash: info-ash
info-ash: \
configure-ash
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2703,16 +2615,16 @@ maybe-dvi-ash: dvi-ash
dvi-ash: \
configure-ash
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2722,32 +2634,6 @@ dvi-ash: \
@endif ash
-.PHONY: maybe-html-ash html-ash
-maybe-html-ash:
-@if ash
-maybe-html-ash: html-ash
-
-html-ash: \
- configure-ash
- @: $(MAKE); $(unstage)
- @[ -f ./ash/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif ash
-
.PHONY: maybe-TAGS-ash TAGS-ash
maybe-TAGS-ash:
@if ash
@@ -2755,16 +2641,16 @@ maybe-TAGS-ash: TAGS-ash
TAGS-ash: \
configure-ash
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2782,16 +2668,16 @@ maybe-install-info-ash: install-info-ash
install-info-ash: \
configure-ash \
info-ash
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2808,16 +2694,16 @@ maybe-installcheck-ash: installcheck-ash
installcheck-ash: \
configure-ash
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2833,16 +2719,16 @@ maybe-mostlyclean-ash:
maybe-mostlyclean-ash: mostlyclean-ash
mostlyclean-ash:
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2858,16 +2744,16 @@ maybe-clean-ash:
maybe-clean-ash: clean-ash
clean-ash:
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2883,16 +2769,16 @@ maybe-distclean-ash:
maybe-distclean-ash: distclean-ash
distclean-ash:
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2908,16 +2794,16 @@ maybe-maintainer-clean-ash:
maybe-maintainer-clean-ash: maintainer-clean-ash
maintainer-clean-ash:
- @: $(MAKE); $(unstage)
@[ -f ./ash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in ash" ; \
- (cd $(HOST_SUBDIR)/ash && \
+ (cd ash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -2928,65 +2814,57 @@ maintainer-clean-ash:
@endif ash
-
.PHONY: configure-autoconf maybe-configure-autoconf
maybe-configure-autoconf:
@if autoconf
maybe-configure-autoconf: configure-autoconf
-configure-autoconf:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-autoconf:
+ @test ! -f autoconf/Makefile || exit 0; \
+ [ -d autoconf ] || mkdir autoconf; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/autoconf/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/autoconf ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/autoconf; \
- cd "$(HOST_SUBDIR)/autoconf" || exit 1; \
+ echo Configuring in autoconf; \
+ cd autoconf || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/autoconf/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/autoconf"; \
+ libsrcdir="$$s/autoconf";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/autoconf"; \
+ libsrcdir="$$s/autoconf";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/autoconf"; \
- libsrcdir="$$s/autoconf"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif autoconf
-
-
-
-
.PHONY: all-autoconf maybe-all-autoconf
maybe-all-autoconf:
@if autoconf
-TARGET-autoconf=all
maybe-all-autoconf: all-autoconf
all-autoconf: configure-autoconf
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/autoconf && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-autoconf))
+ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) all)
@endif autoconf
-
-
-
.PHONY: check-autoconf maybe-check-autoconf
maybe-check-autoconf:
@if autoconf
maybe-check-autoconf: check-autoconf
check-autoconf:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/autoconf && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) check)
@endif autoconf
@@ -2996,12 +2874,11 @@ maybe-install-autoconf:
maybe-install-autoconf: install-autoconf
install-autoconf: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/autoconf && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) install)
@endif autoconf
@@ -3014,16 +2891,16 @@ maybe-info-autoconf: info-autoconf
info-autoconf: \
configure-autoconf
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3040,16 +2917,16 @@ maybe-dvi-autoconf: dvi-autoconf
dvi-autoconf: \
configure-autoconf
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3059,32 +2936,6 @@ dvi-autoconf: \
@endif autoconf
-.PHONY: maybe-html-autoconf html-autoconf
-maybe-html-autoconf:
-@if autoconf
-maybe-html-autoconf: html-autoconf
-
-html-autoconf: \
- configure-autoconf
- @: $(MAKE); $(unstage)
- @[ -f ./autoconf/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif autoconf
-
.PHONY: maybe-TAGS-autoconf TAGS-autoconf
maybe-TAGS-autoconf:
@if autoconf
@@ -3092,16 +2943,16 @@ maybe-TAGS-autoconf: TAGS-autoconf
TAGS-autoconf: \
configure-autoconf
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3119,16 +2970,16 @@ maybe-install-info-autoconf: install-info-autoconf
install-info-autoconf: \
configure-autoconf \
info-autoconf
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3145,16 +2996,16 @@ maybe-installcheck-autoconf: installcheck-autoconf
installcheck-autoconf: \
configure-autoconf
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3170,16 +3021,16 @@ maybe-mostlyclean-autoconf:
maybe-mostlyclean-autoconf: mostlyclean-autoconf
mostlyclean-autoconf:
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3195,16 +3046,16 @@ maybe-clean-autoconf:
maybe-clean-autoconf: clean-autoconf
clean-autoconf:
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3220,16 +3071,16 @@ maybe-distclean-autoconf:
maybe-distclean-autoconf: distclean-autoconf
distclean-autoconf:
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3245,16 +3096,16 @@ maybe-maintainer-clean-autoconf:
maybe-maintainer-clean-autoconf: maintainer-clean-autoconf
maintainer-clean-autoconf:
- @: $(MAKE); $(unstage)
@[ -f ./autoconf/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in autoconf" ; \
- (cd $(HOST_SUBDIR)/autoconf && \
+ (cd autoconf && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3265,65 +3116,57 @@ maintainer-clean-autoconf:
@endif autoconf
-
.PHONY: configure-automake maybe-configure-automake
maybe-configure-automake:
@if automake
maybe-configure-automake: configure-automake
-configure-automake:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-automake:
+ @test ! -f automake/Makefile || exit 0; \
+ [ -d automake ] || mkdir automake; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/automake/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/automake ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/automake; \
- cd "$(HOST_SUBDIR)/automake" || exit 1; \
+ echo Configuring in automake; \
+ cd automake || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/automake/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/automake"; \
+ libsrcdir="$$s/automake";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/automake"; \
+ libsrcdir="$$s/automake";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/automake"; \
- libsrcdir="$$s/automake"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif automake
-
-
-
-
.PHONY: all-automake maybe-all-automake
maybe-all-automake:
@if automake
-TARGET-automake=all
maybe-all-automake: all-automake
all-automake: configure-automake
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/automake && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-automake))
+ (cd automake && $(MAKE) $(FLAGS_TO_PASS) all)
@endif automake
-
-
-
.PHONY: check-automake maybe-check-automake
maybe-check-automake:
@if automake
maybe-check-automake: check-automake
check-automake:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/automake && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd automake && $(MAKE) $(FLAGS_TO_PASS) check)
@endif automake
@@ -3333,12 +3176,11 @@ maybe-install-automake:
maybe-install-automake: install-automake
install-automake: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/automake && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd automake && $(MAKE) $(FLAGS_TO_PASS) install)
@endif automake
@@ -3351,16 +3193,16 @@ maybe-info-automake: info-automake
info-automake: \
configure-automake
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3377,16 +3219,16 @@ maybe-dvi-automake: dvi-automake
dvi-automake: \
configure-automake
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3396,32 +3238,6 @@ dvi-automake: \
@endif automake
-.PHONY: maybe-html-automake html-automake
-maybe-html-automake:
-@if automake
-maybe-html-automake: html-automake
-
-html-automake: \
- configure-automake
- @: $(MAKE); $(unstage)
- @[ -f ./automake/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif automake
-
.PHONY: maybe-TAGS-automake TAGS-automake
maybe-TAGS-automake:
@if automake
@@ -3429,16 +3245,16 @@ maybe-TAGS-automake: TAGS-automake
TAGS-automake: \
configure-automake
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3456,16 +3272,16 @@ maybe-install-info-automake: install-info-automake
install-info-automake: \
configure-automake \
info-automake
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3482,16 +3298,16 @@ maybe-installcheck-automake: installcheck-automake
installcheck-automake: \
configure-automake
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3507,16 +3323,16 @@ maybe-mostlyclean-automake:
maybe-mostlyclean-automake: mostlyclean-automake
mostlyclean-automake:
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3532,16 +3348,16 @@ maybe-clean-automake:
maybe-clean-automake: clean-automake
clean-automake:
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3557,16 +3373,16 @@ maybe-distclean-automake:
maybe-distclean-automake: distclean-automake
distclean-automake:
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3582,16 +3398,16 @@ maybe-maintainer-clean-automake:
maybe-maintainer-clean-automake: maintainer-clean-automake
maintainer-clean-automake:
- @: $(MAKE); $(unstage)
@[ -f ./automake/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in automake" ; \
- (cd $(HOST_SUBDIR)/automake && \
+ (cd automake && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3602,65 +3418,57 @@ maintainer-clean-automake:
@endif automake
-
.PHONY: configure-bash maybe-configure-bash
maybe-configure-bash:
@if bash
maybe-configure-bash: configure-bash
-configure-bash:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-bash:
+ @test ! -f bash/Makefile || exit 0; \
+ [ -d bash ] || mkdir bash; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bash/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bash ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/bash; \
- cd "$(HOST_SUBDIR)/bash" || exit 1; \
+ echo Configuring in bash; \
+ cd bash || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bash/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bash"; \
+ libsrcdir="$$s/bash";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bash"; \
+ libsrcdir="$$s/bash";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/bash"; \
- libsrcdir="$$s/bash"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif bash
-
-
-
-
.PHONY: all-bash maybe-all-bash
maybe-all-bash:
@if bash
-TARGET-bash=all
maybe-all-bash: all-bash
all-bash: configure-bash
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bash && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-bash))
+ (cd bash && $(MAKE) $(FLAGS_TO_PASS) all)
@endif bash
-
-
-
.PHONY: check-bash maybe-check-bash
maybe-check-bash:
@if bash
maybe-check-bash: check-bash
check-bash:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bash && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd bash && $(MAKE) $(FLAGS_TO_PASS) check)
@endif bash
@@ -3670,12 +3478,11 @@ maybe-install-bash:
maybe-install-bash: install-bash
install-bash: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bash && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd bash && $(MAKE) $(FLAGS_TO_PASS) install)
@endif bash
@@ -3688,16 +3495,16 @@ maybe-info-bash: info-bash
info-bash: \
configure-bash
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3714,16 +3521,16 @@ maybe-dvi-bash: dvi-bash
dvi-bash: \
configure-bash
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3733,32 +3540,6 @@ dvi-bash: \
@endif bash
-.PHONY: maybe-html-bash html-bash
-maybe-html-bash:
-@if bash
-maybe-html-bash: html-bash
-
-html-bash: \
- configure-bash
- @: $(MAKE); $(unstage)
- @[ -f ./bash/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif bash
-
.PHONY: maybe-TAGS-bash TAGS-bash
maybe-TAGS-bash:
@if bash
@@ -3766,16 +3547,16 @@ maybe-TAGS-bash: TAGS-bash
TAGS-bash: \
configure-bash
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3793,16 +3574,16 @@ maybe-install-info-bash: install-info-bash
install-info-bash: \
configure-bash \
info-bash
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3819,16 +3600,16 @@ maybe-installcheck-bash: installcheck-bash
installcheck-bash: \
configure-bash
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3844,16 +3625,16 @@ maybe-mostlyclean-bash:
maybe-mostlyclean-bash: mostlyclean-bash
mostlyclean-bash:
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3869,16 +3650,16 @@ maybe-clean-bash:
maybe-clean-bash: clean-bash
clean-bash:
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3894,16 +3675,16 @@ maybe-distclean-bash:
maybe-distclean-bash: distclean-bash
distclean-bash:
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3919,16 +3700,16 @@ maybe-maintainer-clean-bash:
maybe-maintainer-clean-bash: maintainer-clean-bash
maintainer-clean-bash:
- @: $(MAKE); $(unstage)
@[ -f ./bash/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in bash" ; \
- (cd $(HOST_SUBDIR)/bash && \
+ (cd bash && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -3939,422 +3720,59 @@ maintainer-clean-bash:
@endif bash
-
.PHONY: configure-bfd maybe-configure-bfd
maybe-configure-bfd:
@if bfd
maybe-configure-bfd: configure-bfd
-configure-bfd:
-@endif bfd
-@if bfd-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif bfd-bootstrap
-@if bfd
- @r=`${PWD_COMMAND}`; export r; \
+configure-bfd:
+ @test -f stage_last && exit 0; \
+ test ! -f bfd/Makefile || exit 0; \
+ [ -d bfd ] || mkdir bfd; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/bfd; \
- cd "$(HOST_SUBDIR)/bfd" || exit 1; \
+ echo Configuring in bfd; \
+ cd bfd || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif bfd
-
-
-.PHONY: configure-stage1-bfd maybe-configure-stage1-bfd
-maybe-configure-stage1-bfd:
-@if bfd-bootstrap
-maybe-configure-stage1-bfd: configure-stage1-bfd
-configure-stage1-bfd:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif bfd-bootstrap
-
-.PHONY: configure-stage2-bfd maybe-configure-stage2-bfd
-maybe-configure-stage2-bfd:
-@if bfd-bootstrap
-maybe-configure-stage2-bfd: configure-stage2-bfd
-configure-stage2-bfd:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif bfd-bootstrap
-
-.PHONY: configure-stage3-bfd maybe-configure-stage3-bfd
-maybe-configure-stage3-bfd:
-@if bfd-bootstrap
-maybe-configure-stage3-bfd: configure-stage3-bfd
-configure-stage3-bfd:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif bfd-bootstrap
-
-.PHONY: configure-stage4-bfd maybe-configure-stage4-bfd
-maybe-configure-stage4-bfd:
-@if bfd-bootstrap
-maybe-configure-stage4-bfd: configure-stage4-bfd
-configure-stage4-bfd:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif bfd-bootstrap
-
-.PHONY: configure-stageprofile-bfd maybe-configure-stageprofile-bfd
-maybe-configure-stageprofile-bfd:
-@if bfd-bootstrap
-maybe-configure-stageprofile-bfd: configure-stageprofile-bfd
-configure-stageprofile-bfd:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif bfd-bootstrap
-
-.PHONY: configure-stagefeedback-bfd maybe-configure-stagefeedback-bfd
-maybe-configure-stagefeedback-bfd:
-@if bfd-bootstrap
-maybe-configure-stagefeedback-bfd: configure-stagefeedback-bfd
-configure-stagefeedback-bfd:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/bfd ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
- cd $(HOST_SUBDIR)/bfd || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/bfd"; \
- libsrcdir="$$s/bfd"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif bfd-bootstrap
-
-
-
-
-
.PHONY: all-bfd maybe-all-bfd
maybe-all-bfd:
@if bfd
-TARGET-bfd=all
maybe-all-bfd: all-bfd
all-bfd: configure-bfd
-@endif bfd
-@if bfd-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif bfd-bootstrap
-@if bfd
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-bfd))
+ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) all)
@endif bfd
-
-
-.PHONY: all-stage1-bfd maybe-all-stage1-bfd
-.PHONY: clean-stage1-bfd maybe-clean-stage1-bfd
-maybe-all-stage1-bfd:
-maybe-clean-stage1-bfd:
-@if bfd-bootstrap
-maybe-all-stage1-bfd: all-stage1-bfd
-all-stage1: all-stage1-bfd
-TARGET-stage1-bfd = $(TARGET-bfd)
-all-stage1-bfd: configure-stage1-bfd
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-bfd)
-
-maybe-clean-stage1-bfd: clean-stage1-bfd
-clean-stage1: clean-stage1-bfd
-clean-stage1-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif bfd-bootstrap
-
-
-.PHONY: all-stage2-bfd maybe-all-stage2-bfd
-.PHONY: clean-stage2-bfd maybe-clean-stage2-bfd
-maybe-all-stage2-bfd:
-maybe-clean-stage2-bfd:
-@if bfd-bootstrap
-maybe-all-stage2-bfd: all-stage2-bfd
-all-stage2: all-stage2-bfd
-TARGET-stage2-bfd = $(TARGET-bfd)
-all-stage2-bfd: configure-stage2-bfd
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-bfd)
-
-maybe-clean-stage2-bfd: clean-stage2-bfd
-clean-stage2: clean-stage2-bfd
-clean-stage2-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif bfd-bootstrap
-
-
-.PHONY: all-stage3-bfd maybe-all-stage3-bfd
-.PHONY: clean-stage3-bfd maybe-clean-stage3-bfd
-maybe-all-stage3-bfd:
-maybe-clean-stage3-bfd:
-@if bfd-bootstrap
-maybe-all-stage3-bfd: all-stage3-bfd
-all-stage3: all-stage3-bfd
-TARGET-stage3-bfd = $(TARGET-bfd)
-all-stage3-bfd: configure-stage3-bfd
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-bfd)
-
-maybe-clean-stage3-bfd: clean-stage3-bfd
-clean-stage3: clean-stage3-bfd
-clean-stage3-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif bfd-bootstrap
-
-
-.PHONY: all-stage4-bfd maybe-all-stage4-bfd
-.PHONY: clean-stage4-bfd maybe-clean-stage4-bfd
-maybe-all-stage4-bfd:
-maybe-clean-stage4-bfd:
-@if bfd-bootstrap
-maybe-all-stage4-bfd: all-stage4-bfd
-all-stage4: all-stage4-bfd
-TARGET-stage4-bfd = $(TARGET-bfd)
-all-stage4-bfd: configure-stage4-bfd
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-bfd)
-
-maybe-clean-stage4-bfd: clean-stage4-bfd
-clean-stage4: clean-stage4-bfd
-clean-stage4-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif bfd-bootstrap
-
-
-.PHONY: all-stageprofile-bfd maybe-all-stageprofile-bfd
-.PHONY: clean-stageprofile-bfd maybe-clean-stageprofile-bfd
-maybe-all-stageprofile-bfd:
-maybe-clean-stageprofile-bfd:
-@if bfd-bootstrap
-maybe-all-stageprofile-bfd: all-stageprofile-bfd
-all-stageprofile: all-stageprofile-bfd
-TARGET-stageprofile-bfd = $(TARGET-bfd)
-all-stageprofile-bfd: configure-stageprofile-bfd
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-bfd)
-
-maybe-clean-stageprofile-bfd: clean-stageprofile-bfd
-clean-stageprofile: clean-stageprofile-bfd
-clean-stageprofile-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif bfd-bootstrap
-
-
-.PHONY: all-stagefeedback-bfd maybe-all-stagefeedback-bfd
-.PHONY: clean-stagefeedback-bfd maybe-clean-stagefeedback-bfd
-maybe-all-stagefeedback-bfd:
-maybe-clean-stagefeedback-bfd:
-@if bfd-bootstrap
-maybe-all-stagefeedback-bfd: all-stagefeedback-bfd
-all-stagefeedback: all-stagefeedback-bfd
-TARGET-stagefeedback-bfd = $(TARGET-bfd)
-all-stagefeedback-bfd: configure-stagefeedback-bfd
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-bfd)
-
-maybe-clean-stagefeedback-bfd: clean-stagefeedback-bfd
-clean-stagefeedback: clean-stagefeedback-bfd
-clean-stagefeedback-bfd:
- @[ -f $(HOST_SUBDIR)/bfd/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-bfd/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif bfd-bootstrap
-
-
-
-
-
.PHONY: check-bfd maybe-check-bfd
maybe-check-bfd:
@if bfd
maybe-check-bfd: check-bfd
check-bfd:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) check)
@endif bfd
@@ -4364,12 +3782,11 @@ maybe-install-bfd:
maybe-install-bfd: install-bfd
install-bfd: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) install)
@endif bfd
@@ -4385,12 +3802,13 @@ info-bfd: \
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4410,12 +3828,13 @@ dvi-bfd: \
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4425,31 +3844,6 @@ dvi-bfd: \
@endif bfd
-.PHONY: maybe-html-bfd html-bfd
-maybe-html-bfd:
-@if bfd
-maybe-html-bfd: html-bfd
-
-html-bfd: \
- configure-bfd
- @[ -f ./bfd/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif bfd
-
.PHONY: maybe-TAGS-bfd TAGS-bfd
maybe-TAGS-bfd:
@if bfd
@@ -4460,12 +3854,13 @@ TAGS-bfd: \
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4486,12 +3881,13 @@ install-info-bfd: \
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4511,12 +3907,13 @@ installcheck-bfd: \
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4535,12 +3932,13 @@ mostlyclean-bfd:
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4559,12 +3957,13 @@ clean-bfd:
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4583,12 +3982,13 @@ distclean-bfd:
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4607,12 +4007,13 @@ maintainer-clean-bfd:
@[ -f ./bfd/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in bfd" ; \
- (cd $(HOST_SUBDIR)/bfd && \
+ (cd bfd && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -4623,422 +4024,59 @@ maintainer-clean-bfd:
@endif bfd
-
.PHONY: configure-opcodes maybe-configure-opcodes
maybe-configure-opcodes:
@if opcodes
maybe-configure-opcodes: configure-opcodes
-configure-opcodes:
-@endif opcodes
-@if opcodes-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif opcodes-bootstrap
-@if opcodes
- @r=`${PWD_COMMAND}`; export r; \
+configure-opcodes:
+ @test -f stage_last && exit 0; \
+ test ! -f opcodes/Makefile || exit 0; \
+ [ -d opcodes ] || mkdir opcodes; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/opcodes; \
- cd "$(HOST_SUBDIR)/opcodes" || exit 1; \
+ echo Configuring in opcodes; \
+ cd opcodes || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif opcodes
-
-
-.PHONY: configure-stage1-opcodes maybe-configure-stage1-opcodes
-maybe-configure-stage1-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stage1-opcodes: configure-stage1-opcodes
-configure-stage1-opcodes:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif opcodes-bootstrap
-
-.PHONY: configure-stage2-opcodes maybe-configure-stage2-opcodes
-maybe-configure-stage2-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stage2-opcodes: configure-stage2-opcodes
-configure-stage2-opcodes:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif opcodes-bootstrap
-
-.PHONY: configure-stage3-opcodes maybe-configure-stage3-opcodes
-maybe-configure-stage3-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stage3-opcodes: configure-stage3-opcodes
-configure-stage3-opcodes:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif opcodes-bootstrap
-
-.PHONY: configure-stage4-opcodes maybe-configure-stage4-opcodes
-maybe-configure-stage4-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stage4-opcodes: configure-stage4-opcodes
-configure-stage4-opcodes:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif opcodes-bootstrap
-
-.PHONY: configure-stageprofile-opcodes maybe-configure-stageprofile-opcodes
-maybe-configure-stageprofile-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stageprofile-opcodes: configure-stageprofile-opcodes
-configure-stageprofile-opcodes:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif opcodes-bootstrap
-
-.PHONY: configure-stagefeedback-opcodes maybe-configure-stagefeedback-opcodes
-maybe-configure-stagefeedback-opcodes:
-@if opcodes-bootstrap
-maybe-configure-stagefeedback-opcodes: configure-stagefeedback-opcodes
-configure-stagefeedback-opcodes:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/opcodes ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
- cd $(HOST_SUBDIR)/opcodes || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/opcodes"; \
- libsrcdir="$$s/opcodes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif opcodes-bootstrap
-
-
-
-
-
.PHONY: all-opcodes maybe-all-opcodes
maybe-all-opcodes:
@if opcodes
-TARGET-opcodes=all
maybe-all-opcodes: all-opcodes
all-opcodes: configure-opcodes
-@endif opcodes
-@if opcodes-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif opcodes-bootstrap
-@if opcodes
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-opcodes))
+ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) all)
@endif opcodes
-
-
-.PHONY: all-stage1-opcodes maybe-all-stage1-opcodes
-.PHONY: clean-stage1-opcodes maybe-clean-stage1-opcodes
-maybe-all-stage1-opcodes:
-maybe-clean-stage1-opcodes:
-@if opcodes-bootstrap
-maybe-all-stage1-opcodes: all-stage1-opcodes
-all-stage1: all-stage1-opcodes
-TARGET-stage1-opcodes = $(TARGET-opcodes)
-all-stage1-opcodes: configure-stage1-opcodes
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-opcodes)
-
-maybe-clean-stage1-opcodes: clean-stage1-opcodes
-clean-stage1: clean-stage1-opcodes
-clean-stage1-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif opcodes-bootstrap
-
-
-.PHONY: all-stage2-opcodes maybe-all-stage2-opcodes
-.PHONY: clean-stage2-opcodes maybe-clean-stage2-opcodes
-maybe-all-stage2-opcodes:
-maybe-clean-stage2-opcodes:
-@if opcodes-bootstrap
-maybe-all-stage2-opcodes: all-stage2-opcodes
-all-stage2: all-stage2-opcodes
-TARGET-stage2-opcodes = $(TARGET-opcodes)
-all-stage2-opcodes: configure-stage2-opcodes
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-opcodes)
-
-maybe-clean-stage2-opcodes: clean-stage2-opcodes
-clean-stage2: clean-stage2-opcodes
-clean-stage2-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif opcodes-bootstrap
-
-
-.PHONY: all-stage3-opcodes maybe-all-stage3-opcodes
-.PHONY: clean-stage3-opcodes maybe-clean-stage3-opcodes
-maybe-all-stage3-opcodes:
-maybe-clean-stage3-opcodes:
-@if opcodes-bootstrap
-maybe-all-stage3-opcodes: all-stage3-opcodes
-all-stage3: all-stage3-opcodes
-TARGET-stage3-opcodes = $(TARGET-opcodes)
-all-stage3-opcodes: configure-stage3-opcodes
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-opcodes)
-
-maybe-clean-stage3-opcodes: clean-stage3-opcodes
-clean-stage3: clean-stage3-opcodes
-clean-stage3-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif opcodes-bootstrap
-
-
-.PHONY: all-stage4-opcodes maybe-all-stage4-opcodes
-.PHONY: clean-stage4-opcodes maybe-clean-stage4-opcodes
-maybe-all-stage4-opcodes:
-maybe-clean-stage4-opcodes:
-@if opcodes-bootstrap
-maybe-all-stage4-opcodes: all-stage4-opcodes
-all-stage4: all-stage4-opcodes
-TARGET-stage4-opcodes = $(TARGET-opcodes)
-all-stage4-opcodes: configure-stage4-opcodes
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-opcodes)
-
-maybe-clean-stage4-opcodes: clean-stage4-opcodes
-clean-stage4: clean-stage4-opcodes
-clean-stage4-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif opcodes-bootstrap
-
-
-.PHONY: all-stageprofile-opcodes maybe-all-stageprofile-opcodes
-.PHONY: clean-stageprofile-opcodes maybe-clean-stageprofile-opcodes
-maybe-all-stageprofile-opcodes:
-maybe-clean-stageprofile-opcodes:
-@if opcodes-bootstrap
-maybe-all-stageprofile-opcodes: all-stageprofile-opcodes
-all-stageprofile: all-stageprofile-opcodes
-TARGET-stageprofile-opcodes = $(TARGET-opcodes)
-all-stageprofile-opcodes: configure-stageprofile-opcodes
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-opcodes)
-
-maybe-clean-stageprofile-opcodes: clean-stageprofile-opcodes
-clean-stageprofile: clean-stageprofile-opcodes
-clean-stageprofile-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif opcodes-bootstrap
-
-
-.PHONY: all-stagefeedback-opcodes maybe-all-stagefeedback-opcodes
-.PHONY: clean-stagefeedback-opcodes maybe-clean-stagefeedback-opcodes
-maybe-all-stagefeedback-opcodes:
-maybe-clean-stagefeedback-opcodes:
-@if opcodes-bootstrap
-maybe-all-stagefeedback-opcodes: all-stagefeedback-opcodes
-all-stagefeedback: all-stagefeedback-opcodes
-TARGET-stagefeedback-opcodes = $(TARGET-opcodes)
-all-stagefeedback-opcodes: configure-stagefeedback-opcodes
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-opcodes)
-
-maybe-clean-stagefeedback-opcodes: clean-stagefeedback-opcodes
-clean-stagefeedback: clean-stagefeedback-opcodes
-clean-stagefeedback-opcodes:
- @[ -f $(HOST_SUBDIR)/opcodes/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-opcodes/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif opcodes-bootstrap
-
-
-
-
-
.PHONY: check-opcodes maybe-check-opcodes
maybe-check-opcodes:
@if opcodes
maybe-check-opcodes: check-opcodes
check-opcodes:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) check)
@endif opcodes
@@ -5048,12 +4086,11 @@ maybe-install-opcodes:
maybe-install-opcodes: install-opcodes
install-opcodes: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) install)
@endif opcodes
@@ -5069,12 +4106,13 @@ info-opcodes: \
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5094,12 +4132,13 @@ dvi-opcodes: \
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5109,31 +4148,6 @@ dvi-opcodes: \
@endif opcodes
-.PHONY: maybe-html-opcodes html-opcodes
-maybe-html-opcodes:
-@if opcodes
-maybe-html-opcodes: html-opcodes
-
-html-opcodes: \
- configure-opcodes
- @[ -f ./opcodes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif opcodes
-
.PHONY: maybe-TAGS-opcodes TAGS-opcodes
maybe-TAGS-opcodes:
@if opcodes
@@ -5144,12 +4158,13 @@ TAGS-opcodes: \
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5170,12 +4185,13 @@ install-info-opcodes: \
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5195,12 +4211,13 @@ installcheck-opcodes: \
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5219,12 +4236,13 @@ mostlyclean-opcodes:
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5243,12 +4261,13 @@ clean-opcodes:
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5267,12 +4286,13 @@ distclean-opcodes:
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5291,12 +4311,13 @@ maintainer-clean-opcodes:
@[ -f ./opcodes/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in opcodes" ; \
- (cd $(HOST_SUBDIR)/opcodes && \
+ (cd opcodes && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5307,422 +4328,59 @@ maintainer-clean-opcodes:
@endif opcodes
-
.PHONY: configure-binutils maybe-configure-binutils
maybe-configure-binutils:
@if binutils
maybe-configure-binutils: configure-binutils
-configure-binutils:
-@endif binutils
-@if binutils-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif binutils-bootstrap
-@if binutils
- @r=`${PWD_COMMAND}`; export r; \
+configure-binutils:
+ @test -f stage_last && exit 0; \
+ test ! -f binutils/Makefile || exit 0; \
+ [ -d binutils ] || mkdir binutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/binutils; \
- cd "$(HOST_SUBDIR)/binutils" || exit 1; \
+ echo Configuring in binutils; \
+ cd binutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif binutils
-
-
-.PHONY: configure-stage1-binutils maybe-configure-stage1-binutils
-maybe-configure-stage1-binutils:
-@if binutils-bootstrap
-maybe-configure-stage1-binutils: configure-stage1-binutils
-configure-stage1-binutils:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif binutils-bootstrap
-
-.PHONY: configure-stage2-binutils maybe-configure-stage2-binutils
-maybe-configure-stage2-binutils:
-@if binutils-bootstrap
-maybe-configure-stage2-binutils: configure-stage2-binutils
-configure-stage2-binutils:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif binutils-bootstrap
-
-.PHONY: configure-stage3-binutils maybe-configure-stage3-binutils
-maybe-configure-stage3-binutils:
-@if binutils-bootstrap
-maybe-configure-stage3-binutils: configure-stage3-binutils
-configure-stage3-binutils:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif binutils-bootstrap
-
-.PHONY: configure-stage4-binutils maybe-configure-stage4-binutils
-maybe-configure-stage4-binutils:
-@if binutils-bootstrap
-maybe-configure-stage4-binutils: configure-stage4-binutils
-configure-stage4-binutils:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif binutils-bootstrap
-
-.PHONY: configure-stageprofile-binutils maybe-configure-stageprofile-binutils
-maybe-configure-stageprofile-binutils:
-@if binutils-bootstrap
-maybe-configure-stageprofile-binutils: configure-stageprofile-binutils
-configure-stageprofile-binutils:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif binutils-bootstrap
-
-.PHONY: configure-stagefeedback-binutils maybe-configure-stagefeedback-binutils
-maybe-configure-stagefeedback-binutils:
-@if binutils-bootstrap
-maybe-configure-stagefeedback-binutils: configure-stagefeedback-binutils
-configure-stagefeedback-binutils:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/binutils ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
- cd $(HOST_SUBDIR)/binutils || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/binutils"; \
- libsrcdir="$$s/binutils"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif binutils-bootstrap
-
-
-
-
-
.PHONY: all-binutils maybe-all-binutils
maybe-all-binutils:
@if binutils
-TARGET-binutils=all
maybe-all-binutils: all-binutils
all-binutils: configure-binutils
-@endif binutils
-@if binutils-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif binutils-bootstrap
-@if binutils
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-binutils))
+ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif binutils
-
-
-.PHONY: all-stage1-binutils maybe-all-stage1-binutils
-.PHONY: clean-stage1-binutils maybe-clean-stage1-binutils
-maybe-all-stage1-binutils:
-maybe-clean-stage1-binutils:
-@if binutils-bootstrap
-maybe-all-stage1-binutils: all-stage1-binutils
-all-stage1: all-stage1-binutils
-TARGET-stage1-binutils = $(TARGET-binutils)
-all-stage1-binutils: configure-stage1-binutils
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-binutils)
-
-maybe-clean-stage1-binutils: clean-stage1-binutils
-clean-stage1: clean-stage1-binutils
-clean-stage1-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif binutils-bootstrap
-
-
-.PHONY: all-stage2-binutils maybe-all-stage2-binutils
-.PHONY: clean-stage2-binutils maybe-clean-stage2-binutils
-maybe-all-stage2-binutils:
-maybe-clean-stage2-binutils:
-@if binutils-bootstrap
-maybe-all-stage2-binutils: all-stage2-binutils
-all-stage2: all-stage2-binutils
-TARGET-stage2-binutils = $(TARGET-binutils)
-all-stage2-binutils: configure-stage2-binutils
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-binutils)
-
-maybe-clean-stage2-binutils: clean-stage2-binutils
-clean-stage2: clean-stage2-binutils
-clean-stage2-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif binutils-bootstrap
-
-
-.PHONY: all-stage3-binutils maybe-all-stage3-binutils
-.PHONY: clean-stage3-binutils maybe-clean-stage3-binutils
-maybe-all-stage3-binutils:
-maybe-clean-stage3-binutils:
-@if binutils-bootstrap
-maybe-all-stage3-binutils: all-stage3-binutils
-all-stage3: all-stage3-binutils
-TARGET-stage3-binutils = $(TARGET-binutils)
-all-stage3-binutils: configure-stage3-binutils
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-binutils)
-
-maybe-clean-stage3-binutils: clean-stage3-binutils
-clean-stage3: clean-stage3-binutils
-clean-stage3-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif binutils-bootstrap
-
-
-.PHONY: all-stage4-binutils maybe-all-stage4-binutils
-.PHONY: clean-stage4-binutils maybe-clean-stage4-binutils
-maybe-all-stage4-binutils:
-maybe-clean-stage4-binutils:
-@if binutils-bootstrap
-maybe-all-stage4-binutils: all-stage4-binutils
-all-stage4: all-stage4-binutils
-TARGET-stage4-binutils = $(TARGET-binutils)
-all-stage4-binutils: configure-stage4-binutils
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-binutils)
-
-maybe-clean-stage4-binutils: clean-stage4-binutils
-clean-stage4: clean-stage4-binutils
-clean-stage4-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif binutils-bootstrap
-
-
-.PHONY: all-stageprofile-binutils maybe-all-stageprofile-binutils
-.PHONY: clean-stageprofile-binutils maybe-clean-stageprofile-binutils
-maybe-all-stageprofile-binutils:
-maybe-clean-stageprofile-binutils:
-@if binutils-bootstrap
-maybe-all-stageprofile-binutils: all-stageprofile-binutils
-all-stageprofile: all-stageprofile-binutils
-TARGET-stageprofile-binutils = $(TARGET-binutils)
-all-stageprofile-binutils: configure-stageprofile-binutils
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-binutils)
-
-maybe-clean-stageprofile-binutils: clean-stageprofile-binutils
-clean-stageprofile: clean-stageprofile-binutils
-clean-stageprofile-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif binutils-bootstrap
-
-
-.PHONY: all-stagefeedback-binutils maybe-all-stagefeedback-binutils
-.PHONY: clean-stagefeedback-binutils maybe-clean-stagefeedback-binutils
-maybe-all-stagefeedback-binutils:
-maybe-clean-stagefeedback-binutils:
-@if binutils-bootstrap
-maybe-all-stagefeedback-binutils: all-stagefeedback-binutils
-all-stagefeedback: all-stagefeedback-binutils
-TARGET-stagefeedback-binutils = $(TARGET-binutils)
-all-stagefeedback-binutils: configure-stagefeedback-binutils
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-binutils)
-
-maybe-clean-stagefeedback-binutils: clean-stagefeedback-binutils
-clean-stagefeedback: clean-stagefeedback-binutils
-clean-stagefeedback-binutils:
- @[ -f $(HOST_SUBDIR)/binutils/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-binutils/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif binutils-bootstrap
-
-
-
-
-
.PHONY: check-binutils maybe-check-binutils
maybe-check-binutils:
@if binutils
maybe-check-binutils: check-binutils
check-binutils:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) check)
@endif binutils
@@ -5732,12 +4390,11 @@ maybe-install-binutils:
maybe-install-binutils: install-binutils
install-binutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif binutils
@@ -5753,12 +4410,13 @@ info-binutils: \
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5778,12 +4436,13 @@ dvi-binutils: \
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5793,31 +4452,6 @@ dvi-binutils: \
@endif binutils
-.PHONY: maybe-html-binutils html-binutils
-maybe-html-binutils:
-@if binutils
-maybe-html-binutils: html-binutils
-
-html-binutils: \
- configure-binutils
- @[ -f ./binutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif binutils
-
.PHONY: maybe-TAGS-binutils TAGS-binutils
maybe-TAGS-binutils:
@if binutils
@@ -5828,12 +4462,13 @@ TAGS-binutils: \
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5854,12 +4489,13 @@ install-info-binutils: \
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5879,12 +4515,13 @@ installcheck-binutils: \
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5903,12 +4540,13 @@ mostlyclean-binutils:
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5927,12 +4565,13 @@ clean-binutils:
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5951,12 +4590,13 @@ distclean-binutils:
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5975,12 +4615,13 @@ maintainer-clean-binutils:
@[ -f ./binutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in binutils" ; \
- (cd $(HOST_SUBDIR)/binutils && \
+ (cd binutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -5991,53 +4632,46 @@ maintainer-clean-binutils:
@endif binutils
-
.PHONY: configure-bison maybe-configure-bison
maybe-configure-bison:
@if bison
maybe-configure-bison: configure-bison
-configure-bison:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-bison:
+ @test ! -f bison/Makefile || exit 0; \
+ [ -d bison ] || mkdir bison; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bison/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bison ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/bison; \
- cd "$(HOST_SUBDIR)/bison" || exit 1; \
+ echo Configuring in bison; \
+ cd bison || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bison/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bison"; \
+ libsrcdir="$$s/bison";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bison"; \
+ libsrcdir="$$s/bison";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/bison"; \
- libsrcdir="$$s/bison"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif bison
-
-
-
-
.PHONY: all-bison maybe-all-bison
maybe-all-bison:
@if bison
-TARGET-bison=all
maybe-all-bison: all-bison
all-bison: configure-bison
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bison && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-bison))
+ (cd bison && $(MAKE) $(FLAGS_TO_PASS) all)
@endif bison
-
-
-
.PHONY: check-bison maybe-check-bison
maybe-check-bison:
@if bison
@@ -6045,13 +4679,12 @@ maybe-check-bison: check-bison
# This module is only tested in a native toolchain.
check-bison:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bison && \
- $(MAKE) $(FLAGS_TO_PASS) check); \
+ (cd bison && $(MAKE) $(FLAGS_TO_PASS) check); \
fi
@endif bison
@@ -6062,12 +4695,11 @@ maybe-install-bison:
maybe-install-bison: install-bison
install-bison: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bison && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd bison && $(MAKE) $(FLAGS_TO_PASS) install)
@endif bison
@@ -6080,16 +4712,16 @@ maybe-info-bison: info-bison
info-bison: \
configure-bison
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6106,16 +4738,16 @@ maybe-dvi-bison: dvi-bison
dvi-bison: \
configure-bison
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6125,32 +4757,6 @@ dvi-bison: \
@endif bison
-.PHONY: maybe-html-bison html-bison
-maybe-html-bison:
-@if bison
-maybe-html-bison: html-bison
-
-html-bison: \
- configure-bison
- @: $(MAKE); $(unstage)
- @[ -f ./bison/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif bison
-
.PHONY: maybe-TAGS-bison TAGS-bison
maybe-TAGS-bison:
@if bison
@@ -6158,16 +4764,16 @@ maybe-TAGS-bison: TAGS-bison
TAGS-bison: \
configure-bison
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6185,16 +4791,16 @@ maybe-install-info-bison: install-info-bison
install-info-bison: \
configure-bison \
info-bison
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6211,16 +4817,16 @@ maybe-installcheck-bison: installcheck-bison
installcheck-bison: \
configure-bison
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6236,16 +4842,16 @@ maybe-mostlyclean-bison:
maybe-mostlyclean-bison: mostlyclean-bison
mostlyclean-bison:
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6261,16 +4867,16 @@ maybe-clean-bison:
maybe-clean-bison: clean-bison
clean-bison:
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6286,16 +4892,16 @@ maybe-distclean-bison:
maybe-distclean-bison: distclean-bison
distclean-bison:
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6311,16 +4917,16 @@ maybe-maintainer-clean-bison:
maybe-maintainer-clean-bison: maintainer-clean-bison
maintainer-clean-bison:
- @: $(MAKE); $(unstage)
@[ -f ./bison/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in bison" ; \
- (cd $(HOST_SUBDIR)/bison && \
+ (cd bison && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6331,53 +4937,46 @@ maintainer-clean-bison:
@endif bison
-
.PHONY: configure-byacc maybe-configure-byacc
maybe-configure-byacc:
@if byacc
maybe-configure-byacc: configure-byacc
-configure-byacc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-byacc:
+ @test ! -f byacc/Makefile || exit 0; \
+ [ -d byacc ] || mkdir byacc; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/byacc/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/byacc ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/byacc; \
- cd "$(HOST_SUBDIR)/byacc" || exit 1; \
+ echo Configuring in byacc; \
+ cd byacc || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/byacc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/byacc"; \
+ libsrcdir="$$s/byacc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/byacc"; \
+ libsrcdir="$$s/byacc";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/byacc"; \
- libsrcdir="$$s/byacc"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif byacc
-
-
-
-
.PHONY: all-byacc maybe-all-byacc
maybe-all-byacc:
@if byacc
-TARGET-byacc=all
maybe-all-byacc: all-byacc
all-byacc: configure-byacc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/byacc && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-byacc))
+ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) all)
@endif byacc
-
-
-
.PHONY: check-byacc maybe-check-byacc
maybe-check-byacc:
@if byacc
@@ -6385,13 +4984,12 @@ maybe-check-byacc: check-byacc
# This module is only tested in a native toolchain.
check-byacc:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/byacc && \
- $(MAKE) $(FLAGS_TO_PASS) check); \
+ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) check); \
fi
@endif byacc
@@ -6402,12 +5000,11 @@ maybe-install-byacc:
maybe-install-byacc: install-byacc
install-byacc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/byacc && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) install)
@endif byacc
@@ -6420,16 +5017,16 @@ maybe-info-byacc: info-byacc
info-byacc: \
configure-byacc
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6446,16 +5043,16 @@ maybe-dvi-byacc: dvi-byacc
dvi-byacc: \
configure-byacc
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6465,32 +5062,6 @@ dvi-byacc: \
@endif byacc
-.PHONY: maybe-html-byacc html-byacc
-maybe-html-byacc:
-@if byacc
-maybe-html-byacc: html-byacc
-
-html-byacc: \
- configure-byacc
- @: $(MAKE); $(unstage)
- @[ -f ./byacc/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif byacc
-
.PHONY: maybe-TAGS-byacc TAGS-byacc
maybe-TAGS-byacc:
@if byacc
@@ -6498,16 +5069,16 @@ maybe-TAGS-byacc: TAGS-byacc
TAGS-byacc: \
configure-byacc
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6525,16 +5096,16 @@ maybe-install-info-byacc: install-info-byacc
install-info-byacc: \
configure-byacc \
info-byacc
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6551,16 +5122,16 @@ maybe-installcheck-byacc: installcheck-byacc
installcheck-byacc: \
configure-byacc
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6576,16 +5147,16 @@ maybe-mostlyclean-byacc:
maybe-mostlyclean-byacc: mostlyclean-byacc
mostlyclean-byacc:
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6601,16 +5172,16 @@ maybe-clean-byacc:
maybe-clean-byacc: clean-byacc
clean-byacc:
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6626,16 +5197,16 @@ maybe-distclean-byacc:
maybe-distclean-byacc: distclean-byacc
distclean-byacc:
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6651,16 +5222,16 @@ maybe-maintainer-clean-byacc:
maybe-maintainer-clean-byacc: maintainer-clean-byacc
maintainer-clean-byacc:
- @: $(MAKE); $(unstage)
@[ -f ./byacc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in byacc" ; \
- (cd $(HOST_SUBDIR)/byacc && \
+ (cd byacc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6671,65 +5242,57 @@ maintainer-clean-byacc:
@endif byacc
-
.PHONY: configure-bzip2 maybe-configure-bzip2
maybe-configure-bzip2:
@if bzip2
maybe-configure-bzip2: configure-bzip2
-configure-bzip2:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-bzip2:
+ @test ! -f bzip2/Makefile || exit 0; \
+ [ -d bzip2 ] || mkdir bzip2; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/bzip2/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bzip2 ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/bzip2; \
- cd "$(HOST_SUBDIR)/bzip2" || exit 1; \
+ echo Configuring in bzip2; \
+ cd bzip2 || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/bzip2/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bzip2"; \
+ libsrcdir="$$s/bzip2";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bzip2"; \
+ libsrcdir="$$s/bzip2";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/bzip2"; \
- libsrcdir="$$s/bzip2"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif bzip2
-
-
-
-
.PHONY: all-bzip2 maybe-all-bzip2
maybe-all-bzip2:
@if bzip2
-TARGET-bzip2=all
maybe-all-bzip2: all-bzip2
all-bzip2: configure-bzip2
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bzip2 && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-bzip2))
+ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) all)
@endif bzip2
-
-
-
.PHONY: check-bzip2 maybe-check-bzip2
maybe-check-bzip2:
@if bzip2
maybe-check-bzip2: check-bzip2
check-bzip2:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bzip2 && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) check)
@endif bzip2
@@ -6739,12 +5302,11 @@ maybe-install-bzip2:
maybe-install-bzip2: install-bzip2
install-bzip2: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/bzip2 && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) install)
@endif bzip2
@@ -6757,16 +5319,16 @@ maybe-info-bzip2: info-bzip2
info-bzip2: \
configure-bzip2
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6783,16 +5345,16 @@ maybe-dvi-bzip2: dvi-bzip2
dvi-bzip2: \
configure-bzip2
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6802,32 +5364,6 @@ dvi-bzip2: \
@endif bzip2
-.PHONY: maybe-html-bzip2 html-bzip2
-maybe-html-bzip2:
-@if bzip2
-maybe-html-bzip2: html-bzip2
-
-html-bzip2: \
- configure-bzip2
- @: $(MAKE); $(unstage)
- @[ -f ./bzip2/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif bzip2
-
.PHONY: maybe-TAGS-bzip2 TAGS-bzip2
maybe-TAGS-bzip2:
@if bzip2
@@ -6835,16 +5371,16 @@ maybe-TAGS-bzip2: TAGS-bzip2
TAGS-bzip2: \
configure-bzip2
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6862,16 +5398,16 @@ maybe-install-info-bzip2: install-info-bzip2
install-info-bzip2: \
configure-bzip2 \
info-bzip2
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6888,16 +5424,16 @@ maybe-installcheck-bzip2: installcheck-bzip2
installcheck-bzip2: \
configure-bzip2
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6913,16 +5449,16 @@ maybe-mostlyclean-bzip2:
maybe-mostlyclean-bzip2: mostlyclean-bzip2
mostlyclean-bzip2:
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6938,16 +5474,16 @@ maybe-clean-bzip2:
maybe-clean-bzip2: clean-bzip2
clean-bzip2:
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6963,16 +5499,16 @@ maybe-distclean-bzip2:
maybe-distclean-bzip2: distclean-bzip2
distclean-bzip2:
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -6988,16 +5524,16 @@ maybe-maintainer-clean-bzip2:
maybe-maintainer-clean-bzip2: maintainer-clean-bzip2
maintainer-clean-bzip2:
- @: $(MAKE); $(unstage)
@[ -f ./bzip2/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in bzip2" ; \
- (cd $(HOST_SUBDIR)/bzip2 && \
+ (cd bzip2 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7008,65 +5544,57 @@ maintainer-clean-bzip2:
@endif bzip2
-
.PHONY: configure-dejagnu maybe-configure-dejagnu
maybe-configure-dejagnu:
@if dejagnu
maybe-configure-dejagnu: configure-dejagnu
-configure-dejagnu:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-dejagnu:
+ @test ! -f dejagnu/Makefile || exit 0; \
+ [ -d dejagnu ] || mkdir dejagnu; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/dejagnu/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/dejagnu ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/dejagnu; \
- cd "$(HOST_SUBDIR)/dejagnu" || exit 1; \
+ echo Configuring in dejagnu; \
+ cd dejagnu || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/dejagnu/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/dejagnu"; \
+ libsrcdir="$$s/dejagnu";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/dejagnu"; \
+ libsrcdir="$$s/dejagnu";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/dejagnu"; \
- libsrcdir="$$s/dejagnu"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif dejagnu
-
-
-
-
.PHONY: all-dejagnu maybe-all-dejagnu
maybe-all-dejagnu:
@if dejagnu
-TARGET-dejagnu=all
maybe-all-dejagnu: all-dejagnu
all-dejagnu: configure-dejagnu
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/dejagnu && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-dejagnu))
+ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) all)
@endif dejagnu
-
-
-
.PHONY: check-dejagnu maybe-check-dejagnu
maybe-check-dejagnu:
@if dejagnu
maybe-check-dejagnu: check-dejagnu
check-dejagnu:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/dejagnu && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) check)
@endif dejagnu
@@ -7076,12 +5604,11 @@ maybe-install-dejagnu:
maybe-install-dejagnu: install-dejagnu
install-dejagnu: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/dejagnu && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) install)
@endif dejagnu
@@ -7094,16 +5621,16 @@ maybe-info-dejagnu: info-dejagnu
info-dejagnu: \
configure-dejagnu
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7120,16 +5647,16 @@ maybe-dvi-dejagnu: dvi-dejagnu
dvi-dejagnu: \
configure-dejagnu
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7139,32 +5666,6 @@ dvi-dejagnu: \
@endif dejagnu
-.PHONY: maybe-html-dejagnu html-dejagnu
-maybe-html-dejagnu:
-@if dejagnu
-maybe-html-dejagnu: html-dejagnu
-
-html-dejagnu: \
- configure-dejagnu
- @: $(MAKE); $(unstage)
- @[ -f ./dejagnu/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif dejagnu
-
.PHONY: maybe-TAGS-dejagnu TAGS-dejagnu
maybe-TAGS-dejagnu:
@if dejagnu
@@ -7172,16 +5673,16 @@ maybe-TAGS-dejagnu: TAGS-dejagnu
TAGS-dejagnu: \
configure-dejagnu
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7199,16 +5700,16 @@ maybe-install-info-dejagnu: install-info-dejagnu
install-info-dejagnu: \
configure-dejagnu \
info-dejagnu
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7225,16 +5726,16 @@ maybe-installcheck-dejagnu: installcheck-dejagnu
installcheck-dejagnu: \
configure-dejagnu
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7250,16 +5751,16 @@ maybe-mostlyclean-dejagnu:
maybe-mostlyclean-dejagnu: mostlyclean-dejagnu
mostlyclean-dejagnu:
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7275,16 +5776,16 @@ maybe-clean-dejagnu:
maybe-clean-dejagnu: clean-dejagnu
clean-dejagnu:
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7300,16 +5801,16 @@ maybe-distclean-dejagnu:
maybe-distclean-dejagnu: distclean-dejagnu
distclean-dejagnu:
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7325,16 +5826,16 @@ maybe-maintainer-clean-dejagnu:
maybe-maintainer-clean-dejagnu: maintainer-clean-dejagnu
maintainer-clean-dejagnu:
- @: $(MAKE); $(unstage)
@[ -f ./dejagnu/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in dejagnu" ; \
- (cd $(HOST_SUBDIR)/dejagnu && \
+ (cd dejagnu && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7345,65 +5846,57 @@ maintainer-clean-dejagnu:
@endif dejagnu
-
.PHONY: configure-diff maybe-configure-diff
maybe-configure-diff:
@if diff
maybe-configure-diff: configure-diff
-configure-diff:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-diff:
+ @test ! -f diff/Makefile || exit 0; \
+ [ -d diff ] || mkdir diff; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/diff/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/diff ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/diff; \
- cd "$(HOST_SUBDIR)/diff" || exit 1; \
+ echo Configuring in diff; \
+ cd diff || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/diff/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/diff"; \
+ libsrcdir="$$s/diff";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/diff"; \
+ libsrcdir="$$s/diff";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/diff"; \
- libsrcdir="$$s/diff"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif diff
-
-
-
-
.PHONY: all-diff maybe-all-diff
maybe-all-diff:
@if diff
-TARGET-diff=all
maybe-all-diff: all-diff
all-diff: configure-diff
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/diff && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-diff))
+ (cd diff && $(MAKE) $(FLAGS_TO_PASS) all)
@endif diff
-
-
-
.PHONY: check-diff maybe-check-diff
maybe-check-diff:
@if diff
maybe-check-diff: check-diff
check-diff:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/diff && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd diff && $(MAKE) $(FLAGS_TO_PASS) check)
@endif diff
@@ -7413,12 +5906,11 @@ maybe-install-diff:
maybe-install-diff: install-diff
install-diff: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/diff && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd diff && $(MAKE) $(FLAGS_TO_PASS) install)
@endif diff
@@ -7431,16 +5923,16 @@ maybe-info-diff: info-diff
info-diff: \
configure-diff
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7457,16 +5949,16 @@ maybe-dvi-diff: dvi-diff
dvi-diff: \
configure-diff
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7476,32 +5968,6 @@ dvi-diff: \
@endif diff
-.PHONY: maybe-html-diff html-diff
-maybe-html-diff:
-@if diff
-maybe-html-diff: html-diff
-
-html-diff: \
- configure-diff
- @: $(MAKE); $(unstage)
- @[ -f ./diff/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif diff
-
.PHONY: maybe-TAGS-diff TAGS-diff
maybe-TAGS-diff:
@if diff
@@ -7509,16 +5975,16 @@ maybe-TAGS-diff: TAGS-diff
TAGS-diff: \
configure-diff
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7536,16 +6002,16 @@ maybe-install-info-diff: install-info-diff
install-info-diff: \
configure-diff \
info-diff
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7562,16 +6028,16 @@ maybe-installcheck-diff: installcheck-diff
installcheck-diff: \
configure-diff
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7587,16 +6053,16 @@ maybe-mostlyclean-diff:
maybe-mostlyclean-diff: mostlyclean-diff
mostlyclean-diff:
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7612,16 +6078,16 @@ maybe-clean-diff:
maybe-clean-diff: clean-diff
clean-diff:
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7637,16 +6103,16 @@ maybe-distclean-diff:
maybe-distclean-diff: distclean-diff
distclean-diff:
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7662,16 +6128,16 @@ maybe-maintainer-clean-diff:
maybe-maintainer-clean-diff: maintainer-clean-diff
maintainer-clean-diff:
- @: $(MAKE); $(unstage)
@[ -f ./diff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in diff" ; \
- (cd $(HOST_SUBDIR)/diff && \
+ (cd diff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7682,53 +6148,46 @@ maintainer-clean-diff:
@endif diff
-
.PHONY: configure-dosutils maybe-configure-dosutils
maybe-configure-dosutils:
@if dosutils
maybe-configure-dosutils: configure-dosutils
-configure-dosutils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-dosutils:
+ @test ! -f dosutils/Makefile || exit 0; \
+ [ -d dosutils ] || mkdir dosutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/dosutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/dosutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/dosutils; \
- cd "$(HOST_SUBDIR)/dosutils" || exit 1; \
+ echo Configuring in dosutils; \
+ cd dosutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/dosutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/dosutils"; \
+ libsrcdir="$$s/dosutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/dosutils"; \
+ libsrcdir="$$s/dosutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/dosutils"; \
- libsrcdir="$$s/dosutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif dosutils
-
-
-
-
.PHONY: all-dosutils maybe-all-dosutils
maybe-all-dosutils:
@if dosutils
-TARGET-dosutils=all
maybe-all-dosutils: all-dosutils
all-dosutils: configure-dosutils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/dosutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-dosutils))
+ (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif dosutils
-
-
-
.PHONY: check-dosutils maybe-check-dosutils
maybe-check-dosutils:
@if dosutils
@@ -7744,12 +6203,11 @@ maybe-install-dosutils:
maybe-install-dosutils: install-dosutils
install-dosutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/dosutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif dosutils
@@ -7762,16 +6220,16 @@ maybe-info-dosutils: info-dosutils
info-dosutils: \
configure-dosutils
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7788,16 +6246,16 @@ maybe-dvi-dosutils: dvi-dosutils
dvi-dosutils: \
configure-dosutils
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7807,32 +6265,6 @@ dvi-dosutils: \
@endif dosutils
-.PHONY: maybe-html-dosutils html-dosutils
-maybe-html-dosutils:
-@if dosutils
-maybe-html-dosutils: html-dosutils
-
-html-dosutils: \
- configure-dosutils
- @: $(MAKE); $(unstage)
- @[ -f ./dosutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif dosutils
-
.PHONY: maybe-TAGS-dosutils TAGS-dosutils
maybe-TAGS-dosutils:
@if dosutils
@@ -7840,16 +6272,16 @@ maybe-TAGS-dosutils: TAGS-dosutils
TAGS-dosutils: \
configure-dosutils
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7867,16 +6299,16 @@ maybe-install-info-dosutils: install-info-dosutils
install-info-dosutils: \
configure-dosutils \
info-dosutils
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7893,16 +6325,16 @@ maybe-installcheck-dosutils: installcheck-dosutils
installcheck-dosutils: \
configure-dosutils
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7918,16 +6350,16 @@ maybe-mostlyclean-dosutils:
maybe-mostlyclean-dosutils: mostlyclean-dosutils
mostlyclean-dosutils:
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7943,16 +6375,16 @@ maybe-clean-dosutils:
maybe-clean-dosutils: clean-dosutils
clean-dosutils:
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7968,16 +6400,16 @@ maybe-distclean-dosutils:
maybe-distclean-dosutils: distclean-dosutils
distclean-dosutils:
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -7993,16 +6425,16 @@ maybe-maintainer-clean-dosutils:
maybe-maintainer-clean-dosutils: maintainer-clean-dosutils
maintainer-clean-dosutils:
- @: $(MAKE); $(unstage)
@[ -f ./dosutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in dosutils" ; \
- (cd $(HOST_SUBDIR)/dosutils && \
+ (cd dosutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8013,65 +6445,57 @@ maintainer-clean-dosutils:
@endif dosutils
-
.PHONY: configure-etc maybe-configure-etc
maybe-configure-etc:
@if etc
maybe-configure-etc: configure-etc
-configure-etc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-etc:
+ @test ! -f etc/Makefile || exit 0; \
+ [ -d etc ] || mkdir etc; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/etc/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/etc ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/etc; \
- cd "$(HOST_SUBDIR)/etc" || exit 1; \
+ echo Configuring in etc; \
+ cd etc || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/etc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/etc"; \
+ libsrcdir="$$s/etc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/etc"; \
+ libsrcdir="$$s/etc";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/etc"; \
- libsrcdir="$$s/etc"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif etc
-
-
-
-
.PHONY: all-etc maybe-all-etc
maybe-all-etc:
@if etc
-TARGET-etc=all
maybe-all-etc: all-etc
all-etc: configure-etc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/etc && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-etc))
+ (cd etc && $(MAKE) $(FLAGS_TO_PASS) all)
@endif etc
-
-
-
.PHONY: check-etc maybe-check-etc
maybe-check-etc:
@if etc
maybe-check-etc: check-etc
check-etc:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/etc && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd etc && $(MAKE) $(FLAGS_TO_PASS) check)
@endif etc
@@ -8081,12 +6505,11 @@ maybe-install-etc:
maybe-install-etc: install-etc
install-etc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/etc && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd etc && $(MAKE) $(FLAGS_TO_PASS) install)
@endif etc
@@ -8099,16 +6522,16 @@ maybe-info-etc: info-etc
info-etc: \
configure-etc
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8125,16 +6548,16 @@ maybe-dvi-etc: dvi-etc
dvi-etc: \
configure-etc
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8144,32 +6567,6 @@ dvi-etc: \
@endif etc
-.PHONY: maybe-html-etc html-etc
-maybe-html-etc:
-@if etc
-maybe-html-etc: html-etc
-
-html-etc: \
- configure-etc
- @: $(MAKE); $(unstage)
- @[ -f ./etc/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif etc
-
.PHONY: maybe-TAGS-etc TAGS-etc
maybe-TAGS-etc:
@if etc
@@ -8177,16 +6574,16 @@ maybe-TAGS-etc: TAGS-etc
TAGS-etc: \
configure-etc
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8204,16 +6601,16 @@ maybe-install-info-etc: install-info-etc
install-info-etc: \
configure-etc \
info-etc
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8230,16 +6627,16 @@ maybe-installcheck-etc: installcheck-etc
installcheck-etc: \
configure-etc
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8255,16 +6652,16 @@ maybe-mostlyclean-etc:
maybe-mostlyclean-etc: mostlyclean-etc
mostlyclean-etc:
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8280,16 +6677,16 @@ maybe-clean-etc:
maybe-clean-etc: clean-etc
clean-etc:
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8305,16 +6702,16 @@ maybe-distclean-etc:
maybe-distclean-etc: distclean-etc
distclean-etc:
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8330,16 +6727,16 @@ maybe-maintainer-clean-etc:
maybe-maintainer-clean-etc: maintainer-clean-etc
maintainer-clean-etc:
- @: $(MAKE); $(unstage)
@[ -f ./etc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in etc" ; \
- (cd $(HOST_SUBDIR)/etc && \
+ (cd etc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8350,53 +6747,46 @@ maintainer-clean-etc:
@endif etc
-
.PHONY: configure-fastjar maybe-configure-fastjar
maybe-configure-fastjar:
@if fastjar
maybe-configure-fastjar: configure-fastjar
-configure-fastjar:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-fastjar:
+ @test ! -f fastjar/Makefile || exit 0; \
+ [ -d fastjar ] || mkdir fastjar; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/fastjar/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fastjar ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/fastjar; \
- cd "$(HOST_SUBDIR)/fastjar" || exit 1; \
+ echo Configuring in fastjar; \
+ cd fastjar || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/fastjar/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/fastjar"; \
+ libsrcdir="$$s/fastjar";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/fastjar"; \
+ libsrcdir="$$s/fastjar";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/fastjar"; \
- libsrcdir="$$s/fastjar"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif fastjar
-
-
-
-
.PHONY: all-fastjar maybe-all-fastjar
maybe-all-fastjar:
@if fastjar
-TARGET-fastjar=all
maybe-all-fastjar: all-fastjar
all-fastjar: configure-fastjar
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fastjar && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-fastjar))
+ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) all)
@endif fastjar
-
-
-
.PHONY: check-fastjar maybe-check-fastjar
maybe-check-fastjar:
@if fastjar
@@ -8404,13 +6794,12 @@ maybe-check-fastjar: check-fastjar
# This module is only tested in a native toolchain.
check-fastjar:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fastjar && \
- $(MAKE) $(FLAGS_TO_PASS) check); \
+ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) check); \
fi
@endif fastjar
@@ -8421,12 +6810,11 @@ maybe-install-fastjar:
maybe-install-fastjar: install-fastjar
install-fastjar: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fastjar && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) install)
@endif fastjar
@@ -8439,16 +6827,16 @@ maybe-info-fastjar: info-fastjar
info-fastjar: \
configure-fastjar
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8465,16 +6853,16 @@ maybe-dvi-fastjar: dvi-fastjar
dvi-fastjar: \
configure-fastjar
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8484,32 +6872,6 @@ dvi-fastjar: \
@endif fastjar
-.PHONY: maybe-html-fastjar html-fastjar
-maybe-html-fastjar:
-@if fastjar
-maybe-html-fastjar: html-fastjar
-
-html-fastjar: \
- configure-fastjar
- @: $(MAKE); $(unstage)
- @[ -f ./fastjar/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif fastjar
-
.PHONY: maybe-TAGS-fastjar TAGS-fastjar
maybe-TAGS-fastjar:
@if fastjar
@@ -8517,16 +6879,16 @@ maybe-TAGS-fastjar: TAGS-fastjar
TAGS-fastjar: \
configure-fastjar
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8544,16 +6906,16 @@ maybe-install-info-fastjar: install-info-fastjar
install-info-fastjar: \
configure-fastjar \
info-fastjar
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8570,16 +6932,16 @@ maybe-installcheck-fastjar: installcheck-fastjar
installcheck-fastjar: \
configure-fastjar
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8595,16 +6957,16 @@ maybe-mostlyclean-fastjar:
maybe-mostlyclean-fastjar: mostlyclean-fastjar
mostlyclean-fastjar:
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8620,16 +6982,16 @@ maybe-clean-fastjar:
maybe-clean-fastjar: clean-fastjar
clean-fastjar:
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8645,16 +7007,16 @@ maybe-distclean-fastjar:
maybe-distclean-fastjar: distclean-fastjar
distclean-fastjar:
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8670,16 +7032,16 @@ maybe-maintainer-clean-fastjar:
maybe-maintainer-clean-fastjar: maintainer-clean-fastjar
maintainer-clean-fastjar:
- @: $(MAKE); $(unstage)
@[ -f ./fastjar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in fastjar" ; \
- (cd $(HOST_SUBDIR)/fastjar && \
+ (cd fastjar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8690,65 +7052,57 @@ maintainer-clean-fastjar:
@endif fastjar
-
.PHONY: configure-fileutils maybe-configure-fileutils
maybe-configure-fileutils:
@if fileutils
maybe-configure-fileutils: configure-fileutils
-configure-fileutils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-fileutils:
+ @test ! -f fileutils/Makefile || exit 0; \
+ [ -d fileutils ] || mkdir fileutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/fileutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fileutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/fileutils; \
- cd "$(HOST_SUBDIR)/fileutils" || exit 1; \
+ echo Configuring in fileutils; \
+ cd fileutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/fileutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/fileutils"; \
+ libsrcdir="$$s/fileutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/fileutils"; \
+ libsrcdir="$$s/fileutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/fileutils"; \
- libsrcdir="$$s/fileutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif fileutils
-
-
-
-
.PHONY: all-fileutils maybe-all-fileutils
maybe-all-fileutils:
@if fileutils
-TARGET-fileutils=all
maybe-all-fileutils: all-fileutils
all-fileutils: configure-fileutils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fileutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-fileutils))
+ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif fileutils
-
-
-
.PHONY: check-fileutils maybe-check-fileutils
maybe-check-fileutils:
@if fileutils
maybe-check-fileutils: check-fileutils
check-fileutils:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fileutils && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) check)
@endif fileutils
@@ -8758,12 +7112,11 @@ maybe-install-fileutils:
maybe-install-fileutils: install-fileutils
install-fileutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fileutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif fileutils
@@ -8776,16 +7129,16 @@ maybe-info-fileutils: info-fileutils
info-fileutils: \
configure-fileutils
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8802,16 +7155,16 @@ maybe-dvi-fileutils: dvi-fileutils
dvi-fileutils: \
configure-fileutils
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8821,32 +7174,6 @@ dvi-fileutils: \
@endif fileutils
-.PHONY: maybe-html-fileutils html-fileutils
-maybe-html-fileutils:
-@if fileutils
-maybe-html-fileutils: html-fileutils
-
-html-fileutils: \
- configure-fileutils
- @: $(MAKE); $(unstage)
- @[ -f ./fileutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif fileutils
-
.PHONY: maybe-TAGS-fileutils TAGS-fileutils
maybe-TAGS-fileutils:
@if fileutils
@@ -8854,16 +7181,16 @@ maybe-TAGS-fileutils: TAGS-fileutils
TAGS-fileutils: \
configure-fileutils
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8881,16 +7208,16 @@ maybe-install-info-fileutils: install-info-fileutils
install-info-fileutils: \
configure-fileutils \
info-fileutils
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8907,16 +7234,16 @@ maybe-installcheck-fileutils: installcheck-fileutils
installcheck-fileutils: \
configure-fileutils
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8932,16 +7259,16 @@ maybe-mostlyclean-fileutils:
maybe-mostlyclean-fileutils: mostlyclean-fileutils
mostlyclean-fileutils:
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8957,16 +7284,16 @@ maybe-clean-fileutils:
maybe-clean-fileutils: clean-fileutils
clean-fileutils:
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -8982,16 +7309,16 @@ maybe-distclean-fileutils:
maybe-distclean-fileutils: distclean-fileutils
distclean-fileutils:
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9007,16 +7334,16 @@ maybe-maintainer-clean-fileutils:
maybe-maintainer-clean-fileutils: maintainer-clean-fileutils
maintainer-clean-fileutils:
- @: $(MAKE); $(unstage)
@[ -f ./fileutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in fileutils" ; \
- (cd $(HOST_SUBDIR)/fileutils && \
+ (cd fileutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9027,65 +7354,57 @@ maintainer-clean-fileutils:
@endif fileutils
-
.PHONY: configure-findutils maybe-configure-findutils
maybe-configure-findutils:
@if findutils
maybe-configure-findutils: configure-findutils
-configure-findutils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-findutils:
+ @test ! -f findutils/Makefile || exit 0; \
+ [ -d findutils ] || mkdir findutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/findutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/findutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/findutils; \
- cd "$(HOST_SUBDIR)/findutils" || exit 1; \
+ echo Configuring in findutils; \
+ cd findutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/findutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/findutils"; \
+ libsrcdir="$$s/findutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/findutils"; \
+ libsrcdir="$$s/findutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/findutils"; \
- libsrcdir="$$s/findutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif findutils
-
-
-
-
.PHONY: all-findutils maybe-all-findutils
maybe-all-findutils:
@if findutils
-TARGET-findutils=all
maybe-all-findutils: all-findutils
all-findutils: configure-findutils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/findutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-findutils))
+ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif findutils
-
-
-
.PHONY: check-findutils maybe-check-findutils
maybe-check-findutils:
@if findutils
maybe-check-findutils: check-findutils
check-findutils:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/findutils && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) check)
@endif findutils
@@ -9095,12 +7414,11 @@ maybe-install-findutils:
maybe-install-findutils: install-findutils
install-findutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/findutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif findutils
@@ -9113,16 +7431,16 @@ maybe-info-findutils: info-findutils
info-findutils: \
configure-findutils
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9139,16 +7457,16 @@ maybe-dvi-findutils: dvi-findutils
dvi-findutils: \
configure-findutils
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9158,32 +7476,6 @@ dvi-findutils: \
@endif findutils
-.PHONY: maybe-html-findutils html-findutils
-maybe-html-findutils:
-@if findutils
-maybe-html-findutils: html-findutils
-
-html-findutils: \
- configure-findutils
- @: $(MAKE); $(unstage)
- @[ -f ./findutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif findutils
-
.PHONY: maybe-TAGS-findutils TAGS-findutils
maybe-TAGS-findutils:
@if findutils
@@ -9191,16 +7483,16 @@ maybe-TAGS-findutils: TAGS-findutils
TAGS-findutils: \
configure-findutils
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9218,16 +7510,16 @@ maybe-install-info-findutils: install-info-findutils
install-info-findutils: \
configure-findutils \
info-findutils
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9244,16 +7536,16 @@ maybe-installcheck-findutils: installcheck-findutils
installcheck-findutils: \
configure-findutils
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9269,16 +7561,16 @@ maybe-mostlyclean-findutils:
maybe-mostlyclean-findutils: mostlyclean-findutils
mostlyclean-findutils:
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9294,16 +7586,16 @@ maybe-clean-findutils:
maybe-clean-findutils: clean-findutils
clean-findutils:
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9319,16 +7611,16 @@ maybe-distclean-findutils:
maybe-distclean-findutils: distclean-findutils
distclean-findutils:
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9344,16 +7636,16 @@ maybe-maintainer-clean-findutils:
maybe-maintainer-clean-findutils: maintainer-clean-findutils
maintainer-clean-findutils:
- @: $(MAKE); $(unstage)
@[ -f ./findutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in findutils" ; \
- (cd $(HOST_SUBDIR)/findutils && \
+ (cd findutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9364,65 +7656,57 @@ maintainer-clean-findutils:
@endif findutils
-
.PHONY: configure-find maybe-configure-find
maybe-configure-find:
@if find
maybe-configure-find: configure-find
-configure-find:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-find:
+ @test ! -f find/Makefile || exit 0; \
+ [ -d find ] || mkdir find; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/find/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/find ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/find; \
- cd "$(HOST_SUBDIR)/find" || exit 1; \
+ echo Configuring in find; \
+ cd find || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/find/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/find"; \
+ libsrcdir="$$s/find";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/find"; \
+ libsrcdir="$$s/find";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/find"; \
- libsrcdir="$$s/find"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif find
-
-
-
-
.PHONY: all-find maybe-all-find
maybe-all-find:
@if find
-TARGET-find=all
maybe-all-find: all-find
all-find: configure-find
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/find && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-find))
+ (cd find && $(MAKE) $(FLAGS_TO_PASS) all)
@endif find
-
-
-
.PHONY: check-find maybe-check-find
maybe-check-find:
@if find
maybe-check-find: check-find
check-find:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/find && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd find && $(MAKE) $(FLAGS_TO_PASS) check)
@endif find
@@ -9432,12 +7716,11 @@ maybe-install-find:
maybe-install-find: install-find
install-find: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/find && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd find && $(MAKE) $(FLAGS_TO_PASS) install)
@endif find
@@ -9450,16 +7733,16 @@ maybe-info-find: info-find
info-find: \
configure-find
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9476,16 +7759,16 @@ maybe-dvi-find: dvi-find
dvi-find: \
configure-find
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9495,32 +7778,6 @@ dvi-find: \
@endif find
-.PHONY: maybe-html-find html-find
-maybe-html-find:
-@if find
-maybe-html-find: html-find
-
-html-find: \
- configure-find
- @: $(MAKE); $(unstage)
- @[ -f ./find/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in find" ; \
- (cd $(HOST_SUBDIR)/find && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif find
-
.PHONY: maybe-TAGS-find TAGS-find
maybe-TAGS-find:
@if find
@@ -9528,16 +7785,16 @@ maybe-TAGS-find: TAGS-find
TAGS-find: \
configure-find
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9555,16 +7812,16 @@ maybe-install-info-find: install-info-find
install-info-find: \
configure-find \
info-find
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9581,16 +7838,16 @@ maybe-installcheck-find: installcheck-find
installcheck-find: \
configure-find
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9606,16 +7863,16 @@ maybe-mostlyclean-find:
maybe-mostlyclean-find: mostlyclean-find
mostlyclean-find:
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9631,16 +7888,16 @@ maybe-clean-find:
maybe-clean-find: clean-find
clean-find:
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9656,16 +7913,16 @@ maybe-distclean-find:
maybe-distclean-find: distclean-find
distclean-find:
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9681,16 +7938,16 @@ maybe-maintainer-clean-find:
maybe-maintainer-clean-find: maintainer-clean-find
maintainer-clean-find:
- @: $(MAKE); $(unstage)
@[ -f ./find/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in find" ; \
- (cd $(HOST_SUBDIR)/find && \
+ (cd find && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -9701,309 +7958,46 @@ maintainer-clean-find:
@endif find
-
-.PHONY: configure-fixincludes maybe-configure-fixincludes
-maybe-configure-fixincludes:
-@if fixincludes
-maybe-configure-fixincludes: configure-fixincludes
-configure-fixincludes:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/fixincludes/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fixincludes ; \
- $(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/fixincludes; \
- cd "$(HOST_SUBDIR)/fixincludes" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/fixincludes/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/fixincludes"; \
- libsrcdir="$$s/fixincludes"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif fixincludes
-
-
-
-
-
-.PHONY: all-fixincludes maybe-all-fixincludes
-maybe-all-fixincludes:
-@if fixincludes
-TARGET-fixincludes=all
-maybe-all-fixincludes: all-fixincludes
-all-fixincludes: configure-fixincludes
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-fixincludes))
-@endif fixincludes
-
-
-
-
-.PHONY: check-fixincludes maybe-check-fixincludes
-maybe-check-fixincludes:
-@if fixincludes
-maybe-check-fixincludes: check-fixincludes
-
-check-fixincludes:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(FLAGS_TO_PASS) check)
-
-@endif fixincludes
-
-.PHONY: install-fixincludes maybe-install-fixincludes
-maybe-install-fixincludes:
-@if fixincludes
-maybe-install-fixincludes: install-fixincludes
-
-install-fixincludes: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(FLAGS_TO_PASS) install)
-
-@endif fixincludes
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-fixincludes info-fixincludes
-maybe-info-fixincludes:
-@if fixincludes
-maybe-info-fixincludes: info-fixincludes
-
-# fixincludes doesn't support info.
-info-fixincludes:
-
-@endif fixincludes
-
-.PHONY: maybe-dvi-fixincludes dvi-fixincludes
-maybe-dvi-fixincludes:
-@if fixincludes
-maybe-dvi-fixincludes: dvi-fixincludes
-
-# fixincludes doesn't support dvi.
-dvi-fixincludes:
-
-@endif fixincludes
-
-.PHONY: maybe-html-fixincludes html-fixincludes
-maybe-html-fixincludes:
-@if fixincludes
-maybe-html-fixincludes: html-fixincludes
-
-html-fixincludes: \
- configure-fixincludes
- @: $(MAKE); $(unstage)
- @[ -f ./fixincludes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in fixincludes" ; \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif fixincludes
-
-.PHONY: maybe-TAGS-fixincludes TAGS-fixincludes
-maybe-TAGS-fixincludes:
-@if fixincludes
-maybe-TAGS-fixincludes: TAGS-fixincludes
-
-# fixincludes doesn't support TAGS.
-TAGS-fixincludes:
-
-@endif fixincludes
-
-.PHONY: maybe-install-info-fixincludes install-info-fixincludes
-maybe-install-info-fixincludes:
-@if fixincludes
-maybe-install-info-fixincludes: install-info-fixincludes
-
-# fixincludes doesn't support install-info.
-install-info-fixincludes:
-
-@endif fixincludes
-
-.PHONY: maybe-installcheck-fixincludes installcheck-fixincludes
-maybe-installcheck-fixincludes:
-@if fixincludes
-maybe-installcheck-fixincludes: installcheck-fixincludes
-
-# fixincludes doesn't support installcheck.
-installcheck-fixincludes:
-
-@endif fixincludes
-
-.PHONY: maybe-mostlyclean-fixincludes mostlyclean-fixincludes
-maybe-mostlyclean-fixincludes:
-@if fixincludes
-maybe-mostlyclean-fixincludes: mostlyclean-fixincludes
-
-mostlyclean-fixincludes:
- @: $(MAKE); $(unstage)
- @[ -f ./fixincludes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing mostlyclean in fixincludes" ; \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif fixincludes
-
-.PHONY: maybe-clean-fixincludes clean-fixincludes
-maybe-clean-fixincludes:
-@if fixincludes
-maybe-clean-fixincludes: clean-fixincludes
-
-clean-fixincludes:
- @: $(MAKE); $(unstage)
- @[ -f ./fixincludes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing clean in fixincludes" ; \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif fixincludes
-
-.PHONY: maybe-distclean-fixincludes distclean-fixincludes
-maybe-distclean-fixincludes:
-@if fixincludes
-maybe-distclean-fixincludes: distclean-fixincludes
-
-distclean-fixincludes:
- @: $(MAKE); $(unstage)
- @[ -f ./fixincludes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing distclean in fixincludes" ; \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif fixincludes
-
-.PHONY: maybe-maintainer-clean-fixincludes maintainer-clean-fixincludes
-maybe-maintainer-clean-fixincludes:
-@if fixincludes
-maybe-maintainer-clean-fixincludes: maintainer-clean-fixincludes
-
-maintainer-clean-fixincludes:
- @: $(MAKE); $(unstage)
- @[ -f ./fixincludes/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing maintainer-clean in fixincludes" ; \
- (cd $(HOST_SUBDIR)/fixincludes && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif fixincludes
-
-
-
.PHONY: configure-flex maybe-configure-flex
maybe-configure-flex:
@if flex
maybe-configure-flex: configure-flex
-configure-flex:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-flex:
+ @test ! -f flex/Makefile || exit 0; \
+ [ -d flex ] || mkdir flex; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/flex/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/flex ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/flex; \
- cd "$(HOST_SUBDIR)/flex" || exit 1; \
+ echo Configuring in flex; \
+ cd flex || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/flex/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/flex"; \
+ libsrcdir="$$s/flex";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/flex"; \
+ libsrcdir="$$s/flex";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/flex"; \
- libsrcdir="$$s/flex"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif flex
-
-
-
-
.PHONY: all-flex maybe-all-flex
maybe-all-flex:
@if flex
-TARGET-flex=all
maybe-all-flex: all-flex
all-flex: configure-flex
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/flex && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-flex))
+ (cd flex && $(MAKE) $(FLAGS_TO_PASS) all)
@endif flex
-
-
-
.PHONY: check-flex maybe-check-flex
maybe-check-flex:
@if flex
@@ -10011,13 +8005,12 @@ maybe-check-flex: check-flex
# This module is only tested in a native toolchain.
check-flex:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/flex && \
- $(MAKE) $(FLAGS_TO_PASS) check); \
+ (cd flex && $(MAKE) $(FLAGS_TO_PASS) check); \
fi
@endif flex
@@ -10028,12 +8021,11 @@ maybe-install-flex:
maybe-install-flex: install-flex
install-flex: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/flex && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd flex && $(MAKE) $(FLAGS_TO_PASS) install)
@endif flex
@@ -10046,16 +8038,16 @@ maybe-info-flex: info-flex
info-flex: \
configure-flex
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10072,16 +8064,16 @@ maybe-dvi-flex: dvi-flex
dvi-flex: \
configure-flex
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10091,32 +8083,6 @@ dvi-flex: \
@endif flex
-.PHONY: maybe-html-flex html-flex
-maybe-html-flex:
-@if flex
-maybe-html-flex: html-flex
-
-html-flex: \
- configure-flex
- @: $(MAKE); $(unstage)
- @[ -f ./flex/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif flex
-
.PHONY: maybe-TAGS-flex TAGS-flex
maybe-TAGS-flex:
@if flex
@@ -10124,16 +8090,16 @@ maybe-TAGS-flex: TAGS-flex
TAGS-flex: \
configure-flex
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10151,16 +8117,16 @@ maybe-install-info-flex: install-info-flex
install-info-flex: \
configure-flex \
info-flex
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10177,16 +8143,16 @@ maybe-installcheck-flex: installcheck-flex
installcheck-flex: \
configure-flex
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10202,16 +8168,16 @@ maybe-mostlyclean-flex:
maybe-mostlyclean-flex: mostlyclean-flex
mostlyclean-flex:
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10227,16 +8193,16 @@ maybe-clean-flex:
maybe-clean-flex: clean-flex
clean-flex:
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10252,16 +8218,16 @@ maybe-distclean-flex:
maybe-distclean-flex: distclean-flex
distclean-flex:
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10277,16 +8243,16 @@ maybe-maintainer-clean-flex:
maybe-maintainer-clean-flex: maintainer-clean-flex
maintainer-clean-flex:
- @: $(MAKE); $(unstage)
@[ -f ./flex/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in flex" ; \
- (cd $(HOST_SUBDIR)/flex && \
+ (cd flex && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10297,422 +8263,59 @@ maintainer-clean-flex:
@endif flex
-
.PHONY: configure-gas maybe-configure-gas
maybe-configure-gas:
@if gas
maybe-configure-gas: configure-gas
-configure-gas:
-@endif gas
-@if gas-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif gas-bootstrap
-@if gas
- @r=`${PWD_COMMAND}`; export r; \
+configure-gas:
+ @test -f stage_last && exit 0; \
+ test ! -f gas/Makefile || exit 0; \
+ [ -d gas ] || mkdir gas; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gas; \
- cd "$(HOST_SUBDIR)/gas" || exit 1; \
+ echo Configuring in gas; \
+ cd gas || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gas
-
-
-.PHONY: configure-stage1-gas maybe-configure-stage1-gas
-maybe-configure-stage1-gas:
-@if gas-bootstrap
-maybe-configure-stage1-gas: configure-stage1-gas
-configure-stage1-gas:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif gas-bootstrap
-
-.PHONY: configure-stage2-gas maybe-configure-stage2-gas
-maybe-configure-stage2-gas:
-@if gas-bootstrap
-maybe-configure-stage2-gas: configure-stage2-gas
-configure-stage2-gas:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gas-bootstrap
-
-.PHONY: configure-stage3-gas maybe-configure-stage3-gas
-maybe-configure-stage3-gas:
-@if gas-bootstrap
-maybe-configure-stage3-gas: configure-stage3-gas
-configure-stage3-gas:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gas-bootstrap
-
-.PHONY: configure-stage4-gas maybe-configure-stage4-gas
-maybe-configure-stage4-gas:
-@if gas-bootstrap
-maybe-configure-stage4-gas: configure-stage4-gas
-configure-stage4-gas:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gas-bootstrap
-
-.PHONY: configure-stageprofile-gas maybe-configure-stageprofile-gas
-maybe-configure-stageprofile-gas:
-@if gas-bootstrap
-maybe-configure-stageprofile-gas: configure-stageprofile-gas
-configure-stageprofile-gas:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gas-bootstrap
-
-.PHONY: configure-stagefeedback-gas maybe-configure-stagefeedback-gas
-maybe-configure-stagefeedback-gas:
-@if gas-bootstrap
-maybe-configure-stagefeedback-gas: configure-stagefeedback-gas
-configure-stagefeedback-gas:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/gas ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
- cd $(HOST_SUBDIR)/gas || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gas"; \
- libsrcdir="$$s/gas"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gas-bootstrap
-
-
-
-
-
.PHONY: all-gas maybe-all-gas
maybe-all-gas:
@if gas
-TARGET-gas=all
maybe-all-gas: all-gas
all-gas: configure-gas
-@endif gas
-@if gas-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif gas-bootstrap
-@if gas
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gas))
+ (cd gas && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gas
-
-
-.PHONY: all-stage1-gas maybe-all-stage1-gas
-.PHONY: clean-stage1-gas maybe-clean-stage1-gas
-maybe-all-stage1-gas:
-maybe-clean-stage1-gas:
-@if gas-bootstrap
-maybe-all-stage1-gas: all-stage1-gas
-all-stage1: all-stage1-gas
-TARGET-stage1-gas = $(TARGET-gas)
-all-stage1-gas: configure-stage1-gas
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-gas)
-
-maybe-clean-stage1-gas: clean-stage1-gas
-clean-stage1: clean-stage1-gas
-clean-stage1-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif gas-bootstrap
-
-
-.PHONY: all-stage2-gas maybe-all-stage2-gas
-.PHONY: clean-stage2-gas maybe-clean-stage2-gas
-maybe-all-stage2-gas:
-maybe-clean-stage2-gas:
-@if gas-bootstrap
-maybe-all-stage2-gas: all-stage2-gas
-all-stage2: all-stage2-gas
-TARGET-stage2-gas = $(TARGET-gas)
-all-stage2-gas: configure-stage2-gas
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-gas)
-
-maybe-clean-stage2-gas: clean-stage2-gas
-clean-stage2: clean-stage2-gas
-clean-stage2-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif gas-bootstrap
-
-
-.PHONY: all-stage3-gas maybe-all-stage3-gas
-.PHONY: clean-stage3-gas maybe-clean-stage3-gas
-maybe-all-stage3-gas:
-maybe-clean-stage3-gas:
-@if gas-bootstrap
-maybe-all-stage3-gas: all-stage3-gas
-all-stage3: all-stage3-gas
-TARGET-stage3-gas = $(TARGET-gas)
-all-stage3-gas: configure-stage3-gas
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-gas)
-
-maybe-clean-stage3-gas: clean-stage3-gas
-clean-stage3: clean-stage3-gas
-clean-stage3-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif gas-bootstrap
-
-
-.PHONY: all-stage4-gas maybe-all-stage4-gas
-.PHONY: clean-stage4-gas maybe-clean-stage4-gas
-maybe-all-stage4-gas:
-maybe-clean-stage4-gas:
-@if gas-bootstrap
-maybe-all-stage4-gas: all-stage4-gas
-all-stage4: all-stage4-gas
-TARGET-stage4-gas = $(TARGET-gas)
-all-stage4-gas: configure-stage4-gas
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-gas)
-
-maybe-clean-stage4-gas: clean-stage4-gas
-clean-stage4: clean-stage4-gas
-clean-stage4-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif gas-bootstrap
-
-
-.PHONY: all-stageprofile-gas maybe-all-stageprofile-gas
-.PHONY: clean-stageprofile-gas maybe-clean-stageprofile-gas
-maybe-all-stageprofile-gas:
-maybe-clean-stageprofile-gas:
-@if gas-bootstrap
-maybe-all-stageprofile-gas: all-stageprofile-gas
-all-stageprofile: all-stageprofile-gas
-TARGET-stageprofile-gas = $(TARGET-gas)
-all-stageprofile-gas: configure-stageprofile-gas
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-gas)
-
-maybe-clean-stageprofile-gas: clean-stageprofile-gas
-clean-stageprofile: clean-stageprofile-gas
-clean-stageprofile-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif gas-bootstrap
-
-
-.PHONY: all-stagefeedback-gas maybe-all-stagefeedback-gas
-.PHONY: clean-stagefeedback-gas maybe-clean-stagefeedback-gas
-maybe-all-stagefeedback-gas:
-maybe-clean-stagefeedback-gas:
-@if gas-bootstrap
-maybe-all-stagefeedback-gas: all-stagefeedback-gas
-all-stagefeedback: all-stagefeedback-gas
-TARGET-stagefeedback-gas = $(TARGET-gas)
-all-stagefeedback-gas: configure-stagefeedback-gas
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-gas)
-
-maybe-clean-stagefeedback-gas: clean-stagefeedback-gas
-clean-stagefeedback: clean-stagefeedback-gas
-clean-stagefeedback-gas:
- @[ -f $(HOST_SUBDIR)/gas/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-gas/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif gas-bootstrap
-
-
-
-
-
.PHONY: check-gas maybe-check-gas
maybe-check-gas:
@if gas
maybe-check-gas: check-gas
check-gas:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gas && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gas
@@ -10722,12 +8325,11 @@ maybe-install-gas:
maybe-install-gas: install-gas
install-gas: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gas && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gas
@@ -10743,12 +8345,13 @@ info-gas: \
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10768,12 +8371,13 @@ dvi-gas: \
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10783,31 +8387,6 @@ dvi-gas: \
@endif gas
-.PHONY: maybe-html-gas html-gas
-maybe-html-gas:
-@if gas
-maybe-html-gas: html-gas
-
-html-gas: \
- configure-gas
- @[ -f ./gas/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gas
-
.PHONY: maybe-TAGS-gas TAGS-gas
maybe-TAGS-gas:
@if gas
@@ -10818,12 +8397,13 @@ TAGS-gas: \
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10844,12 +8424,13 @@ install-info-gas: \
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10869,12 +8450,13 @@ installcheck-gas: \
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10893,12 +8475,13 @@ mostlyclean-gas:
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10917,12 +8500,13 @@ clean-gas:
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10941,12 +8525,13 @@ distclean-gas:
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10965,12 +8550,13 @@ maintainer-clean-gas:
@[ -f ./gas/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gas" ; \
- (cd $(HOST_SUBDIR)/gas && \
+ (cd gas && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -10981,422 +8567,60 @@ maintainer-clean-gas:
@endif gas
-
.PHONY: configure-gcc maybe-configure-gcc
maybe-configure-gcc:
@if gcc
maybe-configure-gcc: configure-gcc
-configure-gcc:
-@endif gcc
-@if gcc-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif gcc-bootstrap
-@if gcc
- @r=`${PWD_COMMAND}`; export r; \
+configure-gcc:
+ @test -f stage_last && exit 0; \
+ test ! -f gcc/Makefile || exit 0; \
+ [ -d gcc ] || mkdir gcc; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gcc; \
- cd "$(HOST_SUBDIR)/gcc" || exit 1; \
+ echo Configuring in gcc; \
+ cd gcc || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gcc
-
-
-.PHONY: configure-stage1-gcc maybe-configure-stage1-gcc
-maybe-configure-stage1-gcc:
-@if gcc-bootstrap
-maybe-configure-stage1-gcc: configure-stage1-gcc
-configure-stage1-gcc:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif gcc-bootstrap
-
-.PHONY: configure-stage2-gcc maybe-configure-stage2-gcc
-maybe-configure-stage2-gcc:
-@if gcc-bootstrap
-maybe-configure-stage2-gcc: configure-stage2-gcc
-configure-stage2-gcc:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gcc-bootstrap
-
-.PHONY: configure-stage3-gcc maybe-configure-stage3-gcc
-maybe-configure-stage3-gcc:
-@if gcc-bootstrap
-maybe-configure-stage3-gcc: configure-stage3-gcc
-configure-stage3-gcc:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gcc-bootstrap
-
-.PHONY: configure-stage4-gcc maybe-configure-stage4-gcc
-maybe-configure-stage4-gcc:
-@if gcc-bootstrap
-maybe-configure-stage4-gcc: configure-stage4-gcc
-configure-stage4-gcc:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gcc-bootstrap
-
-.PHONY: configure-stageprofile-gcc maybe-configure-stageprofile-gcc
-maybe-configure-stageprofile-gcc:
-@if gcc-bootstrap
-maybe-configure-stageprofile-gcc: configure-stageprofile-gcc
-configure-stageprofile-gcc:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gcc-bootstrap
-
-.PHONY: configure-stagefeedback-gcc maybe-configure-stagefeedback-gcc
-maybe-configure-stagefeedback-gcc:
-@if gcc-bootstrap
-maybe-configure-stagefeedback-gcc: configure-stagefeedback-gcc
-configure-stagefeedback-gcc:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/gcc ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
- cd $(HOST_SUBDIR)/gcc || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gcc"; \
- libsrcdir="$$s/gcc"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif gcc-bootstrap
-
-
-
-
-
.PHONY: all-gcc maybe-all-gcc
maybe-all-gcc:
@if gcc
-TARGET-gcc=`if [ -f stage_last ]; then echo quickstrap ; else echo all; fi`
maybe-all-gcc: all-gcc
all-gcc: configure-gcc
-@endif gcc
-@if gcc-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif gcc-bootstrap
-@if gcc
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) $(TARGET-gcc))
+ (cd gcc && $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
+ `if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi` )
@endif gcc
-
-
-.PHONY: all-stage1-gcc maybe-all-stage1-gcc
-.PHONY: clean-stage1-gcc maybe-clean-stage1-gcc
-maybe-all-stage1-gcc:
-maybe-clean-stage1-gcc:
-@if gcc-bootstrap
-maybe-all-stage1-gcc: all-stage1-gcc
-all-stage1: all-stage1-gcc
-TARGET-stage1-gcc = $(TARGET-gcc)
-all-stage1-gcc: configure-stage1-gcc
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS) \
- $(TARGET-stage1-gcc)
-
-maybe-clean-stage1-gcc: clean-stage1-gcc
-clean-stage1: clean-stage1-gcc
-clean-stage1-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-.PHONY: all-stage2-gcc maybe-all-stage2-gcc
-.PHONY: clean-stage2-gcc maybe-clean-stage2-gcc
-maybe-all-stage2-gcc:
-maybe-clean-stage2-gcc:
-@if gcc-bootstrap
-maybe-all-stage2-gcc: all-stage2-gcc
-all-stage2: all-stage2-gcc
-TARGET-stage2-gcc = $(TARGET-gcc)
-all-stage2-gcc: configure-stage2-gcc
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
- $(TARGET-stage2-gcc)
-
-maybe-clean-stage2-gcc: clean-stage2-gcc
-clean-stage2: clean-stage2-gcc
-clean-stage2-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-.PHONY: all-stage3-gcc maybe-all-stage3-gcc
-.PHONY: clean-stage3-gcc maybe-clean-stage3-gcc
-maybe-all-stage3-gcc:
-maybe-clean-stage3-gcc:
-@if gcc-bootstrap
-maybe-all-stage3-gcc: all-stage3-gcc
-all-stage3: all-stage3-gcc
-TARGET-stage3-gcc = $(TARGET-gcc)
-all-stage3-gcc: configure-stage3-gcc
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
- $(TARGET-stage3-gcc)
-
-maybe-clean-stage3-gcc: clean-stage3-gcc
-clean-stage3: clean-stage3-gcc
-clean-stage3-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-.PHONY: all-stage4-gcc maybe-all-stage4-gcc
-.PHONY: clean-stage4-gcc maybe-clean-stage4-gcc
-maybe-all-stage4-gcc:
-maybe-clean-stage4-gcc:
-@if gcc-bootstrap
-maybe-all-stage4-gcc: all-stage4-gcc
-all-stage4: all-stage4-gcc
-TARGET-stage4-gcc = $(TARGET-gcc)
-all-stage4-gcc: configure-stage4-gcc
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) \
- $(TARGET-stage4-gcc)
-
-maybe-clean-stage4-gcc: clean-stage4-gcc
-clean-stage4: clean-stage4-gcc
-clean-stage4-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-.PHONY: all-stageprofile-gcc maybe-all-stageprofile-gcc
-.PHONY: clean-stageprofile-gcc maybe-clean-stageprofile-gcc
-maybe-all-stageprofile-gcc:
-maybe-clean-stageprofile-gcc:
-@if gcc-bootstrap
-maybe-all-stageprofile-gcc: all-stageprofile-gcc
-all-stageprofile: all-stageprofile-gcc
-TARGET-stageprofile-gcc = $(TARGET-gcc)
-all-stageprofile-gcc: configure-stageprofile-gcc
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS) \
- $(TARGET-stageprofile-gcc)
-
-maybe-clean-stageprofile-gcc: clean-stageprofile-gcc
-clean-stageprofile: clean-stageprofile-gcc
-clean-stageprofile-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-.PHONY: all-stagefeedback-gcc maybe-all-stagefeedback-gcc
-.PHONY: clean-stagefeedback-gcc maybe-clean-stagefeedback-gcc
-maybe-all-stagefeedback-gcc:
-maybe-clean-stagefeedback-gcc:
-@if gcc-bootstrap
-maybe-all-stagefeedback-gcc: all-stagefeedback-gcc
-all-stagefeedback: all-stagefeedback-gcc
-TARGET-stagefeedback-gcc = $(TARGET-gcc)
-all-stagefeedback-gcc: configure-stagefeedback-gcc
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS) \
- $(TARGET-stagefeedback-gcc)
-
-maybe-clean-stagefeedback-gcc: clean-stagefeedback-gcc
-clean-stagefeedback: clean-stagefeedback-gcc
-clean-stagefeedback-gcc:
- @[ -f $(HOST_SUBDIR)/gcc/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-gcc/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS) clean
-@endif gcc-bootstrap
-
-
-
-
-
.PHONY: check-gcc maybe-check-gcc
maybe-check-gcc:
@if gcc
maybe-check-gcc: check-gcc
check-gcc:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) check)
+ (cd gcc && $(MAKE) $(FLAGS_TO_PASS)$(EXTRA_GCC_FLAGS) check)
@endif gcc
@@ -11406,12 +8630,11 @@ maybe-install-gcc:
maybe-install-gcc: install-gcc
install-gcc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) install)
+ (cd gcc && $(MAKE) $(FLAGS_TO_PASS)$(EXTRA_GCC_FLAGS) install)
@endif gcc
@@ -11427,12 +8650,13 @@ info-gcc: \
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11452,12 +8676,13 @@ dvi-gcc: \
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11467,31 +8692,6 @@ dvi-gcc: \
@endif gcc
-.PHONY: maybe-html-gcc html-gcc
-maybe-html-gcc:
-@if gcc
-maybe-html-gcc: html-gcc
-
-html-gcc: \
- configure-gcc
- @[ -f ./gcc/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gcc
-
.PHONY: maybe-TAGS-gcc TAGS-gcc
maybe-TAGS-gcc:
@if gcc
@@ -11502,12 +8702,13 @@ TAGS-gcc: \
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11528,12 +8729,13 @@ install-info-gcc: \
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11553,12 +8755,13 @@ installcheck-gcc: \
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11577,12 +8780,13 @@ mostlyclean-gcc:
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11601,12 +8805,13 @@ clean-gcc:
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11625,12 +8830,13 @@ distclean-gcc:
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11649,12 +8855,13 @@ maintainer-clean-gcc:
@[ -f ./gcc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gcc" ; \
- (cd $(HOST_SUBDIR)/gcc && \
+ (cd gcc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11665,65 +8872,57 @@ maintainer-clean-gcc:
@endif gcc
-
.PHONY: configure-gawk maybe-configure-gawk
maybe-configure-gawk:
@if gawk
maybe-configure-gawk: configure-gawk
-configure-gawk:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gawk:
+ @test ! -f gawk/Makefile || exit 0; \
+ [ -d gawk ] || mkdir gawk; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gawk/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gawk ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gawk; \
- cd "$(HOST_SUBDIR)/gawk" || exit 1; \
+ echo Configuring in gawk; \
+ cd gawk || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gawk/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gawk"; \
+ libsrcdir="$$s/gawk";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gawk"; \
+ libsrcdir="$$s/gawk";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gawk"; \
- libsrcdir="$$s/gawk"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gawk
-
-
-
-
.PHONY: all-gawk maybe-all-gawk
maybe-all-gawk:
@if gawk
-TARGET-gawk=all
maybe-all-gawk: all-gawk
all-gawk: configure-gawk
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gawk && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gawk))
+ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gawk
-
-
-
.PHONY: check-gawk maybe-check-gawk
maybe-check-gawk:
@if gawk
maybe-check-gawk: check-gawk
check-gawk:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gawk && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gawk
@@ -11733,12 +8932,11 @@ maybe-install-gawk:
maybe-install-gawk: install-gawk
install-gawk: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gawk && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gawk
@@ -11751,16 +8949,16 @@ maybe-info-gawk: info-gawk
info-gawk: \
configure-gawk
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11777,16 +8975,16 @@ maybe-dvi-gawk: dvi-gawk
dvi-gawk: \
configure-gawk
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11796,32 +8994,6 @@ dvi-gawk: \
@endif gawk
-.PHONY: maybe-html-gawk html-gawk
-maybe-html-gawk:
-@if gawk
-maybe-html-gawk: html-gawk
-
-html-gawk: \
- configure-gawk
- @: $(MAKE); $(unstage)
- @[ -f ./gawk/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gawk
-
.PHONY: maybe-TAGS-gawk TAGS-gawk
maybe-TAGS-gawk:
@if gawk
@@ -11829,16 +9001,16 @@ maybe-TAGS-gawk: TAGS-gawk
TAGS-gawk: \
configure-gawk
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11856,16 +9028,16 @@ maybe-install-info-gawk: install-info-gawk
install-info-gawk: \
configure-gawk \
info-gawk
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11882,16 +9054,16 @@ maybe-installcheck-gawk: installcheck-gawk
installcheck-gawk: \
configure-gawk
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11907,16 +9079,16 @@ maybe-mostlyclean-gawk:
maybe-mostlyclean-gawk: mostlyclean-gawk
mostlyclean-gawk:
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11932,16 +9104,16 @@ maybe-clean-gawk:
maybe-clean-gawk: clean-gawk
clean-gawk:
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11957,16 +9129,16 @@ maybe-distclean-gawk:
maybe-distclean-gawk: distclean-gawk
distclean-gawk:
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -11982,16 +9154,16 @@ maybe-maintainer-clean-gawk:
maybe-maintainer-clean-gawk: maintainer-clean-gawk
maintainer-clean-gawk:
- @: $(MAKE); $(unstage)
@[ -f ./gawk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gawk" ; \
- (cd $(HOST_SUBDIR)/gawk && \
+ (cd gawk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12002,65 +9174,57 @@ maintainer-clean-gawk:
@endif gawk
-
.PHONY: configure-gettext maybe-configure-gettext
maybe-configure-gettext:
@if gettext
maybe-configure-gettext: configure-gettext
-configure-gettext:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gettext:
+ @test ! -f gettext/Makefile || exit 0; \
+ [ -d gettext ] || mkdir gettext; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gettext/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gettext; \
- cd "$(HOST_SUBDIR)/gettext" || exit 1; \
+ echo Configuring in gettext; \
+ cd gettext || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gettext/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gettext"; \
+ libsrcdir="$$s/gettext";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gettext"; \
+ libsrcdir="$$s/gettext";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gettext"; \
- libsrcdir="$$s/gettext"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gettext
-
-
-
-
.PHONY: all-gettext maybe-all-gettext
maybe-all-gettext:
@if gettext
-TARGET-gettext=all
maybe-all-gettext: all-gettext
all-gettext: configure-gettext
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gettext && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gettext))
+ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gettext
-
-
-
.PHONY: check-gettext maybe-check-gettext
maybe-check-gettext:
@if gettext
maybe-check-gettext: check-gettext
check-gettext:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gettext && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gettext
@@ -12070,12 +9234,11 @@ maybe-install-gettext:
maybe-install-gettext: install-gettext
install-gettext: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gettext && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gettext
@@ -12088,16 +9251,16 @@ maybe-info-gettext: info-gettext
info-gettext: \
configure-gettext
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12114,16 +9277,16 @@ maybe-dvi-gettext: dvi-gettext
dvi-gettext: \
configure-gettext
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12133,32 +9296,6 @@ dvi-gettext: \
@endif gettext
-.PHONY: maybe-html-gettext html-gettext
-maybe-html-gettext:
-@if gettext
-maybe-html-gettext: html-gettext
-
-html-gettext: \
- configure-gettext
- @: $(MAKE); $(unstage)
- @[ -f ./gettext/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gettext
-
.PHONY: maybe-TAGS-gettext TAGS-gettext
maybe-TAGS-gettext:
@if gettext
@@ -12166,16 +9303,16 @@ maybe-TAGS-gettext: TAGS-gettext
TAGS-gettext: \
configure-gettext
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12193,16 +9330,16 @@ maybe-install-info-gettext: install-info-gettext
install-info-gettext: \
configure-gettext \
info-gettext
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12219,16 +9356,16 @@ maybe-installcheck-gettext: installcheck-gettext
installcheck-gettext: \
configure-gettext
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12244,16 +9381,16 @@ maybe-mostlyclean-gettext:
maybe-mostlyclean-gettext: mostlyclean-gettext
mostlyclean-gettext:
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12269,16 +9406,16 @@ maybe-clean-gettext:
maybe-clean-gettext: clean-gettext
clean-gettext:
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12294,16 +9431,16 @@ maybe-distclean-gettext:
maybe-distclean-gettext: distclean-gettext
distclean-gettext:
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12319,16 +9456,16 @@ maybe-maintainer-clean-gettext:
maybe-maintainer-clean-gettext: maintainer-clean-gettext
maintainer-clean-gettext:
- @: $(MAKE); $(unstage)
@[ -f ./gettext/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gettext" ; \
- (cd $(HOST_SUBDIR)/gettext && \
+ (cd gettext && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12339,65 +9476,57 @@ maintainer-clean-gettext:
@endif gettext
-
.PHONY: configure-gnuserv maybe-configure-gnuserv
maybe-configure-gnuserv:
@if gnuserv
maybe-configure-gnuserv: configure-gnuserv
-configure-gnuserv:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gnuserv:
+ @test ! -f gnuserv/Makefile || exit 0; \
+ [ -d gnuserv ] || mkdir gnuserv; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gnuserv/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gnuserv ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gnuserv; \
- cd "$(HOST_SUBDIR)/gnuserv" || exit 1; \
+ echo Configuring in gnuserv; \
+ cd gnuserv || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gnuserv/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gnuserv"; \
+ libsrcdir="$$s/gnuserv";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gnuserv"; \
+ libsrcdir="$$s/gnuserv";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gnuserv"; \
- libsrcdir="$$s/gnuserv"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gnuserv
-
-
-
-
.PHONY: all-gnuserv maybe-all-gnuserv
maybe-all-gnuserv:
@if gnuserv
-TARGET-gnuserv=all
maybe-all-gnuserv: all-gnuserv
all-gnuserv: configure-gnuserv
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnuserv && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gnuserv))
+ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gnuserv
-
-
-
.PHONY: check-gnuserv maybe-check-gnuserv
maybe-check-gnuserv:
@if gnuserv
maybe-check-gnuserv: check-gnuserv
check-gnuserv:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnuserv && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gnuserv
@@ -12407,12 +9536,11 @@ maybe-install-gnuserv:
maybe-install-gnuserv: install-gnuserv
install-gnuserv: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnuserv && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gnuserv
@@ -12425,16 +9553,16 @@ maybe-info-gnuserv: info-gnuserv
info-gnuserv: \
configure-gnuserv
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12451,16 +9579,16 @@ maybe-dvi-gnuserv: dvi-gnuserv
dvi-gnuserv: \
configure-gnuserv
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12470,32 +9598,6 @@ dvi-gnuserv: \
@endif gnuserv
-.PHONY: maybe-html-gnuserv html-gnuserv
-maybe-html-gnuserv:
-@if gnuserv
-maybe-html-gnuserv: html-gnuserv
-
-html-gnuserv: \
- configure-gnuserv
- @: $(MAKE); $(unstage)
- @[ -f ./gnuserv/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gnuserv
-
.PHONY: maybe-TAGS-gnuserv TAGS-gnuserv
maybe-TAGS-gnuserv:
@if gnuserv
@@ -12503,16 +9605,16 @@ maybe-TAGS-gnuserv: TAGS-gnuserv
TAGS-gnuserv: \
configure-gnuserv
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12530,16 +9632,16 @@ maybe-install-info-gnuserv: install-info-gnuserv
install-info-gnuserv: \
configure-gnuserv \
info-gnuserv
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12556,16 +9658,16 @@ maybe-installcheck-gnuserv: installcheck-gnuserv
installcheck-gnuserv: \
configure-gnuserv
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12581,16 +9683,16 @@ maybe-mostlyclean-gnuserv:
maybe-mostlyclean-gnuserv: mostlyclean-gnuserv
mostlyclean-gnuserv:
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12606,16 +9708,16 @@ maybe-clean-gnuserv:
maybe-clean-gnuserv: clean-gnuserv
clean-gnuserv:
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12631,16 +9733,16 @@ maybe-distclean-gnuserv:
maybe-distclean-gnuserv: distclean-gnuserv
distclean-gnuserv:
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12656,16 +9758,16 @@ maybe-maintainer-clean-gnuserv:
maybe-maintainer-clean-gnuserv: maintainer-clean-gnuserv
maintainer-clean-gnuserv:
- @: $(MAKE); $(unstage)
@[ -f ./gnuserv/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gnuserv" ; \
- (cd $(HOST_SUBDIR)/gnuserv && \
+ (cd gnuserv && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12676,65 +9778,57 @@ maintainer-clean-gnuserv:
@endif gnuserv
-
.PHONY: configure-gprof maybe-configure-gprof
maybe-configure-gprof:
@if gprof
maybe-configure-gprof: configure-gprof
-configure-gprof:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gprof:
+ @test ! -f gprof/Makefile || exit 0; \
+ [ -d gprof ] || mkdir gprof; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gprof/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gprof ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gprof; \
- cd "$(HOST_SUBDIR)/gprof" || exit 1; \
+ echo Configuring in gprof; \
+ cd gprof || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gprof/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gprof"; \
+ libsrcdir="$$s/gprof";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gprof"; \
+ libsrcdir="$$s/gprof";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gprof"; \
- libsrcdir="$$s/gprof"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gprof
-
-
-
-
.PHONY: all-gprof maybe-all-gprof
maybe-all-gprof:
@if gprof
-TARGET-gprof=all
maybe-all-gprof: all-gprof
all-gprof: configure-gprof
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gprof && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gprof))
+ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gprof
-
-
-
.PHONY: check-gprof maybe-check-gprof
maybe-check-gprof:
@if gprof
maybe-check-gprof: check-gprof
check-gprof:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gprof && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gprof
@@ -12744,12 +9838,11 @@ maybe-install-gprof:
maybe-install-gprof: install-gprof
install-gprof: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gprof && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gprof
@@ -12762,16 +9855,16 @@ maybe-info-gprof: info-gprof
info-gprof: \
configure-gprof
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12788,16 +9881,16 @@ maybe-dvi-gprof: dvi-gprof
dvi-gprof: \
configure-gprof
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12807,32 +9900,6 @@ dvi-gprof: \
@endif gprof
-.PHONY: maybe-html-gprof html-gprof
-maybe-html-gprof:
-@if gprof
-maybe-html-gprof: html-gprof
-
-html-gprof: \
- configure-gprof
- @: $(MAKE); $(unstage)
- @[ -f ./gprof/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gprof
-
.PHONY: maybe-TAGS-gprof TAGS-gprof
maybe-TAGS-gprof:
@if gprof
@@ -12840,16 +9907,16 @@ maybe-TAGS-gprof: TAGS-gprof
TAGS-gprof: \
configure-gprof
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12867,16 +9934,16 @@ maybe-install-info-gprof: install-info-gprof
install-info-gprof: \
configure-gprof \
info-gprof
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12893,16 +9960,16 @@ maybe-installcheck-gprof: installcheck-gprof
installcheck-gprof: \
configure-gprof
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12918,16 +9985,16 @@ maybe-mostlyclean-gprof:
maybe-mostlyclean-gprof: mostlyclean-gprof
mostlyclean-gprof:
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12943,16 +10010,16 @@ maybe-clean-gprof:
maybe-clean-gprof: clean-gprof
clean-gprof:
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12968,16 +10035,16 @@ maybe-distclean-gprof:
maybe-distclean-gprof: distclean-gprof
distclean-gprof:
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -12993,16 +10060,16 @@ maybe-maintainer-clean-gprof:
maybe-maintainer-clean-gprof: maintainer-clean-gprof
maintainer-clean-gprof:
- @: $(MAKE); $(unstage)
@[ -f ./gprof/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gprof" ; \
- (cd $(HOST_SUBDIR)/gprof && \
+ (cd gprof && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13013,65 +10080,57 @@ maintainer-clean-gprof:
@endif gprof
-
.PHONY: configure-gzip maybe-configure-gzip
maybe-configure-gzip:
@if gzip
maybe-configure-gzip: configure-gzip
-configure-gzip:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gzip:
+ @test ! -f gzip/Makefile || exit 0; \
+ [ -d gzip ] || mkdir gzip; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gzip/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gzip ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gzip; \
- cd "$(HOST_SUBDIR)/gzip" || exit 1; \
+ echo Configuring in gzip; \
+ cd gzip || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gzip/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gzip"; \
+ libsrcdir="$$s/gzip";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gzip"; \
+ libsrcdir="$$s/gzip";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gzip"; \
- libsrcdir="$$s/gzip"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gzip
-
-
-
-
.PHONY: all-gzip maybe-all-gzip
maybe-all-gzip:
@if gzip
-TARGET-gzip=all
maybe-all-gzip: all-gzip
all-gzip: configure-gzip
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gzip && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gzip))
+ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) all)
@endif gzip
-
-
-
.PHONY: check-gzip maybe-check-gzip
maybe-check-gzip:
@if gzip
maybe-check-gzip: check-gzip
check-gzip:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gzip && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) check)
@endif gzip
@@ -13081,12 +10140,11 @@ maybe-install-gzip:
maybe-install-gzip: install-gzip
install-gzip: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gzip && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) install)
@endif gzip
@@ -13099,16 +10157,16 @@ maybe-info-gzip: info-gzip
info-gzip: \
configure-gzip
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13125,16 +10183,16 @@ maybe-dvi-gzip: dvi-gzip
dvi-gzip: \
configure-gzip
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13144,32 +10202,6 @@ dvi-gzip: \
@endif gzip
-.PHONY: maybe-html-gzip html-gzip
-maybe-html-gzip:
-@if gzip
-maybe-html-gzip: html-gzip
-
-html-gzip: \
- configure-gzip
- @: $(MAKE); $(unstage)
- @[ -f ./gzip/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gzip
-
.PHONY: maybe-TAGS-gzip TAGS-gzip
maybe-TAGS-gzip:
@if gzip
@@ -13177,16 +10209,16 @@ maybe-TAGS-gzip: TAGS-gzip
TAGS-gzip: \
configure-gzip
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13204,16 +10236,16 @@ maybe-install-info-gzip: install-info-gzip
install-info-gzip: \
configure-gzip \
info-gzip
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13230,16 +10262,16 @@ maybe-installcheck-gzip: installcheck-gzip
installcheck-gzip: \
configure-gzip
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13255,16 +10287,16 @@ maybe-mostlyclean-gzip:
maybe-mostlyclean-gzip: mostlyclean-gzip
mostlyclean-gzip:
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13280,16 +10312,16 @@ maybe-clean-gzip:
maybe-clean-gzip: clean-gzip
clean-gzip:
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13305,16 +10337,16 @@ maybe-distclean-gzip:
maybe-distclean-gzip: distclean-gzip
distclean-gzip:
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13330,16 +10362,16 @@ maybe-maintainer-clean-gzip:
maybe-maintainer-clean-gzip: maintainer-clean-gzip
maintainer-clean-gzip:
- @: $(MAKE); $(unstage)
@[ -f ./gzip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gzip" ; \
- (cd $(HOST_SUBDIR)/gzip && \
+ (cd gzip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13350,65 +10382,57 @@ maintainer-clean-gzip:
@endif gzip
-
.PHONY: configure-hello maybe-configure-hello
maybe-configure-hello:
@if hello
maybe-configure-hello: configure-hello
-configure-hello:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-hello:
+ @test ! -f hello/Makefile || exit 0; \
+ [ -d hello ] || mkdir hello; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/hello/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/hello ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/hello; \
- cd "$(HOST_SUBDIR)/hello" || exit 1; \
+ echo Configuring in hello; \
+ cd hello || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/hello/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/hello"; \
+ libsrcdir="$$s/hello";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/hello"; \
+ libsrcdir="$$s/hello";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/hello"; \
- libsrcdir="$$s/hello"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif hello
-
-
-
-
.PHONY: all-hello maybe-all-hello
maybe-all-hello:
@if hello
-TARGET-hello=all
maybe-all-hello: all-hello
all-hello: configure-hello
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/hello && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-hello))
+ (cd hello && $(MAKE) $(FLAGS_TO_PASS) all)
@endif hello
-
-
-
.PHONY: check-hello maybe-check-hello
maybe-check-hello:
@if hello
maybe-check-hello: check-hello
check-hello:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/hello && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd hello && $(MAKE) $(FLAGS_TO_PASS) check)
@endif hello
@@ -13418,12 +10442,11 @@ maybe-install-hello:
maybe-install-hello: install-hello
install-hello: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/hello && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd hello && $(MAKE) $(FLAGS_TO_PASS) install)
@endif hello
@@ -13436,16 +10459,16 @@ maybe-info-hello: info-hello
info-hello: \
configure-hello
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13462,16 +10485,16 @@ maybe-dvi-hello: dvi-hello
dvi-hello: \
configure-hello
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13481,32 +10504,6 @@ dvi-hello: \
@endif hello
-.PHONY: maybe-html-hello html-hello
-maybe-html-hello:
-@if hello
-maybe-html-hello: html-hello
-
-html-hello: \
- configure-hello
- @: $(MAKE); $(unstage)
- @[ -f ./hello/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif hello
-
.PHONY: maybe-TAGS-hello TAGS-hello
maybe-TAGS-hello:
@if hello
@@ -13514,16 +10511,16 @@ maybe-TAGS-hello: TAGS-hello
TAGS-hello: \
configure-hello
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13541,16 +10538,16 @@ maybe-install-info-hello: install-info-hello
install-info-hello: \
configure-hello \
info-hello
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13567,16 +10564,16 @@ maybe-installcheck-hello: installcheck-hello
installcheck-hello: \
configure-hello
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13592,16 +10589,16 @@ maybe-mostlyclean-hello:
maybe-mostlyclean-hello: mostlyclean-hello
mostlyclean-hello:
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13617,16 +10614,16 @@ maybe-clean-hello:
maybe-clean-hello: clean-hello
clean-hello:
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13642,16 +10639,16 @@ maybe-distclean-hello:
maybe-distclean-hello: distclean-hello
distclean-hello:
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13667,16 +10664,16 @@ maybe-maintainer-clean-hello:
maybe-maintainer-clean-hello: maintainer-clean-hello
maintainer-clean-hello:
- @: $(MAKE); $(unstage)
@[ -f ./hello/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in hello" ; \
- (cd $(HOST_SUBDIR)/hello && \
+ (cd hello && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13687,65 +10684,57 @@ maintainer-clean-hello:
@endif hello
-
.PHONY: configure-indent maybe-configure-indent
maybe-configure-indent:
@if indent
maybe-configure-indent: configure-indent
-configure-indent:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-indent:
+ @test ! -f indent/Makefile || exit 0; \
+ [ -d indent ] || mkdir indent; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/indent/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/indent ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/indent; \
- cd "$(HOST_SUBDIR)/indent" || exit 1; \
+ echo Configuring in indent; \
+ cd indent || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/indent/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/indent"; \
+ libsrcdir="$$s/indent";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/indent"; \
+ libsrcdir="$$s/indent";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/indent"; \
- libsrcdir="$$s/indent"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif indent
-
-
-
-
.PHONY: all-indent maybe-all-indent
maybe-all-indent:
@if indent
-TARGET-indent=all
maybe-all-indent: all-indent
all-indent: configure-indent
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/indent && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-indent))
+ (cd indent && $(MAKE) $(FLAGS_TO_PASS) all)
@endif indent
-
-
-
.PHONY: check-indent maybe-check-indent
maybe-check-indent:
@if indent
maybe-check-indent: check-indent
check-indent:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/indent && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd indent && $(MAKE) $(FLAGS_TO_PASS) check)
@endif indent
@@ -13755,12 +10744,11 @@ maybe-install-indent:
maybe-install-indent: install-indent
install-indent: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/indent && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd indent && $(MAKE) $(FLAGS_TO_PASS) install)
@endif indent
@@ -13773,16 +10761,16 @@ maybe-info-indent: info-indent
info-indent: \
configure-indent
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13799,16 +10787,16 @@ maybe-dvi-indent: dvi-indent
dvi-indent: \
configure-indent
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13818,32 +10806,6 @@ dvi-indent: \
@endif indent
-.PHONY: maybe-html-indent html-indent
-maybe-html-indent:
-@if indent
-maybe-html-indent: html-indent
-
-html-indent: \
- configure-indent
- @: $(MAKE); $(unstage)
- @[ -f ./indent/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif indent
-
.PHONY: maybe-TAGS-indent TAGS-indent
maybe-TAGS-indent:
@if indent
@@ -13851,16 +10813,16 @@ maybe-TAGS-indent: TAGS-indent
TAGS-indent: \
configure-indent
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13878,16 +10840,16 @@ maybe-install-info-indent: install-info-indent
install-info-indent: \
configure-indent \
info-indent
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13904,16 +10866,16 @@ maybe-installcheck-indent: installcheck-indent
installcheck-indent: \
configure-indent
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13929,16 +10891,16 @@ maybe-mostlyclean-indent:
maybe-mostlyclean-indent: mostlyclean-indent
mostlyclean-indent:
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13954,16 +10916,16 @@ maybe-clean-indent:
maybe-clean-indent: clean-indent
clean-indent:
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -13979,16 +10941,16 @@ maybe-distclean-indent:
maybe-distclean-indent: distclean-indent
distclean-indent:
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14004,16 +10966,16 @@ maybe-maintainer-clean-indent:
maybe-maintainer-clean-indent: maintainer-clean-indent
maintainer-clean-indent:
- @: $(MAKE); $(unstage)
@[ -f ./indent/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in indent" ; \
- (cd $(HOST_SUBDIR)/indent && \
+ (cd indent && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14024,422 +10986,59 @@ maintainer-clean-indent:
@endif indent
-
.PHONY: configure-intl maybe-configure-intl
maybe-configure-intl:
@if intl
maybe-configure-intl: configure-intl
-configure-intl:
-@endif intl
-@if intl-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif intl-bootstrap
-@if intl
- @r=`${PWD_COMMAND}`; export r; \
+configure-intl:
+ @test -f stage_last && exit 0; \
+ test ! -f intl/Makefile || exit 0; \
+ [ -d intl ] || mkdir intl; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/intl; \
- cd "$(HOST_SUBDIR)/intl" || exit 1; \
+ echo Configuring in intl; \
+ cd intl || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif intl
-
-
-.PHONY: configure-stage1-intl maybe-configure-stage1-intl
-maybe-configure-stage1-intl:
-@if intl-bootstrap
-maybe-configure-stage1-intl: configure-stage1-intl
-configure-stage1-intl:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif intl-bootstrap
-
-.PHONY: configure-stage2-intl maybe-configure-stage2-intl
-maybe-configure-stage2-intl:
-@if intl-bootstrap
-maybe-configure-stage2-intl: configure-stage2-intl
-configure-stage2-intl:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif intl-bootstrap
-
-.PHONY: configure-stage3-intl maybe-configure-stage3-intl
-maybe-configure-stage3-intl:
-@if intl-bootstrap
-maybe-configure-stage3-intl: configure-stage3-intl
-configure-stage3-intl:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif intl-bootstrap
-
-.PHONY: configure-stage4-intl maybe-configure-stage4-intl
-maybe-configure-stage4-intl:
-@if intl-bootstrap
-maybe-configure-stage4-intl: configure-stage4-intl
-configure-stage4-intl:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif intl-bootstrap
-
-.PHONY: configure-stageprofile-intl maybe-configure-stageprofile-intl
-maybe-configure-stageprofile-intl:
-@if intl-bootstrap
-maybe-configure-stageprofile-intl: configure-stageprofile-intl
-configure-stageprofile-intl:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif intl-bootstrap
-
-.PHONY: configure-stagefeedback-intl maybe-configure-stagefeedback-intl
-maybe-configure-stagefeedback-intl:
-@if intl-bootstrap
-maybe-configure-stagefeedback-intl: configure-stagefeedback-intl
-configure-stagefeedback-intl:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/intl ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
- cd $(HOST_SUBDIR)/intl || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/intl"; \
- libsrcdir="$$s/intl"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif intl-bootstrap
-
-
-
-
-
.PHONY: all-intl maybe-all-intl
maybe-all-intl:
@if intl
-TARGET-intl=all
maybe-all-intl: all-intl
all-intl: configure-intl
-@endif intl
-@if intl-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif intl-bootstrap
-@if intl
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-intl))
+ (cd intl && $(MAKE) $(FLAGS_TO_PASS) all)
@endif intl
-
-
-.PHONY: all-stage1-intl maybe-all-stage1-intl
-.PHONY: clean-stage1-intl maybe-clean-stage1-intl
-maybe-all-stage1-intl:
-maybe-clean-stage1-intl:
-@if intl-bootstrap
-maybe-all-stage1-intl: all-stage1-intl
-all-stage1: all-stage1-intl
-TARGET-stage1-intl = $(TARGET-intl)
-all-stage1-intl: configure-stage1-intl
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-intl)
-
-maybe-clean-stage1-intl: clean-stage1-intl
-clean-stage1: clean-stage1-intl
-clean-stage1-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif intl-bootstrap
-
-
-.PHONY: all-stage2-intl maybe-all-stage2-intl
-.PHONY: clean-stage2-intl maybe-clean-stage2-intl
-maybe-all-stage2-intl:
-maybe-clean-stage2-intl:
-@if intl-bootstrap
-maybe-all-stage2-intl: all-stage2-intl
-all-stage2: all-stage2-intl
-TARGET-stage2-intl = $(TARGET-intl)
-all-stage2-intl: configure-stage2-intl
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-intl)
-
-maybe-clean-stage2-intl: clean-stage2-intl
-clean-stage2: clean-stage2-intl
-clean-stage2-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif intl-bootstrap
-
-
-.PHONY: all-stage3-intl maybe-all-stage3-intl
-.PHONY: clean-stage3-intl maybe-clean-stage3-intl
-maybe-all-stage3-intl:
-maybe-clean-stage3-intl:
-@if intl-bootstrap
-maybe-all-stage3-intl: all-stage3-intl
-all-stage3: all-stage3-intl
-TARGET-stage3-intl = $(TARGET-intl)
-all-stage3-intl: configure-stage3-intl
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-intl)
-
-maybe-clean-stage3-intl: clean-stage3-intl
-clean-stage3: clean-stage3-intl
-clean-stage3-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif intl-bootstrap
-
-
-.PHONY: all-stage4-intl maybe-all-stage4-intl
-.PHONY: clean-stage4-intl maybe-clean-stage4-intl
-maybe-all-stage4-intl:
-maybe-clean-stage4-intl:
-@if intl-bootstrap
-maybe-all-stage4-intl: all-stage4-intl
-all-stage4: all-stage4-intl
-TARGET-stage4-intl = $(TARGET-intl)
-all-stage4-intl: configure-stage4-intl
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-intl)
-
-maybe-clean-stage4-intl: clean-stage4-intl
-clean-stage4: clean-stage4-intl
-clean-stage4-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif intl-bootstrap
-
-
-.PHONY: all-stageprofile-intl maybe-all-stageprofile-intl
-.PHONY: clean-stageprofile-intl maybe-clean-stageprofile-intl
-maybe-all-stageprofile-intl:
-maybe-clean-stageprofile-intl:
-@if intl-bootstrap
-maybe-all-stageprofile-intl: all-stageprofile-intl
-all-stageprofile: all-stageprofile-intl
-TARGET-stageprofile-intl = $(TARGET-intl)
-all-stageprofile-intl: configure-stageprofile-intl
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-intl)
-
-maybe-clean-stageprofile-intl: clean-stageprofile-intl
-clean-stageprofile: clean-stageprofile-intl
-clean-stageprofile-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif intl-bootstrap
-
-
-.PHONY: all-stagefeedback-intl maybe-all-stagefeedback-intl
-.PHONY: clean-stagefeedback-intl maybe-clean-stagefeedback-intl
-maybe-all-stagefeedback-intl:
-maybe-clean-stagefeedback-intl:
-@if intl-bootstrap
-maybe-all-stagefeedback-intl: all-stagefeedback-intl
-all-stagefeedback: all-stagefeedback-intl
-TARGET-stagefeedback-intl = $(TARGET-intl)
-all-stagefeedback-intl: configure-stagefeedback-intl
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-intl)
-
-maybe-clean-stagefeedback-intl: clean-stagefeedback-intl
-clean-stagefeedback: clean-stagefeedback-intl
-clean-stagefeedback-intl:
- @[ -f $(HOST_SUBDIR)/intl/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-intl/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif intl-bootstrap
-
-
-
-
-
.PHONY: check-intl maybe-check-intl
maybe-check-intl:
@if intl
maybe-check-intl: check-intl
check-intl:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd intl && $(MAKE) $(FLAGS_TO_PASS) check)
@endif intl
@@ -14449,12 +11048,11 @@ maybe-install-intl:
maybe-install-intl: install-intl
install-intl: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd intl && $(MAKE) $(FLAGS_TO_PASS) install)
@endif intl
@@ -14470,12 +11068,13 @@ info-intl: \
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14495,12 +11094,13 @@ dvi-intl: \
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14510,31 +11110,6 @@ dvi-intl: \
@endif intl
-.PHONY: maybe-html-intl html-intl
-maybe-html-intl:
-@if intl
-maybe-html-intl: html-intl
-
-html-intl: \
- configure-intl
- @[ -f ./intl/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif intl
-
.PHONY: maybe-TAGS-intl TAGS-intl
maybe-TAGS-intl:
@if intl
@@ -14545,12 +11120,13 @@ TAGS-intl: \
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14571,12 +11147,13 @@ install-info-intl: \
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14596,12 +11173,13 @@ installcheck-intl: \
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14620,12 +11198,13 @@ mostlyclean-intl:
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14644,12 +11223,13 @@ clean-intl:
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14668,12 +11248,13 @@ distclean-intl:
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14692,12 +11273,13 @@ maintainer-clean-intl:
@[ -f ./intl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in intl" ; \
- (cd $(HOST_SUBDIR)/intl && \
+ (cd intl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14708,65 +11290,57 @@ maintainer-clean-intl:
@endif intl
-
.PHONY: configure-tcl maybe-configure-tcl
maybe-configure-tcl:
@if tcl
maybe-configure-tcl: configure-tcl
-configure-tcl:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-tcl:
+ @test ! -f tcl/Makefile || exit 0; \
+ [ -d tcl ] || mkdir tcl; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/tcl/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tcl ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/tcl; \
- cd "$(HOST_SUBDIR)/tcl" || exit 1; \
+ echo Configuring in tcl; \
+ cd tcl || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/tcl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/tcl"; \
+ libsrcdir="$$s/tcl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/tcl"; \
+ libsrcdir="$$s/tcl";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/tcl"; \
- libsrcdir="$$s/tcl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif tcl
-
-
-
-
.PHONY: all-tcl maybe-all-tcl
maybe-all-tcl:
@if tcl
-TARGET-tcl=all
maybe-all-tcl: all-tcl
all-tcl: configure-tcl
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tcl && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-tcl))
+ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) all)
@endif tcl
-
-
-
.PHONY: check-tcl maybe-check-tcl
maybe-check-tcl:
@if tcl
maybe-check-tcl: check-tcl
check-tcl:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tcl && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) check)
@endif tcl
@@ -14776,12 +11350,11 @@ maybe-install-tcl:
maybe-install-tcl: install-tcl
install-tcl: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tcl && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) install)
@endif tcl
@@ -14794,16 +11367,16 @@ maybe-info-tcl: info-tcl
info-tcl: \
configure-tcl
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14820,16 +11393,16 @@ maybe-dvi-tcl: dvi-tcl
dvi-tcl: \
configure-tcl
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14839,32 +11412,6 @@ dvi-tcl: \
@endif tcl
-.PHONY: maybe-html-tcl html-tcl
-maybe-html-tcl:
-@if tcl
-maybe-html-tcl: html-tcl
-
-html-tcl: \
- configure-tcl
- @: $(MAKE); $(unstage)
- @[ -f ./tcl/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif tcl
-
.PHONY: maybe-TAGS-tcl TAGS-tcl
maybe-TAGS-tcl:
@if tcl
@@ -14872,16 +11419,16 @@ maybe-TAGS-tcl: TAGS-tcl
TAGS-tcl: \
configure-tcl
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14899,16 +11446,16 @@ maybe-install-info-tcl: install-info-tcl
install-info-tcl: \
configure-tcl \
info-tcl
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14925,16 +11472,16 @@ maybe-installcheck-tcl: installcheck-tcl
installcheck-tcl: \
configure-tcl
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14960,16 +11507,16 @@ maybe-clean-tcl:
maybe-clean-tcl: clean-tcl
clean-tcl:
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -14985,16 +11532,16 @@ maybe-distclean-tcl:
maybe-distclean-tcl: distclean-tcl
distclean-tcl:
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15010,16 +11557,16 @@ maybe-maintainer-clean-tcl:
maybe-maintainer-clean-tcl: maintainer-clean-tcl
maintainer-clean-tcl:
- @: $(MAKE); $(unstage)
@[ -f ./tcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in tcl" ; \
- (cd $(HOST_SUBDIR)/tcl && \
+ (cd tcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15030,65 +11577,57 @@ maintainer-clean-tcl:
@endif tcl
-
.PHONY: configure-itcl maybe-configure-itcl
maybe-configure-itcl:
@if itcl
maybe-configure-itcl: configure-itcl
-configure-itcl:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-itcl:
+ @test ! -f itcl/Makefile || exit 0; \
+ [ -d itcl ] || mkdir itcl; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/itcl/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/itcl ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/itcl; \
- cd "$(HOST_SUBDIR)/itcl" || exit 1; \
+ echo Configuring in itcl; \
+ cd itcl || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/itcl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/itcl"; \
+ libsrcdir="$$s/itcl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/itcl"; \
+ libsrcdir="$$s/itcl";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/itcl"; \
- libsrcdir="$$s/itcl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif itcl
-
-
-
-
.PHONY: all-itcl maybe-all-itcl
maybe-all-itcl:
@if itcl
-TARGET-itcl=all
maybe-all-itcl: all-itcl
all-itcl: configure-itcl
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/itcl && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-itcl))
+ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) all)
@endif itcl
-
-
-
.PHONY: check-itcl maybe-check-itcl
maybe-check-itcl:
@if itcl
maybe-check-itcl: check-itcl
check-itcl:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/itcl && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) check)
@endif itcl
@@ -15098,12 +11637,11 @@ maybe-install-itcl:
maybe-install-itcl: install-itcl
install-itcl: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/itcl && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) install)
@endif itcl
@@ -15116,16 +11654,16 @@ maybe-info-itcl: info-itcl
info-itcl: \
configure-itcl
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15142,16 +11680,16 @@ maybe-dvi-itcl: dvi-itcl
dvi-itcl: \
configure-itcl
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15161,32 +11699,6 @@ dvi-itcl: \
@endif itcl
-.PHONY: maybe-html-itcl html-itcl
-maybe-html-itcl:
-@if itcl
-maybe-html-itcl: html-itcl
-
-html-itcl: \
- configure-itcl
- @: $(MAKE); $(unstage)
- @[ -f ./itcl/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif itcl
-
.PHONY: maybe-TAGS-itcl TAGS-itcl
maybe-TAGS-itcl:
@if itcl
@@ -15194,16 +11706,16 @@ maybe-TAGS-itcl: TAGS-itcl
TAGS-itcl: \
configure-itcl
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15221,16 +11733,16 @@ maybe-install-info-itcl: install-info-itcl
install-info-itcl: \
configure-itcl \
info-itcl
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15247,16 +11759,16 @@ maybe-installcheck-itcl: installcheck-itcl
installcheck-itcl: \
configure-itcl
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15272,16 +11784,16 @@ maybe-mostlyclean-itcl:
maybe-mostlyclean-itcl: mostlyclean-itcl
mostlyclean-itcl:
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15297,16 +11809,16 @@ maybe-clean-itcl:
maybe-clean-itcl: clean-itcl
clean-itcl:
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15322,16 +11834,16 @@ maybe-distclean-itcl:
maybe-distclean-itcl: distclean-itcl
distclean-itcl:
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15347,16 +11859,16 @@ maybe-maintainer-clean-itcl:
maybe-maintainer-clean-itcl: maintainer-clean-itcl
maintainer-clean-itcl:
- @: $(MAKE); $(unstage)
@[ -f ./itcl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in itcl" ; \
- (cd $(HOST_SUBDIR)/itcl && \
+ (cd itcl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15367,422 +11879,59 @@ maintainer-clean-itcl:
@endif itcl
-
.PHONY: configure-ld maybe-configure-ld
maybe-configure-ld:
@if ld
maybe-configure-ld: configure-ld
-configure-ld:
-@endif ld
-@if ld-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif ld-bootstrap
-@if ld
- @r=`${PWD_COMMAND}`; export r; \
+configure-ld:
+ @test -f stage_last && exit 0; \
+ test ! -f ld/Makefile || exit 0; \
+ [ -d ld ] || mkdir ld; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/ld; \
- cd "$(HOST_SUBDIR)/ld" || exit 1; \
+ echo Configuring in ld; \
+ cd ld || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif ld
-
-
-.PHONY: configure-stage1-ld maybe-configure-stage1-ld
-maybe-configure-stage1-ld:
-@if ld-bootstrap
-maybe-configure-stage1-ld: configure-stage1-ld
-configure-stage1-ld:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif ld-bootstrap
-
-.PHONY: configure-stage2-ld maybe-configure-stage2-ld
-maybe-configure-stage2-ld:
-@if ld-bootstrap
-maybe-configure-stage2-ld: configure-stage2-ld
-configure-stage2-ld:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif ld-bootstrap
-
-.PHONY: configure-stage3-ld maybe-configure-stage3-ld
-maybe-configure-stage3-ld:
-@if ld-bootstrap
-maybe-configure-stage3-ld: configure-stage3-ld
-configure-stage3-ld:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif ld-bootstrap
-
-.PHONY: configure-stage4-ld maybe-configure-stage4-ld
-maybe-configure-stage4-ld:
-@if ld-bootstrap
-maybe-configure-stage4-ld: configure-stage4-ld
-configure-stage4-ld:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif ld-bootstrap
-
-.PHONY: configure-stageprofile-ld maybe-configure-stageprofile-ld
-maybe-configure-stageprofile-ld:
-@if ld-bootstrap
-maybe-configure-stageprofile-ld: configure-stageprofile-ld
-configure-stageprofile-ld:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif ld-bootstrap
-
-.PHONY: configure-stagefeedback-ld maybe-configure-stagefeedback-ld
-maybe-configure-stagefeedback-ld:
-@if ld-bootstrap
-maybe-configure-stagefeedback-ld: configure-stagefeedback-ld
-configure-stagefeedback-ld:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/ld ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
- cd $(HOST_SUBDIR)/ld || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/ld"; \
- libsrcdir="$$s/ld"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif ld-bootstrap
-
-
-
-
-
.PHONY: all-ld maybe-all-ld
maybe-all-ld:
@if ld
-TARGET-ld=all
maybe-all-ld: all-ld
all-ld: configure-ld
-@endif ld
-@if ld-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif ld-bootstrap
-@if ld
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-ld))
+ (cd ld && $(MAKE) $(FLAGS_TO_PASS) all)
@endif ld
-
-
-.PHONY: all-stage1-ld maybe-all-stage1-ld
-.PHONY: clean-stage1-ld maybe-clean-stage1-ld
-maybe-all-stage1-ld:
-maybe-clean-stage1-ld:
-@if ld-bootstrap
-maybe-all-stage1-ld: all-stage1-ld
-all-stage1: all-stage1-ld
-TARGET-stage1-ld = $(TARGET-ld)
-all-stage1-ld: configure-stage1-ld
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-ld)
-
-maybe-clean-stage1-ld: clean-stage1-ld
-clean-stage1: clean-stage1-ld
-clean-stage1-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif ld-bootstrap
-
-
-.PHONY: all-stage2-ld maybe-all-stage2-ld
-.PHONY: clean-stage2-ld maybe-clean-stage2-ld
-maybe-all-stage2-ld:
-maybe-clean-stage2-ld:
-@if ld-bootstrap
-maybe-all-stage2-ld: all-stage2-ld
-all-stage2: all-stage2-ld
-TARGET-stage2-ld = $(TARGET-ld)
-all-stage2-ld: configure-stage2-ld
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-ld)
-
-maybe-clean-stage2-ld: clean-stage2-ld
-clean-stage2: clean-stage2-ld
-clean-stage2-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ld-bootstrap
-
-
-.PHONY: all-stage3-ld maybe-all-stage3-ld
-.PHONY: clean-stage3-ld maybe-clean-stage3-ld
-maybe-all-stage3-ld:
-maybe-clean-stage3-ld:
-@if ld-bootstrap
-maybe-all-stage3-ld: all-stage3-ld
-all-stage3: all-stage3-ld
-TARGET-stage3-ld = $(TARGET-ld)
-all-stage3-ld: configure-stage3-ld
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-ld)
-
-maybe-clean-stage3-ld: clean-stage3-ld
-clean-stage3: clean-stage3-ld
-clean-stage3-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ld-bootstrap
-
-
-.PHONY: all-stage4-ld maybe-all-stage4-ld
-.PHONY: clean-stage4-ld maybe-clean-stage4-ld
-maybe-all-stage4-ld:
-maybe-clean-stage4-ld:
-@if ld-bootstrap
-maybe-all-stage4-ld: all-stage4-ld
-all-stage4: all-stage4-ld
-TARGET-stage4-ld = $(TARGET-ld)
-all-stage4-ld: configure-stage4-ld
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-ld)
-
-maybe-clean-stage4-ld: clean-stage4-ld
-clean-stage4: clean-stage4-ld
-clean-stage4-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif ld-bootstrap
-
-
-.PHONY: all-stageprofile-ld maybe-all-stageprofile-ld
-.PHONY: clean-stageprofile-ld maybe-clean-stageprofile-ld
-maybe-all-stageprofile-ld:
-maybe-clean-stageprofile-ld:
-@if ld-bootstrap
-maybe-all-stageprofile-ld: all-stageprofile-ld
-all-stageprofile: all-stageprofile-ld
-TARGET-stageprofile-ld = $(TARGET-ld)
-all-stageprofile-ld: configure-stageprofile-ld
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-ld)
-
-maybe-clean-stageprofile-ld: clean-stageprofile-ld
-clean-stageprofile: clean-stageprofile-ld
-clean-stageprofile-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif ld-bootstrap
-
-
-.PHONY: all-stagefeedback-ld maybe-all-stagefeedback-ld
-.PHONY: clean-stagefeedback-ld maybe-clean-stagefeedback-ld
-maybe-all-stagefeedback-ld:
-maybe-clean-stagefeedback-ld:
-@if ld-bootstrap
-maybe-all-stagefeedback-ld: all-stagefeedback-ld
-all-stagefeedback: all-stagefeedback-ld
-TARGET-stagefeedback-ld = $(TARGET-ld)
-all-stagefeedback-ld: configure-stagefeedback-ld
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-ld)
-
-maybe-clean-stagefeedback-ld: clean-stagefeedback-ld
-clean-stagefeedback: clean-stagefeedback-ld
-clean-stagefeedback-ld:
- @[ -f $(HOST_SUBDIR)/ld/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-ld/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif ld-bootstrap
-
-
-
-
-
.PHONY: check-ld maybe-check-ld
maybe-check-ld:
@if ld
maybe-check-ld: check-ld
check-ld:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd ld && $(MAKE) $(FLAGS_TO_PASS) check)
@endif ld
@@ -15792,12 +11941,11 @@ maybe-install-ld:
maybe-install-ld: install-ld
install-ld: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd ld && $(MAKE) $(FLAGS_TO_PASS) install)
@endif ld
@@ -15813,12 +11961,13 @@ info-ld: \
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15838,12 +11987,13 @@ dvi-ld: \
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15853,31 +12003,6 @@ dvi-ld: \
@endif ld
-.PHONY: maybe-html-ld html-ld
-maybe-html-ld:
-@if ld
-maybe-html-ld: html-ld
-
-html-ld: \
- configure-ld
- @[ -f ./ld/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif ld
-
.PHONY: maybe-TAGS-ld TAGS-ld
maybe-TAGS-ld:
@if ld
@@ -15888,12 +12013,13 @@ TAGS-ld: \
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15914,12 +12040,13 @@ install-info-ld: \
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15939,12 +12066,13 @@ installcheck-ld: \
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15963,12 +12091,13 @@ mostlyclean-ld:
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -15987,12 +12116,13 @@ clean-ld:
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16011,12 +12141,13 @@ distclean-ld:
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16035,12 +12166,13 @@ maintainer-clean-ld:
@[ -f ./ld/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in ld" ; \
- (cd $(HOST_SUBDIR)/ld && \
+ (cd ld && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16051,422 +12183,59 @@ maintainer-clean-ld:
@endif ld
-
.PHONY: configure-libcpp maybe-configure-libcpp
maybe-configure-libcpp:
@if libcpp
maybe-configure-libcpp: configure-libcpp
-configure-libcpp:
-@endif libcpp
-@if libcpp-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libcpp-bootstrap
-@if libcpp
- @r=`${PWD_COMMAND}`; export r; \
+configure-libcpp:
+ @test -f stage_last && exit 0; \
+ test ! -f libcpp/Makefile || exit 0; \
+ [ -d libcpp ] || mkdir libcpp; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libcpp; \
- cd "$(HOST_SUBDIR)/libcpp" || exit 1; \
+ echo Configuring in libcpp; \
+ cd libcpp || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif libcpp
-
-
-.PHONY: configure-stage1-libcpp maybe-configure-stage1-libcpp
-maybe-configure-stage1-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stage1-libcpp: configure-stage1-libcpp
-configure-stage1-libcpp:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif libcpp-bootstrap
-
-.PHONY: configure-stage2-libcpp maybe-configure-stage2-libcpp
-maybe-configure-stage2-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stage2-libcpp: configure-stage2-libcpp
-configure-stage2-libcpp:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libcpp-bootstrap
-
-.PHONY: configure-stage3-libcpp maybe-configure-stage3-libcpp
-maybe-configure-stage3-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stage3-libcpp: configure-stage3-libcpp
-configure-stage3-libcpp:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libcpp-bootstrap
-
-.PHONY: configure-stage4-libcpp maybe-configure-stage4-libcpp
-maybe-configure-stage4-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stage4-libcpp: configure-stage4-libcpp
-configure-stage4-libcpp:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libcpp-bootstrap
-
-.PHONY: configure-stageprofile-libcpp maybe-configure-stageprofile-libcpp
-maybe-configure-stageprofile-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stageprofile-libcpp: configure-stageprofile-libcpp
-configure-stageprofile-libcpp:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libcpp-bootstrap
-
-.PHONY: configure-stagefeedback-libcpp maybe-configure-stagefeedback-libcpp
-maybe-configure-stagefeedback-libcpp:
-@if libcpp-bootstrap
-maybe-configure-stagefeedback-libcpp: configure-stagefeedback-libcpp
-configure-stagefeedback-libcpp:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/libcpp ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
- cd $(HOST_SUBDIR)/libcpp || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libcpp"; \
- libsrcdir="$$s/libcpp"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libcpp-bootstrap
-
-
-
-
-
.PHONY: all-libcpp maybe-all-libcpp
maybe-all-libcpp:
@if libcpp
-TARGET-libcpp=all
maybe-all-libcpp: all-libcpp
all-libcpp: configure-libcpp
-@endif libcpp
-@if libcpp-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libcpp-bootstrap
-@if libcpp
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libcpp))
+ (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) all)
@endif libcpp
-
-
-.PHONY: all-stage1-libcpp maybe-all-stage1-libcpp
-.PHONY: clean-stage1-libcpp maybe-clean-stage1-libcpp
-maybe-all-stage1-libcpp:
-maybe-clean-stage1-libcpp:
-@if libcpp-bootstrap
-maybe-all-stage1-libcpp: all-stage1-libcpp
-all-stage1: all-stage1-libcpp
-TARGET-stage1-libcpp = $(TARGET-libcpp)
-all-stage1-libcpp: configure-stage1-libcpp
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-libcpp)
-
-maybe-clean-stage1-libcpp: clean-stage1-libcpp
-clean-stage1: clean-stage1-libcpp
-clean-stage1-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif libcpp-bootstrap
-
-
-.PHONY: all-stage2-libcpp maybe-all-stage2-libcpp
-.PHONY: clean-stage2-libcpp maybe-clean-stage2-libcpp
-maybe-all-stage2-libcpp:
-maybe-clean-stage2-libcpp:
-@if libcpp-bootstrap
-maybe-all-stage2-libcpp: all-stage2-libcpp
-all-stage2: all-stage2-libcpp
-TARGET-stage2-libcpp = $(TARGET-libcpp)
-all-stage2-libcpp: configure-stage2-libcpp
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-libcpp)
-
-maybe-clean-stage2-libcpp: clean-stage2-libcpp
-clean-stage2: clean-stage2-libcpp
-clean-stage2-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libcpp-bootstrap
-
-
-.PHONY: all-stage3-libcpp maybe-all-stage3-libcpp
-.PHONY: clean-stage3-libcpp maybe-clean-stage3-libcpp
-maybe-all-stage3-libcpp:
-maybe-clean-stage3-libcpp:
-@if libcpp-bootstrap
-maybe-all-stage3-libcpp: all-stage3-libcpp
-all-stage3: all-stage3-libcpp
-TARGET-stage3-libcpp = $(TARGET-libcpp)
-all-stage3-libcpp: configure-stage3-libcpp
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-libcpp)
-
-maybe-clean-stage3-libcpp: clean-stage3-libcpp
-clean-stage3: clean-stage3-libcpp
-clean-stage3-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libcpp-bootstrap
-
-
-.PHONY: all-stage4-libcpp maybe-all-stage4-libcpp
-.PHONY: clean-stage4-libcpp maybe-clean-stage4-libcpp
-maybe-all-stage4-libcpp:
-maybe-clean-stage4-libcpp:
-@if libcpp-bootstrap
-maybe-all-stage4-libcpp: all-stage4-libcpp
-all-stage4: all-stage4-libcpp
-TARGET-stage4-libcpp = $(TARGET-libcpp)
-all-stage4-libcpp: configure-stage4-libcpp
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-libcpp)
-
-maybe-clean-stage4-libcpp: clean-stage4-libcpp
-clean-stage4: clean-stage4-libcpp
-clean-stage4-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libcpp-bootstrap
-
-
-.PHONY: all-stageprofile-libcpp maybe-all-stageprofile-libcpp
-.PHONY: clean-stageprofile-libcpp maybe-clean-stageprofile-libcpp
-maybe-all-stageprofile-libcpp:
-maybe-clean-stageprofile-libcpp:
-@if libcpp-bootstrap
-maybe-all-stageprofile-libcpp: all-stageprofile-libcpp
-all-stageprofile: all-stageprofile-libcpp
-TARGET-stageprofile-libcpp = $(TARGET-libcpp)
-all-stageprofile-libcpp: configure-stageprofile-libcpp
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-libcpp)
-
-maybe-clean-stageprofile-libcpp: clean-stageprofile-libcpp
-clean-stageprofile: clean-stageprofile-libcpp
-clean-stageprofile-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif libcpp-bootstrap
-
-
-.PHONY: all-stagefeedback-libcpp maybe-all-stagefeedback-libcpp
-.PHONY: clean-stagefeedback-libcpp maybe-clean-stagefeedback-libcpp
-maybe-all-stagefeedback-libcpp:
-maybe-clean-stagefeedback-libcpp:
-@if libcpp-bootstrap
-maybe-all-stagefeedback-libcpp: all-stagefeedback-libcpp
-all-stagefeedback: all-stagefeedback-libcpp
-TARGET-stagefeedback-libcpp = $(TARGET-libcpp)
-all-stagefeedback-libcpp: configure-stagefeedback-libcpp
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-libcpp)
-
-maybe-clean-stagefeedback-libcpp: clean-stagefeedback-libcpp
-clean-stagefeedback: clean-stagefeedback-libcpp
-clean-stagefeedback-libcpp:
- @[ -f $(HOST_SUBDIR)/libcpp/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-libcpp/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif libcpp-bootstrap
-
-
-
-
-
.PHONY: check-libcpp maybe-check-libcpp
maybe-check-libcpp:
@if libcpp
maybe-check-libcpp: check-libcpp
check-libcpp:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) check)
@endif libcpp
@@ -16476,12 +12245,11 @@ maybe-install-libcpp:
maybe-install-libcpp: install-libcpp
install-libcpp: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) install)
@endif libcpp
@@ -16497,12 +12265,13 @@ info-libcpp: \
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16522,12 +12291,13 @@ dvi-libcpp: \
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16537,31 +12307,6 @@ dvi-libcpp: \
@endif libcpp
-.PHONY: maybe-html-libcpp html-libcpp
-maybe-html-libcpp:
-@if libcpp
-maybe-html-libcpp: html-libcpp
-
-html-libcpp: \
- configure-libcpp
- @[ -f ./libcpp/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libcpp
-
.PHONY: maybe-TAGS-libcpp TAGS-libcpp
maybe-TAGS-libcpp:
@if libcpp
@@ -16572,12 +12317,13 @@ TAGS-libcpp: \
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16598,12 +12344,13 @@ install-info-libcpp: \
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16623,12 +12370,13 @@ installcheck-libcpp: \
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16647,12 +12395,13 @@ mostlyclean-libcpp:
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16671,12 +12420,13 @@ clean-libcpp:
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16695,12 +12445,13 @@ distclean-libcpp:
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16719,12 +12470,13 @@ maintainer-clean-libcpp:
@[ -f ./libcpp/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in libcpp" ; \
- (cd $(HOST_SUBDIR)/libcpp && \
+ (cd libcpp && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -16735,749 +12487,57 @@ maintainer-clean-libcpp:
@endif libcpp
-
-.PHONY: configure-libdecnumber maybe-configure-libdecnumber
-maybe-configure-libdecnumber:
-@if libdecnumber
-maybe-configure-libdecnumber: configure-libdecnumber
-configure-libdecnumber:
-@endif libdecnumber
-@if libdecnumber-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libdecnumber-bootstrap
-@if libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- $(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libdecnumber; \
- cd "$(HOST_SUBDIR)/libdecnumber" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif libdecnumber
-
-
-
-.PHONY: configure-stage1-libdecnumber maybe-configure-stage1-libdecnumber
-maybe-configure-stage1-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stage1-libdecnumber: configure-stage1-libdecnumber
-configure-stage1-libdecnumber:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif libdecnumber-bootstrap
-
-.PHONY: configure-stage2-libdecnumber maybe-configure-stage2-libdecnumber
-maybe-configure-stage2-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stage2-libdecnumber: configure-stage2-libdecnumber
-configure-stage2-libdecnumber:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libdecnumber-bootstrap
-
-.PHONY: configure-stage3-libdecnumber maybe-configure-stage3-libdecnumber
-maybe-configure-stage3-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stage3-libdecnumber: configure-stage3-libdecnumber
-configure-stage3-libdecnumber:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libdecnumber-bootstrap
-
-.PHONY: configure-stage4-libdecnumber maybe-configure-stage4-libdecnumber
-maybe-configure-stage4-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stage4-libdecnumber: configure-stage4-libdecnumber
-configure-stage4-libdecnumber:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libdecnumber-bootstrap
-
-.PHONY: configure-stageprofile-libdecnumber maybe-configure-stageprofile-libdecnumber
-maybe-configure-stageprofile-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stageprofile-libdecnumber: configure-stageprofile-libdecnumber
-configure-stageprofile-libdecnumber:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libdecnumber-bootstrap
-
-.PHONY: configure-stagefeedback-libdecnumber maybe-configure-stagefeedback-libdecnumber
-maybe-configure-stagefeedback-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-configure-stagefeedback-libdecnumber: configure-stagefeedback-libdecnumber
-configure-stagefeedback-libdecnumber:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/libdecnumber ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
- cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
- libsrcdir="$$s/libdecnumber"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libdecnumber-bootstrap
-
-
-
-
-
-.PHONY: all-libdecnumber maybe-all-libdecnumber
-maybe-all-libdecnumber:
-@if libdecnumber
-TARGET-libdecnumber=all
-maybe-all-libdecnumber: all-libdecnumber
-all-libdecnumber: configure-libdecnumber
-@endif libdecnumber
-@if libdecnumber-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libdecnumber-bootstrap
-@if libdecnumber
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libdecnumber))
-@endif libdecnumber
-
-
-
-.PHONY: all-stage1-libdecnumber maybe-all-stage1-libdecnumber
-.PHONY: clean-stage1-libdecnumber maybe-clean-stage1-libdecnumber
-maybe-all-stage1-libdecnumber:
-maybe-clean-stage1-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stage1-libdecnumber: all-stage1-libdecnumber
-all-stage1: all-stage1-libdecnumber
-TARGET-stage1-libdecnumber = $(TARGET-libdecnumber)
-all-stage1-libdecnumber: configure-stage1-libdecnumber
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-libdecnumber)
-
-maybe-clean-stage1-libdecnumber: clean-stage1-libdecnumber
-clean-stage1: clean-stage1-libdecnumber
-clean-stage1-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif libdecnumber-bootstrap
-
-
-.PHONY: all-stage2-libdecnumber maybe-all-stage2-libdecnumber
-.PHONY: clean-stage2-libdecnumber maybe-clean-stage2-libdecnumber
-maybe-all-stage2-libdecnumber:
-maybe-clean-stage2-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stage2-libdecnumber: all-stage2-libdecnumber
-all-stage2: all-stage2-libdecnumber
-TARGET-stage2-libdecnumber = $(TARGET-libdecnumber)
-all-stage2-libdecnumber: configure-stage2-libdecnumber
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-libdecnumber)
-
-maybe-clean-stage2-libdecnumber: clean-stage2-libdecnumber
-clean-stage2: clean-stage2-libdecnumber
-clean-stage2-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libdecnumber-bootstrap
-
-
-.PHONY: all-stage3-libdecnumber maybe-all-stage3-libdecnumber
-.PHONY: clean-stage3-libdecnumber maybe-clean-stage3-libdecnumber
-maybe-all-stage3-libdecnumber:
-maybe-clean-stage3-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stage3-libdecnumber: all-stage3-libdecnumber
-all-stage3: all-stage3-libdecnumber
-TARGET-stage3-libdecnumber = $(TARGET-libdecnumber)
-all-stage3-libdecnumber: configure-stage3-libdecnumber
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-libdecnumber)
-
-maybe-clean-stage3-libdecnumber: clean-stage3-libdecnumber
-clean-stage3: clean-stage3-libdecnumber
-clean-stage3-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libdecnumber-bootstrap
-
-
-.PHONY: all-stage4-libdecnumber maybe-all-stage4-libdecnumber
-.PHONY: clean-stage4-libdecnumber maybe-clean-stage4-libdecnumber
-maybe-all-stage4-libdecnumber:
-maybe-clean-stage4-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stage4-libdecnumber: all-stage4-libdecnumber
-all-stage4: all-stage4-libdecnumber
-TARGET-stage4-libdecnumber = $(TARGET-libdecnumber)
-all-stage4-libdecnumber: configure-stage4-libdecnumber
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-libdecnumber)
-
-maybe-clean-stage4-libdecnumber: clean-stage4-libdecnumber
-clean-stage4: clean-stage4-libdecnumber
-clean-stage4-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libdecnumber-bootstrap
-
-
-.PHONY: all-stageprofile-libdecnumber maybe-all-stageprofile-libdecnumber
-.PHONY: clean-stageprofile-libdecnumber maybe-clean-stageprofile-libdecnumber
-maybe-all-stageprofile-libdecnumber:
-maybe-clean-stageprofile-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stageprofile-libdecnumber: all-stageprofile-libdecnumber
-all-stageprofile: all-stageprofile-libdecnumber
-TARGET-stageprofile-libdecnumber = $(TARGET-libdecnumber)
-all-stageprofile-libdecnumber: configure-stageprofile-libdecnumber
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-libdecnumber)
-
-maybe-clean-stageprofile-libdecnumber: clean-stageprofile-libdecnumber
-clean-stageprofile: clean-stageprofile-libdecnumber
-clean-stageprofile-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif libdecnumber-bootstrap
-
-
-.PHONY: all-stagefeedback-libdecnumber maybe-all-stagefeedback-libdecnumber
-.PHONY: clean-stagefeedback-libdecnumber maybe-clean-stagefeedback-libdecnumber
-maybe-all-stagefeedback-libdecnumber:
-maybe-clean-stagefeedback-libdecnumber:
-@if libdecnumber-bootstrap
-maybe-all-stagefeedback-libdecnumber: all-stagefeedback-libdecnumber
-all-stagefeedback: all-stagefeedback-libdecnumber
-TARGET-stagefeedback-libdecnumber = $(TARGET-libdecnumber)
-all-stagefeedback-libdecnumber: configure-stagefeedback-libdecnumber
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-libdecnumber)
-
-maybe-clean-stagefeedback-libdecnumber: clean-stagefeedback-libdecnumber
-clean-stagefeedback: clean-stagefeedback-libdecnumber
-clean-stagefeedback-libdecnumber:
- @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-libdecnumber/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif libdecnumber-bootstrap
-
-
-
-
-
-.PHONY: check-libdecnumber maybe-check-libdecnumber
-maybe-check-libdecnumber:
-@if libdecnumber
-maybe-check-libdecnumber: check-libdecnumber
-
-check-libdecnumber:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) check)
-
-@endif libdecnumber
-
-.PHONY: install-libdecnumber maybe-install-libdecnumber
-maybe-install-libdecnumber:
-@if libdecnumber
-maybe-install-libdecnumber: install-libdecnumber
-
-install-libdecnumber: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(FLAGS_TO_PASS) install)
-
-@endif libdecnumber
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-libdecnumber info-libdecnumber
-maybe-info-libdecnumber:
-@if libdecnumber
-maybe-info-libdecnumber: info-libdecnumber
-
-info-libdecnumber: \
- configure-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing info in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- info) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-dvi-libdecnumber dvi-libdecnumber
-maybe-dvi-libdecnumber:
-@if libdecnumber
-maybe-dvi-libdecnumber: dvi-libdecnumber
-
-dvi-libdecnumber: \
- configure-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing dvi in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- dvi) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-html-libdecnumber html-libdecnumber
-maybe-html-libdecnumber:
-@if libdecnumber
-maybe-html-libdecnumber: html-libdecnumber
-
-html-libdecnumber: \
- configure-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-TAGS-libdecnumber TAGS-libdecnumber
-maybe-TAGS-libdecnumber:
-@if libdecnumber
-maybe-TAGS-libdecnumber: TAGS-libdecnumber
-
-TAGS-libdecnumber: \
- configure-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing TAGS in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- TAGS) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-install-info-libdecnumber install-info-libdecnumber
-maybe-install-info-libdecnumber:
-@if libdecnumber
-maybe-install-info-libdecnumber: install-info-libdecnumber
-
-install-info-libdecnumber: \
- configure-libdecnumber \
- info-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing install-info in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- install-info) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-installcheck-libdecnumber installcheck-libdecnumber
-maybe-installcheck-libdecnumber:
-@if libdecnumber
-maybe-installcheck-libdecnumber: installcheck-libdecnumber
-
-installcheck-libdecnumber: \
- configure-libdecnumber
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing installcheck in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- installcheck) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-mostlyclean-libdecnumber mostlyclean-libdecnumber
-maybe-mostlyclean-libdecnumber:
-@if libdecnumber
-maybe-mostlyclean-libdecnumber: mostlyclean-libdecnumber
-
-mostlyclean-libdecnumber:
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing mostlyclean in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-clean-libdecnumber clean-libdecnumber
-maybe-clean-libdecnumber:
-@if libdecnumber
-maybe-clean-libdecnumber: clean-libdecnumber
-
-clean-libdecnumber:
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing clean in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-distclean-libdecnumber distclean-libdecnumber
-maybe-distclean-libdecnumber:
-@if libdecnumber
-maybe-distclean-libdecnumber: distclean-libdecnumber
-
-distclean-libdecnumber:
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing distclean in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif libdecnumber
-
-.PHONY: maybe-maintainer-clean-libdecnumber maintainer-clean-libdecnumber
-maybe-maintainer-clean-libdecnumber:
-@if libdecnumber
-maybe-maintainer-clean-libdecnumber: maintainer-clean-libdecnumber
-
-maintainer-clean-libdecnumber:
- @[ -f ./libdecnumber/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing maintainer-clean in libdecnumber" ; \
- (cd $(HOST_SUBDIR)/libdecnumber && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif libdecnumber
-
-
-
.PHONY: configure-libgui maybe-configure-libgui
maybe-configure-libgui:
@if libgui
maybe-configure-libgui: configure-libgui
-configure-libgui:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-libgui:
+ @test ! -f libgui/Makefile || exit 0; \
+ [ -d libgui ] || mkdir libgui; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libgui/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgui ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libgui; \
- cd "$(HOST_SUBDIR)/libgui" || exit 1; \
+ echo Configuring in libgui; \
+ cd libgui || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libgui/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libgui"; \
+ libsrcdir="$$s/libgui";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libgui"; \
+ libsrcdir="$$s/libgui";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libgui"; \
- libsrcdir="$$s/libgui"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif libgui
-
-
-
-
.PHONY: all-libgui maybe-all-libgui
maybe-all-libgui:
@if libgui
-TARGET-libgui=all
maybe-all-libgui: all-libgui
all-libgui: configure-libgui
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libgui && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libgui))
+ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) all)
@endif libgui
-
-
-
.PHONY: check-libgui maybe-check-libgui
maybe-check-libgui:
@if libgui
maybe-check-libgui: check-libgui
check-libgui:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libgui && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) check)
@endif libgui
@@ -17487,12 +12547,11 @@ maybe-install-libgui:
maybe-install-libgui: install-libgui
install-libgui: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libgui && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) install)
@endif libgui
@@ -17505,16 +12564,16 @@ maybe-info-libgui: info-libgui
info-libgui: \
configure-libgui
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17531,16 +12590,16 @@ maybe-dvi-libgui: dvi-libgui
dvi-libgui: \
configure-libgui
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17550,32 +12609,6 @@ dvi-libgui: \
@endif libgui
-.PHONY: maybe-html-libgui html-libgui
-maybe-html-libgui:
-@if libgui
-maybe-html-libgui: html-libgui
-
-html-libgui: \
- configure-libgui
- @: $(MAKE); $(unstage)
- @[ -f ./libgui/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libgui
-
.PHONY: maybe-TAGS-libgui TAGS-libgui
maybe-TAGS-libgui:
@if libgui
@@ -17583,16 +12616,16 @@ maybe-TAGS-libgui: TAGS-libgui
TAGS-libgui: \
configure-libgui
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17610,16 +12643,16 @@ maybe-install-info-libgui: install-info-libgui
install-info-libgui: \
configure-libgui \
info-libgui
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17636,16 +12669,16 @@ maybe-installcheck-libgui: installcheck-libgui
installcheck-libgui: \
configure-libgui
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17661,16 +12694,16 @@ maybe-mostlyclean-libgui:
maybe-mostlyclean-libgui: mostlyclean-libgui
mostlyclean-libgui:
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17686,16 +12719,16 @@ maybe-clean-libgui:
maybe-clean-libgui: clean-libgui
clean-libgui:
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17711,16 +12744,16 @@ maybe-distclean-libgui:
maybe-distclean-libgui: distclean-libgui
distclean-libgui:
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17736,16 +12769,16 @@ maybe-maintainer-clean-libgui:
maybe-maintainer-clean-libgui: maintainer-clean-libgui
maintainer-clean-libgui:
- @: $(MAKE); $(unstage)
@[ -f ./libgui/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in libgui" ; \
- (cd $(HOST_SUBDIR)/libgui && \
+ (cd libgui && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -17756,422 +12789,59 @@ maintainer-clean-libgui:
@endif libgui
-
.PHONY: configure-libiberty maybe-configure-libiberty
maybe-configure-libiberty:
@if libiberty
maybe-configure-libiberty: configure-libiberty
-configure-libiberty:
-@endif libiberty
-@if libiberty-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libiberty-bootstrap
-@if libiberty
- @r=`${PWD_COMMAND}`; export r; \
+configure-libiberty:
+ @test -f stage_last && exit 0; \
+ test ! -f libiberty/Makefile || exit 0; \
+ [ -d libiberty ] || mkdir libiberty; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libiberty; \
- cd "$(HOST_SUBDIR)/libiberty" || exit 1; \
+ echo Configuring in libiberty; \
+ cd libiberty || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif libiberty
-
-
-.PHONY: configure-stage1-libiberty maybe-configure-stage1-libiberty
-maybe-configure-stage1-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stage1-libiberty: configure-stage1-libiberty
-configure-stage1-libiberty:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif libiberty-bootstrap
-
-.PHONY: configure-stage2-libiberty maybe-configure-stage2-libiberty
-maybe-configure-stage2-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stage2-libiberty: configure-stage2-libiberty
-configure-stage2-libiberty:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libiberty-bootstrap
-
-.PHONY: configure-stage3-libiberty maybe-configure-stage3-libiberty
-maybe-configure-stage3-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stage3-libiberty: configure-stage3-libiberty
-configure-stage3-libiberty:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libiberty-bootstrap
-
-.PHONY: configure-stage4-libiberty maybe-configure-stage4-libiberty
-maybe-configure-stage4-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stage4-libiberty: configure-stage4-libiberty
-configure-stage4-libiberty:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libiberty-bootstrap
-
-.PHONY: configure-stageprofile-libiberty maybe-configure-stageprofile-libiberty
-maybe-configure-stageprofile-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stageprofile-libiberty: configure-stageprofile-libiberty
-configure-stageprofile-libiberty:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libiberty-bootstrap
-
-.PHONY: configure-stagefeedback-libiberty maybe-configure-stagefeedback-libiberty
-maybe-configure-stagefeedback-libiberty:
-@if libiberty-bootstrap
-maybe-configure-stagefeedback-libiberty: configure-stagefeedback-libiberty
-configure-stagefeedback-libiberty:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/libiberty ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
- cd $(HOST_SUBDIR)/libiberty || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif libiberty-bootstrap
-
-
-
-
-
.PHONY: all-libiberty maybe-all-libiberty
maybe-all-libiberty:
@if libiberty
-TARGET-libiberty=all
maybe-all-libiberty: all-libiberty
all-libiberty: configure-libiberty
-@endif libiberty
-@if libiberty-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif libiberty-bootstrap
-@if libiberty
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libiberty))
+ (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) all)
@endif libiberty
-
-
-.PHONY: all-stage1-libiberty maybe-all-stage1-libiberty
-.PHONY: clean-stage1-libiberty maybe-clean-stage1-libiberty
-maybe-all-stage1-libiberty:
-maybe-clean-stage1-libiberty:
-@if libiberty-bootstrap
-maybe-all-stage1-libiberty: all-stage1-libiberty
-all-stage1: all-stage1-libiberty
-TARGET-stage1-libiberty = $(TARGET-libiberty)
-all-stage1-libiberty: configure-stage1-libiberty
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-libiberty)
-
-maybe-clean-stage1-libiberty: clean-stage1-libiberty
-clean-stage1: clean-stage1-libiberty
-clean-stage1-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif libiberty-bootstrap
-
-
-.PHONY: all-stage2-libiberty maybe-all-stage2-libiberty
-.PHONY: clean-stage2-libiberty maybe-clean-stage2-libiberty
-maybe-all-stage2-libiberty:
-maybe-clean-stage2-libiberty:
-@if libiberty-bootstrap
-maybe-all-stage2-libiberty: all-stage2-libiberty
-all-stage2: all-stage2-libiberty
-TARGET-stage2-libiberty = $(TARGET-libiberty)
-all-stage2-libiberty: configure-stage2-libiberty
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-libiberty)
-
-maybe-clean-stage2-libiberty: clean-stage2-libiberty
-clean-stage2: clean-stage2-libiberty
-clean-stage2-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libiberty-bootstrap
-
-
-.PHONY: all-stage3-libiberty maybe-all-stage3-libiberty
-.PHONY: clean-stage3-libiberty maybe-clean-stage3-libiberty
-maybe-all-stage3-libiberty:
-maybe-clean-stage3-libiberty:
-@if libiberty-bootstrap
-maybe-all-stage3-libiberty: all-stage3-libiberty
-all-stage3: all-stage3-libiberty
-TARGET-stage3-libiberty = $(TARGET-libiberty)
-all-stage3-libiberty: configure-stage3-libiberty
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-libiberty)
-
-maybe-clean-stage3-libiberty: clean-stage3-libiberty
-clean-stage3: clean-stage3-libiberty
-clean-stage3-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libiberty-bootstrap
-
-
-.PHONY: all-stage4-libiberty maybe-all-stage4-libiberty
-.PHONY: clean-stage4-libiberty maybe-clean-stage4-libiberty
-maybe-all-stage4-libiberty:
-maybe-clean-stage4-libiberty:
-@if libiberty-bootstrap
-maybe-all-stage4-libiberty: all-stage4-libiberty
-all-stage4: all-stage4-libiberty
-TARGET-stage4-libiberty = $(TARGET-libiberty)
-all-stage4-libiberty: configure-stage4-libiberty
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-libiberty)
-
-maybe-clean-stage4-libiberty: clean-stage4-libiberty
-clean-stage4: clean-stage4-libiberty
-clean-stage4-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif libiberty-bootstrap
-
-
-.PHONY: all-stageprofile-libiberty maybe-all-stageprofile-libiberty
-.PHONY: clean-stageprofile-libiberty maybe-clean-stageprofile-libiberty
-maybe-all-stageprofile-libiberty:
-maybe-clean-stageprofile-libiberty:
-@if libiberty-bootstrap
-maybe-all-stageprofile-libiberty: all-stageprofile-libiberty
-all-stageprofile: all-stageprofile-libiberty
-TARGET-stageprofile-libiberty = $(TARGET-libiberty)
-all-stageprofile-libiberty: configure-stageprofile-libiberty
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-libiberty)
-
-maybe-clean-stageprofile-libiberty: clean-stageprofile-libiberty
-clean-stageprofile: clean-stageprofile-libiberty
-clean-stageprofile-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif libiberty-bootstrap
-
-
-.PHONY: all-stagefeedback-libiberty maybe-all-stagefeedback-libiberty
-.PHONY: clean-stagefeedback-libiberty maybe-clean-stagefeedback-libiberty
-maybe-all-stagefeedback-libiberty:
-maybe-clean-stagefeedback-libiberty:
-@if libiberty-bootstrap
-maybe-all-stagefeedback-libiberty: all-stagefeedback-libiberty
-all-stagefeedback: all-stagefeedback-libiberty
-TARGET-stagefeedback-libiberty = $(TARGET-libiberty)
-all-stagefeedback-libiberty: configure-stagefeedback-libiberty
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-libiberty)
-
-maybe-clean-stagefeedback-libiberty: clean-stagefeedback-libiberty
-clean-stagefeedback: clean-stagefeedback-libiberty
-clean-stagefeedback-libiberty:
- @[ -f $(HOST_SUBDIR)/libiberty/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-libiberty/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif libiberty-bootstrap
-
-
-
-
-
.PHONY: check-libiberty maybe-check-libiberty
maybe-check-libiberty:
@if libiberty
maybe-check-libiberty: check-libiberty
check-libiberty:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check)
@endif libiberty
@@ -18181,12 +12851,11 @@ maybe-install-libiberty:
maybe-install-libiberty: install-libiberty
install-libiberty: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install)
@endif libiberty
@@ -18202,12 +12871,13 @@ info-libiberty: \
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18227,12 +12897,13 @@ dvi-libiberty: \
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18242,31 +12913,6 @@ dvi-libiberty: \
@endif libiberty
-.PHONY: maybe-html-libiberty html-libiberty
-maybe-html-libiberty:
-@if libiberty
-maybe-html-libiberty: html-libiberty
-
-html-libiberty: \
- configure-libiberty
- @[ -f ./libiberty/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libiberty
-
.PHONY: maybe-TAGS-libiberty TAGS-libiberty
maybe-TAGS-libiberty:
@if libiberty
@@ -18277,12 +12923,13 @@ TAGS-libiberty: \
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18303,12 +12950,13 @@ install-info-libiberty: \
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18328,12 +12976,13 @@ installcheck-libiberty: \
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18352,12 +13001,13 @@ mostlyclean-libiberty:
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18376,12 +13026,13 @@ clean-libiberty:
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18400,12 +13051,13 @@ distclean-libiberty:
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18424,12 +13076,13 @@ maintainer-clean-libiberty:
@[ -f ./libiberty/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in libiberty" ; \
- (cd $(HOST_SUBDIR)/libiberty && \
+ (cd libiberty && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18440,65 +13093,57 @@ maintainer-clean-libiberty:
@endif libiberty
-
.PHONY: configure-libtool maybe-configure-libtool
maybe-configure-libtool:
@if libtool
maybe-configure-libtool: configure-libtool
-configure-libtool:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-libtool:
+ @test ! -f libtool/Makefile || exit 0; \
+ [ -d libtool ] || mkdir libtool; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libtool/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libtool ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libtool; \
- cd "$(HOST_SUBDIR)/libtool" || exit 1; \
+ echo Configuring in libtool; \
+ cd libtool || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libtool/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libtool"; \
+ libsrcdir="$$s/libtool";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libtool"; \
+ libsrcdir="$$s/libtool";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libtool"; \
- libsrcdir="$$s/libtool"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif libtool
-
-
-
-
.PHONY: all-libtool maybe-all-libtool
maybe-all-libtool:
@if libtool
-TARGET-libtool=all
maybe-all-libtool: all-libtool
all-libtool: configure-libtool
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libtool && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libtool))
+ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) all)
@endif libtool
-
-
-
.PHONY: check-libtool maybe-check-libtool
maybe-check-libtool:
@if libtool
maybe-check-libtool: check-libtool
check-libtool:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libtool && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) check)
@endif libtool
@@ -18508,12 +13153,11 @@ maybe-install-libtool:
maybe-install-libtool: install-libtool
install-libtool: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libtool && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) install)
@endif libtool
@@ -18526,16 +13170,16 @@ maybe-info-libtool: info-libtool
info-libtool: \
configure-libtool
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18552,16 +13196,16 @@ maybe-dvi-libtool: dvi-libtool
dvi-libtool: \
configure-libtool
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18571,32 +13215,6 @@ dvi-libtool: \
@endif libtool
-.PHONY: maybe-html-libtool html-libtool
-maybe-html-libtool:
-@if libtool
-maybe-html-libtool: html-libtool
-
-html-libtool: \
- configure-libtool
- @: $(MAKE); $(unstage)
- @[ -f ./libtool/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libtool
-
.PHONY: maybe-TAGS-libtool TAGS-libtool
maybe-TAGS-libtool:
@if libtool
@@ -18604,16 +13222,16 @@ maybe-TAGS-libtool: TAGS-libtool
TAGS-libtool: \
configure-libtool
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18631,16 +13249,16 @@ maybe-install-info-libtool: install-info-libtool
install-info-libtool: \
configure-libtool \
info-libtool
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18657,16 +13275,16 @@ maybe-installcheck-libtool: installcheck-libtool
installcheck-libtool: \
configure-libtool
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18682,16 +13300,16 @@ maybe-mostlyclean-libtool:
maybe-mostlyclean-libtool: mostlyclean-libtool
mostlyclean-libtool:
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18707,16 +13325,16 @@ maybe-clean-libtool:
maybe-clean-libtool: clean-libtool
clean-libtool:
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18732,16 +13350,16 @@ maybe-distclean-libtool:
maybe-distclean-libtool: distclean-libtool
distclean-libtool:
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18757,16 +13375,16 @@ maybe-maintainer-clean-libtool:
maybe-maintainer-clean-libtool: maintainer-clean-libtool
maintainer-clean-libtool:
- @: $(MAKE); $(unstage)
@[ -f ./libtool/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in libtool" ; \
- (cd $(HOST_SUBDIR)/libtool && \
+ (cd libtool && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18777,65 +13395,57 @@ maintainer-clean-libtool:
@endif libtool
-
.PHONY: configure-m4 maybe-configure-m4
maybe-configure-m4:
@if m4
maybe-configure-m4: configure-m4
-configure-m4:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-m4:
+ @test ! -f m4/Makefile || exit 0; \
+ [ -d m4 ] || mkdir m4; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/m4/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/m4 ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/m4; \
- cd "$(HOST_SUBDIR)/m4" || exit 1; \
+ echo Configuring in m4; \
+ cd m4 || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/m4/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/m4"; \
+ libsrcdir="$$s/m4";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/m4"; \
+ libsrcdir="$$s/m4";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/m4"; \
- libsrcdir="$$s/m4"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif m4
-
-
-
-
.PHONY: all-m4 maybe-all-m4
maybe-all-m4:
@if m4
-TARGET-m4=all
maybe-all-m4: all-m4
all-m4: configure-m4
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/m4 && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-m4))
+ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) all)
@endif m4
-
-
-
.PHONY: check-m4 maybe-check-m4
maybe-check-m4:
@if m4
maybe-check-m4: check-m4
check-m4:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/m4 && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) check)
@endif m4
@@ -18845,12 +13455,11 @@ maybe-install-m4:
maybe-install-m4: install-m4
install-m4: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/m4 && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) install)
@endif m4
@@ -18863,16 +13472,16 @@ maybe-info-m4: info-m4
info-m4: \
configure-m4
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18889,16 +13498,16 @@ maybe-dvi-m4: dvi-m4
dvi-m4: \
configure-m4
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18908,32 +13517,6 @@ dvi-m4: \
@endif m4
-.PHONY: maybe-html-m4 html-m4
-maybe-html-m4:
-@if m4
-maybe-html-m4: html-m4
-
-html-m4: \
- configure-m4
- @: $(MAKE); $(unstage)
- @[ -f ./m4/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif m4
-
.PHONY: maybe-TAGS-m4 TAGS-m4
maybe-TAGS-m4:
@if m4
@@ -18941,16 +13524,16 @@ maybe-TAGS-m4: TAGS-m4
TAGS-m4: \
configure-m4
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18968,16 +13551,16 @@ maybe-install-info-m4: install-info-m4
install-info-m4: \
configure-m4 \
info-m4
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -18994,16 +13577,16 @@ maybe-installcheck-m4: installcheck-m4
installcheck-m4: \
configure-m4
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19019,16 +13602,16 @@ maybe-mostlyclean-m4:
maybe-mostlyclean-m4: mostlyclean-m4
mostlyclean-m4:
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19044,16 +13627,16 @@ maybe-clean-m4:
maybe-clean-m4: clean-m4
clean-m4:
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19069,16 +13652,16 @@ maybe-distclean-m4:
maybe-distclean-m4: distclean-m4
distclean-m4:
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19094,16 +13677,16 @@ maybe-maintainer-clean-m4:
maybe-maintainer-clean-m4: maintainer-clean-m4
maintainer-clean-m4:
- @: $(MAKE); $(unstage)
@[ -f ./m4/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in m4" ; \
- (cd $(HOST_SUBDIR)/m4 && \
+ (cd m4 && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19114,65 +13697,57 @@ maintainer-clean-m4:
@endif m4
-
.PHONY: configure-make maybe-configure-make
maybe-configure-make:
@if make
maybe-configure-make: configure-make
-configure-make:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-make:
+ @test ! -f make/Makefile || exit 0; \
+ [ -d make ] || mkdir make; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/make/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/make ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/make; \
- cd "$(HOST_SUBDIR)/make" || exit 1; \
+ echo Configuring in make; \
+ cd make || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/make/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/make"; \
+ libsrcdir="$$s/make";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/make"; \
+ libsrcdir="$$s/make";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/make"; \
- libsrcdir="$$s/make"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif make
-
-
-
-
.PHONY: all-make maybe-all-make
maybe-all-make:
@if make
-TARGET-make=all
maybe-all-make: all-make
all-make: configure-make
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/make && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-make))
+ (cd make && $(MAKE) $(FLAGS_TO_PASS) all)
@endif make
-
-
-
.PHONY: check-make maybe-check-make
maybe-check-make:
@if make
maybe-check-make: check-make
check-make:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/make && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd make && $(MAKE) $(FLAGS_TO_PASS) check)
@endif make
@@ -19182,12 +13757,11 @@ maybe-install-make:
maybe-install-make: install-make
install-make: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/make && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd make && $(MAKE) $(FLAGS_TO_PASS) install)
@endif make
@@ -19200,16 +13774,16 @@ maybe-info-make: info-make
info-make: \
configure-make
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19226,16 +13800,16 @@ maybe-dvi-make: dvi-make
dvi-make: \
configure-make
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19245,32 +13819,6 @@ dvi-make: \
@endif make
-.PHONY: maybe-html-make html-make
-maybe-html-make:
-@if make
-maybe-html-make: html-make
-
-html-make: \
- configure-make
- @: $(MAKE); $(unstage)
- @[ -f ./make/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in make" ; \
- (cd $(HOST_SUBDIR)/make && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif make
-
.PHONY: maybe-TAGS-make TAGS-make
maybe-TAGS-make:
@if make
@@ -19278,16 +13826,16 @@ maybe-TAGS-make: TAGS-make
TAGS-make: \
configure-make
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19305,16 +13853,16 @@ maybe-install-info-make: install-info-make
install-info-make: \
configure-make \
info-make
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19331,16 +13879,16 @@ maybe-installcheck-make: installcheck-make
installcheck-make: \
configure-make
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19356,16 +13904,16 @@ maybe-mostlyclean-make:
maybe-mostlyclean-make: mostlyclean-make
mostlyclean-make:
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19381,16 +13929,16 @@ maybe-clean-make:
maybe-clean-make: clean-make
clean-make:
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19406,16 +13954,16 @@ maybe-distclean-make:
maybe-distclean-make: distclean-make
distclean-make:
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19431,16 +13979,16 @@ maybe-maintainer-clean-make:
maybe-maintainer-clean-make: maintainer-clean-make
maintainer-clean-make:
- @: $(MAKE); $(unstage)
@[ -f ./make/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in make" ; \
- (cd $(HOST_SUBDIR)/make && \
+ (cd make && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19451,53 +13999,46 @@ maintainer-clean-make:
@endif make
-
.PHONY: configure-mmalloc maybe-configure-mmalloc
maybe-configure-mmalloc:
@if mmalloc
maybe-configure-mmalloc: configure-mmalloc
-configure-mmalloc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-mmalloc:
+ @test ! -f mmalloc/Makefile || exit 0; \
+ [ -d mmalloc ] || mkdir mmalloc; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/mmalloc/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/mmalloc ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/mmalloc; \
- cd "$(HOST_SUBDIR)/mmalloc" || exit 1; \
+ echo Configuring in mmalloc; \
+ cd mmalloc || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/mmalloc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/mmalloc"; \
+ libsrcdir="$$s/mmalloc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/mmalloc"; \
+ libsrcdir="$$s/mmalloc";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/mmalloc"; \
- libsrcdir="$$s/mmalloc"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif mmalloc
-
-
-
-
.PHONY: all-mmalloc maybe-all-mmalloc
maybe-all-mmalloc:
@if mmalloc
-TARGET-mmalloc=all
maybe-all-mmalloc: all-mmalloc
all-mmalloc: configure-mmalloc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/mmalloc && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-mmalloc))
+ (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) all)
@endif mmalloc
-
-
-
.PHONY: check-mmalloc maybe-check-mmalloc
maybe-check-mmalloc:
@if mmalloc
@@ -19513,12 +14054,11 @@ maybe-install-mmalloc:
maybe-install-mmalloc: install-mmalloc
install-mmalloc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/mmalloc && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) install)
@endif mmalloc
@@ -19531,16 +14071,16 @@ maybe-info-mmalloc: info-mmalloc
info-mmalloc: \
configure-mmalloc
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19557,16 +14097,16 @@ maybe-dvi-mmalloc: dvi-mmalloc
dvi-mmalloc: \
configure-mmalloc
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19576,32 +14116,6 @@ dvi-mmalloc: \
@endif mmalloc
-.PHONY: maybe-html-mmalloc html-mmalloc
-maybe-html-mmalloc:
-@if mmalloc
-maybe-html-mmalloc: html-mmalloc
-
-html-mmalloc: \
- configure-mmalloc
- @: $(MAKE); $(unstage)
- @[ -f ./mmalloc/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif mmalloc
-
.PHONY: maybe-TAGS-mmalloc TAGS-mmalloc
maybe-TAGS-mmalloc:
@if mmalloc
@@ -19609,16 +14123,16 @@ maybe-TAGS-mmalloc: TAGS-mmalloc
TAGS-mmalloc: \
configure-mmalloc
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19636,16 +14150,16 @@ maybe-install-info-mmalloc: install-info-mmalloc
install-info-mmalloc: \
configure-mmalloc \
info-mmalloc
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19662,16 +14176,16 @@ maybe-installcheck-mmalloc: installcheck-mmalloc
installcheck-mmalloc: \
configure-mmalloc
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19687,16 +14201,16 @@ maybe-mostlyclean-mmalloc:
maybe-mostlyclean-mmalloc: mostlyclean-mmalloc
mostlyclean-mmalloc:
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19712,16 +14226,16 @@ maybe-clean-mmalloc:
maybe-clean-mmalloc: clean-mmalloc
clean-mmalloc:
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19737,16 +14251,16 @@ maybe-distclean-mmalloc:
maybe-distclean-mmalloc: distclean-mmalloc
distclean-mmalloc:
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19762,16 +14276,16 @@ maybe-maintainer-clean-mmalloc:
maybe-maintainer-clean-mmalloc: maintainer-clean-mmalloc
maintainer-clean-mmalloc:
- @: $(MAKE); $(unstage)
@[ -f ./mmalloc/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in mmalloc" ; \
- (cd $(HOST_SUBDIR)/mmalloc && \
+ (cd mmalloc && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19782,65 +14296,57 @@ maintainer-clean-mmalloc:
@endif mmalloc
-
.PHONY: configure-patch maybe-configure-patch
maybe-configure-patch:
@if patch
maybe-configure-patch: configure-patch
-configure-patch:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-patch:
+ @test ! -f patch/Makefile || exit 0; \
+ [ -d patch ] || mkdir patch; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/patch/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/patch ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/patch; \
- cd "$(HOST_SUBDIR)/patch" || exit 1; \
+ echo Configuring in patch; \
+ cd patch || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/patch/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/patch"; \
+ libsrcdir="$$s/patch";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/patch"; \
+ libsrcdir="$$s/patch";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/patch"; \
- libsrcdir="$$s/patch"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif patch
-
-
-
-
.PHONY: all-patch maybe-all-patch
maybe-all-patch:
@if patch
-TARGET-patch=all
maybe-all-patch: all-patch
all-patch: configure-patch
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/patch && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-patch))
+ (cd patch && $(MAKE) $(FLAGS_TO_PASS) all)
@endif patch
-
-
-
.PHONY: check-patch maybe-check-patch
maybe-check-patch:
@if patch
maybe-check-patch: check-patch
check-patch:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/patch && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd patch && $(MAKE) $(FLAGS_TO_PASS) check)
@endif patch
@@ -19850,12 +14356,11 @@ maybe-install-patch:
maybe-install-patch: install-patch
install-patch: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/patch && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd patch && $(MAKE) $(FLAGS_TO_PASS) install)
@endif patch
@@ -19868,16 +14373,16 @@ maybe-info-patch: info-patch
info-patch: \
configure-patch
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19894,16 +14399,16 @@ maybe-dvi-patch: dvi-patch
dvi-patch: \
configure-patch
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19913,32 +14418,6 @@ dvi-patch: \
@endif patch
-.PHONY: maybe-html-patch html-patch
-maybe-html-patch:
-@if patch
-maybe-html-patch: html-patch
-
-html-patch: \
- configure-patch
- @: $(MAKE); $(unstage)
- @[ -f ./patch/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif patch
-
.PHONY: maybe-TAGS-patch TAGS-patch
maybe-TAGS-patch:
@if patch
@@ -19946,16 +14425,16 @@ maybe-TAGS-patch: TAGS-patch
TAGS-patch: \
configure-patch
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19973,16 +14452,16 @@ maybe-install-info-patch: install-info-patch
install-info-patch: \
configure-patch \
info-patch
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -19999,16 +14478,16 @@ maybe-installcheck-patch: installcheck-patch
installcheck-patch: \
configure-patch
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20024,16 +14503,16 @@ maybe-mostlyclean-patch:
maybe-mostlyclean-patch: mostlyclean-patch
mostlyclean-patch:
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20049,16 +14528,16 @@ maybe-clean-patch:
maybe-clean-patch: clean-patch
clean-patch:
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20074,16 +14553,16 @@ maybe-distclean-patch:
maybe-distclean-patch: distclean-patch
distclean-patch:
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20099,16 +14578,16 @@ maybe-maintainer-clean-patch:
maybe-maintainer-clean-patch: maintainer-clean-patch
maintainer-clean-patch:
- @: $(MAKE); $(unstage)
@[ -f ./patch/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in patch" ; \
- (cd $(HOST_SUBDIR)/patch && \
+ (cd patch && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20119,65 +14598,57 @@ maintainer-clean-patch:
@endif patch
-
.PHONY: configure-perl maybe-configure-perl
maybe-configure-perl:
@if perl
maybe-configure-perl: configure-perl
-configure-perl:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-perl:
+ @test ! -f perl/Makefile || exit 0; \
+ [ -d perl ] || mkdir perl; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/perl/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/perl ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/perl; \
- cd "$(HOST_SUBDIR)/perl" || exit 1; \
+ echo Configuring in perl; \
+ cd perl || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/perl/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/perl"; \
+ libsrcdir="$$s/perl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/perl"; \
+ libsrcdir="$$s/perl";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/perl"; \
- libsrcdir="$$s/perl"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif perl
-
-
-
-
.PHONY: all-perl maybe-all-perl
maybe-all-perl:
@if perl
-TARGET-perl=all
maybe-all-perl: all-perl
all-perl: configure-perl
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/perl && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-perl))
+ (cd perl && $(MAKE) $(FLAGS_TO_PASS) all)
@endif perl
-
-
-
.PHONY: check-perl maybe-check-perl
maybe-check-perl:
@if perl
maybe-check-perl: check-perl
check-perl:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/perl && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd perl && $(MAKE) $(FLAGS_TO_PASS) check)
@endif perl
@@ -20187,12 +14658,11 @@ maybe-install-perl:
maybe-install-perl: install-perl
install-perl: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/perl && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd perl && $(MAKE) $(FLAGS_TO_PASS) install)
@endif perl
@@ -20205,16 +14675,16 @@ maybe-info-perl: info-perl
info-perl: \
configure-perl
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20231,16 +14701,16 @@ maybe-dvi-perl: dvi-perl
dvi-perl: \
configure-perl
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20250,32 +14720,6 @@ dvi-perl: \
@endif perl
-.PHONY: maybe-html-perl html-perl
-maybe-html-perl:
-@if perl
-maybe-html-perl: html-perl
-
-html-perl: \
- configure-perl
- @: $(MAKE); $(unstage)
- @[ -f ./perl/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif perl
-
.PHONY: maybe-TAGS-perl TAGS-perl
maybe-TAGS-perl:
@if perl
@@ -20283,16 +14727,16 @@ maybe-TAGS-perl: TAGS-perl
TAGS-perl: \
configure-perl
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20310,16 +14754,16 @@ maybe-install-info-perl: install-info-perl
install-info-perl: \
configure-perl \
info-perl
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20336,16 +14780,16 @@ maybe-installcheck-perl: installcheck-perl
installcheck-perl: \
configure-perl
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20361,16 +14805,16 @@ maybe-mostlyclean-perl:
maybe-mostlyclean-perl: mostlyclean-perl
mostlyclean-perl:
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20386,16 +14830,16 @@ maybe-clean-perl:
maybe-clean-perl: clean-perl
clean-perl:
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20411,16 +14855,16 @@ maybe-distclean-perl:
maybe-distclean-perl: distclean-perl
distclean-perl:
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20436,16 +14880,16 @@ maybe-maintainer-clean-perl:
maybe-maintainer-clean-perl: maintainer-clean-perl
maintainer-clean-perl:
- @: $(MAKE); $(unstage)
@[ -f ./perl/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in perl" ; \
- (cd $(HOST_SUBDIR)/perl && \
+ (cd perl && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20456,65 +14900,57 @@ maintainer-clean-perl:
@endif perl
-
.PHONY: configure-prms maybe-configure-prms
maybe-configure-prms:
@if prms
maybe-configure-prms: configure-prms
-configure-prms:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-prms:
+ @test ! -f prms/Makefile || exit 0; \
+ [ -d prms ] || mkdir prms; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/prms/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/prms ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/prms; \
- cd "$(HOST_SUBDIR)/prms" || exit 1; \
+ echo Configuring in prms; \
+ cd prms || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/prms/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/prms"; \
+ libsrcdir="$$s/prms";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/prms"; \
+ libsrcdir="$$s/prms";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/prms"; \
- libsrcdir="$$s/prms"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif prms
-
-
-
-
.PHONY: all-prms maybe-all-prms
maybe-all-prms:
@if prms
-TARGET-prms=all
maybe-all-prms: all-prms
all-prms: configure-prms
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/prms && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-prms))
+ (cd prms && $(MAKE) $(FLAGS_TO_PASS) all)
@endif prms
-
-
-
.PHONY: check-prms maybe-check-prms
maybe-check-prms:
@if prms
maybe-check-prms: check-prms
check-prms:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/prms && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd prms && $(MAKE) $(FLAGS_TO_PASS) check)
@endif prms
@@ -20524,12 +14960,11 @@ maybe-install-prms:
maybe-install-prms: install-prms
install-prms: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/prms && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd prms && $(MAKE) $(FLAGS_TO_PASS) install)
@endif prms
@@ -20542,16 +14977,16 @@ maybe-info-prms: info-prms
info-prms: \
configure-prms
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20568,16 +15003,16 @@ maybe-dvi-prms: dvi-prms
dvi-prms: \
configure-prms
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20587,32 +15022,6 @@ dvi-prms: \
@endif prms
-.PHONY: maybe-html-prms html-prms
-maybe-html-prms:
-@if prms
-maybe-html-prms: html-prms
-
-html-prms: \
- configure-prms
- @: $(MAKE); $(unstage)
- @[ -f ./prms/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif prms
-
.PHONY: maybe-TAGS-prms TAGS-prms
maybe-TAGS-prms:
@if prms
@@ -20620,16 +15029,16 @@ maybe-TAGS-prms: TAGS-prms
TAGS-prms: \
configure-prms
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20647,16 +15056,16 @@ maybe-install-info-prms: install-info-prms
install-info-prms: \
configure-prms \
info-prms
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20673,16 +15082,16 @@ maybe-installcheck-prms: installcheck-prms
installcheck-prms: \
configure-prms
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20698,16 +15107,16 @@ maybe-mostlyclean-prms:
maybe-mostlyclean-prms: mostlyclean-prms
mostlyclean-prms:
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20723,16 +15132,16 @@ maybe-clean-prms:
maybe-clean-prms: clean-prms
clean-prms:
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20748,16 +15157,16 @@ maybe-distclean-prms:
maybe-distclean-prms: distclean-prms
distclean-prms:
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20773,16 +15182,16 @@ maybe-maintainer-clean-prms:
maybe-maintainer-clean-prms: maintainer-clean-prms
maintainer-clean-prms:
- @: $(MAKE); $(unstage)
@[ -f ./prms/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in prms" ; \
- (cd $(HOST_SUBDIR)/prms && \
+ (cd prms && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20793,65 +15202,57 @@ maintainer-clean-prms:
@endif prms
-
.PHONY: configure-rcs maybe-configure-rcs
maybe-configure-rcs:
@if rcs
maybe-configure-rcs: configure-rcs
-configure-rcs:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-rcs:
+ @test ! -f rcs/Makefile || exit 0; \
+ [ -d rcs ] || mkdir rcs; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/rcs/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/rcs ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/rcs; \
- cd "$(HOST_SUBDIR)/rcs" || exit 1; \
+ echo Configuring in rcs; \
+ cd rcs || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/rcs/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/rcs"; \
+ libsrcdir="$$s/rcs";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/rcs"; \
+ libsrcdir="$$s/rcs";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/rcs"; \
- libsrcdir="$$s/rcs"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif rcs
-
-
-
-
.PHONY: all-rcs maybe-all-rcs
maybe-all-rcs:
@if rcs
-TARGET-rcs=all
maybe-all-rcs: all-rcs
all-rcs: configure-rcs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/rcs && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-rcs))
+ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) all)
@endif rcs
-
-
-
.PHONY: check-rcs maybe-check-rcs
maybe-check-rcs:
@if rcs
maybe-check-rcs: check-rcs
check-rcs:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/rcs && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) check)
@endif rcs
@@ -20861,12 +15262,11 @@ maybe-install-rcs:
maybe-install-rcs: install-rcs
install-rcs: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/rcs && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) install)
@endif rcs
@@ -20879,16 +15279,16 @@ maybe-info-rcs: info-rcs
info-rcs: \
configure-rcs
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20905,16 +15305,16 @@ maybe-dvi-rcs: dvi-rcs
dvi-rcs: \
configure-rcs
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20924,32 +15324,6 @@ dvi-rcs: \
@endif rcs
-.PHONY: maybe-html-rcs html-rcs
-maybe-html-rcs:
-@if rcs
-maybe-html-rcs: html-rcs
-
-html-rcs: \
- configure-rcs
- @: $(MAKE); $(unstage)
- @[ -f ./rcs/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif rcs
-
.PHONY: maybe-TAGS-rcs TAGS-rcs
maybe-TAGS-rcs:
@if rcs
@@ -20957,16 +15331,16 @@ maybe-TAGS-rcs: TAGS-rcs
TAGS-rcs: \
configure-rcs
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -20984,16 +15358,16 @@ maybe-install-info-rcs: install-info-rcs
install-info-rcs: \
configure-rcs \
info-rcs
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21010,16 +15384,16 @@ maybe-installcheck-rcs: installcheck-rcs
installcheck-rcs: \
configure-rcs
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21035,16 +15409,16 @@ maybe-mostlyclean-rcs:
maybe-mostlyclean-rcs: mostlyclean-rcs
mostlyclean-rcs:
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21060,16 +15434,16 @@ maybe-clean-rcs:
maybe-clean-rcs: clean-rcs
clean-rcs:
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21085,16 +15459,16 @@ maybe-distclean-rcs:
maybe-distclean-rcs: distclean-rcs
distclean-rcs:
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21110,16 +15484,16 @@ maybe-maintainer-clean-rcs:
maybe-maintainer-clean-rcs: maintainer-clean-rcs
maintainer-clean-rcs:
- @: $(MAKE); $(unstage)
@[ -f ./rcs/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in rcs" ; \
- (cd $(HOST_SUBDIR)/rcs && \
+ (cd rcs && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21130,65 +15504,57 @@ maintainer-clean-rcs:
@endif rcs
-
.PHONY: configure-readline maybe-configure-readline
maybe-configure-readline:
@if readline
maybe-configure-readline: configure-readline
-configure-readline:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-readline:
+ @test ! -f readline/Makefile || exit 0; \
+ [ -d readline ] || mkdir readline; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/readline/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/readline ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/readline; \
- cd "$(HOST_SUBDIR)/readline" || exit 1; \
+ echo Configuring in readline; \
+ cd readline || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/readline/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/readline"; \
+ libsrcdir="$$s/readline";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/readline"; \
+ libsrcdir="$$s/readline";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/readline"; \
- libsrcdir="$$s/readline"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif readline
-
-
-
-
.PHONY: all-readline maybe-all-readline
maybe-all-readline:
@if readline
-TARGET-readline=all
maybe-all-readline: all-readline
all-readline: configure-readline
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/readline && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-readline))
+ (cd readline && $(MAKE) $(FLAGS_TO_PASS) all)
@endif readline
-
-
-
.PHONY: check-readline maybe-check-readline
maybe-check-readline:
@if readline
maybe-check-readline: check-readline
check-readline:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/readline && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd readline && $(MAKE) $(FLAGS_TO_PASS) check)
@endif readline
@@ -21198,12 +15564,11 @@ maybe-install-readline:
maybe-install-readline: install-readline
install-readline: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/readline && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd readline && $(MAKE) $(FLAGS_TO_PASS) install)
@endif readline
@@ -21216,16 +15581,16 @@ maybe-info-readline: info-readline
info-readline: \
configure-readline
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21242,16 +15607,16 @@ maybe-dvi-readline: dvi-readline
dvi-readline: \
configure-readline
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21261,32 +15626,6 @@ dvi-readline: \
@endif readline
-.PHONY: maybe-html-readline html-readline
-maybe-html-readline:
-@if readline
-maybe-html-readline: html-readline
-
-html-readline: \
- configure-readline
- @: $(MAKE); $(unstage)
- @[ -f ./readline/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif readline
-
.PHONY: maybe-TAGS-readline TAGS-readline
maybe-TAGS-readline:
@if readline
@@ -21294,16 +15633,16 @@ maybe-TAGS-readline: TAGS-readline
TAGS-readline: \
configure-readline
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21321,16 +15660,16 @@ maybe-install-info-readline: install-info-readline
install-info-readline: \
configure-readline \
info-readline
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21347,16 +15686,16 @@ maybe-installcheck-readline: installcheck-readline
installcheck-readline: \
configure-readline
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21372,16 +15711,16 @@ maybe-mostlyclean-readline:
maybe-mostlyclean-readline: mostlyclean-readline
mostlyclean-readline:
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21397,16 +15736,16 @@ maybe-clean-readline:
maybe-clean-readline: clean-readline
clean-readline:
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21422,16 +15761,16 @@ maybe-distclean-readline:
maybe-distclean-readline: distclean-readline
distclean-readline:
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21447,16 +15786,16 @@ maybe-maintainer-clean-readline:
maybe-maintainer-clean-readline: maintainer-clean-readline
maintainer-clean-readline:
- @: $(MAKE); $(unstage)
@[ -f ./readline/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in readline" ; \
- (cd $(HOST_SUBDIR)/readline && \
+ (cd readline && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21467,53 +15806,46 @@ maintainer-clean-readline:
@endif readline
-
.PHONY: configure-release maybe-configure-release
maybe-configure-release:
@if release
maybe-configure-release: configure-release
-configure-release:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-release:
+ @test ! -f release/Makefile || exit 0; \
+ [ -d release ] || mkdir release; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/release/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/release ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/release; \
- cd "$(HOST_SUBDIR)/release" || exit 1; \
+ echo Configuring in release; \
+ cd release || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/release/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/release"; \
+ libsrcdir="$$s/release";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/release"; \
+ libsrcdir="$$s/release";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/release"; \
- libsrcdir="$$s/release"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif release
-
-
-
-
.PHONY: all-release maybe-all-release
maybe-all-release:
@if release
-TARGET-release=all
maybe-all-release: all-release
all-release: configure-release
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/release && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-release))
+ (cd release && $(MAKE) $(FLAGS_TO_PASS) all)
@endif release
-
-
-
.PHONY: check-release maybe-check-release
maybe-check-release:
@if release
@@ -21541,16 +15873,16 @@ maybe-info-release: info-release
info-release: \
configure-release
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21567,16 +15899,16 @@ maybe-dvi-release: dvi-release
dvi-release: \
configure-release
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21586,32 +15918,6 @@ dvi-release: \
@endif release
-.PHONY: maybe-html-release html-release
-maybe-html-release:
-@if release
-maybe-html-release: html-release
-
-html-release: \
- configure-release
- @: $(MAKE); $(unstage)
- @[ -f ./release/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in release" ; \
- (cd $(HOST_SUBDIR)/release && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif release
-
.PHONY: maybe-TAGS-release TAGS-release
maybe-TAGS-release:
@if release
@@ -21619,16 +15925,16 @@ maybe-TAGS-release: TAGS-release
TAGS-release: \
configure-release
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21646,16 +15952,16 @@ maybe-install-info-release: install-info-release
install-info-release: \
configure-release \
info-release
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21672,16 +15978,16 @@ maybe-installcheck-release: installcheck-release
installcheck-release: \
configure-release
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21697,16 +16003,16 @@ maybe-mostlyclean-release:
maybe-mostlyclean-release: mostlyclean-release
mostlyclean-release:
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21722,16 +16028,16 @@ maybe-clean-release:
maybe-clean-release: clean-release
clean-release:
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21747,16 +16053,16 @@ maybe-distclean-release:
maybe-distclean-release: distclean-release
distclean-release:
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21772,16 +16078,16 @@ maybe-maintainer-clean-release:
maybe-maintainer-clean-release: maintainer-clean-release
maintainer-clean-release:
- @: $(MAKE); $(unstage)
@[ -f ./release/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in release" ; \
- (cd $(HOST_SUBDIR)/release && \
+ (cd release && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21792,65 +16098,57 @@ maintainer-clean-release:
@endif release
-
.PHONY: configure-recode maybe-configure-recode
maybe-configure-recode:
@if recode
maybe-configure-recode: configure-recode
-configure-recode:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-recode:
+ @test ! -f recode/Makefile || exit 0; \
+ [ -d recode ] || mkdir recode; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/recode/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/recode ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/recode; \
- cd "$(HOST_SUBDIR)/recode" || exit 1; \
+ echo Configuring in recode; \
+ cd recode || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/recode/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/recode"; \
+ libsrcdir="$$s/recode";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/recode"; \
+ libsrcdir="$$s/recode";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/recode"; \
- libsrcdir="$$s/recode"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif recode
-
-
-
-
.PHONY: all-recode maybe-all-recode
maybe-all-recode:
@if recode
-TARGET-recode=all
maybe-all-recode: all-recode
all-recode: configure-recode
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/recode && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-recode))
+ (cd recode && $(MAKE) $(FLAGS_TO_PASS) all)
@endif recode
-
-
-
.PHONY: check-recode maybe-check-recode
maybe-check-recode:
@if recode
maybe-check-recode: check-recode
check-recode:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/recode && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd recode && $(MAKE) $(FLAGS_TO_PASS) check)
@endif recode
@@ -21860,12 +16158,11 @@ maybe-install-recode:
maybe-install-recode: install-recode
install-recode: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/recode && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd recode && $(MAKE) $(FLAGS_TO_PASS) install)
@endif recode
@@ -21878,16 +16175,16 @@ maybe-info-recode: info-recode
info-recode: \
configure-recode
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21904,16 +16201,16 @@ maybe-dvi-recode: dvi-recode
dvi-recode: \
configure-recode
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21923,32 +16220,6 @@ dvi-recode: \
@endif recode
-.PHONY: maybe-html-recode html-recode
-maybe-html-recode:
-@if recode
-maybe-html-recode: html-recode
-
-html-recode: \
- configure-recode
- @: $(MAKE); $(unstage)
- @[ -f ./recode/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif recode
-
.PHONY: maybe-TAGS-recode TAGS-recode
maybe-TAGS-recode:
@if recode
@@ -21956,16 +16227,16 @@ maybe-TAGS-recode: TAGS-recode
TAGS-recode: \
configure-recode
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -21983,16 +16254,16 @@ maybe-install-info-recode: install-info-recode
install-info-recode: \
configure-recode \
info-recode
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22009,16 +16280,16 @@ maybe-installcheck-recode: installcheck-recode
installcheck-recode: \
configure-recode
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22034,16 +16305,16 @@ maybe-mostlyclean-recode:
maybe-mostlyclean-recode: mostlyclean-recode
mostlyclean-recode:
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22059,16 +16330,16 @@ maybe-clean-recode:
maybe-clean-recode: clean-recode
clean-recode:
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22084,16 +16355,16 @@ maybe-distclean-recode:
maybe-distclean-recode: distclean-recode
distclean-recode:
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22109,16 +16380,16 @@ maybe-maintainer-clean-recode:
maybe-maintainer-clean-recode: maintainer-clean-recode
maintainer-clean-recode:
- @: $(MAKE); $(unstage)
@[ -f ./recode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in recode" ; \
- (cd $(HOST_SUBDIR)/recode && \
+ (cd recode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22129,65 +16400,57 @@ maintainer-clean-recode:
@endif recode
-
.PHONY: configure-sed maybe-configure-sed
maybe-configure-sed:
@if sed
maybe-configure-sed: configure-sed
-configure-sed:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-sed:
+ @test ! -f sed/Makefile || exit 0; \
+ [ -d sed ] || mkdir sed; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/sed/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sed ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/sed; \
- cd "$(HOST_SUBDIR)/sed" || exit 1; \
+ echo Configuring in sed; \
+ cd sed || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/sed/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/sed"; \
+ libsrcdir="$$s/sed";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/sed"; \
+ libsrcdir="$$s/sed";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/sed"; \
- libsrcdir="$$s/sed"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif sed
-
-
-
-
.PHONY: all-sed maybe-all-sed
maybe-all-sed:
@if sed
-TARGET-sed=all
maybe-all-sed: all-sed
all-sed: configure-sed
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sed && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-sed))
+ (cd sed && $(MAKE) $(FLAGS_TO_PASS) all)
@endif sed
-
-
-
.PHONY: check-sed maybe-check-sed
maybe-check-sed:
@if sed
maybe-check-sed: check-sed
check-sed:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sed && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd sed && $(MAKE) $(FLAGS_TO_PASS) check)
@endif sed
@@ -22197,12 +16460,11 @@ maybe-install-sed:
maybe-install-sed: install-sed
install-sed: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sed && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd sed && $(MAKE) $(FLAGS_TO_PASS) install)
@endif sed
@@ -22215,16 +16477,16 @@ maybe-info-sed: info-sed
info-sed: \
configure-sed
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22241,16 +16503,16 @@ maybe-dvi-sed: dvi-sed
dvi-sed: \
configure-sed
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22260,32 +16522,6 @@ dvi-sed: \
@endif sed
-.PHONY: maybe-html-sed html-sed
-maybe-html-sed:
-@if sed
-maybe-html-sed: html-sed
-
-html-sed: \
- configure-sed
- @: $(MAKE); $(unstage)
- @[ -f ./sed/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif sed
-
.PHONY: maybe-TAGS-sed TAGS-sed
maybe-TAGS-sed:
@if sed
@@ -22293,16 +16529,16 @@ maybe-TAGS-sed: TAGS-sed
TAGS-sed: \
configure-sed
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22320,16 +16556,16 @@ maybe-install-info-sed: install-info-sed
install-info-sed: \
configure-sed \
info-sed
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22346,16 +16582,16 @@ maybe-installcheck-sed: installcheck-sed
installcheck-sed: \
configure-sed
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22371,16 +16607,16 @@ maybe-mostlyclean-sed:
maybe-mostlyclean-sed: mostlyclean-sed
mostlyclean-sed:
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22396,16 +16632,16 @@ maybe-clean-sed:
maybe-clean-sed: clean-sed
clean-sed:
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22421,16 +16657,16 @@ maybe-distclean-sed:
maybe-distclean-sed: distclean-sed
distclean-sed:
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22446,16 +16682,16 @@ maybe-maintainer-clean-sed:
maybe-maintainer-clean-sed: maintainer-clean-sed
maintainer-clean-sed:
- @: $(MAKE); $(unstage)
@[ -f ./sed/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in sed" ; \
- (cd $(HOST_SUBDIR)/sed && \
+ (cd sed && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22466,65 +16702,57 @@ maintainer-clean-sed:
@endif sed
-
.PHONY: configure-send-pr maybe-configure-send-pr
maybe-configure-send-pr:
@if send-pr
maybe-configure-send-pr: configure-send-pr
-configure-send-pr:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-send-pr:
+ @test ! -f send-pr/Makefile || exit 0; \
+ [ -d send-pr ] || mkdir send-pr; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/send-pr/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/send-pr ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/send-pr; \
- cd "$(HOST_SUBDIR)/send-pr" || exit 1; \
+ echo Configuring in send-pr; \
+ cd send-pr || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/send-pr/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/send-pr"; \
+ libsrcdir="$$s/send-pr";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/send-pr"; \
+ libsrcdir="$$s/send-pr";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/send-pr"; \
- libsrcdir="$$s/send-pr"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif send-pr
-
-
-
-
.PHONY: all-send-pr maybe-all-send-pr
maybe-all-send-pr:
@if send-pr
-TARGET-send-pr=all
maybe-all-send-pr: all-send-pr
all-send-pr: configure-send-pr
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/send-pr && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-send-pr))
+ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) all)
@endif send-pr
-
-
-
.PHONY: check-send-pr maybe-check-send-pr
maybe-check-send-pr:
@if send-pr
maybe-check-send-pr: check-send-pr
check-send-pr:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/send-pr && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) check)
@endif send-pr
@@ -22534,12 +16762,11 @@ maybe-install-send-pr:
maybe-install-send-pr: install-send-pr
install-send-pr: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/send-pr && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) install)
@endif send-pr
@@ -22552,16 +16779,16 @@ maybe-info-send-pr: info-send-pr
info-send-pr: \
configure-send-pr
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22578,16 +16805,16 @@ maybe-dvi-send-pr: dvi-send-pr
dvi-send-pr: \
configure-send-pr
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22597,32 +16824,6 @@ dvi-send-pr: \
@endif send-pr
-.PHONY: maybe-html-send-pr html-send-pr
-maybe-html-send-pr:
-@if send-pr
-maybe-html-send-pr: html-send-pr
-
-html-send-pr: \
- configure-send-pr
- @: $(MAKE); $(unstage)
- @[ -f ./send-pr/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif send-pr
-
.PHONY: maybe-TAGS-send-pr TAGS-send-pr
maybe-TAGS-send-pr:
@if send-pr
@@ -22630,16 +16831,16 @@ maybe-TAGS-send-pr: TAGS-send-pr
TAGS-send-pr: \
configure-send-pr
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22657,16 +16858,16 @@ maybe-install-info-send-pr: install-info-send-pr
install-info-send-pr: \
configure-send-pr \
info-send-pr
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22683,16 +16884,16 @@ maybe-installcheck-send-pr: installcheck-send-pr
installcheck-send-pr: \
configure-send-pr
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22708,16 +16909,16 @@ maybe-mostlyclean-send-pr:
maybe-mostlyclean-send-pr: mostlyclean-send-pr
mostlyclean-send-pr:
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22733,16 +16934,16 @@ maybe-clean-send-pr:
maybe-clean-send-pr: clean-send-pr
clean-send-pr:
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22758,16 +16959,16 @@ maybe-distclean-send-pr:
maybe-distclean-send-pr: distclean-send-pr
distclean-send-pr:
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22783,16 +16984,16 @@ maybe-maintainer-clean-send-pr:
maybe-maintainer-clean-send-pr: maintainer-clean-send-pr
maintainer-clean-send-pr:
- @: $(MAKE); $(unstage)
@[ -f ./send-pr/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in send-pr" ; \
- (cd $(HOST_SUBDIR)/send-pr && \
+ (cd send-pr && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22803,65 +17004,57 @@ maintainer-clean-send-pr:
@endif send-pr
-
.PHONY: configure-shellutils maybe-configure-shellutils
maybe-configure-shellutils:
@if shellutils
maybe-configure-shellutils: configure-shellutils
-configure-shellutils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-shellutils:
+ @test ! -f shellutils/Makefile || exit 0; \
+ [ -d shellutils ] || mkdir shellutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/shellutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/shellutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/shellutils; \
- cd "$(HOST_SUBDIR)/shellutils" || exit 1; \
+ echo Configuring in shellutils; \
+ cd shellutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/shellutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/shellutils"; \
+ libsrcdir="$$s/shellutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/shellutils"; \
+ libsrcdir="$$s/shellutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/shellutils"; \
- libsrcdir="$$s/shellutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif shellutils
-
-
-
-
.PHONY: all-shellutils maybe-all-shellutils
maybe-all-shellutils:
@if shellutils
-TARGET-shellutils=all
maybe-all-shellutils: all-shellutils
all-shellutils: configure-shellutils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/shellutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-shellutils))
+ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif shellutils
-
-
-
.PHONY: check-shellutils maybe-check-shellutils
maybe-check-shellutils:
@if shellutils
maybe-check-shellutils: check-shellutils
check-shellutils:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/shellutils && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) check)
@endif shellutils
@@ -22871,12 +17064,11 @@ maybe-install-shellutils:
maybe-install-shellutils: install-shellutils
install-shellutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/shellutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif shellutils
@@ -22889,16 +17081,16 @@ maybe-info-shellutils: info-shellutils
info-shellutils: \
configure-shellutils
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22915,16 +17107,16 @@ maybe-dvi-shellutils: dvi-shellutils
dvi-shellutils: \
configure-shellutils
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22934,32 +17126,6 @@ dvi-shellutils: \
@endif shellutils
-.PHONY: maybe-html-shellutils html-shellutils
-maybe-html-shellutils:
-@if shellutils
-maybe-html-shellutils: html-shellutils
-
-html-shellutils: \
- configure-shellutils
- @: $(MAKE); $(unstage)
- @[ -f ./shellutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif shellutils
-
.PHONY: maybe-TAGS-shellutils TAGS-shellutils
maybe-TAGS-shellutils:
@if shellutils
@@ -22967,16 +17133,16 @@ maybe-TAGS-shellutils: TAGS-shellutils
TAGS-shellutils: \
configure-shellutils
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -22994,16 +17160,16 @@ maybe-install-info-shellutils: install-info-shellutils
install-info-shellutils: \
configure-shellutils \
info-shellutils
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23020,16 +17186,16 @@ maybe-installcheck-shellutils: installcheck-shellutils
installcheck-shellutils: \
configure-shellutils
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23045,16 +17211,16 @@ maybe-mostlyclean-shellutils:
maybe-mostlyclean-shellutils: mostlyclean-shellutils
mostlyclean-shellutils:
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23070,16 +17236,16 @@ maybe-clean-shellutils:
maybe-clean-shellutils: clean-shellutils
clean-shellutils:
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23095,16 +17261,16 @@ maybe-distclean-shellutils:
maybe-distclean-shellutils: distclean-shellutils
distclean-shellutils:
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23120,16 +17286,16 @@ maybe-maintainer-clean-shellutils:
maybe-maintainer-clean-shellutils: maintainer-clean-shellutils
maintainer-clean-shellutils:
- @: $(MAKE); $(unstage)
@[ -f ./shellutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in shellutils" ; \
- (cd $(HOST_SUBDIR)/shellutils && \
+ (cd shellutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23140,65 +17306,57 @@ maintainer-clean-shellutils:
@endif shellutils
-
.PHONY: configure-sid maybe-configure-sid
maybe-configure-sid:
@if sid
maybe-configure-sid: configure-sid
-configure-sid:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-sid:
+ @test ! -f sid/Makefile || exit 0; \
+ [ -d sid ] || mkdir sid; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/sid/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sid ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/sid; \
- cd "$(HOST_SUBDIR)/sid" || exit 1; \
+ echo Configuring in sid; \
+ cd sid || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/sid/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/sid"; \
+ libsrcdir="$$s/sid";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/sid"; \
+ libsrcdir="$$s/sid";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/sid"; \
- libsrcdir="$$s/sid"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif sid
-
-
-
-
.PHONY: all-sid maybe-all-sid
maybe-all-sid:
@if sid
-TARGET-sid=all
maybe-all-sid: all-sid
all-sid: configure-sid
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sid && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-sid))
+ (cd sid && $(MAKE) $(FLAGS_TO_PASS) all)
@endif sid
-
-
-
.PHONY: check-sid maybe-check-sid
maybe-check-sid:
@if sid
maybe-check-sid: check-sid
check-sid:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sid && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd sid && $(MAKE) $(FLAGS_TO_PASS) check)
@endif sid
@@ -23208,12 +17366,11 @@ maybe-install-sid:
maybe-install-sid: install-sid
install-sid: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sid && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd sid && $(MAKE) $(FLAGS_TO_PASS) install)
@endif sid
@@ -23226,16 +17383,16 @@ maybe-info-sid: info-sid
info-sid: \
configure-sid
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23252,16 +17409,16 @@ maybe-dvi-sid: dvi-sid
dvi-sid: \
configure-sid
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23271,32 +17428,6 @@ dvi-sid: \
@endif sid
-.PHONY: maybe-html-sid html-sid
-maybe-html-sid:
-@if sid
-maybe-html-sid: html-sid
-
-html-sid: \
- configure-sid
- @: $(MAKE); $(unstage)
- @[ -f ./sid/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif sid
-
.PHONY: maybe-TAGS-sid TAGS-sid
maybe-TAGS-sid:
@if sid
@@ -23304,16 +17435,16 @@ maybe-TAGS-sid: TAGS-sid
TAGS-sid: \
configure-sid
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23331,16 +17462,16 @@ maybe-install-info-sid: install-info-sid
install-info-sid: \
configure-sid \
info-sid
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23357,16 +17488,16 @@ maybe-installcheck-sid: installcheck-sid
installcheck-sid: \
configure-sid
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23382,16 +17513,16 @@ maybe-mostlyclean-sid:
maybe-mostlyclean-sid: mostlyclean-sid
mostlyclean-sid:
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23407,16 +17538,16 @@ maybe-clean-sid:
maybe-clean-sid: clean-sid
clean-sid:
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23432,16 +17563,16 @@ maybe-distclean-sid:
maybe-distclean-sid: distclean-sid
distclean-sid:
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23457,16 +17588,16 @@ maybe-maintainer-clean-sid:
maybe-maintainer-clean-sid: maintainer-clean-sid
maintainer-clean-sid:
- @: $(MAKE); $(unstage)
@[ -f ./sid/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in sid" ; \
- (cd $(HOST_SUBDIR)/sid && \
+ (cd sid && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23477,65 +17608,57 @@ maintainer-clean-sid:
@endif sid
-
.PHONY: configure-sim maybe-configure-sim
maybe-configure-sim:
@if sim
maybe-configure-sim: configure-sim
-configure-sim:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-sim:
+ @test ! -f sim/Makefile || exit 0; \
+ [ -d sim ] || mkdir sim; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/sim/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sim ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/sim; \
- cd "$(HOST_SUBDIR)/sim" || exit 1; \
+ echo Configuring in sim; \
+ cd sim || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/sim/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/sim"; \
+ libsrcdir="$$s/sim";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/sim"; \
+ libsrcdir="$$s/sim";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/sim"; \
- libsrcdir="$$s/sim"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif sim
-
-
-
-
.PHONY: all-sim maybe-all-sim
maybe-all-sim:
@if sim
-TARGET-sim=all
maybe-all-sim: all-sim
all-sim: configure-sim
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sim && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-sim))
+ (cd sim && $(MAKE) $(FLAGS_TO_PASS) all)
@endif sim
-
-
-
.PHONY: check-sim maybe-check-sim
maybe-check-sim:
@if sim
maybe-check-sim: check-sim
check-sim:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sim && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd sim && $(MAKE) $(FLAGS_TO_PASS) check)
@endif sim
@@ -23545,12 +17668,11 @@ maybe-install-sim:
maybe-install-sim: install-sim
install-sim: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/sim && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd sim && $(MAKE) $(FLAGS_TO_PASS) install)
@endif sim
@@ -23563,16 +17685,16 @@ maybe-info-sim: info-sim
info-sim: \
configure-sim
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23589,16 +17711,16 @@ maybe-dvi-sim: dvi-sim
dvi-sim: \
configure-sim
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23608,32 +17730,6 @@ dvi-sim: \
@endif sim
-.PHONY: maybe-html-sim html-sim
-maybe-html-sim:
-@if sim
-maybe-html-sim: html-sim
-
-html-sim: \
- configure-sim
- @: $(MAKE); $(unstage)
- @[ -f ./sim/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif sim
-
.PHONY: maybe-TAGS-sim TAGS-sim
maybe-TAGS-sim:
@if sim
@@ -23641,16 +17737,16 @@ maybe-TAGS-sim: TAGS-sim
TAGS-sim: \
configure-sim
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23668,16 +17764,16 @@ maybe-install-info-sim: install-info-sim
install-info-sim: \
configure-sim \
info-sim
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23694,16 +17790,16 @@ maybe-installcheck-sim: installcheck-sim
installcheck-sim: \
configure-sim
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23719,16 +17815,16 @@ maybe-mostlyclean-sim:
maybe-mostlyclean-sim: mostlyclean-sim
mostlyclean-sim:
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23744,16 +17840,16 @@ maybe-clean-sim:
maybe-clean-sim: clean-sim
clean-sim:
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23769,16 +17865,16 @@ maybe-distclean-sim:
maybe-distclean-sim: distclean-sim
distclean-sim:
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23794,16 +17890,16 @@ maybe-maintainer-clean-sim:
maybe-maintainer-clean-sim: maintainer-clean-sim
maintainer-clean-sim:
- @: $(MAKE); $(unstage)
@[ -f ./sim/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in sim" ; \
- (cd $(HOST_SUBDIR)/sim && \
+ (cd sim && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23814,65 +17910,57 @@ maintainer-clean-sim:
@endif sim
-
.PHONY: configure-tar maybe-configure-tar
maybe-configure-tar:
@if tar
maybe-configure-tar: configure-tar
-configure-tar:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-tar:
+ @test ! -f tar/Makefile || exit 0; \
+ [ -d tar ] || mkdir tar; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/tar/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tar ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/tar; \
- cd "$(HOST_SUBDIR)/tar" || exit 1; \
+ echo Configuring in tar; \
+ cd tar || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/tar/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/tar"; \
+ libsrcdir="$$s/tar";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/tar"; \
+ libsrcdir="$$s/tar";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/tar"; \
- libsrcdir="$$s/tar"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif tar
-
-
-
-
.PHONY: all-tar maybe-all-tar
maybe-all-tar:
@if tar
-TARGET-tar=all
maybe-all-tar: all-tar
all-tar: configure-tar
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tar && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-tar))
+ (cd tar && $(MAKE) $(FLAGS_TO_PASS) all)
@endif tar
-
-
-
.PHONY: check-tar maybe-check-tar
maybe-check-tar:
@if tar
maybe-check-tar: check-tar
check-tar:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tar && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd tar && $(MAKE) $(FLAGS_TO_PASS) check)
@endif tar
@@ -23882,12 +17970,11 @@ maybe-install-tar:
maybe-install-tar: install-tar
install-tar: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tar && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd tar && $(MAKE) $(FLAGS_TO_PASS) install)
@endif tar
@@ -23900,16 +17987,16 @@ maybe-info-tar: info-tar
info-tar: \
configure-tar
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23926,16 +18013,16 @@ maybe-dvi-tar: dvi-tar
dvi-tar: \
configure-tar
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -23945,32 +18032,6 @@ dvi-tar: \
@endif tar
-.PHONY: maybe-html-tar html-tar
-maybe-html-tar:
-@if tar
-maybe-html-tar: html-tar
-
-html-tar: \
- configure-tar
- @: $(MAKE); $(unstage)
- @[ -f ./tar/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif tar
-
.PHONY: maybe-TAGS-tar TAGS-tar
maybe-TAGS-tar:
@if tar
@@ -23978,16 +18039,16 @@ maybe-TAGS-tar: TAGS-tar
TAGS-tar: \
configure-tar
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24005,16 +18066,16 @@ maybe-install-info-tar: install-info-tar
install-info-tar: \
configure-tar \
info-tar
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24031,16 +18092,16 @@ maybe-installcheck-tar: installcheck-tar
installcheck-tar: \
configure-tar
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24056,16 +18117,16 @@ maybe-mostlyclean-tar:
maybe-mostlyclean-tar: mostlyclean-tar
mostlyclean-tar:
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24081,16 +18142,16 @@ maybe-clean-tar:
maybe-clean-tar: clean-tar
clean-tar:
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24106,16 +18167,16 @@ maybe-distclean-tar:
maybe-distclean-tar: distclean-tar
distclean-tar:
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24131,16 +18192,16 @@ maybe-maintainer-clean-tar:
maybe-maintainer-clean-tar: maintainer-clean-tar
maintainer-clean-tar:
- @: $(MAKE); $(unstage)
@[ -f ./tar/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in tar" ; \
- (cd $(HOST_SUBDIR)/tar && \
+ (cd tar && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24151,65 +18212,57 @@ maintainer-clean-tar:
@endif tar
-
.PHONY: configure-texinfo maybe-configure-texinfo
maybe-configure-texinfo:
@if texinfo
maybe-configure-texinfo: configure-texinfo
-configure-texinfo:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-texinfo:
+ @test ! -f texinfo/Makefile || exit 0; \
+ [ -d texinfo ] || mkdir texinfo; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/texinfo/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/texinfo ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/texinfo; \
- cd "$(HOST_SUBDIR)/texinfo" || exit 1; \
+ echo Configuring in texinfo; \
+ cd texinfo || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/texinfo/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/texinfo"; \
+ libsrcdir="$$s/texinfo";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/texinfo"; \
+ libsrcdir="$$s/texinfo";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/texinfo"; \
- libsrcdir="$$s/texinfo"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif texinfo
-
-
-
-
.PHONY: all-texinfo maybe-all-texinfo
maybe-all-texinfo:
@if texinfo
-TARGET-texinfo=all
maybe-all-texinfo: all-texinfo
all-texinfo: configure-texinfo
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/texinfo && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-texinfo))
+ (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) all)
@endif texinfo
-
-
-
.PHONY: check-texinfo maybe-check-texinfo
maybe-check-texinfo:
@if texinfo
maybe-check-texinfo: check-texinfo
check-texinfo:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/texinfo && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) check)
@endif texinfo
@@ -24231,16 +18284,16 @@ maybe-info-texinfo: info-texinfo
info-texinfo: \
configure-texinfo
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24257,16 +18310,16 @@ maybe-dvi-texinfo: dvi-texinfo
dvi-texinfo: \
configure-texinfo
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24276,32 +18329,6 @@ dvi-texinfo: \
@endif texinfo
-.PHONY: maybe-html-texinfo html-texinfo
-maybe-html-texinfo:
-@if texinfo
-maybe-html-texinfo: html-texinfo
-
-html-texinfo: \
- configure-texinfo
- @: $(MAKE); $(unstage)
- @[ -f ./texinfo/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif texinfo
-
.PHONY: maybe-TAGS-texinfo TAGS-texinfo
maybe-TAGS-texinfo:
@if texinfo
@@ -24309,16 +18336,16 @@ maybe-TAGS-texinfo: TAGS-texinfo
TAGS-texinfo: \
configure-texinfo
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24336,16 +18363,16 @@ maybe-install-info-texinfo: install-info-texinfo
install-info-texinfo: \
configure-texinfo \
info-texinfo
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24362,16 +18389,16 @@ maybe-installcheck-texinfo: installcheck-texinfo
installcheck-texinfo: \
configure-texinfo
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24387,16 +18414,16 @@ maybe-mostlyclean-texinfo:
maybe-mostlyclean-texinfo: mostlyclean-texinfo
mostlyclean-texinfo:
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24412,16 +18439,16 @@ maybe-clean-texinfo:
maybe-clean-texinfo: clean-texinfo
clean-texinfo:
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24437,16 +18464,16 @@ maybe-distclean-texinfo:
maybe-distclean-texinfo: distclean-texinfo
distclean-texinfo:
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24462,16 +18489,16 @@ maybe-maintainer-clean-texinfo:
maybe-maintainer-clean-texinfo: maintainer-clean-texinfo
maintainer-clean-texinfo:
- @: $(MAKE); $(unstage)
@[ -f ./texinfo/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in texinfo" ; \
- (cd $(HOST_SUBDIR)/texinfo && \
+ (cd texinfo && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24482,65 +18509,57 @@ maintainer-clean-texinfo:
@endif texinfo
-
.PHONY: configure-textutils maybe-configure-textutils
maybe-configure-textutils:
@if textutils
maybe-configure-textutils: configure-textutils
-configure-textutils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-textutils:
+ @test ! -f textutils/Makefile || exit 0; \
+ [ -d textutils ] || mkdir textutils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/textutils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/textutils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/textutils; \
- cd "$(HOST_SUBDIR)/textutils" || exit 1; \
+ echo Configuring in textutils; \
+ cd textutils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/textutils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/textutils"; \
+ libsrcdir="$$s/textutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/textutils"; \
+ libsrcdir="$$s/textutils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/textutils"; \
- libsrcdir="$$s/textutils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif textutils
-
-
-
-
.PHONY: all-textutils maybe-all-textutils
maybe-all-textutils:
@if textutils
-TARGET-textutils=all
maybe-all-textutils: all-textutils
all-textutils: configure-textutils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/textutils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-textutils))
+ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif textutils
-
-
-
.PHONY: check-textutils maybe-check-textutils
maybe-check-textutils:
@if textutils
maybe-check-textutils: check-textutils
check-textutils:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/textutils && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) check)
@endif textutils
@@ -24550,12 +18569,11 @@ maybe-install-textutils:
maybe-install-textutils: install-textutils
install-textutils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/textutils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif textutils
@@ -24568,16 +18586,16 @@ maybe-info-textutils: info-textutils
info-textutils: \
configure-textutils
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24594,16 +18612,16 @@ maybe-dvi-textutils: dvi-textutils
dvi-textutils: \
configure-textutils
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24613,32 +18631,6 @@ dvi-textutils: \
@endif textutils
-.PHONY: maybe-html-textutils html-textutils
-maybe-html-textutils:
-@if textutils
-maybe-html-textutils: html-textutils
-
-html-textutils: \
- configure-textutils
- @: $(MAKE); $(unstage)
- @[ -f ./textutils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif textutils
-
.PHONY: maybe-TAGS-textutils TAGS-textutils
maybe-TAGS-textutils:
@if textutils
@@ -24646,16 +18638,16 @@ maybe-TAGS-textutils: TAGS-textutils
TAGS-textutils: \
configure-textutils
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24673,16 +18665,16 @@ maybe-install-info-textutils: install-info-textutils
install-info-textutils: \
configure-textutils \
info-textutils
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24699,16 +18691,16 @@ maybe-installcheck-textutils: installcheck-textutils
installcheck-textutils: \
configure-textutils
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24724,16 +18716,16 @@ maybe-mostlyclean-textutils:
maybe-mostlyclean-textutils: mostlyclean-textutils
mostlyclean-textutils:
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24749,16 +18741,16 @@ maybe-clean-textutils:
maybe-clean-textutils: clean-textutils
clean-textutils:
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24774,16 +18766,16 @@ maybe-distclean-textutils:
maybe-distclean-textutils: distclean-textutils
distclean-textutils:
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24799,16 +18791,16 @@ maybe-maintainer-clean-textutils:
maybe-maintainer-clean-textutils: maintainer-clean-textutils
maintainer-clean-textutils:
- @: $(MAKE); $(unstage)
@[ -f ./textutils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in textutils" ; \
- (cd $(HOST_SUBDIR)/textutils && \
+ (cd textutils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24819,65 +18811,57 @@ maintainer-clean-textutils:
@endif textutils
-
.PHONY: configure-time maybe-configure-time
maybe-configure-time:
@if time
maybe-configure-time: configure-time
-configure-time:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-time:
+ @test ! -f time/Makefile || exit 0; \
+ [ -d time ] || mkdir time; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/time/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/time ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/time; \
- cd "$(HOST_SUBDIR)/time" || exit 1; \
+ echo Configuring in time; \
+ cd time || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/time/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/time"; \
+ libsrcdir="$$s/time";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/time"; \
+ libsrcdir="$$s/time";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/time"; \
- libsrcdir="$$s/time"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif time
-
-
-
-
.PHONY: all-time maybe-all-time
maybe-all-time:
@if time
-TARGET-time=all
maybe-all-time: all-time
all-time: configure-time
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/time && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-time))
+ (cd time && $(MAKE) $(FLAGS_TO_PASS) all)
@endif time
-
-
-
.PHONY: check-time maybe-check-time
maybe-check-time:
@if time
maybe-check-time: check-time
check-time:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/time && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd time && $(MAKE) $(FLAGS_TO_PASS) check)
@endif time
@@ -24887,12 +18871,11 @@ maybe-install-time:
maybe-install-time: install-time
install-time: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/time && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd time && $(MAKE) $(FLAGS_TO_PASS) install)
@endif time
@@ -24905,16 +18888,16 @@ maybe-info-time: info-time
info-time: \
configure-time
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24931,16 +18914,16 @@ maybe-dvi-time: dvi-time
dvi-time: \
configure-time
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -24950,32 +18933,6 @@ dvi-time: \
@endif time
-.PHONY: maybe-html-time html-time
-maybe-html-time:
-@if time
-maybe-html-time: html-time
-
-html-time: \
- configure-time
- @: $(MAKE); $(unstage)
- @[ -f ./time/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in time" ; \
- (cd $(HOST_SUBDIR)/time && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif time
-
.PHONY: maybe-TAGS-time TAGS-time
maybe-TAGS-time:
@if time
@@ -24983,16 +18940,16 @@ maybe-TAGS-time: TAGS-time
TAGS-time: \
configure-time
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25010,16 +18967,16 @@ maybe-install-info-time: install-info-time
install-info-time: \
configure-time \
info-time
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25036,16 +18993,16 @@ maybe-installcheck-time: installcheck-time
installcheck-time: \
configure-time
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25061,16 +19018,16 @@ maybe-mostlyclean-time:
maybe-mostlyclean-time: mostlyclean-time
mostlyclean-time:
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25086,16 +19043,16 @@ maybe-clean-time:
maybe-clean-time: clean-time
clean-time:
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25111,16 +19068,16 @@ maybe-distclean-time:
maybe-distclean-time: distclean-time
distclean-time:
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25136,16 +19093,16 @@ maybe-maintainer-clean-time:
maybe-maintainer-clean-time: maintainer-clean-time
maintainer-clean-time:
- @: $(MAKE); $(unstage)
@[ -f ./time/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in time" ; \
- (cd $(HOST_SUBDIR)/time && \
+ (cd time && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25156,65 +19113,57 @@ maintainer-clean-time:
@endif time
-
.PHONY: configure-uudecode maybe-configure-uudecode
maybe-configure-uudecode:
@if uudecode
maybe-configure-uudecode: configure-uudecode
-configure-uudecode:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-uudecode:
+ @test ! -f uudecode/Makefile || exit 0; \
+ [ -d uudecode ] || mkdir uudecode; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/uudecode/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/uudecode ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/uudecode; \
- cd "$(HOST_SUBDIR)/uudecode" || exit 1; \
+ echo Configuring in uudecode; \
+ cd uudecode || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/uudecode/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/uudecode"; \
+ libsrcdir="$$s/uudecode";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/uudecode"; \
+ libsrcdir="$$s/uudecode";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/uudecode"; \
- libsrcdir="$$s/uudecode"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif uudecode
-
-
-
-
.PHONY: all-uudecode maybe-all-uudecode
maybe-all-uudecode:
@if uudecode
-TARGET-uudecode=all
maybe-all-uudecode: all-uudecode
all-uudecode: configure-uudecode
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/uudecode && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-uudecode))
+ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) all)
@endif uudecode
-
-
-
.PHONY: check-uudecode maybe-check-uudecode
maybe-check-uudecode:
@if uudecode
maybe-check-uudecode: check-uudecode
check-uudecode:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/uudecode && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) check)
@endif uudecode
@@ -25224,12 +19173,11 @@ maybe-install-uudecode:
maybe-install-uudecode: install-uudecode
install-uudecode: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/uudecode && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) install)
@endif uudecode
@@ -25242,16 +19190,16 @@ maybe-info-uudecode: info-uudecode
info-uudecode: \
configure-uudecode
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25268,16 +19216,16 @@ maybe-dvi-uudecode: dvi-uudecode
dvi-uudecode: \
configure-uudecode
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25287,32 +19235,6 @@ dvi-uudecode: \
@endif uudecode
-.PHONY: maybe-html-uudecode html-uudecode
-maybe-html-uudecode:
-@if uudecode
-maybe-html-uudecode: html-uudecode
-
-html-uudecode: \
- configure-uudecode
- @: $(MAKE); $(unstage)
- @[ -f ./uudecode/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif uudecode
-
.PHONY: maybe-TAGS-uudecode TAGS-uudecode
maybe-TAGS-uudecode:
@if uudecode
@@ -25320,16 +19242,16 @@ maybe-TAGS-uudecode: TAGS-uudecode
TAGS-uudecode: \
configure-uudecode
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25347,16 +19269,16 @@ maybe-install-info-uudecode: install-info-uudecode
install-info-uudecode: \
configure-uudecode \
info-uudecode
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25373,16 +19295,16 @@ maybe-installcheck-uudecode: installcheck-uudecode
installcheck-uudecode: \
configure-uudecode
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25398,16 +19320,16 @@ maybe-mostlyclean-uudecode:
maybe-mostlyclean-uudecode: mostlyclean-uudecode
mostlyclean-uudecode:
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25423,16 +19345,16 @@ maybe-clean-uudecode:
maybe-clean-uudecode: clean-uudecode
clean-uudecode:
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25448,16 +19370,16 @@ maybe-distclean-uudecode:
maybe-distclean-uudecode: distclean-uudecode
distclean-uudecode:
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25473,16 +19395,16 @@ maybe-maintainer-clean-uudecode:
maybe-maintainer-clean-uudecode: maintainer-clean-uudecode
maintainer-clean-uudecode:
- @: $(MAKE); $(unstage)
@[ -f ./uudecode/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in uudecode" ; \
- (cd $(HOST_SUBDIR)/uudecode && \
+ (cd uudecode && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25493,65 +19415,57 @@ maintainer-clean-uudecode:
@endif uudecode
-
.PHONY: configure-wdiff maybe-configure-wdiff
maybe-configure-wdiff:
@if wdiff
maybe-configure-wdiff: configure-wdiff
-configure-wdiff:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-wdiff:
+ @test ! -f wdiff/Makefile || exit 0; \
+ [ -d wdiff ] || mkdir wdiff; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/wdiff/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/wdiff ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/wdiff; \
- cd "$(HOST_SUBDIR)/wdiff" || exit 1; \
+ echo Configuring in wdiff; \
+ cd wdiff || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/wdiff/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/wdiff"; \
+ libsrcdir="$$s/wdiff";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/wdiff"; \
+ libsrcdir="$$s/wdiff";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/wdiff"; \
- libsrcdir="$$s/wdiff"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif wdiff
-
-
-
-
.PHONY: all-wdiff maybe-all-wdiff
maybe-all-wdiff:
@if wdiff
-TARGET-wdiff=all
maybe-all-wdiff: all-wdiff
all-wdiff: configure-wdiff
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/wdiff && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-wdiff))
+ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) all)
@endif wdiff
-
-
-
.PHONY: check-wdiff maybe-check-wdiff
maybe-check-wdiff:
@if wdiff
maybe-check-wdiff: check-wdiff
check-wdiff:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/wdiff && \
- $(MAKE) $(FLAGS_TO_PASS) check)
+ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) check)
@endif wdiff
@@ -25561,12 +19475,11 @@ maybe-install-wdiff:
maybe-install-wdiff: install-wdiff
install-wdiff: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/wdiff && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) install)
@endif wdiff
@@ -25579,16 +19492,16 @@ maybe-info-wdiff: info-wdiff
info-wdiff: \
configure-wdiff
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25605,16 +19518,16 @@ maybe-dvi-wdiff: dvi-wdiff
dvi-wdiff: \
configure-wdiff
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25624,32 +19537,6 @@ dvi-wdiff: \
@endif wdiff
-.PHONY: maybe-html-wdiff html-wdiff
-maybe-html-wdiff:
-@if wdiff
-maybe-html-wdiff: html-wdiff
-
-html-wdiff: \
- configure-wdiff
- @: $(MAKE); $(unstage)
- @[ -f ./wdiff/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif wdiff
-
.PHONY: maybe-TAGS-wdiff TAGS-wdiff
maybe-TAGS-wdiff:
@if wdiff
@@ -25657,16 +19544,16 @@ maybe-TAGS-wdiff: TAGS-wdiff
TAGS-wdiff: \
configure-wdiff
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25684,16 +19571,16 @@ maybe-install-info-wdiff: install-info-wdiff
install-info-wdiff: \
configure-wdiff \
info-wdiff
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25710,16 +19597,16 @@ maybe-installcheck-wdiff: installcheck-wdiff
installcheck-wdiff: \
configure-wdiff
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25735,16 +19622,16 @@ maybe-mostlyclean-wdiff:
maybe-mostlyclean-wdiff: mostlyclean-wdiff
mostlyclean-wdiff:
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25760,16 +19647,16 @@ maybe-clean-wdiff:
maybe-clean-wdiff: clean-wdiff
clean-wdiff:
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25785,16 +19672,16 @@ maybe-distclean-wdiff:
maybe-distclean-wdiff: distclean-wdiff
distclean-wdiff:
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25810,16 +19697,16 @@ maybe-maintainer-clean-wdiff:
maybe-maintainer-clean-wdiff: maintainer-clean-wdiff
maintainer-clean-wdiff:
- @: $(MAKE); $(unstage)
@[ -f ./wdiff/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in wdiff" ; \
- (cd $(HOST_SUBDIR)/wdiff && \
+ (cd wdiff && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25830,53 +19717,46 @@ maintainer-clean-wdiff:
@endif wdiff
-
.PHONY: configure-zip maybe-configure-zip
maybe-configure-zip:
@if zip
maybe-configure-zip: configure-zip
-configure-zip:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-zip:
+ @test ! -f zip/Makefile || exit 0; \
+ [ -d zip ] || mkdir zip; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zip/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zip ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/zip; \
- cd "$(HOST_SUBDIR)/zip" || exit 1; \
+ echo Configuring in zip; \
+ cd zip || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zip/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zip"; \
+ libsrcdir="$$s/zip";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zip"; \
+ libsrcdir="$$s/zip";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/zip"; \
- libsrcdir="$$s/zip"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif zip
-
-
-
-
.PHONY: all-zip maybe-all-zip
maybe-all-zip:
@if zip
-TARGET-zip=all
maybe-all-zip: all-zip
all-zip: configure-zip
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/zip && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-zip))
+ (cd zip && $(MAKE) $(FLAGS_TO_PASS) all)
@endif zip
-
-
-
.PHONY: check-zip maybe-check-zip
maybe-check-zip:
@if zip
@@ -25884,13 +19764,12 @@ maybe-check-zip: check-zip
# This module is only tested in a native toolchain.
check-zip:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/zip && \
- $(MAKE) $(FLAGS_TO_PASS) check); \
+ (cd zip && $(MAKE) $(FLAGS_TO_PASS) check); \
fi
@endif zip
@@ -25901,12 +19780,11 @@ maybe-install-zip:
maybe-install-zip: install-zip
install-zip: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/zip && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd zip && $(MAKE) $(FLAGS_TO_PASS) install)
@endif zip
@@ -25919,16 +19797,16 @@ maybe-info-zip: info-zip
info-zip: \
configure-zip
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25945,16 +19823,16 @@ maybe-dvi-zip: dvi-zip
dvi-zip: \
configure-zip
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -25964,32 +19842,6 @@ dvi-zip: \
@endif zip
-.PHONY: maybe-html-zip html-zip
-maybe-html-zip:
-@if zip
-maybe-html-zip: html-zip
-
-html-zip: \
- configure-zip
- @: $(MAKE); $(unstage)
- @[ -f ./zip/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif zip
-
.PHONY: maybe-TAGS-zip TAGS-zip
maybe-TAGS-zip:
@if zip
@@ -25997,16 +19849,16 @@ maybe-TAGS-zip: TAGS-zip
TAGS-zip: \
configure-zip
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26024,16 +19876,16 @@ maybe-install-info-zip: install-info-zip
install-info-zip: \
configure-zip \
info-zip
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26050,16 +19902,16 @@ maybe-installcheck-zip: installcheck-zip
installcheck-zip: \
configure-zip
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26075,16 +19927,16 @@ maybe-mostlyclean-zip:
maybe-mostlyclean-zip: mostlyclean-zip
mostlyclean-zip:
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26100,16 +19952,16 @@ maybe-clean-zip:
maybe-clean-zip: clean-zip
clean-zip:
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26125,16 +19977,16 @@ maybe-distclean-zip:
maybe-distclean-zip: distclean-zip
distclean-zip:
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26150,16 +20002,16 @@ maybe-maintainer-clean-zip:
maybe-maintainer-clean-zip: maintainer-clean-zip
maintainer-clean-zip:
- @: $(MAKE); $(unstage)
@[ -f ./zip/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in zip" ; \
- (cd $(HOST_SUBDIR)/zip && \
+ (cd zip && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26170,410 +20022,48 @@ maintainer-clean-zip:
@endif zip
-
.PHONY: configure-zlib maybe-configure-zlib
maybe-configure-zlib:
@if zlib
maybe-configure-zlib: configure-zlib
-configure-zlib:
-@endif zlib
-@if zlib-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif zlib-bootstrap
-@if zlib
- @r=`${PWD_COMMAND}`; export r; \
+configure-zlib:
+ @test -f stage_last && exit 0; \
+ test ! -f zlib/Makefile || exit 0; \
+ [ -d zlib ] || mkdir zlib; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/zlib; \
- cd "$(HOST_SUBDIR)/zlib" || exit 1; \
+ echo Configuring in zlib; \
+ cd zlib || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif zlib
-
-
-.PHONY: configure-stage1-zlib maybe-configure-stage1-zlib
-maybe-configure-stage1-zlib:
-@if zlib-bootstrap
-maybe-configure-stage1-zlib: configure-stage1-zlib
-configure-stage1-zlib:
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- echo Configuring stage 1 in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
-@endif zlib-bootstrap
-
-.PHONY: configure-stage2-zlib maybe-configure-stage2-zlib
-maybe-configure-stage2-zlib:
-@if zlib-bootstrap
-maybe-configure-stage2-zlib: configure-stage2-zlib
-configure-stage2-zlib:
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 2 in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif zlib-bootstrap
-
-.PHONY: configure-stage3-zlib maybe-configure-stage3-zlib
-maybe-configure-stage3-zlib:
-@if zlib-bootstrap
-maybe-configure-stage3-zlib: configure-stage3-zlib
-configure-stage3-zlib:
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 3 in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif zlib-bootstrap
-
-.PHONY: configure-stage4-zlib maybe-configure-stage4-zlib
-maybe-configure-stage4-zlib:
-@if zlib-bootstrap
-maybe-configure-stage4-zlib: configure-stage4-zlib
-configure-stage4-zlib:
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage 4 in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif zlib-bootstrap
-
-.PHONY: configure-stageprofile-zlib maybe-configure-stageprofile-zlib
-maybe-configure-stageprofile-zlib:
-@if zlib-bootstrap
-maybe-configure-stageprofile-zlib: configure-stageprofile-zlib
-configure-stageprofile-zlib:
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage profile in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif zlib-bootstrap
-
-.PHONY: configure-stagefeedback-zlib maybe-configure-stagefeedback-zlib
-maybe-configure-stagefeedback-zlib:
-@if zlib-bootstrap
-maybe-configure-stagefeedback-zlib: configure-stagefeedback-zlib
-configure-stagefeedback-zlib:
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- echo Configuring stage feedback in $(HOST_SUBDIR)/zlib ; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
- cd $(HOST_SUBDIR)/zlib || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- @stage2_werror_flag@
-@endif zlib-bootstrap
-
-
-
-
-
.PHONY: all-zlib maybe-all-zlib
maybe-all-zlib:
@if zlib
-TARGET-zlib=all
maybe-all-zlib: all-zlib
all-zlib: configure-zlib
-@endif zlib
-@if zlib-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif zlib-bootstrap
-@if zlib
- @r=`${PWD_COMMAND}`; export r; \
+ @test -f stage_last && exit 0; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-zlib))
+ (cd zlib && $(MAKE) $(FLAGS_TO_PASS) all)
@endif zlib
-
-
-.PHONY: all-stage1-zlib maybe-all-stage1-zlib
-.PHONY: clean-stage1-zlib maybe-clean-stage1-zlib
-maybe-all-stage1-zlib:
-maybe-clean-stage1-zlib:
-@if zlib-bootstrap
-maybe-all-stage1-zlib: all-stage1-zlib
-all-stage1: all-stage1-zlib
-TARGET-stage1-zlib = $(TARGET-zlib)
-all-stage1-zlib: configure-stage1-zlib
- @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" \
- $(TARGET-stage1-zlib)
-
-maybe-clean-stage1-zlib: clean-stage1-zlib
-clean-stage1: clean-stage1-zlib
-clean-stage1-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage1 ] || $(MAKE) stage1-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- CFLAGS="$(STAGE1_CFLAGS)" LIBCFLAGS="$(STAGE1_CFLAGS)" clean
-@endif zlib-bootstrap
-
-
-.PHONY: all-stage2-zlib maybe-all-stage2-zlib
-.PHONY: clean-stage2-zlib maybe-clean-stage2-zlib
-maybe-all-stage2-zlib:
-maybe-clean-stage2-zlib:
-@if zlib-bootstrap
-maybe-all-stage2-zlib: all-stage2-zlib
-all-stage2: all-stage2-zlib
-TARGET-stage2-zlib = $(TARGET-zlib)
-all-stage2-zlib: configure-stage2-zlib
- @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage2-zlib)
-
-maybe-clean-stage2-zlib: clean-stage2-zlib
-clean-stage2: clean-stage2-zlib
-clean-stage2-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage2 ] || $(MAKE) stage2-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif zlib-bootstrap
-
-
-.PHONY: all-stage3-zlib maybe-all-stage3-zlib
-.PHONY: clean-stage3-zlib maybe-clean-stage3-zlib
-maybe-all-stage3-zlib:
-maybe-clean-stage3-zlib:
-@if zlib-bootstrap
-maybe-all-stage3-zlib: all-stage3-zlib
-all-stage3: all-stage3-zlib
-TARGET-stage3-zlib = $(TARGET-zlib)
-all-stage3-zlib: configure-stage3-zlib
- @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage3-zlib)
-
-maybe-clean-stage3-zlib: clean-stage3-zlib
-clean-stage3: clean-stage3-zlib
-clean-stage3-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage3 ] || $(MAKE) stage3-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif zlib-bootstrap
-
-
-.PHONY: all-stage4-zlib maybe-all-stage4-zlib
-.PHONY: clean-stage4-zlib maybe-clean-stage4-zlib
-maybe-all-stage4-zlib:
-maybe-clean-stage4-zlib:
-@if zlib-bootstrap
-maybe-all-stage4-zlib: all-stage4-zlib
-all-stage4: all-stage4-zlib
-TARGET-stage4-zlib = $(TARGET-zlib)
-all-stage4-zlib: configure-stage4-zlib
- @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) \
- $(TARGET-stage4-zlib)
-
-maybe-clean-stage4-zlib: clean-stage4-zlib
-clean-stage4: clean-stage4-zlib
-clean-stage4-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage4 ] || $(MAKE) stage4-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- clean
-@endif zlib-bootstrap
-
-
-.PHONY: all-stageprofile-zlib maybe-all-stageprofile-zlib
-.PHONY: clean-stageprofile-zlib maybe-clean-stageprofile-zlib
-maybe-all-stageprofile-zlib:
-maybe-clean-stageprofile-zlib:
-@if zlib-bootstrap
-maybe-all-stageprofile-zlib: all-stageprofile-zlib
-all-stageprofile: all-stageprofile-zlib
-TARGET-stageprofile-zlib = $(TARGET-zlib)
-all-stageprofile-zlib: configure-stageprofile-zlib
- @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" \
- $(TARGET-stageprofile-zlib)
-
-maybe-clean-stageprofile-zlib: clean-stageprofile-zlib
-clean-stageprofile: clean-stageprofile-zlib
-clean-stageprofile-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
-@endif zlib-bootstrap
-
-
-.PHONY: all-stagefeedback-zlib maybe-all-stagefeedback-zlib
-.PHONY: clean-stagefeedback-zlib maybe-clean-stagefeedback-zlib
-maybe-all-stagefeedback-zlib:
-maybe-clean-stagefeedback-zlib:
-@if zlib-bootstrap
-maybe-all-stagefeedback-zlib: all-stagefeedback-zlib
-all-stagefeedback: all-stagefeedback-zlib
-TARGET-stagefeedback-zlib = $(TARGET-zlib)
-all-stagefeedback-zlib: configure-stagefeedback-zlib
- @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- $(POSTSTAGE1_HOST_EXPORTS) \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use" \
- $(TARGET-stagefeedback-zlib)
-
-maybe-clean-stagefeedback-zlib: clean-stagefeedback-zlib
-clean-stagefeedback: clean-stagefeedback-zlib
-clean-stagefeedback-zlib:
- @[ -f $(HOST_SUBDIR)/zlib/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-zlib/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start; \
- cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(FLAGS_TO_PASS) \
- $(POSTSTAGE1_FLAGS_TO_PASS) \
- CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
-@endif zlib-bootstrap
-
-
-
-
-
.PHONY: check-zlib maybe-check-zlib
maybe-check-zlib:
@if zlib
@@ -26604,12 +20094,13 @@ info-zlib: \
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26629,12 +20120,13 @@ dvi-zlib: \
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26644,31 +20136,6 @@ dvi-zlib: \
@endif zlib
-.PHONY: maybe-html-zlib html-zlib
-maybe-html-zlib:
-@if zlib
-maybe-html-zlib: html-zlib
-
-html-zlib: \
- configure-zlib
- @[ -f ./zlib/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif zlib
-
.PHONY: maybe-TAGS-zlib TAGS-zlib
maybe-TAGS-zlib:
@if zlib
@@ -26679,12 +20146,13 @@ TAGS-zlib: \
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26705,12 +20173,13 @@ install-info-zlib: \
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26730,12 +20199,13 @@ installcheck-zlib: \
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26754,12 +20224,13 @@ mostlyclean-zlib:
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26778,12 +20249,13 @@ clean-zlib:
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26802,12 +20274,13 @@ distclean-zlib:
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26826,12 +20299,13 @@ maintainer-clean-zlib:
@[ -f ./zlib/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in zlib" ; \
- (cd $(HOST_SUBDIR)/zlib && \
+ (cd zlib && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26842,65 +20316,57 @@ maintainer-clean-zlib:
@endif zlib
-
.PHONY: configure-gdb maybe-configure-gdb
maybe-configure-gdb:
@if gdb
maybe-configure-gdb: configure-gdb
-configure-gdb:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-gdb:
+ @test ! -f gdb/Makefile || exit 0; \
+ [ -d gdb ] || mkdir gdb; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gdb/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gdb ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gdb; \
- cd "$(HOST_SUBDIR)/gdb" || exit 1; \
+ echo Configuring in gdb; \
+ cd gdb || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gdb/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gdb"; \
+ libsrcdir="$$s/gdb";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gdb"; \
+ libsrcdir="$$s/gdb";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gdb"; \
- libsrcdir="$$s/gdb"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif gdb
-
-
-
-
.PHONY: all-gdb maybe-all-gdb
maybe-all-gdb:
@if gdb
-TARGET-gdb=all
maybe-all-gdb: all-gdb
all-gdb: configure-gdb
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gdb && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-gdb))
+ (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
@endif gdb
-
-
-
.PHONY: check-gdb maybe-check-gdb
maybe-check-gdb:
@if gdb
maybe-check-gdb: check-gdb
check-gdb:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gdb && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+ (cd gdb && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
@endif gdb
@@ -26910,12 +20376,11 @@ maybe-install-gdb:
maybe-install-gdb: install-gdb
install-gdb: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gdb && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+ (cd gdb && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
@endif gdb
@@ -26928,16 +20393,16 @@ maybe-info-gdb: info-gdb
info-gdb: \
configure-gdb
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26954,16 +20419,16 @@ maybe-dvi-gdb: dvi-gdb
dvi-gdb: \
configure-gdb
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -26973,32 +20438,6 @@ dvi-gdb: \
@endif gdb
-.PHONY: maybe-html-gdb html-gdb
-maybe-html-gdb:
-@if gdb
-maybe-html-gdb: html-gdb
-
-html-gdb: \
- configure-gdb
- @: $(MAKE); $(unstage)
- @[ -f ./gdb/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gdb
-
.PHONY: maybe-TAGS-gdb TAGS-gdb
maybe-TAGS-gdb:
@if gdb
@@ -27006,16 +20445,16 @@ maybe-TAGS-gdb: TAGS-gdb
TAGS-gdb: \
configure-gdb
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27033,16 +20472,16 @@ maybe-install-info-gdb: install-info-gdb
install-info-gdb: \
configure-gdb \
info-gdb
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27059,16 +20498,16 @@ maybe-installcheck-gdb: installcheck-gdb
installcheck-gdb: \
configure-gdb
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27084,16 +20523,16 @@ maybe-mostlyclean-gdb:
maybe-mostlyclean-gdb: mostlyclean-gdb
mostlyclean-gdb:
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27109,16 +20548,16 @@ maybe-clean-gdb:
maybe-clean-gdb: clean-gdb
clean-gdb:
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27134,16 +20573,16 @@ maybe-distclean-gdb:
maybe-distclean-gdb: distclean-gdb
distclean-gdb:
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27159,16 +20598,16 @@ maybe-maintainer-clean-gdb:
maybe-maintainer-clean-gdb: maintainer-clean-gdb
maintainer-clean-gdb:
- @: $(MAKE); $(unstage)
@[ -f ./gdb/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gdb" ; \
- (cd $(HOST_SUBDIR)/gdb && \
+ (cd gdb && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27179,65 +20618,57 @@ maintainer-clean-gdb:
@endif gdb
-
.PHONY: configure-expect maybe-configure-expect
maybe-configure-expect:
@if expect
maybe-configure-expect: configure-expect
-configure-expect:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-expect:
+ @test ! -f expect/Makefile || exit 0; \
+ [ -d expect ] || mkdir expect; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/expect/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/expect ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/expect; \
- cd "$(HOST_SUBDIR)/expect" || exit 1; \
+ echo Configuring in expect; \
+ cd expect || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/expect/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/expect"; \
+ libsrcdir="$$s/expect";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/expect"; \
+ libsrcdir="$$s/expect";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/expect"; \
- libsrcdir="$$s/expect"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif expect
-
-
-
-
.PHONY: all-expect maybe-all-expect
maybe-all-expect:
@if expect
-TARGET-expect=all
maybe-all-expect: all-expect
all-expect: configure-expect
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/expect && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-expect))
+ (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
@endif expect
-
-
-
.PHONY: check-expect maybe-check-expect
maybe-check-expect:
@if expect
maybe-check-expect: check-expect
check-expect:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/expect && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+ (cd expect && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
@endif expect
@@ -27247,12 +20678,11 @@ maybe-install-expect:
maybe-install-expect: install-expect
install-expect: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/expect && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+ (cd expect && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
@endif expect
@@ -27265,16 +20695,16 @@ maybe-info-expect: info-expect
info-expect: \
configure-expect
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27291,16 +20721,16 @@ maybe-dvi-expect: dvi-expect
dvi-expect: \
configure-expect
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27310,32 +20740,6 @@ dvi-expect: \
@endif expect
-.PHONY: maybe-html-expect html-expect
-maybe-html-expect:
-@if expect
-maybe-html-expect: html-expect
-
-html-expect: \
- configure-expect
- @: $(MAKE); $(unstage)
- @[ -f ./expect/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif expect
-
.PHONY: maybe-TAGS-expect TAGS-expect
maybe-TAGS-expect:
@if expect
@@ -27343,16 +20747,16 @@ maybe-TAGS-expect: TAGS-expect
TAGS-expect: \
configure-expect
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27370,16 +20774,16 @@ maybe-install-info-expect: install-info-expect
install-info-expect: \
configure-expect \
info-expect
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27396,16 +20800,16 @@ maybe-installcheck-expect: installcheck-expect
installcheck-expect: \
configure-expect
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27421,16 +20825,16 @@ maybe-mostlyclean-expect:
maybe-mostlyclean-expect: mostlyclean-expect
mostlyclean-expect:
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27446,16 +20850,16 @@ maybe-clean-expect:
maybe-clean-expect: clean-expect
clean-expect:
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27471,16 +20875,16 @@ maybe-distclean-expect:
maybe-distclean-expect: distclean-expect
distclean-expect:
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27496,16 +20900,16 @@ maybe-maintainer-clean-expect:
maybe-maintainer-clean-expect: maintainer-clean-expect
maintainer-clean-expect:
- @: $(MAKE); $(unstage)
@[ -f ./expect/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in expect" ; \
- (cd $(HOST_SUBDIR)/expect && \
+ (cd expect && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27516,65 +20920,57 @@ maintainer-clean-expect:
@endif expect
-
.PHONY: configure-guile maybe-configure-guile
maybe-configure-guile:
@if guile
maybe-configure-guile: configure-guile
-configure-guile:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-guile:
+ @test ! -f guile/Makefile || exit 0; \
+ [ -d guile ] || mkdir guile; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/guile/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/guile ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/guile; \
- cd "$(HOST_SUBDIR)/guile" || exit 1; \
+ echo Configuring in guile; \
+ cd guile || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/guile/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/guile"; \
+ libsrcdir="$$s/guile";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/guile"; \
+ libsrcdir="$$s/guile";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/guile"; \
- libsrcdir="$$s/guile"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif guile
-
-
-
-
.PHONY: all-guile maybe-all-guile
maybe-all-guile:
@if guile
-TARGET-guile=all
maybe-all-guile: all-guile
all-guile: configure-guile
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/guile && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-guile))
+ (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
@endif guile
-
-
-
.PHONY: check-guile maybe-check-guile
maybe-check-guile:
@if guile
maybe-check-guile: check-guile
check-guile:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/guile && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+ (cd guile && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
@endif guile
@@ -27584,12 +20980,11 @@ maybe-install-guile:
maybe-install-guile: install-guile
install-guile: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/guile && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+ (cd guile && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
@endif guile
@@ -27602,16 +20997,16 @@ maybe-info-guile: info-guile
info-guile: \
configure-guile
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27628,16 +21023,16 @@ maybe-dvi-guile: dvi-guile
dvi-guile: \
configure-guile
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27647,32 +21042,6 @@ dvi-guile: \
@endif guile
-.PHONY: maybe-html-guile html-guile
-maybe-html-guile:
-@if guile
-maybe-html-guile: html-guile
-
-html-guile: \
- configure-guile
- @: $(MAKE); $(unstage)
- @[ -f ./guile/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif guile
-
.PHONY: maybe-TAGS-guile TAGS-guile
maybe-TAGS-guile:
@if guile
@@ -27680,16 +21049,16 @@ maybe-TAGS-guile: TAGS-guile
TAGS-guile: \
configure-guile
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27707,16 +21076,16 @@ maybe-install-info-guile: install-info-guile
install-info-guile: \
configure-guile \
info-guile
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27733,16 +21102,16 @@ maybe-installcheck-guile: installcheck-guile
installcheck-guile: \
configure-guile
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27758,16 +21127,16 @@ maybe-mostlyclean-guile:
maybe-mostlyclean-guile: mostlyclean-guile
mostlyclean-guile:
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27783,16 +21152,16 @@ maybe-clean-guile:
maybe-clean-guile: clean-guile
clean-guile:
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27808,16 +21177,16 @@ maybe-distclean-guile:
maybe-distclean-guile: distclean-guile
distclean-guile:
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27833,16 +21202,16 @@ maybe-maintainer-clean-guile:
maybe-maintainer-clean-guile: maintainer-clean-guile
maintainer-clean-guile:
- @: $(MAKE); $(unstage)
@[ -f ./guile/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in guile" ; \
- (cd $(HOST_SUBDIR)/guile && \
+ (cd guile && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27853,65 +21222,57 @@ maintainer-clean-guile:
@endif guile
-
.PHONY: configure-tk maybe-configure-tk
maybe-configure-tk:
@if tk
maybe-configure-tk: configure-tk
-configure-tk:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-tk:
+ @test ! -f tk/Makefile || exit 0; \
+ [ -d tk ] || mkdir tk; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/tk/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tk ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/tk; \
- cd "$(HOST_SUBDIR)/tk" || exit 1; \
+ echo Configuring in tk; \
+ cd tk || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/tk/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/tk"; \
+ libsrcdir="$$s/tk";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/tk"; \
+ libsrcdir="$$s/tk";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/tk"; \
- libsrcdir="$$s/tk"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif tk
-
-
-
-
.PHONY: all-tk maybe-all-tk
maybe-all-tk:
@if tk
-TARGET-tk=all
maybe-all-tk: all-tk
all-tk: configure-tk
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tk && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-tk))
+ (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
@endif tk
-
-
-
.PHONY: check-tk maybe-check-tk
maybe-check-tk:
@if tk
maybe-check-tk: check-tk
check-tk:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tk && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+ (cd tk && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
@endif tk
@@ -27921,12 +21282,11 @@ maybe-install-tk:
maybe-install-tk: install-tk
install-tk: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/tk && \
- $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+ (cd tk && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
@endif tk
@@ -27939,16 +21299,16 @@ maybe-info-tk: info-tk
info-tk: \
configure-tk
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27965,16 +21325,16 @@ maybe-dvi-tk: dvi-tk
dvi-tk: \
configure-tk
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -27984,32 +21344,6 @@ dvi-tk: \
@endif tk
-.PHONY: maybe-html-tk html-tk
-maybe-html-tk:
-@if tk
-maybe-html-tk: html-tk
-
-html-tk: \
- configure-tk
- @: $(MAKE); $(unstage)
- @[ -f ./tk/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif tk
-
.PHONY: maybe-TAGS-tk TAGS-tk
maybe-TAGS-tk:
@if tk
@@ -28017,16 +21351,16 @@ maybe-TAGS-tk: TAGS-tk
TAGS-tk: \
configure-tk
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28044,16 +21378,16 @@ maybe-install-info-tk: install-info-tk
install-info-tk: \
configure-tk \
info-tk
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28070,16 +21404,16 @@ maybe-installcheck-tk: installcheck-tk
installcheck-tk: \
configure-tk
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28095,16 +21429,16 @@ maybe-mostlyclean-tk:
maybe-mostlyclean-tk: mostlyclean-tk
mostlyclean-tk:
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28120,16 +21454,16 @@ maybe-clean-tk:
maybe-clean-tk: clean-tk
clean-tk:
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28145,16 +21479,16 @@ maybe-distclean-tk:
maybe-distclean-tk: distclean-tk
distclean-tk:
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28170,16 +21504,16 @@ maybe-maintainer-clean-tk:
maybe-maintainer-clean-tk: maintainer-clean-tk
maintainer-clean-tk:
- @: $(MAKE); $(unstage)
@[ -f ./tk/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in tk" ; \
- (cd $(HOST_SUBDIR)/tk && \
+ (cd tk && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28190,53 +21524,46 @@ maintainer-clean-tk:
@endif tk
-
.PHONY: configure-libtermcap maybe-configure-libtermcap
maybe-configure-libtermcap:
@if libtermcap
maybe-configure-libtermcap: configure-libtermcap
-configure-libtermcap:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-libtermcap:
+ @test ! -f libtermcap/Makefile || exit 0; \
+ [ -d libtermcap ] || mkdir libtermcap; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/libtermcap/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libtermcap ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/libtermcap; \
- cd "$(HOST_SUBDIR)/libtermcap" || exit 1; \
+ echo Configuring in libtermcap; \
+ cd libtermcap || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/libtermcap/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libtermcap"; \
+ libsrcdir="$$s/libtermcap";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libtermcap"; \
+ libsrcdir="$$s/libtermcap";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libtermcap"; \
- libsrcdir="$$s/libtermcap"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif libtermcap
-
-
-
-
.PHONY: all-libtermcap maybe-all-libtermcap
maybe-all-libtermcap:
@if libtermcap
-TARGET-libtermcap=all
maybe-all-libtermcap: all-libtermcap
all-libtermcap: configure-libtermcap
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libtermcap && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-libtermcap))
+ (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) all)
@endif libtermcap
-
-
-
.PHONY: check-libtermcap maybe-check-libtermcap
maybe-check-libtermcap:
@if libtermcap
@@ -28252,12 +21579,11 @@ maybe-install-libtermcap:
maybe-install-libtermcap: install-libtermcap
install-libtermcap: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/libtermcap && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) install)
@endif libtermcap
@@ -28270,16 +21596,16 @@ maybe-info-libtermcap: info-libtermcap
info-libtermcap: \
configure-libtermcap
- @: $(MAKE); $(unstage)
@[ -f ./libtermcap/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
+ (cd libtermcap && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28296,16 +21622,16 @@ maybe-dvi-libtermcap: dvi-libtermcap
dvi-libtermcap: \
configure-libtermcap
- @: $(MAKE); $(unstage)
@[ -f ./libtermcap/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
+ (cd libtermcap && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28315,32 +21641,6 @@ dvi-libtermcap: \
@endif libtermcap
-.PHONY: maybe-html-libtermcap html-libtermcap
-maybe-html-libtermcap:
-@if libtermcap
-maybe-html-libtermcap: html-libtermcap
-
-html-libtermcap: \
- configure-libtermcap
- @: $(MAKE); $(unstage)
- @[ -f ./libtermcap/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif libtermcap
-
.PHONY: maybe-TAGS-libtermcap TAGS-libtermcap
maybe-TAGS-libtermcap:
@if libtermcap
@@ -28348,16 +21648,16 @@ maybe-TAGS-libtermcap: TAGS-libtermcap
TAGS-libtermcap: \
configure-libtermcap
- @: $(MAKE); $(unstage)
@[ -f ./libtermcap/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
+ (cd libtermcap && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28375,16 +21675,16 @@ maybe-install-info-libtermcap: install-info-libtermcap
install-info-libtermcap: \
configure-libtermcap \
info-libtermcap
- @: $(MAKE); $(unstage)
@[ -f ./libtermcap/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
+ (cd libtermcap && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28401,16 +21701,16 @@ maybe-installcheck-libtermcap: installcheck-libtermcap
installcheck-libtermcap: \
configure-libtermcap
- @: $(MAKE); $(unstage)
@[ -f ./libtermcap/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in libtermcap" ; \
- (cd $(HOST_SUBDIR)/libtermcap && \
+ (cd libtermcap && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28461,53 +21761,46 @@ maintainer-clean-libtermcap:
@endif libtermcap
-
.PHONY: configure-utils maybe-configure-utils
maybe-configure-utils:
@if utils
maybe-configure-utils: configure-utils
-configure-utils:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
+configure-utils:
+ @test ! -f utils/Makefile || exit 0; \
+ [ -d utils ] || mkdir utils; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/utils/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/utils ; \
$(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/utils; \
- cd "$(HOST_SUBDIR)/utils" || exit 1; \
+ echo Configuring in utils; \
+ cd utils || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/utils/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/utils"; \
+ libsrcdir="$$s/utils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/utils"; \
+ libsrcdir="$$s/utils";; \
esac; \
- srcdiroption="--srcdir=$${topdir}/utils"; \
- libsrcdir="$$s/utils"; \
$(SHELL) $${libsrcdir}/configure \
$(HOST_CONFIGARGS) $${srcdiroption} \
|| exit 1
@endif utils
-
-
-
-
.PHONY: all-utils maybe-all-utils
maybe-all-utils:
@if utils
-TARGET-utils=all
maybe-all-utils: all-utils
all-utils: configure-utils
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/utils && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-utils))
+ (cd utils && $(MAKE) $(FLAGS_TO_PASS) all)
@endif utils
-
-
-
.PHONY: check-utils maybe-check-utils
maybe-check-utils:
@if utils
@@ -28523,12 +21816,11 @@ maybe-install-utils:
maybe-install-utils: install-utils
install-utils: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/utils && \
- $(MAKE) $(FLAGS_TO_PASS) install)
+ (cd utils && $(MAKE) $(FLAGS_TO_PASS) install)
@endif utils
@@ -28541,16 +21833,16 @@ maybe-info-utils: info-utils
info-utils: \
configure-utils
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28567,16 +21859,16 @@ maybe-dvi-utils: dvi-utils
dvi-utils: \
configure-utils
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28586,32 +21878,6 @@ dvi-utils: \
@endif utils
-.PHONY: maybe-html-utils html-utils
-maybe-html-utils:
-@if utils
-maybe-html-utils: html-utils
-
-html-utils: \
- configure-utils
- @: $(MAKE); $(unstage)
- @[ -f ./utils/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif utils
-
.PHONY: maybe-TAGS-utils TAGS-utils
maybe-TAGS-utils:
@if utils
@@ -28619,16 +21885,16 @@ maybe-TAGS-utils: TAGS-utils
TAGS-utils: \
configure-utils
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28646,16 +21912,16 @@ maybe-install-info-utils: install-info-utils
install-info-utils: \
configure-utils \
info-utils
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28672,16 +21938,16 @@ maybe-installcheck-utils: installcheck-utils
installcheck-utils: \
configure-utils
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28697,16 +21963,16 @@ maybe-mostlyclean-utils:
maybe-mostlyclean-utils: mostlyclean-utils
mostlyclean-utils:
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28722,16 +21988,16 @@ maybe-clean-utils:
maybe-clean-utils: clean-utils
clean-utils:
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28747,16 +22013,16 @@ maybe-distclean-utils:
maybe-distclean-utils: distclean-utils
distclean-utils:
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28772,16 +22038,16 @@ maybe-maintainer-clean-utils:
maybe-maintainer-clean-utils: maintainer-clean-utils
maintainer-clean-utils:
- @: $(MAKE); $(unstage)
@[ -f ./utils/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in utils" ; \
- (cd $(HOST_SUBDIR)/utils && \
+ (cd utils && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -28793,420 +22059,71 @@ maintainer-clean-utils:
-.PHONY: configure-gnattools maybe-configure-gnattools
-maybe-configure-gnattools:
-@if gnattools
-maybe-configure-gnattools: configure-gnattools
-configure-gnattools:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- test ! -f $(HOST_SUBDIR)/gnattools/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gnattools ; \
- $(HOST_EXPORTS) \
- echo Configuring in $(HOST_SUBDIR)/gnattools; \
- cd "$(HOST_SUBDIR)/gnattools" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(HOST_SUBDIR)/gnattools/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/gnattools"; \
- libsrcdir="$$s/gnattools"; \
- $(SHELL) $${libsrcdir}/configure \
- $(HOST_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif gnattools
-
-
-
-
-
-.PHONY: all-gnattools maybe-all-gnattools
-maybe-all-gnattools:
-@if gnattools
-TARGET-gnattools=all
-maybe-all-gnattools: all-gnattools
-all-gnattools: configure-gnattools
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(FLAGS_TO_PASS) $(TARGET-gnattools))
-@endif gnattools
-
-
-
-
-.PHONY: check-gnattools maybe-check-gnattools
-maybe-check-gnattools:
-@if gnattools
-maybe-check-gnattools: check-gnattools
-
-check-gnattools:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(FLAGS_TO_PASS) check)
-
-@endif gnattools
-
-.PHONY: install-gnattools maybe-install-gnattools
-maybe-install-gnattools:
-@if gnattools
-maybe-install-gnattools: install-gnattools
-
-install-gnattools: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(FLAGS_TO_PASS) install)
-
-@endif gnattools
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-gnattools info-gnattools
-maybe-info-gnattools:
-@if gnattools
-maybe-info-gnattools: info-gnattools
-
-info-gnattools: \
- configure-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing info in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- info) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-dvi-gnattools dvi-gnattools
-maybe-dvi-gnattools:
-@if gnattools
-maybe-dvi-gnattools: dvi-gnattools
-
-dvi-gnattools: \
- configure-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing dvi in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- dvi) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-html-gnattools html-gnattools
-maybe-html-gnattools:
-@if gnattools
-maybe-html-gnattools: html-gnattools
-
-html-gnattools: \
- configure-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-TAGS-gnattools TAGS-gnattools
-maybe-TAGS-gnattools:
-@if gnattools
-maybe-TAGS-gnattools: TAGS-gnattools
-
-TAGS-gnattools: \
- configure-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing TAGS in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- TAGS) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-install-info-gnattools install-info-gnattools
-maybe-install-info-gnattools:
-@if gnattools
-maybe-install-info-gnattools: install-info-gnattools
-
-install-info-gnattools: \
- configure-gnattools \
- info-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing install-info in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- install-info) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-installcheck-gnattools installcheck-gnattools
-maybe-installcheck-gnattools:
-@if gnattools
-maybe-installcheck-gnattools: installcheck-gnattools
-
-installcheck-gnattools: \
- configure-gnattools
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing installcheck in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- installcheck) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-mostlyclean-gnattools mostlyclean-gnattools
-maybe-mostlyclean-gnattools:
-@if gnattools
-maybe-mostlyclean-gnattools: mostlyclean-gnattools
-
-mostlyclean-gnattools:
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing mostlyclean in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-clean-gnattools clean-gnattools
-maybe-clean-gnattools:
-@if gnattools
-maybe-clean-gnattools: clean-gnattools
-
-clean-gnattools:
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing clean in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-distclean-gnattools distclean-gnattools
-maybe-distclean-gnattools:
-@if gnattools
-maybe-distclean-gnattools: distclean-gnattools
-
-distclean-gnattools:
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing distclean in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif gnattools
-
-.PHONY: maybe-maintainer-clean-gnattools maintainer-clean-gnattools
-maybe-maintainer-clean-gnattools:
-@if gnattools
-maybe-maintainer-clean-gnattools: maintainer-clean-gnattools
-
-maintainer-clean-gnattools:
- @: $(MAKE); $(unstage)
- @[ -f ./gnattools/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing maintainer-clean in gnattools" ; \
- (cd $(HOST_SUBDIR)/gnattools && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif gnattools
-
-
-
# ---------------------------------------
# Modules which run on the target machine
# ---------------------------------------
-
-
-
.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3
maybe-configure-target-libstdc++-v3:
@if target-libstdc++-v3
maybe-configure-target-libstdc++-v3: configure-target-libstdc++-v3
-configure-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libstdc++-v3..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libstdc++-v3/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libstdc++-v3/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libstdc++-v3/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libstdc++-v3/multilib.tmp $(TARGET_SUBDIR)/libstdc++-v3/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libstdc++-v3/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile; \
- mv $(TARGET_SUBDIR)/libstdc++-v3/multilib.tmp $(TARGET_SUBDIR)/libstdc++-v3/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libstdc++-v3/multilib.tmp $(TARGET_SUBDIR)/libstdc++-v3/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
+
+configure-target-libstdc++-v3: $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libstdc++-v3; \
cd "$(TARGET_SUBDIR)/libstdc++-v3" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libstdc++-v3/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \
- libsrcdir="$$s/libstdc++-v3"; \
+ srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \
+ libsrcdir="$$s/libstdc++-v3"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libstdc++-v3
-
-
-
-
.PHONY: all-target-libstdc++-v3 maybe-all-target-libstdc++-v3
maybe-all-target-libstdc++-v3:
@if target-libstdc++-v3
TARGET-target-libstdc++-v3=all
maybe-all-target-libstdc++-v3: all-target-libstdc++-v3
all-target-libstdc++-v3: configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' $(TARGET-target-libstdc++-v3))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' $(TARGET-target-libstdc++-v3))
@endif target-libstdc++-v3
-
-
-
-
.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3
maybe-check-target-libstdc++-v3:
@if target-libstdc++-v3
maybe-check-target-libstdc++-v3: check-target-libstdc++-v3
check-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libstdc++-v3 && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check)
@@ -29219,9 +22136,9 @@ maybe-install-target-libstdc++-v3:
maybe-install-target-libstdc++-v3: install-target-libstdc++-v3
install-target-libstdc++-v3: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libstdc++-v3 && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -29237,10 +22154,10 @@ maybe-info-target-libstdc++-v3: info-target-libstdc++-v3
info-target-libstdc++-v3: \
configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29263,10 +22180,10 @@ maybe-dvi-target-libstdc++-v3: dvi-target-libstdc++-v3
dvi-target-libstdc++-v3: \
configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29282,32 +22199,6 @@ dvi-target-libstdc++-v3: \
@endif target-libstdc++-v3
-.PHONY: maybe-html-target-libstdc++-v3 html-target-libstdc++-v3
-maybe-html-target-libstdc++-v3:
-@if target-libstdc++-v3
-maybe-html-target-libstdc++-v3: html-target-libstdc++-v3
-
-html-target-libstdc++-v3: \
- configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(RAW_CXX_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libstdc++-v3" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libstdc++-v3
-
.PHONY: maybe-TAGS-target-libstdc++-v3 TAGS-target-libstdc++-v3
maybe-TAGS-target-libstdc++-v3:
@if target-libstdc++-v3
@@ -29315,10 +22206,10 @@ maybe-TAGS-target-libstdc++-v3: TAGS-target-libstdc++-v3
TAGS-target-libstdc++-v3: \
configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29342,10 +22233,10 @@ maybe-install-info-target-libstdc++-v3: install-info-target-libstdc++-v3
install-info-target-libstdc++-v3: \
configure-target-libstdc++-v3 \
info-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29368,10 +22259,10 @@ maybe-installcheck-target-libstdc++-v3: installcheck-target-libstdc++-v3
installcheck-target-libstdc++-v3: \
configure-target-libstdc++-v3
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29393,10 +22284,10 @@ maybe-mostlyclean-target-libstdc++-v3:
maybe-mostlyclean-target-libstdc++-v3: mostlyclean-target-libstdc++-v3
mostlyclean-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29418,10 +22309,10 @@ maybe-clean-target-libstdc++-v3:
maybe-clean-target-libstdc++-v3: clean-target-libstdc++-v3
clean-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29443,10 +22334,10 @@ maybe-distclean-target-libstdc++-v3:
maybe-distclean-target-libstdc++-v3: distclean-target-libstdc++-v3
distclean-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29468,10 +22359,10 @@ maybe-maintainer-clean-target-libstdc++-v3:
maybe-maintainer-clean-target-libstdc++-v3: maintainer-clean-target-libstdc++-v3
maintainer-clean-target-libstdc++-v3:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29488,79 +22379,67 @@ maintainer-clean-target-libstdc++-v3:
@endif target-libstdc++-v3
-
-
-
.PHONY: configure-target-libmudflap maybe-configure-target-libmudflap
maybe-configure-target-libmudflap:
@if target-libmudflap
maybe-configure-target-libmudflap: configure-target-libmudflap
-configure-target-libmudflap:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libmudflap..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libmudflap/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libmudflap/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libmudflap/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libmudflap/multilib.tmp $(TARGET_SUBDIR)/libmudflap/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libmudflap/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libmudflap/Makefile; \
- mv $(TARGET_SUBDIR)/libmudflap/multilib.tmp $(TARGET_SUBDIR)/libmudflap/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libmudflap/multilib.tmp $(TARGET_SUBDIR)/libmudflap/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libmudflap/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libmudflap/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libmudflap/multilib.out
+
+configure-target-libmudflap: $(TARGET_SUBDIR)/libmudflap/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libmudflap/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libmudflap; \
cd "$(TARGET_SUBDIR)/libmudflap" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libmudflap/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libmudflap"; \
- libsrcdir="$$s/libmudflap"; \
+ srcdiroption="--srcdir=$${topdir}/libmudflap"; \
+ libsrcdir="$$s/libmudflap"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libmudflap
-
-
-
-
.PHONY: all-target-libmudflap maybe-all-target-libmudflap
maybe-all-target-libmudflap:
@if target-libmudflap
TARGET-target-libmudflap=all
maybe-all-target-libmudflap: all-target-libmudflap
all-target-libmudflap: configure-target-libmudflap
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libmudflap && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libmudflap))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libmudflap))
@endif target-libmudflap
-
-
-
-
.PHONY: check-target-libmudflap maybe-check-target-libmudflap
maybe-check-target-libmudflap:
@if target-libmudflap
maybe-check-target-libmudflap: check-target-libmudflap
check-target-libmudflap:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libmudflap && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -29573,9 +22452,9 @@ maybe-install-target-libmudflap:
maybe-install-target-libmudflap: install-target-libmudflap
install-target-libmudflap: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libmudflap && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -29591,10 +22470,10 @@ maybe-info-target-libmudflap: info-target-libmudflap
info-target-libmudflap: \
configure-target-libmudflap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29617,10 +22496,10 @@ maybe-dvi-target-libmudflap: dvi-target-libmudflap
dvi-target-libmudflap: \
configure-target-libmudflap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29636,32 +22515,6 @@ dvi-target-libmudflap: \
@endif target-libmudflap
-.PHONY: maybe-html-target-libmudflap html-target-libmudflap
-maybe-html-target-libmudflap:
-@if target-libmudflap
-maybe-html-target-libmudflap: html-target-libmudflap
-
-html-target-libmudflap: \
- configure-target-libmudflap
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libmudflap" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libmudflap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libmudflap
-
.PHONY: maybe-TAGS-target-libmudflap TAGS-target-libmudflap
maybe-TAGS-target-libmudflap:
@if target-libmudflap
@@ -29669,10 +22522,10 @@ maybe-TAGS-target-libmudflap: TAGS-target-libmudflap
TAGS-target-libmudflap: \
configure-target-libmudflap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29696,10 +22549,10 @@ maybe-install-info-target-libmudflap: install-info-target-libmudflap
install-info-target-libmudflap: \
configure-target-libmudflap \
info-target-libmudflap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29722,10 +22575,10 @@ maybe-installcheck-target-libmudflap: installcheck-target-libmudflap
installcheck-target-libmudflap: \
configure-target-libmudflap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29747,10 +22600,10 @@ maybe-mostlyclean-target-libmudflap:
maybe-mostlyclean-target-libmudflap: mostlyclean-target-libmudflap
mostlyclean-target-libmudflap:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29772,10 +22625,10 @@ maybe-clean-target-libmudflap:
maybe-clean-target-libmudflap: clean-target-libmudflap
clean-target-libmudflap:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29797,10 +22650,10 @@ maybe-distclean-target-libmudflap:
maybe-distclean-target-libmudflap: distclean-target-libmudflap
distclean-target-libmudflap:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29822,10 +22675,10 @@ maybe-maintainer-clean-target-libmudflap:
maybe-maintainer-clean-target-libmudflap: maintainer-clean-target-libmudflap
maintainer-clean-target-libmudflap:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libmudflap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -29842,787 +22695,67 @@ maintainer-clean-target-libmudflap:
@endif target-libmudflap
-
-
-
-.PHONY: configure-target-libssp maybe-configure-target-libssp
-maybe-configure-target-libssp:
-@if target-libssp
-maybe-configure-target-libssp: configure-target-libssp
-configure-target-libssp:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libssp..."; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libssp ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libssp/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libssp/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libssp/multilib.tmp $(TARGET_SUBDIR)/libssp/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libssp/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libssp/Makefile; \
- mv $(TARGET_SUBDIR)/libssp/multilib.tmp $(TARGET_SUBDIR)/libssp/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libssp/multilib.tmp $(TARGET_SUBDIR)/libssp/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libssp/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libssp ; \
- $(NORMAL_TARGET_EXPORTS) \
- echo Configuring in $(TARGET_SUBDIR)/libssp; \
- cd "$(TARGET_SUBDIR)/libssp" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libssp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libssp"; \
- libsrcdir="$$s/libssp"; \
- rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif target-libssp
-
-
-
-
-
-.PHONY: all-target-libssp maybe-all-target-libssp
-maybe-all-target-libssp:
-@if target-libssp
-TARGET-target-libssp=all
-maybe-all-target-libssp: all-target-libssp
-all-target-libssp: configure-target-libssp
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libssp))
-@endif target-libssp
-
-
-
-
-
-.PHONY: check-target-libssp maybe-check-target-libssp
-maybe-check-target-libssp:
-@if target-libssp
-maybe-check-target-libssp: check-target-libssp
-
-check-target-libssp:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
-
-@endif target-libssp
-
-.PHONY: install-target-libssp maybe-install-target-libssp
-maybe-install-target-libssp:
-@if target-libssp
-maybe-install-target-libssp: install-target-libssp
-
-install-target-libssp: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-@endif target-libssp
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-target-libssp info-target-libssp
-maybe-info-target-libssp:
-@if target-libssp
-maybe-info-target-libssp: info-target-libssp
-
-info-target-libssp: \
- configure-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing info in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- info) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-dvi-target-libssp dvi-target-libssp
-maybe-dvi-target-libssp:
-@if target-libssp
-maybe-dvi-target-libssp: dvi-target-libssp
-
-dvi-target-libssp: \
- configure-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing dvi in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- dvi) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-html-target-libssp html-target-libssp
-maybe-html-target-libssp:
-@if target-libssp
-maybe-html-target-libssp: html-target-libssp
-
-html-target-libssp: \
- configure-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-TAGS-target-libssp TAGS-target-libssp
-maybe-TAGS-target-libssp:
-@if target-libssp
-maybe-TAGS-target-libssp: TAGS-target-libssp
-
-TAGS-target-libssp: \
- configure-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing TAGS in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- TAGS) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-install-info-target-libssp install-info-target-libssp
-maybe-install-info-target-libssp:
-@if target-libssp
-maybe-install-info-target-libssp: install-info-target-libssp
-
-install-info-target-libssp: \
- configure-target-libssp \
- info-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-info in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- install-info) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-installcheck-target-libssp installcheck-target-libssp
-maybe-installcheck-target-libssp:
-@if target-libssp
-maybe-installcheck-target-libssp: installcheck-target-libssp
-
-installcheck-target-libssp: \
- configure-target-libssp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing installcheck in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- installcheck) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-mostlyclean-target-libssp mostlyclean-target-libssp
-maybe-mostlyclean-target-libssp:
-@if target-libssp
-maybe-mostlyclean-target-libssp: mostlyclean-target-libssp
-
-mostlyclean-target-libssp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing mostlyclean in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-clean-target-libssp clean-target-libssp
-maybe-clean-target-libssp:
-@if target-libssp
-maybe-clean-target-libssp: clean-target-libssp
-
-clean-target-libssp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing clean in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-distclean-target-libssp distclean-target-libssp
-maybe-distclean-target-libssp:
-@if target-libssp
-maybe-distclean-target-libssp: distclean-target-libssp
-
-distclean-target-libssp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing distclean in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif target-libssp
-
-.PHONY: maybe-maintainer-clean-target-libssp maintainer-clean-target-libssp
-maybe-maintainer-clean-target-libssp:
-@if target-libssp
-maybe-maintainer-clean-target-libssp: maintainer-clean-target-libssp
-
-maintainer-clean-target-libssp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libssp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libssp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libssp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif target-libssp
-
-
-
-
-
-.PHONY: configure-target-libgcc-math maybe-configure-target-libgcc-math
-maybe-configure-target-libgcc-math:
-@if target-libgcc-math
-maybe-configure-target-libgcc-math: configure-target-libgcc-math
-configure-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libgcc-math..."; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgcc-math ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgcc-math/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libgcc-math/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libgcc-math/multilib.tmp $(TARGET_SUBDIR)/libgcc-math/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libgcc-math/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libgcc-math/Makefile; \
- mv $(TARGET_SUBDIR)/libgcc-math/multilib.tmp $(TARGET_SUBDIR)/libgcc-math/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libgcc-math/multilib.tmp $(TARGET_SUBDIR)/libgcc-math/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libgcc-math/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgcc-math ; \
- $(NORMAL_TARGET_EXPORTS) \
- echo Configuring in $(TARGET_SUBDIR)/libgcc-math; \
- cd "$(TARGET_SUBDIR)/libgcc-math" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libgcc-math/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libgcc-math"; \
- libsrcdir="$$s/libgcc-math"; \
- rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif target-libgcc-math
-
-
-
-
-
-.PHONY: all-target-libgcc-math maybe-all-target-libgcc-math
-maybe-all-target-libgcc-math:
-@if target-libgcc-math
-TARGET-target-libgcc-math=all
-maybe-all-target-libgcc-math: all-target-libgcc-math
-all-target-libgcc-math: configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgcc-math))
-@endif target-libgcc-math
-
-
-
-
-
-.PHONY: check-target-libgcc-math maybe-check-target-libgcc-math
-maybe-check-target-libgcc-math:
-@if target-libgcc-math
-maybe-check-target-libgcc-math: check-target-libgcc-math
-
-check-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
-
-@endif target-libgcc-math
-
-.PHONY: install-target-libgcc-math maybe-install-target-libgcc-math
-maybe-install-target-libgcc-math:
-@if target-libgcc-math
-maybe-install-target-libgcc-math: install-target-libgcc-math
-
-install-target-libgcc-math: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-@endif target-libgcc-math
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-target-libgcc-math info-target-libgcc-math
-maybe-info-target-libgcc-math:
-@if target-libgcc-math
-maybe-info-target-libgcc-math: info-target-libgcc-math
-
-info-target-libgcc-math: \
- configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing info in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- info) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-dvi-target-libgcc-math dvi-target-libgcc-math
-maybe-dvi-target-libgcc-math:
-@if target-libgcc-math
-maybe-dvi-target-libgcc-math: dvi-target-libgcc-math
-
-dvi-target-libgcc-math: \
- configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing dvi in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- dvi) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-html-target-libgcc-math html-target-libgcc-math
-maybe-html-target-libgcc-math:
-@if target-libgcc-math
-maybe-html-target-libgcc-math: html-target-libgcc-math
-
-html-target-libgcc-math: \
- configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-TAGS-target-libgcc-math TAGS-target-libgcc-math
-maybe-TAGS-target-libgcc-math:
-@if target-libgcc-math
-maybe-TAGS-target-libgcc-math: TAGS-target-libgcc-math
-
-TAGS-target-libgcc-math: \
- configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing TAGS in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- TAGS) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-install-info-target-libgcc-math install-info-target-libgcc-math
-maybe-install-info-target-libgcc-math:
-@if target-libgcc-math
-maybe-install-info-target-libgcc-math: install-info-target-libgcc-math
-
-install-info-target-libgcc-math: \
- configure-target-libgcc-math \
- info-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-info in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- install-info) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-installcheck-target-libgcc-math installcheck-target-libgcc-math
-maybe-installcheck-target-libgcc-math:
-@if target-libgcc-math
-maybe-installcheck-target-libgcc-math: installcheck-target-libgcc-math
-
-installcheck-target-libgcc-math: \
- configure-target-libgcc-math
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing installcheck in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- installcheck) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-mostlyclean-target-libgcc-math mostlyclean-target-libgcc-math
-maybe-mostlyclean-target-libgcc-math:
-@if target-libgcc-math
-maybe-mostlyclean-target-libgcc-math: mostlyclean-target-libgcc-math
-
-mostlyclean-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-clean-target-libgcc-math clean-target-libgcc-math
-maybe-clean-target-libgcc-math:
-@if target-libgcc-math
-maybe-clean-target-libgcc-math: clean-target-libgcc-math
-
-clean-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing clean in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-distclean-target-libgcc-math distclean-target-libgcc-math
-maybe-distclean-target-libgcc-math:
-@if target-libgcc-math
-maybe-distclean-target-libgcc-math: distclean-target-libgcc-math
-
-distclean-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing distclean in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif target-libgcc-math
-
-.PHONY: maybe-maintainer-clean-target-libgcc-math maintainer-clean-target-libgcc-math
-maybe-maintainer-clean-target-libgcc-math:
-@if target-libgcc-math
-maybe-maintainer-clean-target-libgcc-math: maintainer-clean-target-libgcc-math
-
-maintainer-clean-target-libgcc-math:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgcc-math/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgcc-math" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgcc-math && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif target-libgcc-math
-
-
-
-
-
.PHONY: configure-target-newlib maybe-configure-target-newlib
maybe-configure-target-newlib:
@if target-newlib
maybe-configure-target-newlib: configure-target-newlib
-configure-target-newlib:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for newlib..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/newlib/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/newlib ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/newlib/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/newlib/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/newlib/multilib.tmp $(TARGET_SUBDIR)/newlib/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/newlib/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/newlib/Makefile; \
- mv $(TARGET_SUBDIR)/newlib/multilib.tmp $(TARGET_SUBDIR)/newlib/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/newlib/multilib.tmp $(TARGET_SUBDIR)/newlib/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/newlib/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/newlib/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/newlib/multilib.out
+
+configure-target-newlib: $(TARGET_SUBDIR)/newlib/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/newlib/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/newlib ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/newlib; \
cd "$(TARGET_SUBDIR)/newlib" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/newlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/newlib"; \
- libsrcdir="$$s/newlib"; \
+ srcdiroption="--srcdir=$${topdir}/newlib"; \
+ libsrcdir="$$s/newlib"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-newlib
-
-
-
-
.PHONY: all-target-newlib maybe-all-target-newlib
maybe-all-target-newlib:
@if target-newlib
TARGET-target-newlib=all
maybe-all-target-newlib: all-target-newlib
all-target-newlib: configure-target-newlib
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/newlib && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-newlib))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-newlib))
@endif target-newlib
-
-
-
-
.PHONY: check-target-newlib maybe-check-target-newlib
maybe-check-target-newlib:
@if target-newlib
maybe-check-target-newlib: check-target-newlib
check-target-newlib:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/newlib && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -30635,9 +22768,9 @@ maybe-install-target-newlib:
maybe-install-target-newlib: install-target-newlib
install-target-newlib: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/newlib && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -30653,10 +22786,10 @@ maybe-info-target-newlib: info-target-newlib
info-target-newlib: \
configure-target-newlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30679,10 +22812,10 @@ maybe-dvi-target-newlib: dvi-target-newlib
dvi-target-newlib: \
configure-target-newlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30698,32 +22831,6 @@ dvi-target-newlib: \
@endif target-newlib
-.PHONY: maybe-html-target-newlib html-target-newlib
-maybe-html-target-newlib:
-@if target-newlib
-maybe-html-target-newlib: html-target-newlib
-
-html-target-newlib: \
- configure-target-newlib
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/newlib" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/newlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-newlib
-
.PHONY: maybe-TAGS-target-newlib TAGS-target-newlib
maybe-TAGS-target-newlib:
@if target-newlib
@@ -30731,10 +22838,10 @@ maybe-TAGS-target-newlib: TAGS-target-newlib
TAGS-target-newlib: \
configure-target-newlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30758,10 +22865,10 @@ maybe-install-info-target-newlib: install-info-target-newlib
install-info-target-newlib: \
configure-target-newlib \
info-target-newlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30784,10 +22891,10 @@ maybe-installcheck-target-newlib: installcheck-target-newlib
installcheck-target-newlib: \
configure-target-newlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30809,10 +22916,10 @@ maybe-mostlyclean-target-newlib:
maybe-mostlyclean-target-newlib: mostlyclean-target-newlib
mostlyclean-target-newlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30834,10 +22941,10 @@ maybe-clean-target-newlib:
maybe-clean-target-newlib: clean-target-newlib
clean-target-newlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30859,10 +22966,10 @@ maybe-distclean-target-newlib:
maybe-distclean-target-newlib: distclean-target-newlib
distclean-target-newlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30884,10 +22991,10 @@ maybe-maintainer-clean-target-newlib:
maybe-maintainer-clean-target-newlib: maintainer-clean-target-newlib
maintainer-clean-target-newlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/newlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -30904,79 +23011,67 @@ maintainer-clean-target-newlib:
@endif target-newlib
-
-
-
.PHONY: configure-target-libgfortran maybe-configure-target-libgfortran
maybe-configure-target-libgfortran:
@if target-libgfortran
maybe-configure-target-libgfortran: configure-target-libgfortran
-configure-target-libgfortran:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libgfortran..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libgfortran/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgfortran/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libgfortran/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libgfortran/multilib.tmp $(TARGET_SUBDIR)/libgfortran/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libgfortran/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libgfortran/Makefile; \
- mv $(TARGET_SUBDIR)/libgfortran/multilib.tmp $(TARGET_SUBDIR)/libgfortran/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libgfortran/multilib.tmp $(TARGET_SUBDIR)/libgfortran/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libgfortran/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libgfortran/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libgfortran/multilib.out
+
+configure-target-libgfortran: $(TARGET_SUBDIR)/libgfortran/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libgfortran/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libgfortran; \
cd "$(TARGET_SUBDIR)/libgfortran" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libgfortran/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libgfortran"; \
- libsrcdir="$$s/libgfortran"; \
+ srcdiroption="--srcdir=$${topdir}/libgfortran"; \
+ libsrcdir="$$s/libgfortran"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libgfortran
-
-
-
-
.PHONY: all-target-libgfortran maybe-all-target-libgfortran
maybe-all-target-libgfortran:
@if target-libgfortran
TARGET-target-libgfortran=all
maybe-all-target-libgfortran: all-target-libgfortran
all-target-libgfortran: configure-target-libgfortran
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgfortran && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgfortran))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgfortran))
@endif target-libgfortran
-
-
-
-
.PHONY: check-target-libgfortran maybe-check-target-libgfortran
maybe-check-target-libgfortran:
@if target-libgfortran
maybe-check-target-libgfortran: check-target-libgfortran
check-target-libgfortran:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgfortran && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -30989,9 +23084,9 @@ maybe-install-target-libgfortran:
maybe-install-target-libgfortran: install-target-libgfortran
install-target-libgfortran: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgfortran && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -31007,10 +23102,10 @@ maybe-info-target-libgfortran: info-target-libgfortran
info-target-libgfortran: \
configure-target-libgfortran
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31033,10 +23128,10 @@ maybe-dvi-target-libgfortran: dvi-target-libgfortran
dvi-target-libgfortran: \
configure-target-libgfortran
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31052,32 +23147,6 @@ dvi-target-libgfortran: \
@endif target-libgfortran
-.PHONY: maybe-html-target-libgfortran html-target-libgfortran
-maybe-html-target-libgfortran:
-@if target-libgfortran
-maybe-html-target-libgfortran: html-target-libgfortran
-
-html-target-libgfortran: \
- configure-target-libgfortran
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libgfortran" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgfortran && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libgfortran
-
.PHONY: maybe-TAGS-target-libgfortran TAGS-target-libgfortran
maybe-TAGS-target-libgfortran:
@if target-libgfortran
@@ -31085,10 +23154,10 @@ maybe-TAGS-target-libgfortran: TAGS-target-libgfortran
TAGS-target-libgfortran: \
configure-target-libgfortran
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31112,10 +23181,10 @@ maybe-install-info-target-libgfortran: install-info-target-libgfortran
install-info-target-libgfortran: \
configure-target-libgfortran \
info-target-libgfortran
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31138,10 +23207,10 @@ maybe-installcheck-target-libgfortran: installcheck-target-libgfortran
installcheck-target-libgfortran: \
configure-target-libgfortran
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31163,10 +23232,10 @@ maybe-mostlyclean-target-libgfortran:
maybe-mostlyclean-target-libgfortran: mostlyclean-target-libgfortran
mostlyclean-target-libgfortran:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31188,10 +23257,10 @@ maybe-clean-target-libgfortran:
maybe-clean-target-libgfortran: clean-target-libgfortran
clean-target-libgfortran:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31213,10 +23282,10 @@ maybe-distclean-target-libgfortran:
maybe-distclean-target-libgfortran: distclean-target-libgfortran
distclean-target-libgfortran:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31238,10 +23307,10 @@ maybe-maintainer-clean-target-libgfortran:
maybe-maintainer-clean-target-libgfortran: maintainer-clean-target-libgfortran
maintainer-clean-target-libgfortran:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgfortran" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31258,79 +23327,67 @@ maintainer-clean-target-libgfortran:
@endif target-libgfortran
-
-
-
.PHONY: configure-target-libobjc maybe-configure-target-libobjc
maybe-configure-target-libobjc:
@if target-libobjc
maybe-configure-target-libobjc: configure-target-libobjc
-configure-target-libobjc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libobjc..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libobjc/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libobjc/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libobjc/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libobjc/multilib.tmp $(TARGET_SUBDIR)/libobjc/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libobjc/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libobjc/Makefile; \
- mv $(TARGET_SUBDIR)/libobjc/multilib.tmp $(TARGET_SUBDIR)/libobjc/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libobjc/multilib.tmp $(TARGET_SUBDIR)/libobjc/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libobjc/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libobjc/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libobjc/multilib.out
+
+configure-target-libobjc: $(TARGET_SUBDIR)/libobjc/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libobjc/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libobjc; \
cd "$(TARGET_SUBDIR)/libobjc" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libobjc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libobjc"; \
- libsrcdir="$$s/libobjc"; \
+ srcdiroption="--srcdir=$${topdir}/libobjc"; \
+ libsrcdir="$$s/libobjc"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libobjc
-
-
-
-
.PHONY: all-target-libobjc maybe-all-target-libobjc
maybe-all-target-libobjc:
@if target-libobjc
TARGET-target-libobjc=all
maybe-all-target-libobjc: all-target-libobjc
all-target-libobjc: configure-target-libobjc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libobjc && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libobjc))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libobjc))
@endif target-libobjc
-
-
-
-
.PHONY: check-target-libobjc maybe-check-target-libobjc
maybe-check-target-libobjc:
@if target-libobjc
maybe-check-target-libobjc: check-target-libobjc
check-target-libobjc:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libobjc && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -31343,9 +23400,9 @@ maybe-install-target-libobjc:
maybe-install-target-libobjc: install-target-libobjc
install-target-libobjc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libobjc && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -31361,10 +23418,10 @@ maybe-info-target-libobjc: info-target-libobjc
info-target-libobjc: \
configure-target-libobjc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31387,10 +23444,10 @@ maybe-dvi-target-libobjc: dvi-target-libobjc
dvi-target-libobjc: \
configure-target-libobjc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31406,32 +23463,6 @@ dvi-target-libobjc: \
@endif target-libobjc
-.PHONY: maybe-html-target-libobjc html-target-libobjc
-maybe-html-target-libobjc:
-@if target-libobjc
-maybe-html-target-libobjc: html-target-libobjc
-
-html-target-libobjc: \
- configure-target-libobjc
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libobjc" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libobjc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libobjc
-
.PHONY: maybe-TAGS-target-libobjc TAGS-target-libobjc
maybe-TAGS-target-libobjc:
@if target-libobjc
@@ -31439,10 +23470,10 @@ maybe-TAGS-target-libobjc: TAGS-target-libobjc
TAGS-target-libobjc: \
configure-target-libobjc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31466,10 +23497,10 @@ maybe-install-info-target-libobjc: install-info-target-libobjc
install-info-target-libobjc: \
configure-target-libobjc \
info-target-libobjc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31492,10 +23523,10 @@ maybe-installcheck-target-libobjc: installcheck-target-libobjc
installcheck-target-libobjc: \
configure-target-libobjc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31517,10 +23548,10 @@ maybe-mostlyclean-target-libobjc:
maybe-mostlyclean-target-libobjc: mostlyclean-target-libobjc
mostlyclean-target-libobjc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31542,10 +23573,10 @@ maybe-clean-target-libobjc:
maybe-clean-target-libobjc: clean-target-libobjc
clean-target-libobjc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31567,10 +23598,10 @@ maybe-distclean-target-libobjc:
maybe-distclean-target-libobjc: distclean-target-libobjc
distclean-target-libobjc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31592,10 +23623,10 @@ maybe-maintainer-clean-target-libobjc:
maybe-maintainer-clean-target-libobjc: maintainer-clean-target-libobjc
maintainer-clean-target-libobjc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libobjc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31612,70 +23643,80 @@ maintainer-clean-target-libobjc:
@endif target-libobjc
-
-
-
.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
maybe-configure-target-libtermcap:
@if target-libtermcap
maybe-configure-target-libtermcap: configure-target-libtermcap
-configure-target-libtermcap:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libtermcap..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libtermcap/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libtermcap ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libtermcap/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libtermcap/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libtermcap/multilib.tmp $(TARGET_SUBDIR)/libtermcap/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libtermcap/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libtermcap/Makefile; \
- mv $(TARGET_SUBDIR)/libtermcap/multilib.tmp $(TARGET_SUBDIR)/libtermcap/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libtermcap/multilib.tmp $(TARGET_SUBDIR)/libtermcap/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libtermcap/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libtermcap/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libtermcap/multilib.out
+
+configure-target-libtermcap: $(TARGET_SUBDIR)/libtermcap/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libtermcap/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libtermcap ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libtermcap; \
cd "$(TARGET_SUBDIR)/libtermcap" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libtermcap/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libtermcap"; \
- libsrcdir="$$s/libtermcap"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(TARGET_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/libtermcap "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/libtermcap"; \
+ libsrcdir="$$s/libtermcap"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libtermcap
-
-
-
-
.PHONY: all-target-libtermcap maybe-all-target-libtermcap
maybe-all-target-libtermcap:
@if target-libtermcap
TARGET-target-libtermcap=all
maybe-all-target-libtermcap: all-target-libtermcap
all-target-libtermcap: configure-target-libtermcap
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libtermcap && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libtermcap))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libtermcap))
@endif target-libtermcap
-
-
-
-
.PHONY: check-target-libtermcap maybe-check-target-libtermcap
maybe-check-target-libtermcap:
@if target-libtermcap
@@ -31692,9 +23733,9 @@ maybe-install-target-libtermcap:
maybe-install-target-libtermcap: install-target-libtermcap
install-target-libtermcap: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libtermcap && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -31710,10 +23751,10 @@ maybe-info-target-libtermcap: info-target-libtermcap
info-target-libtermcap: \
configure-target-libtermcap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libtermcap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31736,10 +23777,10 @@ maybe-dvi-target-libtermcap: dvi-target-libtermcap
dvi-target-libtermcap: \
configure-target-libtermcap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libtermcap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31755,32 +23796,6 @@ dvi-target-libtermcap: \
@endif target-libtermcap
-.PHONY: maybe-html-target-libtermcap html-target-libtermcap
-maybe-html-target-libtermcap:
-@if target-libtermcap
-maybe-html-target-libtermcap: html-target-libtermcap
-
-html-target-libtermcap: \
- configure-target-libtermcap
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libtermcap" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libtermcap && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libtermcap
-
.PHONY: maybe-TAGS-target-libtermcap TAGS-target-libtermcap
maybe-TAGS-target-libtermcap:
@if target-libtermcap
@@ -31788,10 +23803,10 @@ maybe-TAGS-target-libtermcap: TAGS-target-libtermcap
TAGS-target-libtermcap: \
configure-target-libtermcap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libtermcap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31815,10 +23830,10 @@ maybe-install-info-target-libtermcap: install-info-target-libtermcap
install-info-target-libtermcap: \
configure-target-libtermcap \
info-target-libtermcap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libtermcap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31841,10 +23856,10 @@ maybe-installcheck-target-libtermcap: installcheck-target-libtermcap
installcheck-target-libtermcap: \
configure-target-libtermcap
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libtermcap" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -31901,79 +23916,67 @@ maintainer-clean-target-libtermcap:
@endif target-libtermcap
-
-
-
.PHONY: configure-target-winsup maybe-configure-target-winsup
maybe-configure-target-winsup:
@if target-winsup
maybe-configure-target-winsup: configure-target-winsup
-configure-target-winsup:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for winsup..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/winsup/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/winsup ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/winsup/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/winsup/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/winsup/multilib.tmp $(TARGET_SUBDIR)/winsup/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/winsup/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/winsup/Makefile; \
- mv $(TARGET_SUBDIR)/winsup/multilib.tmp $(TARGET_SUBDIR)/winsup/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/winsup/multilib.tmp $(TARGET_SUBDIR)/winsup/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/winsup/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/winsup/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/winsup/multilib.out
+
+configure-target-winsup: $(TARGET_SUBDIR)/winsup/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/winsup/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/winsup ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/winsup; \
cd "$(TARGET_SUBDIR)/winsup" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/winsup/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/winsup"; \
- libsrcdir="$$s/winsup"; \
+ srcdiroption="--srcdir=$${topdir}/winsup"; \
+ libsrcdir="$$s/winsup"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-winsup
-
-
-
-
.PHONY: all-target-winsup maybe-all-target-winsup
maybe-all-target-winsup:
@if target-winsup
TARGET-target-winsup=all
maybe-all-target-winsup: all-target-winsup
all-target-winsup: configure-target-winsup
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/winsup && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-winsup))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-winsup))
@endif target-winsup
-
-
-
-
.PHONY: check-target-winsup maybe-check-target-winsup
maybe-check-target-winsup:
@if target-winsup
maybe-check-target-winsup: check-target-winsup
check-target-winsup:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/winsup && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -31986,9 +23989,9 @@ maybe-install-target-winsup:
maybe-install-target-winsup: install-target-winsup
install-target-winsup: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/winsup && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -32004,10 +24007,10 @@ maybe-info-target-winsup: info-target-winsup
info-target-winsup: \
configure-target-winsup
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32030,10 +24033,10 @@ maybe-dvi-target-winsup: dvi-target-winsup
dvi-target-winsup: \
configure-target-winsup
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32049,32 +24052,6 @@ dvi-target-winsup: \
@endif target-winsup
-.PHONY: maybe-html-target-winsup html-target-winsup
-maybe-html-target-winsup:
-@if target-winsup
-maybe-html-target-winsup: html-target-winsup
-
-html-target-winsup: \
- configure-target-winsup
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/winsup" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/winsup && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-winsup
-
.PHONY: maybe-TAGS-target-winsup TAGS-target-winsup
maybe-TAGS-target-winsup:
@if target-winsup
@@ -32082,10 +24059,10 @@ maybe-TAGS-target-winsup: TAGS-target-winsup
TAGS-target-winsup: \
configure-target-winsup
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32109,10 +24086,10 @@ maybe-install-info-target-winsup: install-info-target-winsup
install-info-target-winsup: \
configure-target-winsup \
info-target-winsup
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32135,10 +24112,10 @@ maybe-installcheck-target-winsup: installcheck-target-winsup
installcheck-target-winsup: \
configure-target-winsup
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32160,10 +24137,10 @@ maybe-mostlyclean-target-winsup:
maybe-mostlyclean-target-winsup: mostlyclean-target-winsup
mostlyclean-target-winsup:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32185,10 +24162,10 @@ maybe-clean-target-winsup:
maybe-clean-target-winsup: clean-target-winsup
clean-target-winsup:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32210,10 +24187,10 @@ maybe-distclean-target-winsup:
maybe-distclean-target-winsup: distclean-target-winsup
distclean-target-winsup:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32235,10 +24212,10 @@ maybe-maintainer-clean-target-winsup:
maybe-maintainer-clean-target-winsup: maintainer-clean-target-winsup
maintainer-clean-target-winsup:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/winsup" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32255,70 +24232,58 @@ maintainer-clean-target-winsup:
@endif target-winsup
-
-
-
.PHONY: configure-target-libgloss maybe-configure-target-libgloss
maybe-configure-target-libgloss:
@if target-libgloss
maybe-configure-target-libgloss: configure-target-libgloss
-configure-target-libgloss:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libgloss..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libgloss/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgloss ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgloss/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libgloss/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libgloss/multilib.tmp $(TARGET_SUBDIR)/libgloss/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libgloss/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libgloss/Makefile; \
- mv $(TARGET_SUBDIR)/libgloss/multilib.tmp $(TARGET_SUBDIR)/libgloss/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libgloss/multilib.tmp $(TARGET_SUBDIR)/libgloss/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libgloss/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libgloss/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libgloss/multilib.out
+
+configure-target-libgloss: $(TARGET_SUBDIR)/libgloss/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libgloss/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgloss ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libgloss; \
cd "$(TARGET_SUBDIR)/libgloss" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libgloss/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libgloss"; \
- libsrcdir="$$s/libgloss"; \
+ srcdiroption="--srcdir=$${topdir}/libgloss"; \
+ libsrcdir="$$s/libgloss"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libgloss
-
-
-
-
.PHONY: all-target-libgloss maybe-all-target-libgloss
maybe-all-target-libgloss:
@if target-libgloss
TARGET-target-libgloss=all
maybe-all-target-libgloss: all-target-libgloss
all-target-libgloss: configure-target-libgloss
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgloss && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgloss))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgloss))
@endif target-libgloss
-
-
-
-
.PHONY: check-target-libgloss maybe-check-target-libgloss
maybe-check-target-libgloss:
@if target-libgloss
@@ -32335,9 +24300,9 @@ maybe-install-target-libgloss:
maybe-install-target-libgloss: install-target-libgloss
install-target-libgloss: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libgloss && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -32353,10 +24318,10 @@ maybe-info-target-libgloss: info-target-libgloss
info-target-libgloss: \
configure-target-libgloss
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32379,10 +24344,10 @@ maybe-dvi-target-libgloss: dvi-target-libgloss
dvi-target-libgloss: \
configure-target-libgloss
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32398,32 +24363,6 @@ dvi-target-libgloss: \
@endif target-libgloss
-.PHONY: maybe-html-target-libgloss html-target-libgloss
-maybe-html-target-libgloss:
-@if target-libgloss
-maybe-html-target-libgloss: html-target-libgloss
-
-html-target-libgloss: \
- configure-target-libgloss
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libgloss" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgloss && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libgloss
-
.PHONY: maybe-TAGS-target-libgloss TAGS-target-libgloss
maybe-TAGS-target-libgloss:
@if target-libgloss
@@ -32431,10 +24370,10 @@ maybe-TAGS-target-libgloss: TAGS-target-libgloss
TAGS-target-libgloss: \
configure-target-libgloss
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32458,10 +24397,10 @@ maybe-install-info-target-libgloss: install-info-target-libgloss
install-info-target-libgloss: \
configure-target-libgloss \
info-target-libgloss
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32484,10 +24423,10 @@ maybe-installcheck-target-libgloss: installcheck-target-libgloss
installcheck-target-libgloss: \
configure-target-libgloss
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32509,10 +24448,10 @@ maybe-mostlyclean-target-libgloss:
maybe-mostlyclean-target-libgloss: mostlyclean-target-libgloss
mostlyclean-target-libgloss:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32534,10 +24473,10 @@ maybe-clean-target-libgloss:
maybe-clean-target-libgloss: clean-target-libgloss
clean-target-libgloss:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32559,10 +24498,10 @@ maybe-distclean-target-libgloss:
maybe-distclean-target-libgloss: distclean-target-libgloss
distclean-target-libgloss:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32584,10 +24523,10 @@ maybe-maintainer-clean-target-libgloss:
maybe-maintainer-clean-target-libgloss: maintainer-clean-target-libgloss
maintainer-clean-target-libgloss:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgloss" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32604,79 +24543,67 @@ maintainer-clean-target-libgloss:
@endif target-libgloss
-
-
-
.PHONY: configure-target-libiberty maybe-configure-target-libiberty
maybe-configure-target-libiberty:
@if target-libiberty
maybe-configure-target-libiberty: configure-target-libiberty
-configure-target-libiberty:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libiberty..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libiberty/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libiberty/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libiberty/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libiberty/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libiberty/Makefile; \
- mv $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libiberty/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libiberty/multilib.out
+
+configure-target-libiberty: $(TARGET_SUBDIR)/libiberty/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libiberty; \
cd "$(TARGET_SUBDIR)/libiberty" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
+ srcdiroption="--srcdir=$${topdir}/libiberty"; \
+ libsrcdir="$$s/libiberty"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libiberty
-
-
-
-
.PHONY: all-target-libiberty maybe-all-target-libiberty
maybe-all-target-libiberty:
@if target-libiberty
TARGET-target-libiberty=all
maybe-all-target-libiberty: all-target-libiberty
all-target-libiberty: configure-target-libiberty
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libiberty))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libiberty))
@endif target-libiberty
-
-
-
-
.PHONY: check-target-libiberty maybe-check-target-libiberty
maybe-check-target-libiberty:
@if target-libiberty
maybe-check-target-libiberty: check-target-libiberty
check-target-libiberty:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libiberty && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -32689,9 +24616,9 @@ maybe-install-target-libiberty:
maybe-install-target-libiberty: install-target-libiberty
install-target-libiberty: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libiberty && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -32707,10 +24634,10 @@ maybe-info-target-libiberty: info-target-libiberty
info-target-libiberty: \
configure-target-libiberty
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32733,10 +24660,10 @@ maybe-dvi-target-libiberty: dvi-target-libiberty
dvi-target-libiberty: \
configure-target-libiberty
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32752,32 +24679,6 @@ dvi-target-libiberty: \
@endif target-libiberty
-.PHONY: maybe-html-target-libiberty html-target-libiberty
-maybe-html-target-libiberty:
-@if target-libiberty
-maybe-html-target-libiberty: html-target-libiberty
-
-html-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libiberty
-
.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
maybe-TAGS-target-libiberty:
@if target-libiberty
@@ -32785,10 +24686,10 @@ maybe-TAGS-target-libiberty: TAGS-target-libiberty
TAGS-target-libiberty: \
configure-target-libiberty
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32812,10 +24713,10 @@ maybe-install-info-target-libiberty: install-info-target-libiberty
install-info-target-libiberty: \
configure-target-libiberty \
info-target-libiberty
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32838,10 +24739,10 @@ maybe-installcheck-target-libiberty: installcheck-target-libiberty
installcheck-target-libiberty: \
configure-target-libiberty
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32863,10 +24764,10 @@ maybe-mostlyclean-target-libiberty:
maybe-mostlyclean-target-libiberty: mostlyclean-target-libiberty
mostlyclean-target-libiberty:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32888,10 +24789,10 @@ maybe-clean-target-libiberty:
maybe-clean-target-libiberty: clean-target-libiberty
clean-target-libiberty:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32913,10 +24814,10 @@ maybe-distclean-target-libiberty:
maybe-distclean-target-libiberty: distclean-target-libiberty
distclean-target-libiberty:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32938,10 +24839,10 @@ maybe-maintainer-clean-target-libiberty:
maybe-maintainer-clean-target-libiberty: maintainer-clean-target-libiberty
maintainer-clean-target-libiberty:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -32958,79 +24859,67 @@ maintainer-clean-target-libiberty:
@endif target-libiberty
-
-
-
.PHONY: configure-target-gperf maybe-configure-target-gperf
maybe-configure-target-gperf:
@if target-gperf
maybe-configure-target-gperf: configure-target-gperf
-configure-target-gperf:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for gperf..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/gperf/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/gperf ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/gperf/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/gperf/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/gperf/multilib.tmp $(TARGET_SUBDIR)/gperf/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/gperf/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/gperf/Makefile; \
- mv $(TARGET_SUBDIR)/gperf/multilib.tmp $(TARGET_SUBDIR)/gperf/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/gperf/multilib.tmp $(TARGET_SUBDIR)/gperf/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/gperf/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/gperf/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/gperf/multilib.out
+
+configure-target-gperf: $(TARGET_SUBDIR)/gperf/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/gperf/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/gperf ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/gperf; \
cd "$(TARGET_SUBDIR)/gperf" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/gperf/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/gperf"; \
- libsrcdir="$$s/gperf"; \
+ srcdiroption="--srcdir=$${topdir}/gperf"; \
+ libsrcdir="$$s/gperf"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-gperf
-
-
-
-
.PHONY: all-target-gperf maybe-all-target-gperf
maybe-all-target-gperf:
@if target-gperf
TARGET-target-gperf=all
maybe-all-target-gperf: all-target-gperf
all-target-gperf: configure-target-gperf
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/gperf && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-gperf))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-gperf))
@endif target-gperf
-
-
-
-
.PHONY: check-target-gperf maybe-check-target-gperf
maybe-check-target-gperf:
@if target-gperf
maybe-check-target-gperf: check-target-gperf
check-target-gperf:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/gperf && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -33043,9 +24932,9 @@ maybe-install-target-gperf:
maybe-install-target-gperf: install-target-gperf
install-target-gperf: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/gperf && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -33061,10 +24950,10 @@ maybe-info-target-gperf: info-target-gperf
info-target-gperf: \
configure-target-gperf
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33087,10 +24976,10 @@ maybe-dvi-target-gperf: dvi-target-gperf
dvi-target-gperf: \
configure-target-gperf
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33106,32 +24995,6 @@ dvi-target-gperf: \
@endif target-gperf
-.PHONY: maybe-html-target-gperf html-target-gperf
-maybe-html-target-gperf:
-@if target-gperf
-maybe-html-target-gperf: html-target-gperf
-
-html-target-gperf: \
- configure-target-gperf
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/gperf" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/gperf && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-gperf
-
.PHONY: maybe-TAGS-target-gperf TAGS-target-gperf
maybe-TAGS-target-gperf:
@if target-gperf
@@ -33139,10 +25002,10 @@ maybe-TAGS-target-gperf: TAGS-target-gperf
TAGS-target-gperf: \
configure-target-gperf
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33166,10 +25029,10 @@ maybe-install-info-target-gperf: install-info-target-gperf
install-info-target-gperf: \
configure-target-gperf \
info-target-gperf
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33192,10 +25055,10 @@ maybe-installcheck-target-gperf: installcheck-target-gperf
installcheck-target-gperf: \
configure-target-gperf
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33217,10 +25080,10 @@ maybe-mostlyclean-target-gperf:
maybe-mostlyclean-target-gperf: mostlyclean-target-gperf
mostlyclean-target-gperf:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33242,10 +25105,10 @@ maybe-clean-target-gperf:
maybe-clean-target-gperf: clean-target-gperf
clean-target-gperf:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33267,10 +25130,10 @@ maybe-distclean-target-gperf:
maybe-distclean-target-gperf: distclean-target-gperf
distclean-target-gperf:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33292,10 +25155,10 @@ maybe-maintainer-clean-target-gperf:
maybe-maintainer-clean-target-gperf: maintainer-clean-target-gperf
maintainer-clean-target-gperf:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/gperf" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33312,70 +25175,58 @@ maintainer-clean-target-gperf:
@endif target-gperf
-
-
-
.PHONY: configure-target-examples maybe-configure-target-examples
maybe-configure-target-examples:
@if target-examples
maybe-configure-target-examples: configure-target-examples
-configure-target-examples:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for examples..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/examples/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/examples ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/examples/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/examples/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/examples/multilib.tmp $(TARGET_SUBDIR)/examples/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/examples/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/examples/Makefile; \
- mv $(TARGET_SUBDIR)/examples/multilib.tmp $(TARGET_SUBDIR)/examples/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/examples/multilib.tmp $(TARGET_SUBDIR)/examples/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/examples/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/examples/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/examples/multilib.out
+
+configure-target-examples: $(TARGET_SUBDIR)/examples/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/examples/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/examples ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/examples; \
cd "$(TARGET_SUBDIR)/examples" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/examples/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/examples"; \
- libsrcdir="$$s/examples"; \
+ srcdiroption="--srcdir=$${topdir}/examples"; \
+ libsrcdir="$$s/examples"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-examples
-
-
-
-
.PHONY: all-target-examples maybe-all-target-examples
maybe-all-target-examples:
@if target-examples
TARGET-target-examples=all
maybe-all-target-examples: all-target-examples
all-target-examples: configure-target-examples
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/examples && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-examples))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-examples))
@endif target-examples
-
-
-
-
.PHONY: check-target-examples maybe-check-target-examples
maybe-check-target-examples:
@if target-examples
@@ -33405,10 +25256,10 @@ maybe-info-target-examples: info-target-examples
info-target-examples: \
configure-target-examples
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33431,10 +25282,10 @@ maybe-dvi-target-examples: dvi-target-examples
dvi-target-examples: \
configure-target-examples
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33450,32 +25301,6 @@ dvi-target-examples: \
@endif target-examples
-.PHONY: maybe-html-target-examples html-target-examples
-maybe-html-target-examples:
-@if target-examples
-maybe-html-target-examples: html-target-examples
-
-html-target-examples: \
- configure-target-examples
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/examples" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/examples && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-examples
-
.PHONY: maybe-TAGS-target-examples TAGS-target-examples
maybe-TAGS-target-examples:
@if target-examples
@@ -33483,10 +25308,10 @@ maybe-TAGS-target-examples: TAGS-target-examples
TAGS-target-examples: \
configure-target-examples
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33510,10 +25335,10 @@ maybe-install-info-target-examples: install-info-target-examples
install-info-target-examples: \
configure-target-examples \
info-target-examples
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33536,10 +25361,10 @@ maybe-installcheck-target-examples: installcheck-target-examples
installcheck-target-examples: \
configure-target-examples
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33561,10 +25386,10 @@ maybe-mostlyclean-target-examples:
maybe-mostlyclean-target-examples: mostlyclean-target-examples
mostlyclean-target-examples:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33586,10 +25411,10 @@ maybe-clean-target-examples:
maybe-clean-target-examples: clean-target-examples
clean-target-examples:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33611,10 +25436,10 @@ maybe-distclean-target-examples:
maybe-distclean-target-examples: distclean-target-examples
distclean-target-examples:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33636,10 +25461,10 @@ maybe-maintainer-clean-target-examples:
maybe-maintainer-clean-target-examples: maintainer-clean-target-examples
maintainer-clean-target-examples:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/examples" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33656,79 +25481,67 @@ maintainer-clean-target-examples:
@endif target-examples
-
-
-
.PHONY: configure-target-libffi maybe-configure-target-libffi
maybe-configure-target-libffi:
@if target-libffi
maybe-configure-target-libffi: configure-target-libffi
-configure-target-libffi:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libffi..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libffi/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libffi/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libffi/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libffi/multilib.tmp $(TARGET_SUBDIR)/libffi/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libffi/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libffi/Makefile; \
- mv $(TARGET_SUBDIR)/libffi/multilib.tmp $(TARGET_SUBDIR)/libffi/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libffi/multilib.tmp $(TARGET_SUBDIR)/libffi/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libffi/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libffi/multilib.out
+
+configure-target-libffi: $(TARGET_SUBDIR)/libffi/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libffi; \
cd "$(TARGET_SUBDIR)/libffi" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libffi/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libffi"; \
- libsrcdir="$$s/libffi"; \
+ srcdiroption="--srcdir=$${topdir}/libffi"; \
+ libsrcdir="$$s/libffi"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libffi
-
-
-
-
.PHONY: all-target-libffi maybe-all-target-libffi
maybe-all-target-libffi:
@if target-libffi
TARGET-target-libffi=all
maybe-all-target-libffi: all-target-libffi
all-target-libffi: configure-target-libffi
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libffi && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libffi))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libffi))
@endif target-libffi
-
-
-
-
.PHONY: check-target-libffi maybe-check-target-libffi
maybe-check-target-libffi:
@if target-libffi
maybe-check-target-libffi: check-target-libffi
check-target-libffi:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libffi && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -33741,9 +25554,9 @@ maybe-install-target-libffi:
maybe-install-target-libffi: install-target-libffi
install-target-libffi: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libffi && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -33759,10 +25572,10 @@ maybe-info-target-libffi: info-target-libffi
info-target-libffi: \
configure-target-libffi
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33785,10 +25598,10 @@ maybe-dvi-target-libffi: dvi-target-libffi
dvi-target-libffi: \
configure-target-libffi
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33804,32 +25617,6 @@ dvi-target-libffi: \
@endif target-libffi
-.PHONY: maybe-html-target-libffi html-target-libffi
-maybe-html-target-libffi:
-@if target-libffi
-maybe-html-target-libffi: html-target-libffi
-
-html-target-libffi: \
- configure-target-libffi
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libffi" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libffi && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libffi
-
.PHONY: maybe-TAGS-target-libffi TAGS-target-libffi
maybe-TAGS-target-libffi:
@if target-libffi
@@ -33837,10 +25624,10 @@ maybe-TAGS-target-libffi: TAGS-target-libffi
TAGS-target-libffi: \
configure-target-libffi
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33864,10 +25651,10 @@ maybe-install-info-target-libffi: install-info-target-libffi
install-info-target-libffi: \
configure-target-libffi \
info-target-libffi
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33890,10 +25677,10 @@ maybe-installcheck-target-libffi: installcheck-target-libffi
installcheck-target-libffi: \
configure-target-libffi
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33915,10 +25702,10 @@ maybe-mostlyclean-target-libffi:
maybe-mostlyclean-target-libffi: mostlyclean-target-libffi
mostlyclean-target-libffi:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33940,10 +25727,10 @@ maybe-clean-target-libffi:
maybe-clean-target-libffi: clean-target-libffi
clean-target-libffi:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33965,10 +25752,10 @@ maybe-distclean-target-libffi:
maybe-distclean-target-libffi: distclean-target-libffi
distclean-target-libffi:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -33990,10 +25777,10 @@ maybe-maintainer-clean-target-libffi:
maybe-maintainer-clean-target-libffi: maintainer-clean-target-libffi
maintainer-clean-target-libffi:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libffi" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34010,79 +25797,67 @@ maintainer-clean-target-libffi:
@endif target-libffi
-
-
-
.PHONY: configure-target-libjava maybe-configure-target-libjava
maybe-configure-target-libjava:
@if target-libjava
maybe-configure-target-libjava: configure-target-libjava
-configure-target-libjava:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libjava..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libjava/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libjava ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libjava/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libjava/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libjava/multilib.tmp $(TARGET_SUBDIR)/libjava/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libjava/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libjava/Makefile; \
- mv $(TARGET_SUBDIR)/libjava/multilib.tmp $(TARGET_SUBDIR)/libjava/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libjava/multilib.tmp $(TARGET_SUBDIR)/libjava/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libjava/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libjava/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libjava/multilib.out
+
+configure-target-libjava: $(TARGET_SUBDIR)/libjava/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libjava/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libjava ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libjava; \
cd "$(TARGET_SUBDIR)/libjava" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libjava/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libjava"; \
- libsrcdir="$$s/libjava"; \
+ srcdiroption="--srcdir=$${topdir}/libjava"; \
+ libsrcdir="$$s/libjava"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libjava
-
-
-
-
.PHONY: all-target-libjava maybe-all-target-libjava
maybe-all-target-libjava:
@if target-libjava
TARGET-target-libjava=all
maybe-all-target-libjava: all-target-libjava
all-target-libjava: configure-target-libjava
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libjava && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' $(TARGET-target-libjava))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' $(TARGET-target-libjava))
@endif target-libjava
-
-
-
-
.PHONY: check-target-libjava maybe-check-target-libjava
maybe-check-target-libjava:
@if target-libjava
maybe-check-target-libjava: check-target-libjava
check-target-libjava:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libjava && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check)
@@ -34095,9 +25870,9 @@ maybe-install-target-libjava:
maybe-install-target-libjava: install-target-libjava
install-target-libjava: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libjava && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -34113,10 +25888,10 @@ maybe-info-target-libjava: info-target-libjava
info-target-libjava: \
configure-target-libjava
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34139,10 +25914,10 @@ maybe-dvi-target-libjava: dvi-target-libjava
dvi-target-libjava: \
configure-target-libjava
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34158,32 +25933,6 @@ dvi-target-libjava: \
@endif target-libjava
-.PHONY: maybe-html-target-libjava html-target-libjava
-maybe-html-target-libjava:
-@if target-libjava
-maybe-html-target-libjava: html-target-libjava
-
-html-target-libjava: \
- configure-target-libjava
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(RAW_CXX_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libjava" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libjava && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libjava
-
.PHONY: maybe-TAGS-target-libjava TAGS-target-libjava
maybe-TAGS-target-libjava:
@if target-libjava
@@ -34191,10 +25940,10 @@ maybe-TAGS-target-libjava: TAGS-target-libjava
TAGS-target-libjava: \
configure-target-libjava
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34218,10 +25967,10 @@ maybe-install-info-target-libjava: install-info-target-libjava
install-info-target-libjava: \
configure-target-libjava \
info-target-libjava
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34244,10 +25993,10 @@ maybe-installcheck-target-libjava: installcheck-target-libjava
installcheck-target-libjava: \
configure-target-libjava
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34269,10 +26018,10 @@ maybe-mostlyclean-target-libjava:
maybe-mostlyclean-target-libjava: mostlyclean-target-libjava
mostlyclean-target-libjava:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34294,10 +26043,10 @@ maybe-clean-target-libjava:
maybe-clean-target-libjava: clean-target-libjava
clean-target-libjava:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34319,10 +26068,10 @@ maybe-distclean-target-libjava:
maybe-distclean-target-libjava: distclean-target-libjava
distclean-target-libjava:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34344,10 +26093,10 @@ maybe-maintainer-clean-target-libjava:
maybe-maintainer-clean-target-libjava: maintainer-clean-target-libjava
maintainer-clean-target-libjava:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(RAW_CXX_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libjava" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34364,79 +26113,89 @@ maintainer-clean-target-libjava:
@endif target-libjava
-
-
-
.PHONY: configure-target-zlib maybe-configure-target-zlib
maybe-configure-target-zlib:
@if target-zlib
maybe-configure-target-zlib: configure-target-zlib
-configure-target-zlib:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for zlib..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/zlib/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/zlib/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/zlib/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/zlib/multilib.tmp $(TARGET_SUBDIR)/zlib/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/zlib/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/zlib/Makefile; \
- mv $(TARGET_SUBDIR)/zlib/multilib.tmp $(TARGET_SUBDIR)/zlib/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/zlib/multilib.tmp $(TARGET_SUBDIR)/zlib/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/zlib/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/zlib/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/zlib/multilib.out
+
+configure-target-zlib: $(TARGET_SUBDIR)/zlib/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/zlib/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/zlib; \
cd "$(TARGET_SUBDIR)/zlib" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/zlib/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/zlib"; \
- libsrcdir="$$s/zlib"; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(TARGET_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/zlib "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \
+ srcdiroption="--srcdir=$${topdir}/zlib"; \
+ libsrcdir="$$s/zlib"; \
+ fi; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-zlib
-
-
-
-
.PHONY: all-target-zlib maybe-all-target-zlib
maybe-all-target-zlib:
@if target-zlib
TARGET-target-zlib=all
maybe-all-target-zlib: all-target-zlib
all-target-zlib: configure-target-zlib
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/zlib && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-zlib))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-zlib))
@endif target-zlib
-
-
-
-
.PHONY: check-target-zlib maybe-check-target-zlib
maybe-check-target-zlib:
@if target-zlib
maybe-check-target-zlib: check-target-zlib
check-target-zlib:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/zlib && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -34449,9 +26208,9 @@ maybe-install-target-zlib:
maybe-install-target-zlib: install-target-zlib
install-target-zlib: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/zlib && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -34467,10 +26226,10 @@ maybe-info-target-zlib: info-target-zlib
info-target-zlib: \
configure-target-zlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34493,10 +26252,10 @@ maybe-dvi-target-zlib: dvi-target-zlib
dvi-target-zlib: \
configure-target-zlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34512,32 +26271,6 @@ dvi-target-zlib: \
@endif target-zlib
-.PHONY: maybe-html-target-zlib html-target-zlib
-maybe-html-target-zlib:
-@if target-zlib
-maybe-html-target-zlib: html-target-zlib
-
-html-target-zlib: \
- configure-target-zlib
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/zlib" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/zlib && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-zlib
-
.PHONY: maybe-TAGS-target-zlib TAGS-target-zlib
maybe-TAGS-target-zlib:
@if target-zlib
@@ -34545,10 +26278,10 @@ maybe-TAGS-target-zlib: TAGS-target-zlib
TAGS-target-zlib: \
configure-target-zlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34572,10 +26305,10 @@ maybe-install-info-target-zlib: install-info-target-zlib
install-info-target-zlib: \
configure-target-zlib \
info-target-zlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34598,10 +26331,10 @@ maybe-installcheck-target-zlib: installcheck-target-zlib
installcheck-target-zlib: \
configure-target-zlib
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34623,10 +26356,10 @@ maybe-mostlyclean-target-zlib:
maybe-mostlyclean-target-zlib: mostlyclean-target-zlib
mostlyclean-target-zlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34648,10 +26381,10 @@ maybe-clean-target-zlib:
maybe-clean-target-zlib: clean-target-zlib
clean-target-zlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34673,10 +26406,10 @@ maybe-distclean-target-zlib:
maybe-distclean-target-zlib: distclean-target-zlib
distclean-target-zlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34698,10 +26431,10 @@ maybe-maintainer-clean-target-zlib:
maybe-maintainer-clean-target-zlib: maintainer-clean-target-zlib
maintainer-clean-target-zlib:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/zlib" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34718,79 +26451,67 @@ maintainer-clean-target-zlib:
@endif target-zlib
-
-
-
.PHONY: configure-target-boehm-gc maybe-configure-target-boehm-gc
maybe-configure-target-boehm-gc:
@if target-boehm-gc
maybe-configure-target-boehm-gc: configure-target-boehm-gc
-configure-target-boehm-gc:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for boehm-gc..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/boehm-gc/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/boehm-gc ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/boehm-gc/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/boehm-gc/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/boehm-gc/multilib.tmp $(TARGET_SUBDIR)/boehm-gc/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/boehm-gc/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/boehm-gc/Makefile; \
- mv $(TARGET_SUBDIR)/boehm-gc/multilib.tmp $(TARGET_SUBDIR)/boehm-gc/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/boehm-gc/multilib.tmp $(TARGET_SUBDIR)/boehm-gc/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/boehm-gc/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/boehm-gc/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/boehm-gc/multilib.out
+
+configure-target-boehm-gc: $(TARGET_SUBDIR)/boehm-gc/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/boehm-gc/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/boehm-gc ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/boehm-gc; \
cd "$(TARGET_SUBDIR)/boehm-gc" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/boehm-gc/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/boehm-gc"; \
- libsrcdir="$$s/boehm-gc"; \
+ srcdiroption="--srcdir=$${topdir}/boehm-gc"; \
+ libsrcdir="$$s/boehm-gc"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-boehm-gc
-
-
-
-
.PHONY: all-target-boehm-gc maybe-all-target-boehm-gc
maybe-all-target-boehm-gc:
@if target-boehm-gc
TARGET-target-boehm-gc=all
maybe-all-target-boehm-gc: all-target-boehm-gc
all-target-boehm-gc: configure-target-boehm-gc
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/boehm-gc && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-boehm-gc))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-boehm-gc))
@endif target-boehm-gc
-
-
-
-
.PHONY: check-target-boehm-gc maybe-check-target-boehm-gc
maybe-check-target-boehm-gc:
@if target-boehm-gc
maybe-check-target-boehm-gc: check-target-boehm-gc
check-target-boehm-gc:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/boehm-gc && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -34803,9 +26524,9 @@ maybe-install-target-boehm-gc:
maybe-install-target-boehm-gc: install-target-boehm-gc
install-target-boehm-gc: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/boehm-gc && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -34821,10 +26542,10 @@ maybe-info-target-boehm-gc: info-target-boehm-gc
info-target-boehm-gc: \
configure-target-boehm-gc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34847,10 +26568,10 @@ maybe-dvi-target-boehm-gc: dvi-target-boehm-gc
dvi-target-boehm-gc: \
configure-target-boehm-gc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34866,32 +26587,6 @@ dvi-target-boehm-gc: \
@endif target-boehm-gc
-.PHONY: maybe-html-target-boehm-gc html-target-boehm-gc
-maybe-html-target-boehm-gc:
-@if target-boehm-gc
-maybe-html-target-boehm-gc: html-target-boehm-gc
-
-html-target-boehm-gc: \
- configure-target-boehm-gc
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/boehm-gc" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/boehm-gc && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-boehm-gc
-
.PHONY: maybe-TAGS-target-boehm-gc TAGS-target-boehm-gc
maybe-TAGS-target-boehm-gc:
@if target-boehm-gc
@@ -34899,10 +26594,10 @@ maybe-TAGS-target-boehm-gc: TAGS-target-boehm-gc
TAGS-target-boehm-gc: \
configure-target-boehm-gc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34926,10 +26621,10 @@ maybe-install-info-target-boehm-gc: install-info-target-boehm-gc
install-info-target-boehm-gc: \
configure-target-boehm-gc \
info-target-boehm-gc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34952,10 +26647,10 @@ maybe-installcheck-target-boehm-gc: installcheck-target-boehm-gc
installcheck-target-boehm-gc: \
configure-target-boehm-gc
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -34977,10 +26672,10 @@ maybe-mostlyclean-target-boehm-gc:
maybe-mostlyclean-target-boehm-gc: mostlyclean-target-boehm-gc
mostlyclean-target-boehm-gc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35002,10 +26697,10 @@ maybe-clean-target-boehm-gc:
maybe-clean-target-boehm-gc: clean-target-boehm-gc
clean-target-boehm-gc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35027,10 +26722,10 @@ maybe-distclean-target-boehm-gc:
maybe-distclean-target-boehm-gc: distclean-target-boehm-gc
distclean-target-boehm-gc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35052,10 +26747,10 @@ maybe-maintainer-clean-target-boehm-gc:
maybe-maintainer-clean-target-boehm-gc: maintainer-clean-target-boehm-gc
maintainer-clean-target-boehm-gc:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/boehm-gc" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35072,79 +26767,67 @@ maintainer-clean-target-boehm-gc:
@endif target-boehm-gc
-
-
-
.PHONY: configure-target-qthreads maybe-configure-target-qthreads
maybe-configure-target-qthreads:
@if target-qthreads
maybe-configure-target-qthreads: configure-target-qthreads
-configure-target-qthreads:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for qthreads..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/qthreads/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/qthreads ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/qthreads/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/qthreads/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/qthreads/multilib.tmp $(TARGET_SUBDIR)/qthreads/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/qthreads/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/qthreads/Makefile; \
- mv $(TARGET_SUBDIR)/qthreads/multilib.tmp $(TARGET_SUBDIR)/qthreads/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/qthreads/multilib.tmp $(TARGET_SUBDIR)/qthreads/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/qthreads/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/qthreads/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/qthreads/multilib.out
+
+configure-target-qthreads: $(TARGET_SUBDIR)/qthreads/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/qthreads/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/qthreads ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/qthreads; \
cd "$(TARGET_SUBDIR)/qthreads" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/qthreads/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/qthreads"; \
- libsrcdir="$$s/qthreads"; \
+ srcdiroption="--srcdir=$${topdir}/qthreads"; \
+ libsrcdir="$$s/qthreads"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-qthreads
-
-
-
-
.PHONY: all-target-qthreads maybe-all-target-qthreads
maybe-all-target-qthreads:
@if target-qthreads
TARGET-target-qthreads=all
maybe-all-target-qthreads: all-target-qthreads
all-target-qthreads: configure-target-qthreads
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/qthreads && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-qthreads))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-qthreads))
@endif target-qthreads
-
-
-
-
.PHONY: check-target-qthreads maybe-check-target-qthreads
maybe-check-target-qthreads:
@if target-qthreads
maybe-check-target-qthreads: check-target-qthreads
check-target-qthreads:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/qthreads && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -35157,9 +26840,9 @@ maybe-install-target-qthreads:
maybe-install-target-qthreads: install-target-qthreads
install-target-qthreads: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/qthreads && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -35175,10 +26858,10 @@ maybe-info-target-qthreads: info-target-qthreads
info-target-qthreads: \
configure-target-qthreads
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35201,10 +26884,10 @@ maybe-dvi-target-qthreads: dvi-target-qthreads
dvi-target-qthreads: \
configure-target-qthreads
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35220,32 +26903,6 @@ dvi-target-qthreads: \
@endif target-qthreads
-.PHONY: maybe-html-target-qthreads html-target-qthreads
-maybe-html-target-qthreads:
-@if target-qthreads
-maybe-html-target-qthreads: html-target-qthreads
-
-html-target-qthreads: \
- configure-target-qthreads
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/qthreads" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/qthreads && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-qthreads
-
.PHONY: maybe-TAGS-target-qthreads TAGS-target-qthreads
maybe-TAGS-target-qthreads:
@if target-qthreads
@@ -35253,10 +26910,10 @@ maybe-TAGS-target-qthreads: TAGS-target-qthreads
TAGS-target-qthreads: \
configure-target-qthreads
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35280,10 +26937,10 @@ maybe-install-info-target-qthreads: install-info-target-qthreads
install-info-target-qthreads: \
configure-target-qthreads \
info-target-qthreads
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35306,10 +26963,10 @@ maybe-installcheck-target-qthreads: installcheck-target-qthreads
installcheck-target-qthreads: \
configure-target-qthreads
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35331,10 +26988,10 @@ maybe-mostlyclean-target-qthreads:
maybe-mostlyclean-target-qthreads: mostlyclean-target-qthreads
mostlyclean-target-qthreads:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35356,10 +27013,10 @@ maybe-clean-target-qthreads:
maybe-clean-target-qthreads: clean-target-qthreads
clean-target-qthreads:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35381,10 +27038,10 @@ maybe-distclean-target-qthreads:
maybe-distclean-target-qthreads: distclean-target-qthreads
distclean-target-qthreads:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35406,10 +27063,10 @@ maybe-maintainer-clean-target-qthreads:
maybe-maintainer-clean-target-qthreads: maintainer-clean-target-qthreads
maintainer-clean-target-qthreads:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/qthreads" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35426,79 +27083,67 @@ maintainer-clean-target-qthreads:
@endif target-qthreads
-
-
-
.PHONY: configure-target-rda maybe-configure-target-rda
maybe-configure-target-rda:
@if target-rda
maybe-configure-target-rda: configure-target-rda
-configure-target-rda:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for rda..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/rda/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/rda ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/rda/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/rda/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/rda/multilib.tmp $(TARGET_SUBDIR)/rda/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/rda/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/rda/Makefile; \
- mv $(TARGET_SUBDIR)/rda/multilib.tmp $(TARGET_SUBDIR)/rda/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/rda/multilib.tmp $(TARGET_SUBDIR)/rda/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/rda/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/rda/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/rda/multilib.out
+
+configure-target-rda: $(TARGET_SUBDIR)/rda/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/rda/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/rda ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/rda; \
cd "$(TARGET_SUBDIR)/rda" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/rda/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/rda"; \
- libsrcdir="$$s/rda"; \
+ srcdiroption="--srcdir=$${topdir}/rda"; \
+ libsrcdir="$$s/rda"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-rda
-
-
-
-
.PHONY: all-target-rda maybe-all-target-rda
maybe-all-target-rda:
@if target-rda
TARGET-target-rda=all
maybe-all-target-rda: all-target-rda
all-target-rda: configure-target-rda
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/rda && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-rda))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-rda))
@endif target-rda
-
-
-
-
.PHONY: check-target-rda maybe-check-target-rda
maybe-check-target-rda:
@if target-rda
maybe-check-target-rda: check-target-rda
check-target-rda:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/rda && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -35511,9 +27156,9 @@ maybe-install-target-rda:
maybe-install-target-rda: install-target-rda
install-target-rda: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/rda && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -35529,10 +27174,10 @@ maybe-info-target-rda: info-target-rda
info-target-rda: \
configure-target-rda
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35555,10 +27200,10 @@ maybe-dvi-target-rda: dvi-target-rda
dvi-target-rda: \
configure-target-rda
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35574,32 +27219,6 @@ dvi-target-rda: \
@endif target-rda
-.PHONY: maybe-html-target-rda html-target-rda
-maybe-html-target-rda:
-@if target-rda
-maybe-html-target-rda: html-target-rda
-
-html-target-rda: \
- configure-target-rda
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/rda" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/rda && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-rda
-
.PHONY: maybe-TAGS-target-rda TAGS-target-rda
maybe-TAGS-target-rda:
@if target-rda
@@ -35607,10 +27226,10 @@ maybe-TAGS-target-rda: TAGS-target-rda
TAGS-target-rda: \
configure-target-rda
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35634,10 +27253,10 @@ maybe-install-info-target-rda: install-info-target-rda
install-info-target-rda: \
configure-target-rda \
info-target-rda
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35660,10 +27279,10 @@ maybe-installcheck-target-rda: installcheck-target-rda
installcheck-target-rda: \
configure-target-rda
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35685,10 +27304,10 @@ maybe-mostlyclean-target-rda:
maybe-mostlyclean-target-rda: mostlyclean-target-rda
mostlyclean-target-rda:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35710,10 +27329,10 @@ maybe-clean-target-rda:
maybe-clean-target-rda: clean-target-rda
clean-target-rda:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35735,10 +27354,10 @@ maybe-distclean-target-rda:
maybe-distclean-target-rda: distclean-target-rda
distclean-target-rda:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35760,10 +27379,10 @@ maybe-maintainer-clean-target-rda:
maybe-maintainer-clean-target-rda: maintainer-clean-target-rda
maintainer-clean-target-rda:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/rda" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35780,79 +27399,67 @@ maintainer-clean-target-rda:
@endif target-rda
-
-
-
.PHONY: configure-target-libada maybe-configure-target-libada
maybe-configure-target-libada:
@if target-libada
maybe-configure-target-libada: configure-target-libada
-configure-target-libada:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libada..."; \
+
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/libada/multilib.out: multilib.out
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libada ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libada/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libada/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libada/multilib.tmp $(TARGET_SUBDIR)/libada/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libada/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libada/Makefile; \
- mv $(TARGET_SUBDIR)/libada/multilib.tmp $(TARGET_SUBDIR)/libada/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libada/multilib.tmp $(TARGET_SUBDIR)/libada/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libada/Makefile || exit 0; \
+ rm -f $(TARGET_SUBDIR)/libada/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/libada/multilib.out
+
+configure-target-libada: $(TARGET_SUBDIR)/libada/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/libada/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libada ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo Configuring in $(TARGET_SUBDIR)/libada; \
cd "$(TARGET_SUBDIR)/libada" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libada/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/libada"; \
- libsrcdir="$$s/libada"; \
+ srcdiroption="--srcdir=$${topdir}/libada"; \
+ libsrcdir="$$s/libada"; \
rm -f no-such-file || : ; \
CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" \
|| exit 1
@endif target-libada
-
-
-
-
.PHONY: all-target-libada maybe-all-target-libada
maybe-all-target-libada:
@if target-libada
TARGET-target-libada=all
maybe-all-target-libada: all-target-libada
all-target-libada: configure-target-libada
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libada && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libada))
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libada))
@endif target-libada
-
-
-
-
.PHONY: check-target-libada maybe-check-target-libada
maybe-check-target-libada:
@if target-libada
maybe-check-target-libada: check-target-libada
check-target-libada:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libada && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) check)
@@ -35865,9 +27472,9 @@ maybe-install-target-libada:
maybe-install-target-libada: install-target-libada
install-target-libada: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
(cd $(TARGET_SUBDIR)/libada && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) install)
@@ -35883,10 +27490,10 @@ maybe-info-target-libada: info-target-libada
info-target-libada: \
configure-target-libada
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing info in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35909,10 +27516,10 @@ maybe-dvi-target-libada: dvi-target-libada
dvi-target-libada: \
configure-target-libada
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing dvi in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35928,32 +27535,6 @@ dvi-target-libada: \
@endif target-libada
-.PHONY: maybe-html-target-libada html-target-libada
-maybe-html-target-libada:
-@if target-libada
-maybe-html-target-libada: html-target-libada
-
-html-target-libada: \
- configure-target-libada
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libada" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libada && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libada
-
.PHONY: maybe-TAGS-target-libada TAGS-target-libada
maybe-TAGS-target-libada:
@if target-libada
@@ -35961,10 +27542,10 @@ maybe-TAGS-target-libada: TAGS-target-libada
TAGS-target-libada: \
configure-target-libada
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing TAGS in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -35988,10 +27569,10 @@ maybe-install-info-target-libada: install-info-target-libada
install-info-target-libada: \
configure-target-libada \
info-target-libada
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing install-info in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36014,10 +27595,10 @@ maybe-installcheck-target-libada: installcheck-target-libada
installcheck-target-libada: \
configure-target-libada
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing installcheck in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36039,10 +27620,10 @@ maybe-mostlyclean-target-libada:
maybe-mostlyclean-target-libada: mostlyclean-target-libada
mostlyclean-target-libada:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing mostlyclean in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36064,10 +27645,10 @@ maybe-clean-target-libada:
maybe-clean-target-libada: clean-target-libada
clean-target-libada:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing clean in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36089,10 +27670,10 @@ maybe-distclean-target-libada:
maybe-distclean-target-libada: distclean-target-libada
distclean-target-libada:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing distclean in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36114,10 +27695,10 @@ maybe-maintainer-clean-target-libada:
maybe-maintainer-clean-target-libada: maintainer-clean-target-libada
maintainer-clean-target-libada:
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(NORMAL_TARGET_EXPORTS) \
echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libada" ; \
for flag in $(EXTRA_TARGET_FLAGS); do \
@@ -36135,360 +27716,6 @@ maintainer-clean-target-libada:
-
-
-.PHONY: configure-target-libgomp maybe-configure-target-libgomp
-maybe-configure-target-libgomp:
-@if target-libgomp
-maybe-configure-target-libgomp: configure-target-libgomp
-configure-target-libgomp:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libgomp..."; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgomp ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgomp/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libgomp/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libgomp/multilib.tmp $(TARGET_SUBDIR)/libgomp/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libgomp/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libgomp/Makefile; \
- mv $(TARGET_SUBDIR)/libgomp/multilib.tmp $(TARGET_SUBDIR)/libgomp/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libgomp/multilib.tmp $(TARGET_SUBDIR)/libgomp/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libgomp/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgomp ; \
- $(NORMAL_TARGET_EXPORTS) \
- echo Configuring in $(TARGET_SUBDIR)/libgomp; \
- cd "$(TARGET_SUBDIR)/libgomp" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libgomp/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libgomp"; \
- libsrcdir="$$s/libgomp"; \
- rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) $${srcdiroption} \
- || exit 1
-@endif target-libgomp
-
-
-
-
-
-.PHONY: all-target-libgomp maybe-all-target-libgomp
-maybe-all-target-libgomp:
-@if target-libgomp
-TARGET-target-libgomp=all
-maybe-all-target-libgomp: all-target-libgomp
-all-target-libgomp: configure-target-libgomp
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgomp))
-@endif target-libgomp
-
-
-
-
-
-.PHONY: check-target-libgomp maybe-check-target-libgomp
-maybe-check-target-libgomp:
-@if target-libgomp
-maybe-check-target-libgomp: check-target-libgomp
-
-check-target-libgomp:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
-
-@endif target-libgomp
-
-.PHONY: install-target-libgomp maybe-install-target-libgomp
-maybe-install-target-libgomp:
-@if target-libgomp
-maybe-install-target-libgomp: install-target-libgomp
-
-install-target-libgomp: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-@endif target-libgomp
-
-# Other targets (info, dvi, etc.)
-
-.PHONY: maybe-info-target-libgomp info-target-libgomp
-maybe-info-target-libgomp:
-@if target-libgomp
-maybe-info-target-libgomp: info-target-libgomp
-
-info-target-libgomp: \
- configure-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing info in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- info) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-dvi-target-libgomp dvi-target-libgomp
-maybe-dvi-target-libgomp:
-@if target-libgomp
-maybe-dvi-target-libgomp: dvi-target-libgomp
-
-dvi-target-libgomp: \
- configure-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing dvi in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- dvi) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-html-target-libgomp html-target-libgomp
-maybe-html-target-libgomp:
-@if target-libgomp
-maybe-html-target-libgomp: html-target-libgomp
-
-html-target-libgomp: \
- configure-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- html) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-TAGS-target-libgomp TAGS-target-libgomp
-maybe-TAGS-target-libgomp:
-@if target-libgomp
-maybe-TAGS-target-libgomp: TAGS-target-libgomp
-
-TAGS-target-libgomp: \
- configure-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing TAGS in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- TAGS) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-install-info-target-libgomp install-info-target-libgomp
-maybe-install-info-target-libgomp:
-@if target-libgomp
-maybe-install-info-target-libgomp: install-info-target-libgomp
-
-install-info-target-libgomp: \
- configure-target-libgomp \
- info-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-info in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- install-info) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-installcheck-target-libgomp installcheck-target-libgomp
-maybe-installcheck-target-libgomp:
-@if target-libgomp
-maybe-installcheck-target-libgomp: installcheck-target-libgomp
-
-installcheck-target-libgomp: \
- configure-target-libgomp
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing installcheck in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- installcheck) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-mostlyclean-target-libgomp mostlyclean-target-libgomp
-maybe-mostlyclean-target-libgomp:
-@if target-libgomp
-maybe-mostlyclean-target-libgomp: mostlyclean-target-libgomp
-
-mostlyclean-target-libgomp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- mostlyclean) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-clean-target-libgomp clean-target-libgomp
-maybe-clean-target-libgomp:
-@if target-libgomp
-maybe-clean-target-libgomp: clean-target-libgomp
-
-clean-target-libgomp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing clean in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- clean) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-distclean-target-libgomp distclean-target-libgomp
-maybe-distclean-target-libgomp:
-@if target-libgomp
-maybe-distclean-target-libgomp: distclean-target-libgomp
-
-distclean-target-libgomp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing distclean in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- distclean) \
- || exit 1
-
-@endif target-libgomp
-
-.PHONY: maybe-maintainer-clean-target-libgomp maintainer-clean-target-libgomp
-maybe-maintainer-clean-target-libgomp:
-@if target-libgomp
-maybe-maintainer-clean-target-libgomp: maintainer-clean-target-libgomp
-
-maintainer-clean-target-libgomp:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libgomp/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgomp" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libgomp && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
- maintainer-clean) \
- || exit 1
-
-@endif target-libgomp
-
-
-
# ----------
# GCC module
# ----------
@@ -36503,9 +27730,9 @@ GCC_STRAP_TARGETS = bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstra
$(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Bootstrapping the compiler"; \
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -36523,28 +27750,32 @@ $(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
msg="Comparing stage2 and stage3 of the compiler"; \
compare=compare ;; \
esac; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "$$msg"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) all
profiledbootstrap: all-prebootstrap configure-gcc
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
echo "Bootstrapping training compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Building feedback based compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) all
@@ -36552,11 +27783,13 @@ profiledbootstrap: all-prebootstrap configure-gcc
cross: all-build all-gas all-ld
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Building the C and C++ compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) LANGUAGES="c c++" all
@endif gcc-no-bootstrap
@@ -36567,6 +27800,7 @@ check-gcc-c++:
@if [ -f ./gcc/Makefile ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
else \
@@ -36590,6 +27824,7 @@ gcc-no-fixedincludes:
rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd ./gcc && \
$(MAKE) $(GCC_FLAGS_TO_PASS) install); \
@@ -36606,42 +27841,42 @@ gcc-no-fixedincludes:
# stage_last instead tracks the stage that was built last. These targets
# are dummy when toplevel bootstrap is not active.
-# While making host and target tools, symlinks to the final stage must be
-# there, so $(unstage) should be run at various points. To avoid excessive
-# recursive invocations of make, we "inline" them using a variable. These
-# must be referenced as ": $(MAKE) ; $(unstage)" rather than "$(unstage)"
-# to avoid warnings from the GNU Make job server.
-
-unstage = :
-stage = :
-current_stage = ""
-
+.PHONY: unstage
+unstage:
@if gcc-bootstrap
-unstage = [ -f stage_current ] || $(MAKE) `cat stage_last`-start
-stage = if [ -f stage_current ]; then $(MAKE) `cat stage_current`-end || exit 1; else :; fi
-current_stage = "`cat stage_current 2> /dev/null`"
+ @[ -f stage_current ] || $(MAKE) `cat stage_last`-start
@endif gcc-bootstrap
-.PHONY: unstage stage
-unstage:
- @: $(MAKE); $(unstage)
+.PHONY: stage
stage:
- @: $(MAKE); $(stage)
-
-# Disable commands for lean bootstrap.
-LEAN = false
+@if gcc-bootstrap
+ @$(MAKE) `cat stage_current`-end
+@endif gcc-bootstrap
# We name the build directories for the various stages "stage1-gcc",
# "stage2-gcc","stage3-gcc", etc.
# Since the 'compare' process will fail (on debugging information) if any
# directory names are different, we need to link the gcc directory for
-# the previous stage to a constant name ('prev-gcc'), and to make the name of
+# the previous stage to a constant name ('gcc-prev'), and to make the name of
# the build directories constant as well. For the latter, we use naked names
# like 'gcc', because the scripts in that directory assume it. We use
# mv on platforms where symlinks to directories do not work or are not
# reliable.
+# At the end of the bootstrap, a symlink to 'stage3-gcc' named 'gcc' must
+# be kept, so that libraries can find it. Ick!
+
+# It would be best to preinstall gcc into a staging area (and in the
+# future, gather there all prebootstrap packages). This would allow
+# assemblers and linkers can be bootstrapped as well as the compiler
+# (both in a combined tree, or separately). This however requires some
+# change to the gcc driver, again in order to avoid comparison failures.
+
+# Bugs: This is crippled when doing parallel make, the `make all-host'
+# and `make all-target' phases can be parallelized.
+
+
# 'touch' doesn't work right on some platforms.
STAMP = echo timestamp >
@@ -36660,10 +27895,8 @@ objext = .o
# Flags to pass to stage2 and later makes.
POSTSTAGE1_FLAGS_TO_PASS = \
CC="$${CC}" CC_FOR_BUILD="$${CC_FOR_BUILD}" \
- STAGE_PREFIX=$$r/prev-gcc/ \
+ STAGE_PREFIX=$$r/stage-gcc/ \
CFLAGS="$(BOOT_CFLAGS)" \
- LIBCFLAGS="$(BOOT_CFLAGS)" \
- LDFLAGS="$(BOOT_LDFLAGS)" \
ADAC="\$$(CC)"
# For stage 1:
@@ -36679,146 +27912,661 @@ POSTSTAGE1_FLAGS_TO_PASS = \
.PHONY: stage1-start stage1-end
stage1-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stage1 > stage_current ; \
- echo stage1 > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stage1 > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stage1-bfd ] || \
- mkdir stage1-bfd; \
- mv stage1-bfd bfd
+ @[ -d stage1-bfd ] || mkdir stage1-bfd; \
+ set stage1-bfd bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stage1-opcodes ] || \
- mkdir stage1-opcodes; \
- mv stage1-opcodes opcodes
+ @[ -d stage1-opcodes ] || mkdir stage1-opcodes; \
+ set stage1-opcodes opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stage1-binutils ] || \
- mkdir stage1-binutils; \
- mv stage1-binutils binutils
+ @[ -d stage1-binutils ] || mkdir stage1-binutils; \
+ set stage1-binutils binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stage1-gas ] || \
- mkdir stage1-gas; \
- mv stage1-gas gas
+ @[ -d stage1-gas ] || mkdir stage1-gas; \
+ set stage1-gas gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stage1-gcc ] || \
- mkdir stage1-gcc; \
- mv stage1-gcc gcc
+ @[ -d stage1-gcc ] || mkdir stage1-gcc; \
+ set stage1-gcc gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stage1-intl ] || \
- mkdir stage1-intl; \
- mv stage1-intl intl
+ @[ -d stage1-intl ] || mkdir stage1-intl; \
+ set stage1-intl intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stage1-ld ] || \
- mkdir stage1-ld; \
- mv stage1-ld ld
+ @[ -d stage1-ld ] || mkdir stage1-ld; \
+ set stage1-ld ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stage1-libcpp ] || \
- mkdir stage1-libcpp; \
- mv stage1-libcpp libcpp
+ @[ -d stage1-libcpp ] || mkdir stage1-libcpp; \
+ set stage1-libcpp libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stage1-libdecnumber ] || \
- mkdir stage1-libdecnumber; \
- mv stage1-libdecnumber libdecnumber
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stage1-libiberty ] || \
- mkdir stage1-libiberty; \
- mv stage1-libiberty libiberty
+ @[ -d stage1-libiberty ] || mkdir stage1-libiberty; \
+ set stage1-libiberty libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stage1-zlib ] || \
- mkdir stage1-zlib; \
- mv stage1-zlib zlib
+ @[ -d stage1-zlib ] || mkdir stage1-zlib; \
+ set stage1-zlib zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stage1-$(TARGET_SUBDIR) ] || \
- mkdir stage1-$(TARGET_SUBDIR); \
- mv stage1-$(TARGET_SUBDIR) $(TARGET_SUBDIR)
-stage1-end::
+stage1-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stage1-bfd ; \
- fi
+ @set bfd stage1-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stage1-opcodes ; \
- fi
+ @set opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stage1-binutils ; \
- fi
+ @set binutils stage1-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stage1-gas ; \
- fi
+ @set gas stage1-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stage1-gcc ; \
- fi
+ @set gcc stage1-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stage1-intl ; \
- fi
+ @set intl stage1-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stage1-ld ; \
- fi
+ @set ld stage1-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stage1-libcpp ; \
- fi
+ @set libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stage1-libdecnumber ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stage1-libiberty ; \
- fi
+ @set libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stage1-zlib ; \
- fi
+ @set zlib stage1-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR) ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage 1. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage 1. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stage1-bubble
stage1-bubble::
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage1-lean ; then \
+ @if test -f stage1-lean ; then \
echo Skipping rebuild of stage1 ; \
else \
- $(MAKE) stage1-start; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage1; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage1; \
fi
.PHONY: all-stage1 clean-stage1
+all-stage1: \
+ maybe-all-stage1-bfd \
+ maybe-all-stage1-opcodes \
+ maybe-all-stage1-binutils \
+ maybe-all-stage1-gas \
+ maybe-all-stage1-gcc \
+ maybe-all-stage1-intl \
+ maybe-all-stage1-ld \
+ maybe-all-stage1-libcpp \
+ maybe-all-stage1-libiberty \
+ maybe-all-stage1-zlib
+
do-clean: clean-stage1
+clean-stage1: \
+ maybe-clean-stage1-bfd \
+ maybe-clean-stage1-opcodes \
+ maybe-clean-stage1-binutils \
+ maybe-clean-stage1-gas \
+ maybe-clean-stage1-gcc \
+ maybe-clean-stage1-intl \
+ maybe-clean-stage1-ld \
+ maybe-clean-stage1-libcpp \
+ maybe-clean-stage1-libiberty \
+ maybe-clean-stage1-zlib
+
+
+.PHONY: configure-stage1-bfd maybe-configure-stage1-bfd
+.PHONY: all-stage1-bfd maybe-all-stage1-bfd
+.PHONY: clean-stage1-bfd maybe-clean-stage1-bfd
+
+maybe-configure-stage1-bfd:
+maybe-all-stage1-bfd:
+maybe-clean-stage1-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage1-bfd: configure-stage1-bfd
+configure-stage1-bfd:
+ @$(MAKE) stage1-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-bfd: all-stage1-bfd
+all-stage1-bfd: configure-stage1-bfd
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-bfd: clean-stage1-bfd
+clean-stage1-bfd:
+ @[ -f bfd/Makefile ] || [ -f stage1-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stage1-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage1-opcodes maybe-configure-stage1-opcodes
+.PHONY: all-stage1-opcodes maybe-all-stage1-opcodes
+.PHONY: clean-stage1-opcodes maybe-clean-stage1-opcodes
+
+maybe-configure-stage1-opcodes:
+maybe-all-stage1-opcodes:
+maybe-clean-stage1-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage1-opcodes: configure-stage1-opcodes
+configure-stage1-opcodes:
+ @$(MAKE) stage1-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-opcodes: all-stage1-opcodes
+all-stage1-opcodes: configure-stage1-opcodes
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-opcodes: clean-stage1-opcodes
+clean-stage1-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stage1-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stage1-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage1-binutils maybe-configure-stage1-binutils
+.PHONY: all-stage1-binutils maybe-all-stage1-binutils
+.PHONY: clean-stage1-binutils maybe-clean-stage1-binutils
+
+maybe-configure-stage1-binutils:
+maybe-all-stage1-binutils:
+maybe-clean-stage1-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage1-binutils: configure-stage1-binutils
+configure-stage1-binutils:
+ @$(MAKE) stage1-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-binutils: all-stage1-binutils
+all-stage1-binutils: configure-stage1-binutils
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-binutils: clean-stage1-binutils
+clean-stage1-binutils:
+ @[ -f binutils/Makefile ] || [ -f stage1-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stage1-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage1-gas maybe-configure-stage1-gas
+.PHONY: all-stage1-gas maybe-all-stage1-gas
+.PHONY: clean-stage1-gas maybe-clean-stage1-gas
+
+maybe-configure-stage1-gas:
+maybe-all-stage1-gas:
+maybe-clean-stage1-gas:
+
+@if gas-bootstrap
+maybe-configure-stage1-gas: configure-stage1-gas
+configure-stage1-gas:
+ @$(MAKE) stage1-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-gas: all-stage1-gas
+all-stage1-gas: configure-stage1-gas
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-gas: clean-stage1-gas
+clean-stage1-gas:
+ @[ -f gas/Makefile ] || [ -f stage1-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stage1-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage1-gcc maybe-configure-stage1-gcc
+.PHONY: all-stage1-gcc maybe-all-stage1-gcc
+.PHONY: clean-stage1-gcc maybe-clean-stage1-gcc
+
+maybe-configure-stage1-gcc:
+maybe-all-stage1-gcc:
+maybe-clean-stage1-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage1-gcc: configure-stage1-gcc
+configure-stage1-gcc:
+ @$(MAKE) stage1-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-gcc: all-stage1-gcc
+all-stage1-gcc: configure-stage1-gcc
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage1-gcc: clean-stage1-gcc
+clean-stage1-gcc:
+ @[ -f gcc/Makefile ] || [ -f stage1-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stage1-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage1-intl maybe-configure-stage1-intl
+.PHONY: all-stage1-intl maybe-all-stage1-intl
+.PHONY: clean-stage1-intl maybe-clean-stage1-intl
+
+maybe-configure-stage1-intl:
+maybe-all-stage1-intl:
+maybe-clean-stage1-intl:
+
+@if intl-bootstrap
+maybe-configure-stage1-intl: configure-stage1-intl
+configure-stage1-intl:
+ @$(MAKE) stage1-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-intl: all-stage1-intl
+all-stage1-intl: configure-stage1-intl
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-intl: clean-stage1-intl
+clean-stage1-intl:
+ @[ -f intl/Makefile ] || [ -f stage1-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stage1-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage1-ld maybe-configure-stage1-ld
+.PHONY: all-stage1-ld maybe-all-stage1-ld
+.PHONY: clean-stage1-ld maybe-clean-stage1-ld
+
+maybe-configure-stage1-ld:
+maybe-all-stage1-ld:
+maybe-clean-stage1-ld:
+
+@if ld-bootstrap
+maybe-configure-stage1-ld: configure-stage1-ld
+configure-stage1-ld:
+ @$(MAKE) stage1-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-ld: all-stage1-ld
+all-stage1-ld: configure-stage1-ld
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-ld: clean-stage1-ld
+clean-stage1-ld:
+ @[ -f ld/Makefile ] || [ -f stage1-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stage1-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage1-libcpp maybe-configure-stage1-libcpp
+.PHONY: all-stage1-libcpp maybe-all-stage1-libcpp
+.PHONY: clean-stage1-libcpp maybe-clean-stage1-libcpp
+
+maybe-configure-stage1-libcpp:
+maybe-all-stage1-libcpp:
+maybe-clean-stage1-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage1-libcpp: configure-stage1-libcpp
+configure-stage1-libcpp:
+ @$(MAKE) stage1-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-libcpp: all-stage1-libcpp
+all-stage1-libcpp: configure-stage1-libcpp
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-libcpp: clean-stage1-libcpp
+clean-stage1-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stage1-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stage1-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage1-libiberty maybe-configure-stage1-libiberty
+.PHONY: all-stage1-libiberty maybe-all-stage1-libiberty
+.PHONY: clean-stage1-libiberty maybe-clean-stage1-libiberty
+
+maybe-configure-stage1-libiberty:
+maybe-all-stage1-libiberty:
+maybe-clean-stage1-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage1-libiberty: configure-stage1-libiberty
+configure-stage1-libiberty:
+ @$(MAKE) stage1-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-libiberty: all-stage1-libiberty
+all-stage1-libiberty: configure-stage1-libiberty
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-libiberty: clean-stage1-libiberty
+clean-stage1-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stage1-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stage1-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage1-zlib maybe-configure-stage1-zlib
+.PHONY: all-stage1-zlib maybe-all-stage1-zlib
+.PHONY: clean-stage1-zlib maybe-clean-stage1-zlib
+
+maybe-configure-stage1-zlib:
+maybe-all-stage1-zlib:
+maybe-clean-stage1-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage1-zlib: configure-stage1-zlib
+configure-stage1-zlib:
+ @$(MAKE) stage1-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring stage 1 in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"
+
+maybe-all-stage1-zlib: all-stage1-zlib
+all-stage1-zlib: configure-stage1-zlib
+ @$(MAKE) stage1-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)"
+
+maybe-clean-stage1-zlib: clean-stage1-zlib
+clean-stage1-zlib:
+ @[ -f zlib/Makefile ] || [ -f stage1-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stage1-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ CFLAGS="$(STAGE1_CFLAGS)" clean
+@endif zlib-bootstrap
+
+
# FIXME: Will not need to be conditional when toplevel bootstrap is the
# only possibility, but now it conflicts with no-bootstrap rules
@@ -36831,7 +28579,7 @@ do-clean: clean-stage1
.PHONY: distclean-stage1
distclean-stage1::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stage1-*
@@ -36841,204 +28589,717 @@ distclean-stage1::
.PHONY: stage2-start stage2-end
stage2-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stage2 > stage_current ; \
- echo stage2 > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stage2 > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stage2-bfd ] || \
- mkdir stage2-bfd; \
- mv stage2-bfd bfd ; \
- mv stage1-bfd prev-bfd || test -f stage1-lean
+ @[ -d stage2-bfd ] || mkdir stage2-bfd; \
+ set stage2-bfd bfd ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-bfd prev-bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stage2-opcodes ] || \
- mkdir stage2-opcodes; \
- mv stage2-opcodes opcodes ; \
- mv stage1-opcodes prev-opcodes || test -f stage1-lean
+ @[ -d stage2-opcodes ] || mkdir stage2-opcodes; \
+ set stage2-opcodes opcodes ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-opcodes prev-opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stage2-binutils ] || \
- mkdir stage2-binutils; \
- mv stage2-binutils binutils ; \
- mv stage1-binutils prev-binutils || test -f stage1-lean
+ @[ -d stage2-binutils ] || mkdir stage2-binutils; \
+ set stage2-binutils binutils ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-binutils prev-binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stage2-gas ] || \
- mkdir stage2-gas; \
- mv stage2-gas gas ; \
- mv stage1-gas prev-gas || test -f stage1-lean
+ @[ -d stage2-gas ] || mkdir stage2-gas; \
+ set stage2-gas gas ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gas prev-gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stage2-gcc ] || \
- mkdir stage2-gcc; \
- mv stage2-gcc gcc ; \
- mv stage1-gcc prev-gcc || test -f stage1-lean
+ @[ -d stage2-gcc ] || mkdir stage2-gcc; \
+ set stage2-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gcc prev-gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stage2-intl ] || \
- mkdir stage2-intl; \
- mv stage2-intl intl ; \
- mv stage1-intl prev-intl || test -f stage1-lean
+ @[ -d stage2-intl ] || mkdir stage2-intl; \
+ set stage2-intl intl ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-intl prev-intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stage2-ld ] || \
- mkdir stage2-ld; \
- mv stage2-ld ld ; \
- mv stage1-ld prev-ld || test -f stage1-lean
+ @[ -d stage2-ld ] || mkdir stage2-ld; \
+ set stage2-ld ld ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-ld prev-ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stage2-libcpp ] || \
- mkdir stage2-libcpp; \
- mv stage2-libcpp libcpp ; \
- mv stage1-libcpp prev-libcpp || test -f stage1-lean
+ @[ -d stage2-libcpp ] || mkdir stage2-libcpp; \
+ set stage2-libcpp libcpp ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libcpp prev-libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stage2-libdecnumber ] || \
- mkdir stage2-libdecnumber; \
- mv stage2-libdecnumber libdecnumber ; \
- mv stage1-libdecnumber prev-libdecnumber || test -f stage1-lean
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stage2-libiberty ] || \
- mkdir stage2-libiberty; \
- mv stage2-libiberty libiberty ; \
- mv stage1-libiberty prev-libiberty || test -f stage1-lean
+ @[ -d stage2-libiberty ] || mkdir stage2-libiberty; \
+ set stage2-libiberty libiberty ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libiberty prev-libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stage2-zlib ] || \
- mkdir stage2-zlib; \
- mv stage2-zlib zlib ; \
- mv stage1-zlib prev-zlib || test -f stage1-lean
+ @[ -d stage2-zlib ] || mkdir stage2-zlib; \
+ set stage2-zlib zlib ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-zlib prev-zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stage2-$(TARGET_SUBDIR) ] || \
- mkdir stage2-$(TARGET_SUBDIR); \
- mv stage2-$(TARGET_SUBDIR) $(TARGET_SUBDIR) ; \
- mv stage1-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stage1-lean
-stage2-end::
+stage2-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stage2-bfd ; \
- mv prev-bfd stage1-bfd ; : ; \
- fi
+ @set bfd stage2-bfd ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stage2-opcodes ; \
- mv prev-opcodes stage1-opcodes ; : ; \
- fi
+ @set opcodes stage2-opcodes ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stage2-binutils ; \
- mv prev-binutils stage1-binutils ; : ; \
- fi
+ @set binutils stage2-binutils ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stage2-gas ; \
- mv prev-gas stage1-gas ; : ; \
- fi
+ @set gas stage2-gas ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stage2-gcc ; \
- mv prev-gcc stage1-gcc ; : ; \
- fi
+ @set gcc stage2-gcc ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stage2-intl ; \
- mv prev-intl stage1-intl ; : ; \
- fi
+ @set intl stage2-intl ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stage2-ld ; \
- mv prev-ld stage1-ld ; : ; \
- fi
+ @set ld stage2-ld ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stage2-libcpp ; \
- mv prev-libcpp stage1-libcpp ; : ; \
- fi
+ @set libcpp stage2-libcpp ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stage2-libdecnumber ; \
- mv prev-libdecnumber stage1-libdecnumber ; : ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stage2-libiberty ; \
- mv prev-libiberty stage1-libiberty ; : ; \
- fi
+ @set libiberty stage2-libiberty ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stage2-zlib ; \
- mv prev-zlib stage1-zlib ; : ; \
- fi
+ @set zlib stage2-zlib ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-zlib stage1-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stage2-$(TARGET_SUBDIR) ; \
- mv prev-$(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR) ; : ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage 2. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage 2. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stage2-bubble
stage2-bubble:: stage1-bubble
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage2-lean || test -f stage1-lean ; then \
+ @if test -f stage2-lean || test -f stage1-lean ; then \
echo Skipping rebuild of stage2 ; \
else \
- $(MAKE) stage2-start; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage2; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage2; \
fi
.PHONY: all-stage2 clean-stage2
+all-stage2: \
+ maybe-all-stage2-bfd \
+ maybe-all-stage2-opcodes \
+ maybe-all-stage2-binutils \
+ maybe-all-stage2-gas \
+ maybe-all-stage2-gcc \
+ maybe-all-stage2-intl \
+ maybe-all-stage2-ld \
+ maybe-all-stage2-libcpp \
+ maybe-all-stage2-libiberty \
+ maybe-all-stage2-zlib
+
do-clean: clean-stage2
+clean-stage2: \
+ maybe-clean-stage2-bfd \
+ maybe-clean-stage2-opcodes \
+ maybe-clean-stage2-binutils \
+ maybe-clean-stage2-gas \
+ maybe-clean-stage2-gcc \
+ maybe-clean-stage2-intl \
+ maybe-clean-stage2-ld \
+ maybe-clean-stage2-libcpp \
+ maybe-clean-stage2-libiberty \
+ maybe-clean-stage2-zlib
+
+
+.PHONY: configure-stage2-bfd maybe-configure-stage2-bfd
+.PHONY: all-stage2-bfd maybe-all-stage2-bfd
+.PHONY: clean-stage2-bfd maybe-clean-stage2-bfd
+
+maybe-configure-stage2-bfd:
+maybe-all-stage2-bfd:
+maybe-clean-stage2-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage2-bfd: configure-stage2-bfd
+configure-stage2-bfd:
+ @$(MAKE) stage2-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-bfd: all-stage2-bfd
+all-stage2-bfd: configure-stage2-bfd
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-bfd: clean-stage2-bfd
+clean-stage2-bfd:
+ @[ -f bfd/Makefile ] || [ -f stage2-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stage2-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage2-opcodes maybe-configure-stage2-opcodes
+.PHONY: all-stage2-opcodes maybe-all-stage2-opcodes
+.PHONY: clean-stage2-opcodes maybe-clean-stage2-opcodes
+
+maybe-configure-stage2-opcodes:
+maybe-all-stage2-opcodes:
+maybe-clean-stage2-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage2-opcodes: configure-stage2-opcodes
+configure-stage2-opcodes:
+ @$(MAKE) stage2-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-opcodes: all-stage2-opcodes
+all-stage2-opcodes: configure-stage2-opcodes
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-opcodes: clean-stage2-opcodes
+clean-stage2-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stage2-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stage2-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage2-binutils maybe-configure-stage2-binutils
+.PHONY: all-stage2-binutils maybe-all-stage2-binutils
+.PHONY: clean-stage2-binutils maybe-clean-stage2-binutils
+
+maybe-configure-stage2-binutils:
+maybe-all-stage2-binutils:
+maybe-clean-stage2-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage2-binutils: configure-stage2-binutils
+configure-stage2-binutils:
+ @$(MAKE) stage2-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-binutils: all-stage2-binutils
+all-stage2-binutils: configure-stage2-binutils
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-binutils: clean-stage2-binutils
+clean-stage2-binutils:
+ @[ -f binutils/Makefile ] || [ -f stage2-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stage2-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage2-gas maybe-configure-stage2-gas
+.PHONY: all-stage2-gas maybe-all-stage2-gas
+.PHONY: clean-stage2-gas maybe-clean-stage2-gas
+
+maybe-configure-stage2-gas:
+maybe-all-stage2-gas:
+maybe-clean-stage2-gas:
+
+@if gas-bootstrap
+maybe-configure-stage2-gas: configure-stage2-gas
+configure-stage2-gas:
+ @$(MAKE) stage2-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-gas: all-stage2-gas
+all-stage2-gas: configure-stage2-gas
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-gas: clean-stage2-gas
+clean-stage2-gas:
+ @[ -f gas/Makefile ] || [ -f stage2-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stage2-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage2-gcc maybe-configure-stage2-gcc
+.PHONY: all-stage2-gcc maybe-all-stage2-gcc
+.PHONY: clean-stage2-gcc maybe-clean-stage2-gcc
+
+maybe-configure-stage2-gcc:
+maybe-all-stage2-gcc:
+maybe-clean-stage2-gcc:
-# FIXME: Will not need to be conditional when toplevel bootstrap is the
-# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
+maybe-configure-stage2-gcc: configure-stage2-gcc
+configure-stage2-gcc:
+ @$(MAKE) stage2-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+maybe-all-stage2-gcc: all-stage2-gcc
+all-stage2-gcc: configure-stage2-gcc
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS)
+maybe-clean-stage2-gcc: clean-stage2-gcc
+clean-stage2-gcc:
+ @[ -f gcc/Makefile ] || [ -f stage2-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stage2-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage2-intl maybe-configure-stage2-intl
+.PHONY: all-stage2-intl maybe-all-stage2-intl
+.PHONY: clean-stage2-intl maybe-clean-stage2-intl
-.PHONY: bootstrap2 bootstrap2-lean
-bootstrap2:
- echo stage2 > stage_final
+maybe-configure-stage2-intl:
+maybe-all-stage2-intl:
+maybe-clean-stage2-intl:
+
+@if intl-bootstrap
+maybe-configure-stage2-intl: configure-stage2-intl
+configure-stage2-intl:
+ @$(MAKE) stage2-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-intl: all-stage2-intl
+all-stage2-intl: configure-stage2-intl
+ @$(MAKE) stage2-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage2-bubble
- @: $(MAKE); $(unstage)
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-intl: clean-stage2-intl
+clean-stage2-intl:
+ @[ -f intl/Makefile ] || [ -f stage2-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stage2-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage2-ld maybe-configure-stage2-ld
+.PHONY: all-stage2-ld maybe-all-stage2-ld
+.PHONY: clean-stage2-ld maybe-clean-stage2-ld
+
+maybe-configure-stage2-ld:
+maybe-all-stage2-ld:
+maybe-clean-stage2-ld:
+
+@if ld-bootstrap
+maybe-configure-stage2-ld: configure-stage2-ld
+configure-stage2-ld:
+ @$(MAKE) stage2-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-ld: all-stage2-ld
+all-stage2-ld: configure-stage2-ld
+ @$(MAKE) stage2-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-ld: clean-stage2-ld
+clean-stage2-ld:
+ @[ -f ld/Makefile ] || [ -f stage2-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stage2-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage2-libcpp maybe-configure-stage2-libcpp
+.PHONY: all-stage2-libcpp maybe-all-stage2-libcpp
+.PHONY: clean-stage2-libcpp maybe-clean-stage2-libcpp
+
+maybe-configure-stage2-libcpp:
+maybe-all-stage2-libcpp:
+maybe-clean-stage2-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage2-libcpp: configure-stage2-libcpp
+configure-stage2-libcpp:
+ @$(MAKE) stage2-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
-bootstrap2-lean:
- echo stage2 > stage_final
+maybe-all-stage2-libcpp: all-stage2-libcpp
+all-stage2-libcpp: configure-stage2-libcpp
+ @$(MAKE) stage2-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) LEAN=: stage2-bubble
- @: $(MAKE); $(unstage)
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-libcpp: clean-stage2-libcpp
+clean-stage2-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stage2-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stage2-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage2-libiberty maybe-configure-stage2-libiberty
+.PHONY: all-stage2-libiberty maybe-all-stage2-libiberty
+.PHONY: clean-stage2-libiberty maybe-clean-stage2-libiberty
+
+maybe-configure-stage2-libiberty:
+maybe-all-stage2-libiberty:
+maybe-clean-stage2-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage2-libiberty: configure-stage2-libiberty
+configure-stage2-libiberty:
+ @$(MAKE) stage2-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-libiberty: all-stage2-libiberty
+all-stage2-libiberty: configure-stage2-libiberty
+ @$(MAKE) stage2-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-libiberty: clean-stage2-libiberty
+clean-stage2-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stage2-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stage2-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage2-zlib maybe-configure-stage2-zlib
+.PHONY: all-stage2-zlib maybe-all-stage2-zlib
+.PHONY: clean-stage2-zlib maybe-clean-stage2-zlib
+
+maybe-configure-stage2-zlib:
+maybe-all-stage2-zlib:
+maybe-clean-stage2-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage2-zlib: configure-stage2-zlib
+configure-stage2-zlib:
+ @$(MAKE) stage2-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 2 in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage2-zlib: all-stage2-zlib
+all-stage2-zlib: configure-stage2-zlib
+ @$(MAKE) stage2-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage2-zlib: clean-stage2-zlib
+clean-stage2-zlib:
+ @[ -f zlib/Makefile ] || [ -f stage2-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stage2-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
+
+.PHONY: bootstrap2
+bootstrap2: stage2-bubble all
# Rules to wipe a stage and all the following ones, also used for cleanstrap
distclean-stage1:: distclean-stage2
.PHONY: distclean-stage2
distclean-stage2::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stage2-*
@@ -37048,247 +29309,745 @@ distclean-stage2::
.PHONY: stage3-start stage3-end
stage3-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stage3 > stage_current ; \
- echo stage3 > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stage3 > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stage3-bfd ] || \
- mkdir stage3-bfd; \
- mv stage3-bfd bfd ; \
- mv stage2-bfd prev-bfd || test -f stage2-lean
+ @[ -d stage3-bfd ] || mkdir stage3-bfd; \
+ set stage3-bfd bfd ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-bfd prev-bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stage3-opcodes ] || \
- mkdir stage3-opcodes; \
- mv stage3-opcodes opcodes ; \
- mv stage2-opcodes prev-opcodes || test -f stage2-lean
+ @[ -d stage3-opcodes ] || mkdir stage3-opcodes; \
+ set stage3-opcodes opcodes ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-opcodes prev-opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stage3-binutils ] || \
- mkdir stage3-binutils; \
- mv stage3-binutils binutils ; \
- mv stage2-binutils prev-binutils || test -f stage2-lean
+ @[ -d stage3-binutils ] || mkdir stage3-binutils; \
+ set stage3-binutils binutils ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-binutils prev-binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stage3-gas ] || \
- mkdir stage3-gas; \
- mv stage3-gas gas ; \
- mv stage2-gas prev-gas || test -f stage2-lean
+ @[ -d stage3-gas ] || mkdir stage3-gas; \
+ set stage3-gas gas ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-gas prev-gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stage3-gcc ] || \
- mkdir stage3-gcc; \
- mv stage3-gcc gcc ; \
- mv stage2-gcc prev-gcc || test -f stage2-lean
+ @[ -d stage3-gcc ] || mkdir stage3-gcc; \
+ set stage3-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-gcc prev-gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stage3-intl ] || \
- mkdir stage3-intl; \
- mv stage3-intl intl ; \
- mv stage2-intl prev-intl || test -f stage2-lean
+ @[ -d stage3-intl ] || mkdir stage3-intl; \
+ set stage3-intl intl ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-intl prev-intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stage3-ld ] || \
- mkdir stage3-ld; \
- mv stage3-ld ld ; \
- mv stage2-ld prev-ld || test -f stage2-lean
+ @[ -d stage3-ld ] || mkdir stage3-ld; \
+ set stage3-ld ld ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-ld prev-ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stage3-libcpp ] || \
- mkdir stage3-libcpp; \
- mv stage3-libcpp libcpp ; \
- mv stage2-libcpp prev-libcpp || test -f stage2-lean
+ @[ -d stage3-libcpp ] || mkdir stage3-libcpp; \
+ set stage3-libcpp libcpp ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-libcpp prev-libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stage3-libdecnumber ] || \
- mkdir stage3-libdecnumber; \
- mv stage3-libdecnumber libdecnumber ; \
- mv stage2-libdecnumber prev-libdecnumber || test -f stage2-lean
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stage3-libiberty ] || \
- mkdir stage3-libiberty; \
- mv stage3-libiberty libiberty ; \
- mv stage2-libiberty prev-libiberty || test -f stage2-lean
+ @[ -d stage3-libiberty ] || mkdir stage3-libiberty; \
+ set stage3-libiberty libiberty ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-libiberty prev-libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stage3-zlib ] || \
- mkdir stage3-zlib; \
- mv stage3-zlib zlib ; \
- mv stage2-zlib prev-zlib || test -f stage2-lean
+ @[ -d stage3-zlib ] || mkdir stage3-zlib; \
+ set stage3-zlib zlib ; @CREATE_LINK_TO_DIR@ ; \
+ set stage2-zlib prev-zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stage3-$(TARGET_SUBDIR) ] || \
- mkdir stage3-$(TARGET_SUBDIR); \
- mv stage3-$(TARGET_SUBDIR) $(TARGET_SUBDIR) ; \
- mv stage2-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stage2-lean
-stage3-end::
+stage3-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stage3-bfd ; \
- mv prev-bfd stage2-bfd ; : ; \
- fi
+ @set bfd stage3-bfd ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-bfd stage2-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stage3-opcodes ; \
- mv prev-opcodes stage2-opcodes ; : ; \
- fi
+ @set opcodes stage3-opcodes ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-opcodes stage2-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stage3-binutils ; \
- mv prev-binutils stage2-binutils ; : ; \
- fi
+ @set binutils stage3-binutils ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-binutils stage2-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stage3-gas ; \
- mv prev-gas stage2-gas ; : ; \
- fi
+ @set gas stage3-gas ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gas stage2-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stage3-gcc ; \
- mv prev-gcc stage2-gcc ; : ; \
- fi
+ @set gcc stage3-gcc ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gcc stage2-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stage3-intl ; \
- mv prev-intl stage2-intl ; : ; \
- fi
+ @set intl stage3-intl ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-intl stage2-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stage3-ld ; \
- mv prev-ld stage2-ld ; : ; \
- fi
+ @set ld stage3-ld ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-ld stage2-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stage3-libcpp ; \
- mv prev-libcpp stage2-libcpp ; : ; \
- fi
+ @set libcpp stage3-libcpp ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libcpp stage2-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stage3-libdecnumber ; \
- mv prev-libdecnumber stage2-libdecnumber ; : ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stage3-libiberty ; \
- mv prev-libiberty stage2-libiberty ; : ; \
- fi
+ @set libiberty stage3-libiberty ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libiberty stage2-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stage3-zlib ; \
- mv prev-zlib stage2-zlib ; : ; \
- fi
+ @set zlib stage3-zlib ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-zlib stage2-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stage3-$(TARGET_SUBDIR) ; \
- mv prev-$(TARGET_SUBDIR) stage2-$(TARGET_SUBDIR) ; : ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage 3. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage 3. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stage3-bubble
stage3-bubble:: stage2-bubble
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage3-lean || test -f stage2-lean ; then \
+ @bootstrap_lean@-rm -rf stage1-* ; $(STAMP) stage1-lean
+ @if test -f stage3-lean || test -f stage2-lean ; then \
echo Skipping rebuild of stage3 ; \
else \
- $(MAKE) stage3-start; \
- if $(LEAN); then \
- rm -rf stage1-* ; \
- $(STAMP) stage1-lean ; \
- fi; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage3; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage3; \
fi
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) compare
.PHONY: all-stage3 clean-stage3
+all-stage3: \
+ maybe-all-stage3-bfd \
+ maybe-all-stage3-opcodes \
+ maybe-all-stage3-binutils \
+ maybe-all-stage3-gas \
+ maybe-all-stage3-gcc \
+ maybe-all-stage3-intl \
+ maybe-all-stage3-ld \
+ maybe-all-stage3-libcpp \
+ maybe-all-stage3-libiberty \
+ maybe-all-stage3-zlib
+
do-clean: clean-stage3
+clean-stage3: \
+ maybe-clean-stage3-bfd \
+ maybe-clean-stage3-opcodes \
+ maybe-clean-stage3-binutils \
+ maybe-clean-stage3-gas \
+ maybe-clean-stage3-gcc \
+ maybe-clean-stage3-intl \
+ maybe-clean-stage3-ld \
+ maybe-clean-stage3-libcpp \
+ maybe-clean-stage3-libiberty \
+ maybe-clean-stage3-zlib
+
+
+.PHONY: configure-stage3-bfd maybe-configure-stage3-bfd
+.PHONY: all-stage3-bfd maybe-all-stage3-bfd
+.PHONY: clean-stage3-bfd maybe-clean-stage3-bfd
+
+maybe-configure-stage3-bfd:
+maybe-all-stage3-bfd:
+maybe-clean-stage3-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage3-bfd: configure-stage3-bfd
+configure-stage3-bfd:
+ @$(MAKE) stage3-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-bfd: all-stage3-bfd
+all-stage3-bfd: configure-stage3-bfd
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-bfd: clean-stage3-bfd
+clean-stage3-bfd:
+ @[ -f bfd/Makefile ] || [ -f stage3-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stage3-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage3-opcodes maybe-configure-stage3-opcodes
+.PHONY: all-stage3-opcodes maybe-all-stage3-opcodes
+.PHONY: clean-stage3-opcodes maybe-clean-stage3-opcodes
+
+maybe-configure-stage3-opcodes:
+maybe-all-stage3-opcodes:
+maybe-clean-stage3-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage3-opcodes: configure-stage3-opcodes
+configure-stage3-opcodes:
+ @$(MAKE) stage3-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-opcodes: all-stage3-opcodes
+all-stage3-opcodes: configure-stage3-opcodes
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-opcodes: clean-stage3-opcodes
+clean-stage3-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stage3-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stage3-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage3-binutils maybe-configure-stage3-binutils
+.PHONY: all-stage3-binutils maybe-all-stage3-binutils
+.PHONY: clean-stage3-binutils maybe-clean-stage3-binutils
+
+maybe-configure-stage3-binutils:
+maybe-all-stage3-binutils:
+maybe-clean-stage3-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage3-binutils: configure-stage3-binutils
+configure-stage3-binutils:
+ @$(MAKE) stage3-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-binutils: all-stage3-binutils
+all-stage3-binutils: configure-stage3-binutils
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-binutils: clean-stage3-binutils
+clean-stage3-binutils:
+ @[ -f binutils/Makefile ] || [ -f stage3-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stage3-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage3-gas maybe-configure-stage3-gas
+.PHONY: all-stage3-gas maybe-all-stage3-gas
+.PHONY: clean-stage3-gas maybe-clean-stage3-gas
+
+maybe-configure-stage3-gas:
+maybe-all-stage3-gas:
+maybe-clean-stage3-gas:
+
+@if gas-bootstrap
+maybe-configure-stage3-gas: configure-stage3-gas
+configure-stage3-gas:
+ @$(MAKE) stage3-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-gas: all-stage3-gas
+all-stage3-gas: configure-stage3-gas
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-gas: clean-stage3-gas
+clean-stage3-gas:
+ @[ -f gas/Makefile ] || [ -f stage3-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stage3-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage3-gcc maybe-configure-stage3-gcc
+.PHONY: all-stage3-gcc maybe-all-stage3-gcc
+.PHONY: clean-stage3-gcc maybe-clean-stage3-gcc
+
+maybe-configure-stage3-gcc:
+maybe-all-stage3-gcc:
+maybe-clean-stage3-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage3-gcc: configure-stage3-gcc
+configure-stage3-gcc:
+ @$(MAKE) stage3-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-gcc: all-stage3-gcc
+all-stage3-gcc: configure-stage3-gcc
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage3-gcc: clean-stage3-gcc
+clean-stage3-gcc:
+ @[ -f gcc/Makefile ] || [ -f stage3-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stage3-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage3-intl maybe-configure-stage3-intl
+.PHONY: all-stage3-intl maybe-all-stage3-intl
+.PHONY: clean-stage3-intl maybe-clean-stage3-intl
+
+maybe-configure-stage3-intl:
+maybe-all-stage3-intl:
+maybe-clean-stage3-intl:
+
+@if intl-bootstrap
+maybe-configure-stage3-intl: configure-stage3-intl
+configure-stage3-intl:
+ @$(MAKE) stage3-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-intl: all-stage3-intl
+all-stage3-intl: configure-stage3-intl
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-intl: clean-stage3-intl
+clean-stage3-intl:
+ @[ -f intl/Makefile ] || [ -f stage3-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stage3-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage3-ld maybe-configure-stage3-ld
+.PHONY: all-stage3-ld maybe-all-stage3-ld
+.PHONY: clean-stage3-ld maybe-clean-stage3-ld
+
+maybe-configure-stage3-ld:
+maybe-all-stage3-ld:
+maybe-clean-stage3-ld:
+
+@if ld-bootstrap
+maybe-configure-stage3-ld: configure-stage3-ld
+configure-stage3-ld:
+ @$(MAKE) stage3-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-ld: all-stage3-ld
+all-stage3-ld: configure-stage3-ld
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-ld: clean-stage3-ld
+clean-stage3-ld:
+ @[ -f ld/Makefile ] || [ -f stage3-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stage3-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage3-libcpp maybe-configure-stage3-libcpp
+.PHONY: all-stage3-libcpp maybe-all-stage3-libcpp
+.PHONY: clean-stage3-libcpp maybe-clean-stage3-libcpp
+
+maybe-configure-stage3-libcpp:
+maybe-all-stage3-libcpp:
+maybe-clean-stage3-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage3-libcpp: configure-stage3-libcpp
+configure-stage3-libcpp:
+ @$(MAKE) stage3-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-libcpp: all-stage3-libcpp
+all-stage3-libcpp: configure-stage3-libcpp
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-libcpp: clean-stage3-libcpp
+clean-stage3-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stage3-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stage3-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage3-libiberty maybe-configure-stage3-libiberty
+.PHONY: all-stage3-libiberty maybe-all-stage3-libiberty
+.PHONY: clean-stage3-libiberty maybe-clean-stage3-libiberty
+
+maybe-configure-stage3-libiberty:
+maybe-all-stage3-libiberty:
+maybe-clean-stage3-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage3-libiberty: configure-stage3-libiberty
+configure-stage3-libiberty:
+ @$(MAKE) stage3-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-libiberty: all-stage3-libiberty
+all-stage3-libiberty: configure-stage3-libiberty
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-libiberty: clean-stage3-libiberty
+clean-stage3-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stage3-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stage3-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage3-zlib maybe-configure-stage3-zlib
+.PHONY: all-stage3-zlib maybe-all-stage3-zlib
+.PHONY: clean-stage3-zlib maybe-clean-stage3-zlib
+
+maybe-configure-stage3-zlib:
+maybe-all-stage3-zlib:
+maybe-clean-stage3-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage3-zlib: configure-stage3-zlib
+configure-stage3-zlib:
+ @$(MAKE) stage3-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 3 in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage3-zlib: all-stage3-zlib
+all-stage3-zlib: configure-stage3-zlib
+ @$(MAKE) stage3-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage3-zlib: clean-stage3-zlib
+clean-stage3-zlib:
+ @[ -f zlib/Makefile ] || [ -f stage3-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stage3-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif zlib-bootstrap
+
+
# FIXME: Will not need to be conditional when toplevel bootstrap is the
# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
compare:
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage2-lean; then \
+ @if test -f stage2-lean; then \
echo Cannot compare object files as stage 2 was deleted. ; \
exit 0 ; \
fi; \
- : $(MAKE); $(stage); \
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
rm -f .bad_compare ; \
- echo Comparing stages 2 and 3 ; \
cd stage3-gcc; \
files=`find . -name "*$(objext)" -print` ; \
cd .. ; \
for file in $${files} ; do \
f1=$$r/stage2-gcc/$$file; f2=$$r/stage3-gcc/$$file; \
@do_compare@ > /dev/null 2>&1; \
- if test $$? -eq 1; then \
- case $$file in \
- ./cc*-checksum$(objext) | ./libgcc/* ) \
- echo warning: $$file differs ;; \
- *) \
- echo $$file differs >> .bad_compare ;; \
- esac ; \
- fi ; \
+ test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \
done ; \
if [ -f .bad_compare ]; then \
echo "Bootstrap comparison failure!"; \
cat .bad_compare; \
exit 1; \
else \
- echo Comparison successful.; \
+ true; \
fi ; \
$(STAMP) compare
- if $(LEAN); then \
- rm -rf stage2-*; \
- $(STAMP) stage2-lean; \
- fi
+ @bootstrap_lean@-rm -rf stage2-* ; $(STAMP) stage2-lean
-.PHONY: bootstrap bootstrap-lean
-bootstrap:
- echo stage3 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage3-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
-
-bootstrap-lean:
- echo stage3 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) LEAN=: stage3-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+.PHONY: bootstrap
+bootstrap: stage3-bubble compare all
# Rules to wipe a stage and all the following ones, also used for cleanstrap
distclean-stage2:: distclean-stage3
.PHONY: distclean-stage3
distclean-stage3::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stage3-* compare
@@ -37301,247 +30060,745 @@ cleanstrap: distclean bootstrap
.PHONY: stage4-start stage4-end
stage4-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stage4 > stage_current ; \
- echo stage4 > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stage4 > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stage4-bfd ] || \
- mkdir stage4-bfd; \
- mv stage4-bfd bfd ; \
- mv stage3-bfd prev-bfd || test -f stage3-lean
+ @[ -d stage4-bfd ] || mkdir stage4-bfd; \
+ set stage4-bfd bfd ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-bfd prev-bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stage4-opcodes ] || \
- mkdir stage4-opcodes; \
- mv stage4-opcodes opcodes ; \
- mv stage3-opcodes prev-opcodes || test -f stage3-lean
+ @[ -d stage4-opcodes ] || mkdir stage4-opcodes; \
+ set stage4-opcodes opcodes ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-opcodes prev-opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stage4-binutils ] || \
- mkdir stage4-binutils; \
- mv stage4-binutils binutils ; \
- mv stage3-binutils prev-binutils || test -f stage3-lean
+ @[ -d stage4-binutils ] || mkdir stage4-binutils; \
+ set stage4-binutils binutils ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-binutils prev-binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stage4-gas ] || \
- mkdir stage4-gas; \
- mv stage4-gas gas ; \
- mv stage3-gas prev-gas || test -f stage3-lean
+ @[ -d stage4-gas ] || mkdir stage4-gas; \
+ set stage4-gas gas ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-gas prev-gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stage4-gcc ] || \
- mkdir stage4-gcc; \
- mv stage4-gcc gcc ; \
- mv stage3-gcc prev-gcc || test -f stage3-lean
+ @[ -d stage4-gcc ] || mkdir stage4-gcc; \
+ set stage4-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-gcc prev-gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stage4-intl ] || \
- mkdir stage4-intl; \
- mv stage4-intl intl ; \
- mv stage3-intl prev-intl || test -f stage3-lean
+ @[ -d stage4-intl ] || mkdir stage4-intl; \
+ set stage4-intl intl ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-intl prev-intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stage4-ld ] || \
- mkdir stage4-ld; \
- mv stage4-ld ld ; \
- mv stage3-ld prev-ld || test -f stage3-lean
+ @[ -d stage4-ld ] || mkdir stage4-ld; \
+ set stage4-ld ld ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-ld prev-ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stage4-libcpp ] || \
- mkdir stage4-libcpp; \
- mv stage4-libcpp libcpp ; \
- mv stage3-libcpp prev-libcpp || test -f stage3-lean
+ @[ -d stage4-libcpp ] || mkdir stage4-libcpp; \
+ set stage4-libcpp libcpp ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-libcpp prev-libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stage4-libdecnumber ] || \
- mkdir stage4-libdecnumber; \
- mv stage4-libdecnumber libdecnumber ; \
- mv stage3-libdecnumber prev-libdecnumber || test -f stage3-lean
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stage4-libiberty ] || \
- mkdir stage4-libiberty; \
- mv stage4-libiberty libiberty ; \
- mv stage3-libiberty prev-libiberty || test -f stage3-lean
+ @[ -d stage4-libiberty ] || mkdir stage4-libiberty; \
+ set stage4-libiberty libiberty ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-libiberty prev-libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stage4-zlib ] || \
- mkdir stage4-zlib; \
- mv stage4-zlib zlib ; \
- mv stage3-zlib prev-zlib || test -f stage3-lean
+ @[ -d stage4-zlib ] || mkdir stage4-zlib; \
+ set stage4-zlib zlib ; @CREATE_LINK_TO_DIR@ ; \
+ set stage3-zlib prev-zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stage4-$(TARGET_SUBDIR) ] || \
- mkdir stage4-$(TARGET_SUBDIR); \
- mv stage4-$(TARGET_SUBDIR) $(TARGET_SUBDIR) ; \
- mv stage3-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stage3-lean
-stage4-end::
+stage4-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stage4-bfd ; \
- mv prev-bfd stage3-bfd ; : ; \
- fi
+ @set bfd stage4-bfd ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-bfd stage3-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stage4-opcodes ; \
- mv prev-opcodes stage3-opcodes ; : ; \
- fi
+ @set opcodes stage4-opcodes ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-opcodes stage3-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stage4-binutils ; \
- mv prev-binutils stage3-binutils ; : ; \
- fi
+ @set binutils stage4-binutils ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-binutils stage3-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stage4-gas ; \
- mv prev-gas stage3-gas ; : ; \
- fi
+ @set gas stage4-gas ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gas stage3-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stage4-gcc ; \
- mv prev-gcc stage3-gcc ; : ; \
- fi
+ @set gcc stage4-gcc ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gcc stage3-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stage4-intl ; \
- mv prev-intl stage3-intl ; : ; \
- fi
+ @set intl stage4-intl ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-intl stage3-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stage4-ld ; \
- mv prev-ld stage3-ld ; : ; \
- fi
+ @set ld stage4-ld ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-ld stage3-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stage4-libcpp ; \
- mv prev-libcpp stage3-libcpp ; : ; \
- fi
+ @set libcpp stage4-libcpp ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libcpp stage3-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stage4-libdecnumber ; \
- mv prev-libdecnumber stage3-libdecnumber ; : ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stage4-libiberty ; \
- mv prev-libiberty stage3-libiberty ; : ; \
- fi
+ @set libiberty stage4-libiberty ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libiberty stage3-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stage4-zlib ; \
- mv prev-zlib stage3-zlib ; : ; \
- fi
+ @set zlib stage4-zlib ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-zlib stage3-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stage4-$(TARGET_SUBDIR) ; \
- mv prev-$(TARGET_SUBDIR) stage3-$(TARGET_SUBDIR) ; : ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage 4. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage 4. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stage4-bubble
stage4-bubble:: stage3-bubble
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage4-lean || test -f stage3-lean ; then \
+ @bootstrap_lean@-rm -rf stage2-* ; $(STAMP) stage2-lean
+ @if test -f stage4-lean || test -f stage3-lean ; then \
echo Skipping rebuild of stage4 ; \
else \
- $(MAKE) stage4-start; \
- if $(LEAN); then \
- rm -rf stage2-* ; \
- $(STAMP) stage2-lean ; \
- fi; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage4; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage4; \
fi
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) compare3
.PHONY: all-stage4 clean-stage4
+all-stage4: \
+ maybe-all-stage4-bfd \
+ maybe-all-stage4-opcodes \
+ maybe-all-stage4-binutils \
+ maybe-all-stage4-gas \
+ maybe-all-stage4-gcc \
+ maybe-all-stage4-intl \
+ maybe-all-stage4-ld \
+ maybe-all-stage4-libcpp \
+ maybe-all-stage4-libiberty \
+ maybe-all-stage4-zlib
+
do-clean: clean-stage4
+clean-stage4: \
+ maybe-clean-stage4-bfd \
+ maybe-clean-stage4-opcodes \
+ maybe-clean-stage4-binutils \
+ maybe-clean-stage4-gas \
+ maybe-clean-stage4-gcc \
+ maybe-clean-stage4-intl \
+ maybe-clean-stage4-ld \
+ maybe-clean-stage4-libcpp \
+ maybe-clean-stage4-libiberty \
+ maybe-clean-stage4-zlib
+
+
+.PHONY: configure-stage4-bfd maybe-configure-stage4-bfd
+.PHONY: all-stage4-bfd maybe-all-stage4-bfd
+.PHONY: clean-stage4-bfd maybe-clean-stage4-bfd
+
+maybe-configure-stage4-bfd:
+maybe-all-stage4-bfd:
+maybe-clean-stage4-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage4-bfd: configure-stage4-bfd
+configure-stage4-bfd:
+ @$(MAKE) stage4-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-bfd: all-stage4-bfd
+all-stage4-bfd: configure-stage4-bfd
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-bfd: clean-stage4-bfd
+clean-stage4-bfd:
+ @[ -f bfd/Makefile ] || [ -f stage4-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stage4-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage4-opcodes maybe-configure-stage4-opcodes
+.PHONY: all-stage4-opcodes maybe-all-stage4-opcodes
+.PHONY: clean-stage4-opcodes maybe-clean-stage4-opcodes
+
+maybe-configure-stage4-opcodes:
+maybe-all-stage4-opcodes:
+maybe-clean-stage4-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage4-opcodes: configure-stage4-opcodes
+configure-stage4-opcodes:
+ @$(MAKE) stage4-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-opcodes: all-stage4-opcodes
+all-stage4-opcodes: configure-stage4-opcodes
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-opcodes: clean-stage4-opcodes
+clean-stage4-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stage4-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stage4-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage4-binutils maybe-configure-stage4-binutils
+.PHONY: all-stage4-binutils maybe-all-stage4-binutils
+.PHONY: clean-stage4-binutils maybe-clean-stage4-binutils
+
+maybe-configure-stage4-binutils:
+maybe-all-stage4-binutils:
+maybe-clean-stage4-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage4-binutils: configure-stage4-binutils
+configure-stage4-binutils:
+ @$(MAKE) stage4-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-binutils: all-stage4-binutils
+all-stage4-binutils: configure-stage4-binutils
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-binutils: clean-stage4-binutils
+clean-stage4-binutils:
+ @[ -f binutils/Makefile ] || [ -f stage4-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stage4-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage4-gas maybe-configure-stage4-gas
+.PHONY: all-stage4-gas maybe-all-stage4-gas
+.PHONY: clean-stage4-gas maybe-clean-stage4-gas
+
+maybe-configure-stage4-gas:
+maybe-all-stage4-gas:
+maybe-clean-stage4-gas:
+
+@if gas-bootstrap
+maybe-configure-stage4-gas: configure-stage4-gas
+configure-stage4-gas:
+ @$(MAKE) stage4-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-gas: all-stage4-gas
+all-stage4-gas: configure-stage4-gas
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-gas: clean-stage4-gas
+clean-stage4-gas:
+ @[ -f gas/Makefile ] || [ -f stage4-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stage4-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage4-gcc maybe-configure-stage4-gcc
+.PHONY: all-stage4-gcc maybe-all-stage4-gcc
+.PHONY: clean-stage4-gcc maybe-clean-stage4-gcc
+
+maybe-configure-stage4-gcc:
+maybe-all-stage4-gcc:
+maybe-clean-stage4-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage4-gcc: configure-stage4-gcc
+configure-stage4-gcc:
+ @$(MAKE) stage4-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-gcc: all-stage4-gcc
+all-stage4-gcc: configure-stage4-gcc
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage4-gcc: clean-stage4-gcc
+clean-stage4-gcc:
+ @[ -f gcc/Makefile ] || [ -f stage4-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stage4-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage4-intl maybe-configure-stage4-intl
+.PHONY: all-stage4-intl maybe-all-stage4-intl
+.PHONY: clean-stage4-intl maybe-clean-stage4-intl
+
+maybe-configure-stage4-intl:
+maybe-all-stage4-intl:
+maybe-clean-stage4-intl:
+
+@if intl-bootstrap
+maybe-configure-stage4-intl: configure-stage4-intl
+configure-stage4-intl:
+ @$(MAKE) stage4-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-intl: all-stage4-intl
+all-stage4-intl: configure-stage4-intl
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-intl: clean-stage4-intl
+clean-stage4-intl:
+ @[ -f intl/Makefile ] || [ -f stage4-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stage4-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage4-ld maybe-configure-stage4-ld
+.PHONY: all-stage4-ld maybe-all-stage4-ld
+.PHONY: clean-stage4-ld maybe-clean-stage4-ld
+
+maybe-configure-stage4-ld:
+maybe-all-stage4-ld:
+maybe-clean-stage4-ld:
+
+@if ld-bootstrap
+maybe-configure-stage4-ld: configure-stage4-ld
+configure-stage4-ld:
+ @$(MAKE) stage4-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-ld: all-stage4-ld
+all-stage4-ld: configure-stage4-ld
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-ld: clean-stage4-ld
+clean-stage4-ld:
+ @[ -f ld/Makefile ] || [ -f stage4-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stage4-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage4-libcpp maybe-configure-stage4-libcpp
+.PHONY: all-stage4-libcpp maybe-all-stage4-libcpp
+.PHONY: clean-stage4-libcpp maybe-clean-stage4-libcpp
+
+maybe-configure-stage4-libcpp:
+maybe-all-stage4-libcpp:
+maybe-clean-stage4-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage4-libcpp: configure-stage4-libcpp
+configure-stage4-libcpp:
+ @$(MAKE) stage4-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-libcpp: all-stage4-libcpp
+all-stage4-libcpp: configure-stage4-libcpp
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-libcpp: clean-stage4-libcpp
+clean-stage4-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stage4-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stage4-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage4-libiberty maybe-configure-stage4-libiberty
+.PHONY: all-stage4-libiberty maybe-all-stage4-libiberty
+.PHONY: clean-stage4-libiberty maybe-clean-stage4-libiberty
+
+maybe-configure-stage4-libiberty:
+maybe-all-stage4-libiberty:
+maybe-clean-stage4-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage4-libiberty: configure-stage4-libiberty
+configure-stage4-libiberty:
+ @$(MAKE) stage4-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-libiberty: all-stage4-libiberty
+all-stage4-libiberty: configure-stage4-libiberty
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-libiberty: clean-stage4-libiberty
+clean-stage4-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stage4-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stage4-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage4-zlib maybe-configure-stage4-zlib
+.PHONY: all-stage4-zlib maybe-all-stage4-zlib
+.PHONY: clean-stage4-zlib maybe-clean-stage4-zlib
+
+maybe-configure-stage4-zlib:
+maybe-all-stage4-zlib:
+maybe-clean-stage4-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage4-zlib: configure-stage4-zlib
+configure-stage4-zlib:
+ @$(MAKE) stage4-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage 4 in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stage4-zlib: all-stage4-zlib
+all-stage4-zlib: configure-stage4-zlib
+ @$(MAKE) stage4-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+
+
+maybe-clean-stage4-zlib: clean-stage4-zlib
+clean-stage4-zlib:
+ @[ -f zlib/Makefile ] || [ -f stage4-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stage4-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ clean
+@endif zlib-bootstrap
+
+
# FIXME: Will not need to be conditional when toplevel bootstrap is the
# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
compare3:
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage3-lean; then \
+ @if test -f stage3-lean; then \
echo Cannot compare object files as stage 3 was deleted. ; \
exit 0 ; \
fi; \
- : $(MAKE); $(stage); \
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
rm -f .bad_compare ; \
- echo Comparing stages 3 and 4 ; \
cd stage4-gcc; \
files=`find . -name "*$(objext)" -print` ; \
cd .. ; \
for file in $${files} ; do \
f1=$$r/stage3-gcc/$$file; f2=$$r/stage4-gcc/$$file; \
@do_compare@ > /dev/null 2>&1; \
- if test $$? -eq 1; then \
- case $$file in \
- ./cc*-checksum$(objext) | ./libgcc/* ) \
- echo warning: $$file differs ;; \
- *) \
- echo $$file differs >> .bad_compare ;; \
- esac ; \
- fi ; \
+ test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \
done ; \
if [ -f .bad_compare ]; then \
echo "Bootstrap comparison failure!"; \
cat .bad_compare; \
exit 1; \
else \
- echo Comparison successful.; \
+ true; \
fi ; \
$(STAMP) compare3
- if $(LEAN); then \
- rm -rf stage3-*; \
- $(STAMP) stage3-lean; \
- fi
+ @bootstrap_lean@-rm -rf stage3-* ; $(STAMP) stage3-lean
-.PHONY: bootstrap4 bootstrap4-lean
-bootstrap4:
- echo stage4 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage4-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
-
-bootstrap4-lean:
- echo stage4 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) LEAN=: stage4-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+.PHONY: bootstrap4
+bootstrap4: stage4-bubble compare3 all
# Rules to wipe a stage and all the following ones, also used for cleanstrap
distclean-stage3:: distclean-stage4
.PHONY: distclean-stage4
distclean-stage4::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stage4-* compare3
@@ -37551,170 +30808,701 @@ distclean-stage4::
.PHONY: stageprofile-start stageprofile-end
stageprofile-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stageprofile > stage_current ; \
- echo stageprofile > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stageprofile > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stageprofile-bfd ] || \
- mkdir stageprofile-bfd; \
- mv stageprofile-bfd bfd ; \
- mv stage1-bfd prev-bfd || test -f stage1-lean
+ @[ -d stageprofile-bfd ] || mkdir stageprofile-bfd; \
+ set stageprofile-bfd bfd ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-bfd prev-bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stageprofile-opcodes ] || \
- mkdir stageprofile-opcodes; \
- mv stageprofile-opcodes opcodes ; \
- mv stage1-opcodes prev-opcodes || test -f stage1-lean
+ @[ -d stageprofile-opcodes ] || mkdir stageprofile-opcodes; \
+ set stageprofile-opcodes opcodes ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-opcodes prev-opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stageprofile-binutils ] || \
- mkdir stageprofile-binutils; \
- mv stageprofile-binutils binutils ; \
- mv stage1-binutils prev-binutils || test -f stage1-lean
+ @[ -d stageprofile-binutils ] || mkdir stageprofile-binutils; \
+ set stageprofile-binutils binutils ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-binutils prev-binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stageprofile-gas ] || \
- mkdir stageprofile-gas; \
- mv stageprofile-gas gas ; \
- mv stage1-gas prev-gas || test -f stage1-lean
+ @[ -d stageprofile-gas ] || mkdir stageprofile-gas; \
+ set stageprofile-gas gas ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gas prev-gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stageprofile-gcc ] || \
- mkdir stageprofile-gcc; \
- mv stageprofile-gcc gcc ; \
- mv stage1-gcc prev-gcc || test -f stage1-lean
+ @[ -d stageprofile-gcc ] || mkdir stageprofile-gcc; \
+ set stageprofile-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gcc prev-gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stageprofile-intl ] || \
- mkdir stageprofile-intl; \
- mv stageprofile-intl intl ; \
- mv stage1-intl prev-intl || test -f stage1-lean
+ @[ -d stageprofile-intl ] || mkdir stageprofile-intl; \
+ set stageprofile-intl intl ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-intl prev-intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stageprofile-ld ] || \
- mkdir stageprofile-ld; \
- mv stageprofile-ld ld ; \
- mv stage1-ld prev-ld || test -f stage1-lean
+ @[ -d stageprofile-ld ] || mkdir stageprofile-ld; \
+ set stageprofile-ld ld ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-ld prev-ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stageprofile-libcpp ] || \
- mkdir stageprofile-libcpp; \
- mv stageprofile-libcpp libcpp ; \
- mv stage1-libcpp prev-libcpp || test -f stage1-lean
+ @[ -d stageprofile-libcpp ] || mkdir stageprofile-libcpp; \
+ set stageprofile-libcpp libcpp ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libcpp prev-libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stageprofile-libdecnumber ] || \
- mkdir stageprofile-libdecnumber; \
- mv stageprofile-libdecnumber libdecnumber ; \
- mv stage1-libdecnumber prev-libdecnumber || test -f stage1-lean
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stageprofile-libiberty ] || \
- mkdir stageprofile-libiberty; \
- mv stageprofile-libiberty libiberty ; \
- mv stage1-libiberty prev-libiberty || test -f stage1-lean
+ @[ -d stageprofile-libiberty ] || mkdir stageprofile-libiberty; \
+ set stageprofile-libiberty libiberty ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libiberty prev-libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stageprofile-zlib ] || \
- mkdir stageprofile-zlib; \
- mv stageprofile-zlib zlib ; \
- mv stage1-zlib prev-zlib || test -f stage1-lean
+ @[ -d stageprofile-zlib ] || mkdir stageprofile-zlib; \
+ set stageprofile-zlib zlib ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-zlib prev-zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stageprofile-$(TARGET_SUBDIR) ] || \
- mkdir stageprofile-$(TARGET_SUBDIR); \
- mv stageprofile-$(TARGET_SUBDIR) $(TARGET_SUBDIR) ; \
- mv stage1-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stage1-lean
-stageprofile-end::
+stageprofile-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stageprofile-bfd ; \
- mv prev-bfd stage1-bfd ; : ; \
- fi
+ @set bfd stageprofile-bfd ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stageprofile-opcodes ; \
- mv prev-opcodes stage1-opcodes ; : ; \
- fi
+ @set opcodes stageprofile-opcodes ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stageprofile-binutils ; \
- mv prev-binutils stage1-binutils ; : ; \
- fi
+ @set binutils stageprofile-binutils ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stageprofile-gas ; \
- mv prev-gas stage1-gas ; : ; \
- fi
+ @set gas stageprofile-gas ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stageprofile-gcc ; \
- mv prev-gcc stage1-gcc ; : ; \
- fi
+ @set gcc stageprofile-gcc ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stageprofile-intl ; \
- mv prev-intl stage1-intl ; : ; \
- fi
+ @set intl stageprofile-intl ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stageprofile-ld ; \
- mv prev-ld stage1-ld ; : ; \
- fi
+ @set ld stageprofile-ld ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stageprofile-libcpp ; \
- mv prev-libcpp stage1-libcpp ; : ; \
- fi
+ @set libcpp stageprofile-libcpp ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stageprofile-libdecnumber ; \
- mv prev-libdecnumber stage1-libdecnumber ; : ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stageprofile-libiberty ; \
- mv prev-libiberty stage1-libiberty ; : ; \
- fi
+ @set libiberty stageprofile-libiberty ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stageprofile-zlib ; \
- mv prev-zlib stage1-zlib ; : ; \
- fi
+ @set zlib stageprofile-zlib ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-zlib stage1-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stageprofile-$(TARGET_SUBDIR) ; \
- mv prev-$(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR) ; : ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage profile. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage profile. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stageprofile-bubble
stageprofile-bubble:: stage1-bubble
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stageprofile-lean || test -f stage1-lean ; then \
+ @if test -f stageprofile-lean || test -f stage1-lean ; then \
echo Skipping rebuild of stageprofile ; \
else \
- $(MAKE) stageprofile-start; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stageprofile; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stageprofile; \
fi
.PHONY: all-stageprofile clean-stageprofile
+all-stageprofile: \
+ maybe-all-stageprofile-bfd \
+ maybe-all-stageprofile-opcodes \
+ maybe-all-stageprofile-binutils \
+ maybe-all-stageprofile-gas \
+ maybe-all-stageprofile-gcc \
+ maybe-all-stageprofile-intl \
+ maybe-all-stageprofile-ld \
+ maybe-all-stageprofile-libcpp \
+ maybe-all-stageprofile-libiberty \
+ maybe-all-stageprofile-zlib
+
do-clean: clean-stageprofile
+clean-stageprofile: \
+ maybe-clean-stageprofile-bfd \
+ maybe-clean-stageprofile-opcodes \
+ maybe-clean-stageprofile-binutils \
+ maybe-clean-stageprofile-gas \
+ maybe-clean-stageprofile-gcc \
+ maybe-clean-stageprofile-intl \
+ maybe-clean-stageprofile-ld \
+ maybe-clean-stageprofile-libcpp \
+ maybe-clean-stageprofile-libiberty \
+ maybe-clean-stageprofile-zlib
+
+
+.PHONY: configure-stageprofile-bfd maybe-configure-stageprofile-bfd
+.PHONY: all-stageprofile-bfd maybe-all-stageprofile-bfd
+.PHONY: clean-stageprofile-bfd maybe-clean-stageprofile-bfd
+
+maybe-configure-stageprofile-bfd:
+maybe-all-stageprofile-bfd:
+maybe-clean-stageprofile-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stageprofile-bfd: configure-stageprofile-bfd
+configure-stageprofile-bfd:
+ @$(MAKE) stageprofile-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-bfd: all-stageprofile-bfd
+all-stageprofile-bfd: configure-stageprofile-bfd
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-bfd: clean-stageprofile-bfd
+clean-stageprofile-bfd:
+ @[ -f bfd/Makefile ] || [ -f stageprofile-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stageprofile-opcodes maybe-configure-stageprofile-opcodes
+.PHONY: all-stageprofile-opcodes maybe-all-stageprofile-opcodes
+.PHONY: clean-stageprofile-opcodes maybe-clean-stageprofile-opcodes
+
+maybe-configure-stageprofile-opcodes:
+maybe-all-stageprofile-opcodes:
+maybe-clean-stageprofile-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stageprofile-opcodes: configure-stageprofile-opcodes
+configure-stageprofile-opcodes:
+ @$(MAKE) stageprofile-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-opcodes: all-stageprofile-opcodes
+all-stageprofile-opcodes: configure-stageprofile-opcodes
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-opcodes: clean-stageprofile-opcodes
+clean-stageprofile-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stageprofile-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stageprofile-binutils maybe-configure-stageprofile-binutils
+.PHONY: all-stageprofile-binutils maybe-all-stageprofile-binutils
+.PHONY: clean-stageprofile-binutils maybe-clean-stageprofile-binutils
+
+maybe-configure-stageprofile-binutils:
+maybe-all-stageprofile-binutils:
+maybe-clean-stageprofile-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stageprofile-binutils: configure-stageprofile-binutils
+configure-stageprofile-binutils:
+ @$(MAKE) stageprofile-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-binutils: all-stageprofile-binutils
+all-stageprofile-binutils: configure-stageprofile-binutils
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-binutils: clean-stageprofile-binutils
+clean-stageprofile-binutils:
+ @[ -f binutils/Makefile ] || [ -f stageprofile-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stageprofile-gas maybe-configure-stageprofile-gas
+.PHONY: all-stageprofile-gas maybe-all-stageprofile-gas
+.PHONY: clean-stageprofile-gas maybe-clean-stageprofile-gas
+
+maybe-configure-stageprofile-gas:
+maybe-all-stageprofile-gas:
+maybe-clean-stageprofile-gas:
+
+@if gas-bootstrap
+maybe-configure-stageprofile-gas: configure-stageprofile-gas
+configure-stageprofile-gas:
+ @$(MAKE) stageprofile-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-gas: all-stageprofile-gas
+all-stageprofile-gas: configure-stageprofile-gas
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-gas: clean-stageprofile-gas
+clean-stageprofile-gas:
+ @[ -f gas/Makefile ] || [ -f stageprofile-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stageprofile-gcc maybe-configure-stageprofile-gcc
+.PHONY: all-stageprofile-gcc maybe-all-stageprofile-gcc
+.PHONY: clean-stageprofile-gcc maybe-clean-stageprofile-gcc
+
+maybe-configure-stageprofile-gcc:
+maybe-all-stageprofile-gcc:
+maybe-clean-stageprofile-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stageprofile-gcc: configure-stageprofile-gcc
+configure-stageprofile-gcc:
+ @$(MAKE) stageprofile-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-gcc: all-stageprofile-gcc
+all-stageprofile-gcc: configure-stageprofile-gcc
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stageprofile-gcc: clean-stageprofile-gcc
+clean-stageprofile-gcc:
+ @[ -f gcc/Makefile ] || [ -f stageprofile-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stageprofile-intl maybe-configure-stageprofile-intl
+.PHONY: all-stageprofile-intl maybe-all-stageprofile-intl
+.PHONY: clean-stageprofile-intl maybe-clean-stageprofile-intl
+
+maybe-configure-stageprofile-intl:
+maybe-all-stageprofile-intl:
+maybe-clean-stageprofile-intl:
+
+@if intl-bootstrap
+maybe-configure-stageprofile-intl: configure-stageprofile-intl
+configure-stageprofile-intl:
+ @$(MAKE) stageprofile-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-intl: all-stageprofile-intl
+all-stageprofile-intl: configure-stageprofile-intl
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-intl: clean-stageprofile-intl
+clean-stageprofile-intl:
+ @[ -f intl/Makefile ] || [ -f stageprofile-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stageprofile-ld maybe-configure-stageprofile-ld
+.PHONY: all-stageprofile-ld maybe-all-stageprofile-ld
+.PHONY: clean-stageprofile-ld maybe-clean-stageprofile-ld
+
+maybe-configure-stageprofile-ld:
+maybe-all-stageprofile-ld:
+maybe-clean-stageprofile-ld:
+
+@if ld-bootstrap
+maybe-configure-stageprofile-ld: configure-stageprofile-ld
+configure-stageprofile-ld:
+ @$(MAKE) stageprofile-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-ld: all-stageprofile-ld
+all-stageprofile-ld: configure-stageprofile-ld
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-ld: clean-stageprofile-ld
+clean-stageprofile-ld:
+ @[ -f ld/Makefile ] || [ -f stageprofile-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stageprofile-libcpp maybe-configure-stageprofile-libcpp
+.PHONY: all-stageprofile-libcpp maybe-all-stageprofile-libcpp
+.PHONY: clean-stageprofile-libcpp maybe-clean-stageprofile-libcpp
+
+maybe-configure-stageprofile-libcpp:
+maybe-all-stageprofile-libcpp:
+maybe-clean-stageprofile-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stageprofile-libcpp: configure-stageprofile-libcpp
+configure-stageprofile-libcpp:
+ @$(MAKE) stageprofile-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-libcpp: all-stageprofile-libcpp
+all-stageprofile-libcpp: configure-stageprofile-libcpp
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-libcpp: clean-stageprofile-libcpp
+clean-stageprofile-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stageprofile-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stageprofile-libiberty maybe-configure-stageprofile-libiberty
+.PHONY: all-stageprofile-libiberty maybe-all-stageprofile-libiberty
+.PHONY: clean-stageprofile-libiberty maybe-clean-stageprofile-libiberty
+
+maybe-configure-stageprofile-libiberty:
+maybe-all-stageprofile-libiberty:
+maybe-clean-stageprofile-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stageprofile-libiberty: configure-stageprofile-libiberty
+configure-stageprofile-libiberty:
+ @$(MAKE) stageprofile-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-libiberty: all-stageprofile-libiberty
+all-stageprofile-libiberty: configure-stageprofile-libiberty
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-libiberty: clean-stageprofile-libiberty
+clean-stageprofile-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stageprofile-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stageprofile-zlib maybe-configure-stageprofile-zlib
+.PHONY: all-stageprofile-zlib maybe-all-stageprofile-zlib
+.PHONY: clean-stageprofile-zlib maybe-clean-stageprofile-zlib
+
+maybe-configure-stageprofile-zlib:
+maybe-all-stageprofile-zlib:
+maybe-clean-stageprofile-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stageprofile-zlib: configure-stageprofile-zlib
+configure-stageprofile-zlib:
+ @$(MAKE) stageprofile-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage profile in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stageprofile-zlib: all-stageprofile-zlib
+all-stageprofile-zlib: configure-stageprofile-zlib
+ @$(MAKE) stageprofile-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"
+
+maybe-clean-stageprofile-zlib: clean-stageprofile-zlib
+clean-stageprofile-zlib:
+ @[ -f zlib/Makefile ] || [ -f stageprofile-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stageprofile-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" clean
+@endif zlib-bootstrap
+
+
# FIXME: Will not need to be conditional when toplevel bootstrap is the
# only possibility, but now it conflicts with no-bootstrap rules
@@ -37727,7 +31515,7 @@ do-clean: clean-stageprofile
distclean-stage1:: distclean-stageprofile
.PHONY: distclean-stageprofile
distclean-stageprofile::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stageprofile-*
@@ -37737,204 +31525,714 @@ distclean-stageprofile::
.PHONY: stagefeedback-start stagefeedback-end
stagefeedback-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stagefeedback > stage_current ; \
- echo stagefeedback > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)
+ echo stagefeedback > stage_last
@if bfd
- @cd $(HOST_SUBDIR); [ -d stagefeedback-bfd ] || \
- mkdir stagefeedback-bfd; \
- mv stagefeedback-bfd bfd ; \
- mv stageprofile-bfd prev-bfd || test -f stageprofile-lean
+ @[ -d stagefeedback-bfd ] || mkdir stagefeedback-bfd; \
+ set stagefeedback-bfd bfd ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-bfd prev-bfd ; @CREATE_LINK_TO_DIR@
@endif bfd
@if opcodes
- @cd $(HOST_SUBDIR); [ -d stagefeedback-opcodes ] || \
- mkdir stagefeedback-opcodes; \
- mv stagefeedback-opcodes opcodes ; \
- mv stageprofile-opcodes prev-opcodes || test -f stageprofile-lean
+ @[ -d stagefeedback-opcodes ] || mkdir stagefeedback-opcodes; \
+ set stagefeedback-opcodes opcodes ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-opcodes prev-opcodes ; @CREATE_LINK_TO_DIR@
@endif opcodes
@if binutils
- @cd $(HOST_SUBDIR); [ -d stagefeedback-binutils ] || \
- mkdir stagefeedback-binutils; \
- mv stagefeedback-binutils binutils ; \
- mv stageprofile-binutils prev-binutils || test -f stageprofile-lean
+ @[ -d stagefeedback-binutils ] || mkdir stagefeedback-binutils; \
+ set stagefeedback-binutils binutils ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-binutils prev-binutils ; @CREATE_LINK_TO_DIR@
@endif binutils
@if gas
- @cd $(HOST_SUBDIR); [ -d stagefeedback-gas ] || \
- mkdir stagefeedback-gas; \
- mv stagefeedback-gas gas ; \
- mv stageprofile-gas prev-gas || test -f stageprofile-lean
+ @[ -d stagefeedback-gas ] || mkdir stagefeedback-gas; \
+ set stagefeedback-gas gas ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gas prev-gas ; @CREATE_LINK_TO_DIR@
@endif gas
@if gcc
- @cd $(HOST_SUBDIR); [ -d stagefeedback-gcc ] || \
- mkdir stagefeedback-gcc; \
- mv stagefeedback-gcc gcc ; \
- mv stageprofile-gcc prev-gcc || test -f stageprofile-lean
+ @[ -d stagefeedback-gcc ] || mkdir stagefeedback-gcc; \
+ set stagefeedback-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-gcc prev-gcc ; @CREATE_LINK_TO_DIR@
@endif gcc
@if intl
- @cd $(HOST_SUBDIR); [ -d stagefeedback-intl ] || \
- mkdir stagefeedback-intl; \
- mv stagefeedback-intl intl ; \
- mv stageprofile-intl prev-intl || test -f stageprofile-lean
+ @[ -d stagefeedback-intl ] || mkdir stagefeedback-intl; \
+ set stagefeedback-intl intl ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-intl prev-intl ; @CREATE_LINK_TO_DIR@
@endif intl
@if ld
- @cd $(HOST_SUBDIR); [ -d stagefeedback-ld ] || \
- mkdir stagefeedback-ld; \
- mv stagefeedback-ld ld ; \
- mv stageprofile-ld prev-ld || test -f stageprofile-lean
+ @[ -d stagefeedback-ld ] || mkdir stagefeedback-ld; \
+ set stagefeedback-ld ld ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-ld prev-ld ; @CREATE_LINK_TO_DIR@
@endif ld
@if libcpp
- @cd $(HOST_SUBDIR); [ -d stagefeedback-libcpp ] || \
- mkdir stagefeedback-libcpp; \
- mv stagefeedback-libcpp libcpp ; \
- mv stageprofile-libcpp prev-libcpp || test -f stageprofile-lean
+ @[ -d stagefeedback-libcpp ] || mkdir stagefeedback-libcpp; \
+ set stagefeedback-libcpp libcpp ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libcpp prev-libcpp ; @CREATE_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @cd $(HOST_SUBDIR); [ -d stagefeedback-libdecnumber ] || \
- mkdir stagefeedback-libdecnumber; \
- mv stagefeedback-libdecnumber libdecnumber ; \
- mv stageprofile-libdecnumber prev-libdecnumber || test -f stageprofile-lean
-@endif libdecnumber
@if libiberty
- @cd $(HOST_SUBDIR); [ -d stagefeedback-libiberty ] || \
- mkdir stagefeedback-libiberty; \
- mv stagefeedback-libiberty libiberty ; \
- mv stageprofile-libiberty prev-libiberty || test -f stageprofile-lean
+ @[ -d stagefeedback-libiberty ] || mkdir stagefeedback-libiberty; \
+ set stagefeedback-libiberty libiberty ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-libiberty prev-libiberty ; @CREATE_LINK_TO_DIR@
@endif libiberty
@if zlib
- @cd $(HOST_SUBDIR); [ -d stagefeedback-zlib ] || \
- mkdir stagefeedback-zlib; \
- mv stagefeedback-zlib zlib ; \
- mv stageprofile-zlib prev-zlib || test -f stageprofile-lean
+ @[ -d stagefeedback-zlib ] || mkdir stagefeedback-zlib; \
+ set stagefeedback-zlib zlib ; @CREATE_LINK_TO_DIR@ ; \
+ set stage1-zlib prev-zlib ; @CREATE_LINK_TO_DIR@
@endif zlib
- @[ -d stagefeedback-$(TARGET_SUBDIR) ] || \
- mkdir stagefeedback-$(TARGET_SUBDIR); \
- mv stagefeedback-$(TARGET_SUBDIR) $(TARGET_SUBDIR) ; \
- mv stageprofile-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stageprofile-lean
-stagefeedback-end::
+stagefeedback-end::
+ @rm -f stage_current
@if bfd
- @if test -d $(HOST_SUBDIR)/bfd ; then \
- cd $(HOST_SUBDIR); mv bfd stagefeedback-bfd ; \
- mv prev-bfd stageprofile-bfd ; : ; \
- fi
+ @set bfd stagefeedback-bfd ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@
@endif bfd
@if opcodes
- @if test -d $(HOST_SUBDIR)/opcodes ; then \
- cd $(HOST_SUBDIR); mv opcodes stagefeedback-opcodes ; \
- mv prev-opcodes stageprofile-opcodes ; : ; \
- fi
+ @set opcodes stagefeedback-opcodes ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@
@endif opcodes
@if binutils
- @if test -d $(HOST_SUBDIR)/binutils ; then \
- cd $(HOST_SUBDIR); mv binutils stagefeedback-binutils ; \
- mv prev-binutils stageprofile-binutils ; : ; \
- fi
+ @set binutils stagefeedback-binutils ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@
@endif binutils
@if gas
- @if test -d $(HOST_SUBDIR)/gas ; then \
- cd $(HOST_SUBDIR); mv gas stagefeedback-gas ; \
- mv prev-gas stageprofile-gas ; : ; \
- fi
+ @set gas stagefeedback-gas ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@
@endif gas
@if gcc
- @if test -d $(HOST_SUBDIR)/gcc ; then \
- cd $(HOST_SUBDIR); mv gcc stagefeedback-gcc ; \
- mv prev-gcc stageprofile-gcc ; : ; \
- fi
+ @set gcc stagefeedback-gcc ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@
@endif gcc
@if intl
- @if test -d $(HOST_SUBDIR)/intl ; then \
- cd $(HOST_SUBDIR); mv intl stagefeedback-intl ; \
- mv prev-intl stageprofile-intl ; : ; \
- fi
+ @set intl stagefeedback-intl ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@
@endif intl
@if ld
- @if test -d $(HOST_SUBDIR)/ld ; then \
- cd $(HOST_SUBDIR); mv ld stagefeedback-ld ; \
- mv prev-ld stageprofile-ld ; : ; \
- fi
+ @set ld stagefeedback-ld ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@
@endif ld
@if libcpp
- @if test -d $(HOST_SUBDIR)/libcpp ; then \
- cd $(HOST_SUBDIR); mv libcpp stagefeedback-libcpp ; \
- mv prev-libcpp stageprofile-libcpp ; : ; \
- fi
+ @set libcpp stagefeedback-libcpp ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@
@endif libcpp
-@if libdecnumber
- @if test -d $(HOST_SUBDIR)/libdecnumber ; then \
- cd $(HOST_SUBDIR); mv libdecnumber stagefeedback-libdecnumber ; \
- mv prev-libdecnumber stageprofile-libdecnumber ; : ; \
- fi
-@endif libdecnumber
@if libiberty
- @if test -d $(HOST_SUBDIR)/libiberty ; then \
- cd $(HOST_SUBDIR); mv libiberty stagefeedback-libiberty ; \
- mv prev-libiberty stageprofile-libiberty ; : ; \
- fi
+ @set libiberty stagefeedback-libiberty ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@
@endif libiberty
@if zlib
- @if test -d $(HOST_SUBDIR)/zlib ; then \
- cd $(HOST_SUBDIR); mv zlib stagefeedback-zlib ; \
- mv prev-zlib stageprofile-zlib ; : ; \
- fi
+ @set zlib stagefeedback-zlib ; @UNDO_LINK_TO_DIR@ ; \
+ set prev-zlib stage1-zlib ; @UNDO_LINK_TO_DIR@
@endif zlib
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stagefeedback-$(TARGET_SUBDIR) ; \
- mv prev-$(TARGET_SUBDIR) stageprofile-$(TARGET_SUBDIR) ; : ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage feedback. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage feedback. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stagefeedback-bubble
-stagefeedback-bubble:: stageprofile-bubble
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stagefeedback-lean || test -f stageprofile-lean ; then \
+stagefeedback-bubble:: stage1-bubble
+ @if test -f stagefeedback-lean || test -f stage1-lean ; then \
echo Skipping rebuild of stagefeedback ; \
else \
- $(MAKE) stagefeedback-start; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stagefeedback; \
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stagefeedback; \
fi
.PHONY: all-stagefeedback clean-stagefeedback
+all-stagefeedback: \
+ maybe-all-stagefeedback-bfd \
+ maybe-all-stagefeedback-opcodes \
+ maybe-all-stagefeedback-binutils \
+ maybe-all-stagefeedback-gas \
+ maybe-all-stagefeedback-gcc \
+ maybe-all-stagefeedback-intl \
+ maybe-all-stagefeedback-ld \
+ maybe-all-stagefeedback-libcpp \
+ maybe-all-stagefeedback-libiberty \
+ maybe-all-stagefeedback-zlib
+
do-clean: clean-stagefeedback
+clean-stagefeedback: \
+ maybe-clean-stagefeedback-bfd \
+ maybe-clean-stagefeedback-opcodes \
+ maybe-clean-stagefeedback-binutils \
+ maybe-clean-stagefeedback-gas \
+ maybe-clean-stagefeedback-gcc \
+ maybe-clean-stagefeedback-intl \
+ maybe-clean-stagefeedback-ld \
+ maybe-clean-stagefeedback-libcpp \
+ maybe-clean-stagefeedback-libiberty \
+ maybe-clean-stagefeedback-zlib
+
+
+.PHONY: configure-stagefeedback-bfd maybe-configure-stagefeedback-bfd
+.PHONY: all-stagefeedback-bfd maybe-all-stagefeedback-bfd
+.PHONY: clean-stagefeedback-bfd maybe-clean-stagefeedback-bfd
+
+maybe-configure-stagefeedback-bfd:
+maybe-all-stagefeedback-bfd:
+maybe-clean-stagefeedback-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stagefeedback-bfd: configure-stagefeedback-bfd
+configure-stagefeedback-bfd:
+ @$(MAKE) stagefeedback-start
+ @[ -f bfd/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in bfd ; \
+ cd bfd || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+ libsrcdir="$$s/bfd";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-bfd: all-stagefeedback-bfd
+all-stagefeedback-bfd: configure-stagefeedback-bfd
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-bfd: clean-stagefeedback-bfd
+clean-stagefeedback-bfd:
+ @[ -f bfd/Makefile ] || [ -f stagefeedback-bfd/Makefile ] \
+ || exit 0 ; \
+ [ -f bfd/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd bfd && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stagefeedback-opcodes maybe-configure-stagefeedback-opcodes
+.PHONY: all-stagefeedback-opcodes maybe-all-stagefeedback-opcodes
+.PHONY: clean-stagefeedback-opcodes maybe-clean-stagefeedback-opcodes
+
+maybe-configure-stagefeedback-opcodes:
+maybe-all-stagefeedback-opcodes:
+maybe-clean-stagefeedback-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stagefeedback-opcodes: configure-stagefeedback-opcodes
+configure-stagefeedback-opcodes:
+ @$(MAKE) stagefeedback-start
+ @[ -f opcodes/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in opcodes ; \
+ cd opcodes || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+ libsrcdir="$$s/opcodes";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-opcodes: all-stagefeedback-opcodes
+all-stagefeedback-opcodes: configure-stagefeedback-opcodes
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-opcodes: clean-stagefeedback-opcodes
+clean-stagefeedback-opcodes:
+ @[ -f opcodes/Makefile ] || [ -f stagefeedback-opcodes/Makefile ] \
+ || exit 0 ; \
+ [ -f opcodes/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd opcodes && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stagefeedback-binutils maybe-configure-stagefeedback-binutils
+.PHONY: all-stagefeedback-binutils maybe-all-stagefeedback-binutils
+.PHONY: clean-stagefeedback-binutils maybe-clean-stagefeedback-binutils
+
+maybe-configure-stagefeedback-binutils:
+maybe-all-stagefeedback-binutils:
+maybe-clean-stagefeedback-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stagefeedback-binutils: configure-stagefeedback-binutils
+configure-stagefeedback-binutils:
+ @$(MAKE) stagefeedback-start
+ @[ -f binutils/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in binutils ; \
+ cd binutils || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+ libsrcdir="$$s/binutils";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-binutils: all-stagefeedback-binutils
+all-stagefeedback-binutils: configure-stagefeedback-binutils
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-binutils: clean-stagefeedback-binutils
+clean-stagefeedback-binutils:
+ @[ -f binutils/Makefile ] || [ -f stagefeedback-binutils/Makefile ] \
+ || exit 0 ; \
+ [ -f binutils/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd binutils && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stagefeedback-gas maybe-configure-stagefeedback-gas
+.PHONY: all-stagefeedback-gas maybe-all-stagefeedback-gas
+.PHONY: clean-stagefeedback-gas maybe-clean-stagefeedback-gas
+
+maybe-configure-stagefeedback-gas:
+maybe-all-stagefeedback-gas:
+maybe-clean-stagefeedback-gas:
+
+@if gas-bootstrap
+maybe-configure-stagefeedback-gas: configure-stagefeedback-gas
+configure-stagefeedback-gas:
+ @$(MAKE) stagefeedback-start
+ @[ -f gas/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in gas ; \
+ cd gas || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gas"; \
+ libsrcdir="$$s/gas";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-gas: all-stagefeedback-gas
+all-stagefeedback-gas: configure-stagefeedback-gas
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-gas: clean-stagefeedback-gas
+clean-stagefeedback-gas:
+ @[ -f gas/Makefile ] || [ -f stagefeedback-gas/Makefile ] \
+ || exit 0 ; \
+ [ -f gas/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd gas && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stagefeedback-gcc maybe-configure-stagefeedback-gcc
+.PHONY: all-stagefeedback-gcc maybe-all-stagefeedback-gcc
+.PHONY: clean-stagefeedback-gcc maybe-clean-stagefeedback-gcc
+
+maybe-configure-stagefeedback-gcc:
+maybe-all-stagefeedback-gcc:
+maybe-clean-stagefeedback-gcc:
-# FIXME: Will not need to be conditional when toplevel bootstrap is the
-# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
+maybe-configure-stagefeedback-gcc: configure-stagefeedback-gcc
+configure-stagefeedback-gcc:
+ @$(MAKE) stagefeedback-start
+ @[ -f gcc/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in gcc ; \
+ cd gcc || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+ libsrcdir="$$s/gcc";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-gcc: all-stagefeedback-gcc
+all-stagefeedback-gcc: configure-stagefeedback-gcc
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stagefeedback-gcc: clean-stagefeedback-gcc
+clean-stagefeedback-gcc:
+ @[ -f gcc/Makefile ] || [ -f stagefeedback-gcc/Makefile ] \
+ || exit 0 ; \
+ [ -f gcc/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd gcc && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+.PHONY: configure-stagefeedback-intl maybe-configure-stagefeedback-intl
+.PHONY: all-stagefeedback-intl maybe-all-stagefeedback-intl
+.PHONY: clean-stagefeedback-intl maybe-clean-stagefeedback-intl
-.PHONY: profiledbootstrap profiledbootstrap-lean
-profiledbootstrap:
- echo stagefeedback > stage_final
+maybe-configure-stagefeedback-intl:
+maybe-all-stagefeedback-intl:
+maybe-clean-stagefeedback-intl:
+
+@if intl-bootstrap
+maybe-configure-stagefeedback-intl: configure-stagefeedback-intl
+configure-stagefeedback-intl:
+ @$(MAKE) stagefeedback-start
+ @[ -f intl/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in intl ; \
+ cd intl || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/intl"; \
+ libsrcdir="$$s/intl";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-intl: all-stagefeedback-intl
+all-stagefeedback-intl: configure-stagefeedback-intl
+ @$(MAKE) stagefeedback-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stagefeedback-bubble
- @: $(MAKE); $(unstage)
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-intl: clean-stagefeedback-intl
+clean-stagefeedback-intl:
+ @[ -f intl/Makefile ] || [ -f stagefeedback-intl/Makefile ] \
+ || exit 0 ; \
+ [ -f intl/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd intl && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stagefeedback-ld maybe-configure-stagefeedback-ld
+.PHONY: all-stagefeedback-ld maybe-all-stagefeedback-ld
+.PHONY: clean-stagefeedback-ld maybe-clean-stagefeedback-ld
+
+maybe-configure-stagefeedback-ld:
+maybe-all-stagefeedback-ld:
+maybe-clean-stagefeedback-ld:
+
+@if ld-bootstrap
+maybe-configure-stagefeedback-ld: configure-stagefeedback-ld
+configure-stagefeedback-ld:
+ @$(MAKE) stagefeedback-start
+ @[ -f ld/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in ld ; \
+ cd ld || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/ld"; \
+ libsrcdir="$$s/ld";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-ld: all-stagefeedback-ld
+all-stagefeedback-ld: configure-stagefeedback-ld
+ @$(MAKE) stagefeedback-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
-profiledbootstrap-lean:
- echo stagefeedback > stage_final
+maybe-clean-stagefeedback-ld: clean-stagefeedback-ld
+clean-stagefeedback-ld:
+ @[ -f ld/Makefile ] || [ -f stagefeedback-ld/Makefile ] \
+ || exit 0 ; \
+ [ -f ld/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd ld && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stagefeedback-libcpp maybe-configure-stagefeedback-libcpp
+.PHONY: all-stagefeedback-libcpp maybe-all-stagefeedback-libcpp
+.PHONY: clean-stagefeedback-libcpp maybe-clean-stagefeedback-libcpp
+
+maybe-configure-stagefeedback-libcpp:
+maybe-all-stagefeedback-libcpp:
+maybe-clean-stagefeedback-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stagefeedback-libcpp: configure-stagefeedback-libcpp
+configure-stagefeedback-libcpp:
+ @$(MAKE) stagefeedback-start
+ @[ -f libcpp/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in libcpp ; \
+ cd libcpp || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+ libsrcdir="$$s/libcpp";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-libcpp: all-stagefeedback-libcpp
+all-stagefeedback-libcpp: configure-stagefeedback-libcpp
+ @$(MAKE) stagefeedback-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) LEAN=: stagefeedback-bubble
- @: $(MAKE); $(unstage)
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-libcpp: clean-stagefeedback-libcpp
+clean-stagefeedback-libcpp:
+ @[ -f libcpp/Makefile ] || [ -f stagefeedback-libcpp/Makefile ] \
+ || exit 0 ; \
+ [ -f libcpp/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd libcpp && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stagefeedback-libiberty maybe-configure-stagefeedback-libiberty
+.PHONY: all-stagefeedback-libiberty maybe-all-stagefeedback-libiberty
+.PHONY: clean-stagefeedback-libiberty maybe-clean-stagefeedback-libiberty
+
+maybe-configure-stagefeedback-libiberty:
+maybe-all-stagefeedback-libiberty:
+maybe-clean-stagefeedback-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stagefeedback-libiberty: configure-stagefeedback-libiberty
+configure-stagefeedback-libiberty:
+ @$(MAKE) stagefeedback-start
+ @[ -f libiberty/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in libiberty ; \
+ cd libiberty || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+ libsrcdir="$$s/libiberty";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-libiberty: all-stagefeedback-libiberty
+all-stagefeedback-libiberty: configure-stagefeedback-libiberty
+ @$(MAKE) stagefeedback-start
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-libiberty: clean-stagefeedback-libiberty
+clean-stagefeedback-libiberty:
+ @[ -f libiberty/Makefile ] || [ -f stagefeedback-libiberty/Makefile ] \
+ || exit 0 ; \
+ [ -f libiberty/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd libiberty && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stagefeedback-zlib maybe-configure-stagefeedback-zlib
+.PHONY: all-stagefeedback-zlib maybe-all-stagefeedback-zlib
+.PHONY: clean-stagefeedback-zlib maybe-clean-stagefeedback-zlib
+
+maybe-configure-stagefeedback-zlib:
+maybe-all-stagefeedback-zlib:
+maybe-clean-stagefeedback-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stagefeedback-zlib: configure-stagefeedback-zlib
+configure-stagefeedback-zlib:
+ @$(MAKE) stagefeedback-start
+ @[ -f zlib/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ echo Configuring stage feedback in zlib ; \
+ cd zlib || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/zlib"; \
+ libsrcdir="$$s/zlib";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ @stage2_werror_flag@
+
+maybe-all-stagefeedback-zlib: all-stagefeedback-zlib
+all-stagefeedback-zlib: configure-stagefeedback-zlib
+ @$(MAKE) stagefeedback-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(STAGE_HOST_EXPORTS) \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use"
+
+maybe-clean-stagefeedback-zlib: clean-stagefeedback-zlib
+clean-stagefeedback-zlib:
+ @[ -f zlib/Makefile ] || [ -f stagefeedback-zlib/Makefile ] \
+ || exit 0 ; \
+ [ -f zlib/Makefile ] || $(MAKE) stagefeedback-start ; \
+ cd zlib && \
+ $(MAKE) $(FLAGS_TO_PASS) \
+ $(POSTSTAGE1_FLAGS_TO_PASS) \
+ CFLAGS="$(BOOT_CFLAGS) -fprofile-use" clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
# Rules to wipe a stage and all the following ones, also used for cleanstrap
-distclean-stageprofile:: distclean-stagefeedback
+distclean-stage1:: distclean-stagefeedback
.PHONY: distclean-stagefeedback
distclean-stagefeedback::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stagefeedback-*
@@ -37942,86 +32240,83 @@ distclean-stagefeedback::
-stageprofile-end::
- $(MAKE) distclean-stagefeedback
-
stagefeedback-start::
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- for i in prev-*; do \
- j=`echo $$i | sed s/^prev-//` ; \
- cd $$r/$$i && \
- { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../'$$j'/&",' | $(SHELL) ; } && \
- { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../'$$j'/&",' | $(SHELL) ; } ; \
- done
+ cd stageprofile-gcc && \
+ { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
+ { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
-do-distclean: distclean-stage1
-
-# Provide a GCC build when we're building target libraries. This does
-# not work as a dependency, just as the minimum necessary to avoid errors.
-stage_last:
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage1-bubble
+profiledbootstrap:
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
+ $(HOST_EXPORTS) \
+ echo "Bootstrapping the compiler"; \
+ $(MAKE) stageprofile-bubble distclean-stagefeedback
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
+ echo "Building runtime libraries and training compiler"; \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
+ $(HOST_EXPORTS) \
+ echo "Building feedback based compiler"; \
+ $(MAKE) stagefeedback-bubble stagefeedback-end
@endif gcc-bootstrap
-.PHONY: restrap
-restrap:
- @: $(MAKE); $(stage)
- rm -rf stage1-$(TARGET_SUBDIR) stage2 stage3 stage4 stageprofile stagefeedback
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+@if gcc-bootstrap
+NOTPARALLEL = .NOTPARALLEL
+$(NOTPARALLEL):
+do-distclean: distclean-stage1
+@endif gcc-bootstrap
# --------------------------------------
# Dependencies between different modules
# --------------------------------------
# Generic dependencies for target modules on host stuff, especially gcc
-@if gcc-bootstrap
-configure-target-libstdc++-v3: stage_last
-configure-target-libmudflap: stage_last
-configure-target-libssp: stage_last
-configure-target-libgcc-math: stage_last
-configure-target-newlib: stage_last
-configure-target-libgfortran: stage_last
-configure-target-libobjc: stage_last
-configure-target-libtermcap: stage_last
-configure-target-winsup: stage_last
-configure-target-libgloss: stage_last
-configure-target-libiberty: stage_last
-configure-target-gperf: stage_last
-configure-target-examples: stage_last
-configure-target-libffi: stage_last
-configure-target-libjava: stage_last
-configure-target-zlib: stage_last
-configure-target-boehm-gc: stage_last
-configure-target-qthreads: stage_last
-configure-target-rda: stage_last
-configure-target-libada: stage_last
-configure-target-libgomp: stage_last
-@endif gcc-bootstrap
-@if gcc-no-bootstrap
configure-target-libstdc++-v3: maybe-all-gcc
+
configure-target-libmudflap: maybe-all-gcc
-configure-target-libssp: maybe-all-gcc
-configure-target-libgcc-math: maybe-all-gcc
+
configure-target-newlib: maybe-all-gcc
+
configure-target-libgfortran: maybe-all-gcc
+
configure-target-libobjc: maybe-all-gcc
+
configure-target-libtermcap: maybe-all-gcc
+
configure-target-winsup: maybe-all-gcc
+
configure-target-libgloss: maybe-all-gcc
+
configure-target-libiberty: maybe-all-gcc
+
configure-target-gperf: maybe-all-gcc
+
configure-target-examples: maybe-all-gcc
+
configure-target-libffi: maybe-all-gcc
+
configure-target-libjava: maybe-all-gcc
+
configure-target-zlib: maybe-all-gcc
+
configure-target-boehm-gc: maybe-all-gcc
+
configure-target-qthreads: maybe-all-gcc
+
configure-target-rda: maybe-all-gcc
+
configure-target-libada: maybe-all-gcc
-configure-target-libgomp: maybe-all-gcc
-@endif gcc-no-bootstrap
@@ -38039,12 +32334,8 @@ configure-target-libffi: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-libjava: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-libjava: maybe-all-target-libstdc++-v3
-configure-target-libmudflap: maybe-all-target-newlib maybe-all-target-libgloss
-
configure-target-libobjc: maybe-all-target-newlib maybe-all-target-libgloss
-configure-target-libssp: maybe-all-target-newlib maybe-all-target-libgloss
-
configure-target-libstdc++-v3: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-zlib: maybe-all-target-newlib maybe-all-target-libgloss
@@ -38071,7 +32362,6 @@ configure-target-qthreads: maybe-all-target-newlib maybe-all-target-libgloss
-
# With all the machinery above in place, it is pretty easy to generate
# dependencies. Host dependencies are a bit more complex because we have
# to check for bootstrap/prebootstrap dependencies. To resolve
@@ -38094,30 +32384,30 @@ configure-stage3-gcc: maybe-configure-stage3-intl
configure-stage4-gcc: maybe-configure-stage4-intl
configure-stageprofile-gcc: maybe-configure-stageprofile-intl
configure-stagefeedback-gcc: maybe-configure-stagefeedback-intl
-configure-gcc: maybe-all-binutils
-
-configure-stage1-gcc: maybe-all-stage1-binutils
-configure-stage2-gcc: maybe-all-stage2-binutils
-configure-stage3-gcc: maybe-all-stage3-binutils
-configure-stage4-gcc: maybe-all-stage4-binutils
-configure-stageprofile-gcc: maybe-all-stageprofile-binutils
-configure-stagefeedback-gcc: maybe-all-stagefeedback-binutils
-configure-gcc: maybe-all-gas
-
-configure-stage1-gcc: maybe-all-stage1-gas
-configure-stage2-gcc: maybe-all-stage2-gas
-configure-stage3-gcc: maybe-all-stage3-gas
-configure-stage4-gcc: maybe-all-stage4-gas
-configure-stageprofile-gcc: maybe-all-stageprofile-gas
-configure-stagefeedback-gcc: maybe-all-stagefeedback-gas
-configure-gcc: maybe-all-ld
-
-configure-stage1-gcc: maybe-all-stage1-ld
-configure-stage2-gcc: maybe-all-stage2-ld
-configure-stage3-gcc: maybe-all-stage3-ld
-configure-stage4-gcc: maybe-all-stage4-ld
-configure-stageprofile-gcc: maybe-all-stageprofile-ld
-configure-stagefeedback-gcc: maybe-all-stagefeedback-ld
+configure-gcc: maybe-configure-binutils
+
+configure-stage1-gcc: maybe-configure-stage1-binutils
+configure-stage2-gcc: maybe-configure-stage2-binutils
+configure-stage3-gcc: maybe-configure-stage3-binutils
+configure-stage4-gcc: maybe-configure-stage4-binutils
+configure-stageprofile-gcc: maybe-configure-stageprofile-binutils
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-binutils
+configure-gcc: maybe-configure-gas
+
+configure-stage1-gcc: maybe-configure-stage1-gas
+configure-stage2-gcc: maybe-configure-stage2-gas
+configure-stage3-gcc: maybe-configure-stage3-gas
+configure-stage4-gcc: maybe-configure-stage4-gas
+configure-stageprofile-gcc: maybe-configure-stageprofile-gas
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-gas
+configure-gcc: maybe-configure-ld
+
+configure-stage1-gcc: maybe-configure-stage1-ld
+configure-stage2-gcc: maybe-configure-stage2-ld
+configure-stage3-gcc: maybe-configure-stage3-ld
+configure-stage4-gcc: maybe-configure-stage4-ld
+configure-stageprofile-gcc: maybe-configure-stageprofile-ld
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-ld
all-gcc: all-libiberty
all-stage1-gcc: all-stage1-libiberty
@@ -38188,6 +32478,30 @@ all-stage4-gcc: maybe-all-build-fixincludes
all-stageprofile-gcc: maybe-all-build-fixincludes
all-stagefeedback-gcc: maybe-all-build-fixincludes
all-prebootstrap: maybe-all-build-fixincludes
+all-gcc: maybe-all-binutils
+
+all-stage1-gcc: maybe-all-stage1-binutils
+all-stage2-gcc: maybe-all-stage2-binutils
+all-stage3-gcc: maybe-all-stage3-binutils
+all-stage4-gcc: maybe-all-stage4-binutils
+all-stageprofile-gcc: maybe-all-stageprofile-binutils
+all-stagefeedback-gcc: maybe-all-stagefeedback-binutils
+all-gcc: maybe-all-gas
+
+all-stage1-gcc: maybe-all-stage1-gas
+all-stage2-gcc: maybe-all-stage2-gas
+all-stage3-gcc: maybe-all-stage3-gas
+all-stage4-gcc: maybe-all-stage4-gas
+all-stageprofile-gcc: maybe-all-stageprofile-gas
+all-stagefeedback-gcc: maybe-all-stagefeedback-gas
+all-gcc: maybe-all-ld
+
+all-stage1-gcc: maybe-all-stage1-ld
+all-stage2-gcc: maybe-all-stage2-ld
+all-stage3-gcc: maybe-all-stage3-ld
+all-stage4-gcc: maybe-all-stage4-ld
+all-stageprofile-gcc: maybe-all-stageprofile-ld
+all-stagefeedback-gcc: maybe-all-stagefeedback-ld
all-gcc: maybe-all-zlib
all-stage1-gcc: maybe-all-stage1-zlib
@@ -38204,24 +32518,15 @@ all-stage3-gcc: all-stage3-libcpp
all-stage4-gcc: all-stage4-libcpp
all-stageprofile-gcc: all-stageprofile-libcpp
all-stagefeedback-gcc: all-stagefeedback-libcpp
-all-gcc: all-libdecnumber
-
-all-stage1-gcc: all-stage1-libdecnumber
-all-stage2-gcc: all-stage2-libdecnumber
-all-stage3-gcc: all-stage3-libdecnumber
-all-stage4-gcc: all-stage4-libdecnumber
-all-stageprofile-gcc: all-stageprofile-libdecnumber
-all-stagefeedback-gcc: all-stagefeedback-libdecnumber
-all-gcc: maybe-all-libiberty
-
-all-stage1-gcc: maybe-all-stage1-libiberty
-all-stage2-gcc: maybe-all-stage2-libiberty
-all-stage3-gcc: maybe-all-stage3-libiberty
-all-stage4-gcc: maybe-all-stage4-libiberty
-all-stageprofile-gcc: maybe-all-stageprofile-libiberty
-all-stagefeedback-gcc: maybe-all-stagefeedback-libiberty
-all-gcc: maybe-all-fixincludes
-install-gcc: maybe-install-fixincludes
+all-gcc: maybe-all-build-libiberty
+
+all-stage1-gcc: maybe-all-build-libiberty
+all-stage2-gcc: maybe-all-build-libiberty
+all-stage3-gcc: maybe-all-build-libiberty
+all-stage4-gcc: maybe-all-build-libiberty
+all-stageprofile-gcc: maybe-all-build-libiberty
+all-stagefeedback-gcc: maybe-all-build-libiberty
+all-prebootstrap: maybe-all-build-libiberty
configure-libcpp: configure-libiberty
configure-stage1-libcpp: configure-stage1-libiberty
@@ -38254,8 +32559,9 @@ all-stage3-libcpp: maybe-all-stage3-intl
all-stage4-libcpp: maybe-all-stage4-intl
all-stageprofile-libcpp: maybe-all-stageprofile-intl
all-stagefeedback-libcpp: maybe-all-stagefeedback-intl
-all-fixincludes: maybe-all-libiberty
-all-gnattools: maybe-all-target-libada
+configure-gdb: maybe-configure-itcl
+configure-gdb: maybe-configure-tcl
+configure-gdb: maybe-configure-tk
configure-gdb: maybe-configure-sim
all-gdb: maybe-all-libiberty
all-gdb: maybe-all-opcodes
@@ -38264,6 +32570,10 @@ all-gdb: maybe-all-readline
all-gdb: maybe-all-build-bison
all-gdb: maybe-all-build-byacc
all-gdb: maybe-all-sim
+install-gdb: maybe-install-tcl
+install-gdb: maybe-install-tk
+install-gdb: maybe-install-itcl
+install-gdb: maybe-install-libgui
configure-libgui: maybe-configure-tcl
configure-libgui: maybe-configure-tk
all-libgui: maybe-all-tcl
@@ -38558,17 +32868,12 @@ all-prebootstrap: maybe-all-gas
all-prebootstrap: maybe-all-intl
all-prebootstrap: maybe-all-ld
all-prebootstrap: maybe-all-libcpp
-all-prebootstrap: maybe-all-libdecnumber
all-prebootstrap: maybe-all-libiberty
all-prebootstrap: maybe-all-zlib
@endif gcc-no-bootstrap
-CONFIGURE_GDB_TK = @CONFIGURE_GDB_TK@
GDB_TK = @GDB_TK@
-INSTALL_GDB_TK = @INSTALL_GDB_TK@
-configure-gdb: $(CONFIGURE_GDB_TK)
all-gdb: $(gdbnlmrequirements) $(GDB_TK)
-install-gdb: $(INSTALL_GDB_TK)
# Serialization dependencies. Host configures don't work well in parallel to
# each other, due to contention over config.cache. Target configures and
@@ -38579,6 +32884,17 @@ install-gdb: $(INSTALL_GDB_TK)
# Regenerating top level configury
# --------------------------------
+# Multilib.out tells target dirs what multilibs they should build.
+# There is really only one copy. We use the 'timestamp' method to
+# work around various timestamp bugs on some systems.
+# We use move-if-change so that it's only considered updated when it
+# actually changes, because it has to depend on a phony target.
+multilib.out: maybe-all-gcc
+ @r=`${PWD_COMMAND}`; export r; \
+ echo "Checking multilib configuration..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > multilib.tmp 2> /dev/null ; \
+ $(SHELL) $(srcdir)/move-if-change multilib.tmp multilib.out ; \
+
# Rebuilding Makefile.in, using autogen.
AUTOGEN = autogen
$(srcdir)/Makefile.in: @MAINT@ $(srcdir)/Makefile.tpl $(srcdir)/Makefile.def
@@ -38588,7 +32904,7 @@ $(srcdir)/Makefile.in: @MAINT@ $(srcdir)/Makefile.tpl $(srcdir)/Makefile.def
Makefile: $(srcdir)/Makefile.in config.status
CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-config.status: configure
+config.status: configure $(gcc_version_trigger)
CONFIG_SHELL="$(SHELL)" $(SHELL) ./config.status --recheck
# Rebuilding configure.
diff --git a/Makefile.tpl b/Makefile.tpl
index 274474a5c..06ea94a96 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -6,7 +6,7 @@ in
#
# Makefile for directory with subdirs to build.
# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-# 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
+# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@ in
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# -------------------------------
@@ -75,23 +75,45 @@ LN_S = @LN_S@
# Miscellaneous non-standard autoconf-set variables
# -------------------------------------------------
+# The file containing GCC's version number.
+gcc_version_trigger = @gcc_version_trigger@
+gcc_version = @gcc_version@
+
# The gcc driver likes to know the arguments it was configured with.
TOPLEVEL_CONFIGURE_ARGUMENTS=@TOPLEVEL_CONFIGURE_ARGUMENTS@
+gxx_include_dir = @gxx_include_dir@
+libstdcxx_incdir = @libstdcxx_incdir@
+
tooldir = @tooldir@
build_tooldir = @build_tooldir@
+# Directory in which the compiler finds executables, libraries, etc.
+libsubdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)
GDB_NLM_DEPS =
# This is the name of the environment variable used for the path to
# the libraries.
RPATH_ENVVAR = @RPATH_ENVVAR@
+# This is set by configure to REALLY_SET_LIB_PATH if --enable-shared
+# was used.
+SET_LIB_PATH = @SET_LIB_PATH@
+
+# configure.in sets SET_LIB_PATH to this if --enable-shared was used.
+# Some platforms don't like blank entries, so we remove duplicate,
+# leading and trailing colons.
+REALLY_SET_LIB_PATH = \
+ @SET_GCC_LIB_PATH@ \
+ $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+
+# This is the list of directories to be built for the build system.
+BUILD_CONFIGDIRS = libiberty
# Build programs are put under this directory.
BUILD_SUBDIR = @build_subdir@
# This is set by the configure script to the arguments to use when configuring
# directories built for the build system.
-BUILD_CONFIGARGS = @build_configargs@ --with-build-subdir="$(BUILD_SUBDIR)"
+BUILD_CONFIGARGS = @build_configargs@
# This is the list of variables to export in the environment when
# configuring any subdirectory. It must also be exported whenever
@@ -130,12 +152,8 @@ SUBDIRS = @configdirs@
# This is set by the configure script to the arguments to use when configuring
# directories built for the host system.
HOST_CONFIGARGS = @host_configargs@
-# Host programs are put under this directory, which is . except if building
-# with srcdir=..
-HOST_SUBDIR = @host_subdir@
# This is the list of variables to export in the environment when
-# configuring subdirectories for the host system. We need to pass
-# some to the GCC configure because of its hybrid host/target nature.
+# configuring subdirectories for the host system.
HOST_EXPORTS = \
$(BASE_EXPORTS) \
CC="$(CC)"; export CC; \
@@ -154,59 +172,47 @@ HOST_EXPORTS = \
WINDRES="$(WINDRES)"; export WINDRES; \
OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
- AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
- AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
- GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
- LD_FOR_TARGET="$(LD_FOR_TARGET)"; export LD_FOR_TARGET; \
- NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
- OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
- RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
GMPINC="$(HOST_GMPINC)"; export GMPINC; \
-@if gcc-bootstrap
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
-@endif gcc-bootstrap
- $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
# Similar, for later GCC stages.
-POSTSTAGE1_HOST_EXPORTS = \
+STAGE_HOST_EXPORTS = \
$(HOST_EXPORTS) \
- CC="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
- -B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
- CC_FOR_BUILD="$(STAGE_CC_WRAPPER) \
- $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
- -B$$r/$(HOST_SUBDIR)/prev-gcc/ \
- -B$(build_tooldir)/bin/"; export CC_FOR_BUILD;
+ CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
+ CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD;
+# This is set by the configure script to the list of directories which
+# should be built using the target tools.
+TARGET_CONFIGDIRS = @target_configdirs@
# Target libraries are put under this directory:
TARGET_SUBDIR = @target_subdir@
# This is set by the configure script to the arguments to use when configuring
# directories built for the target.
-TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
+TARGET_CONFIGARGS = @target_configargs@
# This is the list of variables to export in the environment when
# configuring subdirectories for the host system.
BASE_TARGET_EXPORTS = \
$(BASE_EXPORTS) \
AR="$(AR_FOR_TARGET)"; export AR; \
- AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
+ AS="$(AS_FOR_TARGET)"; export AS; \
CC="$(CC_FOR_TARGET)"; export CC; \
CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
- CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
+ CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
- LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
+ LD="$(LD_FOR_TARGET)"; export LD; \
LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
- LIPO="$(LIPO_FOR_TARGET)"; export LIPO; \
- NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
- OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
+ NM="$(NM_FOR_TARGET)"; export NM; \
RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
- STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
- $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
RAW_CXX_TARGET_EXPORTS = \
$(BASE_TARGET_EXPORTS) \
@@ -250,16 +256,48 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
# Flags to pass to stage2 and later makes. They are defined
# here so that they can be overridden by Makefile fragments.
BOOT_CFLAGS= -g -O2
-BOOT_LDFLAGS=
-BISON = @BISON@
-YACC = @YACC@
-FLEX = @FLEX@
-LEX = @LEX@
-M4 = @M4@
-MAKEINFO = @MAKEINFO@
-EXPECT = @EXPECT@
-RUNTEST = @RUNTEST@
+CONFIGURED_BISON = @CONFIGURED_BISON@
+BISON = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/bison/tests/bison ; \
+ else \
+ echo ${CONFIGURED_BISON} ; \
+ fi`
+
+CONFIGURED_YACC = @CONFIGURED_YACC@
+YACC = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/bison/tests/bison -y ; \
+ elif [ -f $$r/$(BUILD_SUBDIR)/byacc/byacc ] ; then \
+ echo $$r/$(BUILD_SUBDIR)/byacc/byacc ; \
+ else \
+ echo ${CONFIGURED_YACC} ; \
+ fi`
+
+CONFIGURED_FLEX = @CONFIGURED_FLEX@
+FLEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
+ else echo ${CONFIGURED_FLEX} ; fi`
+
+CONFIGURED_LEX = @CONFIGURED_LEX@
+LEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
+ else echo ${CONFIGURED_LEX} ; fi`
+
+CONFIGURED_M4 = @CONFIGURED_M4@
+M4 = `if [ -f $$r/$(BUILD_SUBDIR)/m4/m4 ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/m4/m4 ; \
+ else echo ${CONFIGURED_M4} ; fi`
+
+# For an installed makeinfo, we require it to be from texinfo 4.2 or
+# higher, else we use the "missing" dummy. We also pass the subdirectory
+# makeinfo even if only the Makefile is there, because Texinfo builds its
+# manual when made, and it requires its own version.
+CONFIGURED_MAKEINFO = @CONFIGURED_MAKEINFO@
+MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
+ then echo $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo ; \
+ else if (${CONFIGURED_MAKEINFO} --version \
+ | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])') >/dev/null 2>&1; \
+ then echo ${CONFIGURED_MAKEINFO}; else echo $$s/missing makeinfo; fi; fi`
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still
@@ -267,74 +305,185 @@ RUNTEST = @RUNTEST@
# (Default to avoid splitting info files by setting the threshold high.)
MAKEINFOFLAGS = --split-size=5000000
+EXPECT = `if [ -f $$r/expect/expect ] ; \
+ then echo $$r/expect/expect ; \
+ else echo expect ; fi`
+
+RUNTEST = `if [ -f $$s/dejagnu/runtest ] ; \
+ then echo $$s/dejagnu/runtest ; \
+ else echo runtest ; fi`
+
# ---------------------------------------------
# Programs producing files for the HOST machine
# ---------------------------------------------
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that programs built for the host machine work.
+HOST_LIB_PATH = $$r/bfd:$$r/opcodes
+
AS = @AS@
+
AR = @AR@
AR_FLAGS = rc
+
CC = @CC@
+CFLAGS = @CFLAGS@
+LIBCFLAGS = $(CFLAGS)
+
CXX = @CXX@
+CXXFLAGS = @CXXFLAGS@
+LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
+
DLLTOOL = @DLLTOOL@
-LD = @LD@
-LIPO = @LIPO@
+
NM = @NM@
-OBJDUMP = @OBJDUMP@
+
+LD = @LD@
+LDFLAGS =
+
RANLIB = @RANLIB@
-STRIP = @STRIP@
+
WINDRES = @WINDRES@
-CFLAGS = @CFLAGS@
-LDFLAGS =
-LIBCFLAGS = $(CFLAGS)
-CXXFLAGS = @CXXFLAGS@
-LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
PICFLAG =
# -----------------------------------------------
# Programs producing files for the TARGET machine
# -----------------------------------------------
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that prorgams built for the target machine work.
+TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:$$r/$(TARGET_SUBDIR)/libmudflap/.libs
+
FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
AR_FOR_TARGET=@AR_FOR_TARGET@
-AS_FOR_TARGET=@AS_FOR_TARGET@
-CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
+CONFIGURED_AR_FOR_TARGET=@CONFIGURED_AR_FOR_TARGET@
+USUAL_AR_FOR_TARGET = ` \
+ if [ -f $$r/binutils/ar ] ; then \
+ echo $$r/binutils/ar ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(AR); \
+ else \
+ echo $(CONFIGURED_AR_FOR_TARGET) ; \
+ fi; \
+ fi`
+AS_FOR_TARGET=@AS_FOR_TARGET@
+CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@
+USUAL_AS_FOR_TARGET = ` \
+ if [ -f $$r/gas/as-new ] ; then \
+ echo $$r/gas/as-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=as ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(AS); \
+ else \
+ echo $(CONFIGURED_AS_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+CC_FOR_TARGET = @CC_FOR_TARGET@
+# During gcc bootstrap, if we use some random cc for stage1 then
+# CFLAGS will be just -g. We want to ensure that TARGET libraries
+# (which we know are built with gcc) are built with optimizations so
+# prepend -O2 when setting CFLAGS_FOR_TARGET.
+CFLAGS_FOR_TARGET = -O2 $(CFLAGS)
# If GCC_FOR_TARGET is not overriden on the command line, then this
# variable is passed down to the gcc Makefile, where it is used to
# build libgcc2.a. We define it here so that it can itself be
# overridden on the command line.
-GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET)
+GCC_FOR_TARGET=@GCC_FOR_TARGET@
+USUAL_GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) $$r/gcc/xgcc -B$$r/gcc/ $(FLAGS_FOR_TARGET)
+LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+
+CXX_FOR_TARGET = @CXX_FOR_TARGET@
+RAW_CXX_FOR_TARGET = @RAW_CXX_FOR_TARGET@
+CXX_FOR_TARGET_FOR_RECURSIVE_MAKE = @CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@
+RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE = @RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS)
+LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+
DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
+CONFIGURED_DLLTOOL_FOR_TARGET=@CONFIGURED_DLLTOOL_FOR_TARGET@
+USUAL_DLLTOOL_FOR_TARGET = ` \
+ if [ -f $$r/binutils/dlltool ] ; then \
+ echo $$r/binutils/dlltool ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(DLLTOOL); \
+ else \
+ echo $(CONFIGURED_DLLTOOL_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+GCJ_FOR_TARGET = @GCJ_FOR_TARGET@
+GFORTRAN_FOR_TARGET = @GFORTRAN_FOR_TARGET@
+
LD_FOR_TARGET=@LD_FOR_TARGET@
+CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@
+USUAL_LD_FOR_TARGET = ` \
+ if [ -f $$r/ld/ld-new ] ; then \
+ echo $$r/ld/ld-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=ld ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(LD); \
+ else \
+ echo $(CONFIGURED_LD_FOR_TARGET) ; \
+ fi; \
+ fi`
+
+LDFLAGS_FOR_TARGET =
-LIPO_FOR_TARGET=@LIPO_FOR_TARGET@
NM_FOR_TARGET=@NM_FOR_TARGET@
-OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
+CONFIGURED_NM_FOR_TARGET=@CONFIGURED_NM_FOR_TARGET@
+USUAL_NM_FOR_TARGET = ` \
+ if [ -f $$r/binutils/nm-new ] ; then \
+ echo $$r/binutils/nm-new ; \
+ elif [ -f $$r/gcc/xgcc ]; then \
+ $(CC_FOR_TARGET) -print-prog-name=nm ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(NM); \
+ else \
+ echo $(CONFIGURED_NM_FOR_TARGET) ; \
+ fi; \
+ fi`
+
RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
-STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
-WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
+CONFIGURED_RANLIB_FOR_TARGET=@CONFIGURED_RANLIB_FOR_TARGET@
+USUAL_RANLIB_FOR_TARGET = ` \
+ if [ -f $$r/binutils/ranlib ] ; then \
+ echo $$r/binutils/ranlib ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ if [ x'$(RANLIB)' != x ]; then \
+ echo $(RANLIB); \
+ else \
+ echo ranlib; \
+ fi; \
+ else \
+ echo $(CONFIGURED_RANLIB_FOR_TARGET) ; \
+ fi; \
+ fi`
-COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
-COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
-COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
+WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
+CONFIGURED_WINDRES_FOR_TARGET=@CONFIGURED_WINDRES_FOR_TARGET@
+USUAL_WINDRES_FOR_TARGET = ` \
+ if [ -f $$r/binutils/windres ] ; then \
+ echo $$r/binutils/windres ; \
+ else \
+ if [ '$(host)' = '$(target)' ] ; then \
+ echo $(WINDRES); \
+ else \
+ echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
+ fi; \
+ fi`
-# During gcc bootstrap, if we use some random cc for stage1 then
-# CFLAGS will be just -g. We want to ensure that TARGET libraries
-# (which we know are built with gcc) are built with optimizations so
-# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
-LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-LDFLAGS_FOR_TARGET =
PICFLAG_FOR_TARGET =
# ------------------------------------
@@ -343,7 +492,7 @@ PICFLAG_FOR_TARGET =
# The first rule in the file had better be this one. Don't put any above it.
# This lives here to allow makefile fragments to contain dependencies.
-all:
+@default_target@:
#### host and target specific makefile fragments come in here.
@target_makefile_frag@
@@ -352,46 +501,22 @@ all:
@host_makefile_frag@
###
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that prorgams built for the target machine work.
-TARGET_LIB_PATH = [+ FOR target_modules +][+
- IF lib_path +]$(TARGET_LIB_PATH_[+module+])[+ ENDIF lib_path +][+
- ENDFOR target_modules +]$(HOST_LIB_PATH_gcc)
-[+ FOR target_modules +][+ IF lib_path +]
-@if target-[+module+]
-TARGET_LIB_PATH_[+module+] = $$r/$(TARGET_SUBDIR)/[+module+]/[+lib_path+]:
-@endif target-[+module+]
-[+ ENDIF lib_path +][+ ENDFOR target_modules +]
-
-
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that programs built for the host machine work.
-HOST_LIB_PATH = [+ FOR host_modules +][+
- IF lib_path +]$(HOST_LIB_PATH_[+module+])[+ ENDIF lib_path +][+
- ENDFOR host_modules +]
-
-# Define HOST_LIB_PATH_gcc here, for the sake of TARGET_LIB_PATH, ouch
-@if gcc
-HOST_LIB_PATH_gcc = $$r/$(HOST_SUBDIR)/gcc:$$r/$(HOST_SUBDIR)/prev-gcc:
-@endif gcc
-
-[+ FOR host_modules +][+ IF lib_path +]
-@if [+module+]
-HOST_LIB_PATH_[+module+] = \
- $$r/$(HOST_SUBDIR)/[+module+]/[+lib_path+]:[+ IF bootstrap
- +]$$r/$(HOST_SUBDIR)/prev-[+module+]/[+lib_path+]:[+ ENDIF bootstrap +]
-@endif [+module+]
-[+ ENDIF lib_path +][+ ENDFOR host_modules +]
-
# Flags to pass down to all sub-makes.
-BASE_FLAGS_TO_PASS =[+ FOR flags_to_pass +][+ IF optional +] \
- "`echo '[+flag+]=$([+flag+])' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"[+ ELSE optional +] \
- "[+flag+]=$([+flag+])"[+ ENDIF optional+][+ ENDFOR flags_to_pass +] \
+BASE_FLAGS_TO_PASS = [+ FOR flags_to_pass +]\
+ "[+flag+]=$([+flag+])" [+ ENDFOR flags_to_pass +]\
"CONFIG_SHELL=$(SHELL)" \
"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)"
-# We leave this in just in case, but it is not needed anymore.
-RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS)
+# For any flags above that may contain shell code that varies from one
+# target library to another. When doing recursive invocations of the
+# top-level Makefile, we don't want the outer make to evaluate them,
+# so we pass these variables down unchanged. They must not contain
+# single nor double quotes.
+RECURSE_FLAGS = \
+ CXX_FOR_TARGET='$(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
+ RAW_CXX_FOR_TARGET='$(RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
+
+RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS)
# Flags to pass down to most sub-makes, in which we're building with
# the host environment.
@@ -402,11 +527,8 @@ EXTRA_HOST_FLAGS = \
'CXX=$(CXX)' \
'DLLTOOL=$(DLLTOOL)' \
'LD=$(LD)' \
- 'LIPO=$(LIPO)' \
'NM=$(NM)' \
- 'OBJDUMP=$(OBJDUMP)' \
'RANLIB=$(RANLIB)' \
- 'STRIP=$(STRIP)' \
'WINDRES=$(WINDRES)'
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
@@ -424,23 +546,20 @@ X11_FLAGS_TO_PASS = \
'X11_EXTRA_LIBS=$(X11_EXTRA_LIBS)'
# Flags to pass down to makes which are built with the target environment.
-# The double $ decreases the length of the command line; those variables
-# are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them. The
-# COMPILER_ prefixed variables are not passed down so we expand them here.
+# The double $ decreases the length of the command line; the variables
+# are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.
EXTRA_TARGET_FLAGS = \
'AR=$$(AR_FOR_TARGET)' \
- 'AS=$(COMPILER_AS_FOR_TARGET)' \
+ 'AS=$$(AS_FOR_TARGET)' \
'CC=$$(CC_FOR_TARGET)' \
'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
'CXX=$$(CXX_FOR_TARGET)' \
'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
- 'LD=$(COMPILER_LD_FOR_TARGET)' \
- 'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
+ 'LD=$$(LD_FOR_TARGET)' \
'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
- 'NM=$(COMPILER_NM_FOR_TARGET)' \
- 'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
+ 'NM=$$(NM_FOR_TARGET)' \
'RANLIB=$$(RANLIB_FOR_TARGET)' \
'WINDRES=$$(WINDRES_FOR_TARGET)'
@@ -453,12 +572,19 @@ TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
# The BUILD_* variables are a special case, which are used for the gcc
# cross-building scheme.
EXTRA_GCC_FLAGS = \
+ 'BUILD_PREFIX=$(BUILD_PREFIX)' \
+ 'BUILD_PREFIX_1=$(BUILD_PREFIX_1)' \
"GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
+ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+ "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
"`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
- "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
+ "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'STAGE1_CFLAGS=$(STAGE1_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'BOOT_CFLAGS=$(BOOT_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+ "`echo 'BOOT_ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
@@ -475,37 +601,23 @@ configure-target: [+
# The target built for a native non-bootstrap build.
.PHONY: all
-all:
-@if gcc-bootstrap
- [ -f stage_final ] || echo stage3 > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) `cat stage_final`-bubble
-@endif gcc-bootstrap
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if [ -f stage_last ]; then \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target; \
- else \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target; \
- fi
+all: unstage all-host all-target stage
.PHONY: all-build
-[+ FOR build_modules +]
-all-build: maybe-all-build-[+module+][+ ENDFOR build_modules +]
-
+all-build: [+
+ FOR build_modules +] \
+ maybe-all-build-[+module+][+
+ ENDFOR build_modules +]
.PHONY: all-host
-[+ FOR host_modules +][+ IF bootstrap +]
-@if [+module+]-no-bootstrap[+ ENDIF bootstrap +]
-all-host: maybe-all-[+module+][+ IF bootstrap +]
-@endif [+module+]-no-bootstrap[+ ENDIF bootstrap +][+ ENDFOR host_modules +]
-
+all-host: [+
+ FOR host_modules +] \
+ maybe-all-[+module+][+
+ ENDFOR host_modules +]
.PHONY: all-target
-[+ FOR target_modules +][+ IF bootstrap +]
-@if [+module+]-no-bootstrap[+ ENDIF bootstrap +]
-all-target: maybe-all-target-[+module+][+ IF bootstrap +]
-@endif [+module+]-no-bootstrap[+ ENDIF bootstrap +][+ ENDFOR target_modules +]
+all-target: [+
+ FOR target_modules +] \
+ maybe-all-target-[+module+][+
+ ENDFOR target_modules +]
# Do a target for all the subdirectories. A ``make do-X'' will do a
# ``make X'' in all subdirectories (because, in general, there is a
@@ -513,32 +625,29 @@ all-target: maybe-all-target-[+module+][+ IF bootstrap +]
# but it may do additional work as well).
[+ FOR recursive_targets +]
.PHONY: do-[+make_target+]
-do-[+make_target+]:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) [+make_target+]-host \
- [+make_target+]-target
-
+do-[+make_target+]: unstage [+make_target+]-host [+make_target+]-target stage
.PHONY: [+make_target+]-host
-[+ FOR host_modules +]
-[+make_target+]-host: maybe-[+make_target+]-[+module+][+ ENDFOR host_modules +]
+[+make_target+]-host: [+
+ FOR host_modules +] \
+ maybe-[+make_target+]-[+module+][+
+ ENDFOR host_modules +]
.PHONY: [+make_target+]-target
-[+ FOR target_modules +]
-[+make_target+]-target: maybe-[+make_target+]-target-[+module+][+ ENDFOR target_modules +]
+[+make_target+]-target: [+
+ FOR target_modules +] \
+ maybe-[+make_target+]-target-[+module+][+
+ ENDFOR target_modules +]
[+ ENDFOR recursive_targets +]
# Here are the targets which correspond to the do-X targets.
-.PHONY: info installcheck dvi html install-info
+.PHONY: info installcheck dvi install-info
.PHONY: clean distclean mostlyclean maintainer-clean realclean
.PHONY: local-clean local-distclean local-maintainer-clean
info: do-info
installcheck: do-installcheck
dvi: do-dvi
-html: do-html
# Make sure makeinfo is built before we do a `make info', if we're
# in fact building texinfo.
@@ -555,14 +664,11 @@ local-clean:
local-distclean:
-rm -f Makefile config.status config.cache mh-frag mt-frag
- -rm -f maybedep.tmp serdep.tmp
+ -rm -f multilib.out multilib.tmp maybedep.tmp serdep.tmp
-if [ "$(TARGET_SUBDIR)" != "." ]; then \
rm -rf $(TARGET_SUBDIR); \
else true; fi
-rm -rf $(BUILD_SUBDIR)
- -if [ "$(HOST_SUBDIR)" != "." ]; then \
- rm -rf $(HOST_SUBDIR); \
- else true; fi
-rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile
-rm -f texinfo/doc/Makefile texinfo/po/POTFILES
-rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null
@@ -580,10 +686,13 @@ maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean
maintainer-clean: local-distclean
realclean: maintainer-clean
-# Extra dependency for clean-target, owing to the mixed nature of gcc.
+# Extra dependency for clean-target, owing to the mixed nature of gcc
clean-target: clean-target-libgcc
clean-target-libgcc:
- test ! -d gcc || (cd gcc && $(MAKE) $@)
+ test ! -d gcc/libgcc || \
+ (cd gcc/libgcc && find . -type d -print) | \
+ while read d; do rm -f gcc/$$d/libgcc.a || : ; done
+ -rm -rf gcc/libgcc
# Check target.
@@ -591,23 +700,13 @@ clean-target-libgcc:
check: do-check
# Only include modules actually being configured and built.
-.PHONY: check-host
-check-host: [+
+do-check: unstage [+
FOR host_modules +] \
maybe-check-[+module+][+
- ENDFOR host_modules +]
-
-.PHONY: check-target
-check-target: [+
+ ENDFOR host_modules +][+
FOR target_modules +] \
maybe-check-target-[+module+][+
- ENDFOR target_modules +]
-
-do-check:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) check-host check-target
+ ENDFOR target_modules +] stage
# Automated reporting of test results.
@@ -633,11 +732,7 @@ mail-report-with-warnings.log: warning.log
# Installation targets.
.PHONY: install uninstall
-install:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) installdirs install-host install-target
+install: installdirs install-host install-target
.PHONY: install-host-nogcc
install-host-nogcc: [+
@@ -664,7 +759,7 @@ uninstall:
install.all: install-no-fixedincludes
@if [ -f ./gcc/Makefile ] ; then \
r=`${PWD_COMMAND}` ; export r ; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd ./gcc && \
$(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
@@ -708,184 +803,127 @@ etags tags: TAGS
# built are.
TAGS: do-TAGS
-# ------------------------------------
-# Macros for configure and all targets
-# ------------------------------------
-
-[+ DEFINE configure +]
-.PHONY: configure-[+prefix+][+module+] maybe-configure-[+prefix+][+module+]
-maybe-configure-[+prefix+][+module+]:
-@if [+prefix+][+module+]
-maybe-configure-[+prefix+][+module+]: configure-[+prefix+][+module+]
-configure-[+prefix+][+module+]: [+ IF bootstrap +]
-@endif [+prefix+][+module+]
-@if [+prefix+][+module+]-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif [+prefix+][+module+]-bootstrap
-@if [+prefix+][+module+][+ ELSE bootstrap +]
- @: $(MAKE); $(unstage)[+ ENDIF bootstrap +]
- @r=`${PWD_COMMAND}`; export r; \
+# --------------------------------------
+# Modules which run on the build machine
+# --------------------------------------
+[+ FOR build_modules +]
+.PHONY: configure-build-[+module+] maybe-configure-build-[+module+]
+maybe-configure-build-[+module+]:
+@if build-[+module+]
+maybe-configure-build-[+module+]: configure-build-[+module+]
+configure-build-[+module+]:
+ @test ! -f $(BUILD_SUBDIR)/[+module+]/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/[+module+] ; \
+ r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- [+ IF check_multilibs
- +]echo "Checking multilib configuration for [+module+]..."; \
- $(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+] ; \
- $(CC_FOR_TARGET) --print-multi-lib > [+subdir+]/[+module+]/multilib.tmp 2> /dev/null ; \
- if test -r [+subdir+]/[+module+]/multilib.out; then \
- if cmp -s [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; then \
- rm -f [+subdir+]/[+module+]/multilib.tmp; \
- else \
- rm -f [+subdir+]/[+module+]/Makefile; \
- mv [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; \
- fi; \
- else \
- mv [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; \
- fi; \
- [+ ENDIF check_multilibs +]test ! -f [+subdir+]/[+module+]/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+] ; \
- [+exports+] \
- echo Configuring in [+subdir+]/[+module+]; \
- cd "[+subdir+]/[+module+]" || exit 1; \
+ $(BUILD_EXPORTS) \
+ echo Configuring in $(BUILD_SUBDIR)/[+module+]; \
+ cd "$(BUILD_SUBDIR)/[+module+]" || exit 1; \
case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo [+subdir+]/[+module+]/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(BUILD_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
esac; \
- srcdiroption="--srcdir=$${topdir}/[+module+]"; \
- libsrcdir="$$s/[+module+]"; \
- [+ IF no-config-site +]rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file [+ ENDIF +]$(SHELL) $${libsrcdir}/configure \
- [+args+] $${srcdiroption} [+extra_configure_flags+] \
- || exit 1
-@endif [+prefix+][+module+]
-
-[+ IF bootstrap +]
-[+ FOR bootstrap_stage +]
-.PHONY: configure-stage[+id+]-[+prefix+][+module+] maybe-configure-stage[+id+]-[+prefix+][+module+]
-maybe-configure-stage[+id+]-[+prefix+][+module+]:
-@if [+prefix+][+module+]-bootstrap
-maybe-configure-stage[+id+]-[+prefix+][+module+]: configure-stage[+id+]-[+prefix+][+module+]
-configure-stage[+id+]-[+prefix+][+module+]:
- @[ $(current_stage) = stage[+id+] ] || $(MAKE) stage[+id+]-start
- @$(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+]
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- [+ IF check_multilibs
- +]echo "Checking multilib configuration for [+module+]..."; \
- $(CC_FOR_TARGET) --print-multi-lib > [+subdir+]/[+module+]/multilib.tmp 2> /dev/null ; \
- if test -r [+subdir+]/[+module+]/multilib.out; then \
- if cmp -s [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; then \
- rm -f [+subdir+]/[+module+]/multilib.tmp; \
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/[+module+] "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
else \
- rm -f [+subdir+]/[+module+]/Makefile; \
- mv [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; \
+ true; \
fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
else \
- mv [+subdir+]/[+module+]/multilib.tmp [+subdir+]/[+module+]/multilib.out; \
+ srcdiroption="--srcdir=$${topdir}/[+module+]"; \
+ libsrcdir="$$s/[+module+]"; \
fi; \
- [+ ENDIF check_multilibs +]test ! -f [+subdir+]/[+module+]/Makefile || exit 0; \
- [+exports+][+ IF prev +] \
- [+poststage1_exports+][+ ENDIF prev +] \
- echo Configuring stage [+id+] in [+subdir+]/[+module+] ; \
- $(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+] ; \
- cd [+subdir+]/[+module+] || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo [+subdir+]/[+module+]/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/[+module+]"; \
- libsrcdir="$$s/[+module+]"; \
- $(SHELL) $${libsrcdir}/configure \
- [+args+] $${srcdiroption} \
- [+stage_configure_flags+] [+extra_configure_flags+]
-@endif [+prefix+][+module+]-bootstrap
-[+ ENDFOR bootstrap_stage +]
-[+ ENDIF bootstrap +]
-[+ ENDDEF +]
-
-[+ DEFINE all +]
-.PHONY: all-[+prefix+][+module+] maybe-all-[+prefix+][+module+]
-maybe-all-[+prefix+][+module+]:
-@if [+prefix+][+module+]
-TARGET-[+prefix+][+module+]=[+
- IF target +][+target+][+ ELSE +]all[+ ENDIF target +]
-maybe-all-[+prefix+][+module+]: all-[+prefix+][+module+]
-all-[+prefix+][+module+]: configure-[+prefix+][+module+][+ IF bootstrap +]
-@endif [+prefix+][+module+]
-@if [+prefix+][+module+]-bootstrap
- @if test -f stage_last; then $(unstage); else $(MAKE) stage1-start; fi
-@endif [+prefix+][+module+]-bootstrap
-@if [+prefix+][+module+][+ ELSE bootstrap +]
- @: $(MAKE); $(unstage)[+ ENDIF bootstrap +]
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- [+exports+] \
- (cd [+subdir+]/[+module+] && \
- $(MAKE) [+args+] [+extra_make_flags+] $(TARGET-[+prefix+][+module+]))
-@endif [+prefix+][+module+]
-
-[+ IF bootstrap +]
-[+ FOR bootstrap_stage +]
-.PHONY: all-stage[+id+]-[+prefix+][+module+] maybe-all-stage[+id+]-[+prefix+][+module+]
-.PHONY: clean-stage[+id+]-[+prefix+][+module+] maybe-clean-stage[+id+]-[+prefix+][+module+]
-maybe-all-stage[+id+]-[+prefix+][+module+]:
-maybe-clean-stage[+id+]-[+prefix+][+module+]:
-@if [+prefix+][+module+]-bootstrap
-maybe-all-stage[+id+]-[+prefix+][+module+]: all-stage[+id+]-[+prefix+][+module+]
-all-stage[+id+]: all-stage[+id+]-[+prefix+][+module+]
-TARGET-stage[+id+]-[+prefix+][+module+] = $(TARGET-[+prefix+][+module+])
-all-stage[+id+]-[+prefix+][+module+]: configure-stage[+id+]-[+prefix+][+module+]
- @[ $(current_stage) = stage[+id+] ] || $(MAKE) stage[+id+]-start
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(BUILD_CONFIGARGS) $${srcdiroption} \
+ --with-build-subdir="$(BUILD_SUBDIR)" [+extra_configure_flags+] \
+ || exit 1
+@endif build-[+module+]
+
+.PHONY: all-build-[+module+] maybe-all-build-[+module+]
+maybe-all-build-[+module+]:
+@if build-[+module+]
+TARGET-build-[+module+]=[+ IF target +][+target+][+ ELSE +]all[+ ENDIF target +]
+maybe-all-build-[+module+]: all-build-[+module+]
+all-build-[+module+]: configure-build-[+module+]
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- [+exports+][+ IF prev +] \
- [+poststage1_exports+][+ ENDIF prev +] \
- cd [+subdir+]/[+module+] && \
- $(MAKE) [+args+] [+ IF prev
- +][+poststage1_args+][+ ENDIF prev
- +] [+stage_make_flags+] [+extra_make_flags+] \
- $(TARGET-stage[+id+]-[+prefix+][+module+])
-
-maybe-clean-stage[+id+]-[+prefix+][+module+]: clean-stage[+id+]-[+prefix+][+module+]
-clean-stage[+id+]: clean-stage[+id+]-[+prefix+][+module+]
-clean-stage[+id+]-[+prefix+][+module+]:
- @[ -f [+subdir+]/[+module+]/Makefile ] || [ -f [+subdir+]/stage[+id+]-[+module+]/Makefile ] \
- || exit 0 ; \
- [ $(current_stage) = stage[+id+] ] || $(MAKE) stage[+id+]-start; \
- cd [+subdir+]/[+module+] && \
- $(MAKE) [+args+] [+ IF prev +] \
- [+poststage1_args+] [+ ENDIF prev +] \
- [+stage_make_flags+] [+extra_make_flags+] clean
-@endif [+prefix+][+module+]-bootstrap
-
-[+ ENDFOR bootstrap_stage +]
-[+ ENDIF bootstrap +]
-[+ ENDDEF +]
-
-# --------------------------------------
-# Modules which run on the build machine
-# --------------------------------------
-[+ FOR build_modules +]
-[+ configure prefix="build-" subdir="$(BUILD_SUBDIR)" exports="$(BUILD_EXPORTS)"
- args="$(BUILD_CONFIGARGS)" no-config-site=true +]
-
-[+ all prefix="build-" subdir="$(BUILD_SUBDIR)" exports="$(BUILD_EXPORTS)" +]
-[+ ENDFOR build_module +]
+ $(BUILD_EXPORTS) \
+ (cd $(BUILD_SUBDIR)/[+module+] && \
+ $(MAKE) [+extra_make_flags+] $(TARGET-build-[+module+]))
+@endif build-[+module+]
+[+ ENDFOR build_modules +]
# --------------------------------------
# Modules which run on the host machine
# --------------------------------------
[+ FOR host_modules +]
-[+ configure prefix="" subdir="$(HOST_SUBDIR)"
- exports="$(HOST_EXPORTS)"
- poststage1_exports="$(POSTSTAGE1_HOST_EXPORTS)"
- args="$(HOST_CONFIGARGS)" +]
+.PHONY: configure-[+module+] maybe-configure-[+module+]
+maybe-configure-[+module+]:
+@if [+module+]
+maybe-configure-[+module+]: configure-[+module+]
+configure-[+module+]:
+ @[+ IF bootstrap +]test -f stage_last && exit 0; \
+ [+ ENDIF bootstrap +]test ! -f [+module+]/Makefile || exit 0; \
+ [ -d [+module+] ] || mkdir [+module+]; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ echo Configuring in [+module+]; \
+ cd [+module+] || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/[+module+]"; \
+ libsrcdir="$$s/[+module+]";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/[+module+]"; \
+ libsrcdir="$$s/[+module+]";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} [+extra_configure_flags+] \
+ || exit 1
+@endif [+module+]
-[+ all prefix="" subdir="$(HOST_SUBDIR)"
- exports="$(HOST_EXPORTS)"
- poststage1_exports="$(POSTSTAGE1_HOST_EXPORTS)"
- args="$(FLAGS_TO_PASS)"
- poststage1_args="$(POSTSTAGE1_FLAGS_TO_PASS)" +]
+.PHONY: all-[+module+] maybe-all-[+module+]
+maybe-all-[+module+]:
+@if [+module+]
+maybe-all-[+module+]: all-[+module+]
+all-[+module+]: configure-[+module+]
+ @[+ IF bootstrap +]test -f stage_last && exit 0; \
+ [+ ENDIF bootstrap +]r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
+ $(HOST_EXPORTS) \
+ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+
+ IF with_x
+ +] $(X11_FLAGS_TO_PASS)[+
+ ENDIF with_x +] [+extra_make_flags+] [+
+ IF (== (get "module") "gcc") +] \
+ `if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi` [+
+ ELSE +]all[+ ENDIF +])
+@endif [+module+]
.PHONY: check-[+module+] maybe-check-[+module+]
maybe-check-[+module+]:
@@ -896,22 +934,22 @@ check-[+module+]:
[+ ELIF no_check_cross +]
# This module is only tested in a native toolchain.
check-[+module+]:
- @: $(MAKE); $(unstage)
@if [ '$(host)' = '$(target)' ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/[+module+] && \
- $(MAKE) $(FLAGS_TO_PASS) [+extra_make_flags+] check); \
+ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS) [+
+ extra_make_flags+] check); \
fi
[+ ELSE check +]
check-[+module+]:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/[+module+] && \
- $(MAKE) $(FLAGS_TO_PASS) [+extra_make_flags+] check)
+ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+
+ extra_make_flags+] check)
[+ ENDIF no_check +]
@endif [+module+]
@@ -923,12 +961,12 @@ maybe-install-[+module+]: install-[+module+]
install-[+module+]:
[+ ELSE install +]
install-[+module+]: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd $(HOST_SUBDIR)/[+module+] && \
- $(MAKE) $(FLAGS_TO_PASS) [+extra_make_flags+] install)
+ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+
+ extra_make_flags+] install)
[+ ENDIF no_install +]
@endif [+module+]
@@ -946,16 +984,16 @@ maybe-[+make_target+]-[+module+]: [+make_target+]-[+module+]
FOR depend +]\
[+depend+]-[+module+] [+
ENDFOR depend +]
- @[+ IF bootstrap +][+ ELSE +]: $(MAKE); $(unstage)
- @[+ ENDIF bootstrap +][ -f ./[+module+]/Makefile ] || exit 0; \
+ @[ -f ./[+module+]/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) [+extra_make_flags+]; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing [+make_target+] in [+module+]" ; \
- (cd $(HOST_SUBDIR)/[+module+] && \
+ (cd [+module+] && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
@@ -971,26 +1009,91 @@ maybe-[+make_target+]-[+module+]: [+make_target+]-[+module+]
# Modules which run on the target machine
# ---------------------------------------
[+ FOR target_modules +]
+.PHONY: configure-target-[+module+] maybe-configure-target-[+module+]
+maybe-configure-target-[+module+]:
+@if target-[+module+]
+maybe-configure-target-[+module+]: configure-target-[+module+]
-[+ IF raw_cxx +]
-[+ configure prefix="target-" subdir="$(TARGET_SUBDIR)"
- check_multilibs=true
- exports="$(RAW_CXX_TARGET_EXPORTS)"
- args="$(TARGET_CONFIGARGS)" no-config-site=true +]
+# There's only one multilib.out. Cleverer subdirs shouldn't need it copied.
+$(TARGET_SUBDIR)/[+module+]/multilib.out: multilib.out
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/[+module+] ; \
+ rm -f $(TARGET_SUBDIR)/[+module+]/Makefile || : ; \
+ cp multilib.out $(TARGET_SUBDIR)/[+module+]/multilib.out
-[+ all prefix="target-" subdir="$(TARGET_SUBDIR)"
- exports="$(RAW_CXX_TARGET_EXPORTS)"
- args="$(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'" +]
-[+ ELSE +]
-[+ configure prefix="target-" subdir="$(TARGET_SUBDIR)"
- check_multilibs=true
- exports="$(NORMAL_TARGET_EXPORTS)"
- args="$(TARGET_CONFIGARGS)" no-config-site=true +]
-
-[+ all prefix="target-" subdir="$(TARGET_SUBDIR)"
- exports="$(NORMAL_TARGET_EXPORTS)"
- args="$(TARGET_FLAGS_TO_PASS)" +]
-[+ ENDIF +]
+configure-target-[+module+]: $(TARGET_SUBDIR)/[+module+]/multilib.out
+ @test ! -f $(TARGET_SUBDIR)/[+module+]/Makefile || exit 0; \
+ $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/[+module+] ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \[+
+IF raw_cxx +]
+ $(RAW_CXX_TARGET_EXPORTS) \[+
+ELSE normal_cxx +]
+ $(NORMAL_TARGET_EXPORTS) \[+
+ENDIF raw_cxx +]
+ echo Configuring in $(TARGET_SUBDIR)/[+module+]; \
+ cd "$(TARGET_SUBDIR)/[+module+]" || exit 1; \
+ case $(srcdir) in \
+ /* | [A-Za-z]:[\\/]*) \
+ topdir=$(srcdir) ;; \
+ *) \
+ case "$(TARGET_SUBDIR)" in \
+ .) topdir="../$(srcdir)" ;; \
+ *) topdir="../../$(srcdir)" ;; \
+ esac ;; \
+ esac; \[+ IF stage +]
+ if [ "$(srcdir)" = "." ] ; then \
+ if [ "$(TARGET_SUBDIR)" != "." ] ; then \
+ if $(SHELL) $$s/symlink-tree $${topdir}/[+module+] "no-such-file" ; then \
+ if [ -f Makefile ]; then \
+ if $(MAKE) distclean; then \
+ true; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ else \
+ exit 1; \
+ fi; \
+ else \
+ true; \
+ fi; \
+ srcdiroption="--srcdir=."; \
+ libsrcdir="."; \
+ else \[+ ENDIF stage +]
+ srcdiroption="--srcdir=$${topdir}/[+module+]"; \
+ libsrcdir="$$s/[+module+]"; \[+ IF stage +]
+ fi; \[+ ENDIF stage +]
+ rm -f no-such-file || : ; \
+ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+ $(TARGET_CONFIGARGS) $${srcdiroption} \
+ --with-target-subdir="$(TARGET_SUBDIR)" [+extra_configure_flags+] \
+ || exit 1
+@endif target-[+module+]
+
+.PHONY: all-target-[+module+] maybe-all-target-[+module+]
+maybe-all-target-[+module+]:
+@if target-[+module+]
+TARGET-target-[+module+]=[+ IF target +][+target+][+ ELSE +]all[+ ENDIF target +]
+maybe-all-target-[+module+]: all-target-[+module+]
+all-target-[+module+]: configure-target-[+module+]
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \[+
+IF raw_cxx +]
+ $(RAW_CXX_TARGET_EXPORTS) \[+
+ELSE normal_cxx +]
+ $(NORMAL_TARGET_EXPORTS) \[+
+ENDIF raw_cxx +]
+ (cd $(TARGET_SUBDIR)/[+module+] && \
+ $(MAKE) $(TARGET_FLAGS_TO_PASS) [+
+ IF raw_cxx
+ +] 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' [+
+ ENDIF raw_cxx
+ +] [+extra_make_flags+] $(TARGET-target-[+module+]))
+@endif target-[+module+]
.PHONY: check-target-[+module+] maybe-check-target-[+module+]
maybe-check-target-[+module+]:
@@ -1001,9 +1104,9 @@ maybe-check-target-[+module+]: check-target-[+module+]
check-target-[+module+]:
[+ ELSE check +]
check-target-[+module+]:
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \[+
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \[+
IF raw_cxx +]
$(RAW_CXX_TARGET_EXPORTS) \[+
ELSE normal_cxx +]
@@ -1027,9 +1130,9 @@ maybe-install-target-[+module+]: install-target-[+module+]
install-target-[+module+]:
[+ ELSE install +]
install-target-[+module+]: installdirs
- @: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \[+
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \[+
IF raw_cxx +]
$(RAW_CXX_TARGET_EXPORTS) \[+
ELSE normal_cxx +]
@@ -1054,10 +1157,10 @@ maybe-[+make_target+]-target-[+module+]: [+make_target+]-target-[+module+]
FOR depend +]\
[+depend+]-target-[+module+] [+
ENDFOR depend +]
- @: $(MAKE); $(unstage)
@[ -f $(TARGET_SUBDIR)/[+module+]/Makefile ] || exit 0 ; \
r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \[+
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \[+
IF raw_cxx +]
$(RAW_CXX_TARGET_EXPORTS) \[+
ELSE normal_cxx +]
@@ -1093,9 +1196,9 @@ GCC_STRAP_TARGETS = bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstra
$(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Bootstrapping the compiler"; \
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -1113,28 +1216,32 @@ $(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
msg="Comparing stage2 and stage3 of the compiler"; \
compare=compare ;; \
esac; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "$$msg"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) all
profiledbootstrap: all-prebootstrap configure-gcc
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
echo "Bootstrapping training compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Building feedback based compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) all
@@ -1142,11 +1249,13 @@ profiledbootstrap: all-prebootstrap configure-gcc
cross: all-build all-gas all-ld
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
echo "Building the C and C++ compiler"; \
cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
echo "Building runtime libraries"; \
$(MAKE) $(RECURSE_FLAGS_TO_PASS) LANGUAGES="c c++" all
@endif gcc-no-bootstrap
@@ -1157,6 +1266,7 @@ check-gcc-c++:
@if [ -f ./gcc/Makefile ] ; then \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
else \
@@ -1180,6 +1290,7 @@ gcc-no-fixedincludes:
rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
$(HOST_EXPORTS) \
(cd ./gcc && \
$(MAKE) $(GCC_FLAGS_TO_PASS) install); \
@@ -1196,42 +1307,42 @@ gcc-no-fixedincludes:
# stage_last instead tracks the stage that was built last. These targets
# are dummy when toplevel bootstrap is not active.
-# While making host and target tools, symlinks to the final stage must be
-# there, so $(unstage) should be run at various points. To avoid excessive
-# recursive invocations of make, we "inline" them using a variable. These
-# must be referenced as ": $(MAKE) ; $(unstage)" rather than "$(unstage)"
-# to avoid warnings from the GNU Make job server.
-
-unstage = :
-stage = :
-current_stage = ""
-
+.PHONY: unstage
+unstage:
@if gcc-bootstrap
-unstage = [ -f stage_current ] || $(MAKE) `cat stage_last`-start
-stage = if [ -f stage_current ]; then $(MAKE) `cat stage_current`-end || exit 1; else :; fi
-current_stage = "`cat stage_current 2> /dev/null`"
+ @[ -f stage_current ] || $(MAKE) `cat stage_last`-start
@endif gcc-bootstrap
-.PHONY: unstage stage
-unstage:
- @: $(MAKE); $(unstage)
+.PHONY: stage
stage:
- @: $(MAKE); $(stage)
-
-# Disable commands for lean bootstrap.
-LEAN = false
+@if gcc-bootstrap
+ @$(MAKE) `cat stage_current`-end
+@endif gcc-bootstrap
# We name the build directories for the various stages "stage1-gcc",
# "stage2-gcc","stage3-gcc", etc.
# Since the 'compare' process will fail (on debugging information) if any
# directory names are different, we need to link the gcc directory for
-# the previous stage to a constant name ('prev-gcc'), and to make the name of
+# the previous stage to a constant name ('gcc-prev'), and to make the name of
# the build directories constant as well. For the latter, we use naked names
# like 'gcc', because the scripts in that directory assume it. We use
# mv on platforms where symlinks to directories do not work or are not
# reliable.
+# At the end of the bootstrap, a symlink to 'stage3-gcc' named 'gcc' must
+# be kept, so that libraries can find it. Ick!
+
+# It would be best to preinstall gcc into a staging area (and in the
+# future, gather there all prebootstrap packages). This would allow
+# assemblers and linkers can be bootstrapped as well as the compiler
+# (both in a combined tree, or separately). This however requires some
+# change to the gcc driver, again in order to avoid comparison failures.
+
+# Bugs: This is crippled when doing parallel make, the `make all-host'
+# and `make all-target' phases can be parallelized.
+
+
# 'touch' doesn't work right on some platforms.
STAMP = echo timestamp >
@@ -1250,10 +1361,8 @@ objext = .o
# Flags to pass to stage2 and later makes.
POSTSTAGE1_FLAGS_TO_PASS = \
CC="$${CC}" CC_FOR_BUILD="$${CC_FOR_BUILD}" \
- STAGE_PREFIX=$$r/prev-gcc/ \
+ STAGE_PREFIX=$$r/stage[+prev+]-gcc/ \
CFLAGS="$(BOOT_CFLAGS)" \
- LIBCFLAGS="$(BOOT_CFLAGS)" \
- LDFLAGS="$(BOOT_LDFLAGS)" \
ADAC="\$$(CC)"
# For stage 1:
@@ -1269,129 +1378,147 @@ POSTSTAGE1_FLAGS_TO_PASS = \
.PHONY: stage[+id+]-start stage[+id+]-end
stage[+id+]-start::
- @: $(MAKE); $(stage); \
+ @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
echo stage[+id+] > stage_current ; \
- echo stage[+id+] > stage_last; \
- $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)[+
- FOR host_modules +][+ IF bootstrap +]
+ echo stage[+id+] > stage_last[+ FOR host_modules +][+ IF bootstrap +]
@if [+ module +]
- @cd $(HOST_SUBDIR); [ -d stage[+id+]-[+module+] ] || \
- mkdir stage[+id+]-[+module+]; \
- mv stage[+id+]-[+module+] [+module+] [+ IF prev +] ; \
- mv stage[+prev+]-[+module+] prev-[+module+] || test -f stage[+prev+]-lean [+ ENDIF prev +]
+ @[ -d stage[+id+]-[+module+] ] || mkdir stage[+id+]-[+module+]; \
+ set stage[+id+]-[+module+] [+module+] ; @CREATE_LINK_TO_DIR@ [+ IF prev +] ; \
+ set stage[+prev+]-[+module+] prev-[+module+] ; @CREATE_LINK_TO_DIR@ [+ ENDIF prev +]
@endif [+ module +][+ ENDIF bootstrap +][+ ENDFOR host_modules +]
- @[ -d stage[+id+]-$(TARGET_SUBDIR) ] || \
- mkdir stage[+id+]-$(TARGET_SUBDIR); \
- mv stage[+id+]-$(TARGET_SUBDIR) $(TARGET_SUBDIR) [+ IF prev +] ; \
- mv stage[+prev+]-$(TARGET_SUBDIR) prev-$(TARGET_SUBDIR) || test -f stage[+prev+]-lean [+ ENDIF prev +]
-stage[+id+]-end:: [+ FOR host_modules +][+ IF bootstrap +]
+stage[+id+]-end::
+ @rm -f stage_current[+ FOR host_modules +][+ IF bootstrap +]
@if [+ module +]
- @if test -d $(HOST_SUBDIR)/[+module+] ; then \
- cd $(HOST_SUBDIR); mv [+module+] stage[+id+]-[+module+] [+ IF prev +]; \
- mv prev-[+module+] stage[+prev+]-[+module+] ; : [+ ENDIF prev +] ; \
- fi
+ @set [+module+] stage[+id+]-[+module+] ; @UNDO_LINK_TO_DIR@ [+ IF prev +] ; \
+ set prev-[+module+] stage[+prev+]-[+module+] ; @UNDO_LINK_TO_DIR@ [+ ENDIF prev +]
@endif [+ module +][+ ENDIF bootstrap +][+ ENDFOR host_modules +]
- @if test -d $(TARGET_SUBDIR) ; then \
- mv $(TARGET_SUBDIR) stage[+id+]-$(TARGET_SUBDIR) [+ IF prev +] ; \
- mv prev-$(TARGET_SUBDIR) stage[+prev+]-$(TARGET_SUBDIR) ; : [+ ENDIF prev +] ; \
- fi
- rm -f stage_current
-# Bubble a bugfix through all the stages up to stage [+id+]. They are
-# remade, but not reconfigured. The next stage (if any) will not be
-# reconfigured as well.
+# Bubble a bugfix through all the stages up to stage [+id+]. They
+# are remade, but not reconfigured. The next stage (if any) will not
+# be reconfigured as well.
.PHONY: stage[+id+]-bubble
-stage[+id+]-bubble:: [+ IF prev +]stage[+prev+]-bubble[+ ENDIF +]
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage[+id+]-lean [+
+stage[+id+]-bubble:: [+ IF prev +]stage[+prev+]-bubble[+ ENDIF +][+IF lean +]
+ @bootstrap_lean@-rm -rf stage[+lean+]-* ; $(STAMP) stage[+lean+]-lean[+ ENDIF lean +]
+ @if test -f stage[+id+]-lean [+
IF prev +]|| test -f stage[+prev+]-lean [+ ENDIF prev +] ; then \
echo Skipping rebuild of stage[+id+] ; \
else \
- $(MAKE) stage[+id+]-start; \[+IF lean +]
- if $(LEAN); then \
- rm -rf stage[+lean+]-* ; \
- $(STAMP) stage[+lean+]-lean ; \
- fi; \[+ ENDIF lean +]
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage[+id+]; \
- fi[+ IF compare-target +]
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) [+compare-target+][+ ENDIF compare-target +]
+ $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage[+id+]; \
+ fi
.PHONY: all-stage[+id+] clean-stage[+id+]
+all-stage[+id+]: [+ FOR host_modules +][+ IF bootstrap +]\
+ maybe-all-stage[+id+]-[+module+][+
+ENDIF bootstrap+] [+ ENDFOR host_modules +]
+
do-clean: clean-stage[+id+]
+clean-stage[+id+]: [+ FOR host_modules +][+ IF bootstrap +]\
+ maybe-clean-stage[+id+]-[+module+][+
+ENDIF bootstrap+] [+ ENDFOR host_modules +]
+
+[+ FOR host_modules +][+ IF bootstrap +]
+.PHONY: configure-stage[+id+]-[+module+] maybe-configure-stage[+id+]-[+module+]
+.PHONY: all-stage[+id+]-[+module+] maybe-all-stage[+id+]-[+module+]
+.PHONY: clean-stage[+id+]-[+module+] maybe-clean-stage[+id+]-[+module+]
+
+maybe-configure-stage[+id+]-[+module+]:
+maybe-all-stage[+id+]-[+module+]:
+maybe-clean-stage[+id+]-[+module+]:
+
+@if [+module+]-bootstrap
+maybe-configure-stage[+id+]-[+module+]: configure-stage[+id+]-[+module+]
+configure-stage[+id+]-[+module+]:
+ @$(MAKE) stage[+id+]-start
+ @[ -f [+module+]/Makefile ] && exit 0 || : ; \
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; [+ IF prev +] \
+ $(STAGE_HOST_EXPORTS) [+ ELSE prev +] \
+ $(HOST_EXPORTS) [+ ENDIF prev +] \
+ echo Configuring stage [+id+] in [+module+] ; \
+ cd [+module+] || exit 1; \
+ case $(srcdir) in \
+ \.) \
+ srcdiroption="--srcdir=."; \
+ libsrcdir=".";; \
+ /* | [A-Za-z]:[\\/]*) \
+ srcdiroption="--srcdir=$(srcdir)/[+module+]"; \
+ libsrcdir="$$s/[+module+]";; \
+ *) \
+ srcdiroption="--srcdir=../$(srcdir)/[+module+]"; \
+ libsrcdir="$$s/[+module+]";; \
+ esac; \
+ $(SHELL) $${libsrcdir}/configure \
+ $(HOST_CONFIGARGS) $${srcdiroption} \
+ [+stage_configure_flags+] [+extra_configure_flags+]
+
+maybe-all-stage[+id+]-[+module+]: all-stage[+id+]-[+module+]
+all-stage[+id+]-[+module+]: configure-stage[+id+]-[+module+]
+ @$(MAKE) stage[+id+]-start
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; [+ IF prev +] \
+ $(STAGE_HOST_EXPORTS) [+ ELSE prev +] \
+ $(HOST_EXPORTS) [+ ENDIF prev +] \
+ cd [+module+] && \
+ $(MAKE) $(FLAGS_TO_PASS) [+ IF prev +] \
+ $(POSTSTAGE1_FLAGS_TO_PASS) [+ ENDIF prev +] \
+ [+stage_make_flags+] [+extra_make_flags+]
+
+maybe-clean-stage[+id+]-[+module+]: clean-stage[+id+]-[+module+]
+clean-stage[+id+]-[+module+]:
+ @[ -f [+module+]/Makefile ] || [ -f stage[+id+]-[+module+]/Makefile ] \
+ || exit 0 ; \
+ [ -f [+module+]/Makefile ] || $(MAKE) stage[+id+]-start ; \
+ cd [+module+] && \
+ $(MAKE) $(FLAGS_TO_PASS) [+ IF prev +] \
+ $(POSTSTAGE1_FLAGS_TO_PASS) [+ ENDIF prev +] \
+ [+stage_make_flags+] [+extra_make_flags+] clean
+@endif [+module+]-bootstrap
+
+[+ ENDIF bootstrap +][+ ENDFOR host_modules +]
# FIXME: Will not need to be conditional when toplevel bootstrap is the
# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
[+ IF compare-target +]
[+compare-target+]:
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- if test -f stage[+prev+]-lean; then \
+ @if test -f stage[+prev+]-lean; then \
echo Cannot compare object files as stage [+prev+] was deleted. ; \
exit 0 ; \
fi; \
- : $(MAKE); $(stage); \
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
rm -f .bad_compare ; \
- echo Comparing stages [+prev+] and [+id+] ; \
cd stage[+id+]-gcc; \
files=`find . -name "*$(objext)" -print` ; \
cd .. ; \
for file in $${files} ; do \
f1=$$r/stage[+prev+]-gcc/$$file; f2=$$r/stage[+id+]-gcc/$$file; \
@do_compare@ > /dev/null 2>&1; \
- if test $$? -eq 1; then \
- case $$file in \
- ./cc*-checksum$(objext) | ./libgcc/* ) \
- echo warning: $$file differs ;; \
- *) \
- echo $$file differs >> .bad_compare ;; \
- esac ; \
- fi ; \
+ test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \
done ; \
if [ -f .bad_compare ]; then \
echo "Bootstrap comparison failure!"; \
cat .bad_compare; \
exit 1; \
else \
- echo Comparison successful.; \
+ true; \
fi ; \
$(STAMP) [+compare-target+][+ IF prev +]
- if $(LEAN); then \
- rm -rf stage[+prev+]-*; \
- $(STAMP) stage[+prev+]-lean; \
- fi[+ ENDIF prev +]
+ @bootstrap_lean@-rm -rf stage[+prev+]-* ; $(STAMP) stage[+prev+]-lean[+ ENDIF prev +]
[+ ENDIF compare-target +]
[+ IF bootstrap-target +]
-.PHONY: [+bootstrap-target+] [+bootstrap-target+]-lean
-[+bootstrap-target+]:
- echo stage[+id+] > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage[+id+]-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
-
-[+bootstrap-target+]-lean:
- echo stage[+id+] > stage_final
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) LEAN=: stage[+id+]-bubble
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+.PHONY: [+bootstrap-target+]
+[+bootstrap-target+]: stage[+id+]-bubble [+compare-target+] all
[+ ENDIF bootstrap-target +]
# Rules to wipe a stage and all the following ones, also used for cleanstrap
[+ IF prev +]distclean-stage[+prev+]:: distclean-stage[+id+] [+ ENDIF prev +]
.PHONY: distclean-stage[+id+]
distclean-stage[+id+]::
- @: $(MAKE); $(stage)
+ [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
rm -rf stage[+id+]-* [+
IF compare-target +][+compare-target+] [+ ENDIF compare-target +]
@@ -1403,54 +1530,50 @@ distclean-stage[+id+]::
[+ ENDFOR bootstrap-stage +]
-stageprofile-end::
- $(MAKE) distclean-stagefeedback
-
stagefeedback-start::
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- for i in prev-*; do \
- j=`echo $$i | sed s/^prev-//` ; \
- cd $$r/$$i && \
- { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../'$$j'/&",' | $(SHELL) ; } && \
- { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../'$$j'/&",' | $(SHELL) ; } ; \
- done
+ cd stageprofile-gcc && \
+ { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
+ { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
@if gcc-bootstrap
-do-distclean: distclean-stage1
-
-# Provide a GCC build when we're building target libraries. This does
-# not work as a dependency, just as the minimum necessary to avoid errors.
-stage_last:
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage1-bubble
+profiledbootstrap:
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
+ $(HOST_EXPORTS) \
+ echo "Bootstrapping the compiler"; \
+ $(MAKE) stageprofile-bubble distclean-stagefeedback
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+ $(SET_LIB_PATH) \
+ echo "Building runtime libraries and training compiler"; \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+ @r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(SET_LIB_PATH) \
+ $(HOST_EXPORTS) \
+ echo "Building feedback based compiler"; \
+ $(MAKE) stagefeedback-bubble stagefeedback-end
@endif gcc-bootstrap
-.PHONY: restrap
-restrap:
- @: $(MAKE); $(stage)
- rm -rf stage1-$(TARGET_SUBDIR) [+ FOR bootstrap-stage +][+ IF prev
- +]stage[+id+] [+ ENDIF prev +][+ ENDFOR bootstrap-stage +]
- $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+@if gcc-bootstrap
+NOTPARALLEL = .NOTPARALLEL
+$(NOTPARALLEL):
+do-distclean: distclean-stage1
+@endif gcc-bootstrap
# --------------------------------------
# Dependencies between different modules
# --------------------------------------
# Generic dependencies for target modules on host stuff, especially gcc
-@if gcc-bootstrap[+ FOR target_modules +][+ IF bootstrap
- +][+ FOR bootstrap_stage +]
-configure-stage[+id+]-target-[+module+]: maybe-all-stage[+id+]-gcc[+
- ENDFOR +][+ ELSE bootstrap +]
-configure-target-[+module+]: stage_last[+
- ENDIF bootstrap +][+ ENDFOR target_modules +]
-@endif gcc-bootstrap
-
-@if gcc-no-bootstrap[+ FOR target_modules +][+ IF bootstrap
- +][+ ELSE +]
-configure-target-[+module+]: maybe-all-gcc[+
- ENDIF bootstrap +][+ ENDFOR target_modules +]
-@endif gcc-no-bootstrap
-
+[+ FOR target_modules +]
+configure-target-[+module+]: maybe-all-gcc
+[+ ENDFOR target_modules +]
[+ FOR lang_env_dependencies +]
configure-target-[+module+]: maybe-all-target-newlib maybe-all-target-libgloss
@@ -1504,8 +1627,8 @@ configure-target-[+module+]: maybe-all-target-newlib maybe-all-target-libgloss
(define dep-maybe (lambda ()
(if (exist? "hard") "" "maybe-")))
- ;; dep-kind returns "normal" if the dependency is on an "install" target,
- ;; or if either module is not bootstrapped. It returns "bootstrap" for
+ ;; dep-kind returns "normal" is the dependency is on an "install" target,
+ ;; or if the LHS module is not bootstrapped. It returns "bootstrap" for
;; configure or build dependencies between bootstrapped modules; it returns
;; "prebootstrap" for configure or build dependencies of bootstrapped
;; modules on a build module (e.g. all-gcc on all-build-bison). All this
@@ -1516,8 +1639,8 @@ configure-target-[+module+]: maybe-all-target-newlib maybe-all-target-libgloss
"prebootstrap"
(if (or (= (dep-subtarget "on") "install-")
- (not (hash-ref boot-modules (dep-module "module")))
- (not (hash-ref boot-modules (dep-module "on"))))
+ (=* (dep-module "on") "target-")
+ (not (hash-ref boot-modules (dep-module "module"))))
"normal"
"bootstrap"))))
@@ -1529,10 +1652,6 @@ configure-target-[+module+]: maybe-all-target-newlib maybe-all-target-libgloss
(if (exist? "bootstrap")
(hash-create-handle! boot-modules (get "module") #t))
"" +][+ ENDFOR host_modules +]
-[+ FOR target_modules +][+
- (if (exist? "bootstrap")
- (hash-create-handle! boot-modules (string-append "target-" (get "module")) #t))
- "" +][+ ENDFOR target_modules +]
# With all the machinery above in place, it is pretty easy to generate
# dependencies. Host dependencies are a bit more complex because we have
@@ -1564,12 +1683,8 @@ all-prebootstrap: maybe-all-[+module+][+
ENDFOR host_modules +]
@endif gcc-no-bootstrap
-CONFIGURE_GDB_TK = @CONFIGURE_GDB_TK@
GDB_TK = @GDB_TK@
-INSTALL_GDB_TK = @INSTALL_GDB_TK@
-configure-gdb: $(CONFIGURE_GDB_TK)
all-gdb: $(gdbnlmrequirements) $(GDB_TK)
-install-gdb: $(INSTALL_GDB_TK)
# Serialization dependencies. Host configures don't work well in parallel to
# each other, due to contention over config.cache. Target configures and
@@ -1580,6 +1695,17 @@ install-gdb: $(INSTALL_GDB_TK)
# Regenerating top level configury
# --------------------------------
+# Multilib.out tells target dirs what multilibs they should build.
+# There is really only one copy. We use the 'timestamp' method to
+# work around various timestamp bugs on some systems.
+# We use move-if-change so that it's only considered updated when it
+# actually changes, because it has to depend on a phony target.
+multilib.out: maybe-all-gcc
+ @r=`${PWD_COMMAND}`; export r; \
+ echo "Checking multilib configuration..."; \
+ $(CC_FOR_TARGET) --print-multi-lib > multilib.tmp 2> /dev/null ; \
+ $(SHELL) $(srcdir)/move-if-change multilib.tmp multilib.out ; \
+
# Rebuilding Makefile.in, using autogen.
AUTOGEN = autogen
$(srcdir)/Makefile.in: @MAINT@ $(srcdir)/Makefile.tpl $(srcdir)/Makefile.def
@@ -1589,7 +1715,7 @@ $(srcdir)/Makefile.in: @MAINT@ $(srcdir)/Makefile.tpl $(srcdir)/Makefile.def
Makefile: $(srcdir)/Makefile.in config.status
CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-config.status: configure
+config.status: configure $(gcc_version_trigger)
CONFIG_SHELL="$(SHELL)" $(SHELL) ./config.status --recheck
# Rebuilding configure.
diff --git a/config-ml.in b/config-ml.in
index 937273173..34874ce8b 100644
--- a/config-ml.in
+++ b/config-ml.in
@@ -16,8 +16,8 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor,
-# Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -546,7 +546,6 @@ multi-do:
flags=`echo $$i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) \
CFLAGS="$(CFLAGS) $${flags}" \
- FCFLAGS="$(FCFLAGS) $${flags}" \
FFLAGS="$(FFLAGS) $${flags}" \
ADAFLAGS="$(ADAFLAGS) $${flags}" \
prefix="$(prefix)" \
@@ -780,14 +779,13 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
break
fi
done
- ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags"'
+ ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags"'
if [ "${with_target_subdir}" = "." ]; then
CC_=$CC' '
CXX_=$CXX' '
F77_=$F77' '
GCJ_=$GCJ' '
- GFORTRAN_=$GFORTRAN' '
else
# Create a regular expression that matches any string as long
# as ML_POPDIR.
@@ -840,18 +838,6 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
esac
done
- GFORTRAN_=
- for arg in ${GFORTRAN}; do
- case $arg in
- -[BIL]"${ML_POPDIR}"/*)
- GFORTRAN_="${GFORTRAN_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
- "${ML_POPDIR}"/*)
- GFORTRAN_="${GFORTRAN_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;;
- *)
- GFORTRAN_="${GFORTRAN_}${arg} " ;;
- esac
- done
-
if test "x${LD_LIBRARY_PATH+set}" = xset; then
LD_LIBRARY_PATH_=
for arg in `echo "$LD_LIBRARY_PATH" | tr ':' ' '`; do
diff --git a/config.guess b/config.guess
index 17690aea3..7d0185e01 100755
--- a/config.guess
+++ b/config.guess
@@ -1,9 +1,9 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-timestamp='2006-01-02'
+timestamp='2004-09-07'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -17,15 +17,13 @@ timestamp='2006-01-02'
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-
# Originally written by Per Bothner <per@bothner.com>.
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
@@ -55,7 +53,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
@@ -68,11 +66,11 @@ Try \`$me --help' for more information."
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
+ echo "$timestamp" ; exit 0 ;;
--version | -v )
- echo "$version" ; exit ;;
+ echo "$version" ; exit 0 ;;
--help | --h* | -h )
- echo "$usage"; exit ;;
+ echo "$usage"; exit 0 ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -125,7 +123,7 @@ case $CC_FOR_BUILD,$HOST_CC,$CC in
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
+esac ;'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
@@ -198,23 +196,55 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
- exit ;;
+ exit 0 ;;
+ amd64:OpenBSD:*:*)
+ echo x86_64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ amiga:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ cats:OpenBSD:*:*)
+ echo arm-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ hp300:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ luna88k:OpenBSD:*:*)
+ echo m88k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mac68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme88k:OpenBSD:*:*)
+ echo m88k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvmeppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sgi:OpenBSD:*:*)
+ echo mips64-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sun3:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
*:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
- exit ;;
+ echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
*:ekkoBSD:*:*)
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit ;;
- *:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
macppc:MirBSD:*:*)
echo powerppc-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:MirBSD:*:*)
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
@@ -267,43 +297,37 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit ;;
+ exit 0 ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
# of the specific Alpha model?
echo alpha-pc-interix
- exit ;;
+ exit 0 ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
- exit ;;
+ exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
- exit ;;
+ exit 0;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
- exit ;;
+ exit 0 ;;
*:[Mm]orph[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-morphos
- exit ;;
+ exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
+ exit 0 ;;
*:OS400:*:*)
echo powerpc-ibm-os400
- exit ;;
+ exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
+ exit 0;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
- exit ;;
+ exit 0;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
@@ -311,32 +335,32 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
else
echo pyramid-pyramid-bsd
fi
- exit ;;
+ exit 0 ;;
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
- exit ;;
+ exit 0 ;;
DRS?6000:unix:4.0:6*)
echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ exit 0 ;;
+ DRS?6000:UNIX_SV:4.2*:7*)
case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
+ sparc) echo sparc-icl-nx7 && exit 0 ;;
esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
+ exit 0 ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
+ exit 0 ;;
i86pc:SunOS:5.*:*)
echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
+ exit 0 ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
+ exit 0 ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
Series*|S4*)
@@ -345,10 +369,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit ;;
+ exit 0 ;;
sun3*:SunOS:*:*)
echo m68k-sun-sunos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
@@ -360,10 +384,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
echo sparc-sun-sunos${UNAME_RELEASE}
;;
esac
- exit ;;
+ exit 0 ;;
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
@@ -374,40 +398,40 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
m68k:machten:*:*)
echo m68k-apple-machten${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
- exit ;;
+ exit 0 ;;
RISC*:ULTRIX:*:*)
echo mips-dec-ultrix${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -431,33 +455,32 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
exit (-1);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
- { echo "$SYSTEM_NAME"; exit; }
+ $CC_FOR_BUILD -o $dummy $dummy.c \
+ && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+ && exit 0
echo mips-mips-riscos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
- exit ;;
+ exit 0 ;;
Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax
- exit ;;
+ exit 0 ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
echo powerpc-harris-powermax
- exit ;;
+ exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
- exit ;;
+ exit 0 ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
- exit ;;
+ exit 0 ;;
m88k:*:4*:R4*)
echo m88k-motorola-sysv4
- exit ;;
+ exit 0 ;;
m88k:*:3*:R3*)
echo m88k-motorola-sysv3
- exit ;;
+ exit 0 ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
@@ -473,29 +496,29 @@ EOF
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
- exit ;;
+ exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
- exit ;;
+ exit 0 ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
echo m88k-motorola-sysv3
- exit ;;
+ exit 0 ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3
- exit ;;
+ exit 0 ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
- exit ;;
+ exit 0 ;;
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit ;;
+ exit 0 ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*)
echo i386-ibm-aix
- exit ;;
+ exit 0 ;;
ia64:AIX:*:*)
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
@@ -503,7 +526,7 @@ EOF
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit ;;
+ exit 0 ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
eval $set_cc_for_build
@@ -518,18 +541,14 @@ EOF
exit(0);
}
EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
+ $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+ echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
else
echo rs6000-ibm-aix3.2
fi
- exit ;;
+ exit 0 ;;
*:AIX:*:[45])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
@@ -543,28 +562,28 @@ EOF
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit ;;
+ exit 0 ;;
*:AIX:*:*)
echo rs6000-ibm-aix
- exit ;;
+ exit 0 ;;
ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4
- exit ;;
+ exit 0 ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
+ exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
- exit ;;
+ exit 0 ;;
DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3
- exit ;;
+ exit 0 ;;
9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd
- exit ;;
+ exit 0 ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
- exit ;;
+ exit 0 ;;
9000/[34678]??:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
case "${UNAME_MACHINE}" in
@@ -626,19 +645,9 @@ EOF
esac
if [ ${HP_ARCH} = "hppa2.0w" ]
then
- eval $set_cc_for_build
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep __LP64__ >/dev/null
+ # avoid double evaluation of $set_cc_for_build
+ test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
then
HP_ARCH="hppa2.0w"
else
@@ -646,11 +655,11 @@ EOF
fi
fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit ;;
+ exit 0 ;;
ia64:HP-UX:*:*)
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ia64-hp-hpux${HPUX_REV}
- exit ;;
+ exit 0 ;;
3050*:HI-UX:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -678,171 +687,158 @@ EOF
exit (0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
+ $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
echo unknown-hitachi-hiuxwe2
- exit ;;
+ exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
echo hppa1.1-hp-bsd
- exit ;;
+ exit 0 ;;
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
- exit ;;
+ exit 0 ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
- exit ;;
+ exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
echo hppa1.1-hp-osf
- exit ;;
+ exit 0 ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
- exit ;;
+ exit 0 ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
echo ${UNAME_MACHINE}-unknown-osf1
fi
- exit ;;
+ exit 0 ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
- exit ;;
+ exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
- exit ;;
+ exit 0 ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit ;;
+ exit 0 ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
- exit ;;
+ exit 0 ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
- exit ;;
+ exit 0 ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
- exit ;;
+ exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
*:UNICOS/mp:*:*)
echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
+ exit 0 ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
+ exit 0 ;;
5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
+ exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:FreeBSD:*:*)
- case ${UNAME_MACHINE} in
- pc98)
- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
+ exit 0 ;;
i*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
- exit ;;
+ exit 0 ;;
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
- exit ;;
- x86:Interix*:[345]*)
+ exit 0 ;;
+ x86:Interix*:[34]*)
echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
- exit ;;
+ exit 0 ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
- exit ;;
+ exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
echo i586-pc-interix
- exit ;;
+ exit 0 ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
+ exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin
- exit ;;
+ exit 0 ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
+ exit 0 ;;
*:GNU:*:*)
# the GNU system
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
+ exit 0 ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit ;;
+ exit 0 ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
- exit ;;
+ exit 0 ;;
arm*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
cris:Linux:*:*)
echo cris-axis-linux-gnu
- exit ;;
+ exit 0 ;;
crisv32:Linux:*:*)
echo crisv32-axis-linux-gnu
- exit ;;
+ exit 0 ;;
frv:Linux:*:*)
echo frv-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
m32r*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
mips:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
@@ -859,8 +855,8 @@ EOF
#endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`"
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
;;
mips64:Linux:*:*)
eval $set_cc_for_build
@@ -878,18 +874,15 @@ EOF
#endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^CPU/{s: ::g;p;}'`"
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
;;
- or32:Linux:*:*)
- echo or32-unknown-linux-gnu
- exit ;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
ppc64:Linux:*:*)
echo powerpc64-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
@@ -903,7 +896,7 @@ EOF
objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit ;;
+ exit 0 ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@@ -911,28 +904,25 @@ EOF
PA8*) echo hppa2.0-unknown-linux-gnu ;;
*) echo hppa-unknown-linux-gnu ;;
esac
- exit ;;
+ exit 0 ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
echo hppa64-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
- exit ;;
+ exit 0 ;;
sh64*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
sh*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
- exit ;;
+ exit 0 ;;
x86_64:Linux:*:*)
echo x86_64-unknown-linux-gnu
- exit ;;
+ exit 0 ;;
i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
@@ -950,15 +940,15 @@ EOF
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit ;;
+ exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit ;;
+ exit 0 ;;
"")
# Either a pre-BFD a.out linker (linux-gnuoldld) or
# one that does not give us useful --help.
echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit ;;
+ exit 0 ;;
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
@@ -975,7 +965,7 @@ EOF
LIBC=gnulibc1
# endif
#else
- #if defined(__INTEL_COMPILER) || defined(__PGI)
+ #ifdef __INTEL_COMPILER
LIBC=gnu
#else
LIBC=gnuaout
@@ -985,19 +975,16 @@ EOF
LIBC=dietlibc
#endif
EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '/^LIBC/{s: ::g;p;}'`"
- test x"${LIBC}" != x && {
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit
- }
- test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
+ test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
echo i386-sequent-sysv4
- exit ;;
+ exit 0 ;;
i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
@@ -1005,27 +992,27 @@ EOF
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit ;;
+ exit 0 ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
echo ${UNAME_MACHINE}-pc-os2-emx
- exit ;;
+ exit 0 ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
- exit ;;
+ exit 0 ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
+ exit 0 ;;
+ i*86:syllable:*:*)
echo ${UNAME_MACHINE}-pc-syllable
- exit ;;
+ exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit ;;
+ exit 0 ;;
i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -1033,16 +1020,15 @@ EOF
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ exit 0 ;;
+ i*86:*:5:[78]*)
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit ;;
+ exit 0 ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
@@ -1060,73 +1046,73 @@ EOF
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
- exit ;;
+ exit 0 ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
- exit ;;
+ exit 0 ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
- exit ;;
+ exit 0 ;;
paragon:*:*:*)
echo i860-intel-osf1
- exit ;;
+ exit 0 ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
fi
- exit ;;
+ exit 0 ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
echo m68010-convergent-sysv
- exit ;;
+ exit 0 ;;
mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv
- exit ;;
+ exit 0 ;;
M680?0:D-NIX:5.3:*)
echo m68k-diab-dnix
- exit ;;
+ exit 0 ;;
M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+ test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ && echo i486-ncr-sysv4.3${OS_REL} && exit 0
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
+ && echo i486-ncr-sysv4 && exit 0 ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
- exit ;;
+ exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
- exit ;;
+ exit 0 ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
- exit ;;
+ exit 0 ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1134,72 +1120,69 @@ EOF
else
echo ns32k-sni-sysv
fi
- exit ;;
+ exit 0 ;;
PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
- exit ;;
+ exit 0 ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
- exit ;;
+ exit 0 ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green@stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
- exit ;;
+ exit 0 ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
- exit ;;
+ exit 0 ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
- exit ;;
+ exit 0 ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
- exit ;;
+ exit 0 ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
- exit ;;
+ exit 0 ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
- exit ;;
+ exit 0 ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
- exit ;;
+ exit 0 ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
SX-6:SUPER-UX:*:*)
echo sx6-nec-superux${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
case $UNAME_PROCESSOR in
+ *86) UNAME_PROCESSOR=i686 ;;
unknown) UNAME_PROCESSOR=powerpc ;;
esac
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = "x86"; then
@@ -1207,25 +1190,22 @@ EOF
UNAME_MACHINE=pc
fi
echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
- exit ;;
- NSE-?:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
- exit ;;
+ exit 0 ;;
BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv
- exit ;;
+ exit 0 ;;
DS/*:UNIX_System_V:*:*)
echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
@@ -1236,47 +1216,38 @@ EOF
UNAME_MACHINE="$cputype"
fi
echo ${UNAME_MACHINE}-unknown-plan9
- exit ;;
+ exit 0 ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
- exit ;;
+ exit 0 ;;
*:TENEX:*:*)
echo pdp10-unknown-tenex
- exit ;;
+ exit 0 ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20
- exit ;;
+ exit 0 ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
echo pdp10-xkl-tops20
- exit ;;
+ exit 0 ;;
*:TOPS-20:*:*)
echo pdp10-unknown-tops20
- exit ;;
+ exit 0 ;;
*:ITS:*:*)
echo pdp10-unknown-its
- exit ;;
+ exit 0 ;;
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
- exit ;;
+ exit 0 ;;
*:DragonFly:*:*)
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit ;;
+ exit 0 ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
- exit ;;
- i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
- exit ;;
+ A*) echo alpha-dec-vms && exit 0 ;;
+ I*) echo ia64-dec-vms && exit 0 ;;
+ V*) echo vax-dec-vms && exit 0 ;;
+ esac
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1308,7 +1279,7 @@ main ()
#endif
#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
+ printf ("arm-acorn-riscix"); exit (0);
#endif
#if defined (hp300) && !defined (hpux)
@@ -1397,12 +1368,11 @@ main ()
}
EOF
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
# Apollos put the system type in the environment.
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
# Convex versions that predate uname can use getsysinfo(1)
@@ -1411,22 +1381,22 @@ then
case `getsysinfo -f cpu_type` in
c1*)
echo c1-convex-bsd
- exit ;;
+ exit 0 ;;
c2*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit ;;
+ exit 0 ;;
c34*)
echo c34-convex-bsd
- exit ;;
+ exit 0 ;;
c38*)
echo c38-convex-bsd
- exit ;;
+ exit 0 ;;
c4*)
echo c4-convex-bsd
- exit ;;
+ exit 0 ;;
esac
fi
@@ -1437,9 +1407,7 @@ This script, last modified $timestamp, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
-and
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+ ftp://ftp.gnu.org/pub/gnu/config/
If the version you run ($0) is already up to date, please
send the following data and any information you think might be
diff --git a/config.if b/config.if
new file mode 100644
index 000000000..2655bc3b5
--- /dev/null
+++ b/config.if
@@ -0,0 +1,37 @@
+#! /dev/null
+# Don't call it directly. This shell script fragment is called to
+# determine:
+#
+# 1. libstcxx_incdir: the interface name for libstdc++.
+#
+
+# Get the top level src dir.
+if [ -z "${topsrcdir}" -a -z "${top_srcdir}" ]
+then
+ echo "Undefined top level src dir: topsrcdir and top_srcdir are empty" >&2
+ exit 1
+fi
+
+if [ -n "${topsrcdir}" ]
+then
+ if_topsrcdir=${topsrcdir}
+else
+ if_topsrcdir=${top_srcdir}
+fi
+
+# Set libstdcxx_incdir.
+# This is the same as gcc/configure.in and libstdc++-v3/acinclude.m4.
+if test -z "$gcc_version"; then
+ if test -z "${gcc_version_trigger}" \
+ && test -f ${if_topsrcdir}/gcc/version.c; then
+ gcc_version_trigger=${if_topsrcdir}/gcc/version.c
+ fi
+ if test -f "${gcc_version_trigger}"; then
+ gcc_version_full=`grep version_string "${gcc_version_trigger}" | sed -e 's/.*"\([^"]*\)".*/\1/'`
+ else
+ gcc_version_full=`$CC -v 2>&1 | sed -n 's/^gcc version //p'`
+ fi
+ gcc_version=`echo ${gcc_version_full} | sed -e 's/\([^ ]*\) .*/\1/'`
+fi
+libstdcxx_incdir=c++/${gcc_version}
+
diff --git a/config.sub b/config.sub
index a4e8a94a3..edb6b663c 100755
--- a/config.sub
+++ b/config.sub
@@ -1,9 +1,9 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-timestamp='2006-01-02'
+timestamp='2004-08-29'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -21,15 +21,14 @@ timestamp='2006-01-02'
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
+# Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
#
@@ -71,7 +70,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
@@ -84,11 +83,11 @@ Try \`$me --help' for more information."
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
+ echo "$timestamp" ; exit 0 ;;
--version | -v )
- echo "$version" ; exit ;;
+ echo "$version" ; exit 0 ;;
--help | --h* | -h )
- echo "$usage"; exit ;;
+ echo "$usage"; exit 0 ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -100,7 +99,7 @@ while test $# -gt 0 ; do
*local*)
# First pass through any local machine types.
echo $1
- exit ;;
+ exit 0;;
* )
break ;;
@@ -119,9 +118,8 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
+ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -172,10 +170,6 @@ case $os in
-hiux*)
os=-hiuxwe2
;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
-sco5)
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -192,10 +186,6 @@ case $os in
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -241,14 +231,13 @@ case $basic_machine in
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
- | bfin \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
| fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
- | m32r | m32rle | m68000 | m68k | m88k | maxq | mb | microblaze | mcore \
+ | m32r | m32rle | m68000 | m68k | m88k | mcore \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
@@ -257,7 +246,6 @@ case $basic_machine in
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
| mipsisa64 | mipsisa64el \
@@ -266,28 +254,23 @@ case $basic_machine in
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
- | mt \
| msp430 \
| ns16k | ns32k \
- | or32 \
+ | openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
- | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b \
+ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
- | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | x86 | xscale | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
- m32c)
- basic_machine=$basic_machine-unknown
- ;;
m6811 | m68hc11 | m6812 | m68hc12)
# Motorola 68HC11/12.
basic_machine=$basic_machine-unknown
@@ -295,9 +278,6 @@ case $basic_machine in
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;;
- ms1)
- basic_machine=mt-unknown
- ;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
@@ -318,7 +298,7 @@ case $basic_machine in
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* \
- | bfin-* | bs2000-* \
+ | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
@@ -330,7 +310,7 @@ case $basic_machine in
| ip2k-* | iq2000-* \
| m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* \
+ | m88110-* | m88k-* | mcore-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
@@ -339,7 +319,6 @@ case $basic_machine in
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa64-* | mipsisa64el-* \
@@ -348,7 +327,6 @@ case $basic_machine in
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
- | mt-* \
| msp430-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
@@ -356,23 +334,20 @@ case $basic_machine in
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
- | sparclite-* \
+ | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa-* \
+ | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
+ | xtensa-* \
| ymp-* \
| z8k-*)
;;
- m32c-*)
- ;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
@@ -514,10 +489,6 @@ case $basic_machine in
basic_machine=m88k-motorola
os=-sysv3
;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
dpx20 | dpx20-*)
basic_machine=rs6000-bull
os=-bosx
@@ -708,9 +679,6 @@ case $basic_machine in
basic_machine=i386-pc
os=-msdos
;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
mvs)
basic_machine=i370-ibm
os=-mvs
@@ -786,8 +754,9 @@ case $basic_machine in
basic_machine=hppa1.1-oki
os=-proelf
;;
- openrisc | openrisc-*)
+ or32 | or32-*)
basic_machine=or32-unknown
+ os=-coff
;;
os400)
basic_machine=powerpc-ibm
@@ -818,12 +787,6 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
@@ -880,10 +843,6 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@@ -1070,10 +1029,6 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
xps | xps100)
basic_machine=xps100-honeywell
;;
@@ -1123,9 +1078,12 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
- sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+ sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
sparc | sparcv8 | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
@@ -1199,23 +1157,20 @@ case $os in
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos*)
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1233,7 +1188,7 @@ case $os in
os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
@@ -1342,9 +1297,6 @@ case $os in
-kaos*)
os=-kaos
;;
- -zvmoe)
- os=-zvmoe
- ;;
-none)
;;
*)
@@ -1422,9 +1374,6 @@ case $basic_machine in
*-be)
os=-beos
;;
- *-haiku)
- os=-haiku
- ;;
*-ibm)
os=-aix
;;
@@ -1596,7 +1545,7 @@ case $basic_machine in
esac
echo $basic_machine$os
-exit
+exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/config/ChangeLog b/config/ChangeLog
index 1ddcfd416..5e417bdd2 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,113 +1,3 @@
-2006-02-14 Paolo Bonzini <bonzini@gnu.org>
- Andreas Schwab <schwab@suse.de>
-
- * acx.m4 (NCN_STRICT_CHECK_TARGET_TOOLS): Use correct program name.
- (ACX_CHECK_INSTALLED_TARGET_TOOL): Likewise, and always set $1.
-
-2006-01-26 Paolo Bonzini <bonzini@gnu.org>
-
- * acx.m4 (NCN_STRICT_CHECK_TARGET_TOOLS): Test $with_build_time_tools.
- (ACX_PATH_SEP): New.
- (ACX_TOOL_DIRS): Move here from the gcc directory.
- (ACX_CHECK_INSTALLED_TARGET_TOOL): New.
- (GCC_TARGET_TOOL): Do not use a host tool if we found a target tool
- with a complete path in either $with_build_time_tools or $exec_prefix.
-
-2006-01-02 Paolo Bonzini <bonzini@gnu.org>
-
- PR target/25259
- * stdint.m4: New.
-
-2005-12-20 Paolo Bonzini <bonzini@gnu.org>
-
- Revert Ada-related part of the previous change.
-
- * mt-ppc-aix: Delete.
-
-2005-12-19 Paolo Bonzini <bonzini@gnu.org>
-
- * mt-ppc-aix, mh-ppc-aix: New.
-
-2005-12-05 Paolo Bonzini <bonzini@gnu.org>
-
- * acx.m4 (GCC_TARGET_TOOL): New.
-
-2005-09-23 Tom Tromey <tromey@redhat.com>
-
- * enable.m4: New file.
- * tls.m4: New file.
-
-2005-08-12 Paolo Bonzini <bonzini@gnu.org>
-
- * config/acx.m4 (NCN_CHECK_TARGET_TOOL, NCN_STRICT_CHECK_TOOL,
- NCN_STRICT_CHECK_TARGET_TOOL): Remove.
- (NCN_STRICT_CHECK_TOOLS, NCN_STRICT_CHECK_TARGET_TOOLS): New,
- based on the deleted macros.
-
-2005-07-27 Mark Mitchell <mark@codesourcery.com>
-
- * mt-gnu (CXXFLAGS): Include SYSROOT_CFLAGS_FOR_TARGET.
-
-2005-07-16 Kelley Cook <kcook@gcc.gnu.org>
-
- * all files: Update FSF address.
-
-2005-06-14 Tom Tromey <tromey@redhat.com>
-
- PR libgcj/19877:
- * no-executables.m4: Call real AC_FUNC_MMAP when cache variable
- is set but not 'no'.
-
-2005-06-13 Zack Weinberg <zack@codesourcery.com>
-
- * depstand.m4, lead-dot.m4: New files.
-
-2005-05-19 Kelley Cook <kcook@gcc.gnu.org>
-
- * accross.m4: Delete file.
-
-2005-05-12 Ryota Kunisawa <kunisawa@access.co.jp>
-
- PR bootstrap/21230
- * warnings.m4 (ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Add
- double quotes around GCC variable.
-
-2005-04-29 Paolo Bonzini <bonzini@gnu.org>
-
- * acx.m4 (ACX_PROG_GNAT): Remove stray break.
-
-2005-03-31 Paolo Bonzini <bonzini@gnu.org>
-
- * gcc-lib-path.m4: Remove.
-
-2005-03-21 Zack Weinberg <zack@codesourcery.com>
-
- * gxx-include-dir.m4: In all substitutions, leave $(gcc_version)
- to be expanded by the Makefile.
-
-2005-03-15 Zack Weinberg <zack@codesourcery.com>
-
- * gcc-version.m4: Delete.
-
-2005-02-28 Paolo Bonzini <bonzini@gnu.org>
-
- PR bootstrap/17383
- * acx.m4 (GCC_TOPLEV_SUBDIRS): Set HOST_SUBDIR if an in-src
- gcc build is going.
-
-2005-01-23 Joseph S. Myers <joseph@codesourcery.com>
-
- * warnings.m4 (ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Don't do
- anything for non-GCC compilers.
-
-2004-12-03 Richard Sandiford <rsandifo@redhat.com>
-
- * gxx-include-dir.m4: New file.
-
-2004-12-02 Richard Sandiford <rsandifo@redhat.com>
-
- * gcc-version.m4: New file.
-
2004-09-24 Zack Weinberg <zack@codesourcery.com>
* warnings.m4: New file.
diff --git a/config/accross.m4 b/config/accross.m4
new file mode 100644
index 000000000..535a6f5c0
--- /dev/null
+++ b/config/accross.m4
@@ -0,0 +1,98 @@
+AC_DEFUN([AC_COMPILE_CHECK_SIZEOF],
+[changequote(<<, >>)dnl
+dnl The name to #define.
+define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
+dnl The cache variable name.
+define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
+changequote([, ])dnl
+AC_MSG_CHECKING(size of $1)
+AC_CACHE_VAL(AC_CV_NAME,
+[for ac_size in 4 8 1 2 16 12 $2 ; do # List sizes in rough order of prevalence.
+ AC_TRY_COMPILE([#include "confdefs.h"
+#include <sys/types.h>
+$2
+], [switch (0) case 0: case (sizeof ($1) == $ac_size):;], AC_CV_NAME=$ac_size)
+ if test x$AC_CV_NAME != x ; then break; fi
+done
+])
+if test x$AC_CV_NAME = x ; then
+ AC_MSG_ERROR([cannot determine a size for $1])
+fi
+AC_MSG_RESULT($AC_CV_NAME)
+AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1])
+undefine([AC_TYPE_NAME])dnl
+undefine([AC_CV_NAME])dnl
+])
+
+AC_DEFUN([AC_C_BIGENDIAN_CROSS],
+[AC_CACHE_CHECK(whether byte ordering is bigendian, ac_cv_c_bigendian,
+[ac_cv_c_bigendian=unknown
+# See if sys/param.h defines the BYTE_ORDER macro.
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/param.h>], [
+#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
+ bogus endian macros
+#endif], [# It does; now see whether it defined to BIG_ENDIAN or not.
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/param.h>], [
+#if BYTE_ORDER != BIG_ENDIAN
+ not big endian
+#endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)])
+if test $ac_cv_c_bigendian = unknown; then
+AC_TRY_RUN([main () {
+ /* Are we little or big endian? From Harbison&Steele. */
+ union
+ {
+ long l;
+ char c[sizeof (long)];
+ } u;
+ u.l = 1;
+ exit (u.c[sizeof (long) - 1] == 1);
+}], ac_cv_c_bigendian=no, ac_cv_c_bigendian=yes,
+[ echo $ac_n "cross-compiling... " 2>&AC_FD_MSG ])
+fi])
+if test $ac_cv_c_bigendian = unknown; then
+AC_MSG_CHECKING(to probe for byte ordering)
+[
+cat >conftest.c <<EOF
+short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+short ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+void _ascii() { char* s = (char*) ascii_mm; s = (char*) ascii_ii; }
+short ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+short ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
+void _ebcdic() { char* s = (char*) ebcdic_mm; s = (char*) ebcdic_ii; }
+int main() { _ascii (); _ebcdic (); return 0; }
+EOF
+] if test -f conftest.c ; then
+ if ${CC-cc} ${CFLAGS} -c conftest.c -o conftest.o && test -f conftest.o ; then
+ if test `grep -l BIGenDianSyS conftest.o` ; then
+ echo $ac_n ' big endian probe OK, ' 1>&AC_FD_MSG
+ ac_cv_c_bigendian=yes
+ fi
+ if test `grep -l LiTTleEnDian conftest.o` ; then
+ echo $ac_n ' little endian probe OK, ' 1>&AC_FD_MSG
+ if test $ac_cv_c_bigendian = yes ; then
+ ac_cv_c_bigendian=unknown;
+ else
+ ac_cv_c_bigendian=no
+ fi
+ fi
+ echo $ac_n 'guessing bigendian ... ' >&AC_FD_MSG
+ fi
+ fi
+AC_MSG_RESULT($ac_cv_c_bigendian)
+fi
+if test $ac_cv_c_bigendian = yes; then
+ AC_DEFINE(WORDS_BIGENDIAN, 1, [whether byteorder is bigendian])
+ AC_DEFINE(HOST_WORDS_BIG_ENDIAN, 1,
+ [Define if the host machine stores words of multi-word integers in
+ big-endian order.])
+ BYTEORDER=4321
+else
+ BYTEORDER=1234
+fi
+AC_DEFINE_UNQUOTED(BYTEORDER, $BYTEORDER, [1234 = LIL_ENDIAN, 4321 = BIGENDIAN])
+if test $ac_cv_c_bigendian = unknown; then
+ AC_MSG_ERROR([unknown endianess - sorry, please pre-set ac_cv_c_bigendian])
+fi
+])
diff --git a/config/acx.m4 b/config/acx.m4
index 7c4c21386..d4a583dc6 100644
--- a/config/acx.m4
+++ b/config/acx.m4
@@ -76,13 +76,8 @@ AC_DEFUN([GCC_TOPLEV_SUBDIRS],
AC_REQUIRE([_GCC_TOPLEV_NONCANONICAL_BUILD]) []dnl
# Prefix 'build-' so this never conflicts with target_subdir.
build_subdir="build-${build_noncanonical}"
-# --srcdir=. covers the toplevel, while "test -d" covers the subdirectories
-if ( test $srcdir = . && test -d gcc ) \
- || test -d $srcdir/../host-${host_noncanonical}; then
- host_subdir="host-${host_noncanonical}"
-else
- host_subdir=.
-fi
+# Not really a subdirectory, but here for completeness.
+host_subdir=.
# No prefix.
target_subdir=${target_noncanonical}
AC_SUBST([build_subdir]) []dnl
@@ -103,197 +98,72 @@ test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
]) []dnl # _NCN_TOOL_PREFIXES
####
-# NCN_STRICT_CHECK_TOOLS(variable, progs-to-check-for,[value-if-not-found],[path])
-# Like plain AC_CHECK_TOOLS, but require prefix if build!=host.
+# NCN_CHECK_TARGET_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
+# Like AC_CHECK_TOOL, but tries a prefix of the target, not the host.
+# Code is pretty much lifted from autoconf2.53.
-AC_DEFUN([NCN_STRICT_CHECK_TOOLS],
+AC_DEFUN([NCN_CHECK_TARGET_TOOL],
[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
-for ncn_progname in $2; do
- if test -n "$ncn_tool_prefix"; then
- AC_CHECK_PROG([$1], [${ncn_tool_prefix}${ncn_progname}],
- [${ncn_tool_prefix}${ncn_progname}], , [$4])
- fi
- if test -z "$ac_cv_prog_$1" && test $build = $host ; then
- AC_CHECK_PROG([$1], [${ncn_progname}], [${ncn_progname}], , [$4])
- fi
- test -n "$ac_cv_prog_$1" && break
-done
-
+if test -n "$ncn_target_tool_prefix"; then
+ AC_CHECK_PROG([$1], [${ncn_target_tool_prefix}$2],
+ [${ncn_target_tool_prefix}$2], , [$4])
+fi
if test -z "$ac_cv_prog_$1" ; then
- ifelse([$3],[], [set dummy $2
- if test $build = $host ; then
- $1="[$]2"
- else
- $1="${ncn_tool_prefix}[$]2"
- fi], [$1="$3"])
+ ncn_cv_$1=$$1
+ AC_CHECK_PROG([ncn_cv_$1], [$2], [$2], [$3], [$4])
+ $1=$ncn_cv_$1
+else
+ $1="$ac_cv_prog_$1"
fi
-]) []dnl # NCN_STRICT_CHECK_TOOLS
+]) []dnl # NCN_CHECK_TARGET_TOOL
+
####
-# NCN_STRICT_CHECK_TARGET_TOOLS(variable, progs-to-check-for,[value-if-not-found],[path])
-# Like CVS Autoconf AC_CHECK_TARGET_TOOLS, but require prefix if build!=target.
+# NCN_STRICT_CHECK_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
+# Like AC_CHECK_TOOL, but requires the prefix if build!=host.
-AC_DEFUN([NCN_STRICT_CHECK_TARGET_TOOLS],
+AC_DEFUN([NCN_STRICT_CHECK_TOOL],
[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
-if test -n "$with_build_time_tools"; then
- for ncn_progname in $2; do
- AC_MSG_CHECKING([for ${ncn_progname} in $with_build_time_tools])
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_$1=$with_build_time_tools/${ncn_progname}
- AC_MSG_RESULT(yes)
- break
- else
- AC_MSG_RESULT(no)
- fi
- done
+if test -n "$ncn_tool_prefix"; then
+ AC_CHECK_PROG([$1], [${ncn_tool_prefix}$2],
+ [${ncn_tool_prefix}$2], , [$4])
fi
-
-if test -z "$ac_cv_prog_$1"; then
- for ncn_progname in $2; do
- if test -n "$ncn_target_tool_prefix"; then
- AC_CHECK_PROG([$1], [${ncn_target_tool_prefix}${ncn_progname}],
- [${ncn_target_tool_prefix}${ncn_progname}], , [$4])
- fi
- if test -z "$ac_cv_prog_$1" && test $build = $target ; then
- AC_CHECK_PROG([$1], [${ncn_progname}], [${ncn_progname}], , [$4])
- fi
- test -n "$ac_cv_prog_$1" && break
- done
-fi
-
if test -z "$ac_cv_prog_$1" ; then
- ifelse([$3],[], [set dummy $2
- if test $build = $target ; then
- $1="[$]2"
- else
- $1="${ncn_target_tool_prefix}[$]2"
- fi], [$1="$3"])
-fi
-]) []dnl # NCN_STRICT_CHECK_TARGET_TOOLS
-
-
-# Backported from Autoconf 2.5x; can go away when and if
-# we switch. Put the OS path separator in $PATH_SEPARATOR.
-AC_DEFUN([ACX_PATH_SEP], [
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
+ if test $build = $host ; then
+ ncn_cv_$1=$$1
+ AC_CHECK_PROG([ncn_cv_$1], [$2], [$2], [ifelse([$3],[],[$2],[$3])], [$4])
+ $1=$ncn_cv_$1
else
- PATH_SEPARATOR=:
+ $1="ifelse([$3],[],[${ncn_tool_prefix}$2],[$3])"
fi
- rm -f conf$$.sh
-fi
-])
-
-
-AC_DEFUN([ACX_TOOL_DIRS], [
-AC_REQUIRE([ACX_PATH_SEP])
-if test "x$exec_prefix" = xNONE; then
- if test "x$prefix" = xNONE; then
- gcc_cv_tool_prefix=$ac_default_prefix
- else
- gcc_cv_tool_prefix=$prefix
- fi
else
- gcc_cv_tool_prefix=$exec_prefix
+ $1="$ac_cv_prog_$1"
fi
+]) []dnl # NCN_STRICT_CHECK_TOOL
-# If there is no compiler in the tree, use the PATH only. In any
-# case, if there is no compiler in the tree nobody should use
-# AS_FOR_TARGET and LD_FOR_TARGET.
-if test x$host = x$build && test -f $srcdir/gcc/BASE-VER; then
- gcc_version=`cat $srcdir/gcc/BASE-VER`
- gcc_cv_tool_dirs="$gcc_cv_tool_prefix/libexec/gcc/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/libexec/gcc/$target_noncanonical$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs/usr/lib/gcc/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs/usr/lib/gcc/$target_noncanonical$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/$target_noncanonical/bin$PATH_SEPARATOR"
-else
- gcc_cv_tool_dirs=
-fi
-if test x$build = x$target && test -n "$md_exec_prefix"; then
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$md_exec_prefix$PATH_SEPARATOR"
-fi
-
-]) []dnl # ACX_TOOL_DIRS
+####
+# NCN_STRICT_CHECK_TARGET_TOOL(variable, prog-to-check-for,[value-if-not-found],[path])
+# Like NCN_CHECK_TARGET_TOOL, but requires the prefix if build!=target.
-# ACX_HAVE_GCC_FOR_TARGET
-# Check if the variable GCC_FOR_TARGET really points to a GCC binary.
-AC_DEFUN([ACX_HAVE_GCC_FOR_TARGET], [
-cat > conftest.c << \EOF
-#ifdef __GNUC__
- gcc_yay;
-#endif
-EOF
-if ($GCC_FOR_TARGET -E conftest.c | grep gcc_yay) > /dev/null 2>&1; then
- have_gcc_for_target=yes
-else
- GCC_FOR_TARGET=${ncn_target_tool_prefix}gcc
- have_gcc_for_target=no
+AC_DEFUN([NCN_STRICT_CHECK_TARGET_TOOL],
+[AC_REQUIRE([_NCN_TOOL_PREFIXES]) []dnl
+if test -n "$ncn_target_tool_prefix"; then
+ AC_CHECK_PROG([$1], [${ncn_target_tool_prefix}$2],
+ [${ncn_target_tool_prefix}$2], , [$4])
fi
-rm conftest.c
-])
-
-# ACX_CHECK_INSTALLED_TARGET_TOOL(VAR, PROG)
-# Searching for installed target binutils. We need to take extra care,
-# else we may find the wrong assembler, linker, etc., and lose.
-#
-# First try --with-build-time-tools, if specified.
-#
-# For build != host, we ask the installed GCC for the name of the tool it
-# uses, and accept it if it is an absolute path. This is because the
-# only good choice for a compiler is the same GCC version that is being
-# installed (or we couldn't make target libraries), and we assume that
-# on the host system we'll have not only the same GCC version, but also
-# the same binutils version.
-#
-# For build == host, search the same directories that the installed
-# compiler will search. We used to do this for the assembler, linker,
-# and nm only; for simplicity of configuration, however, we extend this
-# criterion to tools (such as ar and ranlib) that are never invoked by
-# the compiler, to avoid mismatches.
-#
-# Also note we have to check MD_EXEC_PREFIX before checking the user's path
-# if build == target. This makes the most sense only when bootstrapping,
-# but we also do so when build != host. In this case, we hope that the
-# build and host systems will have similar contents of MD_EXEC_PREFIX.
-#
-# If we do not find a suitable binary, then try the user's path.
-
-AC_DEFUN([ACX_CHECK_INSTALLED_TARGET_TOOL], [
-AC_REQUIRE([ACX_TOOL_DIRS])
-AC_REQUIRE([ACX_HAVE_GCC_FOR_TARGET])
-if test -z "$ac_cv_path_$1" ; then
- if test -n "$with_build_time_tools"; then
- AC_MSG_CHECKING([for $2 in $with_build_time_tools])
- if test -x $with_build_time_tools/$2; then
- $1=`cd $with_build_time_tools && pwd`/$2
- ac_cv_path_$1=[$]$1
- AC_MSG_RESULT([$ac_cv_path_$1])
- else
- AC_MSG_RESULT(no)
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- $1=`$GCC_FOR_TARGET --print-prog-name=$2`
- test [$]$1=$2 && $1=
- ac_cv_path_$1=[$]$1
+if test -z "$ac_cv_prog_$1" ; then
+ if test $build = $target ; then
+ ncn_cv_$1=$$1
+ AC_CHECK_PROG([ncn_cv_$1], [$2], [$2], [ifelse([$3],[],[$2],[$3])], [$4])
+ $1=$ncn_cv_$1
+ else
+ $1="ifelse([$3],[],[${ncn_target_tool_prefix}$2],[$3])"
fi
-fi
-if test -z "$ac_cv_path_$1" ; then
- AC_PATH_PROG([$1], [$2], [], [$gcc_cv_tool_dirs])
-fi
-if test -z "$ac_cv_path_$1" ; then
- NCN_STRICT_CHECK_TARGET_TOOLS([$1], [$2])
else
- $1=$ac_cv_path_$1
+ $1="$ac_cv_prog_$1"
fi
-]) []dnl # ACX_CHECK_INSTALLED_TARGET_TOOL
+]) []dnl # NCN_STRICT_CHECK_TARGET_TOOL
###
# AC_PROG_CPP_WERROR
@@ -337,6 +207,7 @@ acx_cv_cc_gcc_supports_ada=no
errors=`(${CC} -c conftest.adb) 2>&1 || echo failure`
if test x"$errors" = x && test -f conftest.$ac_objext; then
acx_cv_cc_gcc_supports_ada=yes
+ break
fi
rm -f conftest.*])
@@ -435,42 +306,3 @@ fi
AC_SUBST(LN)dnl
])
-dnl GCC_TARGET_TOOL(PROGRAM, TARGET-VAR, HOST-VAR, IN-TREE-TOOL, LANGUAGE)
-AC_DEFUN([GCC_TARGET_TOOL],
-[AC_MSG_CHECKING(where to find the target $1)
-if test "x${build}" != "x${host}" ; then
- if expr "x[$]$2" : "x/" > /dev/null; then
- # We already found the complete path
- AC_MSG_RESULT(pre-installed in `dirname [$]$2`)
- else
- # Canadian cross, just use what we found
- AC_MSG_RESULT(pre-installed)
- fi
-else
- ifelse([$4],,,
- [ok=yes
- case " ${configdirs} " in
- *" patsubst([$4], [/.*], []) "*) ;;
- *) ok=no ;;
- esac
- ifelse([$5],,,
- [case ,${enable_languages}, in
- *,$5,*) ;;
- *) ok=no ;;
- esac])
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- $2='$$r/$(HOST_SUBDIR)/$4'
- AC_MSG_RESULT(just compiled)
- el])if expr "x[$]$2" : "x/" > /dev/null; then
- # We already found the complete path
- AC_MSG_RESULT(pre-installed in `dirname [$]$2`)
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- $2='$($3)'
- AC_MSG_RESULT(host tool)
- else
- # We need a cross tool
- AC_MSG_RESULT(pre-installed)
- fi
-fi])
diff --git a/config/depstand.m4 b/config/depstand.m4
deleted file mode 100644
index 8f936e0c2..000000000
--- a/config/depstand.m4
+++ /dev/null
@@ -1,136 +0,0 @@
-## -*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# Based on depend.m4 from automake 1.9, modified for standalone use in
-# an environment where GNU make is required.
-
-# ZW_PROG_COMPILER_DEPENDENCIES
-# -----------------------------
-# Variant of _AM_DEPENDENCIES which just does the dependency probe and
-# sets fooDEPMODE accordingly. Cache-variable compatible with
-# original; not side-effect compatible. As the users of this macro
-# may require accurate dependencies for correct builds, it does *not*
-# honor --disable-dependency-checking, and failure to detect a usable
-# method is an error. depcomp is assumed to be located in
-# $ac_aux_dir.
-#
-# FIXME: Should use the Autoconf 2.5x language-selection mechanism.
-
-AC_DEFUN([ZW_PROG_COMPILER_DEPENDENCIES],
-[ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
- [$1], CXX, [depcc="$CXX" am_compiler_list=],
- [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-am_depcomp=$ac_aux_dir/depcomp
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- for depmode in $am_compiler_list; do
- if test $depmode = none; then break; fi
-
- _AS_ECHO([$as_me:$LINENO: trying $depmode], AS_MESSAGE_LOG_FD)
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "include sub/conftest.Po" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
- depcmd="depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c"
- echo "| $depcmd" | sed -e 's/ */ /g' >&AS_MESSAGE_LOG_FD
- if env $depcmd > conftest.err 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po >>conftest.err 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po >>conftest.err 2>&1 &&
- ${MAKE-make} -s -f confmf >>conftest.err 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- _AS_ECHO([$as_me:$LINENO: success], AS_MESSAGE_LOG_FD)
- break
- fi
- fi
- _AS_ECHO([$as_me:$LINENO: failure, diagnostics are:], AS_MESSAGE_LOG_FD)
- sed -e 's/^/| /' < conftest.err >&AS_MESSAGE_LOG_FD
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-if test x${am_cv_$1_dependencies_compiler_type-none} = xnone
-then AC_MSG_ERROR([no usable dependency style found])
-else AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-fi
-])
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-# ZW_CREATE_DEPDIR
-# ----------------
-# As AM_SET_DEPDIR, but also create the directory at config.status time.
-AC_DEFUN([ZW_CREATE_DEPDIR],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_CONFIG_COMMANDS([depdir], [mkdir $DEPDIR], [DEPDIR=$DEPDIR])
-])
diff --git a/config/enable.m4 b/config/enable.m4
deleted file mode 100644
index 88b29b8aa..000000000
--- a/config/enable.m4
+++ /dev/null
@@ -1,38 +0,0 @@
-dnl ----------------------------------------------------------------------
-dnl This whole bit snagged from libstdc++-v3.
-
-dnl
-dnl GCC_ENABLE
-dnl (FEATURE, DEFAULT, HELP-ARG, HELP-STRING)
-dnl (FEATURE, DEFAULT, HELP-ARG, HELP-STRING, permit a|b|c)
-dnl (FEATURE, DEFAULT, HELP-ARG, HELP-STRING, SHELL-CODE-HANDLER)
-dnl
-dnl See docs/html/17_intro/configury.html#enable for documentation.
-dnl
-AC_DEFUN([GCC_ENABLE],[dnl
-m4_define([_g_switch],[--enable-$1])dnl
-m4_define([_g_help],[AC_HELP_STRING(_g_switch$3,[$4 @<:@default=$2@:>@])])dnl
- AC_ARG_ENABLE($1,_g_help,
- m4_bmatch([$5],
- [^permit ],
- [[
- case "$enableval" in
- m4_bpatsubst([$5],[permit ])) ;;
- *) AC_MSG_ERROR(Unknown argument to enable/disable $1) ;;
- dnl Idea for future: generate a URL pointing to
- dnl "onlinedocs/configopts.html#whatever"
- esac
- ]],
- [^$],
- [[
- case "$enableval" in
- yes|no) ;;
- *) AC_MSG_ERROR(Argument to enable/disable $1 must be yes or no) ;;
- esac
- ]],
- [[$5]]),
- [enable_]m4_bpatsubst([$1],-,_)[=][$2])
-m4_undefine([_g_switch])dnl
-m4_undefine([_g_help])dnl
-])
-
diff --git a/config/gcc-lib-path.m4 b/config/gcc-lib-path.m4
new file mode 100644
index 000000000..88c4023d0
--- /dev/null
+++ b/config/gcc-lib-path.m4
@@ -0,0 +1,15 @@
+AC_DEFUN([TL_AC_GNU_MAKE_GCC_LIB_PATH],
+[
+if test x"$SET_GCC_LIB_PATH_CMD" != x; then
+ # SET_GCC_LIB_PATH_CMD is "XXX=path; export XXX;". It is expanded to
+ #
+ # eval "set_gcc_lib_path=XXX=path; export XXX;"
+ #
+ eval "set_gcc_lib_path=$SET_GCC_LIB_PATH_CMD"
+ # It will set set_gcc_lib_path to "export XXX=path" for GNU make.
+ set_gcc_lib_path="export $set_gcc_lib_path"
+else
+ set_gcc_lib_path=
+fi
+AC_SUBST(set_gcc_lib_path)
+])dnl
diff --git a/config/gxx-include-dir.m4 b/config/gxx-include-dir.m4
deleted file mode 100644
index 0e6e4ffc3..000000000
--- a/config/gxx-include-dir.m4
+++ /dev/null
@@ -1,26 +0,0 @@
-dnl Usage: TL_AC_GXX_INCLUDE_DIR
-dnl
-dnl Set $gxx_include_dir to the location of the installed C++ include
-dnl directory. The value depends on $gcc_version and the configuration
-dnl options --with-gxx-include-dir and --enable-version-specific-runtime-libs.
-dnl
-dnl If you change the default here, you'll need to change the gcc and
-dnl libstdc++-v3 subdirectories too.
-AC_DEFUN([TL_AC_GXX_INCLUDE_DIR],
-[
-case "${with_gxx_include_dir}" in
- yes)
- AC_MSG_ERROR([--with-gxx-include-dir=[[dir]] requires a directory])
- ;;
- no | "")
- case "${enable_version_specific_runtime_libs}" in
- yes) gxx_include_dir='$(libsubdir)/include/c++' ;;
- *)
- libstdcxx_incdir='c++/$(gcc_version)'
- gxx_include_dir='$(prefix)/include/$(libstdcxx_incdir)' ;;
- esac ;;
- *) gxx_include_dir=${with_gxx_include_dir} ;;
-esac
-AC_SUBST(gxx_include_dir)
-AC_SUBST(libstdcxx_incdir)
-])
diff --git a/config/lead-dot.m4 b/config/lead-dot.m4
deleted file mode 100644
index e019030e0..000000000
--- a/config/lead-dot.m4
+++ /dev/null
@@ -1,32 +0,0 @@
-# -*- Autoconf -*-
-# Copyright (C) 2003 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-
-# serial 1
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot. For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
diff --git a/config/mh-mingw32 b/config/mh-mingw32
new file mode 100644
index 000000000..f622c8bec
--- /dev/null
+++ b/config/mh-mingw32
@@ -0,0 +1,7 @@
+# We also need to override LIBGCC2_DEBUG_CFLAGS so libgcc2 will be
+# built without debugging information
+
+LIBGCC2_DEBUG_CFLAGS=
+
+# custom installation rules for mingw32 (append .exe to binaries, etc.)
+# INSTALL_DOSREL=install-dosrel
diff --git a/config/mh-ppc-aix b/config/mh-ppc-aix
deleted file mode 100644
index f2bc76a0c..000000000
--- a/config/mh-ppc-aix
+++ /dev/null
@@ -1,8 +0,0 @@
-
-# Compile Ada files with minimal-toc. The primary focus is gnatlib, so
-# that the library does not use nearly the entire TOC of applications
-# until gnatlib is built as a shared library on AIX. Compiling the
-# compiler with -mminimal-toc does not cause any harm.
-BOOT_ADAFLAGS = -mminimal-toc
-BOOT_LDFLAGS = -Wl,-bbigtoc
-LDFLAGS = `case $(CC) in *gcc*) echo -Wl,-bbigtoc ;; esac;`
diff --git a/config/mt-gnu b/config/mt-gnu
index f05c4f92f..15bf41716 100644
--- a/config/mt-gnu
+++ b/config/mt-gnu
@@ -1 +1 @@
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) -D_GNU_SOURCE
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS) -D_GNU_SOURCE
diff --git a/config/no-executables.m4 b/config/no-executables.m4
index 54e5a0242..ca26b7112 100644
--- a/config/no-executables.m4
+++ b/config/no-executables.m4
@@ -53,7 +53,7 @@ if test x$gcc_no_link = xyes; then
ac_cv_func_mmap_fixed_mapped=no
fi
fi
-if test "x${ac_cv_func_mmap_fixed_mapped}" != xno; then
+if test "x${ac_cv_func_mmap_fixed_mapped+set}" != xset; then
m4_defn([AC_FUNC_MMAP])
fi)
diff --git a/config/stdint.m4 b/config/stdint.m4
deleted file mode 100644
index 21ef2ec43..000000000
--- a/config/stdint.m4
+++ /dev/null
@@ -1,486 +0,0 @@
-dnl @synopsis GCC_HEADER_STDINT [( HEADER-TO-GENERATE [, HEADERS-TO-CHECK])]
-dnl
-dnl the "ISO C9X: 7.18 Integer types <stdint.h>" section requires the
-dnl existence of an include file <stdint.h> that defines a set of
-dnl typedefs, especially uint8_t,int32_t,uintptr_t.
-dnl Many older installations will not provide this file, but some will
-dnl have the very same definitions in <inttypes.h>. In other enviroments
-dnl we can use the inet-types in <sys/types.h> which would define the
-dnl typedefs int8_t and u_int8_t respectivly.
-dnl
-dnl This macros will create a local "_stdint.h" or the headerfile given as
-dnl an argument. In many cases that file will pick the definition from a
-dnl "#include <stdint.h>" or "#include <inttypes.h>" statement, while
-dnl in other environments it will provide the set of basic 'stdint's defined:
-dnl int8_t,uint8_t,int16_t,uint16_t,int32_t,uint32_t,intptr_t,uintptr_t
-dnl int_least32_t.. int_fast32_t.. intmax_t
-dnl which may or may not rely on the definitions of other files.
-dnl
-dnl Sometimes the stdint.h or inttypes.h headers conflict with sys/types.h,
-dnl so we test the headers together with sys/types.h and always include it
-dnl into the generated header (to match the tests with the generated file).
-dnl Hopefully this is not a big annoyance.
-dnl
-dnl If your installed header files require the stdint-types you will want to
-dnl create an installable file mylib-int.h that all your other installable
-dnl header may include. So, for a library package named "mylib", just use
-dnl GCC_HEADER_STDINT(mylib-int.h)
-dnl in configure.in and install that header file in Makefile.am along with
-dnl the other headers (mylib.h). The mylib-specific headers can simply
-dnl use "#include <mylib-int.h>" to obtain the stdint-types.
-dnl
-dnl Remember, if the system already had a valid <stdint.h>, the generated
-dnl file will include it directly. No need for fuzzy HAVE_STDINT_H things...
-dnl
-dnl @author Guido Draheim <guidod@gmx.de>, Paolo Bonzini <bonzini@gnu.org>
-
-AC_DEFUN([GCC_HEADER_STDINT],
-[m4_define(_GCC_STDINT_H, m4_ifval($1, $1, _stdint.h))
-
-inttype_headers=`echo inttypes.h sys/inttypes.h $2 | sed -e 's/,/ /g'`
-
-acx_cv_header_stdint=stddef.h
-acx_cv_header_stdint_kind="(already complete)"
-for i in stdint.h $inttype_headers; do
- unset ac_cv_type_uintptr_t
- unset ac_cv_type_uintmax_t
- unset ac_cv_type_int_least32_t
- unset ac_cv_type_int_fast32_t
- unset ac_cv_type_uint64_t
- _AS_ECHO_N([looking for a compliant stdint.h in $i, ])
- AC_CHECK_TYPE(uintmax_t,[acx_cv_header_stdint=$i],continue,[#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(uintptr_t,,[acx_cv_header_stdint_kind="(mostly complete)"], [#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(int_least32_t,,[acx_cv_header_stdint_kind="(mostly complete)"], [#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(int_fast32_t,,[acx_cv_header_stdint_kind="(mostly complete)"], [#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(uint64_t,,[acx_cv_header_stdint_kind="(lacks uint64_t)"], [#include <sys/types.h>
-#include <$i>])
- break
-done
-if test "$acx_cv_header_stdint" = stddef.h; then
- acx_cv_header_stdint_kind="(lacks uintptr_t)"
- for i in stdint.h $inttype_headers; do
- unset ac_cv_type_uint32_t
- unset ac_cv_type_uint64_t
- _AS_ECHO_N([looking for an incomplete stdint.h in $i, ])
- AC_CHECK_TYPE(uint32_t,[acx_cv_header_stdint=$i],continue,[#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(uint64_t,,[acx_cv_header_stdint_kind="(lacks uintptr_t and uint64_t)"], [#include <sys/types.h>
-#include <$i>])
- break
- done
-fi
-if test "$acx_cv_header_stdint" = stddef.h; then
- acx_cv_header_stdint_kind="(u_intXX_t style)"
- for i in sys/types.h $inttype_headers; do
- unset ac_cv_type_u_int32_t
- unset ac_cv_type_u_int64_t
- _AS_ECHO_N([looking for u_intXX_t types in $i, ])
- AC_CHECK_TYPE(u_int32_t,[acx_cv_header_stdint=$i],continue,[#include <sys/types.h>
-#include <$i>])
- AC_CHECK_TYPE(u_int64_t,,[acx_cv_header_stdint_kind="(u_intXX_t style, lacks u_int64_t)"], [#include <sys/types.h>
-#include <$i>])
- break
- done
-fi
-if test "$acx_cv_header_stdint" = stddef.h; then
- acx_cv_header_stdint_kind="(using manual detection)"
-fi
-
-test -z "$ac_cv_type_uintptr_t" && ac_cv_type_uintptr_t=no
-test -z "$ac_cv_type_uint64_t" && ac_cv_type_uint64_t=no
-test -z "$ac_cv_type_u_int64_t" && ac_cv_type_u_int64_t=no
-test -z "$ac_cv_type_int_least32_t" && ac_cv_type_int_least32_t=no
-test -z "$ac_cv_type_int_fast32_t" && ac_cv_type_int_fast32_t=no
-
-# ----------------- Summarize what we found so far
-
-AC_MSG_CHECKING([what to include in _GCC_STDINT_H])
-
-case `AS_BASENAME(_GCC_STDINT_H)` in
- stdint.h) AC_MSG_WARN([are you sure you want it there?]) ;;
- inttypes.h) AC_MSG_WARN([are you sure you want it there?]) ;;
- *) ;;
-esac
-
-AC_MSG_RESULT($acx_cv_header_stdint $acx_cv_header_stdint_kind)
-
-# ----------------- done included file, check C basic types --------
-
-# Lacking an uintptr_t? Test size of void *
-case "$acx_cv_header_stdint:$ac_cv_type_uintptr_t" in
- stddef.h:* | *:no) AC_CHECK_SIZEOF(void *) ;;
-esac
-
-# Lacking an uint64_t? Test size of long
-case "$acx_cv_header_stdint:$ac_cv_type_uint64_t:$ac_cv_type_u_int64_t" in
- stddef.h:*:* | *:no:no) AC_CHECK_SIZEOF(long) ;;
-esac
-
-if test $acx_cv_header_stdint = stddef.h; then
- # Lacking a good header? Test size of everything and deduce all types.
- AC_CHECK_SIZEOF(int)
- AC_CHECK_SIZEOF(short)
- AC_CHECK_SIZEOF(char)
-
- AC_MSG_CHECKING(for type equivalent to int8_t)
- case "$ac_cv_sizeof_char" in
- 1) acx_cv_type_int8_t=char ;;
- *) AC_MSG_ERROR(no 8-bit type, please report a bug)
- esac
- AC_MSG_RESULT($acx_cv_type_int8_t)
-
- AC_MSG_CHECKING(for type equivalent to int16_t)
- case "$ac_cv_sizeof_int:$ac_cv_sizeof_short" in
- 2:*) acx_cv_type_int16_t=int ;;
- *:2) acx_cv_type_int16_t=short ;;
- *) AC_MSG_ERROR(no 16-bit type, please report a bug)
- esac
- AC_MSG_RESULT($acx_cv_type_int16_t)
-
- AC_MSG_CHECKING(for type equivalent to int32_t)
- case "$ac_cv_sizeof_int:$ac_cv_sizeof_long" in
- 4:*) acx_cv_type_int32_t=int ;;
- *:4) acx_cv_type_int32_t=long ;;
- *) AC_MSG_ERROR(no 32-bit type, please report a bug)
- esac
- AC_MSG_RESULT($acx_cv_type_int32_t)
-fi
-
-# These tests are here to make the output prettier
-
-if test "$ac_cv_type_uint64_t" != yes && test "$ac_cv_type_u_int64_t" != yes; then
- case "$ac_cv_sizeof_long" in
- 8) acx_cv_type_int64_t=long ;;
- esac
- AC_MSG_CHECKING(for type equivalent to int64_t)
- AC_MSG_RESULT(${acx_cv_type_int64_t-'using preprocessor symbols'})
-fi
-
-# Now we can use the above types
-
-if test "$ac_cv_type_uintptr_t" != yes; then
- AC_MSG_CHECKING(for type equivalent to intptr_t)
- case $ac_cv_sizeof_void_p in
- 2) acx_cv_type_intptr_t=int16_t ;;
- 4) acx_cv_type_intptr_t=int32_t ;;
- 8) acx_cv_type_intptr_t=int64_t ;;
- *) AC_MSG_ERROR(no equivalent for intptr_t, please report a bug)
- esac
- AC_MSG_RESULT($acx_cv_type_intptr_t)
-fi
-
-# ----------------- done all checks, emit header -------------
-AC_CONFIG_COMMANDS(_GCC_STDINT_H, [
-if test "$GCC" = yes; then
- echo "/* generated for " `$CC --version | sed 1q` "*/" > tmp-stdint.h
-else
- echo "/* generated for $CC */" > tmp-stdint.h
-fi
-
-sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- #ifndef GCC_GENERATED_STDINT_H
- #define GCC_GENERATED_STDINT_H 1
-
- #include <sys/types.h>
-EOF
-
-if test "$acx_cv_header_stdint" != stdint.h; then
- echo "#include <stddef.h>" >> tmp-stdint.h
-fi
-if test "$acx_cv_header_stdint" != stddef.h; then
- echo "#include <$acx_cv_header_stdint>" >> tmp-stdint.h
-fi
-
-sed 's/^ *//' >> tmp-stdint.h <<EOF
- /* glibc uses these symbols as guards to prevent redefinitions. */
- #ifdef __int8_t_defined
- #define _INT8_T
- #define _INT16_T
- #define _INT32_T
- #endif
- #ifdef __uint32_t_defined
- #define _UINT32_T
- #endif
-
-EOF
-
-# ----------------- done header, emit basic int types -------------
-if test "$acx_cv_header_stdint" = stddef.h; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- #ifndef _UINT8_T
- #define _UINT8_T
- typedef unsigned $acx_cv_type_int8_t uint8_t;
- #endif
-
- #ifndef _UINT16_T
- #define _UINT16_T
- typedef unsigned $acx_cv_type_int16_t uint16_t;
- #endif
-
- #ifndef _UINT32_T
- #define _UINT32_T
- typedef unsigned $acx_cv_type_int32_t uint32_t;
- #endif
-
- #ifndef _INT8_T
- #define _INT8_T
- typedef $acx_cv_type_int8_t int8_t;
- #endif
-
- #ifndef _INT16_T
- #define _INT16_T
- typedef $acx_cv_type_int16_t int16_t;
- #endif
-
- #ifndef _INT32_T
- #define _INT32_T
- typedef $acx_cv_type_int32_t int32_t;
- #endif
-EOF
-elif test "$ac_cv_type_u_int32_t" = yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* int8_t int16_t int32_t defined by inet code, we do the u_intXX types */
- #ifndef _INT8_T
- #define _INT8_T
- #endif
- #ifndef _INT16_T
- #define _INT16_T
- #endif
- #ifndef _INT32_T
- #define _INT32_T
- #endif
-
- #ifndef _UINT8_T
- #define _UINT8_T
- typedef u_int8_t uint8_t;
- #endif
-
- #ifndef _UINT16_T
- #define _UINT16_T
- typedef u_int16_t uint16_t;
- #endif
-
- #ifndef _UINT32_T
- #define _UINT32_T
- typedef u_int32_t uint32_t;
- #endif
-EOF
-else
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* Some systems have guard macros to prevent redefinitions, define them. */
- #ifndef _INT8_T
- #define _INT8_T
- #endif
- #ifndef _INT16_T
- #define _INT16_T
- #endif
- #ifndef _INT32_T
- #define _INT32_T
- #endif
- #ifndef _UINT8_T
- #define _UINT8_T
- #endif
- #ifndef _UINT16_T
- #define _UINT16_T
- #endif
- #ifndef _UINT32_T
- #define _UINT32_T
- #endif
-EOF
-fi
-
-# ------------- done basic int types, emit int64_t types ------------
-if test "$ac_cv_type_uint64_t" = yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* system headers have good uint64_t and int64_t */
- #ifndef _INT64_T
- #define _INT64_T
- #endif
- #ifndef _UINT64_T
- #define _UINT64_T
- #endif
-EOF
-elif test "$ac_cv_type_u_int64_t" = yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* system headers have an u_int64_t (and int64_t) */
- #ifndef _INT64_T
- #define _INT64_T
- #endif
- #ifndef _UINT64_T
- #define _UINT64_T
- typedef u_int64_t uint64_t;
- #endif
-EOF
-elif test -n "$acx_cv_type_int64_t"; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* architecture has a 64-bit type, $acx_cv_type_int64_t */
- #ifndef _INT64_T
- #define _INT64_T
- typedef $acx_cv_type_int64_t int64_t;
- #endif
- #ifndef _UINT64_T
- #define _UINT64_T
- typedef unsigned $acx_cv_type_int64_t uint64_t;
- #endif
-EOF
-else
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* some common heuristics for int64_t, using compiler-specific tests */
- #if defined __STDC_VERSION__ && (__STDC_VERSION__-0) >= 199901L
- #ifndef _INT64_T
- #define _INT64_T
- typedef long long int64_t;
- #endif
- #ifndef _UINT64_T
- #define _UINT64_T
- typedef unsigned long long uint64_t;
- #endif
-
- #elif defined __GNUC__ && defined (__STDC__) && __STDC__-0
- /* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and
- does not implement __extension__. But that compiler doesn't define
- __GNUC_MINOR__. */
- # if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__)
- # define __extension__
- # endif
-
- # ifndef _INT64_T
- # define _INT64_T
- __extension__ typedef long long int64_t;
- # endif
- # ifndef _UINT64_T
- # define _UINT64_T
- __extension__ typedef unsigned long long uint64_t;
- # endif
-
- #elif !defined __STRICT_ANSI__
- # if defined _MSC_VER || defined __WATCOMC__ || defined __BORLANDC__
-
- # ifndef _INT64_T
- # define _INT64_T
- typedef __int64 int64_t;
- # endif
- # ifndef _UINT64_T
- # define _UINT64_T
- typedef unsigned __int64 uint64_t;
- # endif
- # endif /* compiler */
-
- #endif /* ANSI version */
-EOF
-fi
-
-# ------------- done int64_t types, emit intptr types ------------
-if test "$ac_cv_type_uintptr_t" != yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* Define intptr_t based on sizeof(void*) = $ac_cv_sizeof_void_p */
- typedef u$acx_cv_type_intptr_t uintptr_t;
- typedef $acx_cv_type_intptr_t intptr_t;
-EOF
-fi
-
-# ------------- done intptr types, emit int_least types ------------
-if test "$ac_cv_type_int_least32_t" != yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* Define int_least types */
- typedef int8_t int_least8_t;
- typedef int16_t int_least16_t;
- typedef int32_t int_least32_t;
- #ifdef _INT64_T
- typedef int64_t int_least64_t;
- #endif
-
- typedef uint8_t uint_least8_t;
- typedef uint16_t uint_least16_t;
- typedef uint32_t uint_least32_t;
- #ifdef _UINT64_T
- typedef uint64_t uint_least64_t;
- #endif
-EOF
-fi
-
-# ------------- done intptr types, emit int_fast types ------------
-if test "$ac_cv_type_int_fast32_t" != yes; then
- dnl NOTE: The following code assumes that sizeof (int) > 1.
- dnl Fix when strange machines are reported.
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* Define int_fast types. short is often slow */
- typedef int8_t int_fast8_t;
- typedef int int_fast16_t;
- typedef int32_t int_fast32_t;
- #ifdef _INT64_T
- typedef int64_t int_fast64_t;
- #endif
-
- typedef uint8_t uint_fast8_t;
- typedef unsigned int uint_fast16_t;
- typedef uint32_t uint_fast32_t;
- #ifdef _UINT64_T
- typedef uint64_t uint_fast64_t;
- #endif
-EOF
-fi
-
-if test "$ac_cv_type_uintmax_t" != yes; then
- sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- /* Define intmax based on what we found */
- #ifdef _INT64_T
- typedef int64_t intmax_t;
- #else
- typedef long intmax_t;
- #endif
- #ifdef _UINT64_T
- typedef uint64_t uintmax_t;
- #else
- typedef unsigned long uintmax_t;
- #endif
-EOF
-fi
-
-sed 's/^ *//' >> tmp-stdint.h <<EOF
-
- #endif /* GCC_GENERATED_STDINT_H */
-EOF
-
-if test -r ]_GCC_STDINT_H[ && cmp -s tmp-stdint.h ]_GCC_STDINT_H[; then
- rm -f tmp-stdint.h
-else
- mv -f tmp-stdint.h ]_GCC_STDINT_H[
-fi
-
-], [
-GCC="$GCC"
-CC="$CC"
-acx_cv_header_stdint="$acx_cv_header_stdint"
-acx_cv_type_int8_t="$acx_cv_type_int8_t"
-acx_cv_type_int16_t="$acx_cv_type_int16_t"
-acx_cv_type_int32_t="$acx_cv_type_int32_t"
-acx_cv_type_int64_t="$acx_cv_type_int64_t"
-acx_cv_type_intptr_t="$acx_cv_type_intptr_t"
-ac_cv_type_uintmax_t="$ac_cv_type_uintmax_t"
-ac_cv_type_uintptr_t="$ac_cv_type_uintptr_t"
-ac_cv_type_uint64_t="$ac_cv_type_uint64_t"
-ac_cv_type_u_int64_t="$ac_cv_type_u_int64_t"
-ac_cv_type_u_int32_t="$ac_cv_type_u_int32_t"
-ac_cv_type_int_least32_t="$ac_cv_type_int_least32_t"
-ac_cv_type_int_fast32_t="$ac_cv_type_int_fast32_t"
-ac_cv_sizeof_void_p="$ac_cv_sizeof_void_p"
-])
-
-])
diff --git a/config/tls.m4 b/config/tls.m4
deleted file mode 100644
index 5cbb6854f..000000000
--- a/config/tls.m4
+++ /dev/null
@@ -1,21 +0,0 @@
-dnl Check whether the target supports TLS.
-AC_DEFUN([GCC_CHECK_TLS], [
- GCC_ENABLE(tls, yes, [Use thread-local storage])
- AC_CACHE_CHECK([whether the target supports thread-local storage],
- have_tls, [
- AC_RUN_IFELSE([__thread int a; int b; int main() { return a = b; }],
- [dnl If the test case passed with dynamic linking, try again with
- dnl static linking. This fails at least with some older Red Hat
- dnl releases.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="-static $LDFLAGS"
- AC_RUN_IFELSE([__thread int a; int b; int main() { return a = b; }],
- [have_tls=yes], [have_tls=no], [])
- LDFLAGS="$save_LDFLAGS"],
- [have_tls=no],
- [AC_COMPILE_IFELSE([__thread int foo;], [have_tls=yes], [have_tls=no])]
- )])
- if test "$enable_tls $have_tls" = "yes yes"; then
- AC_DEFINE(HAVE_TLS, 1,
- [Define to 1 if the target supports thread-local storage.])
- fi])
diff --git a/config/warnings.m4 b/config/warnings.m4
index 8b832382b..5501be920 100644
--- a/config/warnings.m4
+++ b/config/warnings.m4
@@ -1,6 +1,6 @@
# Autoconf include file defining macros related to compile-time warnings.
-# Copyright 2004, 2005 Free Software Foundation, Inc.
+# Copyright 2004 Free Software Foundation, Inc.
#This file is part of GCC.
@@ -16,8 +16,8 @@
#You should have received a copy of the GNU General Public License
#along with GCC; see the file COPYING. If not, write to the Free
-#Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
-#02110-1301, USA.
+#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+#02111-1307, USA.
# ACX_PROG_CC_WARNING_OPTS([-Wfoo -Wbar -Wbaz])
# Sets @WARN_CFLAGS@ to the subset of the given options which the
@@ -43,15 +43,14 @@ CFLAGS="$save_CFLAGS"
])# ACX_PROG_CC_WARNING_OPTS
# ACX_PROG_CC_WARNING_ALMOST_PEDANTIC([-Wno-long-long ...])
-# Sets WARN_PEDANTIC to "-pedantic" + the argument, if the compiler is GCC
-# and accepts all of those options simultaneously, otherwise to nothing.
+# Sets WARN_PEDANTIC to "-pedantic" + the argument, if the compiler
+# accepts all of those options simultaneously, otherwise to nothing.
AC_DEFUN([ACX_PROG_CC_WARNING_ALMOST_PEDANTIC],
[AC_REQUIRE([AC_PROG_CC])dnl
AC_SUBST([WARN_PEDANTIC])dnl
AS_VAR_PUSHDEF([acx_Pedantic], [acx_cv_prog_cc_pedantic_$1])dnl
WARN_PEDANTIC=
-AS_IF([test "$GCC" = yes],
-[AC_CACHE_CHECK([whether $CC supports -pedantic $1], acx_Pedantic,
+AC_CACHE_CHECK([whether $CC supports -pedantic $1], acx_Pedantic,
[save_CFLAGS="$CFLAGS"
CFLAGS="-pedantic $1"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],
@@ -60,7 +59,6 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],
CFLAGS="$save_CFLAGS"])
AS_IF([test AS_VAR_GET(acx_Pedantic) = yes],
[WARN_PEDANTIC="-pedantic $1"])
-])
AS_VAR_POPDEF([acx_Pedantic])dnl
])# ACX_PROG_CC_WARNING_ALMOST_PEDANTIC
diff --git a/configure b/configure
index 2dae3f1c7..2e6e6720b 100755
--- a/configure
+++ b/configure
@@ -14,10 +14,6 @@ ac_default_prefix=/usr/local
ac_help="$ac_help
--enable-libada Builds libada directory"
ac_help="$ac_help
- --enable-libssp Builds libssp directory"
-ac_help="$ac_help
- --enable-libgcc-math Builds libgcc-math directory"
-ac_help="$ac_help
--with-mpfr-dir=PATH Specify source directory for MPFR library"
ac_help="$ac_help
--with-mpfr=PATH Specify directory for installed MPFR library"
@@ -26,19 +22,13 @@ ac_help="$ac_help
ac_help="$ac_help
--with-gmp=PATH Specify directory for installed GMP library"
ac_help="$ac_help
- --with-build-sysroot=sysroot
- use sysroot as the system root during the build"
-ac_help="$ac_help
- --enable-bootstrap Enable bootstrapping [yes if native build]"
+ --enable-bootstrap[=lean] Enable bootstrapping [no]"
ac_help="$ac_help
--enable-serial-[{host,target,build}-]configure
Force sequential configuration of
sub-packages for the host, target or build
machine, or all sub-packages"
ac_help="$ac_help
- --with-build-time-tools=path
- use given path to find target tools during the build"
-ac_help="$ac_help
--enable-maintainer-mode enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer"
ac_help="$ac_help
@@ -60,6 +50,7 @@ program_suffix=NONE
program_transform_name=s,x,x,
silent=
site=
+sitefile=
srcdir=
target=NONE
verbose=
@@ -174,6 +165,7 @@ Configuration:
--help print this message
--no-create do not create output files
--quiet, --silent do not print \`checking...' messages
+ --site-file=FILE use FILE as the site file
--version print the version of autoconf that created configure
Directory and file names:
--prefix=PREFIX install architecture-independent files in PREFIX
@@ -344,6 +336,11 @@ EOF
-site=* | --site=* | --sit=*)
site="$ac_optarg" ;;
+ -site-file | --site-file | --site-fil | --site-fi | --site-f)
+ ac_prev=sitefile ;;
+ -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*)
+ sitefile="$ac_optarg" ;;
+
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
ac_prev=srcdir ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
@@ -509,12 +506,16 @@ fi
srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+if test -z "$sitefile"; then
+ if test -z "$CONFIG_SITE"; then
+ if test "x$prefix" != xNONE; then
+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+ else
+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+ fi
fi
+else
+ CONFIG_SITE="$sitefile"
fi
for ac_site_file in $CONFIG_SITE; do
if test -r "$ac_site_file"; then
@@ -601,7 +602,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:605: checking host system type" >&5
+echo "configure:606: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -622,7 +623,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:626: checking target system type" >&5
+echo "configure:627: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -640,7 +641,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:644: checking build system type" >&5
+echo "configure:645: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -695,7 +696,7 @@ test "$program_transform_name" = "" && program_transform_name="s,x,x,"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:699: checking for a BSD compatible install" >&5
+echo "configure:700: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -748,7 +749,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether ln works""... $ac_c" 1>&6
-echo "configure:752: checking whether ln works" >&5
+echo "configure:753: checking whether ln works" >&5
if eval "test \"`echo '$''{'acx_cv_prog_LN'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -772,7 +773,7 @@ else
fi
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:776: checking whether ln -s works" >&5
+echo "configure:777: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -843,17 +844,10 @@ rm -f conftestsed.out
moveifchange=${srcdir}/move-if-change
-srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
-
-# We pass INSTALL explicitly to sub-makes. Make sure that it is not
-# a relative path.
-if test "$INSTALL" = "${srcdir}/install-sh -c"; then
- INSTALL="${srcpwd}/install-sh -c"
-fi
-
# Set srcdir to "." if that's what it is.
# This is important for multilib support.
pwd=`${PWDCMD-pwd}`
+srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
if test "${pwd}" = "${srcpwd}" ; then
srcdir=.
fi
@@ -861,6 +855,26 @@ fi
topsrcdir=$srcpwd
extra_host_args=
+# Define the trigger file to make sure configure will re-run whenever
+# the gcc version number changes.
+if test "${with_gcc_version_trigger+set}" = set ; then
+ gcc_version_trigger="$with_gcc_version_trigger"
+ gcc_version=`grep version_string ${with_gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
+else
+ # If gcc's sources are available, define the trigger file.
+ if test -f ${topsrcdir}/gcc/version.c ; then
+ gcc_version_trigger=${topsrcdir}/gcc/version.c
+ gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
+ case "$ac_configure_args" in
+ *--with-gcc-version-trigger=$gcc_version_trigger* )
+ ;;
+ * )
+ # Add to all subconfigure arguments: build, host, and target.
+ ac_configure_args="$ac_configure_args --with-gcc-version-trigger=$gcc_version_trigger"
+ ;;
+ esac
+ fi
+fi
### To add a new directory to the tree, first choose whether it is a target
### or a host dependent tool. Then put it into the appropriate list
@@ -886,14 +900,14 @@ build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fix
# these libraries are used by various programs built for the host environment
#
-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber"
+host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp"
# these tools are built for the host environment
# Note, the powerpc-eabi build depends on sim occurring before gdb in order to
# know that we are building the simulator.
# binutils, gas and ld appear in that order because it makes sense to run
# "make check" in that particular order.
-host_tools="texinfo byacc flex bison binutils gas ld fixincludes gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar gnattools"
+host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar"
# libgcj represents the runtime libraries only used by gcj.
libgcj="target-libffi \
@@ -910,13 +924,10 @@ target_libraries="target-libiberty \
target-newlib \
target-libstdc++-v3 \
target-libmudflap \
- target-libssp \
- target-libgcc-math \
target-libgfortran \
${libgcj} \
target-libobjc \
- target-libada \
- target-libgomp"
+ target-libada"
# these tools are built using the target libraries, and are intended to
# run only in the target environment
@@ -971,13 +982,8 @@ esac
# Prefix 'build-' so this never conflicts with target_subdir.
build_subdir="build-${build_noncanonical}"
-# --srcdir=. covers the toplevel, while "test -d" covers the subdirectories
-if ( test $srcdir = . && test -d gcc ) \
- || test -d $srcdir/../host-${host_noncanonical}; then
- host_subdir="host-${host_noncanonical}"
-else
- host_subdir=.
-fi
+# Not really a subdirectory, but here for completeness.
+host_subdir=.
# No prefix.
target_subdir=${target_noncanonical}
@@ -1049,10 +1055,6 @@ case "${host}" in
configdirs="$configdirs libtermcap" ;;
esac
-# A target can indicate whether a language isn't supported for some reason.
-# Only spaces may be used in this macro; not newlines or tabs.
-unsupported_languages=
-
# Remove more programs from consideration, based on the host or
# target this usually means that a port of the program doesn't
# exist yet.
@@ -1086,6 +1088,9 @@ case "${host}" in
powerpc-*-beos*)
noconfigdirs="$noconfigdirs tk itcl libgui gdb dejagnu readline"
;;
+ *-*-darwin*)
+ noconfigdirs="$noconfigdirs tk itcl libgui"
+ ;;
esac
@@ -1098,35 +1103,9 @@ else
fi
if test "${ENABLE_LIBADA}" != "yes" ; then
- noconfigdirs="$noconfigdirs gnattools"
+ noconfigdirs="$noconfigdirs target-libada"
fi
-# Check whether --enable-libssp or --disable-libssp was given.
-if test "${enable_libssp+set}" = set; then
- enableval="$enable_libssp"
- ENABLE_LIBSSP=$enableval
-else
- ENABLE_LIBSSP=yes
-fi
-
-
-# Set the default so we build libgcc-math for ix86 and x86_64
-# Check whether --enable-libgcc-math or --disable-libgcc-math was given.
-if test "${enable_libgcc_math+set}" = set; then
- enableval="$enable_libgcc_math"
- :
-else
-
-case "${target}" in
- i?86-* | x86_64-* )
- enable_libgcc_math=yes ;;
- *)
- enable_libgcc_math=no ;;
-esac
-
-fi
-
-
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
@@ -1144,10 +1123,16 @@ no)
esac
-# Disable libmudflap on some systems.
-if test x$enable_libmudflap = x ; then
+# Allow --disable-libmudflap to exclude target-libmudflap
+case $enable_libmudflap in
+yes)
+ ;;
+no)
+ noconfigdirs="$noconfigdirs target-libmudflap"
+ ;;
+"")
case "${target}" in
- *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
@@ -1158,25 +1143,7 @@ if test x$enable_libmudflap = x ; then
noconfigdirs="$noconfigdirs target-libmudflap"
;;
esac
-fi
-
-# Disable libgomp on non POSIX hosted systems.
-if test x$enable_libgomp = x ; then
- # Enable libgomp by default on hosted POSIX systems.
- case "${target}" in
- *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
- ;;
- *-*-netbsd* | *-*-freebsd* | *-*-openbsd*)
- ;;
- *-*-solaris2* | *-*-sysv4* | *-*-irix* | *-*-osf* | *-*-hpux*)
- ;;
- *-*-darwin* | *-*-aix*)
- ;;
- *)
- noconfigdirs="$noconfigdirs target-libgomp"
- ;;
- esac
-fi
+esac
case "${target}" in
@@ -1185,11 +1152,9 @@ case "${target}" in
;;
powerpc-*-darwin*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
- noconfigdirs="$noconfigdirs sim target-rda"
;;
*-*-darwin*)
- noconfigdirs="$noconfigdirs ld gas gdb gprof"
- noconfigdirs="$noconfigdirs sim target-rda"
+ noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
@@ -1237,18 +1202,11 @@ case "${target}" in
*-*-rtems*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
- # The tpf target doesn't support gdb yet.
- *-*-tpf*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj} target-libmudflap gdb tcl tk libgui itcl"
- ;;
*-*-uclinux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}"
;;
*-*-vxworks*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-libstdc++-v3 ${libgcj}"
- ;;
- m32c-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj}"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
@@ -1291,30 +1249,30 @@ case "${target}" in
arc-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
- arm-semi-aof )
- ;;
arm-*-coff | strongarm-*-coff | xscale-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
;;
- arm*-*-linux-gnueabi)
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- noconfigdirs="$noconfigdirs target-libjava target-libobjc"
- ;;
arm*-*-symbianelf*)
noconfigdirs="$noconfigdirs ${libgcj} target-libiberty"
;;
arm-*-pe*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ arm-*-oabi*)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
thumb-*-coff)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
thumb-*-elf)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ thumb-*-oabi)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
thumb-*-pe)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
@@ -1324,33 +1282,14 @@ case "${target}" in
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
;;
- bfin-*-*)
- noconfigdirs="$noconfigdirs target-libgloss gdb"
- if test x${is_cross_compiler} != xno ; then
- target_configdirs="${target_configdirs} target-bsp target-cygmon"
- fi
- ;;
c4x-*-* | tic4x-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
c54x*-*-* | tic54x-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} gcc gdb newlib"
;;
- cris-*-* | crisv32-*-*)
- unsupported_languages="$unsupported_languages java"
- case "${target}" in
- *-*-aout)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs target-libffi target-boehm-gc";;
- *-*-elf)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs target-boehm-gc";;
- *-*-linux*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss";;
- *)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss";;
- esac
+ cris-*-*)
+ noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
;;
crx-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-mudflap ${libgcj}"
@@ -1373,21 +1312,19 @@ case "${target}" in
h8500-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
- hppa1.1-*-osf* | hppa1.1-*-bsd* )
- ;;
hppa*64*-*-linux* | parisc*64*-*-linux*)
# In this case, it's because the hppa64-linux target is for
# the kernel only at this point and has no libc, and thus no
# headers, crt*.o, etc., all of which are needed by these.
noconfigdirs="$noconfigdirs target-zlib"
;;
- parisc*-*-linux* | hppa*-*-linux*)
- ;;
hppa*-*-*elf* | \
+ parisc*-*-linux* | hppa*-*-linux* | \
hppa*-*-lites* | \
hppa*-*-openbsd* | \
hppa*64*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
+ # Do configure ld/binutils/gas for this case.
;;
hppa*-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
@@ -1405,8 +1342,6 @@ case "${target}" in
# No gdb or ld support yet.
noconfigdirs="$noconfigdirs ${libgcj} readline mmalloc libgui itcl gdb ld"
;;
- i370-*-opened*)
- ;;
i[3456789]86-*-coff | i[3456789]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -1444,9 +1379,10 @@ case "${target}" in
target_configdirs="$target_configdirs target-libtermcap target-winsup"
noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
# always build newlib if winsup directory is present.
- if test -d "$srcdir/winsup"; then
+ if test -d "$srcdir/winsup"
+ then
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
- elif test -d "$srcdir/newlib"; then
+ else
echo "Warning: winsup is missing so newlib can't be built."
fi
@@ -1457,9 +1393,6 @@ case "${target}" in
;;
esac
;;
- i[3456789]86-moss-msdos | i[3456789]86-*-moss* | \
- i[3456789]86-*-uwin* | i[3456789]86-*-interix* )
- ;;
i[3456789]86-*-pe)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
@@ -1480,9 +1413,6 @@ case "${target}" in
i[3456789]86-*-beos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
- i[3456789]86-*-rdos*)
- noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
- ;;
m32r-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -1501,8 +1431,7 @@ case "${target}" in
noconfigdirs="$noconfigdirs target-libstdc++-v3"
;;
mmix-*-*)
- noconfigdirs="$noconfigdirs target-libffi target-boehm-gc gdb libgloss"
- unsupported_languages="$unsupported_languages fortran java"
+ noconfigdirs="$noconfigdirs ${libgcj} gdb libgloss"
;;
mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
@@ -1510,12 +1439,9 @@ case "${target}" in
mn10300-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
- mt-*-*)
- noconfigdirs="$noconfigdirs sim"
- ;;
powerpc-*-aix*)
# copied from rs6000-*-* entry
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
@@ -1533,13 +1459,11 @@ case "${target}" in
powerpc-*-eabi)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
- powerpc-*-eabi* | powerpcle-*-eabi* | powerpc-*-rtems* )
- ;;
rs6000-*-lynxos*)
noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}"
;;
rs6000-*-aix*)
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
rs6000-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
@@ -1578,7 +1502,7 @@ case "${target}" in
romp-*-*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
;;
- sh-*-* | sh64-*-*)
+ sh-*-*)
case "${host}" in
i[3456789]86-*-vsta) ;; # don't add gprof back in
i[3456789]86-*-go32*) ;; # don't add gprof back in
@@ -1587,6 +1511,9 @@ case "${target}" in
esac
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ sh64-*-*)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
sparc-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -1604,9 +1531,6 @@ case "${target}" in
use_gnu_ld=no
fi
;;
- sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
- noconfigdirs="$noconfigdirs ${libgcj}"
- ;;
sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
;;
v810-*-*)
@@ -1764,6 +1688,7 @@ case "${host}" in
host_makefile_frag="config/mh-cygwin"
;;
*-mingw32*)
+ host_makefile_frag="config/mh-mingw32"
;;
*-interix*)
host_makefile_frag="config/mh-interix"
@@ -1794,12 +1719,6 @@ case "${host}" in
powerpc-*-darwin*)
host_makefile_frag="config/mh-ppc-darwin"
;;
- powerpc-*-aix*)
- host_makefile_frag="config/mh-ppc-aix"
- ;;
- rs6000-*-aix*)
- host_makefile_frag="config/mh-ppc-aix"
- ;;
*-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/bin/gcc"
@@ -1843,6 +1762,12 @@ if test "${build}" != "${host}" ; then
CXX=${CXX-${host_alias}-c++}
CXXFLAGS=${CXXFLAGS-"-g -O2"}
CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
+ CC_FOR_TARGET=${CC_FOR_TARGET-${target_alias}-gcc}
+ CXX_FOR_TARGET=${CXX_FOR_TARGET-${target_alias}-c++}
+ GCJ_FOR_TARGET=${GCJ_FOR_TARGET-${target_alias}-gcj}
+ GCC_FOR_TARGET=${GCC_FOR_TARGET-${CC_FOR_TARGET-${target_alias}-gcc}}
+ BUILD_PREFIX=${build_alias}-
+ BUILD_PREFIX_1=${build_alias}-
else
# Set reasonable default values for some tools even if not Canadian.
@@ -1854,10 +1779,14 @@ else
# This is all going to change when we autoconfiscate...
CC_FOR_BUILD="\$(CC)"
+ GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
+ BUILD_PREFIX=
+ BUILD_PREFIX_1=loser-
+
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1861: checking for $ac_word" >&5
+echo "configure:1790: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1887,7 +1816,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1891: checking for $ac_word" >&5
+echo "configure:1820: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1938,7 +1867,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1942: checking for $ac_word" >&5
+echo "configure:1871: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1970,7 +1899,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1974: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1903: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1981,12 +1910,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1985 "configure"
+#line 1914 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1990: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -2012,12 +1941,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:2016: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1945: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:2021: checking whether we are using GNU C" >&5
+echo "configure:1950: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2026,7 +1955,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2030: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1959: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -2045,7 +1974,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:2049: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1978: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2112,7 +2041,7 @@ fi
# Extract the first word of "${ac_tool_prefix}gnatbind", so it can be a program name with args.
set dummy ${ac_tool_prefix}gnatbind; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2116: checking for $ac_word" >&5
+echo "configure:2045: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2144,7 +2073,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "gnatbind", so it can be a program name with args.
set dummy gnatbind; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2148: checking for $ac_word" >&5
+echo "configure:2077: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2177,7 +2106,7 @@ fi
fi
echo $ac_n "checking whether compiler driver understands Ada""... $ac_c" 1>&6
-echo "configure:2181: checking whether compiler driver understands Ada" >&5
+echo "configure:2110: checking whether compiler driver understands Ada" >&5
if eval "test \"`echo '$''{'acx_cv_cc_gcc_supports_ada'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2196,6 +2125,7 @@ acx_cv_cc_gcc_supports_ada=no
errors=`(${CC} -c conftest.adb) 2>&1 || echo failure`
if test x"$errors" = x && test -f conftest.$ac_objext; then
acx_cv_cc_gcc_supports_ada=yes
+ break
fi
rm -f conftest.*
fi
@@ -2209,7 +2139,7 @@ else
fi
echo $ac_n "checking how to compare bootstrapped objects""... $ac_c" 1>&6
-echo "configure:2213: checking how to compare bootstrapped objects" >&5
+echo "configure:2143: checking how to compare bootstrapped objects" >&5
if eval "test \"`echo '$''{'gcc_cv_prog_cmp_skip'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2253,7 +2183,7 @@ fi
if test "x$with_mpfr_dir" != x; then
- gmpinc="-I$with_mpfr_dir"
+ gmpinc="-I$with_mpfr_dir/mpfr"
gmplibs="$with_mpfr_dir/libmpfr.a"
else
gmplibs="-lmpfr"
@@ -2307,9 +2237,9 @@ saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $gmpinc"
# Check GMP actually works
echo $ac_n "checking for correct version of gmp.h""... $ac_c" 1>&6
-echo "configure:2311: checking for correct version of gmp.h" >&5
+echo "configure:2241: checking for correct version of gmp.h" >&5
cat > conftest.$ac_ext <<EOF
-#line 2313 "configure"
+#line 2243 "configure"
#include "confdefs.h"
#include "gmp.h"
int main() {
@@ -2320,7 +2250,7 @@ choke me
; return 0; }
EOF
-if { (eval echo configure:2324: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6
else
@@ -2333,12 +2263,12 @@ rm -f conftest*
if test x"$have_gmp" = xyes; then
echo $ac_n "checking for MPFR""... $ac_c" 1>&6
-echo "configure:2337: checking for MPFR" >&5
+echo "configure:2267: checking for MPFR" >&5
saved_LIBS="$LIBS"
LIBS="$LIBS $gmplibs"
cat > conftest.$ac_ext <<EOF
-#line 2342 "configure"
+#line 2272 "configure"
#include "confdefs.h"
#include <gmp.h>
#include <mpfr.h>
@@ -2346,7 +2276,7 @@ int main() {
mpfr_t n; mpfr_init(n);
; return 0; }
EOF
-if { (eval echo configure:2350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2280: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
echo "$ac_t""yes" 1>&6
else
@@ -2391,15 +2321,6 @@ if test -d ${srcdir}/gcc; then
fi
enable_languages=`echo "${enable_languages}" | sed -e 's/[ ,][ ,]*/,/g' -e 's/,$//'`
- # 'f95' is the old name for the 'fortran' language. We issue a warning
- # and make the substitution.
- case ,${enable_languages}, in
- *,f95,*)
- echo configure.in: warning: 'f95' as language name is deprecated, use 'fortran' instead 1>&2
- enable_languages=`echo "${enable_languages}" | sed -e 's/f95/fortran/g'`
- ;;
- esac
-
# First scan to see if an enabled language requires some other language.
# We assume that a given config-lang.in will list all the language
# front ends it requires, even if some are required indirectly.
@@ -2488,14 +2409,7 @@ if test -d ${srcdir}/gcc; then
add_this_lang=no
;;
esac
-
- # Disable a language that is unsupported by the target.
- case " $unsupported_languages " in
- *" $language "*)
- add_this_lang=no
- ;;
- esac
-
+
case $add_this_lang in
no)
# Remove language-dependent dirs.
@@ -2519,8 +2433,8 @@ if test -d ${srcdir}/gcc; then
missing_languages=`echo "$missing_languages" | sed -e "s/^,//" -e "s/,$//"`
if test "x$missing_languages" != x; then
{ echo "configure: error:
-The following requested languages could not be built: ${missing_languages}
-Recognised languages are: ${potential_languages}" 1>&2; exit 1; }
+The following requested languages were not found: ${missing_languages}
+The available languages are: ${potential_languages}" 1>&2; exit 1; }
fi
if test "x$new_enable_languages" != "x$enable_languages"; then
@@ -2530,21 +2444,13 @@ Recognised languages are: ${potential_languages}" 1>&2; exit 1; }
ac_configure_args=`echo " $ac_configure_args" | sed -e 's/ --enable-languages=[^ ]*//' -e 's/$/ --enable-languages='"$enable_languages"/ `
fi
-# Handle --disable-<component> generically.
-for dir in $configdirs $build_configdirs $target_configdirs ; do
- dirname=`echo $dir | sed -e s/target-//g -e s/build-//g -e s/-/_/g`
- if eval test x\${enable_${dirname}} "=" xno ; then
- noconfigdirs="$noconfigdirs $dir"
- fi
-done
-
-# Remove the entries in $skipdirs and $noconfigdirs from $configdirs,
-# $build_configdirs and $target_configdirs.
+# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
+# $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.
notsupp=""
for dir in . $skipdirs $noconfigdirs ; do
- dirname=`echo $dir | sed -e s/target-//g -e s/build-//g`
+ dirname=`echo $dir | sed -e s/target-//g`
if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure ; then
@@ -2555,16 +2461,6 @@ for dir in . $skipdirs $noconfigdirs ; do
fi
fi
fi
- if test $dir != . && echo " ${build_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- build_configdirs=`echo " ${build_configdirs} " | sed -e "s/ ${dir} / /"`
- if test -r $srcdir/$dirname/configure ; then
- if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- true
- else
- notsupp="$notsupp $dir"
- fi
- fi
- fi
if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure ; then
@@ -2665,18 +2561,6 @@ esac
copy_dirs=
-# Check whether --with-build-sysroot or --without-build-sysroot was given.
-if test "${with_build_sysroot+set}" = set; then
- withval="$with_build_sysroot"
- if test x"$withval" != x ; then
- SYSROOT_CFLAGS_FOR_TARGET="--sysroot=$withval"
- fi
-else
- SYSROOT_CFLAGS_FOR_TARGET=
-fi
-
-
-
# Handle --with-headers=XXX. If the value is not "yes", the contents of
# the named directory are copied to $(tooldir)/sys-include.
if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
@@ -2714,39 +2598,6 @@ if test x"${with_libs}" != x && test x"${with_libs}" != xno ; then
fi
fi
-# Set with_gnu_as and with_gnu_ld as appropriate.
-#
-# This is done by determining whether or not the appropriate directory
-# is available, and by checking whether or not specific configurations
-# have requested that this magic not happen.
-#
-# The command line options always override the explicit settings in
-# configure.in, and the settings in configure.in override this magic.
-#
-# If the default for a toolchain is to use GNU as and ld, and you don't
-# want to do that, then you should use the --without-gnu-as and
-# --without-gnu-ld options for the configure script.
-
-if test x${use_gnu_as} = x &&
- echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
- with_gnu_as=yes
- extra_host_args="$extra_host_args --with-gnu-as"
-fi
-
-if test x${use_gnu_ld} = x &&
- echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
- with_gnu_ld=yes
- extra_host_args="$extra_host_args --with-gnu-ld"
-fi
-
-# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
-# can detect this case.
-
-if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
- with_newlib=yes
- extra_host_args="$extra_host_args --with-newlib"
-fi
-
# Handle ${copy_dirs}
set fnord ${copy_dirs}
shift
@@ -2778,55 +2629,6 @@ while test $# != 0 ; do
shift; shift
done
-# Determine a target-dependent exec_prefix that the installed
-# gcc will search in. Keep this list sorted by triplet, with
-# the *-*-osname triplets last.
-md_exec_prefix=
-case "${target}" in
- alpha*-*-*vms*)
- md_exec_prefix=/gnu/lib/gcc-lib
- ;;
- i3456786-pc-msdosdjgpp*)
- md_exec_prefix=/dev/env/DJDIR/bin
- ;;
- i3456786-*-sco3.2v5*)
- if test $with_gnu_as = yes; then
- md_exec_prefix=/usr/gnu/bin
- else
- md_exec_prefix=/usr/ccs/bin/elf
- fi
- ;;
-
- mn10300-*-* | \
- powerpc-*-chorusos* | \
- powerpc*-*-eabi* | \
- powerpc*-*-sysv* | \
- powerpc*-*-kaos* | \
- s390x-ibm-tpf*)
- md_exec_prefix=/usr/ccs/bin
- ;;
- sparc64-*-elf*)
- ;;
- v850*-*-*)
- md_exec_prefix=/usr/ccs/bin
- ;;
- xtensa-*-elf*)
- ;;
-
- *-*-beos* | \
- *-*-elf* | \
- *-*-hpux* | \
- *-*-netware* | \
- *-*-nto-qnx* | \
- *-*-rtems* | \
- *-*-solaris2* | \
- *-*-sysv45* | \
- *-*-vxworks* | \
- *-wrs-windiss)
- md_exec_prefix=/usr/ccs/bin
- ;;
-esac
-
extra_arflags_for_target=
extra_nmflags_for_target=
extra_ranlibflags_for_target=
@@ -2884,6 +2686,39 @@ case "${enable_target_optspace}:${target}" in
;;
esac
+# Set with_gnu_as and with_gnu_ld as appropriate.
+#
+# This is done by determining whether or not the appropriate directory
+# is available, and by checking whether or not specific configurations
+# have requested that this magic not happen.
+#
+# The command line options always override the explicit settings in
+# configure.in, and the settings in configure.in override this magic.
+#
+# If the default for a toolchain is to use GNU as and ld, and you don't
+# want to do that, then you should use the --without-gnu-as and
+# --without-gnu-ld options for the configure script.
+
+if test x${use_gnu_as} = x &&
+ echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
+ with_gnu_as=yes
+ extra_host_args="$extra_host_args --with-gnu-as"
+fi
+
+if test x${use_gnu_ld} = x &&
+ echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
+ with_gnu_ld=yes
+ extra_host_args="$extra_host_args --with-gnu-ld"
+fi
+
+# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
+# can detect this case.
+
+if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
+ with_newlib=yes
+ extra_host_args="$extra_host_args --with-newlib"
+fi
+
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
@@ -2909,6 +2744,221 @@ esac
tooldir='${exec_prefix}'/${target_alias}
build_tooldir=${tooldir}
+# Generate default definitions for YACC, M4, LEX and other programs that run
+# on the build machine. These are used if the Makefile can't locate these
+# programs in objdir.
+MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
+for ac_prog in bison
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2757: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_BISON'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_BISON"; then
+ ac_cv_prog_CONFIGURED_BISON="$CONFIGURED_BISON" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_BISON="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_BISON="$ac_cv_prog_CONFIGURED_BISON"
+if test -n "$CONFIGURED_BISON"; then
+ echo "$ac_t""$CONFIGURED_BISON" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_BISON" && break
+done
+test -n "$CONFIGURED_BISON" || CONFIGURED_BISON="$MISSING bison"
+
+for ac_prog in 'bison -y' byacc yacc
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2792: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_YACC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_YACC"; then
+ ac_cv_prog_CONFIGURED_YACC="$CONFIGURED_YACC" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_YACC="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_YACC="$ac_cv_prog_CONFIGURED_YACC"
+if test -n "$CONFIGURED_YACC"; then
+ echo "$ac_t""$CONFIGURED_YACC" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_YACC" && break
+done
+test -n "$CONFIGURED_YACC" || CONFIGURED_YACC="$MISSING bison -y"
+
+for ac_prog in gm4 gnum4 m4
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2827: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_M4'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_M4"; then
+ ac_cv_prog_CONFIGURED_M4="$CONFIGURED_M4" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_M4="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_M4="$ac_cv_prog_CONFIGURED_M4"
+if test -n "$CONFIGURED_M4"; then
+ echo "$ac_t""$CONFIGURED_M4" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_M4" && break
+done
+test -n "$CONFIGURED_M4" || CONFIGURED_M4="$MISSING m4"
+
+for ac_prog in flex
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2862: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_FLEX'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_FLEX"; then
+ ac_cv_prog_CONFIGURED_FLEX="$CONFIGURED_FLEX" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_FLEX="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_FLEX="$ac_cv_prog_CONFIGURED_FLEX"
+if test -n "$CONFIGURED_FLEX"; then
+ echo "$ac_t""$CONFIGURED_FLEX" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_FLEX" && break
+done
+test -n "$CONFIGURED_FLEX" || CONFIGURED_FLEX="$MISSING flex"
+
+for ac_prog in flex lex
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2897: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LEX'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_LEX"; then
+ ac_cv_prog_CONFIGURED_LEX="$CONFIGURED_LEX" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_LEX="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_LEX="$ac_cv_prog_CONFIGURED_LEX"
+if test -n "$CONFIGURED_LEX"; then
+ echo "$ac_t""$CONFIGURED_LEX" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_LEX" && break
+done
+test -n "$CONFIGURED_LEX" || CONFIGURED_LEX="$MISSING flex"
+
+for ac_prog in makeinfo
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2932: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_MAKEINFO'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$CONFIGURED_MAKEINFO"; then
+ ac_cv_prog_CONFIGURED_MAKEINFO="$CONFIGURED_MAKEINFO" # Let the user override the test.
+else
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
+ ac_dummy="$PATH"
+ for ac_dir in $ac_dummy; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ ac_cv_prog_CONFIGURED_MAKEINFO="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+CONFIGURED_MAKEINFO="$ac_cv_prog_CONFIGURED_MAKEINFO"
+if test -n "$CONFIGURED_MAKEINFO"; then
+ echo "$ac_t""$CONFIGURED_MAKEINFO" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$CONFIGURED_MAKEINFO" && break
+done
+test -n "$CONFIGURED_MAKEINFO" || CONFIGURED_MAKEINFO="$MISSING makeinfo"
+
+
# Create a .gdbinit file which runs the one in srcdir
# and tells GDB to look there for source files.
@@ -2975,9 +3025,15 @@ case "${host}" in
;;
esac
+# If --enable-shared was set, we must set LD_LIBRARY_PATH so that the
+# binutils tools will find libbfd.so.
+case "${enable_shared}" in
+ no | "") SET_LIB_PATH= ;;
+ *) SET_LIB_PATH="\$(REALLY_SET_LIB_PATH)" ;;
+esac
+
case "${host}" in
*-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;;
- *-*-darwin* | *-*-rhapsody* ) RPATH_ENVVAR=DYLD_LIBRARY_PATH ;;
*) RPATH_ENVVAR=LD_LIBRARY_PATH ;;
esac
@@ -3011,8 +3067,6 @@ case "$enable_gdbtk" in
fi
;;
esac
-CONFIGURE_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-configure-/g`
-INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
# Strip out unwanted targets.
@@ -3045,26 +3099,27 @@ esac
case "$have_compiler:$host:$target:$enable_bootstrap" in
*:*:*:no) ;;
- # Default behavior. Enable bootstrap if we have a compiler
+ # Default behavior. (We'll) enable bootstrap if we have a compiler
# and we are in a native configuration.
yes:$build:$build:default)
- enable_bootstrap=yes ;;
+ # This will become 'yes'
+ enable_bootstrap=no ;;
*:*:*:default)
enable_bootstrap=no ;;
# We have a compiler and we are in a native configuration, bootstrap is ok
- yes:$build:$build:yes)
+ yes:$build:$build:yes | yes:$build:$build:lean)
;;
# Other configurations, but we have a compiler. Assume the user knows
# what he's doing.
- yes:*:*:yes)
+ yes:*:*:yes | yes:*:*:lean)
echo "configure: warning: trying to bootstrap a cross compiler" 1>&2
;;
# No compiler: if they passed --enable-bootstrap explicitly, fail
- no:*:*:yes)
+ no:*:*:yes | no:*:*:lean)
{ echo "configure: error: cannot bootstrap without a compiler" 1>&2; exit 1; } ;;
# Fail if wrong command line
@@ -3076,11 +3131,20 @@ esac
# Adjust the toplevel makefile according to whether bootstrap was selected.
case "$enable_bootstrap" in
yes)
+ bootstrap_lean='#'
+ default_target=bootstrap
+ bootstrap_suffix=bootstrap ;;
+ lean)
+ bootstrap_lean=''
+ default_target=bootstrap
bootstrap_suffix=bootstrap ;;
no)
+ default_target=all
bootstrap_suffix=no-bootstrap ;;
esac
+
+
for module in ${build_configdirs} ; do
if test -z "${no_recursion}" \
&& test -f ${build_subdir}/${module}/Makefile; then
@@ -3094,13 +3158,10 @@ for module in ${build_configdirs} ; do
/^@endif build-$module-$bootstrap_suffix\$/d"
done
for module in ${configdirs} ; do
- if test -z "${no_recursion}"; then
- for file in stage*-${module}/Makefile ${module}/Makefile; do
- if test -f ${file}; then
- echo 1>&2 "*** removing ${file} to force reconfigure"
- rm -f ${file}
- fi
- done
+ if test -z "${no_recursion}" \
+ && test -f ${module}/Makefile; then
+ echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
+ rm -f ${module}/Makefile
fi
extrasub="$extrasub
/^@if $module\$/d
@@ -3228,7 +3289,7 @@ baseargs="$baseargs --program-transform-name='${gcc_transform_name}'"
# For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor
# desired.
-build_configargs="--cache-file=../config.cache --build=${build_alias} --host=${build_alias} --target=${target_alias} ${baseargs}"
+build_configargs="--cache-file=../config.cache --build=${build_alias} --host=${build_alias} ${baseargs}"
# For host modules, accept cache file option, or specification as blank.
case "${cache_file}" in
@@ -3275,10 +3336,26 @@ fi
# fixed in future. It's still worthwhile to use a cache file for each
# directory. I think.
-# Pass the appropriate --build, --host, --target and --cache-file arguments.
-# We need to pass --target, as newer autoconf's requires consistency
-# for target_alias and gcc doesn't manage it consistently.
-target_configargs="--cache-file=./config.cache --build=${build_alias} --host=${target_alias} --target=${target_alias} ${target_configargs}"
+# Pass the appropriate --host, --build, and --cache-file arguments.
+target_configargs="--cache-file=./config.cache --host=${target_alias} --build=${build_alias} ${target_configargs}"
+
+# provide a proper gxx_include_dir.
+# Note, if you change the default, make sure to fix both here and in
+# the gcc and libstdc++-v3 subdirectories.
+# Check whether --with-gxx-include-dir or --without-gxx-include-dir was given.
+case "${with_gxx_include_dir}" in
+ yes)
+ { echo "configure: error: --with-gxx-include-dir=[dir] requires a directory" 1>&2; exit 1; }
+ ;;
+ no | "")
+ case "${enable_version_specific_runtime_libs}" in
+ yes) gxx_include_dir='${libsubdir}/include/c++' ;;
+ *)
+ . ${srcdir}/config.if
+ gxx_include_dir='${prefix}/include/'${libstdcxx_incdir} ;;
+ esac ;;
+ *) gxx_include_dir=${with_gxx_include_dir} ;;
+esac
FLAGS_FOR_TARGET=
case " $target_configdirs " in
@@ -3300,7 +3377,7 @@ case " $target_configdirs " in
# to it. This is right: we don't want to search that directory
# for binaries, but we want the header files in there, so add
# them explicitly.
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/gcc/include'
# Someone might think of using the pre-installed headers on
# Canadian crosses, in case the installed compiler is not fully
@@ -3347,9 +3424,92 @@ fi
if test "x${use_gnu_ld}" = x &&
echo " ${configdirs} " | grep " ld " > /dev/null ; then
# Arrange for us to find uninstalled linker scripts.
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(HOST_SUBDIR)/ld'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld'
fi
+if test "x${CC_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ CC_FOR_TARGET='$$r/gcc/xgcc -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ CC_FOR_TARGET='$(CC)'
+else
+ CC_FOR_TARGET=`echo gcc | sed "${program_transform_name}"`
+fi
+CC_FOR_TARGET=$CC_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+if test "x${GCJ_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ GCJ_FOR_TARGET='$$r/gcc/gcj -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ GCJ_FOR_TARGET='gcj'
+else
+ GCJ_FOR_TARGET=`echo gcj | sed "${program_transform_name}"`
+fi
+GCJ_FOR_TARGET=$GCJ_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+if test "x${GFORTRAN_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ GFORTRAN_FOR_TARGET='$$r/gcc/gfortran -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ GFORTRAN_FOR_TARGET='gfortran'
+else
+ GFORTRAN_FOR_TARGET=`echo gfortran | sed "${program_transform_name}"`
+fi
+case $GFORTRAN_FOR_TARGET in
+*' $(FLAGS_FOR_TARGET)') ;;
+*) GFORTRAN_FOR_TARGET=$GFORTRAN_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;;
+esac
+
+# Don't use libstdc++-v3's flags to configure/build itself.
+libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+raw_libstdcxx_flags='-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+
+if test "x${CXX_FOR_TARGET+set}" = xset; then
+ if test "x${RAW_CXX_FOR_TARGET+set}" != xset; then
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+ fi
+elif test -d ${srcdir}/gcc; then
+ # We add -shared-libgcc to CXX_FOR_TARGET whenever we use xgcc instead
+ # of g++ for linking C++ or Java, because g++ has -shared-libgcc by
+ # default whereas gcc does not.
+ # RAW_CXX_FOR_TARGET is for linking C++ or java; CXX_FOR_TARGET is for
+ # all other cases.
+ CXX_FOR_TARGET='$$r/gcc/g++ -B$$r/gcc/ -nostdinc++ '$libstdcxx_flags
+ RAW_CXX_FOR_TARGET='$$r/gcc/xgcc -shared-libgcc -B$$r/gcc/ -nostdinc++ '$raw_libstdcxx_flags
+elif test "$host" = "$target"; then
+ CXX_FOR_TARGET='$(CXX)'
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+else
+ CXX_FOR_TARGET=`echo c++ | sed "${program_transform_name}"`
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+fi
+CXX_FOR_TARGET=$CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+RAW_CXX_FOR_TARGET=$RAW_CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+qCXX_FOR_TARGET=`echo "$CXX_FOR_TARGET" | sed 's,[&%],\\\&,g'`
+qRAW_CXX_FOR_TARGET=`echo "$RAW_CXX_FOR_TARGET" | sed 's,[&%],\\\&,g'`
+
+# We want to defer the evaluation of `cmd`s and shell variables in
+# CXX_FOR_TARGET when recursing in the top-level Makefile, such as for
+# bootstrap. We'll enclose CXX_FOR_TARGET_FOR_RECURSIVE_MAKE in single
+# quotes, but we still have to duplicate `$'s so that shell variables
+# can be expanded by the nested make as shell variables, not as make
+# macros.
+qqCXX_FOR_TARGET=`echo "$qCXX_FOR_TARGET" | sed -e 's,[$][$],$$$$,g'`
+qqRAW_CXX_FOR_TARGET=`echo "$qRAW_CXX_FOR_TARGET" | sed -e 's,[$][$],$$$$,g'`
+
+# Wrap CC_FOR_TARGET and friends, for certain types of builds.
+CC_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${CC_FOR_TARGET}"
+GCJ_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GCJ_FOR_TARGET}"
+GFORTRAN_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GFORTRAN_FOR_TARGET}"
+CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qCXX_FOR_TARGET}"
+RAW_CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qRAW_CXX_FOR_TARGET}"
+CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqCXX_FOR_TARGET}"
+RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqRAW_CXX_FOR_TARGET}"
+
# Makefile fragments.
for frag in host_makefile_frag target_makefile_frag alphaieee_frag ospace_frag;
do
@@ -3371,358 +3531,25 @@ done
-# Build module lists & subconfigure args.
-
-
-
-# Host module lists & subconfigure args.
-
-
-
-# Target module lists & subconfigure args.
-
-
-
-# Build tools.
-
-
-
-# Generate default definitions for YACC, M4, LEX and other programs that run
-# on the build machine. These are used if the Makefile can't locate these
-# programs in objdir.
-MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
-
-for ac_prog in 'bison -y' byacc yacc
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3401: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$YACC"; then
- ac_cv_prog_YACC="$YACC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_YACC="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-YACC="$ac_cv_prog_YACC"
-if test -n "$YACC"; then
- echo "$ac_t""$YACC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-test -n "$YACC" && break
-done
-test -n "$YACC" || YACC="$MISSING bison -y"
-
-case " $build_configdirs " in
- *" bison "*) YACC='$$r/$(BUILD_SUBDIR)/bison/tests/bison -y' ;;
- *" byacc "*) YACC='$$r/$(BUILD_SUBDIR)/byacc/byacc' ;;
-esac
-
-for ac_prog in bison
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3441: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$BISON"; then
- ac_cv_prog_BISON="$BISON" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_BISON="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-BISON="$ac_cv_prog_BISON"
-if test -n "$BISON"; then
- echo "$ac_t""$BISON" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-test -n "$BISON" && break
-done
-test -n "$BISON" || BISON="$MISSING bison"
-
-case " $build_configdirs " in
- *" bison "*) BISON='$$r/$(BUILD_SUBDIR)/bison/tests/bison' ;;
-esac
-
-for ac_prog in gm4 gnum4 m4
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3480: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_M4'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$M4"; then
- ac_cv_prog_M4="$M4" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_M4="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-M4="$ac_cv_prog_M4"
-if test -n "$M4"; then
- echo "$ac_t""$M4" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-test -n "$M4" && break
-done
-test -n "$M4" || M4="$MISSING m4"
-
-case " $build_configdirs " in
- *" m4 "*) M4='$$r/$(BUILD_SUBDIR)/m4/m4' ;;
-esac
-
-for ac_prog in flex lex
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3519: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$LEX"; then
- ac_cv_prog_LEX="$LEX" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LEX="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-LEX="$ac_cv_prog_LEX"
-if test -n "$LEX"; then
- echo "$ac_t""$LEX" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-test -n "$LEX" && break
-done
-test -n "$LEX" || LEX="$MISSING flex"
-
-case " $build_configdirs " in
- *" flex "*) LEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
- *" lex "*) LEX='$$r/$(BUILD_SUBDIR)/lex/lex' ;;
-esac
-for ac_prog in flex
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3559: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$FLEX"; then
- ac_cv_prog_FLEX="$FLEX" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_FLEX="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-FLEX="$ac_cv_prog_FLEX"
-if test -n "$FLEX"; then
- echo "$ac_t""$FLEX" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-test -n "$FLEX" && break
-done
-test -n "$FLEX" || FLEX="$MISSING flex"
-case " $build_configdirs " in
- *" flex "*) FLEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
-esac
-for ac_prog in makeinfo
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3598: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$MAKEINFO"; then
- ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_MAKEINFO="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-MAKEINFO="$ac_cv_prog_MAKEINFO"
-if test -n "$MAKEINFO"; then
- echo "$ac_t""$MAKEINFO" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-test -n "$MAKEINFO" && break
-done
-test -n "$MAKEINFO" || MAKEINFO="$MISSING makeinfo"
+# Build module lists & subconfigure args.
-case " $build_configdirs " in
- *" texinfo "*) MAKEINFO='$$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo' ;;
- *)
- # For an installed makeinfo, we require it to be from texinfo 4.2 or
- # higher, else we use the "missing" dummy.
- if ${MAKEINFO} --version \
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
- :
- else
- MAKEINFO="$MISSING makeinfo"
- fi
- ;;
-esac
+# Host module lists & subconfigure args.
-# FIXME: expect and dejagnu may become build tools?
-for ac_prog in expect
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3651: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_EXPECT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$EXPECT"; then
- ac_cv_prog_EXPECT="$EXPECT" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_EXPECT="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-EXPECT="$ac_cv_prog_EXPECT"
-if test -n "$EXPECT"; then
- echo "$ac_t""$EXPECT" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-test -n "$EXPECT" && break
-done
-test -n "$EXPECT" || EXPECT="expect"
+# Target module lists & subconfigure args.
-case " $configdirs " in
- *" expect "*)
- test $host = $build && EXPECT='$$r/$(HOST_SUBDIR)/expect/expect'
- ;;
-esac
-for ac_prog in runtest
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3692: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RUNTEST'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RUNTEST"; then
- ac_cv_prog_RUNTEST="$RUNTEST" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RUNTEST="$ac_prog"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RUNTEST="$ac_cv_prog_RUNTEST"
-if test -n "$RUNTEST"; then
- echo "$ac_t""$RUNTEST" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-test -n "$RUNTEST" && break
-done
-test -n "$RUNTEST" || RUNTEST="runtest"
+# Build tools.
-case " $configdirs " in
- *" dejagnu "*)
- test $host = $build && RUNTEST='$$r/$(HOST_SUBDIR)/dejagnu/runtest'
- ;;
-esac
# Host tools.
@@ -3731,12 +3558,11 @@ test -n "$host_alias" && ncn_tool_prefix=$host_alias-
ncn_target_tool_prefix=
test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
- for ncn_progname in ar; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3740: checking for $ac_word" >&5
+echo "configure:3566: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3748,7 +3574,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_AR="${ncn_tool_prefix}ar"
break
fi
done
@@ -3762,56 +3588,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_AR" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_AR" ; then
+ if test $build = $host ; then
+ ncn_cv_AR=$AR
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3771: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
+echo "configure:3599: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
+ if test -n "$ncn_cv_AR"; then
+ ac_cv_prog_ncn_cv_AR="$ncn_cv_AR" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ncn_progname}"
+ ac_cv_prog_ncn_cv_AR="ar"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_AR" && ac_cv_prog_ncn_cv_AR="ar"
fi
fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
+ncn_cv_AR="$ac_cv_prog_ncn_cv_AR"
+if test -n "$ncn_cv_AR"; then
+ echo "$ac_t""$ncn_cv_AR" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_AR" && break
-done
-
-if test -z "$ac_cv_prog_AR" ; then
- set dummy ar
- if test $build = $host ; then
- AR="$2"
+ AR=$ncn_cv_AR
else
- AR="${ncn_tool_prefix}$2"
+ AR="${ncn_tool_prefix}ar"
fi
+else
+ AR="$ac_cv_prog_AR"
fi
- for ncn_progname in as; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}as", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3815: checking for $ac_word" >&5
+echo "configure:3638: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3823,7 +3646,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_AS="${ncn_tool_prefix}as"
break
fi
done
@@ -3837,56 +3660,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_AS" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_AS" ; then
+ if test $build = $host ; then
+ ncn_cv_AS=$AS
+ # Extract the first word of "as", so it can be a program name with args.
+set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3846: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
+echo "configure:3671: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
+ if test -n "$ncn_cv_AS"; then
+ ac_cv_prog_ncn_cv_AS="$ncn_cv_AS" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ncn_progname}"
+ ac_cv_prog_ncn_cv_AS="as"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_AS" && ac_cv_prog_ncn_cv_AS="as"
fi
fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
+ncn_cv_AS="$ac_cv_prog_ncn_cv_AS"
+if test -n "$ncn_cv_AS"; then
+ echo "$ac_t""$ncn_cv_AS" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_AS" && break
-done
-
-if test -z "$ac_cv_prog_AS" ; then
- set dummy as
- if test $build = $host ; then
- AS="$2"
+ AS=$ncn_cv_AS
else
- AS="${ncn_tool_prefix}$2"
+ AS="${ncn_tool_prefix}as"
fi
+else
+ AS="$ac_cv_prog_AS"
fi
- for ncn_progname in dlltool; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3890: checking for $ac_word" >&5
+echo "configure:3710: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3898,7 +3718,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_DLLTOOL="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_DLLTOOL="${ncn_tool_prefix}dlltool"
break
fi
done
@@ -3912,87 +3732,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_DLLTOOL" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_DLLTOOL" ; then
+ if test $build = $host ; then
+ ncn_cv_DLLTOOL=$DLLTOOL
+ # Extract the first word of "dlltool", so it can be a program name with args.
+set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3921: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
+echo "configure:3743: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$DLLTOOL"; then
- ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
+ if test -n "$ncn_cv_DLLTOOL"; then
+ ac_cv_prog_ncn_cv_DLLTOOL="$ncn_cv_DLLTOOL" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_DLLTOOL="${ncn_progname}"
+ ac_cv_prog_ncn_cv_DLLTOOL="dlltool"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_DLLTOOL" && ac_cv_prog_ncn_cv_DLLTOOL="dlltool"
fi
fi
-DLLTOOL="$ac_cv_prog_DLLTOOL"
-if test -n "$DLLTOOL"; then
- echo "$ac_t""$DLLTOOL" 1>&6
+ncn_cv_DLLTOOL="$ac_cv_prog_ncn_cv_DLLTOOL"
+if test -n "$ncn_cv_DLLTOOL"; then
+ echo "$ac_t""$ncn_cv_DLLTOOL" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_DLLTOOL" && break
-done
-
-if test -z "$ac_cv_prog_DLLTOOL" ; then
- set dummy dlltool
- if test $build = $host ; then
- DLLTOOL="$2"
+ DLLTOOL=$ncn_cv_DLLTOOL
else
- DLLTOOL="${ncn_tool_prefix}$2"
+ DLLTOOL="${ncn_tool_prefix}dlltool"
fi
-fi
-
- for ncn_progname in ld; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3965: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$LD"; then
- ac_cv_prog_LD="$LD" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LD="${ncn_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-LD="$ac_cv_prog_LD"
-if test -n "$LD"; then
- echo "$ac_t""$LD" 1>&6
else
- echo "$ac_t""no" 1>&6
+ DLLTOOL="$ac_cv_prog_DLLTOOL"
fi
- fi
- if test -z "$ac_cv_prog_LD" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}ld", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3996: checking for $ac_word" >&5
+echo "configure:3782: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4004,7 +3790,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LD="${ncn_progname}"
+ ac_cv_prog_LD="${ncn_tool_prefix}ld"
break
fi
done
@@ -4017,101 +3803,54 @@ if test -n "$LD"; then
else
echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_LD" && break
-done
+fi
if test -z "$ac_cv_prog_LD" ; then
- set dummy ld
if test $build = $host ; then
- LD="$2"
- else
- LD="${ncn_tool_prefix}$2"
- fi
-fi
-
- for ncn_progname in lipo; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4040: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LIPO'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$LIPO"; then
- ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LIPO="${ncn_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-LIPO="$ac_cv_prog_LIPO"
-if test -n "$LIPO"; then
- echo "$ac_t""$LIPO" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_LIPO" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ ncn_cv_LD=$LD
+ # Extract the first word of "ld", so it can be a program name with args.
+set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4071: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LIPO'+set}'`\" = set"; then
+echo "configure:3815: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$LIPO"; then
- ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+ if test -n "$ncn_cv_LD"; then
+ ac_cv_prog_ncn_cv_LD="$ncn_cv_LD" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LIPO="${ncn_progname}"
+ ac_cv_prog_ncn_cv_LD="ld"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_LD" && ac_cv_prog_ncn_cv_LD="ld"
fi
fi
-LIPO="$ac_cv_prog_LIPO"
-if test -n "$LIPO"; then
- echo "$ac_t""$LIPO" 1>&6
+ncn_cv_LD="$ac_cv_prog_ncn_cv_LD"
+if test -n "$ncn_cv_LD"; then
+ echo "$ac_t""$ncn_cv_LD" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_LIPO" && break
-done
-
-if test -z "$ac_cv_prog_LIPO" ; then
- set dummy lipo
- if test $build = $host ; then
- LIPO="$2"
+ LD=$ncn_cv_LD
else
- LIPO="${ncn_tool_prefix}$2"
+ LD="${ncn_tool_prefix}ld"
fi
+else
+ LD="$ac_cv_prog_LD"
fi
- for ncn_progname in nm; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}nm", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4115: checking for $ac_word" >&5
+echo "configure:3854: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4123,7 +3862,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_NM="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_NM="${ncn_tool_prefix}nm"
break
fi
done
@@ -4137,87 +3876,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_NM" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_NM" ; then
+ if test $build = $host ; then
+ ncn_cv_NM=$NM
+ # Extract the first word of "nm", so it can be a program name with args.
+set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4146: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
+echo "configure:3887: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$NM"; then
- ac_cv_prog_NM="$NM" # Let the user override the test.
+ if test -n "$ncn_cv_NM"; then
+ ac_cv_prog_ncn_cv_NM="$ncn_cv_NM" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_NM="${ncn_progname}"
+ ac_cv_prog_ncn_cv_NM="nm"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_NM" && ac_cv_prog_ncn_cv_NM="nm"
fi
fi
-NM="$ac_cv_prog_NM"
-if test -n "$NM"; then
- echo "$ac_t""$NM" 1>&6
+ncn_cv_NM="$ac_cv_prog_ncn_cv_NM"
+if test -n "$ncn_cv_NM"; then
+ echo "$ac_t""$ncn_cv_NM" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_NM" && break
-done
-
-if test -z "$ac_cv_prog_NM" ; then
- set dummy nm
- if test $build = $host ; then
- NM="$2"
+ NM=$ncn_cv_NM
else
- NM="${ncn_tool_prefix}$2"
+ NM="${ncn_tool_prefix}nm"
fi
-fi
-
- for ncn_progname in ranlib; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4190: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ncn_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
+ NM="$ac_cv_prog_NM"
fi
- fi
- if test -z "$ac_cv_prog_RANLIB" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4221: checking for $ac_word" >&5
+echo "configure:3926: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4229,7 +3934,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ncn_progname}"
+ ac_cv_prog_RANLIB="${ncn_tool_prefix}ranlib"
break
fi
done
@@ -4242,91 +3947,54 @@ if test -n "$RANLIB"; then
else
echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_RANLIB" && break
-done
-if test -z "$ac_cv_prog_RANLIB" ; then
- RANLIB=":"
fi
-
- for ncn_progname in strip; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4260: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_STRIP="${ncn_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-STRIP="$ac_cv_prog_STRIP"
-if test -n "$STRIP"; then
- echo "$ac_t""$STRIP" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_STRIP" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+if test -z "$ac_cv_prog_RANLIB" ; then
+ if test $build = $host ; then
+ ncn_cv_RANLIB=$RANLIB
+ # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4291: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
+echo "configure:3959: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+ if test -n "$ncn_cv_RANLIB"; then
+ ac_cv_prog_ncn_cv_RANLIB="$ncn_cv_RANLIB" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_STRIP="${ncn_progname}"
+ ac_cv_prog_ncn_cv_RANLIB="ranlib"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_RANLIB" && ac_cv_prog_ncn_cv_RANLIB=":"
fi
fi
-STRIP="$ac_cv_prog_STRIP"
-if test -n "$STRIP"; then
- echo "$ac_t""$STRIP" 1>&6
+ncn_cv_RANLIB="$ac_cv_prog_ncn_cv_RANLIB"
+if test -n "$ncn_cv_RANLIB"; then
+ echo "$ac_t""$ncn_cv_RANLIB" 1>&6
else
echo "$ac_t""no" 1>&6
fi
+ RANLIB=$ncn_cv_RANLIB
+ else
+ RANLIB=":"
fi
- test -n "$ac_cv_prog_STRIP" && break
-done
-
-if test -z "$ac_cv_prog_STRIP" ; then
- STRIP=":"
+else
+ RANLIB="$ac_cv_prog_RANLIB"
fi
- for ncn_progname in windres; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}windres", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4330: checking for $ac_word" >&5
+echo "configure:3998: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4338,7 +4006,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_WINDRES="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_WINDRES="${ncn_tool_prefix}windres"
break
fi
done
@@ -4352,56 +4020,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_WINDRES" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_WINDRES" ; then
+ if test $build = $host ; then
+ ncn_cv_WINDRES=$WINDRES
+ # Extract the first word of "windres", so it can be a program name with args.
+set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4361: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
+echo "configure:4031: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$WINDRES"; then
- ac_cv_prog_WINDRES="$WINDRES" # Let the user override the test.
+ if test -n "$ncn_cv_WINDRES"; then
+ ac_cv_prog_ncn_cv_WINDRES="$ncn_cv_WINDRES" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_WINDRES="${ncn_progname}"
+ ac_cv_prog_ncn_cv_WINDRES="windres"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_WINDRES" && ac_cv_prog_ncn_cv_WINDRES="windres"
fi
fi
-WINDRES="$ac_cv_prog_WINDRES"
-if test -n "$WINDRES"; then
- echo "$ac_t""$WINDRES" 1>&6
+ncn_cv_WINDRES="$ac_cv_prog_ncn_cv_WINDRES"
+if test -n "$ncn_cv_WINDRES"; then
+ echo "$ac_t""$ncn_cv_WINDRES" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_WINDRES" && break
-done
-
-if test -z "$ac_cv_prog_WINDRES" ; then
- set dummy windres
- if test $build = $host ; then
- WINDRES="$2"
+ WINDRES=$ncn_cv_WINDRES
else
- WINDRES="${ncn_tool_prefix}$2"
+ WINDRES="${ncn_tool_prefix}windres"
fi
+else
+ WINDRES="$ac_cv_prog_WINDRES"
fi
- for ncn_progname in objcopy; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}objcopy", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4405: checking for $ac_word" >&5
+echo "configure:4070: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4413,7 +4078,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJCOPY="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_OBJCOPY="${ncn_tool_prefix}objcopy"
break
fi
done
@@ -4427,56 +4092,53 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_OBJCOPY" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_OBJCOPY" ; then
+ if test $build = $host ; then
+ ncn_cv_OBJCOPY=$OBJCOPY
+ # Extract the first word of "objcopy", so it can be a program name with args.
+set dummy objcopy; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4436: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
+echo "configure:4103: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJCOPY'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$OBJCOPY"; then
- ac_cv_prog_OBJCOPY="$OBJCOPY" # Let the user override the test.
+ if test -n "$ncn_cv_OBJCOPY"; then
+ ac_cv_prog_ncn_cv_OBJCOPY="$ncn_cv_OBJCOPY" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJCOPY="${ncn_progname}"
+ ac_cv_prog_ncn_cv_OBJCOPY="objcopy"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_OBJCOPY" && ac_cv_prog_ncn_cv_OBJCOPY="objcopy"
fi
fi
-OBJCOPY="$ac_cv_prog_OBJCOPY"
-if test -n "$OBJCOPY"; then
- echo "$ac_t""$OBJCOPY" 1>&6
+ncn_cv_OBJCOPY="$ac_cv_prog_ncn_cv_OBJCOPY"
+if test -n "$ncn_cv_OBJCOPY"; then
+ echo "$ac_t""$ncn_cv_OBJCOPY" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_OBJCOPY" && break
-done
-
-if test -z "$ac_cv_prog_OBJCOPY" ; then
- set dummy objcopy
- if test $build = $host ; then
- OBJCOPY="$2"
+ OBJCOPY=$ncn_cv_OBJCOPY
else
- OBJCOPY="${ncn_tool_prefix}$2"
+ OBJCOPY="${ncn_tool_prefix}objcopy"
fi
+else
+ OBJCOPY="$ac_cv_prog_OBJCOPY"
fi
- for ncn_progname in objdump; do
- if test -n "$ncn_tool_prefix"; then
- # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_tool_prefix"; then
+ # Extract the first word of "${ncn_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4480: checking for $ac_word" >&5
+echo "configure:4142: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4488,7 +4150,7 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJDUMP="${ncn_tool_prefix}${ncn_progname}"
+ ac_cv_prog_OBJDUMP="${ncn_tool_prefix}objdump"
break
fi
done
@@ -4502,48 +4164,46 @@ else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_OBJDUMP" && test $build = $host ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_OBJDUMP" ; then
+ if test $build = $host ; then
+ ncn_cv_OBJDUMP=$OBJDUMP
+ # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4511: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
+echo "configure:4175: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+ if test -n "$ncn_cv_OBJDUMP"; then
+ ac_cv_prog_ncn_cv_OBJDUMP="$ncn_cv_OBJDUMP" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJDUMP="${ncn_progname}"
+ ac_cv_prog_ncn_cv_OBJDUMP="objdump"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_OBJDUMP" && ac_cv_prog_ncn_cv_OBJDUMP="objdump"
fi
fi
-OBJDUMP="$ac_cv_prog_OBJDUMP"
-if test -n "$OBJDUMP"; then
- echo "$ac_t""$OBJDUMP" 1>&6
+ncn_cv_OBJDUMP="$ac_cv_prog_ncn_cv_OBJDUMP"
+if test -n "$ncn_cv_OBJDUMP"; then
+ echo "$ac_t""$ncn_cv_OBJDUMP" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_OBJDUMP" && break
-done
-
-if test -z "$ac_cv_prog_OBJDUMP" ; then
- set dummy objdump
- if test $build = $host ; then
- OBJDUMP="$2"
+ OBJDUMP=$ncn_cv_OBJDUMP
else
- OBJDUMP="${ncn_tool_prefix}$2"
+ OBJDUMP="${ncn_tool_prefix}objdump"
fi
+else
+ OBJDUMP="$ac_cv_prog_OBJDUMP"
fi
@@ -4553,2595 +4213,550 @@ fi
# Target tools.
-# Check whether --with-build-time-tools or --without-build-time-tools was given.
-if test "${with_build_time_tools+set}" = set; then
- withval="$with_build_time_tools"
- case x"$withval" in
- x/*) ;;
- *)
- with_build_time_tools=
- echo "configure: warning: argument to --with-build-time-tools must be an absolute path" 1>&2
- ;;
- esac
-else
- with_build_time_tools=
-fi
-
-
- if test -n "$with_build_time_tools"; then
- for ncn_progname in cc gcc; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:4575: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_CC_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_CC_FOR_TARGET"; then
- for ncn_progname in cc gcc; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4592: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4221: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$CC_FOR_TARGET"; then
- ac_cv_prog_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_AR_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_AR_FOR_TARGET="$CONFIGURED_AR_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_AR_FOR_TARGET="${ncn_target_tool_prefix}ar"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-CC_FOR_TARGET="$ac_cv_prog_CC_FOR_TARGET"
-if test -n "$CC_FOR_TARGET"; then
- echo "$ac_t""$CC_FOR_TARGET" 1>&6
+CONFIGURED_AR_FOR_TARGET="$ac_cv_prog_CONFIGURED_AR_FOR_TARGET"
+if test -n "$CONFIGURED_AR_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_AR_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_CC_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4623: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC_FOR_TARGET"; then
- ac_cv_prog_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC_FOR_TARGET="$ac_cv_prog_CC_FOR_TARGET"
-if test -n "$CC_FOR_TARGET"; then
- echo "$ac_t""$CC_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_CC_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_CC_FOR_TARGET" ; then
- set dummy cc gcc
+if test -z "$ac_cv_prog_CONFIGURED_AR_FOR_TARGET" ; then
if test $build = $target ; then
- CC_FOR_TARGET="$2"
- else
- CC_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
- if test -n "$with_build_time_tools"; then
- for ncn_progname in c++ g++ cxx gxx; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:4666: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_CXX_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_CXX_FOR_TARGET"; then
- for ncn_progname in c++ g++ cxx gxx; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4683: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CXX_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CXX_FOR_TARGET"; then
- ac_cv_prog_CXX_FOR_TARGET="$CXX_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CXX_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CXX_FOR_TARGET="$ac_cv_prog_CXX_FOR_TARGET"
-if test -n "$CXX_FOR_TARGET"; then
- echo "$ac_t""$CXX_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_CXX_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ ncn_cv_CONFIGURED_AR_FOR_TARGET=$CONFIGURED_AR_FOR_TARGET
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4714: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CXX_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4254: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$CXX_FOR_TARGET"; then
- ac_cv_prog_CXX_FOR_TARGET="$CXX_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_AR_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET="$ncn_cv_CONFIGURED_AR_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CXX_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET="ar"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET="ar"
fi
fi
-CXX_FOR_TARGET="$ac_cv_prog_CXX_FOR_TARGET"
-if test -n "$CXX_FOR_TARGET"; then
- echo "$ac_t""$CXX_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_AR_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_AR_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_AR_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_CXX_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_CXX_FOR_TARGET" ; then
- set dummy c++ g++ cxx gxx
- if test $build = $target ; then
- CXX_FOR_TARGET="$2"
+ CONFIGURED_AR_FOR_TARGET=$ncn_cv_CONFIGURED_AR_FOR_TARGET
else
- CXX_FOR_TARGET="${ncn_target_tool_prefix}$2"
+ CONFIGURED_AR_FOR_TARGET="${ncn_target_tool_prefix}ar"
fi
-fi
-
- if test -n "$with_build_time_tools"; then
- for ncn_progname in gcc; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:4757: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_GCC_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_GCC_FOR_TARGET"; then
- for ncn_progname in gcc; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4774: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GCC_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$GCC_FOR_TARGET"; then
- ac_cv_prog_GCC_FOR_TARGET="$GCC_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GCC_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-GCC_FOR_TARGET="$ac_cv_prog_GCC_FOR_TARGET"
-if test -n "$GCC_FOR_TARGET"; then
- echo "$ac_t""$GCC_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_GCC_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4805: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GCC_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$GCC_FOR_TARGET"; then
- ac_cv_prog_GCC_FOR_TARGET="$GCC_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GCC_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-GCC_FOR_TARGET="$ac_cv_prog_GCC_FOR_TARGET"
-if test -n "$GCC_FOR_TARGET"; then
- echo "$ac_t""$GCC_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- test -n "$ac_cv_prog_GCC_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_GCC_FOR_TARGET" ; then
- GCC_FOR_TARGET="${CC_FOR_TARGET}"
-fi
-
- if test -n "$with_build_time_tools"; then
- for ncn_progname in gcj; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:4843: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_GCJ_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
+ CONFIGURED_AR_FOR_TARGET="$ac_cv_prog_CONFIGURED_AR_FOR_TARGET"
fi
-if test -z "$ac_cv_prog_GCJ_FOR_TARGET"; then
- for ncn_progname in gcj; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}as", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4860: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GCJ_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4293: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$GCJ_FOR_TARGET"; then
- ac_cv_prog_GCJ_FOR_TARGET="$GCJ_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_AS_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_AS_FOR_TARGET="$CONFIGURED_AS_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GCJ_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_AS_FOR_TARGET="${ncn_target_tool_prefix}as"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-GCJ_FOR_TARGET="$ac_cv_prog_GCJ_FOR_TARGET"
-if test -n "$GCJ_FOR_TARGET"; then
- echo "$ac_t""$GCJ_FOR_TARGET" 1>&6
+CONFIGURED_AS_FOR_TARGET="$ac_cv_prog_CONFIGURED_AS_FOR_TARGET"
+if test -n "$CONFIGURED_AS_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_AS_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_GCJ_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4891: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GCJ_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$GCJ_FOR_TARGET"; then
- ac_cv_prog_GCJ_FOR_TARGET="$GCJ_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GCJ_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-GCJ_FOR_TARGET="$ac_cv_prog_GCJ_FOR_TARGET"
-if test -n "$GCJ_FOR_TARGET"; then
- echo "$ac_t""$GCJ_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- test -n "$ac_cv_prog_GCJ_FOR_TARGET" && break
- done
fi
-
-if test -z "$ac_cv_prog_GCJ_FOR_TARGET" ; then
- set dummy gcj
+if test -z "$ac_cv_prog_CONFIGURED_AS_FOR_TARGET" ; then
if test $build = $target ; then
- GCJ_FOR_TARGET="$2"
- else
- GCJ_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
- if test -n "$with_build_time_tools"; then
- for ncn_progname in gfortran; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:4934: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_GFORTRAN_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_GFORTRAN_FOR_TARGET"; then
- for ncn_progname in gfortran; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4951: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$GFORTRAN_FOR_TARGET"; then
- ac_cv_prog_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GFORTRAN_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-GFORTRAN_FOR_TARGET="$ac_cv_prog_GFORTRAN_FOR_TARGET"
-if test -n "$GFORTRAN_FOR_TARGET"; then
- echo "$ac_t""$GFORTRAN_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_GFORTRAN_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ ncn_cv_CONFIGURED_AS_FOR_TARGET=$CONFIGURED_AS_FOR_TARGET
+ # Extract the first word of "as", so it can be a program name with args.
+set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4982: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4326: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$GFORTRAN_FOR_TARGET"; then
- ac_cv_prog_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_AS_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET="$ncn_cv_CONFIGURED_AS_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_GFORTRAN_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET="as"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET="as"
fi
fi
-GFORTRAN_FOR_TARGET="$ac_cv_prog_GFORTRAN_FOR_TARGET"
-if test -n "$GFORTRAN_FOR_TARGET"; then
- echo "$ac_t""$GFORTRAN_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_AS_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_AS_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_AS_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_GFORTRAN_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_GFORTRAN_FOR_TARGET" ; then
- set dummy gfortran
- if test $build = $target ; then
- GFORTRAN_FOR_TARGET="$2"
+ CONFIGURED_AS_FOR_TARGET=$ncn_cv_CONFIGURED_AS_FOR_TARGET
else
- GFORTRAN_FOR_TARGET="${ncn_target_tool_prefix}$2"
+ CONFIGURED_AS_FOR_TARGET="${ncn_target_tool_prefix}as"
fi
-fi
-
-
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
-
-if test "x$exec_prefix" = xNONE; then
- if test "x$prefix" = xNONE; then
- gcc_cv_tool_prefix=$ac_default_prefix
- else
- gcc_cv_tool_prefix=$prefix
- fi
else
- gcc_cv_tool_prefix=$exec_prefix
-fi
-
-# If there is no compiler in the tree, use the PATH only. In any
-# case, if there is no compiler in the tree nobody should use
-# AS_FOR_TARGET and LD_FOR_TARGET.
-if test x$host = x$build && test -f $srcdir/gcc/BASE-VER; then
- gcc_version=`cat $srcdir/gcc/BASE-VER`
- gcc_cv_tool_dirs="$gcc_cv_tool_prefix/libexec/gcc/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/libexec/gcc/$target_noncanonical$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs/usr/lib/gcc/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs/usr/lib/gcc/$target_noncanonical$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/$target_noncanonical/bin/$target_noncanonical/$gcc_version$PATH_SEPARATOR"
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$gcc_cv_tool_prefix/$target_noncanonical/bin$PATH_SEPARATOR"
-else
- gcc_cv_tool_dirs=
-fi
-
-if test x$build = x$target && test -n "$md_exec_prefix"; then
- gcc_cv_tool_dirs="$gcc_cv_tool_dirs$md_exec_prefix$PATH_SEPARATOR"
-fi
-
-
-
-cat > conftest.c << \EOF
-#ifdef __GNUC__
- gcc_yay;
-#endif
-EOF
-if ($GCC_FOR_TARGET -E conftest.c | grep gcc_yay) > /dev/null 2>&1; then
- have_gcc_for_target=yes
-else
- GCC_FOR_TARGET=${ncn_target_tool_prefix}gcc
- have_gcc_for_target=no
-fi
-rm conftest.c
-
-
-
-
-if test -z "$ac_cv_path_AR_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for ar in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5089: checking for ar in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/ar; then
- AR_FOR_TARGET=`cd $with_build_time_tools && pwd`/ar
- ac_cv_path_AR_FOR_TARGET=$AR_FOR_TARGET
- echo "$ac_t""$ac_cv_path_AR_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- AR_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=ar`
- test $AR_FOR_TARGET=ar && AR_FOR_TARGET=
- ac_cv_path_AR_FOR_TARGET=$AR_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_AR_FOR_TARGET" ; then
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5107: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_AR_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$AR_FOR_TARGET" in
- /*)
- ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_AR_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-AR_FOR_TARGET="$ac_cv_path_AR_FOR_TARGET"
-if test -n "$AR_FOR_TARGET"; then
- echo "$ac_t""$AR_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_AR_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in ar; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5144: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_AR_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
+ CONFIGURED_AS_FOR_TARGET="$ac_cv_prog_CONFIGURED_AS_FOR_TARGET"
fi
-if test -z "$ac_cv_prog_AR_FOR_TARGET"; then
- for ncn_progname in ar; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5161: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4365: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$AR_FOR_TARGET"; then
- ac_cv_prog_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_DLLTOOL_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET="$CONFIGURED_DLLTOOL_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET="${ncn_target_tool_prefix}dlltool"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-AR_FOR_TARGET="$ac_cv_prog_AR_FOR_TARGET"
-if test -n "$AR_FOR_TARGET"; then
- echo "$ac_t""$AR_FOR_TARGET" 1>&6
+CONFIGURED_DLLTOOL_FOR_TARGET="$ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET"
+if test -n "$CONFIGURED_DLLTOOL_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_DLLTOOL_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_AR_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5192: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR_FOR_TARGET"; then
- ac_cv_prog_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-AR_FOR_TARGET="$ac_cv_prog_AR_FOR_TARGET"
-if test -n "$AR_FOR_TARGET"; then
- echo "$ac_t""$AR_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_AR_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_AR_FOR_TARGET" ; then
- set dummy ar
+if test -z "$ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET" ; then
if test $build = $target ; then
- AR_FOR_TARGET="$2"
- else
- AR_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- AR_FOR_TARGET=$ac_cv_path_AR_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_AS_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for as in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5242: checking for as in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/as; then
- AS_FOR_TARGET=`cd $with_build_time_tools && pwd`/as
- ac_cv_path_AS_FOR_TARGET=$AS_FOR_TARGET
- echo "$ac_t""$ac_cv_path_AS_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- AS_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=as`
- test $AS_FOR_TARGET=as && AS_FOR_TARGET=
- ac_cv_path_AS_FOR_TARGET=$AS_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_AS_FOR_TARGET" ; then
- # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5260: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_AS_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$AS_FOR_TARGET" in
- /*)
- ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_AS_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-AS_FOR_TARGET="$ac_cv_path_AS_FOR_TARGET"
-if test -n "$AS_FOR_TARGET"; then
- echo "$ac_t""$AS_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_AS_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in as; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5297: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_AS_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_AS_FOR_TARGET"; then
- for ncn_progname in as; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5314: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS_FOR_TARGET"; then
- ac_cv_prog_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-AS_FOR_TARGET="$ac_cv_prog_AS_FOR_TARGET"
-if test -n "$AS_FOR_TARGET"; then
- echo "$ac_t""$AS_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_AS_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+ ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET=$CONFIGURED_DLLTOOL_FOR_TARGET
+ # Extract the first word of "dlltool", so it can be a program name with args.
+set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5345: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4398: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$AS_FOR_TARGET"; then
- ac_cv_prog_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET="$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET="dlltool"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET="dlltool"
fi
fi
-AS_FOR_TARGET="$ac_cv_prog_AS_FOR_TARGET"
-if test -n "$AS_FOR_TARGET"; then
- echo "$ac_t""$AS_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_AS_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_AS_FOR_TARGET" ; then
- set dummy as
- if test $build = $target ; then
- AS_FOR_TARGET="$2"
+ CONFIGURED_DLLTOOL_FOR_TARGET=$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET
else
- AS_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- AS_FOR_TARGET=$ac_cv_path_AS_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_DLLTOOL_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for dlltool in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5395: checking for dlltool in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/dlltool; then
- DLLTOOL_FOR_TARGET=`cd $with_build_time_tools && pwd`/dlltool
- ac_cv_path_DLLTOOL_FOR_TARGET=$DLLTOOL_FOR_TARGET
- echo "$ac_t""$ac_cv_path_DLLTOOL_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- DLLTOOL_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=dlltool`
- test $DLLTOOL_FOR_TARGET=dlltool && DLLTOOL_FOR_TARGET=
- ac_cv_path_DLLTOOL_FOR_TARGET=$DLLTOOL_FOR_TARGET
+ CONFIGURED_DLLTOOL_FOR_TARGET="${ncn_target_tool_prefix}dlltool"
fi
-fi
-if test -z "$ac_cv_path_DLLTOOL_FOR_TARGET" ; then
- # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5413: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$DLLTOOL_FOR_TARGET" in
- /*)
- ac_cv_path_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_DLLTOOL_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-DLLTOOL_FOR_TARGET="$ac_cv_path_DLLTOOL_FOR_TARGET"
-if test -n "$DLLTOOL_FOR_TARGET"; then
- echo "$ac_t""$DLLTOOL_FOR_TARGET" 1>&6
else
- echo "$ac_t""no" 1>&6
+ CONFIGURED_DLLTOOL_FOR_TARGET="$ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET"
fi
-fi
-if test -z "$ac_cv_path_DLLTOOL_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in dlltool; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5450: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_DLLTOOL_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_DLLTOOL_FOR_TARGET"; then
- for ncn_progname in dlltool; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}ld", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5467: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4437: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$DLLTOOL_FOR_TARGET"; then
- ac_cv_prog_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_LD_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_LD_FOR_TARGET="$CONFIGURED_LD_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_DLLTOOL_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_LD_FOR_TARGET="${ncn_target_tool_prefix}ld"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-DLLTOOL_FOR_TARGET="$ac_cv_prog_DLLTOOL_FOR_TARGET"
-if test -n "$DLLTOOL_FOR_TARGET"; then
- echo "$ac_t""$DLLTOOL_FOR_TARGET" 1>&6
+CONFIGURED_LD_FOR_TARGET="$ac_cv_prog_CONFIGURED_LD_FOR_TARGET"
+if test -n "$CONFIGURED_LD_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_LD_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_DLLTOOL_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5498: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$DLLTOOL_FOR_TARGET"; then
- ac_cv_prog_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_DLLTOOL_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-DLLTOOL_FOR_TARGET="$ac_cv_prog_DLLTOOL_FOR_TARGET"
-if test -n "$DLLTOOL_FOR_TARGET"; then
- echo "$ac_t""$DLLTOOL_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_DLLTOOL_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_DLLTOOL_FOR_TARGET" ; then
- set dummy dlltool
+if test -z "$ac_cv_prog_CONFIGURED_LD_FOR_TARGET" ; then
if test $build = $target ; then
- DLLTOOL_FOR_TARGET="$2"
- else
- DLLTOOL_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- DLLTOOL_FOR_TARGET=$ac_cv_path_DLLTOOL_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_LD_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for ld in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5548: checking for ld in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/ld; then
- LD_FOR_TARGET=`cd $with_build_time_tools && pwd`/ld
- ac_cv_path_LD_FOR_TARGET=$LD_FOR_TARGET
- echo "$ac_t""$ac_cv_path_LD_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- LD_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=ld`
- test $LD_FOR_TARGET=ld && LD_FOR_TARGET=
- ac_cv_path_LD_FOR_TARGET=$LD_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_LD_FOR_TARGET" ; then
- # Extract the first word of "ld", so it can be a program name with args.
+ ncn_cv_CONFIGURED_LD_FOR_TARGET=$CONFIGURED_LD_FOR_TARGET
+ # Extract the first word of "ld", so it can be a program name with args.
set dummy ld; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5566: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_LD_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$LD_FOR_TARGET" in
- /*)
- ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_LD_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-LD_FOR_TARGET="$ac_cv_path_LD_FOR_TARGET"
-if test -n "$LD_FOR_TARGET"; then
- echo "$ac_t""$LD_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_LD_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in ld; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5603: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_LD_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_LD_FOR_TARGET"; then
- for ncn_progname in ld; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5620: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4470: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$LD_FOR_TARGET"; then
- ac_cv_prog_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_LD_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET="$ncn_cv_CONFIGURED_LD_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LD_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET="ld"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET="ld"
fi
fi
-LD_FOR_TARGET="$ac_cv_prog_LD_FOR_TARGET"
-if test -n "$LD_FOR_TARGET"; then
- echo "$ac_t""$LD_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_LD_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5651: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$LD_FOR_TARGET"; then
- ac_cv_prog_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LD_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-LD_FOR_TARGET="$ac_cv_prog_LD_FOR_TARGET"
-if test -n "$LD_FOR_TARGET"; then
- echo "$ac_t""$LD_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_LD_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_LD_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_LD_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_LD_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_LD_FOR_TARGET" ; then
- set dummy ld
- if test $build = $target ; then
- LD_FOR_TARGET="$2"
+ CONFIGURED_LD_FOR_TARGET=$ncn_cv_CONFIGURED_LD_FOR_TARGET
else
- LD_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- LD_FOR_TARGET=$ac_cv_path_LD_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_LIPO_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for lipo in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5701: checking for lipo in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/lipo; then
- LIPO_FOR_TARGET=`cd $with_build_time_tools && pwd`/lipo
- ac_cv_path_LIPO_FOR_TARGET=$LIPO_FOR_TARGET
- echo "$ac_t""$ac_cv_path_LIPO_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- LIPO_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=lipo`
- test $LIPO_FOR_TARGET=lipo && LIPO_FOR_TARGET=
- ac_cv_path_LIPO_FOR_TARGET=$LIPO_FOR_TARGET
+ CONFIGURED_LD_FOR_TARGET="${ncn_target_tool_prefix}ld"
fi
-fi
-if test -z "$ac_cv_path_LIPO_FOR_TARGET" ; then
- # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5719: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_LIPO_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
else
- case "$LIPO_FOR_TARGET" in
- /*)
- ac_cv_path_LIPO_FOR_TARGET="$LIPO_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_LIPO_FOR_TARGET="$LIPO_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_LIPO_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-LIPO_FOR_TARGET="$ac_cv_path_LIPO_FOR_TARGET"
-if test -n "$LIPO_FOR_TARGET"; then
- echo "$ac_t""$LIPO_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_LIPO_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in lipo; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5756: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_LIPO_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
+ CONFIGURED_LD_FOR_TARGET="$ac_cv_prog_CONFIGURED_LD_FOR_TARGET"
fi
-if test -z "$ac_cv_prog_LIPO_FOR_TARGET"; then
- for ncn_progname in lipo; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}nm", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5773: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LIPO_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4509: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$LIPO_FOR_TARGET"; then
- ac_cv_prog_LIPO_FOR_TARGET="$LIPO_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_NM_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_NM_FOR_TARGET="$CONFIGURED_NM_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LIPO_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_NM_FOR_TARGET="${ncn_target_tool_prefix}nm"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-LIPO_FOR_TARGET="$ac_cv_prog_LIPO_FOR_TARGET"
-if test -n "$LIPO_FOR_TARGET"; then
- echo "$ac_t""$LIPO_FOR_TARGET" 1>&6
+CONFIGURED_NM_FOR_TARGET="$ac_cv_prog_CONFIGURED_NM_FOR_TARGET"
+if test -n "$CONFIGURED_NM_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_NM_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_LIPO_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5804: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LIPO_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$LIPO_FOR_TARGET"; then
- ac_cv_prog_LIPO_FOR_TARGET="$LIPO_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_LIPO_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-LIPO_FOR_TARGET="$ac_cv_prog_LIPO_FOR_TARGET"
-if test -n "$LIPO_FOR_TARGET"; then
- echo "$ac_t""$LIPO_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
fi
-
- fi
- test -n "$ac_cv_prog_LIPO_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_LIPO_FOR_TARGET" ; then
- set dummy lipo
+if test -z "$ac_cv_prog_CONFIGURED_NM_FOR_TARGET" ; then
if test $build = $target ; then
- LIPO_FOR_TARGET="$2"
- else
- LIPO_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- LIPO_FOR_TARGET=$ac_cv_path_LIPO_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_NM_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for nm in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5854: checking for nm in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/nm; then
- NM_FOR_TARGET=`cd $with_build_time_tools && pwd`/nm
- ac_cv_path_NM_FOR_TARGET=$NM_FOR_TARGET
- echo "$ac_t""$ac_cv_path_NM_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- NM_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=nm`
- test $NM_FOR_TARGET=nm && NM_FOR_TARGET=
- ac_cv_path_NM_FOR_TARGET=$NM_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_NM_FOR_TARGET" ; then
- # Extract the first word of "nm", so it can be a program name with args.
+ ncn_cv_CONFIGURED_NM_FOR_TARGET=$CONFIGURED_NM_FOR_TARGET
+ # Extract the first word of "nm", so it can be a program name with args.
set dummy nm; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5872: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_NM_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4542: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- case "$NM_FOR_TARGET" in
- /*)
- ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_NM_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-NM_FOR_TARGET="$ac_cv_path_NM_FOR_TARGET"
-if test -n "$NM_FOR_TARGET"; then
- echo "$ac_t""$NM_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_NM_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in nm; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:5909: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_NM_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_NM_FOR_TARGET"; then
- for ncn_progname in nm; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5926: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$NM_FOR_TARGET"; then
- ac_cv_prog_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_NM_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-NM_FOR_TARGET="$ac_cv_prog_NM_FOR_TARGET"
-if test -n "$NM_FOR_TARGET"; then
- echo "$ac_t""$NM_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- if test -z "$ac_cv_prog_NM_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5957: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$NM_FOR_TARGET"; then
- ac_cv_prog_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_NM_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET="$ncn_cv_CONFIGURED_NM_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_NM_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET="nm"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET="nm"
fi
fi
-NM_FOR_TARGET="$ac_cv_prog_NM_FOR_TARGET"
-if test -n "$NM_FOR_TARGET"; then
- echo "$ac_t""$NM_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_NM_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_NM_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_NM_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_NM_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_NM_FOR_TARGET" ; then
- set dummy nm
- if test $build = $target ; then
- NM_FOR_TARGET="$2"
+ CONFIGURED_NM_FOR_TARGET=$ncn_cv_CONFIGURED_NM_FOR_TARGET
else
- NM_FOR_TARGET="${ncn_target_tool_prefix}$2"
+ CONFIGURED_NM_FOR_TARGET="${ncn_target_tool_prefix}nm"
fi
-fi
-
else
- NM_FOR_TARGET=$ac_cv_path_NM_FOR_TARGET
+ CONFIGURED_NM_FOR_TARGET="$ac_cv_prog_CONFIGURED_NM_FOR_TARGET"
fi
-
-
-
-if test -z "$ac_cv_path_OBJDUMP_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for objdump in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6007: checking for objdump in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/objdump; then
- OBJDUMP_FOR_TARGET=`cd $with_build_time_tools && pwd`/objdump
- ac_cv_path_OBJDUMP_FOR_TARGET=$OBJDUMP_FOR_TARGET
- echo "$ac_t""$ac_cv_path_OBJDUMP_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- OBJDUMP_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=objdump`
- test $OBJDUMP_FOR_TARGET=objdump && OBJDUMP_FOR_TARGET=
- ac_cv_path_OBJDUMP_FOR_TARGET=$OBJDUMP_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_OBJDUMP_FOR_TARGET" ; then
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6025: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_OBJDUMP_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4581: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- case "$OBJDUMP_FOR_TARGET" in
- /*)
- ac_cv_path_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_OBJDUMP_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-OBJDUMP_FOR_TARGET="$ac_cv_path_OBJDUMP_FOR_TARGET"
-if test -n "$OBJDUMP_FOR_TARGET"; then
- echo "$ac_t""$OBJDUMP_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_OBJDUMP_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in objdump; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6062: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_OBJDUMP_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-
-if test -z "$ac_cv_prog_OBJDUMP_FOR_TARGET"; then
- for ncn_progname in objdump; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6079: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$OBJDUMP_FOR_TARGET"; then
- ac_cv_prog_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_RANLIB_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET="$CONFIGURED_RANLIB_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJDUMP_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET="${ncn_target_tool_prefix}ranlib"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-OBJDUMP_FOR_TARGET="$ac_cv_prog_OBJDUMP_FOR_TARGET"
-if test -n "$OBJDUMP_FOR_TARGET"; then
- echo "$ac_t""$OBJDUMP_FOR_TARGET" 1>&6
+CONFIGURED_RANLIB_FOR_TARGET="$ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET"
+if test -n "$CONFIGURED_RANLIB_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_RANLIB_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_OBJDUMP_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET" ; then
+ if test $build = $target ; then
+ ncn_cv_CONFIGURED_RANLIB_FOR_TARGET=$CONFIGURED_RANLIB_FOR_TARGET
+ # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6110: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4614: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$OBJDUMP_FOR_TARGET"; then
- ac_cv_prog_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET="$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_OBJDUMP_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET="ranlib"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET=":"
fi
fi
-OBJDUMP_FOR_TARGET="$ac_cv_prog_OBJDUMP_FOR_TARGET"
-if test -n "$OBJDUMP_FOR_TARGET"; then
- echo "$ac_t""$OBJDUMP_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_RANLIB_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_OBJDUMP_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_OBJDUMP_FOR_TARGET" ; then
- set dummy objdump
- if test $build = $target ; then
- OBJDUMP_FOR_TARGET="$2"
+ CONFIGURED_RANLIB_FOR_TARGET=$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET
else
- OBJDUMP_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-
-else
- OBJDUMP_FOR_TARGET=$ac_cv_path_OBJDUMP_FOR_TARGET
-fi
-
-
-
-
-if test -z "$ac_cv_path_RANLIB_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for ranlib in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6160: checking for ranlib in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/ranlib; then
- RANLIB_FOR_TARGET=`cd $with_build_time_tools && pwd`/ranlib
- ac_cv_path_RANLIB_FOR_TARGET=$RANLIB_FOR_TARGET
- echo "$ac_t""$ac_cv_path_RANLIB_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- RANLIB_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=ranlib`
- test $RANLIB_FOR_TARGET=ranlib && RANLIB_FOR_TARGET=
- ac_cv_path_RANLIB_FOR_TARGET=$RANLIB_FOR_TARGET
+ CONFIGURED_RANLIB_FOR_TARGET=":"
fi
-fi
-if test -z "$ac_cv_path_RANLIB_FOR_TARGET" ; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6178: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_RANLIB_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
else
- case "$RANLIB_FOR_TARGET" in
- /*)
- ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_RANLIB_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-RANLIB_FOR_TARGET="$ac_cv_path_RANLIB_FOR_TARGET"
-if test -n "$RANLIB_FOR_TARGET"; then
- echo "$ac_t""$RANLIB_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-fi
-if test -z "$ac_cv_path_RANLIB_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in ranlib; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6215: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_RANLIB_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
+ CONFIGURED_RANLIB_FOR_TARGET="$ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET"
fi
-if test -z "$ac_cv_prog_RANLIB_FOR_TARGET"; then
- for ncn_progname in ranlib; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
+ if test -n "$ncn_target_tool_prefix"; then
+ # Extract the first word of "${ncn_target_tool_prefix}windres", so it can be a program name with args.
+set dummy ${ncn_target_tool_prefix}windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6232: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4653: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$RANLIB_FOR_TARGET"; then
- ac_cv_prog_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test.
+ if test -n "$CONFIGURED_WINDRES_FOR_TARGET"; then
+ ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET="$CONFIGURED_WINDRES_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
+ ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET="${ncn_target_tool_prefix}windres"
break
fi
done
IFS="$ac_save_ifs"
fi
fi
-RANLIB_FOR_TARGET="$ac_cv_prog_RANLIB_FOR_TARGET"
-if test -n "$RANLIB_FOR_TARGET"; then
- echo "$ac_t""$RANLIB_FOR_TARGET" 1>&6
+CONFIGURED_WINDRES_FOR_TARGET="$ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET"
+if test -n "$CONFIGURED_WINDRES_FOR_TARGET"; then
+ echo "$ac_t""$CONFIGURED_WINDRES_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- if test -z "$ac_cv_prog_RANLIB_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
+fi
+if test -z "$ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET" ; then
+ if test $build = $target ; then
+ ncn_cv_CONFIGURED_WINDRES_FOR_TARGET=$CONFIGURED_WINDRES_FOR_TARGET
+ # Extract the first word of "windres", so it can be a program name with args.
+set dummy windres; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6263: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
+echo "configure:4686: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- if test -n "$RANLIB_FOR_TARGET"; then
- ac_cv_prog_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test.
+ if test -n "$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET"; then
+ ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET="$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET" # Let the user override the test.
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_dummy="$PATH"
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB_FOR_TARGET="${ncn_progname}"
+ ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET="windres"
break
fi
done
IFS="$ac_save_ifs"
+ test -z "$ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET" && ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET="windres"
fi
fi
-RANLIB_FOR_TARGET="$ac_cv_prog_RANLIB_FOR_TARGET"
-if test -n "$RANLIB_FOR_TARGET"; then
- echo "$ac_t""$RANLIB_FOR_TARGET" 1>&6
+ncn_cv_CONFIGURED_WINDRES_FOR_TARGET="$ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET"
+if test -n "$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET"; then
+ echo "$ac_t""$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET" 1>&6
else
echo "$ac_t""no" 1>&6
fi
- fi
- test -n "$ac_cv_prog_RANLIB_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_RANLIB_FOR_TARGET" ; then
- set dummy ranlib
- if test $build = $target ; then
- RANLIB_FOR_TARGET="$2"
+ CONFIGURED_WINDRES_FOR_TARGET=$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET
else
- RANLIB_FOR_TARGET="${ncn_target_tool_prefix}$2"
+ CONFIGURED_WINDRES_FOR_TARGET="${ncn_target_tool_prefix}windres"
fi
-fi
-
else
- RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET
+ CONFIGURED_WINDRES_FOR_TARGET="$ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET"
fi
-if test -z "$ac_cv_path_STRIP_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for strip in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6313: checking for strip in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/strip; then
- STRIP_FOR_TARGET=`cd $with_build_time_tools && pwd`/strip
- ac_cv_path_STRIP_FOR_TARGET=$STRIP_FOR_TARGET
- echo "$ac_t""$ac_cv_path_STRIP_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- STRIP_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=strip`
- test $STRIP_FOR_TARGET=strip && STRIP_FOR_TARGET=
- ac_cv_path_STRIP_FOR_TARGET=$STRIP_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_STRIP_FOR_TARGET" ; then
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6331: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_STRIP_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- case "$STRIP_FOR_TARGET" in
- /*)
- ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_STRIP_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-STRIP_FOR_TARGET="$ac_cv_path_STRIP_FOR_TARGET"
-if test -n "$STRIP_FOR_TARGET"; then
- echo "$ac_t""$STRIP_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-fi
-if test -z "$ac_cv_path_STRIP_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in strip; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6368: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_STRIP_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-if test -z "$ac_cv_prog_STRIP_FOR_TARGET"; then
- for ncn_progname in strip; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6385: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_STRIP_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$STRIP_FOR_TARGET"; then
- ac_cv_prog_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_STRIP_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-STRIP_FOR_TARGET="$ac_cv_prog_STRIP_FOR_TARGET"
-if test -n "$STRIP_FOR_TARGET"; then
- echo "$ac_t""$STRIP_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
- fi
- if test -z "$ac_cv_prog_STRIP_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6416: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_STRIP_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$STRIP_FOR_TARGET"; then
- ac_cv_prog_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_STRIP_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-STRIP_FOR_TARGET="$ac_cv_prog_STRIP_FOR_TARGET"
-if test -n "$STRIP_FOR_TARGET"; then
- echo "$ac_t""$STRIP_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- test -n "$ac_cv_prog_STRIP_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_STRIP_FOR_TARGET" ; then
- set dummy strip
- if test $build = $target ; then
- STRIP_FOR_TARGET="$2"
- else
- STRIP_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-else
- STRIP_FOR_TARGET=$ac_cv_path_STRIP_FOR_TARGET
-fi
-if test -z "$ac_cv_path_WINDRES_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- echo $ac_n "checking for windres in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6466: checking for windres in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/windres; then
- WINDRES_FOR_TARGET=`cd $with_build_time_tools && pwd`/windres
- ac_cv_path_WINDRES_FOR_TARGET=$WINDRES_FOR_TARGET
- echo "$ac_t""$ac_cv_path_WINDRES_FOR_TARGET" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
- elif test $build != $host && test $have_gcc_for_target = yes; then
- WINDRES_FOR_TARGET=`$GCC_FOR_TARGET --print-prog-name=windres`
- test $WINDRES_FOR_TARGET=windres && WINDRES_FOR_TARGET=
- ac_cv_path_WINDRES_FOR_TARGET=$WINDRES_FOR_TARGET
- fi
-fi
-if test -z "$ac_cv_path_WINDRES_FOR_TARGET" ; then
- # Extract the first word of "windres", so it can be a program name with args.
-set dummy windres; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6484: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_WINDRES_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+# Fix up target tools.
+if test "x${build}" = "x${host}" ; then
+ # In this case, the newly built tools can and should be used,
+ # so we override the results of the autoconf tests.
+ # This should really only happen when the tools are actually being built,
+ # but that's a further refinement. The new build scheme, where
+ # tools are built into a structure paralleling where they're installed,
+ # should also eliminate all of this cleanly.
+ AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)"
+ AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)"
+ DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)"
+ LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)"
+ NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
+ RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
+ WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
else
- case "$WINDRES_FOR_TARGET" in
- /*)
- ac_cv_path_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET" # Let the user override the test with a path.
- ;;
- ?:/*)
- ac_cv_path_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET" # Let the user override the test with a dos path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$gcc_cv_tool_dirs"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_WINDRES_FOR_TARGET="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac
-fi
-WINDRES_FOR_TARGET="$ac_cv_path_WINDRES_FOR_TARGET"
-if test -n "$WINDRES_FOR_TARGET"; then
- echo "$ac_t""$WINDRES_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
+ # Just use the ones we found.
+ AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)"
+ AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)"
+ DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)"
+ LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)"
+ NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)"
+ RANLIB_FOR_TARGET="\$(CONFIGURED_RANLIB_FOR_TARGET)"
+ WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)"
fi
-fi
-if test -z "$ac_cv_path_WINDRES_FOR_TARGET" ; then
- if test -n "$with_build_time_tools"; then
- for ncn_progname in windres; do
- echo $ac_n "checking for ${ncn_progname} in $with_build_time_tools""... $ac_c" 1>&6
-echo "configure:6521: checking for ${ncn_progname} in $with_build_time_tools" >&5
- if test -x $with_build_time_tools/${ncn_progname}; then
- ac_cv_prog_WINDRES_FOR_TARGET=$with_build_time_tools/${ncn_progname}
- echo "$ac_t""yes" 1>&6
- break
- else
- echo "$ac_t""no" 1>&6
- fi
- done
-fi
-if test -z "$ac_cv_prog_WINDRES_FOR_TARGET"; then
- for ncn_progname in windres; do
- if test -n "$ncn_target_tool_prefix"; then
- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6538: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$WINDRES_FOR_TARGET"; then
- ac_cv_prog_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_WINDRES_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-WINDRES_FOR_TARGET="$ac_cv_prog_WINDRES_FOR_TARGET"
-if test -n "$WINDRES_FOR_TARGET"; then
- echo "$ac_t""$WINDRES_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
- fi
- if test -z "$ac_cv_prog_WINDRES_FOR_TARGET" && test $build = $target ; then
- # Extract the first word of "${ncn_progname}", so it can be a program name with args.
-set dummy ${ncn_progname}; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6569: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$WINDRES_FOR_TARGET"; then
- ac_cv_prog_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_WINDRES_FOR_TARGET="${ncn_progname}"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-WINDRES_FOR_TARGET="$ac_cv_prog_WINDRES_FOR_TARGET"
-if test -n "$WINDRES_FOR_TARGET"; then
- echo "$ac_t""$WINDRES_FOR_TARGET" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
- test -n "$ac_cv_prog_WINDRES_FOR_TARGET" && break
- done
-fi
-
-if test -z "$ac_cv_prog_WINDRES_FOR_TARGET" ; then
- set dummy windres
- if test $build = $target ; then
- WINDRES_FOR_TARGET="$2"
- else
- WINDRES_FOR_TARGET="${ncn_target_tool_prefix}$2"
- fi
-fi
-else
- WINDRES_FOR_TARGET=$ac_cv_path_WINDRES_FOR_TARGET
-fi
-
-
-RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET"
-
-echo $ac_n "checking where to find the target ar""... $ac_c" 1>&6
-echo "configure:6617: checking where to find the target ar" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$AR_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $AR_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- AR_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/ar'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$AR_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $AR_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- AR_FOR_TARGET='$(AR)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target as""... $ac_c" 1>&6
-echo "configure:6650: checking where to find the target as" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$AS_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $AS_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gas "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gas/as-new'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$AS_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $AS_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- AS_FOR_TARGET='$(AS)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target cc""... $ac_c" 1>&6
-echo "configure:6683: checking where to find the target cc" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$CC_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $CC_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- CC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$CC_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $CC_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- CC_FOR_TARGET='$(CC)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target c++""... $ac_c" 1>&6
-echo "configure:6716: checking where to find the target c++" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $CXX_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
- case ,${enable_languages}, in
- *,c++,*) ;;
- *) ok=no ;;
- esac
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $CXX_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- CXX_FOR_TARGET='$(CXX)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target c++ for libstdc++""... $ac_c" 1>&6
-echo "configure:6752: checking where to find the target c++ for libstdc++" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $RAW_CXX_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
- case ,${enable_languages}, in
- *,c++,*) ;;
- *) ok=no ;;
- esac
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- RAW_CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $RAW_CXX_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- RAW_CXX_FOR_TARGET='$(CXX)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target dlltool""... $ac_c" 1>&6
-echo "configure:6788: checking where to find the target dlltool" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$DLLTOOL_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $DLLTOOL_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- DLLTOOL_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/dlltool'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$DLLTOOL_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $DLLTOOL_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- DLLTOOL_FOR_TARGET='$(DLLTOOL)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target gcc""... $ac_c" 1>&6
-echo "configure:6821: checking where to find the target gcc" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$GCC_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GCC_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- GCC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$GCC_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GCC_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- GCC_FOR_TARGET='$()'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target gcj""... $ac_c" 1>&6
-echo "configure:6854: checking where to find the target gcj" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$GCJ_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GCJ_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
- case ,${enable_languages}, in
- *,java,*) ;;
- *) ok=no ;;
- esac
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- GCJ_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$GCJ_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GCJ_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- GCJ_FOR_TARGET='$(GCJ)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target gfortran""... $ac_c" 1>&6
-echo "configure:6890: checking where to find the target gfortran" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$GFORTRAN_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GFORTRAN_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" gcc "*) ;;
- *) ok=no ;;
- esac
- case ,${enable_languages}, in
- *,fortran,*) ;;
- *) ok=no ;;
- esac
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- GFORTRAN_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$GFORTRAN_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $GFORTRAN_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- GFORTRAN_FOR_TARGET='$(GFORTRAN)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target ld""... $ac_c" 1>&6
-echo "configure:6926: checking where to find the target ld" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$LD_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $LD_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" ld "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/ld/ld-new'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$LD_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $LD_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- LD_FOR_TARGET='$(LD)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target lipo""... $ac_c" 1>&6
-echo "configure:6959: checking where to find the target lipo" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$LIPO_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $LIPO_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- if expr "x$LIPO_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $LIPO_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- LIPO_FOR_TARGET='$(LIPO)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target nm""... $ac_c" 1>&6
-echo "configure:6982: checking where to find the target nm" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$NM_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $NM_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/nm-new'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$NM_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $NM_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- NM_FOR_TARGET='$(NM)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target objdump""... $ac_c" 1>&6
-echo "configure:7015: checking where to find the target objdump" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$OBJDUMP_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $OBJDUMP_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- OBJDUMP_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/objdump'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$OBJDUMP_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $OBJDUMP_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- OBJDUMP_FOR_TARGET='$(OBJDUMP)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target ranlib""... $ac_c" 1>&6
-echo "configure:7048: checking where to find the target ranlib" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$RANLIB_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $RANLIB_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- RANLIB_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/ranlib'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$RANLIB_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $RANLIB_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- RANLIB_FOR_TARGET='$(RANLIB)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target strip""... $ac_c" 1>&6
-echo "configure:7081: checking where to find the target strip" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$STRIP_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $STRIP_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- STRIP_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/strip'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$STRIP_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $STRIP_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- STRIP_FOR_TARGET='$(STRIP)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
-echo $ac_n "checking where to find the target windres""... $ac_c" 1>&6
-echo "configure:7114: checking where to find the target windres" >&5
-if test "x${build}" != "x${host}" ; then
- if expr "x$WINDRES_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $WINDRES_FOR_TARGET`" 1>&6
- else
- # Canadian cross, just use what we found
- echo "$ac_t""pre-installed" 1>&6
- fi
-else
- ok=yes
- case " ${configdirs} " in
- *" binutils "*) ;;
- *) ok=no ;;
- esac
-
- if test $ok = yes; then
- # An in-tree tool is available and we can use it
- WINDRES_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/windres'
- echo "$ac_t""just compiled" 1>&6
- elif expr "x$WINDRES_FOR_TARGET" : "x/" > /dev/null; then
- # We already found the complete path
- echo "$ac_t""pre-installed in `dirname $WINDRES_FOR_TARGET`" 1>&6
- elif test "x$target" = "x$host"; then
- # We can use an host tool
- WINDRES_FOR_TARGET='$(WINDRES)'
- echo "$ac_t""host tool" 1>&6
- else
- # We need a cross tool
- echo "$ac_t""pre-installed" 1>&6
- fi
-fi
@@ -7151,27 +4766,8 @@ AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
-# When building target libraries, except in a Canadian cross, we use
-# the same toolchain as the compiler we just built.
-COMPILER_AS_FOR_TARGET='$(AS_FOR_TARGET)'
-COMPILER_LD_FOR_TARGET='$(LD_FOR_TARGET)'
-COMPILER_NM_FOR_TARGET='$(NM_FOR_TARGET)'
-if test $host = $build; then
- case " $configdirs " in
- *" gcc "*)
- COMPILER_AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/as'
- COMPILER_LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/collect-ld'
- COMPILER_NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/nm'${extra_nmflags_for_target}
- ;;
- esac
-fi
-
-
-
-
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:7175: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:4771: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -7214,6 +4810,42 @@ case $build in
esac
+# It makes debugging easier if we create as symlinks the stage directories
+# gcc for stageN-gcc and stagePREV-gcc for stage(N-1). In case this is not
+# possible, however, we can resort to mv.
+echo $ac_n "checking if symbolic links between directories work""... $ac_c" 1>&6
+echo "configure:4818: checking if symbolic links between directories work" >&5
+if eval "test \"`echo '$''{'gcc_cv_prog_ln_s_dir'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test "${LN_S}" = "ln -s" \
+ && mkdir confdir.s1 \
+ && ln -s confdir.s1 confdir.s2 \
+ && echo timestamp1 > confdir.s1/conftest.1 \
+ && cmp confdir.s1/conftest.1 confdir.s2/conftest.1 \
+ && echo timestamp2 > confdir.s2/conftest.2 \
+ && cmp confdir.s1/conftest.2 confdir.s1/conftest.2 \
+ && rm -f confdir.s2; then
+ gcc_cv_prog_ln_s_dir=yes
+else
+ gcc_cv_prog_ln_s_dir=yes
+fi
+rm -rf confdir.s1 confdir.s2
+fi
+
+echo "$ac_t""$gcc_cv_prog_ln_s_dir" 1>&6
+
+case ${gcc_cv_prog_ln_s_dir} in
+ yes)
+ CREATE_LINK_TO_DIR='ln -s $$1 $$2'
+ UNDO_LINK_TO_DIR='rm -f $$1' ;;
+ *)
+ CREATE_LINK_TO_DIR='mv $$1 $$2'
+ UNDO_LINK_TO_DIR='mv $$1 $$2' ;;
+esac
+
+
+
# Enable -Werror in bootstrap stage2 and later.
# Change the default to "no" on release branches.
# Check whether --enable-werror or --disable-werror was given.
@@ -7230,6 +4862,26 @@ case ${enable_werror} in
esac
+# If gcc is built natively with shared library enabled, set
+# $RPATH_ENVVAR to make sure the newly built gcc shared librares are
+# used.
+SET_GCC_LIB_PATH=
+if test -d ${srcdir}/gcc && test x${is_cross_compiler} = xno; then
+ case "${enable_shared}" in
+ no | "") ;;
+ *)
+ eval "d=\$$RPATH_ENVVAR"
+ if test x"$d" != x; then
+ d="$pwd/gcc:$d"
+ else
+ d="$pwd/gcc"
+ fi
+ SET_GCC_LIB_PATH="\$(RPATH_ENVVAR)=$d; export \$(RPATH_ENVVAR);"
+ ;;
+ esac
+fi
+
+
trap '' 1 2 15
cat > confcache <<\EOF
# This file is a shell script that caches the results of configure
@@ -7405,7 +5057,14 @@ s%@do_compare@%$do_compare%g
s%@gmplibs@%$gmplibs%g
s%@gmpinc@%$gmpinc%g
s%@stage1_languages@%$stage1_languages%g
-s%@SYSROOT_CFLAGS_FOR_TARGET@%$SYSROOT_CFLAGS_FOR_TARGET%g
+s%@CONFIGURED_BISON@%$CONFIGURED_BISON%g
+s%@CONFIGURED_YACC@%$CONFIGURED_YACC%g
+s%@CONFIGURED_M4@%$CONFIGURED_M4%g
+s%@CONFIGURED_FLEX@%$CONFIGURED_FLEX%g
+s%@CONFIGURED_LEX@%$CONFIGURED_LEX%g
+s%@CONFIGURED_MAKEINFO@%$CONFIGURED_MAKEINFO%g
+s%@bootstrap_lean@%$bootstrap_lean%g
+s%@default_target@%$default_target%g
/@serialization_dependencies@/r $serialization_dependencies
s%@serialization_dependencies@%%g
/@host_makefile_frag@/r $host_makefile_frag
@@ -7416,65 +5075,83 @@ s%@target_makefile_frag@%%g
s%@alphaieee_frag@%%g
/@ospace_frag@/r $ospace_frag
s%@ospace_frag@%%g
+s%@SET_LIB_PATH@%$SET_LIB_PATH%g
s%@RPATH_ENVVAR@%$RPATH_ENVVAR%g
+s%@BUILD_PREFIX@%$BUILD_PREFIX%g
+s%@BUILD_PREFIX_1@%$BUILD_PREFIX_1%g
+s%@gcc_version_trigger@%$gcc_version_trigger%g
+s%@gcc_version@%$gcc_version%g
s%@tooldir@%$tooldir%g
s%@build_tooldir@%$build_tooldir%g
-s%@CONFIGURE_GDB_TK@%$CONFIGURE_GDB_TK%g
s%@GDB_TK@%$GDB_TK%g
-s%@INSTALL_GDB_TK@%$INSTALL_GDB_TK%g
+s%@gxx_include_dir@%$gxx_include_dir%g
+s%@libstdcxx_incdir@%$libstdcxx_incdir%g
s%@build_configargs@%$build_configargs%g
s%@build_configdirs@%$build_configdirs%g
s%@host_configargs@%$host_configargs%g
s%@configdirs@%$configdirs%g
s%@target_configargs@%$target_configargs%g
+s%@target_configdirs@%$target_configdirs%g
s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
s%@config_shell@%$config_shell%g
-s%@YACC@%$YACC%g
-s%@BISON@%$BISON%g
-s%@M4@%$M4%g
-s%@LEX@%$LEX%g
-s%@FLEX@%$FLEX%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@EXPECT@%$EXPECT%g
-s%@RUNTEST@%$RUNTEST%g
s%@AR@%$AR%g
+s%@ncn_cv_AR@%$ncn_cv_AR%g
s%@AS@%$AS%g
+s%@ncn_cv_AS@%$ncn_cv_AS%g
s%@DLLTOOL@%$DLLTOOL%g
+s%@ncn_cv_DLLTOOL@%$ncn_cv_DLLTOOL%g
s%@LD@%$LD%g
-s%@LIPO@%$LIPO%g
+s%@ncn_cv_LD@%$ncn_cv_LD%g
s%@NM@%$NM%g
+s%@ncn_cv_NM@%$ncn_cv_NM%g
s%@RANLIB@%$RANLIB%g
-s%@STRIP@%$STRIP%g
+s%@ncn_cv_RANLIB@%$ncn_cv_RANLIB%g
s%@WINDRES@%$WINDRES%g
+s%@ncn_cv_WINDRES@%$ncn_cv_WINDRES%g
s%@OBJCOPY@%$OBJCOPY%g
+s%@ncn_cv_OBJCOPY@%$ncn_cv_OBJCOPY%g
s%@OBJDUMP@%$OBJDUMP%g
+s%@ncn_cv_OBJDUMP@%$ncn_cv_OBJDUMP%g
s%@CXX@%$CXX%g
s%@CFLAGS_FOR_BUILD@%$CFLAGS_FOR_BUILD%g
-s%@CC_FOR_TARGET@%$CC_FOR_TARGET%g
-s%@CXX_FOR_TARGET@%$CXX_FOR_TARGET%g
+s%@CONFIGURED_AR_FOR_TARGET@%$CONFIGURED_AR_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_AR_FOR_TARGET@%$ncn_cv_CONFIGURED_AR_FOR_TARGET%g
+s%@CONFIGURED_AS_FOR_TARGET@%$CONFIGURED_AS_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_AS_FOR_TARGET@%$ncn_cv_CONFIGURED_AS_FOR_TARGET%g
+s%@CONFIGURED_DLLTOOL_FOR_TARGET@%$CONFIGURED_DLLTOOL_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET@%$ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET%g
+s%@CONFIGURED_LD_FOR_TARGET@%$CONFIGURED_LD_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_LD_FOR_TARGET@%$ncn_cv_CONFIGURED_LD_FOR_TARGET%g
+s%@CONFIGURED_NM_FOR_TARGET@%$CONFIGURED_NM_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_NM_FOR_TARGET@%$ncn_cv_CONFIGURED_NM_FOR_TARGET%g
+s%@CONFIGURED_RANLIB_FOR_TARGET@%$CONFIGURED_RANLIB_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_RANLIB_FOR_TARGET@%$ncn_cv_CONFIGURED_RANLIB_FOR_TARGET%g
+s%@CONFIGURED_WINDRES_FOR_TARGET@%$CONFIGURED_WINDRES_FOR_TARGET%g
+s%@ncn_cv_CONFIGURED_WINDRES_FOR_TARGET@%$ncn_cv_CONFIGURED_WINDRES_FOR_TARGET%g
s%@GCC_FOR_TARGET@%$GCC_FOR_TARGET%g
+s%@FLAGS_FOR_TARGET@%$FLAGS_FOR_TARGET%g
+s%@CC_FOR_TARGET@%$CC_FOR_TARGET%g
s%@GCJ_FOR_TARGET@%$GCJ_FOR_TARGET%g
s%@GFORTRAN_FOR_TARGET@%$GFORTRAN_FOR_TARGET%g
+s%@CXX_FOR_TARGET@%$CXX_FOR_TARGET%g
+s%@RAW_CXX_FOR_TARGET@%$RAW_CXX_FOR_TARGET%g
+s%@CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@%$CXX_FOR_TARGET_FOR_RECURSIVE_MAKE%g
+s%@RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@%$RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE%g
s%@AR_FOR_TARGET@%$AR_FOR_TARGET%g
s%@AS_FOR_TARGET@%$AS_FOR_TARGET%g
s%@DLLTOOL_FOR_TARGET@%$DLLTOOL_FOR_TARGET%g
s%@LD_FOR_TARGET@%$LD_FOR_TARGET%g
-s%@LIPO_FOR_TARGET@%$LIPO_FOR_TARGET%g
s%@NM_FOR_TARGET@%$NM_FOR_TARGET%g
-s%@OBJDUMP_FOR_TARGET@%$OBJDUMP_FOR_TARGET%g
s%@RANLIB_FOR_TARGET@%$RANLIB_FOR_TARGET%g
-s%@STRIP_FOR_TARGET@%$STRIP_FOR_TARGET%g
s%@WINDRES_FOR_TARGET@%$WINDRES_FOR_TARGET%g
-s%@FLAGS_FOR_TARGET@%$FLAGS_FOR_TARGET%g
-s%@RAW_CXX_FOR_TARGET@%$RAW_CXX_FOR_TARGET%g
-s%@COMPILER_AS_FOR_TARGET@%$COMPILER_AS_FOR_TARGET%g
-s%@COMPILER_LD_FOR_TARGET@%$COMPILER_LD_FOR_TARGET%g
-s%@COMPILER_NM_FOR_TARGET@%$COMPILER_NM_FOR_TARGET%g
s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
s%@MAINT@%$MAINT%g
s%@stage1_cflags@%$stage1_cflags%g
+s%@CREATE_LINK_TO_DIR@%$CREATE_LINK_TO_DIR%g
+s%@UNDO_LINK_TO_DIR@%$UNDO_LINK_TO_DIR%g
s%@stage2_werror_flag@%$stage2_werror_flag%g
+s%@SET_GCC_LIB_PATH@%$SET_GCC_LIB_PATH%g
CEOF
EOF
diff --git a/configure.in b/configure.in
index da7c63f4f..3e37753d3 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -13,7 +13,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
##############################################################################
### WARNING: this file contains embedded tabs. Do not run untabify on this file.
@@ -80,17 +80,10 @@ AC_SUBST(TOPLEVEL_CONFIGURE_ARGUMENTS)
moveifchange=${srcdir}/move-if-change
-srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
-
-# We pass INSTALL explicitly to sub-makes. Make sure that it is not
-# a relative path.
-if test "$INSTALL" = "${srcdir}/install-sh -c"; then
- INSTALL="${srcpwd}/install-sh -c"
-fi
-
# Set srcdir to "." if that's what it is.
# This is important for multilib support.
pwd=`${PWDCMD-pwd}`
+srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
if test "${pwd}" = "${srcpwd}" ; then
srcdir=.
fi
@@ -98,6 +91,26 @@ fi
topsrcdir=$srcpwd
extra_host_args=
+# Define the trigger file to make sure configure will re-run whenever
+# the gcc version number changes.
+if test "${with_gcc_version_trigger+set}" = set ; then
+ gcc_version_trigger="$with_gcc_version_trigger"
+ gcc_version=`grep version_string ${with_gcc_version_trigger} | sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/'`
+else
+ # If gcc's sources are available, define the trigger file.
+ if test -f ${topsrcdir}/gcc/version.c ; then
+ gcc_version_trigger=${topsrcdir}/gcc/version.c
+ gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/'`
+ case "$ac_configure_args" in
+ *--with-gcc-version-trigger=$gcc_version_trigger* )
+ ;;
+ * )
+ # Add to all subconfigure arguments: build, host, and target.
+ ac_configure_args="$ac_configure_args --with-gcc-version-trigger=$gcc_version_trigger"
+ ;;
+ esac
+ fi
+fi
### To add a new directory to the tree, first choose whether it is a target
### or a host dependent tool. Then put it into the appropriate list
@@ -123,14 +136,14 @@ build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fix
# these libraries are used by various programs built for the host environment
#
-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber"
+host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp"
# these tools are built for the host environment
# Note, the powerpc-eabi build depends on sim occurring before gdb in order to
# know that we are building the simulator.
# binutils, gas and ld appear in that order because it makes sense to run
# "make check" in that particular order.
-host_tools="texinfo byacc flex bison binutils gas ld fixincludes gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar gnattools"
+host_tools="texinfo byacc flex bison binutils gas ld gcc sid sim gdb make patch prms send-pr gprof etc expect dejagnu ash bash bzip2 m4 autoconf automake libtool diff rcs fileutils shellutils time textutils wdiff find uudecode hello tar gzip indent recode release sed utils guile perl gawk findutils gettext zip fastjar"
# libgcj represents the runtime libraries only used by gcj.
libgcj="target-libffi \
@@ -147,13 +160,10 @@ target_libraries="target-libiberty \
target-newlib \
target-libstdc++-v3 \
target-libmudflap \
- target-libssp \
- target-libgcc-math \
target-libgfortran \
${libgcj} \
target-libobjc \
- target-libada \
- target-libgomp"
+ target-libada"
# these tools are built using the target libraries, and are intended to
# run only in the target environment
@@ -260,10 +270,6 @@ case "${host}" in
configdirs="$configdirs libtermcap" ;;
esac
-# A target can indicate whether a language isn't supported for some reason.
-# Only spaces may be used in this macro; not newlines or tabs.
-unsupported_languages=
-
# Remove more programs from consideration, based on the host or
# target this usually means that a port of the program doesn't
# exist yet.
@@ -297,6 +303,9 @@ case "${host}" in
powerpc-*-beos*)
noconfigdirs="$noconfigdirs tk itcl libgui gdb dejagnu readline"
;;
+ *-*-darwin*)
+ noconfigdirs="$noconfigdirs tk itcl libgui"
+ ;;
esac
@@ -305,26 +314,9 @@ AC_ARG_ENABLE(libada,
ENABLE_LIBADA=$enableval,
ENABLE_LIBADA=yes)
if test "${ENABLE_LIBADA}" != "yes" ; then
- noconfigdirs="$noconfigdirs gnattools"
+ noconfigdirs="$noconfigdirs target-libada"
fi
-AC_ARG_ENABLE(libssp,
-[ --enable-libssp Builds libssp directory],
-ENABLE_LIBSSP=$enableval,
-ENABLE_LIBSSP=yes)
-
-# Set the default so we build libgcc-math for ix86 and x86_64
-AC_ARG_ENABLE(libgcc-math,
-[ --enable-libgcc-math Builds libgcc-math directory],,
-[
-case "${target}" in
- i?86-* | x86_64-* )
- enable_libgcc_math=yes ;;
- *)
- enable_libgcc_math=no ;;
-esac
-])
-
# Save it here so that, even in case of --enable-libgcj, if the Java
# front-end isn't enabled, we still get libgcj disabled.
libgcj_saved=$libgcj
@@ -342,10 +334,16 @@ no)
esac
-# Disable libmudflap on some systems.
-if test x$enable_libmudflap = x ; then
+# Allow --disable-libmudflap to exclude target-libmudflap
+case $enable_libmudflap in
+yes)
+ ;;
+no)
+ noconfigdirs="$noconfigdirs target-libmudflap"
+ ;;
+"")
case "${target}" in
- *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
+ *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
@@ -356,25 +354,7 @@ if test x$enable_libmudflap = x ; then
noconfigdirs="$noconfigdirs target-libmudflap"
;;
esac
-fi
-
-# Disable libgomp on non POSIX hosted systems.
-if test x$enable_libgomp = x ; then
- # Enable libgomp by default on hosted POSIX systems.
- case "${target}" in
- *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
- ;;
- *-*-netbsd* | *-*-freebsd* | *-*-openbsd*)
- ;;
- *-*-solaris2* | *-*-sysv4* | *-*-irix* | *-*-osf* | *-*-hpux*)
- ;;
- *-*-darwin* | *-*-aix*)
- ;;
- *)
- noconfigdirs="$noconfigdirs target-libgomp"
- ;;
- esac
-fi
+esac
case "${target}" in
@@ -383,11 +363,9 @@ case "${target}" in
;;
powerpc-*-darwin*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
- noconfigdirs="$noconfigdirs sim target-rda"
;;
*-*-darwin*)
- noconfigdirs="$noconfigdirs ld gas gdb gprof"
- noconfigdirs="$noconfigdirs sim target-rda"
+ noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes gdb gprof"
noconfigdirs="$noconfigdirs ${libgcj}"
;;
*-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*)
@@ -435,18 +413,11 @@ case "${target}" in
*-*-rtems*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
- # The tpf target doesn't support gdb yet.
- *-*-tpf*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj} target-libmudflap gdb tcl tk libgui itcl"
- ;;
*-*-uclinux*)
noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}"
;;
*-*-vxworks*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty target-libstdc++-v3 ${libgcj}"
- ;;
- m32c-*-*)
- noconfigdirs="$noconfigdirs target-libstdc++-v3"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libiberty ${libgcj}"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries.
@@ -489,30 +460,30 @@ case "${target}" in
arc-*-*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
- arm-semi-aof )
- ;;
arm-*-coff | strongarm-*-coff | xscale-*-coff)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
;;
- arm*-*-linux-gnueabi)
- noconfigdirs="$noconfigdirs target-libffi target-qthreads"
- noconfigdirs="$noconfigdirs target-libjava target-libobjc"
- ;;
arm*-*-symbianelf*)
noconfigdirs="$noconfigdirs ${libgcj} target-libiberty"
;;
arm-*-pe*)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ arm-*-oabi*)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
thumb-*-coff)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
thumb-*-elf)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ thumb-*-oabi)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
thumb-*-pe)
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
@@ -522,33 +493,14 @@ case "${target}" in
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
;;
- bfin-*-*)
- noconfigdirs="$noconfigdirs target-libgloss gdb"
- if test x${is_cross_compiler} != xno ; then
- target_configdirs="${target_configdirs} target-bsp target-cygmon"
- fi
- ;;
c4x-*-* | tic4x-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
c54x*-*-* | tic54x-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} gcc gdb newlib"
;;
- cris-*-* | crisv32-*-*)
- unsupported_languages="$unsupported_languages java"
- case "${target}" in
- *-*-aout)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs target-libffi target-boehm-gc";;
- *-*-elf)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs target-boehm-gc";;
- *-*-linux*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss";;
- *)
- unsupported_languages="$unsupported_languages fortran"
- noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss";;
- esac
+ cris-*-*)
+ noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
;;
crx-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-mudflap ${libgcj}"
@@ -571,21 +523,19 @@ case "${target}" in
h8500-*-*)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
- hppa1.1-*-osf* | hppa1.1-*-bsd* )
- ;;
hppa*64*-*-linux* | parisc*64*-*-linux*)
# In this case, it's because the hppa64-linux target is for
# the kernel only at this point and has no libc, and thus no
# headers, crt*.o, etc., all of which are needed by these.
noconfigdirs="$noconfigdirs target-zlib"
;;
- parisc*-*-linux* | hppa*-*-linux*)
- ;;
hppa*-*-*elf* | \
+ parisc*-*-linux* | hppa*-*-linux* | \
hppa*-*-lites* | \
hppa*-*-openbsd* | \
hppa*64*-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
+ # Do configure ld/binutils/gas for this case.
;;
hppa*-*-*)
# According to Alexandre Oliva <aoliva@redhat.com>, libjava won't
@@ -603,8 +553,6 @@ case "${target}" in
# No gdb or ld support yet.
noconfigdirs="$noconfigdirs ${libgcj} readline mmalloc libgui itcl gdb ld"
;;
- i370-*-opened*)
- ;;
i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -642,9 +590,10 @@ case "${target}" in
target_configdirs="$target_configdirs target-libtermcap target-winsup"
noconfigdirs="$noconfigdirs target-gperf target-libgloss ${libgcj}"
# always build newlib if winsup directory is present.
- if test -d "$srcdir/winsup"; then
+ if test -d "$srcdir/winsup"
+ then
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
- elif test -d "$srcdir/newlib"; then
+ else
echo "Warning: winsup is missing so newlib can't be built."
fi
@@ -655,9 +604,6 @@ case "${target}" in
;;
esac
;;
- i[[3456789]]86-moss-msdos | i[[3456789]]86-*-moss* | \
- i[[3456789]]86-*-uwin* | i[[3456789]]86-*-interix* )
- ;;
i[[3456789]]86-*-pe)
noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}"
;;
@@ -678,9 +624,6 @@ case "${target}" in
i[[3456789]]86-*-beos*)
noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}"
;;
- i[[3456789]]86-*-rdos*)
- noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss"
- ;;
m32r-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -699,8 +642,7 @@ case "${target}" in
noconfigdirs="$noconfigdirs target-libstdc++-v3"
;;
mmix-*-*)
- noconfigdirs="$noconfigdirs target-libffi target-boehm-gc gdb libgloss"
- unsupported_languages="$unsupported_languages fortran java"
+ noconfigdirs="$noconfigdirs ${libgcj} gdb libgloss"
;;
mn10200-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
@@ -708,12 +650,9 @@ case "${target}" in
mn10300-*-*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
- mt-*-*)
- noconfigdirs="$noconfigdirs sim"
- ;;
powerpc-*-aix*)
# copied from rs6000-*-* entry
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
@@ -731,13 +670,11 @@ case "${target}" in
powerpc-*-eabi)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
- powerpc-*-eabi* | powerpcle-*-eabi* | powerpc-*-rtems* )
- ;;
rs6000-*-lynxos*)
noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}"
;;
rs6000-*-aix*)
- noconfigdirs="$noconfigdirs gprof target-libgloss target-libssp ${libgcj}"
+ noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}"
;;
rs6000-*-*)
noconfigdirs="$noconfigdirs gprof ${libgcj}"
@@ -776,7 +713,7 @@ case "${target}" in
romp-*-*)
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
;;
- sh-*-* | sh64-*-*)
+ sh-*-*)
case "${host}" in
i[[3456789]]86-*-vsta) ;; # don't add gprof back in
i[[3456789]]86-*-go32*) ;; # don't add gprof back in
@@ -785,6 +722,9 @@ case "${target}" in
esac
noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
;;
+ sh64-*-*)
+ noconfigdirs="$noconfigdirs target-libgloss ${libgcj}"
+ ;;
sparc-*-elf*)
noconfigdirs="$noconfigdirs ${libgcj}"
;;
@@ -802,9 +742,6 @@ case "${target}" in
use_gnu_ld=no
fi
;;
- sparc-*-solaris2.[[0-6]] | sparc-*-solaris2.[[0-6]].*)
- noconfigdirs="$noconfigdirs ${libgcj}"
- ;;
sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*)
;;
v810-*-*)
@@ -962,6 +899,7 @@ case "${host}" in
host_makefile_frag="config/mh-cygwin"
;;
*-mingw32*)
+ host_makefile_frag="config/mh-mingw32"
;;
*-interix*)
host_makefile_frag="config/mh-interix"
@@ -992,12 +930,6 @@ case "${host}" in
powerpc-*-darwin*)
host_makefile_frag="config/mh-ppc-darwin"
;;
- powerpc-*-aix*)
- host_makefile_frag="config/mh-ppc-aix"
- ;;
- rs6000-*-aix*)
- host_makefile_frag="config/mh-ppc-aix"
- ;;
*-*-lynxos*)
# /bin/cc is less than useful for our purposes. Always use GCC
tentative_cc="/bin/gcc"
@@ -1041,6 +973,12 @@ if test "${build}" != "${host}" ; then
CXX=${CXX-${host_alias}-c++}
CXXFLAGS=${CXXFLAGS-"-g -O2"}
CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
+ CC_FOR_TARGET=${CC_FOR_TARGET-${target_alias}-gcc}
+ CXX_FOR_TARGET=${CXX_FOR_TARGET-${target_alias}-c++}
+ GCJ_FOR_TARGET=${GCJ_FOR_TARGET-${target_alias}-gcj}
+ GCC_FOR_TARGET=${GCC_FOR_TARGET-${CC_FOR_TARGET-${target_alias}-gcc}}
+ BUILD_PREFIX=${build_alias}-
+ BUILD_PREFIX_1=${build_alias}-
else
# Set reasonable default values for some tools even if not Canadian.
@@ -1052,6 +990,10 @@ else
# This is all going to change when we autoconfiscate...
CC_FOR_BUILD="\$(CC)"
+ GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
+ BUILD_PREFIX=
+ BUILD_PREFIX_1=loser-
+
AC_PROG_CC
# We must set the default linker to the linker used by gcc for the correct
@@ -1090,7 +1032,7 @@ have_gmp=yes
AC_ARG_WITH(mpfr-dir, [ --with-mpfr-dir=PATH Specify source directory for MPFR library])
if test "x$with_mpfr_dir" != x; then
- gmpinc="-I$with_mpfr_dir"
+ gmpinc="-I$with_mpfr_dir/mpfr"
gmplibs="$with_mpfr_dir/libmpfr.a"
else
gmplibs="-lmpfr"
@@ -1179,15 +1121,6 @@ if test -d ${srcdir}/gcc; then
fi
enable_languages=`echo "${enable_languages}" | sed -e 's/[[ ,]][[ ,]]*/,/g' -e 's/,$//'`
- # 'f95' is the old name for the 'fortran' language. We issue a warning
- # and make the substitution.
- case ,${enable_languages}, in
- *,f95,*)
- echo configure.in: warning: 'f95' as language name is deprecated, use 'fortran' instead 1>&2
- enable_languages=`echo "${enable_languages}" | sed -e 's/f95/fortran/g'`
- ;;
- esac
-
# First scan to see if an enabled language requires some other language.
# We assume that a given config-lang.in will list all the language
# front ends it requires, even if some are required indirectly.
@@ -1276,14 +1209,7 @@ if test -d ${srcdir}/gcc; then
add_this_lang=no
;;
esac
-
- # Disable a language that is unsupported by the target.
- case " $unsupported_languages " in
- *" $language "*)
- add_this_lang=no
- ;;
- esac
-
+
case $add_this_lang in
no)
# Remove language-dependent dirs.
@@ -1307,8 +1233,8 @@ if test -d ${srcdir}/gcc; then
missing_languages=`echo "$missing_languages" | sed -e "s/^,//" -e "s/,$//"`
if test "x$missing_languages" != x; then
AC_MSG_ERROR([
-The following requested languages could not be built: ${missing_languages}
-Recognised languages are: ${potential_languages}])
+The following requested languages were not found: ${missing_languages}
+The available languages are: ${potential_languages}])
fi
if test "x$new_enable_languages" != "x$enable_languages"; then
@@ -1318,21 +1244,13 @@ Recognised languages are: ${potential_languages}])
ac_configure_args=`echo " $ac_configure_args" | sed -e 's/ --enable-languages=[[^ ]]*//' -e 's/$/ --enable-languages='"$enable_languages"/ `
fi
-# Handle --disable-<component> generically.
-for dir in $configdirs $build_configdirs $target_configdirs ; do
- dirname=`echo $dir | sed -e s/target-//g -e s/build-//g -e s/-/_/g`
- if eval test x\${enable_${dirname}} "=" xno ; then
- noconfigdirs="$noconfigdirs $dir"
- fi
-done
-
-# Remove the entries in $skipdirs and $noconfigdirs from $configdirs,
-# $build_configdirs and $target_configdirs.
+# Remove the entries in $skipdirs and $noconfigdirs from $configdirs and
+# $target_configdirs.
# If we have the source for $noconfigdirs entries, add them to $notsupp.
notsupp=""
for dir in . $skipdirs $noconfigdirs ; do
- dirname=`echo $dir | sed -e s/target-//g -e s/build-//g`
+ dirname=`echo $dir | sed -e s/target-//g`
if test $dir != . && echo " ${configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
configdirs=`echo " ${configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure ; then
@@ -1343,16 +1261,6 @@ for dir in . $skipdirs $noconfigdirs ; do
fi
fi
fi
- if test $dir != . && echo " ${build_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- build_configdirs=`echo " ${build_configdirs} " | sed -e "s/ ${dir} / /"`
- if test -r $srcdir/$dirname/configure ; then
- if echo " ${skipdirs} " | grep " ${dir} " >/dev/null 2>&1; then
- true
- else
- notsupp="$notsupp $dir"
- fi
- fi
- fi
if test $dir != . && echo " ${target_configdirs} " | grep " ${dir} " >/dev/null 2>&1; then
target_configdirs=`echo " ${target_configdirs} " | sed -e "s/ ${dir} / /"`
if test -r $srcdir/$dirname/configure ; then
@@ -1453,15 +1361,6 @@ esac
copy_dirs=
-AC_ARG_WITH([build-sysroot],
- [ --with-build-sysroot=sysroot
- use sysroot as the system root during the build],
- [if test x"$withval" != x ; then
- SYSROOT_CFLAGS_FOR_TARGET="--sysroot=$withval"
- fi],
- [SYSROOT_CFLAGS_FOR_TARGET=])
-AC_SUBST(SYSROOT_CFLAGS_FOR_TARGET)
-
# Handle --with-headers=XXX. If the value is not "yes", the contents of
# the named directory are copied to $(tooldir)/sys-include.
if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
@@ -1499,39 +1398,6 @@ if test x"${with_libs}" != x && test x"${with_libs}" != xno ; then
fi
fi
-# Set with_gnu_as and with_gnu_ld as appropriate.
-#
-# This is done by determining whether or not the appropriate directory
-# is available, and by checking whether or not specific configurations
-# have requested that this magic not happen.
-#
-# The command line options always override the explicit settings in
-# configure.in, and the settings in configure.in override this magic.
-#
-# If the default for a toolchain is to use GNU as and ld, and you don't
-# want to do that, then you should use the --without-gnu-as and
-# --without-gnu-ld options for the configure script.
-
-if test x${use_gnu_as} = x &&
- echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
- with_gnu_as=yes
- extra_host_args="$extra_host_args --with-gnu-as"
-fi
-
-if test x${use_gnu_ld} = x &&
- echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
- with_gnu_ld=yes
- extra_host_args="$extra_host_args --with-gnu-ld"
-fi
-
-# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
-# can detect this case.
-
-if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
- with_newlib=yes
- extra_host_args="$extra_host_args --with-newlib"
-fi
-
# Handle ${copy_dirs}
set fnord ${copy_dirs}
shift
@@ -1563,55 +1429,6 @@ while test $# != 0 ; do
shift; shift
done
-# Determine a target-dependent exec_prefix that the installed
-# gcc will search in. Keep this list sorted by triplet, with
-# the *-*-osname triplets last.
-md_exec_prefix=
-case "${target}" in
- alpha*-*-*vms*)
- md_exec_prefix=/gnu/lib/gcc-lib
- ;;
- i[34567]86-pc-msdosdjgpp*)
- md_exec_prefix=/dev/env/DJDIR/bin
- ;;
- i[34567]86-*-sco3.2v5*)
- if test $with_gnu_as = yes; then
- md_exec_prefix=/usr/gnu/bin
- else
- md_exec_prefix=/usr/ccs/bin/elf
- fi
- ;;
-
- mn10300-*-* | \
- powerpc-*-chorusos* | \
- powerpc*-*-eabi* | \
- powerpc*-*-sysv* | \
- powerpc*-*-kaos* | \
- s390x-ibm-tpf*)
- md_exec_prefix=/usr/ccs/bin
- ;;
- sparc64-*-elf*)
- ;;
- v850*-*-*)
- md_exec_prefix=/usr/ccs/bin
- ;;
- xtensa-*-elf*)
- ;;
-
- *-*-beos* | \
- *-*-elf* | \
- *-*-hpux* | \
- *-*-netware* | \
- *-*-nto-qnx* | \
- *-*-rtems* | \
- *-*-solaris2* | \
- *-*-sysv[45]* | \
- *-*-vxworks* | \
- *-wrs-windiss)
- md_exec_prefix=/usr/ccs/bin
- ;;
-esac
-
extra_arflags_for_target=
extra_nmflags_for_target=
extra_ranlibflags_for_target=
@@ -1669,6 +1486,39 @@ case "${enable_target_optspace}:${target}" in
;;
esac
+# Set with_gnu_as and with_gnu_ld as appropriate.
+#
+# This is done by determining whether or not the appropriate directory
+# is available, and by checking whether or not specific configurations
+# have requested that this magic not happen.
+#
+# The command line options always override the explicit settings in
+# configure.in, and the settings in configure.in override this magic.
+#
+# If the default for a toolchain is to use GNU as and ld, and you don't
+# want to do that, then you should use the --without-gnu-as and
+# --without-gnu-ld options for the configure script.
+
+if test x${use_gnu_as} = x &&
+ echo " ${configdirs} " | grep " gas " > /dev/null 2>&1 ; then
+ with_gnu_as=yes
+ extra_host_args="$extra_host_args --with-gnu-as"
+fi
+
+if test x${use_gnu_ld} = x &&
+ echo " ${configdirs} " | grep " ld " > /dev/null 2>&1 ; then
+ with_gnu_ld=yes
+ extra_host_args="$extra_host_args --with-gnu-ld"
+fi
+
+# If using newlib, add --with-newlib to the extra_host_args so that gcc/configure
+# can detect this case.
+
+if test x${with_newlib} != xno && echo " ${target_configdirs} " | grep " target-newlib " > /dev/null 2>&1 ; then
+ with_newlib=yes
+ extra_host_args="$extra_host_args --with-newlib"
+fi
+
# Default to using --with-stabs for certain targets.
if test x${with_stabs} = x ; then
case "${target}" in
@@ -1694,6 +1544,17 @@ esac
tooldir='${exec_prefix}'/${target_alias}
build_tooldir=${tooldir}
+# Generate default definitions for YACC, M4, LEX and other programs that run
+# on the build machine. These are used if the Makefile can't locate these
+# programs in objdir.
+MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
+AC_CHECK_PROGS([CONFIGURED_BISON], [bison], [$MISSING bison])
+AC_CHECK_PROGS([CONFIGURED_YACC], ['bison -y' byacc yacc], [$MISSING bison -y])
+AC_CHECK_PROGS([CONFIGURED_M4], [gm4 gnum4 m4], [$MISSING m4])
+AC_CHECK_PROGS([CONFIGURED_FLEX], [flex], [$MISSING flex])
+AC_CHECK_PROGS([CONFIGURED_LEX], [flex lex], [$MISSING flex])
+AC_CHECK_PROGS([CONFIGURED_MAKEINFO], makeinfo, [$MISSING makeinfo])
+
# Create a .gdbinit file which runs the one in srcdir
# and tells GDB to look there for source files.
@@ -1760,9 +1621,15 @@ case "${host}" in
;;
esac
+# If --enable-shared was set, we must set LD_LIBRARY_PATH so that the
+# binutils tools will find libbfd.so.
+case "${enable_shared}" in
+ no | "") SET_LIB_PATH= ;;
+ *) SET_LIB_PATH="\$(REALLY_SET_LIB_PATH)" ;;
+esac
+
case "${host}" in
*-*-hpux*) RPATH_ENVVAR=SHLIB_PATH ;;
- *-*-darwin* | *-*-rhapsody* ) RPATH_ENVVAR=DYLD_LIBRARY_PATH ;;
*) RPATH_ENVVAR=LD_LIBRARY_PATH ;;
esac
@@ -1796,8 +1663,6 @@ case "$enable_gdbtk" in
fi
;;
esac
-CONFIGURE_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-configure-/g`
-INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
# Strip out unwanted targets.
@@ -1813,7 +1678,7 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
# not to nest @if/@endif pairs, because configure will not warn you at all.
AC_ARG_ENABLE([bootstrap],
-[ --enable-bootstrap Enable bootstrapping [yes if native build]],,
+[ --enable-bootstrap[=lean] Enable bootstrapping [no]],,
enable_bootstrap=default)
# Issue errors and warnings for invalid/strange bootstrap combinations.
@@ -1825,26 +1690,27 @@ esac
case "$have_compiler:$host:$target:$enable_bootstrap" in
*:*:*:no) ;;
- # Default behavior. Enable bootstrap if we have a compiler
+ # Default behavior. (We'll) enable bootstrap if we have a compiler
# and we are in a native configuration.
yes:$build:$build:default)
- enable_bootstrap=yes ;;
+ # This will become 'yes'
+ enable_bootstrap=no ;;
*:*:*:default)
enable_bootstrap=no ;;
# We have a compiler and we are in a native configuration, bootstrap is ok
- yes:$build:$build:yes)
+ yes:$build:$build:yes | yes:$build:$build:lean)
;;
# Other configurations, but we have a compiler. Assume the user knows
# what he's doing.
- yes:*:*:yes)
+ yes:*:*:yes | yes:*:*:lean)
AC_MSG_WARN([trying to bootstrap a cross compiler])
;;
# No compiler: if they passed --enable-bootstrap explicitly, fail
- no:*:*:yes)
+ no:*:*:yes | no:*:*:lean)
AC_MSG_ERROR([cannot bootstrap without a compiler]) ;;
# Fail if wrong command line
@@ -1856,10 +1722,19 @@ esac
# Adjust the toplevel makefile according to whether bootstrap was selected.
case "$enable_bootstrap" in
yes)
+ bootstrap_lean='#'
+ default_target=bootstrap
+ bootstrap_suffix=bootstrap ;;
+ lean)
+ bootstrap_lean=''
+ default_target=bootstrap
bootstrap_suffix=bootstrap ;;
no)
+ default_target=all
bootstrap_suffix=no-bootstrap ;;
esac
+AC_SUBST(bootstrap_lean)
+AC_SUBST(default_target)
for module in ${build_configdirs} ; do
if test -z "${no_recursion}" \
@@ -1874,13 +1749,10 @@ for module in ${build_configdirs} ; do
/^@endif build-$module-$bootstrap_suffix\$/d"
done
for module in ${configdirs} ; do
- if test -z "${no_recursion}"; then
- for file in stage*-${module}/Makefile ${module}/Makefile; do
- if test -f ${file}; then
- echo 1>&2 "*** removing ${file} to force reconfigure"
- rm -f ${file}
- fi
- done
+ if test -z "${no_recursion}" \
+ && test -f ${module}/Makefile; then
+ echo 1>&2 "*** removing ${module}/Makefile to force reconfigure"
+ rm -f ${module}/Makefile
fi
extrasub="$extrasub
/^@if $module\$/d
@@ -2007,7 +1879,7 @@ baseargs="$baseargs --program-transform-name='${gcc_transform_name}'"
# For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor
# desired.
-build_configargs="--cache-file=../config.cache --build=${build_alias} --host=${build_alias} --target=${target_alias} ${baseargs}"
+build_configargs="--cache-file=../config.cache --build=${build_alias} --host=${build_alias} ${baseargs}"
# For host modules, accept cache file option, or specification as blank.
case "${cache_file}" in
@@ -2054,10 +1926,26 @@ fi
# fixed in future. It's still worthwhile to use a cache file for each
# directory. I think.
-# Pass the appropriate --build, --host, --target and --cache-file arguments.
-# We need to pass --target, as newer autoconf's requires consistency
-# for target_alias and gcc doesn't manage it consistently.
-target_configargs="--cache-file=./config.cache --build=${build_alias} --host=${target_alias} --target=${target_alias} ${target_configargs}"
+# Pass the appropriate --host, --build, and --cache-file arguments.
+target_configargs="--cache-file=./config.cache --host=${target_alias} --build=${build_alias} ${target_configargs}"
+
+# provide a proper gxx_include_dir.
+# Note, if you change the default, make sure to fix both here and in
+# the gcc and libstdc++-v3 subdirectories.
+# Check whether --with-gxx-include-dir or --without-gxx-include-dir was given.
+case "${with_gxx_include_dir}" in
+ yes)
+ AC_MSG_ERROR([--with-gxx-include-dir=[[dir]] requires a directory])
+ ;;
+ no | "")
+ case "${enable_version_specific_runtime_libs}" in
+ yes) gxx_include_dir='${libsubdir}/include/c++' ;;
+ *)
+ . ${srcdir}/config.if
+ gxx_include_dir='${prefix}/include/'${libstdcxx_incdir} ;;
+ esac ;;
+ *) gxx_include_dir=${with_gxx_include_dir} ;;
+esac
FLAGS_FOR_TARGET=
case " $target_configdirs " in
@@ -2079,7 +1967,7 @@ case " $target_configdirs " in
# to it. This is right: we don't want to search that directory
# for binaries, but we want the header files in there, so add
# them explicitly.
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/gcc/include'
# Someone might think of using the pre-installed headers on
# Canadian crosses, in case the installed compiler is not fully
@@ -2126,8 +2014,91 @@ fi
if test "x${use_gnu_ld}" = x &&
echo " ${configdirs} " | grep " ld " > /dev/null ; then
# Arrange for us to find uninstalled linker scripts.
- FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(HOST_SUBDIR)/ld'
+ FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/ld'
+fi
+
+if test "x${CC_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ CC_FOR_TARGET='$$r/gcc/xgcc -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ CC_FOR_TARGET='$(CC)'
+else
+ CC_FOR_TARGET=`echo gcc | sed "${program_transform_name}"`
+fi
+CC_FOR_TARGET=$CC_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+if test "x${GCJ_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ GCJ_FOR_TARGET='$$r/gcc/gcj -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ GCJ_FOR_TARGET='gcj'
+else
+ GCJ_FOR_TARGET=`echo gcj | sed "${program_transform_name}"`
+fi
+GCJ_FOR_TARGET=$GCJ_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+if test "x${GFORTRAN_FOR_TARGET+set}" = xset; then
+ :
+elif test -d ${srcdir}/gcc; then
+ GFORTRAN_FOR_TARGET='$$r/gcc/gfortran -B$$r/gcc/'
+elif test "$host" = "$target"; then
+ GFORTRAN_FOR_TARGET='gfortran'
+else
+ GFORTRAN_FOR_TARGET=`echo gfortran | sed "${program_transform_name}"`
+fi
+case $GFORTRAN_FOR_TARGET in
+*' $(FLAGS_FOR_TARGET)') ;;
+*) GFORTRAN_FOR_TARGET=$GFORTRAN_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;;
+esac
+
+# Don't use libstdc++-v3's flags to configure/build itself.
+libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+raw_libstdcxx_flags='-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+
+if test "x${CXX_FOR_TARGET+set}" = xset; then
+ if test "x${RAW_CXX_FOR_TARGET+set}" != xset; then
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+ fi
+elif test -d ${srcdir}/gcc; then
+ # We add -shared-libgcc to CXX_FOR_TARGET whenever we use xgcc instead
+ # of g++ for linking C++ or Java, because g++ has -shared-libgcc by
+ # default whereas gcc does not.
+ # RAW_CXX_FOR_TARGET is for linking C++ or java; CXX_FOR_TARGET is for
+ # all other cases.
+ CXX_FOR_TARGET='$$r/gcc/g++ -B$$r/gcc/ -nostdinc++ '$libstdcxx_flags
+ RAW_CXX_FOR_TARGET='$$r/gcc/xgcc -shared-libgcc -B$$r/gcc/ -nostdinc++ '$raw_libstdcxx_flags
+elif test "$host" = "$target"; then
+ CXX_FOR_TARGET='$(CXX)'
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
+else
+ CXX_FOR_TARGET=`echo c++ | sed "${program_transform_name}"`
+ RAW_CXX_FOR_TARGET=${CXX_FOR_TARGET}
fi
+CXX_FOR_TARGET=$CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+RAW_CXX_FOR_TARGET=$RAW_CXX_FOR_TARGET' $(FLAGS_FOR_TARGET)'
+
+qCXX_FOR_TARGET=`echo "$CXX_FOR_TARGET" | sed 's,[[&%]],\\\&,g'`
+qRAW_CXX_FOR_TARGET=`echo "$RAW_CXX_FOR_TARGET" | sed 's,[[&%]],\\\&,g'`
+
+# We want to defer the evaluation of `cmd`s and shell variables in
+# CXX_FOR_TARGET when recursing in the top-level Makefile, such as for
+# bootstrap. We'll enclose CXX_FOR_TARGET_FOR_RECURSIVE_MAKE in single
+# quotes, but we still have to duplicate `$'s so that shell variables
+# can be expanded by the nested make as shell variables, not as make
+# macros.
+qqCXX_FOR_TARGET=`echo "$qCXX_FOR_TARGET" | sed -e 's,[[$]][[$]],$$$$,g'`
+qqRAW_CXX_FOR_TARGET=`echo "$qRAW_CXX_FOR_TARGET" | sed -e 's,[[$]][[$]],$$$$,g'`
+
+# Wrap CC_FOR_TARGET and friends, for certain types of builds.
+CC_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${CC_FOR_TARGET}"
+GCJ_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GCJ_FOR_TARGET}"
+GFORTRAN_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GFORTRAN_FOR_TARGET}"
+CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qCXX_FOR_TARGET}"
+RAW_CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qRAW_CXX_FOR_TARGET}"
+CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqCXX_FOR_TARGET}"
+RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqRAW_CXX_FOR_TARGET}"
# Makefile fragments.
for frag in host_makefile_frag target_makefile_frag alphaieee_frag ospace_frag;
@@ -2143,12 +2114,17 @@ AC_SUBST_FILE(alphaieee_frag)
AC_SUBST_FILE(ospace_frag)
# Miscellanea: directories, flags, etc.
+AC_SUBST(SET_LIB_PATH)
AC_SUBST(RPATH_ENVVAR)
+AC_SUBST(BUILD_PREFIX)
+AC_SUBST(BUILD_PREFIX_1)
+AC_SUBST(gcc_version_trigger)
+AC_SUBST(gcc_version)
AC_SUBST(tooldir)
AC_SUBST(build_tooldir)
-AC_SUBST(CONFIGURE_GDB_TK)
AC_SUBST(GDB_TK)
-AC_SUBST(INSTALL_GDB_TK)
+AC_SUBST(gxx_include_dir)
+AC_SUBST(libstdcxx_incdir)
# Build module lists & subconfigure args.
AC_SUBST(build_configargs)
@@ -2160,90 +2136,22 @@ AC_SUBST(configdirs)
# Target module lists & subconfigure args.
AC_SUBST(target_configargs)
-
+AC_SUBST(target_configdirs)
# Build tools.
AC_SUBST(CC_FOR_BUILD)
AC_SUBST(config_shell)
-# Generate default definitions for YACC, M4, LEX and other programs that run
-# on the build machine. These are used if the Makefile can't locate these
-# programs in objdir.
-MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
-
-AC_CHECK_PROGS([YACC], ['bison -y' byacc yacc], [$MISSING bison -y])
-case " $build_configdirs " in
- *" bison "*) YACC='$$r/$(BUILD_SUBDIR)/bison/tests/bison -y' ;;
- *" byacc "*) YACC='$$r/$(BUILD_SUBDIR)/byacc/byacc' ;;
-esac
-
-AC_CHECK_PROGS([BISON], [bison], [$MISSING bison])
-case " $build_configdirs " in
- *" bison "*) BISON='$$r/$(BUILD_SUBDIR)/bison/tests/bison' ;;
-esac
-
-AC_CHECK_PROGS([M4], [gm4 gnum4 m4], [$MISSING m4])
-case " $build_configdirs " in
- *" m4 "*) M4='$$r/$(BUILD_SUBDIR)/m4/m4' ;;
-esac
-
-AC_CHECK_PROGS([LEX], [flex lex], [$MISSING flex])
-case " $build_configdirs " in
- *" flex "*) LEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
- *" lex "*) LEX='$$r/$(BUILD_SUBDIR)/lex/lex' ;;
-esac
-
-AC_CHECK_PROGS([FLEX], [flex], [$MISSING flex])
-case " $build_configdirs " in
- *" flex "*) FLEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
-esac
-
-AC_CHECK_PROGS([MAKEINFO], makeinfo, [$MISSING makeinfo])
-case " $build_configdirs " in
- *" texinfo "*) MAKEINFO='$$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo' ;;
- *)
-changequote(,)
- # For an installed makeinfo, we require it to be from texinfo 4.2 or
- # higher, else we use the "missing" dummy.
- if ${MAKEINFO} --version \
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
- :
- else
- MAKEINFO="$MISSING makeinfo"
- fi
- ;;
-changequote([,])
-esac
-
-# FIXME: expect and dejagnu may become build tools?
-
-AC_CHECK_PROGS(EXPECT, expect, expect)
-case " $configdirs " in
- *" expect "*)
- test $host = $build && EXPECT='$$r/$(HOST_SUBDIR)/expect/expect'
- ;;
-esac
-
-AC_CHECK_PROGS(RUNTEST, runtest, runtest)
-case " $configdirs " in
- *" dejagnu "*)
- test $host = $build && RUNTEST='$$r/$(HOST_SUBDIR)/dejagnu/runtest'
- ;;
-esac
-
-
# Host tools.
-NCN_STRICT_CHECK_TOOLS(AR, ar)
-NCN_STRICT_CHECK_TOOLS(AS, as)
-NCN_STRICT_CHECK_TOOLS(DLLTOOL, dlltool)
-NCN_STRICT_CHECK_TOOLS(LD, ld)
-NCN_STRICT_CHECK_TOOLS(LIPO, lipo)
-NCN_STRICT_CHECK_TOOLS(NM, nm)
-NCN_STRICT_CHECK_TOOLS(RANLIB, ranlib, :)
-NCN_STRICT_CHECK_TOOLS(STRIP, strip, :)
-NCN_STRICT_CHECK_TOOLS(WINDRES, windres)
-NCN_STRICT_CHECK_TOOLS(OBJCOPY, objcopy)
-NCN_STRICT_CHECK_TOOLS(OBJDUMP, objdump)
+NCN_STRICT_CHECK_TOOL(AR, ar)
+NCN_STRICT_CHECK_TOOL(AS, as)
+NCN_STRICT_CHECK_TOOL(DLLTOOL, dlltool)
+NCN_STRICT_CHECK_TOOL(LD, ld)
+NCN_STRICT_CHECK_TOOL(NM, nm)
+NCN_STRICT_CHECK_TOOL(RANLIB, ranlib, :)
+NCN_STRICT_CHECK_TOOL(WINDRES, windres)
+NCN_STRICT_CHECK_TOOL(OBJCOPY, objcopy)
+NCN_STRICT_CHECK_TOOL(OBJDUMP, objdump)
AC_SUBST(CC)
AC_SUBST(CXX)
AC_SUBST(CFLAGS)
@@ -2251,87 +2159,62 @@ AC_SUBST(CFLAGS_FOR_BUILD)
AC_SUBST(CXXFLAGS)
# Target tools.
-AC_ARG_WITH([build-time-tools],
- [ --with-build-time-tools=path
- use given path to find target tools during the build],
- [case x"$withval" in
- x/*) ;;
- *)
- with_build_time_tools=
- AC_MSG_WARN([argument to --with-build-time-tools must be an absolute path])
- ;;
- esac],
- [with_build_time_tools=])
-
-NCN_STRICT_CHECK_TARGET_TOOLS(CC_FOR_TARGET, cc gcc)
-NCN_STRICT_CHECK_TARGET_TOOLS(CXX_FOR_TARGET, c++ g++ cxx gxx)
-NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TARGET, gcc, ${CC_FOR_TARGET})
-NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj)
-NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran)
-
-ACX_CHECK_INSTALLED_TARGET_TOOL(AR_FOR_TARGET, ar)
-ACX_CHECK_INSTALLED_TARGET_TOOL(AS_FOR_TARGET, as)
-ACX_CHECK_INSTALLED_TARGET_TOOL(DLLTOOL_FOR_TARGET, dlltool)
-ACX_CHECK_INSTALLED_TARGET_TOOL(LD_FOR_TARGET, ld)
-ACX_CHECK_INSTALLED_TARGET_TOOL(LIPO_FOR_TARGET, lipo)
-ACX_CHECK_INSTALLED_TARGET_TOOL(NM_FOR_TARGET, nm)
-ACX_CHECK_INSTALLED_TARGET_TOOL(OBJDUMP_FOR_TARGET, objdump)
-ACX_CHECK_INSTALLED_TARGET_TOOL(RANLIB_FOR_TARGET, ranlib, :)
-ACX_CHECK_INSTALLED_TARGET_TOOL(STRIP_FOR_TARGET, strip)
-ACX_CHECK_INSTALLED_TARGET_TOOL(WINDRES_FOR_TARGET, windres)
-
-RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET"
-
-GCC_TARGET_TOOL(ar, AR_FOR_TARGET, AR, [binutils/ar])
-GCC_TARGET_TOOL(as, AS_FOR_TARGET, AS, [gas/as-new])
-GCC_TARGET_TOOL(cc, CC_FOR_TARGET, CC, [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
-GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
- [gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs],
- c++)
-GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
- [gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs],
- c++)
-GCC_TARGET_TOOL(dlltool, DLLTOOL_FOR_TARGET, DLLTOOL, [binutils/dlltool])
-GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
-GCC_TARGET_TOOL(gcj, GCJ_FOR_TARGET, GCJ,
- [gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/], java)
-GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN,
- [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran)
-GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new])
-GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO)
-GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new])
-GCC_TARGET_TOOL(objdump, OBJDUMP_FOR_TARGET, OBJDUMP, [binutils/objdump])
-GCC_TARGET_TOOL(ranlib, RANLIB_FOR_TARGET, RANLIB, [binutils/ranlib])
-GCC_TARGET_TOOL(strip, STRIP_FOR_TARGET, STRIP, [binutils/strip])
-GCC_TARGET_TOOL(windres, WINDRES_FOR_TARGET, WINDRES, [binutils/windres])
-
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AR_FOR_TARGET, ar)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AS_FOR_TARGET, as)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_DLLTOOL_FOR_TARGET, dlltool)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_LD_FOR_TARGET, ld)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_NM_FOR_TARGET, nm)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_RANLIB_FOR_TARGET, ranlib, :)
+NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_WINDRES_FOR_TARGET, windres)
+
+AC_SUBST(GCC_FOR_TARGET)
AC_SUBST(FLAGS_FOR_TARGET)
+AC_SUBST(CC_FOR_TARGET)
+AC_SUBST(GCJ_FOR_TARGET)
+AC_SUBST(GFORTRAN_FOR_TARGET)
+AC_SUBST(CXX_FOR_TARGET)
AC_SUBST(RAW_CXX_FOR_TARGET)
+AC_SUBST(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)
+AC_SUBST(RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)
+
+# Fix up target tools.
+if test "x${build}" = "x${host}" ; then
+ # In this case, the newly built tools can and should be used,
+ # so we override the results of the autoconf tests.
+ # This should really only happen when the tools are actually being built,
+ # but that's a further refinement. The new build scheme, where
+ # tools are built into a structure paralleling where they're installed,
+ # should also eliminate all of this cleanly.
+ AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)"
+ AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)"
+ DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)"
+ LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)"
+ NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
+ RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
+ WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
+else
+ # Just use the ones we found.
+ AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)"
+ AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)"
+ DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)"
+ LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)"
+ NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)"
+ RANLIB_FOR_TARGET="\$(CONFIGURED_RANLIB_FOR_TARGET)"
+ WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)"
+fi
+AC_SUBST(AR_FOR_TARGET)
+AC_SUBST(AS_FOR_TARGET)
+AC_SUBST(DLLTOOL_FOR_TARGET)
+AC_SUBST(LD_FOR_TARGET)
+AC_SUBST(NM_FOR_TARGET)
+AC_SUBST(RANLIB_FOR_TARGET)
+AC_SUBST(WINDRES_FOR_TARGET)
# Certain tools may need extra flags.
AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
-# When building target libraries, except in a Canadian cross, we use
-# the same toolchain as the compiler we just built.
-COMPILER_AS_FOR_TARGET='$(AS_FOR_TARGET)'
-COMPILER_LD_FOR_TARGET='$(LD_FOR_TARGET)'
-COMPILER_NM_FOR_TARGET='$(NM_FOR_TARGET)'
-if test $host = $build; then
- case " $configdirs " in
- *" gcc "*)
- COMPILER_AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/as'
- COMPILER_LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/collect-ld'
- COMPILER_NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/nm'${extra_nmflags_for_target}
- ;;
- esac
-fi
-
-AC_SUBST(COMPILER_AS_FOR_TARGET)
-AC_SUBST(COMPILER_LD_FOR_TARGET)
-AC_SUBST(COMPILER_NM_FOR_TARGET)
-
AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
AC_ARG_ENABLE(maintainer-mode,
[ --enable-maintainer-mode enable make rules and dependencies not useful
@@ -2373,6 +2256,36 @@ case $build in
esac
AC_SUBST(stage1_cflags)
+# It makes debugging easier if we create as symlinks the stage directories
+# gcc for stageN-gcc and stagePREV-gcc for stage(N-1). In case this is not
+# possible, however, we can resort to mv.
+AC_CACHE_CHECK([if symbolic links between directories work],
+[gcc_cv_prog_ln_s_dir],
+[if test "${LN_S}" = "ln -s" \
+ && mkdir confdir.s1 \
+ && ln -s confdir.s1 confdir.s2 \
+ && echo timestamp1 > confdir.s1/conftest.1 \
+ && cmp confdir.s1/conftest.1 confdir.s2/conftest.1 \
+ && echo timestamp2 > confdir.s2/conftest.2 \
+ && cmp confdir.s1/conftest.2 confdir.s1/conftest.2 \
+ && rm -f confdir.s2; then
+ gcc_cv_prog_ln_s_dir=yes
+else
+ gcc_cv_prog_ln_s_dir=yes
+fi
+rm -rf confdir.s1 confdir.s2])
+
+case ${gcc_cv_prog_ln_s_dir} in
+ yes)
+ CREATE_LINK_TO_DIR='ln -s $$1 $$2'
+ UNDO_LINK_TO_DIR='rm -f $$1' ;;
+ *)
+ CREATE_LINK_TO_DIR='mv $$1 $$2'
+ UNDO_LINK_TO_DIR='mv $$1 $$2' ;;
+esac
+AC_SUBST(CREATE_LINK_TO_DIR)
+AC_SUBST(UNDO_LINK_TO_DIR)
+
# Enable -Werror in bootstrap stage2 and later.
# Change the default to "no" on release branches.
AC_ARG_ENABLE(werror,
@@ -2384,4 +2297,24 @@ case ${enable_werror} in
esac
AC_SUBST(stage2_werror_flag)
+# If gcc is built natively with shared library enabled, set
+# $RPATH_ENVVAR to make sure the newly built gcc shared librares are
+# used.
+SET_GCC_LIB_PATH=
+if test -d ${srcdir}/gcc && test x${is_cross_compiler} = xno; then
+ case "${enable_shared}" in
+ no | "") ;;
+ *)
+ eval "d=\$$RPATH_ENVVAR"
+ if test x"$d" != x; then
+ d="$pwd/gcc:$d"
+ else
+ d="$pwd/gcc"
+ fi
+ SET_GCC_LIB_PATH="\$(RPATH_ENVVAR)=$d; export \$(RPATH_ENVVAR);"
+ ;;
+ esac
+fi
+AC_SUBST(SET_GCC_LIB_PATH)
+
AC_OUTPUT(Makefile)
diff --git a/depcomp b/depcomp
deleted file mode 100755
index 3510ab0ff..000000000
--- a/depcomp
+++ /dev/null
@@ -1,553 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2005-05-16.16
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
-
-case $1 in
- '')
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
- exit 1;
- ;;
- -h | --h*)
- cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
- depmode Dependency tracking mode.
- source Source file read by `PROGRAMS ARGS'.
- object Object file output by `PROGRAMS ARGS'.
- DEPDIR directory where to store dependencies.
- depfile Dependency file to output.
- tmpdepfile Temporary file to use when outputing dependencies.
- libtool Whether libtool is used (yes/no).
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
- exit $?
- ;;
- -v | --v*)
- echo "depcomp $scriptversion"
- exit $?
- ;;
-esac
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
- exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
- sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags. We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write. Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
- # HP compiler uses -M and no extra arg.
- gccflag=-M
- depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
- # This is just like dashmstdout with a different argument.
- dashmflag=-xM
- depmode=dashmstdout
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want. Yay! Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff. Hmm.
- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- mv "$tmpdepfile" "$depfile"
- ;;
-
-gcc)
-## There are various ways to get dependency output from gcc. Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-## up in a subdir. Having to rename by hand is ugly.
-## (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-## -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-## than renaming).
- if test -z "$gccflag"; then
- gccflag=-MD,
- fi
- "$@" -Wp,"$gccflag$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
- sed -e 's/^[^:]*: / /' \
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header). We avoid this by adding
-## dummy dependencies for each header file. Too bad gcc doesn't do
-## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp)
- # This case exists only to let depend.m4 do its work. It works by
- # looking at the text of this script. This case will never be run,
- # since it is checked for above.
- exit 1
- ;;
-
-sgi)
- if test "$libtool" = yes; then
- "$@" "-Wp,-MDupdate,$tmpdepfile"
- else
- "$@" -MDupdate "$tmpdepfile"
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
-
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
- echo "$object : \\" > "$depfile"
-
- # Clip off the initial element (the dependent). Don't try to be
- # clever and replace this with sed code, as IRIX sed won't handle
- # lines with more than a fixed number of characters (4096 in
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
- # dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> $depfile
- echo >> $depfile
-
- # The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> $depfile
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-aix)
- # The C for AIX Compiler uses -M and outputs the dependencies
- # in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
- # start of each line; $object doesn't have directory information.
- # Version 6 uses the directory in both cases.
- stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
- tmpdepfile="$stripped.u"
- if test "$libtool" = yes; then
- "$@" -Wc,-M
- else
- "$@" -M
- fi
- stat=$?
-
- if test -f "$tmpdepfile"; then :
- else
- stripped=`echo "$stripped" | sed 's,^.*/,,'`
- tmpdepfile="$stripped.u"
- fi
-
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
-
- if test -f "$tmpdepfile"; then
- outname="$stripped.o"
- # Each line is of the form `foo.o: dependent.h'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
- sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
- # ICC 7.0 will fill foo.d with something like
- # foo.o: sub/foo.c
- # foo.o: sub/foo.h
- # which is wrong. We want:
- # sub/foo.o: sub/foo.c
- # sub/foo.o: sub/foo.h
- # sub/foo.c:
- # sub/foo.h:
- # ICC 7.1 will output
- # foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
- # foo.o: sub/foo.c ... \
- # sub/foo.h ... \
- # ...
-
- "$@" -MD -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-ia64hp)
- # The "hp" stanza above does not work with HP's ia64 compilers,
- # which have integrated preprocessors. The correct option to use
- # with these is +Maked; it writes dependencies to a file named
- # 'foo.d', which lands next to the object file, wherever that
- # happens to be.
- tmpdepfile=`echo "$object" | sed -e 's/\.o$/.d/'`
- "$@" +Maked
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
-
- # The object file name is correct already.
- cat "$tmpdepfile" > "$depfile"
- # Add `dependent.h:' lines.
- sed -ne '2,${; s/^ //; s/ \\*$//; s/$/:/; p; }' "$tmpdepfile" >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
- # Subdirectories are respected.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
- if test "$libtool" = yes; then
- # With Tru64 cc, shared objects can also be used to make a
- # static library. This mecanism is used in libtool 1.4 series to
- # handle both shared and static libraries in a single compilation.
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
- #
- # With libtool 1.5 this exception was removed, and libtool now
- # generates 2 separate objects for the 2 libraries. These two
- # compilations output dependencies in in $dir.libs/$base.o.d and
- # in $dir$base.o.d. We have to check for both files, because
- # one of the two compilations can be disabled. We should prefer
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
- # automatically cleaned when .libs/ is deleted, while ignoring
- # the former would cause a distcleancheck panic.
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
- tmpdepfile2=$dir$base.o.d # libtool 1.5
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
- "$@" -Wc,-MD
- else
- tmpdepfile1=$dir$base.o.d
- tmpdepfile2=$dir$base.d
- tmpdepfile3=$dir$base.d
- tmpdepfile4=$dir$base.d
- "$@" -MD
- fi
-
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-#nosideeffect)
- # This comment above is used by automake to tell side-effect
- # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
- # in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
- "$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-dashXmstdout)
- # This case only exists to satisfy depend.m4. It is never actually
- # run, as this mode is specially recognized in the preamble.
- exit 1
- ;;
-
-makedepend)
- "$@" || exit $?
- # Remove any Libtool call
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
- # X makedepend
- shift
- cleared=no
- for arg in "$@"; do
- case $cleared in
- no)
- set ""; shift
- cleared=yes ;;
- esac
- case "$arg" in
- -D*|-I*)
- set fnord "$@" "$arg"; shift ;;
- # Strip any option that makedepend may not understand. Remove
- # the object too, otherwise makedepend will parse it as a source file.
- -*|$object)
- ;;
- *)
- set fnord "$@" "$arg"; shift ;;
- esac
- done
- obj_suffix="`echo $object | sed 's/^.*\././'`"
- touch "$tmpdepfile"
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile" "$tmpdepfile".bak
- ;;
-
-cpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- "$@" -E |
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
- sed '$ s: \\$::' > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- cat < "$tmpdepfile" >> "$depfile"
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-msvisualcpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o,
- # because we must use -o when running libtool.
- "$@" || exit $?
- IFS=" "
- for arg
- do
- case "$arg" in
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
- set fnord "$@"
- shift
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift
- shift
- ;;
- esac
- done
- "$@" -E |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-none)
- exec "$@"
- ;;
-
-*)
- echo "Unknown depmode $depmode" 1>&2
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 64fdee6c0..6865f2df1 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,23 +1,3 @@
-2006-02-27 Carlos O'Donell <carlos@codesourcery.com>
-
- * Makefile.in: TEXI2HTML uses makeinfo. Define
- HTMLFILES. Add html targets.
- * configure.texi: Use ifnottex. Add alternative
- image format specifier as jpg.
- * standards.texi: Use ifnottex.
-
-2005-10-21 Mark Mitchell <mark@codesourcery.com>
-
- * texi2pod.pl: Substitue for @value even when part of @include.
-
-2005-10-21 Bob Wilson <bob.wilson@acm.org>
-
- * texi2pod.pl: Import latest version from GCC.
-
-2005-05-19 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in: Have 'all' depend on 'info'.
-
2003-05-16 Kelley Cook <kelleycook@wideopenwest.com>
* configure.texi: Use "i[3-7]86" in example.
@@ -83,7 +63,7 @@
1998-12-03 Nick Clifton <nickc@cygnus.com>
* targetdoc/fr30.texi: New document.
-
+
1998-10-01 Angela Marie Thomas (angela@cygnus.com)
* comp-tools-fix, cross-tools-fix: Replace /usr/include
@@ -148,7 +128,7 @@ Mon May 18 14:27:37 1998 Angela Marie Thomas (angela@cygnus.com)
Thu May 14 14:43:10 1998 Nick Clifton <nickc@cygnus.com>
* targetdoc/arm-interwork.texi: Document dlltool support of
- interworking.
+ interworking.
Thu May 7 16:49:38 1998 Jason Molenda (crash@bugshack.cygnus.com)
@@ -157,7 +137,7 @@ Thu May 7 16:49:38 1998 Jason Molenda (crash@bugshack.cygnus.com)
Wed Apr 1 17:11:44 1998 Nick Clifton <nickc@cygnus.com>
- * targetdoc/arm-interwork.texi: Document ARM/thumb interworking.
+ * targetdoc/arm-interwork.texi: Document ARM/thumb interworking.
Tue Mar 31 15:28:20 1998 Ian Lance Taylor <ian@cygnus.com>
@@ -167,7 +147,7 @@ Tue Mar 31 15:28:20 1998 Ian Lance Taylor <ian@cygnus.com>
Tue Mar 24 16:13:26 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
* configure: Regenerate with autoconf 2.12.1 to fix shell issues
- for NT native builds.
+ for NT native builds.
Mon Mar 9 16:41:04 1998 Doug Evans <devans@canuck.cygnus.com>
@@ -203,7 +183,7 @@ Tue Jun 17 15:50:23 1997 Angela Marie Thomas (angela@cygnus.com)
Thu Jun 12 13:47:00 1997 Angela Marie Thomas (angela@cygnus.com)
- * Install.in (show_exec_prefix_msg): fix quoting
+ * Install.in (show_exec_prefix_msg): fix quoting
Wed Jun 4 15:31:43 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
@@ -251,8 +231,8 @@ Thu Apr 10 23:23:33 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
Mon Apr 7 18:15:00 1997 Brendan Kehoe <brendan@cygnus.com>
- * Fix the version string for OSF1 4.0 to recognize either
- V4.* or X4.*
+ * Fix the version string for OSF1 4.0 to recognize either
+ V4.* or X4.*
Mon Apr 7 15:34:47 1997 Ian Lance Taylor <ian@cygnus.com>
@@ -323,8 +303,8 @@ Mon Aug 28 17:25:49 1995 Jason Molenda (crash@phydeaux.cygnus.com)
Tue Aug 15 21:51:58 1995 Jason Molenda (crash@phydeaux.cygnus.com)
- * Install.in (guess_system): Match OSF/1 v3.x as the same as
- v2.x--v2.x binaries are upward compatible.
+ * Install.in (guess_system): Match OSF/1 v3.x as the same as
+ v2.x--v2.x binaries are upward compatible.
Tue Aug 15 21:46:54 1995 Jason Molenda (crash@phydeaux.cygnus.com)
@@ -339,8 +319,8 @@ Tue Aug 8 13:11:56 1995 Brendan Kehoe <brendan@lisa.cygnus.com>
Thu Jun 8 00:42:56 1995 Angela Marie Thomas <angela@cirdan.cygnus.com>
- * subst-strings: change du commands to $BINDIR/. & $SRCDIR/. just
- in case they are symlinks.
+ * subst-strings: change du commands to $BINDIR/. & $SRCDIR/. just
+ in case they are symlinks.
Tue Apr 18 14:23:10 1995 J.T. Conklin <jtc@rtl.cygnus.com>
@@ -355,7 +335,7 @@ Tue Apr 18 14:23:10 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* Install.in (do_mkdir): New function.
* Install.in: Added support for --with and --without options.
- Changed so that tape commands are not run when extracting
+ Changed so that tape commands are not run when extracting
from a file.
(do_mt): Changed to take only one argument.
@@ -363,7 +343,7 @@ Wed Mar 29 11:16:38 1995 Jason Molenda (crash@phydeaux.cygnus.com)
* Install.in: catch UNAME==alpha-dec-osf2.x and correct entry for
alpha-dec-osf1.x
-
+
Fri Jan 27 12:04:29 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* subst-strings (mips-sgi-irix5): New entry in table.
@@ -408,8 +388,8 @@ Thu Apr 28 14:42:22 1994 David J. Mackenzie (djm@rtl.cygnus.com)
Tue Apr 26 17:18:03 1994 Jason Molenda (crash@sendai.cygnus.com)
- * Install.in: fixincludes output is actually put in fixincludes.log,
- but echo'ed messages claim it is fixinc.log. This is the same
+ * Install.in: fixincludes output is actually put in fixincludes.log,
+ but echo'ed messages claim it is fixinc.log. This is the same
messages as I logged in March 4 1994, but for some reason we found
the change hadn't been done. I'll have to dig through the logs
and find out what I really did do that day. :)
@@ -469,21 +449,21 @@ Wed Mar 23 23:38:24 1994 Jason Molenda (crash@sendai.cygnus.com)
Wed Mar 23 13:42:48 1994 Jason Molenda (crash@sendai.cygnus.com)
- * Install.in: set PATH to $PATH:/bin:/usr/bin so we can pick
- up native tools even if the user doesn't have them in his
- path.
+ * Install.in: set PATH to $PATH:/bin:/usr/bin so we can pick
+ up native tools even if the user doesn't have them in his
+ path.
- * Install.in: ``hppa-1.1-hp-hpux'' -> ``hppa1.1-hp-hpux''.
+ * Install.in: ``hppa-1.1-hp-hpux'' -> ``hppa1.1-hp-hpux''.
Tue Mar 15 22:09:20 1994 Jason Molenda (crash@sendai.cygnus.com)
-
- * Install.in: TAPE_REWIND and TAPE_FORWARD variables for Unixunaware,
- added switch statement to detect if system is Unixunaware.
+
+ * Install.in: TAPE_REWIND and TAPE_FORWARD variables for Unixunaware,
+ added switch statement to detect if system is Unixunaware.
Fri Mar 4 12:10:30 1994 Jason Molenda (crash@sendai.cygnus.com)
- * Install.in: fixincludes output is actually put in fixincludes.log,
- but echo'ed messages claim it is fixinc.log.
+ * Install.in: fixincludes output is actually put in fixincludes.log,
+ but echo'ed messages claim it is fixinc.log.
Wed Nov 3 02:58:02 1993 Jeffrey Osier (jeffrey@thepub.cygnus.com)
@@ -514,9 +494,9 @@ Thu Jun 10 16:01:25 1993 Jeffrey Osier (jeffrey@cygnus.com)
Wed Jun 9 19:23:59 1993 Jeffrey Osier (jeffrey@rtl.cygnus.com)
- * install-texi.in: added conditionals (nearly complete)
- cleaned up
- added support for other releases (not done)
+ * install-texi.in: added conditionals (nearly complete)
+ cleaned up
+ added support for other releases (not done)
Wed Jun 9 15:53:58 1993 Jim Kingdon (kingdon@cygnus.com)
@@ -531,7 +511,7 @@ Fri Jun 4 17:09:56 1993 Jeffrey Osier (jeffrey@cygnus.com)
Thu Jun 3 00:37:01 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
- * Install.in: pull COPYING and COPYING.LIB off of the tape
+ * Install.in: pull COPYING and COPYING.LIB off of the tape
Tue Jun 1 16:52:08 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
diff --git a/etc/Makefile.in b/etc/Makefile.in
index df461cfd5..63f7738c6 100644
--- a/etc/Makefile.in
+++ b/etc/Makefile.in
@@ -39,10 +39,7 @@ MAKEINFO = `if [ -f ../texinfo/makeinfo/makeinfo ]; \
TEXI2DVI = `if [ -f ../texinfo/util/texi2dvi ]; \
then echo ../texinfo/util/texi2dvi; \
else echo texi2dvi; fi`
-TEXI2HTML = `if [ -f ../texinfo/makeinfo/makeinfo ]; \
- then echo "../texinfo/makeinfo/makeinfo --html"; \
- else echo "makeinfo --html"; fi`
-
+TEXI2HTML = texi2html
DVIPS = dvips
# Where to find texinfo.tex to format documentation with TeX.
@@ -53,9 +50,10 @@ TEXIDIR = $(srcdir)/../texinfo
INFOFILES = standards.info configure.info
DVIFILES = standards.dvi configure.dvi
-HTMLFILES = standards.html configure.html
-all: info
+all:
+
+# We want install to imply install-info as per GNU standards.
install: install-info
uninstall:
@@ -86,18 +84,6 @@ install-info: info
done; \
fi
-html:
- for f in $(HTMLFILES); do \
- if test -f $(srcdir)/`echo $$f | sed -e 's/.html$$/.texi/'`; then \
- if $(MAKE) "TEXI2HTML=$(TEXI2HTML)" $$f; then \
- true; \
- else \
- exit 1; \
- fi; \
- fi; \
- done
-
-
dvi:
for f in $(DVIFILES); do \
if test -f $(srcdir)/`echo $$f | sed -e 's/.dvi$$/.texi/'`; then \
@@ -112,9 +98,6 @@ dvi:
standards.info: $(srcdir)/standards.texi $(srcdir)/make-stds.texi
$(MAKEINFO) --no-split -I$(srcdir) -o standards.info $(srcdir)/standards.texi
-standards.html: $(srcdir)/standards.texi $(srcdir)/make-stds.texi
- $(TEXI2HTML) --no-split -I$(srcdir) -o standards.html $(srcdir)/standards.texi
-
standards.dvi: $(srcdir)/standards.texi
TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/standards.texi
@@ -150,15 +133,12 @@ configure.ps: configure.dvi $(srcdir)/configdev.ein $(srcdir)/configbuild.ein
rm -f configdev.eps configbuild.eps
configure.html: $(srcdir)/configure.texi
- cp $(srcdir)/configdev.jin configdev.jpg
- cp $(srcdir)/configbuild.jin configbuild.jpg
- $(TEXI2HTML) --no-split -I$(srcdir) -o configure.html $(srcdir)/configure.texi
+ $(TEXI2HTML) -split_chapter $(srcdir)/configure.texi
clean:
rm -f *.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.log
rm -f *.pg *.pgs *.toc *.tp *.tps *.vr *.vrs
- rm -f configdev.txt configbuild.txt
- rm -f configdev.eps configbuild.eps
+ rm -f configdev.txt configbuild.txt configdev.eps configbuild.eps
rm -f configdev.jpg configbuild.jpg
mostlyclean: clean
@@ -167,7 +147,6 @@ distclean: clean
rm -f Makefile config.status config.cache
maintainer-clean realclean: distclean
- rm -f *.html*
rm -f *.info*
Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
diff --git a/etc/configure.texi b/etc/configure.texi
index 385a7c447..d69dc414d 100644
--- a/etc/configure.texi
+++ b/etc/configure.texi
@@ -10,7 +10,7 @@
* configure: (configure). The GNU configure and build system
@end direntry
-@ifnottex
+@ifinfo
This file documents the GNU configure and build system.
Copyright (C) 1998 Cygnus Solutions.
@@ -35,7 +35,7 @@ Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation approved
by the Foundation.
-@end ifnottex
+@end ifinfo
@titlepage
@title The GNU configure and build system
@@ -60,7 +60,7 @@ except that this permission notice may be stated in a translation
approved by the Free Software Foundation.
@end titlepage
-@ifnottex
+@ifinfo
@node Top
@top GNU configure and build system
@@ -79,7 +79,7 @@ The GNU configure and build system.
* Index:: Index.
@end menu
-@end ifnottex
+@end ifinfo
@node Introduction
@chapter Introduction
@@ -1085,7 +1085,7 @@ are in rectangles with rounded corners
@end ifnotinfo
(e.g., @samp{autoheader} is the name of a tool, not the name of a file).
-@image{configdev,,,,jpg}
+@image{configdev}
@node Written Developer Files
@subsection Written Developer Files
@@ -1235,7 +1235,7 @@ Here is a picture of the files which will be created at build time.
@file{config.status} is both a created file and a shell script which is
run to create other files, and the picture attempts to show that.
-@image{configbuild,,,,jpg}
+@image{configbuild}
@node Build Files Description
@subsection Build Files Description
diff --git a/etc/standards.texi b/etc/standards.texi
index 490e15b15..5aa508e01 100644
--- a/etc/standards.texi
+++ b/etc/standards.texi
@@ -6,13 +6,13 @@
@set lastupdate February 14, 2002
@c %**end of header
-@ifnottex
+@ifinfo
@format
START-INFO-DIR-ENTRY
* Standards: (standards). GNU coding standards.
END-INFO-DIR-ENTRY
@end format
-@end ifnottex
+@end ifinfo
@c @setchapternewpage odd
@setchapternewpage off
@@ -28,11 +28,11 @@ END-INFO-DIR-ENTRY
@iftex
@set CHAPTER chapter
@end iftex
-@ifnottex
+@ifinfo
@set CHAPTER node
-@end ifnottex
+@end ifinfo
-@ifnottex
+@ifinfo
GNU Coding Standards
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
@@ -43,7 +43,7 @@ with no Invariant Sections, with no
Front-Cover Texts, and with no Back-Cover Texts.
A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
-@end ifnottex
+@end ifinfo
@titlepage
@title GNU Coding Standards
@@ -63,12 +63,12 @@ A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
@end titlepage
-@ifnottex
+@ifinfo
@node Top, Preface, (dir), (dir)
@top Version
Last updated @value{lastupdate}.
-@end ifnottex
+@end ifinfo
@menu
* Preface:: About the GNU Coding Standards
diff --git a/etc/texi2pod.pl b/etc/texi2pod.pl
index 9696a12f3..bdc20e811 100644
--- a/etc/texi2pod.pl
+++ b/etc/texi2pod.pl
@@ -1,23 +1,23 @@
#! /usr/bin/perl -w
-# Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 200 Free Software Foundation, Inc.
-# This file is part of GCC.
+# This file is part of GNU CC.
-# GCC is free software; you can redistribute it and/or modify
+# GNU CC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
-# GCC is distributed in the hope that it will be useful,
+# GNU CC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING. If not, write to
-# the Free Software Foundation, 51 Franklin Street, Fifth Floor,
-# Boston MA 02110-1301, USA.
+# along with GNU CC; see the file COPYING. If not, write to
+# the Free Software Foundation, 59 Temple Place - Suite 330,
+# Boston MA 02111-1307, USA.
# This does trivial (and I mean _trivial_) conversion of Texinfo
# markup to Perl POD format. It's intended to be used to extract
@@ -138,7 +138,7 @@ while(<$inf>) {
# Ignore @end foo, where foo is not an operation which may
# cause us to skip, if we are presently skipping.
my $ended = $1;
- next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu|iftex|copying)$/;
+ next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu|iftex)$/;
die "\@end $ended without \@$ended at line $.\n" unless defined $endw;
die "\@$endw ended by \@end $ended at line $.\n" unless $ended eq $endw;
@@ -178,7 +178,7 @@ while(<$inf>) {
next;
};
- /^\@(ignore|menu|iftex|copying)\b/ and do {
+ /^\@(ignore|menu|iftex)\b/ and do {
push @endwstack, $endw;
push @skstack, $skipping;
$endw = $1;
@@ -227,12 +227,11 @@ while(<$inf>) {
/^\@include\s+(.+)$/ and do {
push @instack, $inf;
$inf = gensym();
- $file = postprocess($1);
# Try cwd and $ibase.
- open($inf, "<" . $file)
- or open($inf, "<" . $ibase . "/" . $file)
- or die "cannot open $file or $ibase/$file: $!\n";
+ open($inf, "<" . $1)
+ or open($inf, "<" . $ibase . "/" . $1)
+ or die "cannot open $1 or $ibase/$1: $!\n";
next;
};
@@ -242,14 +241,10 @@ while(<$inf>) {
and $_ = "\n=head3 $1\n";
# Block command handlers:
- /^\@itemize(?:\s+(\@[a-z]+|\*|-))?/ and do {
+ /^\@itemize\s+(\@[a-z]+|\*|-)/ and do {
push @endwstack, $endw;
push @icstack, $ic;
- if (defined $1) {
- $ic = $1;
- } else {
- $ic = '@bullet';
- }
+ $ic = $1;
$_ = "\n=over 4\n";
$endw = "itemize";
};
@@ -350,13 +345,6 @@ sub postprocess
s/\@w\{([^\}]*)\}/S<$1>/g;
s/\@(?:dmn|math)\{([^\}]*)\}/$1/g;
- # keep references of the form @ref{...}, print them bold
- s/\@(?:ref)\{([^\}]*)\}/B<$1>/g;
-
- # Change double single quotes to double quotes.
- s/''/"/g;
- s/``/"/g;
-
# Cross references are thrown away, as are @noindent and @refill.
# (@noindent is impossible in .pod, and @refill is unnecessary.)
# @* is also impossible in .pod; we discard it and any newline that
@@ -377,18 +365,14 @@ sub postprocess
s/\@uref\{([^\},]*),([^\},]*)\}/$2 (C<$1>)/g;
s/\@uref\{([^\},]*),([^\},]*),([^\},]*)\}/$3/g;
- # Un-escape <> at this point.
+ # Turn B<blah I<blah> blah> into B<blah> I<blah> B<blah> to
+ # match Texinfo semantics of @emph inside @samp. Also handle @r
+ # inside bold.
s/&LT;/</g;
s/&GT;/>/g;
-
- # Now un-nest all B<>, I<>, R<>. Theoretically we could have
- # indefinitely deep nesting; in practice, one level suffices.
- 1 while s/([BIR])<([^<>]*)([BIR])<([^<>]*)>/$1<$2>$3<$4>$1</g;
-
- # Replace R<...> with bare ...; eliminate empty markup, B<>;
- # shift white space at the ends of [BI]<...> expressions outside
- # the expression.
- s/R<([^<>]*)>/$1/g;
+ 1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B</g;
+ 1 while (s/B<([^<>]*)I<([^>]+)>/B<$1>I<$2>B</g);
+ 1 while (s/I<([^<>]*)B<([^>]+)>/I<$1>B<$2>I</g);
s/[BI]<>//g;
s/([BI])<(\s+)([^>]+)>/$2$1<$3>/g;
s/([BI])<([^>]+?)(\s+)>/$1<$2>$3/g;
diff --git a/gettext.m4 b/gettext.m4
index 2c54fb8c1..6735696cb 100644
--- a/gettext.m4
+++ b/gettext.m4
@@ -24,6 +24,7 @@ AC_DEFUN([CY_WITH_NLS],
dnl If we use NLS figure out what method
if test "$USE_NLS" = "yes"; then
+ AC_DEFINE(ENABLE_NLS, 1, [Define to 1 if NLS is requested])
AC_MSG_CHECKING([whether included gettext is requested])
AC_ARG_WITH(included-gettext,
[ --with-included-gettext use the GNU gettext library included here],
@@ -39,7 +40,7 @@ AC_DEFUN([CY_WITH_NLS],
dnl catgets is only used if permitted by option --with-catgets.
nls_cv_header_intl=
nls_cv_header_libgt=
- CATOBJEXT=
+ CATOBJEXT=NONE
AC_CHECK_HEADER(libintl.h,
[AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
@@ -80,9 +81,9 @@ AC_DEFUN([CY_WITH_NLS],
dnl In the standard gettext, we would now check for catgets.
dnl However, we never want to use catgets for our releases.
- if test x"$CATOBJEXT" = x && test -d $srcdir/../intl; then
- # Neither gettext nor catgets in included in the C library.
- # Fall back on GNU gettext library (assuming it is present).
+ if test "$CATOBJEXT" = "NONE"; then
+ dnl Neither gettext nor catgets in included in the C library.
+ dnl Fall back on GNU gettext library.
nls_cv_use_gnu_gettext=yes
fi
fi
@@ -155,9 +156,6 @@ AC_DEFUN([CY_WITH_NLS],
AC_SUBST(INTLOBJS)
AC_SUBST(POFILES)
AC_SUBST(POSUB)
- if test "x$CATOBJEXT" != "x"; then
- AC_DEFINE(ENABLE_NLS, 1, [Define to 1 if NLS is requested])
- fi
])
AC_DEFUN([CY_GNU_GETTEXT],
diff --git a/include/COPYING b/include/COPYING
new file mode 100644
index 000000000..d60c31a97
--- /dev/null
+++ b/include/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/include/ChangeLog b/include/ChangeLog
new file mode 100644
index 000000000..b6c11568f
--- /dev/null
+++ b/include/ChangeLog
@@ -0,0 +1,144 @@
+2004-09-17 Paul Brook <paul@codesourcery.com>
+
+ * elf/arm.h: Remove R_ARM_STKCHK and R_ARM_THM_STKCHK.
+ Add R_ARM_TARGET2, R_ARM_PREL31, R_ARM_GOT_ABS, R_ARM_GOT_PREL,
+ R_ARM_GOT_BREL12, R_ARM_GOTOFF12 and R_ARM_GOTRELAX.
+
+2004-09-17 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_hash_entry): Move und_next into elements
+ of union.
+
+2004-09-13 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
+
+ * libiberty.h (basename): Prototype for __MINGW32__.
+
+2004-09-13 Paul Brook <paul@codesourcery.com>
+
+ * elf/arm.h: Rename RELABS to TARGET1.
+
+2004-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (ATTRIBUTE_SENTINEL): Define.
+ * libiberty.h (concat, reconcat, concat_length, concat_copy,
+ concat_copy2): Use ATTRIBUTE_SENTINEL.
+
+2004-08-13 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_callbacks): Remove "error_handler".
+ (LD_DEFINITION_IN_DISCARDED_SECTION): Delete.
+
+2004-08-02 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * libiberty.h (XDELETE, XDELETEVEC, XRESIZEVEC): Remove any
+ const-qualification before disposal.
+
+2004-07-24 Bernardo Innocenti <bernie@develer.com>
+
+ * ansidecl.h (ARG_UNUSED): New Macro.
+
+2004-07-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bin-bugs.h (REPORT_BUGS_TO): Set to
+ "<URL:http://www.sourceware.org/bugzilla/>".
+
+2004-07-21 Paolo Bonzini <bonzini@gnu.org>
+
+ * ansidecl.h (ATTRIBUTE_PURE): New.
+
+2004-07-13 Bernardo Innocenti <bernie@develer.com>
+
+ * libiberty.h (XNEW, XCNEW, XNEWVEC, XCNEWVEC, XOBNEW): Move here from
+ libcpp/internal.h.
+ (XDELETE, XRESIZEVEC, XDELETEVEC, XNEWVAR, XCNEWVAR, XRESIZEVAR): New
+ macros.
+
+2004-07-13 Bernardo Innocenti <bernie@develer.com>
+
+ * libiberty.h (ASTRDUP): Add casts required for stricter
+ type conversion rules of C++.
+ * obstack.h (obstack_free): Likewise.
+
+2004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
+
+ * dis-asm.h (print_insn_crx): Declare.
+
+2004-06-24 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_order): Update comment.
+
+2004-05-11 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Add relro, relro_start and
+ relro_end fields.
+ * elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments.
+ (PT_GNU_RELRO): Define.
+
+2004-05-04 Andreas Jaeger <aj@suse.de>
+
+ * demangle.h: Do not use C++ reserved keyword typename as
+ parameter for cplus_demangle_fill_builtin_type.
+
+2004-04-22 Richard Henderson <rth@redhat.com>
+
+ * hashtab.h (struct htab): Add size_prime_index.
+
+2004-04-13 Jeff Law <law@redhat.com>
+
+ * hashtab.h (htab_remove_elt_with_hash): Prototype new function.
+
+2004-03-30 Zack Weinberg <zack@codesourcery.com>
+
+ * hashtab.h, splay-tree.h: Use new shorter form of GTY markers.
+
+2004-03-25 Stan Shebs <shebs@apple.com>
+
+ * mpw/: Remove subdirectory and everything in it.
+
+2004-03-23 Alan Modra <amodra@bigpond.net.au>
+
+ PR 51.
+ * bfdlink.h (struct bfd_link_info): Add wrap_char.
+
+2004-03-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfdlink.h (bfd_link_info): Correct comments for the
+ unresolved_syms_in_objects field.
+
+2004-02-24 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * dyn-string.h: Update copyright date.
+
+2004-02-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * dyn-string.h: Remove test of IN_LIBGCC2 and IN_GLIBCPP_V3 and
+ the associated #defines.
+
+2004-01-12 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * demangle.h: Instead of checking ANSI_PROTOTYPES, just include
+ "libiberty.h".
+
+ * demangle.h: If ANSI_PROTOTYPES is defined, include <stddef.h>.
+
+ * demangle.h (enum demangle_component_type): Define.
+ (struct demangle_operator_info): Declare.
+ (struct demangle_builtin_type_info): Declare.
+ (struct demangle_component): Define.
+ (cplus_demangle_fill_component): Declare.
+ (cplus_demangle_fill_name): Declare.
+ (cplus_demangle_fill_builtin_type): Declare.
+ (cplus_demangle_fill_operator): Declare.
+ (cplus_demangle_fill_extended_operator): Declare.
+ (cplus_demangle_fill_ctor, cplus_demangle_fill_dtor): Declare.
+ (cplus_demangle_v3_components): Declare.
+ (cplus_demangle_print): Declare.
+
+For older changes see ChangeLog-9103
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/ChangeLog-9103 b/include/ChangeLog-9103
new file mode 100644
index 000000000..670fe38b3
--- /dev/null
+++ b/include/ChangeLog-9103
@@ -0,0 +1,2737 @@
+2003-12-19 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * include/fibheap.h (fibnode): Use __extension__ for
+ bit-fields mark and degree if __GNUC__.
+
+2003-12-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * include/fibheap.h (fibnode): Use unsigned long int for
+ bit-fields if __GNUC__ is defined.
+
+2003-12-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfdlink.h (bfd_link_info): Change relax_finalizing to
+ need_relax_finalize.
+
+2003-12-03 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_hash_entry): Rename "next" to "und_next".
+
+2003-12-02 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_info): Remove mpc860c0 field.
+
+2003-11-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * opcode/mips.h: Define new enum members, M_LCA_AB and M_DLCA_AB.
+
+2003-11-14 Nick Clifton <nickc@redhat.com>
+
+ * dis-asm.h (struct disassemble_info): Add new field
+ 'symbol_is_valid' which is a function which can tell the
+ disassembler to skip certain symbols as they should not be
+ displayed to the user.
+ (arm_symbol_is_valid): New prototype. This is the ARM
+ specific function for the symbol_is_valid field.
+ (generic_symbol_is_valid): New prototype. This is the default
+ function pointed to by the symbol_is_valid field.
+
+2003-11-06 Bruno Rohee <bruno@rohee.com>
+
+ * hp-symtab.h: Fix "the the" typo.
+
+2003-10-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfdlink.h (bfd_elf_version_expr): Add "symbol" and remove
+ "wildcard".
+
+2003-10-22 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * obstack.h: Merge the following change from gnulib:
+ 2003-10-21 Paul Eggert <eggert@twinsun.com>
+ * obstack.h (obstack_1grow_fast): Properly parenthesize arg.
+ (obstack_ptr_grow_fast, obstack_int_grow_fast):
+ Don't use lvalue casts, as GCC plans to remove support for them
+ in GCC 3.5. Reported by Joseph S. Myers. This bug
+ was also present in the non-GCC version, indicating that this
+ code had always been buggy and had never been widely used.
+ (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
+ Use the fast variant of each macro, rather than copying the
+ definiens of the fast variant; that way, we'll be more likely to
+ catch future bugs in the fast variants.
+
+2003-10-22 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_elf_version_expr): Remove match field.
+ Add wildcard and mask fields.
+ (BFD_ELF_VERSION_C_TYPE): Define.
+ (BFD_ELF_VERSION_CXX_TYPE): Likewise.
+ (BFD_ELF_VERSION_JAVA_TYPE): Likewise.
+ (struct bfd_elf_version_expr_head): New.
+ (struct bfd_elf_version_tree): Add match field.
+ Change type of globals and locals fields
+ to struct bfd_elf_version_expr_head.
+
+2003-10-14 Bob Wilson <bob.wilson@acm.org>
+
+ * elf/xtensa.h: Formatting. Fix comments about property section
+ names for linkonce sections.
+
+2003-09-22 Andrew Cagney <cagney@redhat.com>
+
+ * floatformat.h (struct floatformat): Add field "is_valid".
+
+2003-09-15 Andrew Cagney <cagney@redhat.com>
+
+ * floatformat.h (floatformat_to_double): Make input buffer constant.
+ (floatformat_from_double, floatformat_is_valid): Ditto.
+
+2003-09-15 Andrew Cagney <cagney@redhat.com>
+
+ * floatformat.h (struct floatformat): Make "exp_bias" signed.
+
+2003-09-15 Daniel Jacobowitz <drow@mvista.com>
+
+ * floatformat.h (floatformat_is_valid): Add prototype.
+
+2003-08-27 Andrew Cagney <cagney@redhat.com>
+
+ * dis-asm.h (init_disassemble_info): Declare.
+ (INIT_DISASSEMBLE_INFO): Redefine as a call to
+ init_disassemble_info.
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Ditto.
+
+2003-08-20 Nick Clifton <nickc@redhat.com>
+
+ * bfdlink.h (enum report_method): New enum. Describes how to
+ report something.
+ (struct bfd_link_info): Delete fields 'no_undefined' and
+ 'allow_shlib_undefined'. Replace with
+ 'unresolved_symbols_in_objects' and
+ 'unresolved_symbols_in_shared_libs'.
+
+2003-08-07 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h: Remove PARAMS macro. Replace PTR with void *.
+ * dis-asm.h: Likewise.
+
+2003-07-09 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-config.h: Undef all macros before defining them.
+
+2003-07-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * demangle.h: Support C++.
+
+2003-07-01 Zack Weinberg <zack@codesourcery.com>
+
+ * filenames.h: New file imported from binutils.
+
+2003-06-30 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-config.h: New file imported from binutils.
+
+2003-06-30 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-config.h (XCHAL_HAVE_CONST16, XCHAL_HAVE_ABS,
+ XCHAL_HAVE_ADDX, XCHAL_HAVE_L32R): Define.
+
+2003-06-25 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h: Correct spelling of "relocatable".
+
+2003-06-22 Zack Weinberg <zack@codesourcery.com>
+
+ * safe-ctype.h (HC_UNKNOWN, HC_ASCII, HC_EBCDIC): Rename to
+ HOST_CHARSET_UNKNOWN, HOST_CHARSET_ASCII, HOST_CHARSET_EBCDIC
+ respectively.
+
+2003-06-21 Zack Weinberg <zack@codesourcery.com>
+
+ * safe-ctype.h (HC_UNKNOWN, HC_ASCII, HC_EBCDIC, HOST_CHARSET):
+ New #defines.
+
+2003-06-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h: Delete HAVE_LONG_DOUBLE GCC bootstrap support.
+
+2003-05-23 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Add execstack and noexecstack.
+ * elf/common.h (PT_GNU_STACK): Define.
+
+2003-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfdlink.h (LD_DEFINITION_IN_DISCARDED_SECTION): New.
+
+2003-05-30 Ulrich Drepper <drepper@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Add pie and executable
+ bits.
+
+2003-05-21 Nick Clifton <nickc@redhat.com>
+
+ * bfdlink.h (struct bfd_link_hash_table): Fix typo in comment.
+
+2003-05-15 Jim Blandy <jimb@redhat.com>
+
+ * libiberty.h (hex_value): Make the value an unsigned int, to
+ avoid unexpected sign-extension when cast to unsigned types larger
+ than int --- like bfd_vma, on some platforms.
+ (_hex_value): Update declaration.
+
+2003-05-09 Alan Modra <amodra@bigpond.net.au>
+
+ * xtensa-isa-internal.h (xtensa_isa_module_struct): Remove const on
+ gen_num_opcodes_fn return type.
+
+2003-05-07 Jason Merrill <jason@redhat.com>
+
+ * hashtab.h (iterative_hash): Prototype.
+ (iterative_hash_object): New macro.
+
+2003-04-28 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_info): Add relax_finalizing.
+
+2003-04-23 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_callbacks): Add error_handler.
+
+2003-04-04 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * coff/tic4x.h: Namespace cleanup. Replace s/c4x/tic4x
+ and s/c3x/tic3x/
+ * coff/tc-tic4x.h: Ditto
+ * opcode/tic4x.h: Ditto
+
+2003-04-02 Bob Wilson <bob.wilson@acm.org>
+
+ * xtensa-config.h: Remove comment indicating that this is a
+ generated file.
+
+2003-04-01 Bob Wilson <bob.wilson@acm.org>
+
+ * dis-asm.h (print_insn_xtensa): Declare.
+ * xtensa-config.h: New file.
+ * xtensa-isa-internal.h: Likewise.
+ * xtensa-isa.h: Likewise.
+
+2003-03-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (ATTRIBUTE_NONNULL, ATTRIBUTE_NULL_PRINTF,
+ ATTRIBUTE_NULL_PRINTF_1, ATTRIBUTE_NULL_PRINTF_2,
+ ATTRIBUTE_NULL_PRINTF_3, ATTRIBUTE_NULL_PRINTF_4,
+ ATTRIBUTE_NULL_PRINTF_5): New.
+ (ATTRIBUTE_PRINTF): Add ATTRIBUTE_NONNULL.
+
+2003-03-17 Jan Hubicka <jh@suse.cz>
+
+ * hashtab.h (htab_traverse_noresize): Declare.
+
+2003-02-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h: Document return value of physmem routines.
+
+2003-02-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (physmem_total, physmem_available): Prototype.
+
+2003-02-20 Daniel Jacobowitz <drow@mvista.com>
+
+ * libiberty.h (lrealpath): Add declaration.
+
+2003-01-31 Grant Grundler <grundler@dsl2.external.hp.com>
+
+ * hppa.h (ldwa, ldda): Add ordered opcodes.
+
+2003-01-26 Daniel Jacobowitz <drow@mvista.com>
+
+ * hashtab.h (htab_alloc_with_arg, htab_free_with_arg): Add new types.
+ (struct htab): Add alloc_arg, alloc_with_arg_f, free_with_arg_f.
+ (htab_create_alloc_ex): New prototype.
+ (htab_set_functions_ex): New prototype.
+
+2003-01-25 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/sparc.h: Add TLS relocs. Move R_SPARC_REV32 to 252.
+
+2003-01-20 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * coff/tic4x.h (TICOFF_TARGET_MACHINE_GET): Fixed define bug
+ * coff/ti.h (TICOFF_TARGET_MACHINE_GET): Added macros
+
+2002-07-17 Geoffrey Keating <geoffk@redhat.com>
+
+ * splay-tree.h (GTY): Define if undefined.
+ (splay_tree_allocate_fn): Return PTR for compatibility, not void *.
+ (struct splay_tree_node_s): Support gengtype.
+ (struct splay_tree_s): Likewise. Make allocate_data a PTR,
+ not a void *.
+
+2002-01-02 Ben Elliston <bje@redhat.com>
+
+ * dis-asm.h (print_insn_iq2000): Declare.
+
+2002-12-24 Dmitry Diky <diwil@mail.ru>
+
+ * dis-asm.h: Add msp430 disassembler prototype.
+
+2002-12-27 Chris Demetriou <cgd@broadcom.com>
+
+ * dis-asm.h (print_mips_disassembler_options): Prototype.
+
+2002-12-23 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_info): Add "strip_discarded".
+
+2002-12-20 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_link_info): Replace bfd_boolean fields with
+ bit-fields. Rearrange to put all like types together.
+
+2002-11-30 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h: Replace boolean with bfd_boolean. Formatting.
+
+2002-11-23 Simon Burge <simonb@wasabisystems.com>
+
+ * libiberty.h (basename): Add NetBSD to the list.
+
+2002-11-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * libiberty.h (make_relative_prefix): Add prototype.
+
+2002-11-16 Klee Dienes <kdienes@apple.com>
+
+ * opcode/m88k.h (INSTAB): Remove 'next' field.
+ (instruction): Remove definition; replace with extern declaration
+ and mark as const.
+
+2002-11-14 Egor Duda <deo@logos-m.ru>
+
+ * bfdlink.h (struct bfd_link_info): Add new boolean
+ field pei386_runtime_pseudo_reloc.
+
+2002-10-26 Roger Sayle <roger@eyesopen.com>
+
+ * partition.h: Close the extern "C" scope when compiling with C++.
+
+2002-10-26 Roger Sayle <roger@eyesopen.com>
+ DJ Delorie <dj@redhat.com>
+
+ PR bootstrap/8351
+ * getopt.h: Avoid prototyping getopt with no arguments in C++.
+
+2002-10-24 Nathan Tallent <eraxxon@alumni.rice.edu>
+
+ * ansidecl.h (__STDC__): Add (__alpha && __cplusplus) to the
+ list of platform compilers that may look, smell and act
+ like __STDC__ but that may not define it.
+
+2002-10-11 David O'Brien <obrien@FreeBSD.org>
+
+ * getopt.h: getopt is in unistd.h (based on SUSv2).
+
+2002-09-26 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/x86-64.h: Add TLS relocs.
+
+2002-09-26 Andrew Cagney <ac131313@redhat.com>
+
+ * regs/: Delete directory.
+
+2002-09-19 Alexandre Oliva <aoliva@redhat.com>
+
+ * libiberty.h (asprintf, vasprintf): Don't declare them if the
+ corresponding HAVE_DECL_ macro is 1.
+
+2002-09-19 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/i386.h (R_386_TLS_TPOFF, R_386_TLS_IE, R_386_TLS_GOTIE):
+ Define.
+
+2002-09-19 Nathan Tallent <eraxxon@alumni.rice.edu>
+
+ * dis-asm.h: Remove (errant) trailing semicolon (;) from the
+ extern "C" { } declaration.
+
+2002-09-04 Nick Clifton <nickc@redhat.com>
+
+ * dis-asm.h (print_ppc_disassembler_options): Prototype.
+
+2002-08-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * coff/internal.h: Add new relocation types.
+ * coff/ti.h: Add file-header flags for tic4x code.
+ * dis-asm.h: Add standard disassembler for tic4x.
+ * opcode/tic4x.h: New file.
+ * coff/tic4x.h: New file
+
+2002-08-07 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_info): Add allow_undefined_version.
+ (bfd_elf_version_expr): Add symver and script.
+
+2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au>
+
+ * bfdlink.h (bfd_link_common_skip_ar_symbols): New enum.
+ (struct bfd_link_info): Add new field 'common_skip_ar_symbols'.
+
+2002-07-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * opcode/mips.h (CPU_R2000): Remove.
+
+2002-07-19 Denis Chertykov <denisc@overta.ru>
+ Matthew Green <mrg@redhat.com>
+
+ * dis-asm.h (print_insn_ip2k): Declare.
+
+2002-07-10 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/common.h (SHT_GNU_LIBLIST, DT_GNU_PRELINKED,
+ DT_GNU_CONFLICT*, DT_GNU_LIBLIST*): Define.
+
+2002-07-01 Alan Modra <amodra@bigpond.net.au>
+
+ * bfdlink.h (struct bfd_sym_chain): Declare.
+ (struct bfd_link_info): Add gc_sym_list. Formatting fixes.
+
+2002-06-25 Alan Modra <amodra@bigpond.net.au>
+
+ * demangle.h: #include "ansidecl.h" rather than #include <ansidecl.h>.
+ * fibheap.h: Likewise.
+ * hashtab.h: Likewise.
+ * partition.h: Likewise.
+ * sort.h: Likewise.
+ * splay-tree.h: Likewise.
+
+2002-06-24 Alan Modra <amodra@bigpond.net.au>
+
+ * libiberty.h (basename): Don't declare if HAVE_DECL_BASENAME.
+ * getopt.h (getopt): Don't declare if HAVE_DECL_GETOPT.
+
+2002-06-18 Dave Brolley <brolley@redhat.com>
+
+ From Catherine Moore:
+ * dis-asm.h (print_insn_frv): New prototype.
+
+2002-06-09 Andrew Cagney <cagney@redhat.com>
+
+ * remote-sim.h: Move to directory gdb/.
+ * callback.h: Move to directory gdb/.
+
+2002-06-07 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * bfdlink.h (struct bfd_link_info): Change type of
+ pei386_auto_import field to int so that -1 can mean enabled by
+ default and 1 can mean enabled by command line switch.
+
+2002-06-06 DJ Delorie <dj@redhat.com>
+
+ * hashtab.h (htab): Rearrange new members for backward
+ compatibility.
+ (htab_create): Don't use a macro that requires other headers.
+
+2002-06-05 Geoffrey Keating <geoffk@redhat.com>
+
+ * hashtab.h (htab_create): Restore prototype for backward
+ compatibility.
+ (htab_try_create): Likewise.
+
+2002-05-22 Geoffrey Keating <geoffk@redhat.com>
+
+ * hashtab.h (struct htab): Update for change to length specifier.
+
+2002-05-10 Geoffrey Keating <geoffk@redhat.com>
+
+ * hashtab.h (GTY): Define if undefined.
+ (htab_alloc): New typedef.
+ (htab_free): New typedef.
+ (struct htab): Support gengtype; allow user-specified memory
+ allocation.
+ (htab_create_alloc): New.
+ (htab_create): Replace with #define.
+ (htab_try_create): Delete.
+
+2002-05-31 Michal Ludvig <mludvig@suse.cz>
+
+ * elf/dwarf2.h (DW_CFA_low_user, DW_CFA_high_user): Renamed
+ to DW_CFA_lo_user, DW_CFA_hi_user respectively.
+
+2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
+
+ * dis-asm.h: Prototype print_insn_dlx.
+
+2002-05-23 Andrew Cagney <ac131313@redhat.com>
+
+ * sim-d10v.h: Delete file. Moved to include/gdb/.
+
+2002-05-23 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/common.h (PT_TLS, SHF_TLS, STT_TLS, DF_STATIC_TLS): Define.
+ * elf/ia64.h (R_IA64_LTOFF_TPREL22): Renamed from R_IA64_LTOFF_TP22.
+ * elf/i386.h: Add TLS relocs.
+
+2002-05-21 H.J. Lu (hjl@gnu.org)
+
+ * bfdlink.h (bfd_link_info): Add allow_multiple_definition.
+
+2002-05-17 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * dis-asm.h (print_insn_shl, print_insn_sh64l): Remove prototype.
+
+2002-04-16 David S. Miller <davem@redhat.com>
+
+ * xregex2.h (__restrict_arr): Define to __restrict on GCC
+ 3.1 and later. Do not redefine.
+
+2002-04-01 Phil Edwards <pme@gcc.gnu.org>
+
+ * dyn-string.h: Also allow IN_GLIBCPP_V3 to redefine names.
+
+2002-03-10 Daniel Jacobowitz <drow@mvista.com>
+
+ * gdb: New directory.
+
+2002-03-06 Andrew Cagney <ac131313@redhat.com>
+
+ * floatformat.h (floatformat_arm_ext): Delete declaration.
+
+2002-02-21 Jim Blandy <jimb@redhat.com>
+
+ Allow the user to specify functions for allocating memory for
+ splay tree roots and nodes.
+ * splay-tree.h (splay_tree_allocate_fn, splay_tree_deallocate_fn):
+ New types.
+ (splay_tree): New fields: `allocate', `deallocate', and
+ `allocate_data'.
+ (splay_tree_new_with_allocator): New function declaration.
+
+2002-02-15 Alan Modra <amodra@bigpond.net.au>
+
+ Support arbitrary length fill patterns.
+ * bfdlink.h (enum bfd_link_order_type): Remove bfd_fill_link_order.
+ (struct bfd_link_order): Remove fill. Add data.size.
+
+2002-02-08 Alexandre Oliva <aoliva@redhat.com>
+
+ Contribute sh64-elf.
+ 2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com>
+ * dis-asm.h (print_insn_sh64): New prototype.
+ (print_insn_sh64l): New prototype.
+ (print_insn_sh64x_media): New prototype.
+
+2002-02-05 Frank Ch. Eigler <fche@redhat.com>
+
+ * dis-asm.h (disassemble_info): New field `insn_sets'.
+ (INIT_DISASSEMBLE_INFO): Clear it.
+
+2002-02-05 Jason Merrill <jason@redhat.com>
+
+ * demangle.h (cplus_demangle_v3): Add "options" parm.
+ (cplus_demangle_v3_type): Remove prototype.
+ (DMGL_VERBOSE): New macro.
+ (DMGL_TYPES): New macro.
+
+2002-02-02 H.J. Lu (hjl@gnu.org)
+
+ * demangle.h (cplus_demangle_v3_type): New prototype.
+
+2002-01-31 Ivan Guzvinec <ivang@opencores.org>
+
+ * dis-asm.h : Add support for or32 targets
+
+2002-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (C_alloca): Add ATTRIBUTE_MALLOC.
+
+2002-01-27 David O'Brien <obrien@FreeBSD.org>
+
+ * cgen.h (BFD_VERSION): Use BFD_VERSION_DATE instead.
+
+2001-12-14 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * dis-asm.h (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialise the
+ disassembler_options field (to NULL).
+
+2001-12-13 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Add eh_frame_hdr field.
+
+2001-12-07 Geoffrey Keating <geoffk@redhat.com>
+
+ * dis-asm.h (print_insn_xstormy16): Declare.
+
+2001-12-06 Richard Henderson <rth@redhat.com>
+
+ * demangle.h (no_demangling): New.
+ (NO_DEMANGLING_STYLE_STRING): New.
+
+2001-11-14 Alan Modra <amodra@bigpond.net.au>
+
+ * dis-asm.h (print_insn_i386): Declare.
+
+2001-11-11 Timothy Wall <twall@alum.mit.edu>
+
+ * dis-asm.h: Fix comment to refer to octets rather than bytes.
+
+2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * dis-asm.h (print_insn_mmix): Add prototype.
+
+2001-10-24 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * safe-ctype.h (_sch_isbasic, IS_ISOBASIC): New.
+
+2001-10-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (hex_init): Revert delete.
+
+ * libiberty.h (_hex_value): Const-ify.
+ (hex_init): Delete.
+
+2001-10-16 Christopher Faylor <cgf@redhat.com>
+
+ * filenames.h: Add cygwin to the list of dosish style path systems.
+
+2001-10-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * demangle.h (demangler_engine): Const-ify.
+ * libiberty.h (buildargv): Likewise.
+
+2001-10-03 Vassili Karpov <malc@pulsesoft.com>
+
+ * bfdlink.h (struct bfd_link_info): Add nocopyreloc field.
+
+2001-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (reconcat): New function.
+
+2001-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (concat, concat_length, concat_copy, concat_copy2,
+ ACONCAT): Improve comments.
+
+2001-09-18 Alan Modra <amodra@bigpond.net.au>
+
+ * objalloc.h (OBJALLOC_ALIGN): Define using offsetof.
+
+2001-09-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (concat_length, concat_copy, concat_copy2,
+ libiberty_concat_ptr, ACONCAT): New.
+
+ * libiberty.h (ASTRDUP): New macro.
+ libiberty_optr, libiberty_nptr, libiberty_len): Declare.
+
+2001-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h: Update comments reflecting previous change.
+
+2001-08-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (VA_OPEN, VA_CLOSE): Allow multiple uses.
+
+2001-08-25 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Change 'spare_dynamic_tags' to
+ unsigned to remove a compile time warning message.
+
+2001-08-24 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_hash_table_type): New. The linker hash
+ table type, bfd_link_generic_hash_table and
+ bfd_link_elf_hash_table.
+ (bfd_link_hash_table): Add a new field, type, for the linker
+ hash table type.
+
+2001-08-23 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (struct bfd_link_info): Add combreloc and
+ spare_dynamic_tags fields.
+
+2001-08-23 Lars Brinkhoff <lars@nocrew.org>
+
+ * dyn-string.h, fibheap.h, partition.h, sort.h, splay-tree.h:
+ replace "GNU CC" with "GCC".
+
+2001-08-21 Richard Henderson <rth@redhat.com>
+
+ * fibheap.h: Tidy formatting.
+ (fibnode_t): Limit degree to 31 bits to avoid warning.
+
+2001-08-20 Daniel Berlin <dan@cgsoftware.com>
+
+ * fibheap.h: New file. Fibonacci heap.
+
+2001-08-20 Andrew Cagney <ac131313@redhat.com>
+
+ * floatformat.h (floatformat_arm_ext): Document as deprecated.
+ (floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword)
+ (floatformat_ia64_spill_little, floatformat_ia64_quad_little)
+ (floatformat_ia64_spill_big, floatformat_ia64_quad_big)
+ (floatformat_m88110_harris_ext): Declare.
+
+2001-08-18 Zack Weinberg <zackw@panix.com>
+
+ * ansidecl.h: Reorganize for readability, remove documentation
+ of obsolete macros, document PARAMS and VPARAMS. Add new
+ macros VA_OPEN, VA_CLOSE, and VA_FIXEDARG for nicer variadic
+ function implementation.
+
+2001-08-16 Richard Henderson <rth@redhat.com>
+
+ * hashtab.h (htab_hash_string): Declare.
+
+2001-08-10 Andrew Cagney <ac131313@redhat.com>
+
+ * libiberty.h (lbasename): Change function declaration to return a
+ const char pointer.
+
+2001-08-02 Mark Kettenis <kettenis@gnu.org>
+
+ * xregex.h (_REGEX_RE_COMP): Define.
+ (re_comp): Define to xre_comp.
+ (re_exec): Define to xre_exec.
+
+2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * bfdlink.h (struct bfd_link_info): add new boolean
+ field pei386_auto_import.
+
+2001-07-18 Andreas Jaeger <aj@suse.de>
+
+ * xregex2.h: Place under LGPL version 2.1.
+
+2001-07-10 Jeff Johnston <jjohnstn@redhat.com>
+
+ * xregex.h: New file to support libiberty regex.
+ * xregex2.h: Ditto.
+
+2001-06-15 Hans-Peter Nilsson <hp@axis.com>
+
+ * bfdlink.h (struct bfd_link_info): New member export_dynamic.
+
+2001-05-16 Matt Kraai <kraai@alumni.carnegiemellon.edu>
+
+ * partition.h: Fix misspelling of `implementation'.
+
+2001-05-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (NULL_PTR): Delete.
+
+2001-05-07 Zack Weinberg <zackw@stanford.edu>
+
+ * demangle.h: Use PARAMS for all prototypes.
+ * ternary.h: Use PARAMS for all prototypes. Use PTR, not void *.
+ Make arguments constant where possible.
+
+2001-05-07 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (splay_tree_max): New function.
+ (splay_tree_min): Likewise.
+
+2001-04-27 Johan Rydberg <jrydberg@opencores.org>
+
+ * dis-asm.h (print_insn_openrisc): Add prototype.
+
+2001-04-15 Daniel Berlin <dan@cgsoftware.com>
+
+ * ternary.h: New file - Ternary search tree header.
+
+2001-04-13 Jakub Jelinek <jakub@redhat.com>
+
+ * bfdlink.h (bfd_link_discard): Add discard_sec_merge.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * ansidecl.h: All logic from gcc/gansidecl.h moved here.
+
+2001-03-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (alloca): Handle setting C_ALLOCA.
+
+2001-03-20 Jim Blandy <jimb@redhat.com>
+
+ * demangle.h (enum gnu_v3_constructor_kinds,
+ is_gnu_v3_mangled_ctor, enum gnu_v3_destructor_kinds,
+ is_gnu_v3_mangled_dtor): New declarations.
+
+2001-03-14 Nick Clifton <nickc@redhat.com>
+
+ * ansidecl.h: Fix copyright dates.
+ * demangle.h: Fix copyright dates.
+ * floatformat.h: Fix copyright dates.
+ * fnmatch.h: Fix copyright dates.
+ * getopt.h: Fix copyright dates.
+ * libiberty.h: Add FSF copyright notice.
+ * md5.h: Fix copyright dates.
+ * obstack.h: Fix copyright dates.
+ * splay-tree.h: Fix copyright dates.
+
+2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
+ John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * libiberty.h: Add lbasename.
+
+2001-03-06 Zack Weinberg <zackw@stanford.edu>
+
+ * libiberty.h: Prototype C_alloca; define alloca to either
+ __builtin_alloca or C_alloca as appropriate.
+
+2001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * safe-ctype.h (_sch_test): Cast enum bit to unsigned short int for pcc
+ compatibility.
+
+2001-02-18 lars brinkhoff <lars@nocrew.org>
+
+ * dis-asm.h: Add PDP-11 target.
+
+2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * dis-asm.h: Add linux target for S/390.
+
+2001-01-11 Peter Targett <peter.targett@arccores.com>
+
+ * dis-asm.h (arc_get_disassembler): Correct declaration.
+
+2001-01-09 Philip Blundell <philb@gnu.org>
+
+ * bin-bugs.h (REPORT_BUGS_TO): Set to `bug-binutils@gnu.org'.
+
+2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * COPYING: Update to current
+ ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
+ to 19yy as example year in copyright notice).
+
+2000-12-19 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * dis-asm.h (struct disassemble_info): New member "section".
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize private_data member.
+ Initialize section member.
+
+2000-12-16 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * safe-ctype.h: Make code work on all targets and not just on
+ targets where a char is 8 bits.
+
+2000-12-10 Fred Fish <fnf@be.com>
+
+ * bfdlink.h (struct bfd_link_info): Add new allow_shlib_undefined
+ member to struct for systems where it is normal to have undefined
+ symbols in shared libraries at runtime and the runtime linker
+ takes care of redirecting them.
+
+2000-12-07 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * safe-ctype.h: New file.
+
+2000-12-06 Rodney Brown <RodneyBrown@mynd.com>
+
+ * getopt.h obstack.h: Standarize copyright statement.
+
+2000-12-04 Richard Henderson <rth@redhat.com>
+
+ * demangle.h: Change "new_abi" to "v3" everywhere.
+
+2000-11-22 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * libiberty.h: Move #includes to top. Prototype xmalloc_failed.
+
+2000-11-15 Kenneth Block <kenneth.block@compaq.com>
+
+ * demangle.h: Add gnat and java demangle styles.
+
+2000-11-04 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * hashtab.h (struct htab): Add member return_allocation_failure.
+ (htab_try_create): New prototype. Mention which functions may
+ return NULL when this is used.
+
+2000-11-03 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * hashtab.h: Change void * to PTR where necessary.
+
+2000-10-11 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (splay_tree_predecessor): Declare.
+
+2000-09-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * dis-asm.h: Declare cris_get_disassembler, not print_insn_cris.
+ Fix typo in comment.
+
+2000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * alloca-conf.h: New file (copied from libiberty).
+
+2000-09-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * md5.h (md5_uint32): Choose via INT_MAX instead of UINT_MAX.
+
+2000-09-04 Alex Samuel <samuel@codesourcery.com>
+
+ * dyn-string.h: Adjust formatting.
+ (dyn_string_insert_char): New macro. New declaration.
+
+2000-08-28 Jason Merrill <jason@redhat.com>
+
+ * md5.h: New file.
+
+2000-08-24 Greg McGary <greg@mcgary.org>
+
+ * libiberty.h (ARRAY_SIZE): New macro.
+
+2000-07-29 Nick Clifton <nickc@cygnus.com>
+
+ * os9k.h: Add copyright notice.
+ Fix formatting.
+
+2000-07-22 Jason Eckhardt <jle@cygnus.com>
+
+ * dis-asm.h (print_insn_i860): Add prototype.
+
+2000-07-20 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_info): Add new_dtags.
+
+2000-07-20 Hans-Peter Nilsson <hp@axis.com>
+
+ * dis-asm.h (print_insn_cris): Declare.
+
+2000-07-19 H.J. Lu (hjl@gnu.org)
+
+ * bfdlink.h (bfd_link_info): Add flags and flags_1.
+
+2000-06-05 DJ Delorie <dj@redhat.com>
+
+ * MAINTAINERS: new
+
+2000-06-21 Alex Samuel <samuel@codesourcery.com>
+
+ * dyn-string.h (dyn_string_init, dyn_string_new,
+ dyn_string_delete, dyn_string_release, dyn_string_resize,
+ dyn_string_clear, dyn_string_copy, dyn_string_copy_cstr,
+ dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert,
+ dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr,
+ dyn_string_append_char, dyn_string_substring_dyn_string_eq):
+ Define as same name with __cxa_ prepended, if IN_LIBGCC2.
+ (dyn_string_init, dyn_string_copy, dyn_string_copy_cstr,
+ dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert,
+ dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr,
+ dyn_string_append_char, dyn_string_substring): Change return type
+ to int.
+
+2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * dis-asm.h (print_insn_m68hc12): Define.
+ (print_insn_m68hc11): Likewise.
+
+2000-06-18 Nick Clifton <nickc@redhat.com>
+
+ * os9k.h: Change values of MODSYNC and CRCCON due to bug report
+ from Russ Magee <rmagee@home.com>.
+
+2000-06-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * demangle.h (demangling_styles): Remove trailing comma in enum.
+
+ * dyn-string.h (dyn_string_append_char): Change parameter from
+ char to int.
+
+2000-06-04 Alex Samuel <samuel@codesourcery.com>
+
+ * dyn-string.h: Move here from gcc/dyn-string.h. Add new functions.
+
+ * demangle.h (DMGL_GNU_NEW_ABI): New macro.
+ (DMGL_STYLE_MASK): Or in DMGL_GNU_NEW_ABI.
+ (current_demangling_style): Add gnu_new_abi_demangling.
+ (GNU_NEW_ABI_DEMANGLING_STYLE_STRING): New macro.
+ (GNU_NEW_ABI_DEMANGLING): Likewise.
+ (cplus_demangle_new_abi): New declaration.
+
+Tue May 30 16:53:34 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * floatformat.h (struct floatformat): Add field name.
+
+2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * filenames.h: New file.
+ (HAVE_DOS_BASED_FILE_SYSTEM, IS_DIR_SEPARATOR)
+ (IS_ABSOLUTE_PATH, FILENAME_CMP): New macros.
+
+2000-05-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * getopt.h (getopt): Also check HAVE_DECL_* when prototyping.
+
+ * libiberty.h (basename): Likewise.
+
+2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
+ Rick Gorton <gorton@scrugs.lkg.dec.com>
+
+ * bfdlink.h (struct bfd_link_info): Add emitrelocations flag.
+
+2000-05-08 Alan Modra <alan@linuxcare.com.au>
+
+ * dis-asm.h (print_insn_tic54x): Declare.
+
+2000-05-06 Zack Weinberg <zack@wolery.cumb.org>
+
+ * ansidecl.h: #define __extension__ to nothing if
+ GCC_VERSION < 2008.
+
+2000-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * demangle.h (demangler_engine): Constify.
+
+Thu May 4 17:15:26 2000 Philippe De Muyter <phdm@macqel.be>
+
+ * sort.h (sys/types.h): File included unconditionnaly.
+ (stddef.h): File include only #ifdef __STDC__.
+
+2000-05-03 Zack Weinberg <zack@wolery.cumb.org>
+
+ * symcat.h: Remove #endif label.
+
+2000-04-28 Kenneth Block <block@zk3.dec.com>
+ Jason Merrill <jason@casey.cygnus.com>
+
+ * demangle.h (libiberty_demanglers): new table for different styles.
+ (cplus_demangle_set_style): New function for setting style.
+ (cplus_demangle_name_to_style): New function to translate name.
+
+2000-04-24 Mark Mitchell <mark@codesourcery.com>
+
+ * hashtab.h (hash_pointer): Declare.
+ (eq_pointer): Likewise.
+
+2000-04-23 Mark Mitchell <mark@codesourcery.com>
+
+ * sort.h: New file.
+
+Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
+ David Mosberger <davidm@hpl.hp.com>
+
+ * dis-asm.h (print_insn_ia64): Declare.
+
+Tue Apr 18 16:22:30 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * hashtab.h (enum insert_option): New type.
+ (htab_find_slot, htab_find_slot_with_hash): Use it.
+
+2000-04-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * symcat.h: Honor autoconf macro HAVE_STRINGIZE. Add
+ comments/caveats with regard to traditional C behavior.
+
+2000-04-05 Richard Henderson <rth@cygnus.com>
+
+ * splay-tree.h (splay_tree_remove): Declare.
+
+2000-04-04 Alan Modra <alan@linuxcare.com.au>
+
+ * bin-bugs.h (REPORT_BUGS_TO): Remove translated part.
+
+2000-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * bin-bugs.h: New file.
+
+2000-03-30 Mark Mitchell <mark@codesourcery.com>
+
+ * hashtab.h (hashval_t): New type.
+ (htab_find_with_hash): Use it as an argument.
+ (htab_find_slot_with_hash): Likewise.
+
+2000-03-27 Denis Chertykov <denisc@overta.ru>
+
+ * dis-asm.h (print_insn_avr): Declare.
+
+2000-03-14 Bernd Schmidt <bernds@cygnus.co.uk>
+
+ * hashtab.h (htab_trav): Modify type so that first arg is of type
+ void **.
+ (htab_find_with_hash, htab_find_slot_with_hash): Declare new
+ functions.
+
+2000-03-09 Alex Samuel <samuel@codesourcery.com>
+
+ * partition.h: New file.
+
+2000-03-09 Zack Weinberg <zack@wolery.cumb.org>
+
+ * hashtab.h (struct htab): Add del_f.
+ (htab_del): New type.
+ (htab_create): Add fourth argument.
+
+2000-03-08 Zack Weinberg <zack@wolery.cumb.org>
+
+ * hashtab.h (hash_table_t): Rename to htab_t.
+ (struct hash_table): Rename to struct htab. Shorten element
+ names. Reorder elements by size.
+ (htab_hash, htab_eq, htab_trav): New typedefs for the callback
+ function pointers.
+ (hash_table_entry_t): Discard; just use void * for element
+ type.
+
+2000-03-01 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_callbacks): Add a boolean arg to
+ the undefined_symbol callback.
+
+2000-02-23 Linas Vepstas <linas@linas.org>
+
+ * dis-asm.h (print_insn_i370): Declare.
+
+Tue Feb 22 15:19:54 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_trace): Document return values.
+ (sim_set_trace): Declare. Deprecate.
+
+2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * dis-asm.h (struct disassemble_info): Change `length' param of
+ read_memory_func to unsigned. Change type of `buffer_length' and
+ `octets_per_byte' to unsigned.
+ (buffer_read_memory): Change `length' param to unsigned.
+
+2000-02-16 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h: Add prototypes for ARM register name functions.
+
+Wed Feb 9 18:45:49 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * wait.h: Delete. No longer used by GDB.
+
+Tue Feb 8 17:01:13 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_resume): Clarify use of SIGGNAL.
+ (sim_stop_reason): Clarify meaning of sim_signalled.
+
+2000-02-03 Timothy Wall <twall@redhat.com>
+
+ * dis-asm.h (struct disassemble_info): Added octets_per_byte
+ field and initialize it to one (1).
+
+2000-01-27 Nick Clifton <nickc@redhat.com>
+
+ * dis-asm.h: Add prototype for disassembler_usage().
+ Add prototype for arm_disassembler_options().
+ Remove prototype for arm_toggle_regnames().
+ Add prototype for parse_arm_disassembler_option().
+
+Sat Jan 1 19:06:52 2000 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * symcat.h (STRINGX) [!__STDC__ || ALMOST_STDC]: Change "?" to "s"
+ to stringify argument s.
+
+Wed Dec 15 11:22:56 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hp-symtab.h (HP_LANGUAGE_FORTRAN): New enumeration constant.
+ (HP_LANGUAGE_F77): Define using HP_LANGUAGE_FORTRAN.
+
+1999-12-15 Doug Evans <dje@transmeta.com>
+
+ * dis-asm.h: Enclose in extern "C" ifdef __cplusplus.
+
+1999-12-05 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (struct splay_tree_node): Rename to ...
+ (struct splay_tree_node_s): ... this.
+ (struct splay_tree): Rename to ...
+ (struct splay_tree_s): ... this.
+
+1999-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (ATTRIBUTE_MALLOC): New macro.
+
+ * libiberty.h (buildargv, dupargv, concat, choose_temp_base,
+ make_temp_file, xmalloc, xcalloc, xstrdup, xmemdup): Add
+ ATTRIBUTE_MALLOC.
+ (xatexit): Remove __GNUC__ check, add ATTRIBUTE_NORETURN.
+
+1999-11-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined.
+ (asprintf, vasprintf): Provide declarations.
+
+Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h: Define and test `GCC_VERSION', not `HAVE_GCC_VERSION'.
+
+1999-11-04 Jimmy Guo <guo@cup.hp.com>
+
+ * hp-symtab.h (dntt_type_fparam): Add doc_ranges, misc_kind
+ fields, change location type to CORE_ADDR from int.
+ (dntt_type_const): Name the 5th field location_type.
+
+Sun Oct 24 19:11:32 1999 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-d10v.h (SIM_D10V_TS2_DMAP_REGNUM): Define.
+
+1999-10-23 08:51 -0700 Zack Weinberg <zack@bitmover.com>
+
+ * hashtab.h: Give hash_table_t a struct tag. Add prototypes
+ for clear_hash_table_slot and traverse_hash_table. Correct
+ prototype of all_hash_table_collisions.
+
+Sat Oct 23 19:00:13 1999 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-d10v.h: New file.
+
+Fri Oct 15 01:47:51 1999 Vladimir Makarov <vmakarov@loony.cygnus.com>
+
+ * hashtab.h: New file.
+
+1999-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h (HAVE_GCC_VERSION): New macro. Use it instead of
+ explicitly testing __GNUC__ and __GNUC_MINOR__.
+
+ (ATTRIBUTE_PRINTF): Use `__format__', not `format'.
+
+1999-09-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (make_temp_file): Add a prototype.
+
+Tue Sep 14 00:35:02 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * libiberty.h (basename): OpenBSD has a correct prototype.
+ (xrealloc): Remove outdated comment.
+
+1999-09-07 Jeff Garzik <jgarzik@pobox.com>
+
+ * libiberty.h (xmemdup): Add prototype for new function.
+
+1999-09-04 Steve Chamberlain <sac@pobox.com>
+
+ * dis-asm.h (print_insn_pj): Declare.
+
+1999-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * obstack.h (obstack_grow, obstack_grow0): Move (char*) casts
+ in calls to `_obstack_memcpy' from here ...
+
+ (_obstack_memcpy): ... to here, except in the __STDC__ case which
+ doesn't need it.
+
+1999-08-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h (getpwd): Prototype.
+
+1999-08-01 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (splay_tree_insert): Return the new node.
+
+1999-07-11 Ian Lance Taylor <ian@zembu.com>
+
+ * ansidecl.h: Copy attribute support macros from egcs.
+
+1999-06-22 Mark Mitchell <mark@codesourcery.com>
+
+ * bfdlink.h (struct bfd_link_hash_entry): Add init_function and
+ fini_function.
+
+1999-06-20 Mark Mitchell <mark@codesourcery.com>
+
+ * mips.h (Elf32_Internal_Msym): New structure.
+ (Elf32_External_Msym): Likewise.
+ (ELF32_MS_REL_INDEX): New macro.
+ (ELF32_MS_FLAGS): Likewise.
+ (ELF32_MS_INFO): Likewise.
+
+1999-06-14 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h (arm_toggle_regnames): New prototype.
+ (struct diassemble_info): New field: disassembler_options.
+
+1999-04-11 Richard Henderson <rth@cygnus.com>
+
+ * bfdlink.h (bfd_elf_version_expr): Rename `match' to `pattern'.
+ Add `match' callback function.
+
+1999-04-10 Richard Henderson <rth@cygnus.com>
+
+ * bfdlink.h (bfd_link_info): Add no_undefined.
+
+1999-04-08 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h: Add prototype for print_insn_mcore.
+
+1999-04-02 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (splay_tree_compare_pointers): Declare.
+
+1999-03-30 Mark Mitchell <mark@codesourcery.com>
+
+ * splay-tree.h (splay_tree_compare_ints): Declare.
+
+Wed Mar 24 12:46:29 1999 Andrew Cagney <cagney@amy.cygnus.com>
+
+ * libiberty.h (basename): Cygwin{,32} should have the prototype.
+
+1999-02-22 Jim Lemke <jlemke@cygnus.com>
+
+ * bfdlink.h (bfd_link_info): add field "mpc860c0".
+
+Mon Feb 1 21:05:46 1999 Catherine Moore <clm@cygnus.com>
+
+ * dis-asm.h (print_insn_i386_att): Declare.
+ (print_insn_i386_intel): Declare.
+
+1998-12-30 Michael Meissner <meissner@cygnus.com>
+
+ * dis-asm.h (INIT_DISASSEMBLE_INFO_NO_ARCH): Cast STREAM and
+ FPRINTF_FUNC to avoid compiler warnings.
+
+Wed Dec 30 16:07:14 1998 David Taylor <taylor@texas.cygnus.com>
+
+ * dis-asm.h: change void * to PTR (two places).
+
+Mon Dec 14 09:53:31 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * demangle.h: Don't check IN_GCC anymore.
+ * splay-tree.h: Likewise.
+
+Tue Dec 8 00:30:31 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
+
+ The following changes were made by Elena Zannoni
+ <ezannoni@kwikemart.cygnus.com> and Edith Epstein
+ <eepstein@sophia.cygnus.com> as part of a project to merge in
+ changes made by HP; HP did not create ChangeLog entries.
+
+ * dis-asm.h (struct disassemble_info): change the type of stream
+ from FILE* to void*, for use with gdb's new type GDB_FILE.
+ (fprintf_ftype): change FILE* parameter type to void*.
+
+ * demangle.h: (DMGL_EDG): new macro for Kuck and Associates
+ (DMGL_STYLE_MASK): modify to include Kuck and Assoc style
+ (demangling_styles): add new edg_demangling style
+ (EDG_DEMANGLING_STYLE_STRING): new macro
+ (EDG_DEMANGLING): new macro
+ (DMGL_HP): new macro, for HP/aCC compiler.
+ (DMGL_STYLE_MASK): modify to include new HP's style.
+ (demangling_styles): add new hp_demangling value.
+ (HP_DEMANGLING_STYLE_STRING): new macro.
+ (ARM_DEMANGLING): coerce to int.
+ (HP_DEMANGLING): new macro.
+
+ * hp-symtab.h: rewritten, from HP.
+ (quick_procedure): change type of language field to unsigned int
+ (quick_module): change type of language field to unsigned int
+ (struct dntt_type_svar): add field thread_specific.
+ (hp_language): add languages modcal and dmpascal.
+
+Fri Nov 20 13:14:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * libiberty.h (basename): Add prototype for FreeBSD.
+
+Fri Nov 13 19:19:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libiberty.h: Prototype xcalloc.
+
+Sun Nov 8 17:42:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h: Wrap problematic macros with !IN_GCC.
+
+ * demangle.h: Never define PARAMS().
+ * splay-tree.h: Likewise.
+
+Sat Nov 7 18:30:20 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de>
+
+ * dis-asm.h (print_insn_vax): Declare.
+
+Sat Nov 7 16:04:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * demangle.h: Don't include gansidecl.h.
+ * splay-tree.h: Likewise.
+
+1998-10-26 16:03 Ulrich Drepper <drepper@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Add new field optimize.
+
+Thu Oct 22 19:58:00 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * splay-tree.h: Wrap function pointer parameter declarations in
+ PARAMS() macro.
+
+1998-10-21 Mark Mitchell <mark@markmitchell.com>
+
+ * splay-tree.h: New file.
+
+Fri Oct 9 00:02:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Merge devo and egcs include directories.
+
+Sat Sep 5 12:16:33 1998 Jeffrey A Law (law@cygnus.com)
+
+ * getopt.h, obstack.h: Updated from gcc.
+
+1998-08-03 Jason Molenda (jsm@bugshack.cygnus.com)
+
+ * libiberty.h (xexit): Change decl to use modern GCC attribute
+ to indicate exit does not return.
+
+Mon Jun 1 13:48:32 1998 Jason Molenda (crash@bugshack.cygnus.com)
+
+ * obstack.h: Update to latest FSF version.
+
+Tue Feb 24 13:05:02 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * dis-asm.h (disassemble_info): Member `symbol' renamed to `symbols'
+ and made an "asymbol **". New member num_symbols.
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Update.
+
+Tue Feb 17 12:32:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_fetch_register, sim_store_register): Add
+ register length parameter. Functions return actual length of
+ register.
+
+Thu Feb 12 16:29:01 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * getopt.h: Update to latest FSF version.
+
+Wed Feb 11 16:56:06 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * symcat.h: New file.
+
+Mon Feb 2 17:13:31 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
+
+ * dis-asm.h (print_insn_tic30): Declare.
+
+Thu Jan 22 16:23:59 1998 Fred Fish <fnf@cygnus.com>
+
+ * dis-asm.h: Add flag INSN_HAS_RELOC to tell disassembly
+ function there is a reloc on this line.
+
+Mon Dec 8 11:22:23 1997 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h: Remove prototype of disasm_symaddr() as this function
+ no longer exists.
+
+Tue Dec 2 10:20:53 1997 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h (disasm_symaddr): New prototype.
+
+Mon Dec 1 11:29:35 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * callback.h (CB_SYSCALL): Comment out arg names in prototypes.
+
+Wed Nov 26 16:47:58 1997 Michael Meissner <meissner@cygnus.com>
+
+ * callback.h (CB_SYSCALL): Consistantly use names for prototype
+ arguments.
+
+Wed Nov 26 11:39:30 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * callback.h (CB_SYSCALL): Change byte count arguments to
+ {read,write}_mem to `int'. New member `magic'.
+ (CB_SYSCALL_MAGIC,CB_SYSCALL_INIT): New macros.
+
+Tue Nov 25 01:35:52 1997 Doug Evans <devans@seba.cygnus.com>
+
+ * callback.h (struct stat): Move forward decl up.
+ (host_callback): Pass stat struct pointer to stat,fstat.
+ (CB_SYS_nnn): Reorganize.
+ (CB_SYSCALL): New members p1,p2.
+ (cb_host_to_target_stat): Delete fourth arg.
+
+Sat Nov 22 23:34:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_stop_reason): Clarify sim_signalled SIGRC
+ argument.
+
+Mon Nov 17 14:00:51 1997 Doug Evans <devans@seba.cygnus.com>
+
+ * callback.h (CB_TARGET_DEFS_MAP): Renamed from target_defs_map.
+ (host_callback): Add stat, fstat, syscall_map, errno_map, open_map,
+ signal_map, stat_map.
+ (errn_map,open_map): Renamed to cb_init_foo_map.
+ (cb_host_to_target_errno,cb_target_to_host_open): Renamed from
+ host_to_target_errno,target_to_host_open.
+ (cb_read_target_syscall_maps): Add prototype.
+ (cb_target_to_host_syscall): Likewise.
+ (cb_host_to_target_stat): Likewise.
+ (cb_syscall): Likewise.
+ (CB_SYS_{exit,open,close,read,write,lseek,unlink,getpid,kill,fstat,
+ argvlen,argv,chdir,stat,chmod,utime,time}): Define.
+ (CB_SYSCALL): New type.
+ (CB_RC): New enum.
+
+Fri Nov 7 10:34:09 1997 Rob Savoye <rob@darkstar.cygnus.com>
+
+ * libiberty.h: Add extern "C" { so it can be used with C++
+ programs.
+ * remote-sim.h: Add extern "C" { so it can be used with C++
+ programs.
+
+Tue Oct 14 16:07:51 1997 Nick Clifton <nickc@cygnus.com>
+
+ * dis-asm.h (struct disassemble_info): New field
+ 'symbol_at_address_func'.
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialise new field with
+ generic_symbol_at_address.
+
+Mon Oct 13 10:17:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h: Clarify sim_read, sim_write MEM argument.
+
+Wed Sep 24 18:03:10 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
+
+ * remote-sim.h (SIM_RC): Add a bunch of new return codes for
+ breakpoint stuff.
+ * Add functions to tell the simulator to set/clear/enable/disable
+ intrinsic breakpoints.
+
+Thu Aug 28 19:41:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * libiberty.h (dupargv): Add prototype.
+
+Tue Aug 26 12:25:49 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_create_inferior): Add ABFD arg. Document.
+
+Mon Aug 25 10:50:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_open): Add ABFD arg. Document.
+
+Fri Aug 8 16:43:56 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * dis-asm.h (arc_get_disassembler): Declare.
+
+Wed Jul 30 11:39:50 1997 Per Bothner <bothner@deneb.cygnus.com>
+
+ * demangle.h (DMGL_JAVA): New option to request Java demangling.
+
+Tue Jul 22 17:59:54 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * libiberty.h (PEXECUTE_*): Define.
+ (pexecute, pwait): Declare.
+
+Fri Jun 6 13:02:33 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_kill): Mark as depreciated.
+
+Fri May 23 13:43:41 1997 Fred Fish <fnf@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Add task_link member.
+
+Thu May 22 11:32:49 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h: Review documentation. Clarify restrictions on
+ when functions can be called.
+
+Wed May 21 16:47:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_set_profile_size): Add prototype, document as
+ depreciated.
+
+Tue May 20 09:32:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_open): Add callback struct.
+ (sim_set_callbacks): Drop SIM_DESC argument. Document.
+ (sim_size): Remove recently added SIM_DESC argument. Document.
+
+Mon May 19 19:14:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h: Pass SD into sim_size.
+
+Thu May 15 01:24:16 1997 Mark Alexander <marka@cygnus.com>
+
+ * obstack.h (obstack_specify_allocation_with_arg, obstack_chunkfun,
+ obstack_freefun): Eliminate compile warnings in gdb.
+
+Tue Apr 22 10:24:34 1997 Fred Fish <fnf@cygnus.com>
+
+ * floatformat.h (floatformat_byteorders): Add comments for previous
+ formats and add floatformat_littlebyte_bigword, primarily for ARM.
+ Add declaration for floatformat_ieee_double_littlebyte_bigword.
+
+Fri Apr 18 13:04:49 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * remote-sim.h (sim_stop): New interface - asynchronous
+ notification of a request to stop / suspend the running
+ simulation.
+
+ * remote-sim.h (enum sim_stop): Add sim_running and sim_polling as
+ states for use internal to simulators.
+
+ * callback.h (struct host_callback_strut): Put a magic number at
+ the end of the struct to allow basic checking.
+ (struct host_callback_struct ): Add poll_quit - so
+ that the console etc can be polled at regular intervals.
+
+Thu Apr 17 02:17:12 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * remote-sim.h (struct _bfd): Declare.
+ (sim_load): Return SIM_RC. New arg `abfd'.
+ (sim_create_inferior): Return SIM_RC. Delete arg `start_address'.
+
+Wed Apr 2 17:09:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
+
+ * remote-sim.h (sim_trace, sim_size): Make these global. They
+ will go away shortly.
+
+Wed Apr 2 15:23:49 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * remote-sim.h (SIM_OPEN_KIND, SIM_RC): New enums.
+ (sim_open): New argument `kind'.
+
+Wed Apr 2 14:45:51 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * COPYING: Update FSF address.
+
+Fri Mar 28 15:29:54 1997 Mike Meissner <meissner@cygnus.com>
+
+ * callback.h (top level): Include stdarg.h or varargs.h if
+ va_start is not defined.
+ (host_callback_struct): Make {,e}vprintf_filtered take a va_list
+ instead of void *, since va_list might be an array or structure
+ type.
+
+Fri Mar 28 15:44:41 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
+
+ * libiberty.h (basename): Add prototype for glibc and linux.
+
+Mon Mar 17 19:22:12 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * objalloc.h: New file.
+
+Mon Mar 17 14:57:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
+
+ * remote-sim.h: New file, copied in from gdb/remote-sim.h. One
+ day this will be placed in a directory of its own.
+
+Sat Mar 15 19:00:14 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * obstack.h: Update to current FSF version.
+
+Thu Mar 6 15:46:59 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
+
+ * callback.h (struct host_callback_struct): Add callbacks -
+ flush_stdout, write_stderr, flush_stderr, vprintf_filtered,
+ evprintf_filtered. Delete redundant callbacks - printf_filtered.
+
+Thu Feb 27 23:18:27 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Remove lprefix and lprefix_len
+ fields.
+
+Tue Feb 25 00:10:49 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * dis-asm.h (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize
+ bytes_per_chunk and display_endian.
+
+Mon Feb 24 17:47:02 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ From Eric Youngdale <eric@andante.jic.com>:
+ * bfdlink.h (struct bfd_elf_version_expr): Define.
+ (struct bfd_elf_version_deps): Define.
+ (struct bfd_elf_version_tree): Define.
+
+Thu Feb 6 14:20:01 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * dis-asm.h: (disassemble_info): Add new fields
+ bytes_per_chunk and display_endian to control the
+ display of raw instructions.
+
+Fri Dec 27 22:17:37 1996 Fred Fish <fnf@cygnus.com>
+
+ * dis-asm.h (print_insn_tic80): Declare.
+
+Sun Dec 8 17:11:12 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * callback.h (host_callback): New member `error'.
+
+Wed Nov 20 00:40:23 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * callback.h: New file, moved here from gdb.
+
+Mon Nov 18 16:34:00 1996 Dawn Perchik <dawn@critters.cygnus.com>
+
+ * libiberty.h: Checkin again; last checkin failed due to sticky tag.
+
+Wed Nov 13 08:22:00 1996 Dawn Perchik <dawn@critters.cygnus.com>
+
+ * libiberty.h: Revert last commit due to conflicts with hpux
+ system headers.
+
+Tue Nov 12 16:31:00 1996 Dawn Perchik <dawn@critters.cygnus.com>
+
+ * libiberty.h: Move prototypes from argv.c here.
+
+Thu Oct 31 14:56:18 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * ansidecl.h (VPARAMS,VA_START): Define.
+
+Fri Oct 25 12:08:04 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * dis-asm.h (disassemble_info): Add bytes_per_line field.
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize bytes_per_line field.
+
+Thu Oct 24 17:10:01 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * dis-asm.h (disassemble_info): Add symbol field.
+ (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize symbol field.
+
+Thu Oct 17 11:17:40 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * dis-asm.h (print_insn_m32r): Declare.
+
+Mon Oct 14 23:56:52 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * libiberty.h: Declare parameter types for xmalloc and xrealloc.
+
+Thu Oct 3 13:45:27 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * fnmatch.h: New file.
+
+Thu Oct 3 10:33:14 1996 Jeffrey A Law (law@cygnus.com)
+
+ * dis-asm.h (print_insn_mn10x00): Delete declaration.
+ (print_insn_mn10200, print_insn_mn10300): Declare.
+
+Wed Oct 2 21:24:43 1996 Jeffrey A Law (law@cygnus.com)
+
+ * dis-asm.h (print_insn_mn10x00): Declare.
+
+Mon Sep 30 13:56:11 1996 Fred Fish <fnf@cygnus.com>
+
+ * libiberty.h: Remove #ifndef PRIVATE_XMALLOC.
+
+Sat Aug 31 13:27:06 1996 Jeffrey A Law (law@cygnus.com)
+
+ * dis-asm.h (print_insn_v850): Declare.
+
+Tue Aug 13 16:10:30 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * obstack.h: Change bcopy to memcpy. Works better on Posix
+ systems, which generally lack bcopy.
+
+Mon Aug 12 17:03:18 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * ansidecl.h: Change WIN32 to _WIN32.
+
+Fri Jul 26 13:58:18 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * dis-asm.h: Add flavour field.
+ (print_insn_alpha): Declare.
+ (print_insn_alpha_osf, print_insn_alpha_vms): Don't declare.
+ (INIT_DISASSEMBLE_INFO): Initialize flavour field.
+
+Tue Jul 23 17:37:58 1996 Fred Fish <fnf@cygnus.com>
+
+ * libiberty.h (PRIVATE_XMALLOC): Enclose xmalloc/xrealloc
+ definitions inside #ifndef so that programs that want to
+ can define PRIVATE_XMALLOC and then define xmalloc and
+ xrealloc anyway they want.
+ (basename): Document in source that we can't declare the
+ parameter type because it is declared inconsistently across
+ different systems.
+
+Mon Jul 22 13:16:13 1996 Richard Henderson <rth@tamu.edu>
+
+ * dis-asm.h (print_insn_alpha): Don't declare.
+ (print_insn_alpha_osf, print_insn_alpha_vms): Declare.
+
+Wed Jul 17 14:45:12 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * dis-asm.h: (print_insn_d10v): Declare.
+
+Mon Jul 15 16:55:38 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * dis-asm.h: Get rid of decls for print_insn_i8086,
+ print_insn_sparc64 and print_insn_sparclite.
+ * (INIT_DISASSEMBLE_INFO): Split into two pieces. One,
+ INIT_DISASSEMBLE_INFO_NO_ARCH inits everything except for endian,
+ mach, and arch.
+
+Fri Jul 12 10:19:27 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * dis-asm.h (print_insn_i8086): Declare.
+
+Wed Jul 3 16:02:39 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * dis-asm.h (print_insn_sparclite): Declare.
+
+Tue Jun 18 16:02:46 1996 Jeffrey A. Law <law@rtl.cygnus.com>
+
+ * dis-asm.h (print_insn_h8300s): Declare.
+
+Tue Jun 18 15:11:33 1996 Klaus Kaempf <kkaempf@progis.de>
+
+ * fopen-vms.h: New file.
+
+Tue Jun 4 18:58:16 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Add notice_all field.
+
+Fri Apr 26 10:33:12 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * demangle.h (#ifdef IN_GCC): #include "gansidecl.h".
+ (PROTO,PTR,const): Delete.
+
+Mon Apr 22 17:27:42 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Add traditional_format field.
+
+Mon Apr 15 15:16:56 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * libiberty.h (choose_temp_base): Add prototype.
+
+Tue Mar 12 17:29:46 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (bfd_wrapped_link_hash_lookup): Declare.
+ (struct bfd_link_info): Add wrap_hash field.
+
+Wed Feb 14 16:49:17 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
+
+ * ieee.h (ieee_record_enum_type): Define
+ ieee_external_reference_info_enum.
+
+Fri Feb 2 17:09:25 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * dis-asm.h (DISASM_RAW_INSN): Delete.
+
+Tue Jan 23 09:21:47 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * dis-asm.h (INIT_DISASSEMBLE_INFO): Set endian to BFD_ENDIAN_UNKNOWN.
+ New argument FPRINTF_FUNC.
+
+Mon Jan 22 16:37:59 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * dis-asm.h (disassemble_info): New members arch, mach, endian.
+ (INIT_DISASSEMBLE_INFO): Initialize them.
+ (DISASM_RAW_INSN{,FLAG}): Define.
+
+Thu Jan 18 11:32:38 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * demangle.h (cplus_demangle_opname): Change opname parameter to
+ const char *.
+ (cplus_mangle_opname): Change return type and opname parameter to
+ const char *.
+
+Fri Jan 5 00:01:22 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * ieee.h (enum ieee_record): Add ieee_asn_record_enum,
+ ieee_at_record_enum, ieee_ty_record_enum, ieee_atn_record_enum,
+ ieee_bb_record_enum, and ieee_be_record_enum.
+
+Wed Jan 3 13:12:09 1996 Fred Fish <fnf@cygnus.com>
+
+ * obstack.h: Update copyright to 1996.
+ (_obstack_memory_used): Declare.
+ (obstack_memory_used): Define macro.
+
+Thu Dec 28 11:42:12 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * libiberty.h (xstrdup): Declare.
+
+Thu Dec 21 14:47:17 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * wait.h: Protect all macros with #ifndef.
+
+Tue Oct 24 21:45:40 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Add static_link field.
+
+Tue Sep 12 16:28:04 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_callbacks): Add symbol parameter to
+ warning callback.
+
+Fri Sep 1 13:11:51 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_callbacks): Change warning callback
+ to take BFD, section, and address arguments.
+
+Thu Aug 31 16:45:12 1995 steve chamberlain <sac@slash.cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Remove PE stuff.
+
+Tue Aug 22 03:18:23 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
+
+ * libiberty.h: Declare xstrerror. From Pat Rankin.
+
+Mon Aug 21 18:11:36 1995 steve chamberlain <sac@slash.cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Remove PE stuff.
+
+Wed Aug 2 08:14:12 1995 Doug Evans <dje@canuck.cygnus.com>
+
+ * dis-asm.h (print_insn_sparc64): Declare.
+
+Mon Jul 10 13:26:49 1995 Eric Youngdale <eric@aib.com>
+
+ * bfdlink.h (struct bfd_link_info): Add new field symbolic.
+
+Sun Jul 2 17:48:40 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Change type of base_file to
+ PTR.
+
+Thu Jun 29 00:02:45 1995 Steve Chamberlain <sac@slash.cygnus.com>
+
+ * bfdlink.h (struct bfd_link_info): Added base_file member.
+
+Tue Jun 20 16:40:04 1995 Steve Chamberlain <sac@slash.cygnus.com>
+
+ * ansidecl.h: win32s is ANSI enough.
+
+Thu May 18 04:25:50 1995 Ken Raeburn <raeburn@kr-laptop.cygnus.com>
+
+ Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
+
+ * dis-asm.h (print_insn_arm): Delete declaration.
+ (print_insn_{little,big}_arm): New declarations.
+
+ * floatformat.h (floatformat_arm_ext): Declare.
+
+Sat May 13 10:14:08 1995 Steve Chamberlain <sac@slash.cygnus.com>
+
+ * bfdlink.h (subsytem, stack_heap_parameters): New.
+
+Thu May 4 14:36:42 1995 Jason Merrill <jason@phydeaux.cygnus.com>
+
+ * demangle.h: Don't include ansidecl.h if IN_GCC.
+
+Tue Feb 21 00:37:28 1995 Jeff Law (law@snake.cs.utah.edu)
+
+ * hp-symtab.h: Don't use bitfield enumerations, the HP C compiler
+ does not handle them correctly.
+
+Thu Feb 9 14:20:27 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * libiberty.h (basename): Don't declare parameter type; some
+ systems have this in their header files.
+
+Wed Feb 8 17:35:38 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (struct bfd_link_hash_entry): Change format of common
+ symbol information, to remove restrictions on maximum size and
+ alignment power, by using a pointer to a structure instead.
+
+Mon Feb 6 14:55:32 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * bfdlink.h (enum bfd_link_hash_type): Rename bfd_link_hash_weak
+ to bfd_link_hash_undefweak. Add bfd_link_hash_defweak.
+
+Mon Jan 16 21:00:23 1995 Stan Shebs <shebs@andros.cygnus.com>
+
+ * dis-asm.h (GDB_INIT_DISASSEMBLE_INFO, etc): Remove all
+ GDB-specific definitions.
+
+Sun Jan 15 18:39:35 1995 Steve Chamberlain <sac@splat>
+
+ * dis-asm.h (print_insn_w65): Declare.
+
+Thu Jan 12 17:51:17 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * libiberty.h (hex_p): Fix sense of test.
+
+Wed Jan 11 22:36:40 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * libiberty.h (_hex_array_size, _hex_bad, _hex_value, hex_init,
+ hex_p, hex_value): New macros and declarations, for hex.c.
+
+Fri Jan 6 17:44:14 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * dis-asm.h: Make idempotent.
+
+Wed Dec 14 13:08:43 1994 Stan Shebs <shebs@andros.cygnus.com>
+
+ * progress.h: New file, empty definitions for progress macros.
+
+Fri Nov 25 00:14:05 1994 Jeff Law (law@snake.cs.utah.edu)
+
+ * hp-symtab.h: New file describing the debug symbols emitted
+ by the HP C compilers.
+
+Fri Nov 11 15:48:37 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * bfdlink.h (struct bfd_link_hash_entry): Change u.c.size from 24
+ to 26 bits, and change u.c.alignment_power from 8 to 6 bits. 6
+ bit in the alignment power is enough for a 64 bit address space.
+
+Mon Oct 31 13:02:51 1994 Stan Shebs (shebs@andros.cygnus.com)
+
+ * demangle.h (cplus_mangle_opname): Declare.
+
+Tue Oct 25 11:38:02 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * bfdlink.h (struct bfd_link_callbacks): Fix comments for
+ multiple_common field.
+
+Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
+
+ * dis-asm.h: Add support for the ARM.
+
+Wed Aug 10 12:51:41 1994 Doug Evans (dje@canuck.cygnus.com)
+
+ * libiberty.h (strsignal): Document its existence even if we
+ can't declare it.
+
+Tue Aug 2 14:40:03 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * os9k.h: Remove u_int16, u_int32, and owner_id typedefs and
+ expand their uses. Those names conflict with Mach headers.
+
+Fri Jul 22 14:17:12 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_hash_entry): Change u.c.size into a
+ bitfield. Add field u.c.alignment_power.
+
+Sun Jul 10 00:26:39 1994 Ian Dall (dall@hfrd.dsto.gov.au)
+
+ * dis-asm.h: Add print_insn_ns32k declaration.
+
+Mon Jun 20 17:13:29 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+
+ * bfdlink.h (bfd_link_hash_table): Make creator a const pointer.
+
+Sat Jun 18 16:09:32 1994 Stan Shebs (shebs@andros.cygnus.com)
+
+ * demangle.h (cplus_demangle_opname): Declare.
+
+Thu Jun 16 15:19:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_info): Add new field shared.
+
+Mon Jun 6 14:39:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_hash_entry): Remove written field:
+ not needed for all backends.
+
+Thu Apr 28 19:06:50 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * dis-asm.h (disassembler): Declare.
+
+Fri Apr 1 00:38:17 1994 Jim Wilson (wilson@mole.gnu.ai.mit.edu)
+
+ * obstack.h: Delete use of IN_GCC to control whether
+ stddef.h or gstddef.h is included.
+
+Tue Mar 22 13:06:02 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (enum bfd_link_order_type): Add bfd_data_link_order.
+ (struct bfd_link_order): Add data field to union.
+
+Mon Mar 21 18:45:26 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_callbacks): Change bitsize argument
+ to add_to_set to reloc. Remove bitsize argument from constructor.
+ Comment that reloc_overflow, reloc_dangerous and unattached_reloc
+ must handle NULL pointers for reloc location.
+ (enum bfd_link_order_type): Add bfd_section_reloc_link_order and
+ bfd_symbol_reloc_link_order.
+ (struct bfd_link_order): Add reloc field to union.
+ (struct bfd_link_order_reloc): Define.
+
+Mon Mar 14 12:27:50 1994 Ian Lance Taylor (ian@cygnus.com)
+
+ * ieee-float.h: Removed; no longer used.
+
+Tue Mar 1 18:10:49 1994 Kung Hsu (kung@mexican.cygnus.com)
+
+ * os9k.h: os9000 target specific header file, the header of the
+ object file is used now.
+
+Sun Feb 27 21:52:26 1994 Jim Kingdon (kingdon@deneb.cygnus.com)
+
+ * floatformat.h: New file, intended to replace ieee-float.h.
+
+Sun Feb 20 17:15:42 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
+
+ * ansidecl.h (ANSI_PROTOTYPES): Define if using ANSI prototypes.
+
+Wed Feb 16 01:07:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * libiberty.h: Don't declare strsignal, to avoid conflicts with
+ Solaris system header files.
+
+Sat Feb 12 22:11:32 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * libiberty.h (xexit): Use __volatile__ to avoid losing if
+ compiling with gcc -traditional.
+
+Thu Feb 10 14:05:41 1994 Ian Lance Taylor (ian@cygnus.com)
+
+ * libiberty.h: New file. Declares functions provided by
+ libiberty.
+
+Tue Feb 8 05:19:52 1994 David J. Mackenzie (djm@thepub.cygnus.com)
+
+ Handle obstack_chunk_alloc returning NULL. This allows
+ obstacks to be used by libraries, without forcing them
+ to call exit or longjmp.
+ * obstack.h (struct obstack): Add alloc_failed flag.
+ _obstack_begin, _obstack_begin_1): Declare to return int, not void.
+ (obstack_finish): If alloc_failed, return NULL.
+ (obstack_base, obstack_next_free, objstack_object_size):
+ If alloc_failed, return 0.
+ (obstack_grow, obstack_grow0, obstack_1grow, obstack_ptr_grow,
+ obstack_int_grow, obstack_blank): If alloc_failed, do nothing that
+ could corrupt the obstack.
+
+Mon Jan 24 15:06:05 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_callbacks): Add name, reloc_name and
+ addend argments to reloc_overflow callback.
+
+Fri Jan 21 19:13:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * dis-asm.h (print_insn_big_powerpc, print_insn_little_powerpc,
+ print_insn_rs6000): Declare.
+
+Thu Jan 6 14:15:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfdlink.h (struct bfd_link_callbacks): Add bitsize argument to
+ add_to_set field. Add new callback named constructor.
+
+Thu Dec 30 10:44:06 1993 Ian Lance Taylor (ian@rtl.cygnus.com)
+
+ * bfdlink.h: New file for new BFD linker backend routines.
+
+Mon Nov 29 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * dis-asm.h (enum dis_insn_tyupe): Remove non-ANSI trailing comma.
+
+Sat Oct 2 20:42:26 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * dis-asm.h: Move comment to right place.
+
+Mon Aug 9 19:03:35 1993 David J. Mackenzie (djm@thepub.cygnus.com)
+
+ * obstack.h (obstack_chunkfun, obstack_freefun): Add defns from
+ previous version. Are these Cygnus local changes?
+
+Fri Aug 6 17:05:47 1993 David J. Mackenzie (djm@thepub.cygnus.com)
+
+ * getopt.h, obstack.h: Update to latest FSF version.
+
+Mon Aug 2 14:45:29 1993 John Gilmore (gnu@cygnus.com)
+
+ * dis-asm.h: Move enum outside of struct defn to avoid warnings.
+
+Mon Aug 2 08:49:30 1993 Stu Grossman (grossman at cygnus.com)
+
+ * wait.h (WEXITSTATUS, WSTOPSIG): Mask down to 8 bits. This is
+ for systems that store stuff into the high 16 bits of a wait
+ status.
+
+Fri Jul 30 18:38:02 1993 John Gilmore (gnu@cygnus.com)
+
+ * dis-asm.h: Add new fields insn_info_valid, branch_delay_insns,
+ data_size, insn_type, target, target2. These are used to return
+ information from the instruction decoders back to the calling
+ program. Add comments, make more readable.
+
+Mon Jul 19 22:14:14 1993 Fred Fish (fnf@deneb.cygnus.com)
+
+ * nlm: New directory containing NLM/NetWare includes.
+
+Thu Jul 15 12:10:04 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * dis-asm.h (struct disassemble_info): New field application_data.
+
+Thu Jul 15 12:41:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * dis-asm.h: Added declaration of print_insn_m88k.
+
+Fri Jul 2 10:31:59 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ansidecl.h: Use ANSI macros if __mips and _SYSTYPE_SVR4 are
+ defined, since RISC/OS cc handles ANSI declarations in SVR4 mode
+ but does not define __STDC__.
+
+Sun Jun 20 18:27:52 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
+
+ * dis-asm.h: Don't need to include ansidecl.h any more.
+
+Fri Jun 18 03:22:10 1993 John Gilmore (gnu@cygnus.com)
+
+ * oasys.h: Eliminate "int8_type", "int16_type", "int32_type", and
+ their variants. These changes are coordinated with corresponding
+ changes in ../bfd/oasys.c.
+
+Wed Jun 16 10:43:08 1993 Fred Fish (fnf@cygnus.com)
+
+ * bfd.h: Note that it has been removed.
+
+Tue Jun 8 12:16:03 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
+
+ Support for H8/300-H
+ * dis-asm.h (print_insn_h8300, print_insn_h8300h): Declare it.
+
+Tue Jun 1 07:35:03 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
+
+ * ansidecl.h (const): Don't define it if it's already defined.
+
+Thu May 27 18:19:51 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * dis-asm.h (print_insn_hppa): Declare it.
+
+ * bfd.h: Moved to bfd directory. Small stub here includes it
+ without requiring "-I../bfd".
+
+Thu Apr 29 12:06:13 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
+
+ * bfd.h: Updated with BSF_FUNCTION.
+
+Mon Apr 26 18:15:50 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h, dis-asm.h: Updated with Hitachi SH.
+
+Fri Apr 23 18:41:38 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h: Updated with alpha changes.
+ * dis-asm.h: Added alpha.
+
+Fri Apr 16 17:35:30 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * bfd.h: Update for signed bfd_*get_*.
+
+Thu Apr 15 09:24:21 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * bfd.h: Updated for file_truncated error.
+
+Thu Apr 8 10:53:47 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ansidecl.h: If no ANSI, define const to be empty.
+
+Thu Apr 1 09:00:10 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * dis-asm.h: Declare a29k and i960 print_insn_*.
+
+ * dis-asm.h: Add print_address_func and related stuff.
+
+ * dis-asm.h (dis_asm_read_memory): Fix prototype.
+
+Wed Mar 31 17:40:16 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * dis-asm.h: Add print_insn_sparc.
+
+Wed Mar 31 17:51:42 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * bfd.h: Updated for BFD_RELOC_MIPS_GPREL and bfd_[gs]et_gp_size
+ prototypes.
+
+Wed Mar 31 16:35:12 1993 Stu Grossman (grossman@cygnus.com)
+
+ * dis-asm.h: (disassemble_info): Fix typo in prototype of
+ dis_asm_memory_error().
+
+Tue Mar 30 19:09:23 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * dis-asm.h (disassembler_info): Add read_memory_func,
+ memory_error_func, buffer, and length.
+ ({GDB_,}INIT_DISASSEMBLE_INFO): Set them.
+ print_insn_*: Remove second argument.
+
+Tue Mar 30 14:48:55 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h: Update for lma field of section.
+
+Tue Mar 30 12:22:55 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * ansidecl.h: Use ANSI versions on AIX regardless of __STDC__.
+
+Fri Mar 19 14:49:49 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * dis-asm.h: Add h8500.
+
+Thu Mar 18 13:49:09 1993 Per Bothner (bothner@rtl.cygnus.com)
+
+ * ieee-float.h: Moved from ../gdb.
+ * dis-asm.h: New file. Interface to dis-assembler.
+
+Thu Mar 11 10:52:57 1993 Fred Fish (fnf@cygnus.com)
+
+ * demangle.h (DMGL_NO_OPTS): Add define (set to 0) to use
+ in place of bare 0, for readability reasons.
+
+Tue Mar 2 17:50:11 1993 Fred Fish (fnf@cygnus.com)
+
+ * demangle.h: Replace all references to cfront with ARM.
+
+Tue Feb 23 12:21:14 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * bfd.h: Update for new elements in JUMP_TABLE.
+
+Tue Feb 16 00:51:30 1993 John Gilmore (gnu@cygnus.com)
+
+ * bfd.h: Update for BFD_VERSION 2.1.
+
+Tue Jan 26 11:49:20 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * bfd.h: Update for SEC_IS_COMMON flag.
+
+Tue Jan 19 12:25:12 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfd.h: Update for bfd_asymbol_value bug fix.
+
+Fri Jan 8 16:37:18 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * bfd.h: Update to include ECOFF tdata and target_flavour.
+
+Sun Dec 27 17:52:30 1992 Fred Fish (fnf@cygnus.com)
+
+ * bfd.h: Add declaration for bfd_get_size().
+
+Tue Dec 22 22:42:46 1992 Fred Fish (fnf@cygnus.com)
+
+ * demangle.h: Protect file from multiple inclusions with
+ #if !defined(DEMANGLE_H)...#define DEMANGLE_H...#endif.
+
+Mon Dec 21 21:25:50 1992 Stu Grossman (grossman at cygnus.com)
+
+ * bfd.h: Update to get hppa_core_struct from bfd.c.
+
+Thu Dec 17 00:42:35 1992 John Gilmore (gnu@cygnus.com)
+
+ * bfd.h: Update to get tekhex tdata name change from bfd.
+
+Mon Nov 9 23:55:42 1992 John Gilmore (gnu@cygnus.com)
+
+ * ansidecl.h: Update comments to discourage use of EXFUN.
+
+Thu Nov 5 16:35:44 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * bfd.h: Update to bring in SEC_SHARED_LIBRARY.
+
+Thu Nov 5 03:21:32 1992 John Gilmore (gnu@cygnus.com)
+
+ * bfd.h: Update to match EXFUN, bfd_seclet_struct, and SDEF
+ cleanups in bfd.
+
+Wed Nov 4 07:28:05 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * bout.h (N_CALLNAME, N_BALNAME): Define as char-type values, so
+ widening works consistently.
+
+Fri Oct 16 03:17:08 1992 John Gilmore (gnu@cygnus.com)
+
+ * getopt.h: Update to Revised Standard FSF Version.
+
+Thu Oct 15 21:43:22 1992 K. Richard Pixley (rich@sendai.cygnus.com)
+
+ * getopt.h (struct option): use the provided enum for has_arg.
+
+ * demangle.h (AUTO_DEMANGLING, GNU_DEMANGLING,
+ LUCID_DEMANGLING): ultrix compilers require enums to be
+ enums and ints to be ints and casts where they meet. cast some
+ enums into ints.
+
+Thu Oct 15 04:35:51 1992 John Gilmore (gnu@cygnus.com)
+
+ * bfd.h: Update after comment changes.
+
+Thu Oct 8 09:03:02 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h (bfd_get_symbol_leading_char): new macro for getting in xvec
+
+Thu Sep 3 09:10:50 1992 Stu Grossman (grossman at cygnus.com)
+
+ * bfd.h (struct reloc_howto_struct): size needs to be signed if
+ it's going to hold negative values.
+
+Sun Aug 30 17:50:27 1992 Per Bothner (bothner@rtl.cygnus.com)
+
+ * demangle.h: New file, moved from ../gdb. Made independent
+ of gdb. Allow demangling style option to be passed as a
+ parameter to cplus_demangle(), but using the
+ current_demangling_style global as the default.
+
+Sat Aug 29 10:07:55 1992 Fred Fish (fnf@cygnus.com)
+
+ * obstack.h: Merge comment change from current FSF version.
+
+Thu Aug 27 12:59:29 1992 Brendan Kehoe (brendan@cygnus.com)
+
+ * bfd.h: add we32k
+
+Tue Aug 25 15:07:47 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h: new after Z8000 stuff
+
+Mon Aug 17 09:01:23 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * bfd.h: Regenerated after page/segment size changes.
+
+Sat Aug 1 13:46:31 1992 Fred Fish (fnf@cygnus.com)
+
+ * obstack.h: Merge changes from current FSF version.
+
+Mon Jul 20 21:06:23 1992 Fred Fish (fnf@cygnus.com)
+
+ * obstack.h (area_id, flags): Remove, replace with extra_arg,
+ use_extra_arg, and maybe_empty_object.
+ * obstack.h (OBSTACK_MAYBE_EMPTY_OBJECT, OBSTACK_MMALLOC_LIKE):
+ Remove, replaced by maybe_empty_object and use_extra_arg bitfields.
+ * obstack.h (obstack_full_begin, _obstack_begin): Remove area_id
+ and flags arguments.
+ * obstack.h (obstack_alloc_arg): New macro to set extra_arg.
+
+Thu Jul 16 08:12:44 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * bfd.h: new after adding BFD_IS_RELAXABLE
+
+Sat Jul 4 03:22:23 1992 John Gilmore (gnu at cygnus.com)
+
+ * bfd.h: Regen after adding BSF_FILE.
+
+Mon Jun 29 14:18:36 1992 Fred Fish (fnf at sunfish)
+
+ * obstack.h: Convert bcopy() use to memcpy(), which is more
+ portable, more standard, and can take advantage of gcc's builtin
+ functions for increased performance.
+
+Thu Jun 25 04:46:08 1992 John Gilmore (gnu at cygnus.com)
+
+ * ansidecl.h (PARAMS): Incorporate this macro from gdb's defs.h.
+ It's a cleaner way to forward-declare function prototypes.
+
+Fri Jun 19 15:46:32 1992 Stu Grossman (grossman at cygnus.com)
+
+ * bfd.h: HPPA merge.
+
+Tue Jun 16 21:30:56 1992 K. Richard Pixley (rich@cygnus.com)
+
+ * getopt.h: gratuitous white space changes merged from other prep
+ releases.
+
+Thu Jun 11 01:10:55 1992 John Gilmore (gnu at cygnus.com)
+
+ * bfd.h: Regen'd from bfd.c after removing elf_core_tdata_struct.
+
+Mon May 18 17:29:03 1992 K. Richard Pixley (rich@cygnus.com)
+
+ * getopt.h: merged changes from make-3.62.11.
+
+ * getopt.h: merged changes from grep-1.6 (alpha).
+
+Fri May 8 14:53:32 1992 K. Richard Pixley (rich@cygnus.com)
+
+ * getopt.h: merged changes from bison-1.18.
+
+Sat Mar 14 17:25:20 1992 Fred Fish (fnf@cygnus.com)
+
+ * obstack.h: Add "area_id" and "flags" members to obstack
+ structure. Add obstack_chunkfun() and obstack_freefun() to
+ set functions explicitly. Convert maybe_empty_object to
+ a bit in "flags".
+
+Thu Feb 27 22:01:02 1992 Per Bothner (bothner@cygnus.com)
+
+ * wait.h (WIFSTOPPED): Add IBM rs6000-specific version.
+
+Fri Feb 21 20:49:20 1992 John Gilmore (gnu at cygnus.com)
+
+ * obstack.h: Add obstack_full_begin.
+ * bfd.h, obstack.h: Protolint.
+
+Thu Jan 30 01:18:42 1992 John Gilmore (gnu at cygnus.com)
+
+ * bfd.h: Remove comma from enum declaration.
+
+Mon Jan 27 22:01:13 1992 Steve Chamberlain (sac at cygnus.com)
+
+ * bfd.h : new target entr, bfd_relax_section
+
+Wed Dec 18 17:19:44 1991 Stu Grossman (grossman at cygnus.com)
+
+ * bfd.h, ieee.h: ANSIfy enums.
+
+Thu Dec 12 20:59:56 1991 John Gilmore (gnu at cygnus.com)
+
+ * fopen-same.h, fopen-bin.h: New files for configuring
+ whether fopen distinguishes binary files or not. For use
+ by host-dependent config files.
+
+Sat Nov 30 20:46:43 1991 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * bfd.h: change the documentation format.
+
+ * created coff, elf and opcode and aout directories. Moved:
+
+ aout64.h ==> aout/aout64.h
+ ar.h ==> aout/ar.h
+ a.out.encap.h ==> aout/encap.h
+ a.out.host.h ==> aout/host.h
+ a.out.hp.h ==> aout/hp.h
+ a.out.sun4.h ==> aout/sun4.h
+ ranlib.h ==> aout/ranlib.h
+ reloc.h ==> aout/reloc.h
+ stab.def ==> aout/stab.def
+ stab.gnu.h ==> aout/stab_gnu.h
+
+ coff-a29k.h ==> coff/a29k.h
+ coff-h8300.h ==> coff/h8300.h
+ coff-i386.h ==> coff/i386.h
+ coff-i960.h ==> coff/i960.h
+ internalcoff.h ==> coff/internal.h
+ coff-m68k.h ==> coff/m68k.h
+ coff-m88k.h ==> coff/m88k.h
+ coff-mips.h ==> coff/mips.h
+ coff-rs6000.h ==> coff/rs6000.h
+
+ elf-common.h ==> elf/common.h
+ dwarf.h ==> elf/dwarf.h
+ elf-external.h ==> elf/external.h
+ elf-internal.h ==> elf/internal.h
+
+ a29k-opcode.h ==> opcode/a29k.h
+ arm-opcode.h ==> opcode/arm.h
+ h8300-opcode.h ==> opcode/h8300.h
+ i386-opcode.h ==> opcode/i386.h
+ i860-opcode.h ==> opcode/i860.h
+ i960-opcode.h ==> opcode/i960.h
+ m68k-opcode.h ==> opcode/m68k.h
+ m88k-opcode.h ==> opcode/m88k.h
+ mips-opcode.h ==> opcode/mips.h
+ np1-opcode.h ==> opcode/np1.h
+ ns32k-opcode.h ==> opcode/ns32k.h
+ pn-opcode.h ==> opcode/pn.h
+ pyr-opcode.h ==> opcode/pyr.h
+ sparc-opcode.h ==> opcode/sparc.h
+ tahoe-opcode.h ==> opcode/tahoe.h
+ vax-opcode.h ==> opcode/vax.h
+
+
+
+Wed Nov 27 10:38:31 1991 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * internalcoff.h: (internal_scnhdr) took out #def dependency, now
+ s_nreloc and s_nlnno are always long. (internal_reloc): allways
+ has an offset field now.
+
+Fri Nov 22 08:12:58 1991 John Gilmore (gnu at cygnus.com)
+
+ * coff-rs6000.h: Lint; use unsigned chars for external fields.
+ * internalcoff.h: Lint; cast storage classes to signed char.
+
+Thu Nov 21 21:01:05 1991 Per Bothner (bothner at cygnus.com)
+
+ * stab.def: Remove the GNU extended type codes (e.g. N_SETT).
+ * aout64.h: The heuristic for distinguishing between
+ sunos-style and bsd-style ZMAGIC files (wrt. where the
+ text segment starts) is moved into (the default definition of)
+ the macro N_HEADER_IN_TEXT. This definition is only used
+ if no other definition is used - e.g. bfd/newsos3.c defines
+ N_HEADER_IN_TEXT(x) to be always 0 (as before).
+
+Thu Nov 21 11:53:03 1991 John Gilmore (gnu at cygnus.com)
+
+ * aout64.h (N_TXTADDR, N_TXTOFF, N_TXTSIZE): New definitions
+ that should handle all uses. LOGICAL_ versions deleted.
+ Eliminate N_HEADER_IN_TEXT, using a_entry to determine which
+ kind of zmagic a.out file we are looking at.
+ * coff-rs6000.h: Typo.
+
+Tue Nov 19 18:43:37 1991 Per Bothner (bothner at cygnus.com)
+
+ (Note: This is a revised entry, as was aout64.h.)
+ * aout64.h: Some cleanups of N_TXTADDR and N_TXTOFF:
+ Will now work for both old- and new-style ZMAGIC files,
+ depending on N_HEADER_IN_TEXT macro.
+ Add LOGICAL_TXTADDR, LOICAL_TXTOFF and LOGICAL_TXTSIZE
+ that don't count the exec header as part
+ of the text segment, to be consistent with bfd.
+ * a.out.sun4.h: Simplified/fixed for previous change.
+
+Mon Nov 18 00:02:06 1991 Fred Fish (fnf at cygnus.com)
+
+ * dwarf.h: Update to DWARF draft 5 version from gcc2.
+
+Thu Nov 14 19:44:59 1991 Per Bothner (bothner at cygnus.com)
+
+ * stab.def: Added defs for extended GNU symbol types,
+ such as N_SETT. These are normally ifdef'd out (because
+ of conflicts with a.out.gnu.h), but are used by bfb_stab_name().
+
+Thu Nov 14 19:17:03 1991 Fred Fish (fnf at cygnus.com)
+
+ * elf-common.h: Add defines to support ELF symbol table code.
+
+Mon Nov 11 19:01:06 1991 Fred Fish (fnf at cygnus.com)
+
+ * elf-internal.h, elf-external.h, elf-common.h: Add support for
+ note sections, which are used in ELF core files to hold copies
+ of various /proc structures.
+
+Thu Nov 7 08:58:26 1991 Steve Chamberlain (sac at cygnus.com)
+
+ * internalcoff.h: took out the M88 dependency in the lineno
+ struct.
+ * coff-m88k.h: defines GET_LINENO_LNNO and PUT_LINENO_LNNO to use
+ 32bit linno entries.
+ * a29k-opcode.h: fixed encoding of mtacc
+
+Sun Nov 3 11:54:22 1991 Per Bothner (bothner at cygnus.com)
+
+ * bfd.h: Updated from ../bfd/bfd-in.h (q.v).
+
+Fri Nov 1 11:13:53 1991 John Gilmore (gnu at cygnus.com)
+
+ * internalcoff.h: Add x_csect defines.
+
+Fri Oct 25 03:18:20 1991 John Gilmore (gnu at cygnus.com)
+
+ * Rename COFF-related files in `coff-ARCH.h' form.
+ coff-a29k.h, coff-i386.h, coff-i960.h, coff-m68k.h, coff-m88k.h,
+ coff-mips.h, coff-rs6000.h to be exact.
+
+Thu Oct 24 22:11:11 1991 John Gilmore (gnu at cygnus.com)
+
+ RS/6000 support, by Metin G. Ozisik, Mimi Phûông-Thåo Võ, and
+ John Gilmore.
+
+ * a.out.gnu.h: Update slightly.
+ * bfd.h: Add new error code, fix doc, add bfd_arch_rs6000.
+ * internalcoff.h: Add more F_ codes for filehdr. Add
+ rs/6000-dependent fields to aouthdr. Add storage classes
+ to syments. Add 6000-specific auxent. Add r_size in reloc.
+ * rs6000coff.c: New file.
+
+Thu Oct 24 04:13:20 1991 Fred Fish (fnf at cygnus.com)
+
+ * dwarf.h: New file for dwarf support. Copied from gcc2
+ distribution.
+
+Wed Oct 16 13:31:45 1991 John Gilmore (gnu at cygnus.com)
+
+ * aout64.h: Remove PAGE_SIZE defines; they are target-dependent.
+ Add N_FN_SEQ for N_FN symbol type used on Sequent machines.
+ * stab.def: Include N_FN_SEQ in table.
+ * bout.h: External formats of structures use unsigned chars.
+
+Fri Oct 11 12:40:43 1991 Steve Chamberlain (steve at cygnus.com)
+
+ * bfd.h:upgrade from bfd.c
+ * internalcoff.h: add n_name, n_zeroes and n_offset macros
+ * amdcoff.h: Define OMAGIC and AOUTHDRSZ.
+
+Fri Oct 11 10:58:06 1991 Per Bothner (bothner at cygnus.com)
+
+ * a.out.host.h: Change SEGMENT_SIZE to 0x1000 for Sony.
+ * bfd.h (align_power): Add (actually move) comment.
+
+Tue Oct 8 15:29:32 1991 Per Bothner (bothner at cygnus.com)
+
+ * sys/h-rtbsd.h: Define MISSING_VFPRINT (for binutils/bucomm.c).
+
+Sun Oct 6 19:24:39 1991 John Gilmore (gnu at cygnus.com)
+
+ * aout64.h: Move struct internal_exec to ../bfd/libaout.h so
+ it can be shared by all `a.out-family' code. Rename
+ EXTERNAL_LIST_SIZE to EXTERNAL_NLIST_SIZE. Use basic types
+ for nlist members, and make strx integral rather than pointer.
+ More commentary on n_type values.
+ * bout.h: Provide a struct external_exec rather than an
+ internal_exec.
+ * m68kcoff.h: Remove `tagentries' which snuck in from the i960
+ COFF port.
+
+Fri Oct 4 01:25:59 1991 John Gilmore (gnu at cygnus.com)
+
+ * h8300-opcode.h: Remove `_enum' from the typedef for an enum.
+ * bfd.h: Update to match bfd changes.
+
+ * sys/h-i386mach.h, sysdep.h: Add 386 Mach host support.
+
+Tue Oct 1 04:58:42 1991 John Gilmore (gnu at cygnus.com)
+
+ * bfd.h, elf-common.h, elf-external.h, elf-internal.h:
+ Add preliminary ELF support, sufficient for GDB, from Fred Fish.
+ * sysdep.h, sys/h-amix.h: Support Amiga SVR4.
+
+ * sys/h-vaxult.h: Make it work. (David Taylor <taylor@think.com>)
+ * a.out.vax.h: Remove unused and confusing file.
+
+Mon Sep 30 12:52:35 1991 Per Bothner (bothner at cygnus.com)
+
+ * sysdep.h: Define NEWSOS3_SYS, and use it.
+
+Fri Sep 20 13:38:21 1991 John Gilmore (gnu at cygnus.com)
+
+ * a.out.gnu.h (N_FN): Its value *really is* 0x1F.
+ Fix it, and add comments warning about or-ing N_EXT with it
+ and/or N_WARNING.
+ * aout64.h (N_FN): Fix value, add comments about N_EXT.
+ * stab.def (table at end): Update to show all the type
+ values <0x20, including low order bits. Move N_FN to
+ its rightful place.
+
+Tue Sep 17 17:41:37 1991 Stu Grossman (grossman at cygnus.com)
+
+ * sys/h-irix3.h: sgi/irix support.
+
+Tue Sep 17 07:52:59 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * stab.def (N_DEFD): Add GNU Modula-2 debug stab, from Andrew
+ Beers.
+
+Thu Sep 12 14:12:59 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * internalcoff.h (SYMNMLEN, FILNMLEN, DIMNUM): Define these
+ for internalcoff, separately from the various external coff's.
+ * amdcoff.h, bcs88kcoff.h, i386coff.h, intel-coff.h, m68kcoff.h,
+ m88k-bcs.h: Prefix SYMNMLEN, FILNMLEN, and DIMNUM with E_'s for
+ the external struct definitions.
+ * ecoff.h: Remove these #define's, kludge no longer needed.
+
+ * sys/h-ultra3.h: Add new Ultracomputer host.
+ * sysdep.h: Add ULTRA3_SYM1_SYS and use it.
+
+Tue Sep 10 10:11:46 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * i386coff.h (LINESZ): Always 6, not based on sizeof().
+ (Fix from Peter Schauer <pes@regent.e-technik.tu-muenchen.de>.)
+
+Wed Sep 4 08:58:37 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * a.out.gnu.h, aout64.h: Add N_WARNING. Change N_FN to 0x0E,
+ to match SunOS and BSD. Add N_COMM as 0x12 for SunOS shared lib
+ support.
+ * stab.def: Add N_COMM to table, fix overlap comment.
+
+Tue Sep 3 06:29:20 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ Merge with latest FSF versions of these files.
+
+ * stab.gnu.h: Add LAST_UNUSED_STAB_CODE.
+ * stab.def: Update to GPL2. Move N_WARNING out, since not a
+ debug symbol. Change comments, and reorder table to numeric
+ order. Update final table comment.
+ (N_DSLINE, N_BSLINE): Renumber from 0x66 and 0x68, to 0x46 and 0x48.
+
+ * obstack.h: GPL2. Merge.
+
+Fri Aug 23 01:54:23 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * a.out.gnu.h, a.out.sun4.h: Make SEGMENT_SIZE able to depend
+ on the particular a.out being examined.
+ * a.out.sun4.h: Define segment sizes for Sun-3's and Sun-4's.
+ * FIXME: a.out.gnu.h is almost obsolete.
+ * FIXME: a.out.sun4.h should be renamed a.out.sun.h now.
+
+Wed Aug 21 20:32:13 1991 John Gilmore (gnu at cygint.cygnus.com)
+
+ * Start a ChangeLog for the includes directory.
+
+ * a.out.gnu.h (N_FN): Fix value -- was 15, should be 0x1E.
+ * stab.def: Update allocation table in comments at end,
+ to reflect reality as I know it.
+
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/MAINTAINERS b/include/MAINTAINERS
new file mode 100644
index 000000000..d59a3bd7f
--- /dev/null
+++ b/include/MAINTAINERS
@@ -0,0 +1 @@
+See ../binutils/MAINTAINERS
diff --git a/include/alloca-conf.h b/include/alloca-conf.h
new file mode 100644
index 000000000..9c3eea396
--- /dev/null
+++ b/include/alloca-conf.h
@@ -0,0 +1,24 @@
+#include "config.h"
+
+#if defined(__GNUC__) && !defined(C_ALLOCA)
+# ifndef alloca
+# define alloca __builtin_alloca
+# endif
+#else /* ! defined (__GNUC__) */
+# ifdef _AIX
+ #pragma alloca
+# else
+# if defined(HAVE_ALLOCA_H) && !defined(C_ALLOCA)
+# include <alloca.h>
+# else /* ! defined (HAVE_ALLOCA_H) */
+# ifdef __STDC__
+extern PTR alloca (size_t);
+# else /* ! defined (__STDC__) */
+extern PTR alloca ();
+# endif /* ! defined (__STDC__) */
+# endif /* ! defined (HAVE_ALLOCA_H) */
+# ifdef _WIN32
+# include <malloc.h>
+# endif
+# endif /* ! defined (_AIX) */
+#endif /* ! defined (__GNUC__) */
diff --git a/include/ansidecl.h b/include/ansidecl.h
new file mode 100644
index 000000000..04c3a30bb
--- /dev/null
+++ b/include/ansidecl.h
@@ -0,0 +1,341 @@
+/* ANSI and traditional C compatability macros
+ Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+ Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* ANSI and traditional C compatibility macros
+
+ ANSI C is assumed if __STDC__ is #defined.
+
+ Macro ANSI C definition Traditional C definition
+ ----- ---- - ---------- ----------- - ----------
+ ANSI_PROTOTYPES 1 not defined
+ PTR `void *' `char *'
+ PTRCONST `void *const' `char *'
+ LONG_DOUBLE `long double' `double'
+ const not defined `'
+ volatile not defined `'
+ signed not defined `'
+ VA_START(ap, var) va_start(ap, var) va_start(ap)
+
+ Note that it is safe to write "void foo();" indicating a function
+ with no return value, in all K+R compilers we have been able to test.
+
+ For declaring functions with prototypes, we also provide these:
+
+ PARAMS ((prototype))
+ -- for functions which take a fixed number of arguments. Use this
+ when declaring the function. When defining the function, write a
+ K+R style argument list. For example:
+
+ char *strcpy PARAMS ((char *dest, char *source));
+ ...
+ char *
+ strcpy (dest, source)
+ char *dest;
+ char *source;
+ { ... }
+
+
+ VPARAMS ((prototype, ...))
+ -- for functions which take a variable number of arguments. Use
+ PARAMS to declare the function, VPARAMS to define it. For example:
+
+ int printf PARAMS ((const char *format, ...));
+ ...
+ int
+ printf VPARAMS ((const char *format, ...))
+ {
+ ...
+ }
+
+ For writing functions which take variable numbers of arguments, we
+ also provide the VA_OPEN, VA_CLOSE, and VA_FIXEDARG macros. These
+ hide the differences between K+R <varargs.h> and C89 <stdarg.h> more
+ thoroughly than the simple VA_START() macro mentioned above.
+
+ VA_OPEN and VA_CLOSE are used *instead of* va_start and va_end.
+ Immediately after VA_OPEN, put a sequence of VA_FIXEDARG calls
+ corresponding to the list of fixed arguments. Then use va_arg
+ normally to get the variable arguments, or pass your va_list object
+ around. You do not declare the va_list yourself; VA_OPEN does it
+ for you.
+
+ Here is a complete example:
+
+ int
+ printf VPARAMS ((const char *format, ...))
+ {
+ int result;
+
+ VA_OPEN (ap, format);
+ VA_FIXEDARG (ap, const char *, format);
+
+ result = vfprintf (stdout, format, ap);
+ VA_CLOSE (ap);
+
+ return result;
+ }
+
+
+ You can declare variables either before or after the VA_OPEN,
+ VA_FIXEDARG sequence. Also, VA_OPEN and VA_CLOSE are the beginning
+ and end of a block. They must appear at the same nesting level,
+ and any variables declared after VA_OPEN go out of scope at
+ VA_CLOSE. Unfortunately, with a K+R compiler, that includes the
+ argument list. You can have multiple instances of VA_OPEN/VA_CLOSE
+ pairs in a single function in case you need to traverse the
+ argument list more than once.
+
+ For ease of writing code which uses GCC extensions but needs to be
+ portable to other compilers, we provide the GCC_VERSION macro that
+ simplifies testing __GNUC__ and __GNUC_MINOR__ together, and various
+ wrappers around __attribute__. Also, __extension__ will be #defined
+ to nothing if it doesn't work. See below.
+
+ This header also defines a lot of obsolete macros:
+ CONST, VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID,
+ AND, DOTS, NOARGS. Don't use them. */
+
+#ifndef _ANSIDECL_H
+#define _ANSIDECL_H 1
+
+/* Every source file includes this file,
+ so they will all get the switch for lint. */
+/* LINTLIBRARY */
+
+/* Using MACRO(x,y) in cpp #if conditionals does not work with some
+ older preprocessors. Thus we can't define something like this:
+
+#define HAVE_GCC_VERSION(MAJOR, MINOR) \
+ (__GNUC__ > (MAJOR) || (__GNUC__ == (MAJOR) && __GNUC_MINOR__ >= (MINOR)))
+
+and then test "#if HAVE_GCC_VERSION(2,7)".
+
+So instead we use the macro below and test it against specific values. */
+
+/* This macro simplifies testing whether we are using gcc, and if it
+ is of a particular minimum version. (Both major & minor numbers are
+ significant.) This macro will evaluate to 0 if we are not using
+ gcc at all. */
+#ifndef GCC_VERSION
+#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
+#endif /* GCC_VERSION */
+
+#if defined (__STDC__) || defined (_AIX) || (defined (__mips) && defined (_SYSTYPE_SVR4)) || defined(_WIN32) || (defined(__alpha) && defined(__cplusplus))
+/* All known AIX compilers implement these things (but don't always
+ define __STDC__). The RISC/OS MIPS compiler defines these things
+ in SVR4 mode, but does not define __STDC__. */
+/* eraxxon@alumni.rice.edu: The Compaq C++ compiler, unlike many other
+ C++ compilers, does not define __STDC__, though it acts as if this
+ was so. (Verified versions: 5.7, 6.2, 6.3, 6.5) */
+
+#define ANSI_PROTOTYPES 1
+#define PTR void *
+#define PTRCONST void *const
+#define LONG_DOUBLE long double
+
+#define PARAMS(ARGS) ARGS
+#define VPARAMS(ARGS) ARGS
+#define VA_START(VA_LIST, VAR) va_start(VA_LIST, VAR)
+
+/* variadic function helper macros */
+/* "struct Qdmy" swallows the semicolon after VA_OPEN/VA_FIXEDARG's
+ use without inhibiting further decls and without declaring an
+ actual variable. */
+#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP, VAR); { struct Qdmy
+#define VA_CLOSE(AP) } va_end(AP); }
+#define VA_FIXEDARG(AP, T, N) struct Qdmy
+
+#undef const
+#undef volatile
+#undef signed
+
+/* inline requires special treatment; it's in C99, and GCC >=2.7 supports
+ it too, but it's not in C89. */
+#undef inline
+#if __STDC_VERSION__ > 199901L
+/* it's a keyword */
+#else
+# if GCC_VERSION >= 2007
+# define inline __inline__ /* __inline__ prevents -pedantic warnings */
+# else
+# define inline /* nothing */
+# endif
+#endif
+
+/* These are obsolete. Do not use. */
+#ifndef IN_GCC
+#define CONST const
+#define VOLATILE volatile
+#define SIGNED signed
+
+#define PROTO(type, name, arglist) type name arglist
+#define EXFUN(name, proto) name proto
+#define DEFUN(name, arglist, args) name(args)
+#define DEFUN_VOID(name) name(void)
+#define AND ,
+#define DOTS , ...
+#define NOARGS void
+#endif /* ! IN_GCC */
+
+#else /* Not ANSI C. */
+
+#undef ANSI_PROTOTYPES
+#define PTR char *
+#define PTRCONST PTR
+#define LONG_DOUBLE double
+
+#define PARAMS(args) ()
+#define VPARAMS(args) (va_alist) va_dcl
+#define VA_START(va_list, var) va_start(va_list)
+
+#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP); { struct Qdmy
+#define VA_CLOSE(AP) } va_end(AP); }
+#define VA_FIXEDARG(AP, TYPE, NAME) TYPE NAME = va_arg(AP, TYPE)
+
+/* some systems define these in header files for non-ansi mode */
+#undef const
+#undef volatile
+#undef signed
+#undef inline
+#define const
+#define volatile
+#define signed
+#define inline
+
+#ifndef IN_GCC
+#define CONST
+#define VOLATILE
+#define SIGNED
+
+#define PROTO(type, name, arglist) type name ()
+#define EXFUN(name, proto) name()
+#define DEFUN(name, arglist, args) name arglist args;
+#define DEFUN_VOID(name) name()
+#define AND ;
+#define DOTS
+#define NOARGS
+#endif /* ! IN_GCC */
+
+#endif /* ANSI C. */
+
+/* Define macros for some gcc attributes. This permits us to use the
+ macros freely, and know that they will come into play for the
+ version of gcc in which they are supported. */
+
+#if (GCC_VERSION < 2007)
+# define __attribute__(x)
+#endif
+
+/* Attribute __malloc__ on functions was valid as of gcc 2.96. */
+#ifndef ATTRIBUTE_MALLOC
+# if (GCC_VERSION >= 2096)
+# define ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
+# else
+# define ATTRIBUTE_MALLOC
+# endif /* GNUC >= 2.96 */
+#endif /* ATTRIBUTE_MALLOC */
+
+/* Attributes on labels were valid as of gcc 2.93. */
+#ifndef ATTRIBUTE_UNUSED_LABEL
+# if (GCC_VERSION >= 2093)
+# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED
+# else
+# define ATTRIBUTE_UNUSED_LABEL
+# endif /* GNUC >= 2.93 */
+#endif /* ATTRIBUTE_UNUSED_LABEL */
+
+#ifndef ATTRIBUTE_UNUSED
+#define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
+#endif /* ATTRIBUTE_UNUSED */
+
+/* Before GCC 3.4, the C++ frontend couldn't parse attributes placed after the
+ identifier name. */
+#if ! defined(__cplusplus) || (GCC_VERSION >= 3004)
+# define ARG_UNUSED(NAME) NAME ATTRIBUTE_UNUSED
+#else /* !__cplusplus || GNUC >= 3.4 */
+# define ARG_UNUSED(NAME) NAME
+#endif /* !__cplusplus || GNUC >= 3.4 */
+
+#ifndef ATTRIBUTE_NORETURN
+#define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))
+#endif /* ATTRIBUTE_NORETURN */
+
+/* Attribute `nonnull' was valid as of gcc 3.3. */
+#ifndef ATTRIBUTE_NONNULL
+# if (GCC_VERSION >= 3003)
+# define ATTRIBUTE_NONNULL(m) __attribute__ ((__nonnull__ (m)))
+# else
+# define ATTRIBUTE_NONNULL(m)
+# endif /* GNUC >= 3.3 */
+#endif /* ATTRIBUTE_NONNULL */
+
+/* Attribute `pure' was valid as of gcc 3.0. */
+#ifndef ATTRIBUTE_PURE
+# if (GCC_VERSION >= 3000)
+# define ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+# define ATTRIBUTE_PURE
+# endif /* GNUC >= 3.0 */
+#endif /* ATTRIBUTE_PURE */
+
+/* Use ATTRIBUTE_PRINTF when the format specifier must not be NULL.
+ This was the case for the `printf' format attribute by itself
+ before GCC 3.3, but as of 3.3 we need to add the `nonnull'
+ attribute to retain this behavior. */
+#ifndef ATTRIBUTE_PRINTF
+#define ATTRIBUTE_PRINTF(m, n) __attribute__ ((__format__ (__printf__, m, n))) ATTRIBUTE_NONNULL(m)
+#define ATTRIBUTE_PRINTF_1 ATTRIBUTE_PRINTF(1, 2)
+#define ATTRIBUTE_PRINTF_2 ATTRIBUTE_PRINTF(2, 3)
+#define ATTRIBUTE_PRINTF_3 ATTRIBUTE_PRINTF(3, 4)
+#define ATTRIBUTE_PRINTF_4 ATTRIBUTE_PRINTF(4, 5)
+#define ATTRIBUTE_PRINTF_5 ATTRIBUTE_PRINTF(5, 6)
+#endif /* ATTRIBUTE_PRINTF */
+
+/* Use ATTRIBUTE_NULL_PRINTF when the format specifier may be NULL. A
+ NULL format specifier was allowed as of gcc 3.3. */
+#ifndef ATTRIBUTE_NULL_PRINTF
+# if (GCC_VERSION >= 3003)
+# define ATTRIBUTE_NULL_PRINTF(m, n) __attribute__ ((__format__ (__printf__, m, n)))
+# else
+# define ATTRIBUTE_NULL_PRINTF(m, n)
+# endif /* GNUC >= 3.3 */
+# define ATTRIBUTE_NULL_PRINTF_1 ATTRIBUTE_NULL_PRINTF(1, 2)
+# define ATTRIBUTE_NULL_PRINTF_2 ATTRIBUTE_NULL_PRINTF(2, 3)
+# define ATTRIBUTE_NULL_PRINTF_3 ATTRIBUTE_NULL_PRINTF(3, 4)
+# define ATTRIBUTE_NULL_PRINTF_4 ATTRIBUTE_NULL_PRINTF(4, 5)
+# define ATTRIBUTE_NULL_PRINTF_5 ATTRIBUTE_NULL_PRINTF(5, 6)
+#endif /* ATTRIBUTE_NULL_PRINTF */
+
+/* Attribute `sentinel' was valid as of gcc 3.5. */
+#ifndef ATTRIBUTE_SENTINEL
+# if (GCC_VERSION >= 3005)
+# define ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
+# else
+# define ATTRIBUTE_SENTINEL
+# endif /* GNUC >= 3.5 */
+#endif /* ATTRIBUTE_SENTINEL */
+
+/* We use __extension__ in some places to suppress -pedantic warnings
+ about GCC extensions. This feature didn't work properly before
+ gcc 2.8. */
+#if GCC_VERSION < 2008
+#define __extension__
+#endif
+
+#endif /* ansidecl.h */
diff --git a/include/aout/ChangeLog b/include/aout/ChangeLog
new file mode 100644
index 000000000..148a020e5
--- /dev/null
+++ b/include/aout/ChangeLog
@@ -0,0 +1,212 @@
+2004-01-06 Mark Kettenis <kettenis@gnu.org>
+
+ * stab.def: Add N_PATCH to DO definition.
+
+2003-03-06 Elias Athanasopoulos <elathan@phys.uoa.gr>
+
+ * aout64.h (BYTES_IN_WORD): Define if necessary.
+
+2001-09-18 Alan Modra <amodra@bigpond.net.au>
+
+ * aout64.h: Formatting fixes.
+ (N_TXTADDR): Evaluate to a bfd_vma.
+ (N_DATADDR): Avoid negative unsigned warning.
+ * hp300hpux.h: Formatting fixes.
+ (N_DATADDR): Avoid negative unsigned warning.
+
+2000-04-03 Hans-Peter Nilsson <hp@axis.com>
+
+ * aout64.h (RELOC_EXT_BITS_EXTERN_BIG): Wrap definition in #ifndef.
+ (RELOC_EXT_BITS_EXTERN_LITTLE): Ditto.
+ (RELOC_EXT_BITS_TYPE_BIG): Ditto.
+ (RELOC_EXT_BITS_TYPE_SH_BIG): Ditto.
+ (RELOC_EXT_BITS_TYPE_LITTLE): Ditto.
+ (RELOC_EXT_BITS_TYPE_SH_LITTLE): Ditto.
+
+1999-07-12 Ian Lance Taylor <ian@zembu.com>
+
+ * aout64.h (N_SHARED_LIB): Define as 0 if TEXT_START_ADDR is
+ defined as 0.
+
+1998-06-28 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
+
+ * stab.def: Add N_ALIAS from SunPro F77.
+
+1996-03-11 Ian Lance Taylor <ian@cygnus.com>
+
+ * stab.def: Use __define_stab_duplicate rather than __define_stab
+ for duplicate entries N_BROWS and N_MOD2.
+ * stab_gnu.h (__define_stab_duplicate): Define before including
+ stab.def.
+
+1995-10-27 Niklas Hallqvist <niklas@appli.se>
+
+ * aout64.h, host.h, hp300hpux.h, sun4.h: Changed PAGE_SIZE to
+ TARGET_PAGE_SIZE.
+
+1995-09-12 Ian Lance Taylor <ian@cygnus.com>
+
+ * sun4.h (struct internal_sun4_dynamic_link): Change all fields
+ from long to unsigned long.
+
+1995-07-12 Ken Raeburn <raeburn@kr-pc.cygnus.com>
+
+ * sun4.h (PAGE_SIZE): Undefine before defining.
+
+1994-09-04 Richard Earnshaw (rwe@pegasus.esprit.ec.org)
+
+ * aout64.h: Only define QMAGIC if it isn't already defined.
+
+1994-06-16 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * aout64.h (BMAGIC): Define.
+
+1994-06-11 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ Add weak symbols as an extension to a.out.
+ * aout64.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB): Define.
+ * stab.def: Update symbol value table.
+
+1994-06-02 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * sun4.h (EXTERNAL_SUN4_DYNAMIC_DEBUGGER_SIZE): Correct from 28 to
+ 24. Fix up ld_got comment.
+
+1994-03-30 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * dynix3.h: Cleanup, adapt to current bfd version.
+
+1994-02-26 Ian Lance Taylor (ian@cygnus.com)
+
+ * aout64.h: Add casts to avoid warnings from SVR4 cc.
+
+1994-02-11 Stan Shebs (shebs@andros.cygnus.com)
+
+ * ar.h (ARMAG, ARMAGB, ARFMAG): Change '\n' to '\012', for greater
+ portability.
+
+1994-01-21 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * sun4.h: Added information about SunOS shared libraries.
+
+1994-01-07 Jim Kingdon (kingdon@deneb.cygnus.com)
+
+ * aout64.h (N_TXTADDR): Add comment regarding OMAGIC and NMAGIC.
+
+1993-12-25 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * aout64.h (N_DATOFF): Don't pad (revert change of 8 Jul 1993).
+
+1993-11-16 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * aout64.h: New macros ZMAGIC_DISK_BLOCK_SIZE and N_DISK_BLOCK_SIZE
+ for Linux ZMAGIC.
+ (N_TXTOFF, N_DATOFF): Use them.
+
+1993-11-04 Ken Raeburn (raeburn@kr-pc.cygnus.com)
+
+ * aout64.h (RELOC_STD_BITS_RELATIVE_LITTLE): Fixed value to match
+ sun3 system; used to overlap other fields.
+ (RELOC_STD_BITS_JMPTABLE_LITTLE): Likewise.
+
+1993-11-03 David J. Mackenzie (djm@thepub.cygnus.com)
+
+ * aout64.h (RELOC_STD_BITS_BASEREL_LITTLE): Make it 0x10 (Ken's
+ suggestion) to avoid conflict with RELOC_STD_BITS_EXTERN_LITTLE.
+
+1993-10-29 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * hp300hpux.h (N_SHARED_LIB): Define to be 0.
+
+1993-09-13 John Gilmore (gnu@cygnus.com)
+
+ * ar.h (ARMAP_TIME_OFFSET): Add and describe.
+
+Mon Aug 23 Sean Fagan (sef@cygnus.com)
+
+ * aout64.h [ARCH_SIZE != 64]: Allow N_BADMAG to be overridden.
+
+1993-08-16 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * stab_gnu.h: Include aout/stab.def not just stab.def.
+
+1993-07-18 Jim Kingdon (kingdon@rtl.cygnus.com)
+
+ * dynix3.h: New, for symmetry running dynix.
+
+1993-07-08 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * aout64.h (N_BADMAG): Recognize QMAGIC.
+ N_TXTOFF, N_TXTADDR, N_TXTSIZE: Special code for QMAGIC.
+ N_DATOFF: Pad text size if we need to.
+
+1993-06-18 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * stab.def (N_ECOML): Fix comment.
+
+1993-05-31 Jim Kingdon (kingdon@cygnus.com)
+
+ * stab.def: Remove Solaris information on N_FUN stabstring grammar;
+ I've transferred it to gdb/doc/stabs.texinfo, where it belongs.
+
+1993-05-10 Ken Raeburn (raeburn@kr-pc.cygnus.com)
+
+ * hp300hpux.h: Patch from Glenn Engel for linker problem and
+ compatibility fix:
+ (OMAGIC, NMAGIC): New definitions.
+ (SHAREMAGIC): Deleted.
+ (HPUX_DOT_O_MAGIC): New macro.
+ (_N_BADMAG): Adjusted.
+ (N_HEADER_IN_TEXT, N_DATADDR): New macros.
+
+1993-04-29 Ken Raeburn (raeburn@deneb.cygnus.com)
+
+ * hp300hpux.h: New file from Glenn Engel, glenne@lsid.hp.com.
+
+1993-04-27 Ken Raeburn (raeburn@kr-pc.cygnus.com)
+
+ * aout64.h (struct external_exec, *MAGIC, N_BADMAG): Don't define
+ if `external_exec' is already defined as a macro.
+ (N_DATOFF, N_TRELOFF, N_DRELOFF, N_SYMOFF, N_STROFF): Don't define
+ if already defined.
+ (struct external_nlist, EXTERNAL_NLIST_SIZE): Don't define if
+ `external_nlist' is already defined as a macro.
+
+1992-08-15 John Gilmore (gnu@cygnus.com)
+
+ * adobe.h: Add description of a.out.adobe format.
+
+1992-07-03 John Gilmore (gnu at cygnus.com)
+
+ * stab.def: Update more Solaris definitions.
+ * stab_gnu.h: Add N_SO language types, and Solaris basic float types.
+
+1992-06-14 John Gilmore (gnu at cygnus.com)
+
+ * stab.def: Update descriptions of Solaris-2 stabs; add N_UNDF.
+
+1992-06-11 John Gilmore (gnu at cygnus.com)
+
+ * stab.def: Add N_OBJ and N_OPT from Solaris-2.
+
+1992-01-30 John Gilmore (gnu at cygnus.com)
+
+ * aout64.h: N_TXTSIZE needs some more parentheses.
+ I don't trust C precedence.
+
+1991-12-18 Per Bothner (bothner at cygnus.com)
+
+ * aout64.h: Move common sunos-specific test
+ to recognize shared libraries into new macro N_SHARED_LIB.
+ Use it to simplify & reformat N_TXTADDR, N_TXTOFF, N_TXTSIZE.
+
+1991-11-30 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * aout64.h, ar.h, encap.h, host.h, hp.h, ranlib.h, reloc.h,
+ stab.def, stab_gnu.h, sun4.h: All moved from the devo/include
+ directory.
+
+
+Local Variables:
+version-control: never
+End:
diff --git a/include/aout/adobe.h b/include/aout/adobe.h
new file mode 100644
index 000000000..c751d103a
--- /dev/null
+++ b/include/aout/adobe.h
@@ -0,0 +1,313 @@
+/* `a.out.adobe' differences from standard a.out files
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef __A_OUT_ADOBE_H__
+#define __A_OUT_ADOBE_H__
+
+#define BYTES_IN_WORD 4
+
+/* Struct external_exec is the same. */
+
+/* This is the layout on disk of the 32-bit or 64-bit exec header. */
+
+struct external_exec
+{
+ bfd_byte e_info[4]; /* magic number and stuff */
+ bfd_byte e_text[BYTES_IN_WORD]; /* length of text section in bytes */
+ bfd_byte e_data[BYTES_IN_WORD]; /* length of data section in bytes */
+ bfd_byte e_bss[BYTES_IN_WORD]; /* length of bss area in bytes */
+ bfd_byte e_syms[BYTES_IN_WORD]; /* length of symbol table in bytes */
+ bfd_byte e_entry[BYTES_IN_WORD]; /* start address */
+ bfd_byte e_trsize[BYTES_IN_WORD]; /* length of text relocation info */
+ bfd_byte e_drsize[BYTES_IN_WORD]; /* length of data relocation info */
+};
+
+#define EXEC_BYTES_SIZE (4 + BYTES_IN_WORD * 7)
+
+/* Magic numbers for a.out files */
+
+#undef ZMAGIC
+#define ZMAGIC 0xAD0BE /* Cute, eh? */
+#undef OMAGIC
+#undef NMAGIC
+
+#define N_BADMAG(x) ((x).a_info != ZMAGIC)
+
+/* By default, segment size is constant. But some machines override this
+ to be a function of the a.out header (e.g. machine type). */
+#ifndef N_SEGSIZE
+#define N_SEGSIZE(x) SEGMENT_SIZE
+#endif
+#undef N_SEGSIZE /* FIXMEXXXX */
+
+/* Segment information for the a.out.Adobe format is specified after the
+ file header. It contains N segment descriptors, followed by one with
+ a type of zero.
+
+ The actual text of the segments starts at N_TXTOFF in the file,
+ regardless of how many or how few segment headers there are. */
+
+struct external_segdesc {
+ unsigned char e_type[1];
+ unsigned char e_size[3];
+ unsigned char e_virtbase[4];
+ unsigned char e_filebase[4];
+};
+
+struct internal_segdesc {
+ unsigned int a_type:8; /* Segment type N_TEXT, N_DATA, 0 */
+ unsigned int a_size:24; /* Segment size */
+ bfd_vma a_virtbase; /* Virtual address */
+ unsigned int a_filebase; /* Base address in object file */
+};
+
+#define N_TXTADDR(x) \
+
+/* This is documented to be at 1024, but appears to really be at 2048.
+ FIXME?! */
+#define N_TXTOFF(x) 2048
+
+#define N_TXTSIZE(x) ((x).a_text)
+
+#define N_DATADDR(x)
+
+#define N_BSSADDR(x)
+
+/* Offsets of the various portions of the file after the text segment. */
+
+#define N_DATOFF(x) ( N_TXTOFF(x) + N_TXTSIZE(x) )
+#define N_TRELOFF(x) ( N_DATOFF(x) + (x).a_data )
+#define N_DRELOFF(x) ( N_TRELOFF(x) + (x).a_trsize )
+#define N_SYMOFF(x) ( N_DRELOFF(x) + (x).a_drsize )
+#define N_STROFF(x) ( N_SYMOFF(x) + (x).a_syms )
+
+/* Symbols */
+struct external_nlist {
+ bfd_byte e_strx[BYTES_IN_WORD]; /* index into string table of name */
+ bfd_byte e_type[1]; /* type of symbol */
+ bfd_byte e_other[1]; /* misc info (usually empty) */
+ bfd_byte e_desc[2]; /* description field */
+ bfd_byte e_value[BYTES_IN_WORD]; /* value of symbol */
+};
+
+#define EXTERNAL_NLIST_SIZE (BYTES_IN_WORD+4+BYTES_IN_WORD)
+
+struct internal_nlist {
+ unsigned long n_strx; /* index into string table of name */
+ unsigned char n_type; /* type of symbol */
+ unsigned char n_other; /* misc info (usually empty) */
+ unsigned short n_desc; /* description field */
+ bfd_vma n_value; /* value of symbol */
+};
+
+/* The n_type field is the symbol type, containing: */
+
+#define N_UNDF 0 /* Undefined symbol */
+#define N_ABS 2 /* Absolute symbol -- defined at particular addr */
+#define N_TEXT 4 /* Text sym -- defined at offset in text seg */
+#define N_DATA 6 /* Data sym -- defined at offset in data seg */
+#define N_BSS 8 /* BSS sym -- defined at offset in zero'd seg */
+#define N_COMM 0x12 /* Common symbol (visible after shared lib dynlink) */
+#define N_FN 0x1f /* File name of .o file */
+#define N_FN_SEQ 0x0C /* N_FN from Sequent compilers (sigh) */
+/* Note: N_EXT can only be usefully OR-ed with N_UNDF, N_ABS, N_TEXT,
+ N_DATA, or N_BSS. When the low-order bit of other types is set,
+ (e.g. N_WARNING versus N_FN), they are two different types. */
+#define N_EXT 1 /* External symbol (as opposed to local-to-this-file) */
+#define N_TYPE 0x1e
+#define N_STAB 0xe0 /* If any of these bits are on, it's a debug symbol */
+
+#define N_INDR 0x0a
+
+/* The following symbols refer to set elements.
+ All the N_SET[ATDB] symbols with the same name form one set.
+ Space is allocated for the set in the text section, and each set
+ elements value is stored into one word of the space.
+ The first word of the space is the length of the set (number of elements).
+
+ The address of the set is made into an N_SETV symbol
+ whose name is the same as the name of the set.
+ This symbol acts like a N_DATA global symbol
+ in that it can satisfy undefined external references. */
+
+/* These appear as input to LD, in a .o file. */
+#define N_SETA 0x14 /* Absolute set element symbol */
+#define N_SETT 0x16 /* Text set element symbol */
+#define N_SETD 0x18 /* Data set element symbol */
+#define N_SETB 0x1A /* Bss set element symbol */
+
+/* This is output from LD. */
+#define N_SETV 0x1C /* Pointer to set vector in data area. */
+
+/* Warning symbol. The text gives a warning message, the next symbol
+ in the table will be undefined. When the symbol is referenced, the
+ message is printed. */
+
+#define N_WARNING 0x1e
+
+/* Relocations
+
+ There are two types of relocation flavours for a.out systems,
+ standard and extended. The standard form is used on systems where the
+ instruction has room for all the bits of an offset to the operand, whilst
+ the extended form is used when an address operand has to be split over n
+ instructions. Eg, on the 68k, each move instruction can reference
+ the target with a displacement of 16 or 32 bits. On the sparc, move
+ instructions use an offset of 14 bits, so the offset is stored in
+ the reloc field, and the data in the section is ignored.
+*/
+
+/* This structure describes a single relocation to be performed.
+ The text-relocation section of the file is a vector of these structures,
+ all of which apply to the text section.
+ Likewise, the data-relocation section applies to the data section. */
+
+struct reloc_std_external {
+ bfd_byte r_address[BYTES_IN_WORD]; /* offset of of data to relocate */
+ bfd_byte r_index[3]; /* symbol table index of symbol */
+ bfd_byte r_type[1]; /* relocation type */
+};
+
+#define RELOC_STD_BITS_PCREL_BIG 0x80
+#define RELOC_STD_BITS_PCREL_LITTLE 0x01
+
+#define RELOC_STD_BITS_LENGTH_BIG 0x60
+#define RELOC_STD_BITS_LENGTH_SH_BIG 5 /* To shift to units place */
+#define RELOC_STD_BITS_LENGTH_LITTLE 0x06
+#define RELOC_STD_BITS_LENGTH_SH_LITTLE 1
+
+#define RELOC_STD_BITS_EXTERN_BIG 0x10
+#define RELOC_STD_BITS_EXTERN_LITTLE 0x08
+
+#define RELOC_STD_BITS_BASEREL_BIG 0x08
+#define RELOC_STD_BITS_BASEREL_LITTLE 0x08
+
+#define RELOC_STD_BITS_JMPTABLE_BIG 0x04
+#define RELOC_STD_BITS_JMPTABLE_LITTLE 0x04
+
+#define RELOC_STD_BITS_RELATIVE_BIG 0x02
+#define RELOC_STD_BITS_RELATIVE_LITTLE 0x02
+
+#define RELOC_STD_SIZE (BYTES_IN_WORD + 3 + 1) /* Bytes per relocation entry */
+
+struct reloc_std_internal
+{
+ bfd_vma r_address; /* Address (within segment) to be relocated. */
+ /* The meaning of r_symbolnum depends on r_extern. */
+ unsigned int r_symbolnum:24;
+ /* Nonzero means value is a pc-relative offset
+ and it should be relocated for changes in its own address
+ as well as for changes in the symbol or section specified. */
+ unsigned int r_pcrel:1;
+ /* Length (as exponent of 2) of the field to be relocated.
+ Thus, a value of 2 indicates 1<<2 bytes. */
+ unsigned int r_length:2;
+ /* 1 => relocate with value of symbol.
+ r_symbolnum is the index of the symbol
+ in files the symbol table.
+ 0 => relocate with the address of a segment.
+ r_symbolnum is N_TEXT, N_DATA, N_BSS or N_ABS
+ (the N_EXT bit may be set also, but signifies nothing). */
+ unsigned int r_extern:1;
+ /* The next three bits are for SunOS shared libraries, and seem to
+ be undocumented. */
+ unsigned int r_baserel:1; /* Linkage table relative */
+ unsigned int r_jmptable:1; /* pc-relative to jump table */
+ unsigned int r_relative:1; /* "relative relocation" */
+ /* unused */
+ unsigned int r_pad:1; /* Padding -- set to zero */
+};
+
+
+/* EXTENDED RELOCS */
+
+struct reloc_ext_external {
+ bfd_byte r_address[BYTES_IN_WORD]; /* offset of of data to relocate */
+ bfd_byte r_index[3]; /* symbol table index of symbol */
+ bfd_byte r_type[1]; /* relocation type */
+ bfd_byte r_addend[BYTES_IN_WORD]; /* datum addend */
+};
+
+#define RELOC_EXT_BITS_EXTERN_BIG 0x80
+#define RELOC_EXT_BITS_EXTERN_LITTLE 0x01
+
+#define RELOC_EXT_BITS_TYPE_BIG 0x1F
+#define RELOC_EXT_BITS_TYPE_SH_BIG 0
+#define RELOC_EXT_BITS_TYPE_LITTLE 0xF8
+#define RELOC_EXT_BITS_TYPE_SH_LITTLE 3
+
+/* Bytes per relocation entry */
+#define RELOC_EXT_SIZE (BYTES_IN_WORD + 3 + 1 + BYTES_IN_WORD)
+
+enum reloc_type
+{
+ /* simple relocations */
+ RELOC_8, /* data[0:7] = addend + sv */
+ RELOC_16, /* data[0:15] = addend + sv */
+ RELOC_32, /* data[0:31] = addend + sv */
+ /* pc-rel displacement */
+ RELOC_DISP8, /* data[0:7] = addend - pc + sv */
+ RELOC_DISP16, /* data[0:15] = addend - pc + sv */
+ RELOC_DISP32, /* data[0:31] = addend - pc + sv */
+ /* Special */
+ RELOC_WDISP30, /* data[0:29] = (addend + sv - pc)>>2 */
+ RELOC_WDISP22, /* data[0:21] = (addend + sv - pc)>>2 */
+ RELOC_HI22, /* data[0:21] = (addend + sv)>>10 */
+ RELOC_22, /* data[0:21] = (addend + sv) */
+ RELOC_13, /* data[0:12] = (addend + sv) */
+ RELOC_LO10, /* data[0:9] = (addend + sv) */
+ RELOC_SFA_BASE,
+ RELOC_SFA_OFF13,
+ /* P.I.C. (base-relative) */
+ RELOC_BASE10, /* Not sure - maybe we can do this the */
+ RELOC_BASE13, /* right way now */
+ RELOC_BASE22,
+ /* for some sort of pc-rel P.I.C. (?) */
+ RELOC_PC10,
+ RELOC_PC22,
+ /* P.I.C. jump table */
+ RELOC_JMP_TBL,
+ /* reputedly for shared libraries somehow */
+ RELOC_SEGOFF16,
+ RELOC_GLOB_DAT,
+ RELOC_JMP_SLOT,
+ RELOC_RELATIVE,
+
+ RELOC_11,
+ RELOC_WDISP2_14,
+ RELOC_WDISP19,
+ RELOC_HHI22, /* data[0:21] = (addend + sv) >> 42 */
+ RELOC_HLO10, /* data[0:9] = (addend + sv) >> 32 */
+
+ /* 29K relocation types */
+ RELOC_JUMPTARG,
+ RELOC_CONST,
+ RELOC_CONSTH,
+
+ NO_RELOC
+ };
+
+
+struct reloc_internal {
+ bfd_vma r_address; /* offset of of data to relocate */
+ long r_index; /* symbol table index of symbol */
+ enum reloc_type r_type; /* relocation type */
+ bfd_vma r_addend; /* datum addend */
+};
+
+#endif /* __A_OUT_ADOBE_H__ */
diff --git a/include/aout/aout64.h b/include/aout/aout64.h
new file mode 100644
index 000000000..4843410d2
--- /dev/null
+++ b/include/aout/aout64.h
@@ -0,0 +1,519 @@
+/* `a.out' object-file definitions, including extensions to 64-bit fields
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef __A_OUT_64_H__
+#define __A_OUT_64_H__
+
+#ifndef BYTES_IN_WORD
+#define BYTES_IN_WORD 4
+#endif
+
+/* This is the layout on disk of the 32-bit or 64-bit exec header. */
+
+#ifndef external_exec
+struct external_exec
+{
+ bfd_byte e_info[4]; /* Magic number and stuff. */
+ bfd_byte e_text[BYTES_IN_WORD]; /* Length of text section in bytes. */
+ bfd_byte e_data[BYTES_IN_WORD]; /* Length of data section in bytes. */
+ bfd_byte e_bss[BYTES_IN_WORD]; /* Length of bss area in bytes. */
+ bfd_byte e_syms[BYTES_IN_WORD]; /* Length of symbol table in bytes. */
+ bfd_byte e_entry[BYTES_IN_WORD]; /* Start address. */
+ bfd_byte e_trsize[BYTES_IN_WORD]; /* Length of text relocation info. */
+ bfd_byte e_drsize[BYTES_IN_WORD]; /* Length of data relocation info. */
+};
+
+#define EXEC_BYTES_SIZE (4 + BYTES_IN_WORD * 7)
+
+/* Magic numbers for a.out files. */
+
+#if ARCH_SIZE==64
+#define OMAGIC 0x1001 /* Code indicating object file. */
+#define ZMAGIC 0x1002 /* Code indicating demand-paged executable. */
+#define NMAGIC 0x1003 /* Code indicating pure executable. */
+
+/* There is no 64-bit QMAGIC as far as I know. */
+
+#define N_BADMAG(x) (N_MAGIC(x) != OMAGIC \
+ && N_MAGIC(x) != NMAGIC \
+ && N_MAGIC(x) != ZMAGIC)
+#else
+#define OMAGIC 0407 /* Object file or impure executable. */
+#define NMAGIC 0410 /* Code indicating pure executable. */
+#define ZMAGIC 0413 /* Code indicating demand-paged executable. */
+#define BMAGIC 0415 /* Used by a b.out object. */
+
+/* This indicates a demand-paged executable with the header in the text.
+ It is used by 386BSD (and variants) and Linux, at least. */
+#ifndef QMAGIC
+#define QMAGIC 0314
+#endif
+# ifndef N_BADMAG
+# define N_BADMAG(x) (N_MAGIC(x) != OMAGIC \
+ && N_MAGIC(x) != NMAGIC \
+ && N_MAGIC(x) != ZMAGIC \
+ && N_MAGIC(x) != QMAGIC)
+# endif /* N_BADMAG */
+#endif
+
+#endif
+
+#ifdef QMAGIC
+#define N_IS_QMAGIC(x) (N_MAGIC (x) == QMAGIC)
+#else
+#define N_IS_QMAGIC(x) (0)
+#endif
+
+/* The difference between TARGET_PAGE_SIZE and N_SEGSIZE is that TARGET_PAGE_SIZE is
+ the finest granularity at which you can page something, thus it
+ controls the padding (if any) before the text segment of a ZMAGIC
+ file. N_SEGSIZE is the resolution at which things can be marked as
+ read-only versus read/write, so it controls the padding between the
+ text segment and the data segment (in memory; on disk the padding
+ between them is TARGET_PAGE_SIZE). TARGET_PAGE_SIZE and N_SEGSIZE are the same
+ for most machines, but different for sun3. */
+
+/* By default, segment size is constant. But some machines override this
+ to be a function of the a.out header (e.g. machine type). */
+
+#ifndef N_SEGSIZE
+#define N_SEGSIZE(x) SEGMENT_SIZE
+#endif
+
+/* Virtual memory address of the text section.
+ This is getting very complicated. A good reason to discard a.out format
+ for something that specifies these fields explicitly. But til then...
+
+ * OMAGIC and NMAGIC files:
+ (object files: text for "relocatable addr 0" right after the header)
+ start at 0, offset is EXEC_BYTES_SIZE, size as stated.
+ * The text address, offset, and size of ZMAGIC files depend
+ on the entry point of the file:
+ * entry point below TEXT_START_ADDR:
+ (hack for SunOS shared libraries)
+ start at 0, offset is 0, size as stated.
+ * If N_HEADER_IN_TEXT(x) is true (which defaults to being the
+ case when the entry point is EXEC_BYTES_SIZE or further into a page):
+ no padding is needed; text can start after exec header. Sun
+ considers the text segment of such files to include the exec header;
+ for BFD's purposes, we don't, which makes more work for us.
+ start at TEXT_START_ADDR + EXEC_BYTES_SIZE, offset is EXEC_BYTES_SIZE,
+ size as stated minus EXEC_BYTES_SIZE.
+ * If N_HEADER_IN_TEXT(x) is false (which defaults to being the case when
+ the entry point is less than EXEC_BYTES_SIZE into a page (e.g. page
+ aligned)): (padding is needed so that text can start at a page boundary)
+ start at TEXT_START_ADDR, offset TARGET_PAGE_SIZE, size as stated.
+
+ Specific configurations may want to hardwire N_HEADER_IN_TEXT,
+ for efficiency or to allow people to play games with the entry point.
+ In that case, you would #define N_HEADER_IN_TEXT(x) as 1 for sunos,
+ and as 0 for most other hosts (Sony News, Vax Ultrix, etc).
+ (Do this in the appropriate bfd target file.)
+ (The default is a heuristic that will break if people try changing
+ the entry point, perhaps with the ld -e flag.)
+
+ * QMAGIC is always like a ZMAGIC for which N_HEADER_IN_TEXT is true,
+ and for which the starting address is TARGET_PAGE_SIZE (or should this be
+ SEGMENT_SIZE?) (TEXT_START_ADDR only applies to ZMAGIC, not to QMAGIC). */
+
+/* This macro is only relevant for ZMAGIC files; QMAGIC always has the header
+ in the text. */
+#ifndef N_HEADER_IN_TEXT
+#define N_HEADER_IN_TEXT(x) \
+ (((x).a_entry & (TARGET_PAGE_SIZE-1)) >= EXEC_BYTES_SIZE)
+#endif
+
+/* Sun shared libraries, not linux. This macro is only relevant for ZMAGIC
+ files. */
+#ifndef N_SHARED_LIB
+#if defined (TEXT_START_ADDR) && TEXT_START_ADDR == 0
+#define N_SHARED_LIB(x) (0)
+#else
+#define N_SHARED_LIB(x) ((x).a_entry < TEXT_START_ADDR)
+#endif
+#endif
+
+/* Returning 0 not TEXT_START_ADDR for OMAGIC and NMAGIC is based on
+ the assumption that we are dealing with a .o file, not an
+ executable. This is necessary for OMAGIC (but means we don't work
+ right on the output from ld -N); more questionable for NMAGIC. */
+
+#ifndef N_TXTADDR
+#define N_TXTADDR(x) \
+ (/* The address of a QMAGIC file is always one page in, \
+ with the header in the text. */ \
+ N_IS_QMAGIC (x) \
+ ? (bfd_vma) TARGET_PAGE_SIZE + EXEC_BYTES_SIZE \
+ : (N_MAGIC (x) != ZMAGIC \
+ ? (bfd_vma) 0 /* Object file or NMAGIC. */ \
+ : (N_SHARED_LIB (x) \
+ ? (bfd_vma) 0 \
+ : (N_HEADER_IN_TEXT (x) \
+ ? (bfd_vma) TEXT_START_ADDR + EXEC_BYTES_SIZE \
+ : (bfd_vma) TEXT_START_ADDR))))
+#endif
+
+/* If N_HEADER_IN_TEXT is not true for ZMAGIC, there is some padding
+ to make the text segment start at a certain boundary. For most
+ systems, this boundary is TARGET_PAGE_SIZE. But for Linux, in the
+ time-honored tradition of crazy ZMAGIC hacks, it is 1024 which is
+ not what TARGET_PAGE_SIZE needs to be for QMAGIC. */
+
+#ifndef ZMAGIC_DISK_BLOCK_SIZE
+#define ZMAGIC_DISK_BLOCK_SIZE TARGET_PAGE_SIZE
+#endif
+
+#define N_DISK_BLOCK_SIZE(x) \
+ (N_MAGIC(x) == ZMAGIC ? ZMAGIC_DISK_BLOCK_SIZE : TARGET_PAGE_SIZE)
+
+/* Offset in an a.out of the start of the text section. */
+#ifndef N_TXTOFF
+#define N_TXTOFF(x) \
+ (/* For {O,N,Q}MAGIC, no padding. */ \
+ N_MAGIC (x) != ZMAGIC \
+ ? EXEC_BYTES_SIZE \
+ : (N_SHARED_LIB (x) \
+ ? 0 \
+ : (N_HEADER_IN_TEXT (x) \
+ ? EXEC_BYTES_SIZE /* No padding. */ \
+ : ZMAGIC_DISK_BLOCK_SIZE /* A page of padding. */)))
+#endif
+/* Size of the text section. It's always as stated, except that we
+ offset it to `undo' the adjustment to N_TXTADDR and N_TXTOFF
+ for ZMAGIC files that nominally include the exec header
+ as part of the first page of text. (BFD doesn't consider the
+ exec header to be part of the text segment.) */
+#ifndef N_TXTSIZE
+#define N_TXTSIZE(x) \
+ (/* For QMAGIC, we don't consider the header part of the text section. */\
+ N_IS_QMAGIC (x) \
+ ? (x).a_text - EXEC_BYTES_SIZE \
+ : ((N_MAGIC (x) != ZMAGIC || N_SHARED_LIB (x)) \
+ ? (x).a_text \
+ : (N_HEADER_IN_TEXT (x) \
+ ? (x).a_text - EXEC_BYTES_SIZE /* No padding. */ \
+ : (x).a_text /* A page of padding. */ )))
+#endif
+/* The address of the data segment in virtual memory.
+ It is the text segment address, plus text segment size, rounded
+ up to a N_SEGSIZE boundary for pure or pageable files. */
+#ifndef N_DATADDR
+#define N_DATADDR(x) \
+ (N_MAGIC (x) == OMAGIC \
+ ? (N_TXTADDR (x) + N_TXTSIZE (x)) \
+ : (N_SEGSIZE (x) + ((N_TXTADDR (x) + N_TXTSIZE (x) - 1) \
+ & ~ (bfd_vma) (N_SEGSIZE (x) - 1))))
+#endif
+/* The address of the BSS segment -- immediately after the data segment. */
+
+#define N_BSSADDR(x) (N_DATADDR (x) + (x).a_data)
+
+/* Offsets of the various portions of the file after the text segment. */
+
+/* For {Q,Z}MAGIC, there is padding to make the data segment start on
+ a page boundary. Most of the time the a_text field (and thus
+ N_TXTSIZE) already contains this padding. It is possible that for
+ BSDI and/or 386BSD it sometimes doesn't contain the padding, and
+ perhaps we should be adding it here. But this seems kind of
+ questionable and probably should be BSDI/386BSD-specific if we do
+ do it.
+
+ For NMAGIC (at least for hp300 BSD, probably others), there is
+ padding in memory only, not on disk, so we must *not* ever pad here
+ for NMAGIC. */
+
+#ifndef N_DATOFF
+#define N_DATOFF(x) (N_TXTOFF (x) + N_TXTSIZE (x))
+#endif
+#ifndef N_TRELOFF
+#define N_TRELOFF(x) (N_DATOFF (x) + (x).a_data)
+#endif
+#ifndef N_DRELOFF
+#define N_DRELOFF(x) (N_TRELOFF (x) + (x).a_trsize)
+#endif
+#ifndef N_SYMOFF
+#define N_SYMOFF(x) (N_DRELOFF (x) + (x).a_drsize)
+#endif
+#ifndef N_STROFF
+#define N_STROFF(x) (N_SYMOFF (x) + (x).a_syms)
+#endif
+
+/* Symbols */
+#ifndef external_nlist
+struct external_nlist
+{
+ bfd_byte e_strx[BYTES_IN_WORD]; /* Index into string table of name. */
+ bfd_byte e_type[1]; /* Type of symbol. */
+ bfd_byte e_other[1]; /* Misc info (usually empty). */
+ bfd_byte e_desc[2]; /* Description field. */
+ bfd_byte e_value[BYTES_IN_WORD]; /* Value of symbol. */
+};
+#define EXTERNAL_NLIST_SIZE (BYTES_IN_WORD+4+BYTES_IN_WORD)
+#endif
+
+struct internal_nlist
+{
+ unsigned long n_strx; /* Index into string table of name. */
+ unsigned char n_type; /* Type of symbol. */
+ unsigned char n_other; /* Misc info (usually empty). */
+ unsigned short n_desc; /* Description field. */
+ bfd_vma n_value; /* Value of symbol. */
+};
+
+/* The n_type field is the symbol type, containing: */
+
+#define N_UNDF 0 /* Undefined symbol. */
+#define N_ABS 2 /* Absolute symbol -- defined at particular addr. */
+#define N_TEXT 4 /* Text sym -- defined at offset in text seg. */
+#define N_DATA 6 /* Data sym -- defined at offset in data seg. */
+#define N_BSS 8 /* BSS sym -- defined at offset in zero'd seg. */
+#define N_COMM 0x12 /* Common symbol (visible after shared lib dynlink). */
+#define N_FN 0x1f /* File name of .o file. */
+#define N_FN_SEQ 0x0C /* N_FN from Sequent compilers (sigh). */
+/* Note: N_EXT can only be usefully OR-ed with N_UNDF, N_ABS, N_TEXT,
+ N_DATA, or N_BSS. When the low-order bit of other types is set,
+ (e.g. N_WARNING versus N_FN), they are two different types. */
+#define N_EXT 1 /* External symbol (as opposed to local-to-this-file). */
+#define N_TYPE 0x1e
+#define N_STAB 0xe0 /* If any of these bits are on, it's a debug symbol. */
+
+#define N_INDR 0x0a
+
+/* The following symbols refer to set elements.
+ All the N_SET[ATDB] symbols with the same name form one set.
+ Space is allocated for the set in the text section, and each set
+ elements value is stored into one word of the space.
+ The first word of the space is the length of the set (number of elements).
+
+ The address of the set is made into an N_SETV symbol
+ whose name is the same as the name of the set.
+ This symbol acts like a N_DATA global symbol
+ in that it can satisfy undefined external references. */
+
+/* These appear as input to LD, in a .o file. */
+#define N_SETA 0x14 /* Absolute set element symbol. */
+#define N_SETT 0x16 /* Text set element symbol. */
+#define N_SETD 0x18 /* Data set element symbol. */
+#define N_SETB 0x1A /* Bss set element symbol. */
+
+/* This is output from LD. */
+#define N_SETV 0x1C /* Pointer to set vector in data area. */
+
+/* Warning symbol. The text gives a warning message, the next symbol
+ in the table will be undefined. When the symbol is referenced, the
+ message is printed. */
+
+#define N_WARNING 0x1e
+
+/* Weak symbols. These are a GNU extension to the a.out format. The
+ semantics are those of ELF weak symbols. Weak symbols are always
+ externally visible. The N_WEAK? values are squeezed into the
+ available slots. The value of a N_WEAKU symbol is 0. The values
+ of the other types are the definitions. */
+#define N_WEAKU 0x0d /* Weak undefined symbol. */
+#define N_WEAKA 0x0e /* Weak absolute symbol. */
+#define N_WEAKT 0x0f /* Weak text symbol. */
+#define N_WEAKD 0x10 /* Weak data symbol. */
+#define N_WEAKB 0x11 /* Weak bss symbol. */
+
+/* Relocations
+
+ There are two types of relocation flavours for a.out systems,
+ standard and extended. The standard form is used on systems where the
+ instruction has room for all the bits of an offset to the operand, whilst
+ the extended form is used when an address operand has to be split over n
+ instructions. Eg, on the 68k, each move instruction can reference
+ the target with a displacement of 16 or 32 bits. On the sparc, move
+ instructions use an offset of 14 bits, so the offset is stored in
+ the reloc field, and the data in the section is ignored. */
+
+/* This structure describes a single relocation to be performed.
+ The text-relocation section of the file is a vector of these structures,
+ all of which apply to the text section.
+ Likewise, the data-relocation section applies to the data section. */
+
+struct reloc_std_external
+{
+ bfd_byte r_address[BYTES_IN_WORD]; /* Offset of of data to relocate. */
+ bfd_byte r_index[3]; /* Symbol table index of symbol. */
+ bfd_byte r_type[1]; /* Relocation type. */
+};
+
+#define RELOC_STD_BITS_PCREL_BIG ((unsigned int) 0x80)
+#define RELOC_STD_BITS_PCREL_LITTLE ((unsigned int) 0x01)
+
+#define RELOC_STD_BITS_LENGTH_BIG ((unsigned int) 0x60)
+#define RELOC_STD_BITS_LENGTH_SH_BIG 5
+#define RELOC_STD_BITS_LENGTH_LITTLE ((unsigned int) 0x06)
+#define RELOC_STD_BITS_LENGTH_SH_LITTLE 1
+
+#define RELOC_STD_BITS_EXTERN_BIG ((unsigned int) 0x10)
+#define RELOC_STD_BITS_EXTERN_LITTLE ((unsigned int) 0x08)
+
+#define RELOC_STD_BITS_BASEREL_BIG ((unsigned int) 0x08)
+#define RELOC_STD_BITS_BASEREL_LITTLE ((unsigned int) 0x10)
+
+#define RELOC_STD_BITS_JMPTABLE_BIG ((unsigned int) 0x04)
+#define RELOC_STD_BITS_JMPTABLE_LITTLE ((unsigned int) 0x20)
+
+#define RELOC_STD_BITS_RELATIVE_BIG ((unsigned int) 0x02)
+#define RELOC_STD_BITS_RELATIVE_LITTLE ((unsigned int) 0x40)
+
+#define RELOC_STD_SIZE (BYTES_IN_WORD + 3 + 1) /* Bytes per relocation entry. */
+
+struct reloc_std_internal
+{
+ bfd_vma r_address; /* Address (within segment) to be relocated. */
+ /* The meaning of r_symbolnum depends on r_extern. */
+ unsigned int r_symbolnum:24;
+ /* Nonzero means value is a pc-relative offset
+ and it should be relocated for changes in its own address
+ as well as for changes in the symbol or section specified. */
+ unsigned int r_pcrel:1;
+ /* Length (as exponent of 2) of the field to be relocated.
+ Thus, a value of 2 indicates 1<<2 bytes. */
+ unsigned int r_length:2;
+ /* 1 => relocate with value of symbol.
+ r_symbolnum is the index of the symbol
+ in files the symbol table.
+ 0 => relocate with the address of a segment.
+ r_symbolnum is N_TEXT, N_DATA, N_BSS or N_ABS
+ (the N_EXT bit may be set also, but signifies nothing). */
+ unsigned int r_extern:1;
+ /* The next three bits are for SunOS shared libraries, and seem to
+ be undocumented. */
+ unsigned int r_baserel:1; /* Linkage table relative. */
+ unsigned int r_jmptable:1; /* pc-relative to jump table. */
+ unsigned int r_relative:1; /* "relative relocation". */
+ /* unused */
+ unsigned int r_pad:1; /* Padding -- set to zero. */
+};
+
+
+/* EXTENDED RELOCS. */
+
+struct reloc_ext_external
+{
+ bfd_byte r_address[BYTES_IN_WORD]; /* Offset of of data to relocate. */
+ bfd_byte r_index[3]; /* Symbol table index of symbol. */
+ bfd_byte r_type[1]; /* Relocation type. */
+ bfd_byte r_addend[BYTES_IN_WORD]; /* Datum addend. */
+};
+
+#ifndef RELOC_EXT_BITS_EXTERN_BIG
+#define RELOC_EXT_BITS_EXTERN_BIG ((unsigned int) 0x80)
+#endif
+
+#ifndef RELOC_EXT_BITS_EXTERN_LITTLE
+#define RELOC_EXT_BITS_EXTERN_LITTLE ((unsigned int) 0x01)
+#endif
+
+#ifndef RELOC_EXT_BITS_TYPE_BIG
+#define RELOC_EXT_BITS_TYPE_BIG ((unsigned int) 0x1F)
+#endif
+
+#ifndef RELOC_EXT_BITS_TYPE_SH_BIG
+#define RELOC_EXT_BITS_TYPE_SH_BIG 0
+#endif
+
+#ifndef RELOC_EXT_BITS_TYPE_LITTLE
+#define RELOC_EXT_BITS_TYPE_LITTLE ((unsigned int) 0xF8)
+#endif
+
+#ifndef RELOC_EXT_BITS_TYPE_SH_LITTLE
+#define RELOC_EXT_BITS_TYPE_SH_LITTLE 3
+#endif
+
+/* Bytes per relocation entry. */
+#define RELOC_EXT_SIZE (BYTES_IN_WORD + 3 + 1 + BYTES_IN_WORD)
+
+enum reloc_type
+{
+ /* Simple relocations. */
+ RELOC_8, /* data[0:7] = addend + sv */
+ RELOC_16, /* data[0:15] = addend + sv */
+ RELOC_32, /* data[0:31] = addend + sv */
+ /* PC-rel displacement. */
+ RELOC_DISP8, /* data[0:7] = addend - pc + sv */
+ RELOC_DISP16, /* data[0:15] = addend - pc + sv */
+ RELOC_DISP32, /* data[0:31] = addend - pc + sv */
+ /* Special. */
+ RELOC_WDISP30, /* data[0:29] = (addend + sv - pc)>>2 */
+ RELOC_WDISP22, /* data[0:21] = (addend + sv - pc)>>2 */
+ RELOC_HI22, /* data[0:21] = (addend + sv)>>10 */
+ RELOC_22, /* data[0:21] = (addend + sv) */
+ RELOC_13, /* data[0:12] = (addend + sv) */
+ RELOC_LO10, /* data[0:9] = (addend + sv) */
+ RELOC_SFA_BASE,
+ RELOC_SFA_OFF13,
+ /* P.I.C. (base-relative). */
+ RELOC_BASE10, /* Not sure - maybe we can do this the */
+ RELOC_BASE13, /* right way now */
+ RELOC_BASE22,
+ /* For some sort of pc-rel P.I.C. (?) */
+ RELOC_PC10,
+ RELOC_PC22,
+ /* P.I.C. jump table. */
+ RELOC_JMP_TBL,
+ /* Reputedly for shared libraries somehow. */
+ RELOC_SEGOFF16,
+ RELOC_GLOB_DAT,
+ RELOC_JMP_SLOT,
+ RELOC_RELATIVE,
+
+ RELOC_11,
+ RELOC_WDISP2_14,
+ RELOC_WDISP19,
+ RELOC_HHI22, /* data[0:21] = (addend + sv) >> 42 */
+ RELOC_HLO10, /* data[0:9] = (addend + sv) >> 32 */
+
+ /* 29K relocation types. */
+ RELOC_JUMPTARG,
+ RELOC_CONST,
+ RELOC_CONSTH,
+
+ /* All the new ones I can think of, for sparc v9. */
+ RELOC_64, /* data[0:63] = addend + sv */
+ RELOC_DISP64, /* data[0:63] = addend - pc + sv */
+ RELOC_WDISP21, /* data[0:20] = (addend + sv - pc)>>2 */
+ RELOC_DISP21, /* data[0:20] = addend - pc + sv */
+ RELOC_DISP14, /* data[0:13] = addend - pc + sv */
+ /* Q .
+ What are the other ones,
+ Since this is a clean slate, can we throw away the ones we dont
+ understand ? Should we sort the values ? What about using a
+ microcode format like the 68k ? */
+ NO_RELOC
+ };
+
+
+struct reloc_internal
+{
+ bfd_vma r_address; /* Offset of of data to relocate. */
+ long r_index; /* Symbol table index of symbol. */
+ enum reloc_type r_type; /* Relocation type. */
+ bfd_vma r_addend; /* Datum addend. */
+};
+
+/* Q.
+ Should the length of the string table be 4 bytes or 8 bytes ?
+
+ Q.
+ What about archive indexes ? */
+
+#endif /* __A_OUT_64_H__ */
diff --git a/include/aout/ar.h b/include/aout/ar.h
new file mode 100644
index 000000000..15d534c57
--- /dev/null
+++ b/include/aout/ar.h
@@ -0,0 +1,52 @@
+/* archive file definition for GNU software
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* So far this is correct for BSDish archives. Don't forget that
+ files must begin on an even byte boundary. */
+
+#ifndef __GNU_AR_H__
+#define __GNU_AR_H__
+
+/* Note that the usual '\n' in magic strings may translate to different
+ characters, as allowed by ANSI. '\012' has a fixed value, and remains
+ compatible with existing BSDish archives. */
+
+#define ARMAG "!<arch>\012" /* For COFF and a.out archives */
+#define ARMAGB "!<bout>\012" /* For b.out archives */
+#define SARMAG 8
+#define ARFMAG "`\012"
+
+/* The ar_date field of the armap (__.SYMDEF) member of an archive
+ must be greater than the modified date of the entire file, or
+ BSD-derived linkers complain. We originally write the ar_date with
+ this offset from the real file's mod-time. After finishing the
+ file, we rewrite ar_date if it's not still greater than the mod date. */
+
+#define ARMAP_TIME_OFFSET 60
+
+struct ar_hdr {
+ char ar_name[16]; /* name of this member */
+ char ar_date[12]; /* file mtime */
+ char ar_uid[6]; /* owner uid; printed as decimal */
+ char ar_gid[6]; /* owner gid; printed as decimal */
+ char ar_mode[8]; /* file mode, printed as octal */
+ char ar_size[10]; /* file size, printed as decimal */
+ char ar_fmag[2]; /* should contain ARFMAG */
+};
+
+#endif /* __GNU_AR_H__ */
diff --git a/include/aout/dynix3.h b/include/aout/dynix3.h
new file mode 100644
index 000000000..b09d5d70e
--- /dev/null
+++ b/include/aout/dynix3.h
@@ -0,0 +1,86 @@
+/* a.out specifics for Sequent Symmetry running Dynix 3.x
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef A_OUT_DYNIX3_H
+#define A_OUT_DYNIX3_H
+
+#define external_exec dynix_external_exec
+
+/* struct exec for Dynix 3
+
+ a_gdtbl and a_bootstrap are only for standalone binaries.
+ Shared data fields are not supported by the kernel as of Dynix 3.1,
+ but are supported by Dynix compiler programs. */
+struct dynix_external_exec
+ {
+ unsigned char e_info[4];
+ unsigned char e_text[4];
+ unsigned char e_data[4];
+ unsigned char e_bss[4];
+ unsigned char e_syms[4];
+ unsigned char e_entry[4];
+ unsigned char e_trsize[4];
+ unsigned char e_drsize[4];
+ unsigned char e_g_code[8];
+ unsigned char e_g_data[8];
+ unsigned char e_g_desc[8];
+ unsigned char e_shdata[4];
+ unsigned char e_shbss[4];
+ unsigned char e_shdrsize[4];
+ unsigned char e_bootstrap[44];
+ unsigned char e_reserved[12];
+ unsigned char e_version[4];
+ };
+
+#define EXEC_BYTES_SIZE (128)
+
+/* All executables under Dynix are demand paged with read-only text,
+ Thus no NMAGIC.
+
+ ZMAGIC has a page of 0s at virtual 0,
+ XMAGIC has an invalid page at virtual 0. */
+#define OMAGIC 0x12eb /* .o */
+#define ZMAGIC 0x22eb /* zero @ 0, demand load */
+#define XMAGIC 0x32eb /* invalid @ 0, demand load */
+#define SMAGIC 0x42eb /* standalone, not supported here */
+
+#define N_BADMAG(x) ((OMAGIC != N_MAGIC(x)) && \
+ (ZMAGIC != N_MAGIC(x)) && \
+ (XMAGIC != N_MAGIC(x)) && \
+ (SMAGIC != N_MAGIC(x)))
+
+#define N_ADDRADJ(x) ((ZMAGIC == N_MAGIC(x) || XMAGIC == N_MAGIC(x)) ? 0x1000 : 0)
+
+#define N_TXTOFF(x) (EXEC_BYTES_SIZE)
+#define N_DATOFF(x) (N_TXTOFF(x) + N_TXTSIZE(x))
+#define N_SHDATOFF(x) (N_DATOFF(x) + (x).a_data)
+#define N_TRELOFF(x) (N_SHDATOFF(x) + (x).a_shdata)
+#define N_DRELOFF(x) (N_TRELOFF(x) + (x).a_trsize)
+#define N_SHDRELOFF(x) (N_DRELOFF(x) + (x).a_drsize)
+#define N_SYMOFF(x) (N_SHDRELOFF(x) + (x).a_shdrsize)
+#define N_STROFF(x) (N_SYMOFF(x) + (x).a_syms)
+
+#define N_TXTADDR(x) \
+ (((OMAGIC == N_MAGIC(x)) || (SMAGIC == N_MAGIC(x))) ? 0 \
+ : TEXT_START_ADDR + EXEC_BYTES_SIZE)
+
+#define N_TXTSIZE(x) \
+ (((OMAGIC == N_MAGIC(x)) || (SMAGIC == N_MAGIC(x))) ? ((x).a_text) \
+ : ((x).a_text - N_ADDRADJ(x) - EXEC_BYTES_SIZE))
+
+#endif /* A_OUT_DYNIX3_H */
diff --git a/include/aout/encap.h b/include/aout/encap.h
new file mode 100644
index 000000000..1381557d8
--- /dev/null
+++ b/include/aout/encap.h
@@ -0,0 +1,135 @@
+/* Yet Another Try at encapsulating bsd object files in coff.
+ Copyright 1988, 1989, 1991 Free Software Foundation, Inc.
+ Written by Pace Willisson 12/9/88
+
+ This file is obsolete. It needs to be converted to just define a bunch
+ of stuff that BFD can use to do coff-encapsulated files. --gnu@cygnus.com
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/*
+ * We only use the coff headers to tell the kernel
+ * how to exec the file. Therefore, the only fields that need to
+ * be filled in are the scnptr and vaddr for the text and data
+ * sections, and the vaddr for the bss. As far as coff is concerned,
+ * there is no symbol table, relocation, or line numbers.
+ *
+ * A normal bsd header (struct exec) is placed after the coff headers,
+ * and before the real text. I defined a the new fields 'a_machtype'
+ * and a_flags. If a_machtype is M_386, and a_flags & A_ENCAP is
+ * true, then the bsd header is preceeded by a coff header. Macros
+ * like N_TXTOFF and N_TXTADDR use this field to find the bsd header.
+ *
+ * The only problem is to track down the bsd exec header. The
+ * macros HEADER_OFFSET, etc do this.
+ */
+
+#define N_FLAGS_COFF_ENCAPSULATE 0x20 /* coff header precedes bsd header */
+
+/* Describe the COFF header used for encapsulation. */
+
+struct coffheader
+{
+ /* filehdr */
+ unsigned short f_magic;
+ unsigned short f_nscns;
+ long f_timdat;
+ long f_symptr;
+ long f_nsyms;
+ unsigned short f_opthdr;
+ unsigned short f_flags;
+ /* aouthdr */
+ short magic;
+ short vstamp;
+ long tsize;
+ long dsize;
+ long bsize;
+ long entry;
+ long text_start;
+ long data_start;
+ struct coffscn
+ {
+ char s_name[8];
+ long s_paddr;
+ long s_vaddr;
+ long s_size;
+ long s_scnptr;
+ long s_relptr;
+ long s_lnnoptr;
+ unsigned short s_nreloc;
+ unsigned short s_nlnno;
+ long s_flags;
+ } scns[3];
+};
+
+/* Describe some of the parameters of the encapsulation,
+ including how to find the encapsulated BSD header. */
+
+/* FIXME, this is dumb. The same tools can't handle a.outs for different
+ architectures, just because COFF_MAGIC is different; so you need a
+ separate GNU nm for every architecture!!? Unfortunately, it needs to
+ be this way, since the COFF_MAGIC value is determined by the kernel
+ we're trying to fool here. */
+
+#define COFF_MAGIC_I386 0514 /* I386MAGIC */
+#define COFF_MAGIC_M68K 0520 /* MC68MAGIC */
+#define COFF_MAGIC_A29K 0x17A /* Used by asm29k cross-tools */
+
+#ifdef COFF_MAGIC
+short __header_offset_temp;
+#define HEADER_OFFSET(f) \
+ (__header_offset_temp = 0, \
+ fread ((char *)&__header_offset_temp, sizeof (short), 1, (f)), \
+ fseek ((f), -sizeof (short), 1), \
+ __header_offset_temp==COFF_MAGIC ? sizeof(struct coffheader) : 0)
+#else
+#define HEADER_OFFSET(f) 0
+#endif
+
+#define HEADER_SEEK(f) (fseek ((f), HEADER_OFFSET((f)), 1))
+
+/* Describe the characteristics of the BSD header
+ that appears inside the encapsulation. */
+
+/* Encapsulated coff files that are linked ZMAGIC have a text segment
+ offset just past the header (and a matching TXTADDR), excluding
+ the headers from the text segment proper but keeping the physical
+ layout and the virtual memory layout page-aligned.
+
+ Non-encapsulated a.out files that are linked ZMAGIC have a text
+ segment that starts at 0 and an N_TXTADR similarly offset to 0.
+ They too are page-aligned with each other, but they include the
+ a.out header as part of the text.
+
+ The _N_HDROFF gets sizeof struct exec added to it, so we have
+ to compensate here. See <a.out.gnu.h>. */
+
+#undef _N_HDROFF
+#undef N_TXTADDR
+#undef N_DATADDR
+
+#define _N_HDROFF(x) ((N_FLAGS(x) & N_FLAGS_COFF_ENCAPSULATE) ? \
+ sizeof (struct coffheader) : 0)
+
+/* Address of text segment in memory after it is loaded. */
+#define N_TXTADDR(x) \
+ ((N_FLAGS(x) & N_FLAGS_COFF_ENCAPSULATE) ? \
+ sizeof (struct coffheader) + sizeof (struct exec) : 0)
+#define SEGMENT_SIZE 0x400000
+
+#define N_DATADDR(x) \
+ ((N_FLAGS(x) & N_FLAGS_COFF_ENCAPSULATE) ? \
+ (SEGMENT_SIZE + ((N_TXTADDR(x)+(x).a_text-1) & ~(SEGMENT_SIZE-1))) : \
+ (N_TXTADDR(x)+(x).a_text))
diff --git a/include/aout/host.h b/include/aout/host.h
new file mode 100644
index 000000000..442981ac9
--- /dev/null
+++ b/include/aout/host.h
@@ -0,0 +1,42 @@
+/* host.h - Parameters about the a.out format, based on the host system
+ on which the program is compiled.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Address of data segment in memory after it is loaded.
+ It is up to you to define SEGMENT_SIZE on machines not listed here. */
+#ifndef SEGMENT_SIZE
+
+#if defined(hp300) || defined(pyr)
+#define SEGMENT_SIZE page_size
+#endif
+
+#ifdef sony
+#define SEGMENT_SIZE 0x1000
+#endif /* Sony. */
+
+#ifdef is68k
+#define SEGMENT_SIZE 0x20000
+#endif
+
+#if defined(m68k) && defined(PORTAR)
+#define TARGET_PAGE_SIZE 0x400
+#define SEGMENT_SIZE TARGET_PAGE_SIZE
+#endif
+
+#endif /*!defined(SEGMENT_SIZE)*/
+
diff --git a/include/aout/hp.h b/include/aout/hp.h
new file mode 100644
index 000000000..002f49cf4
--- /dev/null
+++ b/include/aout/hp.h
@@ -0,0 +1,82 @@
+/* Special version of <a.out.h> for use under hp-ux.
+ Copyright 1988, 1991 Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* THIS FILE IS OBSOLETE. It needs to be revised as a variant "external"
+ a.out format for use with BFD. */
+
+/* The `exec' structure and overall layout must be close to HP's when
+ we are running on an HP system, otherwise we will not be able to
+ execute the resulting file. */
+
+/* Allow this file to be included twice. */
+#ifndef __GNU_EXEC_MACROS__
+
+struct exec
+{
+ unsigned short a_machtype; /* machine type */
+ unsigned short a_magic; /* magic number */
+ unsigned long a_spare1;
+ unsigned long a_spare2;
+ unsigned long a_text; /* length of text, in bytes */
+ unsigned long a_data; /* length of data, in bytes */
+ unsigned long a_bss; /* length of uninitialized data area for file, in bytes */
+ unsigned long a_trsize; /* length of relocation info for text, in bytes */
+ unsigned long a_drsize; /* length of relocation info for data, in bytes */
+ unsigned long a_spare3; /* HP = pascal interface size */
+ unsigned long a_spare4; /* HP = symbol table size */
+ unsigned long a_spare5; /* HP = debug name table size */
+ unsigned long a_entry; /* start address */
+ unsigned long a_spare6; /* HP = source line table size */
+ unsigned long a_spare7; /* HP = value table size */
+ unsigned long a_syms; /* length of symbol table data in file, in bytes */
+ unsigned long a_spare8;
+};
+
+/* Tell a.out.gnu.h not to define `struct exec'. */
+#define __STRUCT_EXEC_OVERRIDE__
+
+#include "../a.out.gnu.h"
+
+#undef N_MAGIC
+#undef N_MACHTYPE
+#undef N_FLAGS
+#undef N_SET_INFO
+#undef N_SET_MAGIC
+#undef N_SET_MACHTYPE
+#undef N_SET_FLAGS
+
+#define N_MAGIC(exec) ((exec) . a_magic)
+#define N_MACHTYPE(exec) ((exec) . a_machtype)
+#define N_SET_MAGIC(exec, magic) (((exec) . a_magic) = (magic))
+#define N_SET_MACHTYPE(exec, machtype) (((exec) . a_machtype) = (machtype))
+
+#undef N_BADMAG
+#define N_BADMAG(x) ((_N_BADMAG (x)) || (_N_BADMACH (x)))
+
+#define _N_BADMACH(x) \
+(((N_MACHTYPE (x)) != HP9000S200_ID) && \
+ ((N_MACHTYPE (x)) != HP98x6_ID))
+
+#define HP98x6_ID 0x20A
+#define HP9000S200_ID 0x20C
+
+#undef _N_HDROFF
+#define _N_HDROFF(x) (SEGMENT_SIZE - (sizeof (struct exec)))
+
+#define SEGMENT_SIZE 0x1000
+
+#endif /* __GNU_EXEC_MACROS__ */
diff --git a/include/aout/hp300hpux.h b/include/aout/hp300hpux.h
new file mode 100644
index 000000000..11747613c
--- /dev/null
+++ b/include/aout/hp300hpux.h
@@ -0,0 +1,119 @@
+/* Special version of <a.out.h> for use under hp-ux.
+ Copyright 1988, 1993, 1995, 2001 Free Software Foundation, Inc. */
+
+struct hp300hpux_exec_bytes
+{
+ unsigned char e_info[4]; /* a_machtype/a_magic */
+ unsigned char e_spare1[4];
+ unsigned char e_spare2[4];
+ unsigned char e_text[4]; /* length of text, in bytes */
+ unsigned char e_data[4]; /* length of data, in bytes */
+ unsigned char e_bss[4]; /* length of uninitialized data area , in bytes */
+ unsigned char e_trsize[4]; /* length of relocation info for text, in bytes*/
+ unsigned char e_drsize[4]; /* length of relocation info for data, in bytes*/
+ unsigned char e_passize[4];/* HP = pascal interface size */
+ unsigned char e_syms[4]; /* HP = symbol table size */
+ unsigned char e_spare5[4]; /* HP = debug name table size */
+ unsigned char e_entry[4]; /* start address */
+ unsigned char e_spare6[4]; /* HP = source line table size */
+ unsigned char e_supsize[4];/* HP = value table size */
+ unsigned char e_drelocs[4];
+ unsigned char e_extension[4]; /* file offset of extension */
+};
+#define EXEC_BYTES_SIZE 64
+
+struct hp300hpux_nlist_bytes
+ {
+ unsigned char e_value[4];
+ unsigned char e_type[1];
+ unsigned char e_length[1]; /* length of ascii symbol name */
+ unsigned char e_almod[2]; /* alignment mod */
+ unsigned char e_shlib[2]; /* info about dynamic linking */
+ };
+#define EXTERNAL_NLIST_SIZE 10
+
+struct hp300hpux_reloc
+ {
+ unsigned char r_address[4];/* offset of of data to relocate */
+ unsigned char r_index[2]; /* symbol table index of symbol */
+ unsigned char r_type[1]; /* relocation type */
+ unsigned char r_length[1]; /* length of item to reloc */
+ };
+
+struct hp300hpux_header_extension
+{
+ unsigned char e_syms[4];
+ unsigned char unique_headers[12*4];
+ unsigned char e_header[2]; /* type of header */
+ unsigned char e_version[2]; /* version */
+ unsigned char e_size[4]; /* bytes following*/
+ unsigned char e_extension[4];/* file offset of next extension */
+};
+#define EXTERNAL_EXTENSION_HEADER_SIZE (16*4)
+
+/* hpux separates object files (0x106) and impure executables (0x107) */
+/* but the bfd code does not distinguish between them. Since we want to*/
+/* read hpux .o files, we add an special define and use it below in */
+/* offset and address calculations. */
+
+#define HPUX_DOT_O_MAGIC 0x106
+#define OMAGIC 0x107 /* object file or impure executable. */
+#define NMAGIC 0x108 /* Code indicating pure executable. */
+#define ZMAGIC 0x10B /* demand-paged executable. */
+
+#define N_HEADER_IN_TEXT(x) 0
+
+#if 0 /* libaout.h only uses the lower 8 bits */
+#define HP98x6_ID 0x20A
+#define HP9000S200_ID 0x20C
+#endif
+#define HP98x6_ID 0x0A
+#define HP9000S200_ID 0x0C
+
+#define N_BADMAG(x) ((_N_BADMAG (x)) || (_N_BADMACH (x)))
+
+#define N_DATADDR(x) \
+ ((N_MAGIC (x) == OMAGIC || N_MAGIC (x) == HPUX_DOT_O_MAGIC) \
+ ? (N_TXTADDR (x) + N_TXTSIZE (x)) \
+ : (N_SEGSIZE (x) + ((N_TXTADDR (x) + N_TXTSIZE (x) - 1) \
+ & ~ (bfd_vma) (N_SEGSIZE (x) - 1))))
+
+#define _N_BADMACH(x) \
+ (((N_MACHTYPE (x)) != HP9000S200_ID) && ((N_MACHTYPE (x)) != HP98x6_ID))
+
+#define _N_BADMAG(x) (N_MAGIC(x) != HPUX_DOT_O_MAGIC \
+ && N_MAGIC(x) != OMAGIC \
+ && N_MAGIC(x) != NMAGIC \
+ && N_MAGIC(x) != ZMAGIC )
+
+#undef _N_HDROFF
+#define _N_HDROFF(x) (SEGMENT_SIZE - (sizeof (struct exec)))
+
+#undef N_DATOFF
+#undef N_PASOFF
+#undef N_SYMOFF
+#undef N_SUPOFF
+#undef N_TRELOFF
+#undef N_DRELOFF
+#undef N_STROFF
+
+#define N_DATOFF(x) ( N_TXTOFF(x) + N_TXTSIZE(x) )
+#define N_PASOFF(x) ( N_DATOFF(x) + (x).a_data)
+#define N_SYMOFF(x) ( N_PASOFF(x) /* + (x).a_passize*/ )
+#define N_SUPOFF(x) ( N_SYMOFF(x) + (x).a_syms )
+#define N_TRELOFF(x) ( N_SUPOFF(x) /* + 0 (x).a_supsize*/ )
+#define N_DRELOFF(x) ( N_TRELOFF(x) + (x).a_trsize )
+#define N_EXTHOFF(x) ( N_DRELOFF(x) /* + 0 (x).a_drsize */)
+#define N_STROFF(x) ( 0 /* no string table */ )
+
+/* use these when the file has gnu symbol tables */
+#define N_GNU_TRELOFF(x) (N_DATOFF(x) + (x).a_data)
+#define N_GNU_DRELOFF(x) (N_GNU_TRELOFF(x) + (x).a_trsize)
+#define N_GNU_SYMOFF(x) (N_GNU_DRELOFF(x) + (x).a_drsize)
+
+#define TARGET_PAGE_SIZE 0x1000
+#define SEGMENT_SIZE 0x1000
+#define TEXT_START_ADDR 0
+
+#undef N_SHARED_LIB
+#define N_SHARED_LIB(x) ( 0 /* no shared libraries */ )
diff --git a/include/aout/hppa.h b/include/aout/hppa.h
new file mode 100644
index 000000000..7e185de76
--- /dev/null
+++ b/include/aout/hppa.h
@@ -0,0 +1,7 @@
+#include "filehdr.h"
+#include "aouthdr.h"
+#include "scnhdr.h"
+#include "spacehdr.h"
+#include "syms.h"
+
+
diff --git a/include/aout/ranlib.h b/include/aout/ranlib.h
new file mode 100644
index 000000000..e4603edf6
--- /dev/null
+++ b/include/aout/ranlib.h
@@ -0,0 +1,62 @@
+/* ranlib.h -- archive library index member definition for GNU.
+ Copyright 1990, 1991 Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* The Symdef member of an archive contains two things:
+ a table that maps symbol-string offsets to file offsets,
+ and a symbol-string table. All the symbol names are
+ run together (each with trailing null) in the symbol-string
+ table. There is a single longword bytecount on the front
+ of each of these tables. Thus if we have two symbols,
+ "foo" and "_bar", that are in archive members at offsets
+ 200 and 900, it would look like this:
+ 16 ; byte count of index table
+ 0 ; offset of "foo" in string table
+ 200 ; offset of foo-module in file
+ 4 ; offset of "bar" in string table
+ 900 ; offset of bar-module in file
+ 9 ; byte count of string table
+ "foo\0_bar\0" ; string table */
+
+#define RANLIBMAG "__.SYMDEF" /* Archive file name containing index */
+#define RANLIBSKEW 3 /* Creation time offset */
+
+/* Format of __.SYMDEF:
+ First, a longword containing the size of the 'symdef' data that follows.
+ Second, zero or more 'symdef' structures.
+ Third, a longword containing the length of symbol name strings.
+ Fourth, zero or more symbol name strings (each followed by a null). */
+
+struct symdef
+ {
+ union
+ {
+ unsigned long string_offset; /* In the file */
+ char *name; /* In memory, sometimes */
+ } s;
+ /* this points to the front of the file header (AKA member header --
+ a struct ar_hdr), not to the front of the file or into the file).
+ in other words it only tells you which file to read */
+ unsigned long file_offset;
+ };
+
+/* Compatability with BSD code */
+
+#define ranlib symdef
+#define ran_un s
+#define ran_strx string_offset
+#define ran_name name
+#define ran_off file_offset
diff --git a/include/aout/reloc.h b/include/aout/reloc.h
new file mode 100644
index 000000000..eca3f59b2
--- /dev/null
+++ b/include/aout/reloc.h
@@ -0,0 +1,66 @@
+/* reloc.h -- Header file for relocation information.
+ Copyright 1989, 1990, 1991 Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Relocation types for a.out files using reloc_info_extended
+ (SPARC and AMD 29000). */
+
+#ifndef _RELOC_H_READ_
+#define _RELOC_H_READ_ 1
+
+enum reloc_type
+ {
+ RELOC_8, RELOC_16, RELOC_32, /* simple relocations */
+ RELOC_DISP8, RELOC_DISP16, RELOC_DISP32, /* pc-rel displacement */
+ RELOC_WDISP30, RELOC_WDISP22,
+ RELOC_HI22, RELOC_22,
+ RELOC_13, RELOC_LO10,
+ RELOC_SFA_BASE, RELOC_SFA_OFF13,
+ RELOC_BASE10, RELOC_BASE13, RELOC_BASE22, /* P.I.C. (base-relative) */
+ RELOC_PC10, RELOC_PC22, /* for some sort of pc-rel P.I.C. (?) */
+ RELOC_JMP_TBL, /* P.I.C. jump table */
+ RELOC_SEGOFF16, /* reputedly for shared libraries somehow */
+ RELOC_GLOB_DAT, RELOC_JMP_SLOT, RELOC_RELATIVE,
+ RELOC_11,
+ RELOC_WDISP2_14,
+ RELOC_WDISP19,
+ RELOC_HHI22,
+ RELOC_HLO10,
+
+ /* 29K relocation types */
+ RELOC_JUMPTARG, RELOC_CONST, RELOC_CONSTH,
+
+ RELOC_WDISP14, RELOC_WDISP21,
+
+ NO_RELOC
+ };
+
+#define RELOC_TYPE_NAMES \
+"8", "16", "32", "DISP8", \
+"DISP16", "DISP32", "WDISP30", "WDISP22", \
+"HI22", "22", "13", "LO10", \
+"SFA_BASE", "SFAOFF13", "BASE10", "BASE13", \
+"BASE22", "PC10", "PC22", "JMP_TBL", \
+"SEGOFF16", "GLOB_DAT", "JMP_SLOT", "RELATIVE", \
+"11", "WDISP2_14", "WDISP19", "HHI22", \
+"HLO10", \
+"JUMPTARG", "CONST", "CONSTH", "WDISP14", \
+"WDISP21", \
+"NO_RELOC"
+
+#endif /* _RELOC_H_READ_ */
+
+/* end of reloc.h */
diff --git a/include/aout/stab.def b/include/aout/stab.def
new file mode 100644
index 000000000..8188b845f
--- /dev/null
+++ b/include/aout/stab.def
@@ -0,0 +1,271 @@
+/* Table of DBX symbol codes for the GNU system.
+ Copyright 1988, 1991, 1992, 1993, 1994, 1996, 1998, 2004
+ Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* New stab from Solaris 2. This uses an n_type of 0, which in a.out files
+ overlaps the N_UNDF used for ordinary symbols. In ELF files, the
+ debug information is in a different file section, so there is no conflict.
+ This symbol's n_value gives the size of the string section associated
+ with this file. The symbol's n_strx (relative to the just-updated
+ string section start address) gives the name of the source file,
+ e.g. "foo.c", without any path information. The symbol's n_desc gives
+ the count of upcoming symbols associated with this file (not including
+ this one). */
+/* __define_stab (N_UNDF, 0x00, "UNDF") */
+
+/* Global variable. Only the name is significant.
+ To find the address, look in the corresponding external symbol. */
+__define_stab (N_GSYM, 0x20, "GSYM")
+
+/* Function name for BSD Fortran. Only the name is significant.
+ To find the address, look in the corresponding external symbol. */
+__define_stab (N_FNAME, 0x22, "FNAME")
+
+/* Function name or text-segment variable for C. Value is its address.
+ Desc is supposedly starting line number, but GCC doesn't set it
+ and DBX seems not to miss it. */
+__define_stab (N_FUN, 0x24, "FUN")
+
+/* Data-segment variable with internal linkage. Value is its address.
+ "Static Sym". */
+__define_stab (N_STSYM, 0x26, "STSYM")
+
+/* BSS-segment variable with internal linkage. Value is its address. */
+__define_stab (N_LCSYM, 0x28, "LCSYM")
+
+/* Name of main routine. Only the name is significant. */
+__define_stab (N_MAIN, 0x2a, "MAIN")
+
+/* Solaris2: Read-only data symbols. */
+__define_stab (N_ROSYM, 0x2c, "ROSYM")
+
+/* Global symbol in Pascal.
+ Supposedly the value is its line number; I'm skeptical. */
+__define_stab (N_PC, 0x30, "PC")
+
+/* Number of symbols: 0, files,,funcs,lines according to Ultrix V4.0. */
+__define_stab (N_NSYMS, 0x32, "NSYMS")
+
+/* "No DST map for sym: name, ,0,type,ignored" according to Ultrix V4.0. */
+__define_stab (N_NOMAP, 0x34, "NOMAP")
+
+/* New stab from Solaris 2. Like N_SO, but for the object file. Two in
+ a row provide the build directory and the relative path of the .o from it.
+ Solaris2 uses this to avoid putting the stabs info into the linked
+ executable; this stab goes into the ".stab.index" section, and the debugger
+ reads the real stabs directly from the .o files instead. */
+__define_stab (N_OBJ, 0x38, "OBJ")
+
+/* New stab from Solaris 2. Options for the debugger, related to the
+ source language for this module. E.g. whether to use ANSI
+ integral promotions or traditional integral promotions. */
+__define_stab (N_OPT, 0x3c, "OPT")
+
+/* Register variable. Value is number of register. */
+__define_stab (N_RSYM, 0x40, "RSYM")
+
+/* Modula-2 compilation unit. Can someone say what info it contains? */
+__define_stab (N_M2C, 0x42, "M2C")
+
+/* Line number in text segment. Desc is the line number;
+ value is corresponding address. On Solaris2, the line number is
+ relative to the start of the current function. */
+__define_stab (N_SLINE, 0x44, "SLINE")
+
+/* Similar, for data segment. */
+__define_stab (N_DSLINE, 0x46, "DSLINE")
+
+/* Similar, for bss segment. */
+__define_stab (N_BSLINE, 0x48, "BSLINE")
+
+/* Sun's source-code browser stabs. ?? Don't know what the fields are.
+ Supposedly the field is "path to associated .cb file". THIS VALUE
+ OVERLAPS WITH N_BSLINE! */
+__define_stab_duplicate (N_BROWS, 0x48, "BROWS")
+
+/* GNU Modula-2 definition module dependency. Value is the modification time
+ of the definition file. Other is non-zero if it is imported with the
+ GNU M2 keyword %INITIALIZE. Perhaps N_M2C can be used if there
+ are enough empty fields? */
+__define_stab(N_DEFD, 0x4a, "DEFD")
+
+/* New in Solaris2. Function start/body/end line numbers. */
+__define_stab(N_FLINE, 0x4C, "FLINE")
+
+/* THE FOLLOWING TWO STAB VALUES CONFLICT. Happily, one is for Modula-2
+ and one is for C++. Still,... */
+/* GNU C++ exception variable. Name is variable name. */
+__define_stab (N_EHDECL, 0x50, "EHDECL")
+/* Modula2 info "for imc": name,,0,0,0 according to Ultrix V4.0. */
+__define_stab_duplicate (N_MOD2, 0x50, "MOD2")
+
+/* GNU C++ `catch' clause. Value is its address. Desc is nonzero if
+ this entry is immediately followed by a CAUGHT stab saying what exception
+ was caught. Multiple CAUGHT stabs means that multiple exceptions
+ can be caught here. If Desc is 0, it means all exceptions are caught
+ here. */
+__define_stab (N_CATCH, 0x54, "CATCH")
+
+/* Structure or union element. Value is offset in the structure. */
+__define_stab (N_SSYM, 0x60, "SSYM")
+
+/* Solaris2: Last stab emitted for module. */
+__define_stab (N_ENDM, 0x62, "ENDM")
+
+/* Name of main source file.
+ Value is starting text address of the compilation.
+ If multiple N_SO's appear, the first to contain a trailing / is the
+ compilation directory. The first to not contain a trailing / is the
+ source file name, relative to the compilation directory. Others (perhaps
+ resulting from cfront) are ignored.
+ On Solaris2, value is undefined, but desc is a source-language code. */
+
+__define_stab (N_SO, 0x64, "SO")
+
+/* SunPro F77: Name of alias. */
+__define_stab (N_ALIAS, 0x6c, "ALIAS")
+
+/* Automatic variable in the stack. Value is offset from frame pointer.
+ Also used for type descriptions. */
+__define_stab (N_LSYM, 0x80, "LSYM")
+
+/* Beginning of an include file. Only Sun uses this.
+ In an object file, only the name is significant.
+ The Sun linker puts data into some of the other fields. */
+__define_stab (N_BINCL, 0x82, "BINCL")
+
+/* Name of sub-source file (#include file).
+ Value is starting text address of the compilation. */
+__define_stab (N_SOL, 0x84, "SOL")
+
+/* Parameter variable. Value is offset from argument pointer.
+ (On most machines the argument pointer is the same as the frame pointer. */
+__define_stab (N_PSYM, 0xa0, "PSYM")
+
+/* End of an include file. No name.
+ This and N_BINCL act as brackets around the file's output.
+ In an object file, there is no significant data in this entry.
+ The Sun linker puts data into some of the fields. */
+__define_stab (N_EINCL, 0xa2, "EINCL")
+
+/* Alternate entry point. Value is its address. */
+__define_stab (N_ENTRY, 0xa4, "ENTRY")
+
+/* Beginning of lexical block.
+ The desc is the nesting level in lexical blocks.
+ The value is the address of the start of the text for the block.
+ The variables declared inside the block *precede* the N_LBRAC symbol.
+ On Solaris2, the value is relative to the start of the current function. */
+__define_stab (N_LBRAC, 0xc0, "LBRAC")
+
+/* Place holder for deleted include file. Replaces a N_BINCL and everything
+ up to the corresponding N_EINCL. The Sun linker generates these when
+ it finds multiple identical copies of the symbols from an include file.
+ This appears only in output from the Sun linker. */
+__define_stab (N_EXCL, 0xc2, "EXCL")
+
+/* Modula-2 scope information. Can someone say what info it contains? */
+__define_stab (N_SCOPE, 0xc4, "SCOPE")
+
+/* Solaris2: Patch Run Time Checker. */
+__define_stab (N_PATCH, 0xd0, "PATCH")
+
+/* End of a lexical block. Desc matches the N_LBRAC's desc.
+ The value is the address of the end of the text for the block.
+ On Solaris2, the value is relative to the start of the current function. */
+__define_stab (N_RBRAC, 0xe0, "RBRAC")
+
+/* Begin named common block. Only the name is significant. */
+__define_stab (N_BCOMM, 0xe2, "BCOMM")
+
+/* End named common block. Only the name is significant
+ (and it should match the N_BCOMM). */
+__define_stab (N_ECOMM, 0xe4, "ECOMM")
+
+/* Member of a common block; value is offset within the common block.
+ This should occur within a BCOMM/ECOMM pair. */
+__define_stab (N_ECOML, 0xe8, "ECOML")
+
+/* Solaris2: Pascal "with" statement: type,,0,0,offset */
+__define_stab (N_WITH, 0xea, "WITH")
+
+/* These STAB's are used on Gould systems for Non-Base register symbols
+ or something like that. FIXME. I have assigned the values at random
+ since I don't have a Gould here. Fixups from Gould folk welcome... */
+__define_stab (N_NBTEXT, 0xF0, "NBTEXT")
+__define_stab (N_NBDATA, 0xF2, "NBDATA")
+__define_stab (N_NBBSS, 0xF4, "NBBSS")
+__define_stab (N_NBSTS, 0xF6, "NBSTS")
+__define_stab (N_NBLCS, 0xF8, "NBLCS")
+
+/* Second symbol entry containing a length-value for the preceding entry.
+ The value is the length. */
+__define_stab (N_LENG, 0xfe, "LENG")
+
+/* The above information, in matrix format.
+
+ STAB MATRIX
+ _________________________________________________
+ | 00 - 1F are not dbx stab symbols |
+ | In most cases, the low bit is the EXTernal bit|
+
+ | 00 UNDEF | 02 ABS | 04 TEXT | 06 DATA |
+ | 01 |EXT | 03 |EXT | 05 |EXT | 07 |EXT |
+
+ | 08 BSS | 0A INDR | 0C FN_SEQ | 0E WEAKA |
+ | 09 |EXT | 0B | 0D WEAKU | 0F WEAKT |
+
+ | 10 WEAKD | 12 COMM | 14 SETA | 16 SETT |
+ | 11 WEAKB | 13 | 15 | 17 |
+
+ | 18 SETD | 1A SETB | 1C SETV | 1E WARNING|
+ | 19 | 1B | 1D | 1F FN |
+
+ |_______________________________________________|
+ | Debug entries with bit 01 set are unused. |
+ | 20 GSYM | 22 FNAME | 24 FUN | 26 STSYM |
+ | 28 LCSYM | 2A MAIN | 2C ROSYM | 2E |
+ | 30 PC | 32 NSYMS | 34 NOMAP | 36 |
+ | 38 OBJ | 3A | 3C OPT | 3E |
+ | 40 RSYM | 42 M2C | 44 SLINE | 46 DSLINE |
+ | 48 BSLINE*| 4A DEFD | 4C FLINE | 4E |
+ | 50 EHDECL*| 52 | 54 CATCH | 56 |
+ | 58 | 5A | 5C | 5E |
+ | 60 SSYM | 62 ENDM | 64 SO | 66 |
+ | 68 | 6A | 6C ALIAS | 6E |
+ | 70 | 72 | 74 | 76 |
+ | 78 | 7A | 7C | 7E |
+ | 80 LSYM | 82 BINCL | 84 SOL | 86 |
+ | 88 | 8A | 8C | 8E |
+ | 90 | 92 | 94 | 96 |
+ | 98 | 9A | 9C | 9E |
+ | A0 PSYM | A2 EINCL | A4 ENTRY | A6 |
+ | A8 | AA | AC | AE |
+ | B0 | B2 | B4 | B6 |
+ | B8 | BA | BC | BE |
+ | C0 LBRAC | C2 EXCL | C4 SCOPE | C6 |
+ | C8 | CA | CC | CE |
+ | D0 PATCH | D2 | D4 | D6 |
+ | D8 | DA | DC | DE |
+ | E0 RBRAC | E2 BCOMM | E4 ECOMM | E6 |
+ | E8 ECOML | EA WITH | EC | EE |
+ | F0 | F2 | F4 | F6 |
+ | F8 | FA | FC | FE LENG |
+ +-----------------------------------------------+
+ * 50 EHDECL is also MOD2.
+ * 48 BSLINE is also BROWS.
+ */
diff --git a/include/aout/stab_gnu.h b/include/aout/stab_gnu.h
new file mode 100644
index 000000000..c62ac6ed4
--- /dev/null
+++ b/include/aout/stab_gnu.h
@@ -0,0 +1,54 @@
+/* gnu_stab.h Definitions for GNU extensions to STABS
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+#ifndef __GNU_STAB__
+
+/* Indicate the GNU stab.h is in use. */
+
+#define __GNU_STAB__
+
+#define __define_stab(NAME, CODE, STRING) NAME=CODE,
+#define __define_stab_duplicate(NAME, CODE, STRING) NAME=CODE,
+
+enum __stab_debug_code
+{
+#include "aout/stab.def"
+LAST_UNUSED_STAB_CODE
+};
+
+#undef __define_stab
+
+/* Definitions of "desc" field for N_SO stabs in Solaris2. */
+
+#define N_SO_AS 1
+#define N_SO_C 2
+#define N_SO_ANSI_C 3
+#define N_SO_CC 4 /* C++ */
+#define N_SO_FORTRAN 5
+#define N_SO_PASCAL 6
+
+/* Solaris2: Floating point type values in basic types. */
+
+#define NF_NONE 0
+#define NF_SINGLE 1 /* IEEE 32-bit */
+#define NF_DOUBLE 2 /* IEEE 64-bit */
+#define NF_COMPLEX 3 /* Fortran complex */
+#define NF_COMPLEX16 4 /* Fortran double complex */
+#define NF_COMPLEX32 5 /* Fortran complex*16 */
+#define NF_LDOUBLE 6 /* Long double (whatever that is) */
+
+#endif /* __GNU_STAB_ */
diff --git a/include/aout/sun4.h b/include/aout/sun4.h
new file mode 100644
index 000000000..623afc131
--- /dev/null
+++ b/include/aout/sun4.h
@@ -0,0 +1,235 @@
+/* SPARC-specific values for a.out files
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Some systems, e.g., AIX, may have defined this in header files already
+ included. */
+#undef TARGET_PAGE_SIZE
+#define TARGET_PAGE_SIZE 0x2000 /* 8K. aka NBPG in <sys/param.h> */
+/* Note that some SPARCs have 4K pages, some 8K, some others. */
+
+#define SEG_SIZE_SPARC TARGET_PAGE_SIZE
+#define SEG_SIZE_SUN3 0x20000 /* Resolution of r/w protection hw */
+
+#define TEXT_START_ADDR TARGET_PAGE_SIZE /* Location 0 is not accessible */
+#define N_HEADER_IN_TEXT(x) 1
+
+/* Non-default definitions of the accessor macros... */
+
+/* Segment size varies on Sun-3 versus Sun-4. */
+
+#define N_SEGSIZE(x) (N_MACHTYPE(x) == M_SPARC? SEG_SIZE_SPARC: \
+ N_MACHTYPE(x) == M_68020? SEG_SIZE_SUN3: \
+ /* Guess? */ TARGET_PAGE_SIZE)
+
+/* Virtual Address of text segment from the a.out file. For OMAGIC,
+ (almost always "unlinked .o's" these days), should be zero.
+ Sun added a kludge so that shared libraries linked ZMAGIC get
+ an address of zero if a_entry (!!!) is lower than the otherwise
+ expected text address. These kludges have gotta go!
+ For linked files, should reflect reality if we know it. */
+
+/* This differs from the version in aout64.h (which we override by defining
+ it here) only for NMAGIC (we return TEXT_START_ADDR+EXEC_BYTES_SIZE;
+ they return 0). */
+
+#define N_TXTADDR(x) \
+ (N_MAGIC(x)==OMAGIC? 0 \
+ : (N_MAGIC(x) == ZMAGIC && (x).a_entry < TEXT_START_ADDR)? 0 \
+ : TEXT_START_ADDR+EXEC_BYTES_SIZE)
+
+/* When a file is linked against a shared library on SunOS 4, the
+ dynamic bit in the exec header is set, and the first symbol in the
+ symbol table is __DYNAMIC. Its value is the address of the
+ following structure. */
+
+struct external_sun4_dynamic
+{
+ /* The version number of the structure. SunOS 4.1.x creates files
+ with version number 3, which is what this structure is based on.
+ According to gdb, version 2 is similar. I believe that version 2
+ used a different type of procedure linkage table, and there may
+ have been other differences. */
+ bfd_byte ld_version[4];
+ /* The virtual address of a 28 byte structure used in debugging.
+ The contents are filled in at run time by ld.so. */
+ bfd_byte ldd[4];
+ /* The virtual address of another structure with information about
+ how to relocate the executable at run time. */
+ bfd_byte ld[4];
+};
+
+/* The size of the debugging structure pointed to by the debugger
+ field of __DYNAMIC. */
+#define EXTERNAL_SUN4_DYNAMIC_DEBUGGER_SIZE (24)
+
+/* The structure pointed to by the linker field of __DYNAMIC. As far
+ as I can tell, most of the addresses in this structure are offsets
+ within the file, but some are actually virtual addresses. */
+
+struct internal_sun4_dynamic_link
+{
+ /* Linked list of loaded objects. This is filled in at runtime by
+ ld.so and probably by dlopen. */
+ unsigned long ld_loaded;
+
+ /* The address of the list of names of shared objects which must be
+ included at runtime. Each entry in the list is 16 bytes: the 4
+ byte address of the string naming the object (e.g., for -lc this
+ is "c"); 4 bytes of flags--the high bit is whether to search for
+ the object using the library path; the 2 byte major version
+ number; the 2 byte minor version number; the 4 byte address of
+ the next entry in the list (zero if this is the last entry). The
+ version numbers seem to only be non-zero when doing library
+ searching. */
+ unsigned long ld_need;
+
+ /* The address of the path to search for the shared objects which
+ must be included. This points to a string in PATH format which
+ is generated from the -L arguments to the linker. According to
+ the man page, ld.so implicitly adds ${LD_LIBRARY_PATH} to the
+ beginning of this string and /lib:/usr/lib:/usr/local/lib to the
+ end. The string is terminated by a null byte. This field is
+ zero if there is no additional path. */
+ unsigned long ld_rules;
+
+ /* The address of the global offset table. This appears to be a
+ virtual address, not a file offset. The first entry in the
+ global offset table seems to be the virtual address of the
+ sun4_dynamic structure (the same value as the __DYNAMIC symbol).
+ The global offset table is used for PIC code to hold the
+ addresses of variables. A dynamically linked file which does not
+ itself contain PIC code has a four byte global offset table. */
+ unsigned long ld_got;
+
+ /* The address of the procedure linkage table. This appears to be a
+ virtual address, not a file offset.
+
+ On a SPARC, the table is composed of 12 byte entries, each of
+ which consists of three instructions. The first entry is
+ sethi %hi(0),%g1
+ jmp %g1
+ nop
+ These instructions are changed by ld.so into a jump directly into
+ ld.so itself. Each subsequent entry is
+ save %sp, -96, %sp
+ call <address of first entry in procedure linkage table>
+ <reloc_number | 0x01000000>
+ The reloc_number is the number of the reloc to use to resolve
+ this entry. The reloc will be a JMP_SLOT reloc against some
+ symbol that is not defined in this object file but should be
+ defined in a shared object (if it is not, ld.so will report a
+ runtime error and exit). The constant 0x010000000 turns the
+ reloc number into a sethi of %g0, which does nothing since %g0 is
+ hardwired to zero.
+
+ When one of these entries is executed, it winds up calling into
+ ld.so. ld.so looks at the reloc number, available via the return
+ address, to determine which entry this is. It then looks at the
+ reloc and patches up the entry in the table into a sethi and jmp
+ to the real address followed by a nop. This means that the reloc
+ lookup only has to happen once, and it also means that the
+ relocation only needs to be done if the function is actually
+ called. The relocation is expensive because ld.so must look up
+ the symbol by name.
+
+ The size of the procedure linkage table is given by the ld_plt_sz
+ field. */
+ unsigned long ld_plt;
+
+ /* The address of the relocs. These are in the same format as
+ ordinary relocs. Symbol index numbers refer to the symbols
+ pointed to by ld_stab. I think the only way to determine the
+ number of relocs is to assume that all the bytes from ld_rel to
+ ld_hash contain reloc entries. */
+ unsigned long ld_rel;
+
+ /* The address of a hash table of symbols. The hash table has
+ roughly the same number of entries as there are dynamic symbols;
+ I think the only way to get the exact size is to assume that
+ every byte from ld_hash to ld_stab is devoted to the hash table.
+
+ Each entry in the hash table is eight bytes. The first four
+ bytes are a symbol index into the dynamic symbols. The second
+ four bytes are the index of the next hash table entry in the
+ bucket. The ld_buckets field gives the number of buckets, say B.
+ The first B entries in the hash table each start a bucket which
+ is chained through the second four bytes of each entry. A value
+ of zero ends the chain.
+
+ The hash function is simply
+ h = 0;
+ while (*string != '\0')
+ h = (h << 1) + *string++;
+ h &= 0x7fffffff;
+
+ To look up a symbol, compute the hash value of the name. Take
+ the modulos of hash value and the number of buckets. Start at
+ that entry in the hash table. See if the symbol (from the first
+ four bytes of the hash table entry) has the name you are looking
+ for. If not, use the chain field (the second four bytes of the
+ hash table entry) to move on to the next entry in this bucket.
+ If the chain field is zero you have reached the end of the
+ bucket, and the symbol is not in the hash table. */
+ unsigned long ld_hash;
+
+ /* The address of the symbol table. This is a list of
+ external_nlist structures. The string indices are relative to
+ the ld_symbols field. I think the only way to determine the
+ number of symbols is to assume that all the bytes between ld_stab
+ and ld_symbols are external_nlist structures. */
+ unsigned long ld_stab;
+
+ /* I don't know what this is for. It seems to always be zero. */
+ unsigned long ld_stab_hash;
+
+ /* The number of buckets in the hash table. */
+ unsigned long ld_buckets;
+
+ /* The address of the symbol string table. The first string in this
+ string table need not be the empty string. */
+ unsigned long ld_symbols;
+
+ /* The size in bytes of the symbol string table. */
+ unsigned long ld_symb_size;
+
+ /* The size in bytes of the text segment. */
+ unsigned long ld_text;
+
+ /* The size in bytes of the procedure linkage table. */
+ unsigned long ld_plt_sz;
+};
+
+/* The external form of the structure. */
+
+struct external_sun4_dynamic_link
+{
+ bfd_byte ld_loaded[4];
+ bfd_byte ld_need[4];
+ bfd_byte ld_rules[4];
+ bfd_byte ld_got[4];
+ bfd_byte ld_plt[4];
+ bfd_byte ld_rel[4];
+ bfd_byte ld_hash[4];
+ bfd_byte ld_stab[4];
+ bfd_byte ld_stab_hash[4];
+ bfd_byte ld_buckets[4];
+ bfd_byte ld_symbols[4];
+ bfd_byte ld_symb_size[4];
+ bfd_byte ld_text[4];
+ bfd_byte ld_plt_sz[4];
+};
diff --git a/include/bfdlink.h b/include/bfdlink.h
new file mode 100644
index 000000000..5aa72d4b4
--- /dev/null
+++ b/include/bfdlink.h
@@ -0,0 +1,692 @@
+/* bfdlink.h -- header file for BFD link routines
+ Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003,
+ 2004 Free Software Foundation, Inc.
+ Written by Steve Chamberlain and Ian Lance Taylor, Cygnus Support.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef BFDLINK_H
+#define BFDLINK_H
+
+/* Which symbols to strip during a link. */
+enum bfd_link_strip
+{
+ strip_none, /* Don't strip any symbols. */
+ strip_debugger, /* Strip debugging symbols. */
+ strip_some, /* keep_hash is the list of symbols to keep. */
+ strip_all /* Strip all symbols. */
+};
+
+/* Which local symbols to discard during a link. This is irrelevant
+ if strip_all is used. */
+enum bfd_link_discard
+{
+ discard_sec_merge, /* Discard local temporary symbols in SEC_MERGE
+ sections. */
+ discard_none, /* Don't discard any locals. */
+ discard_l, /* Discard local temporary symbols. */
+ discard_all /* Discard all locals. */
+};
+
+/* Describes the type of hash table entry structure being used.
+ Different hash table structure have different fields and so
+ support different linking features. */
+enum bfd_link_hash_table_type
+ {
+ bfd_link_generic_hash_table,
+ bfd_link_elf_hash_table
+ };
+
+/* These are the possible types of an entry in the BFD link hash
+ table. */
+
+enum bfd_link_hash_type
+{
+ bfd_link_hash_new, /* Symbol is new. */
+ bfd_link_hash_undefined, /* Symbol seen before, but undefined. */
+ bfd_link_hash_undefweak, /* Symbol is weak and undefined. */
+ bfd_link_hash_defined, /* Symbol is defined. */
+ bfd_link_hash_defweak, /* Symbol is weak and defined. */
+ bfd_link_hash_common, /* Symbol is common. */
+ bfd_link_hash_indirect, /* Symbol is an indirect link. */
+ bfd_link_hash_warning /* Like indirect, but warn if referenced. */
+};
+
+enum bfd_link_common_skip_ar_aymbols
+{
+ bfd_link_common_skip_none,
+ bfd_link_common_skip_text,
+ bfd_link_common_skip_data,
+ bfd_link_common_skip_all
+};
+
+/* The linking routines use a hash table which uses this structure for
+ its elements. */
+
+struct bfd_link_hash_entry
+{
+ /* Base hash table entry structure. */
+ struct bfd_hash_entry root;
+
+ /* Type of this entry. */
+ enum bfd_link_hash_type type;
+
+ /* A union of information depending upon the type. */
+ union
+ {
+ /* Nothing is kept for bfd_hash_new. */
+ /* bfd_link_hash_undefined, bfd_link_hash_undefweak. */
+ struct
+ {
+ /* Undefined and common symbols are kept in a linked list through
+ this field. This field is present in all of the union element
+ so that we don't need to remove entries from the list when we
+ change their type. Removing entries would either require the
+ list to be doubly linked, which would waste more memory, or
+ require a traversal. When an undefined or common symbol is
+ created, it should be added to this list, the head of which is in
+ the link hash table itself. As symbols are defined, they need
+ not be removed from the list; anything which reads the list must
+ doublecheck the symbol type.
+
+ Weak symbols are not kept on this list.
+
+ Defined and defweak symbols use this field as a reference marker.
+ If the field is not NULL, or this structure is the tail of the
+ undefined symbol list, the symbol has been referenced. If the
+ symbol is undefined and becomes defined, this field will
+ automatically be non-NULL since the symbol will have been on the
+ undefined symbol list. */
+ struct bfd_link_hash_entry *next;
+ bfd *abfd; /* BFD symbol was found in. */
+ } undef;
+ /* bfd_link_hash_defined, bfd_link_hash_defweak. */
+ struct
+ {
+ struct bfd_link_hash_entry *next;
+ asection *section; /* Symbol section. */
+ bfd_vma value; /* Symbol value. */
+ } def;
+ /* bfd_link_hash_indirect, bfd_link_hash_warning. */
+ struct
+ {
+ struct bfd_link_hash_entry *next;
+ struct bfd_link_hash_entry *link; /* Real symbol. */
+ const char *warning; /* Warning (bfd_link_hash_warning only). */
+ } i;
+ /* bfd_link_hash_common. */
+ struct
+ {
+ struct bfd_link_hash_entry *next;
+ /* The linker needs to know three things about common
+ symbols: the size, the alignment, and the section in
+ which the symbol should be placed. We store the size
+ here, and we allocate a small structure to hold the
+ section and the alignment. The alignment is stored as a
+ power of two. We don't store all the information
+ directly because we don't want to increase the size of
+ the union; this structure is a major space user in the
+ linker. */
+ struct bfd_link_hash_common_entry
+ {
+ unsigned int alignment_power; /* Alignment. */
+ asection *section; /* Symbol section. */
+ } *p;
+ bfd_size_type size; /* Common symbol size. */
+ } c;
+ } u;
+};
+
+/* This is the link hash table. It is a derived class of
+ bfd_hash_table. */
+
+struct bfd_link_hash_table
+{
+ /* The hash table itself. */
+ struct bfd_hash_table table;
+ /* The back end which created this hash table. This indicates the
+ type of the entries in the hash table, which is sometimes
+ important information when linking object files of different
+ types together. */
+ const bfd_target *creator;
+ /* A linked list of undefined and common symbols, linked through the
+ next field in the bfd_link_hash_entry structure. */
+ struct bfd_link_hash_entry *undefs;
+ /* Entries are added to the tail of the undefs list. */
+ struct bfd_link_hash_entry *undefs_tail;
+ /* The type of the link hash table. */
+ enum bfd_link_hash_table_type type;
+};
+
+/* Look up an entry in a link hash table. If FOLLOW is TRUE, this
+ follows bfd_link_hash_indirect and bfd_link_hash_warning links to
+ the real symbol. */
+extern struct bfd_link_hash_entry *bfd_link_hash_lookup
+ (struct bfd_link_hash_table *, const char *, bfd_boolean create,
+ bfd_boolean copy, bfd_boolean follow);
+
+/* Look up an entry in the main linker hash table if the symbol might
+ be wrapped. This should only be used for references to an
+ undefined symbol, not for definitions of a symbol. */
+
+extern struct bfd_link_hash_entry *bfd_wrapped_link_hash_lookup
+ (bfd *, struct bfd_link_info *, const char *, bfd_boolean,
+ bfd_boolean, bfd_boolean);
+
+/* Traverse a link hash table. */
+extern void bfd_link_hash_traverse
+ (struct bfd_link_hash_table *,
+ bfd_boolean (*) (struct bfd_link_hash_entry *, void *),
+ void *);
+
+/* Add an entry to the undefs list. */
+extern void bfd_link_add_undef
+ (struct bfd_link_hash_table *, struct bfd_link_hash_entry *);
+
+struct bfd_sym_chain
+{
+ struct bfd_sym_chain *next;
+ const char *name;
+};
+
+/* How to handle unresolved symbols.
+ There are four possibilities which are enumerated below: */
+enum report_method
+{
+ /* This is the initial value when then link_info structure is created.
+ It allows the various stages of the linker to determine whether they
+ allowed to set the value. */
+ RM_NOT_YET_SET = 0,
+ RM_IGNORE,
+ RM_GENERATE_WARNING,
+ RM_GENERATE_ERROR
+};
+
+/* This structure holds all the information needed to communicate
+ between BFD and the linker when doing a link. */
+
+struct bfd_link_info
+{
+ /* TRUE if BFD should generate a relocatable object file. */
+ unsigned int relocatable: 1;
+
+ /* TRUE if BFD should generate relocation information in the final
+ executable. */
+ unsigned int emitrelocations: 1;
+
+ /* TRUE if BFD should generate a "task linked" object file,
+ similar to relocatable but also with globals converted to
+ statics. */
+ unsigned int task_link: 1;
+
+ /* TRUE if BFD should generate a shared object. */
+ unsigned int shared: 1;
+
+ /* TRUE if BFD should pre-bind symbols in a shared object. */
+ unsigned int symbolic: 1;
+
+ /* TRUE if BFD should export all symbols in the dynamic symbol table
+ of an executable, rather than only those used. */
+ unsigned int export_dynamic: 1;
+
+ /* TRUE if shared objects should be linked directly, not shared. */
+ unsigned int static_link: 1;
+
+ /* TRUE if the output file should be in a traditional format. This
+ is equivalent to the setting of the BFD_TRADITIONAL_FORMAT flag
+ on the output file, but may be checked when reading the input
+ files. */
+ unsigned int traditional_format: 1;
+
+ /* TRUE if we want to produced optimized output files. This might
+ need much more time and therefore must be explicitly selected. */
+ unsigned int optimize: 1;
+
+ /* TRUE if ok to have multiple definition. */
+ unsigned int allow_multiple_definition: 1;
+
+ /* TRUE if ok to have version with no definition. */
+ unsigned int allow_undefined_version: 1;
+
+ /* TRUE if symbols should be retained in memory, FALSE if they
+ should be freed and reread. */
+ unsigned int keep_memory: 1;
+
+ /* TRUE if every symbol should be reported back via the notice
+ callback. */
+ unsigned int notice_all: 1;
+
+ /* TRUE if executable should not contain copy relocs.
+ Setting this true may result in a non-sharable text segment. */
+ unsigned int nocopyreloc: 1;
+
+ /* TRUE if the new ELF dynamic tags are enabled. */
+ unsigned int new_dtags: 1;
+
+ /* TRUE if non-PLT relocs should be merged into one reloc section
+ and sorted so that relocs against the same symbol come together. */
+ unsigned int combreloc: 1;
+
+ /* TRUE if .eh_frame_hdr section and PT_GNU_EH_FRAME ELF segment
+ should be created. */
+ unsigned int eh_frame_hdr: 1;
+
+ /* TRUE if global symbols in discarded sections should be stripped. */
+ unsigned int strip_discarded: 1;
+
+ /* TRUE if the final relax pass is needed. */
+ unsigned int need_relax_finalize: 1;
+
+ /* TRUE if generating a position independent executable. */
+ unsigned int pie: 1;
+
+ /* TRUE if generating an executable, position independent or not. */
+ unsigned int executable : 1;
+
+ /* TRUE if PT_GNU_STACK segment should be created with PF_R|PF_W|PF_X
+ flags. */
+ unsigned int execstack: 1;
+
+ /* TRUE if PT_GNU_STACK segment should be created with PF_R|PF_W
+ flags. */
+ unsigned int noexecstack: 1;
+
+ /* TRUE if PT_GNU_RELRO segment should be created. */
+ unsigned int relro: 1;
+
+ /* What to do with unresolved symbols in an object file.
+ When producing executables the default is GENERATE_ERROR.
+ When producing shared libraries the default is IGNORE. The
+ assumption with shared libraries is that the reference will be
+ resolved at load/execution time. */
+ enum report_method unresolved_syms_in_objects;
+
+ /* What to do with unresolved symbols in a shared library.
+ The same defaults apply. */
+ enum report_method unresolved_syms_in_shared_libs;
+
+ /* Which symbols to strip. */
+ enum bfd_link_strip strip;
+
+ /* Which local symbols to discard. */
+ enum bfd_link_discard discard;
+
+ /* Criteria for skipping symbols when detemining
+ whether to include an object from an archive. */
+ enum bfd_link_common_skip_ar_aymbols common_skip_ar_aymbols;
+
+ /* Char that may appear as the first char of a symbol, but should be
+ skipped (like symbol_leading_char) when looking up symbols in
+ wrap_hash. Used by PowerPC Linux for 'dot' symbols. */
+ char wrap_char;
+
+ /* Function callbacks. */
+ const struct bfd_link_callbacks *callbacks;
+
+ /* Hash table handled by BFD. */
+ struct bfd_link_hash_table *hash;
+
+ /* Hash table of symbols to keep. This is NULL unless strip is
+ strip_some. */
+ struct bfd_hash_table *keep_hash;
+
+ /* Hash table of symbols to report back via the notice callback. If
+ this is NULL, and notice_all is FALSE, then no symbols are
+ reported back. */
+ struct bfd_hash_table *notice_hash;
+
+ /* Hash table of symbols which are being wrapped (the --wrap linker
+ option). If this is NULL, no symbols are being wrapped. */
+ struct bfd_hash_table *wrap_hash;
+
+ /* The list of input BFD's involved in the link. These are chained
+ together via the link_next field. */
+ bfd *input_bfds;
+
+ /* If a symbol should be created for each input BFD, this is section
+ where those symbols should be placed. It must be a section in
+ the output BFD. It may be NULL, in which case no such symbols
+ will be created. This is to support CREATE_OBJECT_SYMBOLS in the
+ linker command language. */
+ asection *create_object_symbols_section;
+
+ /* List of global symbol names that are starting points for marking
+ sections against garbage collection. */
+ struct bfd_sym_chain *gc_sym_list;
+
+ /* If a base output file is wanted, then this points to it */
+ void *base_file;
+
+ /* The function to call when the executable or shared object is
+ loaded. */
+ const char *init_function;
+
+ /* The function to call when the executable or shared object is
+ unloaded. */
+ const char *fini_function;
+
+ /* Non-zero if auto-import thunks for DATA items in pei386 DLLs
+ should be generated/linked against. Set to 1 if this feature
+ is explicitly requested by the user, -1 if enabled by default. */
+ int pei386_auto_import;
+
+ /* Non-zero if runtime relocs for DATA items with non-zero addends
+ in pei386 DLLs should be generated. Set to 1 if this feature
+ is explicitly requested by the user, -1 if enabled by default. */
+ int pei386_runtime_pseudo_reloc;
+
+ /* How many spare .dynamic DT_NULL entries should be added? */
+ unsigned int spare_dynamic_tags;
+
+ /* May be used to set DT_FLAGS for ELF. */
+ bfd_vma flags;
+
+ /* May be used to set DT_FLAGS_1 for ELF. */
+ bfd_vma flags_1;
+
+ /* Start and end of RELRO region. */
+ bfd_vma relro_start, relro_end;
+};
+
+/* This structures holds a set of callback functions. These are
+ called by the BFD linker routines. The first argument to each
+ callback function is the bfd_link_info structure being used. Each
+ function returns a boolean value. If the function returns FALSE,
+ then the BFD function which called it will return with a failure
+ indication. */
+
+struct bfd_link_callbacks
+{
+ /* A function which is called when an object is added from an
+ archive. ABFD is the archive element being added. NAME is the
+ name of the symbol which caused the archive element to be pulled
+ in. */
+ bfd_boolean (*add_archive_element)
+ (struct bfd_link_info *, bfd *abfd, const char *name);
+ /* A function which is called when a symbol is found with multiple
+ definitions. NAME is the symbol which is defined multiple times.
+ OBFD is the old BFD, OSEC is the old section, OVAL is the old
+ value, NBFD is the new BFD, NSEC is the new section, and NVAL is
+ the new value. OBFD may be NULL. OSEC and NSEC may be
+ bfd_com_section or bfd_ind_section. */
+ bfd_boolean (*multiple_definition)
+ (struct bfd_link_info *, const char *name,
+ bfd *obfd, asection *osec, bfd_vma oval,
+ bfd *nbfd, asection *nsec, bfd_vma nval);
+ /* A function which is called when a common symbol is defined
+ multiple times. NAME is the symbol appearing multiple times.
+ OBFD is the BFD of the existing symbol; it may be NULL if this is
+ not known. OTYPE is the type of the existing symbol, which may
+ be bfd_link_hash_defined, bfd_link_hash_defweak,
+ bfd_link_hash_common, or bfd_link_hash_indirect. If OTYPE is
+ bfd_link_hash_common, OSIZE is the size of the existing symbol.
+ NBFD is the BFD of the new symbol. NTYPE is the type of the new
+ symbol, one of bfd_link_hash_defined, bfd_link_hash_common, or
+ bfd_link_hash_indirect. If NTYPE is bfd_link_hash_common, NSIZE
+ is the size of the new symbol. */
+ bfd_boolean (*multiple_common)
+ (struct bfd_link_info *, const char *name,
+ bfd *obfd, enum bfd_link_hash_type otype, bfd_vma osize,
+ bfd *nbfd, enum bfd_link_hash_type ntype, bfd_vma nsize);
+ /* A function which is called to add a symbol to a set. ENTRY is
+ the link hash table entry for the set itself (e.g.,
+ __CTOR_LIST__). RELOC is the relocation to use for an entry in
+ the set when generating a relocatable file, and is also used to
+ get the size of the entry when generating an executable file.
+ ABFD, SEC and VALUE identify the value to add to the set. */
+ bfd_boolean (*add_to_set)
+ (struct bfd_link_info *, struct bfd_link_hash_entry *entry,
+ bfd_reloc_code_real_type reloc, bfd *abfd, asection *sec, bfd_vma value);
+ /* A function which is called when the name of a g++ constructor or
+ destructor is found. This is only called by some object file
+ formats. CONSTRUCTOR is TRUE for a constructor, FALSE for a
+ destructor. This will use BFD_RELOC_CTOR when generating a
+ relocatable file. NAME is the name of the symbol found. ABFD,
+ SECTION and VALUE are the value of the symbol. */
+ bfd_boolean (*constructor)
+ (struct bfd_link_info *, bfd_boolean constructor, const char *name,
+ bfd *abfd, asection *sec, bfd_vma value);
+ /* A function which is called to issue a linker warning. For
+ example, this is called when there is a reference to a warning
+ symbol. WARNING is the warning to be issued. SYMBOL is the name
+ of the symbol which triggered the warning; it may be NULL if
+ there is none. ABFD, SECTION and ADDRESS identify the location
+ which trigerred the warning; either ABFD or SECTION or both may
+ be NULL if the location is not known. */
+ bfd_boolean (*warning)
+ (struct bfd_link_info *, const char *warning, const char *symbol,
+ bfd *abfd, asection *section, bfd_vma address);
+ /* A function which is called when a relocation is attempted against
+ an undefined symbol. NAME is the symbol which is undefined.
+ ABFD, SECTION and ADDRESS identify the location from which the
+ reference is made. FATAL indicates whether an undefined symbol is
+ a fatal error or not. In some cases SECTION may be NULL. */
+ bfd_boolean (*undefined_symbol)
+ (struct bfd_link_info *, const char *name, bfd *abfd,
+ asection *section, bfd_vma address, bfd_boolean fatal);
+ /* A function which is called when a reloc overflow occurs. NAME is
+ the name of the symbol or section the reloc is against,
+ RELOC_NAME is the name of the relocation, and ADDEND is any
+ addend that is used. ABFD, SECTION and ADDRESS identify the
+ location at which the overflow occurs; if this is the result of a
+ bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
+ ABFD will be NULL. */
+ bfd_boolean (*reloc_overflow)
+ (struct bfd_link_info *, const char *name, const char *reloc_name,
+ bfd_vma addend, bfd *abfd, asection *section, bfd_vma address);
+ /* A function which is called when a dangerous reloc is performed.
+ The canonical example is an a29k IHCONST reloc which does not
+ follow an IHIHALF reloc. MESSAGE is an appropriate message.
+ ABFD, SECTION and ADDRESS identify the location at which the
+ problem occurred; if this is the result of a
+ bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
+ ABFD will be NULL. */
+ bfd_boolean (*reloc_dangerous)
+ (struct bfd_link_info *, const char *message,
+ bfd *abfd, asection *section, bfd_vma address);
+ /* A function which is called when a reloc is found to be attached
+ to a symbol which is not being written out. NAME is the name of
+ the symbol. ABFD, SECTION and ADDRESS identify the location of
+ the reloc; if this is the result of a
+ bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
+ ABFD will be NULL. */
+ bfd_boolean (*unattached_reloc)
+ (struct bfd_link_info *, const char *name,
+ bfd *abfd, asection *section, bfd_vma address);
+ /* A function which is called when a symbol in notice_hash is
+ defined or referenced. NAME is the symbol. ABFD, SECTION and
+ ADDRESS are the value of the symbol. If SECTION is
+ bfd_und_section, this is a reference. */
+ bfd_boolean (*notice)
+ (struct bfd_link_info *, const char *name,
+ bfd *abfd, asection *section, bfd_vma address);
+};
+
+/* The linker builds link_order structures which tell the code how to
+ include input data in the output file. */
+
+/* These are the types of link_order structures. */
+
+enum bfd_link_order_type
+{
+ bfd_undefined_link_order, /* Undefined. */
+ bfd_indirect_link_order, /* Built from a section. */
+ bfd_data_link_order, /* Set to explicit data. */
+ bfd_section_reloc_link_order, /* Relocate against a section. */
+ bfd_symbol_reloc_link_order /* Relocate against a symbol. */
+};
+
+/* This is the link_order structure itself. These form a chain
+ attached to the section whose contents they are describing. */
+
+struct bfd_link_order
+{
+ /* Next link_order in chain. */
+ struct bfd_link_order *next;
+ /* Type of link_order. */
+ enum bfd_link_order_type type;
+ /* Offset within output section. */
+ bfd_vma offset;
+ /* Size within output section. */
+ bfd_size_type size;
+ /* Type specific information. */
+ union
+ {
+ struct
+ {
+ /* Section to include. If this is used, then
+ section->output_section must be the section the
+ link_order is attached to, section->output_offset must
+ equal the link_order offset field, and section->size
+ must equal the link_order size field. Maybe these
+ restrictions should be relaxed someday. */
+ asection *section;
+ } indirect;
+ struct
+ {
+ /* Size of contents, or zero when contents size == size
+ within output section.
+ A non-zero value allows filling of the output section
+ with an arbitrary repeated pattern. */
+ unsigned int size;
+ /* Data to put into file. */
+ bfd_byte *contents;
+ } data;
+ struct
+ {
+ /* Description of reloc to generate. Used for
+ bfd_section_reloc_link_order and
+ bfd_symbol_reloc_link_order. */
+ struct bfd_link_order_reloc *p;
+ } reloc;
+ } u;
+};
+
+/* A linker order of type bfd_section_reloc_link_order or
+ bfd_symbol_reloc_link_order means to create a reloc against a
+ section or symbol, respectively. This is used to implement -Ur to
+ generate relocs for the constructor tables. The
+ bfd_link_order_reloc structure describes the reloc that BFD should
+ create. It is similar to a arelent, but I didn't use arelent
+ because the linker does not know anything about most symbols, and
+ any asymbol structure it creates will be partially meaningless.
+ This information could logically be in the bfd_link_order struct,
+ but I didn't want to waste the space since these types of relocs
+ are relatively rare. */
+
+struct bfd_link_order_reloc
+{
+ /* Reloc type. */
+ bfd_reloc_code_real_type reloc;
+
+ union
+ {
+ /* For type bfd_section_reloc_link_order, this is the section
+ the reloc should be against. This must be a section in the
+ output BFD, not any of the input BFDs. */
+ asection *section;
+ /* For type bfd_symbol_reloc_link_order, this is the name of the
+ symbol the reloc should be against. */
+ const char *name;
+ } u;
+
+ /* Addend to use. The object file should contain zero. The BFD
+ backend is responsible for filling in the contents of the object
+ file correctly. For some object file formats (e.g., COFF) the
+ addend must be stored into in the object file, and for some
+ (e.g., SPARC a.out) it is kept in the reloc. */
+ bfd_vma addend;
+};
+
+/* Allocate a new link_order for a section. */
+extern struct bfd_link_order *bfd_new_link_order (bfd *, asection *);
+
+/* These structures are used to describe version information for the
+ ELF linker. These structures could be manipulated entirely inside
+ BFD, but it would be a pain. Instead, the regular linker sets up
+ these structures, and then passes them into BFD. */
+
+/* Glob pattern for a version. */
+
+struct bfd_elf_version_expr
+{
+ /* Next glob pattern for this version. */
+ struct bfd_elf_version_expr *next;
+ /* Glob pattern. */
+ const char *pattern;
+ /* NULL for a glob pattern, otherwise a straight symbol. */
+ const char *symbol;
+ /* Defined by ".symver". */
+ unsigned int symver : 1;
+ /* Defined by version script. */
+ unsigned int script : 1;
+ /* Pattern type. */
+#define BFD_ELF_VERSION_C_TYPE 1
+#define BFD_ELF_VERSION_CXX_TYPE 2
+#define BFD_ELF_VERSION_JAVA_TYPE 4
+ unsigned int mask : 3;
+};
+
+struct bfd_elf_version_expr_head
+{
+ /* List of all patterns, both wildcards and non-wildcards. */
+ struct bfd_elf_version_expr *list;
+ /* Hash table for non-wildcards. */
+ void *htab;
+ /* Remaining patterns. */
+ struct bfd_elf_version_expr *remaining;
+ /* What kind of pattern types are present in list (bitmask). */
+ unsigned int mask;
+};
+
+/* Version dependencies. */
+
+struct bfd_elf_version_deps
+{
+ /* Next dependency for this version. */
+ struct bfd_elf_version_deps *next;
+ /* The version which this version depends upon. */
+ struct bfd_elf_version_tree *version_needed;
+};
+
+/* A node in the version tree. */
+
+struct bfd_elf_version_tree
+{
+ /* Next version. */
+ struct bfd_elf_version_tree *next;
+ /* Name of this version. */
+ const char *name;
+ /* Version number. */
+ unsigned int vernum;
+ /* Regular expressions for global symbols in this version. */
+ struct bfd_elf_version_expr_head globals;
+ /* Regular expressions for local symbols in this version. */
+ struct bfd_elf_version_expr_head locals;
+ /* List of versions which this version depends upon. */
+ struct bfd_elf_version_deps *deps;
+ /* Index of the version name. This is used within BFD. */
+ unsigned int name_indx;
+ /* Whether this version tree was used. This is used within BFD. */
+ int used;
+ /* Matching hook. */
+ struct bfd_elf_version_expr *(*match)
+ (struct bfd_elf_version_expr_head *head,
+ struct bfd_elf_version_expr *prev, const char *sym);
+};
+
+#endif
diff --git a/include/bin-bugs.h b/include/bin-bugs.h
new file mode 100644
index 000000000..63901b044
--- /dev/null
+++ b/include/bin-bugs.h
@@ -0,0 +1,3 @@
+#ifndef REPORT_BUGS_TO
+#define REPORT_BUGS_TO "<URL:http://www.sourceware.org/bugzilla/>"
+#endif
diff --git a/include/bout.h b/include/bout.h
new file mode 100644
index 000000000..a69e280cb
--- /dev/null
+++ b/include/bout.h
@@ -0,0 +1,191 @@
+/* This file is a modified version of 'a.out.h'. It is to be used in all
+ GNU tools modified to support the i80960 (or tools that operate on
+ object files created by such tools).
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* All i80960 development is done in a CROSS-DEVELOPMENT environment. I.e.,
+ object code is generated on, and executed under the direction of a symbolic
+ debugger running on, a host system. We do not want to be subject to the
+ vagaries of which host it is or whether it supports COFF or a.out format,
+ or anything else. We DO want to:
+
+ o always generate the same format object files, regardless of host.
+
+ o have an 'a.out' header that we can modify for our own purposes
+ (the 80960 is typically an embedded processor and may require
+ enhanced linker support that the normal a.out.h header can't
+ accommodate).
+
+ As for byte-ordering, the following rules apply:
+
+ o Text and data that is actually downloaded to the target is always
+ in i80960 (little-endian) order.
+
+ o All other numbers (in the header, symbols, relocation directives)
+ are in host byte-order: object files CANNOT be lifted from a
+ little-end host and used on a big-endian (or vice versa) without
+ modification.
+ ==> THIS IS NO LONGER TRUE USING BFD. WE CAN GENERATE ANY BYTE ORDER
+ FOR THE HEADER, AND READ ANY BYTE ORDER. PREFERENCE WOULD BE TO
+ USE LITTLE-ENDIAN BYTE ORDER THROUGHOUT, REGARDLESS OF HOST. <==
+
+ o The downloader ('comm960') takes care to generate a pseudo-header
+ with correct (i80960) byte-ordering before shipping text and data
+ off to the NINDY monitor in the target systems. Symbols and
+ relocation info are never sent to the target. */
+
+#define BMAGIC 0415
+/* We don't accept the following (see N_BADMAG macro).
+ They're just here so GNU code will compile. */
+#define OMAGIC 0407 /* old impure format */
+#define NMAGIC 0410 /* read-only text */
+#define ZMAGIC 0413 /* demand load format */
+
+/* FILE HEADER
+ All 'lengths' are given as a number of bytes.
+ All 'alignments' are for relinkable files only; an alignment of
+ 'n' indicates the corresponding segment must begin at an
+ address that is a multiple of (2**n). */
+struct external_exec
+ {
+ /* Standard stuff */
+ unsigned char e_info[4]; /* Identifies this as a b.out file */
+ unsigned char e_text[4]; /* Length of text */
+ unsigned char e_data[4]; /* Length of data */
+ unsigned char e_bss[4]; /* Length of uninitialized data area */
+ unsigned char e_syms[4]; /* Length of symbol table */
+ unsigned char e_entry[4]; /* Runtime start address */
+ unsigned char e_trsize[4]; /* Length of text relocation info */
+ unsigned char e_drsize[4]; /* Length of data relocation info */
+
+ /* Added for i960 */
+ unsigned char e_tload[4]; /* Text runtime load address */
+ unsigned char e_dload[4]; /* Data runtime load address */
+ unsigned char e_talign[1]; /* Alignment of text segment */
+ unsigned char e_dalign[1]; /* Alignment of data segment */
+ unsigned char e_balign[1]; /* Alignment of bss segment */
+ unsigned char e_relaxable[1];/* Assembled with enough info to allow linker to relax */
+ };
+
+#define EXEC_BYTES_SIZE (sizeof (struct external_exec))
+
+/* These macros use the a_xxx field names, since they operate on the exec
+ structure after it's been byte-swapped and realigned on the host machine. */
+#define N_BADMAG(x) (((x).a_info)!=BMAGIC)
+#define N_TXTOFF(x) EXEC_BYTES_SIZE
+#define N_DATOFF(x) ( N_TXTOFF(x) + (x).a_text )
+#define N_TROFF(x) ( N_DATOFF(x) + (x).a_data )
+#define N_TRELOFF N_TROFF
+#define N_DROFF(x) ( N_TROFF(x) + (x).a_trsize )
+#define N_DRELOFF N_DROFF
+#define N_SYMOFF(x) ( N_DROFF(x) + (x).a_drsize )
+#define N_STROFF(x) ( N_SYMOFF(x) + (x).a_syms )
+#define N_DATADDR(x) ( (x).a_dload )
+
+/* Address of text segment in memory after it is loaded. */
+#if !defined (N_TXTADDR)
+#define N_TXTADDR(x) 0
+#endif
+
+/* A single entry in the symbol table. */
+struct nlist
+ {
+ union
+ {
+ char* n_name;
+ struct nlist * n_next;
+ long n_strx; /* Index into string table */
+ } n_un;
+
+ unsigned char n_type; /* See below */
+ char n_other; /* Used in i80960 support -- see below */
+ short n_desc;
+ unsigned long n_value;
+ };
+
+
+/* Legal values of n_type. */
+#define N_UNDF 0 /* Undefined symbol */
+#define N_ABS 2 /* Absolute symbol */
+#define N_TEXT 4 /* Text symbol */
+#define N_DATA 6 /* Data symbol */
+#define N_BSS 8 /* BSS symbol */
+#define N_FN 31 /* Filename symbol */
+
+#define N_EXT 1 /* External symbol (OR'd in with one of above) */
+#define N_TYPE 036 /* Mask for all the type bits */
+#define N_STAB 0340 /* Mask for all bits used for SDB entries */
+
+/* MEANING OF 'n_other'
+
+ If non-zero, the 'n_other' fields indicates either a leaf procedure or
+ a system procedure, as follows:
+
+ 1 <= n_other <= 32 :
+ The symbol is the entry point to a system procedure.
+ 'n_value' is the address of the entry, as for any other
+ procedure. The system procedure number (which can be used in
+ a 'calls' instruction) is (n_other-1). These entries come from
+ '.sysproc' directives.
+
+ n_other == N_CALLNAME
+ the symbol is the 'call' entry point to a leaf procedure.
+ The *next* symbol in the symbol table must be the corresponding
+ 'bal' entry point to the procedure (see following). These
+ entries come from '.leafproc' directives in which two different
+ symbols are specified (the first one is represented here).
+
+
+ n_other == N_BALNAME
+ the symbol is the 'bal' entry point to a leaf procedure.
+ These entries result from '.leafproc' directives in which only
+ one symbol is specified, or in which the same symbol is
+ specified twice.
+
+ Note that an N_CALLNAME entry *must* have a corresponding N_BALNAME entry,
+ but not every N_BALNAME entry must have an N_CALLNAME entry. */
+#define N_CALLNAME ((char)-1)
+#define N_BALNAME ((char)-2)
+#define IS_CALLNAME(x) (N_CALLNAME == (x))
+#define IS_BALNAME(x) (N_BALNAME == (x))
+#define IS_OTHER(x) ((x)>0 && (x) <=32)
+
+#define b_out_relocation_info relocation_info
+struct relocation_info
+ {
+ int r_address; /* File address of item to be relocated. */
+ unsigned
+#define r_index r_symbolnum
+ r_symbolnum:24, /* Index of symbol on which relocation is based,
+ if r_extern is set. Otherwise set to
+ either N_TEXT, N_DATA, or N_BSS to
+ indicate section on which relocation is
+ based. */
+ r_pcrel:1, /* 1 => relocate PC-relative; else absolute
+ On i960, pc-relative implies 24-bit
+ address, absolute implies 32-bit. */
+ r_length:2, /* Number of bytes to relocate:
+ 0 => 1 byte
+ 1 => 2 bytes -- used for 13 bit pcrel
+ 2 => 4 bytes. */
+ r_extern:1,
+ r_bsr:1, /* Something for the GNU NS32K assembler. */
+ r_disp:1, /* Something for the GNU NS32K assembler. */
+ r_callj:1, /* 1 if relocation target is an i960 'callj'. */
+ r_relaxable:1; /* 1 if enough info is left to relax the data. */
+};
diff --git a/include/coff/ChangeLog b/include/coff/ChangeLog
new file mode 100644
index 000000000..290a5070a
--- /dev/null
+++ b/include/coff/ChangeLog
@@ -0,0 +1,23 @@
+2004-08-13 Mark Kettenis <kettenis@gnu.org>
+
+ * symconst.h (langMax): Fix typo in comment.
+
+2004-04-23 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (MIPS_R_RELHI, MIPS_R_RELLO, MIPS_R_SWITCH): Remove
+ (MIPS_R_PCREL16): Update comment.
+ * ecoff.h (struct ecoff_value_adjust): Remove structure.
+ (struct ecoff_debug_info): Remove 'adjust' member.
+
+2004-04-20 DJ Delorie <dj@redhat.com>
+
+ * internal.h (R_SECREL32): Add.
+
+For older changes see ChangeLog-9103
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/coff/ChangeLog-9103 b/include/coff/ChangeLog-9103
new file mode 100644
index 000000000..d18113d52
--- /dev/null
+++ b/include/coff/ChangeLog-9103
@@ -0,0 +1,1160 @@
+2003-12-02 Graham Reed <grahamr@algorithmics.com>
+
+ * internal.h (C_WEAKEXT): Add alternative value for AIX 5.2
+ based targets.
+
+2003-08-23 Jason Eckhardt <jle@rice.edu>
+
+ * coff/i860.h (COFF860_R_PAIR, COFF860_R_LOW0, COFF860_R_LOW1,
+ COFF860_R_LOW2, COFF860_R_LOW3, COFF860_R_LOW4, COFF860_R_SPLIT0,
+ COFF860_R_SPLIT1, COFF860_R_SPLIT2, COFF860_R_HIGHADJ,
+ COFF860_R_BRADDR): Define new relocation constants and document.
+ Minor formatting adjustments.
+
+2003-08-07 Alan Modra <amodra@bigpond.net.au>
+
+ * ti.h (GET_SCNHDR_NRELOC): Rename PTR param to LOC.
+ (PUT_SCNHDR_NRELOC, GET_SCNHDR_NLNNO, PUT_SCNHDR_NLNNO): Likewise.
+ (GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Likewise.
+ (GET_SCNHDR_PAGE, PUT_SCNHDR_PAGE): Likewise.
+
+2003-07-17 Jeff Muizelaar <muizelaar@rogers.com>
+
+ * pe.h: (IMAGE_FILE_NET_RUN_FROM_SWAP): Define.
+ (IMAGE_FILE_MACHINE_WCEMIPSV2): Define.
+ (IMAGE_FILE_MACHINE_SH3DSP): Define.
+ (IMAGE_FILE_MACHINE_SH3E): Define.
+ (IMAGE_FILE_MACHINE_SH5): Define.
+ (IMAGE_FILE_MACHINE_AM33): Define.
+ (IMAGE_FILE_MACHINE_POWERPCFP): Define.
+ (IMAGE_FILE_MACHINE_AXP64): Define.
+ (IMAGE_FILE_MACHINE_TRICORE): Define.
+ (IMAGE_FILE_MACHINE_CEF): Define.
+ (IMAGE_FILE_MACHINE_EBC): Define.
+ (IMAGE_FILE_MACHINE_AMD64): Define.
+ (IMAGE_FILE_MACHINE_M32R): Define.
+ (IMAGE_FILE_MACHINE_CEE): Define.
+
+2003-07-14 Christian Groessler <chris@groessler.org>
+
+ * i860.h (AOUTSZ): Define for i860 coff.
+
+2003-06-29 Andreas Jaeger <aj@suse.de>
+
+ * xcoff.h (struct __rtinit ): Convert to ISO C90 prototypes.
+
+ * ecoff.h: Convert to ISO C90 prototypes. Replace PTR by void *.
+
+2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
+
+ * coff/h8300.h (H8300HNMAGIC, H8300SNMAGIC): New.
+ (H8300HNBADMAG, H8300SNBADMAG): New.
+
+2003-04-15 Rohit Kumar Srivastava <rohits@kpitcummins.com>
+
+ * sh.h: Replace occurrances of 'Hitachi' with 'Renesas'.
+ * h8300.h: Likewise.
+ * h8500.h: Likewise.
+
+2003-03-25 Stan Cox <scox@redhat.com>
+ Nick Clifton <nickc@redhat.com>
+
+ Contribute support for Intel's iWMMXt chip - an ARM variant:
+
+ * arm.h (ARM_NOTE_SECTION): Define.
+
+2002-11-30 Alan Modra <amodra@bigpond.net.au>
+
+ * ecoff.h: Replace boolean with bfd_boolean.
+ * xcoff.h: Likewise.
+
+2002-03-18 Tom Rix <trix@redhat.com>
+
+ * rs6k64.h: Add U64_TOCMAGIC, AIX 5 64 bit magic number.
+
+2002-02-01 Tom Rix <trix@redhat.com>
+
+ * xcoff.h: Conditionally support <aiaff> for pre AIX 4.3.
+
+2002-01-31 Ivan Guzvinec <ivang@opencores.org>
+
+ * or32.h: New file.
+
+2001-12-24 Tom Rix <trix@redhat.com>
+
+ * xcoff.h (xcoff_big_format_p): Make <bigaf> the default archive
+ format.
+ (XCOFFARMAG_ELEMENT_SIZE, XCOFFARMAGBIG_ELEMENT_SIZE): Define for
+ archive header ascii elements.
+
+2001-12-17 Tom Rix <trix@redhat.com>
+
+ * xcoff.h : Add .except and .typchk section string and styp flags.
+ Fix xcoff_big_format_p macro.
+
+2001-12-16 Tom Rix <trix@redhat.com>
+
+ * xcoff.h : Clean up formatting.
+
+2002-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (F_VFP_FLOAT): Define.
+
+2001-11-11 Timothy Wall <twall@alum.mit.edu>
+
+ * ti.h: Move arch-specific stuff from here...
+ (COFF_ADJUST_SYM_IN/OUT): Optionally put page flag into symbol
+ value.
+ * tic54x.h: ...to here.
+
+2001-10-26 Christian Groessler <cpg@aladdin.de>
+
+ * external.h (GET_LINENO_LNNO): Fix usage of H_GET_32/16.
+ (PUT_LINENO_LNNO): Likewise with H_PUT_32/16.
+
+2001-09-21 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * ti.h (GET_SCNHDR_PAGE): Fix compile time warning.
+
+2001-09-18 Alan Modra <amodra@bigpond.net.au>
+
+ * external.h (GET_LINENO_LNNO): Use H_GET_32/16.
+ (PUT_LINENO_LNNO): Use H_PUT_32/16.
+ * m88k.h (GET_LNSZ_SIZE, GET_LNSZ_LNNO, GET_SCN_NRELOC,
+ GET_SCN_NLINNO): Use H_GET_32.
+ (PUT_LNSZ_LNNO, PUT_LNSZ_SIZE, PUT_SCN_NRELOC, PUT_SCN_NLINNO):
+ Use H_PUT_32.
+ * ti.h: Formatting fixes. Make use of H_GET_* and H_PUT_* throughout.
+ * xcoff.h: White space changes.
+
+2001-09-05 Tom Rix <trix@redhat.com>
+
+ * xcoff.h : Add XCOFF_SYSCALL32 and XCOFF_SYSCALL64 hash table flags.
+
+2001-08-27 Andreas Jaeger <aj@suse.de>
+
+ * xcoff.h (struct __rtinit): Make proper prototype for rtl.
+
+Fri Aug 24 01:18:51 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * internal.h (R_JMP2, R_JMPL2, R_MOVL2): Comment spelling fix.
+
+2001-04-05 Tom Rix <trix@redhat.com>
+
+ * rs6000.h : move xcoff32 external structures from xcofflink.
+ * rs6k64.h : move xcoff64 external structures from xcofflink.
+ * internal.h : promote 32 bit structure elements to 64 bit
+ for xcoff64 support
+ * xcoff.h : New file.
+
+2001-03-23 Nick Clifton <nickc@redhat.com>
+
+ * a29k.h: Fix compile time warning.
+ * external.h: Fix compile time warning.
+ * m88k.h: Fix compile time warning.
+
+2001-03-13 Nick Clifton <nickc@redhat.com>
+
+ * external.h: New file. Common structure definitions found in
+ other COFF header files.
+
+ * a29k.h: Use external.h.
+ * apollo.h: Use external.h.
+ * arm.h: Use external.h.
+ * h8300.h: Use external.h.
+ * h8500.h: Use external.h.
+ * i386.h: Use external.h.
+ * i860.h: Use external.h.
+ * ia64.h: Use external.h.
+ * m68k.h: Use external.h.
+ * m88k.h: Use external.h.
+ * mcore.h: Use external.h.
+ * mips.h: Use external.h.
+ * mipspe.h: Use external.h.
+ * powerpc.h: Use external.h.
+ * rs6000.h: Use external.h.
+ * rs6k64.h: Use external.h.
+ * sh.h: Use external.h.
+ * sparc.h: Use external.h.
+ * tic30.h: Use external.h.
+ * tic80.h: Use external.h.
+ * w65.h: Use external.h.
+ * we32k.h: Use external.h.
+ * z8k.h: Use external.h.
+
+2001-02-09 David Mosberger <davidm@hpl.hp.com>
+
+ * pe.h (PEPAOUTSZ): Rename from PEP64AOUTSZ.
+ Rename from PEPAOUTHDR.
+
+2001-01-23 H.J. Lu <hjl@gnu.org>
+
+ * pe.h (struct external_PEI_DOS_hdr): New.
+ (struct external_PEI_IMAGE_hdr): New.
+
+2000-12-11 Alan Modra <alan@linuxcare.com.au>
+
+ * ti.h (OCTETS_PER_BYTE_POWER): Change #warning to #error.
+
+2000-12-08 Alan Modra <alan@linuxcare.com.au>
+
+ * ti.h (OCTETS_PER_BYTE_POWER): Change #warn to #warning.
+
+2000-06-30 DJ Delorie <dj@cygnus.com>
+
+ * pe.h: Clarify a comment.
+
+2000-05-05 Clinton Popetz <cpopetz@cygnus.com>
+
+ * rs6k64.h (U802TOC64MAGIC): Change to U803XTOCMAGIC.
+
+2000-04-24 Clinton Popetz <cpopetz@cygnus.com>
+
+ * rs6k64.h: New file.
+
+2000-04-17 Timothy Wall <twall@cygnus.com>
+
+ * ti.h: Load page cleanup.
+ * intental.h: Add load page field.
+
+Mon Apr 17 16:44:01 2000 David Mosberger <davidm@hpl.hp.com>
+
+ * pe.h (PEP64AOUTHDR): New header for PE+.
+ (PEP64AOUTSZ): New macro.
+ (IMAGE_SUBSYSTEM_UNKNOWN): New macro.
+ (IMAGE_SUBSYSTEM_NATIVE): Ditto.
+ (IMAGE_SUBSYSTEM_WINDOWS_GUI): Ditto.
+ (IMAGE_SUBSYSTEM_WINDOWS_CUI): Ditto.
+ (IMAGE_SUBSYSTEM_POSIX_CUI): Ditto.
+ (IMAGE_SUBSYSTEM_WINDOWS_CE_GUI): Ditto.
+ (IMAGE_SUBSYSTEM_EFI_APPLICATION): Ditto.
+ (IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER): Ditto.
+ (IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER): Ditto.
+ * internal.h (PE_DEF_FILE_ALIGNMENT): Define only if not defined
+ already.
+ * ia64.h: New file.
+
+2000-04-13 Alan Modra <alan@linuxcare.com.au>
+
+ * ti.h (ADDR_MASK): Don't use ul suffix on constants.
+ (PG_MASK): Ditto.
+
+2000-04-11 Timothy Wall <twall@cygnus.com>
+
+ * ti.h: Remove load page references until load pages are
+ reimplemented.
+ * tic54x.h: Ditto.
+
+2000-04-07 Timothy Wall <twall@cygnus.com>
+
+ * internal.h: Fix some comments related to TI COFF (instead of tic80).
+ * ti.h: New.
+ * tic54x.h: New.
+
+Wed Apr 5 22:08:41 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (R_SH_LOOP_START, R_SH_LOOP_END): Define.
+
+2000-03-15 Kazu Hirata <kazu@hxi.com>
+
+ * internal.h: Fix a typo in the comment for R_MOVL2.
+
+2000-02-28 Nick Clifton <nickc@cygnus.com>
+
+ * mipspe.h (MIPS_PE_MAGIC): Define.
+ * sh.h (SH_PE_MAGIC): Define.
+
+2000-02-22 Nick Clifton <nickc@cygnus.com> DJ Delorie <dj@cygnus.com>
+
+ * sh.h: Add Windows CE definitions.
+ * arm.h: Add Windows CE definitions.
+ * mipspe.h: New file: Windows CE definitions for MIPS.
+ * pe.h: Add constants for ILF support.
+
+2000-01-05 Nick Clifton <nickc@cygnus.com>
+
+ * pe.h: Fix formatting of comments.
+ (IMAGE_FILE_AGGRESSIVE_WS_TRIM): Define.
+ (IMAGE_FILE_LARGE_ADDRESS_AWARE): Define.
+ (IMAGE_FILE_16BIT_MACHINE): Define.
+ (IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP): Define.
+ (IMAGE_FILE_UP_SYSTEM_ONLY): Define.
+ (IMAGE_FILE_MACHINE_UNKNOWN): Define.
+ (IMAGE_FILE_MACHINE_ALPHA): Define.
+ (IMAGE_FILE_MACHINE_ALPHA64): Define.
+ (IMAGE_FILE_MACHINE_I386): Define.
+ (IMAGE_FILE_MACHINE_IA64): Define.
+ (IMAGE_FILE_MACHINE_M68K): Define.
+ (IMAGE_FILE_MACHINE_MIPS16): Define.
+ (IMAGE_FILE_MACHINE_MIPSFPU): Define.
+ (IMAGE_FILE_MACHINE_MIPSFPU16): Define.
+ (IMAGE_FILE_MACHINE_POWERPC): Define.
+ (IMAGE_FILE_MACHINE_R3000): Define.
+ (IMAGE_FILE_MACHINE_R4000): Define.
+ (IMAGE_FILE_MACHINE_R10000): Define.
+ (IMAGE_FILE_MACHINE_SH3): Define.
+ (IMAGE_FILE_MACHINE_SH4): Define.
+ (IMAGE_FILE_MACHINE_THUMB): Define.
+
+1999-09-20 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * internal.h: Delete bogus R_PCLONG, duplicate R_RELBYTE and
+ R_RELWORD, and rewrite some R_* as decimal.
+
+1999-09-06 Donn Terry <donn@interix.com>
+
+ * internal.h (DTYPE): Define.
+ * pe.h (struct external_PEI_filehdr): Rename from
+ external_PE_filehdr. Define even if COFF_IMAGE_WITH_PE is not
+ defined.
+
+1999-07-17 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (F_SOFT_FLOAT): Rename from F_SOFTFLOAT.
+
+1999-06-21 Philip Blundell <pb@nexus.co.uk>
+
+ * arm.h (F_SOFTFLOAT): Define.
+
+1999-07-05 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (F_ARM_5): Define.
+
+Wed Jun 2 18:08:18 1999 Richard Henderson <rth@cygnus.com>
+
+ * internal.h (BEOS_EXE_IMAGE_BASE, BEOS_DLL_IMAGE_BASE): New.
+
+Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com>
+
+ * arm.h (F_PIC, F_ARM_2, F_ARM_2a, F_ARM_3, F_ARM_3M,
+ F_ARM_4, F_ARM_4T, F_APCS26): Changed values to distinguish
+ F_ARM_2a, F_ARM_3M, F_ARM_4T.
+
+1999-05-15 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h (IMAGE_REL_MCORE_RVA): Define.
+
+1999-04-21 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h (GET_LINENO_LNNO): New macro.
+ (PUT_LINENO_LNNO): New macro.
+
+1999-04-08 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h: New header file. Defines for Motorola's MCore
+ processor.
+
+Sun Dec 6 21:36:37 1998 Mark Elbrecht <snowball3@usa.net>
+
+ * internal.h (C_WEAKEXT): Define.
+
+Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com>
+
+ * arm.h (F_PIC_INT, F_ARM_2, F_ARM_3, F_ARM_4, F_APCS26):
+ Changed values to avoid clashing with IMAGE_FILE_* coff header
+ flag values.
+
+Wed Apr 1 16:06:15 1998 Nick Clifton <nickc@cygnus.com>
+
+ * internal.h: Document numbers associated with Thumb symbol
+ types.
+
+Fri Mar 27 17:16:57 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (ISPTR, ISFCN, ISARY): Add casts to unsigned long.
+
+Mon Feb 2 17:10:38 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
+
+ * tic30.h: New file.
+
+Fri Dec 12 11:49:07 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (R_MPPCR15W): New relocation type, for 15 bit PC relative
+ offsets.
+
+Tue Dec 2 10:21:40 1997 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (COFFARM): New define.
+
+Mon Dec 1 20:24:18 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (R_SH_SWITCH8): New.
+
+Sat Nov 22 15:10:14 1997 Nick Clifton <nickc@cygnus.com>
+
+ * internal.h (C_THUMBEXTFUNC, C_THUMBSTATFUNC): Constants to
+ define static and external functions.
+
+ * arm.h: Add bits to support PIC and APCS-FLOAT type binaries,
+ when implemented.
+
+Fri Oct 3 14:25:17 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (R_PPL16B): Make constant uppercase for consistency.
+
+Tue Jul 22 18:18:58 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
+
+ * go32exe.h: New file.
+
+Tue Jul 8 12:23:55 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_TARGET_ID): Add define.
+ * internal.h (struct internal_filehdr): Add f_target_id field.
+
+Tue Jun 3 16:44:18 1997 Nick Clifton <nickc@cygnus.com>
+
+ * internal.h: Add storage classes for Thumb symbols
+
+Mon May 26 14:07:55 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * tic80.h (R_PPL16B): Correct value.
+
+Tue May 13 10:21:14 1997 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (constants): Added new flag bits F_APCS_26 and
+ F_APCS_SET for the f_flags field of the filehdr structure. Added new
+ flags: F_APCS26, F_ARM_2, F_ARM_3, F_ARM_7, F_ARM_7T to store
+ information in the flags field of the internal_f structure used by BFD
+ routines.
+
+Sat May 3 08:24:59 1997 Fred Fish <fnf@cygnus.com>
+
+ * internal.h (C_UEXT, C_STATLAB, C_EXTLAB, C_SYSTEM):
+ New storage classes for TIc80.
+
+Fri Apr 18 11:52:55 1997 Niklas Hallqvist <niklas@appli.se>
+
+ * alpha.h (ALPHA_ECOFF_BADMAG): Recognize *BSD/alpha magic too.
+ (ALPHA_R_LITERALSLEAZY): Define.
+ * ecoff.h (ALPHA_MAGIC_BSD): Define.
+
+Wed Jan 29 11:31:51 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i960.h (R_IPR13, R_ALIGN): Define.
+
+Mon Jan 27 13:34:30 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (R_IPRMED, R_OPTCALL, R_OPTCALLX): Move definitions
+ from here...
+ * i960.h (R_IPRMED, R_OPTCALL, R_OPTCALLX): ...to here.
+
+Wed Jan 22 20:10:47 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80MAGIC): Renamed to TIC80_AOUTHDR_MAGIC.
+
+Fri Dec 27 22:05:45 1996 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h: New file for TIc80 support.
+
+Thu Dec 19 16:18:11 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * arm.h (_LIT): Define.
+
+Fri Jun 28 12:54:38 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * pe.h (FILHSZ): Define.
+
+Wed Jun 26 16:24:26 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * All files: Define FILHSZ, AOUTSZ, AOUTHDRSZ, SCNHSZ, SYMESZ,
+ AUXESZ, LINESZ, RELSZ as numeric constants rather than uses of
+ sizeof. Define AOUTHDRSZ in all files.
+ * pe.h (AOUTSZ): Define by adding to AOUTHDRSZ.
+
+Fri Jun 21 11:17:46 1996 Richard Henderson <rth@tamu.edu>
+
+ * alpha.h: Add declarations for relocation types added for Alpha
+ OSF/1 3.0.
+
+Tue Jun 18 16:04:29 1996 Jeffrey A. Law <law@rtl.cygnus.com>
+
+ * h8300.h (H8300SMAGIC): Define.
+ (H8300SBADMAG): Define.
+
+Mon Jun 10 11:53:28 1996 Jeffrey A Law (law@cygnus.com)
+
+ * internal.h (R_BCC_INV, R_JMP_DEL): New relocations for
+ relaxing in the H8/300 series.
+
+Thu May 16 15:49:22 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * sh.h (R_SH_CODE, R_SH_DATA, R_SH_LABEL): Define.
+
+Tue May 7 00:36:39 1996 Jeffrey A Law (law@cygnus.com)
+
+ * internal.h (R_JMPL2): Renamed from R_JMPL_B8 to be
+ consistent with other similar relocs.
+
+ * internal.h (H8/300 specific relocs): Add comments better
+ explaining what each reloc is used for.
+ (R_MOV16B1, R_MOV16B2): Renamed from R_MOVB1 and R_MOVB2.
+ (R_MOV24B1, R_MOV24B2): Renamed from R_MOVLB1 and R_MOVLB2.
+ (R_MOVL1, R_MOVL2): New relocs.
+
+Fri May 3 13:01:12 1996 Jeffrey A Law (law@cygnus.com)
+
+ * internal.h (R_PCRWORD_B): Define for the h8300 relaxing
+ linker.
+
+Wed May 1 19:21:03 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (SCNNMLEN): Define.
+ (struct internal_scnhdr): Use SCNNMLEN for s_name field.
+
+Fri Mar 29 13:41:25 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * pe.h: Define IMAGE_COMDAT codes.
+
+Wed Mar 27 17:29:42 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * arm.h (union external_auxent): Add x_checksum, x_associated, and
+ x_comdat fields to x_scn struct.
+ * i386.h (union external_auxent): Likewise.
+ * powerpc.h (union external_auxent): Likewise.
+ * internal.h (union internal_auxent): Likewise.
+
+Thu Mar 21 16:25:57 1996 David Mosberger-Tang <davidm@azstarnet.com>
+
+ * ecoff.h (struct ecoff_find_line): Add caching fields.
+
+Thu Mar 14 15:22:44 1996 Jeffrey A Law (law@cygnus.com)
+
+ * internal.h (R_MEM_INDIRECT): New reloc for the h8300.
+
+Fri Feb 9 10:44:11 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * aux-coff.h: Rename from aux.h, to avoid problems on hapless DOS
+ systems which think that aux is a com port.
+
+Mon Feb 5 18:35:00 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * i960.h (F_I960HX): Define.
+
+Wed Jan 31 13:11:54 1996 Richard Henderson <rth@tamu.edu>
+
+ * aux.h: New file.
+ * internal.h, m68k.h: Protect against multiple inclusion.
+
+Wed Nov 22 13:48:39 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * ecoff.h (_RCONST, STYP_RCONST, RELOC_SECTION_RCONST): Define.
+ (NUM_RELOC_SECTIONS): Update.
+ * symconst.h (scRConst): Define.
+
+Tue Nov 14 18:54:29 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (C_NT_WEAK): Define.
+
+Thu Nov 9 14:08:30 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * rs6000.h (STYP_OVRFLO): Define.
+
+Tue Nov 7 14:38:45 1995 Kim Knuttila <krk@cygnus.com>
+
+ * powerpc.h (IMAGE_NT_OPTIONAL_HDR_MAGIC): Added define.
+ * pe.h: Added defines for file level flags
+
+Mon Nov 6 17:28:01 1995 Harry Dolan <dolan@ssd.intel.com>
+
+ * i860.h: New file, based on i386.h.
+
+Wed Nov 1 15:25:18 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
+
+ * m68k.h (PAGEMAGICEXECSWAPPED): Define.
+ (PAGEMAGICPEXECSWAPPED): Define.
+ (PAGEMAGICPEXECTSHLIB): Define.
+ (PAGEMAGICPEXECPAGED): Define.
+ (_COMMENT): DEFINE.
+ * m88k.h (_COMMENT): Define.
+
+Wed Oct 18 18:36:19 1995 Geoffrey Noer <noer@cygnus.com>
+
+ * sym.h: #if 0'd out runtime_pdr struct because it chokes
+ Visual C++ and there aren't any references to it elsewhere in gdb.
+
+Mon Oct 16 11:12:24 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * rs6000.h (SMALL_AOUTSZ): Define.
+
+ * internal.h (XMC_TD): Define.
+
+Tue Oct 10 18:41:03 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (struct internal_aouthdr): Add o_cputype field.
+ * rs6000.h (AOUTHDR): Rename o_resv1 to o_cputype.
+
+Mon Oct 9 14:45:46 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * rs6000.h (AOUTHDR): Add o_maxdata field. Add comments.
+ (_PAD, _LOADER): Define.
+ (STYP_LOADER): Define.
+ * internal.h (struct internal_aouthdr): Add o_maxdata field.
+
+Thu Oct 5 10:02:57 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * ecoff.h: Define section name macros and STYP macros for various
+ Alpha sections: .got, .hash, .dynsym, .dynstr, .rel.dyn, .conflic,
+ .comment, .liblist, .dynamic.
+
+Wed Oct 4 10:56:35 1995 Kim Knuttila <krk@cygnus.com>
+
+ * pe.h: Moved DOSMAGIC and NT_SIGNATURE defines here
+ * powerpc.h: removed DOSMAGIC, NT_SIGNATURE, and DEFAULT_* defines
+ Also removed other unused defines (various MAGIC ones)
+ * i386.h: removed DOSMAGIC, NT_SIGNATURE, and DEFAULT_* defines
+ * arm.h: removed DOSMAGIC, NT_SIGNATURE, and DEFAULT_* defines
+ * apollo.h: removed unused DEFAULT_* defines
+ * alpha.h: removed unused DEFAULT_* defines
+ * h8500.h: removed unused DEFAULT_* defines
+ * h8300.h: removed unused DEFAULT_* defines
+ * i960.h: removed unused DEFAULT_* defines
+ * m88k.h: removed unused DEFAULT_* defines
+ * we32k.h: removed unused DEFAULT_* defines
+ * rs6000.h: removed unused DEFAULT_* defines
+ * mips.h: removed unused DEFAULT_* defines
+ * m68k.h: removed unused DEFAULT_* defines
+ * z8k.h: removed unused DEFAULT_* defines
+ * w65.h: removed unused DEFAULT_* defines
+ * sparc.h: removed unused DEFAULT_* defines
+ * sh.h: removed unused DEFAULT_* defines
+
+Fri Sep 29 08:40:08 1995 Kim Knuttila <krk@cygnus.com>
+
+ * powerpc.h: Reformatted to GNU coding conventions.
+
+Wed Sep 27 06:50:50 1995 Kim Knuttila <krk@nellie>
+
+ * pe.h: added defines for more section characteristics
+ * powerpc.h (new file): base coff definitions for ppc PE
+
+Tue Sep 12 12:08:20 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (struct internal_syment): Change n_numaux field from
+ char to unsigned char.
+
+Fri Sep 1 15:39:36 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>
+
+ * mips.h (struct rpdr_ext): Define.
+
+Thu Aug 31 16:51:50 1995 steve chamberlain <sac@slash.cygnus.com>
+
+ * internal.h (internal_aouthdr, internal_filehdr):
+ don't indirect the pe stuff.
+
+Tue Aug 29 14:16:07 1995 steve chamberlain <sac@slash.cygnus.com>
+
+ * i386.h (NT_DEF_RESERVE, NT_DEF_COMMIT): Make the same
+ as 'the other' compiler.
+ * internal.h (NT_IMAGE_BASE): Deleted.
+ (NT_EXE_IMAGE_BASE, NT_DLL_IMAGE_BASE): New.
+ (PE_DEF_SECTION_ALIGNMENT, PE_DEF_FILE_ALIGNMENT): New.
+ (R_IMAGEBASE): New.
+
+Mon Aug 21 18:12:19 1995 steve chamberlain <sac@slash.cygnus.com>
+
+ * internal.h: (internal_filehdr): Moved PE stuff into
+ internal_extra_pe_filehdr.
+ (internal_aouthdr): Moved PE stuff into
+ interanl_extra_pe_aouthdr.
+
+Mon Jul 24 14:05:39 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h: Move R_SH_* relocs from here...
+ * sh.h: ...to here.
+ (R_SH_SWITCH16, R_SH_SWITCH32): Define.
+ (R_SH_USES, R_SH_COUNT, R_SH_ALIGN): Define.
+
+Thu Jun 29 00:04:25 1995 Steve Chamberlain <sac@slash.cygnus.com>
+
+ * internal.h (NT_DEF_RESERVE, NT_DEF_COMMIT): Increase a lot.
+
+Tue May 16 15:08:20 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * internal.h (NT_subsystem, NT_stack_heap): Delete
+
+Tue May 16 15:08:20 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * internal.h (NT_subsystem, NT_stack_heap): Now extern.
+
+Sat May 13 10:14:08 1995 Steve Chamberlain <sac@slash.cygnus.com>
+
+ * pe.h: New file.
+ * i386.h (NT_SECTION_ALIGNMENT, NT_FILE_ALIGNMENT,
+ NT_DEF_RESERVE, NT_DEF_COMMIT): New.
+ * internal.h (internal_filehdr): New fields for PE.
+ (IMAGE_DATA_DIRECTORY): New.
+ (internal_aouthdr): New fields for PE.
+
+Tue Feb 14 17:59:37 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * ecoff.h (struct ecoff_fdrtab_entry): Define.
+ (struct ecoff_find_line): Define.
+
+Sat Feb 4 14:38:03 1995 David Mosberger-Tang <davidm@piston.cs.arizona.edu>
+
+ * sym.h (struct pdr): field "prof" added.
+
+ * alpha.h (PDR_BITS1_PROF_*): added, macros for PDR_BITS*_RESERVED_*
+ updated accordingly.
+
+Sun Jan 15 18:38:33 1995 Steve Chamberlain <sac@splat>
+
+ * w65.h: New file.
+
+Wed Nov 23 22:43:38 1994 Steve Chamberlain (sac@jonny.cygnus.com)
+
+ * sh.h (SH_ARCH_MAGIC_BIG, SH_ARCH_MAGIC_LITTLE): New.
+ (SHBADMAG): Changed to suit.
+
+Tue Jul 26 17:46:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i960.h (F_I960JX): New macro.
+
+Wed Jul 6 00:48:57 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * alpha.h: Add definitions for alpha file header flags, encoding
+ the object type of the file.
+
+Mon Jun 20 13:47:01 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+
+ * ecoff.h (ecoff_swap_tir_in): Remove declaration.
+ (ecoff_swap_tir_out): Likewise.
+ (ecoff_swap_rndx_in, ecoff_swap_rndx_out): Likewise.
+ (struct ecoff_debug_swap): Add new fields: swap_tir_in,
+ swap_rndx_in, swap_tir_out, swap_rndx_out, read_debug_info.
+
+Sun Jun 12 03:51:52 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * symconst.h: Pick up SGI define for stIndirect.
+
+Fri Apr 22 13:05:28 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (REGINFO): Don't define.
+ (struct ecoff_reginfo): Don't define.
+
+ * sh.h (SH_ARCH_MAGIC): Rename from SHMAGIC. SHMAGIC is used by
+ several targets to mean a shared library.
+ (SHBADMAG): Corresponding change.
+
+Thu Apr 14 13:00:53 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (RELOC_BITS3_TYPE_BIG): Changed from 0x1e to 0x3e.
+ (RELOC_BITS3_TYPEHI_LITTLE): Define.
+ (RELOC_BITS3_TYPEHI_SH_LITTLE): Define.
+ (MIPS_R_PCREL16): Change value from 8 to 12 to match Irix 4.
+ (MIPS_R_RELHI): Define.
+ (MIPS_R_RELLO): Define.
+ (MIPS_R_SWITCH): Change value from 9 to 22.
+
+Thu Apr 7 14:19:35 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (MIPS_R_SWITCH): Define.
+
+Thu Mar 31 19:28:33 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * internal.h (internal_aouthdr): Added comments for Apollo fields.
+
+Thu Mar 31 16:28:02 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (STYP_ECOFF_LIB): Define as used on Irix 4.
+
+Fri Mar 25 17:16:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (struct ecoff_debug_info): Add adjust field.
+ (struct ecoff_value_adjust): Define.
+
+Tue Mar 22 13:22:47 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (MIPS_R_PCREL16): Define.
+
+Sat Feb 26 10:26:38 1994 Ian Lance Taylor (ian@cygnus.com)
+
+ * ecoff.h: Add casts to avoid warnings from SVR4 cc.
+
+Mon Feb 21 09:48:46 1994 Ian Lance Taylor (ian@lisa.cygnus.com)
+
+ * sym.h (struct runtime_pdr): Make field adr bfd_vma, not unsigned
+ long.
+ (SYMR): Make field value bfd_vma, not long.
+
+Fri Feb 4 23:35:53 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * rs6000.h (STYP_DEBUG): Define.
+
+Wed Feb 2 14:31:37 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h (union internal_auxent): Change x_csect.x_scnlen into
+ a union of a long and a pointer to a symbol. XCOFF sometimes uses
+ this field as a symbol index.
+
+Mon Jan 10 23:54:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (ecoff_debug_info): Remove fields line_end,
+ external_dnr_end, external_pdr_end, external_sym_end,
+ external_opt_end, external_aux_end, ss_end, external_fdr_end.
+ Replace ifdbase with ifdmap.
+
+Wed Jan 5 17:05:36 1994 Ken Raeburn (raeburn@deneb.cygnus.com)
+
+ * ecoff.h (STYP_EXTENDESC, STYP_COMMENT, STYP_XDATA, STYP_PDATA):
+ Define.
+
+Wed Jan 5 16:58:24 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (NUM_RELOC_SECTIONS): Define.
+
+Tue Dec 21 09:24:56 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
+
+ * sparc.h (struct external_reloc): Rename field r_addend to
+ r_offset.
+
+Sat Dec 11 16:12:32 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h (R_DISP7, R_SH_IMM16): New reloc types.
+
+Tue Nov 23 14:23:19 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (struct ecoff_debug_swap): Added *_end fields for all
+ the symbolic information pointers.
+
+ * sym.h: Named the EXTR structure ecoff_extr.
+
+Fri Nov 19 08:21:18 1993 Ken Raeburn (raeburn@rover.cygnus.com)
+
+ * sparc.h (RELSZ): Use correct size.
+
+Wed Nov 17 17:18:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (struct ecoff_debug_info): Define.
+
+Tue Nov 2 17:56:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (struct ecoff_debug_swap): Define.
+
+Thu Oct 28 17:07:50 1993 Stan Shebs (shebs@rtl.cygnus.com)
+
+ * i386.h (I386LYNXMAGIC): Rename to LYNXCOFFMAGIC.
+ * m68k.h (LYNXCOFFMAGIC): Define.
+ * sparc.h: New file.
+
+Tue Oct 19 15:34:50 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * alpha.h (external_aouthdr): Split four byte padding field into
+ two byte bldrev field and two byte padding field.
+
+ * ecoff.h (_LITA, _PDATA, _XDATA, STYP_LITA): Defined.
+
+Wed Oct 13 15:52:34 1993 Ken Raeburn (raeburn@cygnus.com)
+
+ Sun Oct 10 17:27:10 1993 Troy Rollo (troy@cbme.unsw.edu.au)
+
+ * internal.h: Added o_sri, o_inlib and o_vid for Apollos as well
+ as R_DIR16.
+
+ * apollo.h: New file
+
+Mon Oct 11 17:16:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (REGINFO, struct ecoff_reginfo): Define.
+
+Tue Oct 5 10:52:53 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * rs6000.h: Change non-ASCII characters in comment to octal
+ escapes.
+
+Tue Sep 28 03:27:04 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * ecoff.h (_FINI, STYP_ECOFF_FINI): Add to support .fini section.
+
+Fri Sep 24 11:53:53 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (BADMAG): Recognize MIPS_MAGIC_LITTLE3 and MIPS_MAGIC_BIG3.
+ * ecoff.h: Define MIPS_MAGIC_LITTLE3 and MIPS_MAGIC_BIG3.
+
+Thu Sep 23 21:07:14 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * mips.h (BADMAG): Recognize MIPS_MAGIC_LITTLE2 and MIPS_MAGIC_BIG2.
+ * ecoff.h: Define MIPS_MAGIC_LITTLE2 and MIPS_MAGIC_BIG2.
+
+Thu Sep 16 20:27:21 1993 Jim Kingdon (kingdon@cirdan.cygnus.com)
+
+ * sym.h, symconst.h: Add comment stating these files are not part
+ of GDB, GAS, etc. In 1991, when we asked rms whether we could
+ include these files in GDB (although they are copyrighted by
+ someone besides the FSF), he said it was OK if they were not
+ considered part of GDB.
+
+Fri Sep 10 17:40:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (AUX_PUT_ANY): Cast val argument to bfd_vma.
+
+ * alpha.c (external_aouthdr): Need four bytes of padding between
+ vstamp and tsize.
+
+Tue Sep 7 14:20:43 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff.h (AUX_GET_ANY, AUX_PUT_ANY): Changed to reflect further
+ change in bfd swapping routine names.
+
+Tue Sep 7 10:15:17 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * ecoff.h (AUX_GET_ANY): Change name of _do_getb32 to reflect bfd
+ changes.
+
+Fri Aug 13 14:30:32 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ecoff.h (RELOC_SECTION_NONE): Define.
+
+Thu Aug 12 11:24:42 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * alpha.h (struct external_reloc): Add r_symndx field.
+ (RELSZ): Correct.
+ (RELOC_BITS*): Correct.
+ (ALPHA_R_*): Define.
+ * ecoff.h (RELOC_SECTION_{XDATA,PDATA,FINI,LITA,ABS}): Define.
+ (r_extern): Undefine.
+ * internal.h (struct internal_reloc): Make r_vaddr bfd_vma rather
+ than long. Add r_extern field.
+
+ * alpha.h (PDR_BITS*): Define.
+ * sym.h (PDR): Give correct names to new fields.
+
+ * ecoff.h: Moved MIPS reloc definitions from here...
+ * mips.h: to here.
+
+Mon Aug 2 16:37:14 1993 Stu Grossman (grossman at cygnus.com)
+
+ * i386.h: Add Lynx magic number.
+
+Tue Aug 3 11:17:53 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * alpha.h: Corrected external symbolic debugging structures to
+ match actual usage.
+ * internal.h (internal_filehdr, internal_aouthdr,
+ internal_scnhdr): Changed type of some fields to bfd_vma so they
+ can hold 64 bits.
+ * sym.h (HDRR, FDR, PDR, EXTR): Likewise.
+ (PDR): Added new fields found on Alpha.
+ * symconst.h (magicSym2): Define; new value found on Alpha.
+
+ * ecoff.h: New file.
+ * alpha.h, mips.h: Moved common information into ecoff.h. Moved
+ external structure definitions in from ecoff-ext.h.
+ * ecoff-ext.h: Removed; information now in alpha.h and mips.h.
+
+Sun Jul 18 21:43:59 1993 Jim Kingdon (kingdon@rtl.cygnus.com)
+
+ * i386.h: Recognize I386PTXMAGIC.
+
+Fri Jul 16 09:54:35 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h (MIPS_AOUT_{OZ}MAGIC): Renamed from {OZ}MAGIC.
+
+Thu Jul 15 12:23:55 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * m88k.h (union external_auxent): Move x_fcn back inside x_fcnary.
+ ({GET,PUT}_FCN_{LNNOPTR,ENDNDX}): Adjust accordingly.
+
+Sun Jul 11 18:00:18 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * m68k.h: Define MC68KBCSMAGIC.
+
+Thu Jun 10 11:46:28 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h (_INIT, STYP_MIPS_INIT): Define (used on Irix4).
+ (STYP_OTHER_LOAD): Define as STYP_MIPS_INIT.
+
+Wed Jun 9 15:09:09 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h (OMAGIC): Define.
+
+Tue Jun 8 12:16:03 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
+
+ Support for H8/300-H
+ * h8300.h: New magic number.
+ * internal.h: New relocations.
+
+Mon Apr 26 18:04:47 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h, sh.h: Support for SH.
+
+Sat Apr 24 21:34:59 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * a29k.h: Define _LIT.
+
+Fri Apr 23 18:41:23 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * alpha.h: New file.
+
+Thu Apr 8 12:36:34 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * internal.h (C_SHADOW, C_VERSION): Copied in from m88k.h.
+ * m88k.h, i386.h, we32k.h: Don't define all the storage classes;
+ they're already in internal.h.
+
+Wed Apr 7 11:51:24 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * internal.h: Change n_sclass to unsigned char.
+ Change C_EFCN to 0xff, change RS/6000 dbx symbols
+ to no longer be signed.
+
+Fri Mar 19 14:52:56 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h: Add H8/500 reloc types.
+
+Wed Mar 17 09:46:03 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ecoff-ext.h (AUX_PUT_ANY): Don't use void values in branches of
+ conditional expression.
+
+Thu Mar 4 14:12:06 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * ecoff-ext.h (AUX_GET_*): Rewrote to use new macro AUX_GET_ANY.
+ (AUX_PUT_*): New macros corresponding to the AUX_GET macros.
+ (ecoff_swap_tir_out): Added prototype.
+
+ * mips.h (N_BTMASK, N_TMASK, N_BTSHFT, N_TSHIFT): Define; these
+ are needed to interpret gcc debugging output.
+
+Tue Feb 9 07:43:27 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * we32k.h (BTYPE, ISPTR, ISFCN, ISARY, DECREF): Removed
+ more definitions duplicated in internal.h.
+
+Wed Feb 3 09:18:24 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h (RELOC_BITS3_TYPE_*): Correct for big endian machines.
+
+Mon Jan 25 11:35:51 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * internal.h (internal_aouthdr): Added additional fields used only
+ by MIPS ECOFF.
+
+Thu Jan 21 10:28:38 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h (AOUTHDR): Added additional fields used by ECOFF.
+
+Tue Jan 19 12:21:19 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * i386.h, we32k.h (N_*, T_*, DT_*): Removed still more definitions
+ duplicated in internal.h.
+
+ * mips.h (RELOC_SECTION_*, ECOFF_R_*): Defined constants for ECOFF
+ relocs.
+
+Fri Jan 15 18:17:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff-ext.h: Added prototypes for new ECOFF swapping functions.
+ (opt_ext): New structure.
+ * mips.h (ZMAGIC): Defined to be 0413.
+ (_LIB): Defined to be ".lib"
+ (external_reloc): MIPS ECOFF relocs are only 8 bytes. Added
+ macros to aid in swapping.
+
+Fri Jan 8 16:19:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ecoff-ext.h: Added prototypes for ECOFF swapping functions.
+ * internal.h (internal_scnhdr): Always provide s_align field, not
+ just on i960.
+ (internal_reloc): Always provide r_size field, not just on
+ RS/6000.
+ * mips.h (_RDATA, _SDATA, _SBSS, _LIT4, _LIT8, STYP_RDATA,
+ STYP_SDATA, STYP_SBSS, STYP_LIT4, STYP_LIT8): Defined.
+ (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB,
+ STABS_SYMBOL): Moved in from gdb/mipsread.c.
+
+Wed Jan 6 14:01:46 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * i386.h, we32k.h: removed STYP_* defines, since they duplicated
+ those in internal.h.
+
+Tue Dec 29 15:40:07 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * i386.h: define I386AIXMAGIC for Danbury AIX PS/2 compiler.
+
+Sat Dec 12 16:07:57 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * i386.h: don't define BTYPE, ISPTR, ISFCN, ISARY, DECREF: they
+ are defined in internal.h.
+
+Thu Nov 12 09:52:01 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h: (internal_reloc): r_offset is now a long.
+ * z8k.h: slight comment enhancement
+
+Wed Sep 30 07:46:08 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h: changed z8k reloc types
+
+Fri Aug 28 10:16:31 1992 Brendan Kehoe (brendan@cygnus.com)
+
+ * we32k.h: new file
+
+Thu Aug 27 13:00:01 1992 Brendan Kehoe (brendan@cygnus.com)
+
+ * symconst.h: comment out cruft at the end of #endif
+
+Tue Aug 25 15:06:49 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h: added #define for STYP_LIT, removed from a29k and
+ h8300.
+
+ * z8k.h: added z8000 support
+
+Thu Jul 16 16:32:00 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * internal.h: added R_RELLONG_NEG reloc type
+
+Fri Jun 12 20:11:04 1992 John Gilmore (gnu at cygnus.com)
+
+ * symconst.h: Fix unterminated comment.
+
+Wed Jun 10 07:57:49 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * i386.h: a.out magic numbers from
+ mohring@informatik.tu-muenchen.de
+
+Mon Jun 8 20:13:33 1992 John Gilmore (gnu at cygnus.com)
+
+ * ecoff-ext.h, mips.h: Use unsigned chars everywhere.
+ (Suggested by Antti Miettinen.)
+
+Tue Apr 14 15:18:44 1992 John Gilmore (gnu at cygnus.com)
+
+ * sym.h: Add comments.
+ * symconst.h: Merge with Fred's changes.
+
+Tue Apr 14 14:30:05 1992 Fred Fish (fnf@cygnus.com)
+
+ * symconst.h: Pick up SGI defines for stStruct, stUnion, stEnum,
+ langCplusplus, and langCplusplusV2.
+
+Thu Apr 2 19:47:43 1992 John Gilmore (gnu at cygnus.com)
+
+ * sym.h, symconst.h: MIPS has provided redistributable versions
+ of these files. Thanks!
+ * ecoff-ext.h: Add weakext bit to match new sym.h.
+
+Fri Mar 6 00:10:46 1992 John Gilmore (gnu at cygnus.com)
+
+ * ecoff-ext.h: Add relative file descriptors.
+
+Thu Feb 27 11:53:04 1992 John Gilmore (gnu at cygnus.com)
+
+ * ecoff-ext.h: New file for external (in-file) form of ecoff
+ symbol structures.
+
+Thu Feb 6 11:33:32 1992 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * h8300.h: made the external_lineno l_lnno field 4 bytes wide.
+ andded GET/PUT_LINENO_LNNO macros
+
+Sat Nov 30 20:38:35 1991 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * a29k.h, h8300.h, i386.h, i960.h, internal.h, m68k.h, m88k.h,
+ mips.h, rs6000.h: Move from above coff-<foo>.h.
+
+
+Local Variables:
+version-control: never
+End:
diff --git a/include/coff/a29k.h b/include/coff/a29k.h
new file mode 100644
index 000000000..673e71696
--- /dev/null
+++ b/include/coff/a29k.h
@@ -0,0 +1,148 @@
+/* COFF spec for AMD 290*0
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ Contributed by David Wood @ New York University. */
+
+#ifndef AMD
+# define AMD
+#endif
+
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/*
+** Magic numbers for Am29000
+** (AT&T will assign the "real" magic number)
+*/
+
+#define SIPFBOMAGIC 0572 /* Am29000 (Byte 0 is MSB) */
+#define SIPRBOMAGIC 0573 /* Am29000 (Byte 0 is LSB) */
+
+#define A29K_MAGIC_BIG SIPFBOMAGIC
+#define A29K_MAGIC_LITTLE SIPRBOMAGIC
+#define A29KBADMAG(x) ( ((x).f_magic != A29K_MAGIC_BIG) && \
+ ((x).f_magic != A29K_MAGIC_LITTLE))
+
+#define OMAGIC A29K_MAGIC_BIG
+/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
+
+/*
+** File header flags currently known to us.
+**
+** Am29000 will use the F_AR32WR and F_AR32W flags to indicate
+** the byte ordering in the file.
+*/
+
+/*--------------------------------------------------------------*/
+
+
+/* aouthdr magic numbers */
+#define NMAGIC 0410 /* separate i/d executable */
+#define SHMAGIC 0406 /* NYU/Ultra3 shared data executable
+ (writable text) */
+#undef _ETEXT
+#define _ETEXT "_etext"
+
+/*--------------------------------------------------------------*/
+
+
+/* More names of "special" sections. */
+#define _LIT ".lit"
+
+/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
+
+/*
+** Section types - with additional section type for global
+** registers which will be relocatable for the Am29000.
+**
+** In instances where it is necessary for a linker to produce an
+** output file which contains text or data not based at virtual
+** address 0, e.g. for a ROM, then the linker should accept
+** address base information as command input and use PAD sections
+** to skip over unused addresses.
+*/
+
+#define STYP_BSSREG 0x1200 /* Global register area (like STYP_INFO) */
+#define STYP_ENVIR 0x2200 /* Environment (like STYP_INFO) */
+#define STYP_ABS 0x4000 /* Absolute (allocated, not reloc, loaded) */
+
+/*--------------------------------------------------------------*/
+
+/*
+** Relocation information declaration and related definitions
+*/
+
+struct external_reloc
+{
+ char r_vaddr[4]; /* (virtual) address of reference */
+ char r_symndx[4]; /* index into symbol table */
+ char r_type[2]; /* relocation type */
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10 /* sizeof (RELOC) */
+
+/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
+
+/*
+** Relocation types for the Am29000
+*/
+
+#define R_ABS 0 /* reference is absolute */
+
+#define R_IREL 030 /* instruction relative (jmp/call) */
+#define R_IABS 031 /* instruction absolute (jmp/call) */
+#define R_ILOHALF 032 /* instruction low half (const) */
+#define R_IHIHALF 033 /* instruction high half (consth) part 1 */
+#define R_IHCONST 034 /* instruction high half (consth) part 2 */
+ /* constant offset of R_IHIHALF relocation */
+#define R_BYTE 035 /* relocatable byte value */
+#define R_HWORD 036 /* relocatable halfword value */
+#define R_WORD 037 /* relocatable word value */
+
+#define R_IGLBLRC 040 /* instruction global register RC */
+#define R_IGLBLRA 041 /* instruction global register RA */
+#define R_IGLBLRB 042 /* instruction global register RB */
+
+/*
+NOTE:
+All the "I" forms refer to 29000 instruction formats. The linker is
+expected to know how the numeric information is split and/or aligned
+within the instruction word(s). R_BYTE works for instructions, too.
+
+If the parameter to a CONSTH instruction is a relocatable type, two
+relocation records are written. The first has an r_type of R_IHIHALF
+(33 octal) and a normal r_vaddr and r_symndx. The second relocation
+record has an r_type of R_IHCONST (34 octal), a normal r_vaddr (which
+is redundant), and an r_symndx containing the 32-bit constant offset
+to the relocation instead of the actual symbol table index. This
+second record is always written, even if the constant offset is zero.
+The constant fields of the instruction are set to zero.
+*/
+
+/*--------------------------------------------------------------*/
+
+/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
+
+/*
+** Storage class definitions - new classes for global registers.
+*/
+
+#define C_GLBLREG 19 /* global register */
+#define C_EXTREG 20 /* external global register */
+#define C_DEFREG 21 /* ext. def. of global register */
diff --git a/include/coff/alpha.h b/include/coff/alpha.h
new file mode 100644
index 000000000..e5210a569
--- /dev/null
+++ b/include/coff/alpha.h
@@ -0,0 +1,382 @@
+/* ECOFF support on Alpha machines.
+ coff/ecoff.h must be included before this file.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+{
+ unsigned char f_magic[2]; /* magic number */
+ unsigned char f_nscns[2]; /* number of sections */
+ unsigned char f_timdat[4]; /* time & date stamp */
+ unsigned char f_symptr[8]; /* file pointer to symtab */
+ unsigned char f_nsyms[4]; /* number of symtab entries */
+ unsigned char f_opthdr[2]; /* sizeof(optional hdr) */
+ unsigned char f_flags[2]; /* flags */
+};
+
+/* Magic numbers are defined in coff/ecoff.h. */
+#define ALPHA_ECOFF_BADMAG(x) \
+ ((x).f_magic != ALPHA_MAGIC && (x).f_magic != ALPHA_MAGIC_BSD)
+
+/* The object type is encoded in the f_flags. */
+#define F_ALPHA_OBJECT_TYPE_MASK 0x3000
+#define F_ALPHA_NO_SHARED 0x1000
+#define F_ALPHA_SHARABLE 0x2000
+#define F_ALPHA_CALL_SHARED 0x3000
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 24
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct external_aouthdr
+{
+ unsigned char magic[2]; /* type of file */
+ unsigned char vstamp[2]; /* version stamp */
+ unsigned char bldrev[2]; /* ?? */
+ unsigned char padding[2]; /* pad to quadword boundary */
+ unsigned char tsize[8]; /* text size in bytes */
+ unsigned char dsize[8]; /* initialized data " " */
+ unsigned char bsize[8]; /* uninitialized data " " */
+ unsigned char entry[8]; /* entry pt. */
+ unsigned char text_start[8]; /* base of text used for this file */
+ unsigned char data_start[8]; /* base of data used for this file */
+ unsigned char bss_start[8]; /* base of bss used for this file */
+ unsigned char gprmask[4]; /* bitmask of general registers used */
+ unsigned char fprmask[4]; /* bitmask of floating point registers used */
+ unsigned char gp_value[8]; /* value for gp register */
+} AOUTHDR;
+
+/* compute size of a header */
+
+#define AOUTSZ 80
+#define AOUTHDRSZ 80
+
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+{
+ unsigned char s_name[8]; /* section name */
+ unsigned char s_paddr[8]; /* physical address, aliased s_nlib */
+ unsigned char s_vaddr[8]; /* virtual address */
+ unsigned char s_size[8]; /* section size */
+ unsigned char s_scnptr[8]; /* file ptr to raw data for section */
+ unsigned char s_relptr[8]; /* file ptr to relocation */
+ unsigned char s_lnnoptr[8]; /* file ptr to line numbers */
+ unsigned char s_nreloc[2]; /* number of relocation entries */
+ unsigned char s_nlnno[2]; /* number of line number entries*/
+ unsigned char s_flags[4]; /* flags */
+};
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 64
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ unsigned char r_vaddr[8];
+ unsigned char r_symndx[4];
+ unsigned char r_bits[4];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+/* Constants to unpack the r_bits field. The Alpha seems to always be
+ little endian, so I haven't bothered to define big endian variants
+ of these. */
+
+#define RELOC_BITS0_TYPE_LITTLE 0xff
+#define RELOC_BITS0_TYPE_SH_LITTLE 0
+
+#define RELOC_BITS1_EXTERN_LITTLE 0x01
+
+#define RELOC_BITS1_OFFSET_LITTLE 0x7e
+#define RELOC_BITS1_OFFSET_SH_LITTLE 1
+
+#define RELOC_BITS1_RESERVED_LITTLE 0x80
+#define RELOC_BITS1_RESERVED_SH_LITTLE 7
+#define RELOC_BITS2_RESERVED_LITTLE 0xff
+#define RELOC_BITS2_RESERVED_SH_LEFT_LITTLE 1
+#define RELOC_BITS3_RESERVED_LITTLE 0x03
+#define RELOC_BITS3_RESERVED_SH_LEFT_LITTLE 9
+
+#define RELOC_BITS3_SIZE_LITTLE 0xfc
+#define RELOC_BITS3_SIZE_SH_LITTLE 2
+
+/* The r_type field in a reloc is one of the following values. */
+#define ALPHA_R_IGNORE 0
+#define ALPHA_R_REFLONG 1
+#define ALPHA_R_REFQUAD 2
+#define ALPHA_R_GPREL32 3
+#define ALPHA_R_LITERAL 4
+#define ALPHA_R_LITUSE 5
+#define ALPHA_R_GPDISP 6
+#define ALPHA_R_BRADDR 7
+#define ALPHA_R_HINT 8
+#define ALPHA_R_SREL16 9
+#define ALPHA_R_SREL32 10
+#define ALPHA_R_SREL64 11
+#define ALPHA_R_OP_PUSH 12
+#define ALPHA_R_OP_STORE 13
+#define ALPHA_R_OP_PSUB 14
+#define ALPHA_R_OP_PRSHIFT 15
+#define ALPHA_R_GPVALUE 16
+#define ALPHA_R_GPRELHIGH 17
+#define ALPHA_R_GPRELLOW 18
+#define ALPHA_R_IMMED 19
+
+/* Overloaded reloc value used by Net- and OpenBSD. */
+#define ALPHA_R_LITERALSLEAZY 17
+
+/* With ALPHA_R_LITUSE, the r_size field is one of the following values. */
+#define ALPHA_R_LU_BASE 1
+#define ALPHA_R_LU_BYTOFF 2
+#define ALPHA_R_LU_JSR 3
+
+/* With ALPHA_R_IMMED, the r_size field is one of the following values. */
+#define ALPHA_R_IMMED_GP_16 1
+#define ALPHA_R_IMMED_GP_HI32 2
+#define ALPHA_R_IMMED_SCN_HI32 3
+#define ALPHA_R_IMMED_BR_HI32 4
+#define ALPHA_R_IMMED_LO32 5
+
+/********************** SYMBOLIC INFORMATION **********************/
+
+/* Written by John Gilmore. */
+
+/* ECOFF uses COFF-like section structures, but its own symbol format.
+ This file defines the symbol format in fields whose size and alignment
+ will not vary on different host systems. */
+
+/* File header as a set of bytes */
+
+struct hdr_ext
+{
+ unsigned char h_magic[2];
+ unsigned char h_vstamp[2];
+ unsigned char h_ilineMax[4];
+ unsigned char h_idnMax[4];
+ unsigned char h_ipdMax[4];
+ unsigned char h_isymMax[4];
+ unsigned char h_ioptMax[4];
+ unsigned char h_iauxMax[4];
+ unsigned char h_issMax[4];
+ unsigned char h_issExtMax[4];
+ unsigned char h_ifdMax[4];
+ unsigned char h_crfd[4];
+ unsigned char h_iextMax[4];
+ unsigned char h_cbLine[8];
+ unsigned char h_cbLineOffset[8];
+ unsigned char h_cbDnOffset[8];
+ unsigned char h_cbPdOffset[8];
+ unsigned char h_cbSymOffset[8];
+ unsigned char h_cbOptOffset[8];
+ unsigned char h_cbAuxOffset[8];
+ unsigned char h_cbSsOffset[8];
+ unsigned char h_cbSsExtOffset[8];
+ unsigned char h_cbFdOffset[8];
+ unsigned char h_cbRfdOffset[8];
+ unsigned char h_cbExtOffset[8];
+};
+
+/* File descriptor external record */
+
+struct fdr_ext
+{
+ unsigned char f_adr[8];
+ unsigned char f_cbLineOffset[8];
+ unsigned char f_cbLine[8];
+ unsigned char f_cbSs[8];
+ unsigned char f_rss[4];
+ unsigned char f_issBase[4];
+ unsigned char f_isymBase[4];
+ unsigned char f_csym[4];
+ unsigned char f_ilineBase[4];
+ unsigned char f_cline[4];
+ unsigned char f_ioptBase[4];
+ unsigned char f_copt[4];
+ unsigned char f_ipdFirst[4];
+ unsigned char f_cpd[4];
+ unsigned char f_iauxBase[4];
+ unsigned char f_caux[4];
+ unsigned char f_rfdBase[4];
+ unsigned char f_crfd[4];
+ unsigned char f_bits1[1];
+ unsigned char f_bits2[3];
+ unsigned char f_padding[4];
+};
+
+#define FDR_BITS1_LANG_BIG 0xF8
+#define FDR_BITS1_LANG_SH_BIG 3
+#define FDR_BITS1_LANG_LITTLE 0x1F
+#define FDR_BITS1_LANG_SH_LITTLE 0
+
+#define FDR_BITS1_FMERGE_BIG 0x04
+#define FDR_BITS1_FMERGE_LITTLE 0x20
+
+#define FDR_BITS1_FREADIN_BIG 0x02
+#define FDR_BITS1_FREADIN_LITTLE 0x40
+
+#define FDR_BITS1_FBIGENDIAN_BIG 0x01
+#define FDR_BITS1_FBIGENDIAN_LITTLE 0x80
+
+#define FDR_BITS2_GLEVEL_BIG 0xC0
+#define FDR_BITS2_GLEVEL_SH_BIG 6
+#define FDR_BITS2_GLEVEL_LITTLE 0x03
+#define FDR_BITS2_GLEVEL_SH_LITTLE 0
+
+/* We ignore the `reserved' field in bits2. */
+
+/* Procedure descriptor external record */
+
+struct pdr_ext {
+ unsigned char p_adr[8];
+ unsigned char p_cbLineOffset[8];
+ unsigned char p_isym[4];
+ unsigned char p_iline[4];
+ unsigned char p_regmask[4];
+ unsigned char p_regoffset[4];
+ unsigned char p_iopt[4];
+ unsigned char p_fregmask[4];
+ unsigned char p_fregoffset[4];
+ unsigned char p_frameoffset[4];
+ unsigned char p_lnLow[4];
+ unsigned char p_lnHigh[4];
+ unsigned char p_gp_prologue[1];
+ unsigned char p_bits1[1];
+ unsigned char p_bits2[1];
+ unsigned char p_localoff[1];
+ unsigned char p_framereg[2];
+ unsigned char p_pcreg[2];
+};
+
+#define PDR_BITS1_GP_USED_BIG 0x80
+#define PDR_BITS1_REG_FRAME_BIG 0x40
+#define PDR_BITS1_PROF_BIG 0x20
+#define PDR_BITS1_RESERVED_BIG 0x1f
+#define PDR_BITS1_RESERVED_SH_LEFT_BIG 8
+#define PDR_BITS2_RESERVED_BIG 0xff
+#define PDR_BITS2_RESERVED_SH_BIG 0
+
+#define PDR_BITS1_GP_USED_LITTLE 0x01
+#define PDR_BITS1_REG_FRAME_LITTLE 0x02
+#define PDR_BITS1_PROF_LITTLE 0x04
+#define PDR_BITS1_RESERVED_LITTLE 0xf8
+#define PDR_BITS1_RESERVED_SH_LITTLE 3
+#define PDR_BITS2_RESERVED_LITTLE 0xff
+#define PDR_BITS2_RESERVED_SH_LEFT_LITTLE 5
+
+/* Line numbers */
+
+struct line_ext {
+ unsigned char l_line[4];
+};
+
+/* Symbol external record */
+
+struct sym_ext {
+ unsigned char s_value[8];
+ unsigned char s_iss[4];
+ unsigned char s_bits1[1];
+ unsigned char s_bits2[1];
+ unsigned char s_bits3[1];
+ unsigned char s_bits4[1];
+};
+
+#define SYM_BITS1_ST_BIG 0xFC
+#define SYM_BITS1_ST_SH_BIG 2
+#define SYM_BITS1_ST_LITTLE 0x3F
+#define SYM_BITS1_ST_SH_LITTLE 0
+
+#define SYM_BITS1_SC_BIG 0x03
+#define SYM_BITS1_SC_SH_LEFT_BIG 3
+#define SYM_BITS1_SC_LITTLE 0xC0
+#define SYM_BITS1_SC_SH_LITTLE 6
+
+#define SYM_BITS2_SC_BIG 0xE0
+#define SYM_BITS2_SC_SH_BIG 5
+#define SYM_BITS2_SC_LITTLE 0x07
+#define SYM_BITS2_SC_SH_LEFT_LITTLE 2
+
+#define SYM_BITS2_RESERVED_BIG 0x10
+#define SYM_BITS2_RESERVED_LITTLE 0x08
+
+#define SYM_BITS2_INDEX_BIG 0x0F
+#define SYM_BITS2_INDEX_SH_LEFT_BIG 16
+#define SYM_BITS2_INDEX_LITTLE 0xF0
+#define SYM_BITS2_INDEX_SH_LITTLE 4
+
+#define SYM_BITS3_INDEX_SH_LEFT_BIG 8
+#define SYM_BITS3_INDEX_SH_LEFT_LITTLE 4
+
+#define SYM_BITS4_INDEX_SH_LEFT_BIG 0
+#define SYM_BITS4_INDEX_SH_LEFT_LITTLE 12
+
+/* External symbol external record */
+
+struct ext_ext {
+ struct sym_ext es_asym;
+ unsigned char es_bits1[1];
+ unsigned char es_bits2[3];
+ unsigned char es_ifd[4];
+};
+
+#define EXT_BITS1_JMPTBL_BIG 0x80
+#define EXT_BITS1_JMPTBL_LITTLE 0x01
+
+#define EXT_BITS1_COBOL_MAIN_BIG 0x40
+#define EXT_BITS1_COBOL_MAIN_LITTLE 0x02
+
+#define EXT_BITS1_WEAKEXT_BIG 0x20
+#define EXT_BITS1_WEAKEXT_LITTLE 0x04
+
+/* Dense numbers external record */
+
+struct dnr_ext {
+ unsigned char d_rfd[4];
+ unsigned char d_index[4];
+};
+
+/* Relative file descriptor */
+
+struct rfd_ext {
+ unsigned char rfd[4];
+};
+
+/* Optimizer symbol external record */
+
+struct opt_ext {
+ unsigned char o_bits1[1];
+ unsigned char o_bits2[1];
+ unsigned char o_bits3[1];
+ unsigned char o_bits4[1];
+ struct rndx_ext o_rndx;
+ unsigned char o_offset[4];
+};
+
+#define OPT_BITS2_VALUE_SH_LEFT_BIG 16
+#define OPT_BITS2_VALUE_SH_LEFT_LITTLE 0
+
+#define OPT_BITS3_VALUE_SH_LEFT_BIG 8
+#define OPT_BITS3_VALUE_SH_LEFT_LITTLE 8
+
+#define OPT_BITS4_VALUE_SH_LEFT_BIG 0
+#define OPT_BITS4_VALUE_SH_LEFT_LITTLE 16
diff --git a/include/coff/apollo.h b/include/coff/apollo.h
new file mode 100644
index 000000000..46284594b
--- /dev/null
+++ b/include/coff/apollo.h
@@ -0,0 +1,124 @@
+/* coff information for Apollo M68K
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define DO_NOT_DEFINE_AOUTHDR
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/* Motorola 68000/68008/68010/68020 */
+#define MC68MAGIC 0520
+#define MC68KWRMAGIC 0520 /* writeable text segments */
+#define MC68TVMAGIC 0521
+#define MC68KROMAGIC 0521 /* readonly shareable text segments */
+#define MC68KPGMAGIC 0522 /* demand paged text segments */
+#define M68MAGIC 0210
+#define M68TVMAGIC 0211
+
+/* Apollo 68000-based machines have a different magic number. This comes
+ * from /usr/include/apollo/filehdr.h
+ */
+#define APOLLOM68KMAGIC 0627
+
+#define OMAGIC M68MAGIC
+#define M68KBADMAG(x) (((x).f_magic!=MC68MAGIC) && ((x).f_magic!=MC68KWRMAGIC) && ((x).f_magic!=MC68TVMAGIC) && \
+ ((x).f_magic!=MC68KROMAGIC) && ((x).f_magic!=MC68KPGMAGIC) && ((x).f_magic!=M68MAGIC) && ((x).f_magic!=M68TVMAGIC) && \
+ ((x).f_magic!=APOLLOM68KMAGIC) )
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct
+{
+ char magic[2]; /* type of file */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+ char data_start[4]; /* base of data used for this file */
+ char o_sri[4]; /* Apollo specific - .sri data pointer */
+ char o_inlib[4]; /* Apollo specific - .inlib data pointer */
+ char vid[8]; /* Apollo specific - 64 bit version ID */
+}
+AOUTHDR;
+
+#define APOLLO_COFF_VERSION_NUMBER 1 /* the value of the aouthdr magic */
+#define AOUTHDRSZ 44
+#define AOUTSZ 44
+
+/* Apollo allowa for larger section names by allowing
+ them to be in the string table. */
+
+/* If s_zeores is all zeroes, s_offset gives the real
+ location of the name in the string table. */
+
+#define s_zeroes section_name.s_name
+#define s_offset (section_name.s_name+4)
+
+/* More names of "special" sections. */
+#define _TV ".tv"
+#define _INIT ".init"
+#define _FINI ".fini"
+#define _LINES ".lines"
+#define _BLOCKS ".blocks"
+#define _SRI ".sri" /* Static Resource Information (systype,
+ et al.) */
+#define _MIR ".mir" /* Module Information Records */
+#define _APTV ".aptv" /* Apollo-style transfer vectors. */
+#define _INLIB ".inlib" /* Shared Library information */
+#define _RWDI ".rwdi" /* Read/write data initialization directives for
+ compressed sections */
+#define _UNWIND ".unwind" /* Stack unwind information */
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+#ifdef M68K_COFF_OFFSET
+ char r_offset[4];
+#endif
+
+};
+
+#define RELOC struct external_reloc
+
+#ifdef M68K_COFF_OFFSET
+#define RELSZ 14
+#else
+#define RELSZ 10
+#endif
+
+/* Apollo specific STYP flags */
+
+#define STYP_RELOCATED_NOT_LOADED 0x00010000 /* Section is relocated normally during linking, but need
+ not be loaded during program execution */
+#define STYP_DEBUG 0x00020000 /* debug section */
+#define STYP_OVERLAY 0x00040000 /* Section is overlayed */
+#define STYP_INSTRUCTION 0x00200000 /* Section contains executable code */
+
+#define STYP_ZERO 0x00800000 /* Section is initialized to zero */
+#define STYP_INSTALLED 0x02000000 /* Section should be installable in KGT */
+#define STYP_LOOK_INSTALLED 0x04000000 /* Look for section in KGT */
+#define STYP_SECALIGN1 0x08000000 /* Specially aligned section */
+#define STYP_SECALIGN2 0x10000000 /* " " " */
+#define STYP_COMPRESSED 0x20000000 /* No section data per se (s_scnptr = 0), but there are
+ initialization directives for it in .rwdi section
+ (used in conjunction with STYP_BSS) */
diff --git a/include/coff/arm.h b/include/coff/arm.h
new file mode 100644
index 000000000..8b90228ca
--- /dev/null
+++ b/include/coff/arm.h
@@ -0,0 +1,128 @@
+/* ARM COFF support for BFD.
+ Copyright 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define COFFARM 1
+
+#define L_LNNO_SIZE 2
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_INTERWORK file supports switching between ARM and Thumb instruction sets
+ F_INTERWORK_SET the F_INTERWORK bit is valid
+ F_APCS_FLOAT code passes float arguments in float registers
+ F_PIC code is reentrant/position-independent
+ F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax)
+ F_APCS_26 file uses 26 bit ARM Procedure Calling Standard
+ F_APCS_SET the F_APCS_26, F_APCS_FLOAT and F_PIC bits have been initialised
+ F_SOFT_FLOAT code does not use floating point instructions. */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+#define F_INTERWORK (0x0010)
+#define F_INTERWORK_SET (0x0020)
+#define F_APCS_FLOAT (0x0040)
+#undef F_AR16WR
+#define F_PIC (0x0080)
+#define F_AR32WR (0x0100)
+#define F_APCS_26 (0x0400)
+#define F_APCS_SET (0x0800)
+#define F_SOFT_FLOAT (0x2000)
+#define F_VFP_FLOAT (0x4000)
+
+/* Bits stored in flags field of the internal_f structure */
+
+#define F_INTERWORK (0x0010)
+#define F_APCS_FLOAT (0x0040)
+#define F_PIC (0x0080)
+#define F_APCS26 (0x1000)
+#define F_ARM_ARCHITECTURE_MASK (0x4000+0x0800+0x0400)
+#define F_ARM_2 (0x0400)
+#define F_ARM_2a (0x0800)
+#define F_ARM_3 (0x0c00)
+#define F_ARM_3M (0x4000)
+#define F_ARM_4 (0x4400)
+#define F_ARM_4T (0x4800)
+#define F_ARM_5 (0x4c00)
+
+/*
+ ARMMAGIC ought to encoded the procesor type,
+ but it is too late to change it now, instead
+ the flags field of the internal_f structure
+ is used as shown above.
+
+ XXX - NC 5/6/97. */
+
+#define ARMMAGIC 0xa00 /* I just made this up */
+
+#define ARMBADMAG(x) (((x).f_magic != ARMMAGIC))
+
+#define ARMPEMAGIC 0x1c0
+#define THUMBPEMAGIC 0x1c2
+
+#undef ARMBADMAG
+#define ARMBADMAG(x) (((x).f_magic != ARMMAGIC) && ((x).f_magic != ARMPEMAGIC) && ((x).f_magic != THUMBPEMAGIC))
+
+#define OMAGIC 0404 /* object files, eg as output */
+#define ZMAGIC 0413 /* demand load format, eg normal ld output */
+#define STMAGIC 0401 /* target shlib */
+#define SHMAGIC 0443 /* host shlib */
+
+/* define some NT default values */
+/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+/* We use the .rdata section to hold read only data. */
+#define _LIT ".rdata"
+
+/********************** RELOCATION DIRECTIVES **********************/
+#ifdef ARM_WINCE
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
+#else
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+ char r_offset[4];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 14
+#endif
+
+#define ARM_NOTE_SECTION ".note"
diff --git a/include/coff/aux-coff.h b/include/coff/aux-coff.h
new file mode 100644
index 000000000..f8536c9e7
--- /dev/null
+++ b/include/coff/aux-coff.h
@@ -0,0 +1,48 @@
+/* Modifications of internal.h and m68k.h needed by A/UX
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ Suggested by Ian Lance Taylor <ian@cygnus.com> */
+
+#ifndef GNU_COFF_AUX_H
+#define GNU_COFF_AUX_H 1
+
+#include "coff/internal.h"
+#include "coff/m68k.h"
+
+/* Section contains 64-byte padded pathnames of shared libraries */
+#undef STYP_LIB
+#define STYP_LIB 0x200
+
+/* Section contains shared library initialization code */
+#undef STYP_INIT
+#define STYP_INIT 0x400
+
+/* Section contains .ident information */
+#undef STYP_IDENT
+#define STYP_IDENT 0x800
+
+/* Section types used by bfd and gas not defined (directly) by A/UX */
+#undef STYP_OVER
+#define STYP_OVER 0
+#undef STYP_INFO
+#define STYP_INFO STYP_IDENT
+
+/* Traditional name of the section tagged with STYP_LIB */
+#define _LIB ".lib"
+
+#endif /* GNU_COFF_AUX_H */
diff --git a/include/coff/ecoff.h b/include/coff/ecoff.h
new file mode 100644
index 000000000..1a39fcbd6
--- /dev/null
+++ b/include/coff/ecoff.h
@@ -0,0 +1,408 @@
+/* Generic ECOFF support.
+ This does not include symbol information, found in sym.h and
+ symconst.h.
+
+ Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef ECOFF_H
+#define ECOFF_H
+
+/* Mips magic numbers used in filehdr. MIPS_MAGIC_LITTLE is used on
+ little endian machines. MIPS_MAGIC_BIG is used on big endian
+ machines. Where is MIPS_MAGIC_1 from? */
+#define MIPS_MAGIC_1 0x0180
+#define MIPS_MAGIC_LITTLE 0x0162
+#define MIPS_MAGIC_BIG 0x0160
+
+/* These are the magic numbers used for MIPS code compiled at ISA
+ level 2. */
+#define MIPS_MAGIC_LITTLE2 0x0166
+#define MIPS_MAGIC_BIG2 0x0163
+
+/* These are the magic numbers used for MIPS code compiled at ISA
+ level 3. */
+#define MIPS_MAGIC_LITTLE3 0x142
+#define MIPS_MAGIC_BIG3 0x140
+
+/* Alpha magic numbers used in filehdr. */
+#define ALPHA_MAGIC 0x183
+#define ALPHA_MAGIC_BSD 0x185
+
+/* Magic numbers used in a.out header. */
+#define ECOFF_AOUT_OMAGIC 0407 /* not demand paged (ld -N). */
+#define ECOFF_AOUT_ZMAGIC 0413 /* demand load format, eg normal ld output */
+
+/* Names of special sections. */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _RDATA ".rdata"
+#define _SDATA ".sdata"
+#define _SBSS ".sbss"
+#define _LITA ".lita"
+#define _LIT4 ".lit4"
+#define _LIT8 ".lit8"
+#define _LIB ".lib"
+#define _INIT ".init"
+#define _FINI ".fini"
+#define _PDATA ".pdata"
+#define _XDATA ".xdata"
+#define _GOT ".got"
+#define _HASH ".hash"
+#define _DYNSYM ".dynsym"
+#define _DYNSTR ".dynstr"
+#define _RELDYN ".rel.dyn"
+#define _CONFLIC ".conflic"
+#define _COMMENT ".comment"
+#define _LIBLIST ".liblist"
+#define _DYNAMIC ".dynamic"
+#define _RCONST ".rconst"
+
+/* ECOFF uses some additional section flags. */
+#define STYP_RDATA 0x100
+#define STYP_SDATA 0x200
+#define STYP_SBSS 0x400
+#define STYP_GOT 0x1000
+#define STYP_DYNAMIC 0x2000
+#define STYP_DYNSYM 0x4000
+#define STYP_RELDYN 0x8000
+#define STYP_DYNSTR 0x10000
+#define STYP_HASH 0x20000
+#define STYP_LIBLIST 0x40000
+#define STYP_CONFLIC 0x100000
+#define STYP_ECOFF_FINI 0x1000000
+#define STYP_EXTENDESC 0x2000000 /* 0x02FFF000 bits => scn type, rest clr */
+#define STYP_LITA 0x4000000
+#define STYP_LIT8 0x8000000
+#define STYP_LIT4 0x10000000
+#define STYP_ECOFF_LIB 0x40000000
+#define STYP_ECOFF_INIT 0x80000000
+#define STYP_OTHER_LOAD (STYP_ECOFF_INIT | STYP_ECOFF_FINI)
+
+/* extended section types */
+#define STYP_COMMENT 0x2100000
+#define STYP_RCONST 0x2200000
+#define STYP_XDATA 0x2400000
+#define STYP_PDATA 0x2800000
+
+/* The linker needs a section to hold small common variables while
+ linking. There is no convenient way to create it when the linker
+ needs it, so we always create one for each BFD. We then avoid
+ writing it out. */
+#define SCOMMON ".scommon"
+
+/* If the extern bit in a reloc is 1, then r_symndx is an index into
+ the external symbol table. If the extern bit is 0, then r_symndx
+ indicates a section, and is one of the following values. */
+#define RELOC_SECTION_NONE 0
+#define RELOC_SECTION_TEXT 1
+#define RELOC_SECTION_RDATA 2
+#define RELOC_SECTION_DATA 3
+#define RELOC_SECTION_SDATA 4
+#define RELOC_SECTION_SBSS 5
+#define RELOC_SECTION_BSS 6
+#define RELOC_SECTION_INIT 7
+#define RELOC_SECTION_LIT8 8
+#define RELOC_SECTION_LIT4 9
+#define RELOC_SECTION_XDATA 10
+#define RELOC_SECTION_PDATA 11
+#define RELOC_SECTION_FINI 12
+#define RELOC_SECTION_LITA 13
+#define RELOC_SECTION_ABS 14
+#define RELOC_SECTION_RCONST 15
+
+#define NUM_RELOC_SECTIONS 16
+
+/********************** STABS **********************/
+
+/* gcc uses mips-tfile to output type information in special stabs
+ entries. These must match the corresponding definition in
+ gcc/config/mips.h. At some point, these should probably go into a
+ shared include file, but currently gcc and gdb do not share any
+ directories. */
+#define CODE_MASK 0x8F300
+#define ECOFF_IS_STAB(sym) (((sym)->index & 0xFFF00) == CODE_MASK)
+#define ECOFF_MARK_STAB(code) ((code)+CODE_MASK)
+#define ECOFF_UNMARK_STAB(code) ((code)-CODE_MASK)
+#define STABS_SYMBOL "@stabs"
+
+/********************** COFF **********************/
+
+/* gcc also uses mips-tfile to output COFF debugging information.
+ These are the values it uses when outputting the .type directive.
+ These should also be in a shared include file. */
+#define N_BTMASK (017)
+#define N_TMASK (060)
+#define N_BTSHFT (4)
+#define N_TSHIFT (2)
+
+/********************** AUX **********************/
+
+/* The auxiliary type information is the same on all known ECOFF
+ targets. I can't see any reason that it would ever change, so I am
+ going to gamble and define the external structures here, in the
+ target independent ECOFF header file. The internal forms are
+ defined in coff/sym.h, which was originally donated by MIPS
+ Computer Systems. */
+
+/* Type information external record */
+
+struct tir_ext {
+ unsigned char t_bits1[1];
+ unsigned char t_tq45[1];
+ unsigned char t_tq01[1];
+ unsigned char t_tq23[1];
+};
+
+#define TIR_BITS1_FBITFIELD_BIG ((unsigned int) 0x80)
+#define TIR_BITS1_FBITFIELD_LITTLE ((unsigned int) 0x01)
+
+#define TIR_BITS1_CONTINUED_BIG ((unsigned int) 0x40)
+#define TIR_BITS1_CONTINUED_LITTLE ((unsigned int) 0x02)
+
+#define TIR_BITS1_BT_BIG ((unsigned int) 0x3F)
+#define TIR_BITS1_BT_SH_BIG 0
+#define TIR_BITS1_BT_LITTLE ((unsigned int) 0xFC)
+#define TIR_BITS1_BT_SH_LITTLE 2
+
+#define TIR_BITS_TQ4_BIG ((unsigned int) 0xF0)
+#define TIR_BITS_TQ4_SH_BIG 4
+#define TIR_BITS_TQ5_BIG ((unsigned int) 0x0F)
+#define TIR_BITS_TQ5_SH_BIG 0
+#define TIR_BITS_TQ4_LITTLE ((unsigned int) 0x0F)
+#define TIR_BITS_TQ4_SH_LITTLE 0
+#define TIR_BITS_TQ5_LITTLE ((unsigned int) 0xF0)
+#define TIR_BITS_TQ5_SH_LITTLE 4
+
+#define TIR_BITS_TQ0_BIG ((unsigned int) 0xF0)
+#define TIR_BITS_TQ0_SH_BIG 4
+#define TIR_BITS_TQ1_BIG ((unsigned int) 0x0F)
+#define TIR_BITS_TQ1_SH_BIG 0
+#define TIR_BITS_TQ0_LITTLE ((unsigned int) 0x0F)
+#define TIR_BITS_TQ0_SH_LITTLE 0
+#define TIR_BITS_TQ1_LITTLE ((unsigned int) 0xF0)
+#define TIR_BITS_TQ1_SH_LITTLE 4
+
+#define TIR_BITS_TQ2_BIG ((unsigned int) 0xF0)
+#define TIR_BITS_TQ2_SH_BIG 4
+#define TIR_BITS_TQ3_BIG ((unsigned int) 0x0F)
+#define TIR_BITS_TQ3_SH_BIG 0
+#define TIR_BITS_TQ2_LITTLE ((unsigned int) 0x0F)
+#define TIR_BITS_TQ2_SH_LITTLE 0
+#define TIR_BITS_TQ3_LITTLE ((unsigned int) 0xF0)
+#define TIR_BITS_TQ3_SH_LITTLE 4
+
+/* Relative symbol external record */
+
+struct rndx_ext {
+ unsigned char r_bits[4];
+};
+
+#define RNDX_BITS0_RFD_SH_LEFT_BIG 4
+#define RNDX_BITS1_RFD_BIG ((unsigned int) 0xF0)
+#define RNDX_BITS1_RFD_SH_BIG 4
+
+#define RNDX_BITS0_RFD_SH_LEFT_LITTLE 0
+#define RNDX_BITS1_RFD_LITTLE ((unsigned int) 0x0F)
+#define RNDX_BITS1_RFD_SH_LEFT_LITTLE 8
+
+#define RNDX_BITS1_INDEX_BIG ((unsigned int) 0x0F)
+#define RNDX_BITS1_INDEX_SH_LEFT_BIG 16
+#define RNDX_BITS2_INDEX_SH_LEFT_BIG 8
+#define RNDX_BITS3_INDEX_SH_LEFT_BIG 0
+
+#define RNDX_BITS1_INDEX_LITTLE ((unsigned int) 0xF0)
+#define RNDX_BITS1_INDEX_SH_LITTLE 4
+#define RNDX_BITS2_INDEX_SH_LEFT_LITTLE 4
+#define RNDX_BITS3_INDEX_SH_LEFT_LITTLE 12
+
+/* Auxiliary symbol information external record */
+
+union aux_ext {
+ struct tir_ext a_ti;
+ struct rndx_ext a_rndx;
+ unsigned char a_dnLow[4];
+ unsigned char a_dnHigh[4];
+ unsigned char a_isym[4];
+ unsigned char a_iss[4];
+ unsigned char a_width[4];
+ unsigned char a_count[4];
+};
+
+#define AUX_GET_ANY(bigend, ax, field) \
+ ((bigend) ? bfd_getb32 ((ax)->field) : bfd_getl32 ((ax)->field))
+
+#define AUX_GET_DNLOW(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_dnLow)
+#define AUX_GET_DNHIGH(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_dnHigh)
+#define AUX_GET_ISYM(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_isym)
+#define AUX_GET_ISS(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_iss)
+#define AUX_GET_WIDTH(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_width)
+#define AUX_GET_COUNT(bigend, ax) AUX_GET_ANY ((bigend), (ax), a_count)
+
+#define AUX_PUT_ANY(bigend, val, ax, field) \
+ ((bigend) \
+ ? (bfd_putb32 ((bfd_vma) (val), (ax)->field), 0) \
+ : (bfd_putl32 ((bfd_vma) (val), (ax)->field), 0))
+
+#define AUX_PUT_DNLOW(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_dnLow)
+#define AUX_PUT_DNHIGH(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_dnHigh)
+#define AUX_PUT_ISYM(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_isym)
+#define AUX_PUT_ISS(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_iss)
+#define AUX_PUT_WIDTH(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_width)
+#define AUX_PUT_COUNT(bigend, val, ax) \
+ AUX_PUT_ANY ((bigend), (val), (ax), a_count)
+
+/********************** SYMBOLS **********************/
+
+/* For efficiency, gdb deals directly with the unswapped symbolic
+ information (that way it only takes the time to swap information
+ that it really needs to read). gdb originally retrieved the
+ information directly from the BFD backend information, but that
+ strategy, besides being sort of ugly, does not work for MIPS ELF,
+ which also uses ECOFF debugging information. This structure holds
+ pointers to the (mostly) unswapped symbolic information. */
+
+struct ecoff_debug_info
+{
+ /* The swapped ECOFF symbolic header. */
+ HDRR symbolic_header;
+
+ /* Pointers to the unswapped symbolic information. Note that the
+ pointers to external structures point to different sorts of
+ information on different ECOFF targets. The ecoff_debug_swap
+ structure provides the sizes of the structures and the functions
+ needed to swap the information in and out. These pointers are
+ all pointers to arrays, not single structures. They will be NULL
+ if there are no instances of the relevant structure. These
+ fields are also used by the assembler to output ECOFF debugging
+ information. */
+ unsigned char *line;
+ void *external_dnr; /* struct dnr_ext */
+ void *external_pdr; /* struct pdr_ext */
+ void *external_sym; /* struct sym_ext */
+ void *external_opt; /* struct opt_ext */
+ union aux_ext *external_aux;
+ char *ss;
+ char *ssext;
+ void *external_fdr; /* struct fdr_ext */
+ void *external_rfd; /* struct rfd_ext */
+ void *external_ext; /* struct ext_ext */
+
+ /* These fields are used when linking. They may disappear at some
+ point. */
+ char *ssext_end;
+ void *external_ext_end;
+
+ /* When linking, this field holds a mapping from the input FDR
+ numbers to the output numbers, and is used when writing out the
+ external symbols. It is NULL if no mapping is required. */
+ RFDT *ifdmap;
+
+ /* The swapped FDR information. Currently this is never NULL, but
+ code using this structure should probably double-check in case
+ this changes in the future. This is a pointer to an array, not a
+ single structure. */
+ FDR *fdr;
+};
+
+/* These structures are used by the ECOFF find_nearest_line function. */
+
+struct ecoff_fdrtab_entry
+{
+ /* Base address in .text of this FDR. */
+ bfd_vma base_addr;
+ FDR *fdr;
+};
+
+struct ecoff_find_line
+{
+ /* Allocated memory to hold function and file names. */
+ char *find_buffer;
+
+ /* FDR table, sorted by address: */
+ long fdrtab_len;
+ struct ecoff_fdrtab_entry *fdrtab;
+
+ /* Cache entry for most recently found line information. The sect
+ field is NULL if this cache does not contain valid information. */
+ struct
+ {
+ asection *sect;
+ bfd_vma start;
+ bfd_vma stop;
+ const char *filename;
+ const char *functionname;
+ unsigned int line_num;
+ } cache;
+};
+
+/********************** SWAPPING **********************/
+
+/* The generic ECOFF code needs to be able to swap debugging
+ information in and out in the specific format used by a particular
+ ECOFF implementation. This structure provides the information
+ needed to do this. */
+
+struct ecoff_debug_swap
+{
+ /* Symbol table magic number. */
+ int sym_magic;
+ /* Alignment of debugging information. E.g., 4. */
+ bfd_size_type debug_align;
+ /* Sizes of external symbolic information. */
+ bfd_size_type external_hdr_size;
+ bfd_size_type external_dnr_size;
+ bfd_size_type external_pdr_size;
+ bfd_size_type external_sym_size;
+ bfd_size_type external_opt_size;
+ bfd_size_type external_fdr_size;
+ bfd_size_type external_rfd_size;
+ bfd_size_type external_ext_size;
+ /* Functions to swap in external symbolic data. */
+ void (*swap_hdr_in) (bfd *, void *, HDRR *);
+ void (*swap_dnr_in) (bfd *, void *, DNR *);
+ void (*swap_pdr_in) (bfd *, void *, PDR *);
+ void (*swap_sym_in) (bfd *, void *, SYMR *);
+ void (*swap_opt_in) (bfd *, void *, OPTR *);
+ void (*swap_fdr_in) (bfd *, void *, FDR *);
+ void (*swap_rfd_in) (bfd *, void *, RFDT *);
+ void (*swap_ext_in) (bfd *, void *, EXTR *);
+ void (*swap_tir_in) (int, const struct tir_ext *, TIR *);
+ void (*swap_rndx_in) (int, const struct rndx_ext *, RNDXR *);
+ /* Functions to swap out external symbolic data. */
+ void (*swap_hdr_out) (bfd *, const HDRR *, void *);
+ void (*swap_dnr_out) (bfd *, const DNR *, void *);
+ void (*swap_pdr_out) (bfd *, const PDR *, void *);
+ void (*swap_sym_out) (bfd *, const SYMR *, void *);
+ void (*swap_opt_out) (bfd *, const OPTR *, void *);
+ void (*swap_fdr_out) (bfd *, const FDR *, void *);
+ void (*swap_rfd_out) (bfd *, const RFDT *, void *);
+ void (*swap_ext_out) (bfd *, const EXTR *, void *);
+ void (*swap_tir_out) (int, const TIR *, struct tir_ext *);
+ void (*swap_rndx_out) (int, const RNDXR *, struct rndx_ext *);
+ /* Function to read symbol data and set up pointers in
+ ecoff_debug_info structure. The section argument is used for
+ ELF, not straight ECOFF. */
+ bfd_boolean (*read_debug_info) (bfd *, asection *, struct ecoff_debug_info *);
+};
+
+#endif /* ! defined (ECOFF_H) */
diff --git a/include/coff/external.h b/include/coff/external.h
new file mode 100644
index 000000000..19636dab7
--- /dev/null
+++ b/include/coff/external.h
@@ -0,0 +1,254 @@
+/* external.h -- External COFF structures
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef COFF_EXTERNAL_H
+#define COFF_EXTERNAL_H
+
+#ifndef DO_NOT_DEFINE_FILHDR
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+ {
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+ };
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 20
+#endif
+
+#ifndef DO_NOT_DEFINE_AOUTHDR
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct external_aouthdr
+ {
+ char magic[2]; /* type of file */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+ char data_start[4]; /* base of data used for this file */
+ }
+AOUTHDR;
+
+#define AOUTHDRSZ 28
+#define AOUTSZ 28
+#endif
+
+#ifndef DO_NOT_DEFINE_SCNHDR
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+ {
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries */
+ char s_flags[4]; /* flags */
+ };
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 40
+
+/* Names of "special" sections. */
+
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _COMMENT ".comment"
+#define _LIB ".lib"
+#endif /* not DO_NOT_DEFINE_SCNHDR */
+
+#ifndef DO_NOT_DEFINE_LINENO
+
+/********************** LINE NUMBERS **********************/
+
+#ifndef L_LNNO_SIZE
+#error L_LNNO_SIZE needs to be defined
+#endif
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ Line numbers are grouped on a per function basis; first entry in a function
+ grouping will have l_lnno = 0 and in place of physical address will be the
+ symbol table index of the function name. */
+struct external_lineno
+{
+ union
+ {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[4]; /* (physical) address of line number */
+ } l_addr;
+
+ char l_lnno[L_LNNO_SIZE]; /* line number */
+};
+
+#define LINENO struct external_lineno
+#define LINESZ (4 + L_LNNO_SIZE)
+
+#if L_LNNO_SIZE == 4
+#define GET_LINENO_LNNO(abfd, ext) H_GET_32 (abfd, (ext->l_lnno))
+#define PUT_LINENO_LNNO(abfd, val, ext) H_PUT_32 (abfd, val, (ext->l_lnno))
+#endif
+#if L_LNNO_SIZE == 2
+#define GET_LINENO_LNNO(abfd, ext) H_GET_16 (abfd, (ext->l_lnno))
+#define PUT_LINENO_LNNO(abfd, val, ext) H_PUT_16 (abfd, val, (ext->l_lnno))
+#endif
+
+#endif /* not DO_NOT_DEFINE_LINENO */
+
+#ifndef DO_NOT_DEFINE_SYMENT
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#ifndef E_FILNMLEN
+#define E_FILNMLEN 14
+#endif
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union
+ {
+ char e_name[E_SYMNMLEN];
+
+ struct
+ {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+ } e;
+
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 18
+
+#ifndef N_BTMASK
+#define N_BTMASK 0xf
+#endif
+
+#ifndef N_TMASK
+#define N_TMASK 0x30
+#endif
+
+#ifndef N_BTSHFT
+#define N_BTSHFT 4
+#endif
+
+#ifndef N_TSHIFT
+#define N_TSHIFT 2
+#endif
+
+#endif /* not DO_NOT_DEFINE_SYMENT */
+
+#ifndef DO_NOT_DEFINE_AUXENT
+
+union external_auxent
+{
+ struct
+ {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+
+ union
+ {
+ struct
+ {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+
+ char x_fsize[4]; /* size of function */
+
+ } x_misc;
+
+ union
+ {
+ struct /* if ISFCN, tag, or .bb */
+ {
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+
+ struct /* if ISARY, up to 4 dimen. */
+ {
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+
+ } x_fcnary;
+
+ char x_tvndx[2]; /* tv index */
+
+ } x_sym;
+
+ union
+ {
+ char x_fname[E_FILNMLEN];
+
+ struct
+ {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+
+ } x_file;
+
+ struct
+ {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+#ifdef INCLUDE_COMDAT_FIELDS_IN_AUXENT
+ char x_checksum[4]; /* section COMDAT checksum */
+ char x_associated[2]; /* COMDAT associated section index */
+ char x_comdat[1]; /* COMDAT selection number */
+#endif
+ } x_scn;
+
+ struct
+ {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+};
+
+#define AUXENT union external_auxent
+#define AUXESZ 18
+
+#define _ETEXT "etext"
+
+#endif /* not DO_NOT_DEFINE_AUXENT */
+
+#endif /* COFF_EXTERNAL_H */
diff --git a/include/coff/go32exe.h b/include/coff/go32exe.h
new file mode 100644
index 000000000..ccd5c917d
--- /dev/null
+++ b/include/coff/go32exe.h
@@ -0,0 +1,37 @@
+/* COFF information for PC running go32.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define STUBSIZE 2048
+
+struct external_filehdr_go32_exe
+ {
+ char stub[STUBSIZE];/* the stub to load the image */
+ /* the standard COFF header */
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+ };
+
+#undef FILHDR
+#define FILHDR struct external_filehdr_go32_exe
+#undef FILHSZ
+#define FILHSZ STUBSIZE+20
diff --git a/include/coff/h8300.h b/include/coff/h8300.h
new file mode 100644
index 000000000..908848c18
--- /dev/null
+++ b/include/coff/h8300.h
@@ -0,0 +1,54 @@
+/* coff information for Renesas H8/300 and H8/300-H
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+#define H8300MAGIC 0x8300
+#define H8300HMAGIC 0x8301
+#define H8300SMAGIC 0x8302
+#define H8300HNMAGIC 0x8303
+#define H8300SNMAGIC 0x8304
+
+#define H8300BADMAG(x) (((x).f_magic != H8300MAGIC))
+#define H8300HBADMAG(x) (((x).f_magic != H8300HMAGIC))
+#define H8300SBADMAG(x) (((x).f_magic != H8300SMAGIC))
+#define H8300HNBADMAG(x) (((x).f_magic != H8300HNMAGIC))
+#define H8300SNBADMAG(x) (((x).f_magic != H8300SNMAGIC))
+
+/* Relocation directives. */
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the h8 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes. */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+
+
+
diff --git a/include/coff/h8500.h b/include/coff/h8500.h
new file mode 100644
index 000000000..62968cad9
--- /dev/null
+++ b/include/coff/h8500.h
@@ -0,0 +1,46 @@
+/* coff information for Renesas H8/500
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+#define H8500MAGIC 0x8500
+
+#define H8500BADMAG(x) ((0xffff && ((x).f_magic) != H8500MAGIC))
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the h8 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes. */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+
+
+
diff --git a/include/coff/i386.h b/include/coff/i386.h
new file mode 100644
index 000000000..484a3b1e9
--- /dev/null
+++ b/include/coff/i386.h
@@ -0,0 +1,71 @@
+/* coff information for Intel 386/486.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 2
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax). */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+
+#define I386MAGIC 0x14c
+#define I386PTXMAGIC 0x154
+#define I386AIXMAGIC 0x175
+
+/* This is Lynx's all-platform magic number for executables. */
+
+#define LYNXCOFFMAGIC 0415
+
+#define I386BADMAG(x) ( ((x).f_magic != I386MAGIC) \
+ && (x).f_magic != I386AIXMAGIC \
+ && (x).f_magic != I386PTXMAGIC \
+ && (x).f_magic != LYNXCOFFMAGIC)
+
+#define OMAGIC 0404 /* object files, eg as output */
+#define ZMAGIC 0413 /* demand load format, eg normal ld output */
+#define STMAGIC 0401 /* target shlib */
+#define SHMAGIC 0443 /* host shlib */
+
+/* define some NT default values */
+/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
diff --git a/include/coff/i860.h b/include/coff/i860.h
new file mode 100644
index 000000000..c7072b26b
--- /dev/null
+++ b/include/coff/i860.h
@@ -0,0 +1,86 @@
+/* COFF information for the Intel i860.
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file was hacked from i386.h [dolan@ssd.intel.com] */
+
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax). */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+
+#define I860MAGIC 0x14d
+
+#define I860BADMAG(x) ((x).f_magic != I860MAGIC)
+
+#undef AOUTSZ
+#define AOUTSZ 36
+
+/* FIXME: What are the a.out magic numbers? */
+
+#define _ETEXT "etext"
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
+/* The relocation directory entry types.
+ PAIR : The low half that follows relates to the preceeding HIGH[ADJ].
+ HIGH : The high half of a 32-bit constant.
+ LOWn : The low half, insn bits 15..(n-1), 2^n-byte aligned.
+ SPLITn : The low half, insn bits 20..16 and 10..(n-1), 2^n-byte aligned.
+ HIGHADJ: Similar to HIGH, but with adjustment.
+ BRADDR : 26-bit branch displacement.
+
+ Note: The Intel assembler manual lists LOW4 as one of the
+ relocation types, but it appears to be useless for the i860.
+ We will recognize it anyway, just in case it actually appears in
+ any object files. */
+
+enum {
+ COFF860_R_PAIR = 0x1c,
+ COFF860_R_HIGH = 0x1e,
+ COFF860_R_LOW0 = 0x1f,
+ COFF860_R_LOW1 = 0x20,
+ COFF860_R_LOW2 = 0x21,
+ COFF860_R_LOW3 = 0x22,
+ COFF860_R_LOW4 = 0x23,
+ COFF860_R_SPLIT0 = 0x24,
+ COFF860_R_SPLIT1 = 0x25,
+ COFF860_R_SPLIT2 = 0x26,
+ COFF860_R_HIGHADJ = 0x27,
+ COFF860_R_BRADDR = 0x28
+};
+
diff --git a/include/coff/i960.h b/include/coff/i960.h
new file mode 100644
index 000000000..b9d167e25
--- /dev/null
+++ b/include/coff/i960.h
@@ -0,0 +1,319 @@
+/* coff information for 80960. Origins: Intel corp, natch.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* NOTE: Tagentries (cf TAGBITS) are no longer used by the 960 */
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+{
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+};
+
+#define OMAGIC (0407) /* old impure format. data immediately
+ follows text. both sections are rw. */
+#define NMAGIC (0410) /* split i&d, read-only text */
+
+/*
+* Intel 80960 (I960) processor flags.
+* F_I960TYPE == mask for processor type field.
+*/
+
+#define F_I960TYPE (0xf000)
+#define F_I960CORE (0x1000)
+#define F_I960KB (0x2000)
+#define F_I960SB (0x2000)
+#define F_I960MC (0x3000)
+#define F_I960XA (0x4000)
+#define F_I960CA (0x5000)
+#define F_I960KA (0x6000)
+#define F_I960SA (0x6000)
+#define F_I960JX (0x7000)
+#define F_I960HX (0x8000)
+
+
+/** i80960 Magic Numbers
+*/
+
+#define I960ROMAGIC (0x160) /* read-only text segments */
+#define I960RWMAGIC (0x161) /* read-write text segments */
+
+#define I960BADMAG(x) (((x).f_magic!=I960ROMAGIC) && ((x).f_magic!=I960RWMAGIC))
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 20
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct
+{
+ unsigned long phys_addr;
+ unsigned long bitarray;
+} TAGBITS;
+
+typedef struct
+{
+ char magic[2]; /* type of file */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+ char data_start[4]; /* base of data used for this file */
+ char tagentries[4]; /* number of tag entries to follow */
+}
+AOUTHDR;
+
+/* return a pointer to the tag bits array */
+
+#define TAGPTR(aout) ((TAGBITS *) (&(aout.tagentries)+1))
+
+/* compute size of a header */
+
+/*#define AOUTSZ(aout) (sizeof(AOUTHDR)+(aout.tagentries*sizeof(TAGBITS)))*/
+#define AOUTSZ 32
+#define AOUTHDRSZ 32
+
+
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+{
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries*/
+ char s_flags[4]; /* flags */
+ char s_align[4]; /* section alignment */
+};
+
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 44
+
+/*
+ * names of "special" sections
+ */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+
+/********************** LINE NUMBERS **********************/
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ * Line numbers are grouped on a per function basis; first entry in a function
+ * grouping will have l_lnno = 0 and in place of physical address will be the
+ * symbol table index of the function name.
+ */
+struct external_lineno
+{
+ union
+ {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[4]; /* (physical) address of line number */
+ } l_addr;
+
+ char l_lnno[2]; /* line number */
+ char padding[2]; /* force alignment */
+};
+
+
+#define LINENO struct external_lineno
+#define LINESZ 8
+
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union
+ {
+ char e_name[E_SYMNMLEN];
+
+ struct
+ {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+ } e;
+
+ char e_value[4];
+ char e_scnum[2];
+ char e_flags[2];
+ char e_type[4];
+ char e_sclass[1];
+ char e_numaux[1];
+ char pad2[2];
+};
+
+#define N_BTMASK (0x1f)
+#define N_TMASK (0x60)
+#define N_BTSHFT (5)
+#define N_TSHIFT (2)
+
+union external_auxent
+{
+ struct
+ {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+
+ union
+ {
+ struct
+ {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+
+ char x_fsize[4]; /* size of function */
+
+ } x_misc;
+
+ union
+ {
+ struct /* if ISFCN, tag, or .bb */
+ {
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+
+ struct /* if ISARY, up to 4 dimen. */
+ {
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+
+ } x_fcnary;
+
+ char x_tvndx[2]; /* tv index */
+
+ } x_sym;
+
+ union
+ {
+ char x_fname[E_FILNMLEN];
+
+ struct
+ {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+
+ } x_file;
+
+ struct
+ {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+
+ } x_scn;
+
+ struct
+ {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+
+ /******************************************
+ * I960-specific *2nd* aux. entry formats
+ ******************************************/
+ struct
+ {
+ /* This is a very old typo that keeps getting propagated. */
+#define x_stdindx x_stindx
+ char x_stindx[4]; /* sys. table entry */
+ } x_sc; /* system call entry */
+
+ struct
+ {
+ char x_balntry[4]; /* BAL entry point */
+ } x_bal; /* BAL-callable function */
+
+ struct
+ {
+ char x_timestamp[4]; /* time stamp */
+ char x_idstring[20]; /* producer identity string */
+
+ } x_ident; /* Producer ident info */
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 24
+#define AUXENT union external_auxent
+#define AUXESZ 24
+
+# define _ETEXT "_etext"
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+ char pad[2];
+};
+
+/* r_type values for the i960. */
+
+/* The i960 uses R_RELLONG, which is defined in internal.h as 0x11.
+ It is an absolute 32 bit relocation. */
+
+#define R_IPRMED (0x19) /* 24-bit ip-relative relocation */
+#define R_OPTCALL (0x1b) /* 32-bit optimizable call (leafproc/sysproc) */
+#define R_OPTCALLX (0x1c) /* 64-bit optimizable call (leafproc/sysproc) */
+
+/* The following relocation types are defined use by relaxing linkers,
+ which convert 32 bit calls (which require a 64 bit instruction)
+ into 24 bit calls (which require a 32 bit instruction) when
+ possible. It will be possible whenever the target of the call is
+ within a 24 bit range of the call instruction.
+
+ It is always safe to ignore these relocations. They only serve to
+ mark points which the relaxing linker will have to consider. The
+ assembler must ensure that the correct code is generated even if
+ the relocations are ignored. In particular, this means that the
+ R_IPR13 relocation may not appear with an external symbol. */
+
+#define R_IPR13 (0x1d) /* 13 bit ip-relative branch */
+#define R_ALIGN (0x1e) /* alignment marker. This has no
+ associated symbol. Instead, the
+ r_symndx field indicates the
+ require alignment at this point in
+ the file. It must be a power of 2. */
+
+#define RELOC struct external_reloc
+#define RELSZ 12
+
diff --git a/include/coff/ia64.h b/include/coff/ia64.h
new file mode 100644
index 000000000..f7ff0ee22
--- /dev/null
+++ b/include/coff/ia64.h
@@ -0,0 +1,88 @@
+/* coff information for HP/Intel IA-64.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define DO_NOT_DEFINE_AOUTHDR
+#define L_LNNO_SIZE 2
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+#define IA64MAGIC 0x200
+
+#define IA64BADMAG(x) (((x).f_magic != IA64MAGIC))
+
+/* Bits for f_flags:
+ * F_RELFLG relocation info stripped from file
+ * F_EXEC file is executable (no unresolved external references)
+ * F_LNNO line numbers stripped from file
+ * F_LSYMS local symbols stripped from file
+ * F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax)
+ */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+typedef struct
+{
+ char magic[2]; /* type of file */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+#ifndef BFD64
+ char data_start[4]; /* base of data used for this file */
+#endif
+}
+AOUTHDR;
+
+#define PE32MAGIC 0x10b /* 32-bit image */
+#define PE32PMAGIC 0x20b /* 32-bit image inside 64-bit address space */
+
+#define PE32PBADMAG(x) (((x).f_magic != PE32PMAGIC))
+
+#define AOUTSZ 108
+#define AOUTHDRSZ 108
+
+#define OMAGIC 0404 /* object files, eg as output */
+#define ZMAGIC 0413 /* demand load format, eg normal ld output */
+#define STMAGIC 0401 /* target shlib */
+#define SHMAGIC 0443 /* host shlib */
+
+/* define some NT default values */
+/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
diff --git a/include/coff/internal.h b/include/coff/internal.h
new file mode 100644
index 000000000..710e932c7
--- /dev/null
+++ b/include/coff/internal.h
@@ -0,0 +1,746 @@
+/* Internal format of COFF object file data structures, for GNU BFD.
+ This file is part of BFD, the Binary File Descriptor library.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef GNU_COFF_INTERNAL_H
+#define GNU_COFF_INTERNAL_H 1
+
+/* First, make "signed char" work, even on old compilers. */
+#ifndef signed
+#ifndef __STDC__
+#define signed /**/
+#endif
+#endif
+
+/********************** FILE HEADER **********************/
+
+/* extra stuff in a PE header. */
+
+struct internal_extra_pe_filehdr
+{
+ /* DOS header data follows for PE stuff */
+ unsigned short e_magic; /* Magic number, 0x5a4d */
+ unsigned short e_cblp; /* Bytes on last page of file, 0x90 */
+ unsigned short e_cp; /* Pages in file, 0x3 */
+ unsigned short e_crlc; /* Relocations, 0x0 */
+ unsigned short e_cparhdr; /* Size of header in paragraphs, 0x4 */
+ unsigned short e_minalloc; /* Minimum extra paragraphs needed, 0x0 */
+ unsigned short e_maxalloc; /* Maximum extra paragraphs needed, 0xFFFF */
+ unsigned short e_ss; /* Initial (relative) SS value, 0x0 */
+ unsigned short e_sp; /* Initial SP value, 0xb8 */
+ unsigned short e_csum; /* Checksum, 0x0 */
+ unsigned short e_ip; /* Initial IP value, 0x0 */
+ unsigned short e_cs; /* Initial (relative) CS value, 0x0 */
+ unsigned short e_lfarlc; /* File address of relocation table, 0x40 */
+ unsigned short e_ovno; /* Overlay number, 0x0 */
+ unsigned short e_res[4]; /* Reserved words, all 0x0 */
+ unsigned short e_oemid; /* OEM identifier (for e_oeminfo), 0x0 */
+ unsigned short e_oeminfo; /* OEM information; e_oemid specific, 0x0 */
+ unsigned short e_res2[10]; /* Reserved words, all 0x0 */
+ bfd_vma e_lfanew; /* File address of new exe header, 0x80 */
+ unsigned long dos_message[16]; /* text which always follows dos header */
+ bfd_vma nt_signature; /* required NT signature, 0x4550 */
+};
+
+struct internal_filehdr
+{
+ struct internal_extra_pe_filehdr pe;
+
+ /* Standard coff internal info. */
+ unsigned short f_magic; /* magic number */
+ unsigned short f_nscns; /* number of sections */
+ long f_timdat; /* time & date stamp */
+ bfd_vma f_symptr; /* file pointer to symtab */
+ long f_nsyms; /* number of symtab entries */
+ unsigned short f_opthdr; /* sizeof(optional hdr) */
+ unsigned short f_flags; /* flags */
+ unsigned short f_target_id; /* (TI COFF specific) */
+};
+
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_AR16WR file is 16-bit little-endian
+ F_AR32WR file is 32-bit little-endian
+ F_AR32W file is 32-bit big-endian
+ F_DYNLOAD rs/6000 aix: dynamically loadable w/imports & exports
+ F_SHROBJ rs/6000 aix: file is a shared object
+ F_DLL PE format DLL. */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+#define F_AR16WR (0x0080)
+#define F_AR32WR (0x0100)
+#define F_AR32W (0x0200)
+#define F_DYNLOAD (0x1000)
+#define F_SHROBJ (0x2000)
+#define F_DLL (0x2000)
+
+/* Extra structure which is used in the optional header. */
+typedef struct _IMAGE_DATA_DIRECTORY
+{
+ bfd_vma VirtualAddress;
+ long Size;
+} IMAGE_DATA_DIRECTORY;
+#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
+
+/* Default image base for NT. */
+#define NT_EXE_IMAGE_BASE 0x400000
+#define NT_DLL_IMAGE_BASE 0x10000000
+
+/* Default image base for BeOS. */
+#define BEOS_EXE_IMAGE_BASE 0x80000000
+#define BEOS_DLL_IMAGE_BASE 0x10000000
+
+/* Extra stuff in a PE aouthdr */
+
+#define PE_DEF_SECTION_ALIGNMENT 0x1000
+#ifndef PE_DEF_FILE_ALIGNMENT
+# define PE_DEF_FILE_ALIGNMENT 0x200
+#endif
+
+struct internal_extra_pe_aouthdr
+{
+ /* PE stuff */
+ bfd_vma ImageBase; /* address of specific location in memory that
+ file is located, NT default 0x10000 */
+
+ bfd_vma SectionAlignment; /* section alignment default 0x1000 */
+ bfd_vma FileAlignment; /* file alignment default 0x200 */
+ short MajorOperatingSystemVersion; /* minimum version of the operating */
+ short MinorOperatingSystemVersion; /* system req'd for exe, default to 1*/
+ short MajorImageVersion; /* user defineable field to store version of */
+ short MinorImageVersion; /* exe or dll being created, default to 0 */
+ short MajorSubsystemVersion; /* minimum subsystem version required to */
+ short MinorSubsystemVersion; /* run exe; default to 3.1 */
+ long Reserved1; /* seems to be 0 */
+ long SizeOfImage; /* size of memory to allocate for prog */
+ long SizeOfHeaders; /* size of PE header and section table */
+ long CheckSum; /* set to 0 */
+ short Subsystem;
+
+ /* type of subsystem exe uses for user interface,
+ possible values:
+ 1 - NATIVE Doesn't require a subsystem
+ 2 - WINDOWS_GUI runs in Windows GUI subsystem
+ 3 - WINDOWS_CUI runs in Windows char sub. (console app)
+ 5 - OS2_CUI runs in OS/2 character subsystem
+ 7 - POSIX_CUI runs in Posix character subsystem */
+ short DllCharacteristics; /* flags for DLL init, use 0 */
+ bfd_vma SizeOfStackReserve; /* amount of memory to reserve */
+ bfd_vma SizeOfStackCommit; /* amount of memory initially committed for
+ initial thread's stack, default is 0x1000 */
+ bfd_vma SizeOfHeapReserve; /* amount of virtual memory to reserve and */
+ bfd_vma SizeOfHeapCommit; /* commit, don't know what to defaut it to */
+ long LoaderFlags; /* can probably set to 0 */
+ long NumberOfRvaAndSizes; /* number of entries in next entry, 16 */
+ IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
+};
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+struct internal_aouthdr
+{
+ short magic; /* type of file */
+ short vstamp; /* version stamp */
+ bfd_vma tsize; /* text size in bytes, padded to FW bdry*/
+ bfd_vma dsize; /* initialized data " " */
+ bfd_vma bsize; /* uninitialized data " " */
+ bfd_vma entry; /* entry pt. */
+ bfd_vma text_start; /* base of text used for this file */
+ bfd_vma data_start; /* base of data used for this file */
+
+ /* i960 stuff */
+ unsigned long tagentries; /* number of tag entries to follow */
+
+ /* RS/6000 stuff */
+ bfd_vma o_toc; /* address of TOC */
+ short o_snentry; /* section number for entry point */
+ short o_sntext; /* section number for text */
+ short o_sndata; /* section number for data */
+ short o_sntoc; /* section number for toc */
+ short o_snloader; /* section number for loader section */
+ short o_snbss; /* section number for bss */
+ short o_algntext; /* max alignment for text */
+ short o_algndata; /* max alignment for data */
+ short o_modtype; /* Module type field, 1R,RE,RO */
+ short o_cputype; /* Encoded CPU type */
+ bfd_vma o_maxstack; /* max stack size allowed. */
+ bfd_vma o_maxdata; /* max data size allowed. */
+
+ /* ECOFF stuff */
+ bfd_vma bss_start; /* Base of bss section. */
+ bfd_vma gp_value; /* GP register value. */
+ unsigned long gprmask; /* General registers used. */
+ unsigned long cprmask[4]; /* Coprocessor registers used. */
+ unsigned long fprmask; /* Floating pointer registers used. */
+
+ /* Apollo stuff */
+ long o_inlib; /* inlib data */
+ long o_sri; /* Static Resource Information */
+ long vid[2]; /* Version id */
+
+ struct internal_extra_pe_aouthdr pe;
+};
+
+/********************** STORAGE CLASSES **********************/
+
+/* This used to be defined as -1, but now n_sclass is unsigned. */
+#define C_EFCN 0xff /* physical end of function */
+#define C_NULL 0
+#define C_AUTO 1 /* automatic variable */
+#define C_EXT 2 /* external symbol */
+#define C_STAT 3 /* static */
+#define C_REG 4 /* register variable */
+#define C_EXTDEF 5 /* external definition */
+#define C_LABEL 6 /* label */
+#define C_ULABEL 7 /* undefined label */
+#define C_MOS 8 /* member of structure */
+#define C_ARG 9 /* function argument */
+#define C_STRTAG 10 /* structure tag */
+#define C_MOU 11 /* member of union */
+#define C_UNTAG 12 /* union tag */
+#define C_TPDEF 13 /* type definition */
+#define C_USTATIC 14 /* undefined static */
+#define C_ENTAG 15 /* enumeration tag */
+#define C_MOE 16 /* member of enumeration */
+#define C_REGPARM 17 /* register parameter */
+#define C_FIELD 18 /* bit field */
+#define C_AUTOARG 19 /* auto argument */
+#define C_LASTENT 20 /* dummy entry (end of block) */
+#define C_BLOCK 100 /* ".bb" or ".eb" */
+#define C_FCN 101 /* ".bf" or ".ef" */
+#define C_EOS 102 /* end of structure */
+#define C_FILE 103 /* file name */
+#define C_LINE 104 /* line # reformatted as symbol table entry */
+#define C_ALIAS 105 /* duplicate tag */
+#define C_HIDDEN 106 /* ext symbol in dmert public lib */
+
+#if defined _AIX52 || defined AIX_WEAK_SUPPORT
+#define C_WEAKEXT 111 /* weak symbol -- AIX standard. */
+#else
+#define C_WEAKEXT 127 /* weak symbol -- GNU extension. */
+#endif
+
+/* New storage classes for TI COFF */
+#define C_UEXT 19 /* Tentative external definition */
+#define C_STATLAB 20 /* Static load time label */
+#define C_EXTLAB 21 /* External load time label */
+#define C_SYSTEM 23 /* System Wide variable */
+
+/* New storage classes for WINDOWS_NT */
+#define C_SECTION 104 /* section name */
+#define C_NT_WEAK 105 /* weak external */
+
+ /* New storage classes for 80960 */
+
+/* C_LEAFPROC is obsolete. Use C_LEAFEXT or C_LEAFSTAT */
+#define C_LEAFPROC 108 /* Leaf procedure, "call" via BAL */
+
+#define C_SCALL 107 /* Procedure reachable via system call */
+#define C_LEAFEXT 108 /* External leaf */
+#define C_LEAFSTAT 113 /* Static leaf */
+#define C_OPTVAR 109 /* Optimized variable */
+#define C_DEFINE 110 /* Preprocessor #define */
+#define C_PRAGMA 111 /* Advice to compiler or linker */
+#define C_SEGMENT 112 /* 80960 segment name */
+
+ /* Storage classes for m88k */
+#define C_SHADOW 107 /* shadow symbol */
+#define C_VERSION 108 /* coff version symbol */
+
+ /* New storage classes for RS/6000 */
+#define C_HIDEXT 107 /* Un-named external symbol */
+#define C_BINCL 108 /* Marks beginning of include file */
+#define C_EINCL 109 /* Marks ending of include file */
+
+ /* storage classes for stab symbols for RS/6000 */
+#define C_GSYM (0x80)
+#define C_LSYM (0x81)
+#define C_PSYM (0x82)
+#define C_RSYM (0x83)
+#define C_RPSYM (0x84)
+#define C_STSYM (0x85)
+#define C_TCSYM (0x86)
+#define C_BCOMM (0x87)
+#define C_ECOML (0x88)
+#define C_ECOMM (0x89)
+#define C_DECL (0x8c)
+#define C_ENTRY (0x8d)
+#define C_FUN (0x8e)
+#define C_BSTAT (0x8f)
+#define C_ESTAT (0x90)
+
+/* Storage classes for Thumb symbols */
+#define C_THUMBEXT (128 + C_EXT) /* 130 */
+#define C_THUMBSTAT (128 + C_STAT) /* 131 */
+#define C_THUMBLABEL (128 + C_LABEL) /* 134 */
+#define C_THUMBEXTFUNC (C_THUMBEXT + 20) /* 150 */
+#define C_THUMBSTATFUNC (C_THUMBSTAT + 20) /* 151 */
+
+/********************** SECTION HEADER **********************/
+
+#define SCNNMLEN (8)
+
+struct internal_scnhdr
+{
+ char s_name[SCNNMLEN]; /* section name */
+
+ /* Physical address, aliased s_nlib.
+ In the pei format, this field is the virtual section size
+ (the size of the section after being loaded int memory),
+ NOT the physical address. */
+ bfd_vma s_paddr;
+
+ bfd_vma s_vaddr; /* virtual address */
+ bfd_vma s_size; /* section size */
+ bfd_vma s_scnptr; /* file ptr to raw data for section */
+ bfd_vma s_relptr; /* file ptr to relocation */
+ bfd_vma s_lnnoptr; /* file ptr to line numbers */
+ unsigned long s_nreloc; /* number of relocation entries */
+ unsigned long s_nlnno; /* number of line number entries*/
+ long s_flags; /* flags */
+ long s_align; /* used on I960 */
+ unsigned char s_page; /* TI COFF load page */
+};
+
+/* s_flags "type". */
+#define STYP_REG (0x0000) /* "regular": allocated, relocated, loaded */
+#define STYP_DSECT (0x0001) /* "dummy": relocated only*/
+#define STYP_NOLOAD (0x0002) /* "noload": allocated, relocated, not loaded */
+#define STYP_GROUP (0x0004) /* "grouped": formed of input sections */
+#define STYP_PAD (0x0008) /* "padding": not allocated, not relocated, loaded */
+#define STYP_COPY (0x0010) /* "copy": for decision function used by field update; not allocated, not relocated,
+ loaded; reloc & lineno entries processed normally */
+#define STYP_TEXT (0x0020) /* section contains text only */
+#define S_SHRSEG (0x0020) /* In 3b Update files (output of ogen), sections which appear in SHARED segments of the Pfile
+ will have the S_SHRSEG flag set by ogen, to inform dufr that updating 1 copy of the proc. will
+ update all process invocations. */
+#define STYP_DATA (0x0040) /* section contains data only */
+#define STYP_BSS (0x0080) /* section contains bss only */
+#define S_NEWFCN (0x0100) /* In a minimal file or an update file, a new function (as compared with a replaced function) */
+#define STYP_INFO (0x0200) /* comment: not allocated not relocated, not loaded */
+#define STYP_OVER (0x0400) /* overlay: relocated not allocated or loaded */
+#define STYP_LIB (0x0800) /* for .lib: same as INFO */
+#define STYP_MERGE (0x2000) /* merge section -- combines with text, data or bss sections only */
+#define STYP_REVERSE_PAD (0x4000) /* section will be padded with no-op instructions
+ wherever padding is necessary and there is a
+ word of contiguous bytes beginning on a word
+ boundary. */
+
+#define STYP_LIT 0x8020 /* Literal data (like STYP_TEXT) */
+
+
+/********************** LINE NUMBERS **********************/
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ Line numbers are grouped on a per function basis; first entry in a function
+ grouping will have l_lnno = 0 and in place of physical address will be the
+ symbol table index of the function name. */
+
+struct internal_lineno
+{
+ union
+ {
+ bfd_signed_vma l_symndx; /* function name symbol index, iff l_lnno == 0*/
+ bfd_signed_vma l_paddr; /* (physical) address of line number */
+ } l_addr;
+ unsigned long l_lnno; /* line number */
+};
+
+/********************** SYMBOLS **********************/
+
+#define SYMNMLEN 8 /* # characters in a symbol name */
+#define FILNMLEN 14 /* # characters in a file name */
+#define DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct internal_syment
+{
+ union
+ {
+ char _n_name[SYMNMLEN]; /* old COFF version */
+ struct
+ {
+ long _n_zeroes; /* new == 0 */
+ long _n_offset; /* offset into string table */
+ } _n_n;
+ char *_n_nptr[2]; /* allows for overlaying */
+ } _n;
+ bfd_vma n_value; /* value of symbol */
+ short n_scnum; /* section number */
+ unsigned short n_flags; /* copy of flags from filhdr */
+ unsigned short n_type; /* type and derived type */
+ unsigned char n_sclass; /* storage class */
+ unsigned char n_numaux; /* number of aux. entries */
+};
+
+#define n_name _n._n_name
+#define n_zeroes _n._n_n._n_zeroes
+#define n_offset _n._n_n._n_offset
+
+/* Relocatable symbols have number of the section in which they are defined,
+ or one of the following: */
+
+#define N_UNDEF ((short)0) /* undefined symbol */
+#define N_ABS ((short)-1) /* value of symbol is absolute */
+#define N_DEBUG ((short)-2) /* debugging symbol -- value is meaningless */
+#define N_TV ((short)-3) /* indicates symbol needs preload transfer vector */
+#define P_TV ((short)-4) /* indicates symbol needs postload transfer vector*/
+
+/* Type of a symbol, in low N bits of the word. */
+
+#define T_NULL 0
+#define T_VOID 1 /* function argument (only used by compiler) */
+#define T_CHAR 2 /* character */
+#define T_SHORT 3 /* short integer */
+#define T_INT 4 /* integer */
+#define T_LONG 5 /* long integer */
+#define T_FLOAT 6 /* floating point */
+#define T_DOUBLE 7 /* double word */
+#define T_STRUCT 8 /* structure */
+#define T_UNION 9 /* union */
+#define T_ENUM 10 /* enumeration */
+#define T_MOE 11 /* member of enumeration*/
+#define T_UCHAR 12 /* unsigned character */
+#define T_USHORT 13 /* unsigned short */
+#define T_UINT 14 /* unsigned integer */
+#define T_ULONG 15 /* unsigned long */
+#define T_LNGDBL 16 /* long double */
+
+/* Derived types, in n_type. */
+
+#define DT_NON (0) /* no derived type */
+#define DT_PTR (1) /* pointer */
+#define DT_FCN (2) /* function */
+#define DT_ARY (3) /* array */
+
+#define BTYPE(x) ((x) & N_BTMASK)
+#define DTYPE(x) (((x) & N_TMASK) >> N_BTSHFT)
+
+#define ISPTR(x) \
+ (((unsigned long) (x) & N_TMASK) == ((unsigned long) DT_PTR << N_BTSHFT))
+#define ISFCN(x) \
+ (((unsigned long) (x) & N_TMASK) == ((unsigned long) DT_FCN << N_BTSHFT))
+#define ISARY(x) \
+ (((unsigned long) (x) & N_TMASK) == ((unsigned long) DT_ARY << N_BTSHFT))
+#define ISTAG(x) \
+ ((x) == C_STRTAG || (x) == C_UNTAG || (x) == C_ENTAG)
+#define DECREF(x) \
+ ((((x) >> N_TSHIFT) & ~ N_BTMASK) | ((x) & N_BTMASK))
+
+union internal_auxent
+{
+ struct
+ {
+
+ union
+ {
+ long l; /* str, un, or enum tag indx */
+ struct coff_ptr_struct *p;
+ } x_tagndx;
+
+ union
+ {
+ struct
+ {
+ unsigned short x_lnno; /* declaration line number */
+ unsigned short x_size; /* str/union/array size */
+ } x_lnsz;
+ long x_fsize; /* size of function */
+ } x_misc;
+
+ union
+ {
+ struct
+ { /* if ISFCN, tag, or .bb */
+ bfd_signed_vma x_lnnoptr; /* ptr to fcn line # */
+ union
+ { /* entry ndx past block end */
+ long l;
+ struct coff_ptr_struct *p;
+ } x_endndx;
+ } x_fcn;
+
+ struct
+ { /* if ISARY, up to 4 dimen. */
+ unsigned short x_dimen[DIMNUM];
+ } x_ary;
+ } x_fcnary;
+
+ unsigned short x_tvndx; /* tv index */
+ } x_sym;
+
+ union
+ {
+ char x_fname[FILNMLEN];
+ struct
+ {
+ long x_zeroes;
+ long x_offset;
+ } x_n;
+ } x_file;
+
+ struct
+ {
+ long x_scnlen; /* section length */
+ unsigned short x_nreloc; /* # relocation entries */
+ unsigned short x_nlinno; /* # line numbers */
+ unsigned long x_checksum; /* section COMDAT checksum for PE */
+ unsigned short x_associated; /* COMDAT associated section index for PE */
+ unsigned char x_comdat; /* COMDAT selection number for PE */
+ } x_scn;
+
+ struct
+ {
+ long x_tvfill; /* tv fill value */
+ unsigned short x_tvlen; /* length of .tv */
+ unsigned short x_tvran[2]; /* tv range */
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+
+ /******************************************
+ * RS/6000-specific auxent - last auxent for every external symbol
+ ******************************************/
+ struct
+ {
+ union
+ { /* csect length or enclosing csect */
+ bfd_signed_vma l;
+ struct coff_ptr_struct *p;
+ } x_scnlen;
+ long x_parmhash; /* parm type hash index */
+ unsigned short x_snhash; /* sect num with parm hash */
+ unsigned char x_smtyp; /* symbol align and type */
+ /* 0-4 - Log 2 of alignment */
+ /* 5-7 - symbol type */
+ unsigned char x_smclas; /* storage mapping class */
+ long x_stab; /* dbx stab info index */
+ unsigned short x_snstab; /* sect num with dbx stab */
+ } x_csect; /* csect definition information */
+
+/* x_smtyp values: */
+
+#define SMTYP_ALIGN(x) ((x) >> 3) /* log2 of alignment */
+#define SMTYP_SMTYP(x) ((x) & 0x7) /* symbol type */
+/* Symbol type values: */
+#define XTY_ER 0 /* External reference */
+#define XTY_SD 1 /* Csect definition */
+#define XTY_LD 2 /* Label definition */
+#define XTY_CM 3 /* .BSS */
+#define XTY_EM 4 /* Error message */
+#define XTY_US 5 /* "Reserved for internal use" */
+
+/* x_smclas values: */
+
+#define XMC_PR 0 /* Read-only program code */
+#define XMC_RO 1 /* Read-only constant */
+#define XMC_DB 2 /* Read-only debug dictionary table */
+#define XMC_TC 3 /* Read-write general TOC entry */
+#define XMC_UA 4 /* Read-write unclassified */
+#define XMC_RW 5 /* Read-write data */
+#define XMC_GL 6 /* Read-only global linkage */
+#define XMC_XO 7 /* Read-only extended operation */
+#define XMC_SV 8 /* Read-only supervisor call */
+#define XMC_BS 9 /* Read-write BSS */
+#define XMC_DS 10 /* Read-write descriptor csect */
+#define XMC_UC 11 /* Read-write unnamed Fortran common */
+#define XMC_TI 12 /* Read-only traceback index csect */
+#define XMC_TB 13 /* Read-only traceback table csect */
+/* 14 ??? */
+#define XMC_TC0 15 /* Read-write TOC anchor */
+#define XMC_TD 16 /* Read-write data in TOC */
+
+ /******************************************
+ * I960-specific *2nd* aux. entry formats
+ ******************************************/
+ struct
+ {
+ /* This is a very old typo that keeps getting propagated. */
+#define x_stdindx x_stindx
+ long x_stindx; /* sys. table entry */
+ } x_sc; /* system call entry */
+
+ struct
+ {
+ unsigned long x_balntry; /* BAL entry point */
+ } x_bal; /* BAL-callable function */
+
+ struct
+ {
+ unsigned long x_timestamp; /* time stamp */
+ char x_idstring[20]; /* producer identity string */
+ } x_ident; /* Producer ident info */
+
+};
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct internal_reloc
+{
+ bfd_vma r_vaddr; /* Virtual address of reference */
+ long r_symndx; /* Index into symbol table */
+ unsigned short r_type; /* Relocation type */
+ unsigned char r_size; /* Used by RS/6000 and ECOFF */
+ unsigned char r_extern; /* Used by ECOFF */
+ unsigned long r_offset; /* Used by Alpha ECOFF, SPARC, others */
+};
+
+#define R_DIR16 1
+#define R_REL24 5
+#define R_DIR32 6
+#define R_IMAGEBASE 7
+#define R_SECREL32 11
+#define R_RELBYTE 15
+#define R_RELWORD 16
+#define R_RELLONG 17
+#define R_PCRBYTE 18
+#define R_PCRWORD 19
+#define R_PCRLONG 20
+#define R_PCR24 21
+#define R_IPRSHORT 24
+#define R_IPRLONG 26
+#define R_GETSEG 29
+#define R_GETPA 30
+#define R_TAGWORD 31
+#define R_JUMPTARG 32 /* strange 29k 00xx00xx reloc */
+#define R_PARTLS16 32
+#define R_PARTMS8 33
+
+#define R_PCR16L 128
+#define R_PCR26L 129
+#define R_VRT16 130
+#define R_HVRT16 131
+#define R_LVRT16 132
+#define R_VRT32 133
+
+
+/* This reloc identifies mov.b instructions with a 16bit absolute
+ address. The linker tries to turn insns with this reloc into
+ an absolute 8-bit address. */
+#define R_MOV16B1 0x41
+
+/* This reloc identifies mov.b instructions which had a 16bit
+ absolute address which have been shortened into a 8-bit
+ absolute address. */
+#define R_MOV16B2 0x42
+
+/* This reloc identifies jmp insns with a 16bit target address;
+ the linker tries to turn these insns into bra insns with
+ an 8bit pc-relative target. */
+#define R_JMP1 0x43
+
+/* This reloc identifies a bra with an 8-bit pc-relative
+ target that was formerly a jmp insn with a 16bit target. */
+#define R_JMP2 0x44
+
+/* ??? */
+#define R_RELLONG_NEG 0x45
+
+/* This reloc identifies jmp insns with a 24bit target address;
+ the linker tries to turn these insns into bra insns with
+ an 8bit pc-relative target. */
+#define R_JMPL1 0x46
+
+/* This reloc identifies a bra with an 8-bit pc-relative
+ target that was formerly a jmp insn with a 24bit target. */
+#define R_JMPL2 0x47
+
+/* This reloc identifies mov.b instructions with a 24bit absolute
+ address. The linker tries to turn insns with this reloc into
+ an absolute 8-bit address. */
+
+#define R_MOV24B1 0x48
+
+/* This reloc identifies mov.b instructions which had a 24bit
+ absolute address which have been shortened into a 8-bit
+ absolute address. */
+#define R_MOV24B2 0x49
+
+/* An h8300 memory indirect jump/call. Forces the address of the jump/call
+ target into the function vector (in page zero), and the address of the
+ vector entry to be placed in the jump/call instruction. */
+#define R_MEM_INDIRECT 0x4a
+
+/* This reloc identifies a 16bit pc-relative branch target which was
+ shortened into an 8bit pc-relative branch target. */
+#define R_PCRWORD_B 0x4b
+
+/* This reloc identifies mov.[wl] instructions with a 32/24 bit
+ absolute address; the linker may turn this into a mov.[wl]
+ insn with a 16bit absolute address. */
+#define R_MOVL1 0x4c
+
+/* This reloc identifies mov.[wl] insns which formerly had
+ a 32/24bit absolute address and now have a 16bit absolute address. */
+#define R_MOVL2 0x4d
+
+/* This reloc identifies a bCC:8 which will have it's condition
+ inverted and its target redirected to the target of the branch
+ in the following insn. */
+#define R_BCC_INV 0x4e
+
+/* This reloc identifies a jmp instruction that has been deleted. */
+#define R_JMP_DEL 0x4f
+
+/* Z8k modes */
+#define R_IMM16 0x01 /* 16 bit abs */
+#define R_JR 0x02 /* jr 8 bit disp */
+#define R_IMM4L 0x23 /* low nibble */
+#define R_IMM8 0x22 /* 8 bit abs */
+#define R_IMM32 R_RELLONG /* 32 bit abs */
+#define R_CALL R_DA /* Absolute address which could be a callr */
+#define R_JP R_DA /* Absolute address which could be a jp */
+#define R_REL16 0x04 /* 16 bit PC rel */
+#define R_CALLR 0x05 /* callr 12 bit disp */
+#define R_SEG 0x10 /* set if in segmented mode */
+#define R_IMM4H 0x24 /* high nibble */
+#define R_DISP7 0x25 /* djnz displacement */
+
+/* H8500 modes */
+
+#define R_H8500_IMM8 1 /* 8 bit immediate */
+#define R_H8500_IMM16 2 /* 16 bit immediate */
+#define R_H8500_PCREL8 3 /* 8 bit pcrel */
+#define R_H8500_PCREL16 4 /* 16 bit pcrel */
+#define R_H8500_HIGH8 5 /* high 8 bits of 24 bit address */
+#define R_H8500_LOW16 7 /* low 16 bits of 24 bit immediate */
+#define R_H8500_IMM24 6 /* 24 bit immediate */
+#define R_H8500_IMM32 8 /* 32 bit immediate */
+#define R_H8500_HIGH16 9 /* high 16 bits of 32 bit immediate */
+
+/* W65 modes */
+
+#define R_W65_ABS8 1 /* addr & 0xff */
+#define R_W65_ABS16 2 /* addr & 0xffff */
+#define R_W65_ABS24 3 /* addr & 0xffffff */
+
+#define R_W65_ABS8S8 4 /* (addr >> 8) & 0xff */
+#define R_W65_ABS8S16 5 /* (addr >> 16) & 0xff */
+
+#define R_W65_ABS16S8 6 /* (addr >> 8) & 0ffff */
+#define R_W65_ABS16S16 7 /* (addr >> 16) & 0ffff */
+
+#define R_W65_PCR8 8
+#define R_W65_PCR16 9
+
+#define R_W65_DP 10 /* direct page 8 bits only */
+
+#endif /* GNU_COFF_INTERNAL_H */
diff --git a/include/coff/m68k.h b/include/coff/m68k.h
new file mode 100644
index 000000000..5c5f758f5
--- /dev/null
+++ b/include/coff/m68k.h
@@ -0,0 +1,81 @@
+/* coff information for M68K
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef GNU_COFF_M68K_H
+#define GNU_COFF_M68K_H 1
+
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/* Motorola 68000/68008/68010/68020 */
+#define MC68MAGIC 0520
+#define MC68KWRMAGIC 0520 /* writeable text segments */
+#define MC68TVMAGIC 0521
+#define MC68KROMAGIC 0521 /* readonly shareable text segments */
+#define MC68KPGMAGIC 0522 /* demand paged text segments */
+#define M68MAGIC 0210
+#define M68TVMAGIC 0211
+
+/* This is the magic of the Bull dpx/2 */
+#define MC68KBCSMAGIC 0526
+
+/* This is Lynx's all-platform magic number for executables. */
+
+#define LYNXCOFFMAGIC 0415
+
+#define OMAGIC M68MAGIC
+
+/* This intentionally does not include MC68KBCSMAGIC; it only includes
+ magic numbers which imply that names do not have underscores. */
+#define M68KBADMAG(x) (((x).f_magic != MC68MAGIC) \
+ && ((x).f_magic != MC68KWRMAGIC) \
+ && ((x).f_magic != MC68TVMAGIC) \
+ && ((x).f_magic != MC68KROMAGIC) \
+ && ((x).f_magic != MC68KPGMAGIC) \
+ && ((x).f_magic != M68MAGIC) \
+ && ((x).f_magic != M68TVMAGIC) \
+ && ((x).f_magic != LYNXCOFFMAGIC))
+
+/* Magic numbers for the a.out header. */
+
+#define PAGEMAGICEXECSWAPPED 0407 /* executable (swapped) */
+#define PAGEMAGICPEXECSWAPPED 0410 /* pure executable (swapped) */
+#define PAGEMAGICPEXECTSHLIB 0443 /* pure executable (target shared library) */
+#define PAGEMAGICPEXECPAGED 0413 /* pure executable (paged) */
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+#ifdef M68K_COFF_OFFSET
+ char r_offset[4];
+#endif
+};
+
+#define RELOC struct external_reloc
+
+#ifdef M68K_COFF_OFFSET
+#define RELSZ 14
+#else
+#define RELSZ 10
+#endif
+
+#endif /* GNU_COFF_M68K_H */
diff --git a/include/coff/m88k.h b/include/coff/m88k.h
new file mode 100644
index 000000000..331d97c92
--- /dev/null
+++ b/include/coff/m88k.h
@@ -0,0 +1,196 @@
+/* coff information for 88k bcs
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define DO_NOT_DEFINE_SCNHDR
+#define L_LNNO_SIZE 4
+#define DO_NOT_DEFINE_SYMENT
+#define DO_NOT_DEFINE_AUXENT
+#include "coff/external.h"
+
+#define MC88MAGIC 0540 /* 88k BCS executable */
+#define MC88DMAGIC 0541 /* DG/UX executable */
+#define MC88OMAGIC 0555 /* Object file */
+
+#define MC88BADMAG(x) (((x).f_magic != MC88MAGIC) \
+ && ((x).f_magic != MC88DMAGIC) \
+ && ((x).f_magic != MC88OMAGIC))
+
+#define PAGEMAGIC3 0414 /* Split i&d, zero mapped */
+#define PAGEMAGICBCS 0413
+
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+{
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[4]; /* number of relocation entries */
+ char s_nlnno[4]; /* number of line number entries*/
+ char s_flags[4]; /* flags */
+};
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 44
+
+/* Names of "special" sections. */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _COMMENT ".comment"
+
+
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union
+ {
+ char e_name[E_SYMNMLEN];
+
+ struct
+ {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+
+ } e;
+
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+ char pad2[2];
+};
+
+#define N_BTMASK 017
+#define N_TMASK 060
+#define N_BTSHFT 4
+#define N_TSHIFT 2
+
+/* Note that this isn't the same shape as other coffs */
+union external_auxent
+{
+ struct
+ {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+ /* 4 */
+
+ union
+ {
+ char x_fsize[4]; /* size of function */
+
+ struct
+ {
+ char x_lnno[4]; /* declaration line number */
+ char x_size[4]; /* str/union/array size */
+ } x_lnsz;
+
+ } x_misc;
+
+ /* 12 */
+ union
+ {
+ struct /* if ISFCN, tag, or .bb */
+ {
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+
+ struct /* if ISARY, up to 4 dimen. */
+ {
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+
+ } x_fcnary;
+ /* 20 */
+
+ } x_sym;
+
+ union
+ {
+ char x_fname[E_FILNMLEN];
+
+ struct
+ {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+
+ } x_file;
+
+ struct
+ {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[4]; /* # relocation entries */
+ char x_nlinno[4]; /* # line numbers */
+ } x_scn;
+
+ struct
+ {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+};
+
+#define GET_LNSZ_SIZE(abfd, ext) \
+ H_GET_32 (abfd, ext->x_sym.x_misc.x_lnsz.x_size)
+#define GET_LNSZ_LNNO(abfd, ext) \
+ H_GET_32 (abfd, ext->x_sym.x_misc.x_lnsz.x_lnno)
+#define PUT_LNSZ_LNNO(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_sym.x_misc.x_lnsz.x_lnno)
+#define PUT_LNSZ_SIZE(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_sym.x_misc.x_lnsz.x_size)
+#define GET_SCN_NRELOC(abfd, ext) \
+ H_GET_32 (abfd, ext->x_scn.x_nreloc)
+#define GET_SCN_NLINNO(abfd, ext) \
+ H_GET_32 (abfd, ext->x_scn.x_nlinno)
+#define PUT_SCN_NRELOC(abfd, in, ext) \
+ H_PUT_32 (abfd, in, ext->x_scn.x_nreloc)
+#define PUT_SCN_NLINNO(abfd, in, ext) \
+ H_PUT_32 (abfd,in, ext->x_scn.x_nlinno)
+
+#define SYMENT struct external_syment
+#define SYMESZ 20
+#define AUXENT union external_auxent
+#define AUXESZ 20
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+ char r_offset[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 12
+
+#define NO_TVNDX
diff --git a/include/coff/mcore.h b/include/coff/mcore.h
new file mode 100644
index 000000000..980cf133d
--- /dev/null
+++ b/include/coff/mcore.h
@@ -0,0 +1,71 @@
+/* Motorola MCore support for BFD.
+ Copyright 1999 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MCore COFF/PE ABI. */
+
+#ifndef _COFF_MORE_H
+#define _COFF_MORE_H
+
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+#define MCOREMAGIC 0xb00 /* I just made this up */
+
+#define MCOREBADMAG(x) (((x).f_magic != MCOREMAGIC))
+
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+#define IMAGE_REL_MCORE_ABSOLUTE 0x0000
+#define IMAGE_REL_MCORE_ADDR32 0x0001
+#define IMAGE_REL_MCORE_PCREL_IMM8BY4 0x0002
+#define IMAGE_REL_MCORE_PCREL_IMM11BY2 0x0003
+#define IMAGE_REL_MCORE_PCREL_IMM4BY2 0x0004
+#define IMAGE_REL_MCORE_PCREL_32 0x0005
+#define IMAGE_REL_MCORE_PCREL_JSR_IMM11BY2 0x0006
+#define IMAGE_REL_MCORE_RVA 0x0007
+
+#define PEMCORE
+
+#define OMAGIC 0404 /* object files, eg as output */
+#define ZMAGIC 0413 /* demand load format, eg normal ld output */
+#define STMAGIC 0401 /* target shlib */
+#define SHMAGIC 0443 /* host shlib */
+
+/* From winnt.h */
+#define IMAGE_NT_OPTIONAL_HDR_MAGIC 0x10b
+
+/* Define some NT default values. */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+struct external_reloc
+{
+ char r_vaddr [4];
+ char r_symndx [4];
+ char r_type [2];
+ char r_offset [4];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 14
+
+#endif /* __COFF_MCORE_H */
diff --git a/include/coff/mips.h b/include/coff/mips.h
new file mode 100644
index 000000000..bec8da2d3
--- /dev/null
+++ b/include/coff/mips.h
@@ -0,0 +1,343 @@
+/* ECOFF support on MIPS machines.
+ coff/ecoff.h must be included before this file.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define DO_NOT_DEFINE_AOUTHDR
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+/* Magic numbers are defined in coff/ecoff.h. */
+#define MIPS_ECOFF_BADMAG(x) (((x).f_magic!=MIPS_MAGIC_1) && \
+ ((x).f_magic!=MIPS_MAGIC_LITTLE) &&\
+ ((x).f_magic!=MIPS_MAGIC_BIG) && \
+ ((x).f_magic!=MIPS_MAGIC_LITTLE2) && \
+ ((x).f_magic!=MIPS_MAGIC_BIG2) && \
+ ((x).f_magic!=MIPS_MAGIC_LITTLE3) && \
+ ((x).f_magic!=MIPS_MAGIC_BIG3))
+
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct external_aouthdr
+{
+ unsigned char magic[2]; /* type of file */
+ unsigned char vstamp[2]; /* version stamp */
+ unsigned char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ unsigned char dsize[4]; /* initialized data " " */
+ unsigned char bsize[4]; /* uninitialized data " " */
+ unsigned char entry[4]; /* entry pt. */
+ unsigned char text_start[4]; /* base of text used for this file */
+ unsigned char data_start[4]; /* base of data used for this file */
+ unsigned char bss_start[4]; /* base of bss used for this file */
+ unsigned char gprmask[4]; /* ?? */
+ unsigned char cprmask[4][4]; /* ?? */
+ unsigned char gp_value[4]; /* value for gp register */
+} AOUTHDR;
+
+/* compute size of a header */
+
+#define AOUTSZ 56
+#define AOUTHDRSZ 56
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+ {
+ unsigned char r_vaddr[4];
+ unsigned char r_bits[4];
+ };
+
+#define RELOC struct external_reloc
+#define RELSZ 8
+
+/* MIPS ECOFF uses a packed 8 byte format for relocs. These constants
+ are used to unpack the r_bits field. */
+
+#define RELOC_BITS0_SYMNDX_SH_LEFT_BIG 16
+#define RELOC_BITS0_SYMNDX_SH_LEFT_LITTLE 0
+
+#define RELOC_BITS1_SYMNDX_SH_LEFT_BIG 8
+#define RELOC_BITS1_SYMNDX_SH_LEFT_LITTLE 8
+
+#define RELOC_BITS2_SYMNDX_SH_LEFT_BIG 0
+#define RELOC_BITS2_SYMNDX_SH_LEFT_LITTLE 16
+
+/* Originally, ECOFF used four bits for the reloc type and had three
+ reserved bits. Irix 4 added another bit for the reloc type, which
+ was easy because it was big endian and one of the spare bits became
+ the new most significant bit. To make this also work for little
+ endian ECOFF, we need to wrap one of the reserved bits around to
+ become the most significant bit of the reloc type. */
+#define RELOC_BITS3_TYPE_BIG 0x3E
+#define RELOC_BITS3_TYPE_SH_BIG 1
+#define RELOC_BITS3_TYPE_LITTLE 0x78
+#define RELOC_BITS3_TYPE_SH_LITTLE 3
+#define RELOC_BITS3_TYPEHI_LITTLE 0x04
+#define RELOC_BITS3_TYPEHI_SH_LITTLE 2
+
+#define RELOC_BITS3_EXTERN_BIG 0x01
+#define RELOC_BITS3_EXTERN_LITTLE 0x80
+
+/* The r_type field in a reloc is one of the following values. I
+ don't know if any other values can appear. These seem to be all
+ that occur in the Ultrix 4.2 libraries. */
+#define MIPS_R_IGNORE 0
+#define MIPS_R_REFHALF 1
+#define MIPS_R_REFWORD 2
+#define MIPS_R_JMPADDR 3
+#define MIPS_R_REFHI 4
+#define MIPS_R_REFLO 5
+#define MIPS_R_GPREL 6
+#define MIPS_R_LITERAL 7
+
+/* FIXME: This relocation is used (internally only) to represent branches
+ when assembling. It should never appear in output files, and
+ be removed. (It used to be used for embedded-PIC support.) */
+#define MIPS_R_PCREL16 12
+
+/********************** STABS **********************/
+
+#define MIPS_IS_STAB ECOFF_IS_STAB
+#define MIPS_MARK_STAB ECOFF_MARK_STAB
+#define MIPS_UNMARK_STAB ECOFF_UNMARK_STAB
+
+/********************** SYMBOLIC INFORMATION **********************/
+
+/* Written by John Gilmore. */
+
+/* ECOFF uses COFF-like section structures, but its own symbol format.
+ This file defines the symbol format in fields whose size and alignment
+ will not vary on different host systems. */
+
+/* File header as a set of bytes */
+
+struct hdr_ext
+{
+ unsigned char h_magic[2];
+ unsigned char h_vstamp[2];
+ unsigned char h_ilineMax[4];
+ unsigned char h_cbLine[4];
+ unsigned char h_cbLineOffset[4];
+ unsigned char h_idnMax[4];
+ unsigned char h_cbDnOffset[4];
+ unsigned char h_ipdMax[4];
+ unsigned char h_cbPdOffset[4];
+ unsigned char h_isymMax[4];
+ unsigned char h_cbSymOffset[4];
+ unsigned char h_ioptMax[4];
+ unsigned char h_cbOptOffset[4];
+ unsigned char h_iauxMax[4];
+ unsigned char h_cbAuxOffset[4];
+ unsigned char h_issMax[4];
+ unsigned char h_cbSsOffset[4];
+ unsigned char h_issExtMax[4];
+ unsigned char h_cbSsExtOffset[4];
+ unsigned char h_ifdMax[4];
+ unsigned char h_cbFdOffset[4];
+ unsigned char h_crfd[4];
+ unsigned char h_cbRfdOffset[4];
+ unsigned char h_iextMax[4];
+ unsigned char h_cbExtOffset[4];
+};
+
+/* File descriptor external record */
+
+struct fdr_ext
+{
+ unsigned char f_adr[4];
+ unsigned char f_rss[4];
+ unsigned char f_issBase[4];
+ unsigned char f_cbSs[4];
+ unsigned char f_isymBase[4];
+ unsigned char f_csym[4];
+ unsigned char f_ilineBase[4];
+ unsigned char f_cline[4];
+ unsigned char f_ioptBase[4];
+ unsigned char f_copt[4];
+ unsigned char f_ipdFirst[2];
+ unsigned char f_cpd[2];
+ unsigned char f_iauxBase[4];
+ unsigned char f_caux[4];
+ unsigned char f_rfdBase[4];
+ unsigned char f_crfd[4];
+ unsigned char f_bits1[1];
+ unsigned char f_bits2[3];
+ unsigned char f_cbLineOffset[4];
+ unsigned char f_cbLine[4];
+};
+
+#define FDR_BITS1_LANG_BIG 0xF8
+#define FDR_BITS1_LANG_SH_BIG 3
+#define FDR_BITS1_LANG_LITTLE 0x1F
+#define FDR_BITS1_LANG_SH_LITTLE 0
+
+#define FDR_BITS1_FMERGE_BIG 0x04
+#define FDR_BITS1_FMERGE_LITTLE 0x20
+
+#define FDR_BITS1_FREADIN_BIG 0x02
+#define FDR_BITS1_FREADIN_LITTLE 0x40
+
+#define FDR_BITS1_FBIGENDIAN_BIG 0x01
+#define FDR_BITS1_FBIGENDIAN_LITTLE 0x80
+
+#define FDR_BITS2_GLEVEL_BIG 0xC0
+#define FDR_BITS2_GLEVEL_SH_BIG 6
+#define FDR_BITS2_GLEVEL_LITTLE 0x03
+#define FDR_BITS2_GLEVEL_SH_LITTLE 0
+
+/* We ignore the `reserved' field in bits2. */
+
+/* Procedure descriptor external record */
+
+struct pdr_ext
+{
+ unsigned char p_adr[4];
+ unsigned char p_isym[4];
+ unsigned char p_iline[4];
+ unsigned char p_regmask[4];
+ unsigned char p_regoffset[4];
+ unsigned char p_iopt[4];
+ unsigned char p_fregmask[4];
+ unsigned char p_fregoffset[4];
+ unsigned char p_frameoffset[4];
+ unsigned char p_framereg[2];
+ unsigned char p_pcreg[2];
+ unsigned char p_lnLow[4];
+ unsigned char p_lnHigh[4];
+ unsigned char p_cbLineOffset[4];
+};
+
+/* Runtime procedure table */
+
+struct rpdr_ext
+{
+ unsigned char p_adr[4];
+ unsigned char p_regmask[4];
+ unsigned char p_regoffset[4];
+ unsigned char p_fregmask[4];
+ unsigned char p_fregoffset[4];
+ unsigned char p_frameoffset[4];
+ unsigned char p_framereg[2];
+ unsigned char p_pcreg[2];
+ unsigned char p_irpss[4];
+ unsigned char p_reserved[4];
+ unsigned char p_exception_info[4];
+};
+
+/* Line numbers */
+
+struct line_ext
+{
+ unsigned char l_line[4];
+};
+
+/* Symbol external record */
+
+struct sym_ext
+{
+ unsigned char s_iss[4];
+ unsigned char s_value[4];
+ unsigned char s_bits1[1];
+ unsigned char s_bits2[1];
+ unsigned char s_bits3[1];
+ unsigned char s_bits4[1];
+};
+
+#define SYM_BITS1_ST_BIG 0xFC
+#define SYM_BITS1_ST_SH_BIG 2
+#define SYM_BITS1_ST_LITTLE 0x3F
+#define SYM_BITS1_ST_SH_LITTLE 0
+
+#define SYM_BITS1_SC_BIG 0x03
+#define SYM_BITS1_SC_SH_LEFT_BIG 3
+#define SYM_BITS1_SC_LITTLE 0xC0
+#define SYM_BITS1_SC_SH_LITTLE 6
+
+#define SYM_BITS2_SC_BIG 0xE0
+#define SYM_BITS2_SC_SH_BIG 5
+#define SYM_BITS2_SC_LITTLE 0x07
+#define SYM_BITS2_SC_SH_LEFT_LITTLE 2
+
+#define SYM_BITS2_RESERVED_BIG 0x10
+#define SYM_BITS2_RESERVED_LITTLE 0x08
+
+#define SYM_BITS2_INDEX_BIG 0x0F
+#define SYM_BITS2_INDEX_SH_LEFT_BIG 16
+#define SYM_BITS2_INDEX_LITTLE 0xF0
+#define SYM_BITS2_INDEX_SH_LITTLE 4
+
+#define SYM_BITS3_INDEX_SH_LEFT_BIG 8
+#define SYM_BITS3_INDEX_SH_LEFT_LITTLE 4
+
+#define SYM_BITS4_INDEX_SH_LEFT_BIG 0
+#define SYM_BITS4_INDEX_SH_LEFT_LITTLE 12
+
+/* External symbol external record */
+
+struct ext_ext
+{
+ unsigned char es_bits1[1];
+ unsigned char es_bits2[1];
+ unsigned char es_ifd[2];
+ struct sym_ext es_asym;
+};
+
+#define EXT_BITS1_JMPTBL_BIG 0x80
+#define EXT_BITS1_JMPTBL_LITTLE 0x01
+
+#define EXT_BITS1_COBOL_MAIN_BIG 0x40
+#define EXT_BITS1_COBOL_MAIN_LITTLE 0x02
+
+#define EXT_BITS1_WEAKEXT_BIG 0x20
+#define EXT_BITS1_WEAKEXT_LITTLE 0x04
+
+/* Dense numbers external record */
+
+struct dnr_ext
+{
+ unsigned char d_rfd[4];
+ unsigned char d_index[4];
+};
+
+/* Relative file descriptor */
+
+struct rfd_ext
+{
+ unsigned char rfd[4];
+};
+
+/* Optimizer symbol external record */
+
+struct opt_ext
+{
+ unsigned char o_bits1[1];
+ unsigned char o_bits2[1];
+ unsigned char o_bits3[1];
+ unsigned char o_bits4[1];
+ struct rndx_ext o_rndx;
+ unsigned char o_offset[4];
+};
+
+#define OPT_BITS2_VALUE_SH_LEFT_BIG 16
+#define OPT_BITS2_VALUE_SH_LEFT_LITTLE 0
+
+#define OPT_BITS3_VALUE_SH_LEFT_BIG 8
+#define OPT_BITS3_VALUE_SH_LEFT_LITTLE 8
+
+#define OPT_BITS4_VALUE_SH_LEFT_BIG 0
+#define OPT_BITS4_VALUE_SH_LEFT_LITTLE 16
diff --git a/include/coff/mipspe.h b/include/coff/mipspe.h
new file mode 100644
index 000000000..9b4ffab70
--- /dev/null
+++ b/include/coff/mipspe.h
@@ -0,0 +1,66 @@
+/* coff information for Windows CE with MIPS VR4111
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 2
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+#define MIPS_ARCH_MAGIC_WINCE 0x0166 /* Windows CE - little endian */
+#define MIPS_PE_MAGIC 0x010b
+
+#define MIPSBADMAG(x) ((x).f_magic != MIPS_ARCH_MAGIC_WINCE)
+
+/* define some NT default values */
+/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the h8 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes. */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
+/* MIPS PE relocation types. */
+
+#define MIPS_R_ABSOLUTE 0 /* ignored */
+#define MIPS_R_REFHALF 1
+#define MIPS_R_REFWORD 2
+#define MIPS_R_JMPADDR 3
+#define MIPS_R_REFHI 4 /* PAIR follows */
+#define MIPS_R_REFLO 5
+#define MIPS_R_GPREL 6
+#define MIPS_R_LITERAL 7 /* same as GPREL */
+#define MIPS_R_SECTION 10
+#define MIPS_R_SECREL 11
+#define MIPS_R_SECRELLO 12
+#define MIPS_R_SECRELHI 13 /* PAIR follows */
+#define MIPS_R_RVA 34 /* 0x22 */
+#define MIPS_R_PAIR 37 /* 0x25 - symndx is really a signed 16-bit addend */
diff --git a/include/coff/or32.h b/include/coff/or32.h
new file mode 100644
index 000000000..c2797aa90
--- /dev/null
+++ b/include/coff/or32.h
@@ -0,0 +1,287 @@
+/* COFF specification for OpenRISC 1000.
+ Copyright (C) 1993-2000, 2002 Free Software Foundation, Inc.
+ Contributed by David Wood @ New York University.
+ Modified by Johan Rydberg, <johan.rydberg@netinsight.se>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef OR32
+# define OR32
+#endif
+
+/* File Header and related definitions. */
+struct external_filehdr
+{
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+};
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 20
+
+/* Magic numbers for OpenRISC 1000. As it is know we use the
+ numbers for Am29000.
+
+ (AT&T will assign the "real" magic number). */
+#define SIPFBOMAGIC 0572 /* Am29000 (Byte 0 is MSB). */
+#define SIPRBOMAGIC 0573 /* Am29000 (Byte 0 is LSB). */
+
+#define OR32_MAGIC_BIG SIPFBOMAGIC
+#define OR32_MAGIC_LITTLE SIPRBOMAGIC
+#define OR32BADMAG(x) (((x).f_magic!=OR32_MAGIC_BIG) && \
+ ((x).f_magic!=OR32_MAGIC_LITTLE))
+
+#define OMAGIC OR32_MAGIC_BIG
+
+/* Optional (a.out) header. */
+typedef struct external_aouthdr
+{
+ char magic[2]; /* type of file */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry */
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+ char data_start[4]; /* base of data used for this file */
+} AOUTHDR;
+
+#define AOUTSZ 28
+#define AOUTHDRSZ 28
+
+/* aouthdr magic numbers. */
+#define NMAGIC 0410 /* separate i/d executable. */
+#define SHMAGIC 0406 /* NYU/Ultra3 shared data executable
+ (writable text). */
+
+#define _ETEXT "_etext"
+
+/* Section header and related definitions. */
+struct external_scnhdr
+{
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries */
+ char s_flags[4]; /* flags */
+};
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 40
+
+/* Names of "special" sections: */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _LIT ".lit"
+
+/* Section types - with additional section type for global
+ registers which will be relocatable for the OpenRISC 1000.
+
+ In instances where it is necessary for a linker to produce an
+ output file which contains text or data not based at virtual
+ address 0, e.g. for a ROM, then the linker should accept
+ address base information as command input and use PAD sections
+ to skip over unused addresses. */
+#define STYP_BSSREG 0x1200 /* Global register area (like STYP_INFO) */
+#define STYP_ENVIR 0x2200 /* Environment (like STYP_INFO) */
+#define STYP_ABS 0x4000 /* Absolute (allocated, not reloc, loaded) */
+
+/* Relocation information declaration and related definitions: */
+struct external_reloc
+{
+ char r_vaddr[4]; /* (virtual) address of reference */
+ char r_symndx[4]; /* index into symbol table */
+ char r_type[2]; /* relocation type */
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10 /* sizeof (RELOC) */
+
+/* Relocation types for the OpenRISC 1000: */
+
+#define R_ABS 0 /* reference is absolute */
+#define R_IREL 030 /* instruction relative (jmp/call) */
+#define R_IABS 031 /* instruction absolute (jmp/call) */
+#define R_ILOHALF 032 /* instruction low half (const) */
+#define R_IHIHALF 033 /* instruction high half (consth) part 1 */
+#define R_IHCONST 034 /* instruction high half (consth) part 2 */
+ /* constant offset of R_IHIHALF relocation */
+#define R_BYTE 035 /* relocatable byte value */
+#define R_HWORD 036 /* relocatable halfword value */
+#define R_WORD 037 /* relocatable word value */
+
+#define R_IGLBLRC 040 /* instruction global register RC */
+#define R_IGLBLRA 041 /* instruction global register RA */
+#define R_IGLBLRB 042 /* instruction global register RB */
+
+/*
+ NOTE:
+ All the "I" forms refer to 29000 instruction formats. The linker is
+ expected to know how the numeric information is split and/or aligned
+ within the instruction word(s). R_BYTE works for instructions, too.
+
+ If the parameter to a CONSTH instruction is a relocatable type, two
+ relocation records are written. The first has an r_type of R_IHIHALF
+ (33 octal) and a normal r_vaddr and r_symndx. The second relocation
+ record has an r_type of R_IHCONST (34 octal), a normal r_vaddr (which
+ is redundant), and an r_symndx containing the 32-bit constant offset
+ to the relocation instead of the actual symbol table index. This
+ second record is always written, even if the constant offset is zero.
+ The constant fields of the instruction are set to zero. */
+
+/* Line number entry declaration and related definitions: */
+struct external_lineno
+{
+ union
+ {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[4]; /* (physical) address of line number */
+ }
+ l_addr;
+
+ char l_lnno[2]; /* line number */
+};
+
+#define LINENO struct external_lineno
+#define LINESZ 6 /* sizeof (LINENO) */
+
+/* Symbol entry declaration and related definitions: */
+#define E_SYMNMLEN 8 /* Number of characters in a symbol name */
+
+struct external_syment
+{
+ union
+ {
+ char e_name[E_SYMNMLEN];
+ struct
+ {
+ char e_zeroes[4];
+ char e_offset[4];
+ }
+ e;
+ }
+ e;
+
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 18
+
+/* Storage class definitions - new classes for global registers: */
+#define C_GLBLREG 19 /* global register */
+#define C_EXTREG 20 /* external global register */
+#define C_DEFREG 21 /* ext. def. of global register */
+
+/* Derived symbol mask/shifts: */
+#define N_BTMASK (0xf)
+#define N_BTSHFT (4)
+#define N_TMASK (0x30)
+#define N_TSHIFT (2)
+
+/* Auxiliary symbol table entry declaration and related
+ definitions. */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+union external_auxent
+{
+ struct
+ {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+ union
+ {
+ struct
+ {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ }
+ x_lnsz;
+
+ char x_fsize[4]; /* size of function */
+ }
+ x_misc;
+
+ union
+ {
+ struct /* if ISFCN, tag, or .bb */
+ {
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ }
+ x_fcn;
+
+ struct /* if ISARY, up to 4 dimen. */
+ {
+ char x_dimen[E_DIMNUM][2];
+ }
+ x_ary;
+ }
+ x_fcnary;
+
+ char x_tvndx[2]; /* tv index */
+ }
+ x_sym;
+
+ union
+ {
+ char x_fname[E_FILNMLEN];
+
+ struct
+ {
+ char x_zeroes[4];
+ char x_offset[4];
+ }
+ x_n;
+ }
+ x_file;
+
+ struct
+ {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+ }
+ x_scn;
+
+ struct
+ {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ }
+ x_tv; /* info about .tv section
+ (in auxent of symbol .tv)) */
+};
+
+#define AUXENT union external_auxent
+#define AUXESZ 18
diff --git a/include/coff/pe.h b/include/coff/pe.h
new file mode 100644
index 000000000..363d30737
--- /dev/null
+++ b/include/coff/pe.h
@@ -0,0 +1,313 @@
+/* pe.h - PE COFF header information
+
+ Copyright 2000, 2001, 2003 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+#ifndef _PE_H
+#define _PE_H
+
+/* NT specific file attributes. */
+#define IMAGE_FILE_RELOCS_STRIPPED 0x0001
+#define IMAGE_FILE_EXECUTABLE_IMAGE 0x0002
+#define IMAGE_FILE_LINE_NUMS_STRIPPED 0x0004
+#define IMAGE_FILE_LOCAL_SYMS_STRIPPED 0x0008
+#define IMAGE_FILE_AGGRESSIVE_WS_TRIM 0x0010
+#define IMAGE_FILE_LARGE_ADDRESS_AWARE 0x0020
+#define IMAGE_FILE_16BIT_MACHINE 0x0040
+#define IMAGE_FILE_BYTES_REVERSED_LO 0x0080
+#define IMAGE_FILE_32BIT_MACHINE 0x0100
+#define IMAGE_FILE_DEBUG_STRIPPED 0x0200
+#define IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP 0x0400
+#define IMAGE_FILE_NET_RUN_FROM_SWAP 0x0800
+#define IMAGE_FILE_SYSTEM 0x1000
+#define IMAGE_FILE_DLL 0x2000
+#define IMAGE_FILE_UP_SYSTEM_ONLY 0x4000
+#define IMAGE_FILE_BYTES_REVERSED_HI 0x8000
+
+/* Additional flags to be set for section headers to allow the NT loader to
+ read and write to the section data (to replace the addresses of data in
+ dlls for one thing); also to execute the section in .text's case. */
+#define IMAGE_SCN_MEM_DISCARDABLE 0x02000000
+#define IMAGE_SCN_MEM_EXECUTE 0x20000000
+#define IMAGE_SCN_MEM_READ 0x40000000
+#define IMAGE_SCN_MEM_WRITE 0x80000000
+
+/* Section characteristics added for ppc-nt. */
+
+#define IMAGE_SCN_TYPE_NO_PAD 0x00000008 /* Reserved. */
+
+#define IMAGE_SCN_CNT_CODE 0x00000020 /* Section contains code. */
+#define IMAGE_SCN_CNT_INITIALIZED_DATA 0x00000040 /* Section contains initialized data. */
+#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 /* Section contains uninitialized data. */
+
+#define IMAGE_SCN_LNK_OTHER 0x00000100 /* Reserved. */
+#define IMAGE_SCN_LNK_INFO 0x00000200 /* Section contains comments or some other type of information. */
+#define IMAGE_SCN_LNK_REMOVE 0x00000800 /* Section contents will not become part of image. */
+#define IMAGE_SCN_LNK_COMDAT 0x00001000 /* Section contents comdat. */
+
+#define IMAGE_SCN_MEM_FARDATA 0x00008000
+
+#define IMAGE_SCN_MEM_PURGEABLE 0x00020000
+#define IMAGE_SCN_MEM_16BIT 0x00020000
+#define IMAGE_SCN_MEM_LOCKED 0x00040000
+#define IMAGE_SCN_MEM_PRELOAD 0x00080000
+
+#define IMAGE_SCN_ALIGN_1BYTES 0x00100000
+#define IMAGE_SCN_ALIGN_2BYTES 0x00200000
+#define IMAGE_SCN_ALIGN_4BYTES 0x00300000
+#define IMAGE_SCN_ALIGN_8BYTES 0x00400000
+#define IMAGE_SCN_ALIGN_16BYTES 0x00500000 /* Default alignment if no others are specified. */
+#define IMAGE_SCN_ALIGN_32BYTES 0x00600000
+#define IMAGE_SCN_ALIGN_64BYTES 0x00700000
+
+#define IMAGE_SCN_LNK_NRELOC_OVFL 0x01000000 /* Section contains extended relocations. */
+#define IMAGE_SCN_MEM_NOT_CACHED 0x04000000 /* Section is not cachable. */
+#define IMAGE_SCN_MEM_NOT_PAGED 0x08000000 /* Section is not pageable. */
+#define IMAGE_SCN_MEM_SHARED 0x10000000 /* Section is shareable. */
+
+/* COMDAT selection codes. */
+
+#define IMAGE_COMDAT_SELECT_NODUPLICATES (1) /* Warn if duplicates. */
+#define IMAGE_COMDAT_SELECT_ANY (2) /* No warning. */
+#define IMAGE_COMDAT_SELECT_SAME_SIZE (3) /* Warn if different size. */
+#define IMAGE_COMDAT_SELECT_EXACT_MATCH (4) /* Warn if different. */
+#define IMAGE_COMDAT_SELECT_ASSOCIATIVE (5) /* Base on other section. */
+
+/* Machine numbers. */
+
+#define IMAGE_FILE_MACHINE_UNKNOWN 0x0000
+#define IMAGE_FILE_MACHINE_ALPHA 0x0184
+#define IMAGE_FILE_MACHINE_ALPHA64 0x0284
+#define IMAGE_FILE_MACHINE_AM33 0x01d3
+#define IMAGE_FILE_MACHINE_AMD64 0x8664
+#define IMAGE_FILE_MACHINE_ARM 0x01c0
+#define IMAGE_FILE_MACHINE_AXP64 IMAGE_FILE_MACHINE_ALPHA64
+#define IMAGE_FILE_MACHINE_CEE 0xc0ee
+#define IMAGE_FILE_MACHINE_CEF 0x0cef
+#define IMAGE_FILE_MACHINE_EBC 0x0ebc
+#define IMAGE_FILE_MACHINE_I386 0x014c
+#define IMAGE_FILE_MACHINE_IA64 0x0200
+#define IMAGE_FILE_MACHINE_M32R 0x9041
+#define IMAGE_FILE_MACHINE_M68K 0x0268
+#define IMAGE_FILE_MACHINE_MIPS16 0x0266
+#define IMAGE_FILE_MACHINE_MIPSFPU 0x0366
+#define IMAGE_FILE_MACHINE_MIPSFPU16 0x0466
+#define IMAGE_FILE_MACHINE_POWERPC 0x01f0
+#define IMAGE_FILE_MACHINE_POWERPCFP 0x01f1
+#define IMAGE_FILE_MACHINE_R10000 0x0168
+#define IMAGE_FILE_MACHINE_R3000 0x0162
+#define IMAGE_FILE_MACHINE_R4000 0x0166
+#define IMAGE_FILE_MACHINE_SH3 0x01a2
+#define IMAGE_FILE_MACHINE_SH3DSP 0x01a3
+#define IMAGE_FILE_MACHINE_SH3E 0x01a4
+#define IMAGE_FILE_MACHINE_SH4 0x01a6
+#define IMAGE_FILE_MACHINE_SH5 0x01a8
+#define IMAGE_FILE_MACHINE_THUMB 0x01c2
+#define IMAGE_FILE_MACHINE_TRICORE 0x0520
+#define IMAGE_FILE_MACHINE_WCEMIPSV2 0x0169
+
+#define IMAGE_SUBSYSTEM_UNKNOWN 0
+#define IMAGE_SUBSYSTEM_NATIVE 1
+#define IMAGE_SUBSYSTEM_WINDOWS_GUI 2
+#define IMAGE_SUBSYSTEM_WINDOWS_CUI 3
+#define IMAGE_SUBSYSTEM_POSIX_CUI 7
+#define IMAGE_SUBSYSTEM_WINDOWS_CE_GUI 9
+#define IMAGE_SUBSYSTEM_EFI_APPLICATION 10
+#define IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER 11
+#define IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12
+
+/* Magic values that are true for all dos/nt implementations. */
+#define DOSMAGIC 0x5a4d
+#define NT_SIGNATURE 0x00004550
+
+/* NT allows long filenames, we want to accommodate this.
+ This may break some of the bfd functions. */
+#undef FILNMLEN
+#define FILNMLEN 18 /* # characters in a file name. */
+
+struct external_PEI_DOS_hdr
+{
+ /* DOS header fields - always at offset zero in the EXE file. */
+ char e_magic[2]; /* Magic number, 0x5a4d. */
+ char e_cblp[2]; /* Bytes on last page of file, 0x90. */
+ char e_cp[2]; /* Pages in file, 0x3. */
+ char e_crlc[2]; /* Relocations, 0x0. */
+ char e_cparhdr[2]; /* Size of header in paragraphs, 0x4. */
+ char e_minalloc[2]; /* Minimum extra paragraphs needed, 0x0. */
+ char e_maxalloc[2]; /* Maximum extra paragraphs needed, 0xFFFF. */
+ char e_ss[2]; /* Initial (relative) SS value, 0x0. */
+ char e_sp[2]; /* Initial SP value, 0xb8. */
+ char e_csum[2]; /* Checksum, 0x0. */
+ char e_ip[2]; /* Initial IP value, 0x0. */
+ char e_cs[2]; /* Initial (relative) CS value, 0x0. */
+ char e_lfarlc[2]; /* File address of relocation table, 0x40. */
+ char e_ovno[2]; /* Overlay number, 0x0. */
+ char e_res[4][2]; /* Reserved words, all 0x0. */
+ char e_oemid[2]; /* OEM identifier (for e_oeminfo), 0x0. */
+ char e_oeminfo[2]; /* OEM information; e_oemid specific, 0x0. */
+ char e_res2[10][2]; /* Reserved words, all 0x0. */
+ char e_lfanew[4]; /* File address of new exe header, usually 0x80. */
+ char dos_message[16][4]; /* Other stuff, always follow DOS header. */
+};
+
+struct external_PEI_IMAGE_hdr
+{
+ char nt_signature[4]; /* required NT signature, 0x4550. */
+
+ /* From standard header. */
+ char f_magic[2]; /* Magic number. */
+ char f_nscns[2]; /* Number of sections. */
+ char f_timdat[4]; /* Time & date stamp. */
+ char f_symptr[4]; /* File pointer to symtab. */
+ char f_nsyms[4]; /* Number of symtab entries. */
+ char f_opthdr[2]; /* Sizeof(optional hdr). */
+ char f_flags[2]; /* Flags. */
+};
+
+struct external_PEI_filehdr
+{
+ /* DOS header fields - always at offset zero in the EXE file. */
+ char e_magic[2]; /* Magic number, 0x5a4d. */
+ char e_cblp[2]; /* Bytes on last page of file, 0x90. */
+ char e_cp[2]; /* Pages in file, 0x3. */
+ char e_crlc[2]; /* Relocations, 0x0. */
+ char e_cparhdr[2]; /* Size of header in paragraphs, 0x4. */
+ char e_minalloc[2]; /* Minimum extra paragraphs needed, 0x0. */
+ char e_maxalloc[2]; /* Maximum extra paragraphs needed, 0xFFFF. */
+ char e_ss[2]; /* Initial (relative) SS value, 0x0. */
+ char e_sp[2]; /* Initial SP value, 0xb8. */
+ char e_csum[2]; /* Checksum, 0x0. */
+ char e_ip[2]; /* Initial IP value, 0x0. */
+ char e_cs[2]; /* Initial (relative) CS value, 0x0. */
+ char e_lfarlc[2]; /* File address of relocation table, 0x40. */
+ char e_ovno[2]; /* Overlay number, 0x0. */
+ char e_res[4][2]; /* Reserved words, all 0x0. */
+ char e_oemid[2]; /* OEM identifier (for e_oeminfo), 0x0. */
+ char e_oeminfo[2]; /* OEM information; e_oemid specific, 0x0. */
+ char e_res2[10][2]; /* Reserved words, all 0x0. */
+ char e_lfanew[4]; /* File address of new exe header, usually 0x80. */
+ char dos_message[16][4]; /* Other stuff, always follow DOS header. */
+
+ /* Note: additional bytes may be inserted before the signature. Use
+ the e_lfanew field to find the actual location of the NT signature. */
+
+ char nt_signature[4]; /* required NT signature, 0x4550. */
+
+ /* From standard header. */
+ char f_magic[2]; /* Magic number. */
+ char f_nscns[2]; /* Number of sections. */
+ char f_timdat[4]; /* Time & date stamp. */
+ char f_symptr[4]; /* File pointer to symtab. */
+ char f_nsyms[4]; /* Number of symtab entries. */
+ char f_opthdr[2]; /* Sizeof(optional hdr). */
+ char f_flags[2]; /* Flags. */
+};
+
+#ifdef COFF_IMAGE_WITH_PE
+
+/* The filehdr is only weird in images. */
+
+#undef FILHDR
+#define FILHDR struct external_PEI_filehdr
+#undef FILHSZ
+#define FILHSZ 152
+
+#endif /* COFF_IMAGE_WITH_PE */
+
+/* 32-bit PE a.out header: */
+
+typedef struct
+{
+ AOUTHDR standard;
+
+ /* NT extra fields; see internal.h for descriptions. */
+ char ImageBase[4];
+ char SectionAlignment[4];
+ char FileAlignment[4];
+ char MajorOperatingSystemVersion[2];
+ char MinorOperatingSystemVersion[2];
+ char MajorImageVersion[2];
+ char MinorImageVersion[2];
+ char MajorSubsystemVersion[2];
+ char MinorSubsystemVersion[2];
+ char Reserved1[4];
+ char SizeOfImage[4];
+ char SizeOfHeaders[4];
+ char CheckSum[4];
+ char Subsystem[2];
+ char DllCharacteristics[2];
+ char SizeOfStackReserve[4];
+ char SizeOfStackCommit[4];
+ char SizeOfHeapReserve[4];
+ char SizeOfHeapCommit[4];
+ char LoaderFlags[4];
+ char NumberOfRvaAndSizes[4];
+ /* IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; */
+ char DataDirectory[16][2][4]; /* 16 entries, 2 elements/entry, 4 chars. */
+} PEAOUTHDR;
+#undef AOUTSZ
+#define AOUTSZ (AOUTHDRSZ + 196)
+
+/* Like PEAOUTHDR, except that the "standard" member has no BaseOfData
+ (aka data_start) member and that some of the members are 8 instead
+ of just 4 bytes long. */
+typedef struct
+{
+ AOUTHDR standard;
+
+ /* NT extra fields; see internal.h for descriptions. */
+ char ImageBase[8];
+ char SectionAlignment[4];
+ char FileAlignment[4];
+ char MajorOperatingSystemVersion[2];
+ char MinorOperatingSystemVersion[2];
+ char MajorImageVersion[2];
+ char MinorImageVersion[2];
+ char MajorSubsystemVersion[2];
+ char MinorSubsystemVersion[2];
+ char Reserved1[4];
+ char SizeOfImage[4];
+ char SizeOfHeaders[4];
+ char CheckSum[4];
+ char Subsystem[2];
+ char DllCharacteristics[2];
+ char SizeOfStackReserve[8];
+ char SizeOfStackCommit[8];
+ char SizeOfHeapReserve[8];
+ char SizeOfHeapCommit[8];
+ char LoaderFlags[4];
+ char NumberOfRvaAndSizes[4];
+ /* IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; */
+ char DataDirectory[16][2][4]; /* 16 entries, 2 elements/entry, 4 chars. */
+} PEPAOUTHDR;
+#define PEPAOUTSZ 240
+
+#undef E_FILNMLEN
+#define E_FILNMLEN 18 /* # characters in a file name. */
+
+/* Import Tyoes fot ILF format object files.. */
+#define IMPORT_CODE 0
+#define IMPORT_DATA 1
+#define IMPORT_CONST 2
+
+/* Import Name Tyoes for ILF format object files. */
+#define IMPORT_ORDINAL 0
+#define IMPORT_NAME 1
+#define IMPORT_NAME_NOPREFIX 2
+#define IMPORT_NAME_UNDECORATE 3
+
+#endif /* _PE_H */
diff --git a/include/coff/powerpc.h b/include/coff/powerpc.h
new file mode 100644
index 000000000..1d4d6fb05
--- /dev/null
+++ b/include/coff/powerpc.h
@@ -0,0 +1,58 @@
+/* Basic coff information for the PowerPC
+ Based on coff/rs6000.h, coff/i386.h and others.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ Initial release: Kim Knuttila (krk@cygnus.com) */
+#define L_LNNO_SIZE 2
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax). */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+
+/* extra NT defines */
+#define PPCMAGIC 0760 /* peeked on aa PowerPC Windows NT box */
+#define DOSMAGIC 0x5a4d /* from arm.h, i386.h */
+#define NT_SIGNATURE 0x00004550 /* from arm.h, i386.h */
+
+/* from winnt.h */
+#define IMAGE_NT_OPTIONAL_HDR_MAGIC 0x10b
+
+#define PPCBADMAG(x) ((x).f_magic != PPCMAGIC)
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
diff --git a/include/coff/rs6000.h b/include/coff/rs6000.h
new file mode 100644
index 000000000..0c3486114
--- /dev/null
+++ b/include/coff/rs6000.h
@@ -0,0 +1,267 @@
+/* IBM RS/6000 "XCOFF" file definitions for BFD.
+ Copyright (C) 1990, 1991 Free Software Foundation, Inc.
+ FIXME: Can someone provide a transliteration of this name into ASCII?
+ Using the following chars caused a compiler warning on HIUX (so I replaced
+ them with octal escapes), and isn't useful without an understanding of what
+ character set it is.
+ Written by Mimi Ph\373\364ng-Th\345o V\365 of IBM
+ and John Gilmore of Cygnus Support. */
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr {
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+};
+
+ /* IBM RS/6000 */
+#define U802WRMAGIC 0730 /* writeable text segments **chh** */
+#define U802ROMAGIC 0735 /* readonly sharable text segments */
+#define U802TOCMAGIC 0737 /* readonly text segments and TOC */
+
+#define BADMAG(x) \
+ ((x).f_magic != U802ROMAGIC && (x).f_magic != U802WRMAGIC && \
+ (x).f_magic != U802TOCMAGIC)
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 20
+
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+
+typedef struct
+{
+ unsigned char magic[2]; /* type of file */
+ unsigned char vstamp[2]; /* version stamp */
+ unsigned char tsize[4]; /* text size in bytes, padded to FW bdry */
+ unsigned char dsize[4]; /* initialized data " " */
+ unsigned char bsize[4]; /* uninitialized data " " */
+ unsigned char entry[4]; /* entry pt. */
+ unsigned char text_start[4]; /* base of text used for this file */
+ unsigned char data_start[4]; /* base of data used for this file */
+ unsigned char o_toc[4]; /* address of TOC */
+ unsigned char o_snentry[2]; /* section number of entry point */
+ unsigned char o_sntext[2]; /* section number of .text section */
+ unsigned char o_sndata[2]; /* section number of .data section */
+ unsigned char o_sntoc[2]; /* section number of TOC */
+ unsigned char o_snloader[2]; /* section number of .loader section */
+ unsigned char o_snbss[2]; /* section number of .bss section */
+ unsigned char o_algntext[2]; /* .text alignment */
+ unsigned char o_algndata[2]; /* .data alignment */
+ unsigned char o_modtype[2]; /* module type (??) */
+ unsigned char o_cputype[2]; /* cpu type */
+ unsigned char o_maxstack[4]; /* max stack size (??) */
+ unsigned char o_maxdata[4]; /* max data size (??) */
+ unsigned char o_resv2[12]; /* reserved */
+}
+AOUTHDR;
+
+#define AOUTSZ 72
+#define SMALL_AOUTSZ (28)
+#define AOUTHDRSZ 72
+
+/********************** SECTION HEADER **********************/
+
+
+struct external_scnhdr {
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries*/
+ char s_flags[4]; /* flags */
+};
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 40
+
+/********************** LINE NUMBERS **********************/
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ * Line numbers are grouped on a per function basis; first entry in a function
+ * grouping will have l_lnno = 0 and in place of physical address will be the
+ * symbol table index of the function name.
+ */
+struct external_lineno {
+ union {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[4]; /* (physical) address of line number */
+ } l_addr;
+ char l_lnno[2]; /* line number */
+};
+
+
+#define LINENO struct external_lineno
+#define LINESZ 6
+
+
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union {
+ char e_name[E_SYMNMLEN];
+ struct {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+ } e;
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+};
+
+
+
+#define N_BTMASK (017)
+#define N_TMASK (060)
+#define N_BTSHFT (4)
+#define N_TSHIFT (2)
+
+
+union external_auxent {
+ struct {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+ union {
+ struct {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+ char x_fsize[4]; /* size of function */
+ } x_misc;
+ union {
+ struct { /* if ISFCN, tag, or .bb */
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+ struct { /* if ISARY, up to 4 dimen. */
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+ } x_fcnary;
+ char x_tvndx[2]; /* tv index */
+ } x_sym;
+
+ union {
+ char x_fname[E_FILNMLEN];
+ struct {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+ } x_file;
+
+ struct {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+ } x_scn;
+
+ struct {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+
+ struct {
+ unsigned char x_scnlen[4];
+ unsigned char x_parmhash[4];
+ unsigned char x_snhash[2];
+ unsigned char x_smtyp[1];
+ unsigned char x_smclas[1];
+ unsigned char x_stab[4];
+ unsigned char x_snstab[2];
+ } x_csect;
+
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 18
+#define AUXENT union external_auxent
+#define AUXESZ 18
+#define DBXMASK 0x80 /* for dbx storage mask */
+#define SYMNAME_IN_DEBUG(symptr) ((symptr)->n_sclass & DBXMASK)
+
+
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+
+struct external_reloc {
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_size[1];
+ char r_type[1];
+};
+
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
+#define DEFAULT_DATA_SECTION_ALIGNMENT 4
+#define DEFAULT_BSS_SECTION_ALIGNMENT 4
+#define DEFAULT_TEXT_SECTION_ALIGNMENT 4
+/* For new sections we havn't heard of before */
+#define DEFAULT_SECTION_ALIGNMENT 4
+
+/* The ldhdr structure. This appears at the start of the .loader
+ section. */
+
+struct external_ldhdr
+{
+ bfd_byte l_version[4];
+ bfd_byte l_nsyms[4];
+ bfd_byte l_nreloc[4];
+ bfd_byte l_istlen[4];
+ bfd_byte l_nimpid[4];
+ bfd_byte l_impoff[4];
+ bfd_byte l_stlen[4];
+ bfd_byte l_stoff[4];
+};
+
+#define LDHDRSZ (8 * 4)
+
+struct external_ldsym
+{
+ union
+ {
+ bfd_byte _l_name[SYMNMLEN];
+ struct
+ {
+ bfd_byte _l_zeroes[4];
+ bfd_byte _l_offset[4];
+ } _l_l;
+ } _l;
+ bfd_byte l_value[4];
+ bfd_byte l_scnum[2];
+ bfd_byte l_smtype[1];
+ bfd_byte l_smclas[1];
+ bfd_byte l_ifile[4];
+ bfd_byte l_parm[4];
+};
+
+#define LDSYMSZ (8 + 3 * 4 + 2 + 2)
+
+struct external_ldrel
+{
+ bfd_byte l_vaddr[4];
+ bfd_byte l_symndx[4];
+ bfd_byte l_rtype[2];
+ bfd_byte l_rsecnm[2];
+};
+
+#define LDRELSZ (2 * 4 + 2 * 2)
diff --git a/include/coff/rs6k64.h b/include/coff/rs6k64.h
new file mode 100644
index 000000000..47d080213
--- /dev/null
+++ b/include/coff/rs6k64.h
@@ -0,0 +1,260 @@
+/* IBM RS/6000 "XCOFF64" file definitions for BFD.
+ Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+{
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[8]; /* file pointer to symtab */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+ char f_nsyms[4]; /* number of symtab entries */
+};
+
+/* IBM RS/6000. */
+#define U803XTOCMAGIC 0757 /* Aix 4.3 64-bit XCOFF */
+#define U64_TOCMAGIC 0767 /* AIX 5+ 64-bit XCOFF */
+#define BADMAG(x) ((x).f_magic != U803XTOCMAGIC && (x).f_magic != U64_TOCMAGIC)
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 24
+
+/********************** AOUT "OPTIONAL HEADER" **********************/
+
+typedef struct
+{
+ unsigned char magic[2]; /* type of file */
+ unsigned char vstamp[2]; /* version stamp */
+ unsigned char o_debugger[4]; /* reserved */
+ unsigned char text_start[8]; /* base of text used for this file */
+ unsigned char data_start[8]; /* base of data used for this file */
+ unsigned char o_toc[8]; /* address of TOC */
+ unsigned char o_snentry[2]; /* section number of entry point */
+ unsigned char o_sntext[2]; /* section number of .text section */
+ unsigned char o_sndata[2]; /* section number of .data section */
+ unsigned char o_sntoc[2]; /* section number of TOC */
+ unsigned char o_snloader[2]; /* section number of .loader section */
+ unsigned char o_snbss[2]; /* section number of .bss section */
+ unsigned char o_algntext[2]; /* .text alignment */
+ unsigned char o_algndata[2]; /* .data alignment */
+ unsigned char o_modtype[2]; /* module type (??) */
+ unsigned char o_cputype[2]; /* cpu type */
+ unsigned char o_resv2[4]; /* reserved */
+ unsigned char tsize[8]; /* text size bytes, padded to FW bdry */
+ unsigned char dsize[8]; /* initialized data " " */
+ unsigned char bsize[8]; /* uninitialized data " " */
+ unsigned char entry[8]; /* entry pt. */
+ unsigned char o_maxstack[8]; /* max stack size (??) */
+ unsigned char o_maxdata[8]; /* max data size (??) */
+ unsigned char o_resv3[16]; /* reserved */
+}
+AOUTHDR;
+
+#define AOUTSZ 120
+#define SMALL_AOUTSZ (0)
+#define AOUTHDRSZ 72
+
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+{
+ char s_name[8]; /* section name */
+ char s_paddr[8]; /* physical address, aliased s_nlib */
+ char s_vaddr[8]; /* virtual address */
+ char s_size[8]; /* section size */
+ char s_scnptr[8]; /* file ptr to raw data for section */
+ char s_relptr[8]; /* file ptr to relocation */
+ char s_lnnoptr[8]; /* file ptr to line numbers */
+ char s_nreloc[4]; /* number of relocation entries */
+ char s_nlnno[4]; /* number of line number entries*/
+ char s_flags[4]; /* flags */
+ char s_pad[4]; /* padding */
+};
+
+#define SCNHDR struct external_scnhdr
+
+#define SCNHSZ 72
+
+/********************** LINE NUMBERS **********************/
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ Line numbers are grouped on a per function basis; first entry in a function
+ grouping will have l_lnno = 0 and in place of physical address will be the
+ symbol table index of the function name. */
+
+struct external_lineno
+{
+ union
+ {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[8]; /* (physical) address of line number */
+ } l_addr;
+
+ char l_lnno[4]; /* line number */
+};
+
+#define LINENO struct external_lineno
+
+#define LINESZ 12
+
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ char e_value[8];
+ char e_offset[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+};
+
+#define N_BTMASK (017)
+#define N_TMASK (060)
+#define N_BTSHFT (4)
+#define N_TSHIFT (2)
+
+union external_auxent
+{
+ struct {
+ union {
+ struct {
+ char x_lnno[4]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+ struct {
+ char x_lnnoptr[8];/* ptr to fcn line */
+ char x_fsize[4]; /* size of function */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+ } x_fcnary;
+ } x_sym;
+
+ union {
+ char x_fname[E_FILNMLEN];
+ struct {
+ char x_zeroes[4];
+ char x_offset[4];
+ char x_pad[6];
+ unsigned char x_ftype[1];
+ unsigned char x_resv[2];
+ } x_n;
+ } x_file;
+
+ struct {
+ char x_exptr[8];
+ char x_fsize[4];
+ char x_endndx[4];
+ char x_pad[1];
+ } x_except;
+
+ struct {
+ unsigned char x_scnlen_lo[4];
+ unsigned char x_parmhash[4];
+ unsigned char x_snhash[2];
+ unsigned char x_smtyp[1];
+ unsigned char x_smclas[1];
+ unsigned char x_scnlen_hi[4];
+ unsigned char x_pad[1];
+ } x_csect;
+
+ struct {
+ char x_pad[17];
+ char x_auxtype[1];
+ } x_auxtype;
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 18
+#define AUXENT union external_auxent
+#define AUXESZ 18
+#define DBXMASK 0x80 /* for dbx storage mask */
+#define SYMNAME_IN_DEBUG(symptr) ((symptr)->n_sclass & DBXMASK)
+
+/* Values for auxtype field in XCOFF64, taken from AIX 4.3 sym.h. */
+#define _AUX_EXCEPT 255
+#define _AUX_FCN 254
+#define _AUX_SYM 253
+#define _AUX_FILE 252
+#define _AUX_CSECT 251
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[8];
+ char r_symndx[4];
+ char r_size[1];
+ char r_type[1];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 14
+
+#define DEFAULT_DATA_SECTION_ALIGNMENT 4
+#define DEFAULT_BSS_SECTION_ALIGNMENT 4
+#define DEFAULT_TEXT_SECTION_ALIGNMENT 4
+/* For new sections we havn't heard of before */
+#define DEFAULT_SECTION_ALIGNMENT 4
+
+/* The ldhdr structure. This appears at the start of the .loader
+ section. */
+
+struct external_ldhdr
+{
+ bfd_byte l_version[4];
+ bfd_byte l_nsyms[4];
+ bfd_byte l_nreloc[4];
+ bfd_byte l_istlen[4];
+ bfd_byte l_nimpid[4];
+ bfd_byte l_stlen[4];
+ bfd_byte l_impoff[8];
+ bfd_byte l_stoff[8];
+ bfd_byte l_symoff[8];
+ bfd_byte l_rldoff[8];
+};
+#define LDHDRSZ (56)
+
+struct external_ldsym
+{
+ bfd_byte l_value[8];
+ bfd_byte l_offset[4];
+ bfd_byte l_scnum[2];
+ bfd_byte l_smtype[1];
+ bfd_byte l_smclas[1];
+ bfd_byte l_ifile[4];
+ bfd_byte l_parm[4];
+};
+
+#define LDSYMSZ (24)
+
+struct external_ldrel
+{
+ bfd_byte l_vaddr[8];
+ bfd_byte l_rtype[2];
+ bfd_byte l_rsecnm[2];
+ bfd_byte l_symndx[4];
+};
+
+#define LDRELSZ (16)
diff --git a/include/coff/sh.h b/include/coff/sh.h
new file mode 100644
index 000000000..d20834ca6
--- /dev/null
+++ b/include/coff/sh.h
@@ -0,0 +1,147 @@
+/* coff information for Renesas SH
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifdef COFF_WITH_PE
+#define L_LNNO_SIZE 2
+#else
+#define L_LNNO_SIZE 4
+#endif
+#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
+#include "coff/external.h"
+
+#define SH_ARCH_MAGIC_BIG 0x0500
+#define SH_ARCH_MAGIC_LITTLE 0x0550 /* Little endian SH */
+#define SH_ARCH_MAGIC_WINCE 0x01a2 /* Windows CE - little endian */
+#define SH_PE_MAGIC 0x010b
+
+#define SHBADMAG(x) \
+ (((x).f_magic != SH_ARCH_MAGIC_BIG) && \
+ ((x).f_magic != SH_ARCH_MAGIC_WINCE) && \
+ ((x).f_magic != SH_ARCH_MAGIC_LITTLE))
+
+/* Define some NT default values. */
+/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
+#define NT_SECTION_ALIGNMENT 0x1000
+#define NT_FILE_ALIGNMENT 0x200
+#define NT_DEF_RESERVE 0x100000
+#define NT_DEF_COMMIT 0x1000
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the h8 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes. */
+
+#ifndef COFF_WITH_PE
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+#else
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+#endif
+
+#define RELOC struct external_reloc
+#ifdef COFF_WITH_PE
+#define RELSZ 10
+#else
+#define RELSZ 16
+#endif
+
+/* SH relocation types. Not all of these are actually used. */
+
+#define R_SH_UNUSED 0 /* only used internally */
+#define R_SH_IMM32CE 2 /* 32 bit immediate for WinCE */
+#define R_SH_PCREL8 3 /* 8 bit pcrel */
+#define R_SH_PCREL16 4 /* 16 bit pcrel */
+#define R_SH_HIGH8 5 /* high 8 bits of 24 bit address */
+#define R_SH_LOW16 7 /* low 16 bits of 24 bit immediate */
+#define R_SH_IMM24 6 /* 24 bit immediate */
+#define R_SH_PCDISP8BY4 9 /* PC rel 8 bits *4 +ve */
+#define R_SH_PCDISP8BY2 10 /* PC rel 8 bits *2 +ve */
+#define R_SH_PCDISP8 11 /* 8 bit branch */
+#define R_SH_PCDISP 12 /* 12 bit branch */
+#define R_SH_IMM32 14 /* 32 bit immediate */
+#define R_SH_IMM8 16 /* 8 bit immediate */
+#define R_SH_IMAGEBASE 16 /* Windows CE */
+#define R_SH_IMM8BY2 17 /* 8 bit immediate *2 */
+#define R_SH_IMM8BY4 18 /* 8 bit immediate *4 */
+#define R_SH_IMM4 19 /* 4 bit immediate */
+#define R_SH_IMM4BY2 20 /* 4 bit immediate *2 */
+#define R_SH_IMM4BY4 21 /* 4 bit immediate *4 */
+#define R_SH_PCRELIMM8BY2 22 /* PC rel 8 bits *2 unsigned */
+#define R_SH_PCRELIMM8BY4 23 /* PC rel 8 bits *4 unsigned */
+#define R_SH_IMM16 24 /* 16 bit immediate */
+
+/* The switch table reloc types are used for relaxing. They are
+ generated for expressions such as
+ .word L1 - L2
+ The r_offset field holds the difference between the reloc address
+ and L2. */
+#define R_SH_SWITCH8 33 /* 8 bit switch table entry */
+#define R_SH_SWITCH16 25 /* 16 bit switch table entry */
+#define R_SH_SWITCH32 26 /* 32 bit switch table entry */
+
+/* The USES reloc type is used for relaxing. The compiler will
+ generate .uses pseudo-ops when it finds a function call which it
+ can relax. The r_offset field of the USES reloc holds the PC
+ relative offset to the instruction which loads the register used in
+ the function call. */
+#define R_SH_USES 27 /* .uses pseudo-op */
+
+/* The COUNT reloc type is used for relaxing. The assembler will
+ generate COUNT relocs for addresses referred to by the register
+ loads associated with USES relocs. The r_offset field of the COUNT
+ reloc holds the number of times the address is referenced in the
+ object file. */
+#define R_SH_COUNT 28 /* Count of constant pool uses */
+
+/* The ALIGN reloc type is used for relaxing. The r_offset field is
+ the power of two to which subsequent portions of the object file
+ must be aligned. */
+#define R_SH_ALIGN 29 /* .align pseudo-op */
+
+/* The CODE and DATA reloc types are used for aligning load and store
+ instructions. The assembler will generate a CODE reloc before a
+ block of instructions. It will generate a DATA reloc before data.
+ A section should be processed assuming it contains data, unless a
+ CODE reloc is seen. The only relevant pieces of information in the
+ CODE and DATA relocs are the section and the address. The symbol
+ and offset are meaningless. */
+#define R_SH_CODE 30 /* start of code */
+#define R_SH_DATA 31 /* start of data */
+
+/* The LABEL reloc type is used for aligning load and store
+ instructions. The assembler will generate a LABEL reloc for each
+ label within a block of instructions. This permits the linker to
+ avoid swapping instructions which are the targets of branches. */
+#define R_SH_LABEL 32 /* label */
+
+/* NB: R_SH_SWITCH8 is 33 */
+
+#define R_SH_LOOP_START 34
+#define R_SH_LOOP_END 35
diff --git a/include/coff/sparc.h b/include/coff/sparc.h
new file mode 100644
index 000000000..ac524d6c2
--- /dev/null
+++ b/include/coff/sparc.h
@@ -0,0 +1,155 @@
+/* coff information for Sparc.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file is an amalgamation of several standard include files that
+ define coff format, such as filehdr.h, aouthdr.h, and so forth. In
+ addition, all datatypes have been translated into character arrays of
+ (presumed) equivalent size. This is necessary so that this file can
+ be used with different systems while still yielding the same results. */
+
+#define L_LNNO_SIZE 2
+#define DO_NOT_DEFINE_SYMENT
+#define DO_NOT_DEFINE_AUXENT
+#include "coff/external.h"
+
+#define F_RELFLG (0x0001) /* relocation info stripped */
+#define F_EXEC (0x0002) /* file is executable */
+#define F_LNNO (0x0004) /* line numbers stripped */
+#define F_LSYMS (0x0008) /* local symbols stripped */
+
+#define SPARCMAGIC (0540)
+
+/* This is Lynx's all-platform magic number for executables. */
+
+#define LYNXCOFFMAGIC (0415)
+
+#define OMAGIC 0404 /* object files, eg as output */
+#define ZMAGIC 0413 /* demand load format, eg normal ld output */
+#define STMAGIC 0401 /* target shlib */
+#define SHMAGIC 0443 /* host shlib */
+
+/* More names of "special" sections. */
+
+#define _TV ".tv"
+#define _INIT ".init"
+#define _FINI ".fini"
+
+/********************** SYMBOLS **********************/
+
+#define E_SYMNMLEN (8) /* # characters in a symbol name */
+#define E_FILNMLEN (14) /* # characters in a file name */
+#define E_DIMNUM (4) /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union {
+ char e_name[E_SYMNMLEN];
+ struct {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+#if 0 /* of doubtful value */
+ char e_nptr[2][4];
+ struct {
+ char e_leading_zero[1];
+ char e_dbx_type[1];
+ char e_dbx_desc[2];
+ } e_dbx;
+#endif
+ } e;
+
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+ char padding[2];
+};
+
+#define N_BTMASK (0xf)
+#define N_TMASK (0x30)
+#define N_BTSHFT (4)
+#define N_TSHIFT (2)
+
+union external_auxent
+{
+ struct {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+ union {
+ struct {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+ char x_fsize[4]; /* size of function */
+ } x_misc;
+ union {
+ struct { /* if ISFCN, tag, or .bb */
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+ struct { /* if ISARY, up to 4 dimen. */
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+ } x_fcnary;
+ char x_tvndx[2]; /* tv index */
+ } x_sym;
+
+ union {
+ char x_fname[E_FILNMLEN];
+ struct {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+ } x_file;
+
+ struct {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+ } x_scn;
+
+ struct {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ } x_tv; /* .tv section info (in auxent of sym .tv)) */
+
+ char x_fill[20]; /* forces to 20-byte size */
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 20
+#define AUXENT union external_auxent
+#define AUXESZ 20
+
+#define _ETEXT "etext"
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+ char r_spare[2];
+ char r_offset[4];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
diff --git a/include/coff/sym.h b/include/coff/sym.h
new file mode 100644
index 000000000..76204af59
--- /dev/null
+++ b/include/coff/sym.h
@@ -0,0 +1,484 @@
+/* Declarations of internal format of MIPS ECOFF symbols.
+ Originally contributed by MIPS Computer Systems and Third Eye Software.
+ Changes contributed by Cygnus Support are in the public domain.
+
+ This file is just aggregated with the files that make up the GNU
+ release; it is not considered part of GAS, GDB, or other GNU
+ programs. */
+
+/*
+ * |-----------------------------------------------------------|
+ * | Copyright (c) 1992, 1991, 1990 MIPS Computer Systems, Inc.|
+ * | MIPS Computer Systems, Inc. grants reproduction and use |
+ * | rights to all parties, PROVIDED that this comment is |
+ * | maintained in the copy. |
+ * |-----------------------------------------------------------|
+ */
+#ifndef _SYM_H
+#define _SYM_H
+
+/* (C) Copyright 1984 by Third Eye Software, Inc.
+ *
+ * Third Eye Software, Inc. grants reproduction and use rights to
+ * all parties, PROVIDED that this comment is maintained in the copy.
+ *
+ * Third Eye makes no claims about the applicability of this
+ * symbol table to a particular use.
+ */
+
+/*
+ * This file contains the definition of the Third Eye Symbol Table.
+ *
+ * Symbols are assumed to be in 'encounter order' - i.e. the order that
+ * the things they represent were encountered by the compiler/assembler/loader.
+ * EXCEPT for globals! These are assumed to be bunched together,
+ * probably right after the last 'normal' symbol. Globals ARE sorted
+ * in ascending order.
+ *
+ * -----------------------------------------------------------------------
+ * A brief word about Third Eye naming/use conventions:
+ *
+ * All arrays and index's are 0 based.
+ * All "ifooMax" values are the highest legal value PLUS ONE. This makes
+ * them good for allocating arrays, etc. All checks are "ifoo < ifooMax".
+ *
+ * "isym" Index into the SYMbol table.
+ * "ipd" Index into the Procedure Descriptor array.
+ * "ifd" Index into the File Descriptor array.
+ * "iss" Index into String Space.
+ * "cb" Count of Bytes.
+ * "rgPd" array whose domain is "0..ipdMax-1" and RanGe is PDR.
+ * "rgFd" array whose domain is "0..ifdMax-1" and RanGe is FDR.
+ */
+
+
+/*
+ * Symbolic Header (HDR) structure.
+ * As long as all the pointers are set correctly,
+ * we don't care WHAT order the various sections come out in!
+ *
+ * A file produced solely for the use of CDB will probably NOT have
+ * any instructions or data areas in it, as these are available
+ * in the original.
+ */
+
+typedef struct {
+ short magic; /* to verify validity of the table */
+ short vstamp; /* version stamp */
+ long ilineMax; /* number of line number entries */
+ bfd_vma cbLine; /* number of bytes for line number entries */
+ bfd_vma cbLineOffset; /* offset to start of line number entries*/
+ long idnMax; /* max index into dense number table */
+ bfd_vma cbDnOffset; /* offset to start dense number table */
+ long ipdMax; /* number of procedures */
+ bfd_vma cbPdOffset; /* offset to procedure descriptor table */
+ long isymMax; /* number of local symbols */
+ bfd_vma cbSymOffset; /* offset to start of local symbols*/
+ long ioptMax; /* max index into optimization symbol entries */
+ bfd_vma cbOptOffset; /* offset to optimization symbol entries */
+ long iauxMax; /* number of auxillary symbol entries */
+ bfd_vma cbAuxOffset; /* offset to start of auxillary symbol entries*/
+ long issMax; /* max index into local strings */
+ bfd_vma cbSsOffset; /* offset to start of local strings */
+ long issExtMax; /* max index into external strings */
+ bfd_vma cbSsExtOffset; /* offset to start of external strings */
+ long ifdMax; /* number of file descriptor entries */
+ bfd_vma cbFdOffset; /* offset to file descriptor table */
+ long crfd; /* number of relative file descriptor entries */
+ bfd_vma cbRfdOffset; /* offset to relative file descriptor table */
+ long iextMax; /* max index into external symbols */
+ bfd_vma cbExtOffset; /* offset to start of external symbol entries*/
+ /* If you add machine dependent fields, add them here */
+ } HDRR, *pHDRR;
+#define cbHDRR sizeof(HDRR)
+#define hdrNil ((pHDRR)0)
+
+/*
+ * The FDR and PDR structures speed mapping of address <-> name.
+ * They are sorted in ascending memory order and are kept in
+ * memory by CDB at runtime.
+ */
+
+/*
+ * File Descriptor
+ *
+ * There is one of these for EVERY FILE, whether compiled with
+ * full debugging symbols or not. The name of a file should be
+ * the path name given to the compiler. This allows the user
+ * to simply specify the names of the directories where the COMPILES
+ * were done, and we will be able to find their files.
+ * A field whose comment starts with "R - " indicates that it will be
+ * setup at runtime.
+ */
+typedef struct fdr {
+ bfd_vma adr; /* memory address of beginning of file */
+ long rss; /* file name (of source, if known) */
+ long issBase; /* file's string space */
+ bfd_vma cbSs; /* number of bytes in the ss */
+ long isymBase; /* beginning of symbols */
+ long csym; /* count file's of symbols */
+ long ilineBase; /* file's line symbols */
+ long cline; /* count of file's line symbols */
+ long ioptBase; /* file's optimization entries */
+ long copt; /* count of file's optimization entries */
+ unsigned short ipdFirst;/* start of procedures for this file */
+ short cpd; /* count of procedures for this file */
+ long iauxBase; /* file's auxiliary entries */
+ long caux; /* count of file's auxiliary entries */
+ long rfdBase; /* index into the file indirect table */
+ long crfd; /* count file indirect entries */
+ unsigned lang: 5; /* language for this file */
+ unsigned fMerge : 1; /* whether this file can be merged */
+ unsigned fReadin : 1; /* true if it was read in (not just created) */
+ unsigned fBigendian : 1;/* if set, was compiled on big endian machine */
+ /* aux's will be in compile host's sex */
+ unsigned glevel : 2; /* level this file was compiled with */
+ unsigned reserved : 22; /* reserved for future use */
+ bfd_vma cbLineOffset; /* byte offset from header for this file ln's */
+ bfd_vma cbLine; /* size of lines for this file */
+ } FDR, *pFDR;
+#define cbFDR sizeof(FDR)
+#define fdNil ((pFDR)0)
+#define ifdNil -1
+#define ifdTemp 0
+#define ilnNil -1
+
+
+/*
+ * Procedure Descriptor
+ *
+ * There is one of these for EVERY TEXT LABEL.
+ * If a procedure is in a file with full symbols, then isym
+ * will point to the PROC symbols, else it will point to the
+ * global symbol for the label.
+ */
+
+typedef struct pdr {
+ bfd_vma adr; /* memory address of start of procedure */
+ long isym; /* start of local symbol entries */
+ long iline; /* start of line number entries*/
+ long regmask; /* save register mask */
+ long regoffset; /* save register offset */
+ long iopt; /* start of optimization symbol entries*/
+ long fregmask; /* save floating point register mask */
+ long fregoffset; /* save floating point register offset */
+ long frameoffset; /* frame size */
+ short framereg; /* frame pointer register */
+ short pcreg; /* offset or reg of return pc */
+ long lnLow; /* lowest line in the procedure */
+ long lnHigh; /* highest line in the procedure */
+ bfd_vma cbLineOffset; /* byte offset for this procedure from the fd base */
+ /* These fields are new for 64 bit ECOFF. */
+ unsigned gp_prologue : 8; /* byte size of GP prologue */
+ unsigned gp_used : 1; /* true if the procedure uses GP */
+ unsigned reg_frame : 1; /* true if register frame procedure */
+ unsigned prof : 1; /* true if compiled with -pg */
+ unsigned reserved : 13; /* reserved: must be zero */
+ unsigned localoff : 8; /* offset of local variables from vfp */
+ } PDR, *pPDR;
+#define cbPDR sizeof(PDR)
+#define pdNil ((pPDR) 0)
+#define ipdNil -1
+
+/*
+ * The structure of the runtime procedure descriptor created by the loader
+ * for use by the static exception system.
+ */
+/*
+ * If 0'd out because exception_info chokes Visual C++ and because there
+ * don't seem to be any references to this structure elsewhere in gdb.
+ */
+#if 0
+typedef struct runtime_pdr {
+ bfd_vma adr; /* memory address of start of procedure */
+ long regmask; /* save register mask */
+ long regoffset; /* save register offset */
+ long fregmask; /* save floating point register mask */
+ long fregoffset; /* save floating point register offset */
+ long frameoffset; /* frame size */
+ short framereg; /* frame pointer register */
+ short pcreg; /* offset or reg of return pc */
+ long irpss; /* index into the runtime string table */
+ long reserved;
+ struct exception_info *exception_info;/* pointer to exception array */
+} RPDR, *pRPDR;
+#define cbRPDR sizeof(RPDR)
+#define rpdNil ((pRPDR) 0)
+#endif
+
+/*
+ * Line Numbers
+ *
+ * Line Numbers are segregated from the normal symbols because they
+ * are [1] smaller , [2] are of no interest to your
+ * average loader, and [3] are never needed in the middle of normal
+ * scanning and therefore slow things down.
+ *
+ * By definition, the first LINER for any given procedure will have
+ * the first line of a procedure and represent the first address.
+ */
+
+typedef long LINER, *pLINER;
+#define lineNil ((pLINER)0)
+#define cbLINER sizeof(LINER)
+#define ilineNil -1
+
+
+
+/*
+ * The Symbol Structure (GFW, to those who Know!)
+ */
+
+typedef struct {
+ long iss; /* index into String Space of name */
+ bfd_vma value; /* value of symbol */
+ unsigned st : 6; /* symbol type */
+ unsigned sc : 5; /* storage class - text, data, etc */
+ unsigned reserved : 1; /* reserved */
+ unsigned index : 20; /* index into sym/aux table */
+ } SYMR, *pSYMR;
+#define symNil ((pSYMR)0)
+#define cbSYMR sizeof(SYMR)
+#define isymNil -1
+#define indexNil 0xfffff
+#define issNil -1
+#define issNull 0
+
+
+/* The following converts a memory resident string to an iss.
+ * This hack is recognized in SbFIss, in sym.c of the debugger.
+ */
+#define IssFSb(sb) (0x80000000 | ((unsigned long)(sb)))
+
+/* E X T E R N A L S Y M B O L R E C O R D
+ *
+ * Same as the SYMR except it contains file context to determine where
+ * the index is.
+ */
+typedef struct ecoff_extr {
+ unsigned jmptbl:1; /* symbol is a jump table entry for shlibs */
+ unsigned cobol_main:1; /* symbol is a cobol main procedure */
+ unsigned weakext:1; /* symbol is weak external */
+ unsigned reserved:13; /* reserved for future use */
+ int ifd; /* where the iss and index fields point into */
+ SYMR asym; /* symbol for the external */
+ } EXTR, *pEXTR;
+#define extNil ((pEXTR)0)
+#define cbEXTR sizeof(EXTR)
+
+
+/* A U X I L L A R Y T Y P E I N F O R M A T I O N */
+
+/*
+ * Type Information Record
+ */
+typedef struct {
+ unsigned fBitfield : 1; /* set if bit width is specified */
+ unsigned continued : 1; /* indicates additional TQ info in next AUX */
+ unsigned bt : 6; /* basic type */
+ unsigned tq4 : 4;
+ unsigned tq5 : 4;
+ /* ---- 16 bit boundary ---- */
+ unsigned tq0 : 4;
+ unsigned tq1 : 4; /* 6 type qualifiers - tqPtr, etc. */
+ unsigned tq2 : 4;
+ unsigned tq3 : 4;
+ } TIR, *pTIR;
+#define cbTIR sizeof(TIR)
+#define tiNil ((pTIR)0)
+#define itqMax 6
+
+/*
+ * Relative symbol record
+ *
+ * If the rfd field is 4095, the index field indexes into the global symbol
+ * table.
+ */
+
+typedef struct {
+ unsigned rfd : 12; /* index into the file indirect table */
+ unsigned index : 20; /* index int sym/aux/iss tables */
+ } RNDXR, *pRNDXR;
+#define cbRNDXR sizeof(RNDXR)
+#define rndxNil ((pRNDXR)0)
+
+/* dense numbers or sometimes called block numbers are stored in this type,
+ * a rfd of 0xffffffff is an index into the global table.
+ */
+typedef struct {
+ unsigned long rfd; /* index into the file table */
+ unsigned long index; /* index int sym/aux/iss tables */
+ } DNR, *pDNR;
+#define cbDNR sizeof(DNR)
+#define dnNil ((pDNR)0)
+
+
+
+/*
+ * Auxillary information occurs only if needed.
+ * It ALWAYS occurs in this order when present.
+
+ isymMac used by stProc only
+ TIR type info
+ TIR additional TQ info (if first TIR was not enough)
+ rndx if (bt == btStruct,btUnion,btEnum,btSet,btRange,
+ btTypedef):
+ rsym.index == iaux for btSet or btRange
+ else rsym.index == isym
+ dimLow btRange, btSet
+ dimMac btRange, btSet
+ rndx0 As many as there are tq arrays
+ dimLow0
+ dimHigh0
+ ...
+ rndxMax-1
+ dimLowMax-1
+ dimHighMax-1
+ width in bits if (bit field), width in bits.
+ */
+#define cAuxMax (6 + (idimMax*3))
+
+/* a union of all possible info in the AUX universe */
+typedef union {
+ TIR ti; /* type information record */
+ RNDXR rndx; /* relative index into symbol table */
+ long dnLow; /* low dimension */
+ long dnHigh; /* high dimension */
+ long isym; /* symbol table index (end of proc) */
+ long iss; /* index into string space (not used) */
+ long width; /* width for non-default sized struc fields */
+ long count; /* count of ranges for variant arm */
+ } AUXU, *pAUXU;
+#define cbAUXU sizeof(AUXU)
+#define auxNil ((pAUXU)0)
+#define iauxNil -1
+
+
+/*
+ * Optimization symbols
+ *
+ * Optimization symbols contain some overlap information with the normal
+ * symbol table. In particular, the proc information
+ * is somewhat redundant but necessary to easily find the other information
+ * present.
+ *
+ * All of the offsets are relative to the beginning of the last otProc
+ */
+
+typedef struct {
+ unsigned ot: 8; /* optimization type */
+ unsigned value: 24; /* address where we are moving it to */
+ RNDXR rndx; /* points to a symbol or opt entry */
+ unsigned long offset; /* relative offset this occured */
+ } OPTR, *pOPTR;
+#define optNil ((pOPTR) 0)
+#define cbOPTR sizeof(OPTR)
+#define ioptNil -1
+
+/*
+ * File Indirect
+ *
+ * When a symbol is referenced across files the following procedure is used:
+ * 1) use the file index to get the File indirect entry.
+ * 2) use the file indirect entry to get the File descriptor.
+ * 3) add the sym index to the base of that file's sym table
+ *
+ */
+
+typedef long RFDT, *pRFDT;
+#define cbRFDT sizeof(RFDT)
+#define rfdNil -1
+
+/*
+ * The file indirect table in the mips loader is known as an array of FITs.
+ * This is done to keep the code in the loader readable in the area where
+ * these tables are merged. Note this is only a name change.
+ */
+typedef long FIT, *pFIT;
+#define cbFIT sizeof(FIT)
+#define ifiNil -1
+#define fiNil ((pFIT) 0)
+
+#ifdef _LANGUAGE_PASCAL
+#define ifdNil -1
+#define ilnNil -1
+#define ipdNil -1
+#define ilineNil -1
+#define isymNil -1
+#define indexNil 16#fffff
+#define issNil -1
+#define issNull 0
+#define itqMax 6
+#define iauxNil -1
+#define ioptNil -1
+#define rfdNil -1
+#define ifiNil -1
+#endif /* _LANGUAGE_PASCAL */
+
+
+/* Dense numbers
+ *
+ * Rather than use file index, symbol index pairs to represent symbols
+ * and globals, we use dense number so that they can be easily embeded
+ * in intermediate code and the programs that process them can
+ * use direct access tabls instead of hash table (which would be
+ * necesary otherwise because of the sparse name space caused by
+ * file index, symbol index pairs. Dense number are represented
+ * by RNDXRs.
+ */
+
+/*
+ * The following table defines the meaning of each SYM field as
+ * a function of the "st". (scD/B == scData OR scBss)
+ *
+ * Note: the value "isymMac" is used by symbols that have the concept
+ * of enclosing a block of related information. This value is the
+ * isym of the first symbol AFTER the end associated with the primary
+ * symbol. For example if a procedure was at isym==90 and had an
+ * isymMac==155, the associated end would be at isym==154, and the
+ * symbol at 155 would probably (although not necessarily) be the
+ * symbol for the next procedure. This allows rapid skipping over
+ * internal information of various sorts. "stEnd"s ALWAYS have the
+ * isym of the primary symbol that started the block.
+ *
+
+ST SC VALUE INDEX
+-------- ------ -------- ------
+stFile scText address isymMac
+stLabel scText address ---
+stGlobal scD/B address iaux
+stStatic scD/B address iaux
+stParam scAbs offset iaux
+stLocal scAbs offset iaux
+stProc scText address iaux (isymMac is first AUX)
+stStaticProc scText address iaux (isymMac is first AUX)
+
+stMember scNil ordinal --- (if member of enum)
+ (mipsread thinks the case below has a bit, not byte, offset.)
+stMember scNil byte offset iaux (if member of struct/union)
+stMember scBits bit offset iaux (bit field spec)
+
+stBlock scText address isymMac (text block)
+ (the code seems to think that rather than scNil, we see scInfo for
+ the two cases below.)
+stBlock scNil cb isymMac (struct/union member define)
+stBlock scNil cMembers isymMac (enum member define)
+
+ (New types added by SGI to simplify things:)
+stStruct scInfo cb isymMac (struct type define)
+stUnion scInfo cb isymMac (union type define)
+stEnum scInfo cMembers isymMac (enum type define)
+
+stEnd scText address isymStart
+stEnd scNil ------- isymStart (struct/union/enum)
+
+stTypedef scNil ------- iaux
+stRegReloc sc??? value old register number
+stForward sc??? new address isym to original symbol
+
+stConstant scInfo value --- (scalar)
+stConstant scInfo iss --- (complex, e.g. string)
+
+ *
+ */
+#endif
diff --git a/include/coff/symconst.h b/include/coff/symconst.h
new file mode 100644
index 000000000..3e45705f4
--- /dev/null
+++ b/include/coff/symconst.h
@@ -0,0 +1,177 @@
+/* Declarations of constants for internal format of MIPS ECOFF symbols.
+ Originally contributed by MIPS Computer Systems and Third Eye Software.
+ Changes contributed by Cygnus Support are in the public domain.
+
+ This file is just aggregated with the files that make up the GNU
+ release; it is not considered part of GAS, GDB, or other GNU
+ programs. */
+
+/*
+ * |-----------------------------------------------------------|
+ * | Copyright (c) 1992, 1991, 1990 MIPS Computer Systems, Inc.|
+ * | MIPS Computer Systems, Inc. grants reproduction and use |
+ * | rights to all parties, PROVIDED that this comment is |
+ * | maintained in the copy. |
+ * |-----------------------------------------------------------|
+ */
+
+/* (C) Copyright 1984 by Third Eye Software, Inc.
+ *
+ * Third Eye Software, Inc. grants reproduction and use rights to
+ * all parties, PROVIDED that this comment is maintained in the copy.
+ *
+ * Third Eye makes no claims about the applicability of this
+ * symbol table to a particular use.
+ */
+
+/* glevels for field in FDR */
+#define GLEVEL_0 2
+#define GLEVEL_1 1
+#define GLEVEL_2 0 /* for upward compat reasons. */
+#define GLEVEL_3 3
+
+/* magic number fo symheader */
+#define magicSym 0x7009
+/* The Alpha uses this value instead, for some reason. */
+#define magicSym2 0x1992
+
+/* Language codes */
+#define langC 0
+#define langPascal 1
+#define langFortran 2
+#define langAssembler 3 /* one Assembley inst might map to many mach */
+#define langMachine 4
+#define langNil 5
+#define langAda 6
+#define langPl1 7
+#define langCobol 8
+#define langStdc 9 /* FIXME: Collides with SGI langCplusplus */
+#define langCplusplus 9 /* FIXME: Collides with langStdc */
+#define langCplusplusV2 10 /* SGI addition */
+#define langMax 11 /* maximum allowed 32 -- 5 bits */
+
+/* The following are value definitions for the fields in the SYMR */
+
+/*
+ * Storage Classes
+ */
+
+#define scNil 0
+#define scText 1 /* text symbol */
+#define scData 2 /* initialized data symbol */
+#define scBss 3 /* un-initialized data symbol */
+#define scRegister 4 /* value of symbol is register number */
+#define scAbs 5 /* value of symbol is absolute */
+#define scUndefined 6 /* who knows? */
+#define scCdbLocal 7 /* variable's value is IN se->va.?? */
+#define scBits 8 /* this is a bit field */
+#define scCdbSystem 9 /* variable's value is IN CDB's address space */
+#define scDbx 9 /* overlap dbx internal use */
+#define scRegImage 10 /* register value saved on stack */
+#define scInfo 11 /* symbol contains debugger information */
+#define scUserStruct 12 /* address in struct user for current process */
+#define scSData 13 /* load time only small data */
+#define scSBss 14 /* load time only small common */
+#define scRData 15 /* load time only read only data */
+#define scVar 16 /* Var parameter (fortran,pascal) */
+#define scCommon 17 /* common variable */
+#define scSCommon 18 /* small common */
+#define scVarRegister 19 /* Var parameter in a register */
+#define scVariant 20 /* Variant record */
+#define scSUndefined 21 /* small undefined(external) data */
+#define scInit 22 /* .init section symbol */
+#define scBasedVar 23 /* Fortran or PL/1 ptr based var */
+#define scXData 24 /* exception handling data */
+#define scPData 25 /* Procedure section */
+#define scFini 26 /* .fini section */
+#define scRConst 27 /* .rconst section */
+#define scMax 32
+
+
+/*
+ * Symbol Types
+ */
+
+#define stNil 0 /* Nuthin' special */
+#define stGlobal 1 /* external symbol */
+#define stStatic 2 /* static */
+#define stParam 3 /* procedure argument */
+#define stLocal 4 /* local variable */
+#define stLabel 5 /* label */
+#define stProc 6 /* " " Procedure */
+#define stBlock 7 /* beginnning of block */
+#define stEnd 8 /* end (of anything) */
+#define stMember 9 /* member (of anything - struct/union/enum */
+#define stTypedef 10 /* type definition */
+#define stFile 11 /* file name */
+#define stRegReloc 12 /* register relocation */
+#define stForward 13 /* forwarding address */
+#define stStaticProc 14 /* load time only static procs */
+#define stConstant 15 /* const */
+#define stStaParam 16 /* Fortran static parameters */
+ /* These new symbol types have been recently added to SGI machines. */
+#define stStruct 26 /* Beginning of block defining a struct type */
+#define stUnion 27 /* Beginning of block defining a union type */
+#define stEnum 28 /* Beginning of block defining an enum type */
+#define stIndirect 34 /* Indirect type specification */
+ /* Pseudo-symbols - internal to debugger */
+#define stStr 60 /* string */
+#define stNumber 61 /* pure number (ie. 4 NOR 2+2) */
+#define stExpr 62 /* 2+2 vs. 4 */
+#define stType 63 /* post-coersion SER */
+#define stMax 64
+
+/* definitions for fields in TIR */
+
+/* type qualifiers for ti.tq0 -> ti.(itqMax-1) */
+#define tqNil 0 /* bt is what you see */
+#define tqPtr 1 /* pointer */
+#define tqProc 2 /* procedure */
+#define tqArray 3 /* duh */
+#define tqFar 4 /* longer addressing - 8086/8 land */
+#define tqVol 5 /* volatile */
+#define tqConst 6 /* const */
+#define tqMax 8
+
+/* basic types as seen in ti.bt */
+#define btNil 0 /* undefined (also, enum members) */
+#define btAdr 1 /* address - integer same size as pointer */
+#define btChar 2 /* character */
+#define btUChar 3 /* unsigned character */
+#define btShort 4 /* short */
+#define btUShort 5 /* unsigned short */
+#define btInt 6 /* int */
+#define btUInt 7 /* unsigned int */
+#define btLong 8 /* long */
+#define btULong 9 /* unsigned long */
+#define btFloat 10 /* float (real) */
+#define btDouble 11 /* Double (real) */
+#define btStruct 12 /* Structure (Record) */
+#define btUnion 13 /* Union (variant) */
+#define btEnum 14 /* Enumerated */
+#define btTypedef 15 /* defined via a typedef, isymRef points */
+#define btRange 16 /* subrange of int */
+#define btSet 17 /* pascal sets */
+#define btComplex 18 /* fortran complex */
+#define btDComplex 19 /* fortran double complex */
+#define btIndirect 20 /* forward or unnamed typedef */
+#define btFixedDec 21 /* Fixed Decimal */
+#define btFloatDec 22 /* Float Decimal */
+#define btString 23 /* Varying Length Character String */
+#define btBit 24 /* Aligned Bit String */
+#define btPicture 25 /* Picture */
+#define btVoid 26 /* void */
+#define btLongLong 27 /* long long */
+#define btULongLong 28 /* unsigned long long */
+#define btMax 64
+
+#if (_MFG == _MIPS)
+/* optimization type codes */
+#define otNil 0
+#define otReg 1 /* move var to reg */
+#define otBlock 2 /* begin basic block */
+#define otProc 3 /* procedure */
+#define otInline 4 /* inline procedure */
+#define otEnd 5 /* whatever you started */
+#define otMax 6 /* KEEP UP TO DATE */
+#endif /* (_MFG == _MIPS) */
diff --git a/include/coff/ti.h b/include/coff/ti.h
new file mode 100644
index 000000000..a15fe717a
--- /dev/null
+++ b/include/coff/ti.h
@@ -0,0 +1,473 @@
+/* COFF information for TI COFF support. Definitions in this file should be
+ customized in a target-specific file, and then this file included (see
+ tic54x.h for an example).
+
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+#ifndef COFF_TI_H
+#define COFF_TI_H
+
+/* Note "coff/external.h is not used because TI adds extra fields to the structures. */
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+ {
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+ char f_target_id[2]; /* magic no. (TI COFF-specific) */
+ };
+
+/* COFF0 has magic number in f_magic, and omits f_target_id from the file
+ header; for later versions, f_magic is 0xC1 for COFF1 and 0xC2 for COFF2
+ and the target-specific magic number is found in f_target_id */
+
+#define TICOFF0MAGIC TI_TARGET_ID
+#define TICOFF1MAGIC 0x00C1
+#define TICOFF2MAGIC 0x00C2
+#define TICOFF_AOUT_MAGIC 0x0108 /* magic number in optional header */
+#define TICOFF 1 /* customize coffcode.h */
+
+/* The target_id field changes depending on the particular CPU target */
+/* for COFF0, the target id appeared in f_magic, where COFFX magic is now */
+#ifndef TI_TARGET_ID
+#error "TI_TARGET_ID needs to be defined for your CPU"
+#endif
+
+/* Which bfd_arch to use... */
+#ifndef TICOFF_TARGET_ARCH
+#error "TICOFF_TARGET_ARCH needs to be defined for your CPU"
+#endif
+
+#ifndef TICOFF_TARGET_MACHINE_GET
+#define TICOFF_TARGET_MACHINE_GET(FLAGS) 0
+#endif
+
+#ifndef TICOFF_TARGET_MACHINE_SET
+#define TICOFF_TARGET_MACHINE_SET(FLAGSP, MACHINE)
+#endif
+
+/* Default to COFF2 for file output */
+#ifndef TICOFF_DEFAULT_MAGIC
+#define TICOFF_DEFAULT_MAGIC TICOFF2MAGIC
+#endif
+
+/* This value is made available in the rare case where a bfd is unavailable */
+#ifndef OCTETS_PER_BYTE_POWER
+#error "OCTETS_PER_BYTE_POWER not defined for this CPU"
+#else
+#define OCTETS_PER_BYTE (1<<OCTETS_PER_BYTE_POWER)
+#endif
+
+/* default alignment is on a byte (not octet!) boundary */
+#ifndef COFF_DEFAULT_SECTION_ALIGNMENT_POWER
+#define COFF_DEFAULT_SECTION_ALIGNMENT_POWER 0
+#endif
+
+/* TI COFF encodes the section alignment in the section header flags */
+#define COFF_ALIGN_IN_SECTION_HEADER 1
+#define COFF_ALIGN_IN_S_FLAGS 1
+/* requires a power-of-two argument */
+#define COFF_ENCODE_ALIGNMENT(S,X) ((S).s_flags |= (((unsigned)(X)&0xF)<<8))
+/* result is a power of two */
+#define COFF_DECODE_ALIGNMENT(X) (((X)>>8)&0xF)
+
+#define COFF0_P(ABFD) (bfd_coff_filhsz(ABFD) == FILHSZ_V0)
+#define COFF2_P(ABFD) (bfd_coff_scnhsz(ABFD) != SCNHSZ_V01)
+
+#define COFF0_BADMAG(x) ((x).f_magic != TICOFF0MAGIC)
+#define COFF1_BADMAG(x) ((x).f_magic != TICOFF1MAGIC || (x).f_target_id != TI_TARGET_ID)
+#define COFF2_BADMAG(x) ((x).f_magic != TICOFF2MAGIC || (x).f_target_id != TI_TARGET_ID)
+
+/* we need to read/write an extra field in the coff file header */
+#ifndef COFF_ADJUST_FILEHDR_IN_POST
+#define COFF_ADJUST_FILEHDR_IN_POST(abfd, src, dst) \
+ do \
+ { \
+ ((struct internal_filehdr *)(dst))->f_target_id = \
+ H_GET_16 (abfd, ((FILHDR *)(src))->f_target_id); \
+ } \
+ while (0)
+#endif
+
+#ifndef COFF_ADJUST_FILEHDR_OUT_POST
+#define COFF_ADJUST_FILEHDR_OUT_POST(abfd, src, dst) \
+ do \
+ { \
+ H_PUT_16 (abfd, ((struct internal_filehdr *)(src))->f_target_id, \
+ ((FILHDR *)(dst))->f_target_id); \
+ } \
+ while (0)
+#endif
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 22
+#define FILHSZ_V0 20 /* COFF0 omits target_id field */
+
+/* File header flags */
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_VERS (0x0010) /* TMS320C4x code */
+/* F_LSYMS needs to be redefined in your source file */
+#define F_LSYMS_TICOFF (0x0010) /* normal COFF is 0x8 */
+
+#define F_10 0x00 /* file built for TMS320C1x devices */
+#define F_20 0x10 /* file built for TMS320C2x devices */
+#define F_25 0x20 /* file built for TMS320C2x/C5x devices */
+#define F_LENDIAN 0x0100 /* 16 bits/word, LSB first */
+#define F_SYMMERGE 0x1000 /* duplicate symbols were removed */
+
+/********************** OPTIONAL HEADER **********************/
+
+
+typedef struct
+{
+ char magic[2]; /* type of file (0x108) */
+ char vstamp[2]; /* version stamp */
+ char tsize[4]; /* text size in bytes, padded to FW bdry*/
+ char dsize[4]; /* initialized data " " */
+ char bsize[4]; /* uninitialized data " " */
+ char entry[4]; /* entry pt. */
+ char text_start[4]; /* base of text used for this file */
+ char data_start[4]; /* base of data used for this file */
+}
+AOUTHDR;
+
+
+#define AOUTHDRSZ 28
+#define AOUTSZ 28
+
+
+/********************** SECTION HEADER **********************/
+/* COFF0, COFF1 */
+struct external_scnhdr_v01 {
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size (in WORDS) */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries*/
+ char s_flags[2]; /* flags */
+ char s_reserved[1]; /* reserved */
+ char s_page[1]; /* section page number (LOAD) */
+};
+
+/* COFF2 */
+struct external_scnhdr {
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size (in WORDS) */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[4]; /* number of relocation entries */
+ char s_nlnno[4]; /* number of line number entries*/
+ char s_flags[4]; /* flags */
+ char s_reserved[2]; /* reserved */
+ char s_page[2]; /* section page number (LOAD) */
+};
+
+/*
+ * Special section flags
+ */
+
+/* TI COFF defines these flags;
+ STYP_CLINK: the section should be excluded from the final
+ linker output if there are no references found to any symbol in the section
+ STYP_BLOCK: the section should be blocked, i.e. if the section would cross
+ a page boundary, it is started at a page boundary instead.
+ TI COFF puts the section alignment power of two in the section flags
+ e.g. 2**N is alignment, flags |= (N & 0xF) << 8
+*/
+#define STYP_CLINK (0x4000)
+#define STYP_BLOCK (0x1000)
+#define STYP_ALIGN (0x0F00) /* TI COFF stores section alignment here */
+
+#define SCNHDR_V01 struct external_scnhdr_v01
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ_V01 40 /* for v0 and v1 */
+#define SCNHSZ 48
+
+/* COFF2 changes the offsets and sizes of these fields
+ Assume we're dealing with the COFF2 scnhdr structure, and adjust
+ accordingly
+ */
+#define GET_SCNHDR_NRELOC(ABFD, LOC) \
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, LOC) : H_GET_16 (ABFD, LOC))
+#define PUT_SCNHDR_NRELOC(ABFD, VAL, LOC) \
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, LOC) : H_PUT_16 (ABFD, VAL, LOC))
+#define GET_SCNHDR_NLNNO(ABFD, LOC) \
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, LOC) : H_GET_16 (ABFD, (LOC) - 2))
+#define PUT_SCNHDR_NLNNO(ABFD, VAL, LOC) \
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, LOC) : H_PUT_16 (ABFD, VAL, (LOC) - 2))
+#define GET_SCNHDR_FLAGS(ABFD, LOC) \
+ (COFF2_P (ABFD) ? H_GET_32 (ABFD, LOC) : H_GET_16 (ABFD, (LOC) - 4))
+#define PUT_SCNHDR_FLAGS(ABFD, VAL, LOC) \
+ (COFF2_P (ABFD) ? H_PUT_32 (ABFD, VAL, LOC) : H_PUT_16 (ABFD, VAL, (LOC) - 4))
+#define GET_SCNHDR_PAGE(ABFD, LOC) \
+ (COFF2_P (ABFD) ? H_GET_16 (ABFD, LOC) : (unsigned) H_GET_8 (ABFD, (LOC) - 7))
+/* on output, make sure that the "reserved" field is zero */
+#define PUT_SCNHDR_PAGE(ABFD, VAL, LOC) \
+ (COFF2_P (ABFD) \
+ ? H_PUT_16 (ABFD, VAL, LOC) \
+ : H_PUT_8 (ABFD, VAL, (LOC) - 7), H_PUT_8 (ABFD, 0, (LOC) - 8))
+
+/* TI COFF stores section size as number of bytes (address units, not octets),
+ so adjust to be number of octets, which is what BFD expects */
+#define GET_SCNHDR_SIZE(ABFD, SZP) \
+ (H_GET_32 (ABFD, SZP) * bfd_octets_per_byte (ABFD))
+#define PUT_SCNHDR_SIZE(ABFD, SZ, SZP) \
+ H_PUT_32 (ABFD, (SZ) / bfd_octets_per_byte (ABFD), SZP)
+
+#define COFF_ADJUST_SCNHDR_IN_POST(ABFD, EXT, INT) \
+ do \
+ { \
+ ((struct internal_scnhdr *)(INT))->s_page = \
+ GET_SCNHDR_PAGE (ABFD, ((SCNHDR *)(EXT))->s_page); \
+ } \
+ while (0)
+
+/* The line number and reloc overflow checking in coff_swap_scnhdr_out in
+ coffswap.h doesn't use PUT_X for s_nlnno and s_nreloc.
+ Due to different sized v0/v1/v2 section headers, we have to re-write these
+ fields.
+ */
+#define COFF_ADJUST_SCNHDR_OUT_POST(ABFD, INT, EXT) \
+ do \
+ { \
+ PUT_SCNHDR_NLNNO (ABFD, ((struct internal_scnhdr *)(INT))->s_nlnno, \
+ ((SCNHDR *)(EXT))->s_nlnno); \
+ PUT_SCNHDR_NRELOC (ABFD, ((struct internal_scnhdr *)(INT))->s_nreloc,\
+ ((SCNHDR *)(EXT))->s_nreloc); \
+ PUT_SCNHDR_FLAGS (ABFD, ((struct internal_scnhdr *)(INT))->s_flags, \
+ ((SCNHDR *)(EXT))->s_flags); \
+ PUT_SCNHDR_PAGE (ABFD, ((struct internal_scnhdr *)(INT))->s_page, \
+ ((SCNHDR *)(EXT))->s_page); \
+ } \
+ while (0)
+
+/*
+ * names of "special" sections
+ */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _CINIT ".cinit" /* initialized C data */
+#define _SCONST ".const" /* constants */
+#define _SWITCH ".switch" /* switch tables */
+#define _STACK ".stack" /* C stack */
+#define _SYSMEM ".sysmem" /* used for malloc et al. syscalls */
+
+/********************** LINE NUMBERS **********************/
+
+/* 1 line number entry for every "breakpointable" source line in a section.
+ * Line numbers are grouped on a per function basis; first entry in a function
+ * grouping will have l_lnno = 0 and in place of physical address will be the
+ * symbol table index of the function name.
+ */
+struct external_lineno {
+ union {
+ char l_symndx[4]; /* function name symbol index, iff l_lnno == 0*/
+ char l_paddr[4]; /* (physical) address of line number */
+ } l_addr;
+ char l_lnno[2]; /* line number */
+};
+
+#define LINENO struct external_lineno
+#define LINESZ 6
+
+
+/********************** SYMBOLS **********************/
+
+/* NOTE: this is what a local label looks like in assembly source; what it
+ looks like in COFF output is undefined */
+#define TICOFF_LOCAL_LABEL_P(NAME) \
+((NAME[0] == '$' && NAME[1] >= '0' && NAME[1] <= '9' && NAME[2] == '\0') \
+ || NAME[strlen(NAME)-1] == '?')
+
+#define E_SYMNMLEN 8 /* # characters in a symbol name */
+#define E_FILNMLEN 14 /* # characters in a file name */
+#define E_DIMNUM 4 /* # array dimensions in auxiliary entry */
+
+struct external_syment
+{
+ union {
+ char e_name[E_SYMNMLEN];
+ struct {
+ char e_zeroes[4];
+ char e_offset[4];
+ } e;
+ } e;
+ char e_value[4];
+ char e_scnum[2];
+ char e_type[2];
+ char e_sclass[1];
+ char e_numaux[1];
+};
+
+
+#define N_BTMASK (017)
+#define N_TMASK (060)
+#define N_BTSHFT (4)
+#define N_TSHIFT (2)
+
+
+union external_auxent {
+ struct {
+ char x_tagndx[4]; /* str, un, or enum tag indx */
+ union {
+ struct {
+ char x_lnno[2]; /* declaration line number */
+ char x_size[2]; /* str/union/array size */
+ } x_lnsz;
+ char x_fsize[4]; /* size of function */
+ } x_misc;
+ union {
+ struct { /* if ISFCN, tag, or .bb */
+ char x_lnnoptr[4]; /* ptr to fcn line # */
+ char x_endndx[4]; /* entry ndx past block end */
+ } x_fcn;
+ struct { /* if ISARY, up to 4 dimen. */
+ char x_dimen[E_DIMNUM][2];
+ } x_ary;
+ } x_fcnary;
+ char x_tvndx[2]; /* tv index */
+ } x_sym;
+
+ union {
+ char x_fname[E_FILNMLEN];
+ struct {
+ char x_zeroes[4];
+ char x_offset[4];
+ } x_n;
+ } x_file;
+
+ struct {
+ char x_scnlen[4]; /* section length */
+ char x_nreloc[2]; /* # relocation entries */
+ char x_nlinno[2]; /* # line numbers */
+ } x_scn;
+
+ struct {
+ char x_tvfill[4]; /* tv fill value */
+ char x_tvlen[2]; /* length of .tv */
+ char x_tvran[2][2]; /* tv range */
+ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
+
+
+};
+
+#define SYMENT struct external_syment
+#define SYMESZ 18
+#define AUXENT union external_auxent
+#define AUXESZ 18
+
+/* section lengths are in target bytes (not host bytes) */
+#define GET_SCN_SCNLEN(ABFD, EXT) \
+ (H_GET_32 (ABFD, (EXT)->x_scn.x_scnlen) * bfd_octets_per_byte (ABFD))
+#define PUT_SCN_SCNLEN(ABFD, INT, EXT) \
+ H_PUT_32 (ABFD, (INT) / bfd_octets_per_byte (ABFD), (EXT)->x_scn.x_scnlen)
+
+/* lnsz size is in bits in COFF file, in bytes in BFD */
+#define GET_LNSZ_SIZE(abfd, ext) \
+ (H_GET_16 (abfd, ext->x_sym.x_misc.x_lnsz.x_size) / (class != C_FIELD ? 8 : 1))
+
+#define PUT_LNSZ_SIZE(abfd, in, ext) \
+ H_PUT_16 (abfd, ((class != C_FIELD) ? (in) * 8 : (in)), \
+ ext->x_sym.x_misc.x_lnsz.x_size)
+
+/* TI COFF stores offsets for MOS and MOU in bits; BFD expects bytes
+ Also put the load page flag of the section into the symbol value if it's an
+ address. */
+#ifndef NEEDS_PAGE
+#define NEEDS_PAGE(X) 0
+#define PAGE_MASK 0
+#endif
+#define COFF_ADJUST_SYM_IN_POST(ABFD, EXT, INT) \
+ do \
+ { \
+ struct internal_syment *dst = (struct internal_syment *)(INT); \
+ if (dst->n_sclass == C_MOS || dst->n_sclass == C_MOU) \
+ dst->n_value /= 8; \
+ else if (NEEDS_PAGE (dst->n_sclass)) { \
+ asection *scn = coff_section_from_bfd_index (abfd, dst->n_scnum); \
+ dst->n_value |= (scn->lma & PAGE_MASK); \
+ } \
+ } \
+ while (0)
+
+#define COFF_ADJUST_SYM_OUT_POST(ABFD, INT, EXT) \
+ do \
+ { \
+ struct internal_syment *src = (struct internal_syment *)(INT); \
+ SYMENT *dst = (SYMENT *)(EXT); \
+ if (src->n_sclass == C_MOU || src->n_sclass == C_MOS) \
+ H_PUT_32 (abfd, src->n_value * 8, dst->e_value); \
+ else if (NEEDS_PAGE (src->n_sclass)) { \
+ H_PUT_32 (abfd, src->n_value &= ~PAGE_MASK, dst->e_value); \
+ } \
+ } \
+ while (0)
+
+/* Detect section-relative absolute symbols so they get flagged with a sym
+ index of -1.
+*/
+#define SECTION_RELATIVE_ABSOLUTE_SYMBOL_P(RELOC, SECT) \
+ ((*(RELOC)->sym_ptr_ptr)->section->output_section == (SECT) \
+ && (RELOC)->howto->name[0] == 'A')
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc_v0
+{
+ char r_vaddr[4];
+ char r_symndx[2];
+ char r_reserved[2];
+ char r_type[2];
+};
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_reserved[2]; /* extended pmad byte for COFF2 */
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ_V0 10 /* FIXME -- coffcode.h needs fixing */
+#define RELSZ 12 /* for COFF1/2 */
+
+/* various relocation types. */
+#define R_ABS 0x0000 /* no relocation */
+#define R_REL13 0x002A /* 13-bit direct reference (???) */
+#define R_PARTLS7 0x0028 /* 7 LSBs of an address */
+#define R_PARTMS9 0x0029 /* 9MSBs of an address */
+#define R_EXTWORD 0x002B /* 23-bit direct reference */
+#define R_EXTWORD16 0x002C /* 16-bit direct reference to 23-bit addr*/
+#define R_EXTWORDMS7 0x002D /* upper 7 bits of 23-bit address */
+
+#endif /* COFF_TI_H */
diff --git a/include/coff/tic30.h b/include/coff/tic30.h
new file mode 100644
index 000000000..30bf9dca9
--- /dev/null
+++ b/include/coff/tic30.h
@@ -0,0 +1,50 @@
+/* coff information for Texas Instruments TMS320C3X
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+#define TIC30MAGIC 0xC000
+
+#define TIC30BADMAG(x) (((x).f_magic != TIC30MAGIC))
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the z8k don't have room in the instruction for the entire
+ offset - eg with segments */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+/* TMS320C30 relocation types. */
+
+#define R_TIC30_ABS16 0x100 /* 16 bit absolute. */
+#define R_TIC30_ABS24 0x101 /* 24 bit absolute. */
+#define R_TIC30_ABS32 0x102 /* 32 bit absolute. */
+#define R_TIC30_LDP 0x103 /* LDP bits 23-16 to 7-0. */
+#define R_TIC30_PC16 0x104 /* 16 bit pc relative. */
diff --git a/include/coff/tic4x.h b/include/coff/tic4x.h
new file mode 100644
index 000000000..0d224b253
--- /dev/null
+++ b/include/coff/tic4x.h
@@ -0,0 +1,46 @@
+/* TI COFF information for Texas Instruments TMS320C4X/C3X.
+ This file customizes the settings in coff/ti.h.
+
+ Copyright 2002, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef COFF_TIC4X_H
+#define COFF_TIC4X_H
+
+#define TIC4X_TARGET_ID 0x0093
+/* Octets per byte, as a power of two. */
+#define TI_TARGET_ID TIC4X_TARGET_ID
+#define OCTETS_PER_BYTE_POWER 2
+/* Add to howto to get absolute/sect-relative version. */
+#define HOWTO_BANK 6
+#define TICOFF_TARGET_ARCH bfd_arch_tic4x
+/* We use COFF2. */
+#define TICOFF_DEFAULT_MAGIC TICOFF2MAGIC
+
+#define TICOFF_TARGET_MACHINE_GET(FLAGS) \
+ (((FLAGS) & F_VERS) ? bfd_mach_tic4x : bfd_mach_tic3x)
+
+#define TICOFF_TARGET_MACHINE_SET(FLAGSP, MACHINE) \
+ do \
+ { \
+ if ((MACHINE) == bfd_mach_tic4x) \
+ *(FLAGSP) |= F_VERS; \
+ } \
+ while (0)
+
+#include "coff/ti.h"
+
+#endif /* COFF_TIC4X_H */
diff --git a/include/coff/tic54x.h b/include/coff/tic54x.h
new file mode 100644
index 000000000..a7b7003a9
--- /dev/null
+++ b/include/coff/tic54x.h
@@ -0,0 +1,59 @@
+/* TI COFF information for Texas Instruments TMS320C54X.
+ This file customizes the settings in coff/ti.h.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef COFF_TIC54X_H
+#define COFF_TIC54X_H
+
+#define TIC54X_TARGET_ID 0x98
+#define TIC54XALGMAGIC 0x009B /* c54x algebraic assembler output */
+#define TIC5X_TARGET_ID 0x92
+#define TI_TARGET_ID TIC54X_TARGET_ID
+#define OCTETS_PER_BYTE_POWER 1 /* octets per byte, as a power of two */
+#define HOWTO_BANK 6 /* add to howto to get absolute/sect-relative version */
+#define TICOFF_TARGET_ARCH bfd_arch_tic54x
+#define TICOFF_DEFAULT_MAGIC TICOFF1MAGIC /* we use COFF1 for compatibility */
+
+/* Page macros
+
+ The first GDB port requires flags in its remote memory access commands to
+ distinguish between data/prog space. Hopefully we can make this go away
+ eventually. Stuff the page in the upper bits of a 32-bit address, since
+ the c5x family only uses 16 or 23 bits.
+
+ c2x, c5x and most c54x devices have 16-bit addresses, but the c548 has
+ 23-bit program addresses. Make sure the page flags don't interfere.
+ These flags are used by GDB to identify the destination page for
+ addresses.
+*/
+
+/* Recognized load pages (by common convention). */
+#define PG_PROG 0x0 /* PROG page */
+#define PG_DATA 0x1 /* DATA page */
+#define PG_IO 0x2 /* I/O page */
+
+/** Indicate whether the given storage class requires a page flag. */
+#define NEEDS_PAGE(X) ((X)==C_EXT)
+#define PAGE_MASK 0xFF000000
+#define ADDR_MASK 0x00FFFFFF
+#define PG_TO_FLAG(p) (((unsigned long)(p) & 0xFF) << 24)
+#define FLAG_TO_PG(f) (((f) >> 24) & 0xFF)
+
+#include "coff/ti.h"
+
+#endif /* COFF_TIC54X_H */
diff --git a/include/coff/tic80.h b/include/coff/tic80.h
new file mode 100644
index 000000000..c9347eb9e
--- /dev/null
+++ b/include/coff/tic80.h
@@ -0,0 +1,122 @@
+/* coff information for TI TMS320C80 (MVP)
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define DO_NOT_DEFINE_FILHDR
+#define DO_NOT_DEFINE_SCNHDR
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/********************** FILE HEADER **********************/
+
+struct external_filehdr
+ {
+ char f_magic[2]; /* magic number */
+ char f_nscns[2]; /* number of sections */
+ char f_timdat[4]; /* time & date stamp */
+ char f_symptr[4]; /* file pointer to symtab */
+ char f_nsyms[4]; /* number of symtab entries */
+ char f_opthdr[2]; /* sizeof(optional hdr) */
+ char f_flags[2]; /* flags */
+ char f_target_id[2];/* target id (TIc80 specific) */
+};
+
+#define TIC80_ARCH_MAGIC 0x0C1 /* Goes in the file header magic number field */
+#define TIC80_TARGET_ID 0x95 /* Goes in the target id field */
+
+#define TIC80BADMAG(x) ((x).f_magic != TIC80_ARCH_MAGIC)
+
+#define FILHDR struct external_filehdr
+#define FILHSZ 22
+
+#define TIC80_AOUTHDR_MAGIC 0x108 /* Goes in the optional file header magic number field */
+
+/********************** SECTION HEADER **********************/
+
+struct external_scnhdr
+{
+ char s_name[8]; /* section name */
+ char s_paddr[4]; /* physical address, aliased s_nlib */
+ char s_vaddr[4]; /* virtual address */
+ char s_size[4]; /* section size */
+ char s_scnptr[4]; /* file ptr to raw data for section */
+ char s_relptr[4]; /* file ptr to relocation */
+ char s_lnnoptr[4]; /* file ptr to line numbers */
+ char s_nreloc[2]; /* number of relocation entries */
+ char s_nlnno[2]; /* number of line number entries*/
+ char s_flags[2]; /* flags */
+ char s_reserved[1]; /* reserved (TIc80 specific) */
+ char s_mempage[1]; /* memory page number (TIc80) */
+};
+
+/* Names of "special" sections. */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _CINIT ".cinit"
+#define _CONST ".const"
+#define _SWITCH ".switch"
+#define _STACK ".stack"
+#define _SYSMEM ".sysmem"
+
+#define SCNHDR struct external_scnhdr
+#define SCNHSZ 40
+
+/* FIXME - need to correlate external_auxent with
+ TIc80 Code Generation Tools User's Guide, CG:A-25 */
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the h8 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes. */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_reserved[2];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 12
+
+/* TIc80 relocation types. */
+
+#define R_ABS 0x00 /* Absolute address - no relocation */
+#define R_RELLONGX 0x11 /* PP: 32 bits, direct */
+#define R_PPBASE 0x34 /* PP: Global base address type */
+#define R_PPLBASE 0x35 /* PP: Local base address type */
+#define R_PP15 0x38 /* PP: Global 15 bit offset */
+#define R_PP15W 0x39 /* PP: Global 15 bit offset divided by 4 */
+#define R_PP15H 0x3A /* PP: Global 15 bit offset divided by 2 */
+#define R_PP16B 0x3B /* PP: Global 16 bit offset for bytes */
+#define R_PPL15 0x3C /* PP: Local 15 bit offset */
+#define R_PPL15W 0x3D /* PP: Local 15 bit offset divided by 4 */
+#define R_PPL15H 0x3E /* PP: Local 15 bit offset divided by 2 */
+#define R_PPL16B 0x3F /* PP: Local 16 bit offset for bytes */
+#define R_PPN15 0x40 /* PP: Global 15 bit negative offset */
+#define R_PPN15W 0x41 /* PP: Global 15 bit negative offset divided by 4 */
+#define R_PPN15H 0x42 /* PP: Global 15 bit negative offset divided by 2 */
+#define R_PPN16B 0x43 /* PP: Global 16 bit negative byte offset */
+#define R_PPLN15 0x44 /* PP: Local 15 bit negative offset */
+#define R_PPLN15W 0x45 /* PP: Local 15 bit negative offset divided by 4 */
+#define R_PPLN15H 0x46 /* PP: Local 15 bit negative offset divided by 2 */
+#define R_PPLN16B 0x47 /* PP: Local 16 bit negative byte offset */
+#define R_MPPCR15W 0x4E /* MP: 15 bit PC-relative divided by 4 */
+#define R_MPPCR 0x4F /* MP: 32 bit PC-relative divided by 4 */
diff --git a/include/coff/w65.h b/include/coff/w65.h
new file mode 100644
index 000000000..0baa3d39b
--- /dev/null
+++ b/include/coff/w65.h
@@ -0,0 +1,46 @@
+/* coff information for WDC 65816
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+#define W65MAGIC 0x6500
+
+#define W65BADMAG(x) (((x).f_magic != W65MAGIC))
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the w65 don't have room in the instruction for the entire
+ offset - eg the strange jump and high page addressing modes */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+
+
+
diff --git a/include/coff/we32k.h b/include/coff/we32k.h
new file mode 100644
index 000000000..7e2791c27
--- /dev/null
+++ b/include/coff/we32k.h
@@ -0,0 +1,60 @@
+/* coff information for we32k
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+#define L_LNNO_SIZE 2
+#include "coff/external.h"
+
+/* Bits for f_flags:
+ F_RELFLG relocation info stripped from file
+ F_EXEC file is executable (no unresolved external references)
+ F_LNNO line numbers stripped from file
+ F_LSYMS local symbols stripped from file
+ F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax). */
+
+#define F_RELFLG (0x0001)
+#define F_EXEC (0x0002)
+#define F_LNNO (0x0004)
+#define F_LSYMS (0x0008)
+#define F_BM32B (0020000)
+#define F_BM32MAU (0040000)
+
+#define WE32KMAGIC 0x170 /* we32k sans transfer vector */
+#define FBOMAGIC 0x170 /* we32k sans transfer vector */
+#define MTVMAGIC 0x171 /* we32k with transfer vector */
+#define RBOMAGIC 0x172 /* reserved */
+#define WE32KBADMAG(x) ( ((x).f_magic != WE32KMAGIC) \
+ && ((x).f_magic != FBOMAGIC) \
+ && ((x).f_magic != RBOMAGIC) \
+ && ((x).f_magic != MTVMAGIC))
+
+/* More names of "special" sections. */
+#define _TV ".tv"
+#define _INIT ".init"
+#define _FINI ".fini"
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_type[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 10
+
diff --git a/include/coff/xcoff.h b/include/coff/xcoff.h
new file mode 100644
index 000000000..64a9ee164
--- /dev/null
+++ b/include/coff/xcoff.h
@@ -0,0 +1,639 @@
+/* Internal format of XCOFF object file data structures for BFD.
+
+ Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Free Software Foundation, Inc.
+ Written by Ian Lance Taylor <ian@cygnus.com>, Cygnus Support.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _INTERNAL_XCOFF_H
+#define _INTERNAL_XCOFF_H
+
+/* Linker */
+
+/* Names of "special" sections. */
+#define _TEXT ".text"
+#define _DATA ".data"
+#define _BSS ".bss"
+#define _PAD ".pad"
+#define _LOADER ".loader"
+#define _EXCEPT ".except"
+#define _TYPCHK ".typchk"
+
+/* XCOFF uses a special .loader section with type STYP_LOADER. */
+#define STYP_LOADER 0x1000
+
+/* XCOFF uses a special .debug section with type STYP_DEBUG. */
+#define STYP_DEBUG 0x2000
+
+/* XCOFF handles line number or relocation overflow by creating
+ another section header with STYP_OVRFLO set. */
+#define STYP_OVRFLO 0x8000
+
+/* Specifies an exception section. A section of this type provides
+ information to identify the reason that a trap or ececptin occured within
+ and executable object program */
+#define STYP_EXCEPT 0x0100
+
+/* Specifies a type check section. A section of this type contains parameter
+ argument type check strings used by the AIX binder. */
+#define STYP_TYPCHK 0x4000
+
+#define RS6K_AOUTHDR_OMAGIC 0x0107 /* old: text & data writeable */
+#define RS6K_AOUTHDR_NMAGIC 0x0108 /* new: text r/o, data r/w */
+#define RS6K_AOUTHDR_ZMAGIC 0x010B /* paged: text r/o, both page-aligned */
+
+/* XCOFF relocation types.
+ The relocations are described in the function
+ xcoff[64]_ppc_relocate_section in coff64-rs6000.c and coff-rs6000.c */
+
+#define R_POS (0x00)
+#define R_NEG (0x01)
+#define R_REL (0x02)
+#define R_TOC (0x03)
+#define R_RTB (0x04)
+#define R_GL (0x05)
+#define R_TCL (0x06)
+#define R_BA (0x08)
+#define R_BR (0x0a)
+#define R_RL (0x0c)
+#define R_RLA (0x0d)
+#define R_REF (0x0f)
+#define R_TRL (0x12)
+#define R_TRLA (0x13)
+#define R_RRTBI (0x14)
+#define R_RRTBA (0x15)
+#define R_CAI (0x16)
+#define R_CREL (0x17)
+#define R_RBA (0x18)
+#define R_RBAC (0x19)
+#define R_RBR (0x1a)
+#define R_RBRC (0x1b)
+
+/* Storage class #defines, from /usr/include/storclass.h that are not already
+ defined in internal.h */
+
+/* Comment string in .info section */
+#define C_INFO 110
+
+/* Auxillary Symbol Entries */
+
+/* x_smtyp values: */
+#define SMTYP_ALIGN(x) ((x) >> 3) /* log2 of alignment */
+#define SMTYP_SMTYP(x) ((x) & 0x7) /* symbol type */
+/* Symbol type values: */
+#define XTY_ER 0 /* External reference */
+#define XTY_SD 1 /* Csect definition */
+#define XTY_LD 2 /* Label definition */
+#define XTY_CM 3 /* .BSS */
+#define XTY_EM 4 /* Error message */
+#define XTY_US 5 /* "Reserved for internal use" */
+
+/* x_smclas values: */
+#define XMC_PR 0 /* Read-only program code */
+#define XMC_RO 1 /* Read-only constant */
+#define XMC_DB 2 /* Read-only debug dictionary table */
+#define XMC_TC 3 /* Read-write general TOC entry */
+#define XMC_UA 4 /* Read-write unclassified */
+#define XMC_RW 5 /* Read-write data */
+#define XMC_GL 6 /* Read-only global linkage */
+#define XMC_XO 7 /* Read-only extended operation */
+#define XMC_SV 8 /* Read-only supervisor call */
+#define XMC_BS 9 /* Read-write BSS */
+#define XMC_DS 10 /* Read-write descriptor csect */
+#define XMC_UC 11 /* Read-write unnamed Fortran common */
+#define XMC_TI 12 /* Read-only traceback index csect */
+#define XMC_TB 13 /* Read-only traceback table csect */
+/* 14 ??? */
+#define XMC_TC0 15 /* Read-write TOC anchor */
+#define XMC_TD 16 /* Read-write data in TOC */
+#define XMC_SV64 17 /* Read-only 64 bit supervisor call */
+#define XMC_SV3264 18 /* Read-only 32 or 64 bit supervisor call */
+
+/* The ldhdr structure. This appears at the start of the .loader
+ section. */
+
+struct internal_ldhdr
+{
+ /* The version number:
+ 1 : 32 bit
+ 2 : 64 bit */
+ unsigned long l_version;
+
+ /* The number of symbol table entries. */
+ bfd_size_type l_nsyms;
+
+ /* The number of relocation table entries. */
+ bfd_size_type l_nreloc;
+
+ /* The length of the import file string table. */
+ bfd_size_type l_istlen;
+
+ /* The number of import files. */
+ bfd_size_type l_nimpid;
+
+ /* The offset from the start of the .loader section to the first
+ entry in the import file table. */
+ bfd_size_type l_impoff;
+
+ /* The length of the string table. */
+ bfd_size_type l_stlen;
+
+ /* The offset from the start of the .loader section to the first
+ entry in the string table. */
+ bfd_size_type l_stoff;
+
+ /* The offset to start of the symbol table, only in XCOFF64 */
+ bfd_vma l_symoff;
+
+ /* The offset to the start of the relocation table, only in XCOFF64 */
+ bfd_vma l_rldoff;
+};
+
+/* The ldsym structure. This is used to represent a symbol in the
+ .loader section. */
+
+struct internal_ldsym
+{
+ union
+ {
+ /* The symbol name if <= SYMNMLEN characters. */
+ char _l_name[SYMNMLEN];
+ struct
+ {
+ /* Zero if the symbol name is more than SYMNMLEN characters. */
+ long _l_zeroes;
+
+ /* The offset in the string table if the symbol name is more
+ than SYMNMLEN characters. */
+ long _l_offset;
+ }
+ _l_l;
+ }
+ _l;
+
+ /* The symbol value. */
+ bfd_vma l_value;
+
+ /* The symbol section number. */
+ short l_scnum;
+
+ /* The symbol type and flags. */
+ char l_smtype;
+
+ /* The symbol storage class. */
+ char l_smclas;
+
+ /* The import file ID. */
+ bfd_size_type l_ifile;
+
+ /* Offset to the parameter type check string. */
+ bfd_size_type l_parm;
+};
+
+/* These flags are for the l_smtype field (the lower three bits are an
+ XTY_* value). */
+
+/* Imported symbol. */
+#define L_IMPORT (0x40)
+/* Entry point. */
+#define L_ENTRY (0x20)
+/* Exported symbol. */
+#define L_EXPORT (0x10)
+
+/* The ldrel structure. This is used to represent a reloc in the
+ .loader section. */
+
+struct internal_ldrel
+{
+ /* The reloc address. */
+ bfd_vma l_vaddr;
+
+ /* The symbol table index in the .loader section symbol table. */
+ bfd_size_type l_symndx;
+
+ /* The relocation type and size. */
+ short l_rtype;
+
+ /* The section number this relocation applies to. */
+ short l_rsecnm;
+};
+
+/* An entry in the XCOFF linker hash table. */
+struct xcoff_link_hash_entry
+{
+ struct bfd_link_hash_entry root;
+
+ /* Symbol index in output file. Set to -1 initially. Set to -2 if
+ there is a reloc against this symbol. */
+ long indx;
+
+ /* If we have created a TOC entry for this symbol, this is the .tc
+ section which holds it. */
+ asection *toc_section;
+
+ union
+ {
+ /* If we have created a TOC entry (the XCOFF_SET_TOC flag is
+ set), this is the offset in toc_section. */
+ bfd_vma toc_offset;
+
+ /* If the TOC entry comes from an input file, this is set to the
+ symbol index of the C_HIDEXT XMC_TC or XMC_TD symbol. */
+ long toc_indx;
+ }
+ u;
+
+ /* If this symbol is a function entry point which is called, this
+ field holds a pointer to the function descriptor. If this symbol
+ is a function descriptor, this field holds a pointer to the
+ function entry point. */
+ struct xcoff_link_hash_entry *descriptor;
+
+ /* The .loader symbol table entry, if there is one. */
+ struct internal_ldsym *ldsym;
+
+ /* If XCOFF_BUILT_LDSYM is set, this is the .loader symbol table
+ index. If XCOFF_BUILD_LDSYM is clear, and XCOFF_IMPORT is set,
+ this is the l_ifile value. */
+ long ldindx;
+
+ /* Some linker flags. */
+ unsigned long flags;
+
+ /* The storage mapping class. */
+ unsigned char smclas;
+};
+
+/* Flags for xcoff_link_hash_entry. */
+
+/* Symbol is referenced by a regular object. */
+#define XCOFF_REF_REGULAR 0x00000001
+/* Symbol is defined by a regular object. */
+#define XCOFF_DEF_REGULAR 0x00000002
+/* Symbol is defined by a dynamic object. */
+#define XCOFF_DEF_DYNAMIC 0x00000004
+/* Symbol is used in a reloc being copied into the .loader section. */
+#define XCOFF_LDREL 0x00000008
+/* Symbol is the entry point. */
+#define XCOFF_ENTRY 0x00000010
+/* Symbol is called; this is, it appears in a R_BR reloc. */
+#define XCOFF_CALLED 0x00000020
+/* Symbol needs the TOC entry filled in. */
+#define XCOFF_SET_TOC 0x00000040
+/* Symbol is explicitly imported. */
+#define XCOFF_IMPORT 0x00000080
+/* Symbol is explicitly exported. */
+#define XCOFF_EXPORT 0x00000100
+/* Symbol has been processed by xcoff_build_ldsyms. */
+#define XCOFF_BUILT_LDSYM 0x00000200
+/* Symbol is mentioned by a section which was not garbage collected. */
+#define XCOFF_MARK 0x00000400
+/* Symbol size is recorded in size_list list from hash table. */
+#define XCOFF_HAS_SIZE 0x00000800
+/* Symbol is a function descriptor. */
+#define XCOFF_DESCRIPTOR 0x00001000
+/* Multiple definitions have been for the symbol. */
+#define XCOFF_MULTIPLY_DEFINED 0x00002000
+/* Symbol is the __rtinit symbol. */
+#define XCOFF_RTINIT 0x00004000
+/* Symbol is an imported 32 bit syscall. */
+#define XCOFF_SYSCALL32 0x00008000
+/* Symbol is an imported 64 bit syscall. */
+#define XCOFF_SYSCALL64 0x00010000
+
+/* The XCOFF linker hash table. */
+
+#define XCOFF_NUMBER_OF_SPECIAL_SECTIONS 6
+#define XCOFF_SPECIAL_SECTION_TEXT 0
+#define XCOFF_SPECIAL_SECTION_ETEXT 1
+#define XCOFF_SPECIAL_SECTION_DATA 2
+#define XCOFF_SPECIAL_SECTION_EDATA 3
+#define XCOFF_SPECIAL_SECTION_END 4
+#define XCOFF_SPECIAL_SECTION_END2 5
+
+struct xcoff_link_hash_table
+{
+ struct bfd_link_hash_table root;
+
+ /* The .debug string hash table. We need to compute this while
+ reading the input files, so that we know how large the .debug
+ section will be before we assign section positions. */
+ struct bfd_strtab_hash *debug_strtab;
+
+ /* The .debug section we will use for the final output. */
+ asection *debug_section;
+
+ /* The .loader section we will use for the final output. */
+ asection *loader_section;
+
+ /* A count of non TOC relative relocs which will need to be
+ allocated in the .loader section. */
+ size_t ldrel_count;
+
+ /* The .loader section header. */
+ struct internal_ldhdr ldhdr;
+
+ /* The .gl section we use to hold global linkage code. */
+ asection *linkage_section;
+
+ /* The .tc section we use to hold toc entries we build for global
+ linkage code. */
+ asection *toc_section;
+
+ /* The .ds section we use to hold function descriptors which we
+ create for exported symbols. */
+ asection *descriptor_section;
+
+ /* The list of import files. */
+ struct xcoff_import_file *imports;
+
+ /* Required alignment of sections within the output file. */
+ unsigned long file_align;
+
+ /* Whether the .text section must be read-only. */
+ bfd_boolean textro;
+
+ /* Whether garbage collection was done. */
+ bfd_boolean gc;
+
+ /* A linked list of symbols for which we have size information. */
+ struct xcoff_link_size_list
+ {
+ struct xcoff_link_size_list *next;
+ struct xcoff_link_hash_entry *h;
+ bfd_size_type size;
+ }
+ *size_list;
+
+ /* Magic sections: _text, _etext, _data, _edata, _end, end. */
+ asection *special_sections[XCOFF_NUMBER_OF_SPECIAL_SECTIONS];
+};
+
+
+/* This structure is used to pass information through
+ xcoff_link_hash_traverse. */
+
+struct xcoff_loader_info
+{
+ /* Set if a problem occurred. */
+ bfd_boolean failed;
+
+ /* Output BFD. */
+ bfd *output_bfd;
+
+ /* Link information structure. */
+ struct bfd_link_info *info;
+
+ /* Whether all defined symbols should be exported. */
+ bfd_boolean export_defineds;
+
+ /* Number of ldsym structures. */
+ size_t ldsym_count;
+
+ /* Size of string table. */
+ size_t string_size;
+
+ /* String table. */
+ bfd_byte *strings;
+
+ /* Allocated size of string table. */
+ size_t string_alc;
+};
+
+/* In case we're on a 32-bit machine, construct a 64-bit "-1" value
+ from smaller values. Start with zero, widen, *then* decrement. */
+#define MINUS_ONE (((bfd_vma) 0) - 1)
+
+/* __rtinit, from /usr/include/rtinit.h. */
+struct __rtinit
+{
+ /* Pointer to runtime linker.
+ XXX: Is the parameter really void? */
+ int (*rtl) (void);
+
+ /* Offset to array of init functions, 0 if none. */
+ int init_offset;
+
+ /* Offset to array of fini functions, 0 if none. */
+ int fini_offset;
+
+ /* Size of __RTINIT_DESCRIPTOR. This value should be used instead of
+ sizeof(__RTINIT_DESCRIPTOR). */
+ int __rtinit_descriptor_size;
+};
+
+#define RTINIT_DESCRIPTOR_SIZE (12)
+
+struct __rtinit_descriptor
+{
+ /* Init/fini function. */
+ int f;
+
+ /* Offset, relative to the start of the __rtinit symbol, to name of the
+ function. */
+
+ int name_offset;
+
+ /* Flags */
+ unsigned char flags;
+};
+
+/* Archive */
+
+#define XCOFFARMAG "<aiaff>\012"
+#define XCOFFARMAGBIG "<bigaf>\012"
+#define SXCOFFARMAG 8
+
+/* The size of the ascii archive elements */
+#define XCOFFARMAG_ELEMENT_SIZE 12
+#define XCOFFARMAGBIG_ELEMENT_SIZE 20
+
+/* This terminates an XCOFF archive member name. */
+
+#define XCOFFARFMAG "`\012"
+#define SXCOFFARFMAG 2
+
+/* XCOFF archives start with this (printable) structure. */
+
+struct xcoff_ar_file_hdr
+{
+ /* Magic string. */
+ char magic[SXCOFFARMAG];
+
+ /* Offset of the member table (decimal ASCII string). */
+ char memoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* Offset of the global symbol table (decimal ASCII string). */
+ char symoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* Offset of the first member in the archive (decimal ASCII string). */
+ char firstmemoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* Offset of the last member in the archive (decimal ASCII string). */
+ char lastmemoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* Offset of the first member on the free list (decimal ASCII
+ string). */
+ char freeoff[XCOFFARMAG_ELEMENT_SIZE];
+};
+
+#define SIZEOF_AR_FILE_HDR (SXCOFFARMAG + 5 * XCOFFARMAG_ELEMENT_SIZE)
+
+/* This is the equivalent data structure for the big archive format. */
+
+struct xcoff_ar_file_hdr_big
+{
+ /* Magic string. */
+ char magic[SXCOFFARMAG];
+
+ /* Offset of the member table (decimal ASCII string). */
+ char memoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* Offset of the global symbol table for 32-bit objects (decimal ASCII
+ string). */
+ char symoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* Offset of the global symbol table for 64-bit objects (decimal ASCII
+ string). */
+ char symoff64[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* Offset of the first member in the archive (decimal ASCII string). */
+ char firstmemoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* Offset of the last member in the archive (decimal ASCII string). */
+ char lastmemoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* Offset of the first member on the free list (decimal ASCII
+ string). */
+ char freeoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+};
+
+#define SIZEOF_AR_FILE_HDR_BIG (SXCOFFARMAG + 6 * XCOFFARMAGBIG_ELEMENT_SIZE)
+
+/* Each XCOFF archive member starts with this (printable) structure. */
+
+struct xcoff_ar_hdr
+{
+ /* File size not including the header (decimal ASCII string). */
+ char size[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* File offset of next archive member (decimal ASCII string). */
+ char nextoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* File offset of previous archive member (decimal ASCII string). */
+ char prevoff[XCOFFARMAG_ELEMENT_SIZE];
+
+ /* File mtime (decimal ASCII string). */
+ char date[12];
+
+ /* File UID (decimal ASCII string). */
+ char uid[12];
+
+ /* File GID (decimal ASCII string). */
+ char gid[12];
+
+ /* File mode (octal ASCII string). */
+ char mode[12];
+
+ /* Length of file name (decimal ASCII string). */
+ char namlen[4];
+
+ /* This structure is followed by the file name. The length of the
+ name is given in the namlen field. If the length of the name is
+ odd, the name is followed by a null byte. The name and optional
+ null byte are followed by XCOFFARFMAG, which is not included in
+ namlen. The contents of the archive member follow; the number of
+ bytes is given in the size field. */
+};
+
+#define SIZEOF_AR_HDR (3 * XCOFFARMAG_ELEMENT_SIZE + 4 * 12 + 4)
+
+/* The equivalent for the big archive format. */
+
+struct xcoff_ar_hdr_big
+{
+ /* File size not including the header (decimal ASCII string). */
+ char size[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* File offset of next archive member (decimal ASCII string). */
+ char nextoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* File offset of previous archive member (decimal ASCII string). */
+ char prevoff[XCOFFARMAGBIG_ELEMENT_SIZE];
+
+ /* File mtime (decimal ASCII string). */
+ char date[12];
+
+ /* File UID (decimal ASCII string). */
+ char uid[12];
+
+ /* File GID (decimal ASCII string). */
+ char gid[12];
+
+ /* File mode (octal ASCII string). */
+ char mode[12];
+
+ /* Length of file name (decimal ASCII string). */
+ char namlen[4];
+
+ /* This structure is followed by the file name. The length of the
+ name is given in the namlen field. If the length of the name is
+ odd, the name is followed by a null byte. The name and optional
+ null byte are followed by XCOFFARFMAG, which is not included in
+ namlen. The contents of the archive member follow; the number of
+ bytes is given in the size field. */
+};
+
+#define SIZEOF_AR_HDR_BIG (3 * XCOFFARMAGBIG_ELEMENT_SIZE + 4 * 12 + 4)
+
+/* We often have to distinguish between the old and big file format.
+ Make it a bit cleaner. We can use `xcoff_ardata' here because the
+ `hdr' member has the same size and position in both formats.
+ <bigaf> is the default format, return TRUE even when xcoff_ardata is
+ NULL. */
+#ifndef SMALL_ARCHIVE
+/* Creates big archives by default */
+#define xcoff_big_format_p(abfd) \
+ ((NULL != bfd_ardata (abfd) && NULL == xcoff_ardata (abfd)) || \
+ ((NULL != bfd_ardata (abfd)) && \
+ (NULL != xcoff_ardata (abfd)) && \
+ (xcoff_ardata (abfd)->magic[1] == 'b')))
+#else
+/* Creates small archives by default. */
+#define xcoff_big_format_p(abfd) \
+ (((NULL != bfd_ardata (abfd)) && \
+ (NULL != xcoff_ardata (abfd)) && \
+ (xcoff_ardata (abfd)->magic[1] == 'b')))
+#endif
+
+/* We store a copy of the xcoff_ar_file_hdr in the tdata field of the
+ artdata structure. Similar for the big archive. */
+#define xcoff_ardata(abfd) \
+ ((struct xcoff_ar_file_hdr *) bfd_ardata (abfd)->tdata)
+#define xcoff_ardata_big(abfd) \
+ ((struct xcoff_ar_file_hdr_big *) bfd_ardata (abfd)->tdata)
+
+/* We store a copy of the xcoff_ar_hdr in the arelt_data field of an
+ archive element. Similar for the big archive. */
+#define arch_eltdata(bfd) ((struct areltdata *) ((bfd)->arelt_data))
+#define arch_xhdr(bfd) \
+ ((struct xcoff_ar_hdr *) arch_eltdata (bfd)->arch_header)
+#define arch_xhdr_big(bfd) \
+ ((struct xcoff_ar_hdr_big *) arch_eltdata (bfd)->arch_header)
+
+#endif /* _INTERNAL_XCOFF_H */
diff --git a/include/coff/z8k.h b/include/coff/z8k.h
new file mode 100644
index 000000000..50cbd6b3a
--- /dev/null
+++ b/include/coff/z8k.h
@@ -0,0 +1,48 @@
+/* coff information for Zilog Z800N
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+/* Type of cpu is stored in flags */
+#define F_Z8001 0x1000
+#define F_Z8002 0x2000
+#define F_MACHMASK 0xf000
+
+#define Z8KMAGIC 0x8000
+
+#define Z8KBADMAG(x) (((x).f_magic != Z8KMAGIC))
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the z8k don't have room in the instruction for the entire
+ offset - eg with segments. */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
diff --git a/include/demangle.h b/include/demangle.h
new file mode 100644
index 000000000..b3b8c58c5
--- /dev/null
+++ b/include/demangle.h
@@ -0,0 +1,533 @@
+/* Defs for interface to demanglers.
+ Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002,
+ 2003, 2004 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+
+#if !defined (DEMANGLE_H)
+#define DEMANGLE_H
+
+#include "libiberty.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+/* Options passed to cplus_demangle (in 2nd parameter). */
+
+#define DMGL_NO_OPTS 0 /* For readability... */
+#define DMGL_PARAMS (1 << 0) /* Include function args */
+#define DMGL_ANSI (1 << 1) /* Include const, volatile, etc */
+#define DMGL_JAVA (1 << 2) /* Demangle as Java rather than C++. */
+#define DMGL_VERBOSE (1 << 3) /* Include implementation details. */
+#define DMGL_TYPES (1 << 4) /* Also try to demangle type encodings. */
+
+#define DMGL_AUTO (1 << 8)
+#define DMGL_GNU (1 << 9)
+#define DMGL_LUCID (1 << 10)
+#define DMGL_ARM (1 << 11)
+#define DMGL_HP (1 << 12) /* For the HP aCC compiler;
+ same as ARM except for
+ template arguments, etc. */
+#define DMGL_EDG (1 << 13)
+#define DMGL_GNU_V3 (1 << 14)
+#define DMGL_GNAT (1 << 15)
+
+/* If none of these are set, use 'current_demangling_style' as the default. */
+#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG|DMGL_GNU_V3|DMGL_JAVA|DMGL_GNAT)
+
+/* Enumeration of possible demangling styles.
+
+ Lucid and ARM styles are still kept logically distinct, even though
+ they now both behave identically. The resulting style is actual the
+ union of both. I.E. either style recognizes both "__pt__" and "__rf__"
+ for operator "->", even though the first is lucid style and the second
+ is ARM style. (FIXME?) */
+
+extern enum demangling_styles
+{
+ no_demangling = -1,
+ unknown_demangling = 0,
+ auto_demangling = DMGL_AUTO,
+ gnu_demangling = DMGL_GNU,
+ lucid_demangling = DMGL_LUCID,
+ arm_demangling = DMGL_ARM,
+ hp_demangling = DMGL_HP,
+ edg_demangling = DMGL_EDG,
+ gnu_v3_demangling = DMGL_GNU_V3,
+ java_demangling = DMGL_JAVA,
+ gnat_demangling = DMGL_GNAT
+} current_demangling_style;
+
+/* Define string names for the various demangling styles. */
+
+#define NO_DEMANGLING_STYLE_STRING "none"
+#define AUTO_DEMANGLING_STYLE_STRING "auto"
+#define GNU_DEMANGLING_STYLE_STRING "gnu"
+#define LUCID_DEMANGLING_STYLE_STRING "lucid"
+#define ARM_DEMANGLING_STYLE_STRING "arm"
+#define HP_DEMANGLING_STYLE_STRING "hp"
+#define EDG_DEMANGLING_STYLE_STRING "edg"
+#define GNU_V3_DEMANGLING_STYLE_STRING "gnu-v3"
+#define JAVA_DEMANGLING_STYLE_STRING "java"
+#define GNAT_DEMANGLING_STYLE_STRING "gnat"
+
+/* Some macros to test what demangling style is active. */
+
+#define CURRENT_DEMANGLING_STYLE current_demangling_style
+#define AUTO_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_AUTO)
+#define GNU_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU)
+#define LUCID_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_LUCID)
+#define ARM_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_ARM)
+#define HP_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_HP)
+#define EDG_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_EDG)
+#define GNU_V3_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU_V3)
+#define JAVA_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_JAVA)
+#define GNAT_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNAT)
+
+/* Provide information about the available demangle styles. This code is
+ pulled from gdb into libiberty because it is useful to binutils also. */
+
+extern const struct demangler_engine
+{
+ const char *const demangling_style_name;
+ const enum demangling_styles demangling_style;
+ const char *const demangling_style_doc;
+} libiberty_demanglers[];
+
+extern char *
+cplus_demangle PARAMS ((const char *mangled, int options));
+
+extern int
+cplus_demangle_opname PARAMS ((const char *opname, char *result, int options));
+
+extern const char *
+cplus_mangle_opname PARAMS ((const char *opname, int options));
+
+/* Note: This sets global state. FIXME if you care about multi-threading. */
+
+extern void
+set_cplus_marker_for_demangling PARAMS ((int ch));
+
+extern enum demangling_styles
+cplus_demangle_set_style PARAMS ((enum demangling_styles style));
+
+extern enum demangling_styles
+cplus_demangle_name_to_style PARAMS ((const char *name));
+
+/* V3 ABI demangling entry points, defined in cp-demangle.c. */
+extern char*
+cplus_demangle_v3 PARAMS ((const char* mangled, int options));
+
+extern char*
+java_demangle_v3 PARAMS ((const char* mangled));
+
+
+enum gnu_v3_ctor_kinds {
+ gnu_v3_complete_object_ctor = 1,
+ gnu_v3_base_object_ctor,
+ gnu_v3_complete_object_allocating_ctor
+};
+
+/* Return non-zero iff NAME is the mangled form of a constructor name
+ in the G++ V3 ABI demangling style. Specifically, return an `enum
+ gnu_v3_ctor_kinds' value indicating what kind of constructor
+ it is. */
+extern enum gnu_v3_ctor_kinds
+ is_gnu_v3_mangled_ctor PARAMS ((const char *name));
+
+
+enum gnu_v3_dtor_kinds {
+ gnu_v3_deleting_dtor = 1,
+ gnu_v3_complete_object_dtor,
+ gnu_v3_base_object_dtor
+};
+
+/* Return non-zero iff NAME is the mangled form of a destructor name
+ in the G++ V3 ABI demangling style. Specifically, return an `enum
+ gnu_v3_dtor_kinds' value, indicating what kind of destructor
+ it is. */
+extern enum gnu_v3_dtor_kinds
+ is_gnu_v3_mangled_dtor PARAMS ((const char *name));
+
+/* The V3 demangler works in two passes. The first pass builds a tree
+ representation of the mangled name, and the second pass turns the
+ tree representation into a demangled string. Here we define an
+ interface to permit a caller to build their own tree
+ representation, which they can pass to the demangler to get a
+ demangled string. This can be used to canonicalize user input into
+ something which the demangler might output. It could also be used
+ by other demanglers in the future. */
+
+/* These are the component types which may be found in the tree. Many
+ component types have one or two subtrees, referred to as left and
+ right (a component type with only one subtree puts it in the left
+ subtree). */
+
+enum demangle_component_type
+{
+ /* A name, with a length and a pointer to a string. */
+ DEMANGLE_COMPONENT_NAME,
+ /* A qualified name. The left subtree is a class or namespace or
+ some such thing, and the right subtree is a name qualified by
+ that class. */
+ DEMANGLE_COMPONENT_QUAL_NAME,
+ /* A local name. The left subtree describes a function, and the
+ right subtree is a name which is local to that function. */
+ DEMANGLE_COMPONENT_LOCAL_NAME,
+ /* A typed name. The left subtree is a name, and the right subtree
+ describes that name as a function. */
+ DEMANGLE_COMPONENT_TYPED_NAME,
+ /* A template. The left subtree is a template name, and the right
+ subtree is a template argument list. */
+ DEMANGLE_COMPONENT_TEMPLATE,
+ /* A template parameter. This holds a number, which is the template
+ parameter index. */
+ DEMANGLE_COMPONENT_TEMPLATE_PARAM,
+ /* A constructor. This holds a name and the kind of
+ constructor. */
+ DEMANGLE_COMPONENT_CTOR,
+ /* A destructor. This holds a name and the kind of destructor. */
+ DEMANGLE_COMPONENT_DTOR,
+ /* A vtable. This has one subtree, the type for which this is a
+ vtable. */
+ DEMANGLE_COMPONENT_VTABLE,
+ /* A VTT structure. This has one subtree, the type for which this
+ is a VTT. */
+ DEMANGLE_COMPONENT_VTT,
+ /* A construction vtable. The left subtree is the type for which
+ this is a vtable, and the right subtree is the derived type for
+ which this vtable is built. */
+ DEMANGLE_COMPONENT_CONSTRUCTION_VTABLE,
+ /* A typeinfo structure. This has one subtree, the type for which
+ this is the tpeinfo structure. */
+ DEMANGLE_COMPONENT_TYPEINFO,
+ /* A typeinfo name. This has one subtree, the type for which this
+ is the typeinfo name. */
+ DEMANGLE_COMPONENT_TYPEINFO_NAME,
+ /* A typeinfo function. This has one subtree, the type for which
+ this is the tpyeinfo function. */
+ DEMANGLE_COMPONENT_TYPEINFO_FN,
+ /* A thunk. This has one subtree, the name for which this is a
+ thunk. */
+ DEMANGLE_COMPONENT_THUNK,
+ /* A virtual thunk. This has one subtree, the name for which this
+ is a virtual thunk. */
+ DEMANGLE_COMPONENT_VIRTUAL_THUNK,
+ /* A covariant thunk. This has one subtree, the name for which this
+ is a covariant thunk. */
+ DEMANGLE_COMPONENT_COVARIANT_THUNK,
+ /* A Java class. This has one subtree, the type. */
+ DEMANGLE_COMPONENT_JAVA_CLASS,
+ /* A guard variable. This has one subtree, the name for which this
+ is a guard variable. */
+ DEMANGLE_COMPONENT_GUARD,
+ /* A reference temporary. This has one subtree, the name for which
+ this is a temporary. */
+ DEMANGLE_COMPONENT_REFTEMP,
+ /* A standard substitution. This holds the name of the
+ substitution. */
+ DEMANGLE_COMPONENT_SUB_STD,
+ /* The restrict qualifier. The one subtree is the type which is
+ being qualified. */
+ DEMANGLE_COMPONENT_RESTRICT,
+ /* The volatile qualifier. The one subtree is the type which is
+ being qualified. */
+ DEMANGLE_COMPONENT_VOLATILE,
+ /* The const qualifier. The one subtree is the type which is being
+ qualified. */
+ DEMANGLE_COMPONENT_CONST,
+ /* The restrict qualifier modifying a member function. The one
+ subtree is the type which is being qualified. */
+ DEMANGLE_COMPONENT_RESTRICT_THIS,
+ /* The volatile qualifier modifying a member function. The one
+ subtree is the type which is being qualified. */
+ DEMANGLE_COMPONENT_VOLATILE_THIS,
+ /* The const qualifier modifying a member function. The one subtree
+ is the type which is being qualified. */
+ DEMANGLE_COMPONENT_CONST_THIS,
+ /* A vendor qualifier. The left subtree is the type which is being
+ qualified, and the right subtree is the name of the
+ qualifier. */
+ DEMANGLE_COMPONENT_VENDOR_TYPE_QUAL,
+ /* A pointer. The one subtree is the type which is being pointed
+ to. */
+ DEMANGLE_COMPONENT_POINTER,
+ /* A reference. The one subtree is the type which is being
+ referenced. */
+ DEMANGLE_COMPONENT_REFERENCE,
+ /* A complex type. The one subtree is the base type. */
+ DEMANGLE_COMPONENT_COMPLEX,
+ /* An imaginary type. The one subtree is the base type. */
+ DEMANGLE_COMPONENT_IMAGINARY,
+ /* A builtin type. This holds the builtin type information. */
+ DEMANGLE_COMPONENT_BUILTIN_TYPE,
+ /* A vendor's builtin type. This holds the name of the type. */
+ DEMANGLE_COMPONENT_VENDOR_TYPE,
+ /* A function type. The left subtree is the return type. The right
+ subtree is a list of ARGLIST nodes. Either or both may be
+ NULL. */
+ DEMANGLE_COMPONENT_FUNCTION_TYPE,
+ /* An array type. The left subtree is the dimension, which may be
+ NULL, or a string (represented as DEMANGLE_COMPONENT_NAME), or an
+ expression. The right subtree is the element type. */
+ DEMANGLE_COMPONENT_ARRAY_TYPE,
+ /* A pointer to member type. The left subtree is the class type,
+ and the right subtree is the member type. CV-qualifiers appear
+ on the latter. */
+ DEMANGLE_COMPONENT_PTRMEM_TYPE,
+ /* An argument list. The left subtree is the current argument, and
+ the right subtree is either NULL or another ARGLIST node. */
+ DEMANGLE_COMPONENT_ARGLIST,
+ /* A template argument list. The left subtree is the current
+ template argument, and the right subtree is either NULL or
+ another TEMPLATE_ARGLIST node. */
+ DEMANGLE_COMPONENT_TEMPLATE_ARGLIST,
+ /* An operator. This holds information about a standard
+ operator. */
+ DEMANGLE_COMPONENT_OPERATOR,
+ /* An extended operator. This holds the number of arguments, and
+ the name of the extended operator. */
+ DEMANGLE_COMPONENT_EXTENDED_OPERATOR,
+ /* A typecast, represented as a unary operator. The one subtree is
+ the type to which the argument should be cast. */
+ DEMANGLE_COMPONENT_CAST,
+ /* A unary expression. The left subtree is the operator, and the
+ right subtree is the single argument. */
+ DEMANGLE_COMPONENT_UNARY,
+ /* A binary expression. The left subtree is the operator, and the
+ right subtree is a BINARY_ARGS. */
+ DEMANGLE_COMPONENT_BINARY,
+ /* Arguments to a binary expression. The left subtree is the first
+ argument, and the right subtree is the second argument. */
+ DEMANGLE_COMPONENT_BINARY_ARGS,
+ /* A trinary expression. The left subtree is the operator, and the
+ right subtree is a TRINARY_ARG1. */
+ DEMANGLE_COMPONENT_TRINARY,
+ /* Arguments to a trinary expression. The left subtree is the first
+ argument, and the right subtree is a TRINARY_ARG2. */
+ DEMANGLE_COMPONENT_TRINARY_ARG1,
+ /* More arguments to a trinary expression. The left subtree is the
+ second argument, and the right subtree is the third argument. */
+ DEMANGLE_COMPONENT_TRINARY_ARG2,
+ /* A literal. The left subtree is the type, and the right subtree
+ is the value, represented as a DEMANGLE_COMPONENT_NAME. */
+ DEMANGLE_COMPONENT_LITERAL,
+ /* A negative literal. Like LITERAL, but the value is negated.
+ This is a minor hack: the NAME used for LITERAL points directly
+ to the mangled string, but since negative numbers are mangled
+ using 'n' instead of '-', we want a way to indicate a negative
+ number which involves neither modifying the mangled string nor
+ allocating a new copy of the literal in memory. */
+ DEMANGLE_COMPONENT_LITERAL_NEG
+};
+
+/* Types which are only used internally. */
+
+struct demangle_operator_info;
+struct demangle_builtin_type_info;
+
+/* A node in the tree representation is an instance of a struct
+ demangle_component. Note that the field names of the struct are
+ not well protected against macros defined by the file including
+ this one. We can fix this if it ever becomes a problem. */
+
+struct demangle_component
+{
+ /* The type of this component. */
+ enum demangle_component_type type;
+
+ union
+ {
+ /* For DEMANGLE_COMPONENT_NAME. */
+ struct
+ {
+ /* A pointer to the name (which need not NULL terminated) and
+ its length. */
+ const char *s;
+ int len;
+ } s_name;
+
+ /* For DEMANGLE_COMPONENT_OPERATOR. */
+ struct
+ {
+ /* Operator. */
+ const struct demangle_operator_info *op;
+ } s_operator;
+
+ /* For DEMANGLE_COMPONENT_EXTENDED_OPERATOR. */
+ struct
+ {
+ /* Number of arguments. */
+ int args;
+ /* Name. */
+ struct demangle_component *name;
+ } s_extended_operator;
+
+ /* For DEMANGLE_COMPONENT_CTOR. */
+ struct
+ {
+ /* Kind of constructor. */
+ enum gnu_v3_ctor_kinds kind;
+ /* Name. */
+ struct demangle_component *name;
+ } s_ctor;
+
+ /* For DEMANGLE_COMPONENT_DTOR. */
+ struct
+ {
+ /* Kind of destructor. */
+ enum gnu_v3_dtor_kinds kind;
+ /* Name. */
+ struct demangle_component *name;
+ } s_dtor;
+
+ /* For DEMANGLE_COMPONENT_BUILTIN_TYPE. */
+ struct
+ {
+ /* Builtin type. */
+ const struct demangle_builtin_type_info *type;
+ } s_builtin;
+
+ /* For DEMANGLE_COMPONENT_SUB_STD. */
+ struct
+ {
+ /* Standard substitution string. */
+ const char* string;
+ /* Length of string. */
+ int len;
+ } s_string;
+
+ /* For DEMANGLE_COMPONENT_TEMPLATE_PARAM. */
+ struct
+ {
+ /* Template parameter index. */
+ long number;
+ } s_number;
+
+ /* For other types. */
+ struct
+ {
+ /* Left (or only) subtree. */
+ struct demangle_component *left;
+ /* Right subtree. */
+ struct demangle_component *right;
+ } s_binary;
+
+ } u;
+};
+
+/* People building mangled trees are expected to allocate instances of
+ struct demangle_component themselves. They can then call one of
+ the following functions to fill them in. */
+
+/* Fill in most component types with a left subtree and a right
+ subtree. Returns non-zero on success, zero on failure, such as an
+ unrecognized or inappropriate component type. */
+
+extern int
+cplus_demangle_fill_component PARAMS ((struct demangle_component *fill,
+ enum demangle_component_type,
+ struct demangle_component *left,
+ struct demangle_component *right));
+
+/* Fill in a DEMANGLE_COMPONENT_NAME. Returns non-zero on success,
+ zero for bad arguments. */
+
+extern int
+cplus_demangle_fill_name PARAMS ((struct demangle_component *fill,
+ const char *, int));
+
+/* Fill in a DEMANGLE_COMPONENT_BUILTIN_TYPE, using the name of the
+ builtin type (e.g., "int", etc.). Returns non-zero on success,
+ zero if the type is not recognized. */
+
+extern int
+cplus_demangle_fill_builtin_type PARAMS ((struct demangle_component *fill,
+ const char *type_name));
+
+/* Fill in a DEMANGLE_COMPONENT_OPERATOR, using the name of the
+ operator and the number of arguments which it takes (the latter is
+ used to disambiguate operators which can be both binary and unary,
+ such as '-'). Returns non-zero on success, zero if the operator is
+ not recognized. */
+
+extern int
+cplus_demangle_fill_operator PARAMS ((struct demangle_component *fill,
+ const char *opname, int args));
+
+/* Fill in a DEMANGLE_COMPONENT_EXTENDED_OPERATOR, providing the
+ number of arguments and the name. Returns non-zero on success,
+ zero for bad arguments. */
+
+extern int
+cplus_demangle_fill_extended_operator PARAMS ((struct demangle_component *fill,
+ int numargs,
+ struct demangle_component *nm));
+
+/* Fill in a DEMANGLE_COMPONENT_CTOR. Returns non-zero on success,
+ zero for bad arguments. */
+
+extern int
+cplus_demangle_fill_ctor PARAMS ((struct demangle_component *fill,
+ enum gnu_v3_ctor_kinds kind,
+ struct demangle_component *name));
+
+/* Fill in a DEMANGLE_COMPONENT_DTOR. Returns non-zero on success,
+ zero for bad arguments. */
+
+extern int
+cplus_demangle_fill_dtor PARAMS ((struct demangle_component *fill,
+ enum gnu_v3_dtor_kinds kind,
+ struct demangle_component *name));
+
+/* This function translates a mangled name into a struct
+ demangle_component tree. The first argument is the mangled name.
+ The second argument is DMGL_* options. This returns a pointer to a
+ tree on success, or NULL on failure. On success, the third
+ argument is set to a block of memory allocated by malloc. This
+ block should be passed to free when the tree is no longer
+ needed. */
+
+extern struct demangle_component *
+cplus_demangle_v3_components PARAMS ((const char *mangled,
+ int options,
+ void **mem));
+
+/* This function takes a struct demangle_component tree and returns
+ the corresponding demangled string. The first argument is DMGL_*
+ options. The second is the tree to demangle. The third is a guess
+ at the length of the demangled string, used to initially allocate
+ the return buffer. The fourth is a pointer to a size_t. On
+ success, this function returns a buffer allocated by malloc(), and
+ sets the size_t pointed to by the fourth argument to the size of
+ the allocated buffer (not the length of the returned string). On
+ failure, this function returns NULL, and sets the size_t pointed to
+ by the fourth argument to 0 for an invalid tree, or to 1 for a
+ memory allocation error. */
+
+extern char *
+cplus_demangle_print PARAMS ((int options,
+ const struct demangle_component *tree,
+ int estimated_length,
+ size_t *p_allocated_size));
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* DEMANGLE_H */
diff --git a/include/dis-asm.h b/include/dis-asm.h
new file mode 100644
index 000000000..7171c847a
--- /dev/null
+++ b/include/dis-asm.h
@@ -0,0 +1,318 @@
+/* Interface between the opcode library and its callers.
+
+ Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+ Written by Cygnus Support, 1993.
+
+ The opcode library (libopcodes.a) provides instruction decoders for
+ a large variety of instruction sets, callable with an identical
+ interface, for making instruction-processing programs more independent
+ of the instruction set being processed. */
+
+#ifndef DIS_ASM_H
+#define DIS_ASM_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdio.h>
+#include "bfd.h"
+
+typedef int (*fprintf_ftype) (void *, const char*, ...);
+
+enum dis_insn_type {
+ dis_noninsn, /* Not a valid instruction */
+ dis_nonbranch, /* Not a branch instruction */
+ dis_branch, /* Unconditional branch */
+ dis_condbranch, /* Conditional branch */
+ dis_jsr, /* Jump to subroutine */
+ dis_condjsr, /* Conditional jump to subroutine */
+ dis_dref, /* Data reference instruction */
+ dis_dref2 /* Two data references in instruction */
+};
+
+/* This struct is passed into the instruction decoding routine,
+ and is passed back out into each callback. The various fields are used
+ for conveying information from your main routine into your callbacks,
+ for passing information into the instruction decoders (such as the
+ addresses of the callback functions), or for passing information
+ back from the instruction decoders to their callers.
+
+ It must be initialized before it is first passed; this can be done
+ by hand, or using one of the initialization macros below. */
+
+typedef struct disassemble_info {
+ fprintf_ftype fprintf_func;
+ void *stream;
+ void *application_data;
+
+ /* Target description. We could replace this with a pointer to the bfd,
+ but that would require one. There currently isn't any such requirement
+ so to avoid introducing one we record these explicitly. */
+ /* The bfd_flavour. This can be bfd_target_unknown_flavour. */
+ enum bfd_flavour flavour;
+ /* The bfd_arch value. */
+ enum bfd_architecture arch;
+ /* The bfd_mach value. */
+ unsigned long mach;
+ /* Endianness (for bi-endian cpus). Mono-endian cpus can ignore this. */
+ enum bfd_endian endian;
+ /* An arch/mach-specific bitmask of selected instruction subsets, mainly
+ for processors with run-time-switchable instruction sets. The default,
+ zero, means that there is no constraint. CGEN-based opcodes ports
+ may use ISA_foo masks. */
+ unsigned long insn_sets;
+
+ /* Some targets need information about the current section to accurately
+ display insns. If this is NULL, the target disassembler function
+ will have to make its best guess. */
+ asection *section;
+
+ /* An array of pointers to symbols either at the location being disassembled
+ or at the start of the function being disassembled. The array is sorted
+ so that the first symbol is intended to be the one used. The others are
+ present for any misc. purposes. This is not set reliably, but if it is
+ not NULL, it is correct. */
+ asymbol **symbols;
+ /* Number of symbols in array. */
+ int num_symbols;
+
+ /* For use by the disassembler.
+ The top 16 bits are reserved for public use (and are documented here).
+ The bottom 16 bits are for the internal use of the disassembler. */
+ unsigned long flags;
+#define INSN_HAS_RELOC 0x80000000
+ void *private_data;
+
+ /* Function used to get bytes to disassemble. MEMADDR is the
+ address of the stuff to be disassembled, MYADDR is the address to
+ put the bytes in, and LENGTH is the number of bytes to read.
+ INFO is a pointer to this struct.
+ Returns an errno value or 0 for success. */
+ int (*read_memory_func)
+ (bfd_vma memaddr, bfd_byte *myaddr, unsigned int length,
+ struct disassemble_info *info);
+
+ /* Function which should be called if we get an error that we can't
+ recover from. STATUS is the errno value from read_memory_func and
+ MEMADDR is the address that we were trying to read. INFO is a
+ pointer to this struct. */
+ void (*memory_error_func)
+ (int status, bfd_vma memaddr, struct disassemble_info *info);
+
+ /* Function called to print ADDR. */
+ void (*print_address_func)
+ (bfd_vma addr, struct disassemble_info *info);
+
+ /* Function called to determine if there is a symbol at the given ADDR.
+ If there is, the function returns 1, otherwise it returns 0.
+ This is used by ports which support an overlay manager where
+ the overlay number is held in the top part of an address. In
+ some circumstances we want to include the overlay number in the
+ address, (normally because there is a symbol associated with
+ that address), but sometimes we want to mask out the overlay bits. */
+ int (* symbol_at_address_func)
+ (bfd_vma addr, struct disassemble_info * info);
+
+ /* Function called to check if a SYMBOL is can be displayed to the user.
+ This is used by some ports that want to hide special symbols when
+ displaying debugging outout. */
+ bfd_boolean (* symbol_is_valid)
+ (asymbol *, struct disassemble_info * info);
+
+ /* These are for buffer_read_memory. */
+ bfd_byte *buffer;
+ bfd_vma buffer_vma;
+ unsigned int buffer_length;
+
+ /* This variable may be set by the instruction decoder. It suggests
+ the number of bytes objdump should display on a single line. If
+ the instruction decoder sets this, it should always set it to
+ the same value in order to get reasonable looking output. */
+ int bytes_per_line;
+
+ /* The next two variables control the way objdump displays the raw data. */
+ /* For example, if bytes_per_line is 8 and bytes_per_chunk is 4, the */
+ /* output will look like this:
+ 00: 00000000 00000000
+ with the chunks displayed according to "display_endian". */
+ int bytes_per_chunk;
+ enum bfd_endian display_endian;
+
+ /* Number of octets per incremented target address
+ Normally one, but some DSPs have byte sizes of 16 or 32 bits. */
+ unsigned int octets_per_byte;
+
+ /* Results from instruction decoders. Not all decoders yet support
+ this information. This info is set each time an instruction is
+ decoded, and is only valid for the last such instruction.
+
+ To determine whether this decoder supports this information, set
+ insn_info_valid to 0, decode an instruction, then check it. */
+
+ char insn_info_valid; /* Branch info has been set. */
+ char branch_delay_insns; /* How many sequential insn's will run before
+ a branch takes effect. (0 = normal) */
+ char data_size; /* Size of data reference in insn, in bytes */
+ enum dis_insn_type insn_type; /* Type of instruction */
+ bfd_vma target; /* Target address of branch or dref, if known;
+ zero if unknown. */
+ bfd_vma target2; /* Second target address for dref2 */
+
+ /* Command line options specific to the target disassembler. */
+ char * disassembler_options;
+
+} disassemble_info;
+
+
+/* Standard disassemblers. Disassemble one instruction at the given
+ target address. Return number of octets processed. */
+typedef int (*disassembler_ftype) (bfd_vma, disassemble_info *);
+
+extern int print_insn_big_mips (bfd_vma, disassemble_info *);
+extern int print_insn_little_mips (bfd_vma, disassemble_info *);
+extern int print_insn_i386 (bfd_vma, disassemble_info *);
+extern int print_insn_i386_att (bfd_vma, disassemble_info *);
+extern int print_insn_i386_intel (bfd_vma, disassemble_info *);
+extern int print_insn_ia64 (bfd_vma, disassemble_info *);
+extern int print_insn_i370 (bfd_vma, disassemble_info *);
+extern int print_insn_m68hc11 (bfd_vma, disassemble_info *);
+extern int print_insn_m68hc12 (bfd_vma, disassemble_info *);
+extern int print_insn_m68k (bfd_vma, disassemble_info *);
+extern int print_insn_z8001 (bfd_vma, disassemble_info *);
+extern int print_insn_z8002 (bfd_vma, disassemble_info *);
+extern int print_insn_h8300 (bfd_vma, disassemble_info *);
+extern int print_insn_h8300h (bfd_vma, disassemble_info *);
+extern int print_insn_h8300s (bfd_vma, disassemble_info *);
+extern int print_insn_h8500 (bfd_vma, disassemble_info *);
+extern int print_insn_alpha (bfd_vma, disassemble_info *);
+extern int print_insn_big_arm (bfd_vma, disassemble_info *);
+extern int print_insn_little_arm (bfd_vma, disassemble_info *);
+extern int print_insn_sparc (bfd_vma, disassemble_info *);
+extern int print_insn_big_a29k (bfd_vma, disassemble_info *);
+extern int print_insn_little_a29k (bfd_vma, disassemble_info *);
+extern int print_insn_avr (bfd_vma, disassemble_info *);
+extern int print_insn_d10v (bfd_vma, disassemble_info *);
+extern int print_insn_d30v (bfd_vma, disassemble_info *);
+extern int print_insn_dlx (bfd_vma, disassemble_info *);
+extern int print_insn_fr30 (bfd_vma, disassemble_info *);
+extern int print_insn_hppa (bfd_vma, disassemble_info *);
+extern int print_insn_i860 (bfd_vma, disassemble_info *);
+extern int print_insn_i960 (bfd_vma, disassemble_info *);
+extern int print_insn_ip2k (bfd_vma, disassemble_info *);
+extern int print_insn_m32r (bfd_vma, disassemble_info *);
+extern int print_insn_m88k (bfd_vma, disassemble_info *);
+extern int print_insn_mcore (bfd_vma, disassemble_info *);
+extern int print_insn_mmix (bfd_vma, disassemble_info *);
+extern int print_insn_mn10200 (bfd_vma, disassemble_info *);
+extern int print_insn_mn10300 (bfd_vma, disassemble_info *);
+extern int print_insn_msp430 (bfd_vma, disassemble_info *);
+extern int print_insn_ns32k (bfd_vma, disassemble_info *);
+extern int print_insn_crx (bfd_vma, disassemble_info *);
+extern int print_insn_openrisc (bfd_vma, disassemble_info *);
+extern int print_insn_big_or32 (bfd_vma, disassemble_info *);
+extern int print_insn_little_or32 (bfd_vma, disassemble_info *);
+extern int print_insn_pdp11 (bfd_vma, disassemble_info *);
+extern int print_insn_pj (bfd_vma, disassemble_info *);
+extern int print_insn_big_powerpc (bfd_vma, disassemble_info *);
+extern int print_insn_little_powerpc (bfd_vma, disassemble_info *);
+extern int print_insn_rs6000 (bfd_vma, disassemble_info *);
+extern int print_insn_s390 (bfd_vma, disassemble_info *);
+extern int print_insn_sh (bfd_vma, disassemble_info *);
+extern int print_insn_tic30 (bfd_vma, disassemble_info *);
+extern int print_insn_tic4x (bfd_vma, disassemble_info *);
+extern int print_insn_tic54x (bfd_vma, disassemble_info *);
+extern int print_insn_tic80 (bfd_vma, disassemble_info *);
+extern int print_insn_v850 (bfd_vma, disassemble_info *);
+extern int print_insn_vax (bfd_vma, disassemble_info *);
+extern int print_insn_w65 (bfd_vma, disassemble_info *);
+extern int print_insn_xstormy16 (bfd_vma, disassemble_info *);
+extern int print_insn_xtensa (bfd_vma, disassemble_info *);
+extern int print_insn_sh64 (bfd_vma, disassemble_info *);
+extern int print_insn_sh64x_media (bfd_vma, disassemble_info *);
+extern int print_insn_frv (bfd_vma, disassemble_info *);
+extern int print_insn_iq2000 (bfd_vma, disassemble_info *);
+
+extern disassembler_ftype arc_get_disassembler (void *);
+extern disassembler_ftype cris_get_disassembler (bfd *);
+
+extern void print_mips_disassembler_options (FILE *);
+extern void print_ppc_disassembler_options (FILE *);
+extern void print_arm_disassembler_options (FILE *);
+extern void parse_arm_disassembler_option (char *);
+extern int get_arm_regname_num_options (void);
+extern int set_arm_regname_option (int);
+extern int get_arm_regnames (int, const char **, const char **, const char ***);
+extern bfd_boolean arm_symbol_is_valid (asymbol *, struct disassemble_info *);
+
+/* Fetch the disassembler for a given BFD, if that support is available. */
+extern disassembler_ftype disassembler (bfd *);
+
+/* Amend the disassemble_info structure as necessary for the target architecture.
+ Should only be called after initialising the info->arch field. */
+extern void disassemble_init_for_target (struct disassemble_info * info);
+
+/* Document any target specific options available from the disassembler. */
+extern void disassembler_usage (FILE *);
+
+
+/* This block of definitions is for particular callers who read instructions
+ into a buffer before calling the instruction decoder. */
+
+/* Here is a function which callers may wish to use for read_memory_func.
+ It gets bytes from a buffer. */
+extern int buffer_read_memory
+ (bfd_vma, bfd_byte *, unsigned int, struct disassemble_info *);
+
+/* This function goes with buffer_read_memory.
+ It prints a message using info->fprintf_func and info->stream. */
+extern void perror_memory (int, bfd_vma, struct disassemble_info *);
+
+
+/* Just print the address in hex. This is included for completeness even
+ though both GDB and objdump provide their own (to print symbolic
+ addresses). */
+extern void generic_print_address
+ (bfd_vma, struct disassemble_info *);
+
+/* Always true. */
+extern int generic_symbol_at_address
+ (bfd_vma, struct disassemble_info *);
+
+/* Also always true. */
+extern bfd_boolean generic_symbol_is_valid
+ (asymbol *, struct disassemble_info *);
+
+/* Method to initialize a disassemble_info struct. This should be
+ called by all applications creating such a struct. */
+extern void init_disassemble_info (struct disassemble_info *info, void *stream,
+ fprintf_ftype fprintf_func);
+
+/* For compatibility with existing code. */
+#define INIT_DISASSEMBLE_INFO(INFO, STREAM, FPRINTF_FUNC) \
+ init_disassemble_info (&(INFO), (STREAM), (fprintf_ftype) (FPRINTF_FUNC))
+#define INIT_DISASSEMBLE_INFO_NO_ARCH(INFO, STREAM, FPRINTF_FUNC) \
+ init_disassemble_info (&(INFO), (STREAM), (fprintf_ftype) (FPRINTF_FUNC))
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* ! defined (DIS_ASM_H) */
diff --git a/include/dyn-string.h b/include/dyn-string.h
new file mode 100644
index 000000000..85f88b12c
--- /dev/null
+++ b/include/dyn-string.h
@@ -0,0 +1,63 @@
+/* An abstract string datatype.
+ Copyright (C) 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc.
+ Contributed by Mark Mitchell (mark@markmitchell.com).
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+
+typedef struct dyn_string
+{
+ int allocated; /* The amount of space allocated for the string. */
+ int length; /* The actual length of the string. */
+ char *s; /* The string itself, NUL-terminated. */
+}* dyn_string_t;
+
+/* The length STR, in bytes, not including the terminating NUL. */
+#define dyn_string_length(STR) \
+ ((STR)->length)
+
+/* The NTBS in which the contents of STR are stored. */
+#define dyn_string_buf(STR) \
+ ((STR)->s)
+
+/* Compare DS1 to DS2 with strcmp. */
+#define dyn_string_compare(DS1, DS2) \
+ (strcmp ((DS1)->s, (DS2)->s))
+
+
+extern int dyn_string_init PARAMS ((struct dyn_string *, int));
+extern dyn_string_t dyn_string_new PARAMS ((int));
+extern void dyn_string_delete PARAMS ((dyn_string_t));
+extern char *dyn_string_release PARAMS ((dyn_string_t));
+extern dyn_string_t dyn_string_resize PARAMS ((dyn_string_t, int));
+extern void dyn_string_clear PARAMS ((dyn_string_t));
+extern int dyn_string_copy PARAMS ((dyn_string_t, dyn_string_t));
+extern int dyn_string_copy_cstr PARAMS ((dyn_string_t, const char *));
+extern int dyn_string_prepend PARAMS ((dyn_string_t, dyn_string_t));
+extern int dyn_string_prepend_cstr PARAMS ((dyn_string_t, const char *));
+extern int dyn_string_insert PARAMS ((dyn_string_t, int,
+ dyn_string_t));
+extern int dyn_string_insert_cstr PARAMS ((dyn_string_t, int,
+ const char *));
+extern int dyn_string_insert_char PARAMS ((dyn_string_t, int, int));
+extern int dyn_string_append PARAMS ((dyn_string_t, dyn_string_t));
+extern int dyn_string_append_cstr PARAMS ((dyn_string_t, const char *));
+extern int dyn_string_append_char PARAMS ((dyn_string_t, int));
+extern int dyn_string_substring PARAMS ((dyn_string_t,
+ dyn_string_t, int, int));
+extern int dyn_string_eq PARAMS ((dyn_string_t, dyn_string_t));
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
new file mode 100644
index 000000000..6b0cf0d4e
--- /dev/null
+++ b/include/elf/ChangeLog
@@ -0,0 +1,116 @@
+2004-08-25 Dmitry Diky <diwil@spec.ru>
+
+ * msp430.h: Add new relocs.
+
+2004-08-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * i386.h (R_386_USED_BY_INTEL_200): New.
+
+2004-07-29 Alexandre Oliva <aoliva@redhat.com>
+
+ Introduce SH2a support.
+ 2004-02-18 Corinna Vinschen <vinschen@redhat.com>
+ * sh.h (EF_SH2A_NOFPU): New.
+ 2003-12-01 Michael Snyder <msnyder@redhat.com>
+ * sh.h (EF_SH2A): New.
+
+2004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
+
+ * crx.h: Add BFD_RELOC_CRX_SWITCH8, BFD_RELOC_CRX_SWITCH16,
+ BFD_RELOC_CRX_SWITCH32.
+
+2004-07-06 Tomer Levi <Tomer.Levi@nsc.com>
+
+ * common.h (EM_CRX): Define.
+ * crx.h: New file.
+
+2004-06-25 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * m32r.h: Add defintions of R_M32R_GOTOFF_HI_ULO,
+ R_M32R_GOTOFF_HI_SLO and R_M32R_GOTOFF_LO.
+
+2004-06-19 Alan Modra <amodra@bigpond.net.au>
+
+ * common.h (ELF64_R_INFO): Warning fix.
+
+2004-06-14 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (R_MIPS_PC32): Add back (undoing removal on 2004-04-24),
+ with an updated comment.
+
+2004-05-28 Andrew Stubbs <andrew.stubbs@superh.com>
+
+ * sh.h (EF_SH_HAS_DSP): Remove.
+ (EF_SH_HAS_FP): Remove.
+ (EF_SH_MERGE_MACH): Remove.
+ (EF_SH4_NOFPU): Convert to decimal.
+ (EF_SH4A_NOFPU): Likewise.
+ (EF_SH4_NOMMU_NOFPU): Likewise.
+ (EF_SH3_NOMMU): Add new macro.
+ (EF_SH_BFD_TABLE): Likewise.
+ (sh_find_elf_flags): Add prototype.
+ (sh_elf_get_flags_from_mach): Likewise.
+
+2004-04-24 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (R_MIPS_PC32, R_MIPS_PC64, R_MIPS_GNU_REL_LO16)
+ (R_MIPS_GNU_REL_HI16): Remove.
+ (R_MIPS_GNU_REL16_S2): Update comment.
+
+2004-30-30 Galit Heller <Galit.Heller@nsc.com>
+ Tomer Levi <Tomer.Levi@nsc.com>
+
+ * common.h (EM_CR): Define.
+ * cr16c.h: New file.
+
+2004-03-23 Paul Brook <paul@codesourcery.com>
+
+ * arm.h (EF_ERM_BE8, EF_ARM_LE8, EF_ARM_EABI_VER3): Add.
+
+2003-03-03 Andrew Stubbs <andrew.stubbs@superh.com>
+
+ * sh.h: Add EF_SH4_NOMMU_NOFPU.
+
+2004-03-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * frv.h (EF_FRV_CPU_FR405, EF_FRV_CPU_FR450): Define.
+
+2004-01-28 Roland McGrath <roland@redhat.com>
+
+ * common.h (AT_SECURE): New macro.
+
+2004-01-21 Roland McGrath <roland@redhat.com>
+
+ * common.h (AT_SUN_UID, AT_SUN_RUID, AT_SUN_GID): New macros.
+ (AT_SUN_RGID, AT_SUN_LDELF, AT_SUN_LDSHDR, AT_SUN_LDNAME,
+ AT_SUN_LPAGESZ, AT_SUN_PLATFORM, AT_SUN_HWCAP, AT_SUN_IFLUSH,
+ AT_SUN_CPU, AT_SUN_EMUL_ENTRY, AT_SUN_EMUL_EXECFD,
+ AT_SUN_EXECNAME) AT_SUN_MMU, AT_SUN_LDDATA): Likewise.
+
+2004-01-17 Mark Kettenis <kettenis@gnu.org>
+
+ * common.h (NT_OPENBSD_IDENT): Define.
+
+2004-01-06 Alexandre Oliva <aoliva@redhat.com>
+
+ 2003-09-18 Alexandre Oliva <aoliva@redhat.com>
+ * frv.h (EF_FRV_FDPIC): New macro.
+ (EF_FRV_PIC_FLAGS): Adjust.
+ 2003-08-08 Alexandre Oliva <aoliva@redhat.com>
+ * frv.h (R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12,
+ R_FRV_FUNCDESC_GOTOFFLO, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_GOTOFF12,
+ R_FRV_GOTOFFLO, R_FRV_GOTOFFHI): New.
+ 2003-08-04 Alexandre Oliva <aoliva@redhat.com>
+ * frv.h (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC,
+ R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO):
+ New.
+
+
+For older changes see ChangeLog-9103
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/elf/ChangeLog-9103 b/include/elf/ChangeLog-9103
new file mode 100644
index 000000000..713d80d14
--- /dev/null
+++ b/include/elf/ChangeLog-9103
@@ -0,0 +1,1914 @@
+2003-12-19 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf/m32r.h : Added m32r-linux and PIC support. Add new ABI that
+ uses RELA.
+ (R_M32R_16_RELA, R_M32R_32_RELA, R_M32R_24_RELA,
+ R_M32R_10_PCREL_RELA, R_M32R_18_PCREL_RELA,
+ R_M32R_26_PCREL_RELA, R_M32R_HI16_ULO_RELA,
+ R_M32R_HI16_SLO_RELA, R_M32R_LO16_RELA,
+ R_M32R_SDA16_RELA, R_M32R_RELA_GNU_VTINHERIT,
+ R_M32R_RELA_GNU_VTENTRY, R_M32R_GOT24,
+ R_M32R_26_PLTREL, R_M32R_COPY, R_M32R_GLOB_DAT,
+ R_M32R_JMP_SLOT, R_M32R_RELATIVE, R_M32R_GOTOFF,
+ R_M32R_GOTPC24, R_M32R_GOT16_HI_ULO,
+ R_M32R_GOT16_HI_SLO, R_M32R_GOT16_LO,
+ R_M32R_GOTPC_HI_ULO, R_M32R_GOTPC_HI_SLO,
+ R_M32R_GOTPC_LO): New relocs.
+
+2003-12-06 Alan Modra <amodra@bigpond.net.au>
+
+ From Jan Beulich <JBeulich@novell.com>
+ * common.h (DT_HIOS): Correct value.
+
+2003-12-03 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * elf/m32r.h: Add new machine type m32r2 and instruction modes.
+
+2003-11-06 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (R_PPC_RELAX32PC): Define.
+
+2003-10-22 Alexandre Oliva <aoliva@redhat.com>,
+ Michael Snyder <msnyder@redhat.com>
+
+ * sh.h (EF_SH4A, EF_SH4AL_DSP, EF_SH4_NOFPU, EF_SH4A_NOFPU): New.
+ (EF_SH_MERGE_MACH): Combine them.
+
+2003-10-18 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h (R_MMIX_PUSHJ_STUBBABLE): New reloc number.
+ (_bfd_mmix_before_linker_allocation): Rename from
+ _bfd_mmix_prepare_linker_allocated_gregs.
+ (_bfd_mmix_after_linker_allocation): Rename from
+ _bfd_mmix_finalize_linker_allocated_gregs.
+
+2003-10-06 Dave Brolley <brolley@redhat.com>
+
+ * frv.h (EF_FRV_CPU_FR550): New macro.
+
+2003-09-30 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (E_MIPS_ARCH_64R2): New define.
+
+2003-09-23 DJ Delorie <dj@redhat.com>
+
+ * sh.h (R_SH_SWITCH8, R_SH_GNU_VTINHERIT, R_SH_GNU_VTENTRY,
+ R_SH_LOOP_START,R_SH_LOOP_END): Move to "reserved" spaces.
+ (R_SH_DIR16, R_SH_DIR8, R_SH_DIR8UL, R_SH_DIR8UW, R_SH_DIR8U,
+ R_SH_DIR8SW, R_SH_DIR8S, R_SH_DIR4UL, R_SH_DIR4UW, R_SH_DIR4U,
+ R_SH_PSHA, R_SH_PSHL): New.
+
+2003-09-11 James Cownie <jcownie@etnus.com>
+
+ * dwarf2.h: Add HP dwarf extensions from their hacked gdb
+ header files (ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz).
+
+2003-09-04 Nick Clifton <nickc@redhat.com>
+
+ * v850.h (E_V850E1_ARCH): Define.
+
+2003-08-21 James Cownie <jcownie@etnus.com>
+
+ * dwarf2.h: Add PGI dwarf extensions.
+
+2003-08-08 Dmitry Diky <diwil@mail.ru>
+
+ * msp430.h: Add xW42 and xE42 parts. Sort MPU list according to
+ gcc order.
+
+2003-08-07 Alan Modra <amodra@bigpond.net.au>
+
+ * reloc-macros.h (START_RELOC_NUMBERS) : Remove PARAMS macro. Use
+ C90 function definition. Formatting.
+ (RELOC_NUMBER): Remove !__STDC__ code.
+
+2003-07-28 Eric Christopher <echristo@redhat.com>
+
+ * ppc.h (R_PPC_RELAX32): New. Fake relocation.
+
+2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * v850.h (SHF_V850_GPREL): New.
+ (SHF_V850_EPREL): Likewise.
+ (SHF_V850_R0REL): Likewise.
+
+2003-07-09 Alexandre Oliva <aoliva@redhat.com>
+
+ 2001-05-16 Alexandre Oliva <aoliva@redhat.com>
+ * mn10300.h: Introduce GOTPC16, GOTOFF24, GOTOFF16 and
+ PLT16, and rename GOTPC to GOTPC32 and GOTOFF to GOTOFF32.
+ Renumbered all relocs.
+ 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
+ * mn10300.h (R_MN10300_GOTPC, R_MN10300_GOTOFF,
+ R_MN10300_PLT32, R_MN10300_GOT32, R_MN10300_GOT24,
+ R_MN10300_GOT16, R_MN10300_COPY, R_MN10300_GLOB_DAT,
+ R_MN10300_JMP_SLOT, R_MN10300_RELATIVE): New relocs.
+
+2003-07-09 Alexandre Oliva <aoliva@redhat.com>
+
+ 2000-04-01 Alexandre Oliva <aoliva@cygnus.com>
+ * mn10300.h (E_MN10300_MACH_AM33_2): Renamed from
+ E_MN10300_MACH_AM332.
+ 2000-03-31 Alexandre Oliva <aoliva@cygnus.com>
+ * mn10300.h (E_MN10300_MACH_AM332): Defined.
+
+2003-07-01 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h (elf_s390_reloc_type): Add long displacement relocations
+ R_390_20, R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20.
+
+2003-06-29 Andreas Jaeger <aj@suse.de>
+
+ * mmix.h: Convert to ISO C90 prototypes.
+ * mips.h: Likewise.
+
+2003-06-13 Robert Millan <zeratul2@wanadoo.es>
+
+ * common.h (GNU_ABI_TAG_NETBSD): New tag.
+ (GNU_ABI_TAG_FREEBSD): New tag.
+
+2003-06-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * h8.h (E_H8_MACH_H8300SXN): New flag.
+
+2003-06-03 Nick Clifton <nickc@redhat.com>
+
+ * v850.h (R_V850_32): Rename to R_V850_ABS32.
+ Add R_V850_REL32.
+
+2003-05-15 Roland McGrath <roland@redhat.com>
+
+ * common.h (NT_AUXV, AT_*): New macros.
+ * external.h (Elf32_External_Auxv, Elf64_External_Auxv): New types.
+ * internal.h (Elf_Internal_Auxv): New type.
+
+2003-05-14 Michael Snyder <msnyder@redhat.com>
+ From Bernd Schmidt <bernds@redhat.com>
+ * h8.h (E_H8_MACH_H8300SX): New.
+
+2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
+
+ * elf/h8.h (E_H8_MACH_H8300HN, E_H8_MACH_H8300SN): New
+
+2003-04-23 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * common.h (EM_SH): Amend comment to refer to SuperH.
+
+2003-04-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * common.h: Replace references to Mitsubishi M32R with
+ references to Renesas M32R.
+
+2003-04-15 Rohit Kumar Srivastava <rohits@kpitcummins.com>
+
+ * common.h: Replace occurrances of 'Hitachi' with 'Renesas'.
+
+2003-04-01 Bob Wilson <bob.wilson@acm.org>
+
+ * elf/common.h (EM_XTENSA_OLD): Define.
+ * elf/xtensa.h: New file.
+
+2003-04-01 Nick Clifton <nickc@redhat.com>
+
+ * arm.h (ARM_NOTE_SECTION): Include .gnu in the string.
+
+2003-03-25 Stan Cox <scox@redhat.com>
+ Nick Clifton <nickc@redhat.com>
+
+ Contribute support for Intel's iWMMXt chip - an ARM variant:
+
+ * arm.h (ARM_NOTE_SECTION): Define.
+
+2003-03-03 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (EF_SH_MERGE_MACH): Make sure SH2E & SH3/SH3E merge to SH3E,
+ and SH2E & SH4 merge to SH4, not SH2E.
+
+2003-02-21 Ian Wienand <ianw@gelato.unsw.edu.au>
+
+ * ia64.h (SHT_IA_64_LOPSREG, SHT_IA_64_HIPSREG,
+ SHT_IA_64_PRIORITY_INIT): Define.
+
+2003-02-18 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc64.h (IS_PPC64_TLS_RELOC): Rename from IS_TLS_RELOC.
+
+ * ppc.h: Replace DTPMOD64, TPREL64, DTPREL64 with DTPMOD32 etc.
+ (IS_PPC_TLS_RELOC): Define.
+
+2003-02-10 Nick Clifton <nickc@redhat.com>
+
+ * arm.h (EF_ARM_MAVERICK_FLOAT): Define.
+
+2003-02-05 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h: Add TLS relocs. Format.
+ * ppc64.h: Likewise.
+
+2003-01-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * mips.h (EF_MIPS_XGOT): Define.
+
+2003-01-24 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h: Add s390 TLS relocations.
+
+2003-01-23 Nick Clifton <nickc@redhat.com>
+
+ * Add sh2e support:
+
+ 2002-04-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (EF_SH_MERGE_MACH): Handle SH2E.
+
+ 2002-04-02 Elena Zannoni <ezannoni@redhat.com>
+
+ * sh.h (EF_SH2E): New.
+
+2003-01-23 Alan Modra <amodra@bigpond.net.au>
+
+ * sh.h: Split out various bits to bfd/elf32-sh64.h.
+
+2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h: Rename R_390_GOTOFF to R_390_GOTOFF32. Add new gotoff,
+ gotplt and pltoff relocations.
+
+2003-01-17 Alan Modra <amodra@bigpond.net.au>
+
+ * common.h: Formatting, typo fixes.
+ (DT_ENCODING): Correct value.
+
+2003-01-17 Fabio Alemagna <falemagn@aros.org>
+
+ * common.h (ELFOSABI_AROS): Define.
+ (ELFOSABI_OPENVMS): Likewise.
+ (ELFOSABI_NSK): Likewise.
+
+2003-01-16 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h: Split out ppc64 definitions to..
+ * pcc64.h: ..here. New file.
+ (R_PPC64_REL30): Rename from R_PPC64_ADDR30.
+
+2003-01-13 Dmitry Diky <diwil@mail.ru>
+
+ * elf/common.h (EM_MSP430): Change e_machine value to officially
+ assigned.
+
+2003-01-02 Ben Elliston <bje@redhat.com>
+
+ * common.h (EM_IQ2000): Define.
+ * iq2000.h: New file.
+
+2002-12-30 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (E_MIPS_ARCH_32R2): New define.
+
+2002-12-24 Dmitry Diky <diwil@mail.ru>
+
+ * common.h: Define msp430 machine numbers.
+ * msp430.h: New file. Define msp430 relocs.
+
+2002-12-20 DJ Delorie <dj@redhat.com>
+
+ * xstormy16.h: Add XSTORMY16_12.
+
+2002-12-16 Andrew MacLeod <amacleod@redhat.com>
+
+ * xstormy16.h (START_RELOC_NUMBERS) Add relocation numbers
+ for R_XSTORMY16_LO16 and R_XSTORMY16_HI16.
+
+2002-12-10 James Cownie <jcownie@etnus.com>
+
+ * dwarf2.h (DW_TAG_upc_shared_type, DW_TAG_upc_strict_type,
+ DW_TAG_upc_relaxed_type, DW_AT_upc_threads_scaled, DW_LANG_Upc):
+ Define.
+
+2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
+
+ * m68hc11.h (EF_M68HC12_MACH, EF_M68HCS12_MACH): Define.
+ (EF_M68HC11_MACH_MASK, EF_M68HC11_MACH): Define.
+ (EF_M68HC11_MERGE_MACH, EF_M68HC11_CAN_MERGE_MACH): Define.
+
+2002-11-30 Alan Modra <amodra@bigpond.net.au>
+
+ * mmix.h: Replace boolean with bfd_boolean.
+ * sh.h: Likewise.
+
+2002-11-28 Alan Modra <amodra@bigpond.net.au>
+
+ * internal.h (elf32_internal_ehdr, Elf32_Internal_Ehdr,
+ elf64_internal_ehdr, Elf64_Internal_Ehdr, elf32_internal_phdr,
+ Elf32_Internal_Phdr, elf64_internal_phdr, Elf64_Internal_Phdr,
+ elf32_internal_shdr, Elf32_Internal_Shdr, elf64_internal_shdr,
+ Elf64_Internal_Shdr, elf32_internal_sym, elf64_internal_sym,
+ Elf32_Internal_Sym, Elf64_Internal_Sym, Elf32_Internal_Note,
+ elf32_internal_note, elf32_internal_rel, Elf32_Internal_Rel,
+ elf64_internal_rel, Elf64_Internal_Rel, elf32_internal_rela,
+ elf64_internal_rela, Elf32_Internal_Rela, Elf64_Internal_Rela,
+ elf32_internal_dyn, elf64_internal_dyn, Elf32_Internal_Dyn,
+ Elf64_Internal_Dyn, elf32_internal_verdef, elf64_internal_verdef,
+ elf32_internal_verdaux, elf64_internal_verdaux, elf32_internal_verneed,
+ elf64_internal_verneed, elf32_internal_vernaux, elf64_internal_vernaux,
+ elf32_internal_versym, elf64_internal_versym, Elf32_Internal_Verdef,
+ Elf64_Internal_Verdef, Elf32_Internal_Verdaux, Elf64_Internal_Verdaux,
+ Elf32_Internal_Verneed, Elf64_Internal_Verneed, Elf32_Internal_Vernaux,
+ Elf64_Internal_Vernaux, Elf32_Internal_Versym, Elf64_Internal_Versym,
+ Elf32_Internal_Syminfo, Elf64_Internal_Syminfo): Delete.
+ (Elf_Internal_Rel): Delete.
+
+2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sh.h: Add SH TLS relocs.
+
+2002-09-30 Gavin Romig-Koch <gavin@redhat.com>
+ Ken Raeburn <raeburn@cygnus.com>
+ Aldy Hernandez <aldyh@redhat.com>
+ Eric Christopher <echristo@redhat.com>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * mips.h (E_MIPS_MACH_4120, E_MIPS_MACH_5400, E_MIPS_MACH_5500): New.
+
+2002-09-12 Roland McGrath <roland@redhat.com>
+
+ * dwarf2.h: Updates from GCC version of thie file:
+ (enum dwarf_location_atom): DW_OP_calli -> DW_OP_call_ref.
+ Add DW_OP_GNU_push_tls_address.
+ (DW_OP_lo_user): Change to 0xe0.
+
+2002-08-28 Catherine Moore <clm@redhat.com>
+
+ * elf/v850.h (R_V850_LONGCALL, R_V850_ALIGN,
+ R_V850_LONGJUMP): New relocations.
+
+2002-08-15 Alan Modra <amodra@bigpond.net.au>
+
+ * i370.h: Define relocs using reloc-macros.h.
+
+2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
+
+ * m68hc11.h (E_M68HC12_BANKS, E_M68HC11_I32, E_M68HC11_F64,
+ EF_M68HC11_ABI): Define for ABI specification.
+ (STO_M68HC12_FAR, STO_M68HC12_INTERRUPT): Symbol flags for
+ linker and debugger.
+ (R_M68HC11_24, R_M68HC11_LO16, R_M68HC11_PAGE): New relocs.
+ (R_M68HC11_RL_JUMP, R_M68HC11_RL_GROUP): New reloc for linker
+ relaxation.
+
+2002-07-15 Denis Chertykov <denisc@overta.ru>
+ Frank Ch. Eigler <fche@redhat.com>
+ Ben Elliston <bje@redhat.com>
+ Alan Lehotsky <alehotsky@cygnus.com>
+ John Healy <jhealy@redhat.com>
+ Graham Stott <grahams@redhat.com>
+ Jeff Johnston <jjohnstn@redhat.com>
+
+ * common.h (EM_IP2K): New macro.
+ (EM_IP2K_OLD): New macro.
+ * ip2k.h: New file.
+
+2002-07-01 Matt Thomas <matt@3am-software.com>
+
+ * vax.h: Rename EF_* to EF_VAX_*.
+
+2002-06-18 Dave Brolley <brolley@redhat.com>
+
+ From Catherine Moore, Michael Meissner, Dave Brolley:
+ * common.h (EM_CYGNUS_FRV): New macro.
+ * frv.h: New file.
+
+2002-06-06 Lars Brinkhoff <lars@nocrew.org>
+
+ * common.h: Change registry@sco.com to registry@caldera.com.
+ (EM_PDP10, EM_PDP11): Define.
+
+2002-06-04 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * sh.h (_bfd_sh64_crange_qsort_cmpb, _bfd_sh64_crange_qsort_cmpl)
+ (_bfd_sh64_crange_bsearch_cmpb, _bfd_sh64_crange_bsearch_cmpl): New
+ prototypes.
+
+2002-06-01 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (LITUSE_ALPHA_ADDR, LITUSE_ALPHA_BASE, LITUSE_ALPHA_BYTOFF,
+ LITUSE_ALPHA_JSR, LITUSE_ALPHA_TLSGD, LITUSE_ALPHA_TLSLDM): New.
+
+2002-05-30 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (R_ALPHA_TLSGD, R_ALPHA_TLSLDM, R_ALPHA_DTPMOD64,
+ R_ALPHA_GOTDTPREL, R_ALPHA_DTPREL64, R_ALPHA_DTPRELHI,
+ R_ALPHA_DTPRELLO, R_ALPHA_DTPREL16, R_ALPHA_GOTTPREL, R_ALPHA_TPREL64,
+ R_ALPHA_TPRELHI, R_ALPHA_TPRELLO, R_ALPHA_TPREL16): New.
+
+2002-05-29 Matt Thomas <matt@3am-software.com>
+
+ * vax.h: New file
+
+2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
+
+ * common.h (EM_DLX): Define.
+ * dlx.h: New file.
+
+2002-05-08 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * common.h (NT_GNU_ABI_TAG): Define.
+ (GNU_ABI_TAG_LINUX): Define.
+ (GNU_ABI_TAG_HURD): Define.
+ (GNU_ABI_TAG_SOLARIS): Define.
+ (NT_NETBSD_IDENT): Define.
+ (NT_FREEBSD_ABI_TAG): Define.
+
+2002-04-24 Elena Zannoni <ezannoni@redhat.com>
+
+ * dwarf2.h: Add DW_AT_GNU_vector.
+
+2002-02-13 Matt Fredette <fredette@netbsd.org>
+
+ * m68k.h (EF_M68000): Define.
+
+2002-02-12 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (DT_PPC64_OPD, DT_PPC64_OPDSZ): Define.
+
+2002-02-09 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (R_ALPHA_BRSGP): New.
+
+2002-02-08 Alexandre Oliva <aoliva@redhat.com>
+
+ Contribute sh64-elf.
+ 2002-01-23 Alexandre Oliva <aoliva@redhat.com>
+ * sh.h (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
+ R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
+ R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
+ R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
+ R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
+ R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
+ R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
+ R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8,
+ R_SH_GOTPLT10BY8, R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64,
+ R_SH_RELATIVE64): New relocs.
+ (R_SH_FIRST_INVALID_RELOC_4): Adjust.
+ 2001-05-16 Alexandre Oliva <aoliva@redhat.com>
+ * sh.h: Renumbered and renamed some SH5 relocations to match
+ official numbers and names; moved unmaching ones to the range
+ 0xf2-0xff.
+ 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (sh64_get_contents_type): Declare.
+ (sh64_address_is_shmedia): Likewise.
+ 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (sh64_elf_crange): New type.
+ (struct sh64_section_data): New.
+ (sh64_elf_section_data): New macro.
+ (EF_SH5): Rename back from EF_SH64.
+ 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (SHF_SH5_ISA32_MIXED, SHT_SH5_CR_SORTED,
+ SH64_CRANGES_SECTION_NAME, SH64_CRANGE_SIZE,
+ SH64_CRANGE_CR_ADDR_OFFSET, SH64_CRANGE_CR_SIZE_OFFSET,
+ SH64_CRANGE_CR_TYPE_OFFSET): New macros.
+ 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (EF_SH64): Don't define EF_SH64_ABI64.
+ 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (EF_SH64_32BIT_ABI, EF_SH64_64BIT_ABI): Delete.
+ (EF_SH64_ABI64): New.
+ 2000-11-23 Hans-Peter Nilsson <hpn@cygnus.com>
+ * sh.h (EF_SH64): Rename from EF_SH5.
+ (EF_SH64_32BIT_ABI): New.
+ (EF_SH64_64BIT_ABI): New.
+ (R_SH_PT_16, R_SH_SHMEDIA_CODE
+ R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
+ R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
+ R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
+ R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
+ R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL): New
+ relocs.
+ 2000-09-01 Ben Elliston <bje@redhat.com>
+ * sh.h (EF_SH5): Define.
+
+2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h: Tweak comments.
+ (MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME): New.
+ [BFD_ARCH_SIZE] (_bfd_mmix_prepare_linker_allocated_gregs,
+ _bfd_mmix_finalize_linker_allocated_gregs,
+ _bfd_mmix_check_all_relocs): Provide prototypes.
+
+2002-01-31 Ivan Guzvinec <ivang@opencores.org>
+
+ * or32.h: New file.
+ * common.h: Add support for or32 targets.
+
+2002-01-28 Jason Merrill <jason@redhat.com>
+
+ * dwarf2.h: Sync with gcc version.
+
+2002-01-16 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (DT_PPC64_GLINK): Define.
+
+2002-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (F_VFP_FLOAT, EF_ARM_VFP_FLOAT): Define.
+
+2002-01-09 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * common.h: Update copyright years.
+ (NT_NETBSDCORE_PROCINFO): Define.
+ (NT_NETBSDCORE_FIRSTMACH): Define.
+
+2002-01-06 Steve Ellcey <sje@cup.hp.com>
+
+ * ia64.h (ELF_STRING_ia64_unwind_hdr): New Macro for HP-UX.
+ (SHT_IA_64_HP_OPT_ANOT): Ditto
+ (PT_IA_64_HP_OPT_ANOT): Ditto
+ (PT_IA_64_HP_HSL_ANOT): Ditto
+ (PT_IA_64_HP_STACK): Ditto
+ (SHN_IA_64_ANSI_COMMON): Ditto
+
+2001-12-17 Alan Modra <amodra@bigpond.net.au>
+
+ * external.h (Elf_External_Sym_Shndx): Declare.
+ * internal.h (struct elf_internal_sym <st_shndx>): Make it an
+ unsigned int.
+ * common.h (SHN_BAD): Define.
+
+2001-12-13 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/common.h (PT_GNU_EH_FRAME): Define.
+
+2001-12-11 Alan Modra <amodra@bigpond.net.au>
+
+ * common.h (SHN_XINDEX): Comment typo fix.
+ * internal.h (Elf_Internal_Ehdr): Change existing "unsigned short"
+ size, count and index fields to "unsigned int".
+
+2001-12-07 Geoffrey Keating <geoffk@redhat.com>
+ Richard Henderson <rth@redhat.com>
+
+ * common.h (EM_XSTORMY16): Define.
+ * xstormy16.h: New file.
+
+2001-11-15 Alan Modra <amodra@bigpond.net.au>
+
+ * common.h (NT_ARCH): Define. Remove incorrect comment.
+
+2001-11-11 Geoffrey Keating <geoffk@redhat.com>
+
+ * dwarf2.h (dwarf_line_number_ops): Add DWARF 3 opcodes.
+
+2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h: New file.
+
+2001-10-23 Alan Modra <amodra@bigpond.net.au>
+
+ * internal.h: White space changes to keep lines under 80 chars.
+
+2001-10-16 Jeff Holcomb <jeffh@redhat.com>
+
+ * internal.h (elf_internal_shdr): Make contents a unsigned char *.
+
+2001-09-18 Alan Modra <amodra@bigpond.net.au>
+
+ * internal.h (elf_internal_rela): Make r_addend a bfd_vma.
+
+2001-09-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * common.h (EM_OPENRISC_OLD): Renamed the old EM_OPENRISC entry.
+
+2001-09-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * common.h (EM_AVR_OLD): Renamed from...
+ (EM_AVR): this, redefined as in the current ELF standard.
+ (EM_PJ_OLD): Renamed from...
+ (EM_PJ): this, redefined as in the current ELF standard.
+ (EM_R30, EM_D10V, EM_D30V, EM_V850, EM_M32R, EM_MN10300,
+ EM_MN10200, EM_OPENRISC, EM_ARC_A5, EM_XTENSA): Defined as in
+ the current ELF standard.
+ (EM_CYGNUS_ARC): Removed, unused for a long time.
+
+2001-09-04 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (R_ALPHA_OP*, R_ALPHA_IMMED*, R_ALPHA_GPVALUE): Remove.
+ (R_ALPHA_GPREL16): Rename from R_ALPHA_IMMED_GP_16.
+
+2001-08-30 Eric Christopher <echristo@redhat.com>
+
+ * mips.h: Remove E_MIPS_MACH_MIPS32_4K.
+
+2001-08-29 Jeff Law <law@redhat.com>
+
+ * h8.h (EF_H8_MACH): New mask for encoded machine type.
+ (E_H8_MACH_H8300, E_H8_MACH_H8300H, E_H8_MACH_H8300S): New
+ machine types.
+
+2001-08-26 J"orn Rennecke <amylaar@redhat.com>
+
+ * h8.h: New file.
+
+2001-08-27 Staffan Ulfberg <staffanu@swox.se>
+
+ * ppc.h: Add relocs from the 64-bit PowerPC ELF ABI revision 1.2.
+
+2001-06-30 Daniel Berlin <dan@cgsoftware.com>
+
+ * dwarf2.h: Remerge with gcc version,
+ including all new DWARF 2.1 extensions.
+
+2001-06-29 James Cownie <jcownie@etnus.com>
+
+ * dwarf2.h: Add DWARF 2.1 attribues.
+
+2001-06-15 Per Bothner <per@bothner.com>
+
+ * dwarf2.h: Partial merge with gcc version.
+ (enum dwarf_descrim_list): Fix typo -> dwarf_discrim_list.
+ (DW_LANG_Java): Use value from dwarf 2.1 draft (also used in gcc).
+
+2001-05-15 Ralf Baechle <ralf@gnu.org>
+
+ * common.h: Remove definition of EM_MIPS_RS4_BE. The constant was
+ never in active use and is used otherwise by the ABI.
+
+2001-05-11 Jakub Jelinek <jakub@redhat.com>
+
+ * ia64.h (ELF_STRING_ia64_unwind_once): Define.
+ (ELF_STRING_ia64_unwind_info_once): Define.
+
+2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * external.h: Fix typo.
+ * mips.h: Add/Extend many comments with reference to the MIPS ELF64
+ spec v. 2.4, available at e.g.
+ ftp://oss.sgi.com/pub/linux/mips/doc/ABI/ELF64.ps.
+ (EF_MIPS_UCODE): Define.
+ (EF_MIPS_OPTIONS_FIRST): Define.
+ (EF_MIPS_ARCH_ASE): Define.
+ (EF_MIPS_ARCH_ASE_MDMX): Define.
+ (EF_MIPS_ARCH_ASE_M16): Define.
+ (SHF_MIPS_ADDR): Renamed SHF_MIPS_ADDR32.
+ (SHF_MIPS_STRING): Renamed SHF_MIPS_ADDR64.
+ (SHF_MIPS_NODUPES): Define.
+ (ELF64_MIPS_R_SSYM): New MIPS ELF 64 relocation info access macro.
+ (ELF64_MIPS_R_TYPE3): Likewise.
+ (ELF64_MIPS_R_TYPE2): Likewise.
+ (ELF64_MIPS_R_TYPE): Likewise.
+ (OHW_R10KLDL): Define.
+
+2001-04-24 Todd Fries <todd@fries.net>
+
+ * sparc.h: Fix typo.
+
+2001-04-20 Johan Rydberg <jrydberg@opencores.org>
+
+ * openrisc.h: New file.
+ * common.h (EM_OPENRISC): New constant.
+
+2001-04-23 Bo Thorsen <bo@suse.de>
+
+ * x86-64.h: Add vtable support.
+
+2001-03-23 Nick Clifton <nickc@redhat.com>
+
+ * mips.h: Remove extraneous whitespace.
+
+2001-03-22 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h: Add leading comment about PC-relative location.
+ (R_CRIS_COPY, R_CRIS_GLOB_DAT, R_CRIS_JUMP_SLOT, R_CRIS_RELATIVE,
+ R_CRIS_16_GOT, R_CRIS_32_GOT, R_CRIS_16_GOTPLT, R_CRIS_32_GOTPLT,
+ R_CRIS_32_GOTREL, R_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_PCREL):
+ New relocs.
+
+2001-02-27 Philip Blundell <pb@futuretv.com>
+
+ * arm.h: Add new definitions from ARM document SWS ESPC 0003 B-01.
+ (EF_PIC, et al.): Rename to EF_ARM_xx.
+
+2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * common.h: Add linux target for S/390.
+ * s390.h: New file.
+
+2001-01-11 Peter Targett <peter.targett@arccores.com>
+
+ * arc.h (E_ARC_MACH_ARC5, E_ARC_MACH_ARC6, E_ARC_MACH_ARC7,
+ E_ARC_MACH_ARC8): New definitions for cpu types.
+
+ * common.h (EM_ARC): Change comment.
+
+2000-12-12 Nick Clifton <nickc@redhat.com>
+
+ * mips.h: Fix formatting.
+
+2000-12-11 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (DT_HP_*): Define relative to OLD_DT_LOOS for hpux
+ compatibility.
+
+2000-10-16 Chris Demetriou <cgd@sibyte.com>
+
+ * mips.h (E_MIPS_ARCH_32): New constant.
+ (E_MIPS_MACH_MIPS32, E_MIPS_MACH_MIPS32_4K): Replace the
+ former with the latter.
+
+ * mips.h (E_MIPS_ARCH_5, E_MIPS_ARCH_64): New definitions.
+
+ * mips.h (E_MIPS_MACH_SB1): New constant.
+
+2000-11-30 Jan Hubicka <jh@suse.cz>
+
+ * common.h (EM_X86_64): New macro.
+ * x86-64.h: New file.
+
+2000-11-27 Hans-Peter Nilsson <hp@axis.com>
+
+ * common.h (e_machine numbers): Clarify comments to describe how
+ EM_* constants are assigned. Move EM_PJ from official section to
+ ad-hoc section.
+ (EM_CRIS): Correct comment to match official description.
+ (EM_MMIX): Ditto.
+
+2000-11-22 Nick Clifton <nickc@redhat.com>
+
+ * common.h (EM_JAVELIN): New machine number.
+ (EM_FIREPATH): New machine number.
+ (EM_ZSP): New machine number.
+ (EM_MMIX): New machine number.
+ (EM_HUANY): New machine number.
+ (EM_PRISM): New machine number.
+ (SHT_GROUP): New section type.
+ (SHT_SYMTAB_SHNDX): New section type.
+ (SHF_GROUP): New section flag.
+ (SHN_XINDEX): New section index.
+ (GRP_COMDAT): New section group flag.
+
+2000-11-20 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_MONTEREY): Renamed to ...
+ (ELFOSABI_AIX): This.
+
+2000-11-16 Richard Henderson <rth@redhat.com>
+
+ Update relocations per August psABI docs.
+ * ia64.h (R_IA64_SEGBASE): Remove.
+ (R_IA64_LTV*): Renumber to 0x74 to 0x77.
+ (R_IA64_EPLTMSB, R_IA64_EPLTLSB): Remove.
+ (R_IA64_TPREL14, R_IA64_TPREL64I): New.
+ (R_IA64_DTPMOD*): New.
+ (R_IA64_DTPREL*): New.
+
+2000-09-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h (EF_CRIS_UNDERSCORE): New.
+
+2000-09-27 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h (R_PARISC_DIR14F): Add.
+
+2000-09-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
+ R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): Change
+ numbers to the range from 160 to 167.
+ (R_SH_FIRST_INVALID_RELOC): Adjust.
+ (R_SH_FIRST_INVALID_RELOC_2, R_SH_LAST_INVALID_RELOC_2):
+ New relocs to fill in the gap.
+
+2000-09-13 Anders Norlander <anorland@acc.umu.se>
+
+ * mips.h (E_MIPS_MACH_4K): New define.
+
+2000-09-05 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Fix a comment.
+ (R_PARISC_PCREL12F): Define.
+ (R_PARISC_GNU_VTENTRY): Define.
+ (R_PARISC_GNU_VTINHERIT): Define.
+
+2000-09-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
+ R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New relocs.
+ (R_SH_FIRST_INVALID_RELOC): Adjust.
+
+2000-08-14 Jim Wilson <wilson@cygnus.com>
+
+ * ia64.h (EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP,
+ EF_IA_64_NOFUNCDESC_CONS_GP, EF_IA_64_ABSOLUTE): Define.
+
+2000-08-07 Nick Clifton <nickc@cygnus.com>
+
+ * ppc.h: Remove spurious CYGNUS LOCAL comments.
+ * v850.h: Likewise.
+
+2000-07-22 Jason Eckhardt <jle@cygnus.com>
+
+ * i860.h: New file.
+ (elf_i860_reloc_type): Defined ELF32 i860 relocations.
+
+2000-07-20 Hans-Peter Nilsson <hp@axis.com>
+
+ common.h (EM_CRIS): New machine number.
+ cris.h: New file.
+
+2000-07-19 H.J. Lu <hjl@gnu.org>
+
+ * common.h (DF_1_NODEFLIB): Renamed from DF_1_NODEPLIB.
+
+2000-07-19 H.J. Lu <hjl@gnu.org>
+
+ * common.h (DT_CHECKSUM): Set to 0x6ffffdf8.
+ (DTF_1_CONFEXP): It is 0x00000002 as suspected.
+
+2000-07-19 H.J. Lu <hjl@gnu.org>
+
+ * common.h (DT_FEATURE): Renamed from DT_FEATURE_1.
+ (DT_CONFIG): New. From Solaris 8.
+ (DT_DEPAUDIT): Likewise.
+ (DT_AUDIT): Likewise.
+ (DT_PLTPAD): Likewise.
+ (DT_MOVETAB): Likewise.
+ (DF_1_NODEPLIB): Likewise.
+ (DF_1_NODUMP): Likewise.
+ (DF_1_CONLFAT): Likewise.
+ (DT_CHECKSUM): Likewise. FIXME. Check the value on Solaris 8.
+ (DTF_1_CONFEXP): Likewise.
+
+2000-07-18 H.J. Lu <hjl@gnu.org>
+
+ * common.h (DT_FLAGS_1): Renamed from DT_1_FLAGS.
+
+2000-07-12 Alan Modra <alan@linuxcare.com.au>
+
+ * internal.h (struct elf_internal_sym): Update comment for st_other.
+
+2000-07-10 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Add comments to all the relocs.
+
+2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * avr.h (E_AVR_MACH_AVR5): Define.
+
+2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * m68hc11.h: New file, definitions for the Motorola 68hc11.
+
+2000-06-06 Alan Modra <alan@linuxcare.com.au>
+
+ * reloc-macros.h (START_RELOC_NUMBERS): Don't define initial dummy
+ -1 valued enum.
+ (RELOC_NUMBER, FAKE_RELOC, EMPTY_RELOC): Append rather than
+ prepend comma.
+ (END_RELOC_NUMBERS): Give macro an arg to define as last enum.
+
+ * alpha.h (R_ALPHA_max): Define via END_RELOC_NUMBERS rather than
+ with EMPTY_RELOC.
+ * arc.h (R_ARC_max): Likewise.
+ * avr.h (R_AVR_max): Likewise.
+ * fr30.h (R_FR30_max): Likewise.
+ * hppa.h (R_PARISC_UNIMPLEMENTED): Likewise.
+ * i960.h (R_960_max): Likewise.
+ * m32r.h (R_M32R_max): Likewise.
+ * m68k.h (R_68K_max): Likewise.
+ * mcore.h (R_MCORE_max): Likewise.
+ * mn10300.h (R_MN10300_MAX): Likewise.
+ * pj.h (R_PJ_max): Likewise.
+ * ppc.h (R_PPC_max): Likewise.
+ * sh.h (R_SH_max): Likewise.
+ * sparc.h (R_SPARC_max): Likewise.
+ * v850.h (R_V850_max): Likewise.
+
+ * arm.h (R_ARM_max): Define via END_RELOC_NUMBERS.
+ * d10v.h (R_D10V_max): Likewise.
+ * d30v.h (R_D30V_max): Likewise.
+ * ia64.h (R_IA64_max): Likewise.
+ * mips.h (R_MIPS_maxext): Likewise.
+ * mn10200.h (R_MN10200_max): Likewise.
+
+ * i386.h (R_386_max): Remove old RELOC_NUMBER definition, and
+ define via END_RELOC_NUMBERS.
+
+2000-06-03 Alan Modra <alan@linuxcare.com.au>
+
+ * reloc-macros.h (START_RELOC_NUMBERS): Fix name clash for
+ !__STDC__ case.
+ (RELOC_NUMBER): Use ansi stringify if ALMOST_STDC defined.
+
+2000-05-22 Richard Henderson <rth@cygnus.com>
+
+ * ia64.h (R_IA64_PCREL60B, R_IA64_PCREL21BI): New.
+ (R_IA64_PCREL22, R_IA64_PCREL64I): New.
+
+2000-05-02 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_NONE): Renamed from ELFOSABI_SYSV.
+ (ELFOSABI_MODESTO): Defined.
+ (ELFOSABI_OPENBSD): Likewise.
+
+2000-04-21 Richard Henderson <rth@cygnus.com>
+ David Mosberger <davidm@hpl.hp.com>
+
+ * ia64.h: New file.
+
+2000-04-14 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_TRUE64): Renamed to ELFOSABI_TRU64.
+
+2000-04-14 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_NETBSD): Defined.
+ (ELFOSABI_HURD): Likewise.
+ (ELFOSABI_SOLARIS): Likewise.
+ (ELFOSABI_MONTEREY): Likewise.
+ (ELFOSABI_IRIX): Likewise.
+ (ELFOSABI_FREEBSD): Likewise.
+ (ELFOSABI_TRUE64): Likewise.
+
+2000-04-07 Nick Clifton <nickc@cygnus.com>
+
+ * arm-oabi.h: Delete.
+ * arm.h: Merge in definitions of old reloc numbers from
+ arm-oabi.h.
+
+2000-04-06 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (EF_ARM_SYMSARESORTED): Define.
+ (EF_ARM_EABIMASK): Define.
+ (EF_ARM_EABI_VERSION): Define.
+ (EF_ARM_EABI_UNKNOWN): Define.
+ (EF_ARM_EABI_VER1): Define.
+ (PF_ARM_PI): Define.
+ (PF_ARM_ABS): Define.
+
+2000-04-05 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (R_SH_LOOP_START, R_SH_LOOP_END): New RELOC_NUMBERs.
+
+2000-03-27 Denis Chertykov <denisc@overta.ru>
+
+ * avr.h: New file. AVR ELF support for BFD.
+ * common.h: Add AVR magic number.
+
+2000-03-10 Geoffrey Keating <geoffk@cygnus.com>
+
+ * mips.h: Add R_MIPS_GNU_REL_HI16, R_MIPS_GNU_REL_LO16,
+ R_MIPS_GNU_REL16_S2, R_MIPS_PC64 and R_MIPS_PC32 relocation
+ numbers.
+
+2000-02-23 Linas Vepstas <linas@linas.org>
+
+ * i370.h: New file.
+
+2000-02-22 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (ELF_ST_OTHER): Remove definition.
+ (ELF32_ST_OTHER): Remove definition.
+ (ELF64_ST_OTHER): Remove definition.
+
+2000-02-22 H.J. Lu <hjl@gnu.org>
+
+ * common.h (ELFOSABI_LINUX): Define.
+
+2000-02-17 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h: (EF_SH_MACH_MASK, EF_SH_UNKNOWN, EF_SH1, EF_SH2): New macros.
+ (EF_SH3, EF_SH_HAS_DSP, EF_SH_DSP, EF_SH3_DSP): Likewise.
+ (EF_SH_HAS_FP, EF_SH3E, EF_SH4, EF_SH_MERGE_MACH): Likewise.
+
+2000-02-03 H.J. Lu <hjl@gnu.org>
+
+ * arm-oabi.h: Duplicate changes made to arm.h on Jan. 27,
+ 2000 by Thomas de Lellis <tdel@windriver.com>.
+
+2000-01-27 Thomas de Lellis <tdel@windriver.com>
+
+ * arm.h (STT_ARM_TFUNC): Define in terms of STT_LOPROC.
+ (STT_ARM_16BIT): New flag. Denotes a label that was defined in
+ Thumb block but was does not identify a function.
+
+2000-01-20 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_MCORE): Fix spelling of Motorola.
+ * mcore.h (EM_MCORE): Fix spelling of Motorola.
+
+2000-01-13 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_S370): Change comment - this is now the IBM
+ System/370.
+ (EM_IA_64): Change comment - this is now the IA-64.
+
+2000-01-11 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (DT_ENCODING): Fix definition of this value.
+ (DT_LOOS): Fix definition of this value.
+ (DT_HIOS): Fix definition of this value.
+ (OLD_DT_LOOS): Value of DT_LOOS before Oct 4, 1999 draft
+ of ELF spec changed it.
+ (OLD_DT_HIOS): Value of DT_HIOS before Oct 4, 1999 draft
+ of ELF spec changed it.
+
+2000-01-10 Egor Duda <deo@logos-m.ru>
+
+ * common.h (NT_WIN32PSTATUS): Define. (cygwin elf core dumps).
+
+1999-12-28 Nick Clifton <nickc@cygnus.com>
+
+ * mips.h (STO_*): Redefine in terms of STV_* values now in
+ common.h.
+
+1999-12-27 Nick Clifton <nickc@cygnus.com>
+
+ * common.h: Upgrade to match Oct4, 1999 Draft ELF ABI Spec.
+ (EM_MIPS_RS3_LE): New machine number.
+ (EM_RCE): New machine number.
+ (EM_MMA): New machine number.
+ (EM_PCP): New machine number.
+ (EM_NCPU): New machine number.
+ (EM_NDR1): New machine number.
+ (EM_STARCORE): New machine number.
+ (EM_ME16): New machine number.
+ (EM_ST100): New machine number.
+ (EM_TINYJ): New machine number.
+ (EM_FX66): New machine number.
+ (EM_ST9PLUS): New machine number.
+ (EM_ST7): New machine number.
+ (EM_68HC16): New machine number.
+ (EM_68HC11): New machine number.
+ (EM_68HC08): New machine number.
+ (EM_68HC05): New machine number.
+ (EM_SVX): New machine number.
+ (EM_VAX): New machine number.
+ (PF_MASKOS): Change value.
+ (SHT_INIT_ARRAY): New value for sh_type field.
+ (SHT_FINI_ARRAY): New value for sh_type field.
+ (SHT_PREINIT_ARRAY): New value for sh_type field.
+ (SHT_HIUSER): Change value.
+ (SHF_MERGE): New valye for sh_flags field.
+ (SHF_STRINGS): New valye for sh_flags field.
+ (SHF_INFO_LINK): New valye for sh_flags field.
+ (SHF_OS_NONCONFORMING): New valye for sh_flags field.
+ (SHF_MASKOS): Change value.
+ (ELF_ST_VISIBILITY): New macro.
+ (ELF_ST_OTHER): New macro.
+ (STT_COMMON): New symbol type.
+ (STV_DEFAULT): Value for symbol visibility.
+ (STV_INTERNAL): Value for symbol visibility.
+ (STV_HIDDEN): Value for symbol visibility.
+ (STV_PROTECTED): Value for symbol visibility.
+ (DT_RUNPATH): New dynamic section tag.
+ (DT_FLAGS): New dynamic section tag.
+ (DT_ENCODING): New dynamic section tag.
+ (DT_PREINIT_ARRAY): New dynamic section tag.
+ (DT_PREINIT_ARRAYSZ): New dynamic section tag.
+ (DT_LOPROC): New dynamic section tag index.
+ (DT_HIPROC): New dynamic section tag index.
+ (DF_ORIGIN): Value for dynamic section flag.
+ (DF_SYMBOLIC): Value for dynamic section flag.
+ (DF_TEXTREL): Value for dynamic section flag.
+ (DF_BIND_NOW): Value for dynamic section flag.
+
+1999-12-09 Fred Fish <fnf@cygnus.com>
+
+ * i960.h (reloc-macros.h): Include using relative dir elf/.
+ * i386.h (reloc-macros.h): Include using relative dir elf/.
+ * hppa.h (reloc-macros.h): Include using relative dir elf/.
+
+1999-12-07 Jim Blandy <jimb@cygnus.com>
+
+ * common.h (NT_PRXFPREG): New definition.
+
+Wed Dec 1 03:02:15 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (E_MN10300_MACH_AM33): Define.
+
+Mon Oct 11 22:42:37 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (PF_HP_PAGE_SIZE): Define.
+ (PF_HP_FAR_SHARED, PF_HP_NEAR_SHARED, PF_HP_CODE): Likewise.
+ (PF_HP_MODIFY, PF_HP_LAZYSWAP, PF_HP_SBP): Likewise.
+
+Mon Oct 4 17:42:38 1999 Doug Evans <devans@canuck.cygnus.com>
+
+ * m32r.h (E_M32RX_ARCH): Define.
+
+1999-09-15 Ulrich Drepper <drepper@cygnus.com>
+
+ * hppa.h: Add DT_HP_GST_SIZE, DT_HP_GST_VERSION, and DT_HP_GST_HASHVAL.
+
+1999-09-04 Steve Chamberlain <sac@pobox.com>
+
+ * pj.h: New file.
+ * common.h (EM_PJ): Define.
+
+1999-09-02 Ulrich Drepper <drepper@cygnus.com>
+
+ * hppa.h: Add HPUX specific symbol type definitions.
+
+ * hppa.h: Add HPUX specific dynamic and program header table
+ specific definitions.
+
+1999-08-31 Scott Bambrough <scottb@netwinder.org>
+
+ * common.h (NT_TASKSTRUCT): Define.
+
+1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
+
+ * sparc.h (EF_SPARC_SUN_US3): Define in Cheetah extensions
+ flag (as per SCD2.4.1).
+
+1999-07-16 Jakub Jelinek <jj@ultra.linux.cz>
+
+ * sparc.h (ELF64_R_TYPE_DATA): Only use ELF64_R_TYPE bits, not
+ ELF64_R_SYM bits.
+
+1999-06-21 Philip Blundell <pb@nexus.co.uk>
+
+ * arm.h (EF_SOFT_FLOAT, F_SOFT_FLOAT): Define.
+
+1999-07-13 Andreas Schwab <schwab@suse.de>
+
+ * m68k.h (EF_CPU32): Move definition inside multiple inclusion
+ guard.
+
+1999-07-08 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (ELF64_R_TYPE_DATA): Sign extend the value.
+ (ELF64_R_TYPE_INFO): Mask out all but low 24 bits of data.
+ (DT_SPARC_PLTFMT): Delete.
+ Based on a patch from Jakub Jelinek.
+
+Mon Jun 21 16:36:02 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
+
+1999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
+
+ * sparc.h (R_SPARC_max_std): Define.
+
+Wed Jun 9 15:16:34 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h: Update with various changes from newest PA ELF
+ specifications.
+
+1999-06-03 Ian Lance Taylor <ian@zembu.com>
+
+ * common.h (EM_PPC64): Define.
+
+1999-06-02 Stu Grossman <grossman@babylon-5.cygnus.com>
+
+ * dwarf.h: Add LANG_JAVA.
+ * dwarf2.h: Add DW_LANG_Java.
+
+1999-05-29 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (ELFOSABI_ARM): Define.
+
+1999-05-28 Nick Clifton <nickc@cygnus.com>
+
+ * reloc-macros.h: Update comment.
+
+1999-05-28 Ian Lance Taylor <ian@zembu.com>
+
+ * i960.h: New file.
+
+1999-05-16 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h (R_MCORE_COPY): Define.
+ (R_MCORE_GLOB_DAT): Define.
+ (R_MCORE_JUMP_SLOT): Define.
+
+1999-05-15 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h (R_MCORE_RELATIVE): Define.
+
+1999-05-05 Catherine Moore <clm@cygnus.com>
+
+ * m68k.h (EF_CPU32): Define.
+
+1999-04-21 Nick Clifton <nickc@cygnus.com>
+
+ * reloc-macros.h (START_RELOC_NUMBERS): Prepend an underscore to
+ fake reloc entry name (if possible), in order to avoid conflicts
+ with typedefs of the same name.
+
+1999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (EF_MIPS_32BITMODE): New.
+
+1999-04-08 Nick Clifton <nickc@cygnus.com>
+
+ * mcore.h: New header file. Defines for Motorola's MCore
+ processor.
+
+1999-04-08 Nick Clifton <nickc@cygnus.com>
+
+ * common.h: Add new constants defined in: "System V Application
+ Binary Interface - DRAFT - April 29, 1998" found at the web site:
+ http://www.sco.com/developer/gabi/contents.html
+
+ (EM_MMA): Removed. Replaced with EM_MCORE as Motorolla own this
+ value.
+
+1999-03-31 Nick Clifton <nickc@cygnus.com>
+
+ * reloc-macros.h: Fixed to not generate an enum with a trailing
+ comma.
+
+1999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (E_MIPS_MACH_5000): New.
+
+1999-03-10 Ulrich Drepper <drepper@cygnus.com>
+
+ * common.h: Add definitions for a few more Solaris ELF extensions.
+
+Thu Feb 18 18:58:26 1999 Ian Lance Taylor <ian@cygnus.com>
+
+ * external.h: Only use attribute if __GNUC__ is defined.
+
+1999-02-17 Nick Clifton <nickc@cygnus.com>
+
+ Patch submitted by: Scott Bambrough <scottb@corelcomputer.com>
+
+ * external.h: struct Elf_External_Versym must be packed on
+ ARM. Code uses sizeof(Elf_External_Versym) and assumes it is
+ equal to sizeof(char[2]). Reported by Jim Pick <jim@jimpick.com>
+
+1999-02-02 Nick Clifton <nickc@cygnus.com>
+
+ * dwarf2.h (DWARF2_External_ARange): New structure.
+ (DWARF2_Internal_ARange): New structure.
+
+Mon Feb 1 11:33:56 1999 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Renumber relocs to conform to standard.
+ (EF_NEW_ABI): Define.
+ (EF_OLD_ABI): Define.
+ * arm-oabi.h: New file.
+
+1999-01-28 Nick Clifton <nickc@cygnus.com>
+
+ * fr30.h: Add R_FR30_GNU_VT{INHERIT,ENTRY} relocs.
+
+1999-01-27 Nick Clifton <nickc@cygnus.com>
+
+ * dwarf2.h: Add typedefs for structures found in dwarf2 sections.
+
+1998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (E_MIPS_MACH_4111): New.
+
+1998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (EF_MIPS_ABI,E_MIPS_ABI_O32,E_MIPS_ABI_O64,
+ E_MIPS_ABI_EABI32,E_MIPS_ABI_EABI64):
+
+1998-12-03 Nick Clifton <nickc@cygnus.com>
+
+ * fr30.h: Add R_FR30_48 reloc.
+
+1998-12-02 Ulrich Drepper <drepper@cygnus.com>
+
+ * mips.h: Add external data type for conflict section.
+
+ * mips.h: Add more LL_* options from Irix 6.5.
+
+ * mips.h: Add R_MIPS_JALR and adjust R_MIPS_max appropriately.
+
+Mon Nov 30 15:25:58 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (elf_sh_reloc_type): Add R_SH_FIRST_INVALID_RELOC,
+ R_SH_LAST_INVALID_RELOC, R_SH_SWITCH8 and R_SH_max.
+
+Tue Nov 10 15:12:28 1998 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_CYGNUS_FR30): Reduce to a 16 bit value.
+
+Tue Nov 10 15:17:28 1998 Catherine Moore <clm@cygnus.com>
+
+ * d10v.h: Add vtable relocs.
+
+Wed Nov 4 15:56:50 1998 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_CYGNUS_FR30): New machine number.
+
+ * fr30.h: New file: Definitions for the FR30.
+
+Fri Oct 30 11:54:15 1998 Catherine Moore <clm@cygnus.com>
+
+ From Philip Blundell <pb@nexus.co.uk>:
+ * arm.h (R_ARM_COPY, et al.): New relocs, used by Linux for PIC.
+ (EF_ALIGN8): New flag.
+
+Tue Oct 20 11:19:50 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * common.h (NT_LWPSTATUS): Close comment accidentally left open.
+
+Mon Oct 19 20:24:11 1998 Catherine Moore <clm@cygnus.com>
+
+ * sh.h: Add vtable relocs.
+
+Mon Oct 19 01:44:42 1998 Felix Lee <flee@cygnus.com>
+
+ * common.h (NT_PSTATUS, NT_FPREGS, NT_PSINFO,
+ NT_LWPSTATUS,NT_LWPSINFO): added.
+ * internal.h (Elf_Internal_Note): new structure members.
+
+Fri Oct 16 14:11:25 1998 Catherine Moore <clm@cygnus.com>
+
+ * m32r.h: Add vtable relocs.
+
+Tue Oct 6 09:22:22 1998 Catherine Moore <clm@cygnus.com>
+
+ * sparc.h: Add vtable relocs.
+
+Mon Oct 5 09:39:22 1998 Catherine Moore <clm@cygnus.com>
+
+ * v850.h: Add vtable relocs.
+
+Sun Oct 4 21:17:51 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h (R_386_max): Change from 252 to 24.
+
+Mon Sep 21 12:24:44 1998 Catherine Moore <clm@cygnus.com>
+
+ * i386.h: Change vtable reloc numbers.
+
+Sun Sep 20 00:54:22 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * m68k.h: Add vtable relocs and R_68K_max.
+
+Tue Sep 15 09:56:49 CDT 1998 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Add vtable relocs.
+
+Mon Aug 31 11:25:27 1998 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Define STT_ARM_TFUNC. Remove ST_THUMB_xxxx
+ definitions.
+
+Sat Aug 29 22:25:51 1998 Richard Henderson <rth@cygnus.com>
+
+ * i386.h: Add vtable relocs.
+
+1998-08-25 16:42 Ulrich Drepper <drepper@cygnus.com>
+
+ * common.h: Add SYMINFO_* macros to access Elf*_Syminfo information.
+
+ * external.h: Add Elf_External_Syminfo definition.
+
+ * internal.h: Add Elf_Internal_Syminfo, Elf32_Internal_Syminfo,
+ and Elf64_Syminfo definitions.
+
+Sun Aug 9 20:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Add ST_THUMB definitions.
+
+Wed Aug 5 15:52:35 1998 Nick Clifton <nickc@cygnus.com>
+
+ * arm.h: Add ELF header flags to specify compile time optins:
+ EF_INTERWORK: New flag.
+ EF_APCS_26: New flag.
+ EF_APCS_FLOAT: New flag.
+ EF_PIC: New flag.
+
+1998-07-31 21:28 Ulrich Drepper <drepper@cygnus.com>
+
+ * mips.h: Add missing RHF_* constants.
+
+Fri Jul 31 10:01:40 1998 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Add R_ARM_THM_PC9 relocation.
+
+1998-07-30 16:25 Ulrich Drepper <drepper@cygnus.com>
+
+ * common.h: Add new DT_* entries and there flag macros from Solaris.
+
+Tue Jul 28 18:14:07 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * sparc.h: (R_SPARC_REV32): Added for little endian data e.g. sparc 86x.
+
+Fri Jul 24 11:22:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h: Add R_MN10300_24 relocation.
+
+1998-07-24 Ulrich Drepper <drepper@cygnus.com>
+
+ * mips.h: Add MIPS64 relocation names and values.
+
+Wed Jul 22 19:29:00 Catherine Moore <clm@cygnus.com>
+
+ * arm.h: Rename relocations.
+
+1998-07-22 Ulrich Drepper <drepper@cygnus.com>
+
+ * ppc.h: Define enum as elf_ppc_reloc_type.
+
+Wed Jul 22 16:22:11 1998 Nick Clifton <nickc@cygnus.com>
+
+ * reloc-macros.h: New file. Provides relocation macros:
+ START_RELOC_NUMBERS, RELOC_NUMBER, FAKE_RELOC, EMPTY_RELOC and
+ END_RELOC_NUMBERS used by other elf header files.
+
+ * alpha.h: Use reloc-macros.h.
+ * arc.h: Use reloc-macros.h.
+ * arm.h: Use reloc-macros.h.
+ * d10v.h: Use reloc-macros.h.
+ * d30v.h: Use reloc-macros.h.
+ * hppa.h: Use reloc-macros.h.
+ * i386.h: Use reloc-macros.h.
+ * m32r.h: Use reloc-macros.h.
+ * m68k.h: Use reloc-macros.h.
+ * mips.h: Use reloc-macros.h.
+ * mn10200.h: Use reloc-macros.h.
+ * mn10300.h: Use reloc-macros.h.
+ * ppc.h: Use reloc-macros.h.
+ * sh.h: Use reloc-macros.h.
+ * sparc.h: Use reloc-macros.h.
+ * v850.h: Use reloc-macros.h.
+
+1998-07-22 13:07 Ulrich Drepper <drepper@cygnus.com>
+
+ * mn10300.h: Rewrite relocation definition using macros.
+ * mips.h: Likewise.
+ * ppc.h: Likewise.
+ * alpha.h: Likewise.
+ * arm.h: Likewise.
+ * d10v.h: Likewise.
+ * d30v.h: Likewise.
+ * m32r.h: Likewise.
+ * m68k.h: Likewise.
+ * mn10200.h: Likewise.
+ * sh.h: Likewise.
+ * sparc.h: Likewise.
+
+1998-07-21 13:07 Ulrich Drepper <drepper@cygnus.com>
+
+ * arm.h: New file.
+ * d10v.h: New file.
+ * d30v.h: New file.
+ * i386.h: New file.
+ * m68k.h: New file.
+ * mn10200.h: New file.
+ * sh.h: New file.
+
+ * mips.h: Add R_MIPS_* and SHT_MIPS_* entries.
+
+ * mn10300.h: Add R_MN10300_* entries.
+
+ * ppc.h: Add R_PPC_* entries.
+
+1998-07-20 07:11 Ulrich Drepper <drepper@cygnus.com>
+
+ * mips.h: Add ODK_*, OEX_*, OPAD_*, OHW_*, and OGP_* constants.
+ Define Elf32_External_Lib.
+
+1998-07-19 15:24 Ulrich Drepper <drepper@cygnus.com>
+
+ * mips.h (PT_MIPS_OPTIONS): New symbol.
+ Add lots of DT_MIPS_* symbols.
+
+Fri Jun 26 10:46:35 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h: New file.
+
+Thu Jun 18 19:27:56 1998 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_960, EM_V800, EM_FR20, EM_RH32, EM_MMA,
+ EM_OLD_ALPHA): Add these constants.
+
+Thu Jun 11 17:59:01 1998 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_486, EM_S370): Add these constants.
+
+Tue Jun 9 09:35:29 1998 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_ARM): Add this constant.
+
+Wed May 6 09:45:30 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips.h (EF_MIPS_MACH,E_MIPS_MACH_*): Added.
+
+Sat Apr 25 18:35:06 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (STO_ALPHA_NOPV, STO_ALPHA_STD_GPLOAD): New.
+
+Wed Apr 15 15:42:45 1998 Richard Henderson <rth@cygnus.com>
+
+ * common.h (EM_SPARC64): Move and rename to EM_OLD_SPARCV9.
+ (EM_SPARCV9): New. This is the official ABI name and number.
+
+Sat Feb 28 17:04:41 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (EF_ALPHA_32BIT, EF_ALPHA_CANRELAX): New.
+
+Mon Dec 15 15:07:49 1997 Nick Clifton <nickc@cygnus.com>
+
+ * m32r.h (EF_M32R_ARCH, E_M32R_ARCH): New flags to
+ specify machine architecture.
+
+Fri Dec 5 11:20:08 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h: New constants: SHN_V850_SCOMMON, SHN_V850_TCOMMON,
+ SHN_V850_ZCOMMON, SHT_V850_SCOMMON, SHT_V850_TCOMMON,
+ SHT_V850_ZCOMMON to handle v850 common sections.
+ enum reloc_type renamed to v850_reloc_type to avoid name
+ conflict.
+
+Thu Oct 23 13:55:24 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (enum elf_sparc_reloc_type): Add UA64 & UA16.
+
+Thu Oct 23 00:42:04 1997 Richard Henderson <rth@dot.cygnus.com>
+
+ * sparc.h (DT_SPARC_REGISTER): New macro.
+ (DT_SPARC_PLTFMT): In support of old sparc64-linux .plts; will
+ go away soon.
+
+Tue Sep 30 13:26:58 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (EF_SPARC_HAL_R1, EF_SPARC_EXT_MASK): New macros.
+ (EF_SPARCV9_{MM,TSO,PSO,RMO}): New macros.
+ (SHN_BEFORE,SHN_AFTER): New macros.
+ (SHF_EXCLUDE,SHF_ORDERED): New macros.
+ (STT_REGISTER): New macro.
+ (R_SPARC_GLOB_JMP): Deleted, but slot reserved.
+ (R_SPARC_{DISP64,PLT64,HIX22,LOX10}): New relocations.
+ (R_SPARC_{H44,M44,L44,REGISTER}): New relocations.
+ (ELF64_R_TYPE_{DATA,ID,INFO}): New macros.
+
+Wed Sep 17 16:41:42 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h: Add R_V850_CALLT_6_7_OFFSET and R_V850_CALLT_16_16_OFFSET.
+
+Tue Sep 16 14:16:17 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Add R_V850_TDA_16_16_OFFSET.
+
+Wed Sep 3 15:11:14 1997 Richard Henderson <rth@cygnus.com>
+
+ * mips.h: Correct typo in comment.
+
+Wed Sep 3 11:25:57 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Remove R_V850_16_PCREL.
+
+Tue Sep 2 17:41:05 1997 Nick Clifton <nickc@cygnus.com>
+
+ * common.h: Remove magic number for V850E.
+ * common.h: Remove magic number for V850EA.
+ * v850.h: Add new flags for e_flags field in elf header.
+
+Mon Aug 25 16:06:47 1997 Nick Clifton <nickc@cygnus.com>
+
+ * common.h (EM_CYGNUS_V850E): backend magic number for v850e.
+ * common.h (EM_CYGNUS_V850EA): backend magic number for v850ea.
+
+Mon Aug 18 11:05:23 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (reloc_type): Add 16 bit PC relative relocation.
+
+Fri Aug 15 05:10:09 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * arc.h (enum reloc): Move here from elf32-arc.c.
+
+Fri Aug 8 17:05:29 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * arc.h: New file.
+ * common.h (EM_CYGNUS_ARC): Define.
+
+Mon Jun 16 14:46:12 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (Elf_Internal_Ehdr): Change e_phoff and e_shoff from
+ bfd_signed_vma to bfd_size_type, as they are not signed.
+
+Wed Mar 5 15:35:26 1997 Doug Evans <dje@seba.cygnus.com>
+
+ * m32r.h (SHF_M32R_CAN_RELAX): Define.
+
+Mon Feb 24 17:49:01 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * external.h: Dump the 32/64 bit specific forms of the version
+ structures, and just define them as size independent.
+
+ * common.h (VERSYM_HIDDEN, VERSYM_VERSION): Define.
+
+Fri Feb 21 13:00:34 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * m32r.h (enum reloc_type): Add R_M32R_SDA16.
+ (SHN_M32R_SCOMMON): Define.
+
+Wed Feb 19 15:35:31 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ From Eric Youngdale <eric@andante.jic.com>:
+ * external.h, internal.h, common.h: Added new structures and
+ definitions for ELF versions.
+
+Tue Feb 18 17:40:36 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * common.h (EM_CYGNUS_D30V): Define.
+
+Mon Jan 27 11:54:44 1997 Doug Evans <dje@seba.cygnus.com>
+
+ * m32r.h (enum reloc_type): Add R_M32R_HI16_[SU]LO,R_M32R_LO16.
+
+Fri Jan 3 11:32:51 1997 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * v850.h (V850_OTHER_{TDA_BYTE,ERROR}): New bits for the st_other
+ field.
+ (SHN_V850_*): Remove v850 specific section indexes, which are not
+ needed.
+ (enum reloc_type): Move the v850 relocations here from
+ elf32-v850.c
+
+Thu Jan 2 19:30:23 1997 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * v850.h: New file, provide V850 specific definitions.
+
+Tue Dec 31 14:44:32 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * common.h (DT_AUXILIARY): Define.
+ (DT_FILTER): Define.
+
+Wed Dec 4 05:03:37 1996 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2.h: Update.
+
+Tue Nov 26 10:44:47 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (STO_MIPS16): Define.
+
+Tue Nov 12 15:45:42 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h: Remove empty file.
+
+Tue Oct 8 11:31:24 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (EF_MIPS_ABI2): Define.
+
+Thu Oct 3 10:01:40 1996 Jeffrey A Law (law@cygnus.com)
+
+ * common.h: Break mn10x00 support into mn10200 and mn10300.
+
+Wed Oct 2 21:26:43 1996 Jeffrey A Law (law@cygnus.com)
+
+ * common.h (EM_CYGNUS_MN10x00): Define.
+
+Mon Sep 23 09:18:04 1996 Doug Evans <dje@seba.cygnus.com>
+
+ * m32r.h: New file.
+
+Fri Aug 30 17:06:21 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * common.h (EM_SH): Define.
+
+Tue Aug 20 14:47:54 1996 J.T. Conklin <jtc@hippo.cygnus.com>
+
+ * common.h (EM_CYGNUS_V850): Define.
+
+Mon Aug 19 10:59:10 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * common.h (EM_CYGNUS_M32R): Define.
+
+Mon Jul 22 18:59:55 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (SHT_MIPS_IFACE, SHT_MIPS_CONTENT): Define.
+ (SHT_MIPS_SYMBOL_LIB): Define.
+ (SHF_MIPS_MERGE, SHF_MIPS_ADDR32, SHF_MIPS_ADDR64): Define.
+ (SHF_MIPS_NOSTRIP, SHF_MIPS_LOCAL, SHF_MIPS_NAMES): Define.
+
+Thu Jul 18 19:12:15 1996 Stan Shebs <shebs@andros.cygnus.com>
+
+ * dwarf2.h: New file.
+
+Jul 18 13:20:39 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * common.h (EM_CYGNUS_D10V): Define.
+ * d10v.h: New file.
+
+Fri Jun 21 12:33:24 1996 Richard Henderson <rth@tamu.edu>
+
+ * alpha.h: New file.
+ * common.h (EM_ALPHA): Define.
+
+Fri May 31 17:28:05 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (Elf_External_Options, Elf_Internal_Options): Define.
+ (bfd_mips_elf_swap_options_in): Declare.
+ (bfd_mips_elf_swap_options_out): Declare.
+ (ODK_*): Define.
+ (Elf64_External_RegInfo, Elf64_Internal_RegInfo): Define.
+ (bfd_mips_elf64_swap_reginfo_in): Declare.
+ (bfd_mips_elf64_swap_reginfo_out): Declare.
+
+Thu May 30 12:35:57 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (E_MIPS_ARCH_4): Define.
+
+Wed May 29 15:35:33 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (Elf64_Mips_External_Rel): Define.
+ (Elf64_Mips_Internal_Rel): Define.
+ (Elf64_Mips_External_Rela, Elf64_Mips_Internal_Rela): Define.
+ (RSS_*): Define.
+
+Mon Apr 22 18:26:30 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (R_SPARC_[56]): Always define.
+
+Mon Feb 19 01:55:56 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (R_SPARC_{PLT32,HIPLT22,LOPLT10,PCPLT32,PCPLT22,
+ PCPLT10,5,6}): Don't define ifdef SPARC64_OLD_RELOCS.
+
+Tue Feb 6 11:33:58 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (enum sparc_elf_reloc_type): Define.
+
+Wed Jan 17 09:09:16 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * common.h: Define EM_SPARC32PLUS.
+ * sparc.h: New file.
+
+Thu Jan 11 16:27:34 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * ppc.h (SHF_EXCLUDE, SHT_ORDERED): New fields from the abi.
+
+Thu Nov 30 16:47:18 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (struct elf_segment_map): Add includes_filehdr and
+ includes_phdrs fields.
+
+Tue Nov 28 16:58:10 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * internal.h (struct elf_segment_map): Define.
+
+Tue Oct 31 15:19:36 1995 Fred Fish <fnf@cygnus.com>
+
+ * common.h, dwarf.h, external.h, hppa.h, internal.h,
+ mips.h, ppc.h: Protect against multiple inclusions.
+
+Thu Sep 21 13:51:58 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * ppc.h (EF_PPC_RELOCATABLE_LIB): Add new flag bit.
+
+Fri Sep 1 15:32:17 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>
+
+ * mips.h: Add some definitions used on Irix 5.
+
+Tue Jun 20 10:18:28 1995 Jeff Law (law@snake.cs.utah.edu)
+
+ * hppa.h (CPU_PA_RISC1_0): Protect from redefinitions.
+ (CPU_PA_RISC1_1): Likewise.
+
+Wed Mar 8 18:14:37 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * ppc.h: New file for PowerPC support.
+
+Tue Feb 14 13:59:13 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * common.h (EM_PPC): Use offical value of 20, not 17.
+ (EM_PPC_OLD): Define this to be the old value of EM_PPC.
+
+Tue Jan 24 09:40:59 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * common.h (EM_PPC): New macro, PowerPC machine id.
+
+Tue Jan 17 10:51:38 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * mips.h (SHT_MIPS_MSYM, SHT_MIPS_DWARF, SHT_MIPS_EVENTS): Define.
+
+Mon Oct 17 13:43:59 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * internal.h (Elf_Internal_Shdr): Remove rawdata and size fields.
+ Add bfd_section field.
+
+Tue May 24 16:11:50 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (Elf32_External_gptab): Define.
+
+Mon May 16 13:22:04 1994 Jeff Law (law@snake.cs.utah.edu)
+
+ * common.h (EM_HPPA): Delete.
+ (EM_PARISC): Add.
+ * hppa.h: New file.
+
+Mon May 9 13:27:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * common.h (SHN_LORESERVE): Rename from SHN_LORESERV.
+ (ELF32_R_TYPE, ELF32_R_INFO): Don't rely on size of unsigned char.
+ (ELF64_R_TYPE): Don't rely on size of unsigned long.
+
+Mon Apr 25 15:53:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h (Elf_Internal_Shdr): Use PTR, not void *.
+
+Fri Mar 11 00:34:59 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * mips.h (SHN_MIPS_TEXT, SHN_MIPS_DATA): Define.
+
+Sat Mar 5 14:08:54 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * internal.h: Remove Elf32_*, Elf64_* typedefs. These names
+ cause conflicts with system headers, e.g. link.h in gdb/solib.c.
+ Combine 32- and 64-bit versions of *_Internal_Dyn.
+ * common.h: Replace uses of Elf64_Word, Elf64_Xword typedefs
+ by their expansion.
+ * mips.h: Replace uses of Elf32_Word, Elf32_Sword, Elf32_Addr
+ typedefs by their expansion. Add DT_MIPS_RLD_MAP definition.
+
+Fri Feb 18 10:39:54 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * common.h (EM_CYGNUS_POWERPC): Define. This may be temporary,
+ depending upon how quickly I can find a real PowerPC ABI.
+
+Mon Feb 7 08:27:13 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * internal.h: Change HOST_64_BIT to BFD_HOST_64_BIT.
+
+Wed Feb 2 14:12:18 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * common.h: Add comments regarding value of EM_HPPA and how to
+ pick an unofficial value.
+
+Wed Nov 17 17:14:26 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (SHT_MIPS_OPTIONS): Define.
+
+Mon Nov 8 17:57:00 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h: Added some more MIPS ABI macro definitions.
+
+Wed Nov 3 22:07:17 1993 Ken Raeburn (raeburn@rtl.cygnus.com)
+
+ * common.h (EM_MIPS_RS4_BE): New macro.
+
+Tue Oct 12 07:28:18 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h: New file. MIPS ABI specific information.
+
+Mon Jun 21 13:13:43 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
+
+ * internal.h: Combined 32- and 64-bit versions of all structures
+ except *_Internal_Dyn. This will simply the assembler interface,
+ and some bfd code.
+
+Tue May 25 02:00:16 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * external.h, internal.h, common.h: Added 64-bit versions of some
+ structures and macros. Renamed old versions to put "32" in the
+ name. Some are unchanged.
+
+Thu Apr 29 12:12:20 1993 Ken Raeburn (raeburn@deneb.cygnus.com)
+
+ * common.h (EM_HPPA, NT_VERSION, STN_UNDEF, DT_*): New macros.
+ * external.h (Elf_External_Dyn): New type.
+
+ * internal.h (Elf_Intenral_Shdr): New field `size'.
+ (Elf_Internal_Dyn): New type.
+
+Tue Apr 20 16:03:45 1993 Fred Fish (fnf@cygnus.com)
+
+ * dwarf.h (LANG_CHILL): Change value to one randomly picked in
+ the user defined range, to reduce probability of collisions.
+
+Sun Nov 15 09:34:02 1992 Fred Fish (fnf@cygnus.com)
+
+ * dwarf.h (AT_src_coords): Whitespace change only.
+ * dwarf.h (AT_body_begin, AT_body_end, LANG_MODULA2):
+ Add from latest gcc.
+ * dwarf.h (LANG_CHILL): Add as GNU extension.
+
+Sat Aug 1 13:46:53 1992 Fred Fish (fnf@cygnus.com)
+
+ * dwarf.h: Replace with current version from gcc distribution.
+
+Fri Jun 19 19:05:09 1992 John Gilmore (gnu at cygnus.com)
+
+ * internal.h: Add real struct tags to all the Type_Defs, so they
+ can be used in prototypes where the Type_Defs are not known.
+
+Fri Apr 3 20:58:58 1992 Mark Eichin (eichin at cygnus.com)
+
+ * common.h: added ELF_R_{SYM,TYPE,INFO} for handling relocation
+ info
+ added EM_MIPS, and corrected value of EM_860 based on System V ABI
+ manual.
+
+ * external.h: added Elf_External_{Rel,Rela}.
+
+ * internal.h: added Elf_Internal_{Rel,Rela}.
+ added rawdata to Elf_Internal_Shdr.
+
+Sat Nov 30 20:43:59 1991 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * common.h, dwarf.h, external.h, internal.h, ChangeLog; moved from
+ ../elf-<foo>
+
+
+Local Variables:
+version-control: never
+End:
diff --git a/include/elf/alpha.h b/include/elf/alpha.h
new file mode 100644
index 000000000..0313b5be6
--- /dev/null
+++ b/include/elf/alpha.h
@@ -0,0 +1,126 @@
+/* ALPHA ELF support for BFD.
+ Copyright 1996, 1998, 2000 Free Software Foundation, Inc.
+
+ By Eric Youngdale, <eric@aib.com>. No processor supplement available
+ for this platform.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the ALPHA ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_ALPHA_H
+#define _ELF_ALPHA_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* All addresses must be below 2GB. */
+#define EF_ALPHA_32BIT 0x00000001
+
+/* All relocations needed for relaxation with code movement are present. */
+#define EF_ALPHA_CANRELAX 0x00000002
+
+/* Processor specific section flags. */
+
+/* This section must be in the global data area. */
+#define SHF_ALPHA_GPREL 0x10000000
+
+/* Section contains some sort of debugging information. The exact
+ format is unspecified. It's probably ECOFF symbols. */
+#define SHT_ALPHA_DEBUG 0x70000001
+
+/* Section contains register usage information. */
+#define SHT_ALPHA_REGINFO 0x70000002
+
+/* A section of type SHT_MIPS_REGINFO contains the following
+ structure. */
+typedef struct
+{
+ /* Mask of general purpose registers used. */
+ unsigned long ri_gprmask;
+ /* Mask of co-processor registers used. */
+ unsigned long ri_cprmask[4];
+ /* GP register value for this object file. */
+ long ri_gp_value;
+} Elf64_RegInfo;
+
+/* Special values for the st_other field in the symbol table. */
+
+#define STO_ALPHA_NOPV 0x80
+#define STO_ALPHA_STD_GPLOAD 0x88
+
+#include "elf/reloc-macros.h"
+
+/* Alpha relocs. */
+START_RELOC_NUMBERS (elf_alpha_reloc_type)
+ RELOC_NUMBER (R_ALPHA_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_ALPHA_REFLONG, 1) /* Direct 32 bit */
+ RELOC_NUMBER (R_ALPHA_REFQUAD, 2) /* Direct 64 bit */
+ RELOC_NUMBER (R_ALPHA_GPREL32, 3) /* GP relative 32 bit */
+ RELOC_NUMBER (R_ALPHA_LITERAL, 4) /* GP relative 16 bit w/optimization */
+ RELOC_NUMBER (R_ALPHA_LITUSE, 5) /* Optimization hint for LITERAL */
+ RELOC_NUMBER (R_ALPHA_GPDISP, 6) /* Add displacement to GP */
+ RELOC_NUMBER (R_ALPHA_BRADDR, 7) /* PC+4 relative 23 bit shifted */
+ RELOC_NUMBER (R_ALPHA_HINT, 8) /* PC+4 relative 16 bit shifted */
+ RELOC_NUMBER (R_ALPHA_SREL16, 9) /* PC relative 16 bit */
+ RELOC_NUMBER (R_ALPHA_SREL32, 10) /* PC relative 32 bit */
+ RELOC_NUMBER (R_ALPHA_SREL64, 11) /* PC relative 64 bit */
+
+ /* Skip 12 - 16; deprecated ECOFF relocs. */
+
+ RELOC_NUMBER (R_ALPHA_GPRELHIGH, 17) /* GP relative 32 bit, high 16 bits */
+ RELOC_NUMBER (R_ALPHA_GPRELLOW, 18) /* GP relative 32 bit, low 16 bits */
+ RELOC_NUMBER (R_ALPHA_GPREL16, 19) /* GP relative 16 bit */
+
+ /* Skip 20 - 23; deprecated ECOFF relocs. */
+
+ /* These relocations are specific to shared libraries. */
+ RELOC_NUMBER (R_ALPHA_COPY, 24) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_ALPHA_GLOB_DAT, 25) /* Create GOT entry */
+ RELOC_NUMBER (R_ALPHA_JMP_SLOT, 26) /* Create PLT entry */
+ RELOC_NUMBER (R_ALPHA_RELATIVE, 27) /* Adjust by program base */
+
+ /* Like BRADDR, but assert that the source and target object file
+ share the same GP value, and adjust the target address for
+ STO_ALPHA_STD_GPLOAD. */
+ RELOC_NUMBER (R_ALPHA_BRSGP, 28)
+
+ /* Thread-Local Storage. */
+ RELOC_NUMBER (R_ALPHA_TLSGD, 29)
+ RELOC_NUMBER (R_ALPHA_TLSLDM, 30)
+ RELOC_NUMBER (R_ALPHA_DTPMOD64, 31)
+ RELOC_NUMBER (R_ALPHA_GOTDTPREL, 32)
+ RELOC_NUMBER (R_ALPHA_DTPREL64, 33)
+ RELOC_NUMBER (R_ALPHA_DTPRELHI, 34)
+ RELOC_NUMBER (R_ALPHA_DTPRELLO, 35)
+ RELOC_NUMBER (R_ALPHA_DTPREL16, 36)
+ RELOC_NUMBER (R_ALPHA_GOTTPREL, 37)
+ RELOC_NUMBER (R_ALPHA_TPREL64, 38)
+ RELOC_NUMBER (R_ALPHA_TPRELHI, 39)
+ RELOC_NUMBER (R_ALPHA_TPRELLO, 40)
+ RELOC_NUMBER (R_ALPHA_TPREL16, 41)
+
+END_RELOC_NUMBERS (R_ALPHA_max)
+
+#define LITUSE_ALPHA_ADDR 0
+#define LITUSE_ALPHA_BASE 1
+#define LITUSE_ALPHA_BYTOFF 2
+#define LITUSE_ALPHA_JSR 3
+#define LITUSE_ALPHA_TLSGD 4
+#define LITUSE_ALPHA_TLSLDM 5
+
+#endif /* _ELF_ALPHA_H */
diff --git a/include/elf/arc.h b/include/elf/arc.h
new file mode 100644
index 000000000..6e94c29db
--- /dev/null
+++ b/include/elf/arc.h
@@ -0,0 +1,56 @@
+/* ARC ELF support for BFD.
+ Copyright 1995, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Doug Evans, (dje@cygnus.com)
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the ARC ELF ABI. */
+
+#ifndef _ELF_ARC_H
+#define _ELF_ARC_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+
+START_RELOC_NUMBERS (elf_arc_reloc_type)
+ RELOC_NUMBER (R_ARC_NONE, 0)
+ RELOC_NUMBER (R_ARC_32, 1)
+ RELOC_NUMBER (R_ARC_B26, 2)
+ RELOC_NUMBER (R_ARC_B22_PCREL, 3)
+END_RELOC_NUMBERS (R_ARC_max)
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Four bit ARC machine type field. */
+
+#define EF_ARC_MACH 0x0000000f
+
+/* Various CPU types. */
+
+#define E_ARC_MACH_ARC5 0
+#define E_ARC_MACH_ARC6 1
+#define E_ARC_MACH_ARC7 2
+#define E_ARC_MACH_ARC8 3
+
+/* Leave bits 0xf0 alone in case we ever have more than 16 cpu types. */
+
+/* File contains position independent code. */
+
+#define EF_ARC_PIC 0x00000100
+
+#endif /* _ELF_ARC_H */
diff --git a/include/elf/arm.h b/include/elf/arm.h
new file mode 100644
index 000000000..05ba3464f
--- /dev/null
+++ b/include/elf/arm.h
@@ -0,0 +1,161 @@
+/* ARM ELF support for BFD.
+ Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_ARM_H
+#define _ELF_ARM_H
+
+#include "elf/reloc-macros.h"
+
+/* Processor specific flags for the ELF header e_flags field. */
+#define EF_ARM_RELEXEC 0x01
+#define EF_ARM_HASENTRY 0x02
+#define EF_ARM_INTERWORK 0x04
+#define EF_ARM_APCS_26 0x08
+#define EF_ARM_APCS_FLOAT 0x10
+#define EF_ARM_PIC 0x20
+#define EF_ARM_ALIGN8 0x40 /* 8-bit structure alignment is in use. */
+#define EF_ARM_NEW_ABI 0x80
+#define EF_ARM_OLD_ABI 0x100
+#define EF_ARM_SOFT_FLOAT 0x200
+#define EF_ARM_VFP_FLOAT 0x400
+#define EF_ARM_MAVERICK_FLOAT 0x800
+
+/* Other constants defined in the ARM ELF spec. version B-01. */
+#define EF_ARM_SYMSARESORTED 0x04 /* NB conflicts with EF_INTERWORK */
+#define EF_ARM_DYNSYMSUSESEGIDX 0x08 /* NB conflicts with EF_APCS26 */
+#define EF_ARM_MAPSYMSFIRST 0x10 /* NB conflicts with EF_APCS_FLOAT */
+#define EF_ARM_EABIMASK 0xFF000000
+
+/* Constants defined in AAELF. */
+#define EF_ARM_BE8 0x00800000
+#define EF_ARM_LE8 0x00400000
+
+#define EF_ARM_EABI_VERSION(flags) ((flags) & EF_ARM_EABIMASK)
+#define EF_ARM_EABI_UNKNOWN 0x00000000
+#define EF_ARM_EABI_VER1 0x01000000
+#define EF_ARM_EABI_VER2 0x02000000
+#define EF_ARM_EABI_VER3 0x03000000
+
+/* Local aliases for some flags to match names used by COFF port. */
+#define F_INTERWORK EF_ARM_INTERWORK
+#define F_APCS26 EF_ARM_APCS_26
+#define F_APCS_FLOAT EF_ARM_APCS_FLOAT
+#define F_PIC EF_ARM_PIC
+#define F_SOFT_FLOAT EF_ARM_SOFT_FLOAT
+#define F_VFP_FLOAT EF_ARM_VFP_FLOAT
+
+/* Additional symbol types for Thumb. */
+#define STT_ARM_TFUNC STT_LOPROC /* A Thumb function. */
+#define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */
+
+/* ARM-specific values for sh_flags. */
+#define SHF_ENTRYSECT 0x10000000 /* Section contains an entry point. */
+#define SHF_COMDEF 0x80000000 /* Section may be multiply defined in the input to a link step. */
+
+/* ARM-specific program header flags. */
+#define PF_ARM_SB 0x10000000 /* Segment contains the location addressed by the static base. */
+#define PF_ARM_PI 0x20000000 /* Segment is position-independent. */
+#define PF_ARM_ABS 0x40000000 /* Segment must be loaded at its base address. */
+
+/* Relocation types. */
+
+START_RELOC_NUMBERS (elf_arm_reloc_type)
+ RELOC_NUMBER (R_ARM_NONE, 0)
+ RELOC_NUMBER (R_ARM_PC24, 1)
+ RELOC_NUMBER (R_ARM_ABS32, 2)
+ RELOC_NUMBER (R_ARM_REL32, 3)
+#ifdef OLD_ARM_ABI
+ RELOC_NUMBER (R_ARM_ABS8, 4)
+ RELOC_NUMBER (R_ARM_ABS16, 5)
+ RELOC_NUMBER (R_ARM_ABS12, 6)
+ RELOC_NUMBER (R_ARM_THM_ABS5, 7)
+ RELOC_NUMBER (R_ARM_THM_PC22, 8)
+ RELOC_NUMBER (R_ARM_SBREL32, 9)
+ RELOC_NUMBER (R_ARM_AMP_VCALL9, 10)
+ RELOC_NUMBER (R_ARM_THM_PC11, 11) /* Cygnus extension to abi: Thumb unconditional branch. */
+ RELOC_NUMBER (R_ARM_THM_PC9, 12) /* Cygnus extension to abi: Thumb conditional branch. */
+ RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 13)
+ RELOC_NUMBER (R_ARM_GNU_VTENTRY, 14)
+#else /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_PC13, 4)
+ RELOC_NUMBER (R_ARM_ABS16, 5)
+ RELOC_NUMBER (R_ARM_ABS12, 6)
+ RELOC_NUMBER (R_ARM_THM_ABS5, 7)
+ RELOC_NUMBER (R_ARM_ABS8, 8)
+ RELOC_NUMBER (R_ARM_SBREL32, 9)
+ RELOC_NUMBER (R_ARM_THM_PC22, 10)
+ RELOC_NUMBER (R_ARM_THM_PC8, 11)
+ RELOC_NUMBER (R_ARM_AMP_VCALL9, 12)
+ RELOC_NUMBER (R_ARM_SWI24, 13)
+ RELOC_NUMBER (R_ARM_THM_SWI8, 14)
+ RELOC_NUMBER (R_ARM_XPC25, 15)
+ RELOC_NUMBER (R_ARM_THM_XPC22, 16)
+#endif /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_COPY, 20) /* Copy symbol at runtime. */
+ RELOC_NUMBER (R_ARM_GLOB_DAT, 21) /* Create GOT entry. */
+ RELOC_NUMBER (R_ARM_JUMP_SLOT, 22) /* Create PLT entry. */
+ RELOC_NUMBER (R_ARM_RELATIVE, 23) /* Adjust by program base. */
+ RELOC_NUMBER (R_ARM_GOTOFF, 24) /* 32 bit offset to GOT. */
+ RELOC_NUMBER (R_ARM_GOTPC, 25) /* 32 bit PC relative offset to GOT. */
+ RELOC_NUMBER (R_ARM_GOT32, 26) /* 32 bit GOT entry. */
+ RELOC_NUMBER (R_ARM_PLT32, 27) /* 32 bit PLT address. */
+#ifdef OLD_ARM_ABI
+ FAKE_RELOC (FIRST_INVALID_RELOC, 28)
+ FAKE_RELOC (LAST_INVALID_RELOC, 249)
+#else /* not OLD_ARM_ABI */
+ FAKE_RELOC (FIRST_INVALID_RELOC1, 28)
+ FAKE_RELOC (LAST_INVALID_RELOC1, 31)
+ RELOC_NUMBER (R_ARM_ALU_PCREL7_0, 32)
+ RELOC_NUMBER (R_ARM_ALU_PCREL15_8, 33)
+ RELOC_NUMBER (R_ARM_ALU_PCREL23_15, 34)
+ RELOC_NUMBER (R_ARM_LDR_SBREL_11_0, 35)
+ RELOC_NUMBER (R_ARM_ALU_SBREL_19_12, 36)
+ RELOC_NUMBER (R_ARM_ALU_SBREL_27_20, 37)
+ RELOC_NUMBER (R_ARM_TARGET1, 38)
+ RELOC_NUMBER (R_ARM_ROSEGREL32, 39)
+ RELOC_NUMBER (R_ARM_V4BX, 40)
+ RELOC_NUMBER (R_ARM_TARGET2, 41)
+ RELOC_NUMBER (R_ARM_PREL31, 42)
+ FAKE_RELOC (FIRST_INVALID_RELOC2, 43)
+ FAKE_RELOC (LAST_INVALID_RELOC2, 94)
+ RELOC_NUMBER (R_ARM_GOT_ABS, 95)
+ RELOC_NUMBER (R_ARM_GOT_PREL, 96)
+ RELOC_NUMBER (R_ARM_GOT_BREL12, 97)
+ RELOC_NUMBER (R_ARM_GOTOFF12, 98)
+ RELOC_NUMBER (R_ARM_GOTRELAX, 99)
+ RELOC_NUMBER (R_ARM_GNU_VTENTRY, 100)
+ RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 101)
+ RELOC_NUMBER (R_ARM_THM_PC11, 102) /* Cygnus extension to abi: Thumb unconditional branch. */
+ RELOC_NUMBER (R_ARM_THM_PC9, 103) /* Cygnus extension to abi: Thumb conditional branch. */
+ FAKE_RELOC (FIRST_INVALID_RELOC3, 104)
+ FAKE_RELOC (LAST_INVALID_RELOC3, 248)
+ RELOC_NUMBER (R_ARM_RXPC25, 249)
+#endif /* not OLD_ARM_ABI */
+ RELOC_NUMBER (R_ARM_RSBREL32, 250)
+ RELOC_NUMBER (R_ARM_THM_RPC22, 251)
+ RELOC_NUMBER (R_ARM_RREL32, 252)
+ RELOC_NUMBER (R_ARM_RABS32, 253)
+ RELOC_NUMBER (R_ARM_RPC24, 254)
+ RELOC_NUMBER (R_ARM_RBASE, 255)
+END_RELOC_NUMBERS (R_ARM_max)
+
+/* The name of the note section used to identify arm variants. */
+#define ARM_NOTE_SECTION ".note.gnu.arm.ident"
+
+#endif /* _ELF_ARM_H */
diff --git a/include/elf/avr.h b/include/elf/avr.h
new file mode 100644
index 000000000..59cf07347
--- /dev/null
+++ b/include/elf/avr.h
@@ -0,0 +1,58 @@
+/* AVR ELF support for BFD.
+ Copyright 1999, 2000 Free Software Foundation, Inc.
+ Contributed by Denis Chertykov <denisc@overta.ru>
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_AVR_H
+#define _ELF_AVR_H
+
+#include "elf/reloc-macros.h"
+
+/* Processor specific flags for the ELF header e_flags field. */
+#define EF_AVR_MACH 0xf
+
+#define E_AVR_MACH_AVR1 1
+#define E_AVR_MACH_AVR2 2
+#define E_AVR_MACH_AVR3 3
+#define E_AVR_MACH_AVR4 4
+#define E_AVR_MACH_AVR5 5
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_avr_reloc_type)
+ RELOC_NUMBER (R_AVR_NONE, 0)
+ RELOC_NUMBER (R_AVR_32, 1)
+ RELOC_NUMBER (R_AVR_7_PCREL, 2)
+ RELOC_NUMBER (R_AVR_13_PCREL, 3)
+ RELOC_NUMBER (R_AVR_16, 4)
+ RELOC_NUMBER (R_AVR_16_PM, 5)
+ RELOC_NUMBER (R_AVR_LO8_LDI, 6)
+ RELOC_NUMBER (R_AVR_HI8_LDI, 7)
+ RELOC_NUMBER (R_AVR_HH8_LDI, 8)
+ RELOC_NUMBER (R_AVR_LO8_LDI_NEG, 9)
+ RELOC_NUMBER (R_AVR_HI8_LDI_NEG, 10)
+ RELOC_NUMBER (R_AVR_HH8_LDI_NEG, 11)
+ RELOC_NUMBER (R_AVR_LO8_LDI_PM, 12)
+ RELOC_NUMBER (R_AVR_HI8_LDI_PM, 13)
+ RELOC_NUMBER (R_AVR_HH8_LDI_PM, 14)
+ RELOC_NUMBER (R_AVR_LO8_LDI_PM_NEG, 15)
+ RELOC_NUMBER (R_AVR_HI8_LDI_PM_NEG, 16)
+ RELOC_NUMBER (R_AVR_HH8_LDI_PM_NEG, 17)
+ RELOC_NUMBER (R_AVR_CALL, 18)
+END_RELOC_NUMBERS (R_AVR_max)
+
+#endif /* _ELF_AVR_H */
diff --git a/include/elf/common.h b/include/elf/common.h
new file mode 100644
index 000000000..5573fca76
--- /dev/null
+++ b/include/elf/common.h
@@ -0,0 +1,753 @@
+/* ELF support for BFD.
+ Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+ 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support, from information published
+ in "UNIX System V Release 4, Programmers Guide: ANSI C and
+ Programming Support Tools".
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of ELF support for BFD, and contains the portions
+ that are common to both the internal and external representations.
+ For example, ELFMAG0 is the byte 0x7F in both the internal (in-memory)
+ and external (in-file) representations. */
+
+#ifndef _ELF_COMMON_H
+#define _ELF_COMMON_H
+
+/* Fields in e_ident[]. */
+
+#define EI_MAG0 0 /* File identification byte 0 index */
+#define ELFMAG0 0x7F /* Magic number byte 0 */
+
+#define EI_MAG1 1 /* File identification byte 1 index */
+#define ELFMAG1 'E' /* Magic number byte 1 */
+
+#define EI_MAG2 2 /* File identification byte 2 index */
+#define ELFMAG2 'L' /* Magic number byte 2 */
+
+#define EI_MAG3 3 /* File identification byte 3 index */
+#define ELFMAG3 'F' /* Magic number byte 3 */
+
+#define EI_CLASS 4 /* File class */
+#define ELFCLASSNONE 0 /* Invalid class */
+#define ELFCLASS32 1 /* 32-bit objects */
+#define ELFCLASS64 2 /* 64-bit objects */
+
+#define EI_DATA 5 /* Data encoding */
+#define ELFDATANONE 0 /* Invalid data encoding */
+#define ELFDATA2LSB 1 /* 2's complement, little endian */
+#define ELFDATA2MSB 2 /* 2's complement, big endian */
+
+#define EI_VERSION 6 /* File version */
+
+#define EI_OSABI 7 /* Operating System/ABI indication */
+#define ELFOSABI_NONE 0 /* UNIX System V ABI */
+#define ELFOSABI_HPUX 1 /* HP-UX operating system */
+#define ELFOSABI_NETBSD 2 /* NetBSD */
+#define ELFOSABI_LINUX 3 /* GNU/Linux */
+#define ELFOSABI_HURD 4 /* GNU/Hurd */
+#define ELFOSABI_SOLARIS 6 /* Solaris */
+#define ELFOSABI_AIX 7 /* AIX */
+#define ELFOSABI_IRIX 8 /* IRIX */
+#define ELFOSABI_FREEBSD 9 /* FreeBSD */
+#define ELFOSABI_TRU64 10 /* TRU64 UNIX */
+#define ELFOSABI_MODESTO 11 /* Novell Modesto */
+#define ELFOSABI_OPENBSD 12 /* OpenBSD */
+#define ELFOSABI_OPENVMS 13 /* OpenVMS */
+#define ELFOSABI_NSK 14 /* Hewlett-Packard Non-Stop Kernel */
+#define ELFOSABI_AROS 15 /* Amiga Research OS */
+#define ELFOSABI_ARM 97 /* ARM */
+#define ELFOSABI_STANDALONE 255 /* Standalone (embedded) application */
+
+#define EI_ABIVERSION 8 /* ABI version */
+
+#define EI_PAD 9 /* Start of padding bytes */
+
+
+/* Values for e_type, which identifies the object file type. */
+
+#define ET_NONE 0 /* No file type */
+#define ET_REL 1 /* Relocatable file */
+#define ET_EXEC 2 /* Executable file */
+#define ET_DYN 3 /* Shared object file */
+#define ET_CORE 4 /* Core file */
+#define ET_LOOS 0xFE00 /* Operating system-specific */
+#define ET_HIOS 0xFEFF /* Operating system-specific */
+#define ET_LOPROC 0xFF00 /* Processor-specific */
+#define ET_HIPROC 0xFFFF /* Processor-specific */
+
+/* Values for e_machine, which identifies the architecture. These numbers
+ are officially assigned by registry@caldera.com. See below for a list of
+ ad-hoc numbers used during initial development. */
+
+#define EM_NONE 0 /* No machine */
+#define EM_M32 1 /* AT&T WE 32100 */
+#define EM_SPARC 2 /* SUN SPARC */
+#define EM_386 3 /* Intel 80386 */
+#define EM_68K 4 /* Motorola m68k family */
+#define EM_88K 5 /* Motorola m88k family */
+#define EM_486 6 /* Intel 80486 *//* Reserved for future use */
+#define EM_860 7 /* Intel 80860 */
+#define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
+#define EM_S370 9 /* IBM System/370 */
+#define EM_MIPS_RS3_LE 10 /* MIPS R3000 little-endian (Oct 4 1999 Draft) Deprecated */
+
+#define EM_PARISC 15 /* HPPA */
+
+#define EM_VPP550 17 /* Fujitsu VPP500 */
+#define EM_SPARC32PLUS 18 /* Sun's "v8plus" */
+#define EM_960 19 /* Intel 80960 */
+#define EM_PPC 20 /* PowerPC */
+#define EM_PPC64 21 /* 64-bit PowerPC */
+#define EM_S390 22 /* IBM S/390 */
+
+#define EM_V800 36 /* NEC V800 series */
+#define EM_FR20 37 /* Fujitsu FR20 */
+#define EM_RH32 38 /* TRW RH32 */
+#define EM_MCORE 39 /* Motorola M*Core */ /* May also be taken by Fujitsu MMA */
+#define EM_RCE 39 /* Old name for MCore */
+#define EM_ARM 40 /* ARM */
+#define EM_OLD_ALPHA 41 /* Digital Alpha */
+#define EM_SH 42 /* Renesas (formerly Hitachi) / SuperH SH */
+#define EM_SPARCV9 43 /* SPARC v9 64-bit */
+#define EM_TRICORE 44 /* Siemens Tricore embedded processor */
+#define EM_ARC 45 /* ARC Cores */
+#define EM_H8_300 46 /* Renesas (formerly Hitachi) H8/300 */
+#define EM_H8_300H 47 /* Renesas (formerly Hitachi) H8/300H */
+#define EM_H8S 48 /* Renesas (formerly Hitachi) H8S */
+#define EM_H8_500 49 /* Renesas (formerly Hitachi) H8/500 */
+#define EM_IA_64 50 /* Intel IA-64 Processor */
+#define EM_MIPS_X 51 /* Stanford MIPS-X */
+#define EM_COLDFIRE 52 /* Motorola Coldfire */
+#define EM_68HC12 53 /* Motorola M68HC12 */
+#define EM_MMA 54 /* Fujitsu Multimedia Accelerator */
+#define EM_PCP 55 /* Siemens PCP */
+#define EM_NCPU 56 /* Sony nCPU embedded RISC processor */
+#define EM_NDR1 57 /* Denso NDR1 microprocesspr */
+#define EM_STARCORE 58 /* Motorola Star*Core processor */
+#define EM_ME16 59 /* Toyota ME16 processor */
+#define EM_ST100 60 /* STMicroelectronics ST100 processor */
+#define EM_TINYJ 61 /* Advanced Logic Corp. TinyJ embedded processor */
+#define EM_X86_64 62 /* Advanced Micro Devices X86-64 processor */
+
+#define EM_PDP10 64 /* Digital Equipment Corp. PDP-10 */
+#define EM_PDP11 65 /* Digital Equipment Corp. PDP-11 */
+#define EM_FX66 66 /* Siemens FX66 microcontroller */
+#define EM_ST9PLUS 67 /* STMicroelectronics ST9+ 8/16 bit microcontroller */
+#define EM_ST7 68 /* STMicroelectronics ST7 8-bit microcontroller */
+#define EM_68HC16 69 /* Motorola MC68HC16 Microcontroller */
+#define EM_68HC11 70 /* Motorola MC68HC11 Microcontroller */
+#define EM_68HC08 71 /* Motorola MC68HC08 Microcontroller */
+#define EM_68HC05 72 /* Motorola MC68HC05 Microcontroller */
+#define EM_SVX 73 /* Silicon Graphics SVx */
+#define EM_ST19 74 /* STMicroelectronics ST19 8-bit cpu */
+#define EM_VAX 75 /* Digital VAX */
+#define EM_CRIS 76 /* Axis Communications 32-bit embedded processor */
+#define EM_JAVELIN 77 /* Infineon Technologies 32-bit embedded cpu */
+#define EM_FIREPATH 78 /* Element 14 64-bit DSP processor */
+#define EM_ZSP 79 /* LSI Logic's 16-bit DSP processor */
+#define EM_MMIX 80 /* Donald Knuth's educational 64-bit processor */
+#define EM_HUANY 81 /* Harvard's machine-independent format */
+#define EM_PRISM 82 /* SiTera Prism */
+#define EM_AVR 83 /* Atmel AVR 8-bit microcontroller */
+#define EM_FR30 84 /* Fujitsu FR30 */
+#define EM_D10V 85 /* Mitsubishi D10V */
+#define EM_D30V 86 /* Mitsubishi D30V */
+#define EM_V850 87 /* NEC v850 */
+#define EM_M32R 88 /* Renesas M32R (formerly Mitsubishi M32R) */
+#define EM_MN10300 89 /* Matsushita MN10300 */
+#define EM_MN10200 90 /* Matsushita MN10200 */
+#define EM_PJ 91 /* picoJava */
+#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */
+#define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */
+#define EM_XTENSA 94 /* Tensilica Xtensa Architecture */
+#define EM_IP2K 101 /* Ubicom IP2022 micro controller */
+#define EM_CR 103 /* National Semiconductor CompactRISC */
+#define EM_MSP430 105 /* TI msp430 micro controller */
+#define EM_CRX 114 /* National Semiconductor CRX */
+
+/* If it is necessary to assign new unofficial EM_* values, please pick large
+ random numbers (0x8523, 0xa7f2, etc.) to minimize the chances of collision
+ with official or non-GNU unofficial values.
+
+ NOTE: Do not just increment the most recent number by one.
+ Somebody else somewhere will do exactly the same thing, and you
+ will have a collision. Instead, pick a random number.
+
+ Normally, each entity or maintainer responsible for a machine with an
+ unofficial e_machine number should eventually ask registry@caldera.com for
+ an officially blessed number to be added to the list above. */
+
+#define EM_PJ_OLD 99 /* picoJava */
+
+/* Cygnus PowerPC ELF backend. Written in the absence of an ABI. */
+#define EM_CYGNUS_POWERPC 0x9025
+
+/* Old version of Sparc v9, from before the ABI; this should be
+ removed shortly. */
+#define EM_OLD_SPARCV9 11
+
+/* Old version of PowerPC, this should be removed shortly. */
+#define EM_PPC_OLD 17
+
+/* (Deprecated) Temporary number for the OpenRISC processor. */
+#define EM_OR32 0x8472
+
+/* Cygnus M32R ELF backend. Written in the absence of an ABI. */
+#define EM_CYGNUS_M32R 0x9041
+
+/* Alpha backend magic number. Written in the absence of an ABI. */
+#define EM_ALPHA 0x9026
+
+/* old S/390 backend magic number. Written in the absence of an ABI. */
+#define EM_S390_OLD 0xa390
+
+/* D10V backend magic number. Written in the absence of an ABI. */
+#define EM_CYGNUS_D10V 0x7650
+
+/* D30V backend magic number. Written in the absence of an ABI. */
+#define EM_CYGNUS_D30V 0x7676
+
+/* V850 backend magic number. Written in the absense of an ABI. */
+#define EM_CYGNUS_V850 0x9080
+
+/* mn10200 and mn10300 backend magic numbers.
+ Written in the absense of an ABI. */
+#define EM_CYGNUS_MN10200 0xdead
+#define EM_CYGNUS_MN10300 0xbeef
+
+/* FR30 magic number - no EABI available. */
+#define EM_CYGNUS_FR30 0x3330
+
+/* AVR magic number
+ Written in the absense of an ABI. */
+#define EM_AVR_OLD 0x1057
+
+/* OpenRISC magic number
+ Written in the absense of an ABI. */
+#define EM_OPENRISC_OLD 0x3426
+
+/* DLX magic number
+ Written in the absense of an ABI. */
+#define EM_DLX 0x5aa5
+
+#define EM_XSTORMY16 0xad45
+
+/* FRV magic number - no EABI available??. */
+#define EM_CYGNUS_FRV 0x5441
+
+/* Ubicom IP2xxx; no ABI */
+#define EM_IP2K_OLD 0x8217
+
+/* MSP430 magic number
+ Written in the absense everything. */
+#define EM_MSP430_OLD 0x1059
+
+/* Vitesse IQ2000. */
+#define EM_IQ2000 0xFEBA
+
+/* Old, unofficial value for Xtensa. */
+#define EM_XTENSA_OLD 0xabc7
+
+/* See the above comment before you add a new EM_* value here. */
+
+/* Values for e_version. */
+
+#define EV_NONE 0 /* Invalid ELF version */
+#define EV_CURRENT 1 /* Current version */
+
+/* Values for program header, p_type field. */
+
+#define PT_NULL 0 /* Program header table entry unused */
+#define PT_LOAD 1 /* Loadable program segment */
+#define PT_DYNAMIC 2 /* Dynamic linking information */
+#define PT_INTERP 3 /* Program interpreter */
+#define PT_NOTE 4 /* Auxiliary information */
+#define PT_SHLIB 5 /* Reserved, unspecified semantics */
+#define PT_PHDR 6 /* Entry for header table itself */
+#define PT_TLS 7 /* Thread local storage segment */
+#define PT_LOOS 0x60000000 /* OS-specific */
+#define PT_HIOS 0x6fffffff /* OS-specific */
+#define PT_LOPROC 0x70000000 /* Processor-specific */
+#define PT_HIPROC 0x7FFFFFFF /* Processor-specific */
+
+#define PT_GNU_EH_FRAME (PT_LOOS + 0x474e550) /* Frame unwind information */
+#define PT_GNU_STACK (PT_LOOS + 0x474e551) /* Stack flags */
+#define PT_GNU_RELRO (PT_LOOS + 0x474e552) /* Read-only after relocation */
+
+/* Program segment permissions, in program header p_flags field. */
+
+#define PF_X (1 << 0) /* Segment is executable */
+#define PF_W (1 << 1) /* Segment is writable */
+#define PF_R (1 << 2) /* Segment is readable */
+/* #define PF_MASKOS 0x0F000000 *//* OS-specific reserved bits */
+#define PF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
+#define PF_MASKPROC 0xF0000000 /* Processor-specific reserved bits */
+
+/* Values for section header, sh_type field. */
+
+#define SHT_NULL 0 /* Section header table entry unused */
+#define SHT_PROGBITS 1 /* Program specific (private) data */
+#define SHT_SYMTAB 2 /* Link editing symbol table */
+#define SHT_STRTAB 3 /* A string table */
+#define SHT_RELA 4 /* Relocation entries with addends */
+#define SHT_HASH 5 /* A symbol hash table */
+#define SHT_DYNAMIC 6 /* Information for dynamic linking */
+#define SHT_NOTE 7 /* Information that marks file */
+#define SHT_NOBITS 8 /* Section occupies no space in file */
+#define SHT_REL 9 /* Relocation entries, no addends */
+#define SHT_SHLIB 10 /* Reserved, unspecified semantics */
+#define SHT_DYNSYM 11 /* Dynamic linking symbol table */
+
+#define SHT_INIT_ARRAY 14 /* Array of ptrs to init functions */
+#define SHT_FINI_ARRAY 15 /* Array of ptrs to finish functions */
+#define SHT_PREINIT_ARRAY 16 /* Array of ptrs to pre-init funcs */
+#define SHT_GROUP 17 /* Section contains a section group */
+#define SHT_SYMTAB_SHNDX 18 /* Indicies for SHN_XINDEX entries */
+
+#define SHT_LOOS 0x60000000 /* First of OS specific semantics */
+#define SHT_HIOS 0x6fffffff /* Last of OS specific semantics */
+
+#define SHT_GNU_LIBLIST 0x6ffffff7 /* List of prelink dependencies */
+
+/* The next three section types are defined by Solaris, and are named
+ SHT_SUNW*. We use them in GNU code, so we also define SHT_GNU*
+ versions. */
+#define SHT_SUNW_verdef 0x6ffffffd /* Versions defined by file */
+#define SHT_SUNW_verneed 0x6ffffffe /* Versions needed by file */
+#define SHT_SUNW_versym 0x6fffffff /* Symbol versions */
+
+#define SHT_GNU_verdef SHT_SUNW_verdef
+#define SHT_GNU_verneed SHT_SUNW_verneed
+#define SHT_GNU_versym SHT_SUNW_versym
+
+#define SHT_LOPROC 0x70000000 /* Processor-specific semantics, lo */
+#define SHT_HIPROC 0x7FFFFFFF /* Processor-specific semantics, hi */
+#define SHT_LOUSER 0x80000000 /* Application-specific semantics */
+/* #define SHT_HIUSER 0x8FFFFFFF *//* Application-specific semantics */
+#define SHT_HIUSER 0xFFFFFFFF /* New value, defined in Oct 4, 1999 Draft */
+
+/* Values for section header, sh_flags field. */
+
+#define SHF_WRITE (1 << 0) /* Writable data during execution */
+#define SHF_ALLOC (1 << 1) /* Occupies memory during execution */
+#define SHF_EXECINSTR (1 << 2) /* Executable machine instructions */
+#define SHF_MERGE (1 << 4) /* Data in this section can be merged */
+#define SHF_STRINGS (1 << 5) /* Contains null terminated character strings */
+#define SHF_INFO_LINK (1 << 6) /* sh_info holds section header table index */
+#define SHF_LINK_ORDER (1 << 7) /* Preserve section ordering when linking */
+#define SHF_OS_NONCONFORMING (1 << 8) /* OS specific processing required */
+#define SHF_GROUP (1 << 9) /* Member of a section group */
+#define SHF_TLS (1 << 10) /* Thread local storage section */
+
+/* #define SHF_MASKOS 0x0F000000 *//* OS-specific semantics */
+#define SHF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
+#define SHF_MASKPROC 0xF0000000 /* Processor-specific semantics */
+
+/* Values of note segment descriptor types for core files. */
+
+#define NT_PRSTATUS 1 /* Contains copy of prstatus struct */
+#define NT_FPREGSET 2 /* Contains copy of fpregset struct */
+#define NT_PRPSINFO 3 /* Contains copy of prpsinfo struct */
+#define NT_TASKSTRUCT 4 /* Contains copy of task struct */
+#define NT_AUXV 6 /* Contains copy of Elfxx_auxv_t */
+#define NT_PRXFPREG 0x46e62b7f /* Contains a user_xfpregs_struct; */
+ /* note name must be "LINUX". */
+
+/* Note segments for core files on dir-style procfs systems. */
+
+#define NT_PSTATUS 10 /* Has a struct pstatus */
+#define NT_FPREGS 12 /* Has a struct fpregset */
+#define NT_PSINFO 13 /* Has a struct psinfo */
+#define NT_LWPSTATUS 16 /* Has a struct lwpstatus_t */
+#define NT_LWPSINFO 17 /* Has a struct lwpsinfo_t */
+#define NT_WIN32PSTATUS 18 /* Has a struct win32_pstatus */
+
+
+/* Note segments for core files on NetBSD systems. Note name
+ must start with "NetBSD-CORE". */
+
+#define NT_NETBSDCORE_PROCINFO 1 /* Has a struct procinfo */
+#define NT_NETBSDCORE_FIRSTMACH 32 /* start of machdep note types */
+
+
+/* Values of note segment descriptor types for object files. */
+
+#define NT_VERSION 1 /* Contains a version string. */
+#define NT_ARCH 2 /* Contains an architecture string. */
+
+/* Values for GNU .note.ABI-tag notes. Note name is "GNU". */
+
+#define NT_GNU_ABI_TAG 1
+#define GNU_ABI_TAG_LINUX 0
+#define GNU_ABI_TAG_HURD 1
+#define GNU_ABI_TAG_SOLARIS 2
+#define GNU_ABI_TAG_FREEBSD 3
+#define GNU_ABI_TAG_NETBSD 4
+
+/* Values for NetBSD .note.netbsd.ident notes. Note name is "NetBSD". */
+
+#define NT_NETBSD_IDENT 1
+
+/* Values for OpenBSD .note.openbsd.ident notes. Note name is "OpenBSD". */
+
+#define NT_OPENBSD_IDENT 1
+
+/* Values for FreeBSD .note.ABI-tag notes. Note name is "FreeBSD". */
+
+#define NT_FREEBSD_ABI_TAG 1
+
+/* These three macros disassemble and assemble a symbol table st_info field,
+ which contains the symbol binding and symbol type. The STB_ and STT_
+ defines identify the binding and type. */
+
+#define ELF_ST_BIND(val) (((unsigned int)(val)) >> 4)
+#define ELF_ST_TYPE(val) ((val) & 0xF)
+#define ELF_ST_INFO(bind,type) (((bind) << 4) + ((type) & 0xF))
+
+/* The 64bit and 32bit versions of these macros are identical, but
+ the ELF spec defines them, so here they are. */
+#define ELF32_ST_BIND ELF_ST_BIND
+#define ELF32_ST_TYPE ELF_ST_TYPE
+#define ELF32_ST_INFO ELF_ST_INFO
+#define ELF64_ST_BIND ELF_ST_BIND
+#define ELF64_ST_TYPE ELF_ST_TYPE
+#define ELF64_ST_INFO ELF_ST_INFO
+
+/* This macro disassembles and assembles a symbol's visibility into
+ the st_other field. The STV_ defines specificy the actual visibility. */
+
+#define ELF_ST_VISIBILITY(v) ((v) & 0x3)
+/* The remaining bits in the st_other field are not currently used.
+ They should be set to zero. */
+
+#define ELF32_ST_VISIBILITY ELF_ST_VISIBILITY
+#define ELF64_ST_VISIBILITY ELF_ST_VISIBILITY
+
+
+#define STN_UNDEF 0 /* Undefined symbol index */
+
+#define STB_LOCAL 0 /* Symbol not visible outside obj */
+#define STB_GLOBAL 1 /* Symbol visible outside obj */
+#define STB_WEAK 2 /* Like globals, lower precedence */
+#define STB_LOOS 10 /* OS-specific semantics */
+#define STB_HIOS 12 /* OS-specific semantics */
+#define STB_LOPROC 13 /* Application-specific semantics */
+#define STB_HIPROC 15 /* Application-specific semantics */
+
+#define STT_NOTYPE 0 /* Symbol type is unspecified */
+#define STT_OBJECT 1 /* Symbol is a data object */
+#define STT_FUNC 2 /* Symbol is a code object */
+#define STT_SECTION 3 /* Symbol associated with a section */
+#define STT_FILE 4 /* Symbol gives a file name */
+#define STT_COMMON 5 /* An uninitialised common block */
+#define STT_TLS 6 /* Thread local data object */
+#define STT_LOOS 10 /* OS-specific semantics */
+#define STT_HIOS 12 /* OS-specific semantics */
+#define STT_LOPROC 13 /* Application-specific semantics */
+#define STT_HIPROC 15 /* Application-specific semantics */
+
+/* Special section indices, which may show up in st_shndx fields, among
+ other places. */
+
+#define SHN_UNDEF 0 /* Undefined section reference */
+#define SHN_LORESERVE 0xFF00 /* Begin range of reserved indices */
+#define SHN_LOPROC 0xFF00 /* Begin range of appl-specific */
+#define SHN_HIPROC 0xFF1F /* End range of appl-specific */
+#define SHN_LOOS 0xFF20 /* OS specific semantics, lo */
+#define SHN_HIOS 0xFF3F /* OS specific semantics, hi */
+#define SHN_ABS 0xFFF1 /* Associated symbol is absolute */
+#define SHN_COMMON 0xFFF2 /* Associated symbol is in common */
+#define SHN_XINDEX 0xFFFF /* Section index is held elsewhere */
+#define SHN_HIRESERVE 0xFFFF /* End range of reserved indices */
+#define SHN_BAD ((unsigned) -1) /* Used internally by bfd */
+
+/* The following constants control how a symbol may be accessed once it has
+ become part of an executable or shared library. */
+
+#define STV_DEFAULT 0 /* Visibility is specified by binding type */
+#define STV_INTERNAL 1 /* OS specific version of STV_HIDDEN */
+#define STV_HIDDEN 2 /* Can only be seen inside currect component */
+#define STV_PROTECTED 3 /* Treat as STB_LOCAL inside current component */
+
+/* Relocation info handling macros. */
+
+#define ELF32_R_SYM(i) ((i) >> 8)
+#define ELF32_R_TYPE(i) ((i) & 0xff)
+#define ELF32_R_INFO(s,t) (((s) << 8) + ((t) & 0xff))
+
+#define ELF64_R_SYM(i) ((i) >> 32)
+#define ELF64_R_TYPE(i) ((i) & 0xffffffff)
+#define ELF64_R_INFO(s,t) (((bfd_vma) (s) << 31 << 1) + (bfd_vma) (t))
+
+/* Dynamic section tags. */
+
+#define DT_NULL 0
+#define DT_NEEDED 1
+#define DT_PLTRELSZ 2
+#define DT_PLTGOT 3
+#define DT_HASH 4
+#define DT_STRTAB 5
+#define DT_SYMTAB 6
+#define DT_RELA 7
+#define DT_RELASZ 8
+#define DT_RELAENT 9
+#define DT_STRSZ 10
+#define DT_SYMENT 11
+#define DT_INIT 12
+#define DT_FINI 13
+#define DT_SONAME 14
+#define DT_RPATH 15
+#define DT_SYMBOLIC 16
+#define DT_REL 17
+#define DT_RELSZ 18
+#define DT_RELENT 19
+#define DT_PLTREL 20
+#define DT_DEBUG 21
+#define DT_TEXTREL 22
+#define DT_JMPREL 23
+#define DT_BIND_NOW 24
+#define DT_INIT_ARRAY 25
+#define DT_FINI_ARRAY 26
+#define DT_INIT_ARRAYSZ 27
+#define DT_FINI_ARRAYSZ 28
+#define DT_RUNPATH 29
+#define DT_FLAGS 30
+#define DT_ENCODING 31
+#define DT_PREINIT_ARRAY 32
+#define DT_PREINIT_ARRAYSZ 33
+
+/* Note, the Oct 4, 1999 draft of the ELF ABI changed the values
+ for DT_LOOS and DT_HIOS. Some implementations however, use
+ values outside of the new range (see below). */
+#define OLD_DT_LOOS 0x60000000
+#define DT_LOOS 0x6000000d
+#define DT_HIOS 0x6ffff000
+#define OLD_DT_HIOS 0x6fffffff
+
+#define DT_LOPROC 0x70000000
+#define DT_HIPROC 0x7fffffff
+
+/* The next four dynamic tags are used on Solaris. We support them
+ everywhere. Note these values lie outside of the (new) range for
+ OS specific values. This is a deliberate special case and we
+ maintain it for backwards compatability. */
+#define DT_VALRNGLO 0x6ffffd00
+#define DT_GNU_PRELINKED 0x6ffffdf5
+#define DT_GNU_CONFLICTSZ 0x6ffffdf6
+#define DT_GNU_LIBLISTSZ 0x6ffffdf7
+#define DT_CHECKSUM 0x6ffffdf8
+#define DT_PLTPADSZ 0x6ffffdf9
+#define DT_MOVEENT 0x6ffffdfa
+#define DT_MOVESZ 0x6ffffdfb
+#define DT_FEATURE 0x6ffffdfc
+#define DT_POSFLAG_1 0x6ffffdfd
+#define DT_SYMINSZ 0x6ffffdfe
+#define DT_SYMINENT 0x6ffffdff
+#define DT_VALRNGHI 0x6ffffdff
+
+#define DT_ADDRRNGLO 0x6ffffe00
+#define DT_GNU_CONFLICT 0x6ffffef8
+#define DT_GNU_LIBLIST 0x6ffffef9
+#define DT_CONFIG 0x6ffffefa
+#define DT_DEPAUDIT 0x6ffffefb
+#define DT_AUDIT 0x6ffffefc
+#define DT_PLTPAD 0x6ffffefd
+#define DT_MOVETAB 0x6ffffefe
+#define DT_SYMINFO 0x6ffffeff
+#define DT_ADDRRNGHI 0x6ffffeff
+
+#define DT_RELACOUNT 0x6ffffff9
+#define DT_RELCOUNT 0x6ffffffa
+#define DT_FLAGS_1 0x6ffffffb
+#define DT_VERDEF 0x6ffffffc
+#define DT_VERDEFNUM 0x6ffffffd
+#define DT_VERNEED 0x6ffffffe
+#define DT_VERNEEDNUM 0x6fffffff
+
+/* This tag is a GNU extension to the Solaris version scheme. */
+#define DT_VERSYM 0x6ffffff0
+
+#define DT_LOPROC 0x70000000
+#define DT_HIPROC 0x7fffffff
+
+/* These section tags are used on Solaris. We support them
+ everywhere, and hope they do not conflict. */
+
+#define DT_AUXILIARY 0x7ffffffd
+#define DT_USED 0x7ffffffe
+#define DT_FILTER 0x7fffffff
+
+
+/* Values used in DT_FEATURE .dynamic entry. */
+#define DTF_1_PARINIT 0x00000001
+/* From
+
+ http://docs.sun.com:80/ab2/coll.45.13/LLM/@Ab2PageView/21165?Ab2Lang=C&Ab2Enc=iso-8859-1
+
+ DTF_1_CONFEXP is the same as DTF_1_PARINIT. It is a typo. The value
+ defined here is the same as the one in <sys/link.h> on Solaris 8. */
+#define DTF_1_CONFEXP 0x00000002
+
+/* Flag values used in the DT_POSFLAG_1 .dynamic entry. */
+#define DF_P1_LAZYLOAD 0x00000001
+#define DF_P1_GROUPPERM 0x00000002
+
+/* Flag value in in the DT_FLAGS_1 .dynamic entry. */
+#define DF_1_NOW 0x00000001
+#define DF_1_GLOBAL 0x00000002
+#define DF_1_GROUP 0x00000004
+#define DF_1_NODELETE 0x00000008
+#define DF_1_LOADFLTR 0x00000010
+#define DF_1_INITFIRST 0x00000020
+#define DF_1_NOOPEN 0x00000040
+#define DF_1_ORIGIN 0x00000080
+#define DF_1_DIRECT 0x00000100
+#define DF_1_TRANS 0x00000200
+#define DF_1_INTERPOSE 0x00000400
+#define DF_1_NODEFLIB 0x00000800
+#define DF_1_NODUMP 0x00001000
+#define DF_1_CONLFAT 0x00002000
+
+/* Flag values for the DT_FLAGS entry. */
+#define DF_ORIGIN (1 << 0)
+#define DF_SYMBOLIC (1 << 1)
+#define DF_TEXTREL (1 << 2)
+#define DF_BIND_NOW (1 << 3)
+#define DF_STATIC_TLS (1 << 4)
+
+/* These constants are used for the version number of a Elf32_Verdef
+ structure. */
+
+#define VER_DEF_NONE 0
+#define VER_DEF_CURRENT 1
+
+/* These constants appear in the vd_flags field of a Elf32_Verdef
+ structure. */
+
+#define VER_FLG_BASE 0x1
+#define VER_FLG_WEAK 0x2
+
+/* These special constants can be found in an Elf32_Versym field. */
+
+#define VER_NDX_LOCAL 0
+#define VER_NDX_GLOBAL 1
+
+/* These constants are used for the version number of a Elf32_Verneed
+ structure. */
+
+#define VER_NEED_NONE 0
+#define VER_NEED_CURRENT 1
+
+/* This flag appears in a Versym structure. It means that the symbol
+ is hidden, and is only visible with an explicit version number.
+ This is a GNU extension. */
+
+#define VERSYM_HIDDEN 0x8000
+
+/* This is the mask for the rest of the Versym information. */
+
+#define VERSYM_VERSION 0x7fff
+
+/* This is a special token which appears as part of a symbol name. It
+ indictes that the rest of the name is actually the name of a
+ version node, and is not part of the actual name. This is a GNU
+ extension. For example, the symbol name `stat@ver2' is taken to
+ mean the symbol `stat' in version `ver2'. */
+
+#define ELF_VER_CHR '@'
+
+/* Possible values for si_boundto. */
+
+#define SYMINFO_BT_SELF 0xffff /* Symbol bound to self */
+#define SYMINFO_BT_PARENT 0xfffe /* Symbol bound to parent */
+#define SYMINFO_BT_LOWRESERVE 0xff00 /* Beginning of reserved entries */
+
+/* Possible bitmasks for si_flags. */
+
+#define SYMINFO_FLG_DIRECT 0x0001 /* Direct bound symbol */
+#define SYMINFO_FLG_PASSTHRU 0x0002 /* Pass-thru symbol for translator */
+#define SYMINFO_FLG_COPY 0x0004 /* Symbol is a copy-reloc */
+#define SYMINFO_FLG_LAZYLOAD 0x0008 /* Symbol bound to object to be lazy loaded */
+
+/* Syminfo version values. */
+
+#define SYMINFO_NONE 0
+#define SYMINFO_CURRENT 1
+#define SYMINFO_NUM 2
+
+/* Section Group Flags. */
+
+#define GRP_COMDAT 0x1 /* A COMDAT group */
+
+/* Auxv a_type values. */
+
+#define AT_NULL 0 /* End of vector */
+#define AT_IGNORE 1 /* Entry should be ignored */
+#define AT_EXECFD 2 /* File descriptor of program */
+#define AT_PHDR 3 /* Program headers for program */
+#define AT_PHENT 4 /* Size of program header entry */
+#define AT_PHNUM 5 /* Number of program headers */
+#define AT_PAGESZ 6 /* System page size */
+#define AT_BASE 7 /* Base address of interpreter */
+#define AT_FLAGS 8 /* Flags */
+#define AT_ENTRY 9 /* Entry point of program */
+#define AT_NOTELF 10 /* Program is not ELF */
+#define AT_UID 11 /* Real uid */
+#define AT_EUID 12 /* Effective uid */
+#define AT_GID 13 /* Real gid */
+#define AT_EGID 14 /* Effective gid */
+#define AT_CLKTCK 17 /* Frequency of times() */
+#define AT_PLATFORM 15 /* String identifying platform. */
+#define AT_HWCAP 16 /* Machine dependent hints about
+ processor capabilities. */
+#define AT_FPUCW 18 /* Used FPU control word. */
+#define AT_DCACHEBSIZE 19 /* Data cache block size. */
+#define AT_ICACHEBSIZE 20 /* Instruction cache block size. */
+#define AT_UCACHEBSIZE 21 /* Unified cache block size. */
+#define AT_IGNOREPPC 22 /* Entry should be ignored */
+#define AT_SECURE 23 /* Boolean, was exec setuid-like? */
+/* Pointer to the global system page used for system calls and other
+ nice things. */
+#define AT_SYSINFO 32
+#define AT_SYSINFO_EHDR 33 /* Pointer to ELF header of system-supplied DSO. */
+
+#define AT_SUN_UID 2000 /* Effective user ID. */
+#define AT_SUN_RUID 2001 /* Real user ID. */
+#define AT_SUN_GID 2002 /* Effective group ID. */
+#define AT_SUN_RGID 2003 /* Real group ID. */
+#define AT_SUN_LDELF 2004 /* Dynamic linker's ELF header. */
+#define AT_SUN_LDSHDR 2005 /* Dynamic linker's section headers. */
+#define AT_SUN_LDNAME 2006 /* String giving name of dynamic linker. */
+#define AT_SUN_LPAGESZ 2007 /* Large pagesize. */
+#define AT_SUN_PLATFORM 2008 /* Platform name string. */
+#define AT_SUN_HWCAP 2009 /* Machine dependent hints about
+ processor capabilities. */
+#define AT_SUN_IFLUSH 2010 /* Should flush icache? */
+#define AT_SUN_CPU 2011 /* CPU name string. */
+#define AT_SUN_EMUL_ENTRY 2012 /* COFF entry point address. */
+#define AT_SUN_EMUL_EXECFD 2013 /* COFF executable file descriptor. */
+#define AT_SUN_EXECNAME 2014 /* Canonicalized file name given to execve. */
+#define AT_SUN_MMU 2015 /* String for name of MMU module. */
+#define AT_SUN_LDDATA 2016 /* Dynamic linker's data segment address. */
+
+
+#endif /* _ELF_COMMON_H */
diff --git a/include/elf/cr16c.h b/include/elf/cr16c.h
new file mode 100644
index 000000000..1a91afe0f
--- /dev/null
+++ b/include/elf/cr16c.h
@@ -0,0 +1,258 @@
+/* CR16C ELF support for BFD.
+ Copyright 2004 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_CR16C_H
+#define _ELF_CR16C_H
+
+#include "bfd.h"
+#include "elf/reloc-macros.h"
+
+/* Creating indices for reloc_map_index array. */
+START_RELOC_NUMBERS (elf_cr16c_reloc_type)
+ RELOC_NUMBER (RINDEX_16C_NUM08, 0)
+ RELOC_NUMBER (RINDEX_16C_NUM08_C, 1)
+ RELOC_NUMBER (RINDEX_16C_NUM16, 2)
+ RELOC_NUMBER (RINDEX_16C_NUM16_C, 3)
+ RELOC_NUMBER (RINDEX_16C_NUM32, 4)
+ RELOC_NUMBER (RINDEX_16C_NUM32_C, 5)
+ RELOC_NUMBER (RINDEX_16C_DISP04, 6)
+ RELOC_NUMBER (RINDEX_16C_DISP04_C, 7)
+ RELOC_NUMBER (RINDEX_16C_DISP08, 8)
+ RELOC_NUMBER (RINDEX_16C_DISP08_C, 9)
+ RELOC_NUMBER (RINDEX_16C_DISP16, 10)
+ RELOC_NUMBER (RINDEX_16C_DISP16_C, 11)
+ RELOC_NUMBER (RINDEX_16C_DISP24, 12)
+ RELOC_NUMBER (RINDEX_16C_DISP24_C, 13)
+ RELOC_NUMBER (RINDEX_16C_DISP24a, 14)
+ RELOC_NUMBER (RINDEX_16C_DISP24a_C, 15)
+ RELOC_NUMBER (RINDEX_16C_REG04, 16)
+ RELOC_NUMBER (RINDEX_16C_REG04_C, 17)
+ RELOC_NUMBER (RINDEX_16C_REG04a, 18)
+ RELOC_NUMBER (RINDEX_16C_REG04a_C, 19)
+ RELOC_NUMBER (RINDEX_16C_REG14, 20)
+ RELOC_NUMBER (RINDEX_16C_REG14_C, 21)
+ RELOC_NUMBER (RINDEX_16C_REG16, 22)
+ RELOC_NUMBER (RINDEX_16C_REG16_C, 23)
+ RELOC_NUMBER (RINDEX_16C_REG20, 24)
+ RELOC_NUMBER (RINDEX_16C_REG20_C, 25)
+ RELOC_NUMBER (RINDEX_16C_ABS20, 26)
+ RELOC_NUMBER (RINDEX_16C_ABS20_C, 27)
+ RELOC_NUMBER (RINDEX_16C_ABS24, 28)
+ RELOC_NUMBER (RINDEX_16C_ABS24_C, 29)
+ RELOC_NUMBER (RINDEX_16C_IMM04, 30)
+ RELOC_NUMBER (RINDEX_16C_IMM04_C, 31)
+ RELOC_NUMBER (RINDEX_16C_IMM16, 32)
+ RELOC_NUMBER (RINDEX_16C_IMM16_C, 33)
+ RELOC_NUMBER (RINDEX_16C_IMM20, 34)
+ RELOC_NUMBER (RINDEX_16C_IMM20_C, 35)
+ RELOC_NUMBER (RINDEX_16C_IMM24, 36)
+ RELOC_NUMBER (RINDEX_16C_IMM24_C, 37)
+ RELOC_NUMBER (RINDEX_16C_IMM32, 38)
+ RELOC_NUMBER (RINDEX_16C_IMM32_C, 39)
+END_RELOC_NUMBERS (RINDEX_16C_MAX)
+
+/* CR16C Relocation Types ('cr_reloc_type' entry in the reloc_map structure).
+ The relocation constant name is determined as follows :
+
+ R_16C_<format><size>[_C]
+
+ Where :
+
+ <format> is one of the following:
+ NUM - R_NUMBER mnemonic,
+ DISP - R_16C_DISPL mnemonic,
+ REG - R_16C_REGREL mnemonic,
+ ABS - R_16C_ABS mnemonic,
+ IMM - R_16C_IMMED mnemonic,
+ <size> stands for R_S_16C_<size>
+ _C means 'code label' and is only added when R_ADDRTYPE subfield
+ is of type R_CODE_ADDR. */
+
+/* The table below shows what the hex digits in the definition of the
+ relocation type constants correspond to.
+ ------------------------------------------------------------------
+ R_SIZESP R_FORMAT R_RELTO R_ADDRTYPE
+ ------------------------------------------------------------------ */
+/* R_S_16C_08 R_NUMBER R_ABS R_ADDRESS */
+#define R_16C_NUM08 0X0001
+
+/* R_S_16C_08 R_NUMBER R_ABS R_CODE_ADDR */
+#define R_16C_NUM08_C 0X0006
+
+/* R_S_16C_16 R_NUMBER R_ABS R_ADDRESS */
+#define R_16C_NUM16 0X1001
+
+/* R_S_16C_16 R_NUMBER R_ABS R_CODE_ADDR */
+#define R_16C_NUM16_C 0X1006
+
+/* R_S_16C_32 R_NUMBER R_ABS R_ADDRESS */
+#define R_16C_NUM32 0X2001
+
+/* R_S_16C_32 R_NUMBER R_ABS R_CODE_ADDR */
+#define R_16C_NUM32_C 0X2006
+
+/* R_S_16C_04 R_16C_DISPL R_PCREL R_ADDRESS */
+#define R_16C_DISP04 0X5411
+
+/* R_S_16C_04 R_16C_DISPL R_PCREL R_CODE_ADDR */
+#define R_16C_DISP04_C 0X5416
+
+/* R_S_16C_08 R_16C_DISPL R_PCREL R_ADDRESS */
+#define R_16C_DISP08 0X0411
+
+/* R_S_16C_08 R_16C_DISPL R_PCREL R_CODE_ADDR */
+#define R_16C_DISP08_C 0X0416
+
+/* R_S_16C_16 R_16C_DISPL R_PCREL R_ADDRESS */
+#define R_16C_DISP16 0X1411
+
+/* R_S_16C_16 R_16C_DISPL R_PCREL R_CODE_ADDR */
+#define R_16C_DISP16_C 0X1416
+
+/* R_S_16C_24 R_16C_DISPL R_PCREL R_ADDRESS */
+#define R_16C_DISP24 0X7411
+
+/* R_S_16C_24 R_16C_DISPL R_PCREL R_CODE_ADDR */
+#define R_16C_DISP24_C 0X7416
+
+/* R_S_16C_24a R_16C_DISPL R_PCREL R_ADDRESS */
+#define R_16C_DISP24a 0X6411
+
+/* R_S_16C_24a R_16C_DISPL R_PCREL R_CODE_ADDR */
+#define R_16C_DISP24a_C 0X6416
+
+/* R_S_16C_04 R_16C_REGREL R_ABS R_ADDRESS */
+#define R_16C_REG04 0X5201
+
+/* R_S_16C_04 R_16C_REGREL R_ABS R_CODE_ADDR */
+#define R_16C_REG04_C 0X5206
+
+/* R_S_16C_04_a R_16C_REGREL R_ABS R_ADDRESS */
+#define R_16C_REG04a 0X4201
+
+/* R_S_16C_04_a R_16C_REGREL R_ABS R_CODE_ADDR */
+#define R_16C_REG04a_C 0X4206
+
+/* R_S_16C_14 R_16C_REGREL R_ABS R_ADDRESS */
+#define R_16C_REG14 0X3201
+
+/* R_S_16C_14 R_16C_REGREL R_ABS R_CODE_ADDR */
+#define R_16C_REG14_C 0X3206
+
+/* R_S_16C_16 R_16C_REGREL R_ABS R_ADDRESS */
+#define R_16C_REG16 0X1201
+
+/* R_S_16C_16 R_16C_REGREL R_ABS R_CODE_ADDR */
+#define R_16C_REG16_C 0X1206
+
+/* R_S_16C_20 R_16C_REGREL R_ABS R_ADDRESS */
+#define R_16C_REG20 0X8201
+
+/* R_S_16C_20 R_16C_REGREL R_ABS R_CODE_ADDR */
+#define R_16C_REG20_C 0X8206
+
+/* R_S_16C_20 R_16C_ABS R_ABS R_ADDRESS */
+#define R_16C_ABS20 0X8101
+
+/* R_S_16C_20 R_16C_ABS R_ABS R_CODE_ADDR */
+#define R_16C_ABS20_C 0X8106
+
+/* R_S_16C_24 R_16C_ABS R_ABS R_ADDRESS */
+#define R_16C_ABS24 0X7101
+
+/* R_S_16C_24 R_16C_ABS R_ABS R_CODE_ADDR */
+#define R_16C_ABS24_C 0X7106
+
+/* R_S_16C_04 R_16C_IMMED R_ABS R_ADDRESS */
+#define R_16C_IMM04 0X5301
+
+/* R_S_16C_04 R_16C_IMMED R_ABS R_CODE_ADDR */
+#define R_16C_IMM04_C 0X5306
+
+/* R_S_16C_16 R_16C_IMMED R_ABS R_ADDRESS */
+#define R_16C_IMM16 0X1301
+
+/* R_S_16C_16 R_16C_IMMED R_ABS R_CODE_ADDR */
+#define R_16C_IMM16_C 0X1306
+
+/* R_S_16C_20 R_16C_IMMED R_ABS R_ADDRESS */
+#define R_16C_IMM20 0X8301
+
+/* R_S_16C_20 R_16C_IMMED R_ABS R_CODE_ADDR */
+#define R_16C_IMM20_C 0X8306
+
+/* R_S_16C_24 R_16C_IMMED R_ABS R_ADDRESS */
+#define R_16C_IMM24 0X7301
+
+/* R_S_16C_24 R_16C_IMMED R_ABS R_CODE_ADDR */
+#define R_16C_IMM24_C 0X7306
+
+/* R_S_16C_32 R_16C_IMMED R_ABS R_ADDRESS */
+#define R_16C_IMM32 0X2301
+
+/* R_S_16C_32 R_16C_IMMED R_ABS R_CODE_ADDR */
+#define R_16C_IMM32_C 0X2306
+
+
+/* Relocation item type. */
+#define R_ADDRTYPE 0x000f
+#define R_ADDRESS 0x0001 /* Take address of symbol. */
+#define R_CODE_ADDR 0x0006 /* Take address of symbol divided by 2. */
+
+/* Relocation action. */
+#define R_RELTO 0x00f0
+#define R_ABS 0x0000 /* Keep symbol's address as such. */
+#define R_PCREL 0x0010 /* Subtract the pc address of hole. */
+
+/* Relocation item data format. */
+#define R_FORMAT 0x0f00
+#define R_NUMBER 0x0000 /* Retain as two's complement value. */
+#define R_16C_DISPL 0x0400 /* CR16C displacement type. */
+#define R_16C_ABS 0x0100 /* CR16C absolute type. */
+#define R_16C_REGREL 0x0200 /* CR16C register-relative type. */
+#define R_16C_IMMED 0x0300 /* CR16C immediate type. */
+
+/* Relocation item size. */
+#define R_SIZESP 0xf000
+#define R_S_16C_04 0x5000
+#define R_S_16C_04_a 0x4000
+#define R_S_16C_08 0x0000
+#define R_S_16C_14 0x3000
+#define R_S_16C_16 0x1000
+#define R_S_16C_20 0x8000
+#define R_S_16C_24_a 0x6000
+#define R_S_16C_24 0x7000
+#define R_S_16C_32 0x2000
+
+
+/* Processor specific section indices. These sections do not actually
+ exist. Symbols with a st_shndx field corresponding to one of these
+ values have a special meaning. */
+
+/* Far common symbol. */
+#define SHN_CR16C_FCOMMON 0xff00
+#define SHN_CR16C_NCOMMON 0xff01
+
+typedef struct reloc_map
+{
+ unsigned short cr_reloc_type; /* CR relocation type. */
+ bfd_reloc_code_real_type bfd_reloc_enum; /* BFD relocation enum. */
+} RELOC_MAP;
+
+#endif /* _ELF_CR16C_H */
diff --git a/include/elf/cris.h b/include/elf/cris.h
new file mode 100644
index 000000000..3bd03e8aa
--- /dev/null
+++ b/include/elf/cris.h
@@ -0,0 +1,101 @@
+/* CRIS ELF support for BFD.
+ Copyright 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Axis Communications AB, Lund, Sweden.
+ Written by Hans-Peter Nilsson.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_CRIS_H
+#define _ELF_CRIS_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_cris_reloc_type)
+ RELOC_NUMBER (R_CRIS_NONE, 0)
+ RELOC_NUMBER (R_CRIS_8, 1)
+ RELOC_NUMBER (R_CRIS_16, 2)
+ RELOC_NUMBER (R_CRIS_32, 3)
+
+ /* The "PC" position is the location right after the relocation. */
+ RELOC_NUMBER (R_CRIS_8_PCREL, 4)
+ RELOC_NUMBER (R_CRIS_16_PCREL, 5)
+ RELOC_NUMBER (R_CRIS_32_PCREL, 6)
+
+ RELOC_NUMBER (R_CRIS_GNU_VTINHERIT, 7)
+ RELOC_NUMBER (R_CRIS_GNU_VTENTRY, 8)
+
+ /* Copy contents at dynlinking. Generated by the linker.
+ The BFD equivalent is BFD_RELOC_CRIS_COPY. */
+ RELOC_NUMBER (R_CRIS_COPY, 9)
+
+ /* Create GOT entry. Generated by the linker.
+ The BFD equivalent is BFD_RELOC_CRIS_GLOB_DAT. */
+ RELOC_NUMBER (R_CRIS_GLOB_DAT, 10)
+
+ /* Create PLT entry. Generated by the linker.
+ The BFD equivalent is BFD_RELOC_CRIS_JUMP_SLOT. */
+ RELOC_NUMBER (R_CRIS_JUMP_SLOT, 11)
+
+ /* Adjust by program base. Generated by the linker.
+ The BFD equivalent is BFD_RELOC_CRIS_RELATIVE. */
+ RELOC_NUMBER (R_CRIS_RELATIVE, 12)
+
+ /* A 16-bit offset to entry in GOT and request to create GOT entry for
+ that symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_16_GOT. */
+ RELOC_NUMBER (R_CRIS_16_GOT, 13)
+
+ /* A 32-bit offset to entry in GOT and request to create GOT entry for
+ that symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_32_GOT. */
+ RELOC_NUMBER (R_CRIS_32_GOT, 14)
+
+ /* A 16-bit offset to entry in PLT part of GOT and request to create PLT
+ entry for that symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_16_GOTPLT. */
+ RELOC_NUMBER (R_CRIS_16_GOTPLT, 15)
+
+ /* A 32-bit offset to entry in PLT part of GOT and request to create PLT
+ entry for that symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_32_GOTPLT. */
+ RELOC_NUMBER (R_CRIS_32_GOTPLT, 16)
+
+ /* A 32-bit offset from GOT to (local) symbol: no GOT entry should be
+ necessary.
+ The BFD equivalent is BFD_RELOC_CRIS_32_GOTREL. */
+ RELOC_NUMBER (R_CRIS_32_GOTREL, 17)
+
+ /* A 32-bit offset from GOT to entry for this symbol in PLT and request
+ to create PLT entry for symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_32_GOTREL. */
+ RELOC_NUMBER (R_CRIS_32_PLT_GOTREL, 18)
+
+ /* A 32-bit offset from location after this relocation (addend specifies
+ offset) to entry for this symbol in PLT and request to create PLT
+ entry for symbol.
+ The BFD equivalent is BFD_RELOC_CRIS_32_PLT_PCREL. */
+ RELOC_NUMBER (R_CRIS_32_PLT_PCREL, 19)
+
+ /* No other relocs must be visible outside the assembler. */
+
+END_RELOC_NUMBERS (R_CRIS_max)
+
+/* User symbols in this file have a leading underscore. */
+#define EF_CRIS_UNDERSCORE 0x00000001
+
+#endif /* _ELF_CRIS_H */
diff --git a/include/elf/crx.h b/include/elf/crx.h
new file mode 100644
index 000000000..33ba00514
--- /dev/null
+++ b/include/elf/crx.h
@@ -0,0 +1,53 @@
+/* CRX ELF support for BFD.
+ Copyright 2004 Free Software Foundation, Inc.
+ Contributed by Tomer Levi, NSC, Israel.
+ Originally written for GAS 2.12 by Tomer Levi, NSC, Israel.
+ Updates, BFDizing, GNUifying and ELF support by Tomer Levi.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_CRX_H
+#define _ELF_CRX_H
+
+#include "elf/reloc-macros.h"
+
+/* Creating indices for reloc_map_index array. */
+START_RELOC_NUMBERS(elf_crx_reloc_type)
+ RELOC_NUMBER (R_CRX_NONE, 0)
+ RELOC_NUMBER (R_CRX_REL4, 1)
+ RELOC_NUMBER (R_CRX_REL8, 2)
+ RELOC_NUMBER (R_CRX_REL8_CMP, 3)
+ RELOC_NUMBER (R_CRX_REL16, 4)
+ RELOC_NUMBER (R_CRX_REL24, 5)
+ RELOC_NUMBER (R_CRX_REL32, 6)
+ RELOC_NUMBER (R_CRX_REGREL12, 7)
+ RELOC_NUMBER (R_CRX_REGREL22, 8)
+ RELOC_NUMBER (R_CRX_REGREL28, 9)
+ RELOC_NUMBER (R_CRX_REGREL32, 10)
+ RELOC_NUMBER (R_CRX_ABS16, 11)
+ RELOC_NUMBER (R_CRX_ABS32, 12)
+ RELOC_NUMBER (R_CRX_NUM8, 13)
+ RELOC_NUMBER (R_CRX_NUM16, 14)
+ RELOC_NUMBER (R_CRX_NUM32, 15)
+ RELOC_NUMBER (R_CRX_IMM16, 16)
+ RELOC_NUMBER (R_CRX_IMM32, 17)
+ RELOC_NUMBER (R_CRX_SWITCH8, 18)
+ RELOC_NUMBER (R_CRX_SWITCH16, 19)
+ RELOC_NUMBER (R_CRX_SWITCH32, 20)
+END_RELOC_NUMBERS(R_CRX_MAX)
+
+#endif /* _ELF_CRX_H */
diff --git a/include/elf/d10v.h b/include/elf/d10v.h
new file mode 100644
index 000000000..5bc613bc3
--- /dev/null
+++ b/include/elf/d10v.h
@@ -0,0 +1,38 @@
+/* d10v ELF support for BFD.
+ Copyright 1998, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_D10V_H
+#define _ELF_D10V_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_d10v_reloc_type)
+ RELOC_NUMBER (R_D10V_NONE, 0)
+ RELOC_NUMBER (R_D10V_10_PCREL_R, 1)
+ RELOC_NUMBER (R_D10V_10_PCREL_L, 2)
+ RELOC_NUMBER (R_D10V_16, 3)
+ RELOC_NUMBER (R_D10V_18, 4)
+ RELOC_NUMBER (R_D10V_18_PCREL, 5)
+ RELOC_NUMBER (R_D10V_32, 6)
+ RELOC_NUMBER (R_D10V_GNU_VTINHERIT, 7)
+ RELOC_NUMBER (R_D10V_GNU_VTENTRY, 8)
+END_RELOC_NUMBERS (R_D10V_max)
+
+#endif
diff --git a/include/elf/d30v.h b/include/elf/d30v.h
new file mode 100644
index 000000000..5abb06a55
--- /dev/null
+++ b/include/elf/d30v.h
@@ -0,0 +1,42 @@
+/* d30v ELF support for BFD.
+ Copyright 1998, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_D30V_H
+#define _ELF_D30V_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_d30v_reloc_type)
+ RELOC_NUMBER (R_D30V_NONE, 0)
+ RELOC_NUMBER (R_D30V_6, 1)
+ RELOC_NUMBER (R_D30V_9_PCREL, 2)
+ RELOC_NUMBER (R_D30V_9_PCREL_R, 3)
+ RELOC_NUMBER (R_D30V_15, 4)
+ RELOC_NUMBER (R_D30V_15_PCREL, 5)
+ RELOC_NUMBER (R_D30V_15_PCREL_R, 6)
+ RELOC_NUMBER (R_D30V_21, 7)
+ RELOC_NUMBER (R_D30V_21_PCREL, 8)
+ RELOC_NUMBER (R_D30V_21_PCREL_R, 9)
+ RELOC_NUMBER (R_D30V_32, 10)
+ RELOC_NUMBER (R_D30V_32_PCREL, 11)
+ RELOC_NUMBER (R_D30V_32_NORMAL, 12)
+END_RELOC_NUMBERS (R_D30V_max)
+
+#endif
diff --git a/include/elf/dlx.h b/include/elf/dlx.h
new file mode 100644
index 000000000..562f600f3
--- /dev/null
+++ b/include/elf/dlx.h
@@ -0,0 +1,53 @@
+/* DLX support for BFD.
+ Copyright 2002 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_DLX_H
+#define _ELF_DLX_H
+
+#include "elf/reloc-macros.h"
+
+#if 0
+START_RELOC_NUMBERS (elf_dlx_reloc_type)
+ RELOC_NUMBER (R_DLX_NONE, 0)
+ RELOC_NUMBER (R_DLX_RELOC_16, 1)
+ RELOC_NUMBER (R_DLX_RELOC_26, 2)
+ RELOC_NUMBER (R_DLX_RELOC_32, 3)
+ RELOC_NUMBER (R_DLX_GNU_VTINHERIT, 4)
+ RELOC_NUMBER (R_DLX_GNU_VTENTRY, 5)
+ RELOC_NUMBER (R_DLX_RELOC_16_HI, 6)
+ RELOC_NUMBER (R_DLX_RELOC_16_LO, 7)
+ RELOC_NUMBER (R_DLX_RELOC_16_PCREL, 8)
+ RELOC_NUMBER (R_DLX_RELOC_26_PCREL, 9)
+END_RELOC_NUMBERS (R_DLX_max)
+#else
+START_RELOC_NUMBERS (elf_dlx_reloc_type)
+ RELOC_NUMBER (R_DLX_NONE, 0)
+ RELOC_NUMBER (R_DLX_RELOC_8, 1)
+ RELOC_NUMBER (R_DLX_RELOC_16, 2)
+ RELOC_NUMBER (R_DLX_RELOC_32, 3)
+ RELOC_NUMBER (R_DLX_GNU_VTINHERIT, 4)
+ RELOC_NUMBER (R_DLX_GNU_VTENTRY, 5)
+ RELOC_NUMBER (R_DLX_RELOC_16_HI, 6)
+ RELOC_NUMBER (R_DLX_RELOC_16_LO, 7)
+ RELOC_NUMBER (R_DLX_RELOC_16_PCREL, 8)
+ RELOC_NUMBER (R_DLX_RELOC_26_PCREL, 9)
+END_RELOC_NUMBERS (R_DLX_max)
+#endif /* 0 */
+
+#endif /* _ELF_DLX_H */
diff --git a/include/elf/dwarf.h b/include/elf/dwarf.h
new file mode 100644
index 000000000..f79397253
--- /dev/null
+++ b/include/elf/dwarf.h
@@ -0,0 +1,320 @@
+/* Declarations and definitions of codes relating to the DWARF symbolic
+ debugging information format.
+
+ Written by Ron Guilmette (rfg@ncd.com)
+
+Copyright 1992, 1993, 1995, 1999 Free Software Foundation, Inc.
+
+This file is part of GNU CC.
+
+GNU CC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU CC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU CC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file is derived from the DWARF specification (a public document)
+ Revision 1.0.1 (April 8, 1992) developed by the UNIX International
+ Programming Languages Special Interest Group (UI/PLSIG) and distributed
+ by UNIX International. Copies of this specification are available from
+ UNIX International, 20 Waterview Boulevard, Parsippany, NJ, 07054.
+*/
+
+#ifndef _ELF_DWARF_H
+#define _ELF_DWARF_H
+
+/* Tag names and codes. */
+
+enum dwarf_tag {
+ TAG_padding = 0x0000,
+ TAG_array_type = 0x0001,
+ TAG_class_type = 0x0002,
+ TAG_entry_point = 0x0003,
+ TAG_enumeration_type = 0x0004,
+ TAG_formal_parameter = 0x0005,
+ TAG_global_subroutine = 0x0006,
+ TAG_global_variable = 0x0007,
+ /* 0x0008 -- reserved */
+ /* 0x0009 -- reserved */
+ TAG_label = 0x000a,
+ TAG_lexical_block = 0x000b,
+ TAG_local_variable = 0x000c,
+ TAG_member = 0x000d,
+ /* 0x000e -- reserved */
+ TAG_pointer_type = 0x000f,
+ TAG_reference_type = 0x0010,
+ TAG_compile_unit = 0x0011,
+ TAG_string_type = 0x0012,
+ TAG_structure_type = 0x0013,
+ TAG_subroutine = 0x0014,
+ TAG_subroutine_type = 0x0015,
+ TAG_typedef = 0x0016,
+ TAG_union_type = 0x0017,
+ TAG_unspecified_parameters = 0x0018,
+ TAG_variant = 0x0019,
+ TAG_common_block = 0x001a,
+ TAG_common_inclusion = 0x001b,
+ TAG_inheritance = 0x001c,
+ TAG_inlined_subroutine = 0x001d,
+ TAG_module = 0x001e,
+ TAG_ptr_to_member_type = 0x001f,
+ TAG_set_type = 0x0020,
+ TAG_subrange_type = 0x0021,
+ TAG_with_stmt = 0x0022,
+
+ /* GNU extensions */
+
+ TAG_format_label = 0x8000, /* for FORTRAN 77 and Fortran 90 */
+ TAG_namelist = 0x8001, /* For Fortran 90 */
+ TAG_function_template = 0x8002, /* for C++ */
+ TAG_class_template = 0x8003 /* for C++ */
+};
+
+#define TAG_lo_user 0x8000 /* implementation-defined range start */
+#define TAG_hi_user 0xffff /* implementation-defined range end */
+#define TAG_source_file TAG_compile_unit /* for backward compatibility */
+
+/* Form names and codes. */
+
+enum dwarf_form {
+ FORM_ADDR = 0x1,
+ FORM_REF = 0x2,
+ FORM_BLOCK2 = 0x3,
+ FORM_BLOCK4 = 0x4,
+ FORM_DATA2 = 0x5,
+ FORM_DATA4 = 0x6,
+ FORM_DATA8 = 0x7,
+ FORM_STRING = 0x8
+};
+
+/* Attribute names and codes. */
+
+enum dwarf_attribute {
+ AT_sibling = (0x0010|FORM_REF),
+ AT_location = (0x0020|FORM_BLOCK2),
+ AT_name = (0x0030|FORM_STRING),
+ AT_fund_type = (0x0050|FORM_DATA2),
+ AT_mod_fund_type = (0x0060|FORM_BLOCK2),
+ AT_user_def_type = (0x0070|FORM_REF),
+ AT_mod_u_d_type = (0x0080|FORM_BLOCK2),
+ AT_ordering = (0x0090|FORM_DATA2),
+ AT_subscr_data = (0x00a0|FORM_BLOCK2),
+ AT_byte_size = (0x00b0|FORM_DATA4),
+ AT_bit_offset = (0x00c0|FORM_DATA2),
+ AT_bit_size = (0x00d0|FORM_DATA4),
+ /* (0x00e0|FORM_xxxx) -- reserved */
+ AT_element_list = (0x00f0|FORM_BLOCK4),
+ AT_stmt_list = (0x0100|FORM_DATA4),
+ AT_low_pc = (0x0110|FORM_ADDR),
+ AT_high_pc = (0x0120|FORM_ADDR),
+ AT_language = (0x0130|FORM_DATA4),
+ AT_member = (0x0140|FORM_REF),
+ AT_discr = (0x0150|FORM_REF),
+ AT_discr_value = (0x0160|FORM_BLOCK2),
+ /* (0x0170|FORM_xxxx) -- reserved */
+ /* (0x0180|FORM_xxxx) -- reserved */
+ AT_string_length = (0x0190|FORM_BLOCK2),
+ AT_common_reference = (0x01a0|FORM_REF),
+ AT_comp_dir = (0x01b0|FORM_STRING),
+ AT_const_value_string = (0x01c0|FORM_STRING),
+ AT_const_value_data2 = (0x01c0|FORM_DATA2),
+ AT_const_value_data4 = (0x01c0|FORM_DATA4),
+ AT_const_value_data8 = (0x01c0|FORM_DATA8),
+ AT_const_value_block2 = (0x01c0|FORM_BLOCK2),
+ AT_const_value_block4 = (0x01c0|FORM_BLOCK4),
+ AT_containing_type = (0x01d0|FORM_REF),
+ AT_default_value_addr = (0x01e0|FORM_ADDR),
+ AT_default_value_data2 = (0x01e0|FORM_DATA2),
+ AT_default_value_data4 = (0x01e0|FORM_DATA4),
+ AT_default_value_data8 = (0x01e0|FORM_DATA8),
+ AT_default_value_string = (0x01e0|FORM_STRING),
+ AT_friends = (0x01f0|FORM_BLOCK2),
+ AT_inline = (0x0200|FORM_STRING),
+ AT_is_optional = (0x0210|FORM_STRING),
+ AT_lower_bound_ref = (0x0220|FORM_REF),
+ AT_lower_bound_data2 = (0x0220|FORM_DATA2),
+ AT_lower_bound_data4 = (0x0220|FORM_DATA4),
+ AT_lower_bound_data8 = (0x0220|FORM_DATA8),
+ AT_private = (0x0240|FORM_STRING),
+ AT_producer = (0x0250|FORM_STRING),
+ AT_program = (0x0230|FORM_STRING),
+ AT_protected = (0x0260|FORM_STRING),
+ AT_prototyped = (0x0270|FORM_STRING),
+ AT_public = (0x0280|FORM_STRING),
+ AT_pure_virtual = (0x0290|FORM_STRING),
+ AT_return_addr = (0x02a0|FORM_BLOCK2),
+ AT_abstract_origin = (0x02b0|FORM_REF),
+ AT_start_scope = (0x02c0|FORM_DATA4),
+ AT_stride_size = (0x02e0|FORM_DATA4),
+ AT_upper_bound_ref = (0x02f0|FORM_REF),
+ AT_upper_bound_data2 = (0x02f0|FORM_DATA2),
+ AT_upper_bound_data4 = (0x02f0|FORM_DATA4),
+ AT_upper_bound_data8 = (0x02f0|FORM_DATA8),
+ AT_virtual = (0x0300|FORM_STRING),
+
+ /* GNU extensions. */
+
+ AT_sf_names = (0x8000|FORM_DATA4),
+ AT_src_info = (0x8010|FORM_DATA4),
+ AT_mac_info = (0x8020|FORM_DATA4),
+ AT_src_coords = (0x8030|FORM_DATA4),
+ AT_body_begin = (0x8040|FORM_ADDR),
+ AT_body_end = (0x8050|FORM_ADDR)
+};
+
+#define AT_lo_user 0x8000 /* implementation-defined range start */
+#define AT_hi_user 0xffff /* implementation-defined range end */
+
+/* Location atom names and codes. */
+
+enum dwarf_location_atom {
+ OP_REG = 0x01,
+ OP_BASEREG = 0x02,
+ OP_ADDR = 0x03,
+ OP_CONST = 0x04,
+ OP_DEREF2 = 0x05,
+ OP_DEREF4 = 0x06,
+ OP_ADD = 0x07
+};
+
+#define OP_LO_USER 0x80 /* implementation-defined range start */
+#define OP_HI_USER 0xff /* implementation-defined range end */
+
+/* Fundamental type names and codes. */
+
+enum dwarf_fundamental_type {
+ FT_char = 0x0001,
+ FT_signed_char = 0x0002,
+ FT_unsigned_char = 0x0003,
+ FT_short = 0x0004,
+ FT_signed_short = 0x0005,
+ FT_unsigned_short = 0x0006,
+ FT_integer = 0x0007,
+ FT_signed_integer = 0x0008,
+ FT_unsigned_integer = 0x0009,
+ FT_long = 0x000a,
+ FT_signed_long = 0x000b,
+ FT_unsigned_long = 0x000c,
+ FT_pointer = 0x000d, /* an alias for (void *) */
+ FT_float = 0x000e,
+ FT_dbl_prec_float = 0x000f,
+ FT_ext_prec_float = 0x0010, /* breaks "classic" svr4 SDB */
+ FT_complex = 0x0011, /* breaks "classic" svr4 SDB */
+ FT_dbl_prec_complex = 0x0012, /* breaks "classic" svr4 SDB */
+ /* 0x0013 -- reserved */
+ FT_void = 0x0014,
+ FT_boolean = 0x0015, /* breaks "classic" svr4 SDB */
+ FT_ext_prec_complex = 0x0016, /* breaks "classic" svr4 SDB */
+ FT_label = 0x0017,
+
+ /* GNU extensions
+ The low order byte must indicate the size (in bytes) for the type.
+ All of these types will probably break "classic" svr4 SDB */
+
+ FT_long_long = 0x8008,
+ FT_signed_long_long = 0x8108,
+ FT_unsigned_long_long = 0x8208,
+
+ FT_int8 = 0x9001,
+ FT_signed_int8 = 0x9101,
+ FT_unsigned_int8 = 0x9201,
+ FT_int16 = 0x9302,
+ FT_signed_int16 = 0x9402,
+ FT_unsigned_int16 = 0x9502,
+ FT_int32 = 0x9604,
+ FT_signed_int32 = 0x9704,
+ FT_unsigned_int32 = 0x9804,
+ FT_int64 = 0x9908,
+ FT_signed_int64 = 0x9a08,
+ FT_unsigned_int64 = 0x9b08,
+
+ FT_real32 = 0xa004,
+ FT_real64 = 0xa108,
+ FT_real96 = 0xa20c,
+ FT_real128 = 0xa310
+};
+
+#define FT_lo_user 0x8000 /* implementation-defined range start */
+#define FT_hi_user 0xffff /* implementation defined range end */
+
+/* Type modifier names and codes. */
+
+enum dwarf_type_modifier {
+ MOD_pointer_to = 0x01,
+ MOD_reference_to = 0x02,
+ MOD_const = 0x03,
+ MOD_volatile = 0x04
+};
+
+#define MOD_lo_user 0x80 /* implementation-defined range start */
+#define MOD_hi_user 0xff /* implementation-defined range end */
+
+/* Array ordering names and codes. */
+
+enum dwarf_array_dim_ordering {
+ ORD_row_major = 0,
+ ORD_col_major = 1
+};
+
+/* Array subscript format names and codes. */
+
+enum dwarf_subscr_data_formats {
+ FMT_FT_C_C = 0x0,
+ FMT_FT_C_X = 0x1,
+ FMT_FT_X_C = 0x2,
+ FMT_FT_X_X = 0x3,
+ FMT_UT_C_C = 0x4,
+ FMT_UT_C_X = 0x5,
+ FMT_UT_X_C = 0x6,
+ FMT_UT_X_X = 0x7,
+ FMT_ET = 0x8
+};
+
+/* Derived from above for ease of use. */
+
+#define FMT_CODE(_FUNDAMENTAL_TYPE_P, _UB_CONST_P, _LB_CONST_P) \
+ (((_FUNDAMENTAL_TYPE_P) ? 0 : 4) \
+ | ((_UB_CONST_P) ? 0 : 2) \
+ | ((_LB_CONST_P) ? 0 : 1))
+
+/* Source language names and codes. */
+
+enum dwarf_source_language {
+ LANG_C89 = 0x00000001,
+ LANG_C = 0x00000002,
+ LANG_ADA83 = 0x00000003,
+ LANG_C_PLUS_PLUS = 0x00000004,
+ LANG_COBOL74 = 0x00000005,
+ LANG_COBOL85 = 0x00000006,
+ LANG_FORTRAN77 = 0x00000007,
+ LANG_FORTRAN90 = 0x00000008,
+ LANG_PASCAL83 = 0x00000009,
+ LANG_MODULA2 = 0x0000000a,
+
+ /* GNU extensions */
+
+ LANG_CHILL = 0x00009af3, /* random value for GNU Chill */
+ LANG_JAVA = 0x00009af4 /* random value + 1 for GNU Java */
+};
+
+#define LANG_lo_user 0x00008000 /* implementation-defined range start */
+#define LANG_hi_user 0x0000ffff /* implementation-defined range end */
+
+/* Names and codes for GNU "macinfo" extension. */
+
+enum dwarf_macinfo_record_type {
+ MACINFO_start = 's',
+ MACINFO_resume = 'r',
+ MACINFO_define = 'd',
+ MACINFO_undef = 'u'
+};
+
+#endif /* _ELF_DWARF_H */
diff --git a/include/elf/dwarf2.h b/include/elf/dwarf2.h
new file mode 100644
index 000000000..bede7e297
--- /dev/null
+++ b/include/elf/dwarf2.h
@@ -0,0 +1,775 @@
+/* Declarations and definitions of codes relating to the DWARF2 symbolic
+ debugging information format.
+ Copyright (C) 1992, 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002,
+ 2003 Free Software Foundation, Inc.
+
+ Written by Gary Funck (gary@intrepid.com) The Ada Joint Program
+ Office (AJPO), Florida State Unviversity and Silicon Graphics Inc.
+ provided support for this effort -- June 21, 1995.
+
+ Derived from the DWARF 1 implementation written by Ron Guilmette
+ (rfg@netcom.com), November 1990.
+
+ This file is part of GCC.
+
+ GCC is free software; you can redistribute it and/or modify it under
+ the terms of the GNU General Public License as published by the Free
+ Software Foundation; either version 2, or (at your option) any later
+ version.
+
+ GCC is distributed in the hope that it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING. If not, write to the Free
+ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+/* This file is derived from the DWARF specification (a public document)
+ Revision 2.0.0 (July 27, 1993) developed by the UNIX International
+ Programming Languages Special Interest Group (UI/PLSIG) and distributed
+ by UNIX International. Copies of this specification are available from
+ UNIX International, 20 Waterview Boulevard, Parsippany, NJ, 07054.
+
+ This file also now contains definitions from the DWARF 3 specification. */
+
+/* This file is shared between GCC and GDB, and should not contain
+ prototypes. */
+
+#ifndef _ELF_DWARF2_H
+#define _ELF_DWARF2_H
+
+/* Structure found in the .debug_line section. */
+typedef struct
+{
+ unsigned char li_length [4];
+ unsigned char li_version [2];
+ unsigned char li_prologue_length [4];
+ unsigned char li_min_insn_length [1];
+ unsigned char li_default_is_stmt [1];
+ unsigned char li_line_base [1];
+ unsigned char li_line_range [1];
+ unsigned char li_opcode_base [1];
+}
+DWARF2_External_LineInfo;
+
+typedef struct
+{
+ unsigned long li_length;
+ unsigned short li_version;
+ unsigned int li_prologue_length;
+ unsigned char li_min_insn_length;
+ unsigned char li_default_is_stmt;
+ int li_line_base;
+ unsigned char li_line_range;
+ unsigned char li_opcode_base;
+}
+DWARF2_Internal_LineInfo;
+
+/* Structure found in .debug_pubnames section. */
+typedef struct
+{
+ unsigned char pn_length [4];
+ unsigned char pn_version [2];
+ unsigned char pn_offset [4];
+ unsigned char pn_size [4];
+}
+DWARF2_External_PubNames;
+
+typedef struct
+{
+ unsigned long pn_length;
+ unsigned short pn_version;
+ unsigned long pn_offset;
+ unsigned long pn_size;
+}
+DWARF2_Internal_PubNames;
+
+/* Structure found in .debug_info section. */
+typedef struct
+{
+ unsigned char cu_length [4];
+ unsigned char cu_version [2];
+ unsigned char cu_abbrev_offset [4];
+ unsigned char cu_pointer_size [1];
+}
+DWARF2_External_CompUnit;
+
+typedef struct
+{
+ unsigned long cu_length;
+ unsigned short cu_version;
+ unsigned long cu_abbrev_offset;
+ unsigned char cu_pointer_size;
+}
+DWARF2_Internal_CompUnit;
+
+typedef struct
+{
+ unsigned char ar_length [4];
+ unsigned char ar_version [2];
+ unsigned char ar_info_offset [4];
+ unsigned char ar_pointer_size [1];
+ unsigned char ar_segment_size [1];
+}
+DWARF2_External_ARange;
+
+typedef struct
+{
+ unsigned long ar_length;
+ unsigned short ar_version;
+ unsigned long ar_info_offset;
+ unsigned char ar_pointer_size;
+ unsigned char ar_segment_size;
+}
+DWARF2_Internal_ARange;
+
+
+/* Tag names and codes. */
+enum dwarf_tag
+ {
+ DW_TAG_padding = 0x00,
+ DW_TAG_array_type = 0x01,
+ DW_TAG_class_type = 0x02,
+ DW_TAG_entry_point = 0x03,
+ DW_TAG_enumeration_type = 0x04,
+ DW_TAG_formal_parameter = 0x05,
+ DW_TAG_imported_declaration = 0x08,
+ DW_TAG_label = 0x0a,
+ DW_TAG_lexical_block = 0x0b,
+ DW_TAG_member = 0x0d,
+ DW_TAG_pointer_type = 0x0f,
+ DW_TAG_reference_type = 0x10,
+ DW_TAG_compile_unit = 0x11,
+ DW_TAG_string_type = 0x12,
+ DW_TAG_structure_type = 0x13,
+ DW_TAG_subroutine_type = 0x15,
+ DW_TAG_typedef = 0x16,
+ DW_TAG_union_type = 0x17,
+ DW_TAG_unspecified_parameters = 0x18,
+ DW_TAG_variant = 0x19,
+ DW_TAG_common_block = 0x1a,
+ DW_TAG_common_inclusion = 0x1b,
+ DW_TAG_inheritance = 0x1c,
+ DW_TAG_inlined_subroutine = 0x1d,
+ DW_TAG_module = 0x1e,
+ DW_TAG_ptr_to_member_type = 0x1f,
+ DW_TAG_set_type = 0x20,
+ DW_TAG_subrange_type = 0x21,
+ DW_TAG_with_stmt = 0x22,
+ DW_TAG_access_declaration = 0x23,
+ DW_TAG_base_type = 0x24,
+ DW_TAG_catch_block = 0x25,
+ DW_TAG_const_type = 0x26,
+ DW_TAG_constant = 0x27,
+ DW_TAG_enumerator = 0x28,
+ DW_TAG_file_type = 0x29,
+ DW_TAG_friend = 0x2a,
+ DW_TAG_namelist = 0x2b,
+ DW_TAG_namelist_item = 0x2c,
+ DW_TAG_packed_type = 0x2d,
+ DW_TAG_subprogram = 0x2e,
+ DW_TAG_template_type_param = 0x2f,
+ DW_TAG_template_value_param = 0x30,
+ DW_TAG_thrown_type = 0x31,
+ DW_TAG_try_block = 0x32,
+ DW_TAG_variant_part = 0x33,
+ DW_TAG_variable = 0x34,
+ DW_TAG_volatile_type = 0x35,
+ /* DWARF 3. */
+ DW_TAG_dwarf_procedure = 0x36,
+ DW_TAG_restrict_type = 0x37,
+ DW_TAG_interface_type = 0x38,
+ DW_TAG_namespace = 0x39,
+ DW_TAG_imported_module = 0x3a,
+ DW_TAG_unspecified_type = 0x3b,
+ DW_TAG_partial_unit = 0x3c,
+ DW_TAG_imported_unit = 0x3d,
+ /* SGI/MIPS Extensions. */
+ DW_TAG_MIPS_loop = 0x4081,
+ /* HP extensions. See: ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz . */
+ DW_TAG_HP_array_descriptor = 0x4090,
+ /* GNU extensions. */
+ DW_TAG_format_label = 0x4101, /* For FORTRAN 77 and Fortran 90. */
+ DW_TAG_function_template = 0x4102, /* For C++. */
+ DW_TAG_class_template = 0x4103, /* For C++. */
+ DW_TAG_GNU_BINCL = 0x4104,
+ DW_TAG_GNU_EINCL = 0x4105,
+ /* Extensions for UPC. See: http://upc.gwu.edu/~upc. */
+ DW_TAG_upc_shared_type = 0x8765,
+ DW_TAG_upc_strict_type = 0x8766,
+ DW_TAG_upc_relaxed_type = 0x8767,
+ /* PGI (STMicroelectronics) extensions. No documentation available. */
+ DW_TAG_PGI_kanji_type = 0xA000,
+ DW_TAG_PGI_interface_block = 0xA020
+ };
+
+#define DW_TAG_lo_user 0x4080
+#define DW_TAG_hi_user 0xffff
+
+/* Flag that tells whether entry has a child or not. */
+#define DW_children_no 0
+#define DW_children_yes 1
+
+/* Form names and codes. */
+enum dwarf_form
+ {
+ DW_FORM_addr = 0x01,
+ DW_FORM_block2 = 0x03,
+ DW_FORM_block4 = 0x04,
+ DW_FORM_data2 = 0x05,
+ DW_FORM_data4 = 0x06,
+ DW_FORM_data8 = 0x07,
+ DW_FORM_string = 0x08,
+ DW_FORM_block = 0x09,
+ DW_FORM_block1 = 0x0a,
+ DW_FORM_data1 = 0x0b,
+ DW_FORM_flag = 0x0c,
+ DW_FORM_sdata = 0x0d,
+ DW_FORM_strp = 0x0e,
+ DW_FORM_udata = 0x0f,
+ DW_FORM_ref_addr = 0x10,
+ DW_FORM_ref1 = 0x11,
+ DW_FORM_ref2 = 0x12,
+ DW_FORM_ref4 = 0x13,
+ DW_FORM_ref8 = 0x14,
+ DW_FORM_ref_udata = 0x15,
+ DW_FORM_indirect = 0x16
+ };
+
+/* Attribute names and codes. */
+enum dwarf_attribute
+ {
+ DW_AT_sibling = 0x01,
+ DW_AT_location = 0x02,
+ DW_AT_name = 0x03,
+ DW_AT_ordering = 0x09,
+ DW_AT_subscr_data = 0x0a,
+ DW_AT_byte_size = 0x0b,
+ DW_AT_bit_offset = 0x0c,
+ DW_AT_bit_size = 0x0d,
+ DW_AT_element_list = 0x0f,
+ DW_AT_stmt_list = 0x10,
+ DW_AT_low_pc = 0x11,
+ DW_AT_high_pc = 0x12,
+ DW_AT_language = 0x13,
+ DW_AT_member = 0x14,
+ DW_AT_discr = 0x15,
+ DW_AT_discr_value = 0x16,
+ DW_AT_visibility = 0x17,
+ DW_AT_import = 0x18,
+ DW_AT_string_length = 0x19,
+ DW_AT_common_reference = 0x1a,
+ DW_AT_comp_dir = 0x1b,
+ DW_AT_const_value = 0x1c,
+ DW_AT_containing_type = 0x1d,
+ DW_AT_default_value = 0x1e,
+ DW_AT_inline = 0x20,
+ DW_AT_is_optional = 0x21,
+ DW_AT_lower_bound = 0x22,
+ DW_AT_producer = 0x25,
+ DW_AT_prototyped = 0x27,
+ DW_AT_return_addr = 0x2a,
+ DW_AT_start_scope = 0x2c,
+ DW_AT_stride_size = 0x2e,
+ DW_AT_upper_bound = 0x2f,
+ DW_AT_abstract_origin = 0x31,
+ DW_AT_accessibility = 0x32,
+ DW_AT_address_class = 0x33,
+ DW_AT_artificial = 0x34,
+ DW_AT_base_types = 0x35,
+ DW_AT_calling_convention = 0x36,
+ DW_AT_count = 0x37,
+ DW_AT_data_member_location = 0x38,
+ DW_AT_decl_column = 0x39,
+ DW_AT_decl_file = 0x3a,
+ DW_AT_decl_line = 0x3b,
+ DW_AT_declaration = 0x3c,
+ DW_AT_discr_list = 0x3d,
+ DW_AT_encoding = 0x3e,
+ DW_AT_external = 0x3f,
+ DW_AT_frame_base = 0x40,
+ DW_AT_friend = 0x41,
+ DW_AT_identifier_case = 0x42,
+ DW_AT_macro_info = 0x43,
+ DW_AT_namelist_items = 0x44,
+ DW_AT_priority = 0x45,
+ DW_AT_segment = 0x46,
+ DW_AT_specification = 0x47,
+ DW_AT_static_link = 0x48,
+ DW_AT_type = 0x49,
+ DW_AT_use_location = 0x4a,
+ DW_AT_variable_parameter = 0x4b,
+ DW_AT_virtuality = 0x4c,
+ DW_AT_vtable_elem_location = 0x4d,
+ /* DWARF 3 values. */
+ DW_AT_allocated = 0x4e,
+ DW_AT_associated = 0x4f,
+ DW_AT_data_location = 0x50,
+ DW_AT_stride = 0x51,
+ DW_AT_entry_pc = 0x52,
+ DW_AT_use_UTF8 = 0x53,
+ DW_AT_extension = 0x54,
+ DW_AT_ranges = 0x55,
+ DW_AT_trampoline = 0x56,
+ DW_AT_call_column = 0x57,
+ DW_AT_call_file = 0x58,
+ DW_AT_call_line = 0x59,
+ /* SGI/MIPS extensions. */
+ DW_AT_MIPS_fde = 0x2001,
+ DW_AT_MIPS_loop_begin = 0x2002,
+ DW_AT_MIPS_tail_loop_begin = 0x2003,
+ DW_AT_MIPS_epilog_begin = 0x2004,
+ DW_AT_MIPS_loop_unroll_factor = 0x2005,
+ DW_AT_MIPS_software_pipeline_depth = 0x2006,
+ DW_AT_MIPS_linkage_name = 0x2007,
+ DW_AT_MIPS_stride = 0x2008,
+ DW_AT_MIPS_abstract_name = 0x2009,
+ DW_AT_MIPS_clone_origin = 0x200a,
+ DW_AT_MIPS_has_inlines = 0x200b,
+ /* HP extensions. */
+ DW_AT_HP_block_index = 0x2000,
+ DW_AT_HP_unmodifiable = 0x2001, /* Same as DW_AT_MIPS_fde. */
+ DW_AT_HP_actuals_stmt_list = 0x2010,
+ DW_AT_HP_proc_per_section = 0x2011,
+ DW_AT_HP_raw_data_ptr = 0x2012,
+ DW_AT_HP_pass_by_reference = 0x2013,
+ DW_AT_HP_opt_level = 0x2014,
+ DW_AT_HP_prof_version_id = 0x2015,
+ DW_AT_HP_opt_flags = 0x2016,
+ DW_AT_HP_cold_region_low_pc = 0x2017,
+ DW_AT_HP_cold_region_high_pc = 0x2018,
+ DW_AT_HP_all_variables_modifiable = 0x2019,
+ DW_AT_HP_linkage_name = 0x201a,
+ DW_AT_HP_prof_flags = 0x201b, /* In comp unit of procs_info for -g. */
+ /* GNU extensions. */
+ DW_AT_sf_names = 0x2101,
+ DW_AT_src_info = 0x2102,
+ DW_AT_mac_info = 0x2103,
+ DW_AT_src_coords = 0x2104,
+ DW_AT_body_begin = 0x2105,
+ DW_AT_body_end = 0x2106,
+ DW_AT_GNU_vector = 0x2107,
+ /* VMS extensions. */
+ DW_AT_VMS_rtnbeg_pd_address = 0x2201,
+ /* UPC extension. */
+ DW_AT_upc_threads_scaled = 0x3210,
+ /* PGI (STMicroelectronics) extensions. */
+ DW_AT_PGI_lbase = 0x3a00,
+ DW_AT_PGI_soffset = 0x3a01,
+ DW_AT_PGI_lstride = 0x3a02
+ };
+
+#define DW_AT_lo_user 0x2000 /* Implementation-defined range start. */
+#define DW_AT_hi_user 0x3ff0 /* Implementation-defined range end. */
+
+/* Location atom names and codes. */
+enum dwarf_location_atom
+ {
+ DW_OP_addr = 0x03,
+ DW_OP_deref = 0x06,
+ DW_OP_const1u = 0x08,
+ DW_OP_const1s = 0x09,
+ DW_OP_const2u = 0x0a,
+ DW_OP_const2s = 0x0b,
+ DW_OP_const4u = 0x0c,
+ DW_OP_const4s = 0x0d,
+ DW_OP_const8u = 0x0e,
+ DW_OP_const8s = 0x0f,
+ DW_OP_constu = 0x10,
+ DW_OP_consts = 0x11,
+ DW_OP_dup = 0x12,
+ DW_OP_drop = 0x13,
+ DW_OP_over = 0x14,
+ DW_OP_pick = 0x15,
+ DW_OP_swap = 0x16,
+ DW_OP_rot = 0x17,
+ DW_OP_xderef = 0x18,
+ DW_OP_abs = 0x19,
+ DW_OP_and = 0x1a,
+ DW_OP_div = 0x1b,
+ DW_OP_minus = 0x1c,
+ DW_OP_mod = 0x1d,
+ DW_OP_mul = 0x1e,
+ DW_OP_neg = 0x1f,
+ DW_OP_not = 0x20,
+ DW_OP_or = 0x21,
+ DW_OP_plus = 0x22,
+ DW_OP_plus_uconst = 0x23,
+ DW_OP_shl = 0x24,
+ DW_OP_shr = 0x25,
+ DW_OP_shra = 0x26,
+ DW_OP_xor = 0x27,
+ DW_OP_bra = 0x28,
+ DW_OP_eq = 0x29,
+ DW_OP_ge = 0x2a,
+ DW_OP_gt = 0x2b,
+ DW_OP_le = 0x2c,
+ DW_OP_lt = 0x2d,
+ DW_OP_ne = 0x2e,
+ DW_OP_skip = 0x2f,
+ DW_OP_lit0 = 0x30,
+ DW_OP_lit1 = 0x31,
+ DW_OP_lit2 = 0x32,
+ DW_OP_lit3 = 0x33,
+ DW_OP_lit4 = 0x34,
+ DW_OP_lit5 = 0x35,
+ DW_OP_lit6 = 0x36,
+ DW_OP_lit7 = 0x37,
+ DW_OP_lit8 = 0x38,
+ DW_OP_lit9 = 0x39,
+ DW_OP_lit10 = 0x3a,
+ DW_OP_lit11 = 0x3b,
+ DW_OP_lit12 = 0x3c,
+ DW_OP_lit13 = 0x3d,
+ DW_OP_lit14 = 0x3e,
+ DW_OP_lit15 = 0x3f,
+ DW_OP_lit16 = 0x40,
+ DW_OP_lit17 = 0x41,
+ DW_OP_lit18 = 0x42,
+ DW_OP_lit19 = 0x43,
+ DW_OP_lit20 = 0x44,
+ DW_OP_lit21 = 0x45,
+ DW_OP_lit22 = 0x46,
+ DW_OP_lit23 = 0x47,
+ DW_OP_lit24 = 0x48,
+ DW_OP_lit25 = 0x49,
+ DW_OP_lit26 = 0x4a,
+ DW_OP_lit27 = 0x4b,
+ DW_OP_lit28 = 0x4c,
+ DW_OP_lit29 = 0x4d,
+ DW_OP_lit30 = 0x4e,
+ DW_OP_lit31 = 0x4f,
+ DW_OP_reg0 = 0x50,
+ DW_OP_reg1 = 0x51,
+ DW_OP_reg2 = 0x52,
+ DW_OP_reg3 = 0x53,
+ DW_OP_reg4 = 0x54,
+ DW_OP_reg5 = 0x55,
+ DW_OP_reg6 = 0x56,
+ DW_OP_reg7 = 0x57,
+ DW_OP_reg8 = 0x58,
+ DW_OP_reg9 = 0x59,
+ DW_OP_reg10 = 0x5a,
+ DW_OP_reg11 = 0x5b,
+ DW_OP_reg12 = 0x5c,
+ DW_OP_reg13 = 0x5d,
+ DW_OP_reg14 = 0x5e,
+ DW_OP_reg15 = 0x5f,
+ DW_OP_reg16 = 0x60,
+ DW_OP_reg17 = 0x61,
+ DW_OP_reg18 = 0x62,
+ DW_OP_reg19 = 0x63,
+ DW_OP_reg20 = 0x64,
+ DW_OP_reg21 = 0x65,
+ DW_OP_reg22 = 0x66,
+ DW_OP_reg23 = 0x67,
+ DW_OP_reg24 = 0x68,
+ DW_OP_reg25 = 0x69,
+ DW_OP_reg26 = 0x6a,
+ DW_OP_reg27 = 0x6b,
+ DW_OP_reg28 = 0x6c,
+ DW_OP_reg29 = 0x6d,
+ DW_OP_reg30 = 0x6e,
+ DW_OP_reg31 = 0x6f,
+ DW_OP_breg0 = 0x70,
+ DW_OP_breg1 = 0x71,
+ DW_OP_breg2 = 0x72,
+ DW_OP_breg3 = 0x73,
+ DW_OP_breg4 = 0x74,
+ DW_OP_breg5 = 0x75,
+ DW_OP_breg6 = 0x76,
+ DW_OP_breg7 = 0x77,
+ DW_OP_breg8 = 0x78,
+ DW_OP_breg9 = 0x79,
+ DW_OP_breg10 = 0x7a,
+ DW_OP_breg11 = 0x7b,
+ DW_OP_breg12 = 0x7c,
+ DW_OP_breg13 = 0x7d,
+ DW_OP_breg14 = 0x7e,
+ DW_OP_breg15 = 0x7f,
+ DW_OP_breg16 = 0x80,
+ DW_OP_breg17 = 0x81,
+ DW_OP_breg18 = 0x82,
+ DW_OP_breg19 = 0x83,
+ DW_OP_breg20 = 0x84,
+ DW_OP_breg21 = 0x85,
+ DW_OP_breg22 = 0x86,
+ DW_OP_breg23 = 0x87,
+ DW_OP_breg24 = 0x88,
+ DW_OP_breg25 = 0x89,
+ DW_OP_breg26 = 0x8a,
+ DW_OP_breg27 = 0x8b,
+ DW_OP_breg28 = 0x8c,
+ DW_OP_breg29 = 0x8d,
+ DW_OP_breg30 = 0x8e,
+ DW_OP_breg31 = 0x8f,
+ DW_OP_regx = 0x90,
+ DW_OP_fbreg = 0x91,
+ DW_OP_bregx = 0x92,
+ DW_OP_piece = 0x93,
+ DW_OP_deref_size = 0x94,
+ DW_OP_xderef_size = 0x95,
+ DW_OP_nop = 0x96,
+ /* DWARF 3 extensions. */
+ DW_OP_push_object_address = 0x97,
+ DW_OP_call2 = 0x98,
+ DW_OP_call4 = 0x99,
+ DW_OP_call_ref = 0x9a,
+ /* GNU extensions. */
+ DW_OP_GNU_push_tls_address = 0xe0,
+ /* HP extensions. */
+ DW_OP_HP_unknown = 0xe0, /* Ouch, the same as GNU_push_tls_address. */
+ DW_OP_HP_is_value = 0xe1,
+ DW_OP_HP_fltconst4 = 0xe2,
+ DW_OP_HP_fltconst8 = 0xe3,
+ DW_OP_HP_mod_range = 0xe4,
+ DW_OP_HP_unmod_range = 0xe5,
+ DW_OP_HP_tls = 0xe6
+ };
+
+#define DW_OP_lo_user 0xe0 /* Implementation-defined range start. */
+#define DW_OP_hi_user 0xff /* Implementation-defined range end. */
+
+/* Type encodings. */
+enum dwarf_type
+ {
+ DW_ATE_void = 0x0,
+ DW_ATE_address = 0x1,
+ DW_ATE_boolean = 0x2,
+ DW_ATE_complex_float = 0x3,
+ DW_ATE_float = 0x4,
+ DW_ATE_signed = 0x5,
+ DW_ATE_signed_char = 0x6,
+ DW_ATE_unsigned = 0x7,
+ DW_ATE_unsigned_char = 0x8,
+ /* DWARF 3. */
+ DW_ATE_imaginary_float = 0x9,
+ /* HP extensions. */
+ DW_ATE_HP_float80 = 0x80, /* Floating-point (80 bit). */
+ DW_ATE_HP_complex_float80 = 0x81, /* Complex floating-point (80 bit). */
+ DW_ATE_HP_float128 = 0x82, /* Floating-point (128 bit). */
+ DW_ATE_HP_complex_float128 = 0x83, /* Complex floating-point (128 bit). */
+ DW_ATE_HP_floathpintel = 0x84, /* Floating-point (82 bit IA64). */
+ DW_ATE_HP_imaginary_float80 = 0x85,
+ DW_ATE_HP_imaginary_float128 = 0x86
+ };
+
+#define DW_ATE_lo_user 0x80
+#define DW_ATE_hi_user 0xff
+
+/* Array ordering names and codes. */
+enum dwarf_array_dim_ordering
+ {
+ DW_ORD_row_major = 0,
+ DW_ORD_col_major = 1
+ };
+
+/* Access attribute. */
+enum dwarf_access_attribute
+ {
+ DW_ACCESS_public = 1,
+ DW_ACCESS_protected = 2,
+ DW_ACCESS_private = 3
+ };
+
+/* Visibility. */
+enum dwarf_visibility_attribute
+ {
+ DW_VIS_local = 1,
+ DW_VIS_exported = 2,
+ DW_VIS_qualified = 3
+ };
+
+/* Virtuality. */
+enum dwarf_virtuality_attribute
+ {
+ DW_VIRTUALITY_none = 0,
+ DW_VIRTUALITY_virtual = 1,
+ DW_VIRTUALITY_pure_virtual = 2
+ };
+
+/* Case sensitivity. */
+enum dwarf_id_case
+ {
+ DW_ID_case_sensitive = 0,
+ DW_ID_up_case = 1,
+ DW_ID_down_case = 2,
+ DW_ID_case_insensitive = 3
+ };
+
+/* Calling convention. */
+enum dwarf_calling_convention
+ {
+ DW_CC_normal = 0x1,
+ DW_CC_program = 0x2,
+ DW_CC_nocall = 0x3
+ };
+
+#define DW_CC_lo_user 0x40
+#define DW_CC_hi_user 0xff
+
+/* Inline attribute. */
+enum dwarf_inline_attribute
+ {
+ DW_INL_not_inlined = 0,
+ DW_INL_inlined = 1,
+ DW_INL_declared_not_inlined = 2,
+ DW_INL_declared_inlined = 3
+ };
+
+/* Discriminant lists. */
+enum dwarf_discrim_list
+ {
+ DW_DSC_label = 0,
+ DW_DSC_range = 1
+ };
+
+/* Line number opcodes. */
+enum dwarf_line_number_ops
+ {
+ DW_LNS_extended_op = 0,
+ DW_LNS_copy = 1,
+ DW_LNS_advance_pc = 2,
+ DW_LNS_advance_line = 3,
+ DW_LNS_set_file = 4,
+ DW_LNS_set_column = 5,
+ DW_LNS_negate_stmt = 6,
+ DW_LNS_set_basic_block = 7,
+ DW_LNS_const_add_pc = 8,
+ DW_LNS_fixed_advance_pc = 9,
+ /* DWARF 3. */
+ DW_LNS_set_prologue_end = 10,
+ DW_LNS_set_epilogue_begin = 11,
+ DW_LNS_set_isa = 12
+ };
+
+/* Line number extended opcodes. */
+enum dwarf_line_number_x_ops
+ {
+ DW_LNE_end_sequence = 1,
+ DW_LNE_set_address = 2,
+ DW_LNE_define_file = 3,
+ /* HP extensions. */
+ DW_LNE_HP_negate_is_UV_update = 0x11,
+ DW_LNE_HP_push_context = 0x12,
+ DW_LNE_HP_pop_context = 0x13,
+ DW_LNE_HP_set_file_line_column = 0x14,
+ DW_LNE_HP_set_routine_name = 0x15,
+ DW_LNE_HP_set_sequence = 0x16,
+ DW_LNE_HP_negate_post_semantics = 0x17,
+ DW_LNE_HP_negate_function_exit = 0x18,
+ DW_LNE_HP_negate_front_end_logical = 0x19,
+ DW_LNE_HP_define_proc = 0x20
+ };
+
+/* Call frame information. */
+enum dwarf_call_frame_info
+ {
+ DW_CFA_advance_loc = 0x40,
+ DW_CFA_offset = 0x80,
+ DW_CFA_restore = 0xc0,
+ DW_CFA_nop = 0x00,
+ DW_CFA_set_loc = 0x01,
+ DW_CFA_advance_loc1 = 0x02,
+ DW_CFA_advance_loc2 = 0x03,
+ DW_CFA_advance_loc4 = 0x04,
+ DW_CFA_offset_extended = 0x05,
+ DW_CFA_restore_extended = 0x06,
+ DW_CFA_undefined = 0x07,
+ DW_CFA_same_value = 0x08,
+ DW_CFA_register = 0x09,
+ DW_CFA_remember_state = 0x0a,
+ DW_CFA_restore_state = 0x0b,
+ DW_CFA_def_cfa = 0x0c,
+ DW_CFA_def_cfa_register = 0x0d,
+ DW_CFA_def_cfa_offset = 0x0e,
+ /* DWARF 3. */
+ DW_CFA_def_cfa_expression = 0x0f,
+ DW_CFA_expression = 0x10,
+ DW_CFA_offset_extended_sf = 0x11,
+ DW_CFA_def_cfa_sf = 0x12,
+ DW_CFA_def_cfa_offset_sf = 0x13,
+ /* SGI/MIPS specific. */
+ DW_CFA_MIPS_advance_loc8 = 0x1d,
+ /* GNU extensions. */
+ DW_CFA_GNU_window_save = 0x2d,
+ DW_CFA_GNU_args_size = 0x2e,
+ DW_CFA_GNU_negative_offset_extended = 0x2f
+ };
+
+#define DW_CIE_ID 0xffffffff
+#define DW_CIE_VERSION 1
+
+#define DW_CFA_extended 0
+#define DW_CFA_lo_user 0x1c
+#define DW_CFA_hi_user 0x3f
+
+#define DW_CHILDREN_no 0x00
+#define DW_CHILDREN_yes 0x01
+
+#define DW_ADDR_none 0
+
+/* Source language names and codes. */
+enum dwarf_source_language
+ {
+ DW_LANG_C89 = 0x0001,
+ DW_LANG_C = 0x0002,
+ DW_LANG_Ada83 = 0x0003,
+ DW_LANG_C_plus_plus = 0x0004,
+ DW_LANG_Cobol74 = 0x0005,
+ DW_LANG_Cobol85 = 0x0006,
+ DW_LANG_Fortran77 = 0x0007,
+ DW_LANG_Fortran90 = 0x0008,
+ DW_LANG_Pascal83 = 0x0009,
+ DW_LANG_Modula2 = 0x000a,
+ DW_LANG_Java = 0x000b,
+ /* DWARF 3. */
+ DW_LANG_C99 = 0x000c,
+ DW_LANG_Ada95 = 0x000d,
+ DW_LANG_Fortran95 = 0x000e,
+ /* MIPS. */
+ DW_LANG_Mips_Assembler = 0x8001,
+ /* UPC. */
+ DW_LANG_Upc = 0x8765
+ };
+
+#define DW_LANG_lo_user 0x8000 /* Implementation-defined range start. */
+#define DW_LANG_hi_user 0xffff /* Implementation-defined range start. */
+
+/* Names and codes for macro information. */
+enum dwarf_macinfo_record_type
+ {
+ DW_MACINFO_define = 1,
+ DW_MACINFO_undef = 2,
+ DW_MACINFO_start_file = 3,
+ DW_MACINFO_end_file = 4,
+ DW_MACINFO_vendor_ext = 255
+ };
+
+/* @@@ For use with GNU frame unwind information. */
+
+#define DW_EH_PE_absptr 0x00
+#define DW_EH_PE_omit 0xff
+
+#define DW_EH_PE_uleb128 0x01
+#define DW_EH_PE_udata2 0x02
+#define DW_EH_PE_udata4 0x03
+#define DW_EH_PE_udata8 0x04
+#define DW_EH_PE_sleb128 0x09
+#define DW_EH_PE_sdata2 0x0A
+#define DW_EH_PE_sdata4 0x0B
+#define DW_EH_PE_sdata8 0x0C
+#define DW_EH_PE_signed 0x08
+
+#define DW_EH_PE_pcrel 0x10
+#define DW_EH_PE_textrel 0x20
+#define DW_EH_PE_datarel 0x30
+#define DW_EH_PE_funcrel 0x40
+#define DW_EH_PE_aligned 0x50
+
+#define DW_EH_PE_indirect 0x80
+
+#endif /* _ELF_DWARF2_H */
diff --git a/include/elf/external.h b/include/elf/external.h
new file mode 100644
index 000000000..a17143917
--- /dev/null
+++ b/include/elf/external.h
@@ -0,0 +1,276 @@
+/* ELF support for BFD.
+ Copyright 1991, 1992, 1993, 1995, 1997, 1998, 1999, 2001
+ Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support, from information published
+ in "UNIX System V Release 4, Programmers Guide: ANSI C and
+ Programming Support Tools".
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of ELF support for BFD, and contains the portions
+ that describe how ELF is represented externally by the BFD library.
+ I.E. it describes the in-file representation of ELF. It requires
+ the elf/common.h file which contains the portions that are common to
+ both the internal and external representations. */
+
+/* The 64-bit stuff is kind of random. Perhaps someone will publish a
+ spec someday. */
+
+#ifndef _ELF_EXTERNAL_H
+#define _ELF_EXTERNAL_H
+
+/* ELF Header (32-bit implementations) */
+
+typedef struct {
+ unsigned char e_ident[16]; /* ELF "magic number" */
+ unsigned char e_type[2]; /* Identifies object file type */
+ unsigned char e_machine[2]; /* Specifies required architecture */
+ unsigned char e_version[4]; /* Identifies object file version */
+ unsigned char e_entry[4]; /* Entry point virtual address */
+ unsigned char e_phoff[4]; /* Program header table file offset */
+ unsigned char e_shoff[4]; /* Section header table file offset */
+ unsigned char e_flags[4]; /* Processor-specific flags */
+ unsigned char e_ehsize[2]; /* ELF header size in bytes */
+ unsigned char e_phentsize[2]; /* Program header table entry size */
+ unsigned char e_phnum[2]; /* Program header table entry count */
+ unsigned char e_shentsize[2]; /* Section header table entry size */
+ unsigned char e_shnum[2]; /* Section header table entry count */
+ unsigned char e_shstrndx[2]; /* Section header string table index */
+} Elf32_External_Ehdr;
+
+typedef struct {
+ unsigned char e_ident[16]; /* ELF "magic number" */
+ unsigned char e_type[2]; /* Identifies object file type */
+ unsigned char e_machine[2]; /* Specifies required architecture */
+ unsigned char e_version[4]; /* Identifies object file version */
+ unsigned char e_entry[8]; /* Entry point virtual address */
+ unsigned char e_phoff[8]; /* Program header table file offset */
+ unsigned char e_shoff[8]; /* Section header table file offset */
+ unsigned char e_flags[4]; /* Processor-specific flags */
+ unsigned char e_ehsize[2]; /* ELF header size in bytes */
+ unsigned char e_phentsize[2]; /* Program header table entry size */
+ unsigned char e_phnum[2]; /* Program header table entry count */
+ unsigned char e_shentsize[2]; /* Section header table entry size */
+ unsigned char e_shnum[2]; /* Section header table entry count */
+ unsigned char e_shstrndx[2]; /* Section header string table index */
+} Elf64_External_Ehdr;
+
+/* Program header */
+
+typedef struct {
+ unsigned char p_type[4]; /* Identifies program segment type */
+ unsigned char p_offset[4]; /* Segment file offset */
+ unsigned char p_vaddr[4]; /* Segment virtual address */
+ unsigned char p_paddr[4]; /* Segment physical address */
+ unsigned char p_filesz[4]; /* Segment size in file */
+ unsigned char p_memsz[4]; /* Segment size in memory */
+ unsigned char p_flags[4]; /* Segment flags */
+ unsigned char p_align[4]; /* Segment alignment, file & memory */
+} Elf32_External_Phdr;
+
+typedef struct {
+ unsigned char p_type[4]; /* Identifies program segment type */
+ unsigned char p_flags[4]; /* Segment flags */
+ unsigned char p_offset[8]; /* Segment file offset */
+ unsigned char p_vaddr[8]; /* Segment virtual address */
+ unsigned char p_paddr[8]; /* Segment physical address */
+ unsigned char p_filesz[8]; /* Segment size in file */
+ unsigned char p_memsz[8]; /* Segment size in memory */
+ unsigned char p_align[8]; /* Segment alignment, file & memory */
+} Elf64_External_Phdr;
+
+/* Section header */
+
+typedef struct {
+ unsigned char sh_name[4]; /* Section name, index in string tbl */
+ unsigned char sh_type[4]; /* Type of section */
+ unsigned char sh_flags[4]; /* Miscellaneous section attributes */
+ unsigned char sh_addr[4]; /* Section virtual addr at execution */
+ unsigned char sh_offset[4]; /* Section file offset */
+ unsigned char sh_size[4]; /* Size of section in bytes */
+ unsigned char sh_link[4]; /* Index of another section */
+ unsigned char sh_info[4]; /* Additional section information */
+ unsigned char sh_addralign[4]; /* Section alignment */
+ unsigned char sh_entsize[4]; /* Entry size if section holds table */
+} Elf32_External_Shdr;
+
+typedef struct {
+ unsigned char sh_name[4]; /* Section name, index in string tbl */
+ unsigned char sh_type[4]; /* Type of section */
+ unsigned char sh_flags[8]; /* Miscellaneous section attributes */
+ unsigned char sh_addr[8]; /* Section virtual addr at execution */
+ unsigned char sh_offset[8]; /* Section file offset */
+ unsigned char sh_size[8]; /* Size of section in bytes */
+ unsigned char sh_link[4]; /* Index of another section */
+ unsigned char sh_info[4]; /* Additional section information */
+ unsigned char sh_addralign[8]; /* Section alignment */
+ unsigned char sh_entsize[8]; /* Entry size if section holds table */
+} Elf64_External_Shdr;
+
+/* Symbol table entry */
+
+typedef struct {
+ unsigned char st_name[4]; /* Symbol name, index in string tbl */
+ unsigned char st_value[4]; /* Value of the symbol */
+ unsigned char st_size[4]; /* Associated symbol size */
+ unsigned char st_info[1]; /* Type and binding attributes */
+ unsigned char st_other[1]; /* No defined meaning, 0 */
+ unsigned char st_shndx[2]; /* Associated section index */
+} Elf32_External_Sym;
+
+typedef struct {
+ unsigned char st_name[4]; /* Symbol name, index in string tbl */
+ unsigned char st_info[1]; /* Type and binding attributes */
+ unsigned char st_other[1]; /* No defined meaning, 0 */
+ unsigned char st_shndx[2]; /* Associated section index */
+ unsigned char st_value[8]; /* Value of the symbol */
+ unsigned char st_size[8]; /* Associated symbol size */
+} Elf64_External_Sym;
+
+typedef struct {
+ unsigned char est_shndx[4]; /* Section index */
+} Elf_External_Sym_Shndx;
+
+/* Note segments */
+
+typedef struct {
+ unsigned char namesz[4]; /* Size of entry's owner string */
+ unsigned char descsz[4]; /* Size of the note descriptor */
+ unsigned char type[4]; /* Interpretation of the descriptor */
+ char name[1]; /* Start of the name+desc data */
+} Elf_External_Note;
+
+/* Relocation Entries */
+typedef struct {
+ unsigned char r_offset[4]; /* Location at which to apply the action */
+ unsigned char r_info[4]; /* index and type of relocation */
+} Elf32_External_Rel;
+
+typedef struct {
+ unsigned char r_offset[4]; /* Location at which to apply the action */
+ unsigned char r_info[4]; /* index and type of relocation */
+ unsigned char r_addend[4]; /* Constant addend used to compute value */
+} Elf32_External_Rela;
+
+typedef struct {
+ unsigned char r_offset[8]; /* Location at which to apply the action */
+ unsigned char r_info[8]; /* index and type of relocation */
+} Elf64_External_Rel;
+
+typedef struct {
+ unsigned char r_offset[8]; /* Location at which to apply the action */
+ unsigned char r_info[8]; /* index and type of relocation */
+ unsigned char r_addend[8]; /* Constant addend used to compute value */
+} Elf64_External_Rela;
+
+/* dynamic section structure */
+
+typedef struct {
+ unsigned char d_tag[4]; /* entry tag value */
+ union {
+ unsigned char d_val[4];
+ unsigned char d_ptr[4];
+ } d_un;
+} Elf32_External_Dyn;
+
+typedef struct {
+ unsigned char d_tag[8]; /* entry tag value */
+ union {
+ unsigned char d_val[8];
+ unsigned char d_ptr[8];
+ } d_un;
+} Elf64_External_Dyn;
+
+/* The version structures are currently size independent. They are
+ named without a 32 or 64. If that ever changes, these structures
+ will need to be renamed. */
+
+/* This structure appears in a SHT_GNU_verdef section. */
+
+typedef struct {
+ unsigned char vd_version[2];
+ unsigned char vd_flags[2];
+ unsigned char vd_ndx[2];
+ unsigned char vd_cnt[2];
+ unsigned char vd_hash[4];
+ unsigned char vd_aux[4];
+ unsigned char vd_next[4];
+} Elf_External_Verdef;
+
+/* This structure appears in a SHT_GNU_verdef section. */
+
+typedef struct {
+ unsigned char vda_name[4];
+ unsigned char vda_next[4];
+} Elf_External_Verdaux;
+
+/* This structure appears in a SHT_GNU_verneed section. */
+
+typedef struct {
+ unsigned char vn_version[2];
+ unsigned char vn_cnt[2];
+ unsigned char vn_file[4];
+ unsigned char vn_aux[4];
+ unsigned char vn_next[4];
+} Elf_External_Verneed;
+
+/* This structure appears in a SHT_GNU_verneed section. */
+
+typedef struct {
+ unsigned char vna_hash[4];
+ unsigned char vna_flags[2];
+ unsigned char vna_other[2];
+ unsigned char vna_name[4];
+ unsigned char vna_next[4];
+} Elf_External_Vernaux;
+
+/* This structure appears in a SHT_GNU_versym section. This is not a
+ standard ELF structure; ELF just uses Elf32_Half. */
+
+typedef struct {
+ unsigned char vs_vers[2];
+}
+#ifdef __GNUC__
+ __attribute__ ((packed))
+#endif
+ Elf_External_Versym;
+
+/* Structure for syminfo section. */
+typedef struct
+{
+ unsigned char si_boundto[2];
+ unsigned char si_flags[2];
+} Elf_External_Syminfo;
+
+
+/* This structure appears on the stack and in NT_AUXV core file notes. */
+typedef struct
+{
+ unsigned char a_type[4];
+ unsigned char a_val[4];
+} Elf32_External_Auxv;
+
+typedef struct
+{
+ unsigned char a_type[8];
+ unsigned char a_val[8];
+} Elf64_External_Auxv;
+
+
+#endif /* _ELF_EXTERNAL_H */
diff --git a/include/elf/fr30.h b/include/elf/fr30.h
new file mode 100644
index 000000000..12a450dff
--- /dev/null
+++ b/include/elf/fr30.h
@@ -0,0 +1,42 @@
+/* FR30 ELF support for BFD.
+ Copyright 1998, 1999, 2000 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_FR30_H
+#define _ELF_FR30_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_fr30_reloc_type)
+ RELOC_NUMBER (R_FR30_NONE, 0)
+ RELOC_NUMBER (R_FR30_8, 1)
+ RELOC_NUMBER (R_FR30_20, 2)
+ RELOC_NUMBER (R_FR30_32, 3)
+ RELOC_NUMBER (R_FR30_48, 4)
+ RELOC_NUMBER (R_FR30_6_IN_4, 5)
+ RELOC_NUMBER (R_FR30_8_IN_8, 6)
+ RELOC_NUMBER (R_FR30_9_IN_8, 7)
+ RELOC_NUMBER (R_FR30_10_IN_8, 8)
+ RELOC_NUMBER (R_FR30_9_PCREL, 9)
+ RELOC_NUMBER (R_FR30_12_PCREL, 10)
+ RELOC_NUMBER (R_FR30_GNU_VTINHERIT, 11)
+ RELOC_NUMBER (R_FR30_GNU_VTENTRY, 12)
+END_RELOC_NUMBERS (R_FR30_max)
+
+#endif /* _ELF_FR30_H */
diff --git a/include/elf/frv.h b/include/elf/frv.h
new file mode 100644
index 000000000..a6b8a7d14
--- /dev/null
+++ b/include/elf/frv.h
@@ -0,0 +1,114 @@
+/* FRV ELF support for BFD.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_FRV_H
+#define _ELF_FRV_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_frv_reloc_type)
+ RELOC_NUMBER (R_FRV_NONE, 0)
+ RELOC_NUMBER (R_FRV_32, 1)
+ RELOC_NUMBER (R_FRV_LABEL16, 2)
+ RELOC_NUMBER (R_FRV_LABEL24, 3)
+ RELOC_NUMBER (R_FRV_LO16, 4)
+ RELOC_NUMBER (R_FRV_HI16, 5)
+ RELOC_NUMBER (R_FRV_GPREL12, 6)
+ RELOC_NUMBER (R_FRV_GPRELU12, 7)
+ RELOC_NUMBER (R_FRV_GPREL32, 8)
+ RELOC_NUMBER (R_FRV_GPRELHI, 9)
+ RELOC_NUMBER (R_FRV_GPRELLO, 10)
+ RELOC_NUMBER (R_FRV_GOT12, 11)
+ RELOC_NUMBER (R_FRV_GOTHI, 12)
+ RELOC_NUMBER (R_FRV_GOTLO, 13)
+ RELOC_NUMBER (R_FRV_FUNCDESC, 14)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOT12, 15)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOTHI, 16)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOTLO, 17)
+ RELOC_NUMBER (R_FRV_FUNCDESC_VALUE, 18)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOTOFF12, 19)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOTOFFHI, 20)
+ RELOC_NUMBER (R_FRV_FUNCDESC_GOTOFFLO, 21)
+ RELOC_NUMBER (R_FRV_GOTOFF12, 22)
+ RELOC_NUMBER (R_FRV_GOTOFFHI, 23)
+ RELOC_NUMBER (R_FRV_GOTOFFLO, 24)
+ RELOC_NUMBER (R_FRV_GNU_VTINHERIT, 200)
+ RELOC_NUMBER (R_FRV_GNU_VTENTRY, 201)
+END_RELOC_NUMBERS(R_FRV_max)
+
+/* Processor specific flags for the ELF header e_flags field. */
+ /* gpr support */
+#define EF_FRV_GPR_MASK 0x00000003 /* mask for # of gprs */
+#define EF_FRV_GPR_32 0x00000001 /* -mgpr-32 */
+#define EF_FRV_GPR_64 0x00000002 /* -mgpr-64 */
+
+ /* fpr support */
+#define EF_FRV_FPR_MASK 0x0000000c /* mask for # of fprs */
+#define EF_FRV_FPR_32 0x00000004 /* -mfpr-32 */
+#define EF_FRV_FPR_64 0x00000008 /* -mfpr-64 */
+#define EF_FRV_FPR_NONE 0x0000000c /* -msoft-float */
+
+ /* double word support */
+#define EF_FRV_DWORD_MASK 0x00000030 /* mask for dword support */
+#define EF_FRV_DWORD_YES 0x00000010 /* use double word insns */
+#define EF_FRV_DWORD_NO 0x00000020 /* don't use double word insn*/
+
+#define EF_FRV_DOUBLE 0x00000040 /* -mdouble */
+#define EF_FRV_MEDIA 0x00000080 /* -mmedia */
+
+#define EF_FRV_PIC 0x00000100 /* -fpic */
+#define EF_FRV_NON_PIC_RELOCS 0x00000200 /* used non pic safe relocs */
+
+#define EF_FRV_MULADD 0x00000400 /* -mmuladd */
+#define EF_FRV_BIGPIC 0x00000800 /* -fPIC */
+#define EF_FRV_LIBPIC 0x00001000 /* -mlibrary-pic */
+#define EF_FRV_G0 0x00002000 /* -G 0, no small data ptr */
+#define EF_FRV_NOPACK 0x00004000 /* -mnopack */
+#define EF_FRV_FDPIC 0x00008000 /* -mfdpic */
+
+#define EF_FRV_CPU_MASK 0xff000000 /* specific cpu bits */
+#define EF_FRV_CPU_GENERIC 0x00000000 /* generic FRV */
+#define EF_FRV_CPU_FR500 0x01000000 /* FRV500 */
+#define EF_FRV_CPU_FR300 0x02000000 /* FRV300 */
+#define EF_FRV_CPU_SIMPLE 0x03000000 /* SIMPLE */
+#define EF_FRV_CPU_TOMCAT 0x04000000 /* Tomcat, FR500 prototype */
+#define EF_FRV_CPU_FR400 0x05000000 /* FRV400 */
+#define EF_FRV_CPU_FR550 0x06000000 /* FRV550 */
+#define EF_FRV_CPU_FR405 0x07000000
+#define EF_FRV_CPU_FR450 0x08000000
+
+ /* Mask of PIC related bits */
+#define EF_FRV_PIC_FLAGS (EF_FRV_PIC | EF_FRV_LIBPIC | EF_FRV_BIGPIC \
+ | EF_FRV_FDPIC)
+
+ /* Mask of all flags */
+#define EF_FRV_ALL_FLAGS (EF_FRV_GPR_MASK | \
+ EF_FRV_FPR_MASK | \
+ EF_FRV_DWORD_MASK | \
+ EF_FRV_DOUBLE | \
+ EF_FRV_MEDIA | \
+ EF_FRV_PIC_FLAGS | \
+ EF_FRV_NON_PIC_RELOCS | \
+ EF_FRV_MULADD | \
+ EF_FRV_G0 | \
+ EF_FRV_NOPACK | \
+ EF_FRV_CPU_MASK)
+
+#endif /* _ELF_FRV_H */
diff --git a/include/elf/h8.h b/include/elf/h8.h
new file mode 100644
index 000000000..1aad7a4ed
--- /dev/null
+++ b/include/elf/h8.h
@@ -0,0 +1,100 @@
+/* H8300/h8500 ELF support for BFD.
+ Copyright 2001, 2003 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_H8_H
+#define _ELF_H8_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+/* Relocations 59..63 are GNU extensions. */
+START_RELOC_NUMBERS (elf_h8_reloc_type)
+ RELOC_NUMBER (R_H8_NONE, 0)
+ RELOC_NUMBER (R_H8_DIR32, 1)
+ RELOC_NUMBER (R_H8_DIR32_28, 2)
+ RELOC_NUMBER (R_H8_DIR32_24, 3)
+ RELOC_NUMBER (R_H8_DIR32_16, 4)
+ RELOC_NUMBER (R_H8_DIR32U, 6)
+ RELOC_NUMBER (R_H8_DIR32U_28, 7)
+ RELOC_NUMBER (R_H8_DIR32U_24, 8)
+ RELOC_NUMBER (R_H8_DIR32U_20, 9)
+ RELOC_NUMBER (R_H8_DIR32U_16, 10)
+ RELOC_NUMBER (R_H8_DIR24, 11)
+ RELOC_NUMBER (R_H8_DIR24_20, 12)
+ RELOC_NUMBER (R_H8_DIR24_16, 13)
+ RELOC_NUMBER (R_H8_DIR24U, 14)
+ RELOC_NUMBER (R_H8_DIR24U_20, 15)
+ RELOC_NUMBER (R_H8_DIR24U_16, 16)
+ RELOC_NUMBER (R_H8_DIR16, 17)
+ RELOC_NUMBER (R_H8_DIR16U, 18)
+ RELOC_NUMBER (R_H8_DIR16S_32, 19)
+ RELOC_NUMBER (R_H8_DIR16S_28, 20)
+ RELOC_NUMBER (R_H8_DIR16S_24, 21)
+ RELOC_NUMBER (R_H8_DIR16S_20, 22)
+ RELOC_NUMBER (R_H8_DIR16S, 23)
+ RELOC_NUMBER (R_H8_DIR8, 24)
+ RELOC_NUMBER (R_H8_DIR8U, 25)
+ RELOC_NUMBER (R_H8_DIR8Z_32, 26)
+ RELOC_NUMBER (R_H8_DIR8Z_28, 27)
+ RELOC_NUMBER (R_H8_DIR8Z_24, 28)
+ RELOC_NUMBER (R_H8_DIR8Z_20, 29)
+ RELOC_NUMBER (R_H8_DIR8Z_16, 30)
+ RELOC_NUMBER (R_H8_PCREL16, 31)
+ RELOC_NUMBER (R_H8_PCREL8, 32)
+ RELOC_NUMBER (R_H8_BPOS, 33)
+ FAKE_RELOC (R_H8_FIRST_INVALID_DIR_RELOC, 34)
+ FAKE_RELOC (R_H8_LAST_INVALID_DIR_RELOC, 58)
+ RELOC_NUMBER (R_H8_DIR16A8, 59)
+ RELOC_NUMBER (R_H8_DIR16R8, 60)
+ RELOC_NUMBER (R_H8_DIR24A8, 61)
+ RELOC_NUMBER (R_H8_DIR24R8, 62)
+ RELOC_NUMBER (R_H8_DIR32A16, 63)
+ RELOC_NUMBER (R_H8_ABS32, 65)
+ RELOC_NUMBER (R_H8_ABS32A16, 127)
+ RELOC_NUMBER (R_H8_SYM, 128)
+ RELOC_NUMBER (R_H8_OPneg, 129)
+ RELOC_NUMBER (R_H8_OPadd, 130)
+ RELOC_NUMBER (R_H8_OPsub, 131)
+ RELOC_NUMBER (R_H8_OPmul, 132)
+ RELOC_NUMBER (R_H8_OPdiv, 133)
+ RELOC_NUMBER (R_H8_OPshla, 134)
+ RELOC_NUMBER (R_H8_OPshra, 135)
+ RELOC_NUMBER (R_H8_OPsctsize, 136)
+ RELOC_NUMBER (R_H8_OPhword, 137)
+ RELOC_NUMBER (R_H8_OPlword, 138)
+ RELOC_NUMBER (R_H8_OPhigh, 139)
+ RELOC_NUMBER (R_H8_OPlow, 140)
+ RELOC_NUMBER (R_H8_OPscttop, 141)
+END_RELOC_NUMBERS (R_H8_max)
+
+/* Machine variant if we know it. This field was invented at Cygnus,
+ but it is hoped that other vendors will adopt it. If some standard
+ is developed, this code should be changed to follow it. */
+
+#define EF_H8_MACH 0x00FF0000
+
+#define E_H8_MACH_H8300 0x00800000
+#define E_H8_MACH_H8300H 0x00810000
+#define E_H8_MACH_H8300S 0x00820000
+#define E_H8_MACH_H8300HN 0x00830000
+#define E_H8_MACH_H8300SN 0x00840000
+#define E_H8_MACH_H8300SX 0x00850000
+#define E_H8_MACH_H8300SXN 0x00860000
+
+#endif
diff --git a/include/elf/hppa.h b/include/elf/hppa.h
new file mode 100644
index 000000000..45e0b9f0f
--- /dev/null
+++ b/include/elf/hppa.h
@@ -0,0 +1,552 @@
+/* HPPA ELF support for BFD.
+ Copyright 1993, 1994, 1995, 1998, 1999, 2000
+ Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the HPPA ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_HPPA_H
+#define _ELF_HPPA_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Trap null address dereferences. */
+#define EF_PARISC_TRAPNIL 0x00010000
+
+/* .PARISC.archext section is present. */
+#define EF_PARISC_EXT 0x00020000
+
+/* Program expects little-endian mode. */
+#define EF_PARISC_LSB 0x00040000
+
+/* Program expects wide mode. */
+#define EF_PARISC_WIDE 0x00080000
+
+/* Do not allow kernel-assisted branch prediction. */
+#define EF_PARISC_NO_KABP 0x00100000
+
+/* Allow lazy swap for dynamically allocated program segments. */
+#define EF_PARISC_LAZYSWAP 0x00400000
+
+/* Architecture version */
+#define EF_PARISC_ARCH 0x0000ffff
+
+#define EFA_PARISC_1_0 0x020b
+#define EFA_PARISC_1_1 0x0210
+#define EFA_PARISC_2_0 0x0214
+
+/* Special section indices. */
+/* A symbol that has been declared as a tentative definition in an ANSI C
+ compilation. */
+#define SHN_PARISC_ANSI_COMMON 0xff00
+
+/* A symbol that has been declared as a common block using the
+ huge memory model. */
+#define SHN_PARISC_HUGE_COMMON 0xff01
+
+/* Processor specific section types. */
+
+/* Section contains product specific extension bits. */
+#define SHT_PARISC_EXT 0x70000000
+
+/* Section contains unwind table entries. */
+#define SHT_PARISC_UNWIND 0x70000001
+
+/* Section contains debug information for optimized code. */
+#define SHT_PARISC_DOC 0x70000002
+
+/* Section contains code annotations. */
+#define SHT_PARISC_ANNOT 0x70000003
+
+/* These are strictly for compatibility with the older elf32-hppa
+ implementation. Hopefully we can eliminate them in the future. */
+/* Optional section holding argument location/relocation info. */
+#define SHT_PARISC_SYMEXTN SHT_LOPROC+8
+
+/* Option section for linker stubs. */
+#define SHT_PARISC_STUBS SHT_LOPROC+9
+
+/* Processor specific section flags. */
+
+/* Section contains code compiled for static branch prediction. */
+#define SHF_PARISC_SBP 0x80000000
+
+/* Section should be allocated from from GP. */
+#define SHF_PARISC_HUGE 0x40000000
+
+/* Section should go near GP. */
+#define SHF_PARISC_SHORT 0x20000000
+
+
+/* Identifies the entry point of a millicode routine. */
+#define STT_PARISC_MILLI 13
+
+/* ELF/HPPA relocation types */
+
+/* Note: PA-ELF is defined to use only RELA relocations. */
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_hppa_reloc_type)
+RELOC_NUMBER (R_PARISC_NONE, 0) /* No reloc */
+
+/* Data / Inst. Format Relocation Expression */
+
+RELOC_NUMBER (R_PARISC_DIR32, 1)
+/* 32-bit word symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR21L, 2)
+/* long immediate (7) LR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR17R, 3)
+/* branch external (19) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR17F, 4)
+/* branch external (19) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR14R, 6)
+/* load/store (1) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14F, 7)
+/* load/store (1) symbol, addend */
+
+/* PC-relative relocation types
+ Typically used for calls.
+ Note PCREL17C and PCREL17F differ only in overflow handling.
+ PCREL17C never reports a relocation error.
+
+ When supporting argument relocations, function calls must be
+ accompanied by parameter relocation information. This information is
+ carried in the ten high-order bits of the addend field. The remaining
+ 22 bits of of the addend field are sign-extended to form the Addend.
+
+ Note the code to build argument relocations depends on the
+ addend being zero. A consequence of this limitation is GAS
+ can not perform relocation reductions for function symbols. */
+
+RELOC_NUMBER (R_PARISC_PCREL12F, 8)
+/* op & branch (17) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL32, 9)
+/* 32-bit word symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL21L, 10)
+/* long immediate (7) L(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL17R, 11)
+/* branch external (19) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL17F, 12)
+/* branch (20) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL17C, 13)
+/* branch (20) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL14R, 14)
+/* load/store (1) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL14F, 15)
+/* load/store (1) symbol - PC - 8 + addend */
+
+
+/* DP-relative relocation types. */
+RELOC_NUMBER (R_PARISC_DPREL21L, 18)
+/* long immediate (7) LR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14WR, 19)
+/* load/store mod. comp. (2) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14DR, 20)
+/* load/store doubleword (3) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14R, 22)
+/* load/store (1) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DPREL14F, 23)
+/* load/store (1) symbol - GP + addend */
+
+
+/* Data linkage table (DLT) relocation types
+
+ SOM DLT_REL fixup requests are used to for static data references
+ from position-independent code within shared libraries. They are
+ similar to the GOT relocation types in some SVR4 implementations. */
+
+RELOC_NUMBER (R_PARISC_DLTREL21L, 26)
+/* long immediate (7) LR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14R, 30)
+/* load/store (1) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14F, 31)
+/* load/store (1) symbol - GP + addend */
+
+
+/* DLT indirect relocation types */
+RELOC_NUMBER (R_PARISC_DLTIND21L, 34)
+/* long immediate (7) L(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14R, 38)
+/* load/store (1) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14F, 39)
+/* load/store (1) ltoff(symbol + addend) */
+
+
+/* Base relative relocation types. Ugh. These imply lots of state */
+RELOC_NUMBER (R_PARISC_SETBASE, 40)
+/* none no reloc; base := sym */
+
+RELOC_NUMBER (R_PARISC_SECREL32, 41)
+/* 32-bit word symbol - SECT + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL21L, 42)
+/* long immediate (7) LR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL17R, 43)
+/* branch external (19) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL17F, 44)
+/* branch external (19) symbol - base + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL14R, 46)
+/* load/store (1) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL14F, 47)
+/* load/store (1) symbol - base, addend */
+
+
+/* Segment relative relocation types. */
+RELOC_NUMBER (R_PARISC_SEGBASE, 48)
+/* none no relocation; SB := sym */
+
+RELOC_NUMBER (R_PARISC_SEGREL32, 49)
+/* 32-bit word symbol - SB + addend */
+
+
+/* Offsets from the PLT. */
+RELOC_NUMBER (R_PARISC_PLTOFF21L, 50)
+/* long immediate (7) LR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14R, 54)
+/* load/store (1) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14F, 55)
+/* load/store (1) pltoff(symbol) + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR32, 57)
+/* 32-bit word ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR21L, 58)
+/* long immediate (7) L(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14R, 62)
+/* load/store (1) R(ltoff(fptr(symbol+addend))) */
+
+
+RELOC_NUMBER (R_PARISC_FPTR64, 64)
+/* 64-bit doubleword fptr(symbol+addend) */
+
+
+/* Plabel relocation types. */
+RELOC_NUMBER (R_PARISC_PLABEL32, 65)
+/* 32-bit word fptr(symbol) */
+
+RELOC_NUMBER (R_PARISC_PLABEL21L, 66)
+/* long immediate (7) L(fptr(symbol)) */
+
+RELOC_NUMBER (R_PARISC_PLABEL14R, 70)
+/* load/store (1) R(fptr(symbol)) */
+
+
+/* PCREL relocations. */
+RELOC_NUMBER (R_PARISC_PCREL64, 72)
+/* 64-bit doubleword symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL22C, 73)
+/* branch & link (21) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL22F, 74)
+/* branch & link (21) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL14WR, 75)
+/* load/store mod. comp. (2) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL14DR, 76)
+/* load/store doubleword (3) R(symbol - PC - 8 + addend) */
+
+RELOC_NUMBER (R_PARISC_PCREL16F, 77)
+/* load/store (1) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL16WF, 78)
+/* load/store mod. comp. (2) symbol - PC - 8 + addend */
+
+RELOC_NUMBER (R_PARISC_PCREL16DF, 79)
+/* load/store doubleword (3) symbol - PC - 8 + addend */
+
+
+RELOC_NUMBER (R_PARISC_DIR64, 80)
+/* 64-bit doubleword symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR64WR, 81)
+/* 64-bit doubleword RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR64DR, 82)
+/* 64-bit doubleword RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14WR, 83)
+/* load/store mod. comp. (2) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR14DR, 84)
+/* load/store doubleword (3) RR(symbol, addend) */
+
+RELOC_NUMBER (R_PARISC_DIR16F, 85)
+/* load/store (1) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR16WF, 86)
+/* load/store mod. comp. (2) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_DIR16DF, 87)
+/* load/store doubleword (3) symbol + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL64, 88)
+/* 64-bit doubleword symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_DLTREL14WR, 91)
+/* load/store mod. comp. (2) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_DLTREL14DR, 92)
+/* load/store doubleword (3) RR(symbol - GP, addend) */
+
+RELOC_NUMBER (R_PARISC_GPREL16F, 93)
+/* load/store (1) symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL16WF, 94)
+/* load/store mod. comp. (2) symbol - GP + addend */
+
+RELOC_NUMBER (R_PARISC_GPREL16DF, 95)
+/* load/store doubleword (3) symbol - GP + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF64, 96)
+/* 64-bit doubleword ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14WR, 99)
+/* load/store mod. comp. (2) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_DLTIND14DR, 100)
+/* load/store doubleword (3) R(ltoff(symbol + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16F, 101)
+/* load/store (1) ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16WF, 102)
+/* load/store mod. comp. (2) ltoff(symbol + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF16DF, 103)
+/* load/store doubleword (3) ltoff(symbol + addend) */
+
+
+RELOC_NUMBER (R_PARISC_SECREL64, 104)
+/* 64-bit doubleword symbol - SECT + addend */
+
+RELOC_NUMBER (R_PARISC_BASEREL14WR, 107)
+/* load/store mod. comp. (2) RR(symbol - base, addend) */
+
+RELOC_NUMBER (R_PARISC_BASEREL14DR, 108)
+/* load/store doubleword (3) RR(symbol - base, addend) */
+
+
+RELOC_NUMBER (R_PARISC_SEGREL64, 112)
+/* 64-bit doubleword symbol - SB + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14WR, 115)
+/* load/store mod. comp. (2) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF14DR, 116)
+/* load/store doubleword (3) RR(pltoff(symbol), addend) */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16F, 117)
+/* load/store (1) pltoff(symbol) + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16WF, 118)
+/* load/store mod. comp. (2) pltoff(symbol) + addend */
+
+RELOC_NUMBER (R_PARISC_PLTOFF16DF, 119)
+/* load/store doubleword (3) pltoff(symbol) + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR64, 120)
+/* 64-bit doubleword ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14WR, 123)
+/* load/store mod. comp. (2) R(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR14DR, 124)
+/* load/store doubleword (3) R(ltoff(fptr(symbol+addend))) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16F, 125)
+/* load/store (1) ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16WF, 126)
+/* load/store mod. comp. (2) ltoff(fptr(symbol+addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_FPTR16DF, 127)
+/* load/store doubleword (3) ltoff(fptr(symbol+addend)) */
+
+
+RELOC_NUMBER (R_PARISC_COPY, 128)
+/* data Dynamic relocations only */
+
+RELOC_NUMBER (R_PARISC_IPLT, 129)
+/* plt */
+
+RELOC_NUMBER (R_PARISC_EPLT, 130)
+/* plt */
+
+
+RELOC_NUMBER (R_PARISC_TPREL32, 153)
+/* 32-bit word symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL21L, 154)
+/* long immediate (7) LR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL14R, 158)
+/* load/store (1) RR(symbol - TP, addend) */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP21L, 162)
+/* long immediate (7) L(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14R, 166)
+/* load/store (1) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14F, 167)
+/* load/store (1) ltoff(symbol - TP + addend) */
+
+
+RELOC_NUMBER (R_PARISC_TPREL64, 216)
+/* 64-bit word symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL14WR, 219)
+/* load/store mod. comp. (2) RR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL14DR, 220)
+/* load/store doubleword (3) RR(symbol - TP, addend) */
+
+RELOC_NUMBER (R_PARISC_TPREL16F, 221)
+/* load/store (1) symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL16WF, 222)
+/* load/store mod. comp. (2) symbol - TP + addend */
+
+RELOC_NUMBER (R_PARISC_TPREL16DF, 223)
+/* load/store doubleword (3) symbol - TP + addend */
+
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP64, 224)
+/* 64-bit doubleword ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14WR, 227)
+/* load/store mod. comp. (2) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP14DR, 228)
+/* load/store doubleword (3) R(ltoff(symbol - TP + addend)) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16F, 229)
+/* load/store (1) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16WF, 230)
+/* load/store mod. comp. (2) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_LTOFF_TP16DF, 231)
+/* load/store doubleword (3) ltoff(symbol - TP + addend) */
+
+RELOC_NUMBER (R_PARISC_GNU_VTENTRY, 232)
+RELOC_NUMBER (R_PARISC_GNU_VTINHERIT, 233)
+
+END_RELOC_NUMBERS (R_PARISC_UNIMPLEMENTED)
+
+#ifndef RELOC_MACROS_GEN_FUNC
+typedef enum elf_hppa_reloc_type elf_hppa_reloc_type;
+#endif
+
+#define PT_PARISC_ARCHEXT 0x70000000
+#define PT_PARISC_UNWIND 0x70000001
+#define PF_PARISC_SBP 0x08000000
+#define PF_HP_PAGE_SIZE 0x00100000
+#define PF_HP_FAR_SHARED 0x00200000
+#define PF_HP_NEAR_SHARED 0x00400000
+#define PF_HP_CODE 0x01000000
+#define PF_HP_MODIFY 0x02000000
+#define PF_HP_LAZYSWAP 0x04000000
+#define PF_HP_SBP 0x08000000
+
+
+/* Processor specific dynamic array tags. */
+
+/* Arggh. HP's tools define these symbols based on the
+ old value of DT_LOOS. So we must do the same to be
+ compatible. */
+#define DT_HP_LOAD_MAP (OLD_DT_LOOS + 0x0)
+#define DT_HP_DLD_FLAGS (OLD_DT_LOOS + 0x1)
+#define DT_HP_DLD_HOOK (OLD_DT_LOOS + 0x2)
+#define DT_HP_UX10_INIT (OLD_DT_LOOS + 0x3)
+#define DT_HP_UX10_INITSZ (OLD_DT_LOOS + 0x4)
+#define DT_HP_PREINIT (OLD_DT_LOOS + 0x5)
+#define DT_HP_PREINITSZ (OLD_DT_LOOS + 0x6)
+#define DT_HP_NEEDED (OLD_DT_LOOS + 0x7)
+#define DT_HP_TIME_STAMP (OLD_DT_LOOS + 0x8)
+#define DT_HP_CHECKSUM (OLD_DT_LOOS + 0x9)
+#define DT_HP_GST_SIZE (OLD_DT_LOOS + 0xa)
+#define DT_HP_GST_VERSION (OLD_DT_LOOS + 0xb)
+#define DT_HP_GST_HASHVAL (OLD_DT_LOOS + 0xc)
+
+/* Values for DT_HP_DLD_FLAGS. */
+#define DT_HP_DEBUG_PRIVATE 0x0001 /* Map text private */
+#define DT_HP_DEBUG_CALLBACK 0x0002 /* Callback */
+#define DT_HP_DEBUG_CALLBACK_BOR 0x0004 /* BOR callback */
+#define DT_HP_NO_ENVVAR 0x0008 /* No env var */
+#define DT_HP_BIND_NOW 0x0010 /* Bind now */
+#define DT_HP_BIND_NONFATAL 0x0020 /* Bind non-fatal */
+#define DT_HP_BIND_VERBOSE 0x0040 /* Bind verbose */
+#define DT_HP_BIND_RESTRICTED 0x0080 /* Bind restricted */
+#define DT_HP_BIND_SYMBOLIC 0x0100 /* Bind symbolic */
+#define DT_HP_RPATH_FIRST 0x0200 /* RPATH first */
+#define DT_HP_BIND_DEPTH_FIRST 0x0400 /* Bind depth-first */
+
+/* Program header extensions. */
+#define PT_HP_TLS (PT_LOOS + 0x0)
+#define PT_HP_CORE_NONE (PT_LOOS + 0x1)
+#define PT_HP_CORE_VERSION (PT_LOOS + 0x2)
+#define PT_HP_CORE_KERNEL (PT_LOOS + 0x3)
+#define PT_HP_CORE_COMM (PT_LOOS + 0x4)
+#define PT_HP_CORE_PROC (PT_LOOS + 0x5)
+#define PT_HP_CORE_LOADABLE (PT_LOOS + 0x6)
+#define PT_HP_CORE_STACK (PT_LOOS + 0x7)
+#define PT_HP_CORE_SHM (PT_LOOS + 0x8)
+#define PT_HP_CORE_MMF (PT_LOOS + 0x9)
+#define PT_HP_PARALLEL (PT_LOOS + 0x10)
+#define PT_HP_FASTBIND (PT_LOOS + 0x11)
+
+/* Additional symbol types. */
+#define STT_HP_OPAQUE (STT_LOOS + 0x1)
+#define STT_HP_STUB (STT_LOOS + 0x2)
+
+#endif /* _ELF_HPPA_H */
diff --git a/include/elf/i370.h b/include/elf/i370.h
new file mode 100644
index 000000000..fd5ec4739
--- /dev/null
+++ b/include/elf/i370.h
@@ -0,0 +1,68 @@
+/* i370 ELF support for BFD.
+ Copyright 2000, 2002 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the i370 ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_I370_H
+#define _ELF_I370_H
+
+#include "elf/reloc-macros.h"
+
+/* Processor specific section headers, sh_type field */
+
+#define SHT_ORDERED SHT_HIPROC /* Link editor is to sort the \
+ entries in this section \
+ based on the address \
+ specified in the associated \
+ symbol table entry. */
+
+#define EF_I370_RELOCATABLE 0x00010000 /* i370 -mrelocatable flag */
+#define EF_I370_RELOCATABLE_LIB 0x00008000 /* i370 -mrelocatable-lib flag */
+/* Processor specific section flags, sh_flags field */
+
+#define SHF_EXCLUDE 0x80000000 /* Link editor is to exclude \
+ this section from executable \
+ and shared objects that it \
+ builds when those objects \
+ are not to be furhter \
+ relocated. */
+
+/* i370 relocations
+ Note that there is really just one relocation that we currently
+ support (and only one that we seem to need, at the moment), and
+ that is the 31-bit address relocation. Note that the 370/390
+ only supports a 31-bit (2GB) address space. */
+
+START_RELOC_NUMBERS (i370_reloc_type)
+ RELOC_NUMBER (R_I370_NONE, 0)
+ RELOC_NUMBER (R_I370_ADDR31, 1)
+ RELOC_NUMBER (R_I370_ADDR32, 2)
+ RELOC_NUMBER (R_I370_ADDR16, 3)
+ RELOC_NUMBER (R_I370_REL31, 4)
+ RELOC_NUMBER (R_I370_REL32, 5)
+ RELOC_NUMBER (R_I370_ADDR12, 6)
+ RELOC_NUMBER (R_I370_REL12, 7)
+ RELOC_NUMBER (R_I370_ADDR8, 8)
+ RELOC_NUMBER (R_I370_REL8, 9)
+ RELOC_NUMBER (R_I370_COPY, 10)
+ RELOC_NUMBER (R_I370_RELATIVE, 11)
+END_RELOC_NUMBERS (R_I370_max)
+
+#endif /* _ELF_I370_H */
diff --git a/include/elf/i386.h b/include/elf/i386.h
new file mode 100644
index 000000000..bd54e8ead
--- /dev/null
+++ b/include/elf/i386.h
@@ -0,0 +1,73 @@
+/* ix86 ELF support for BFD.
+ Copyright 1998, 1999, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_I386_H
+#define _ELF_I386_H
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_i386_reloc_type)
+ RELOC_NUMBER (R_386_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_386_32, 1) /* Direct 32 bit */
+ RELOC_NUMBER (R_386_PC32, 2) /* PC relative 32 bit */
+ RELOC_NUMBER (R_386_GOT32, 3) /* 32 bit GOT entry */
+ RELOC_NUMBER (R_386_PLT32, 4) /* 32 bit PLT address */
+ RELOC_NUMBER (R_386_COPY, 5) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_386_GLOB_DAT, 6) /* Create GOT entry */
+ RELOC_NUMBER (R_386_JUMP_SLOT, 7) /* Create PLT entry */
+ RELOC_NUMBER (R_386_RELATIVE, 8) /* Adjust by program base */
+ RELOC_NUMBER (R_386_GOTOFF, 9) /* 32 bit offset to GOT */
+ RELOC_NUMBER (R_386_GOTPC, 10) /* 32 bit PC relative offset to GOT */
+ RELOC_NUMBER (R_386_32PLT, 11) /* Used by Sun */
+ FAKE_RELOC (FIRST_INVALID_RELOC, 12)
+ FAKE_RELOC (LAST_INVALID_RELOC, 13)
+ RELOC_NUMBER (R_386_TLS_TPOFF,14)
+ RELOC_NUMBER (R_386_TLS_IE, 15)
+ RELOC_NUMBER (R_386_TLS_GOTIE,16)
+ RELOC_NUMBER (R_386_TLS_LE, 17)
+ RELOC_NUMBER (R_386_TLS_GD, 18)
+ RELOC_NUMBER (R_386_TLS_LDM, 19)
+ RELOC_NUMBER (R_386_16, 20)
+ RELOC_NUMBER (R_386_PC16, 21)
+ RELOC_NUMBER (R_386_8, 22)
+ RELOC_NUMBER (R_386_PC8, 23)
+ RELOC_NUMBER (R_386_TLS_GD_32, 24)
+ RELOC_NUMBER (R_386_TLS_GD_PUSH, 25)
+ RELOC_NUMBER (R_386_TLS_GD_CALL, 26)
+ RELOC_NUMBER (R_386_TLS_GD_POP, 27)
+ RELOC_NUMBER (R_386_TLS_LDM_32, 28)
+ RELOC_NUMBER (R_386_TLS_LDM_PUSH, 29)
+ RELOC_NUMBER (R_386_TLS_LDM_CALL, 30)
+ RELOC_NUMBER (R_386_TLS_LDM_POP, 31)
+ RELOC_NUMBER (R_386_TLS_LDO_32, 32)
+ RELOC_NUMBER (R_386_TLS_IE_32, 33)
+ RELOC_NUMBER (R_386_TLS_LE_32, 34)
+ RELOC_NUMBER (R_386_TLS_DTPMOD32, 35)
+ RELOC_NUMBER (R_386_TLS_DTPOFF32, 36)
+ RELOC_NUMBER (R_386_TLS_TPOFF32, 37)
+
+ /* Used by Intel. */
+ RELOC_NUMBER (R_386_USED_BY_INTEL_200, 200)
+
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_386_GNU_VTINHERIT, 250)
+ RELOC_NUMBER (R_386_GNU_VTENTRY, 251)
+END_RELOC_NUMBERS (R_386_max)
+
+#endif
diff --git a/include/elf/i860.h b/include/elf/i860.h
new file mode 100644
index 000000000..de34aeb01
--- /dev/null
+++ b/include/elf/i860.h
@@ -0,0 +1,66 @@
+/* i860 ELF support for BFD.
+ Copyright 2000 Free Software Foundation, Inc.
+
+ Contributed by Jason Eckhardt <jle@cygnus.com>.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_I860_H
+#define _ELF_I860_H
+
+/* Note: i860 ELF is defined to use only RELA relocations. */
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_i860_reloc_type)
+ RELOC_NUMBER (R_860_NONE, 0x00) /* No reloc */
+ RELOC_NUMBER (R_860_32, 0x01) /* S+A */
+ RELOC_NUMBER (R_860_COPY, 0x02) /* No calculation */
+ RELOC_NUMBER (R_860_GLOB_DAT, 0x03) /* S, Create GOT entry */
+ RELOC_NUMBER (R_860_JUMP_SLOT, 0x04) /* S+A, Create PLT entry */
+ RELOC_NUMBER (R_860_RELATIVE, 0x05) /* B+A, Adj by program base */
+ RELOC_NUMBER (R_860_PC26, 0x30) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_PLT26, 0x31) /* (L+A-P) >> 2 */
+ RELOC_NUMBER (R_860_PC16, 0x32) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_LOW0, 0x40) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT0, 0x42) /* S+A */
+ RELOC_NUMBER (R_860_LOW1, 0x44) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT1, 0x46) /* S+A */
+ RELOC_NUMBER (R_860_LOW2, 0x48) /* S+A */
+ RELOC_NUMBER (R_860_SPLIT2, 0x4A) /* S+A */
+ RELOC_NUMBER (R_860_LOW3, 0x4C) /* S+A */
+ RELOC_NUMBER (R_860_LOGOT0, 0x50) /* G */
+ RELOC_NUMBER (R_860_SPGOT0, 0x52) /* G */
+ RELOC_NUMBER (R_860_LOGOT1, 0x54) /* G */
+ RELOC_NUMBER (R_860_SPGOT1, 0x56) /* G */
+ RELOC_NUMBER (R_860_LOGOTOFF0, 0x60) /* O */
+ RELOC_NUMBER (R_860_SPGOTOFF0, 0x62) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF1, 0x64) /* O */
+ RELOC_NUMBER (R_860_SPGOTOFF1, 0x66) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF2, 0x68) /* O */
+ RELOC_NUMBER (R_860_LOGOTOFF3, 0x6C) /* O */
+ RELOC_NUMBER (R_860_LOPC, 0x70) /* (S+A-P) >> 2 */
+ RELOC_NUMBER (R_860_HIGHADJ, 0x80) /* hiadj(S+A) */
+ RELOC_NUMBER (R_860_HAGOT, 0x90) /* hiadj(G) */
+ RELOC_NUMBER (R_860_HAGOTOFF, 0xA0) /* hiadj(O) */
+ RELOC_NUMBER (R_860_HAPC, 0xB0) /* hiadj((S+A-P) >> 2) */
+ RELOC_NUMBER (R_860_HIGH, 0xC0) /* (S+A) >> 16 */
+ RELOC_NUMBER (R_860_HIGOT, 0xD0) /* G >> 16 */
+ RELOC_NUMBER (R_860_HIGOTOFF, 0xE0) /* O */
+END_RELOC_NUMBERS (R_860_max)
+
+#endif
diff --git a/include/elf/i960.h b/include/elf/i960.h
new file mode 100644
index 000000000..253e43852
--- /dev/null
+++ b/include/elf/i960.h
@@ -0,0 +1,37 @@
+/* Intel 960 ELF support for BFD.
+ Copyright 1999, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_I960_H
+#define _ELF_I960_H
+
+#include "elf/reloc-macros.h"
+
+
+START_RELOC_NUMBERS (elf_i960_reloc_type)
+ RELOC_NUMBER (R_960_NONE, 0)
+ RELOC_NUMBER (R_960_12, 1)
+ RELOC_NUMBER (R_960_32, 2)
+ RELOC_NUMBER (R_960_IP24, 3)
+ RELOC_NUMBER (R_960_SUB, 4)
+ RELOC_NUMBER (R_960_OPTCALL, 5)
+ RELOC_NUMBER (R_960_OPTCALLX, 6)
+ RELOC_NUMBER (R_960_OPTCALLXA, 7)
+END_RELOC_NUMBERS (R_960_max)
+
+#endif /* _ELF_I960_H */
diff --git a/include/elf/ia64.h b/include/elf/ia64.h
new file mode 100644
index 000000000..06dfa606d
--- /dev/null
+++ b/include/elf/ia64.h
@@ -0,0 +1,216 @@
+/* IA-64 ELF support for BFD.
+ Copyright 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_IA64_H
+#define _ELF_IA64_H
+
+/* Bits in the e_flags field of the Elf64_Ehdr: */
+
+#define EF_IA_64_MASKOS 0x0000000f /* OS-specific flags. */
+#define EF_IA_64_ARCH 0xff000000 /* Arch. version mask. */
+
+/* ??? These four definitions are not part of the SVR4 ABI.
+ They were present in David's initial code drop, so it is probable
+ that they are used by HP/UX. */
+#define EF_IA_64_TRAPNIL (1 << 0) /* Trap NIL pointer dereferences. */
+#define EF_IA_64_EXT (1 << 2) /* Program uses arch. extensions. */
+#define EF_IA_64_BE (1 << 3) /* PSR BE bit set (big-endian). */
+#define EFA_IA_64_EAS2_3 0x23000000 /* IA64 EAS 2.3. */
+
+#define EF_IA_64_ABI64 (1 << 4) /* 64-bit ABI. */
+/* Not used yet. */
+#define EF_IA_64_REDUCEDFP (1 << 5) /* Only FP6-FP11 used. */
+#define EF_IA_64_CONS_GP (1 << 6) /* gp as program wide constant. */
+#define EF_IA_64_NOFUNCDESC_CONS_GP (1 << 7) /* And no function descriptors. */
+/* Not used yet. */
+#define EF_IA_64_ABSOLUTE (1 << 8) /* Load at absolute addresses. */
+
+#define ELF_STRING_ia64_archext ".IA_64.archext"
+#define ELF_STRING_ia64_pltoff ".IA_64.pltoff"
+#define ELF_STRING_ia64_unwind ".IA_64.unwind"
+#define ELF_STRING_ia64_unwind_info ".IA_64.unwind_info"
+#define ELF_STRING_ia64_unwind_once ".gnu.linkonce.ia64unw."
+#define ELF_STRING_ia64_unwind_info_once ".gnu.linkonce.ia64unwi."
+/* .IA_64.unwind_hdr is only used by HP-UX. */
+#define ELF_STRING_ia64_unwind_hdr ".IA_64.unwind_hdr"
+
+/* Bits in the sh_flags field of Elf64_Shdr: */
+
+#define SHF_IA_64_SHORT 0x10000000 /* Section near gp. */
+#define SHF_IA_64_NORECOV 0x20000000 /* Spec insns w/o recovery. */
+
+/* Possible values for sh_type in Elf64_Shdr: */
+
+#define SHT_IA_64_EXT (SHT_LOPROC + 0) /* Extension bits. */
+#define SHT_IA_64_UNWIND (SHT_LOPROC + 1) /* Unwind bits. */
+#define SHT_IA_64_LOPSREG (SHT_LOPROC + 0x8000000)
+/* ABI says (SHT_LOPROC + 0xfffffff) but I think it's a typo -- this makes sense. */
+#define SHT_IA_64_HIPSREG (SHT_LOPROC + 0x8ffffff)
+#define SHT_IA_64_PRIORITY_INIT (SHT_LOPROC + 0x9000000)
+
+/* SHT_IA_64_HP_OPT_ANOT is only generated by HPUX compilers for its
+ optimization annotation section. GCC does not generate it but we
+ want readelf to know what they are. Do not use two capital Ns in
+ annotate or sed will turn it into 32 or 64 during the build. */
+#define SHT_IA_64_HP_OPT_ANOT 0x60000004
+
+/* Bits in the p_flags field of Elf64_Phdr: */
+
+#define PF_IA_64_NORECOV 0x80000000
+
+/* Possible values for p_type in Elf64_Phdr: */
+
+#define PT_IA_64_ARCHEXT (PT_LOPROC + 0) /* Arch extension bits, */
+#define PT_IA_64_UNWIND (PT_LOPROC + 1) /* IA64 unwind bits. */
+
+/* HP-UX specific values for p_type in Elf64_Phdr.
+ These values are currently just used to make
+ readelf more usable on HP-UX. */
+
+#define PT_IA_64_HP_OPT_ANOT (PT_LOOS + 0x12)
+#define PT_IA_64_HP_HSL_ANOT (PT_LOOS + 0x13)
+#define PT_IA_64_HP_STACK (PT_LOOS + 0x14)
+
+/* Possible values for d_tag in Elf64_Dyn: */
+
+#define DT_IA_64_PLT_RESERVE (DT_LOPROC + 0)
+
+/* This section only used by HP-UX, The HP linker gives weak symbols
+ precedence over regular common symbols. We want common to override
+ weak. Using this common instead of SHN_COMMON does that. */
+#define SHN_IA_64_ANSI_COMMON 0xFF00
+
+/* IA64-specific relocation types: */
+
+/* Relocs apply to specific instructions within a bundle. The least
+ significant 2 bits of the address indicate which instruction in the
+ bundle the reloc refers to (0=first slot, 1=second slow, 2=third
+ slot, 3=undefined) and the remaining bits give the address of the
+ bundle (16 byte aligned).
+
+ The top 5 bits of the reloc code specifies the expression type, the
+ low 3 bits the format of the data word being relocated. */
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_ia64_reloc_type)
+ RELOC_NUMBER (R_IA64_NONE, 0x00) /* none */
+
+ RELOC_NUMBER (R_IA64_IMM14, 0x21) /* symbol + addend, add imm14 */
+ RELOC_NUMBER (R_IA64_IMM22, 0x22) /* symbol + addend, add imm22 */
+ RELOC_NUMBER (R_IA64_IMM64, 0x23) /* symbol + addend, mov imm64 */
+ RELOC_NUMBER (R_IA64_DIR32MSB, 0x24) /* symbol + addend, data4 MSB */
+ RELOC_NUMBER (R_IA64_DIR32LSB, 0x25) /* symbol + addend, data4 LSB */
+ RELOC_NUMBER (R_IA64_DIR64MSB, 0x26) /* symbol + addend, data8 MSB */
+ RELOC_NUMBER (R_IA64_DIR64LSB, 0x27) /* symbol + addend, data8 LSB */
+
+ RELOC_NUMBER (R_IA64_GPREL22, 0x2a) /* @gprel(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_GPREL64I, 0x2b) /* @gprel(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_GPREL32MSB, 0x2c) /* @gprel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_GPREL32LSB, 0x2d) /* @gprel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_GPREL64MSB, 0x2e) /* @gprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_GPREL64LSB, 0x2f) /* @gprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF22, 0x32) /* @ltoff(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_LTOFF64I, 0x33) /* @ltoff(sym+add), mov imm64 */
+
+ RELOC_NUMBER (R_IA64_PLTOFF22, 0x3a) /* @pltoff(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_PLTOFF64I, 0x3b) /* @pltoff(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_PLTOFF64MSB, 0x3e) /* @pltoff(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_PLTOFF64LSB, 0x3f) /* @pltoff(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_FPTR64I, 0x43) /* @fptr(sym+add), mov imm64 */
+ RELOC_NUMBER (R_IA64_FPTR32MSB, 0x44) /* @fptr(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_FPTR32LSB, 0x45) /* @fptr(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_FPTR64MSB, 0x46) /* @fptr(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_FPTR64LSB, 0x47) /* @fptr(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_PCREL60B, 0x48) /* @pcrel(sym+add), brl */
+ RELOC_NUMBER (R_IA64_PCREL21B, 0x49) /* @pcrel(sym+add), ptb, call */
+ RELOC_NUMBER (R_IA64_PCREL21M, 0x4a) /* @pcrel(sym+add), chk.s */
+ RELOC_NUMBER (R_IA64_PCREL21F, 0x4b) /* @pcrel(sym+add), fchkf */
+ RELOC_NUMBER (R_IA64_PCREL32MSB, 0x4c) /* @pcrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_PCREL32LSB, 0x4d) /* @pcrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_PCREL64MSB, 0x4e) /* @pcrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_PCREL64LSB, 0x4f) /* @pcrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR22, 0x52) /* @ltoff(@fptr(s+a)), imm22 */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64I, 0x53) /* @ltoff(@fptr(s+a)), imm64 */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR32MSB, 0x54) /* @ltoff(@fptr(s+a)), 4 MSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR32LSB, 0x55) /* @ltoff(@fptr(s+a)), 4 LSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64MSB, 0x56) /* @ltoff(@fptr(s+a)), 8 MSB */
+ RELOC_NUMBER (R_IA64_LTOFF_FPTR64LSB, 0x57) /* @ltoff(@fptr(s+a)), 8 LSB */
+
+ RELOC_NUMBER (R_IA64_SEGREL32MSB, 0x5c) /* @segrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_SEGREL32LSB, 0x5d) /* @segrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_SEGREL64MSB, 0x5e) /* @segrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_SEGREL64LSB, 0x5f) /* @segrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_SECREL32MSB, 0x64) /* @secrel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_SECREL32LSB, 0x65) /* @secrel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_SECREL64MSB, 0x66) /* @secrel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_SECREL64LSB, 0x67) /* @secrel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_REL32MSB, 0x6c) /* data 4 + REL */
+ RELOC_NUMBER (R_IA64_REL32LSB, 0x6d) /* data 4 + REL */
+ RELOC_NUMBER (R_IA64_REL64MSB, 0x6e) /* data 8 + REL */
+ RELOC_NUMBER (R_IA64_REL64LSB, 0x6f) /* data 8 + REL */
+
+ RELOC_NUMBER (R_IA64_LTV32MSB, 0x74) /* symbol + addend, data4 MSB */
+ RELOC_NUMBER (R_IA64_LTV32LSB, 0x75) /* symbol + addend, data4 LSB */
+ RELOC_NUMBER (R_IA64_LTV64MSB, 0x76) /* symbol + addend, data8 MSB */
+ RELOC_NUMBER (R_IA64_LTV64LSB, 0x77) /* symbol + addend, data8 LSB */
+
+ RELOC_NUMBER (R_IA64_PCREL21BI, 0x79) /* @pcrel(sym+add), ptb, call */
+ RELOC_NUMBER (R_IA64_PCREL22, 0x7a) /* @pcrel(sym+add), imm22 */
+ RELOC_NUMBER (R_IA64_PCREL64I, 0x7b) /* @pcrel(sym+add), imm64 */
+
+ RELOC_NUMBER (R_IA64_IPLTMSB, 0x80) /* dynamic reloc, imported PLT, MSB */
+ RELOC_NUMBER (R_IA64_IPLTLSB, 0x81) /* dynamic reloc, imported PLT, LSB */
+ RELOC_NUMBER (R_IA64_COPY, 0x84) /* dynamic reloc, data copy */
+ RELOC_NUMBER (R_IA64_LTOFF22X, 0x86) /* LTOFF22, relaxable. */
+ RELOC_NUMBER (R_IA64_LDXMOV, 0x87) /* Use of LTOFF22X. */
+
+ RELOC_NUMBER (R_IA64_TPREL14, 0x91) /* @tprel(sym+add), add imm14 */
+ RELOC_NUMBER (R_IA64_TPREL22, 0x92) /* @tprel(sym+add), add imm22 */
+ RELOC_NUMBER (R_IA64_TPREL64I, 0x93) /* @tprel(sym+add), add imm64 */
+ RELOC_NUMBER (R_IA64_TPREL64MSB, 0x96) /* @tprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_TPREL64LSB, 0x97) /* @tprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_TPREL22, 0x9a) /* @ltoff(@tprel(s+a)), add imm22 */
+
+ RELOC_NUMBER (R_IA64_DTPMOD64MSB, 0xa6) /* @dtpmod(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_DTPMOD64LSB, 0xa7) /* @dtpmod(sym+add), data8 LSB */
+ RELOC_NUMBER (R_IA64_LTOFF_DTPMOD22, 0xaa) /* @ltoff(@dtpmod(s+a)), imm22 */
+
+ RELOC_NUMBER (R_IA64_DTPREL14, 0xb1) /* @dtprel(sym+add), imm14 */
+ RELOC_NUMBER (R_IA64_DTPREL22, 0xb2) /* @dtprel(sym+add), imm22 */
+ RELOC_NUMBER (R_IA64_DTPREL64I, 0xb3) /* @dtprel(sym+add), imm64 */
+ RELOC_NUMBER (R_IA64_DTPREL32MSB, 0xb4) /* @dtprel(sym+add), data4 MSB */
+ RELOC_NUMBER (R_IA64_DTPREL32LSB, 0xb5) /* @dtprel(sym+add), data4 LSB */
+ RELOC_NUMBER (R_IA64_DTPREL64MSB, 0xb6) /* @dtprel(sym+add), data8 MSB */
+ RELOC_NUMBER (R_IA64_DTPREL64LSB, 0xb7) /* @dtprel(sym+add), data8 LSB */
+
+ RELOC_NUMBER (R_IA64_LTOFF_DTPREL22, 0xba) /* @ltoff(@dtprel(s+a)), imm22 */
+
+ FAKE_RELOC (R_IA64_MAX_RELOC_CODE, 0xba)
+END_RELOC_NUMBERS (R_IA64_max)
+
+#endif /* _ELF_IA64_H */
diff --git a/include/elf/internal.h b/include/elf/internal.h
new file mode 100644
index 000000000..a7299d905
--- /dev/null
+++ b/include/elf/internal.h
@@ -0,0 +1,254 @@
+/* ELF support for BFD.
+ Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002
+ Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support, from information published
+ in "UNIX System V Release 4, Programmers Guide: ANSI C and
+ Programming Support Tools".
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of ELF support for BFD, and contains the portions
+ that describe how ELF is represented internally in the BFD library.
+ I.E. it describes the in-memory representation of ELF. It requires
+ the elf-common.h file which contains the portions that are common to
+ both the internal and external representations. */
+
+
+/* NOTE that these structures are not kept in the same order as they appear
+ in the object file. In some cases they've been reordered for more optimal
+ packing under various circumstances. */
+
+#ifndef _ELF_INTERNAL_H
+#define _ELF_INTERNAL_H
+
+/* ELF Header */
+
+#define EI_NIDENT 16 /* Size of e_ident[] */
+
+typedef struct elf_internal_ehdr {
+ unsigned char e_ident[EI_NIDENT]; /* ELF "magic number" */
+ bfd_vma e_entry; /* Entry point virtual address */
+ bfd_size_type e_phoff; /* Program header table file offset */
+ bfd_size_type e_shoff; /* Section header table file offset */
+ unsigned long e_version; /* Identifies object file version */
+ unsigned long e_flags; /* Processor-specific flags */
+ unsigned short e_type; /* Identifies object file type */
+ unsigned short e_machine; /* Specifies required architecture */
+ unsigned int e_ehsize; /* ELF header size in bytes */
+ unsigned int e_phentsize; /* Program header table entry size */
+ unsigned int e_phnum; /* Program header table entry count */
+ unsigned int e_shentsize; /* Section header table entry size */
+ unsigned int e_shnum; /* Section header table entry count */
+ unsigned int e_shstrndx; /* Section header string table index */
+} Elf_Internal_Ehdr;
+
+/* Program header */
+
+struct elf_internal_phdr {
+ unsigned long p_type; /* Identifies program segment type */
+ unsigned long p_flags; /* Segment flags */
+ bfd_vma p_offset; /* Segment file offset */
+ bfd_vma p_vaddr; /* Segment virtual address */
+ bfd_vma p_paddr; /* Segment physical address */
+ bfd_vma p_filesz; /* Segment size in file */
+ bfd_vma p_memsz; /* Segment size in memory */
+ bfd_vma p_align; /* Segment alignment, file & memory */
+};
+
+typedef struct elf_internal_phdr Elf_Internal_Phdr;
+
+/* Section header */
+
+typedef struct elf_internal_shdr {
+ unsigned int sh_name; /* Section name, index in string tbl */
+ unsigned int sh_type; /* Type of section */
+ bfd_vma sh_flags; /* Miscellaneous section attributes */
+ bfd_vma sh_addr; /* Section virtual addr at execution */
+ bfd_size_type sh_size; /* Size of section in bytes */
+ bfd_size_type sh_entsize; /* Entry size if section holds table */
+ unsigned long sh_link; /* Index of another section */
+ unsigned long sh_info; /* Additional section information */
+ file_ptr sh_offset; /* Section file offset */
+ unsigned int sh_addralign; /* Section alignment */
+
+ /* The internal rep also has some cached info associated with it. */
+ asection * bfd_section; /* Associated BFD section. */
+ unsigned char *contents; /* Section contents. */
+} Elf_Internal_Shdr;
+
+/* Symbol table entry */
+
+struct elf_internal_sym {
+ bfd_vma st_value; /* Value of the symbol */
+ bfd_vma st_size; /* Associated symbol size */
+ unsigned long st_name; /* Symbol name, index in string tbl */
+ unsigned char st_info; /* Type and binding attributes */
+ unsigned char st_other; /* Visibilty, and target specific */
+ unsigned int st_shndx; /* Associated section index */
+};
+
+typedef struct elf_internal_sym Elf_Internal_Sym;
+
+/* Note segments */
+
+typedef struct elf_internal_note {
+ unsigned long namesz; /* Size of entry's owner string */
+ unsigned long descsz; /* Size of the note descriptor */
+ unsigned long type; /* Interpretation of the descriptor */
+ char * namedata; /* Start of the name+desc data */
+ char * descdata; /* Start of the desc data */
+ bfd_vma descpos; /* File offset of the descdata */
+} Elf_Internal_Note;
+
+/* Relocation Entries */
+
+typedef struct elf_internal_rela {
+ bfd_vma r_offset; /* Location at which to apply the action */
+ bfd_vma r_info; /* Index and Type of relocation */
+ bfd_vma r_addend; /* Constant addend used to compute value */
+} Elf_Internal_Rela;
+
+/* dynamic section structure */
+
+typedef struct elf_internal_dyn {
+ /* This needs to support 64-bit values in elf64. */
+ bfd_vma d_tag; /* entry tag value */
+ union {
+ /* This needs to support 64-bit values in elf64. */
+ bfd_vma d_val;
+ bfd_vma d_ptr;
+ } d_un;
+} Elf_Internal_Dyn;
+
+/* This structure appears in a SHT_GNU_verdef section. */
+
+typedef struct elf_internal_verdef {
+ unsigned short vd_version; /* Version number of structure. */
+ unsigned short vd_flags; /* Flags (VER_FLG_*). */
+ unsigned short vd_ndx; /* Version index. */
+ unsigned short vd_cnt; /* Number of verdaux entries. */
+ unsigned long vd_hash; /* Hash of name. */
+ unsigned long vd_aux; /* Offset to verdaux entries. */
+ unsigned long vd_next; /* Offset to next verdef. */
+
+ /* These fields are set up when BFD reads in the structure. FIXME:
+ It would be cleaner to store these in a different structure. */
+ bfd *vd_bfd; /* BFD. */
+ const char *vd_nodename; /* Version name. */
+ struct elf_internal_verdef *vd_nextdef; /* vd_next as pointer. */
+ struct elf_internal_verdaux *vd_auxptr; /* vd_aux as pointer. */
+ unsigned int vd_exp_refno; /* Used by the linker. */
+} Elf_Internal_Verdef;
+
+/* This structure appears in a SHT_GNU_verdef section. */
+
+typedef struct elf_internal_verdaux {
+ unsigned long vda_name; /* String table offset of name. */
+ unsigned long vda_next; /* Offset to next verdaux. */
+
+ /* These fields are set up when BFD reads in the structure. FIXME:
+ It would be cleaner to store these in a different structure. */
+ const char *vda_nodename; /* vda_name as pointer. */
+ struct elf_internal_verdaux *vda_nextptr; /* vda_next as pointer. */
+} Elf_Internal_Verdaux;
+
+/* This structure appears in a SHT_GNU_verneed section. */
+
+typedef struct elf_internal_verneed {
+ unsigned short vn_version; /* Version number of structure. */
+ unsigned short vn_cnt; /* Number of vernaux entries. */
+ unsigned long vn_file; /* String table offset of library name. */
+ unsigned long vn_aux; /* Offset to vernaux entries. */
+ unsigned long vn_next; /* Offset to next verneed. */
+
+ /* These fields are set up when BFD reads in the structure. FIXME:
+ It would be cleaner to store these in a different structure. */
+ bfd *vn_bfd; /* BFD. */
+ const char *vn_filename; /* vn_file as pointer. */
+ struct elf_internal_vernaux *vn_auxptr; /* vn_aux as pointer. */
+ struct elf_internal_verneed *vn_nextref; /* vn_nextref as pointer. */
+} Elf_Internal_Verneed;
+
+/* This structure appears in a SHT_GNU_verneed section. */
+
+typedef struct elf_internal_vernaux {
+ unsigned long vna_hash; /* Hash of dependency name. */
+ unsigned short vna_flags; /* Flags (VER_FLG_*). */
+ unsigned short vna_other; /* Unused. */
+ unsigned long vna_name; /* String table offset to version name. */
+ unsigned long vna_next; /* Offset to next vernaux. */
+
+ /* These fields are set up when BFD reads in the structure. FIXME:
+ It would be cleaner to store these in a different structure. */
+ const char *vna_nodename; /* vna_name as pointer. */
+ struct elf_internal_vernaux *vna_nextptr; /* vna_next as pointer. */
+} Elf_Internal_Vernaux;
+
+/* This structure appears in a SHT_GNU_versym section. This is not a
+ standard ELF structure; ELF just uses Elf32_Half. */
+
+typedef struct elf_internal_versym {
+ unsigned short vs_vers;
+} Elf_Internal_Versym;
+
+/* Structure for syminfo section. */
+typedef struct
+{
+ unsigned short int si_boundto;
+ unsigned short int si_flags;
+} Elf_Internal_Syminfo;
+
+/* This structure appears on the stack and in NT_AUXV core file notes. */
+typedef struct
+{
+ bfd_vma a_type;
+ bfd_vma a_val;
+} Elf_Internal_Auxv;
+
+
+/* This structure is used to describe how sections should be assigned
+ to program segments. */
+
+struct elf_segment_map
+{
+ /* Next program segment. */
+ struct elf_segment_map *next;
+ /* Program segment type. */
+ unsigned long p_type;
+ /* Program segment flags. */
+ unsigned long p_flags;
+ /* Program segment physical address. */
+ bfd_vma p_paddr;
+ /* Whether the p_flags field is valid; if not, the flags are based
+ on the section flags. */
+ unsigned int p_flags_valid : 1;
+ /* Whether the p_paddr field is valid; if not, the physical address
+ is based on the section lma values. */
+ unsigned int p_paddr_valid : 1;
+ /* Whether this segment includes the file header. */
+ unsigned int includes_filehdr : 1;
+ /* Whether this segment includes the program headers. */
+ unsigned int includes_phdrs : 1;
+ /* Number of sections (may be 0). */
+ unsigned int count;
+ /* Sections. Actual number of elements is in count field. */
+ asection *sections[1];
+};
+
+#endif /* _ELF_INTERNAL_H */
diff --git a/include/elf/ip2k.h b/include/elf/ip2k.h
new file mode 100644
index 000000000..c331b720f
--- /dev/null
+++ b/include/elf/ip2k.h
@@ -0,0 +1,62 @@
+/* IP2xxx ELF support for BFD.
+ Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_IP2K_H
+#define _ELF_IP2K_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_ip2k_reloc_type)
+ RELOC_NUMBER (R_IP2K_NONE, 0)
+ RELOC_NUMBER (R_IP2K_16, 1)
+ RELOC_NUMBER (R_IP2K_32, 2)
+ RELOC_NUMBER (R_IP2K_FR9, 3)
+ RELOC_NUMBER (R_IP2K_BANK, 4)
+ RELOC_NUMBER (R_IP2K_ADDR16CJP, 5)
+ RELOC_NUMBER (R_IP2K_PAGE3, 6)
+ RELOC_NUMBER (R_IP2K_LO8DATA, 7)
+ RELOC_NUMBER (R_IP2K_HI8DATA, 8)
+ RELOC_NUMBER (R_IP2K_LO8INSN, 9)
+ RELOC_NUMBER (R_IP2K_HI8INSN, 10)
+ RELOC_NUMBER (R_IP2K_PC_SKIP, 11)
+ RELOC_NUMBER (R_IP2K_TEXT, 12)
+ RELOC_NUMBER (R_IP2K_FR_OFFSET, 13)
+ RELOC_NUMBER (R_IP2K_EX8DATA, 14)
+END_RELOC_NUMBERS(R_IP2K_max)
+
+
+/* Define the data & instruction memory discriminator. In a linked
+ executable, an symbol should be deemed to point to an instruction
+ if ((address & IP2K_INSN_MASK) == IP2K_INSN_VALUE), and similarly
+ for the data space. See also `ld/emulparams/elf32ip2k.sh'. */
+/* ??? Consider extending the _MASK values to include all the
+ intermediate bits that must be zero due to the limited physical
+ memory size on the IP2K. */
+
+#define IP2K_DATA_MASK 0xff000000
+#define IP2K_DATA_VALUE 0x01000000
+#define IP2K_INSN_MASK 0xff000000
+#define IP2K_INSN_VALUE 0x02000000
+
+/* The location of the memory mapped hardware stack. */
+#define IP2K_STACK_VALUE 0x0f000000
+#define IP2K_STACK_SIZE 0x20
+
+#endif /* _ELF_IP2K_H */
diff --git a/include/elf/iq2000.h b/include/elf/iq2000.h
new file mode 100644
index 000000000..83c690c70
--- /dev/null
+++ b/include/elf/iq2000.h
@@ -0,0 +1,58 @@
+/* IQ2000 ELF support for BFD.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_IQ2000_H
+#define _ELF_IQ2000_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_iq2000_reloc_type)
+ RELOC_NUMBER (R_IQ2000_NONE, 0)
+ RELOC_NUMBER (R_IQ2000_16, 1)
+ RELOC_NUMBER (R_IQ2000_32, 2)
+ RELOC_NUMBER (R_IQ2000_26, 3)
+ RELOC_NUMBER (R_IQ2000_PC16, 4)
+ RELOC_NUMBER (R_IQ2000_HI16, 5)
+ RELOC_NUMBER (R_IQ2000_LO16, 6)
+ RELOC_NUMBER (R_IQ2000_OFFSET_16, 7)
+ RELOC_NUMBER (R_IQ2000_OFFSET_21, 8)
+ RELOC_NUMBER (R_IQ2000_UHI16, 9)
+ RELOC_NUMBER (R_IQ2000_32_DEBUG, 10)
+ RELOC_NUMBER (R_IQ2000_GNU_VTINHERIT, 200)
+ RELOC_NUMBER (R_IQ2000_GNU_VTENTRY, 201)
+END_RELOC_NUMBERS(R_IQ2000_max)
+
+#define EF_IQ2000_CPU_IQ2000 0x00000001 /* default */
+#define EF_IQ2000_CPU_IQ10 0x00000002 /* IQ10 */
+#define EF_IQ2000_CPU_MASK 0x00000003 /* specific cpu bits */
+#define EF_IQ2000_ALL_FLAGS (EF_IQ2000_CPU_MASK)
+
+/* Define the data & instruction memory discriminator. In a linked
+ executable, an symbol should be deemed to point to an instruction
+ if ((address & IQ2000_INSN_MASK) == IQ2000_INSN_VALUE), and similarly
+ for the data space. */
+
+#define IQ2000_DATA_MASK 0x80000000
+#define IQ2000_DATA_VALUE 0x00000000
+#define IQ2000_INSN_MASK 0x80000000
+#define IQ2000_INSN_VALUE 0x80000000
+
+
+#endif /* _ELF_IQ2000_H */
diff --git a/include/elf/m32r.h b/include/elf/m32r.h
new file mode 100644
index 000000000..6441efe27
--- /dev/null
+++ b/include/elf/m32r.h
@@ -0,0 +1,119 @@
+/* M32R ELF support for BFD.
+ Copyright 1996, 1997, 1998, 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_M32R_H
+#define _ELF_M32R_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_m32r_reloc_type)
+ RELOC_NUMBER (R_M32R_NONE, 0)
+ /* REL relocations */
+ RELOC_NUMBER (R_M32R_16, 1) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_32, 2) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_24, 3) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_10_PCREL, 4) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_18_PCREL, 5) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_26_PCREL, 6) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_HI16_ULO, 7) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_HI16_SLO, 8) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_LO16, 9) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_SDA16, 10) /* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_GNU_VTINHERIT, 11)/* For backwards compatibility. */
+ RELOC_NUMBER (R_M32R_GNU_VTENTRY, 12) /* For backwards compatibility. */
+
+ /* RELA relocations */
+ RELOC_NUMBER (R_M32R_16_RELA, 33)
+ RELOC_NUMBER (R_M32R_32_RELA, 34)
+ RELOC_NUMBER (R_M32R_24_RELA, 35)
+ RELOC_NUMBER (R_M32R_10_PCREL_RELA, 36)
+ RELOC_NUMBER (R_M32R_18_PCREL_RELA, 37)
+ RELOC_NUMBER (R_M32R_26_PCREL_RELA, 38)
+ RELOC_NUMBER (R_M32R_HI16_ULO_RELA, 39)
+ RELOC_NUMBER (R_M32R_HI16_SLO_RELA, 40)
+ RELOC_NUMBER (R_M32R_LO16_RELA, 41)
+ RELOC_NUMBER (R_M32R_SDA16_RELA, 42)
+ RELOC_NUMBER (R_M32R_RELA_GNU_VTINHERIT, 43)
+ RELOC_NUMBER (R_M32R_RELA_GNU_VTENTRY, 44)
+
+ RELOC_NUMBER (R_M32R_GOT24, 48)
+ RELOC_NUMBER (R_M32R_26_PLTREL, 49)
+ RELOC_NUMBER (R_M32R_COPY, 50)
+ RELOC_NUMBER (R_M32R_GLOB_DAT, 51)
+ RELOC_NUMBER (R_M32R_JMP_SLOT, 52)
+ RELOC_NUMBER (R_M32R_RELATIVE, 53)
+ RELOC_NUMBER (R_M32R_GOTOFF, 54)
+ RELOC_NUMBER (R_M32R_GOTPC24, 55)
+ RELOC_NUMBER (R_M32R_GOT16_HI_ULO, 56)
+ RELOC_NUMBER (R_M32R_GOT16_HI_SLO, 57)
+ RELOC_NUMBER (R_M32R_GOT16_LO, 58)
+ RELOC_NUMBER (R_M32R_GOTPC_HI_ULO, 59)
+ RELOC_NUMBER (R_M32R_GOTPC_HI_SLO, 60)
+ RELOC_NUMBER (R_M32R_GOTPC_LO, 61)
+ RELOC_NUMBER (R_M32R_GOTOFF_HI_ULO, 62)
+ RELOC_NUMBER (R_M32R_GOTOFF_HI_SLO, 63)
+ RELOC_NUMBER (R_M32R_GOTOFF_LO, 64)
+END_RELOC_NUMBERS (R_M32R_max)
+
+/* Processor specific section indices. These sections do not actually
+ exist. Symbols with a st_shndx field corresponding to one of these
+ values have a special meaning. */
+
+/* Small common symbol. */
+#define SHN_M32R_SCOMMON 0xff00
+
+/* Processor specific section flags. */
+
+/* This section contains sufficient relocs to be relaxed.
+ When relaxing, even relocs of branch instructions the assembler could
+ complete must be present because relaxing may cause the branch target to
+ move. */
+#define SHF_M32R_CAN_RELAX 0x10000000
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Two bit m32r architecture field. */
+#define EF_M32R_ARCH 0x30000000
+
+/* m32r code. */
+#define E_M32R_ARCH 0x00000000
+/* m32rx code. */
+#define E_M32RX_ARCH 0x10000000
+/* m32r2 code. */
+#define E_M32R2_ARCH 0x20000000
+
+/* 12 bit m32r new instructions field. */
+#define EF_M32R_INST 0x0FFF0000
+/* Parallel instructions. */
+#define E_M32R_HAS_PARALLEL 0x00010000
+/* Hidden instructions for m32rx:
+ jc, jnc, macwhi-a, macwlo-a, mulwhi-a, mulwlo-a, sth+, shb+, sat, pcmpbz,
+ sc, snc. */
+#define E_M32R_HAS_HIDDEN_INST 0x00020000
+/* New bit instructions:
+ clrpsw, setpsw, bset, bclr, btst. */
+#define E_M32R_HAS_BIT_INST 0x00040000
+/* Floating point instructions. */
+#define E_M32R_HAS_FLOAT_INST 0x00080000
+
+/* 4 bit m32r ignore to check field. */
+#define EF_M32R_IGNORE 0x0000000F
+
+#endif
diff --git a/include/elf/m68hc11.h b/include/elf/m68hc11.h
new file mode 100644
index 000000000..1902f7fa6
--- /dev/null
+++ b/include/elf/m68hc11.h
@@ -0,0 +1,95 @@
+/* m68hc11 & m68hc12 ELF support for BFD.
+ Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_M68HC11_H
+#define _ELF_M68HC11_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_m68hc11_reloc_type)
+ RELOC_NUMBER (R_M68HC11_NONE, 0)
+ RELOC_NUMBER (R_M68HC11_8, 1)
+ RELOC_NUMBER (R_M68HC11_HI8, 2)
+ RELOC_NUMBER (R_M68HC11_LO8, 3)
+ RELOC_NUMBER (R_M68HC11_PCREL_8, 4)
+ RELOC_NUMBER (R_M68HC11_16, 5)
+ RELOC_NUMBER (R_M68HC11_32, 6)
+ RELOC_NUMBER (R_M68HC11_3B, 7)
+ RELOC_NUMBER (R_M68HC11_PCREL_16, 8)
+
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_M68HC11_GNU_VTINHERIT, 9)
+ RELOC_NUMBER (R_M68HC11_GNU_VTENTRY, 10)
+
+ RELOC_NUMBER (R_M68HC11_24, 11)
+ RELOC_NUMBER (R_M68HC11_LO16, 12)
+ RELOC_NUMBER (R_M68HC11_PAGE, 13)
+
+ /* GNU extension for linker relaxation.
+ Mark beginning of a jump instruction (any form). */
+ RELOC_NUMBER (R_M68HC11_RL_JUMP, 20)
+
+ /* Mark beginning of Gcc relaxation group instruction. */
+ RELOC_NUMBER (R_M68HC11_RL_GROUP, 21)
+END_RELOC_NUMBERS (R_M68HC11_max)
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* ABI identification. */
+#define EF_M68HC11_ABI 0x00000000F
+
+/* Integers are 32-bit long. */
+#define E_M68HC11_I32 0x000000001
+
+/* Doubles are 64-bit long. */
+#define E_M68HC11_F64 0x000000002
+
+/* Uses 68HC12 memory banks. */
+#define E_M68HC12_BANKS 0x000000004
+
+#define EF_M68HC11_MACH_MASK 0xF0
+#define EF_M68HC11_GENERIC 0x00 /* Generic 68HC12/backward compatibility. */
+#define EF_M68HC12_MACH 0x10 /* 68HC12 microcontroller. */
+#define EF_M68HCS12_MACH 0x20 /* 68HCS12 microcontroller. */
+#define EF_M68HC11_MACH(mach) ((mach) & EF_M68HC11_MACH_MASK)
+
+/* True if we can merge machines. A generic HC12 can work on any proc
+ but once we have specific code, merge is not possible. */
+#define EF_M68HC11_CAN_MERGE_MACH(mach1, mach2) \
+ ((EF_M68HC11_MACH (mach1) == EF_M68HC11_MACH (mach2)) \
+ || (EF_M68HC11_MACH (mach1) == EF_M68HC11_GENERIC) \
+ || (EF_M68HC11_MACH (mach2) == EF_M68HC11_GENERIC))
+
+#define EF_M68HC11_MERGE_MACH(mach1, mach2) \
+ (((EF_M68HC11_MACH (mach1) == EF_M68HC11_MACH (mach2)) \
+ || (EF_M68HC11_MACH (mach1) == EF_M68HC11_GENERIC)) ? \
+ EF_M68HC11_MACH (mach2) : EF_M68HC11_MACH (mach1))
+
+
+/* Special values for the st_other field in the symbol table. These
+ are used for 68HC12 to identify far functions (must be called with
+ 'call' and returns with 'rtc'). */
+#define STO_M68HC12_FAR 0x80
+
+/* Identify interrupt handlers. This is used by the debugger to
+ correctly compute the stack frame. */
+#define STO_M68HC12_INTERRUPT 0x40
+
+#endif
diff --git a/include/elf/m68k.h b/include/elf/m68k.h
new file mode 100644
index 000000000..7769c59eb
--- /dev/null
+++ b/include/elf/m68k.h
@@ -0,0 +1,58 @@
+/* MC68k ELF support for BFD.
+ Copyright 1998, 1999, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_M68K_H
+#define _ELF_M68K_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_m68k_reloc_type)
+ RELOC_NUMBER (R_68K_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_68K_32, 1) /* Direct 32 bit */
+ RELOC_NUMBER (R_68K_16, 2) /* Direct 16 bit */
+ RELOC_NUMBER (R_68K_8, 3) /* Direct 8 bit */
+ RELOC_NUMBER (R_68K_PC32, 4) /* PC relative 32 bit */
+ RELOC_NUMBER (R_68K_PC16, 5) /* PC relative 16 bit */
+ RELOC_NUMBER (R_68K_PC8, 6) /* PC relative 8 bit */
+ RELOC_NUMBER (R_68K_GOT32, 7) /* 32 bit PC relative GOT entry */
+ RELOC_NUMBER (R_68K_GOT16, 8) /* 16 bit PC relative GOT entry */
+ RELOC_NUMBER (R_68K_GOT8, 9) /* 8 bit PC relative GOT entry */
+ RELOC_NUMBER (R_68K_GOT32O, 10) /* 32 bit GOT offset */
+ RELOC_NUMBER (R_68K_GOT16O, 11) /* 16 bit GOT offset */
+ RELOC_NUMBER (R_68K_GOT8O, 12) /* 8 bit GOT offset */
+ RELOC_NUMBER (R_68K_PLT32, 13) /* 32 bit PC relative PLT address */
+ RELOC_NUMBER (R_68K_PLT16, 14) /* 16 bit PC relative PLT address */
+ RELOC_NUMBER (R_68K_PLT8, 15) /* 8 bit PC relative PLT address */
+ RELOC_NUMBER (R_68K_PLT32O, 16) /* 32 bit PLT offset */
+ RELOC_NUMBER (R_68K_PLT16O, 17) /* 16 bit PLT offset */
+ RELOC_NUMBER (R_68K_PLT8O, 18) /* 8 bit PLT offset */
+ RELOC_NUMBER (R_68K_COPY, 19) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_68K_GLOB_DAT, 20) /* Create GOT entry */
+ RELOC_NUMBER (R_68K_JMP_SLOT, 21) /* Create PLT entry */
+ RELOC_NUMBER (R_68K_RELATIVE, 22) /* Adjust by program base */
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_68K_GNU_VTINHERIT, 23)
+ RELOC_NUMBER (R_68K_GNU_VTENTRY, 24)
+END_RELOC_NUMBERS (R_68K_max)
+
+#define EF_CPU32 0x00810000
+#define EF_M68000 0x01000000
+
+#endif
diff --git a/include/elf/mcore.h b/include/elf/mcore.h
new file mode 100644
index 000000000..387a57d45
--- /dev/null
+++ b/include/elf/mcore.h
@@ -0,0 +1,46 @@
+/* Motorola MCore support for BFD.
+ Copyright 1995, 1999, 2000 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MCore ELF ABI. */
+#ifndef _ELF_MORE_H
+#define _ELF_MORE_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_mcore_reloc_type)
+ RELOC_NUMBER (R_MCORE_NONE, 0)
+ RELOC_NUMBER (R_MCORE_ADDR32, 1)
+ RELOC_NUMBER (R_MCORE_PCRELIMM8BY4, 2)
+ RELOC_NUMBER (R_MCORE_PCRELIMM11BY2, 3)
+ RELOC_NUMBER (R_MCORE_PCRELIMM4BY2, 4)
+ RELOC_NUMBER (R_MCORE_PCREL32, 5)
+ RELOC_NUMBER (R_MCORE_PCRELJSR_IMM11BY2, 6)
+ RELOC_NUMBER (R_MCORE_GNU_VTINHERIT, 7)
+ RELOC_NUMBER (R_MCORE_GNU_VTENTRY, 8)
+ RELOC_NUMBER (R_MCORE_RELATIVE, 9)
+ RELOC_NUMBER (R_MCORE_COPY, 10)
+ RELOC_NUMBER (R_MCORE_GLOB_DAT, 11)
+ RELOC_NUMBER (R_MCORE_JUMP_SLOT, 12)
+END_RELOC_NUMBERS (R_MCORE_max)
+
+/* Section Attributes. */
+#define SHF_MCORE_NOREAD 0x80000000
+
+#endif /* _ELF_MCORE_H */
diff --git a/include/elf/mips.h b/include/elf/mips.h
new file mode 100644
index 000000000..b7d800a70
--- /dev/null
+++ b/include/elf/mips.h
@@ -0,0 +1,976 @@
+/* MIPS ELF support for BFD.
+ Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003
+ Free Software Foundation, Inc.
+
+ By Ian Lance Taylor, Cygnus Support, <ian@cygnus.com>, from
+ information in the System V Application Binary Interface, MIPS
+ Processor Supplement.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MIPS ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_MIPS_H
+#define _ELF_MIPS_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_mips_reloc_type)
+ RELOC_NUMBER (R_MIPS_NONE, 0)
+ RELOC_NUMBER (R_MIPS_16, 1)
+ RELOC_NUMBER (R_MIPS_32, 2) /* In Elf 64: alias R_MIPS_ADD */
+ RELOC_NUMBER (R_MIPS_REL32, 3) /* In Elf 64: alias R_MIPS_REL */
+ RELOC_NUMBER (R_MIPS_26, 4)
+ RELOC_NUMBER (R_MIPS_HI16, 5)
+ RELOC_NUMBER (R_MIPS_LO16, 6)
+ RELOC_NUMBER (R_MIPS_GPREL16, 7) /* In Elf 64: alias R_MIPS_GPREL */
+ RELOC_NUMBER (R_MIPS_LITERAL, 8)
+ RELOC_NUMBER (R_MIPS_GOT16, 9) /* In Elf 64: alias R_MIPS_GOT */
+ RELOC_NUMBER (R_MIPS_PC16, 10)
+ RELOC_NUMBER (R_MIPS_CALL16, 11) /* In Elf 64: alias R_MIPS_CALL */
+ RELOC_NUMBER (R_MIPS_GPREL32, 12)
+ /* The remaining relocs are defined on Irix, although they are not
+ in the MIPS ELF ABI. */
+ RELOC_NUMBER (R_MIPS_UNUSED1, 13)
+ RELOC_NUMBER (R_MIPS_UNUSED2, 14)
+ RELOC_NUMBER (R_MIPS_UNUSED3, 15)
+ RELOC_NUMBER (R_MIPS_SHIFT5, 16)
+ RELOC_NUMBER (R_MIPS_SHIFT6, 17)
+ RELOC_NUMBER (R_MIPS_64, 18)
+ RELOC_NUMBER (R_MIPS_GOT_DISP, 19)
+ RELOC_NUMBER (R_MIPS_GOT_PAGE, 20)
+ RELOC_NUMBER (R_MIPS_GOT_OFST, 21)
+ RELOC_NUMBER (R_MIPS_GOT_HI16, 22)
+ RELOC_NUMBER (R_MIPS_GOT_LO16, 23)
+ RELOC_NUMBER (R_MIPS_SUB, 24)
+ RELOC_NUMBER (R_MIPS_INSERT_A, 25)
+ RELOC_NUMBER (R_MIPS_INSERT_B, 26)
+ RELOC_NUMBER (R_MIPS_DELETE, 27)
+ RELOC_NUMBER (R_MIPS_HIGHER, 28)
+ RELOC_NUMBER (R_MIPS_HIGHEST, 29)
+ RELOC_NUMBER (R_MIPS_CALL_HI16, 30)
+ RELOC_NUMBER (R_MIPS_CALL_LO16, 31)
+ RELOC_NUMBER (R_MIPS_SCN_DISP, 32)
+ RELOC_NUMBER (R_MIPS_REL16, 33)
+ RELOC_NUMBER (R_MIPS_ADD_IMMEDIATE, 34)
+ RELOC_NUMBER (R_MIPS_PJUMP, 35)
+ RELOC_NUMBER (R_MIPS_RELGOT, 36)
+ RELOC_NUMBER (R_MIPS_JALR, 37)
+ RELOC_NUMBER (R_MIPS_max, 38)
+ /* These relocs are used for the mips16. */
+ RELOC_NUMBER (R_MIPS16_26, 100)
+ RELOC_NUMBER (R_MIPS16_GPREL, 101)
+ /* This was a GNU extension used by embedded-PIC. It was co-opted by
+ mips-linux for exception-handling data. It is no longer used, but
+ should continue to be supported by the linker for backward
+ compatibility. (GCC stopped using it in May, 2004.) */
+ RELOC_NUMBER (R_MIPS_PC32, 248)
+ /* FIXME: this relocation is used internally by gas. */
+ RELOC_NUMBER (R_MIPS_GNU_REL16_S2, 250)
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_MIPS_GNU_VTINHERIT, 253)
+ RELOC_NUMBER (R_MIPS_GNU_VTENTRY, 254)
+END_RELOC_NUMBERS (R_MIPS_maxext)
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* At least one .noreorder directive appears in the source. */
+#define EF_MIPS_NOREORDER 0x00000001
+
+/* File contains position independent code. */
+#define EF_MIPS_PIC 0x00000002
+
+/* Code in file uses the standard calling sequence for calling
+ position independent code. */
+#define EF_MIPS_CPIC 0x00000004
+
+/* ??? Unknown flag, set in IRIX 6's BSDdup2.o in libbsd.a. */
+#define EF_MIPS_XGOT 0x00000008
+
+/* Code in file uses UCODE (obsolete) */
+#define EF_MIPS_UCODE 0x00000010
+
+/* Code in file uses new ABI (-n32 on Irix 6). */
+#define EF_MIPS_ABI2 0x00000020
+
+/* Process the .MIPS.options section first by ld */
+#define EF_MIPS_OPTIONS_FIRST 0x00000080
+
+/* Architectural Extensions used by this file */
+#define EF_MIPS_ARCH_ASE 0x0f000000
+
+/* Use MDMX multimedia extensions */
+#define EF_MIPS_ARCH_ASE_MDMX 0x08000000
+
+/* Use MIPS-16 ISA extensions */
+#define EF_MIPS_ARCH_ASE_M16 0x04000000
+
+/* Indicates code compiled for a 64-bit machine in 32-bit mode.
+ (regs are 32-bits wide.) */
+#define EF_MIPS_32BITMODE 0x00000100
+
+/* Four bit MIPS architecture field. */
+#define EF_MIPS_ARCH 0xf0000000
+
+/* -mips1 code. */
+#define E_MIPS_ARCH_1 0x00000000
+
+/* -mips2 code. */
+#define E_MIPS_ARCH_2 0x10000000
+
+/* -mips3 code. */
+#define E_MIPS_ARCH_3 0x20000000
+
+/* -mips4 code. */
+#define E_MIPS_ARCH_4 0x30000000
+
+/* -mips5 code. */
+#define E_MIPS_ARCH_5 0x40000000
+
+/* -mips32 code. */
+#define E_MIPS_ARCH_32 0x50000000
+
+/* -mips64 code. */
+#define E_MIPS_ARCH_64 0x60000000
+
+/* -mips32r2 code. */
+#define E_MIPS_ARCH_32R2 0x70000000
+
+/* -mips64r2 code. */
+#define E_MIPS_ARCH_64R2 0x80000000
+
+/* The ABI of the file. Also see EF_MIPS_ABI2 above. */
+#define EF_MIPS_ABI 0x0000F000
+
+/* The original o32 abi. */
+#define E_MIPS_ABI_O32 0x00001000
+
+/* O32 extended to work on 64 bit architectures */
+#define E_MIPS_ABI_O64 0x00002000
+
+/* EABI in 32 bit mode */
+#define E_MIPS_ABI_EABI32 0x00003000
+
+/* EABI in 64 bit mode */
+#define E_MIPS_ABI_EABI64 0x00004000
+
+
+/* Machine variant if we know it. This field was invented at Cygnus,
+ but it is hoped that other vendors will adopt it. If some standard
+ is developed, this code should be changed to follow it. */
+
+#define EF_MIPS_MACH 0x00FF0000
+
+/* Cygnus is choosing values between 80 and 9F;
+ 00 - 7F should be left for a future standard;
+ the rest are open. */
+
+#define E_MIPS_MACH_3900 0x00810000
+#define E_MIPS_MACH_4010 0x00820000
+#define E_MIPS_MACH_4100 0x00830000
+#define E_MIPS_MACH_4650 0x00850000
+#define E_MIPS_MACH_4120 0x00870000
+#define E_MIPS_MACH_4111 0x00880000
+#define E_MIPS_MACH_SB1 0x008a0000
+#define E_MIPS_MACH_5400 0x00910000
+#define E_MIPS_MACH_5500 0x00980000
+
+/* Processor specific section indices. These sections do not actually
+ exist. Symbols with a st_shndx field corresponding to one of these
+ values have a special meaning. */
+
+/* Defined and allocated common symbol. Value is virtual address. If
+ relocated, alignment must be preserved. */
+#define SHN_MIPS_ACOMMON 0xff00
+
+/* Defined and allocated text symbol. Value is virtual address.
+ Occur in the dynamic symbol table of Alpha OSF/1 and Irix 5 executables. */
+#define SHN_MIPS_TEXT 0xff01
+
+/* Defined and allocated data symbol. Value is virtual address.
+ Occur in the dynamic symbol table of Alpha OSF/1 and Irix 5 executables. */
+#define SHN_MIPS_DATA 0xff02
+
+/* Small common symbol. */
+#define SHN_MIPS_SCOMMON 0xff03
+
+/* Small undefined symbol. */
+#define SHN_MIPS_SUNDEFINED 0xff04
+
+/* Processor specific section types. */
+
+/* Section contains the set of dynamic shared objects used when
+ statically linking. */
+#define SHT_MIPS_LIBLIST 0x70000000
+
+/* I'm not sure what this is, but it's used on Irix 5. */
+#define SHT_MIPS_MSYM 0x70000001
+
+/* Section contains list of symbols whose definitions conflict with
+ symbols defined in shared objects. */
+#define SHT_MIPS_CONFLICT 0x70000002
+
+/* Section contains the global pointer table. */
+#define SHT_MIPS_GPTAB 0x70000003
+
+/* Section contains microcode information. The exact format is
+ unspecified. */
+#define SHT_MIPS_UCODE 0x70000004
+
+/* Section contains some sort of debugging information. The exact
+ format is unspecified. It's probably ECOFF symbols. */
+#define SHT_MIPS_DEBUG 0x70000005
+
+/* Section contains register usage information. */
+#define SHT_MIPS_REGINFO 0x70000006
+
+/* ??? */
+#define SHT_MIPS_PACKAGE 0x70000007
+
+/* ??? */
+#define SHT_MIPS_PACKSYM 0x70000008
+
+/* ??? */
+#define SHT_MIPS_RELD 0x70000009
+
+/* Section contains interface information. */
+#define SHT_MIPS_IFACE 0x7000000b
+
+/* Section contains description of contents of another section. */
+#define SHT_MIPS_CONTENT 0x7000000c
+
+/* Section contains miscellaneous options. */
+#define SHT_MIPS_OPTIONS 0x7000000d
+
+/* ??? */
+#define SHT_MIPS_SHDR 0x70000010
+
+/* ??? */
+#define SHT_MIPS_FDESC 0x70000011
+
+/* ??? */
+#define SHT_MIPS_EXTSYM 0x70000012
+
+/* ??? */
+#define SHT_MIPS_DENSE 0x70000013
+
+/* ??? */
+#define SHT_MIPS_PDESC 0x70000014
+
+/* ??? */
+#define SHT_MIPS_LOCSYM 0x70000015
+
+/* ??? */
+#define SHT_MIPS_AUXSYM 0x70000016
+
+/* ??? */
+#define SHT_MIPS_OPTSYM 0x70000017
+
+/* ??? */
+#define SHT_MIPS_LOCSTR 0x70000018
+
+/* ??? */
+#define SHT_MIPS_LINE 0x70000019
+
+/* ??? */
+#define SHT_MIPS_RFDESC 0x7000001a
+
+/* Delta C++: symbol table */
+#define SHT_MIPS_DELTASYM 0x7000001b
+
+/* Delta C++: instance table */
+#define SHT_MIPS_DELTAINST 0x7000001c
+
+/* Delta C++: class table */
+#define SHT_MIPS_DELTACLASS 0x7000001d
+
+/* DWARF debugging section. */
+#define SHT_MIPS_DWARF 0x7000001e
+
+/* Delta C++: declarations */
+#define SHT_MIPS_DELTADECL 0x7000001f
+
+/* List of libraries the binary depends on. Includes a time stamp, version
+ number. */
+#define SHT_MIPS_SYMBOL_LIB 0x70000020
+
+/* Events section. */
+#define SHT_MIPS_EVENTS 0x70000021
+
+/* ??? */
+#define SHT_MIPS_TRANSLATE 0x70000022
+
+/* Special pixie sections */
+#define SHT_MIPS_PIXIE 0x70000023
+
+/* Address translation table (for debug info) */
+#define SHT_MIPS_XLATE 0x70000024
+
+/* SGI internal address translation table (for debug info) */
+#define SHT_MIPS_XLATE_DEBUG 0x70000025
+
+/* Intermediate code */
+#define SHT_MIPS_WHIRL 0x70000026
+
+/* C++ exception handling region info */
+#define SHT_MIPS_EH_REGION 0x70000027
+
+/* Obsolete address translation table (for debug info) */
+#define SHT_MIPS_XLATE_OLD 0x70000028
+
+/* Runtime procedure descriptor table exception information (ucode) ??? */
+#define SHT_MIPS_PDR_EXCEPTION 0x70000029
+
+
+/* A section of type SHT_MIPS_LIBLIST contains an array of the
+ following structure. The sh_link field is the section index of the
+ string table. The sh_info field is the number of entries in the
+ section. */
+typedef struct
+{
+ /* String table index for name of shared object. */
+ unsigned long l_name;
+ /* Time stamp. */
+ unsigned long l_time_stamp;
+ /* Checksum of symbol names and common sizes. */
+ unsigned long l_checksum;
+ /* String table index for version. */
+ unsigned long l_version;
+ /* Flags. */
+ unsigned long l_flags;
+} Elf32_Lib;
+
+/* The external version of Elf32_Lib. */
+typedef struct
+{
+ unsigned char l_name[4];
+ unsigned char l_time_stamp[4];
+ unsigned char l_checksum[4];
+ unsigned char l_version[4];
+ unsigned char l_flags[4];
+} Elf32_External_Lib;
+
+/* The l_flags field of an Elf32_Lib structure may contain the
+ following flags. */
+
+/* Require an exact match at runtime. */
+#define LL_EXACT_MATCH 0x00000001
+
+/* Ignore version incompatibilities at runtime. */
+#define LL_IGNORE_INT_VER 0x00000002
+
+/* Require matching minor version number. */
+#define LL_REQUIRE_MINOR 0x00000004
+
+/* ??? */
+#define LL_EXPORTS 0x00000008
+
+/* Delay loading of this library until really needed. */
+#define LL_DELAY_LOAD 0x00000010
+
+/* ??? Delta C++ stuff ??? */
+#define LL_DELTA 0x00000020
+
+
+/* A section of type SHT_MIPS_CONFLICT is an array of indices into the
+ .dynsym section. Each element has the following type. */
+typedef unsigned long Elf32_Conflict;
+typedef unsigned char Elf32_External_Conflict[4];
+
+typedef unsigned long Elf64_Conflict;
+typedef unsigned char Elf64_External_Conflict[8];
+
+/* A section of type SHT_MIPS_GPTAB contains information about how
+ much GP space would be required for different -G arguments. This
+ information is only used so that the linker can provide informative
+ suggestions as to the best -G value to use. The sh_info field is
+ the index of the section for which this information applies. The
+ contents of the section are an array of the following union. The
+ first element uses the gt_header field. The remaining elements use
+ the gt_entry field. */
+typedef union
+{
+ struct
+ {
+ /* -G value actually used for this object file. */
+ unsigned long gt_current_g_value;
+ /* Unused. */
+ unsigned long gt_unused;
+ } gt_header;
+ struct
+ {
+ /* If this -G argument has been used... */
+ unsigned long gt_g_value;
+ /* ...this many GP section bytes would be required. */
+ unsigned long gt_bytes;
+ } gt_entry;
+} Elf32_gptab;
+
+/* The external version of Elf32_gptab. */
+
+typedef union
+{
+ struct
+ {
+ unsigned char gt_current_g_value[4];
+ unsigned char gt_unused[4];
+ } gt_header;
+ struct
+ {
+ unsigned char gt_g_value[4];
+ unsigned char gt_bytes[4];
+ } gt_entry;
+} Elf32_External_gptab;
+
+/* A section of type SHT_MIPS_REGINFO contains the following
+ structure. */
+typedef struct
+{
+ /* Mask of general purpose registers used. */
+ unsigned long ri_gprmask;
+ /* Mask of co-processor registers used. */
+ unsigned long ri_cprmask[4];
+ /* GP register value for this object file. */
+ long ri_gp_value;
+} Elf32_RegInfo;
+
+/* The external version of the Elf_RegInfo structure. */
+typedef struct
+{
+ unsigned char ri_gprmask[4];
+ unsigned char ri_cprmask[4][4];
+ unsigned char ri_gp_value[4];
+} Elf32_External_RegInfo;
+
+/* MIPS ELF .reginfo swapping routines. */
+extern void bfd_mips_elf32_swap_reginfo_in
+ (bfd *, const Elf32_External_RegInfo *, Elf32_RegInfo *);
+extern void bfd_mips_elf32_swap_reginfo_out
+ (bfd *, const Elf32_RegInfo *, Elf32_External_RegInfo *);
+
+/* Processor specific section flags. */
+
+/* This section must be in the global data area. */
+#define SHF_MIPS_GPREL 0x10000000
+
+/* This section should be merged. */
+#define SHF_MIPS_MERGE 0x20000000
+
+/* This section contains address data of size implied by section
+ element size. */
+#define SHF_MIPS_ADDR 0x40000000
+
+/* This section contains string data. */
+#define SHF_MIPS_STRING 0x80000000
+
+/* This section may not be stripped. */
+#define SHF_MIPS_NOSTRIP 0x08000000
+
+/* This section is local to threads. */
+#define SHF_MIPS_LOCAL 0x04000000
+
+/* Linker should generate implicit weak names for this section. */
+#define SHF_MIPS_NAMES 0x02000000
+
+/* Section contais text/data which may be replicated in other sections.
+ Linker should retain only one copy. */
+#define SHF_MIPS_NODUPES 0x01000000
+
+/* Processor specific program header types. */
+
+/* Register usage information. Identifies one .reginfo section. */
+#define PT_MIPS_REGINFO 0x70000000
+
+/* Runtime procedure table. */
+#define PT_MIPS_RTPROC 0x70000001
+
+/* .MIPS.options section. */
+#define PT_MIPS_OPTIONS 0x70000002
+
+/* Processor specific dynamic array tags. */
+
+/* 32 bit version number for runtime linker interface. */
+#define DT_MIPS_RLD_VERSION 0x70000001
+
+/* Time stamp. */
+#define DT_MIPS_TIME_STAMP 0x70000002
+
+/* Checksum of external strings and common sizes. */
+#define DT_MIPS_ICHECKSUM 0x70000003
+
+/* Index of version string in string table. */
+#define DT_MIPS_IVERSION 0x70000004
+
+/* 32 bits of flags. */
+#define DT_MIPS_FLAGS 0x70000005
+
+/* Base address of the segment. */
+#define DT_MIPS_BASE_ADDRESS 0x70000006
+
+/* ??? */
+#define DT_MIPS_MSYM 0x70000007
+
+/* Address of .conflict section. */
+#define DT_MIPS_CONFLICT 0x70000008
+
+/* Address of .liblist section. */
+#define DT_MIPS_LIBLIST 0x70000009
+
+/* Number of local global offset table entries. */
+#define DT_MIPS_LOCAL_GOTNO 0x7000000a
+
+/* Number of entries in the .conflict section. */
+#define DT_MIPS_CONFLICTNO 0x7000000b
+
+/* Number of entries in the .liblist section. */
+#define DT_MIPS_LIBLISTNO 0x70000010
+
+/* Number of entries in the .dynsym section. */
+#define DT_MIPS_SYMTABNO 0x70000011
+
+/* Index of first external dynamic symbol not referenced locally. */
+#define DT_MIPS_UNREFEXTNO 0x70000012
+
+/* Index of first dynamic symbol in global offset table. */
+#define DT_MIPS_GOTSYM 0x70000013
+
+/* Number of page table entries in global offset table. */
+#define DT_MIPS_HIPAGENO 0x70000014
+
+/* Address of run time loader map, used for debugging. */
+#define DT_MIPS_RLD_MAP 0x70000016
+
+/* Delta C++ class definition. */
+#define DT_MIPS_DELTA_CLASS 0x70000017
+
+/* Number of entries in DT_MIPS_DELTA_CLASS. */
+#define DT_MIPS_DELTA_CLASS_NO 0x70000018
+
+/* Delta C++ class instances. */
+#define DT_MIPS_DELTA_INSTANCE 0x70000019
+
+/* Number of entries in DT_MIPS_DELTA_INSTANCE. */
+#define DT_MIPS_DELTA_INSTANCE_NO 0x7000001a
+
+/* Delta relocations. */
+#define DT_MIPS_DELTA_RELOC 0x7000001b
+
+/* Number of entries in DT_MIPS_DELTA_RELOC. */
+#define DT_MIPS_DELTA_RELOC_NO 0x7000001c
+
+/* Delta symbols that Delta relocations refer to. */
+#define DT_MIPS_DELTA_SYM 0x7000001d
+
+/* Number of entries in DT_MIPS_DELTA_SYM. */
+#define DT_MIPS_DELTA_SYM_NO 0x7000001e
+
+/* Delta symbols that hold class declarations. */
+#define DT_MIPS_DELTA_CLASSSYM 0x70000020
+
+/* Number of entries in DT_MIPS_DELTA_CLASSSYM. */
+#define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021
+
+/* Flags indicating information about C++ flavor. */
+#define DT_MIPS_CXX_FLAGS 0x70000022
+
+/* Pixie information (???). */
+#define DT_MIPS_PIXIE_INIT 0x70000023
+
+/* Address of .MIPS.symlib */
+#define DT_MIPS_SYMBOL_LIB 0x70000024
+
+/* The GOT index of the first PTE for a segment */
+#define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025
+
+/* The GOT index of the first PTE for a local symbol */
+#define DT_MIPS_LOCAL_GOTIDX 0x70000026
+
+/* The GOT index of the first PTE for a hidden symbol */
+#define DT_MIPS_HIDDEN_GOTIDX 0x70000027
+
+/* The GOT index of the first PTE for a protected symbol */
+#define DT_MIPS_PROTECTED_GOTIDX 0x70000028
+
+/* Address of `.MIPS.options'. */
+#define DT_MIPS_OPTIONS 0x70000029
+
+/* Address of `.interface'. */
+#define DT_MIPS_INTERFACE 0x7000002a
+
+/* ??? */
+#define DT_MIPS_DYNSTR_ALIGN 0x7000002b
+
+/* Size of the .interface section. */
+#define DT_MIPS_INTERFACE_SIZE 0x7000002c
+
+/* Size of rld_text_resolve function stored in the GOT. */
+#define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002d
+
+/* Default suffix of DSO to be added by rld on dlopen() calls. */
+#define DT_MIPS_PERF_SUFFIX 0x7000002e
+
+/* Size of compact relocation section (O32). */
+#define DT_MIPS_COMPACT_SIZE 0x7000002f
+
+/* GP value for auxiliary GOTs. */
+#define DT_MIPS_GP_VALUE 0x70000030
+
+/* Address of auxiliary .dynamic. */
+#define DT_MIPS_AUX_DYNAMIC 0x70000031
+
+/* Flags which may appear in a DT_MIPS_FLAGS entry. */
+
+/* No flags. */
+#define RHF_NONE 0x00000000
+
+/* Uses shortcut pointers. */
+#define RHF_QUICKSTART 0x00000001
+
+/* Hash size is not a power of two. */
+#define RHF_NOTPOT 0x00000002
+
+/* Ignore LD_LIBRARY_PATH. */
+#define RHS_NO_LIBRARY_REPLACEMENT 0x00000004
+
+/* DSO address may not be relocated. */
+#define RHF_NO_MOVE 0x00000008
+
+/* SGI specific features. */
+#define RHF_SGI_ONLY 0x00000010
+
+/* Guarantee that .init will finish executing before any non-init
+ code in DSO is called. */
+#define RHF_GUARANTEE_INIT 0x00000020
+
+/* Contains Delta C++ code. */
+#define RHF_DELTA_C_PLUS_PLUS 0x00000040
+
+/* Guarantee that .init will start executing before any non-init
+ code in DSO is called. */
+#define RHF_GUARANTEE_START_INIT 0x00000080
+
+/* Generated by pixie. */
+#define RHF_PIXIE 0x00000100
+
+/* Delay-load DSO by default. */
+#define RHF_DEFAULT_DELAY_LOAD 0x00000200
+
+/* Object may be requickstarted */
+#define RHF_REQUICKSTART 0x00000400
+
+/* Object has been requickstarted */
+#define RHF_REQUICKSTARTED 0x00000800
+
+/* Generated by cord. */
+#define RHF_CORD 0x00001000
+
+/* Object contains no unresolved undef symbols. */
+#define RHF_NO_UNRES_UNDEF 0x00002000
+
+/* Symbol table is in a safe order. */
+#define RHF_RLD_ORDER_SAFE 0x00004000
+
+/* Special values for the st_other field in the symbol table. These
+ are used in an Irix 5 dynamic symbol table. */
+
+#define STO_DEFAULT STV_DEFAULT
+#define STO_INTERNAL STV_INTERNAL
+#define STO_HIDDEN STV_HIDDEN
+#define STO_PROTECTED STV_PROTECTED
+
+/* This value is used for a mips16 .text symbol. */
+#define STO_MIPS16 0xf0
+
+/* The 64-bit MIPS ELF ABI uses an unusual reloc format. Each
+ relocation entry specifies up to three actual relocations, all at
+ the same address. The first relocation which required a symbol
+ uses the symbol in the r_sym field. The second relocation which
+ requires a symbol uses the symbol in the r_ssym field. If all
+ three relocations require a symbol, the third one uses a zero
+ value. */
+
+/* An entry in a 64 bit SHT_REL section. */
+
+typedef struct
+{
+ /* Address of relocation. */
+ unsigned char r_offset[8];
+ /* Symbol index. */
+ unsigned char r_sym[4];
+ /* Special symbol. */
+ unsigned char r_ssym[1];
+ /* Third relocation. */
+ unsigned char r_type3[1];
+ /* Second relocation. */
+ unsigned char r_type2[1];
+ /* First relocation. */
+ unsigned char r_type[1];
+} Elf64_Mips_External_Rel;
+
+typedef struct
+{
+ /* Address of relocation. */
+ bfd_vma r_offset;
+ /* Symbol index. */
+ unsigned long r_sym;
+ /* Special symbol. */
+ unsigned char r_ssym;
+ /* Third relocation. */
+ unsigned char r_type3;
+ /* Second relocation. */
+ unsigned char r_type2;
+ /* First relocation. */
+ unsigned char r_type;
+} Elf64_Mips_Internal_Rel;
+
+/* An entry in a 64 bit SHT_RELA section. */
+
+typedef struct
+{
+ /* Address of relocation. */
+ unsigned char r_offset[8];
+ /* Symbol index. */
+ unsigned char r_sym[4];
+ /* Special symbol. */
+ unsigned char r_ssym[1];
+ /* Third relocation. */
+ unsigned char r_type3[1];
+ /* Second relocation. */
+ unsigned char r_type2[1];
+ /* First relocation. */
+ unsigned char r_type[1];
+ /* Addend. */
+ unsigned char r_addend[8];
+} Elf64_Mips_External_Rela;
+
+typedef struct
+{
+ /* Address of relocation. */
+ bfd_vma r_offset;
+ /* Symbol index. */
+ unsigned long r_sym;
+ /* Special symbol. */
+ unsigned char r_ssym;
+ /* Third relocation. */
+ unsigned char r_type3;
+ /* Second relocation. */
+ unsigned char r_type2;
+ /* First relocation. */
+ unsigned char r_type;
+ /* Addend. */
+ bfd_signed_vma r_addend;
+} Elf64_Mips_Internal_Rela;
+
+/* MIPS ELF 64 relocation info access macros. */
+#define ELF64_MIPS_R_SSYM(i) (((i) >> 24) & 0xff)
+#define ELF64_MIPS_R_TYPE3(i) (((i) >> 16) & 0xff)
+#define ELF64_MIPS_R_TYPE2(i) (((i) >> 8) & 0xff)
+#define ELF64_MIPS_R_TYPE(i) ((i) & 0xff)
+
+/* Values found in the r_ssym field of a relocation entry. */
+
+/* No relocation. */
+#define RSS_UNDEF 0
+
+/* Value of GP. */
+#define RSS_GP 1
+
+/* Value of GP in object being relocated. */
+#define RSS_GP0 2
+
+/* Address of location being relocated. */
+#define RSS_LOC 3
+
+/* A SHT_MIPS_OPTIONS section contains a series of options, each of
+ which starts with this header. */
+
+typedef struct
+{
+ /* Type of option. */
+ unsigned char kind[1];
+ /* Size of option descriptor, including header. */
+ unsigned char size[1];
+ /* Section index of affected section, or 0 for global option. */
+ unsigned char section[2];
+ /* Information specific to this kind of option. */
+ unsigned char info[4];
+} Elf_External_Options;
+
+typedef struct
+{
+ /* Type of option. */
+ unsigned char kind;
+ /* Size of option descriptor, including header. */
+ unsigned char size;
+ /* Section index of affected section, or 0 for global option. */
+ unsigned short section;
+ /* Information specific to this kind of option. */
+ unsigned long info;
+} Elf_Internal_Options;
+
+/* MIPS ELF option header swapping routines. */
+extern void bfd_mips_elf_swap_options_in
+ (bfd *, const Elf_External_Options *, Elf_Internal_Options *);
+extern void bfd_mips_elf_swap_options_out
+ (bfd *, const Elf_Internal_Options *, Elf_External_Options *);
+
+/* Values which may appear in the kind field of an Elf_Options
+ structure. */
+
+/* Undefined. */
+#define ODK_NULL 0
+
+/* Register usage and GP value. */
+#define ODK_REGINFO 1
+
+/* Exception processing information. */
+#define ODK_EXCEPTIONS 2
+
+/* Section padding information. */
+#define ODK_PAD 3
+
+/* Hardware workarounds performed. */
+#define ODK_HWPATCH 4
+
+/* Fill value used by the linker. */
+#define ODK_FILL 5
+
+/* Reserved space for desktop tools. */
+#define ODK_TAGS 6
+
+/* Hardware workarounds, AND bits when merging. */
+#define ODK_HWAND 7
+
+/* Hardware workarounds, OR bits when merging. */
+#define ODK_HWOR 8
+
+/* GP group to use for text/data sections. */
+#define ODK_GP_GROUP 9
+
+/* ID information. */
+#define ODK_IDENT 10
+
+/* In the 32 bit ABI, an ODK_REGINFO option is just a Elf32_RegInfo
+ structure. In the 64 bit ABI, it is the following structure. The
+ info field of the options header is not used. */
+
+typedef struct
+{
+ /* Mask of general purpose registers used. */
+ unsigned char ri_gprmask[4];
+ /* Padding. */
+ unsigned char ri_pad[4];
+ /* Mask of co-processor registers used. */
+ unsigned char ri_cprmask[4][4];
+ /* GP register value for this object file. */
+ unsigned char ri_gp_value[8];
+} Elf64_External_RegInfo;
+
+typedef struct
+{
+ /* Mask of general purpose registers used. */
+ unsigned long ri_gprmask;
+ /* Padding. */
+ unsigned long ri_pad;
+ /* Mask of co-processor registers used. */
+ unsigned long ri_cprmask[4];
+ /* GP register value for this object file. */
+ bfd_vma ri_gp_value;
+} Elf64_Internal_RegInfo;
+
+typedef struct
+{
+ /* The hash value computed from the name of the corresponding
+ dynamic symbol. */
+ unsigned char ms_hash_value[4];
+ /* Contains both the dynamic relocation index and the symbol flags
+ field. The macros ELF32_MS_REL_INDEX and ELF32_MS_FLAGS are used
+ to access the individual values. The dynamic relocation index
+ identifies the first entry in the .rel.dyn section that
+ references the dynamic symbol corresponding to this msym entry.
+ If the index is 0, no dynamic relocations are associated with the
+ symbol. The symbol flags field is reserved for future use. */
+ unsigned char ms_info[4];
+} Elf32_External_Msym;
+
+typedef struct
+{
+ /* The hash value computed from the name of the corresponding
+ dynamic symbol. */
+ unsigned long ms_hash_value;
+ /* Contains both the dynamic relocation index and the symbol flags
+ field. The macros ELF32_MS_REL_INDEX and ELF32_MS_FLAGS are used
+ to access the individual values. The dynamic relocation index
+ identifies the first entry in the .rel.dyn section that
+ references the dynamic symbol corresponding to this msym entry.
+ If the index is 0, no dynamic relocations are associated with the
+ symbol. The symbol flags field is reserved for future use. */
+ unsigned long ms_info;
+} Elf32_Internal_Msym;
+
+#define ELF32_MS_REL_INDEX(i) ((i) >> 8)
+#define ELF32_MS_FLAGS(i) (i) & 0xff)
+#define ELF32_MS_INFO(r, f) (((r) << 8) + ((f) & 0xff))
+
+/* MIPS ELF reginfo swapping routines. */
+extern void bfd_mips_elf64_swap_reginfo_in
+ (bfd *, const Elf64_External_RegInfo *, Elf64_Internal_RegInfo *);
+extern void bfd_mips_elf64_swap_reginfo_out
+ (bfd *, const Elf64_Internal_RegInfo *, Elf64_External_RegInfo *);
+
+/* Masks for the info work of an ODK_EXCEPTIONS descriptor. */
+#define OEX_FPU_MIN 0x1f /* FPEs which must be enabled. */
+#define OEX_FPU_MAX 0x1f00 /* FPEs which may be enabled. */
+#define OEX_PAGE0 0x10000 /* Page zero must be mapped. */
+#define OEX_SMM 0x20000 /* Force sequential memory mode. */
+#define OEX_FPDBUG 0x40000 /* Force precise floating-point
+ exceptions (debug mode). */
+#define OEX_DISMISS 0x80000 /* Dismiss invalid address faults. */
+
+/* Masks of the FP exceptions for OEX_FPU_MIN and OEX_FPU_MAX. */
+#define OEX_FPU_INVAL 0x10 /* Invalid operation exception. */
+#define OEX_FPU_DIV0 0x08 /* Division by zero exception. */
+#define OEX_FPU_OFLO 0x04 /* Overflow exception. */
+#define OEX_FPU_UFLO 0x02 /* Underflow exception. */
+#define OEX_FPU_INEX 0x01 /* Inexact exception. */
+
+/* Masks for the info word of an ODK_PAD descriptor. */
+#define OPAD_PREFIX 0x01
+#define OPAD_POSTFIX 0x02
+#define OPAD_SYMBOL 0x04
+
+/* Masks for the info word of an ODK_HWPATCH descriptor. */
+#define OHW_R4KEOP 0x00000001 /* R4000 end-of-page patch. */
+#define OHW_R8KPFETCH 0x00000002 /* May need R8000 prefetch patch. */
+#define OHW_R5KEOP 0x00000004 /* R5000 end-of-page patch. */
+#define OHW_R5KCVTL 0x00000008 /* R5000 cvt.[ds].l bug
+ (clean == 1). */
+#define OHW_R10KLDL 0x00000010 /* Needs R10K misaligned
+ load patch. */
+
+/* Masks for the info word of an ODK_IDENT/ODK_GP_GROUP descriptor. */
+#define OGP_GROUP 0x0000ffff /* GP group number. */
+#define OGP_SELF 0xffff0000 /* Self-contained GP groups. */
+
+/* Masks for the info word of an ODK_HWAND/ODK_HWOR descriptor. */
+#define OHWA0_R4KEOP_CHECKED 0x00000001
+#define OHWA0_R4KEOP_CLEAN 0x00000002
+
+
+#endif /* _ELF_MIPS_H */
diff --git a/include/elf/mmix.h b/include/elf/mmix.h
new file mode 100644
index 000000000..89778e447
--- /dev/null
+++ b/include/elf/mmix.h
@@ -0,0 +1,171 @@
+/* MMIX support for BFD.
+ Copyright 2001, 2002, 2003 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MMIX ELF ABI. */
+#ifndef ELF_MMIX_H
+#define ELF_MMIX_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. See the reloc table in bfd/elf64-mmix.c for details. */
+START_RELOC_NUMBERS (elf_mmix_reloc_type)
+ RELOC_NUMBER (R_MMIX_NONE, 0)
+
+ /* Standard absolute relocations. */
+ RELOC_NUMBER (R_MMIX_8, 1)
+ RELOC_NUMBER (R_MMIX_16, 2)
+ RELOC_NUMBER (R_MMIX_24, 3)
+ RELOC_NUMBER (R_MMIX_32, 4)
+ RELOC_NUMBER (R_MMIX_64, 5)
+
+ /* Standard relative relocations. */
+ RELOC_NUMBER (R_MMIX_PC_8, 6)
+ RELOC_NUMBER (R_MMIX_PC_16, 7)
+ RELOC_NUMBER (R_MMIX_PC_24, 8)
+ RELOC_NUMBER (R_MMIX_PC_32, 9)
+ RELOC_NUMBER (R_MMIX_PC_64, 10)
+
+ /* GNU extensions for C++ vtables. */
+ RELOC_NUMBER (R_MMIX_GNU_VTINHERIT, 11)
+ RELOC_NUMBER (R_MMIX_GNU_VTENTRY, 12)
+
+ /* A GETA instruction. */
+ RELOC_NUMBER (R_MMIX_GETA, 13)
+ RELOC_NUMBER (R_MMIX_GETA_1, 14)
+ RELOC_NUMBER (R_MMIX_GETA_2, 15)
+ RELOC_NUMBER (R_MMIX_GETA_3, 16)
+
+ /* A conditional branch instruction. */
+ RELOC_NUMBER (R_MMIX_CBRANCH, 17)
+ RELOC_NUMBER (R_MMIX_CBRANCH_J, 18)
+ RELOC_NUMBER (R_MMIX_CBRANCH_1, 19)
+ RELOC_NUMBER (R_MMIX_CBRANCH_2, 20)
+ RELOC_NUMBER (R_MMIX_CBRANCH_3, 21)
+
+ /* A PUSHJ instruction. */
+ RELOC_NUMBER (R_MMIX_PUSHJ, 22)
+ RELOC_NUMBER (R_MMIX_PUSHJ_1, 23)
+ RELOC_NUMBER (R_MMIX_PUSHJ_2, 24)
+ RELOC_NUMBER (R_MMIX_PUSHJ_3, 25)
+
+ /* A JMP instruction. */
+ RELOC_NUMBER (R_MMIX_JMP, 26)
+ RELOC_NUMBER (R_MMIX_JMP_1, 27)
+ RELOC_NUMBER (R_MMIX_JMP_2, 28)
+ RELOC_NUMBER (R_MMIX_JMP_3, 29)
+
+ /* A relative address such as in a GETA or a branch. */
+ RELOC_NUMBER (R_MMIX_ADDR19, 30)
+
+ /* A relative address such as in a JMP (only). */
+ RELOC_NUMBER (R_MMIX_ADDR27, 31)
+
+ /* A general register or a number 0..255. */
+ RELOC_NUMBER (R_MMIX_REG_OR_BYTE, 32)
+
+ /* A general register. */
+ RELOC_NUMBER (R_MMIX_REG, 33)
+
+ /* A global register and an offset, the global register (allocated at
+ link time) contents plus the offset made equivalent to the relocation
+ expression at link time. The relocation must point at the Y field of
+ an instruction. */
+ RELOC_NUMBER (R_MMIX_BASE_PLUS_OFFSET, 34)
+
+ /* A LOCAL assertion. */
+ RELOC_NUMBER (R_MMIX_LOCAL, 35)
+
+ /* A PUSHJ instruction, generating a stub if it does not reach. */
+ RELOC_NUMBER (R_MMIX_PUSHJ_STUBBABLE, 36)
+END_RELOC_NUMBERS (R_MMIX_max)
+
+
+/* Section Attributes. */
+/* A section containing necessary information for relaxation. */
+#define SHF_MMIX_CANRELAX 0x80000000
+
+/* Symbol attributes. */
+/* A symbol with this section-index is a register. */
+#define SHN_REGISTER SHN_LOPROC
+
+/* This section holds contents for each initialized register, at VMA
+ regno*8. A symbol relative to this section will be transformed to an
+ absolute symbol with the value corresponding to the register number at
+ final link time. A symbol with a value outside the inclusive range
+ 32*8 .. 254*8 is an error. It is highly recommended to only use an
+ upper bound of 253*8 or lower as specified in the (currently
+ unspecified) ABI. */
+#define MMIX_REG_CONTENTS_SECTION_NAME ".MMIX.reg_contents"
+
+/* At link time, a section by this name is created, expected to be
+ included in MMIX_REG_CONTENTS_SECTION_NAME in the output. */
+#define MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME \
+ ".MMIX.reg_contents.linker_allocated"
+
+/* This is a faked section holding symbols with SHN_REGISTER. Don't
+ confuse it with MMIX_REG_CONTENTS_SECTION_NAME; this one has no
+ contents, just values. It is an error for a value in this section to
+ be outside the range 32..255 and it must never become an actual section
+ in an object file. */
+#define MMIX_REG_SECTION_NAME "*REG*"
+
+/* Appended with a number N=0..65535, this is a representation of the
+ mmixal "BSPEC N" ... "ESPEC" directive pair; the contents go into an
+ ELF section by name ".MMIX.spec_data.N". */
+#define MMIX_OTHER_SPEC_SECTION_PREFIX ".MMIX.spec_data."
+
+/* A section SECNAME is noted to start at "__.MMIX.start.SECNAME" by the
+ presence of this symbol. Currently only implemented for ".text"
+ through the symbol "__.MMIX.start..text". */
+#define MMIX_LOC_SECTION_START_SYMBOL_PREFIX "__.MMIX.start."
+
+/* This symbol is always a function. */
+#define MMIX_START_SYMBOL_NAME "Main"
+
+
+/* We smuggle in a few MMO specifics here. We don't make a specific MMO
+ file, since we can't reasonably support MMO without ELF; we have to
+ include this file anyway. */
+
+#define MMO_TEXT_SECTION_NAME ".text"
+#define MMO_DATA_SECTION_NAME ".data"
+
+/* A definition for the flags we put in spec data in files. A copy of our
+ own of some flags to keep immune to BFD flag changes. See section.c of
+ 2001-07-18 for flag documentation. */
+#define MMO_SEC_ALLOC 0x001
+#define MMO_SEC_LOAD 0x002
+#define MMO_SEC_RELOC 0x004
+#define MMO_SEC_READONLY 0x010
+#define MMO_SEC_CODE 0x020
+#define MMO_SEC_DATA 0x040
+#define MMO_SEC_NEVER_LOAD 0x400
+#define MMO_SEC_IS_COMMON 0x8000
+#define MMO_SEC_DEBUGGING 0x10000
+
+#ifdef BFD_ARCH_SIZE
+extern bfd_boolean _bfd_mmix_before_linker_allocation
+ (bfd *, struct bfd_link_info *);
+extern bfd_boolean _bfd_mmix_after_linker_allocation
+ (bfd *, struct bfd_link_info *);
+extern bfd_boolean _bfd_mmix_check_all_relocs
+ (bfd *, struct bfd_link_info *);
+#endif
+
+#endif /* ELF_MMIX_H */
diff --git a/include/elf/mn10200.h b/include/elf/mn10200.h
new file mode 100644
index 000000000..1dfade5cc
--- /dev/null
+++ b/include/elf/mn10200.h
@@ -0,0 +1,39 @@
+/* MN10200 ELF support for BFD.
+ Copyright 1998, 2000 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MN10200 ELF ABI. */
+
+#ifndef _ELF_MN10200_H
+#define _ELF_MN10200_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_mn10200_reloc_type)
+ RELOC_NUMBER (R_MN10200_NONE, 0)
+ RELOC_NUMBER (R_MN10200_32, 1)
+ RELOC_NUMBER (R_MN10200_16, 2)
+ RELOC_NUMBER (R_MN10200_8, 3)
+ RELOC_NUMBER (R_MN10200_24, 4)
+ RELOC_NUMBER (R_MN10200_PCREL8, 5)
+ RELOC_NUMBER (R_MN10200_PCREL16, 6)
+ RELOC_NUMBER (R_MN10200_PCREL24, 7)
+END_RELOC_NUMBERS (R_MN10200_max)
+
+#endif /* _ELF_MN10200_H */
diff --git a/include/elf/mn10300.h b/include/elf/mn10300.h
new file mode 100644
index 000000000..e640096a2
--- /dev/null
+++ b/include/elf/mn10300.h
@@ -0,0 +1,68 @@
+/* MN10300 ELF support for BFD.
+ Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MN10300 ELF ABI. */
+
+#ifndef _ELF_MN10300_H
+#define _ELF_MN10300_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_mn10300_reloc_type)
+ RELOC_NUMBER (R_MN10300_NONE, 0)
+ RELOC_NUMBER (R_MN10300_32, 1)
+ RELOC_NUMBER (R_MN10300_16, 2)
+ RELOC_NUMBER (R_MN10300_8, 3)
+ RELOC_NUMBER (R_MN10300_PCREL32, 4)
+ RELOC_NUMBER (R_MN10300_PCREL16, 5)
+ RELOC_NUMBER (R_MN10300_PCREL8, 6)
+ RELOC_NUMBER (R_MN10300_GNU_VTINHERIT, 7)
+ RELOC_NUMBER (R_MN10300_GNU_VTENTRY, 8)
+ RELOC_NUMBER (R_MN10300_24, 9)
+ RELOC_NUMBER (R_MN10300_GOTPC32, 10)
+ RELOC_NUMBER (R_MN10300_GOTPC16, 11)
+ RELOC_NUMBER (R_MN10300_GOTOFF32, 12)
+ RELOC_NUMBER (R_MN10300_GOTOFF24, 13)
+ RELOC_NUMBER (R_MN10300_GOTOFF16, 14)
+ RELOC_NUMBER (R_MN10300_PLT32, 15)
+ RELOC_NUMBER (R_MN10300_PLT16, 16)
+ RELOC_NUMBER (R_MN10300_GOT32, 17)
+ RELOC_NUMBER (R_MN10300_GOT24, 18)
+ RELOC_NUMBER (R_MN10300_GOT16, 19)
+ RELOC_NUMBER (R_MN10300_COPY, 20)
+ RELOC_NUMBER (R_MN10300_GLOB_DAT, 21)
+ RELOC_NUMBER (R_MN10300_JMP_SLOT, 22)
+ RELOC_NUMBER (R_MN10300_RELATIVE, 23)
+END_RELOC_NUMBERS (R_MN10300_MAX)
+
+/* Machine variant if we know it. This field was invented at Cygnus,
+ but it is hoped that other vendors will adopt it. If some standard
+ is developed, this code should be changed to follow it. */
+
+#define EF_MN10300_MACH 0x00FF0000
+
+/* Cygnus is choosing values between 80 and 9F;
+ 00 - 7F should be left for a future standard;
+ the rest are open. */
+
+#define E_MN10300_MACH_MN10300 0x00810000
+#define E_MN10300_MACH_AM33 0x00820000
+#define E_MN10300_MACH_AM33_2 0x00830000
+#endif /* _ELF_MN10300_H */
diff --git a/include/elf/msp430.h b/include/elf/msp430.h
new file mode 100644
index 000000000..2bf95a629
--- /dev/null
+++ b/include/elf/msp430.h
@@ -0,0 +1,58 @@
+/* MSP430 ELF support for BFD.
+ Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+ Contributed by Dmitry Diky <diwil@mail.ru>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_MSP430_H
+#define _ELF_MSP430_H
+
+#include "elf/reloc-macros.h"
+
+/* Processor specific flags for the ELF header e_flags field. */
+#define EF_MSP430_MACH 0xff
+
+#define E_MSP430_MACH_MSP430x11 11
+#define E_MSP430_MACH_MSP430x11x1 110
+#define E_MSP430_MACH_MSP430x12 12
+#define E_MSP430_MACH_MSP430x13 13
+#define E_MSP430_MACH_MSP430x14 14
+#define E_MSP430_MACH_MSP430x15 15
+#define E_MSP430_MACH_MSP430x16 16
+#define E_MSP430_MACH_MSP430x31 31
+#define E_MSP430_MACH_MSP430x32 32
+#define E_MSP430_MACH_MSP430x33 33
+#define E_MSP430_MACH_MSP430x41 41
+#define E_MSP430_MACH_MSP430x42 42
+#define E_MSP430_MACH_MSP430x43 43
+#define E_MSP430_MACH_MSP430x44 44
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_msp430_reloc_type)
+ RELOC_NUMBER (R_MSP430_NONE, 0)
+ RELOC_NUMBER (R_MSP430_32, 1)
+ RELOC_NUMBER (R_MSP430_10_PCREL, 2)
+ RELOC_NUMBER (R_MSP430_16, 3)
+ RELOC_NUMBER (R_MSP430_16_PCREL, 4)
+ RELOC_NUMBER (R_MSP430_16_BYTE, 5)
+ RELOC_NUMBER (R_MSP430_16_PCREL_BYTE, 6)
+ RELOC_NUMBER (R_MSP430_2X_PCREL, 7)
+ RELOC_NUMBER (R_MSP430_RL_PCREL, 8)
+
+END_RELOC_NUMBERS (R_MSP430_max)
+
+#endif /* _ELF_MSP430_H */
diff --git a/include/elf/openrisc.h b/include/elf/openrisc.h
new file mode 100644
index 000000000..c60990624
--- /dev/null
+++ b/include/elf/openrisc.h
@@ -0,0 +1,39 @@
+/* OpenRISC ELF support for BFD.
+ Copyright 2001 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_OPENRISC_H
+#define _ELF_OPENRISC_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_openrisc_reloc_type)
+ RELOC_NUMBER (R_OPENRISC_NONE, 0)
+ RELOC_NUMBER (R_OPENRISC_INSN_REL_26, 1)
+ RELOC_NUMBER (R_OPENRISC_INSN_ABS_26, 2)
+ RELOC_NUMBER (R_OPENRISC_LO_16_IN_INSN, 3)
+ RELOC_NUMBER (R_OPENRISC_HI_16_IN_INSN, 4)
+ RELOC_NUMBER (R_OPENRISC_8, 5)
+ RELOC_NUMBER (R_OPENRISC_16, 6)
+ RELOC_NUMBER (R_OPENRISC_32, 7)
+ RELOC_NUMBER (R_OPENRISC_GNU_VTINHERIT, 8)
+ RELOC_NUMBER (R_OPENRISC_GNU_VTENTRY, 9)
+END_RELOC_NUMBERS (R_OPENRISC_max)
+
+#endif /* _ELF_OPENRISC_H */
diff --git a/include/elf/or32.h b/include/elf/or32.h
new file mode 100644
index 000000000..14884f330
--- /dev/null
+++ b/include/elf/or32.h
@@ -0,0 +1,62 @@
+/* OR1K ELF support for BFD. Derived from ppc.h.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+ Contributed by Ivan Guzvinec <ivang@opencores.org>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_OR1K_H
+#define _ELF_OR1K_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_or32_reloc_type)
+ RELOC_NUMBER (R_OR32_NONE, 0)
+ RELOC_NUMBER (R_OR32_32, 1)
+ RELOC_NUMBER (R_OR32_16, 2)
+ RELOC_NUMBER (R_OR32_8, 3)
+ RELOC_NUMBER (R_OR32_CONST, 4)
+ RELOC_NUMBER (R_OR32_CONSTH, 5)
+ RELOC_NUMBER (R_OR32_JUMPTARG, 6)
+ RELOC_NUMBER (R_OR32_GNU_VTENTRY, 7)
+ RELOC_NUMBER (R_OR32_GNU_VTINHERIT, 8)
+END_RELOC_NUMBERS (R_OR32_max)
+
+/* Four bit OR32 machine type field. */
+#define EF_OR32_MACH 0x0000000f
+
+/* Various CPU types. */
+#define E_OR32_MACH_BASE 0x00000000
+#define E_OR32_MACH_UNUSED1 0x00000001
+#define E_OR32_MACH_UNUSED2 0x00000002
+#define E_OR32_MACH_UNUSED4 0x00000003
+
+/* Processor specific section headers, sh_type field */
+#define SHT_ORDERED SHT_HIPROC /* Link editor is to sort the \
+ entries in this section \
+ based on the address \
+ specified in the associated \
+ symbol table entry. */
+
+/* Processor specific section flags, sh_flags field */
+#define SHF_EXCLUDE 0x80000000 /* Link editor is to exclude \
+ this section from executable \
+ and shared objects that it \
+ builds when those objects \
+ are not to be furhter \
+ relocated. */
+#endif /* _ELF_OR1K_H */
diff --git a/include/elf/pj.h b/include/elf/pj.h
new file mode 100644
index 000000000..586fd3a36
--- /dev/null
+++ b/include/elf/pj.h
@@ -0,0 +1,44 @@
+/* picoJava ELF support for BFD.
+ Copyright 1999, 2000 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_PJ_H
+#define _ELF_PJ_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+
+START_RELOC_NUMBERS (elf_pj_reloc_type)
+ RELOC_NUMBER (R_PJ_NONE, 0)
+ RELOC_NUMBER (R_PJ_DATA_DIR32, 1)
+ RELOC_NUMBER (R_PJ_CODE_REL32, 2)
+ RELOC_NUMBER (R_PJ_CODE_REL16, 3)
+ RELOC_NUMBER (R_PJ_CODE_DIR32, 6)
+ RELOC_NUMBER (R_PJ_CODE_DIR16, 7)
+ RELOC_NUMBER (R_PJ_CODE_LO16, 13)
+ RELOC_NUMBER (R_PJ_CODE_HI16, 14)
+ RELOC_NUMBER (R_PJ_GNU_VTINHERIT, 15)
+ RELOC_NUMBER (R_PJ_GNU_VTENTRY, 16)
+END_RELOC_NUMBERS (R_PJ_max)
+
+#define EF_PICOJAVA_ARCH 0x0000000f
+#define EF_PICOJAVA_NEWCALLS 0x00000010
+#define EF_PICOJAVA_GNUCALLS 0x00000020 /* The (currently) non standard GNU calling convention */
+
+#endif
diff --git a/include/elf/ppc.h b/include/elf/ppc.h
new file mode 100644
index 000000000..b510f441c
--- /dev/null
+++ b/include/elf/ppc.h
@@ -0,0 +1,164 @@
+/* PPC ELF support for BFD.
+ Copyright 1995, 1996, 1998, 2000, 2001, 2002, 2003
+ Free Software Foundation, Inc.
+
+ By Michael Meissner, Cygnus Support, <meissner@cygnus.com>, from information
+ in the System V Application Binary Interface, PowerPC Processor Supplement
+ and the PowerPC Embedded Application Binary Interface (eabi).
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the PPC ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_PPC_H
+#define _ELF_PPC_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_ppc_reloc_type)
+ RELOC_NUMBER (R_PPC_NONE, 0)
+ RELOC_NUMBER (R_PPC_ADDR32, 1)
+ RELOC_NUMBER (R_PPC_ADDR24, 2)
+ RELOC_NUMBER (R_PPC_ADDR16, 3)
+ RELOC_NUMBER (R_PPC_ADDR16_LO, 4)
+ RELOC_NUMBER (R_PPC_ADDR16_HI, 5)
+ RELOC_NUMBER (R_PPC_ADDR16_HA, 6)
+ RELOC_NUMBER (R_PPC_ADDR14, 7)
+ RELOC_NUMBER (R_PPC_ADDR14_BRTAKEN, 8)
+ RELOC_NUMBER (R_PPC_ADDR14_BRNTAKEN, 9)
+ RELOC_NUMBER (R_PPC_REL24, 10)
+ RELOC_NUMBER (R_PPC_REL14, 11)
+ RELOC_NUMBER (R_PPC_REL14_BRTAKEN, 12)
+ RELOC_NUMBER (R_PPC_REL14_BRNTAKEN, 13)
+ RELOC_NUMBER (R_PPC_GOT16, 14)
+ RELOC_NUMBER (R_PPC_GOT16_LO, 15)
+ RELOC_NUMBER (R_PPC_GOT16_HI, 16)
+ RELOC_NUMBER (R_PPC_GOT16_HA, 17)
+ RELOC_NUMBER (R_PPC_PLTREL24, 18)
+ RELOC_NUMBER (R_PPC_COPY, 19)
+ RELOC_NUMBER (R_PPC_GLOB_DAT, 20)
+ RELOC_NUMBER (R_PPC_JMP_SLOT, 21)
+ RELOC_NUMBER (R_PPC_RELATIVE, 22)
+ RELOC_NUMBER (R_PPC_LOCAL24PC, 23)
+ RELOC_NUMBER (R_PPC_UADDR32, 24)
+ RELOC_NUMBER (R_PPC_UADDR16, 25)
+ RELOC_NUMBER (R_PPC_REL32, 26)
+ RELOC_NUMBER (R_PPC_PLT32, 27)
+ RELOC_NUMBER (R_PPC_PLTREL32, 28)
+ RELOC_NUMBER (R_PPC_PLT16_LO, 29)
+ RELOC_NUMBER (R_PPC_PLT16_HI, 30)
+ RELOC_NUMBER (R_PPC_PLT16_HA, 31)
+ RELOC_NUMBER (R_PPC_SDAREL16, 32)
+ RELOC_NUMBER (R_PPC_SECTOFF, 33)
+ RELOC_NUMBER (R_PPC_SECTOFF_LO, 34)
+ RELOC_NUMBER (R_PPC_SECTOFF_HI, 35)
+ RELOC_NUMBER (R_PPC_SECTOFF_HA, 36)
+ RELOC_NUMBER (R_PPC_ADDR30, 37)
+
+ /* Relocs added to support TLS. */
+ RELOC_NUMBER (R_PPC_TLS, 67)
+ RELOC_NUMBER (R_PPC_DTPMOD32, 68)
+ RELOC_NUMBER (R_PPC_TPREL16, 69)
+ RELOC_NUMBER (R_PPC_TPREL16_LO, 70)
+ RELOC_NUMBER (R_PPC_TPREL16_HI, 71)
+ RELOC_NUMBER (R_PPC_TPREL16_HA, 72)
+ RELOC_NUMBER (R_PPC_TPREL32, 73)
+ RELOC_NUMBER (R_PPC_DTPREL16, 74)
+ RELOC_NUMBER (R_PPC_DTPREL16_LO, 75)
+ RELOC_NUMBER (R_PPC_DTPREL16_HI, 76)
+ RELOC_NUMBER (R_PPC_DTPREL16_HA, 77)
+ RELOC_NUMBER (R_PPC_DTPREL32, 78)
+ RELOC_NUMBER (R_PPC_GOT_TLSGD16, 79)
+ RELOC_NUMBER (R_PPC_GOT_TLSGD16_LO, 80)
+ RELOC_NUMBER (R_PPC_GOT_TLSGD16_HI, 81)
+ RELOC_NUMBER (R_PPC_GOT_TLSGD16_HA, 82)
+ RELOC_NUMBER (R_PPC_GOT_TLSLD16, 83)
+ RELOC_NUMBER (R_PPC_GOT_TLSLD16_LO, 84)
+ RELOC_NUMBER (R_PPC_GOT_TLSLD16_HI, 85)
+ RELOC_NUMBER (R_PPC_GOT_TLSLD16_HA, 86)
+ RELOC_NUMBER (R_PPC_GOT_TPREL16, 87)
+ RELOC_NUMBER (R_PPC_GOT_TPREL16_LO, 88)
+ RELOC_NUMBER (R_PPC_GOT_TPREL16_HI, 89)
+ RELOC_NUMBER (R_PPC_GOT_TPREL16_HA, 90)
+ RELOC_NUMBER (R_PPC_GOT_DTPREL16, 91)
+ RELOC_NUMBER (R_PPC_GOT_DTPREL16_LO, 92)
+ RELOC_NUMBER (R_PPC_GOT_DTPREL16_HI, 93)
+ RELOC_NUMBER (R_PPC_GOT_DTPREL16_HA, 94)
+
+/* The remaining relocs are from the Embedded ELF ABI, and are not
+ in the SVR4 ELF ABI. */
+ RELOC_NUMBER (R_PPC_EMB_NADDR32, 101)
+ RELOC_NUMBER (R_PPC_EMB_NADDR16, 102)
+ RELOC_NUMBER (R_PPC_EMB_NADDR16_LO, 103)
+ RELOC_NUMBER (R_PPC_EMB_NADDR16_HI, 104)
+ RELOC_NUMBER (R_PPC_EMB_NADDR16_HA, 105)
+ RELOC_NUMBER (R_PPC_EMB_SDAI16, 106)
+ RELOC_NUMBER (R_PPC_EMB_SDA2I16, 107)
+ RELOC_NUMBER (R_PPC_EMB_SDA2REL, 108)
+ RELOC_NUMBER (R_PPC_EMB_SDA21, 109)
+ RELOC_NUMBER (R_PPC_EMB_MRKREF, 110)
+ RELOC_NUMBER (R_PPC_EMB_RELSEC16, 111)
+ RELOC_NUMBER (R_PPC_EMB_RELST_LO, 112)
+ RELOC_NUMBER (R_PPC_EMB_RELST_HI, 113)
+ RELOC_NUMBER (R_PPC_EMB_RELST_HA, 114)
+ RELOC_NUMBER (R_PPC_EMB_BIT_FLD, 115)
+ RELOC_NUMBER (R_PPC_EMB_RELSDA, 116)
+
+/* Fake relocations for branch stubs. This will keep them
+ together. */
+#define R_PPC_RELAX32 251
+#define R_PPC_RELAX32PC 252
+
+/* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_PPC_GNU_VTINHERIT, 253)
+ RELOC_NUMBER (R_PPC_GNU_VTENTRY, 254)
+
+/* This is a phony reloc to handle any old fashioned TOC16 references
+ that may still be in object files. */
+ RELOC_NUMBER (R_PPC_TOC16, 255)
+
+END_RELOC_NUMBERS (R_PPC_max)
+
+#define IS_PPC_TLS_RELOC(R) \
+ ((R) >= R_PPC_TLS && (R) <= R_PPC_GOT_DTPREL16_HA)
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+#define EF_PPC_EMB 0x80000000 /* PowerPC embedded flag. */
+
+#define EF_PPC_RELOCATABLE 0x00010000 /* PowerPC -mrelocatable flag. */
+#define EF_PPC_RELOCATABLE_LIB 0x00008000 /* PowerPC -mrelocatable-lib flag. */
+
+/* Processor specific section headers, sh_type field. */
+
+#define SHT_ORDERED SHT_HIPROC /* Link editor is to sort the \
+ entries in this section \
+ based on the address \
+ specified in the associated \
+ symbol table entry. */
+
+/* Processor specific section flags, sh_flags field. */
+
+#define SHF_EXCLUDE 0x80000000 /* Link editor is to exclude \
+ this section from executable \
+ and shared objects that it \
+ builds when those objects \
+ are not to be furhter \
+ relocated. */
+#endif /* _ELF_PPC_H */
diff --git a/include/elf/ppc64.h b/include/elf/ppc64.h
new file mode 100644
index 000000000..ee2b0ea53
--- /dev/null
+++ b/include/elf/ppc64.h
@@ -0,0 +1,156 @@
+/* PPC64 ELF support for BFD.
+ Copyright 2003 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_PPC64_H
+#define _ELF_PPC64_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_ppc64_reloc_type)
+ RELOC_NUMBER (R_PPC64_NONE, 0)
+ RELOC_NUMBER (R_PPC64_ADDR32, 1)
+ RELOC_NUMBER (R_PPC64_ADDR24, 2)
+ RELOC_NUMBER (R_PPC64_ADDR16, 3)
+ RELOC_NUMBER (R_PPC64_ADDR16_LO, 4)
+ RELOC_NUMBER (R_PPC64_ADDR16_HI, 5)
+ RELOC_NUMBER (R_PPC64_ADDR16_HA, 6)
+ RELOC_NUMBER (R_PPC64_ADDR14, 7)
+ RELOC_NUMBER (R_PPC64_ADDR14_BRTAKEN, 8)
+ RELOC_NUMBER (R_PPC64_ADDR14_BRNTAKEN, 9)
+ RELOC_NUMBER (R_PPC64_REL24, 10)
+ RELOC_NUMBER (R_PPC64_REL14, 11)
+ RELOC_NUMBER (R_PPC64_REL14_BRTAKEN, 12)
+ RELOC_NUMBER (R_PPC64_REL14_BRNTAKEN, 13)
+ RELOC_NUMBER (R_PPC64_GOT16, 14)
+ RELOC_NUMBER (R_PPC64_GOT16_LO, 15)
+ RELOC_NUMBER (R_PPC64_GOT16_HI, 16)
+ RELOC_NUMBER (R_PPC64_GOT16_HA, 17)
+ /* 18 unused. 32-bit reloc is R_PPC_PLTREL24. */
+ RELOC_NUMBER (R_PPC64_COPY, 19)
+ RELOC_NUMBER (R_PPC64_GLOB_DAT, 20)
+ RELOC_NUMBER (R_PPC64_JMP_SLOT, 21)
+ RELOC_NUMBER (R_PPC64_RELATIVE, 22)
+ /* 23 unused. 32-bit reloc is R_PPC_LOCAL24PC. */
+ RELOC_NUMBER (R_PPC64_UADDR32, 24)
+ RELOC_NUMBER (R_PPC64_UADDR16, 25)
+ RELOC_NUMBER (R_PPC64_REL32, 26)
+ RELOC_NUMBER (R_PPC64_PLT32, 27)
+ RELOC_NUMBER (R_PPC64_PLTREL32, 28)
+ RELOC_NUMBER (R_PPC64_PLT16_LO, 29)
+ RELOC_NUMBER (R_PPC64_PLT16_HI, 30)
+ RELOC_NUMBER (R_PPC64_PLT16_HA, 31)
+ /* 32 unused. 32-bit reloc is R_PPC_SDAREL16. */
+ RELOC_NUMBER (R_PPC64_SECTOFF, 33)
+ RELOC_NUMBER (R_PPC64_SECTOFF_LO, 34)
+ RELOC_NUMBER (R_PPC64_SECTOFF_HI, 35)
+ RELOC_NUMBER (R_PPC64_SECTOFF_HA, 36)
+ RELOC_NUMBER (R_PPC64_REL30, 37)
+ RELOC_NUMBER (R_PPC64_ADDR64, 38)
+ RELOC_NUMBER (R_PPC64_ADDR16_HIGHER, 39)
+ RELOC_NUMBER (R_PPC64_ADDR16_HIGHERA, 40)
+ RELOC_NUMBER (R_PPC64_ADDR16_HIGHEST, 41)
+ RELOC_NUMBER (R_PPC64_ADDR16_HIGHESTA, 42)
+ RELOC_NUMBER (R_PPC64_UADDR64, 43)
+ RELOC_NUMBER (R_PPC64_REL64, 44)
+ RELOC_NUMBER (R_PPC64_PLT64, 45)
+ RELOC_NUMBER (R_PPC64_PLTREL64, 46)
+ RELOC_NUMBER (R_PPC64_TOC16, 47)
+ RELOC_NUMBER (R_PPC64_TOC16_LO, 48)
+ RELOC_NUMBER (R_PPC64_TOC16_HI, 49)
+ RELOC_NUMBER (R_PPC64_TOC16_HA, 50)
+ RELOC_NUMBER (R_PPC64_TOC, 51)
+ RELOC_NUMBER (R_PPC64_PLTGOT16, 52)
+ RELOC_NUMBER (R_PPC64_PLTGOT16_LO, 53)
+ RELOC_NUMBER (R_PPC64_PLTGOT16_HI, 54)
+ RELOC_NUMBER (R_PPC64_PLTGOT16_HA, 55)
+
+ /* The following relocs were added in the 64-bit PowerPC ELF ABI
+ revision 1.2. */
+ RELOC_NUMBER (R_PPC64_ADDR16_DS, 56)
+ RELOC_NUMBER (R_PPC64_ADDR16_LO_DS, 57)
+ RELOC_NUMBER (R_PPC64_GOT16_DS, 58)
+ RELOC_NUMBER (R_PPC64_GOT16_LO_DS, 59)
+ RELOC_NUMBER (R_PPC64_PLT16_LO_DS, 60)
+ RELOC_NUMBER (R_PPC64_SECTOFF_DS, 61)
+ RELOC_NUMBER (R_PPC64_SECTOFF_LO_DS, 62)
+ RELOC_NUMBER (R_PPC64_TOC16_DS, 63)
+ RELOC_NUMBER (R_PPC64_TOC16_LO_DS, 64)
+ RELOC_NUMBER (R_PPC64_PLTGOT16_DS, 65)
+ RELOC_NUMBER (R_PPC64_PLTGOT16_LO_DS, 66)
+
+ /* Relocs added to support TLS. PowerPC64 ELF ABI revision 1.5. */
+ RELOC_NUMBER (R_PPC64_TLS, 67)
+ RELOC_NUMBER (R_PPC64_DTPMOD64, 68)
+ RELOC_NUMBER (R_PPC64_TPREL16, 69)
+ RELOC_NUMBER (R_PPC64_TPREL16_LO, 70)
+ RELOC_NUMBER (R_PPC64_TPREL16_HI, 71)
+ RELOC_NUMBER (R_PPC64_TPREL16_HA, 72)
+ RELOC_NUMBER (R_PPC64_TPREL64, 73)
+ RELOC_NUMBER (R_PPC64_DTPREL16, 74)
+ RELOC_NUMBER (R_PPC64_DTPREL16_LO, 75)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HI, 76)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HA, 77)
+ RELOC_NUMBER (R_PPC64_DTPREL64, 78)
+ RELOC_NUMBER (R_PPC64_GOT_TLSGD16, 79)
+ RELOC_NUMBER (R_PPC64_GOT_TLSGD16_LO, 80)
+ RELOC_NUMBER (R_PPC64_GOT_TLSGD16_HI, 81)
+ RELOC_NUMBER (R_PPC64_GOT_TLSGD16_HA, 82)
+ RELOC_NUMBER (R_PPC64_GOT_TLSLD16, 83)
+ RELOC_NUMBER (R_PPC64_GOT_TLSLD16_LO, 84)
+ RELOC_NUMBER (R_PPC64_GOT_TLSLD16_HI, 85)
+ RELOC_NUMBER (R_PPC64_GOT_TLSLD16_HA, 86)
+ RELOC_NUMBER (R_PPC64_GOT_TPREL16_DS, 87)
+ RELOC_NUMBER (R_PPC64_GOT_TPREL16_LO_DS, 88)
+ RELOC_NUMBER (R_PPC64_GOT_TPREL16_HI, 89)
+ RELOC_NUMBER (R_PPC64_GOT_TPREL16_HA, 90)
+ RELOC_NUMBER (R_PPC64_GOT_DTPREL16_DS, 91)
+ RELOC_NUMBER (R_PPC64_GOT_DTPREL16_LO_DS, 92)
+ RELOC_NUMBER (R_PPC64_GOT_DTPREL16_HI, 93)
+ RELOC_NUMBER (R_PPC64_GOT_DTPREL16_HA, 94)
+ RELOC_NUMBER (R_PPC64_TPREL16_DS, 95)
+ RELOC_NUMBER (R_PPC64_TPREL16_LO_DS, 96)
+ RELOC_NUMBER (R_PPC64_TPREL16_HIGHER, 97)
+ RELOC_NUMBER (R_PPC64_TPREL16_HIGHERA, 98)
+ RELOC_NUMBER (R_PPC64_TPREL16_HIGHEST, 99)
+ RELOC_NUMBER (R_PPC64_TPREL16_HIGHESTA, 100)
+ RELOC_NUMBER (R_PPC64_DTPREL16_DS, 101)
+ RELOC_NUMBER (R_PPC64_DTPREL16_LO_DS, 102)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HIGHER, 103)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HIGHERA, 104)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HIGHEST, 105)
+ RELOC_NUMBER (R_PPC64_DTPREL16_HIGHESTA, 106)
+
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_PPC64_GNU_VTINHERIT, 253)
+ RELOC_NUMBER (R_PPC64_GNU_VTENTRY, 254)
+
+END_RELOC_NUMBERS (R_PPC64_max)
+
+#define IS_PPC64_TLS_RELOC(R) \
+ ((R) >= R_PPC64_TLS && (R) <= R_PPC64_DTPREL16_HIGHESTA)
+
+/* Specify the start of the .glink section. */
+#define DT_PPC64_GLINK DT_LOPROC
+
+/* Specify the start and size of the .opd section. */
+#define DT_PPC64_OPD (DT_LOPROC + 1)
+#define DT_PPC64_OPDSZ (DT_LOPROC + 2)
+
+#endif /* _ELF_PPC64_H */
diff --git a/include/elf/reloc-macros.h b/include/elf/reloc-macros.h
new file mode 100644
index 000000000..4a3a60f7e
--- /dev/null
+++ b/include/elf/reloc-macros.h
@@ -0,0 +1,101 @@
+/* Generic relocation support for BFD.
+ Copyright 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* These macros are used by the various *.h target specific header
+ files to either generate an enum containing all the known relocations
+ for that target, or if RELOC_MACROS_GEN_FUNC is defined, a recognition
+ function is generated instead. (This is used by binutils/readelf.c)
+
+ Given a header file like this:
+
+ START_RELOC_NUMBERS (foo)
+ RELOC_NUMBER (R_foo_NONE, 0)
+ RELOC_NUMBER (R_foo_32, 1)
+ EMPTY_RELOC (R_foo_good)
+ FAKE_RELOC (R_foo_illegal, 9)
+ END_RELOC_NUMBERS (R_foo_count)
+
+ Then the following will be produced by default (ie if
+ RELOC_MACROS_GEN_FUNC is *not* defined).
+
+ enum foo
+ {
+ R_foo_NONE = 0,
+ R_foo_32 = 1,
+ R_foo_good,
+ R_foo_illegal = 9,
+ R_foo_count
+ };
+
+ If RELOC_MACROS_GEN_FUNC *is* defined, then instead the
+ following function will be generated:
+
+ static const char *foo (unsigned long rtype);
+ static const char *
+ foo (unsigned long rtype)
+ {
+ switch (rtype)
+ {
+ case 0: return "R_foo_NONE";
+ case 1: return "R_foo_32";
+ default: return NULL;
+ }
+ }
+ */
+
+#ifndef _RELOC_MACROS_H
+#define _RELOC_MACROS_H
+
+#ifdef RELOC_MACROS_GEN_FUNC
+
+/* This function takes the relocation number and returns the
+ string version name of the name of that relocation. If
+ the relocation is not recognised, NULL is returned. */
+
+#define START_RELOC_NUMBERS(name) \
+static const char *name (unsigned long rtype); \
+static const char * \
+name (unsigned long rtype) \
+{ \
+ switch (rtype) \
+ {
+
+#define RELOC_NUMBER(name, number) \
+ case number: return #name;
+
+#define FAKE_RELOC(name, number)
+#define EMPTY_RELOC(name)
+
+#define END_RELOC_NUMBERS(name) \
+ default: return NULL; \
+ } \
+}
+
+
+#else /* Default to generating enum. */
+
+#define START_RELOC_NUMBERS(name) enum name {
+#define RELOC_NUMBER(name, number) name = number,
+#define FAKE_RELOC(name, number) name = number,
+#define EMPTY_RELOC(name) name,
+#define END_RELOC_NUMBERS(name) name };
+
+#endif
+
+#endif /* RELOC_MACROS_H */
diff --git a/include/elf/s390.h b/include/elf/s390.h
new file mode 100644
index 000000000..3a1306fa7
--- /dev/null
+++ b/include/elf/s390.h
@@ -0,0 +1,125 @@
+/* 390 ELF support for BFD.
+ Copyright 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Carl B. Pedersen and Martin Schwidefsky.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#ifndef _ELF_390_H
+#define _ELF_390_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Symbol types. */
+
+#define STACK_REG 15 /* Global Stack reg */
+#define BACKL_REG 14 /* Global Backlink reg */
+#define BASE_REG 13 /* Global Base reg */
+#define GOT_REG 12 /* Holds addr of GOT */
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+
+START_RELOC_NUMBERS (elf_s390_reloc_type)
+ RELOC_NUMBER (R_390_NONE, 0) /* No reloc. */
+ RELOC_NUMBER (R_390_8, 1) /* Direct 8 bit. */
+ RELOC_NUMBER (R_390_12, 2) /* Direct 12 bit. */
+ RELOC_NUMBER (R_390_16, 3) /* Direct 16 bit. */
+ RELOC_NUMBER (R_390_32, 4) /* Direct 32 bit. */
+ RELOC_NUMBER (R_390_PC32, 5) /* PC relative 32 bit. */
+ RELOC_NUMBER (R_390_GOT12, 6) /* 12 bit GOT offset. */
+ RELOC_NUMBER (R_390_GOT32, 7) /* 32 bit GOT offset. */
+ RELOC_NUMBER (R_390_PLT32, 8) /* 32 bit PC relative PLT address. */
+ RELOC_NUMBER (R_390_COPY, 9) /* Copy symbol at runtime. */
+ RELOC_NUMBER (R_390_GLOB_DAT, 10) /* Create GOT entry. */
+ RELOC_NUMBER (R_390_JMP_SLOT, 11) /* Create PLT entry. */
+ RELOC_NUMBER (R_390_RELATIVE, 12) /* Adjust by program base. */
+ RELOC_NUMBER (R_390_GOTOFF32, 13) /* 32 bit offset to GOT. */
+ RELOC_NUMBER (R_390_GOTPC, 14) /* 32 bit PC relative offset to GOT. */
+ RELOC_NUMBER (R_390_GOT16, 15) /* 16 bit GOT offset. */
+ RELOC_NUMBER (R_390_PC16, 16) /* PC relative 16 bit. */
+ RELOC_NUMBER (R_390_PC16DBL, 17) /* PC relative 16 bit shifted by 1. */
+ RELOC_NUMBER (R_390_PLT16DBL, 18) /* 16 bit PC rel. PLT shifted by 1. */
+ RELOC_NUMBER (R_390_PC32DBL, 19) /* PC relative 32 bit shifted by 1. */
+ RELOC_NUMBER (R_390_PLT32DBL, 20) /* 32 bit PC rel. PLT shifted by 1. */
+ RELOC_NUMBER (R_390_GOTPCDBL, 21) /* 32 bit PC rel. GOT shifted by 1. */
+ RELOC_NUMBER (R_390_64, 22) /* Direct 64 bit. */
+ RELOC_NUMBER (R_390_PC64, 23) /* PC relative 64 bit. */
+ RELOC_NUMBER (R_390_GOT64, 24) /* 64 bit GOT offset. */
+ RELOC_NUMBER (R_390_PLT64, 25) /* 64 bit PC relative PLT address. */
+ RELOC_NUMBER (R_390_GOTENT, 26) /* 32 bit PC rel. to GOT entry >> 1. */
+ RELOC_NUMBER (R_390_GOTOFF16, 27) /* 16 bit offset to GOT. */
+ RELOC_NUMBER (R_390_GOTOFF64, 28) /* 64 bit offset to GOT. */
+ RELOC_NUMBER (R_390_GOTPLT12, 29) /* 12 bit offset to jump slot. */
+ RELOC_NUMBER (R_390_GOTPLT16, 30) /* 16 bit offset to jump slot. */
+ RELOC_NUMBER (R_390_GOTPLT32, 31) /* 32 bit offset to jump slot. */
+ RELOC_NUMBER (R_390_GOTPLT64, 32) /* 64 bit offset to jump slot. */
+ RELOC_NUMBER (R_390_GOTPLTENT, 33) /* 32 bit rel. offset to jump slot. */
+ RELOC_NUMBER (R_390_PLTOFF16, 34) /* 16 bit offset from GOT to PLT. */
+ RELOC_NUMBER (R_390_PLTOFF32, 35) /* 32 bit offset from GOT to PLT. */
+ RELOC_NUMBER (R_390_PLTOFF64, 36) /* 16 bit offset from GOT to PLT. */
+ RELOC_NUMBER (R_390_TLS_LOAD, 37) /* Tag for load insn in TLS code. */
+ RELOC_NUMBER (R_390_TLS_GDCALL, 38) /* Tag for function call in general
+ dynamic TLS code. */
+ RELOC_NUMBER (R_390_TLS_LDCALL, 39) /* Tag for function call in local
+ dynamic TLS code. */
+ RELOC_NUMBER (R_390_TLS_GD32, 40) /* Direct 32 bit for general dynamic
+ thread local data. */
+ RELOC_NUMBER (R_390_TLS_GD64, 41) /* Direct 64 bit for general dynamic
+ thread local data. */
+ RELOC_NUMBER (R_390_TLS_GOTIE12, 42)/* 12 bit GOT offset for static TLS
+ block offset. */
+ RELOC_NUMBER (R_390_TLS_GOTIE32, 43)/* 32 bit GOT offset for static TLS
+ block offset. */
+ RELOC_NUMBER (R_390_TLS_GOTIE64, 44)/* 64 bit GOT offset for static TLS
+ block offset. */
+ RELOC_NUMBER (R_390_TLS_LDM32, 45) /* Direct 32 bit for local dynamic
+ thread local data in LD code. */
+ RELOC_NUMBER (R_390_TLS_LDM64, 46) /* Direct 64 bit for local dynamic
+ thread local data in LD code. */
+ RELOC_NUMBER (R_390_TLS_IE32, 47) /* 32 bit address of GOT entry for
+ negated static TLS block offset. */
+ RELOC_NUMBER (R_390_TLS_IE64, 48) /* 64 bit address of GOT entry for
+ negated static TLS block offset. */
+ RELOC_NUMBER (R_390_TLS_IEENT, 49) /* 32 bit rel. offset to GOT entry for
+ negated static TLS block offset. */
+ RELOC_NUMBER (R_390_TLS_LE32, 50) /* 32 bit negated offset relative to
+ static TLS block. */
+ RELOC_NUMBER (R_390_TLS_LE64, 51) /* 64 bit negated offset relative to
+ static TLS block. */
+ RELOC_NUMBER (R_390_TLS_LDO32, 52) /* 32 bit offset relative to TLS
+ block. */
+ RELOC_NUMBER (R_390_TLS_LDO64, 53) /* 64 bit offset relative to TLS
+ block. */
+ RELOC_NUMBER (R_390_TLS_DTPMOD, 54) /* ID of module containing symbol. */
+ RELOC_NUMBER (R_390_TLS_DTPOFF, 55) /* Offset in TLS block. */
+ RELOC_NUMBER (R_390_TLS_TPOFF, 56) /* Negate offset in static TLS
+ block. */
+ RELOC_NUMBER (R_390_20, 57) /* Direct 20 bit. */
+ RELOC_NUMBER (R_390_GOT20, 58) /* 20 bit GOT offset. */
+ RELOC_NUMBER (R_390_GOTPLT20, 59) /* 20 bit offset to jump slot. */
+ RELOC_NUMBER (R_390_TLS_GOTIE20, 60)/* 20 bit GOT offset for statis TLS
+ block offset. */
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_390_GNU_VTINHERIT, 250)
+ RELOC_NUMBER (R_390_GNU_VTENTRY, 251)
+END_RELOC_NUMBERS (R_390_max)
+
+#endif /* _ELF_390_H */
+
+
diff --git a/include/elf/sh.h b/include/elf/sh.h
new file mode 100644
index 000000000..ddb387b18
--- /dev/null
+++ b/include/elf/sh.h
@@ -0,0 +1,224 @@
+/* SH ELF support for BFD.
+ Copyright 1998, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_SH_H
+#define _ELF_SH_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+#define EF_SH_MACH_MASK 0x1f
+#define EF_SH_UNKNOWN 0 /* For backwards compatibility. */
+#define EF_SH1 1
+#define EF_SH2 2
+#define EF_SH3 3
+#define EF_SH_DSP 4
+#define EF_SH3_DSP 5
+#define EF_SH4AL_DSP 6
+#define EF_SH3E 8
+#define EF_SH4 9
+#define EF_SH2E 11
+#define EF_SH4A 12
+#define EF_SH2A 13
+
+#define EF_SH4_NOFPU 16
+#define EF_SH4A_NOFPU 17
+#define EF_SH4_NOMMU_NOFPU 18
+#define EF_SH2A_NOFPU 19
+#define EF_SH3_NOMMU 20
+
+/* This one can only mix in objects from other EF_SH5 objects. */
+#define EF_SH5 10
+
+/* Define the mapping from ELF to bfd mach numbers.
+ bfd_mach_* are defined in bfd_in2.h (generated from
+ archures.c). */
+#define EF_SH_BFD_TABLE \
+/* EF_SH_UNKNOWN */ bfd_mach_sh3 , \
+/* EF_SH1 */ bfd_mach_sh , \
+/* EF_SH2 */ bfd_mach_sh2 , \
+/* EF_SH3 */ bfd_mach_sh3 , \
+/* EF_SH_DSP */ bfd_mach_sh_dsp , \
+/* EF_SH3_DSP */ bfd_mach_sh3_dsp , \
+/* EF_SHAL_DSP */ bfd_mach_sh4al_dsp , \
+/* 7 */ 0, \
+/* EF_SH3E */ bfd_mach_sh3e , \
+/* EF_SH4 */ bfd_mach_sh4 , \
+/* EF_SH5 */ 0, \
+/* EF_SH2E */ bfd_mach_sh2e , \
+/* EF_SH4A */ bfd_mach_sh4a , \
+/* EF_SH2A */ bfd_mach_sh2a , \
+/* 14, 15 */ 0, 0, \
+/* EF_SH4_NOFPU */ bfd_mach_sh4_nofpu , \
+/* EF_SH4A_NOFPU */ bfd_mach_sh4a_nofpu , \
+/* EF_SH4_NOMMU_NOFPU */ bfd_mach_sh4_nommu_nofpu, \
+/* EF_SH2A_NOFPU */ bfd_mach_sh2a_nofpu , \
+/* EF_SH3_NOMMU */ bfd_mach_sh3_nommu
+
+/* Convert arch_sh* into EF_SH*. */
+int sh_find_elf_flags (unsigned int arch_set);
+
+/* Convert bfd_mach_* into EF_SH*. */
+int sh_elf_get_flags_from_mach (unsigned long mach);
+
+/* Flags for the st_other symbol field.
+ Keep away from the STV_ visibility flags (bit 0..1). */
+
+/* A reference to this symbol should by default add 1. */
+#define STO_SH5_ISA32 (1 << 2)
+
+/* Section contains only SHmedia code (no SHcompact code). */
+#define SHF_SH5_ISA32 0x40000000
+
+/* Section contains both SHmedia and SHcompact code, and possibly also
+ constants. */
+#define SHF_SH5_ISA32_MIXED 0x20000000
+
+/* If applied to a .cranges section, marks that the section is sorted by
+ increasing cr_addr values. */
+#define SHT_SH5_CR_SORTED 0x80000001
+
+/* Symbol should be handled as DataLabel (attached to global SHN_UNDEF
+ symbols). */
+#define STT_DATALABEL STT_LOPROC
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+/* Relocations 10-32 and 128-255 are GNU extensions.
+ 25..32 and 10 are used for relaxation. */
+START_RELOC_NUMBERS (elf_sh_reloc_type)
+ RELOC_NUMBER (R_SH_NONE, 0)
+ RELOC_NUMBER (R_SH_DIR32, 1)
+ RELOC_NUMBER (R_SH_REL32, 2)
+ RELOC_NUMBER (R_SH_DIR8WPN, 3)
+ RELOC_NUMBER (R_SH_IND12W, 4)
+ RELOC_NUMBER (R_SH_DIR8WPL, 5)
+ RELOC_NUMBER (R_SH_DIR8WPZ, 6)
+ RELOC_NUMBER (R_SH_DIR8BP, 7)
+ RELOC_NUMBER (R_SH_DIR8W, 8)
+ RELOC_NUMBER (R_SH_DIR8L, 9)
+
+ RELOC_NUMBER (R_SH_LOOP_START, 10)
+ RELOC_NUMBER (R_SH_LOOP_END, 11)
+
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC, 12)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC, 21)
+
+ RELOC_NUMBER (R_SH_GNU_VTINHERIT, 22)
+ RELOC_NUMBER (R_SH_GNU_VTENTRY, 23)
+ RELOC_NUMBER (R_SH_SWITCH8, 24)
+ RELOC_NUMBER (R_SH_SWITCH16, 25)
+ RELOC_NUMBER (R_SH_SWITCH32, 26)
+ RELOC_NUMBER (R_SH_USES, 27)
+ RELOC_NUMBER (R_SH_COUNT, 28)
+ RELOC_NUMBER (R_SH_ALIGN, 29)
+ RELOC_NUMBER (R_SH_CODE, 30)
+ RELOC_NUMBER (R_SH_DATA, 31)
+ RELOC_NUMBER (R_SH_LABEL, 32)
+
+ RELOC_NUMBER (R_SH_DIR16, 33)
+ RELOC_NUMBER (R_SH_DIR8, 34)
+ RELOC_NUMBER (R_SH_DIR8UL, 35)
+ RELOC_NUMBER (R_SH_DIR8UW, 36)
+ RELOC_NUMBER (R_SH_DIR8U, 37)
+ RELOC_NUMBER (R_SH_DIR8SW, 38)
+ RELOC_NUMBER (R_SH_DIR8S, 39)
+ RELOC_NUMBER (R_SH_DIR4UL, 40)
+ RELOC_NUMBER (R_SH_DIR4UW, 41)
+ RELOC_NUMBER (R_SH_DIR4U, 42)
+ RELOC_NUMBER (R_SH_PSHA, 43)
+ RELOC_NUMBER (R_SH_PSHL, 44)
+ RELOC_NUMBER (R_SH_DIR5U, 45)
+ RELOC_NUMBER (R_SH_DIR6U, 46)
+ RELOC_NUMBER (R_SH_DIR6S, 47)
+ RELOC_NUMBER (R_SH_DIR10S, 48)
+ RELOC_NUMBER (R_SH_DIR10SW, 49)
+ RELOC_NUMBER (R_SH_DIR10SL, 50)
+ RELOC_NUMBER (R_SH_DIR10SQ, 51)
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC_2, 52)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC_2, 52)
+ RELOC_NUMBER (R_SH_DIR16S, 53)
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC_3, 54)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC_3, 143)
+ RELOC_NUMBER (R_SH_TLS_GD_32, 144)
+ RELOC_NUMBER (R_SH_TLS_LD_32, 145)
+ RELOC_NUMBER (R_SH_TLS_LDO_32, 146)
+ RELOC_NUMBER (R_SH_TLS_IE_32, 147)
+ RELOC_NUMBER (R_SH_TLS_LE_32, 148)
+ RELOC_NUMBER (R_SH_TLS_DTPMOD32, 149)
+ RELOC_NUMBER (R_SH_TLS_DTPOFF32, 150)
+ RELOC_NUMBER (R_SH_TLS_TPOFF32, 151)
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC_4, 152)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC_4, 159)
+ RELOC_NUMBER (R_SH_GOT32, 160)
+ RELOC_NUMBER (R_SH_PLT32, 161)
+ RELOC_NUMBER (R_SH_COPY, 162)
+ RELOC_NUMBER (R_SH_GLOB_DAT, 163)
+ RELOC_NUMBER (R_SH_JMP_SLOT, 164)
+ RELOC_NUMBER (R_SH_RELATIVE, 165)
+ RELOC_NUMBER (R_SH_GOTOFF, 166)
+ RELOC_NUMBER (R_SH_GOTPC, 167)
+ RELOC_NUMBER (R_SH_GOTPLT32, 168)
+ RELOC_NUMBER (R_SH_GOT_LOW16, 169)
+ RELOC_NUMBER (R_SH_GOT_MEDLOW16, 170)
+ RELOC_NUMBER (R_SH_GOT_MEDHI16, 171)
+ RELOC_NUMBER (R_SH_GOT_HI16, 172)
+ RELOC_NUMBER (R_SH_GOTPLT_LOW16, 173)
+ RELOC_NUMBER (R_SH_GOTPLT_MEDLOW16, 174)
+ RELOC_NUMBER (R_SH_GOTPLT_MEDHI16, 175)
+ RELOC_NUMBER (R_SH_GOTPLT_HI16, 176)
+ RELOC_NUMBER (R_SH_PLT_LOW16, 177)
+ RELOC_NUMBER (R_SH_PLT_MEDLOW16, 178)
+ RELOC_NUMBER (R_SH_PLT_MEDHI16, 179)
+ RELOC_NUMBER (R_SH_PLT_HI16, 180)
+ RELOC_NUMBER (R_SH_GOTOFF_LOW16, 181)
+ RELOC_NUMBER (R_SH_GOTOFF_MEDLOW16, 182)
+ RELOC_NUMBER (R_SH_GOTOFF_MEDHI16, 183)
+ RELOC_NUMBER (R_SH_GOTOFF_HI16, 184)
+ RELOC_NUMBER (R_SH_GOTPC_LOW16, 185)
+ RELOC_NUMBER (R_SH_GOTPC_MEDLOW16, 186)
+ RELOC_NUMBER (R_SH_GOTPC_MEDHI16, 187)
+ RELOC_NUMBER (R_SH_GOTPC_HI16, 188)
+ RELOC_NUMBER (R_SH_GOT10BY4, 189)
+ RELOC_NUMBER (R_SH_GOTPLT10BY4, 190)
+ RELOC_NUMBER (R_SH_GOT10BY8, 191)
+ RELOC_NUMBER (R_SH_GOTPLT10BY8, 192)
+ RELOC_NUMBER (R_SH_COPY64, 193)
+ RELOC_NUMBER (R_SH_GLOB_DAT64, 194)
+ RELOC_NUMBER (R_SH_JMP_SLOT64, 195)
+ RELOC_NUMBER (R_SH_RELATIVE64, 196)
+ FAKE_RELOC (R_SH_FIRST_INVALID_RELOC_5, 197)
+ FAKE_RELOC (R_SH_LAST_INVALID_RELOC_5, 241)
+ RELOC_NUMBER (R_SH_SHMEDIA_CODE, 242)
+ RELOC_NUMBER (R_SH_PT_16, 243)
+ RELOC_NUMBER (R_SH_IMMS16, 244)
+ RELOC_NUMBER (R_SH_IMMU16, 245)
+ RELOC_NUMBER (R_SH_IMM_LOW16, 246)
+ RELOC_NUMBER (R_SH_IMM_LOW16_PCREL, 247)
+ RELOC_NUMBER (R_SH_IMM_MEDLOW16, 248)
+ RELOC_NUMBER (R_SH_IMM_MEDLOW16_PCREL, 249)
+ RELOC_NUMBER (R_SH_IMM_MEDHI16, 250)
+ RELOC_NUMBER (R_SH_IMM_MEDHI16_PCREL, 251)
+ RELOC_NUMBER (R_SH_IMM_HI16, 252)
+ RELOC_NUMBER (R_SH_IMM_HI16_PCREL, 253)
+ RELOC_NUMBER (R_SH_64, 254)
+ RELOC_NUMBER (R_SH_64_PCREL, 255)
+END_RELOC_NUMBERS (R_SH_max)
+
+#endif
diff --git a/include/elf/sparc.h b/include/elf/sparc.h
new file mode 100644
index 000000000..2d28d26f9
--- /dev/null
+++ b/include/elf/sparc.h
@@ -0,0 +1,175 @@
+/* SPARC ELF support for BFD.
+ Copyright 1996, 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
+ By Doug Evans, Cygnus Support, <dje@cygnus.com>.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_SPARC_H
+#define _ELF_SPARC_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* These are defined by Sun. */
+
+#define EF_SPARC_32PLUS_MASK 0xffff00 /* bits indicating V8+ type */
+#define EF_SPARC_32PLUS 0x000100 /* generic V8+ features */
+#define EF_SPARC_SUN_US1 0x000200 /* Sun UltraSPARC1 extensions */
+#define EF_SPARC_HAL_R1 0x000400 /* HAL R1 extensions */
+#define EF_SPARC_SUN_US3 0x000800 /* Sun UltraSPARCIII extensions */
+
+#define EF_SPARC_LEDATA 0x800000 /* little endian data */
+
+/* This name is used in the V9 ABI. */
+#define EF_SPARC_EXT_MASK 0xffff00 /* reserved for vendor extensions */
+
+/* V9 memory models */
+#define EF_SPARCV9_MM 0x3 /* memory model mask */
+#define EF_SPARCV9_TSO 0x0 /* total store ordering */
+#define EF_SPARCV9_PSO 0x1 /* partial store ordering */
+#define EF_SPARCV9_RMO 0x2 /* relaxed store ordering */
+
+/* Section indices. */
+
+#define SHN_BEFORE 0xff00 /* used with SHF_ORDERED */
+#define SHN_AFTER 0xff01 /* used with SHF_ORDERED */
+
+/* Section flags. */
+
+#define SHF_EXCLUDE 0x80000000 /* exclude from linking */
+#define SHF_ORDERED 0x40000000 /* treat sh_link,sh_info specially */
+
+/* Symbol types. */
+
+#define STT_REGISTER 13 /* global reg reserved to app. */
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_sparc_reloc_type)
+ RELOC_NUMBER (R_SPARC_NONE, 0)
+ RELOC_NUMBER (R_SPARC_8, 1)
+ RELOC_NUMBER (R_SPARC_16, 2)
+ RELOC_NUMBER (R_SPARC_32, 3)
+ RELOC_NUMBER (R_SPARC_DISP8, 4)
+ RELOC_NUMBER (R_SPARC_DISP16, 5)
+ RELOC_NUMBER (R_SPARC_DISP32, 6)
+ RELOC_NUMBER (R_SPARC_WDISP30, 7)
+ RELOC_NUMBER (R_SPARC_WDISP22, 8)
+ RELOC_NUMBER (R_SPARC_HI22, 9)
+ RELOC_NUMBER (R_SPARC_22, 10)
+ RELOC_NUMBER (R_SPARC_13, 11)
+ RELOC_NUMBER (R_SPARC_LO10, 12)
+ RELOC_NUMBER (R_SPARC_GOT10, 13)
+ RELOC_NUMBER (R_SPARC_GOT13, 14)
+ RELOC_NUMBER (R_SPARC_GOT22, 15)
+ RELOC_NUMBER (R_SPARC_PC10, 16)
+ RELOC_NUMBER (R_SPARC_PC22, 17)
+ RELOC_NUMBER (R_SPARC_WPLT30, 18)
+ RELOC_NUMBER (R_SPARC_COPY, 19)
+ RELOC_NUMBER (R_SPARC_GLOB_DAT, 20)
+ RELOC_NUMBER (R_SPARC_JMP_SLOT, 21)
+ RELOC_NUMBER (R_SPARC_RELATIVE, 22)
+ RELOC_NUMBER (R_SPARC_UA32, 23)
+
+ /* ??? These 6 relocs are new but not currently used. For binary
+ compatibility in the sparc64-elf toolchain, we leave them out.
+ A non-binary upward compatible change is expected for sparc64-elf. */
+#ifndef SPARC64_OLD_RELOCS
+ /* ??? New relocs on the UltraSPARC. Not sure what they're for yet. */
+ RELOC_NUMBER (R_SPARC_PLT32, 24)
+ RELOC_NUMBER (R_SPARC_HIPLT22, 25)
+ RELOC_NUMBER (R_SPARC_LOPLT10, 26)
+ RELOC_NUMBER (R_SPARC_PCPLT32, 27)
+ RELOC_NUMBER (R_SPARC_PCPLT22, 28)
+ RELOC_NUMBER (R_SPARC_PCPLT10, 29)
+#endif
+
+ /* v9 relocs */
+ RELOC_NUMBER (R_SPARC_10, 30)
+ RELOC_NUMBER (R_SPARC_11, 31)
+ RELOC_NUMBER (R_SPARC_64, 32)
+ RELOC_NUMBER (R_SPARC_OLO10, 33)
+ RELOC_NUMBER (R_SPARC_HH22, 34)
+ RELOC_NUMBER (R_SPARC_HM10, 35)
+ RELOC_NUMBER (R_SPARC_LM22, 36)
+ RELOC_NUMBER (R_SPARC_PC_HH22, 37)
+ RELOC_NUMBER (R_SPARC_PC_HM10, 38)
+ RELOC_NUMBER (R_SPARC_PC_LM22, 39)
+ RELOC_NUMBER (R_SPARC_WDISP16, 40)
+ RELOC_NUMBER (R_SPARC_WDISP19, 41)
+ RELOC_NUMBER (R_SPARC_UNUSED_42, 42)
+ RELOC_NUMBER (R_SPARC_7, 43)
+ RELOC_NUMBER (R_SPARC_5, 44)
+ RELOC_NUMBER (R_SPARC_6, 45)
+ RELOC_NUMBER (R_SPARC_DISP64, 46)
+ RELOC_NUMBER (R_SPARC_PLT64, 47)
+ RELOC_NUMBER (R_SPARC_HIX22, 48)
+ RELOC_NUMBER (R_SPARC_LOX10, 49)
+ RELOC_NUMBER (R_SPARC_H44, 50)
+ RELOC_NUMBER (R_SPARC_M44, 51)
+ RELOC_NUMBER (R_SPARC_L44, 52)
+ RELOC_NUMBER (R_SPARC_REGISTER, 53)
+ RELOC_NUMBER (R_SPARC_UA64, 54)
+ RELOC_NUMBER (R_SPARC_UA16, 55)
+
+ RELOC_NUMBER (R_SPARC_TLS_GD_HI22, 56)
+ RELOC_NUMBER (R_SPARC_TLS_GD_LO10, 57)
+ RELOC_NUMBER (R_SPARC_TLS_GD_ADD, 58)
+ RELOC_NUMBER (R_SPARC_TLS_GD_CALL, 59)
+ RELOC_NUMBER (R_SPARC_TLS_LDM_HI22, 60)
+ RELOC_NUMBER (R_SPARC_TLS_LDM_LO10, 61)
+ RELOC_NUMBER (R_SPARC_TLS_LDM_ADD, 62)
+ RELOC_NUMBER (R_SPARC_TLS_LDM_CALL, 63)
+ RELOC_NUMBER (R_SPARC_TLS_LDO_HIX22, 64)
+ RELOC_NUMBER (R_SPARC_TLS_LDO_LOX10, 65)
+ RELOC_NUMBER (R_SPARC_TLS_LDO_ADD, 66)
+ RELOC_NUMBER (R_SPARC_TLS_IE_HI22, 67)
+ RELOC_NUMBER (R_SPARC_TLS_IE_LO10, 68)
+ RELOC_NUMBER (R_SPARC_TLS_IE_LD, 69)
+ RELOC_NUMBER (R_SPARC_TLS_IE_LDX, 70)
+ RELOC_NUMBER (R_SPARC_TLS_IE_ADD, 71)
+ RELOC_NUMBER (R_SPARC_TLS_LE_HIX22, 72)
+ RELOC_NUMBER (R_SPARC_TLS_LE_LOX10, 73)
+ RELOC_NUMBER (R_SPARC_TLS_DTPMOD32, 74)
+ RELOC_NUMBER (R_SPARC_TLS_DTPMOD64, 75)
+ RELOC_NUMBER (R_SPARC_TLS_DTPOFF32, 76)
+ RELOC_NUMBER (R_SPARC_TLS_DTPOFF64, 77)
+ RELOC_NUMBER (R_SPARC_TLS_TPOFF32, 78)
+ RELOC_NUMBER (R_SPARC_TLS_TPOFF64, 79)
+
+ EMPTY_RELOC (R_SPARC_max_std)
+
+ RELOC_NUMBER (R_SPARC_GNU_VTINHERIT, 250)
+ RELOC_NUMBER (R_SPARC_GNU_VTENTRY, 251)
+ RELOC_NUMBER (R_SPARC_REV32, 252)
+
+END_RELOC_NUMBERS (R_SPARC_max)
+
+/* Relocation macros. */
+
+#define ELF64_R_TYPE_DATA(info) \
+ (((bfd_signed_vma)(ELF64_R_TYPE(info) >> 8) ^ 0x800000) - 0x800000)
+#define ELF64_R_TYPE_ID(info) \
+ ((info) & 0xff)
+#define ELF64_R_TYPE_INFO(data, type) \
+ (((bfd_vma) ((data) & 0xffffff) << 8) | (bfd_vma) (type))
+
+/* Values for Elf64_Dyn.d_tag. */
+
+#define DT_SPARC_REGISTER 0x70000001
+
+#endif /* _ELF_SPARC_H */
diff --git a/include/elf/v850.h b/include/elf/v850.h
new file mode 100644
index 000000000..7d5110b33
--- /dev/null
+++ b/include/elf/v850.h
@@ -0,0 +1,121 @@
+/* V850 ELF support for BFD.
+ Copyright 1997, 1998, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Created by Michael Meissner, Cygnus Support <meissner@cygnus.com>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This file holds definitions specific to the MIPS ELF ABI. Note
+ that most of this is not actually implemented by BFD. */
+
+#ifndef _ELF_V850_H
+#define _ELF_V850_H
+
+/* Processor specific flags for the ELF header e_flags field. */
+
+/* Four bit V850 architecture field. */
+#define EF_V850_ARCH 0xf0000000
+
+/* v850 code. */
+#define E_V850_ARCH 0x00000000
+
+/* v850e code. */
+#define E_V850E_ARCH 0x10000000
+
+/* v850e1 code. */
+#define E_V850E1_ARCH 0x20000000
+
+
+/* Flags for the st_other field. */
+#define V850_OTHER_SDA 0x01 /* Symbol had SDA relocations. */
+#define V850_OTHER_ZDA 0x02 /* Symbol had ZDA relocations. */
+#define V850_OTHER_TDA 0x04 /* Symbol had TDA relocations. */
+#define V850_OTHER_TDA_BYTE 0x08 /* Symbol had TDA byte relocations. */
+#define V850_OTHER_ERROR 0x80 /* Symbol had an error reported. */
+
+/* V850 relocations. */
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (v850_reloc_type)
+ RELOC_NUMBER (R_V850_NONE, 0)
+ RELOC_NUMBER (R_V850_9_PCREL, 1)
+ RELOC_NUMBER (R_V850_22_PCREL, 2)
+ RELOC_NUMBER (R_V850_HI16_S, 3)
+ RELOC_NUMBER (R_V850_HI16, 4)
+ RELOC_NUMBER (R_V850_LO16, 5)
+ RELOC_NUMBER (R_V850_ABS32, 6)
+ RELOC_NUMBER (R_V850_16, 7)
+ RELOC_NUMBER (R_V850_8, 8)
+ RELOC_NUMBER( R_V850_SDA_16_16_OFFSET, 9) /* For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi */
+ RELOC_NUMBER( R_V850_SDA_15_16_OFFSET, 10) /* For ld.w, ld.h, ld.hu, st.w, st.h */
+ RELOC_NUMBER( R_V850_ZDA_16_16_OFFSET, 11) /* For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi */
+ RELOC_NUMBER( R_V850_ZDA_15_16_OFFSET, 12) /* For ld.w, ld.h, ld.hu, st.w, st.h */
+ RELOC_NUMBER( R_V850_TDA_6_8_OFFSET, 13) /* For sst.w, sld.w */
+ RELOC_NUMBER( R_V850_TDA_7_8_OFFSET, 14) /* For sst.h, sld.h */
+ RELOC_NUMBER( R_V850_TDA_7_7_OFFSET, 15) /* For sst.b, sld.b */
+ RELOC_NUMBER( R_V850_TDA_16_16_OFFSET, 16) /* For set1, clr1, not1, tst1, movea, movhi */
+ RELOC_NUMBER( R_V850_TDA_4_5_OFFSET, 17) /* For sld.hu */
+ RELOC_NUMBER( R_V850_TDA_4_4_OFFSET, 18) /* For sld.bu */
+ RELOC_NUMBER( R_V850_SDA_16_16_SPLIT_OFFSET, 19) /* For ld.bu */
+ RELOC_NUMBER( R_V850_ZDA_16_16_SPLIT_OFFSET, 20) /* For ld.bu */
+ RELOC_NUMBER( R_V850_CALLT_6_7_OFFSET, 21) /* For callt */
+ RELOC_NUMBER( R_V850_CALLT_16_16_OFFSET, 22) /* For callt */
+ RELOC_NUMBER (R_V850_GNU_VTINHERIT, 23)
+ RELOC_NUMBER (R_V850_GNU_VTENTRY, 24)
+ RELOC_NUMBER (R_V850_LONGCALL, 25)
+ RELOC_NUMBER (R_V850_LONGJUMP, 26)
+ RELOC_NUMBER (R_V850_ALIGN, 27)
+ RELOC_NUMBER (R_V850_REL32, 28)
+END_RELOC_NUMBERS (R_V850_max)
+
+
+/* Processor specific section indices. These sections do not actually
+ exist. Symbols with a st_shndx field corresponding to one of these
+ values have a special meaning. */
+
+/* Small data area common symbol. */
+#define SHN_V850_SCOMMON 0xff00
+
+/* Tiny data area common symbol. */
+#define SHN_V850_TCOMMON 0xff01
+
+/* Zero data area common symbol. */
+#define SHN_V850_ZCOMMON 0xff02
+
+
+/* Processor specific section types. */
+
+/* Section contains the .scommon data. */
+#define SHT_V850_SCOMMON 0x70000000
+
+/* Section contains the .scommon data. */
+#define SHT_V850_TCOMMON 0x70000001
+
+/* Section contains the .scommon data. */
+#define SHT_V850_ZCOMMON 0x70000002
+
+/* Processor specific section flags. */
+
+/* This section must be in the small data area (pointed to by GP). */
+#define SHF_V850_GPREL 0x10000000
+
+/* This section must be in the tiny data area (pointed to by EP). */
+#define SHF_V850_EPREL 0x20000000
+
+/* This section must be in the zero data area (pointed to by R0). */
+#define SHF_V850_R0REL 0x40000000
+
+#endif /* _ELF_V850_H */
diff --git a/include/elf/vax.h b/include/elf/vax.h
new file mode 100644
index 000000000..c1b5c2b30
--- /dev/null
+++ b/include/elf/vax.h
@@ -0,0 +1,51 @@
+/* VAX ELF support for BFD.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+ Contributed by Matt Thomas <matt@3am-software.com>.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_VAX_H
+#define _ELF_VAX_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_vax_reloc_type)
+ RELOC_NUMBER (R_VAX_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_VAX_32, 1) /* Direct 32 bit */
+ RELOC_NUMBER (R_VAX_16, 2) /* Direct 16 bit */
+ RELOC_NUMBER (R_VAX_8, 3) /* Direct 8 bit */
+ RELOC_NUMBER (R_VAX_PC32, 4) /* PC relative 32 bit */
+ RELOC_NUMBER (R_VAX_PC16, 5) /* PC relative 16 bit */
+ RELOC_NUMBER (R_VAX_PC8, 6) /* PC relative 8 bit */
+ RELOC_NUMBER (R_VAX_GOT32, 7) /* 32 bit PC relative GOT entry */
+ RELOC_NUMBER (R_VAX_PLT32, 13) /* 32 bit PC relative PLT address */
+ RELOC_NUMBER (R_VAX_COPY, 19) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_VAX_GLOB_DAT, 20) /* Create GOT entry */
+ RELOC_NUMBER (R_VAX_JMP_SLOT, 21) /* Create PLT entry */
+ RELOC_NUMBER (R_VAX_RELATIVE, 22) /* Adjust by program base */
+ /* These are GNU extensions to enable C++ vtable garbage collection. */
+ RELOC_NUMBER (R_VAX_GNU_VTINHERIT, 23)
+ RELOC_NUMBER (R_VAX_GNU_VTENTRY, 24)
+END_RELOC_NUMBERS (R_VAX_max)
+
+/* Processor specific flags for the ELF header e_flags field. */
+#define EF_VAX_NONPIC 0x0001 /* Object contains non-PIC code */
+#define EF_VAX_DFLOAT 0x0100 /* Object contains D-Float insn. */
+#define EF_VAX_GFLOAT 0x0200 /* Object contains G-Float insn. */
+
+#endif
diff --git a/include/elf/x86-64.h b/include/elf/x86-64.h
new file mode 100644
index 000000000..7e9100dba
--- /dev/null
+++ b/include/elf/x86-64.h
@@ -0,0 +1,56 @@
+/* x86_64 ELF support for BFD.
+ Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+ Contributed by Jan Hubicka <jh@suse.cz>
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_X86_64_H
+#define _ELF_X86_64_H
+
+#include "elf/reloc-macros.h"
+
+START_RELOC_NUMBERS (elf_x86_64_reloc_type)
+ RELOC_NUMBER (R_X86_64_NONE, 0) /* No reloc */
+ RELOC_NUMBER (R_X86_64_64, 1) /* Direct 64 bit */
+ RELOC_NUMBER (R_X86_64_PC32, 2) /* PC relative 32 bit signed */
+ RELOC_NUMBER (R_X86_64_GOT32, 3) /* 32 bit GOT entry */
+ RELOC_NUMBER (R_X86_64_PLT32, 4) /* 32 bit PLT address */
+ RELOC_NUMBER (R_X86_64_COPY, 5) /* Copy symbol at runtime */
+ RELOC_NUMBER (R_X86_64_GLOB_DAT, 6) /* Create GOT entry */
+ RELOC_NUMBER (R_X86_64_JUMP_SLOT,7) /* Create PLT entry */
+ RELOC_NUMBER (R_X86_64_RELATIVE, 8) /* Adjust by program base */
+ RELOC_NUMBER (R_X86_64_GOTPCREL, 9) /* 32 bit signed pc relative
+ offset to GOT */
+ RELOC_NUMBER (R_X86_64_32, 10) /* Direct 32 bit zero extended */
+ RELOC_NUMBER (R_X86_64_32S, 11) /* Direct 32 bit sign extended */
+ RELOC_NUMBER (R_X86_64_16, 12) /* Direct 16 bit zero extended */
+ RELOC_NUMBER (R_X86_64_PC16, 13) /* 16 bit sign extended pc relative*/
+ RELOC_NUMBER (R_X86_64_8, 14) /* Direct 8 bit sign extended */
+ RELOC_NUMBER (R_X86_64_PC8, 15) /* 8 bit sign extended pc relative*/
+ RELOC_NUMBER (R_X86_64_DTPMOD64, 16) /* ID of module containing symbol */
+ RELOC_NUMBER (R_X86_64_DTPOFF64, 17) /* Offset in TLS block */
+ RELOC_NUMBER (R_X86_64_TPOFF64, 18) /* Offset in initial TLS block */
+ RELOC_NUMBER (R_X86_64_TLSGD, 19) /* PC relative offset to GD GOT block */
+ RELOC_NUMBER (R_X86_64_TLSLD, 20) /* PC relative offset to LD GOT block */
+ RELOC_NUMBER (R_X86_64_DTPOFF32, 21) /* Offset in TLS block */
+ RELOC_NUMBER (R_X86_64_GOTTPOFF, 22) /* PC relative offset to IE GOT entry */
+ RELOC_NUMBER (R_X86_64_TPOFF32, 23) /* Offset in initial TLS block */
+ RELOC_NUMBER (R_X86_64_GNU_VTINHERIT, 250) /* GNU C++ hack */
+ RELOC_NUMBER (R_X86_64_GNU_VTENTRY, 251) /* GNU C++ hack */
+END_RELOC_NUMBERS (R_X86_64_max)
+
+#endif
diff --git a/include/elf/xstormy16.h b/include/elf/xstormy16.h
new file mode 100644
index 000000000..6b1e98f57
--- /dev/null
+++ b/include/elf/xstormy16.h
@@ -0,0 +1,57 @@
+/* XSTORMY16 ELF support for BFD.
+ Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _ELF_XSTORMY16_H
+#define _ELF_XSTORMY16_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_xstormy16_reloc_type)
+ RELOC_NUMBER (R_XSTORMY16_NONE, 0)
+
+ RELOC_NUMBER (R_XSTORMY16_32, 1)
+ RELOC_NUMBER (R_XSTORMY16_16, 2)
+ RELOC_NUMBER (R_XSTORMY16_8, 3)
+ RELOC_NUMBER (R_XSTORMY16_PC32, 4)
+ RELOC_NUMBER (R_XSTORMY16_PC16, 5)
+ RELOC_NUMBER (R_XSTORMY16_PC8, 6)
+
+ RELOC_NUMBER (R_XSTORMY16_REL_12, 7)
+ RELOC_NUMBER (R_XSTORMY16_24, 8)
+ RELOC_NUMBER (R_XSTORMY16_FPTR16, 9)
+
+ RELOC_NUMBER (R_XSTORMY16_LO16, 10)
+ RELOC_NUMBER (R_XSTORMY16_HI16, 11)
+ RELOC_NUMBER (R_XSTORMY16_12, 12)
+
+ RELOC_NUMBER (R_XSTORMY16_GNU_VTINHERIT, 128)
+ RELOC_NUMBER (R_XSTORMY16_GNU_VTENTRY, 129)
+END_RELOC_NUMBERS (R_XSTORMY16_max)
+
+/* Define the data & instruction memory discriminator. In a linked
+ executable, an symbol should be deemed to point to an instruction
+ if ((address & XSTORMY16_INSN_MASK) == XSTORMY16_INSN_VALUE), and similarly
+ for the data space. See also `ld/emulparams/elf32xstormy16.sh'. */
+#define XSTORMY16_DATA_MASK 0xffc00000
+#define XSTORMY16_DATA_VALUE 0x00000000
+#define XSTORMY16_INSN_MASK 0xffc00000
+#define XSTORMY16_INSN_VALUE 0x00400000
+
+#endif /* _ELF_XSTORMY16_H */
diff --git a/include/elf/xtensa.h b/include/elf/xtensa.h
new file mode 100644
index 000000000..6c584c715
--- /dev/null
+++ b/include/elf/xtensa.h
@@ -0,0 +1,88 @@
+/* Xtensa ELF support for BFD.
+ Copyright 2003 Free Software Foundation, Inc.
+ Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ USA. */
+
+/* This file holds definitions specific to the Xtensa ELF ABI. */
+
+#ifndef _ELF_XTENSA_H
+#define _ELF_XTENSA_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocations. */
+START_RELOC_NUMBERS (elf_xtensa_reloc_type)
+ RELOC_NUMBER (R_XTENSA_NONE, 0)
+ RELOC_NUMBER (R_XTENSA_32, 1)
+ RELOC_NUMBER (R_XTENSA_RTLD, 2)
+ RELOC_NUMBER (R_XTENSA_GLOB_DAT, 3)
+ RELOC_NUMBER (R_XTENSA_JMP_SLOT, 4)
+ RELOC_NUMBER (R_XTENSA_RELATIVE, 5)
+ RELOC_NUMBER (R_XTENSA_PLT, 6)
+ RELOC_NUMBER (R_XTENSA_OP0, 8)
+ RELOC_NUMBER (R_XTENSA_OP1, 9)
+ RELOC_NUMBER (R_XTENSA_OP2, 10)
+ RELOC_NUMBER (R_XTENSA_ASM_EXPAND, 11)
+ RELOC_NUMBER (R_XTENSA_ASM_SIMPLIFY, 12)
+ RELOC_NUMBER (R_XTENSA_GNU_VTINHERIT, 15)
+ RELOC_NUMBER (R_XTENSA_GNU_VTENTRY, 16)
+END_RELOC_NUMBERS (R_XTENSA_max)
+
+/* Processor-specific flags for the ELF header e_flags field. */
+
+/* Four-bit Xtensa machine type field. */
+#define EF_XTENSA_MACH 0x0000000f
+
+/* Various CPU types. */
+#define E_XTENSA_MACH 0x00000000
+
+/* Leave bits 0xf0 alone in case we ever have more than 16 cpu types.
+ Highly unlikely, but what the heck. */
+
+#define EF_XTENSA_XT_INSN 0x00000100
+#define EF_XTENSA_XT_LIT 0x00000200
+
+
+/* Processor-specific dynamic array tags. */
+
+/* Offset of the table that records the GOT location(s). */
+#define DT_XTENSA_GOT_LOC_OFF 0x70000000
+
+/* Number of entries in the GOT location table. */
+#define DT_XTENSA_GOT_LOC_SZ 0x70000001
+
+
+/* Definitions for instruction and literal property tables. The
+ tables for ".gnu.linkonce.*" sections are placed in the following
+ sections:
+
+ instruction tables: .gnu.linkonce.x.*
+ literal tables: .gnu.linkonce.p.*
+*/
+
+#define XTENSA_INSN_SEC_NAME ".xt.insn"
+#define XTENSA_LIT_SEC_NAME ".xt.lit"
+
+typedef struct property_table_entry_t
+{
+ bfd_vma address;
+ bfd_vma size;
+} property_table_entry;
+
+#endif /* _ELF_XTENSA_H */
diff --git a/include/fibheap.h b/include/fibheap.h
new file mode 100644
index 000000000..4eebaf13b
--- /dev/null
+++ b/include/fibheap.h
@@ -0,0 +1,86 @@
+/* A Fibonacci heap datatype.
+ Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+ Contributed by Daniel Berlin (dan@cgsoftware.com).
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+/* Fibonacci heaps are somewhat complex, but, there's an article in
+ DDJ that explains them pretty well:
+
+ http://www.ddj.com/articles/1997/9701/9701o/9701o.htm?topic=algoritms
+
+ Introduction to algorithms by Corman and Rivest also goes over them.
+
+ The original paper that introduced them is "Fibonacci heaps and their
+ uses in improved network optimization algorithms" by Tarjan and
+ Fredman (JACM 34(3), July 1987).
+
+ Amortized and real worst case time for operations:
+
+ ExtractMin: O(lg n) amortized. O(n) worst case.
+ DecreaseKey: O(1) amortized. O(lg n) worst case.
+ Insert: O(2) amortized. O(1) actual.
+ Union: O(1) amortized. O(1) actual. */
+
+#ifndef _FIBHEAP_H_
+#define _FIBHEAP_H_
+
+#include "ansidecl.h"
+
+typedef long fibheapkey_t;
+
+typedef struct fibheap
+{
+ size_t nodes;
+ struct fibnode *min;
+ struct fibnode *root;
+} *fibheap_t;
+
+typedef struct fibnode
+{
+ struct fibnode *parent;
+ struct fibnode *child;
+ struct fibnode *left;
+ struct fibnode *right;
+ fibheapkey_t key;
+ void *data;
+#ifdef __GNUC__
+ __extension__ unsigned long int degree : 31;
+ __extension__ unsigned long int mark : 1;
+#else
+ unsigned int degree : 31;
+ unsigned int mark : 1;
+#endif
+} *fibnode_t;
+
+extern fibheap_t fibheap_new PARAMS ((void));
+extern fibnode_t fibheap_insert PARAMS ((fibheap_t, fibheapkey_t, void *));
+extern int fibheap_empty PARAMS ((fibheap_t));
+extern fibheapkey_t fibheap_min_key PARAMS ((fibheap_t));
+extern fibheapkey_t fibheap_replace_key PARAMS ((fibheap_t, fibnode_t,
+ fibheapkey_t));
+extern void *fibheap_replace_key_data PARAMS ((fibheap_t, fibnode_t,
+ fibheapkey_t, void *));
+extern void *fibheap_extract_min PARAMS ((fibheap_t));
+extern void *fibheap_min PARAMS ((fibheap_t));
+extern void *fibheap_replace_data PARAMS ((fibheap_t, fibnode_t, void *));
+extern void *fibheap_delete_node PARAMS ((fibheap_t, fibnode_t));
+extern void fibheap_delete PARAMS ((fibheap_t));
+extern fibheap_t fibheap_union PARAMS ((fibheap_t, fibheap_t));
+
+#endif /* _FIBHEAP_H_ */
diff --git a/include/filenames.h b/include/filenames.h
new file mode 100644
index 000000000..ca9e2732a
--- /dev/null
+++ b/include/filenames.h
@@ -0,0 +1,51 @@
+/* Macros for taking apart, interpreting and processing file names.
+
+ These are here because some non-Posix (a.k.a. DOSish) systems have
+ drive letter brain-damage at the beginning of an absolute file name,
+ use forward- and back-slash in path names interchangeably, and
+ some of them have case-insensitive file names.
+
+ Copyright 2000, 2001 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef FILENAMES_H
+#define FILENAMES_H
+
+#if defined(__MSDOS__) || defined(_WIN32) || defined(__OS2__) || defined (__CYGWIN__)
+
+#ifndef HAVE_DOS_BASED_FILE_SYSTEM
+#define HAVE_DOS_BASED_FILE_SYSTEM 1
+#endif
+
+#define IS_DIR_SEPARATOR(c) ((c) == '/' || (c) == '\\')
+/* Note that IS_ABSOLUTE_PATH accepts d:foo as well, although it is
+ only semi-absolute. This is because the users of IS_ABSOLUTE_PATH
+ want to know whether to prepend the current working directory to
+ a file name, which should not be done with a name like d:foo. */
+#define IS_ABSOLUTE_PATH(f) (IS_DIR_SEPARATOR((f)[0]) || (((f)[0]) && ((f)[1] == ':')))
+#define FILENAME_CMP(s1, s2) strcasecmp(s1, s2)
+
+#else /* not DOSish */
+
+#define IS_DIR_SEPARATOR(c) ((c) == '/')
+#define IS_ABSOLUTE_PATH(f) (IS_DIR_SEPARATOR((f)[0]))
+#define FILENAME_CMP(s1, s2) strcmp(s1, s2)
+
+#endif /* not DOSish */
+
+#endif /* FILENAMES_H */
diff --git a/include/floatformat.h b/include/floatformat.h
new file mode 100644
index 000000000..a8244ada5
--- /dev/null
+++ b/include/floatformat.h
@@ -0,0 +1,133 @@
+/* IEEE floating point support declarations, for GDB, the GNU Debugger.
+ Copyright 1991, 1994, 1995, 1997, 2000, 2003 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined (FLOATFORMAT_H)
+#define FLOATFORMAT_H 1
+
+#include "ansidecl.h"
+
+/* A floatformat consists of a sign bit, an exponent and a mantissa. Once the
+ bytes are concatenated according to the byteorder flag, then each of those
+ fields is contiguous. We number the bits with 0 being the most significant
+ (i.e. BITS_BIG_ENDIAN type numbering), and specify which bits each field
+ contains with the *_start and *_len fields. */
+
+/* What is the order of the bytes. */
+
+enum floatformat_byteorders {
+
+ /* Standard little endian byte order.
+ EX: 1.2345678e10 => 00 00 80 c5 e0 fe 06 42 */
+
+ floatformat_little,
+
+ /* Standard big endian byte order.
+ EX: 1.2345678e10 => 42 06 fe e0 c5 80 00 00 */
+
+ floatformat_big,
+
+ /* Little endian byte order but big endian word order.
+ EX: 1.2345678e10 => e0 fe 06 42 00 00 80 c5 */
+
+ floatformat_littlebyte_bigword
+
+};
+
+enum floatformat_intbit { floatformat_intbit_yes, floatformat_intbit_no };
+
+struct floatformat
+{
+ enum floatformat_byteorders byteorder;
+ unsigned int totalsize; /* Total size of number in bits */
+
+ /* Sign bit is always one bit long. 1 means negative, 0 means positive. */
+ unsigned int sign_start;
+
+ unsigned int exp_start;
+ unsigned int exp_len;
+ /* Bias added to a "true" exponent to form the biased exponent. It
+ is intentionally signed as, otherwize, -exp_bias can turn into a
+ very large number (e.g., given the exp_bias of 0x3fff and a 64
+ bit long, the equation (long)(1 - exp_bias) evaluates to
+ 4294950914) instead of -16382). */
+ int exp_bias;
+ /* Exponent value which indicates NaN. This is the actual value stored in
+ the float, not adjusted by the exp_bias. This usually consists of all
+ one bits. */
+ unsigned int exp_nan;
+
+ unsigned int man_start;
+ unsigned int man_len;
+
+ /* Is the integer bit explicit or implicit? */
+ enum floatformat_intbit intbit;
+
+ /* Internal name for debugging. */
+ const char *name;
+
+ /* Validator method. */
+ int (*is_valid) PARAMS ((const struct floatformat *fmt, const char *from));
+};
+
+/* floatformats for IEEE single and double, big and little endian. */
+
+extern const struct floatformat floatformat_ieee_single_big;
+extern const struct floatformat floatformat_ieee_single_little;
+extern const struct floatformat floatformat_ieee_double_big;
+extern const struct floatformat floatformat_ieee_double_little;
+
+/* floatformat for ARM IEEE double, little endian bytes and big endian words */
+
+extern const struct floatformat floatformat_ieee_double_littlebyte_bigword;
+
+/* floatformats for various extendeds. */
+
+extern const struct floatformat floatformat_i387_ext;
+extern const struct floatformat floatformat_m68881_ext;
+extern const struct floatformat floatformat_i960_ext;
+extern const struct floatformat floatformat_m88110_ext;
+extern const struct floatformat floatformat_m88110_harris_ext;
+extern const struct floatformat floatformat_arm_ext_big;
+extern const struct floatformat floatformat_arm_ext_littlebyte_bigword;
+/* IA-64 Floating Point register spilt into memory. */
+extern const struct floatformat floatformat_ia64_spill_big;
+extern const struct floatformat floatformat_ia64_spill_little;
+extern const struct floatformat floatformat_ia64_quad_big;
+extern const struct floatformat floatformat_ia64_quad_little;
+
+/* Convert from FMT to a double.
+ FROM is the address of the extended float.
+ Store the double in *TO. */
+
+extern void
+floatformat_to_double PARAMS ((const struct floatformat *, const char *, double *));
+
+/* The converse: convert the double *FROM to FMT
+ and store where TO points. */
+
+extern void
+floatformat_from_double PARAMS ((const struct floatformat *,
+ const double *, char *));
+
+/* Return non-zero iff the data at FROM is a valid number in format FMT. */
+
+extern int
+floatformat_is_valid PARAMS ((const struct floatformat *fmt, const char *from));
+
+#endif /* defined (FLOATFORMAT_H) */
diff --git a/include/fnmatch.h b/include/fnmatch.h
new file mode 100644
index 000000000..37d23ee1b
--- /dev/null
+++ b/include/fnmatch.h
@@ -0,0 +1,70 @@
+/* Copyright 1991, 1992, 1993, 1996 Free Software Foundation, Inc.
+
+NOTE: The canonical source of this file is maintained with the GNU C Library.
+Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#ifndef _FNMATCH_H
+
+#define _FNMATCH_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
+#undef __P
+#define __P(args) args
+#else /* Not C++ or ANSI C. */
+#undef __P
+#define __P(args) ()
+/* We can get away without defining `const' here only because in this file
+ it is used only inside the prototype for `fnmatch', which is elided in
+ non-ANSI C where `const' is problematical. */
+#endif /* C++ or ANSI C. */
+
+
+/* We #undef these before defining them because some losing systems
+ (HP-UX A.08.07 for example) define these in <unistd.h>. */
+#undef FNM_PATHNAME
+#undef FNM_NOESCAPE
+#undef FNM_PERIOD
+
+/* Bits set in the FLAGS argument to `fnmatch'. */
+#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */
+#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */
+#define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */
+
+#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
+#define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */
+#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */
+#define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */
+#endif
+
+/* Value returned by `fnmatch' if STRING does not match PATTERN. */
+#define FNM_NOMATCH 1
+
+/* Match STRING against the filename pattern PATTERN,
+ returning zero if it matches, FNM_NOMATCH if not. */
+extern int fnmatch __P ((const char *__pattern, const char *__string,
+ int __flags));
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* fnmatch.h */
diff --git a/include/fopen-bin.h b/include/fopen-bin.h
new file mode 100644
index 000000000..b868f63d4
--- /dev/null
+++ b/include/fopen-bin.h
@@ -0,0 +1,27 @@
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+
+ <Read|Write>[Update]<Binary file|text file>
+
+ This version is for "binary" systems, where text and binary files are
+ different. An example is Mess-Dose. Many Unix systems could also
+ cope with a "b" in the string, indicating binary files, but some reject this
+ (and thereby don't conform to ANSI C, but what else is new?).
+
+ This file is designed for inclusion by host-dependent .h files. No
+ user application should include it directly, since that would make
+ the application unable to be configured for both "same" and "binary"
+ variant systems. */
+
+#define FOPEN_RB "rb"
+#define FOPEN_WB "wb"
+#define FOPEN_AB "ab"
+#define FOPEN_RUB "r+b"
+#define FOPEN_WUB "w+b"
+#define FOPEN_AUB "a+b"
+
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/include/fopen-same.h b/include/fopen-same.h
new file mode 100644
index 000000000..0f37529d3
--- /dev/null
+++ b/include/fopen-same.h
@@ -0,0 +1,27 @@
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+
+ <Read|Write>[Update]<Binary file|text file>
+
+ This version is for "same" systems, where text and binary files are
+ the same. An example is Unix. Many Unix systems could also add a
+ "b" to the string, indicating binary files, but some reject this
+ (and thereby don't conform to ANSI C, but what else is new?).
+
+ This file is designed for inclusion by host-dependent .h files. No
+ user application should include it directly, since that would make
+ the application unable to be configured for both "same" and "binary"
+ variant systems. */
+
+#define FOPEN_RB "r"
+#define FOPEN_WB "w"
+#define FOPEN_AB "a"
+#define FOPEN_RUB "r+"
+#define FOPEN_WUB "w+"
+#define FOPEN_AUB "a+"
+
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/include/fopen-vms.h b/include/fopen-vms.h
new file mode 100644
index 000000000..da76b7fb5
--- /dev/null
+++ b/include/fopen-vms.h
@@ -0,0 +1,24 @@
+/* Macros for the 'type' part of an fopen, freopen or fdopen.
+
+ <Read|Write>[Update]<Binary file|text file>
+
+ This version is for VMS systems, where text and binary files are
+ different.
+ This file is designed for inclusion by host-dependent .h files. No
+ user application should include it directly, since that would make
+ the application unable to be configured for both "same" and "binary"
+ variant systems. */
+
+#define FOPEN_RB "rb","rfm=var"
+#define FOPEN_WB "wb","rfm=var"
+#define FOPEN_AB "ab","rfm=var"
+#define FOPEN_RUB "r+b","rfm=var"
+#define FOPEN_WUB "w+b","rfm=var"
+#define FOPEN_AUB "a+b","rfm=var"
+
+#define FOPEN_RT "r"
+#define FOPEN_WT "w"
+#define FOPEN_AT "a"
+#define FOPEN_RUT "r+"
+#define FOPEN_WUT "w+"
+#define FOPEN_AUT "a+"
diff --git a/include/gdb/ChangeLog b/include/gdb/ChangeLog
new file mode 100644
index 000000000..06c02af58
--- /dev/null
+++ b/include/gdb/ChangeLog
@@ -0,0 +1,130 @@
+2004-09-08 Michael Snyder <msnyder@redhat.com>
+
+ Commited by Corinna Vinschen <vinschen@redhat.com>
+ * sim-sh.h: Add new sh2a banked registers.
+
+2004-08-04 Andrew Cagney <cagney@gnu.org>
+
+ * sim-ppc.h: Add extern "C" wrapper.
+ (enum sim_ppc_regnum): Add full list of SPRs.
+
+2004-08-04 Jim Blandy <jimb@redhat.com>
+
+ * sim-ppc.h: New file.
+
+2004-06-25 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * callback.h (host_callback_struct): Replace members fdopen and
+ alwaysopen with fd_buddy.
+ [sim/common: * callback.c: Changed all users. ]
+
+2003-10-31 Kevin Buettner <kevin@redhat.com>
+
+ * sim-frv.h: New file.
+
+2003-10-15 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * callback.h (struct host_callback_struct): New members ftruncate
+ and truncate.
+
+2003-06-10 Corinna Vinschen <vinschen@redhat.com>
+
+ * gdb/fileio.h: New file.
+
+2003-05-07 Andrew Cagney <cagney@redhat.com>
+
+ * sim-d10v.h (sim_d10v_translate_addr): Add regcache parameter.
+ (sim_d10v_translate_imap_addr): Add regcache parameter.
+ (sim_d10v_translate_dmap_addr): Ditto.
+
+2003-03-27 Nick Clifton <nickc@redhat.com>
+
+ * sim-arm.h (sim_arm_regs): Add iWMMXt registers.
+
+2003-03-20 Nick Clifton <nickc@redhat.com>
+
+ * sim-arm.h (sim_arm_regs): Add Maverick co-processor
+ registers.
+
+2003-02-27 Andrew Cagney <cagney@redhat.com>
+
+ * remote-sim.h (sim_open, sim_load, sim_create_inferior): Rename
+ _bfd to bfd.
+
+2003-02-20 Andrew Cagney <ac131313@redhat.com>
+
+ * remote-sim.h (SIM_RC): Delete unused SIM_RC_UNKNOWN_BREAKPOINT,
+ SIM_RC_INSUFFICIENT_RESOURCES and SIM_RC_DUPLICATE_BREAKPOINT.
+ (sim_set_breakpoint, sim_clear_breakpoint): Delete declarations.
+ (sim_clear_all_breakpoints, sim_enable_breakpoint): Ditto.
+ (sim_enable_all_breakpoints, sim_disable_breakpoint): Ditto.
+ (sim_disable_all_breakpoints): Ditto.
+
+2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * sim-h8300.h: Remove ^M.
+
+2002-07-29 Andrey Volkov <avolkov@transas.com>
+
+ * sim-h8300.h: Rename all enums from H8300_ to SIM_H8300_
+ prefix.
+
+2002-07-23 Andrey Volkov <avolkov@transas.com>
+
+ * sim-h8300.h: New file.
+
+2002-07-17 Andrew Cagney <cagney@redhat.com>
+
+ * remote-sim.h: Update copyright.
+ (sim_set_callbacks, sim_size, sim_trace)
+ (sim_set_trace, sim_set_profile_size, sim_kill): Delete. Moved to
+ "sim/common/run-sim.h".
+
+Wed Jul 17 19:36:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sim-sh.h: Add enum constants for sh[1-4], sh3e, sh3?-dsp,
+ renumbering the sh-dsp registers to use distinct numbers.
+
+2002-06-15 Andrew Cagney <ac131313@redhat.com>
+
+ * sim-arm.h (enum sim_arm_regs): Rename sim_arm_regnum.
+
+2002-06-12 Andrew Cagney <ac131313@redhat.com>
+
+ * sim-arm.h: New file.
+
+2002-06-08 Andrew Cagney <cagney@redhat.com>
+
+ * callback.h: Copy to here from directory above.
+ * remote-sim.h: Copy to here from directory above.
+
+2002-06-01 Andrew Cagney <ac131313@redhat.com>
+
+ * sim-d10v.h (sim_d10v_regs): Expand to include all registers.
+ Update copyright.
+
+2002-05-23 Andrew Cagney <ac131313@redhat.com>
+
+ * sim-d10v.h: New file. Moved from include/sim-d10v.h.
+
+2002-05-10 Elena Zannoni <ezannoni@redhat.com>
+
+ * sim-sh.h: New file, for sh gdb<->sim interface.
+
+2002-05-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * signals.h: Update comments.
+ (enum target_signal): Remove conditional compilation around
+ Mach-specific signals. Move them to after TARGET_SIGNAL_DEFAULT.
+
+2002-03-10 Daniel Jacobowitz <drow@mvista.com>
+
+ * signals.h: New file, from gdb/defs.h.
+
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/gdb/callback.h b/include/gdb/callback.h
new file mode 100644
index 000000000..aa956d05f
--- /dev/null
+++ b/include/gdb/callback.h
@@ -0,0 +1,279 @@
+/* Remote target system call callback support.
+ Copyright 1997 Free Software Foundation, Inc.
+ Contributed by Cygnus Solutions.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This interface isn't intended to be specific to any particular kind
+ of remote (hardware, simulator, whatever). As such, support for it
+ (e.g. sim/common/callback.c) should *not* live in the simulator source
+ tree, nor should it live in the gdb source tree. */
+
+/* There are various ways to handle system calls:
+
+ 1) Have a simulator intercept the appropriate trap instruction and
+ directly perform the system call on behalf of the target program.
+ This is the typical way of handling system calls for embedded targets.
+ [Handling system calls for embedded targets isn't that much of an
+ oxymoron as running compiler testsuites make use of the capability.]
+
+ This method of system call handling is done when STATE_ENVIRONMENT
+ is ENVIRONMENT_USER.
+
+ 2) Have a simulator emulate the hardware as much as possible.
+ If the program running on the real hardware communicates with some sort
+ of target manager, one would want to be able to run this program on the
+ simulator as well.
+
+ This method of system call handling is done when STATE_ENVIRONMENT
+ is ENVIRONMENT_OPERATING.
+*/
+
+#ifndef CALLBACK_H
+#define CALLBACK_H
+
+/* ??? The reason why we check for va_start here should be documented. */
+
+#ifndef va_start
+#include <ansidecl.h>
+#ifdef ANSI_PROTOTYPES
+#include <stdarg.h>
+#else
+#include <varargs.h>
+#endif
+#endif
+
+/* Mapping of host/target values. */
+/* ??? For debugging purposes, one might want to add a string of the
+ name of the symbol. */
+
+typedef struct {
+ int host_val;
+ int target_val;
+} CB_TARGET_DEFS_MAP;
+
+#define MAX_CALLBACK_FDS 10
+
+/* Forward decl for stat/fstat. */
+struct stat;
+
+typedef struct host_callback_struct host_callback;
+
+struct host_callback_struct
+{
+ int (*close) PARAMS ((host_callback *,int));
+ int (*get_errno) PARAMS ((host_callback *));
+ int (*isatty) PARAMS ((host_callback *, int));
+ int (*lseek) PARAMS ((host_callback *, int, long , int));
+ int (*open) PARAMS ((host_callback *, const char*, int mode));
+ int (*read) PARAMS ((host_callback *,int, char *, int));
+ int (*read_stdin) PARAMS (( host_callback *, char *, int));
+ int (*rename) PARAMS ((host_callback *, const char *, const char *));
+ int (*system) PARAMS ((host_callback *, const char *));
+ long (*time) PARAMS ((host_callback *, long *));
+ int (*unlink) PARAMS ((host_callback *, const char *));
+ int (*write) PARAMS ((host_callback *,int, const char *, int));
+ int (*write_stdout) PARAMS ((host_callback *, const char *, int));
+ void (*flush_stdout) PARAMS ((host_callback *));
+ int (*write_stderr) PARAMS ((host_callback *, const char *, int));
+ void (*flush_stderr) PARAMS ((host_callback *));
+ int (*stat) PARAMS ((host_callback *, const char *, struct stat *));
+ int (*fstat) PARAMS ((host_callback *, int, struct stat *));
+ int (*ftruncate) PARAMS ((host_callback *, int, long));
+ int (*truncate) PARAMS ((host_callback *, const char *, long));
+
+ /* When present, call to the client to give it the oportunity to
+ poll any io devices for a request to quit (indicated by a nonzero
+ return value). */
+ int (*poll_quit) PARAMS ((host_callback *));
+
+ /* Used when the target has gone away, so we can close open
+ handles and free memory etc etc. */
+ int (*shutdown) PARAMS ((host_callback *));
+ int (*init) PARAMS ((host_callback *));
+
+ /* depreciated, use vprintf_filtered - Talk to the user on a console. */
+ void (*printf_filtered) PARAMS ((host_callback *, const char *, ...));
+
+ /* Talk to the user on a console. */
+ void (*vprintf_filtered) PARAMS ((host_callback *, const char *, va_list));
+
+ /* Same as vprintf_filtered but to stderr. */
+ void (*evprintf_filtered) PARAMS ((host_callback *, const char *, va_list));
+
+ /* Print an error message and "exit".
+ In the case of gdb "exiting" means doing a longjmp back to the main
+ command loop. */
+ void (*error) PARAMS ((host_callback *, const char *, ...));
+
+ int last_errno; /* host format */
+
+ int fdmap[MAX_CALLBACK_FDS];
+ /* fd_buddy is used to contruct circular lists of target fds that point to
+ the same host fd. A uniquely mapped fd points to itself; for a closed
+ one, fd_buddy has the value -1. The host file descriptors for stdin /
+ stdout / stderr are never closed by the simulators, so they are put
+ in a special fd_buddy circular list which also has MAX_CALLBACK_FDS
+ as a member. */
+ /* ??? We don't have a callback entry for dup, although it is trival to
+ implement now. */
+ short fd_buddy[MAX_CALLBACK_FDS+1];
+
+ /* System call numbers. */
+ CB_TARGET_DEFS_MAP *syscall_map;
+ /* Errno values. */
+ CB_TARGET_DEFS_MAP *errno_map;
+ /* Flags to the open system call. */
+ CB_TARGET_DEFS_MAP *open_map;
+ /* Signal numbers. */
+ CB_TARGET_DEFS_MAP *signal_map;
+ /* Layout of `stat' struct.
+ The format is a series of "name,length" pairs separated by colons.
+ Empty space is indicated with a `name' of "space".
+ All padding must be explicitly mentioned.
+ Lengths are in bytes. If this needs to be extended to bits,
+ use "name.bits".
+ Example: "st_dev,4:st_ino,4:st_mode,4:..." */
+ const char *stat_map;
+
+ /* Marker for those wanting to do sanity checks.
+ This should remain the last member of this struct to help catch
+ miscompilation errors. */
+#define HOST_CALLBACK_MAGIC 4705 /* teds constant */
+ int magic;
+};
+
+extern host_callback default_callback;
+
+/* Canonical versions of system call numbers.
+ It's not intended to willy-nilly throw every system call ever heard
+ of in here. Only include those that have an important use.
+ ??? One can certainly start a discussion over the ones that are currently
+ here, but that will always be true. */
+
+/* These are used by the ANSI C support of libc. */
+#define CB_SYS_exit 1
+#define CB_SYS_open 2
+#define CB_SYS_close 3
+#define CB_SYS_read 4
+#define CB_SYS_write 5
+#define CB_SYS_lseek 6
+#define CB_SYS_unlink 7
+#define CB_SYS_getpid 8
+#define CB_SYS_kill 9
+#define CB_SYS_fstat 10
+/*#define CB_SYS_sbrk 11 - not currently a system call, but reserved. */
+
+/* ARGV support. */
+#define CB_SYS_argvlen 12
+#define CB_SYS_argv 13
+
+/* These are extras added for one reason or another. */
+#define CB_SYS_chdir 14
+#define CB_SYS_stat 15
+#define CB_SYS_chmod 16
+#define CB_SYS_utime 17
+#define CB_SYS_time 18
+
+/* Struct use to pass and return information necessary to perform a
+ system call. */
+/* FIXME: Need to consider target word size. */
+
+typedef struct cb_syscall {
+ /* The target's value of what system call to perform. */
+ int func;
+ /* The arguments to the syscall. */
+ long arg1, arg2, arg3, arg4;
+
+ /* The result. */
+ long result;
+ /* Some system calls have two results. */
+ long result2;
+ /* The target's errno value, or 0 if success.
+ This is converted to the target's value with host_to_target_errno. */
+ int errcode;
+
+ /* Working space to be used by memory read/write callbacks. */
+ PTR p1;
+ PTR p2;
+ long x1,x2;
+
+ /* Callbacks for reading/writing memory (e.g. for read/write syscalls).
+ ??? long or unsigned long might be better to use for the `count'
+ argument here. We mimic sim_{read,write} for now. Be careful to
+ test any changes with -Wall -Werror, mixed signed comparisons
+ will get you. */
+ int (*read_mem) PARAMS ((host_callback * /*cb*/, struct cb_syscall * /*sc*/,
+ unsigned long /*taddr*/, char * /*buf*/,
+ int /*bytes*/));
+ int (*write_mem) PARAMS ((host_callback * /*cb*/, struct cb_syscall * /*sc*/,
+ unsigned long /*taddr*/, const char * /*buf*/,
+ int /*bytes*/));
+
+ /* For sanity checking, should be last entry. */
+ int magic;
+} CB_SYSCALL;
+
+/* Magic number sanity checker. */
+#define CB_SYSCALL_MAGIC 0x12344321
+
+/* Macro to initialize CB_SYSCALL. Called first, before filling in
+ any fields. */
+#define CB_SYSCALL_INIT(sc) \
+do { \
+ memset ((sc), 0, sizeof (*(sc))); \
+ (sc)->magic = CB_SYSCALL_MAGIC; \
+} while (0)
+
+/* Return codes for various interface routines. */
+
+typedef enum {
+ CB_RC_OK = 0,
+ /* generic error */
+ CB_RC_ERR,
+ /* either file not found or no read access */
+ CB_RC_ACCESS,
+ CB_RC_NO_MEM
+} CB_RC;
+
+/* Read in target values for system call numbers, errno values, signals. */
+CB_RC cb_read_target_syscall_maps PARAMS ((host_callback *, const char *));
+
+/* Translate target to host syscall function numbers. */
+int cb_target_to_host_syscall PARAMS ((host_callback *, int));
+
+/* Translate host to target errno value. */
+int cb_host_to_target_errno PARAMS ((host_callback *, int));
+
+/* Translate target to host open flags. */
+int cb_target_to_host_open PARAMS ((host_callback *, int));
+
+/* Translate target signal number to host. */
+int cb_target_to_host_signal PARAMS ((host_callback *, int));
+
+/* Translate host signal number to target. */
+int cb_host_to_target_signal PARAMS ((host_callback *, int));
+
+/* Translate host stat struct to target.
+ If stat struct ptr is NULL, just compute target stat struct size.
+ Result is size of target stat struct or 0 if error. */
+int cb_host_to_target_stat PARAMS ((host_callback *, const struct stat *, PTR));
+
+/* Perform a system call. */
+CB_RC cb_syscall PARAMS ((host_callback *, CB_SYSCALL *));
+
+#endif
diff --git a/include/gdb/fileio.h b/include/gdb/fileio.h
new file mode 100644
index 000000000..d84478103
--- /dev/null
+++ b/include/gdb/fileio.h
@@ -0,0 +1,146 @@
+/* Hosted File I/O interface definitions, for GDB, the GNU Debugger.
+
+ Copyright 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#ifndef GDB_FILEIO_H_
+#define GDB_FILEIO_H_
+
+/* The following flags are defined to be independent of the host
+ as well as the target side implementation of these constants.
+ All constants are defined with a leading FILEIO_ in the name
+ to allow the usage of these constants together with the
+ corresponding implementation dependent constants in one module. */
+
+/* open(2) flags */
+#define FILEIO_O_RDONLY 0x0
+#define FILEIO_O_WRONLY 0x1
+#define FILEIO_O_RDWR 0x2
+#define FILEIO_O_APPEND 0x8
+#define FILEIO_O_CREAT 0x200
+#define FILEIO_O_TRUNC 0x400
+#define FILEIO_O_EXCL 0x800
+#define FILEIO_O_SUPPORTED (FILEIO_O_RDONLY | FILEIO_O_WRONLY| \
+ FILEIO_O_RDWR | FILEIO_O_APPEND| \
+ FILEIO_O_CREAT | FILEIO_O_TRUNC| \
+ FILEIO_O_EXCL)
+
+/* mode_t bits */
+#define FILEIO_S_IFREG 0100000
+#define FILEIO_S_IFDIR 040000
+#define FILEIO_S_IFCHR 020000
+#define FILEIO_S_IRUSR 0400
+#define FILEIO_S_IWUSR 0200
+#define FILEIO_S_IXUSR 0100
+#define FILEIO_S_IRWXU 0700
+#define FILEIO_S_IRGRP 040
+#define FILEIO_S_IWGRP 020
+#define FILEIO_S_IXGRP 010
+#define FILEIO_S_IRWXG 070
+#define FILEIO_S_IROTH 04
+#define FILEIO_S_IWOTH 02
+#define FILEIO_S_IXOTH 01
+#define FILEIO_S_IRWXO 07
+#define FILEIO_S_SUPPORTED (FILEIO_S_IFREG|FILEIO_S_IFDIR| \
+ FILEIO_S_IRWXU|FILEIO_S_IRWXG| \
+ FILEIO_S_IRWXO)
+
+/* lseek(2) flags */
+#define FILEIO_SEEK_SET 0
+#define FILEIO_SEEK_CUR 1
+#define FILEIO_SEEK_END 2
+
+/* errno values */
+#define FILEIO_EPERM 1
+#define FILEIO_ENOENT 2
+#define FILEIO_EINTR 4
+#define FILEIO_EIO 5
+#define FILEIO_EBADF 9
+#define FILEIO_EACCES 13
+#define FILEIO_EFAULT 14
+#define FILEIO_EBUSY 16
+#define FILEIO_EEXIST 17
+#define FILEIO_ENODEV 19
+#define FILEIO_ENOTDIR 20
+#define FILEIO_EISDIR 21
+#define FILEIO_EINVAL 22
+#define FILEIO_ENFILE 23
+#define FILEIO_EMFILE 24
+#define FILEIO_EFBIG 27
+#define FILEIO_ENOSPC 28
+#define FILEIO_ESPIPE 29
+#define FILEIO_EROFS 30
+#define FILEIO_ENOSYS 88
+#define FILEIO_ENAMETOOLONG 91
+#define FILEIO_EUNKNOWN 9999
+
+/* limits */
+#define FILEIO_INT_MIN -2147483648L
+#define FILEIO_INT_MAX 2147483647L
+#define FILEIO_UINT_MAX 4294967295UL
+#define FILEIO_LONG_MIN -9223372036854775808LL
+#define FILEIO_LONG_MAX 9223372036854775807LL
+#define FILEIO_ULONG_MAX 18446744073709551615ULL
+
+/* Integral types as used in protocol. */
+#if 0
+typedef __int32_t fio_int_t;
+typedef __uint32_t fio_uint_t, fio_mode_t, fio_time_t;
+typedef __int64_t fio_long_t;
+typedef __uint64_t fio_ulong_t;
+#endif
+
+#define FIO_INT_LEN 4
+#define FIO_UINT_LEN 4
+#define FIO_MODE_LEN 4
+#define FIO_TIME_LEN 4
+#define FIO_LONG_LEN 8
+#define FIO_ULONG_LEN 8
+
+typedef char fio_int_t[FIO_INT_LEN];
+typedef char fio_uint_t[FIO_UINT_LEN];
+typedef char fio_mode_t[FIO_MODE_LEN];
+typedef char fio_time_t[FIO_TIME_LEN];
+typedef char fio_long_t[FIO_LONG_LEN];
+typedef char fio_ulong_t[FIO_ULONG_LEN];
+
+/* Struct stat as used in protocol. For complete independence
+ of host/target systems, it's defined as an array with offsets
+ to the members. */
+
+struct fio_stat {
+ fio_uint_t fst_dev;
+ fio_uint_t fst_ino;
+ fio_mode_t fst_mode;
+ fio_uint_t fst_nlink;
+ fio_uint_t fst_uid;
+ fio_uint_t fst_gid;
+ fio_uint_t fst_rdev;
+ fio_ulong_t fst_size;
+ fio_ulong_t fst_blksize;
+ fio_ulong_t fst_blocks;
+ fio_time_t fst_atime;
+ fio_time_t fst_mtime;
+ fio_time_t fst_ctime;
+};
+
+struct fio_timeval {
+ fio_time_t ftv_sec;
+ fio_long_t ftv_usec;
+};
+
+#endif /* GDB_FILEIO_H_ */
diff --git a/include/gdb/remote-sim.h b/include/gdb/remote-sim.h
new file mode 100644
index 000000000..a49ba1a89
--- /dev/null
+++ b/include/gdb/remote-sim.h
@@ -0,0 +1,282 @@
+/* This file defines the interface between the simulator and gdb.
+
+ Copyright 1993, 1994, 1996, 1997, 1998, 2000, 2002 Free Software
+ Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined (REMOTE_SIM_H)
+#define REMOTE_SIM_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* This file is used when building stand-alone simulators, so isolate this
+ file from gdb. */
+
+/* Pick up CORE_ADDR_TYPE if defined (from gdb), otherwise use same value as
+ gdb does (unsigned int - from defs.h). */
+
+#ifndef CORE_ADDR_TYPE
+typedef unsigned int SIM_ADDR;
+#else
+typedef CORE_ADDR_TYPE SIM_ADDR;
+#endif
+
+
+/* Semi-opaque type used as result of sim_open and passed back to all
+ other routines. "desc" is short for "descriptor".
+ It is up to each simulator to define `sim_state'. */
+
+typedef struct sim_state *SIM_DESC;
+
+
+/* Values for `kind' arg to sim_open. */
+
+typedef enum {
+ SIM_OPEN_STANDALONE, /* simulator used standalone (run.c) */
+ SIM_OPEN_DEBUG /* simulator used by debugger (gdb) */
+} SIM_OPEN_KIND;
+
+
+/* Return codes from various functions. */
+
+typedef enum {
+ SIM_RC_FAIL = 0,
+ SIM_RC_OK = 1
+} SIM_RC;
+
+
+/* The bfd struct, as an opaque type. */
+
+struct bfd;
+
+
+/* Main simulator entry points. */
+
+
+/* Create a fully initialized simulator instance.
+
+ (This function is called when the simulator is selected from the
+ gdb command line.)
+
+ KIND specifies how the simulator shall be used. Currently there
+ are only two kinds: stand-alone and debug.
+
+ CALLBACK specifies a standard host callback (defined in callback.h).
+
+ ABFD, when non NULL, designates a target program. The program is
+ not loaded.
+
+ ARGV is a standard ARGV pointer such as that passed from the
+ command line. The syntax of the argument list is is assumed to be
+ ``SIM-PROG { SIM-OPTION } [ TARGET-PROGRAM { TARGET-OPTION } ]''.
+ The trailing TARGET-PROGRAM and args are only valid for a
+ stand-alone simulator.
+
+ On success, the result is a non NULL descriptor that shall be
+ passed to the other sim_foo functions. While the simulator
+ configuration can be parameterized by (in decreasing precedence)
+ ARGV's SIM-OPTION, ARGV's TARGET-PROGRAM and the ABFD argument, the
+ successful creation of the simulator shall not dependent on the
+ presence of any of these arguments/options.
+
+ Hardware simulator: The created simulator shall be sufficiently
+ initialized to handle, with out restrictions any client requests
+ (including memory reads/writes, register fetch/stores and a
+ resume).
+
+ Process simulator: that process is not created until a call to
+ sim_create_inferior. FIXME: What should the state of the simulator
+ be? */
+
+SIM_DESC sim_open PARAMS ((SIM_OPEN_KIND kind, struct host_callback_struct *callback, struct bfd *abfd, char **argv));
+
+
+/* Destory a simulator instance.
+
+ QUITTING is non-zero if we cannot hang on errors.
+
+ This may involve freeing target memory and closing any open files
+ and mmap'd areas. You cannot assume sim_kill has already been
+ called. */
+
+void sim_close PARAMS ((SIM_DESC sd, int quitting));
+
+
+/* Load program PROG into the simulators memory.
+
+ If ABFD is non-NULL, the bfd for the file has already been opened.
+ The result is a return code indicating success.
+
+ Hardware simulator: Normally, each program section is written into
+ memory according to that sections LMA using physical (direct)
+ addressing. The exception being systems, such as PPC/CHRP, which
+ support more complicated program loaders. A call to this function
+ should not effect the state of the processor registers. Multiple
+ calls to this function are permitted and have an accumulative
+ effect.
+
+ Process simulator: Calls to this function may be ignored.
+
+ FIXME: Most hardware simulators load the image at the VMA using
+ virtual addressing.
+
+ FIXME: For some hardware targets, before a loaded program can be
+ executed, it requires the manipulation of VM registers and tables.
+ Such manipulation should probably (?) occure in
+ sim_create_inferior. */
+
+SIM_RC sim_load PARAMS ((SIM_DESC sd, char *prog, struct bfd *abfd, int from_tty));
+
+
+/* Prepare to run the simulated program.
+
+ ABFD, if not NULL, provides initial processor state information.
+ ARGV and ENV, if non NULL, are NULL terminated lists of pointers.
+
+ Hardware simulator: This function shall initialize the processor
+ registers to a known value. The program counter and possibly stack
+ pointer shall be set using information obtained from ABFD (or
+ hardware reset defaults). ARGV and ENV, dependant on the target
+ ABI, may be written to memory.
+
+ Process simulator: After a call to this function, a new process
+ instance shall exist. The TEXT, DATA, BSS and stack regions shall
+ all be initialized, ARGV and ENV shall be written to process
+ address space (according to the applicable ABI) and the program
+ counter and stack pointer set accordingly. */
+
+SIM_RC sim_create_inferior PARAMS ((SIM_DESC sd, struct bfd *abfd, char **argv, char **env));
+
+
+/* Fetch LENGTH bytes of the simulated program's memory. Start fetch
+ at virtual address MEM and store in BUF. Result is number of bytes
+ read, or zero if error. */
+
+int sim_read PARAMS ((SIM_DESC sd, SIM_ADDR mem, unsigned char *buf, int length));
+
+
+/* Store LENGTH bytes from BUF into the simulated program's
+ memory. Store bytes starting at virtual address MEM. Result is
+ number of bytes write, or zero if error. */
+
+int sim_write PARAMS ((SIM_DESC sd, SIM_ADDR mem, unsigned char *buf, int length));
+
+
+/* Fetch register REGNO storing its raw (target endian) value in the
+ LENGTH byte buffer BUF. Return the actual size of the register or
+ zero if REGNO is not applicable.
+
+ Legacy implementations ignore LENGTH and always return -1.
+
+ If LENGTH does not match the size of REGNO no data is transfered
+ (the actual register size is still returned). */
+
+int sim_fetch_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf, int length));
+
+
+/* Store register REGNO from the raw (target endian) value in BUF.
+ Return the actual size of the register or zero if REGNO is not
+ applicable.
+
+ Legacy implementations ignore LENGTH and always return -1.
+
+ If LENGTH does not match the size of REGNO no data is transfered
+ (the actual register size is still returned). */
+
+int sim_store_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf, int length));
+
+
+/* Print whatever statistics the simulator has collected.
+
+ VERBOSE is currently unused and must always be zero. */
+
+void sim_info PARAMS ((SIM_DESC sd, int verbose));
+
+
+/* Run (or resume) the simulated program.
+
+ STEP, when non-zero indicates that only a single simulator cycle
+ should be emulated.
+
+ SIGGNAL, if non-zero is a (HOST) SIGRC value indicating the type of
+ event (hardware interrupt, signal) to be delivered to the simulated
+ program.
+
+ Hardware simulator: If the SIGRC value returned by
+ sim_stop_reason() is passed back to the simulator via SIGGNAL then
+ the hardware simulator shall correctly deliver the hardware event
+ indicated by that signal. If a value of zero is passed in then the
+ simulation will continue as if there were no outstanding signal.
+ The effect of any other SIGGNAL value is is implementation
+ dependant.
+
+ Process simulator: If SIGRC is non-zero then the corresponding
+ signal is delivered to the simulated program and execution is then
+ continued. A zero SIGRC value indicates that the program should
+ continue as normal. */
+
+void sim_resume PARAMS ((SIM_DESC sd, int step, int siggnal));
+
+
+/* Asynchronous request to stop the simulation.
+ A nonzero return indicates that the simulator is able to handle
+ the request */
+
+int sim_stop PARAMS ((SIM_DESC sd));
+
+
+/* Fetch the REASON why the program stopped.
+
+ SIM_EXITED: The program has terminated. SIGRC indicates the target
+ dependant exit status.
+
+ SIM_STOPPED: The program has stopped. SIGRC uses the host's signal
+ numbering as a way of identifying the reaon: program interrupted by
+ user via a sim_stop request (SIGINT); a breakpoint instruction
+ (SIGTRAP); a completed single step (SIGTRAP); an internal error
+ condition (SIGABRT); an illegal instruction (SIGILL); Access to an
+ undefined memory region (SIGSEGV); Mis-aligned memory access
+ (SIGBUS). For some signals information in addition to the signal
+ number may be retained by the simulator (e.g. offending address),
+ that information is not directly accessable via this interface.
+
+ SIM_SIGNALLED: The program has been terminated by a signal. The
+ simulator has encountered target code that causes the the program
+ to exit with signal SIGRC.
+
+ SIM_RUNNING, SIM_POLLING: The return of one of these values
+ indicates a problem internal to the simulator. */
+
+enum sim_stop { sim_running, sim_polling, sim_exited, sim_stopped, sim_signalled };
+
+void sim_stop_reason PARAMS ((SIM_DESC sd, enum sim_stop *reason, int *sigrc));
+
+
+/* Passthru for other commands that the simulator might support.
+ Simulators should be prepared to deal with any combination of NULL
+ or empty CMD. */
+
+void sim_do_command PARAMS ((SIM_DESC sd, char *cmd));
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* !defined (REMOTE_SIM_H) */
diff --git a/include/gdb/signals.h b/include/gdb/signals.h
new file mode 100644
index 000000000..b6f5d4853
--- /dev/null
+++ b/include/gdb/signals.h
@@ -0,0 +1,237 @@
+/* Target signal numbers for GDB and the GDB remote protocol.
+ Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
+ 1997, 1998, 1999, 2000, 2001, 2002
+ Free Software Foundation, Inc.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#ifndef GDB_SIGNALS_H
+#define GDB_SIGNALS_H
+
+/* The numbering of these signals is chosen to match traditional unix
+ signals (insofar as various unices use the same numbers, anyway).
+ It is also the numbering of the GDB remote protocol. Other remote
+ protocols, if they use a different numbering, should make sure to
+ translate appropriately.
+
+ Since these numbers have actually made it out into other software
+ (stubs, etc.), you mustn't disturb the assigned numbering. If you
+ need to add new signals here, add them to the end of the explicitly
+ numbered signals, at the comment marker. Add them unconditionally,
+ not within any #if or #ifdef.
+
+ This is based strongly on Unix/POSIX signals for several reasons:
+ (1) This set of signals represents a widely-accepted attempt to
+ represent events of this sort in a portable fashion, (2) we want a
+ signal to make it from wait to child_wait to the user intact, (3) many
+ remote protocols use a similar encoding. However, it is
+ recognized that this set of signals has limitations (such as not
+ distinguishing between various kinds of SIGSEGV, or not
+ distinguishing hitting a breakpoint from finishing a single step).
+ So in the future we may get around this either by adding additional
+ signals for breakpoint, single-step, etc., or by adding signal
+ codes; the latter seems more in the spirit of what BSD, System V,
+ etc. are doing to address these issues. */
+
+/* For an explanation of what each signal means, see
+ target_signal_to_string. */
+
+enum target_signal
+ {
+ /* Used some places (e.g. stop_signal) to record the concept that
+ there is no signal. */
+ TARGET_SIGNAL_0 = 0,
+ TARGET_SIGNAL_FIRST = 0,
+ TARGET_SIGNAL_HUP = 1,
+ TARGET_SIGNAL_INT = 2,
+ TARGET_SIGNAL_QUIT = 3,
+ TARGET_SIGNAL_ILL = 4,
+ TARGET_SIGNAL_TRAP = 5,
+ TARGET_SIGNAL_ABRT = 6,
+ TARGET_SIGNAL_EMT = 7,
+ TARGET_SIGNAL_FPE = 8,
+ TARGET_SIGNAL_KILL = 9,
+ TARGET_SIGNAL_BUS = 10,
+ TARGET_SIGNAL_SEGV = 11,
+ TARGET_SIGNAL_SYS = 12,
+ TARGET_SIGNAL_PIPE = 13,
+ TARGET_SIGNAL_ALRM = 14,
+ TARGET_SIGNAL_TERM = 15,
+ TARGET_SIGNAL_URG = 16,
+ TARGET_SIGNAL_STOP = 17,
+ TARGET_SIGNAL_TSTP = 18,
+ TARGET_SIGNAL_CONT = 19,
+ TARGET_SIGNAL_CHLD = 20,
+ TARGET_SIGNAL_TTIN = 21,
+ TARGET_SIGNAL_TTOU = 22,
+ TARGET_SIGNAL_IO = 23,
+ TARGET_SIGNAL_XCPU = 24,
+ TARGET_SIGNAL_XFSZ = 25,
+ TARGET_SIGNAL_VTALRM = 26,
+ TARGET_SIGNAL_PROF = 27,
+ TARGET_SIGNAL_WINCH = 28,
+ TARGET_SIGNAL_LOST = 29,
+ TARGET_SIGNAL_USR1 = 30,
+ TARGET_SIGNAL_USR2 = 31,
+ TARGET_SIGNAL_PWR = 32,
+ /* Similar to SIGIO. Perhaps they should have the same number. */
+ TARGET_SIGNAL_POLL = 33,
+ TARGET_SIGNAL_WIND = 34,
+ TARGET_SIGNAL_PHONE = 35,
+ TARGET_SIGNAL_WAITING = 36,
+ TARGET_SIGNAL_LWP = 37,
+ TARGET_SIGNAL_DANGER = 38,
+ TARGET_SIGNAL_GRANT = 39,
+ TARGET_SIGNAL_RETRACT = 40,
+ TARGET_SIGNAL_MSG = 41,
+ TARGET_SIGNAL_SOUND = 42,
+ TARGET_SIGNAL_SAK = 43,
+ TARGET_SIGNAL_PRIO = 44,
+ TARGET_SIGNAL_REALTIME_33 = 45,
+ TARGET_SIGNAL_REALTIME_34 = 46,
+ TARGET_SIGNAL_REALTIME_35 = 47,
+ TARGET_SIGNAL_REALTIME_36 = 48,
+ TARGET_SIGNAL_REALTIME_37 = 49,
+ TARGET_SIGNAL_REALTIME_38 = 50,
+ TARGET_SIGNAL_REALTIME_39 = 51,
+ TARGET_SIGNAL_REALTIME_40 = 52,
+ TARGET_SIGNAL_REALTIME_41 = 53,
+ TARGET_SIGNAL_REALTIME_42 = 54,
+ TARGET_SIGNAL_REALTIME_43 = 55,
+ TARGET_SIGNAL_REALTIME_44 = 56,
+ TARGET_SIGNAL_REALTIME_45 = 57,
+ TARGET_SIGNAL_REALTIME_46 = 58,
+ TARGET_SIGNAL_REALTIME_47 = 59,
+ TARGET_SIGNAL_REALTIME_48 = 60,
+ TARGET_SIGNAL_REALTIME_49 = 61,
+ TARGET_SIGNAL_REALTIME_50 = 62,
+ TARGET_SIGNAL_REALTIME_51 = 63,
+ TARGET_SIGNAL_REALTIME_52 = 64,
+ TARGET_SIGNAL_REALTIME_53 = 65,
+ TARGET_SIGNAL_REALTIME_54 = 66,
+ TARGET_SIGNAL_REALTIME_55 = 67,
+ TARGET_SIGNAL_REALTIME_56 = 68,
+ TARGET_SIGNAL_REALTIME_57 = 69,
+ TARGET_SIGNAL_REALTIME_58 = 70,
+ TARGET_SIGNAL_REALTIME_59 = 71,
+ TARGET_SIGNAL_REALTIME_60 = 72,
+ TARGET_SIGNAL_REALTIME_61 = 73,
+ TARGET_SIGNAL_REALTIME_62 = 74,
+ TARGET_SIGNAL_REALTIME_63 = 75,
+
+ /* Used internally by Solaris threads. See signal(5) on Solaris. */
+ TARGET_SIGNAL_CANCEL = 76,
+
+ /* Yes, this pains me, too. But LynxOS didn't have SIG32, and now
+ GNU/Linux does, and we can't disturb the numbering, since it's
+ part of the remote protocol. Note that in some GDB's
+ TARGET_SIGNAL_REALTIME_32 is number 76. */
+ TARGET_SIGNAL_REALTIME_32,
+ /* Yet another pain, IRIX 6 has SIG64. */
+ TARGET_SIGNAL_REALTIME_64,
+ /* Yet another pain, GNU/Linux MIPS might go up to 128. */
+ TARGET_SIGNAL_REALTIME_65,
+ TARGET_SIGNAL_REALTIME_66,
+ TARGET_SIGNAL_REALTIME_67,
+ TARGET_SIGNAL_REALTIME_68,
+ TARGET_SIGNAL_REALTIME_69,
+ TARGET_SIGNAL_REALTIME_70,
+ TARGET_SIGNAL_REALTIME_71,
+ TARGET_SIGNAL_REALTIME_72,
+ TARGET_SIGNAL_REALTIME_73,
+ TARGET_SIGNAL_REALTIME_74,
+ TARGET_SIGNAL_REALTIME_75,
+ TARGET_SIGNAL_REALTIME_76,
+ TARGET_SIGNAL_REALTIME_77,
+ TARGET_SIGNAL_REALTIME_78,
+ TARGET_SIGNAL_REALTIME_79,
+ TARGET_SIGNAL_REALTIME_80,
+ TARGET_SIGNAL_REALTIME_81,
+ TARGET_SIGNAL_REALTIME_82,
+ TARGET_SIGNAL_REALTIME_83,
+ TARGET_SIGNAL_REALTIME_84,
+ TARGET_SIGNAL_REALTIME_85,
+ TARGET_SIGNAL_REALTIME_86,
+ TARGET_SIGNAL_REALTIME_87,
+ TARGET_SIGNAL_REALTIME_88,
+ TARGET_SIGNAL_REALTIME_89,
+ TARGET_SIGNAL_REALTIME_90,
+ TARGET_SIGNAL_REALTIME_91,
+ TARGET_SIGNAL_REALTIME_92,
+ TARGET_SIGNAL_REALTIME_93,
+ TARGET_SIGNAL_REALTIME_94,
+ TARGET_SIGNAL_REALTIME_95,
+ TARGET_SIGNAL_REALTIME_96,
+ TARGET_SIGNAL_REALTIME_97,
+ TARGET_SIGNAL_REALTIME_98,
+ TARGET_SIGNAL_REALTIME_99,
+ TARGET_SIGNAL_REALTIME_100,
+ TARGET_SIGNAL_REALTIME_101,
+ TARGET_SIGNAL_REALTIME_102,
+ TARGET_SIGNAL_REALTIME_103,
+ TARGET_SIGNAL_REALTIME_104,
+ TARGET_SIGNAL_REALTIME_105,
+ TARGET_SIGNAL_REALTIME_106,
+ TARGET_SIGNAL_REALTIME_107,
+ TARGET_SIGNAL_REALTIME_108,
+ TARGET_SIGNAL_REALTIME_109,
+ TARGET_SIGNAL_REALTIME_110,
+ TARGET_SIGNAL_REALTIME_111,
+ TARGET_SIGNAL_REALTIME_112,
+ TARGET_SIGNAL_REALTIME_113,
+ TARGET_SIGNAL_REALTIME_114,
+ TARGET_SIGNAL_REALTIME_115,
+ TARGET_SIGNAL_REALTIME_116,
+ TARGET_SIGNAL_REALTIME_117,
+ TARGET_SIGNAL_REALTIME_118,
+ TARGET_SIGNAL_REALTIME_119,
+ TARGET_SIGNAL_REALTIME_120,
+ TARGET_SIGNAL_REALTIME_121,
+ TARGET_SIGNAL_REALTIME_122,
+ TARGET_SIGNAL_REALTIME_123,
+ TARGET_SIGNAL_REALTIME_124,
+ TARGET_SIGNAL_REALTIME_125,
+ TARGET_SIGNAL_REALTIME_126,
+ TARGET_SIGNAL_REALTIME_127,
+
+ TARGET_SIGNAL_INFO,
+
+ /* Some signal we don't know about. */
+ TARGET_SIGNAL_UNKNOWN,
+
+ /* Use whatever signal we use when one is not specifically specified
+ (for passing to proceed and so on). */
+ TARGET_SIGNAL_DEFAULT,
+
+ /* Mach exceptions. In versions of GDB before 5.2, these were just before
+ TARGET_SIGNAL_INFO if you were compiling on a Mach host (and missing
+ otherwise). */
+ TARGET_EXC_BAD_ACCESS,
+ TARGET_EXC_BAD_INSTRUCTION,
+ TARGET_EXC_ARITHMETIC,
+ TARGET_EXC_EMULATION,
+ TARGET_EXC_SOFTWARE,
+ TARGET_EXC_BREAKPOINT,
+
+ /* If you are adding a new signal, add it just above this comment. */
+
+ /* Last and unused enum value, for sizing arrays, etc. */
+ TARGET_SIGNAL_LAST
+ };
+
+#endif /* #ifndef GDB_SIGNALS_H */
diff --git a/include/gdb/sim-arm.h b/include/gdb/sim-arm.h
new file mode 100644
index 000000000..5598f73fa
--- /dev/null
+++ b/include/gdb/sim-arm.h
@@ -0,0 +1,114 @@
+/* This file defines the interface between the Arm simulator and GDB.
+
+ Copyright 2002, 2003 Free Software Foundation, Inc.
+
+ Contributed by Red Hat.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#if !defined (SIM_ARM_H)
+#define SIM_ARM_H
+
+#ifdef __cplusplus
+extern "C" { // }
+#endif
+
+enum sim_arm_regs
+{
+ SIM_ARM_R0_REGNUM,
+ SIM_ARM_R1_REGNUM,
+ SIM_ARM_R2_REGNUM,
+ SIM_ARM_R3_REGNUM,
+ SIM_ARM_R4_REGNUM,
+ SIM_ARM_R5_REGNUM,
+ SIM_ARM_R6_REGNUM,
+ SIM_ARM_R7_REGNUM,
+ SIM_ARM_R8_REGNUM,
+ SIM_ARM_R9_REGNUM,
+ SIM_ARM_R10_REGNUM,
+ SIM_ARM_R11_REGNUM,
+ SIM_ARM_R12_REGNUM,
+ SIM_ARM_R13_REGNUM,
+ SIM_ARM_R14_REGNUM,
+ SIM_ARM_R15_REGNUM, /* PC */
+ SIM_ARM_FP0_REGNUM,
+ SIM_ARM_FP1_REGNUM,
+ SIM_ARM_FP2_REGNUM,
+ SIM_ARM_FP3_REGNUM,
+ SIM_ARM_FP4_REGNUM,
+ SIM_ARM_FP5_REGNUM,
+ SIM_ARM_FP6_REGNUM,
+ SIM_ARM_FP7_REGNUM,
+ SIM_ARM_FPS_REGNUM,
+ SIM_ARM_PS_REGNUM,
+ SIM_ARM_MAVERIC_COP0R0_REGNUM,
+ SIM_ARM_MAVERIC_COP0R1_REGNUM,
+ SIM_ARM_MAVERIC_COP0R2_REGNUM,
+ SIM_ARM_MAVERIC_COP0R3_REGNUM,
+ SIM_ARM_MAVERIC_COP0R4_REGNUM,
+ SIM_ARM_MAVERIC_COP0R5_REGNUM,
+ SIM_ARM_MAVERIC_COP0R6_REGNUM,
+ SIM_ARM_MAVERIC_COP0R7_REGNUM,
+ SIM_ARM_MAVERIC_COP0R8_REGNUM,
+ SIM_ARM_MAVERIC_COP0R9_REGNUM,
+ SIM_ARM_MAVERIC_COP0R10_REGNUM,
+ SIM_ARM_MAVERIC_COP0R11_REGNUM,
+ SIM_ARM_MAVERIC_COP0R12_REGNUM,
+ SIM_ARM_MAVERIC_COP0R13_REGNUM,
+ SIM_ARM_MAVERIC_COP0R14_REGNUM,
+ SIM_ARM_MAVERIC_COP0R15_REGNUM,
+ SIM_ARM_MAVERIC_DSPSC_REGNUM,
+ SIM_ARM_IWMMXT_COP0R0_REGNUM,
+ SIM_ARM_IWMMXT_COP0R1_REGNUM,
+ SIM_ARM_IWMMXT_COP0R2_REGNUM,
+ SIM_ARM_IWMMXT_COP0R3_REGNUM,
+ SIM_ARM_IWMMXT_COP0R4_REGNUM,
+ SIM_ARM_IWMMXT_COP0R5_REGNUM,
+ SIM_ARM_IWMMXT_COP0R6_REGNUM,
+ SIM_ARM_IWMMXT_COP0R7_REGNUM,
+ SIM_ARM_IWMMXT_COP0R8_REGNUM,
+ SIM_ARM_IWMMXT_COP0R9_REGNUM,
+ SIM_ARM_IWMMXT_COP0R10_REGNUM,
+ SIM_ARM_IWMMXT_COP0R11_REGNUM,
+ SIM_ARM_IWMMXT_COP0R12_REGNUM,
+ SIM_ARM_IWMMXT_COP0R13_REGNUM,
+ SIM_ARM_IWMMXT_COP0R14_REGNUM,
+ SIM_ARM_IWMMXT_COP0R15_REGNUM,
+ SIM_ARM_IWMMXT_COP1R0_REGNUM,
+ SIM_ARM_IWMMXT_COP1R1_REGNUM,
+ SIM_ARM_IWMMXT_COP1R2_REGNUM,
+ SIM_ARM_IWMMXT_COP1R3_REGNUM,
+ SIM_ARM_IWMMXT_COP1R4_REGNUM,
+ SIM_ARM_IWMMXT_COP1R5_REGNUM,
+ SIM_ARM_IWMMXT_COP1R6_REGNUM,
+ SIM_ARM_IWMMXT_COP1R7_REGNUM,
+ SIM_ARM_IWMMXT_COP1R8_REGNUM,
+ SIM_ARM_IWMMXT_COP1R9_REGNUM,
+ SIM_ARM_IWMMXT_COP1R10_REGNUM,
+ SIM_ARM_IWMMXT_COP1R11_REGNUM,
+ SIM_ARM_IWMMXT_COP1R12_REGNUM,
+ SIM_ARM_IWMMXT_COP1R13_REGNUM,
+ SIM_ARM_IWMMXT_COP1R14_REGNUM,
+ SIM_ARM_IWMMXT_COP1R15_REGNUM
+};
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/include/gdb/sim-d10v.h b/include/gdb/sim-d10v.h
new file mode 100644
index 000000000..8294b1485
--- /dev/null
+++ b/include/gdb/sim-d10v.h
@@ -0,0 +1,142 @@
+/* This file defines the interface between the d10v simulator and gdb.
+
+ Copyright 1999, 2002 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined (SIM_D10V_H)
+#define SIM_D10V_H
+
+#ifdef __cplusplus
+extern "C" { // }
+#endif
+
+/* GDB interprets addresses as:
+
+ 0x00xxxxxx: Physical unified memory segment (Unified memory)
+ 0x01xxxxxx: Physical instruction memory segment (On-chip insn memory)
+ 0x02xxxxxx: Physical data memory segment (On-chip data memory)
+ 0x10xxxxxx: Logical data address segment (DMAP translated memory)
+ 0x11xxxxxx: Logical instruction address segment (IMAP translated memory)
+
+ The remote d10v board interprets addresses as:
+
+ 0x00xxxxxx: Physical unified memory segment (Unified memory)
+ 0x01xxxxxx: Physical instruction memory segment (On-chip insn memory)
+ 0x02xxxxxx: Physical data memory segment (On-chip data memory)
+
+ The following translate a virtual DMAP/IMAP offset into a physical
+ memory segment assigning the translated address to PHYS. Since a
+ memory access may cross a page boundrary the number of bytes for
+ which the translation is applicable (or 0 for an invalid virtual
+ offset) is returned. */
+
+enum
+ {
+ SIM_D10V_MEMORY_UNIFIED = 0x00000000,
+ SIM_D10V_MEMORY_INSN = 0x01000000,
+ SIM_D10V_MEMORY_DATA = 0x02000000,
+ SIM_D10V_MEMORY_DMAP = 0x10000000,
+ SIM_D10V_MEMORY_IMAP = 0x11000000
+ };
+
+extern unsigned long sim_d10v_translate_dmap_addr
+ (unsigned long offset,
+ int nr_bytes,
+ unsigned long *phys,
+ void *regcache,
+ unsigned long (*dmap_register) (void *regcache, int reg_nr));
+
+extern unsigned long sim_d10v_translate_imap_addr
+ (unsigned long offset,
+ int nr_bytes,
+ unsigned long *phys,
+ void *regcache,
+ unsigned long (*imap_register) (void *regcache, int reg_nr));
+
+extern unsigned long sim_d10v_translate_addr
+ (unsigned long vaddr,
+ int nr_bytes,
+ unsigned long *phys,
+ void *regcache,
+ unsigned long (*dmap_register) (void *regcache, int reg_nr),
+ unsigned long (*imap_register) (void *regcache, int reg_nr));
+
+
+/* The simulator makes use of the following register information. */
+
+enum sim_d10v_regs
+{
+ SIM_D10V_R0_REGNUM,
+ SIM_D10V_R1_REGNUM,
+ SIM_D10V_R2_REGNUM,
+ SIM_D10V_R3_REGNUM,
+ SIM_D10V_R4_REGNUM,
+ SIM_D10V_R5_REGNUM,
+ SIM_D10V_R6_REGNUM,
+ SIM_D10V_R7_REGNUM,
+ SIM_D10V_R8_REGNUM,
+ SIM_D10V_R9_REGNUM,
+ SIM_D10V_R10_REGNUM,
+ SIM_D10V_R11_REGNUM,
+ SIM_D10V_R12_REGNUM,
+ SIM_D10V_R13_REGNUM,
+ SIM_D10V_R14_REGNUM,
+ SIM_D10V_R15_REGNUM,
+ SIM_D10V_CR0_REGNUM,
+ SIM_D10V_CR1_REGNUM,
+ SIM_D10V_CR2_REGNUM,
+ SIM_D10V_CR3_REGNUM,
+ SIM_D10V_CR4_REGNUM,
+ SIM_D10V_CR5_REGNUM,
+ SIM_D10V_CR6_REGNUM,
+ SIM_D10V_CR7_REGNUM,
+ SIM_D10V_CR8_REGNUM,
+ SIM_D10V_CR9_REGNUM,
+ SIM_D10V_CR10_REGNUM,
+ SIM_D10V_CR11_REGNUM,
+ SIM_D10V_CR12_REGNUM,
+ SIM_D10V_CR13_REGNUM,
+ SIM_D10V_CR14_REGNUM,
+ SIM_D10V_CR15_REGNUM,
+ SIM_D10V_A0_REGNUM,
+ SIM_D10V_A1_REGNUM,
+ SIM_D10V_SPI_REGNUM,
+ SIM_D10V_SPU_REGNUM,
+ SIM_D10V_IMAP0_REGNUM,
+ SIM_D10V_IMAP1_REGNUM,
+ SIM_D10V_DMAP0_REGNUM,
+ SIM_D10V_DMAP1_REGNUM,
+ SIM_D10V_DMAP2_REGNUM,
+ SIM_D10V_DMAP3_REGNUM,
+ SIM_D10V_TS2_DMAP_REGNUM
+};
+
+enum
+{
+ SIM_D10V_NR_R_REGS = 16,
+ SIM_D10V_NR_A_REGS = 2,
+ SIM_D10V_NR_IMAP_REGS = 2,
+ SIM_D10V_NR_DMAP_REGS = 4,
+ SIM_D10V_NR_CR_REGS = 16
+};
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/include/gdb/sim-frv.h b/include/gdb/sim-frv.h
new file mode 100644
index 000000000..0a1e0212e
--- /dev/null
+++ b/include/gdb/sim-frv.h
@@ -0,0 +1,53 @@
+/* This file defines the interface between the FR-V simulator and GDB.
+
+ Copyright 2003 Free Software Foundation, Inc.
+
+ Contributed by Red Hat.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#if !defined (SIM_FRV_H)
+#define SIM_FRV_H
+
+#ifdef __cplusplus
+extern "C" { // }
+#endif
+
+enum sim_frv_regs
+{
+ SIM_FRV_GR0_REGNUM = 0,
+ SIM_FRV_GR63_REGNUM = 63,
+ SIM_FRV_FR0_REGNUM = 64,
+ SIM_FRV_FR63_REGNUM = 127,
+ SIM_FRV_PC_REGNUM = 128,
+
+ /* An FR-V architecture may have up to 4096 special purpose registers
+ (SPRs). In order to determine a specific constant used to access
+ a particular SPR, one of the H_SPR_ prefixed offsets defined in
+ opcodes/frv-desc.h should be added to SIM_FRV_SPR0_REGNUM. So,
+ for example, the number that GDB uses to fetch the link register
+ from the simulator is (SIM_FRV_SPR0_REGNUM + H_SPR_LR). */
+ SIM_FRV_SPR0_REGNUM = 129,
+ SIM_FRV_SPR4095_REGNUM = SIM_FRV_SPR0_REGNUM + 4095
+};
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/include/gdb/sim-h8300.h b/include/gdb/sim-h8300.h
new file mode 100644
index 000000000..246370aec
--- /dev/null
+++ b/include/gdb/sim-h8300.h
@@ -0,0 +1,78 @@
+/* This file defines the interface between the h8300 simulator and gdb.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined (SIM_H8300_H)
+#define SIM_H8300_H
+
+#ifdef __cplusplus
+extern "C" { //}
+#endif
+
+/* The simulator makes use of the following register information. */
+
+ enum sim_h8300_regs
+ {
+ /* Registers common to all the H8 variants. */
+ /* Start here: */
+ SIM_H8300_R0_REGNUM,
+ SIM_H8300_R1_REGNUM,
+ SIM_H8300_R2_REGNUM,
+ SIM_H8300_R3_REGNUM,
+ SIM_H8300_R4_REGNUM,
+ SIM_H8300_R5_REGNUM,
+ SIM_H8300_R6_REGNUM,
+ SIM_H8300_R7_REGNUM,
+
+ SIM_H8300_CCR_REGNUM, /* Contains processor status */
+ SIM_H8300_PC_REGNUM, /* Contains program counter */
+ /* End here */
+
+ SIM_H8300_EXR_REGNUM, /* Contains extended processor status
+ H8S and higher */
+ SIM_H8300_MACL_REGNUM, /* Lower part of MAC register (26xx only)*/
+ SIM_H8300_MACH_REGNUM, /* High part of MAC register (26xx only) */
+
+ SIM_H8300_CYCLE_REGNUM,
+ SIM_H8300_INST_REGNUM,
+ SIM_H8300_TICK_REGNUM
+ };
+
+ enum
+ {
+ SIM_H8300_ARG_FIRST_REGNUM = SIM_H8300_R0_REGNUM, /* first reg in which an arg
+ may be passed */
+ SIM_H8300_ARG_LAST_REGNUM = SIM_H8300_R3_REGNUM, /* last reg in which an arg
+ may be passed */
+ SIM_H8300_FP_REGNUM = SIM_H8300_R6_REGNUM, /* Contain address of executing
+ stack frame */
+ SIM_H8300_SP_REGNUM = SIM_H8300_R7_REGNUM /* Contains address of top of stack */
+ };
+
+ enum
+ {
+ SIM_H8300_NUM_COMMON_REGS = 10,
+ SIM_H8300_S_NUM_REGS = 13,
+ SIM_H8300_NUM_REGS = 16
+ };
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* SIM_H8300_H */
diff --git a/include/gdb/sim-ppc.h b/include/gdb/sim-ppc.h
new file mode 100644
index 000000000..e31a67112
--- /dev/null
+++ b/include/gdb/sim-ppc.h
@@ -0,0 +1,771 @@
+/* sim-ppc.h --- interface between PowerPC simulator and GDB.
+
+ Copyright 2004 Free Software Foundation, Inc.
+
+ Contributed by Red Hat.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#if !defined (SIM_PPC_H)
+#define SIM_PPC_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* The register access functions, sim_fetch_register and
+ sim_store_register, use the following numbering for PowerPC
+ registers. */
+
+enum sim_ppc_regnum
+ {
+ /* General-purpose registers, r0 -- r31. */
+ sim_ppc_r0_regnum,
+ sim_ppc_r1_regnum,
+ sim_ppc_r2_regnum,
+ sim_ppc_r3_regnum,
+ sim_ppc_r4_regnum,
+ sim_ppc_r5_regnum,
+ sim_ppc_r6_regnum,
+ sim_ppc_r7_regnum,
+ sim_ppc_r8_regnum,
+ sim_ppc_r9_regnum,
+ sim_ppc_r10_regnum,
+ sim_ppc_r11_regnum,
+ sim_ppc_r12_regnum,
+ sim_ppc_r13_regnum,
+ sim_ppc_r14_regnum,
+ sim_ppc_r15_regnum,
+ sim_ppc_r16_regnum,
+ sim_ppc_r17_regnum,
+ sim_ppc_r18_regnum,
+ sim_ppc_r19_regnum,
+ sim_ppc_r20_regnum,
+ sim_ppc_r21_regnum,
+ sim_ppc_r22_regnum,
+ sim_ppc_r23_regnum,
+ sim_ppc_r24_regnum,
+ sim_ppc_r25_regnum,
+ sim_ppc_r26_regnum,
+ sim_ppc_r27_regnum,
+ sim_ppc_r28_regnum,
+ sim_ppc_r29_regnum,
+ sim_ppc_r30_regnum,
+ sim_ppc_r31_regnum,
+
+ /* Floating-point registers, f0 -- f31. */
+ sim_ppc_f0_regnum,
+ sim_ppc_f1_regnum,
+ sim_ppc_f2_regnum,
+ sim_ppc_f3_regnum,
+ sim_ppc_f4_regnum,
+ sim_ppc_f5_regnum,
+ sim_ppc_f6_regnum,
+ sim_ppc_f7_regnum,
+ sim_ppc_f8_regnum,
+ sim_ppc_f9_regnum,
+ sim_ppc_f10_regnum,
+ sim_ppc_f11_regnum,
+ sim_ppc_f12_regnum,
+ sim_ppc_f13_regnum,
+ sim_ppc_f14_regnum,
+ sim_ppc_f15_regnum,
+ sim_ppc_f16_regnum,
+ sim_ppc_f17_regnum,
+ sim_ppc_f18_regnum,
+ sim_ppc_f19_regnum,
+ sim_ppc_f20_regnum,
+ sim_ppc_f21_regnum,
+ sim_ppc_f22_regnum,
+ sim_ppc_f23_regnum,
+ sim_ppc_f24_regnum,
+ sim_ppc_f25_regnum,
+ sim_ppc_f26_regnum,
+ sim_ppc_f27_regnum,
+ sim_ppc_f28_regnum,
+ sim_ppc_f29_regnum,
+ sim_ppc_f30_regnum,
+ sim_ppc_f31_regnum,
+
+ /* Altivec vector registers, vr0 -- vr31. */
+ sim_ppc_vr0_regnum,
+ sim_ppc_vr1_regnum,
+ sim_ppc_vr2_regnum,
+ sim_ppc_vr3_regnum,
+ sim_ppc_vr4_regnum,
+ sim_ppc_vr5_regnum,
+ sim_ppc_vr6_regnum,
+ sim_ppc_vr7_regnum,
+ sim_ppc_vr8_regnum,
+ sim_ppc_vr9_regnum,
+ sim_ppc_vr10_regnum,
+ sim_ppc_vr11_regnum,
+ sim_ppc_vr12_regnum,
+ sim_ppc_vr13_regnum,
+ sim_ppc_vr14_regnum,
+ sim_ppc_vr15_regnum,
+ sim_ppc_vr16_regnum,
+ sim_ppc_vr17_regnum,
+ sim_ppc_vr18_regnum,
+ sim_ppc_vr19_regnum,
+ sim_ppc_vr20_regnum,
+ sim_ppc_vr21_regnum,
+ sim_ppc_vr22_regnum,
+ sim_ppc_vr23_regnum,
+ sim_ppc_vr24_regnum,
+ sim_ppc_vr25_regnum,
+ sim_ppc_vr26_regnum,
+ sim_ppc_vr27_regnum,
+ sim_ppc_vr28_regnum,
+ sim_ppc_vr29_regnum,
+ sim_ppc_vr30_regnum,
+ sim_ppc_vr31_regnum,
+
+ /* SPE APU GPR upper halves. These are the upper 32 bits of the
+ gprs; there is one upper-half register for each gpr, so it is
+ appropriate to use sim_ppc_num_gprs for iterating through
+ these. */
+ sim_ppc_rh0_regnum,
+ sim_ppc_rh1_regnum,
+ sim_ppc_rh2_regnum,
+ sim_ppc_rh3_regnum,
+ sim_ppc_rh4_regnum,
+ sim_ppc_rh5_regnum,
+ sim_ppc_rh6_regnum,
+ sim_ppc_rh7_regnum,
+ sim_ppc_rh8_regnum,
+ sim_ppc_rh9_regnum,
+ sim_ppc_rh10_regnum,
+ sim_ppc_rh11_regnum,
+ sim_ppc_rh12_regnum,
+ sim_ppc_rh13_regnum,
+ sim_ppc_rh14_regnum,
+ sim_ppc_rh15_regnum,
+ sim_ppc_rh16_regnum,
+ sim_ppc_rh17_regnum,
+ sim_ppc_rh18_regnum,
+ sim_ppc_rh19_regnum,
+ sim_ppc_rh20_regnum,
+ sim_ppc_rh21_regnum,
+ sim_ppc_rh22_regnum,
+ sim_ppc_rh23_regnum,
+ sim_ppc_rh24_regnum,
+ sim_ppc_rh25_regnum,
+ sim_ppc_rh26_regnum,
+ sim_ppc_rh27_regnum,
+ sim_ppc_rh28_regnum,
+ sim_ppc_rh29_regnum,
+ sim_ppc_rh30_regnum,
+ sim_ppc_rh31_regnum,
+
+ /* SPE APU GPR full registers. Each of these registers is the
+ 64-bit concatenation of a 32-bit GPR (providing the lower bits)
+ and a 32-bit upper-half register (providing the higher bits).
+ As for the upper-half registers, it is appropriate to use
+ sim_ppc_num_gprs with these. */
+ sim_ppc_ev0_regnum,
+ sim_ppc_ev1_regnum,
+ sim_ppc_ev2_regnum,
+ sim_ppc_ev3_regnum,
+ sim_ppc_ev4_regnum,
+ sim_ppc_ev5_regnum,
+ sim_ppc_ev6_regnum,
+ sim_ppc_ev7_regnum,
+ sim_ppc_ev8_regnum,
+ sim_ppc_ev9_regnum,
+ sim_ppc_ev10_regnum,
+ sim_ppc_ev11_regnum,
+ sim_ppc_ev12_regnum,
+ sim_ppc_ev13_regnum,
+ sim_ppc_ev14_regnum,
+ sim_ppc_ev15_regnum,
+ sim_ppc_ev16_regnum,
+ sim_ppc_ev17_regnum,
+ sim_ppc_ev18_regnum,
+ sim_ppc_ev19_regnum,
+ sim_ppc_ev20_regnum,
+ sim_ppc_ev21_regnum,
+ sim_ppc_ev22_regnum,
+ sim_ppc_ev23_regnum,
+ sim_ppc_ev24_regnum,
+ sim_ppc_ev25_regnum,
+ sim_ppc_ev26_regnum,
+ sim_ppc_ev27_regnum,
+ sim_ppc_ev28_regnum,
+ sim_ppc_ev29_regnum,
+ sim_ppc_ev30_regnum,
+ sim_ppc_ev31_regnum,
+
+ /* Segment registers, sr0 -- sr15. */
+ sim_ppc_sr0_regnum,
+ sim_ppc_sr1_regnum,
+ sim_ppc_sr2_regnum,
+ sim_ppc_sr3_regnum,
+ sim_ppc_sr4_regnum,
+ sim_ppc_sr5_regnum,
+ sim_ppc_sr6_regnum,
+ sim_ppc_sr7_regnum,
+ sim_ppc_sr8_regnum,
+ sim_ppc_sr9_regnum,
+ sim_ppc_sr10_regnum,
+ sim_ppc_sr11_regnum,
+ sim_ppc_sr12_regnum,
+ sim_ppc_sr13_regnum,
+ sim_ppc_sr14_regnum,
+ sim_ppc_sr15_regnum,
+
+ /* Miscellaneous --- but non-SPR --- registers. */
+ sim_ppc_pc_regnum,
+ sim_ppc_ps_regnum,
+ sim_ppc_cr_regnum,
+ sim_ppc_fpscr_regnum,
+ sim_ppc_acc_regnum,
+ sim_ppc_vscr_regnum,
+
+ /* Special-purpose registers. */
+ sim_ppc_spr0_regnum, sim_ppc_spr1_regnum,
+ sim_ppc_spr2_regnum, sim_ppc_spr3_regnum,
+ sim_ppc_spr4_regnum, sim_ppc_spr5_regnum,
+ sim_ppc_spr6_regnum, sim_ppc_spr7_regnum,
+ sim_ppc_spr8_regnum, sim_ppc_spr9_regnum,
+ sim_ppc_spr10_regnum, sim_ppc_spr11_regnum,
+ sim_ppc_spr12_regnum, sim_ppc_spr13_regnum,
+ sim_ppc_spr14_regnum, sim_ppc_spr15_regnum,
+ sim_ppc_spr16_regnum, sim_ppc_spr17_regnum,
+ sim_ppc_spr18_regnum, sim_ppc_spr19_regnum,
+ sim_ppc_spr20_regnum, sim_ppc_spr21_regnum,
+ sim_ppc_spr22_regnum, sim_ppc_spr23_regnum,
+ sim_ppc_spr24_regnum, sim_ppc_spr25_regnum,
+ sim_ppc_spr26_regnum, sim_ppc_spr27_regnum,
+ sim_ppc_spr28_regnum, sim_ppc_spr29_regnum,
+ sim_ppc_spr30_regnum, sim_ppc_spr31_regnum,
+ sim_ppc_spr32_regnum, sim_ppc_spr33_regnum,
+ sim_ppc_spr34_regnum, sim_ppc_spr35_regnum,
+ sim_ppc_spr36_regnum, sim_ppc_spr37_regnum,
+ sim_ppc_spr38_regnum, sim_ppc_spr39_regnum,
+ sim_ppc_spr40_regnum, sim_ppc_spr41_regnum,
+ sim_ppc_spr42_regnum, sim_ppc_spr43_regnum,
+ sim_ppc_spr44_regnum, sim_ppc_spr45_regnum,
+ sim_ppc_spr46_regnum, sim_ppc_spr47_regnum,
+ sim_ppc_spr48_regnum, sim_ppc_spr49_regnum,
+ sim_ppc_spr50_regnum, sim_ppc_spr51_regnum,
+ sim_ppc_spr52_regnum, sim_ppc_spr53_regnum,
+ sim_ppc_spr54_regnum, sim_ppc_spr55_regnum,
+ sim_ppc_spr56_regnum, sim_ppc_spr57_regnum,
+ sim_ppc_spr58_regnum, sim_ppc_spr59_regnum,
+ sim_ppc_spr60_regnum, sim_ppc_spr61_regnum,
+ sim_ppc_spr62_regnum, sim_ppc_spr63_regnum,
+ sim_ppc_spr64_regnum, sim_ppc_spr65_regnum,
+ sim_ppc_spr66_regnum, sim_ppc_spr67_regnum,
+ sim_ppc_spr68_regnum, sim_ppc_spr69_regnum,
+ sim_ppc_spr70_regnum, sim_ppc_spr71_regnum,
+ sim_ppc_spr72_regnum, sim_ppc_spr73_regnum,
+ sim_ppc_spr74_regnum, sim_ppc_spr75_regnum,
+ sim_ppc_spr76_regnum, sim_ppc_spr77_regnum,
+ sim_ppc_spr78_regnum, sim_ppc_spr79_regnum,
+ sim_ppc_spr80_regnum, sim_ppc_spr81_regnum,
+ sim_ppc_spr82_regnum, sim_ppc_spr83_regnum,
+ sim_ppc_spr84_regnum, sim_ppc_spr85_regnum,
+ sim_ppc_spr86_regnum, sim_ppc_spr87_regnum,
+ sim_ppc_spr88_regnum, sim_ppc_spr89_regnum,
+ sim_ppc_spr90_regnum, sim_ppc_spr91_regnum,
+ sim_ppc_spr92_regnum, sim_ppc_spr93_regnum,
+ sim_ppc_spr94_regnum, sim_ppc_spr95_regnum,
+ sim_ppc_spr96_regnum, sim_ppc_spr97_regnum,
+ sim_ppc_spr98_regnum, sim_ppc_spr99_regnum,
+ sim_ppc_spr100_regnum, sim_ppc_spr101_regnum,
+ sim_ppc_spr102_regnum, sim_ppc_spr103_regnum,
+ sim_ppc_spr104_regnum, sim_ppc_spr105_regnum,
+ sim_ppc_spr106_regnum, sim_ppc_spr107_regnum,
+ sim_ppc_spr108_regnum, sim_ppc_spr109_regnum,
+ sim_ppc_spr110_regnum, sim_ppc_spr111_regnum,
+ sim_ppc_spr112_regnum, sim_ppc_spr113_regnum,
+ sim_ppc_spr114_regnum, sim_ppc_spr115_regnum,
+ sim_ppc_spr116_regnum, sim_ppc_spr117_regnum,
+ sim_ppc_spr118_regnum, sim_ppc_spr119_regnum,
+ sim_ppc_spr120_regnum, sim_ppc_spr121_regnum,
+ sim_ppc_spr122_regnum, sim_ppc_spr123_regnum,
+ sim_ppc_spr124_regnum, sim_ppc_spr125_regnum,
+ sim_ppc_spr126_regnum, sim_ppc_spr127_regnum,
+ sim_ppc_spr128_regnum, sim_ppc_spr129_regnum,
+ sim_ppc_spr130_regnum, sim_ppc_spr131_regnum,
+ sim_ppc_spr132_regnum, sim_ppc_spr133_regnum,
+ sim_ppc_spr134_regnum, sim_ppc_spr135_regnum,
+ sim_ppc_spr136_regnum, sim_ppc_spr137_regnum,
+ sim_ppc_spr138_regnum, sim_ppc_spr139_regnum,
+ sim_ppc_spr140_regnum, sim_ppc_spr141_regnum,
+ sim_ppc_spr142_regnum, sim_ppc_spr143_regnum,
+ sim_ppc_spr144_regnum, sim_ppc_spr145_regnum,
+ sim_ppc_spr146_regnum, sim_ppc_spr147_regnum,
+ sim_ppc_spr148_regnum, sim_ppc_spr149_regnum,
+ sim_ppc_spr150_regnum, sim_ppc_spr151_regnum,
+ sim_ppc_spr152_regnum, sim_ppc_spr153_regnum,
+ sim_ppc_spr154_regnum, sim_ppc_spr155_regnum,
+ sim_ppc_spr156_regnum, sim_ppc_spr157_regnum,
+ sim_ppc_spr158_regnum, sim_ppc_spr159_regnum,
+ sim_ppc_spr160_regnum, sim_ppc_spr161_regnum,
+ sim_ppc_spr162_regnum, sim_ppc_spr163_regnum,
+ sim_ppc_spr164_regnum, sim_ppc_spr165_regnum,
+ sim_ppc_spr166_regnum, sim_ppc_spr167_regnum,
+ sim_ppc_spr168_regnum, sim_ppc_spr169_regnum,
+ sim_ppc_spr170_regnum, sim_ppc_spr171_regnum,
+ sim_ppc_spr172_regnum, sim_ppc_spr173_regnum,
+ sim_ppc_spr174_regnum, sim_ppc_spr175_regnum,
+ sim_ppc_spr176_regnum, sim_ppc_spr177_regnum,
+ sim_ppc_spr178_regnum, sim_ppc_spr179_regnum,
+ sim_ppc_spr180_regnum, sim_ppc_spr181_regnum,
+ sim_ppc_spr182_regnum, sim_ppc_spr183_regnum,
+ sim_ppc_spr184_regnum, sim_ppc_spr185_regnum,
+ sim_ppc_spr186_regnum, sim_ppc_spr187_regnum,
+ sim_ppc_spr188_regnum, sim_ppc_spr189_regnum,
+ sim_ppc_spr190_regnum, sim_ppc_spr191_regnum,
+ sim_ppc_spr192_regnum, sim_ppc_spr193_regnum,
+ sim_ppc_spr194_regnum, sim_ppc_spr195_regnum,
+ sim_ppc_spr196_regnum, sim_ppc_spr197_regnum,
+ sim_ppc_spr198_regnum, sim_ppc_spr199_regnum,
+ sim_ppc_spr200_regnum, sim_ppc_spr201_regnum,
+ sim_ppc_spr202_regnum, sim_ppc_spr203_regnum,
+ sim_ppc_spr204_regnum, sim_ppc_spr205_regnum,
+ sim_ppc_spr206_regnum, sim_ppc_spr207_regnum,
+ sim_ppc_spr208_regnum, sim_ppc_spr209_regnum,
+ sim_ppc_spr210_regnum, sim_ppc_spr211_regnum,
+ sim_ppc_spr212_regnum, sim_ppc_spr213_regnum,
+ sim_ppc_spr214_regnum, sim_ppc_spr215_regnum,
+ sim_ppc_spr216_regnum, sim_ppc_spr217_regnum,
+ sim_ppc_spr218_regnum, sim_ppc_spr219_regnum,
+ sim_ppc_spr220_regnum, sim_ppc_spr221_regnum,
+ sim_ppc_spr222_regnum, sim_ppc_spr223_regnum,
+ sim_ppc_spr224_regnum, sim_ppc_spr225_regnum,
+ sim_ppc_spr226_regnum, sim_ppc_spr227_regnum,
+ sim_ppc_spr228_regnum, sim_ppc_spr229_regnum,
+ sim_ppc_spr230_regnum, sim_ppc_spr231_regnum,
+ sim_ppc_spr232_regnum, sim_ppc_spr233_regnum,
+ sim_ppc_spr234_regnum, sim_ppc_spr235_regnum,
+ sim_ppc_spr236_regnum, sim_ppc_spr237_regnum,
+ sim_ppc_spr238_regnum, sim_ppc_spr239_regnum,
+ sim_ppc_spr240_regnum, sim_ppc_spr241_regnum,
+ sim_ppc_spr242_regnum, sim_ppc_spr243_regnum,
+ sim_ppc_spr244_regnum, sim_ppc_spr245_regnum,
+ sim_ppc_spr246_regnum, sim_ppc_spr247_regnum,
+ sim_ppc_spr248_regnum, sim_ppc_spr249_regnum,
+ sim_ppc_spr250_regnum, sim_ppc_spr251_regnum,
+ sim_ppc_spr252_regnum, sim_ppc_spr253_regnum,
+ sim_ppc_spr254_regnum, sim_ppc_spr255_regnum,
+ sim_ppc_spr256_regnum, sim_ppc_spr257_regnum,
+ sim_ppc_spr258_regnum, sim_ppc_spr259_regnum,
+ sim_ppc_spr260_regnum, sim_ppc_spr261_regnum,
+ sim_ppc_spr262_regnum, sim_ppc_spr263_regnum,
+ sim_ppc_spr264_regnum, sim_ppc_spr265_regnum,
+ sim_ppc_spr266_regnum, sim_ppc_spr267_regnum,
+ sim_ppc_spr268_regnum, sim_ppc_spr269_regnum,
+ sim_ppc_spr270_regnum, sim_ppc_spr271_regnum,
+ sim_ppc_spr272_regnum, sim_ppc_spr273_regnum,
+ sim_ppc_spr274_regnum, sim_ppc_spr275_regnum,
+ sim_ppc_spr276_regnum, sim_ppc_spr277_regnum,
+ sim_ppc_spr278_regnum, sim_ppc_spr279_regnum,
+ sim_ppc_spr280_regnum, sim_ppc_spr281_regnum,
+ sim_ppc_spr282_regnum, sim_ppc_spr283_regnum,
+ sim_ppc_spr284_regnum, sim_ppc_spr285_regnum,
+ sim_ppc_spr286_regnum, sim_ppc_spr287_regnum,
+ sim_ppc_spr288_regnum, sim_ppc_spr289_regnum,
+ sim_ppc_spr290_regnum, sim_ppc_spr291_regnum,
+ sim_ppc_spr292_regnum, sim_ppc_spr293_regnum,
+ sim_ppc_spr294_regnum, sim_ppc_spr295_regnum,
+ sim_ppc_spr296_regnum, sim_ppc_spr297_regnum,
+ sim_ppc_spr298_regnum, sim_ppc_spr299_regnum,
+ sim_ppc_spr300_regnum, sim_ppc_spr301_regnum,
+ sim_ppc_spr302_regnum, sim_ppc_spr303_regnum,
+ sim_ppc_spr304_regnum, sim_ppc_spr305_regnum,
+ sim_ppc_spr306_regnum, sim_ppc_spr307_regnum,
+ sim_ppc_spr308_regnum, sim_ppc_spr309_regnum,
+ sim_ppc_spr310_regnum, sim_ppc_spr311_regnum,
+ sim_ppc_spr312_regnum, sim_ppc_spr313_regnum,
+ sim_ppc_spr314_regnum, sim_ppc_spr315_regnum,
+ sim_ppc_spr316_regnum, sim_ppc_spr317_regnum,
+ sim_ppc_spr318_regnum, sim_ppc_spr319_regnum,
+ sim_ppc_spr320_regnum, sim_ppc_spr321_regnum,
+ sim_ppc_spr322_regnum, sim_ppc_spr323_regnum,
+ sim_ppc_spr324_regnum, sim_ppc_spr325_regnum,
+ sim_ppc_spr326_regnum, sim_ppc_spr327_regnum,
+ sim_ppc_spr328_regnum, sim_ppc_spr329_regnum,
+ sim_ppc_spr330_regnum, sim_ppc_spr331_regnum,
+ sim_ppc_spr332_regnum, sim_ppc_spr333_regnum,
+ sim_ppc_spr334_regnum, sim_ppc_spr335_regnum,
+ sim_ppc_spr336_regnum, sim_ppc_spr337_regnum,
+ sim_ppc_spr338_regnum, sim_ppc_spr339_regnum,
+ sim_ppc_spr340_regnum, sim_ppc_spr341_regnum,
+ sim_ppc_spr342_regnum, sim_ppc_spr343_regnum,
+ sim_ppc_spr344_regnum, sim_ppc_spr345_regnum,
+ sim_ppc_spr346_regnum, sim_ppc_spr347_regnum,
+ sim_ppc_spr348_regnum, sim_ppc_spr349_regnum,
+ sim_ppc_spr350_regnum, sim_ppc_spr351_regnum,
+ sim_ppc_spr352_regnum, sim_ppc_spr353_regnum,
+ sim_ppc_spr354_regnum, sim_ppc_spr355_regnum,
+ sim_ppc_spr356_regnum, sim_ppc_spr357_regnum,
+ sim_ppc_spr358_regnum, sim_ppc_spr359_regnum,
+ sim_ppc_spr360_regnum, sim_ppc_spr361_regnum,
+ sim_ppc_spr362_regnum, sim_ppc_spr363_regnum,
+ sim_ppc_spr364_regnum, sim_ppc_spr365_regnum,
+ sim_ppc_spr366_regnum, sim_ppc_spr367_regnum,
+ sim_ppc_spr368_regnum, sim_ppc_spr369_regnum,
+ sim_ppc_spr370_regnum, sim_ppc_spr371_regnum,
+ sim_ppc_spr372_regnum, sim_ppc_spr373_regnum,
+ sim_ppc_spr374_regnum, sim_ppc_spr375_regnum,
+ sim_ppc_spr376_regnum, sim_ppc_spr377_regnum,
+ sim_ppc_spr378_regnum, sim_ppc_spr379_regnum,
+ sim_ppc_spr380_regnum, sim_ppc_spr381_regnum,
+ sim_ppc_spr382_regnum, sim_ppc_spr383_regnum,
+ sim_ppc_spr384_regnum, sim_ppc_spr385_regnum,
+ sim_ppc_spr386_regnum, sim_ppc_spr387_regnum,
+ sim_ppc_spr388_regnum, sim_ppc_spr389_regnum,
+ sim_ppc_spr390_regnum, sim_ppc_spr391_regnum,
+ sim_ppc_spr392_regnum, sim_ppc_spr393_regnum,
+ sim_ppc_spr394_regnum, sim_ppc_spr395_regnum,
+ sim_ppc_spr396_regnum, sim_ppc_spr397_regnum,
+ sim_ppc_spr398_regnum, sim_ppc_spr399_regnum,
+ sim_ppc_spr400_regnum, sim_ppc_spr401_regnum,
+ sim_ppc_spr402_regnum, sim_ppc_spr403_regnum,
+ sim_ppc_spr404_regnum, sim_ppc_spr405_regnum,
+ sim_ppc_spr406_regnum, sim_ppc_spr407_regnum,
+ sim_ppc_spr408_regnum, sim_ppc_spr409_regnum,
+ sim_ppc_spr410_regnum, sim_ppc_spr411_regnum,
+ sim_ppc_spr412_regnum, sim_ppc_spr413_regnum,
+ sim_ppc_spr414_regnum, sim_ppc_spr415_regnum,
+ sim_ppc_spr416_regnum, sim_ppc_spr417_regnum,
+ sim_ppc_spr418_regnum, sim_ppc_spr419_regnum,
+ sim_ppc_spr420_regnum, sim_ppc_spr421_regnum,
+ sim_ppc_spr422_regnum, sim_ppc_spr423_regnum,
+ sim_ppc_spr424_regnum, sim_ppc_spr425_regnum,
+ sim_ppc_spr426_regnum, sim_ppc_spr427_regnum,
+ sim_ppc_spr428_regnum, sim_ppc_spr429_regnum,
+ sim_ppc_spr430_regnum, sim_ppc_spr431_regnum,
+ sim_ppc_spr432_regnum, sim_ppc_spr433_regnum,
+ sim_ppc_spr434_regnum, sim_ppc_spr435_regnum,
+ sim_ppc_spr436_regnum, sim_ppc_spr437_regnum,
+ sim_ppc_spr438_regnum, sim_ppc_spr439_regnum,
+ sim_ppc_spr440_regnum, sim_ppc_spr441_regnum,
+ sim_ppc_spr442_regnum, sim_ppc_spr443_regnum,
+ sim_ppc_spr444_regnum, sim_ppc_spr445_regnum,
+ sim_ppc_spr446_regnum, sim_ppc_spr447_regnum,
+ sim_ppc_spr448_regnum, sim_ppc_spr449_regnum,
+ sim_ppc_spr450_regnum, sim_ppc_spr451_regnum,
+ sim_ppc_spr452_regnum, sim_ppc_spr453_regnum,
+ sim_ppc_spr454_regnum, sim_ppc_spr455_regnum,
+ sim_ppc_spr456_regnum, sim_ppc_spr457_regnum,
+ sim_ppc_spr458_regnum, sim_ppc_spr459_regnum,
+ sim_ppc_spr460_regnum, sim_ppc_spr461_regnum,
+ sim_ppc_spr462_regnum, sim_ppc_spr463_regnum,
+ sim_ppc_spr464_regnum, sim_ppc_spr465_regnum,
+ sim_ppc_spr466_regnum, sim_ppc_spr467_regnum,
+ sim_ppc_spr468_regnum, sim_ppc_spr469_regnum,
+ sim_ppc_spr470_regnum, sim_ppc_spr471_regnum,
+ sim_ppc_spr472_regnum, sim_ppc_spr473_regnum,
+ sim_ppc_spr474_regnum, sim_ppc_spr475_regnum,
+ sim_ppc_spr476_regnum, sim_ppc_spr477_regnum,
+ sim_ppc_spr478_regnum, sim_ppc_spr479_regnum,
+ sim_ppc_spr480_regnum, sim_ppc_spr481_regnum,
+ sim_ppc_spr482_regnum, sim_ppc_spr483_regnum,
+ sim_ppc_spr484_regnum, sim_ppc_spr485_regnum,
+ sim_ppc_spr486_regnum, sim_ppc_spr487_regnum,
+ sim_ppc_spr488_regnum, sim_ppc_spr489_regnum,
+ sim_ppc_spr490_regnum, sim_ppc_spr491_regnum,
+ sim_ppc_spr492_regnum, sim_ppc_spr493_regnum,
+ sim_ppc_spr494_regnum, sim_ppc_spr495_regnum,
+ sim_ppc_spr496_regnum, sim_ppc_spr497_regnum,
+ sim_ppc_spr498_regnum, sim_ppc_spr499_regnum,
+ sim_ppc_spr500_regnum, sim_ppc_spr501_regnum,
+ sim_ppc_spr502_regnum, sim_ppc_spr503_regnum,
+ sim_ppc_spr504_regnum, sim_ppc_spr505_regnum,
+ sim_ppc_spr506_regnum, sim_ppc_spr507_regnum,
+ sim_ppc_spr508_regnum, sim_ppc_spr509_regnum,
+ sim_ppc_spr510_regnum, sim_ppc_spr511_regnum,
+ sim_ppc_spr512_regnum, sim_ppc_spr513_regnum,
+ sim_ppc_spr514_regnum, sim_ppc_spr515_regnum,
+ sim_ppc_spr516_regnum, sim_ppc_spr517_regnum,
+ sim_ppc_spr518_regnum, sim_ppc_spr519_regnum,
+ sim_ppc_spr520_regnum, sim_ppc_spr521_regnum,
+ sim_ppc_spr522_regnum, sim_ppc_spr523_regnum,
+ sim_ppc_spr524_regnum, sim_ppc_spr525_regnum,
+ sim_ppc_spr526_regnum, sim_ppc_spr527_regnum,
+ sim_ppc_spr528_regnum, sim_ppc_spr529_regnum,
+ sim_ppc_spr530_regnum, sim_ppc_spr531_regnum,
+ sim_ppc_spr532_regnum, sim_ppc_spr533_regnum,
+ sim_ppc_spr534_regnum, sim_ppc_spr535_regnum,
+ sim_ppc_spr536_regnum, sim_ppc_spr537_regnum,
+ sim_ppc_spr538_regnum, sim_ppc_spr539_regnum,
+ sim_ppc_spr540_regnum, sim_ppc_spr541_regnum,
+ sim_ppc_spr542_regnum, sim_ppc_spr543_regnum,
+ sim_ppc_spr544_regnum, sim_ppc_spr545_regnum,
+ sim_ppc_spr546_regnum, sim_ppc_spr547_regnum,
+ sim_ppc_spr548_regnum, sim_ppc_spr549_regnum,
+ sim_ppc_spr550_regnum, sim_ppc_spr551_regnum,
+ sim_ppc_spr552_regnum, sim_ppc_spr553_regnum,
+ sim_ppc_spr554_regnum, sim_ppc_spr555_regnum,
+ sim_ppc_spr556_regnum, sim_ppc_spr557_regnum,
+ sim_ppc_spr558_regnum, sim_ppc_spr559_regnum,
+ sim_ppc_spr560_regnum, sim_ppc_spr561_regnum,
+ sim_ppc_spr562_regnum, sim_ppc_spr563_regnum,
+ sim_ppc_spr564_regnum, sim_ppc_spr565_regnum,
+ sim_ppc_spr566_regnum, sim_ppc_spr567_regnum,
+ sim_ppc_spr568_regnum, sim_ppc_spr569_regnum,
+ sim_ppc_spr570_regnum, sim_ppc_spr571_regnum,
+ sim_ppc_spr572_regnum, sim_ppc_spr573_regnum,
+ sim_ppc_spr574_regnum, sim_ppc_spr575_regnum,
+ sim_ppc_spr576_regnum, sim_ppc_spr577_regnum,
+ sim_ppc_spr578_regnum, sim_ppc_spr579_regnum,
+ sim_ppc_spr580_regnum, sim_ppc_spr581_regnum,
+ sim_ppc_spr582_regnum, sim_ppc_spr583_regnum,
+ sim_ppc_spr584_regnum, sim_ppc_spr585_regnum,
+ sim_ppc_spr586_regnum, sim_ppc_spr587_regnum,
+ sim_ppc_spr588_regnum, sim_ppc_spr589_regnum,
+ sim_ppc_spr590_regnum, sim_ppc_spr591_regnum,
+ sim_ppc_spr592_regnum, sim_ppc_spr593_regnum,
+ sim_ppc_spr594_regnum, sim_ppc_spr595_regnum,
+ sim_ppc_spr596_regnum, sim_ppc_spr597_regnum,
+ sim_ppc_spr598_regnum, sim_ppc_spr599_regnum,
+ sim_ppc_spr600_regnum, sim_ppc_spr601_regnum,
+ sim_ppc_spr602_regnum, sim_ppc_spr603_regnum,
+ sim_ppc_spr604_regnum, sim_ppc_spr605_regnum,
+ sim_ppc_spr606_regnum, sim_ppc_spr607_regnum,
+ sim_ppc_spr608_regnum, sim_ppc_spr609_regnum,
+ sim_ppc_spr610_regnum, sim_ppc_spr611_regnum,
+ sim_ppc_spr612_regnum, sim_ppc_spr613_regnum,
+ sim_ppc_spr614_regnum, sim_ppc_spr615_regnum,
+ sim_ppc_spr616_regnum, sim_ppc_spr617_regnum,
+ sim_ppc_spr618_regnum, sim_ppc_spr619_regnum,
+ sim_ppc_spr620_regnum, sim_ppc_spr621_regnum,
+ sim_ppc_spr622_regnum, sim_ppc_spr623_regnum,
+ sim_ppc_spr624_regnum, sim_ppc_spr625_regnum,
+ sim_ppc_spr626_regnum, sim_ppc_spr627_regnum,
+ sim_ppc_spr628_regnum, sim_ppc_spr629_regnum,
+ sim_ppc_spr630_regnum, sim_ppc_spr631_regnum,
+ sim_ppc_spr632_regnum, sim_ppc_spr633_regnum,
+ sim_ppc_spr634_regnum, sim_ppc_spr635_regnum,
+ sim_ppc_spr636_regnum, sim_ppc_spr637_regnum,
+ sim_ppc_spr638_regnum, sim_ppc_spr639_regnum,
+ sim_ppc_spr640_regnum, sim_ppc_spr641_regnum,
+ sim_ppc_spr642_regnum, sim_ppc_spr643_regnum,
+ sim_ppc_spr644_regnum, sim_ppc_spr645_regnum,
+ sim_ppc_spr646_regnum, sim_ppc_spr647_regnum,
+ sim_ppc_spr648_regnum, sim_ppc_spr649_regnum,
+ sim_ppc_spr650_regnum, sim_ppc_spr651_regnum,
+ sim_ppc_spr652_regnum, sim_ppc_spr653_regnum,
+ sim_ppc_spr654_regnum, sim_ppc_spr655_regnum,
+ sim_ppc_spr656_regnum, sim_ppc_spr657_regnum,
+ sim_ppc_spr658_regnum, sim_ppc_spr659_regnum,
+ sim_ppc_spr660_regnum, sim_ppc_spr661_regnum,
+ sim_ppc_spr662_regnum, sim_ppc_spr663_regnum,
+ sim_ppc_spr664_regnum, sim_ppc_spr665_regnum,
+ sim_ppc_spr666_regnum, sim_ppc_spr667_regnum,
+ sim_ppc_spr668_regnum, sim_ppc_spr669_regnum,
+ sim_ppc_spr670_regnum, sim_ppc_spr671_regnum,
+ sim_ppc_spr672_regnum, sim_ppc_spr673_regnum,
+ sim_ppc_spr674_regnum, sim_ppc_spr675_regnum,
+ sim_ppc_spr676_regnum, sim_ppc_spr677_regnum,
+ sim_ppc_spr678_regnum, sim_ppc_spr679_regnum,
+ sim_ppc_spr680_regnum, sim_ppc_spr681_regnum,
+ sim_ppc_spr682_regnum, sim_ppc_spr683_regnum,
+ sim_ppc_spr684_regnum, sim_ppc_spr685_regnum,
+ sim_ppc_spr686_regnum, sim_ppc_spr687_regnum,
+ sim_ppc_spr688_regnum, sim_ppc_spr689_regnum,
+ sim_ppc_spr690_regnum, sim_ppc_spr691_regnum,
+ sim_ppc_spr692_regnum, sim_ppc_spr693_regnum,
+ sim_ppc_spr694_regnum, sim_ppc_spr695_regnum,
+ sim_ppc_spr696_regnum, sim_ppc_spr697_regnum,
+ sim_ppc_spr698_regnum, sim_ppc_spr699_regnum,
+ sim_ppc_spr700_regnum, sim_ppc_spr701_regnum,
+ sim_ppc_spr702_regnum, sim_ppc_spr703_regnum,
+ sim_ppc_spr704_regnum, sim_ppc_spr705_regnum,
+ sim_ppc_spr706_regnum, sim_ppc_spr707_regnum,
+ sim_ppc_spr708_regnum, sim_ppc_spr709_regnum,
+ sim_ppc_spr710_regnum, sim_ppc_spr711_regnum,
+ sim_ppc_spr712_regnum, sim_ppc_spr713_regnum,
+ sim_ppc_spr714_regnum, sim_ppc_spr715_regnum,
+ sim_ppc_spr716_regnum, sim_ppc_spr717_regnum,
+ sim_ppc_spr718_regnum, sim_ppc_spr719_regnum,
+ sim_ppc_spr720_regnum, sim_ppc_spr721_regnum,
+ sim_ppc_spr722_regnum, sim_ppc_spr723_regnum,
+ sim_ppc_spr724_regnum, sim_ppc_spr725_regnum,
+ sim_ppc_spr726_regnum, sim_ppc_spr727_regnum,
+ sim_ppc_spr728_regnum, sim_ppc_spr729_regnum,
+ sim_ppc_spr730_regnum, sim_ppc_spr731_regnum,
+ sim_ppc_spr732_regnum, sim_ppc_spr733_regnum,
+ sim_ppc_spr734_regnum, sim_ppc_spr735_regnum,
+ sim_ppc_spr736_regnum, sim_ppc_spr737_regnum,
+ sim_ppc_spr738_regnum, sim_ppc_spr739_regnum,
+ sim_ppc_spr740_regnum, sim_ppc_spr741_regnum,
+ sim_ppc_spr742_regnum, sim_ppc_spr743_regnum,
+ sim_ppc_spr744_regnum, sim_ppc_spr745_regnum,
+ sim_ppc_spr746_regnum, sim_ppc_spr747_regnum,
+ sim_ppc_spr748_regnum, sim_ppc_spr749_regnum,
+ sim_ppc_spr750_regnum, sim_ppc_spr751_regnum,
+ sim_ppc_spr752_regnum, sim_ppc_spr753_regnum,
+ sim_ppc_spr754_regnum, sim_ppc_spr755_regnum,
+ sim_ppc_spr756_regnum, sim_ppc_spr757_regnum,
+ sim_ppc_spr758_regnum, sim_ppc_spr759_regnum,
+ sim_ppc_spr760_regnum, sim_ppc_spr761_regnum,
+ sim_ppc_spr762_regnum, sim_ppc_spr763_regnum,
+ sim_ppc_spr764_regnum, sim_ppc_spr765_regnum,
+ sim_ppc_spr766_regnum, sim_ppc_spr767_regnum,
+ sim_ppc_spr768_regnum, sim_ppc_spr769_regnum,
+ sim_ppc_spr770_regnum, sim_ppc_spr771_regnum,
+ sim_ppc_spr772_regnum, sim_ppc_spr773_regnum,
+ sim_ppc_spr774_regnum, sim_ppc_spr775_regnum,
+ sim_ppc_spr776_regnum, sim_ppc_spr777_regnum,
+ sim_ppc_spr778_regnum, sim_ppc_spr779_regnum,
+ sim_ppc_spr780_regnum, sim_ppc_spr781_regnum,
+ sim_ppc_spr782_regnum, sim_ppc_spr783_regnum,
+ sim_ppc_spr784_regnum, sim_ppc_spr785_regnum,
+ sim_ppc_spr786_regnum, sim_ppc_spr787_regnum,
+ sim_ppc_spr788_regnum, sim_ppc_spr789_regnum,
+ sim_ppc_spr790_regnum, sim_ppc_spr791_regnum,
+ sim_ppc_spr792_regnum, sim_ppc_spr793_regnum,
+ sim_ppc_spr794_regnum, sim_ppc_spr795_regnum,
+ sim_ppc_spr796_regnum, sim_ppc_spr797_regnum,
+ sim_ppc_spr798_regnum, sim_ppc_spr799_regnum,
+ sim_ppc_spr800_regnum, sim_ppc_spr801_regnum,
+ sim_ppc_spr802_regnum, sim_ppc_spr803_regnum,
+ sim_ppc_spr804_regnum, sim_ppc_spr805_regnum,
+ sim_ppc_spr806_regnum, sim_ppc_spr807_regnum,
+ sim_ppc_spr808_regnum, sim_ppc_spr809_regnum,
+ sim_ppc_spr810_regnum, sim_ppc_spr811_regnum,
+ sim_ppc_spr812_regnum, sim_ppc_spr813_regnum,
+ sim_ppc_spr814_regnum, sim_ppc_spr815_regnum,
+ sim_ppc_spr816_regnum, sim_ppc_spr817_regnum,
+ sim_ppc_spr818_regnum, sim_ppc_spr819_regnum,
+ sim_ppc_spr820_regnum, sim_ppc_spr821_regnum,
+ sim_ppc_spr822_regnum, sim_ppc_spr823_regnum,
+ sim_ppc_spr824_regnum, sim_ppc_spr825_regnum,
+ sim_ppc_spr826_regnum, sim_ppc_spr827_regnum,
+ sim_ppc_spr828_regnum, sim_ppc_spr829_regnum,
+ sim_ppc_spr830_regnum, sim_ppc_spr831_regnum,
+ sim_ppc_spr832_regnum, sim_ppc_spr833_regnum,
+ sim_ppc_spr834_regnum, sim_ppc_spr835_regnum,
+ sim_ppc_spr836_regnum, sim_ppc_spr837_regnum,
+ sim_ppc_spr838_regnum, sim_ppc_spr839_regnum,
+ sim_ppc_spr840_regnum, sim_ppc_spr841_regnum,
+ sim_ppc_spr842_regnum, sim_ppc_spr843_regnum,
+ sim_ppc_spr844_regnum, sim_ppc_spr845_regnum,
+ sim_ppc_spr846_regnum, sim_ppc_spr847_regnum,
+ sim_ppc_spr848_regnum, sim_ppc_spr849_regnum,
+ sim_ppc_spr850_regnum, sim_ppc_spr851_regnum,
+ sim_ppc_spr852_regnum, sim_ppc_spr853_regnum,
+ sim_ppc_spr854_regnum, sim_ppc_spr855_regnum,
+ sim_ppc_spr856_regnum, sim_ppc_spr857_regnum,
+ sim_ppc_spr858_regnum, sim_ppc_spr859_regnum,
+ sim_ppc_spr860_regnum, sim_ppc_spr861_regnum,
+ sim_ppc_spr862_regnum, sim_ppc_spr863_regnum,
+ sim_ppc_spr864_regnum, sim_ppc_spr865_regnum,
+ sim_ppc_spr866_regnum, sim_ppc_spr867_regnum,
+ sim_ppc_spr868_regnum, sim_ppc_spr869_regnum,
+ sim_ppc_spr870_regnum, sim_ppc_spr871_regnum,
+ sim_ppc_spr872_regnum, sim_ppc_spr873_regnum,
+ sim_ppc_spr874_regnum, sim_ppc_spr875_regnum,
+ sim_ppc_spr876_regnum, sim_ppc_spr877_regnum,
+ sim_ppc_spr878_regnum, sim_ppc_spr879_regnum,
+ sim_ppc_spr880_regnum, sim_ppc_spr881_regnum,
+ sim_ppc_spr882_regnum, sim_ppc_spr883_regnum,
+ sim_ppc_spr884_regnum, sim_ppc_spr885_regnum,
+ sim_ppc_spr886_regnum, sim_ppc_spr887_regnum,
+ sim_ppc_spr888_regnum, sim_ppc_spr889_regnum,
+ sim_ppc_spr890_regnum, sim_ppc_spr891_regnum,
+ sim_ppc_spr892_regnum, sim_ppc_spr893_regnum,
+ sim_ppc_spr894_regnum, sim_ppc_spr895_regnum,
+ sim_ppc_spr896_regnum, sim_ppc_spr897_regnum,
+ sim_ppc_spr898_regnum, sim_ppc_spr899_regnum,
+ sim_ppc_spr900_regnum, sim_ppc_spr901_regnum,
+ sim_ppc_spr902_regnum, sim_ppc_spr903_regnum,
+ sim_ppc_spr904_regnum, sim_ppc_spr905_regnum,
+ sim_ppc_spr906_regnum, sim_ppc_spr907_regnum,
+ sim_ppc_spr908_regnum, sim_ppc_spr909_regnum,
+ sim_ppc_spr910_regnum, sim_ppc_spr911_regnum,
+ sim_ppc_spr912_regnum, sim_ppc_spr913_regnum,
+ sim_ppc_spr914_regnum, sim_ppc_spr915_regnum,
+ sim_ppc_spr916_regnum, sim_ppc_spr917_regnum,
+ sim_ppc_spr918_regnum, sim_ppc_spr919_regnum,
+ sim_ppc_spr920_regnum, sim_ppc_spr921_regnum,
+ sim_ppc_spr922_regnum, sim_ppc_spr923_regnum,
+ sim_ppc_spr924_regnum, sim_ppc_spr925_regnum,
+ sim_ppc_spr926_regnum, sim_ppc_spr927_regnum,
+ sim_ppc_spr928_regnum, sim_ppc_spr929_regnum,
+ sim_ppc_spr930_regnum, sim_ppc_spr931_regnum,
+ sim_ppc_spr932_regnum, sim_ppc_spr933_regnum,
+ sim_ppc_spr934_regnum, sim_ppc_spr935_regnum,
+ sim_ppc_spr936_regnum, sim_ppc_spr937_regnum,
+ sim_ppc_spr938_regnum, sim_ppc_spr939_regnum,
+ sim_ppc_spr940_regnum, sim_ppc_spr941_regnum,
+ sim_ppc_spr942_regnum, sim_ppc_spr943_regnum,
+ sim_ppc_spr944_regnum, sim_ppc_spr945_regnum,
+ sim_ppc_spr946_regnum, sim_ppc_spr947_regnum,
+ sim_ppc_spr948_regnum, sim_ppc_spr949_regnum,
+ sim_ppc_spr950_regnum, sim_ppc_spr951_regnum,
+ sim_ppc_spr952_regnum, sim_ppc_spr953_regnum,
+ sim_ppc_spr954_regnum, sim_ppc_spr955_regnum,
+ sim_ppc_spr956_regnum, sim_ppc_spr957_regnum,
+ sim_ppc_spr958_regnum, sim_ppc_spr959_regnum,
+ sim_ppc_spr960_regnum, sim_ppc_spr961_regnum,
+ sim_ppc_spr962_regnum, sim_ppc_spr963_regnum,
+ sim_ppc_spr964_regnum, sim_ppc_spr965_regnum,
+ sim_ppc_spr966_regnum, sim_ppc_spr967_regnum,
+ sim_ppc_spr968_regnum, sim_ppc_spr969_regnum,
+ sim_ppc_spr970_regnum, sim_ppc_spr971_regnum,
+ sim_ppc_spr972_regnum, sim_ppc_spr973_regnum,
+ sim_ppc_spr974_regnum, sim_ppc_spr975_regnum,
+ sim_ppc_spr976_regnum, sim_ppc_spr977_regnum,
+ sim_ppc_spr978_regnum, sim_ppc_spr979_regnum,
+ sim_ppc_spr980_regnum, sim_ppc_spr981_regnum,
+ sim_ppc_spr982_regnum, sim_ppc_spr983_regnum,
+ sim_ppc_spr984_regnum, sim_ppc_spr985_regnum,
+ sim_ppc_spr986_regnum, sim_ppc_spr987_regnum,
+ sim_ppc_spr988_regnum, sim_ppc_spr989_regnum,
+ sim_ppc_spr990_regnum, sim_ppc_spr991_regnum,
+ sim_ppc_spr992_regnum, sim_ppc_spr993_regnum,
+ sim_ppc_spr994_regnum, sim_ppc_spr995_regnum,
+ sim_ppc_spr996_regnum, sim_ppc_spr997_regnum,
+ sim_ppc_spr998_regnum, sim_ppc_spr999_regnum,
+ sim_ppc_spr1000_regnum, sim_ppc_spr1001_regnum,
+ sim_ppc_spr1002_regnum, sim_ppc_spr1003_regnum,
+ sim_ppc_spr1004_regnum, sim_ppc_spr1005_regnum,
+ sim_ppc_spr1006_regnum, sim_ppc_spr1007_regnum,
+ sim_ppc_spr1008_regnum, sim_ppc_spr1009_regnum,
+ sim_ppc_spr1010_regnum, sim_ppc_spr1011_regnum,
+ sim_ppc_spr1012_regnum, sim_ppc_spr1013_regnum,
+ sim_ppc_spr1014_regnum, sim_ppc_spr1015_regnum,
+ sim_ppc_spr1016_regnum, sim_ppc_spr1017_regnum,
+ sim_ppc_spr1018_regnum, sim_ppc_spr1019_regnum,
+ sim_ppc_spr1020_regnum, sim_ppc_spr1021_regnum,
+ sim_ppc_spr1022_regnum, sim_ppc_spr1023_regnum
+ };
+
+
+/* Sizes of various register sets. */
+enum
+ {
+ sim_ppc_num_gprs = 32,
+ sim_ppc_num_fprs = 32,
+ sim_ppc_num_vrs = 32,
+ sim_ppc_num_srs = 16,
+ sim_ppc_num_sprs = 1024,
+ };
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* SIM_PPC_H */
diff --git a/include/gdb/sim-sh.h b/include/gdb/sim-sh.h
new file mode 100644
index 000000000..a40eff631
--- /dev/null
+++ b/include/gdb/sim-sh.h
@@ -0,0 +1,170 @@
+/* This file defines the interface between the sh simulator and gdb.
+ Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined (SIM_SH_H)
+#define SIM_SH_H
+
+#ifdef __cplusplus
+extern "C" { // }
+#endif
+
+/* The simulator makes use of the following register information. */
+
+enum
+{
+ SIM_SH_R0_REGNUM = 0,
+ SIM_SH_R1_REGNUM,
+ SIM_SH_R2_REGNUM,
+ SIM_SH_R3_REGNUM,
+ SIM_SH_R4_REGNUM,
+ SIM_SH_R5_REGNUM,
+ SIM_SH_R6_REGNUM,
+ SIM_SH_R7_REGNUM,
+ SIM_SH_R8_REGNUM,
+ SIM_SH_R9_REGNUM,
+ SIM_SH_R10_REGNUM,
+ SIM_SH_R11_REGNUM,
+ SIM_SH_R12_REGNUM,
+ SIM_SH_R13_REGNUM,
+ SIM_SH_R14_REGNUM,
+ SIM_SH_R15_REGNUM,
+ SIM_SH_PC_REGNUM,
+ SIM_SH_PR_REGNUM,
+ SIM_SH_GBR_REGNUM,
+ SIM_SH_VBR_REGNUM,
+ SIM_SH_MACH_REGNUM,
+ SIM_SH_MACL_REGNUM,
+ SIM_SH_SR_REGNUM,
+ SIM_SH_FPUL_REGNUM,
+ SIM_SH_FPSCR_REGNUM,
+ SIM_SH_FR0_REGNUM, /* FRn registers: sh3e / sh4 */
+ SIM_SH_FR1_REGNUM,
+ SIM_SH_FR2_REGNUM,
+ SIM_SH_FR3_REGNUM,
+ SIM_SH_FR4_REGNUM,
+ SIM_SH_FR5_REGNUM,
+ SIM_SH_FR6_REGNUM,
+ SIM_SH_FR7_REGNUM,
+ SIM_SH_FR8_REGNUM,
+ SIM_SH_FR9_REGNUM,
+ SIM_SH_FR10_REGNUM,
+ SIM_SH_FR11_REGNUM,
+ SIM_SH_FR12_REGNUM,
+ SIM_SH_FR13_REGNUM,
+ SIM_SH_FR14_REGNUM,
+ SIM_SH_FR15_REGNUM,
+ SIM_SH_SSR_REGNUM, /* sh3{,e,-dsp}, sh4 */
+ SIM_SH_SPC_REGNUM, /* sh3{,e,-dsp}, sh4 */
+ SIM_SH_R0_BANK0_REGNUM, /* SIM_SH_Rn_BANKm_REGNUM: sh3[e] / sh4 */
+ SIM_SH_R1_BANK0_REGNUM,
+ SIM_SH_R2_BANK0_REGNUM,
+ SIM_SH_R3_BANK0_REGNUM,
+ SIM_SH_R4_BANK0_REGNUM,
+ SIM_SH_R5_BANK0_REGNUM,
+ SIM_SH_R6_BANK0_REGNUM,
+ SIM_SH_R7_BANK0_REGNUM,
+ SIM_SH_R0_BANK1_REGNUM,
+ SIM_SH_R1_BANK1_REGNUM,
+ SIM_SH_R2_BANK1_REGNUM,
+ SIM_SH_R3_BANK1_REGNUM,
+ SIM_SH_R4_BANK1_REGNUM,
+ SIM_SH_R5_BANK1_REGNUM,
+ SIM_SH_R6_BANK1_REGNUM,
+ SIM_SH_R7_BANK1_REGNUM,
+ SIM_SH_XF0_REGNUM,
+ SIM_SH_XF1_REGNUM,
+ SIM_SH_XF2_REGNUM,
+ SIM_SH_XF3_REGNUM,
+ SIM_SH_XF4_REGNUM,
+ SIM_SH_XF5_REGNUM,
+ SIM_SH_XF6_REGNUM,
+ SIM_SH_XF7_REGNUM,
+ SIM_SH_XF8_REGNUM,
+ SIM_SH_XF9_REGNUM,
+ SIM_SH_XF10_REGNUM,
+ SIM_SH_XF11_REGNUM,
+ SIM_SH_XF12_REGNUM,
+ SIM_SH_XF13_REGNUM,
+ SIM_SH_XF14_REGNUM,
+ SIM_SH_XF15_REGNUM,
+ SIM_SH_SGR_REGNUM,
+ SIM_SH_DBR_REGNUM,
+ SIM_SH4_NUM_REGS, /* 77 */
+
+ /* sh[3]-dsp */
+ SIM_SH_DSR_REGNUM,
+ SIM_SH_A0G_REGNUM,
+ SIM_SH_A0_REGNUM,
+ SIM_SH_A1G_REGNUM,
+ SIM_SH_A1_REGNUM,
+ SIM_SH_M0_REGNUM,
+ SIM_SH_M1_REGNUM,
+ SIM_SH_X0_REGNUM,
+ SIM_SH_X1_REGNUM,
+ SIM_SH_Y0_REGNUM,
+ SIM_SH_Y1_REGNUM,
+ SIM_SH_MOD_REGNUM,
+ SIM_SH_RS_REGNUM,
+ SIM_SH_RE_REGNUM,
+ SIM_SH_R0_BANK_REGNUM,
+ SIM_SH_R1_BANK_REGNUM,
+ SIM_SH_R2_BANK_REGNUM,
+ SIM_SH_R3_BANK_REGNUM,
+ SIM_SH_R4_BANK_REGNUM,
+ SIM_SH_R5_BANK_REGNUM,
+ SIM_SH_R6_BANK_REGNUM,
+ SIM_SH_R7_BANK_REGNUM,
+ /* 109..127: room for expansion. */
+ SIM_SH_TBR_REGNUM,
+ SIM_SH_IBNR_REGNUM,
+ SIM_SH_IBCR_REGNUM,
+ SIM_SH_BANK_REGNUM,
+ SIM_SH_BANK_MACL_REGNUM,
+ SIM_SH_BANK_GBR_REGNUM,
+ SIM_SH_BANK_PR_REGNUM,
+ SIM_SH_BANK_IVN_REGNUM,
+ SIM_SH_BANK_MACH_REGNUM
+};
+
+enum
+{
+ SIM_SH64_R0_REGNUM = 0,
+ SIM_SH64_SP_REGNUM = 15,
+ SIM_SH64_PC_REGNUM = 64,
+ SIM_SH64_SR_REGNUM = 65,
+ SIM_SH64_SSR_REGNUM = 66,
+ SIM_SH64_SPC_REGNUM = 67,
+ SIM_SH64_TR0_REGNUM = 68,
+ SIM_SH64_FPCSR_REGNUM = 76,
+ SIM_SH64_FR0_REGNUM = 77
+};
+
+enum
+{
+ SIM_SH64_NR_REGS = 141, /* total number of architectural registers */
+ SIM_SH64_NR_R_REGS = 64, /* number of general registers */
+ SIM_SH64_NR_TR_REGS = 8, /* number of target registers */
+ SIM_SH64_NR_FP_REGS = 64 /* number of floating point registers */
+};
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/include/gdbm.h b/include/gdbm.h
new file mode 100644
index 000000000..3ebc26d19
--- /dev/null
+++ b/include/gdbm.h
@@ -0,0 +1,91 @@
+/* GNU DBM - DataBase Manager include file
+ Copyright 1989, 1991 Free Software Foundation, Inc.
+ Written by Philip A. Nelson.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* You may contact the author by:
+ e-mail: phil@wwu.edu
+ us-mail: Philip A. Nelson
+ Computer Science Department
+ Western Washington University
+ Bellingham, WA 98226
+ phone: (206) 676-3035
+
+*************************************************************************/
+
+/* Parameters to gdbm_open for READERS, WRITERS, and WRITERS who
+ can create the database. */
+#define GDBM_READER 0
+#define GDBM_WRITER 1
+#define GDBM_WRCREAT 2
+#define GDBM_NEWDB 3
+
+/* Parameters to gdbm_store for simple insertion or replacement. */
+#define GDBM_INSERT 0
+#define GDBM_REPLACE 1
+
+
+/* The data and key structure. This structure is defined for compatibility. */
+typedef struct {
+ char *dptr;
+ int dsize;
+ } datum;
+
+
+/* The file information header. This is good enough for most applications. */
+typedef struct {int dummy[10];} *GDBM_FILE;
+
+
+/* These are the routines! */
+
+extern GDBM_FILE gdbm_open ();
+
+extern void gdbm_close ();
+
+extern datum gdbm_fetch ();
+
+extern int gdbm_store ();
+
+extern int gdbm_delete ();
+
+extern datum gdbm_firstkey ();
+
+extern datum gdbm_nextkey ();
+
+extern int gdbm_reorganize ();
+
+
+/* gdbm sends back the following error codes in the variable gdbm_errno. */
+typedef enum { NO_ERROR,
+ MALLOC_ERROR,
+ BLOCK_SIZE_ERROR,
+ FILE_OPEN_ERROR,
+ FILE_WRITE_ERROR,
+ FILE_SEEK_ERROR,
+ FILE_READ_ERROR,
+ BAD_MAGIC_NUMBER,
+ EMPTY_DATABASE,
+ CANT_BE_READER,
+ CANT_BE_WRITER,
+ READER_CANT_RECOVER,
+ READER_CANT_DELETE,
+ READER_CANT_STORE,
+ READER_CANT_REORGANIZE,
+ UNKNOWN_UPDATE,
+ ITEM_NOT_FOUND,
+ REORGANIZE_FAILED,
+ CANNOT_REPLACE}
+ gdbm_error;
diff --git a/include/getopt.h b/include/getopt.h
new file mode 100644
index 000000000..a99a22901
--- /dev/null
+++ b/include/getopt.h
@@ -0,0 +1,144 @@
+/* Declarations for getopt.
+ Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 2000,
+ 2002 Free Software Foundation, Inc.
+
+ NOTE: The canonical source of this file is maintained with the GNU C Library.
+ Bugs can be reported to bug-glibc@gnu.org.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ USA. */
+
+#ifndef _GETOPT_H
+#define _GETOPT_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* For communication from `getopt' to the caller.
+ When `getopt' finds an option that takes an argument,
+ the argument value is returned here.
+ Also, when `ordering' is RETURN_IN_ORDER,
+ each non-option ARGV-element is returned here. */
+
+extern char *optarg;
+
+/* Index in ARGV of the next element to be scanned.
+ This is used for communication to and from the caller
+ and for communication between successive calls to `getopt'.
+
+ On entry to `getopt', zero means this is the first call; initialize.
+
+ When `getopt' returns -1, this is the index of the first of the
+ non-option elements that the caller should itself scan.
+
+ Otherwise, `optind' communicates from one call to the next
+ how much of ARGV has been scanned so far. */
+
+extern int optind;
+
+/* Callers store zero here to inhibit the error message `getopt' prints
+ for unrecognized options. */
+
+extern int opterr;
+
+/* Set to an option character which was unrecognized. */
+
+extern int optopt;
+
+/* Describe the long-named options requested by the application.
+ The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
+ of `struct option' terminated by an element containing a name which is
+ zero.
+
+ The field `has_arg' is:
+ no_argument (or 0) if the option does not take an argument,
+ required_argument (or 1) if the option requires an argument,
+ optional_argument (or 2) if the option takes an optional argument.
+
+ If the field `flag' is not NULL, it points to a variable that is set
+ to the value given in the field `val' when the option is found, but
+ left unchanged if the option is not found.
+
+ To have a long-named option do something other than set an `int' to
+ a compiled-in constant, such as set a value from `optarg', set the
+ option's `flag' field to zero and its `val' field to a nonzero
+ value (the equivalent single-letter option character, if there is
+ one). For long options that have a zero `flag' field, `getopt'
+ returns the contents of the `val' field. */
+
+struct option
+{
+#if defined (__STDC__) && __STDC__
+ const char *name;
+#else
+ char *name;
+#endif
+ /* has_arg can't be an enum because some compilers complain about
+ type mismatches in all the code that assumes it is an int. */
+ int has_arg;
+ int *flag;
+ int val;
+};
+
+/* Names for the values of the `has_arg' field of `struct option'. */
+
+#define no_argument 0
+#define required_argument 1
+#define optional_argument 2
+
+#if defined (__STDC__) && __STDC__
+/* HAVE_DECL_* is a three-state macro: undefined, 0 or 1. If it is
+ undefined, we haven't run the autoconf check so provide the
+ declaration without arguments. If it is 0, we checked and failed
+ to find the declaration so provide a fully prototyped one. If it
+ is 1, we found it so don't provide any declaration at all. */
+#if !HAVE_DECL_GETOPT
+#if defined (__GNU_LIBRARY__) || defined (HAVE_DECL_GETOPT)
+/* Many other libraries have conflicting prototypes for getopt, with
+ differences in the consts, in unistd.h. To avoid compilation
+ errors, only prototype getopt for the GNU C library. */
+extern int getopt (int argc, char *const *argv, const char *shortopts);
+#else
+#ifndef __cplusplus
+extern int getopt ();
+#endif /* __cplusplus */
+#endif
+#endif /* !HAVE_DECL_GETOPT */
+
+extern int getopt_long (int argc, char *const *argv, const char *shortopts,
+ const struct option *longopts, int *longind);
+extern int getopt_long_only (int argc, char *const *argv,
+ const char *shortopts,
+ const struct option *longopts, int *longind);
+
+/* Internal only. Users should not call this directly. */
+extern int _getopt_internal (int argc, char *const *argv,
+ const char *shortopts,
+ const struct option *longopts, int *longind,
+ int long_only);
+#else /* not __STDC__ */
+extern int getopt ();
+extern int getopt_long ();
+extern int getopt_long_only ();
+
+extern int _getopt_internal ();
+#endif /* __STDC__ */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* getopt.h */
diff --git a/include/hashtab.h b/include/hashtab.h
new file mode 100644
index 000000000..de24dedb9
--- /dev/null
+++ b/include/hashtab.h
@@ -0,0 +1,200 @@
+/* An expandable hash tables datatype.
+ Copyright (C) 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
+ Contributed by Vladimir Makarov (vmakarov@cygnus.com).
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* This package implements basic hash table functionality. It is possible
+ to search for an entry, create an entry and destroy an entry.
+
+ Elements in the table are generic pointers.
+
+ The size of the table is not fixed; if the occupancy of the table
+ grows too high the hash table will be expanded.
+
+ The abstract data implementation is based on generalized Algorithm D
+ from Knuth's book "The art of computer programming". Hash table is
+ expanded by creation of new hash table and transferring elements from
+ the old table to the new table. */
+
+#ifndef __HASHTAB_H__
+#define __HASHTAB_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include "ansidecl.h"
+
+#ifndef GTY
+#define GTY(X)
+#endif
+
+/* The type for a hash code. */
+typedef unsigned int hashval_t;
+
+/* Callback function pointer types. */
+
+/* Calculate hash of a table entry. */
+typedef hashval_t (*htab_hash) PARAMS ((const void *));
+
+/* Compare a table entry with a possible entry. The entry already in
+ the table always comes first, so the second element can be of a
+ different type (but in this case htab_find and htab_find_slot
+ cannot be used; instead the variants that accept a hash value
+ must be used). */
+typedef int (*htab_eq) PARAMS ((const void *, const void *));
+
+/* Cleanup function called whenever a live element is removed from
+ the hash table. */
+typedef void (*htab_del) PARAMS ((void *));
+
+/* Function called by htab_traverse for each live element. The first
+ arg is the slot of the element (which can be passed to htab_clear_slot
+ if desired), the second arg is the auxiliary pointer handed to
+ htab_traverse. Return 1 to continue scan, 0 to stop. */
+typedef int (*htab_trav) PARAMS ((void **, void *));
+
+/* Memory-allocation function, with the same functionality as calloc().
+ Iff it returns NULL, the hash table implementation will pass an error
+ code back to the user, so if your code doesn't handle errors,
+ best if you use xcalloc instead. */
+typedef PTR (*htab_alloc) PARAMS ((size_t, size_t));
+
+/* We also need a free() routine. */
+typedef void (*htab_free) PARAMS ((PTR));
+
+/* Memory allocation and deallocation; variants which take an extra
+ argument. */
+typedef PTR (*htab_alloc_with_arg) PARAMS ((void *, size_t, size_t));
+typedef void (*htab_free_with_arg) PARAMS ((void *, void *));
+
+/* Hash tables are of the following type. The structure
+ (implementation) of this type is not needed for using the hash
+ tables. All work with hash table should be executed only through
+ functions mentioned below. The size of this structure is subject to
+ change. */
+
+struct htab GTY(())
+{
+ /* Pointer to hash function. */
+ htab_hash hash_f;
+
+ /* Pointer to comparison function. */
+ htab_eq eq_f;
+
+ /* Pointer to cleanup function. */
+ htab_del del_f;
+
+ /* Table itself. */
+ PTR * GTY ((use_param, length ("%h.size"))) entries;
+
+ /* Current size (in entries) of the hash table. */
+ size_t size;
+
+ /* Current number of elements including also deleted elements. */
+ size_t n_elements;
+
+ /* Current number of deleted elements in the table. */
+ size_t n_deleted;
+
+ /* The following member is used for debugging. Its value is number
+ of all calls of `htab_find_slot' for the hash table. */
+ unsigned int searches;
+
+ /* The following member is used for debugging. Its value is number
+ of collisions fixed for time of work with the hash table. */
+ unsigned int collisions;
+
+ /* Pointers to allocate/free functions. */
+ htab_alloc alloc_f;
+ htab_free free_f;
+
+ /* Alternate allocate/free functions, which take an extra argument. */
+ PTR GTY((skip)) alloc_arg;
+ htab_alloc_with_arg alloc_with_arg_f;
+ htab_free_with_arg free_with_arg_f;
+
+ /* Current size (in entries) of the hash table, as an index into the
+ table of primes. */
+ unsigned int size_prime_index;
+};
+
+typedef struct htab *htab_t;
+
+/* An enum saying whether we insert into the hash table or not. */
+enum insert_option {NO_INSERT, INSERT};
+
+/* The prototypes of the package functions. */
+
+extern htab_t htab_create_alloc PARAMS ((size_t, htab_hash,
+ htab_eq, htab_del,
+ htab_alloc, htab_free));
+
+extern htab_t htab_create_alloc_ex PARAMS ((size_t, htab_hash,
+ htab_eq, htab_del,
+ PTR, htab_alloc_with_arg,
+ htab_free_with_arg));
+
+/* Backward-compatibility functions. */
+extern htab_t htab_create PARAMS ((size_t, htab_hash, htab_eq, htab_del));
+extern htab_t htab_try_create PARAMS ((size_t, htab_hash, htab_eq, htab_del));
+
+extern void htab_set_functions_ex PARAMS ((htab_t, htab_hash,
+ htab_eq, htab_del,
+ PTR, htab_alloc_with_arg,
+ htab_free_with_arg));
+
+extern void htab_delete PARAMS ((htab_t));
+extern void htab_empty PARAMS ((htab_t));
+
+extern PTR htab_find PARAMS ((htab_t, const void *));
+extern PTR *htab_find_slot PARAMS ((htab_t, const void *,
+ enum insert_option));
+extern PTR htab_find_with_hash PARAMS ((htab_t, const void *,
+ hashval_t));
+extern PTR *htab_find_slot_with_hash PARAMS ((htab_t, const void *,
+ hashval_t,
+ enum insert_option));
+extern void htab_clear_slot PARAMS ((htab_t, void **));
+extern void htab_remove_elt PARAMS ((htab_t, void *));
+extern void htab_remove_elt_with_hash PARAMS ((htab_t, void *, hashval_t));
+
+extern void htab_traverse PARAMS ((htab_t, htab_trav, void *));
+extern void htab_traverse_noresize PARAMS ((htab_t, htab_trav, void *));
+
+extern size_t htab_size PARAMS ((htab_t));
+extern size_t htab_elements PARAMS ((htab_t));
+extern double htab_collisions PARAMS ((htab_t));
+
+/* A hash function for pointers. */
+extern htab_hash htab_hash_pointer;
+
+/* An equality function for pointers. */
+extern htab_eq htab_eq_pointer;
+
+/* A hash function for null-terminated strings. */
+extern hashval_t htab_hash_string PARAMS ((const PTR));
+
+/* An iterative hash function for arbitrary data. */
+extern hashval_t iterative_hash PARAMS ((const PTR, size_t, hashval_t));
+/* Shorthand for hashing something with an intrinsic size. */
+#define iterative_hash_object(OB,INIT) iterative_hash (&OB, sizeof (OB), INIT)
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __HASHTAB_H */
diff --git a/include/hp-symtab.h b/include/hp-symtab.h
new file mode 100644
index 000000000..6267d5572
--- /dev/null
+++ b/include/hp-symtab.h
@@ -0,0 +1,1866 @@
+/* Definitions and structures for reading debug symbols from the
+ native HP C compiler.
+
+ Written by the Center for Software Science at the University of Utah
+ and by Cygnus Support.
+
+ Copyright 1994, 1995, 1998, 1999, 2003 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef HP_SYMTAB_INCLUDED
+#define HP_SYMTAB_INCLUDED
+
+/* General information:
+
+ This header file defines and describes only the data structures
+ necessary to read debug symbols produced by the HP C compiler,
+ HP ANSI C++ compiler, and HP FORTRAN 90 compiler using the
+ SOM object file format.
+ (For a full description of the debug format, ftp hpux-symtab.h from
+ jaguar.cs.utah.edu:/dist).
+
+ Additional notes (Rich Title)
+ This file is a reverse-engineered version of a file called
+ "symtab.h" which exists internal to HP's Computer Languages Organization
+ in /CLO/Components/DDE/obj/som/symtab.h. Because HP's version of
+ the file is copyrighted and not distributed, it is necessary for
+ GDB to use the reverse-engineered version that follows.
+ Work was done by Cygnus to reverse-engineer the C subset of symtab.h.
+ The WDB project has extended this to also contain the C++
+ symbol definitions, the F90 symbol definitions,
+ and the DOC (debugging-optimized-code) symbol definitions.
+ In some cases (the C++ symbol definitions)
+ I have added internal documentation here that
+ goes beyond what is supplied in HP's symtab.h. If we someday
+ unify these files again, the extra comments should be merged back
+ into HP's symtab.h.
+
+ -------------------------------------------------------------------
+
+ Debug symbols are contained entirely within an unloadable space called
+ $DEBUG$. $DEBUG$ contains several subspaces which group related
+ debug symbols.
+
+ $GNTT$ contains information for global variables, types and contants.
+
+ $LNTT$ contains information for procedures (including nesting), scoping
+ information, local variables, types, and constants.
+
+ $SLT$ contains source line information so that code addresses may be
+ mapped to source lines.
+
+ $VT$ contains various strings and constants for named objects (variables,
+ typedefs, functions, etc). Strings are stored as null-terminated character
+ lists. Constants always begin on word boundaries. The first byte of
+ the VT must be zero (a null string).
+
+ $XT$ is not currently used by GDB.
+
+ Many structures within the subspaces point to other structures within
+ the same subspace, or to structures within a different subspace. These
+ pointers are represented as a structure index from the beginning of
+ the appropriate subspace. */
+
+/* Used to describe where a constant is stored. */
+enum location_type
+{
+ LOCATION_IMMEDIATE,
+ LOCATION_PTR,
+ LOCATION_VT,
+};
+
+/* Languages supported by this debug format. Within the data structures
+ this type is limited to 4 bits for a maximum of 16 languages. */
+enum hp_language
+{
+ HP_LANGUAGE_UNKNOWN,
+ HP_LANGUAGE_C,
+ HP_LANGUAGE_FORTRAN,
+ HP_LANGUAGE_F77 = HP_LANGUAGE_FORTRAN,
+ HP_LANGUAGE_PASCAL,
+ HP_LANGUAGE_MODCAL,
+ HP_LANGUAGE_COBOL,
+ HP_LANGUAGE_BASIC,
+ HP_LANGUAGE_ADA,
+ HP_LANGUAGE_CPLUSPLUS,
+ HP_LANGUAGE_DMPASCAL
+};
+
+
+/* Basic data types available in this debug format. Within the data
+ structures this type is limited to 5 bits for a maximum of 32 basic
+ data types. */
+enum hp_type
+{
+ HP_TYPE_UNDEFINED, /* 0 */
+ HP_TYPE_BOOLEAN, /* 1 */
+ HP_TYPE_CHAR, /* 2 */
+ HP_TYPE_INT, /* 3 */
+ HP_TYPE_UNSIGNED_INT, /* 4 */
+ HP_TYPE_REAL, /* 5 */
+ HP_TYPE_COMPLEX, /* 6 */
+ HP_TYPE_STRING200, /* 7 */
+ HP_TYPE_LONGSTRING200, /* 8 */
+ HP_TYPE_TEXT, /* 9 */
+ HP_TYPE_FLABEL, /* 10 */
+ HP_TYPE_FTN_STRING_SPEC, /* 11 */
+ HP_TYPE_MOD_STRING_SPEC, /* 12 */
+ HP_TYPE_PACKED_DECIMAL, /* 13 */
+ HP_TYPE_REAL_3000, /* 14 */
+ HP_TYPE_MOD_STRING_3000, /* 15 */
+ HP_TYPE_ANYPOINTER, /* 16 */
+ HP_TYPE_GLOBAL_ANYPOINTER, /* 17 */
+ HP_TYPE_LOCAL_ANYPOINTER, /* 18 */
+ HP_TYPE_COMPLEXS3000, /* 19 */
+ HP_TYPE_FTN_STRING_S300_COMPAT, /* 20 */
+ HP_TYPE_FTN_STRING_VAX_COMPAT, /* 21 */
+ HP_TYPE_BOOLEAN_S300_COMPAT, /* 22 */
+ HP_TYPE_BOOLEAN_VAX_COMPAT, /* 23 */
+ HP_TYPE_WIDE_CHAR, /* 24 */
+ HP_TYPE_LONG, /* 25 */
+ HP_TYPE_UNSIGNED_LONG, /* 26 */
+ HP_TYPE_DOUBLE, /* 27 */
+ HP_TYPE_TEMPLATE_ARG, /* 28 */
+ HP_TYPE_VOID /* 29 */
+};
+
+/* An immediate name and type table entry.
+
+ extension and immediate will always be one.
+ global will always be zero.
+ hp_type is the basic type this entry describes.
+ bitlength is the length in bits for the basic type. */
+struct dnttp_immediate
+{
+ unsigned int extension: 1;
+ unsigned int immediate: 1;
+ unsigned int global: 1;
+ unsigned int type: 5;
+ unsigned int bitlength: 24;
+};
+
+/* A nonimmediate name and type table entry.
+
+ extension will always be one.
+ immediate will always be zero.
+ if global is zero, this entry points into the LNTT
+ if global is one, this entry points into the GNTT
+ index is the index within the GNTT or LNTT for this entry. */
+struct dnttp_nonimmediate
+{
+ unsigned int extension: 1;
+ unsigned int immediate: 1;
+ unsigned int global: 1;
+ unsigned int index: 29;
+};
+
+/* A pointer to an entry in the GNTT and LNTT tables. It has two
+ forms depending on the type being described.
+
+ The immediate form is used for simple entries and is one
+ word.
+
+ The nonimmediate form is used for complex entries and contains
+ an index into the LNTT or GNTT which describes the entire type.
+
+ If a dnttpointer is -1, then it is a NIL entry. */
+
+#define DNTTNIL (-1)
+typedef union dnttpointer
+{
+ struct dnttp_immediate dntti;
+ struct dnttp_nonimmediate dnttp;
+ int word;
+} dnttpointer;
+
+/* An index into the source line table. As with dnttpointers, a sltpointer
+ of -1 indicates a NIL entry. */
+#define SLTNIL (-1)
+typedef int sltpointer;
+
+/* Index into DOC (= "Debugging Optimized Code") line table. */
+#define LTNIL (-1)
+typedef int ltpointer;
+
+/* Index into context table. */
+#define CTXTNIL (-1)
+typedef int ctxtpointer;
+
+/* Unsigned byte offset into the VT. */
+typedef unsigned int vtpointer;
+
+/* A DNTT entry (used within the GNTT and LNTT).
+
+ DNTT entries are variable sized objects, but are always a multiple
+ of 3 words (we call each group of 3 words a "block").
+
+ The first bit in each block is an extension bit. This bit is zero
+ for the first block of a DNTT entry. If the entry requires more
+ than one block, then this bit is set to one in all blocks after
+ the first one. */
+
+/* Each DNTT entry describes a particular debug symbol (beginning of
+ a source file, a function, variables, structures, etc.
+
+ The type of the DNTT entry is stored in the "kind" field within the
+ DNTT entry itself. */
+
+enum dntt_entry_type
+{
+ DNTT_TYPE_NIL = -1,
+ DNTT_TYPE_SRCFILE,
+ DNTT_TYPE_MODULE,
+ DNTT_TYPE_FUNCTION,
+ DNTT_TYPE_ENTRY,
+ DNTT_TYPE_BEGIN,
+ DNTT_TYPE_END,
+ DNTT_TYPE_IMPORT,
+ DNTT_TYPE_LABEL,
+ DNTT_TYPE_FPARAM,
+ DNTT_TYPE_SVAR,
+ DNTT_TYPE_DVAR,
+ DNTT_TYPE_HOLE1,
+ DNTT_TYPE_CONST,
+ DNTT_TYPE_TYPEDEF,
+ DNTT_TYPE_TAGDEF,
+ DNTT_TYPE_POINTER,
+ DNTT_TYPE_ENUM,
+ DNTT_TYPE_MEMENUM,
+ DNTT_TYPE_SET,
+ DNTT_TYPE_SUBRANGE,
+ DNTT_TYPE_ARRAY,
+ DNTT_TYPE_STRUCT,
+ DNTT_TYPE_UNION,
+ DNTT_TYPE_FIELD,
+ DNTT_TYPE_VARIANT,
+ DNTT_TYPE_FILE,
+ DNTT_TYPE_FUNCTYPE,
+ DNTT_TYPE_WITH,
+ DNTT_TYPE_COMMON,
+ DNTT_TYPE_COBSTRUCT,
+ DNTT_TYPE_XREF,
+ DNTT_TYPE_SA,
+ DNTT_TYPE_MACRO,
+ DNTT_TYPE_BLOCKDATA,
+ DNTT_TYPE_CLASS_SCOPE,
+ DNTT_TYPE_REFERENCE,
+ DNTT_TYPE_PTRMEM,
+ DNTT_TYPE_PTRMEMFUNC,
+ DNTT_TYPE_CLASS,
+ DNTT_TYPE_GENFIELD,
+ DNTT_TYPE_VFUNC,
+ DNTT_TYPE_MEMACCESS,
+ DNTT_TYPE_INHERITANCE,
+ DNTT_TYPE_FRIEND_CLASS,
+ DNTT_TYPE_FRIEND_FUNC,
+ DNTT_TYPE_MODIFIER,
+ DNTT_TYPE_OBJECT_ID,
+ DNTT_TYPE_MEMFUNC,
+ DNTT_TYPE_TEMPLATE,
+ DNTT_TYPE_TEMPLATE_ARG,
+ DNTT_TYPE_FUNC_TEMPLATE,
+ DNTT_TYPE_LINK,
+ DNTT_TYPE_DYN_ARRAY_DESC,
+ DNTT_TYPE_DESC_SUBRANGE,
+ DNTT_TYPE_BEGIN_EXT,
+ DNTT_TYPE_INLN,
+ DNTT_TYPE_INLN_LIST,
+ DNTT_TYPE_ALIAS,
+ DNTT_TYPE_DOC_FUNCTION,
+ DNTT_TYPE_DOC_MEMFUNC,
+ DNTT_TYPE_MAX
+};
+
+/* DNTT_TYPE_SRCFILE:
+
+ One DNTT_TYPE_SRCFILE symbol is output for the start of each source
+ file and at the begin and end of an included file. A DNTT_TYPE_SRCFILE
+ entry is also output before each DNTT_TYPE_FUNC symbol so that debuggers
+ can determine what file a function was defined in.
+
+ LANGUAGE describes the source file's language.
+
+ NAME points to an VT entry providing the source file's name.
+
+ Note the name used for DNTT_TYPE_SRCFILE entries are exactly as seen
+ by the compiler (ie they may be relative or absolute). C include files
+ via <> inclusion must use absolute paths.
+
+ ADDRESS points to an SLT entry from which line number and code locations
+ may be determined. */
+
+struct dntt_type_srcfile
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10; /* DNTT_TYPE_SRCFILE */
+ unsigned int language: 4;
+ unsigned int unused: 17;
+ vtpointer name;
+ sltpointer address;
+};
+
+/* DNTT_TYPE_MODULE:
+
+ A DNTT_TYPE_MODULE symbol is emitted for the start of a pascal
+ module or C source file. A module indicates a compilation unit
+ for name-scoping purposes; in that regard there should be
+ a 1-1 correspondence between GDB "symtab"'s and MODULE symbol records.
+
+ Each DNTT_TYPE_MODULE must have an associated DNTT_TYPE_END symbol.
+
+ NAME points to a VT entry providing the module's name. Note C
+ source files are considered nameless modules.
+
+ ALIAS point to a VT entry providing a secondary name.
+
+ ADDRESS points to an SLT entry from which line number and code locations
+ may be determined. */
+
+struct dntt_type_module
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10; /* DNTT_TYPE_MODULE */
+ unsigned int unused: 21;
+ vtpointer name;
+ vtpointer alias;
+ dnttpointer unused2;
+ sltpointer address;
+};
+
+/* DNTT_TYPE_FUNCTION,
+ DNTT_TYPE_ENTRY,
+ DNTT_TYPE_BLOCKDATA,
+ DNTT_TYPE_MEMFUNC:
+
+ A DNTT_TYPE_FUNCTION symbol is emitted for each function definition;
+ a DNTT_TYPE_ENTRY symbols is used for secondary entry points. Both
+ symbols used the dntt_type_function structure.
+ A DNTT_TYPE_BLOCKDATA symbol is emitted ...?
+ A DNTT_TYPE_MEMFUNC symbol is emitted for inlined member functions (C++).
+
+ Each of DNTT_TYPE_FUNCTION must have a matching DNTT_TYPE_END.
+
+ GLOBAL is nonzero if the function has global scope.
+
+ LANGUAGE describes the function's source language.
+
+ OPT_LEVEL describes the optimization level the function was compiled
+ with.
+
+ VARARGS is nonzero if the function uses varargs.
+
+ NAME points to a VT entry providing the function's name.
+
+ ALIAS points to a VT entry providing a secondary name for the function.
+
+ FIRSTPARAM points to a LNTT entry which describes the parameter list.
+
+ ADDRESS points to an SLT entry from which line number and code locations
+ may be determined.
+
+ ENTRYADDR is the memory address corresponding the function's entry point
+
+ RETVAL points to a LNTT entry describing the function's return value.
+
+ LOWADDR is the lowest memory address associated with this function.
+
+ HIADDR is the highest memory address associated with this function. */
+
+struct dntt_type_function
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10; /* DNTT_TYPE_FUNCTION,
+ DNTT_TYPE_ENTRY,
+ DNTT_TYPE_BLOCKDATA
+ or DNTT_TYPE_MEMFUNC */
+ unsigned int global: 1;
+ unsigned int language: 4;
+ unsigned int nest_level: 5;
+ unsigned int opt_level: 2;
+ unsigned int varargs: 1;
+ unsigned int lang_info: 4;
+ unsigned int inlined: 1;
+ unsigned int localalloc: 1;
+ unsigned int expansion: 1;
+ unsigned int unused: 1;
+ vtpointer name;
+ vtpointer alias;
+ dnttpointer firstparam;
+ sltpointer address;
+ CORE_ADDR entryaddr;
+ dnttpointer retval;
+ CORE_ADDR lowaddr;
+ CORE_ADDR hiaddr;
+};
+
+/* DNTT_TYPE_BEGIN:
+
+ A DNTT_TYPE_BEGIN symbol is emitted to begin a new nested scope.
+ Every DNTT_TYPE_BEGIN symbol must have a matching DNTT_TYPE_END symbol.
+
+ CLASSFLAG is nonzero if this is the beginning of a c++ class definition.
+
+ ADDRESS points to an SLT entry from which line number and code locations
+ may be determined. */
+
+struct dntt_type_begin
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int classflag: 1;
+ unsigned int unused: 20;
+ sltpointer address;
+};
+
+/* DNTT_TYPE_END:
+
+ A DNTT_TYPE_END symbol is emitted when closing a scope started by
+ a DNTT_TYPE_MODULE, DNTT_TYPE_FUNCTION, DNTT_TYPE_WITH,
+ DNTT_TYPE_COMMON, DNTT_TYPE_BEGIN, and DNTT_TYPE_CLASS_SCOPE symbols.
+
+ ENDKIND describes what type of scope the DNTT_TYPE_END is closing
+ (one of the above 6 kinds).
+
+ CLASSFLAG is nonzero if this is the end of a c++ class definition.
+
+ ADDRESS points to an SLT entry from which line number and code locations
+ may be determined.
+
+ BEGINSCOPE points to the LNTT entry which opened the scope. */
+
+struct dntt_type_end
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int endkind: 10;
+ unsigned int classflag: 1;
+ unsigned int unused: 10;
+ sltpointer address;
+ dnttpointer beginscope;
+};
+
+/* DNTT_TYPE_IMPORT is unused by GDB. */
+/* DNTT_TYPE_LABEL is unused by GDB. */
+
+/* DNTT_TYPE_FPARAM:
+
+ A DNTT_TYPE_FPARAM symbol is emitted for a function argument. When
+ chained together the symbols represent an argument list for a function.
+
+ REGPARAM is nonzero if this parameter was passed in a register.
+
+ INDIRECT is nonzero if this parameter is a pointer to the parameter
+ (pass by reference or pass by value for large items).
+
+ LONGADDR is nonzero if the parameter is a 64bit pointer.
+
+ NAME is a pointer into the VT for the parameter's name.
+
+ LOCATION describes where the parameter is stored. Depending on the
+ parameter type LOCATION could be a register number, or an offset
+ from the stack pointer.
+
+ TYPE points to a NTT entry describing the type of this parameter.
+
+ NEXTPARAM points to the LNTT entry describing the next parameter. */
+
+struct dntt_type_fparam
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int regparam: 1;
+ unsigned int indirect: 1;
+ unsigned int longaddr: 1;
+ unsigned int copyparam: 1;
+ unsigned int dflt: 1;
+ unsigned int doc_ranges: 1;
+ unsigned int misc_kind: 1;
+ unsigned int unused: 14;
+ vtpointer name;
+ CORE_ADDR location;
+ dnttpointer type;
+ dnttpointer nextparam;
+ int misc;
+};
+
+/* DNTT_TYPE_SVAR:
+
+ A DNTT_TYPE_SVAR is emitted to describe a variable in static storage.
+
+ GLOBAL is nonzero if the variable has global scope.
+
+ INDIRECT is nonzero if the variable is a pointer to an object.
+
+ LONGADDR is nonzero if the variable is in long pointer space.
+
+ STATICMEM is nonzero if the variable is a member of a class.
+
+ A_UNION is nonzero if the variable is an anonymous union member.
+
+ NAME is a pointer into the VT for the variable's name.
+
+ LOCATION provides the memory address for the variable.
+
+ TYPE is a pointer into either the GNTT or LNTT which describes
+ the type of this variable. */
+
+struct dntt_type_svar
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int global: 1;
+ unsigned int indirect: 1;
+ unsigned int longaddr: 1;
+ unsigned int staticmem: 1;
+ unsigned int a_union: 1;
+ unsigned int unused1: 1;
+ unsigned int thread_specific: 1;
+ unsigned int unused2: 14;
+ vtpointer name;
+ CORE_ADDR location;
+ dnttpointer type;
+ unsigned int offset;
+ unsigned int displacement;
+};
+
+/* DNTT_TYPE_DVAR:
+
+ A DNTT_TYPE_DVAR is emitted to describe automatic variables and variables
+ held in registers.
+
+ GLOBAL is nonzero if the variable has global scope.
+
+ INDIRECT is nonzero if the variable is a pointer to an object.
+
+ REGVAR is nonzero if the variable is in a register.
+
+ A_UNION is nonzero if the variable is an anonymous union member.
+
+ NAME is a pointer into the VT for the variable's name.
+
+ LOCATION provides the memory address or register number for the variable.
+
+ TYPE is a pointer into either the GNTT or LNTT which describes
+ the type of this variable. */
+
+struct dntt_type_dvar
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int global: 1;
+ unsigned int indirect: 1;
+ unsigned int regvar: 1;
+ unsigned int a_union: 1;
+ unsigned int unused: 17;
+ vtpointer name;
+ int location;
+ dnttpointer type;
+ unsigned int offset;
+};
+
+/* DNTT_TYPE_CONST:
+
+ A DNTT_TYPE_CONST symbol is emitted for program constants.
+
+ GLOBAL is nonzero if the constant has global scope.
+
+ INDIRECT is nonzero if the constant is a pointer to an object.
+
+ LOCATION_TYPE describes where to find the constant's value
+ (in the VT, memory, or embedded in an instruction).
+
+ CLASSMEM is nonzero if the constant is a member of a class.
+
+ NAME is a pointer into the VT for the constant's name.
+
+ LOCATION provides the memory address, register number or pointer
+ into the VT for the constant's value.
+
+ TYPE is a pointer into either the GNTT or LNTT which describes
+ the type of this variable. */
+
+struct dntt_type_const
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int global: 1;
+ unsigned int indirect: 1;
+ unsigned int location_type: 3;
+ unsigned int classmem: 1;
+ unsigned int unused: 15;
+ vtpointer name;
+ CORE_ADDR location;
+ dnttpointer type;
+ unsigned int offset;
+ unsigned int displacement;
+};
+
+/* DNTT_TYPE_TYPEDEF and DNTT_TYPE_TAGDEF:
+
+ The same structure is used to describe typedefs and tagdefs.
+
+ DNTT_TYPE_TYPEDEFS are associated with C "typedefs".
+
+ DNTT_TYPE_TAGDEFs are associated with C "struct", "union", and "enum"
+ tags, which may have the same name as a typedef in the same scope.
+ Also they are associated with C++ "class" tags, which implicitly have
+ the same name as the class type.
+
+ GLOBAL is nonzero if the typedef/tagdef has global scope.
+
+ TYPEINFO is used to determine if full type information is available
+ for a tag. (usually 1, but can be zero for opaque types in C).
+
+ NAME is a pointer into the VT for the constant's name.
+
+ TYPE points to the underlying type for the typedef/tagdef in the
+ GNTT or LNTT. */
+
+struct dntt_type_type
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10; /* DNTT_TYPE_TYPEDEF or
+ DNTT_TYPE_TAGDEF. */
+ unsigned int global: 1;
+ unsigned int typeinfo: 1;
+ unsigned int unused: 19;
+ vtpointer name;
+ dnttpointer type; /* Underlying type, which for TAGDEF's may be
+ DNTT_TYPE_STRUCT, DNTT_TYPE_UNION,
+ DNTT_TYPE_ENUM, or DNTT_TYPE_CLASS.
+ For TYPEDEF's other underlying types
+ are also possible. */
+};
+
+/* DNTT_TYPE_POINTER:
+
+ Used to describe a pointer to an underlying type.
+
+ POINTSTO is a pointer into the GNTT or LNTT for the type which this
+ pointer points to.
+
+ BITLENGTH is the length of the pointer (not the underlying type). */
+
+struct dntt_type_pointer
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int unused: 21;
+ dnttpointer pointsto;
+ unsigned int bitlength;
+};
+
+
+/* DNTT_TYPE_ENUM:
+
+ Used to describe enumerated types.
+
+ FIRSTMEM is a pointer to a DNTT_TYPE_MEMENUM in the GNTT/LNTT which
+ describes the first member (and contains a pointer to the chain of
+ members).
+
+ BITLENGTH is the number of bits used to hold the values of the enum's
+ members. */
+
+struct dntt_type_enum
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int unused: 21;
+ dnttpointer firstmem;
+ unsigned int bitlength;
+};
+
+/* DNTT_TYPE_MEMENUM
+
+ Used to describe members of an enumerated type.
+
+ CLASSMEM is nonzero if this member is part of a class.
+
+ NAME points into the VT for the name of this member.
+
+ VALUE is the value of this enumeration member.
+
+ NEXTMEM points to the next DNTT_TYPE_MEMENUM in the chain. */
+
+struct dntt_type_memenum
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int classmem: 1;
+ unsigned int unused: 20;
+ vtpointer name;
+ unsigned int value;
+ dnttpointer nextmem;
+};
+
+/* DNTT_TYPE_SET
+
+ Used to describe PASCAL "set" type.
+
+ DECLARATION describes the bitpacking of the set.
+
+ SUBTYPE points to a DNTT entry describing the type of the members.
+
+ BITLENGTH is the size of the set. */
+
+struct dntt_type_set
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int declaration: 2;
+ unsigned int unused: 19;
+ dnttpointer subtype;
+ unsigned int bitlength;
+};
+
+/* DNTT_TYPE_SUBRANGE
+
+ Used to describe subrange type.
+
+ DYN_LOW describes the lower bound of the subrange:
+
+ 00 for a constant lower bound (found in LOWBOUND).
+
+ 01 for a dynamic lower bound with the lower bound found in the
+ memory address pointed to by LOWBOUND.
+
+ 10 for a dynamic lower bound described by an variable found in the
+ DNTT/LNTT (LOWBOUND would be a pointer into the DNTT/LNTT).
+
+ DYN_HIGH is similar to DYN_LOW, except it describes the upper bound.
+
+ SUBTYPE points to the type of the subrange.
+
+ BITLENGTH is the length in bits needed to describe the subrange's
+ values. */
+
+struct dntt_type_subrange
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int dyn_low: 2;
+ unsigned int dyn_high: 2;
+ unsigned int unused: 17;
+ int lowbound;
+ int highbound;
+ dnttpointer subtype;
+ unsigned int bitlength;
+};
+
+/* DNTT_TYPE_ARRAY
+
+ Used to describe an array type.
+
+ DECLARATION describes the bit packing used in the array.
+
+ ARRAYISBYTES is nonzero if the field in arraylength describes the
+ length in bytes rather than in bits. A value of zero is used to
+ describe an array with size 2**32.
+
+ ELEMISBYTES is nonzero if the length if each element in the array
+ is describes in bytes rather than bits. A value of zero is used
+ to an element with size 2**32.
+
+ ELEMORDER is nonzero if the elements are indexed in increasing order.
+
+ JUSTIFIED if the elements are left justified to index zero.
+
+ ARRAYLENGTH is the length of the array.
+
+ INDEXTYPE is a DNTT pointer to the type used to index the array.
+
+ ELEMTYPE is a DNTT pointer to the type for the array elements.
+
+ ELEMLENGTH is the length of each element in the array (including
+ any padding).
+
+ Multi-dimensional arrays are represented by ELEMTYPE pointing to
+ another DNTT_TYPE_ARRAY. */
+
+struct dntt_type_array
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int declaration: 2;
+ unsigned int dyn_low: 2;
+ unsigned int dyn_high: 2;
+ unsigned int arrayisbytes: 1;
+ unsigned int elemisbytes: 1;
+ unsigned int elemorder: 1;
+ unsigned int justified: 1;
+ unsigned int unused: 11;
+ unsigned int arraylength;
+ dnttpointer indextype;
+ dnttpointer elemtype;
+ unsigned int elemlength;
+};
+
+/* DNTT_TYPE_STRUCT
+
+ DNTT_TYPE_STRUCT is used to describe a C structure.
+
+ DECLARATION describes the bitpacking used.
+
+ FIRSTFIELD is a DNTT pointer to the first field of the structure
+ (each field contains a pointer to the next field, walk the list
+ to access all fields of the structure).
+
+ VARTAGFIELD and VARLIST are used for Pascal variant records.
+
+ BITLENGTH is the size of the structure in bits. */
+
+struct dntt_type_struct
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int declaration: 2;
+ unsigned int unused: 19;
+ dnttpointer firstfield;
+ dnttpointer vartagfield;
+ dnttpointer varlist;
+ unsigned int bitlength;
+};
+
+/* DNTT_TYPE_UNION
+
+ DNTT_TYPE_UNION is used to describe a C union.
+
+ FIRSTFIELD is a DNTT pointer to the beginning of the field chain.
+
+ BITLENGTH is the size of the union in bits. */
+
+struct dntt_type_union
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int unused: 21;
+ dnttpointer firstfield;
+ unsigned int bitlength;
+};
+
+/* DNTT_TYPE_FIELD
+
+ DNTT_TYPE_FIELD describes one field in a structure or union
+ or C++ class.
+
+ VISIBILITY is used to describe the visibility of the field
+ (for c++. public = 0, protected = 1, private = 2).
+
+ A_UNION is nonzero if this field is a member of an anonymous union.
+
+ STATICMEM is nonzero if this field is a static member of a template.
+
+ NAME is a pointer into the VT for the name of the field.
+
+ BITOFFSET gives the offset of this field in bits from the beginning
+ of the structure or union this field is a member of.
+
+ TYPE is a DNTT pointer to the type describing this field.
+
+ BITLENGTH is the size of the entry in bits.
+
+ NEXTFIELD is a DNTT pointer to the next field in the chain. */
+
+struct dntt_type_field
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int visibility: 2;
+ unsigned int a_union: 1;
+ unsigned int staticmem: 1;
+ unsigned int unused: 17;
+ vtpointer name;
+ unsigned int bitoffset;
+ dnttpointer type;
+ unsigned int bitlength;
+ dnttpointer nextfield;
+};
+
+/* DNTT_TYPE_VARIANT is unused by GDB. */
+/* DNTT_TYPE_FILE is unused by GDB. */
+
+/* DNTT_TYPE_FUNCTYPE
+
+ I think this is used to describe a function type (e.g., would
+ be emitted as part of a function-pointer description).
+
+ VARARGS is nonzero if this function uses varargs.
+
+ FIRSTPARAM is a DNTT pointer to the first entry in the parameter
+ chain.
+
+ RETVAL is a DNTT pointer to the type of the return value. */
+
+struct dntt_type_functype
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int varargs: 1;
+ unsigned int info: 4;
+ unsigned int unused: 16;
+ unsigned int bitlength;
+ dnttpointer firstparam;
+ dnttpointer retval;
+};
+
+/* DNTT_TYPE_WITH is emitted by C++ to indicate "with" scoping semantics.
+ (Probably also emitted by PASCAL to support "with"...).
+
+ C++ example: Say "memfunc" is a method of class "c", and say
+ "m" is a data member of class "c". Then from within "memfunc",
+ it is legal to reference "m" directly (e.g. you don't have to
+ say "this->m". The symbol table indicates
+ this by emitting a DNTT_TYPE_WITH symbol within the function "memfunc",
+ pointing to the type symbol for class "c".
+
+ In GDB, this symbol record is unnecessary,
+ because GDB's symbol lookup algorithm
+ infers the "with" semantics when it sees a "this" argument to the member
+ function. So GDB can safely ignore the DNTT_TYPE_WITH record.
+
+ A DNTT_TYPE_WITH has a matching DNTT_TYPE_END symbol. */
+
+struct dntt_type_with
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_WITH */
+ unsigned int addrtype: 2; /* 0 => STATTYPE */
+ /* 1 => DYNTYPE */
+ /* 2 => REGTYPE */
+ unsigned int indirect: 1; /* 1 => pointer to object */
+ unsigned int longaddr: 1; /* 1 => in long pointer space */
+ unsigned int nestlevel: 6; /* # of nesting levels back */
+ unsigned int doc_ranges: 1; /* 1 => location is range list */
+ unsigned int unused: 10;
+ long location; /* where stored (allocated) */
+ sltpointer address;
+ dnttpointer type; /* type of with expression */
+ vtpointer name; /* name of with expression */
+ unsigned long offset; /* byte offset from location */
+};
+
+/* DNTT_TYPE_COMMON is unsupported by GDB. */
+/* A DNTT_TYPE_COMMON symbol must have a matching DNTT_TYPE_END symbol */
+
+/* DNTT_TYPE_COBSTRUCT is unsupported by GDB. */
+/* DNTT_TYPE_XREF is unsupported by GDB. */
+/* DNTT_TYPE_SA is unsupported by GDB. */
+/* DNTT_TYPE_MACRO is unsupported by GDB */
+
+/* DNTT_TYPE_BLOCKDATA has the same structure as DNTT_TYPE_FUNCTION */
+
+/* The following are the C++ specific SOM records */
+
+/* The purpose of the DNTT_TYPE_CLASS_SCOPE is to bracket C++ methods
+ and indicate the method name belongs in the "class scope" rather
+ than in the module they are being defined in. For example:
+
+ class c {
+ ...
+ void memfunc(); // member function
+ };
+
+ void c::memfunc() // definition of class c's "memfunc"
+ {
+ ...
+ }
+
+ main()
+ {
+ ...
+ }
+
+ In the above, the name "memfunc" is not directly visible from "main".
+ I.e., you have to say "break c::memfunc".
+ If it were a normal function (not a method), it would be visible
+ via the simple "break memfunc". Since "memfunc" otherwise looks
+ like a normal FUNCTION in the symbol table, the bracketing
+ CLASS_SCOPE is what is used to indicate it is really a method.
+
+
+ A DNTT_TYPE_CLASS_SCOPE symbol must have a matching DNTT_TYPE_END symbol. */
+
+struct dntt_type_class_scope
+{
+ unsigned int extension: 1; /* Always zero. */
+ unsigned int kind: 10; /* Always DNTT_TYPE_CLASS_SCOPE. */
+ unsigned int unused: 21;
+ sltpointer address ; /* Pointer to SLT entry. */
+ dnttpointer type ; /* Pointer to class type DNTT. */
+};
+
+/* C++ reference parameter.
+ The structure of this record is the same as DNTT_TYPE_POINTER -
+ refer to struct dntt_type_pointer. */
+
+/* The next two describe C++ pointer-to-data-member type, and
+ pointer-to-member-function type, respectively.
+ DNTT_TYPE_PTRMEM and DNTT_TYPE_PTRMEMFUNC have the same structure. */
+
+struct dntt_type_ptrmem
+{
+ unsigned int extension: 1; /* Always zero. */
+ unsigned int kind: 10; /* Always DNTT_TYPE_PTRMEM. */
+ unsigned int unused: 21;
+ dnttpointer pointsto ; /* Pointer to class DNTT. */
+ dnttpointer memtype ; /* Type of member. */
+};
+
+struct dntt_type_ptrmemfunc
+{
+ unsigned int extension: 1; /* Always zero. */
+ unsigned int kind: 10; /* Always DNTT_TYPE_PTRMEMFUNC. */
+ unsigned int unused: 21;
+ dnttpointer pointsto ; /* Pointer to class DNTT. */
+ dnttpointer memtype ; /* Type of member. */
+};
+
+/* The DNTT_TYPE_CLASS symbol is emitted to describe a class type.
+ "memberlist" points to a chained list of FIELD or GENFIELD records
+ indicating the class members. "parentlist" points to a chained list
+ of INHERITANCE records indicating classes from which we inherit
+ fields. */
+
+struct dntt_type_class
+{
+ unsigned int extension: 1; /* Always zero. */
+ unsigned int kind: 10; /* Always DNTT_TYPE_CLASS. */
+ unsigned int abstract: 1; /* Is this an abstract class? */
+ unsigned int class_decl: 2; /* 0=class,1=union,2=struct. */
+ unsigned int expansion: 1; /* 1=template expansion. */
+ unsigned int unused: 17;
+ dnttpointer memberlist ; /* Ptr to chain of [GEN]FIELDs. */
+ unsigned long vtbl_loc ; /* Offset in obj of ptr to vtbl. */
+ dnttpointer parentlist ; /* Ptr to K_INHERITANCE list. */
+ unsigned long bitlength ; /* Total at this level. */
+ dnttpointer identlist ; /* Ptr to chain of class ident's. */
+ dnttpointer friendlist ; /* Ptr to K_FRIEND list. */
+ dnttpointer templateptr ; /* Ptr to template. */
+ dnttpointer nextexp ; /* Ptr to next expansion. */
+};
+
+/* Class members are indicated via either the FIELD record (for
+ data members, same as for C struct fields), or by the GENFIELD record
+ (for member functions). */
+
+struct dntt_type_genfield
+{
+ unsigned int extension: 1; /* Always zero. */
+ unsigned int kind: 10; /* Always DNTT_TYPE_GENFIELD. */
+ unsigned int visibility: 2; /* Pub = 0, prot = 1, priv = 2. */
+ unsigned int a_union: 1; /* 1 => anonymous union member. */
+ unsigned int unused: 18;
+ dnttpointer field ; /* Pointer to field or qualifier. */
+ dnttpointer nextfield ; /* Pointer to next field. */
+};
+
+/* C++ virtual functions. */
+
+struct dntt_type_vfunc
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_VFUNC */
+ unsigned int pure: 1; /* pure virtual function ? */
+ unsigned int unused: 20;
+ dnttpointer funcptr ; /* points to FUNCTION symbol */
+ unsigned long vtbl_offset ; /* offset into vtbl for virtual */
+};
+
+/* Not precisely sure what this is intended for - DDE ignores it. */
+
+struct dntt_type_memaccess
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_MEMACCESS */
+ unsigned int unused: 21;
+ dnttpointer classptr ; /* pointer to base class */
+ dnttpointer field ; /* pointer field */
+};
+
+/* The DNTT_TYPE_INHERITANCE record describes derived classes.
+ In particular, the "parentlist" field of the CLASS record points
+ to a list of INHERITANCE records for classes from which we
+ inherit members. */
+
+struct dntt_type_inheritance
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_INHERITANCE */
+ unsigned int Virtual: 1; /* virtual base class ? */
+ unsigned int visibility: 2; /* pub = 0, prot = 1, priv = 2 */
+ unsigned int unused: 18;
+ dnttpointer classname ; /* first parent class, if any */
+ unsigned long offset ; /* offset to start of base class */
+ dnttpointer next ; /* pointer to next K_INHERITANCE */
+ unsigned long future[2] ; /* padding to 3-word block end */
+};
+
+/* C++ "friend" classes ... */
+
+struct dntt_type_friend_class
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_FRIEND_CLASS */
+ unsigned int unused: 21;
+ dnttpointer classptr ; /* pointer to class DNTT */
+ dnttpointer next ; /* next DNTT_FRIEND */
+};
+
+struct dntt_type_friend_func
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_FRIEND_FUNC */
+ unsigned int unused: 21;
+ dnttpointer funcptr ; /* pointer to function */
+ dnttpointer classptr ; /* pointer to class DNTT */
+ dnttpointer next ; /* next DNTT_FRIEND */
+ unsigned long future[2] ; /* padding to 3-word block end */
+};
+
+/* DDE appears to ignore the DNTT_TYPE_MODIFIER record.
+ It could perhaps be used to give better "ptype" output in GDB;
+ otherwise it is probably safe for GDB to ignore it also. */
+
+struct dntt_type_modifier
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_MODIFIER */
+ unsigned int m_const: 1; /* const */
+ unsigned int m_static: 1; /* static */
+ unsigned int m_void: 1; /* void */
+ unsigned int m_volatile: 1; /* volatile */
+ unsigned int m_duplicate: 1; /* duplicate */
+ unsigned int unused: 16;
+ dnttpointer type ; /* subtype */
+ unsigned long future ; /* padding to 3-word block end */
+};
+
+/* I'm not sure what this was intended for - DDE ignores it. */
+
+struct dntt_type_object_id
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_OBJECT_ID */
+ unsigned int indirect: 1; /* Is object_ident addr of addr? */
+ unsigned int unused: 20;
+ unsigned long object_ident ; /* object identifier */
+ unsigned long offset ; /* offset to start of base class */
+ dnttpointer next ; /* pointer to next K_OBJECT_ID */
+ unsigned long segoffset ; /* for linker fixup */
+ unsigned long future ; /* padding to 3-word block end */
+};
+
+/* No separate dntt_type_memfunc; same as dntt_type_func */
+
+/* Symbol records to support templates. These only get used
+ in DDE's "describe" output (like GDB's "ptype"). */
+
+/* The TEMPLATE record is the header for a template-class.
+ Like the CLASS record, a TEMPLATE record has a memberlist that
+ points to a list of template members. It also has an arglist
+ pointing to a list of TEMPLATE_ARG records. */
+
+struct dntt_type_template
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_TEMPLATE */
+ unsigned int abstract: 1; /* is this an abstract class? */
+ unsigned int class_decl: 2; /* 0=class,1=union,2=struct */
+ unsigned int unused: 18;
+ dnttpointer memberlist ; /* ptr to chain of K_[GEN]FIELDs */
+ long unused2 ; /* offset in obj of ptr to vtbl */
+ dnttpointer parentlist ; /* ptr to K_INHERITANCE list */
+ unsigned long bitlength ; /* total at this level */
+ dnttpointer identlist ; /* ptr to chain of class ident's */
+ dnttpointer friendlist ; /* ptr to K_FRIEND list */
+ dnttpointer arglist ; /* ptr to argument list */
+ dnttpointer expansions ; /* ptr to expansion list */
+};
+
+/* Template-class arguments are a list of TEMPL_ARG records
+ chained together. The "name" field is the name of the formal.
+ E.g.:
+
+ template <class T> class q { ... };
+
+ Then "T" is the name of the formal argument. */
+
+struct dntt_type_templ_arg
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_TEMPL_ARG */
+ unsigned int usagetype: 1; /* 0 type-name 1 expression */
+ unsigned int unused: 20;
+ vtpointer name ; /* name of argument */
+ dnttpointer type ; /* for non type arguments */
+ dnttpointer nextarg ; /* Next argument if any */
+ long future[2] ; /* padding to 3-word block end */
+};
+
+/* FUNC_TEMPLATE records are sort of like FUNCTION, but are emitted
+ for template member functions. E.g.,
+
+ template <class T> class q
+ {
+ ...
+ void f();
+ ...
+ };
+
+ Within the list of FIELDs/GENFIELDs defining the member list
+ of the template "q", "f" would appear as a FUNC_TEMPLATE.
+ We'll also see instances of FUNCTION "f" records for each
+ instantiation of the template. */
+
+struct dntt_type_func_template
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_FUNC_TEMPLATE */
+ unsigned int public: 1; /* 1 => globally visible */
+ unsigned int language: 4; /* type of language */
+ unsigned int level: 5; /* nesting level (top level = 0)*/
+ unsigned int optimize: 2; /* level of optimization */
+ unsigned int varargs: 1; /* ellipses. Pascal/800 later */
+ unsigned int info: 4; /* lang-specific stuff; F_xxxx */
+ unsigned int inlined: 1;
+ unsigned int localloc: 1; /* 0 at top, 1 at end of block */
+ unsigned int unused: 2;
+ vtpointer name ; /* name of function */
+ vtpointer alias ; /* alternate name, if any */
+ dnttpointer firstparam ; /* first FPARAM, if any */
+ dnttpointer retval ; /* return type, if any */
+ dnttpointer arglist ; /* ptr to argument list */
+};
+
+/* LINK is apparently intended to link together function template
+ definitions with their instantiations. However, it is not clear
+ why this would be needed, except to provide the information on
+ a "ptype" command. And as far as I can tell, aCC does not
+ generate this record. */
+
+struct dntt_type_link
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* always DNTT_TYPE_LINK */
+ unsigned int linkKind: 4; /* always LINK_UNKNOWN */
+ unsigned int unused: 17;
+ long future1 ; /* expansion */
+ dnttpointer ptr1 ; /* link from template */
+ dnttpointer ptr2 ; /* to expansion */
+ long future[2] ; /* padding to 3-word block end */
+};
+
+/* end of C++ specific SOM's. */
+
+/* DNTT_TYPE_DYN_ARRAY_DESC is unused by GDB */
+/* DNTT_TYPE_DESC_SUBRANGE is unused by GDB */
+/* DNTT_TYPE_BEGIN_EXT is unused by GDB */
+/* DNTT_TYPE_INLN is unused by GDB */
+/* DNTT_TYPE_INLN_LIST is unused by GDB */
+/* DNTT_TYPE_ALIAS is unused by GDB */
+
+struct dntt_type_doc_function
+{
+ unsigned int extension: 1; /* always zero */
+ unsigned int kind: 10; /* K_DOC_FUNCTION or */
+ /* K_DOC_MEMFUNC */
+ unsigned int global: 1; /* 1 => globally visible */
+ unsigned int language: 4; /* type of language */
+ unsigned int level: 5; /* nesting level (top level = 0)*/
+ unsigned int optimize: 2; /* level of optimization */
+ unsigned int varargs: 1; /* ellipses. Pascal/800 later */
+ unsigned int info: 4; /* lang-specific stuff; F_xxxx */
+ unsigned int inlined: 1;
+ unsigned int localloc: 1; /* 0 at top, 1 at end of block */
+ unsigned int expansion: 1; /* 1 = function expansion */
+ unsigned int doc_clone: 1;
+ vtpointer name; /* name of function */
+ vtpointer alias; /* alternate name, if any */
+ dnttpointer firstparam; /* first FPARAM, if any */
+ sltpointer address; /* code and text locations */
+ CORE_ADDR entryaddr; /* address of entry point */
+ dnttpointer retval; /* return type, if any */
+ CORE_ADDR lowaddr; /* lowest address of function */
+ CORE_ADDR hiaddr; /* highest address of function */
+ dnttpointer inline_list; /* pointer to first inline */
+ ltpointer lt_offset; /* start of frag/cp line table */
+ ctxtpointer ctxt_offset; /* start of context table for this routine */
+};
+
+/* DNTT_TYPE_DOC_MEMFUNC is unused by GDB */
+
+/* DNTT_TYPE_GENERIC and DNTT_TYPE_BLOCK are convience structures
+ so we can examine a DNTT entry in a generic fashion. */
+struct dntt_type_generic
+{
+ unsigned int word[9];
+};
+
+struct dntt_type_block
+{
+ unsigned int extension: 1;
+ unsigned int kind: 10;
+ unsigned int unused: 21;
+ unsigned int word[2];
+};
+
+/* One entry in a DNTT (either the LNTT or GNTT).
+ This is a union of the above 60 or so structure definitions. */
+
+union dnttentry
+{
+ struct dntt_type_srcfile dsfile;
+ struct dntt_type_module dmodule;
+ struct dntt_type_function dfunc;
+ struct dntt_type_function dentry;
+ struct dntt_type_begin dbegin;
+ struct dntt_type_end dend;
+ struct dntt_type_fparam dfparam;
+ struct dntt_type_svar dsvar;
+ struct dntt_type_dvar ddvar;
+ struct dntt_type_const dconst;
+ struct dntt_type_type dtype;
+ struct dntt_type_type dtag;
+ struct dntt_type_pointer dptr;
+ struct dntt_type_enum denum;
+ struct dntt_type_memenum dmember;
+ struct dntt_type_set dset;
+ struct dntt_type_subrange dsubr;
+ struct dntt_type_array darray;
+ struct dntt_type_struct dstruct;
+ struct dntt_type_union dunion;
+ struct dntt_type_field dfield;
+ struct dntt_type_functype dfunctype;
+ struct dntt_type_with dwith;
+ struct dntt_type_function dblockdata;
+ struct dntt_type_class_scope dclass_scope;
+ struct dntt_type_pointer dreference;
+ struct dntt_type_ptrmem dptrmem;
+ struct dntt_type_ptrmemfunc dptrmemfunc;
+ struct dntt_type_class dclass;
+ struct dntt_type_genfield dgenfield;
+ struct dntt_type_vfunc dvfunc;
+ struct dntt_type_memaccess dmemaccess;
+ struct dntt_type_inheritance dinheritance;
+ struct dntt_type_friend_class dfriend_class;
+ struct dntt_type_friend_func dfriend_func;
+ struct dntt_type_modifier dmodifier;
+ struct dntt_type_object_id dobject_id;
+ struct dntt_type_template dtemplate;
+ struct dntt_type_templ_arg dtempl_arg;
+ struct dntt_type_func_template dfunc_template;
+ struct dntt_type_link dlink;
+ struct dntt_type_doc_function ddocfunc;
+ struct dntt_type_generic dgeneric;
+ struct dntt_type_block dblock;
+};
+
+/* Source line entry types. */
+enum slttype
+{
+ SLT_NORMAL,
+ SLT_SRCFILE,
+ SLT_MODULE,
+ SLT_FUNCTION,
+ SLT_ENTRY,
+ SLT_BEGIN,
+ SLT_END,
+ SLT_WITH,
+ SLT_EXIT,
+ SLT_ASSIST,
+ SLT_MARKER,
+ SLT_CLASS_SCOPE,
+ SLT_INLN,
+ SLT_NORMAL_OFFSET,
+};
+
+/* A normal source line entry. Simply provides a mapping of a source
+ line number to a code address.
+
+ SLTDESC will always be SLT_NORMAL or SLT_EXIT. */
+
+struct slt_normal
+{
+ unsigned int sltdesc: 4;
+ unsigned int line: 28;
+ CORE_ADDR address;
+};
+
+struct slt_normal_off
+{
+ unsigned int sltdesc: 4;
+ unsigned int offset: 6;
+ unsigned int line: 22;
+ CORE_ADDR address;
+};
+
+/* A special source line entry. Provides a mapping of a declaration
+ to a line number. These entries point back into the DNTT which
+ references them. */
+
+struct slt_special
+{
+ unsigned int sltdesc: 4;
+ unsigned int line: 28;
+ dnttpointer backptr;
+};
+
+/* Used to describe nesting.
+
+ For nested languages, an slt_assist entry must follow each SLT_FUNC
+ entry in the SLT. The address field will point forward to the
+ first slt_normal entry within the function's scope. */
+
+struct slt_assist
+{
+ unsigned int sltdesc: 4;
+ unsigned int unused: 28;
+ sltpointer address;
+};
+
+struct slt_generic
+{
+ unsigned int word[2];
+};
+
+union sltentry
+{
+ struct slt_normal snorm;
+ struct slt_normal_off snormoff;
+ struct slt_special sspec;
+ struct slt_assist sasst;
+ struct slt_generic sgeneric;
+};
+
+/* $LINES$ declarations
+ This is the line table used for optimized code, which is only present
+ in the new $PROGRAM_INFO$ debug space. */
+
+#define DST_LN_ESCAPE_FLAG1 15
+#define DST_LN_ESCAPE_FLAG2 14
+#define DST_LN_CTX_SPEC1 13
+#define DST_LN_CTX_SPEC2 12
+
+/* Escape function codes: */
+
+typedef enum
+{
+ dst_ln_pad, /* pad byte */
+ dst_ln_escape_1, /* reserved */
+ dst_ln_dpc1_dln1, /* 1 byte line delta, 1 byte pc delta */
+ dst_ln_dpc2_dln2, /* 2 bytes line delta, 2 bytes pc delta */
+ dst_ln_pc4_ln4, /* 4 bytes ABSOLUTE line number, 4 bytes ABSOLUTE pc */
+ dst_ln_dpc0_dln1, /* 1 byte line delta, pc delta = 0 */
+ dst_ln_ln_off_1, /* statement escape, stmt # = 1 (2nd stmt on line) */
+ dst_ln_ln_off, /* statement escape, stmt # = next byte */
+ dst_ln_entry, /* entry escape, next byte is entry number */
+ dst_ln_exit, /* exit escape */
+ dst_ln_stmt_end, /* gap escape, 4 bytes pc delta */
+ dst_ln_stmt_cp, /* current stmt is a critical point */
+ dst_ln_escape_12, /* reserved */
+ dst_ln_escape_13, /* this is an exception site record */
+ dst_ln_nxt_byte, /* next byte contains the real escape code */
+ dst_ln_end, /* end escape, final entry follows */
+ dst_ln_escape1_END_OF_ENUM
+}
+dst_ln_escape1_t;
+
+typedef enum
+{
+ dst_ln_ctx_1, /* next byte describes context switch with 5-bit */
+ /* index into the image table and 3-bit run length. */
+ /* If run length is 0, end with another cxt specifier or ctx_end */
+ dst_ln_ctx_2, /* next 2 bytes switch context: 13 bit index, 3 bit run length */
+ dst_ln_ctx_4, /* next 4 bytes switch context: 29 bit index, 3 bit run length */
+ dst_ln_ctx_end, /* end current context */
+ dst_ln_col_run_1, /* next byte is column position of start of next statement, */
+ /* following byte is length of statement */
+ dst_ln_col_run_2, /* next 2 bytes is column position of start of next statement, */
+ /* following 2 bytes is length of statement */
+ dst_ln_init_base1, /* next 4 bytes are absolute PC, followed by 1 byte of line number */
+ dst_ln_init_base2, /* next 4 bytes are absolute PC, followed by 2 bytes of line number */
+ dst_ln_init_base3, /* next 4 bytes are absolute PC, followed by 3 bytes of line number */
+ dst_ln_escape2_END_OF_ENUM
+}
+dst_ln_escape2_t;
+
+typedef union
+{
+ struct
+ {
+ unsigned int pc_delta : 4; /* 4 bit pc delta */
+ int ln_delta : 4; /* 4 bit line number delta */
+ }
+ delta;
+
+ struct
+ {
+ unsigned int esc_flag : 4; /* alias for pc_delta */
+ unsigned int esc_code : 4; /* escape function code (dst_ln_escape1_t, or ...2_t */
+ }
+ esc;
+
+ struct
+ {
+ unsigned int esc_flag : 4; /* dst_ln_ctx_spec1, or dst_ln_ctx_spec2 */
+ unsigned int run_length : 2;
+ unsigned int ctx_index : 2; /* ...spec2 contains index; ...spec1, index - 4 */
+ }
+ ctx_spec;
+
+ char sdata; /* signed data byte */
+ unsigned char udata; /* unsigned data byte */
+}
+dst_ln_entry_t,
+ * dst_ln_entry_ptr_t;
+
+/* Warning: although the above union occupies only 1 byte the compiler treats
+ it as having size 2 (the minimum size of a struct). Therefore a sequence of
+ dst_ln_entry_t's cannot be described as an array, and walking through such a
+ sequence requires convoluted code such as
+ ln_ptr = (dst_ln_entry_ptr_t) (char*) ln_ptr + 1
+ We regret the inconvenience. */
+
+/* Structure for interpreting the byte following a dst_ln_ctx1 entry. */
+typedef struct
+{
+ unsigned int ctx1_index : 5; /* 5 bit index into context table */
+ unsigned int ctx1_run_length : 3; /* 3 bit run length */
+} dst_ln_ctx1_t,
+ *dst_ln_ctx1_ptr_t;
+
+/* Structure for interpreting the bytes following a dst_ln_ctx2 entry. */
+typedef struct
+{
+ unsigned int ctx2_index : 13; /* 13 bit index into context table */
+ unsigned int ctx2_run_length : 3; /* 3 bit run length */
+} dst_ln_ctx2_t,
+ *dst_ln_ctx2_ptr_t;
+
+/* Structure for interpreting the bytes following a dst_ln_ctx4 entry. */
+typedef struct
+{
+ unsigned int ctx4_index : 29; /* 29 bit index into context table */
+ unsigned int ctx4_run_length : 3; /* 3 bit run length */
+} dst_ln_ctx4_t,
+ *dst_ln_ctx4_ptr_t;
+
+
+/* PXDB definitions.
+
+ PXDB is a post-processor which takes the executable file
+ and massages the debug information so that the debugger may
+ start up and run more efficiently. Some of the tasks
+ performed by PXDB are:
+
+ o Remove duplicate global type and variable information
+ from the GNTT,
+
+ o Append the GNTT onto the end of the LNTT and place both
+ back in the LNTT section,
+
+ o Build quick look-up tables (description follows) for
+ files, procedures, modules, and paragraphs (for Cobol),
+ placing these in the GNTT section,
+
+ o Reconstruct the header appearing in the header section
+ to access this information.
+
+ The "quick look-up" tables are in the $GNTT$ sub-space, in
+ the following order:
+
+ Procedures -sorted by address
+ Source files -sorted by address (of the
+ generated code from routines)
+ Modules -sorted by address
+ Classes -<unsorted?>
+ Address Alias -sorted by index <?>
+ Object IDs -sorted by object identifier
+
+ Most quick entries have (0-based) indices into the LNTT tables to
+ the full entries for the item it describes.
+
+ The post-PXDB header is in the $HEADER$ sub-space. Alas, it
+ occurs in different forms, depending on the optimization level
+ in the compilation step and whether PXDB was run or not. The
+ worst part is the forms aren't self-describing, so we'll have
+ to grovel in the bits to figure out what kind we're looking at
+ (see hp_get_header in hp-psymtab-read.c). */
+
+/* PXDB versions. */
+
+#define PXDB_VERSION_CPLUSPLUS 1
+#define PXDB_VERSION_7_4 2
+#define PXDB_VERSION_CPP_30 3
+#define PXDB_VERSION_DDE_3_2A 4
+#define PXDB_VERSION_DDE_3_2 5
+#define PXDB_VERSION_DDE_4_0 6
+
+#define PXDB_VERSION_2_1 1
+
+/* Header version for the case that there is no DOC info
+ but the executable has been processed by pxdb (the easy
+ case, from "cc -g"). */
+
+typedef struct PXDB_struct
+{
+ int pd_entries; /* # of entries in function look-up table */
+ int fd_entries; /* # of entries in file look-up table */
+ int md_entries; /* # of entries in module look-up table */
+ unsigned int pxdbed : 1; /* 1 => file has been preprocessed */
+ unsigned int bighdr : 1; /* 1 => this header contains 'time' word */
+ unsigned int sa_header : 1;/* 1 => created by SA version of pxdb */
+ /* used for version check in xdb */
+ unsigned int inlined: 1; /* one or more functions have been inlined */
+ unsigned int spare:12;
+ short version; /* pxdb header version */
+ int globals; /* index into the DNTT where GNTT begins */
+ unsigned int time; /* modify time of file before being pxdbed */
+ int pg_entries; /* # of entries in label look-up table */
+ int functions; /* actual number of functions */
+ int files; /* actual number of files */
+ int cd_entries; /* # of entries in class look-up table */
+ int aa_entries; /* # of entries in addr alias look-up table */
+ int oi_entries; /* # of entries in object id look-up table */
+} PXDB_header, *PXDB_header_ptr;
+
+/* Header version for the case that there is no DOC info and the
+ executable has NOT been processed by pxdb. */
+
+typedef struct XDB_header_struct
+{
+ long gntt_length;
+ long lntt_length;
+ long slt_length;
+ long vt_length;
+ long xt_length;
+} XDB_header;
+
+/* Header version for the case that there is DOC info and the
+ executable has been processed by pxdb. */
+
+typedef struct DOC_info_PXDB_header_struct
+{
+ unsigned int xdb_header: 1; /* bit set if this is post-3.1 xdb */
+ unsigned int doc_header: 1; /* bit set if this is doc-style header */
+ unsigned int version: 8; /* version of pxdb see defines
+ PXDB_VERSION_* in this file. */
+ unsigned int reserved_for_flags: 16;/* for future use; -- must be
+ set to zero. */
+ unsigned int has_aux_pd_table: 1; /* $GNTT$ has aux PD table */
+ unsigned int has_expr_table: 1; /* space has $EXPR$ */
+ unsigned int has_range_table: 1; /* space has $RANGE$ */
+ unsigned int has_context_table: 1; /* space has $SRC_CTXT$ */
+ unsigned int has_lines_table: 1; /* space contains a $LINES$
+ subspace for line tables. */
+ unsigned int has_lt_offset_map: 1; /* space contains an lt_offset
+ subspace for line table mapping. */
+ /* The following fields are the same as those in the PXDB_header in $DEBUG$ */
+ int pd_entries; /* # of entries in function look-up table */
+ int fd_entries; /* # of entries in file look-up table */
+ int md_entries; /* # of entries in module look-up table */
+ unsigned int pxdbed : 1; /* 1 => file has been preprocessed */
+ unsigned int bighdr : 1; /* 1 => this header contains 'time' word */
+ unsigned int sa_header : 1;/* 1 => created by SA version of pxdb */
+ /* used for version check in xdb */
+ unsigned int inlined: 1; /* one or more functions have been inlined */
+ unsigned int spare : 28;
+ int globals; /* index into the DNTT where GNTT begins */
+ unsigned int time; /* modify time of file before being pxdbed */
+ int pg_entries; /* # of entries in label look-up table */
+ int functions; /* actual number of functions */
+ int files; /* actual number of files */
+ int cd_entries; /* # of entries in class look-up table */
+ int aa_entries; /* # of entries in addr alias look-up table */
+ int oi_entries; /* # of entries in object id look-up table */
+} DOC_info_PXDB_header;
+
+/* Header version for the case that there is DOC info and the
+ executable has NOT been processed by pxdb. */
+
+typedef struct DOC_info_header_struct
+{
+ unsigned int xdb_header: 1; /* bit set if this is post-3.1 xdb */
+ unsigned int doc_header: 1; /* bit set if this is doc-style header*/
+ unsigned int version: 8; /* version of debug/header
+ format. For 10.0 the value
+ will be 1. For "Davis" the value is 2. */
+ unsigned int reserved_for_flags: 18; /* for future use; -- must be set to zero. */
+ unsigned int has_range_table: 1; /* space contains a $RANGE$ subspace for variable ranges. */
+ unsigned int has_context_table: 1; /* space contains a $CTXT$ subspace for context/inline table. */
+ unsigned int has_lines_table: 1; /* space contains a $LINES$ subspace for line tables. */
+ unsigned int has_lt_offset_map: 1; /* space contains an lt_offset subspace for line table mapping. */
+
+ long gntt_length; /* same as old header */
+ long lntt_length; /* same as old header */
+ long slt_length; /* same as old header */
+ long vt_length; /* same as old header */
+ long xt_length; /* same as old header */
+ long ctxt_length; /* present only if version >= 2 */
+ long range_length; /* present only if version >= 2 */
+ long expr_length; /* present only if version >= 2 */
+
+} DOC_info_header;
+
+typedef union GenericDebugHeader_union
+{
+ PXDB_header no_doc;
+ DOC_info_PXDB_header doc;
+ XDB_header no_pxdb_no_doc;
+ DOC_info_header no_pxdb_doc;
+} GenericDebugHeader;
+
+
+/* Procedure Descriptor:
+ An element of the procedure quick look-up table. */
+
+typedef struct quick_procedure
+{
+ long isym; /* 0-based index of first symbol
+ for procedure in $LNTT$,
+ i.e. the procedure itself. */
+ CORE_ADDR adrStart; /* memory adr of start of proc */
+ CORE_ADDR adrEnd; /* memory adr of end of proc */
+ char *sbAlias; /* alias name of procedure */
+ char *sbProc; /* real name of procedure */
+ CORE_ADDR adrBp; /* address of entry breakpoint */
+ CORE_ADDR adrExitBp; /* address of exit breakpoint */
+ int icd; /* member of this class (index) */
+ unsigned int ipd; /* index of template for this */
+ /* function (index) */
+ unsigned int unused: 5;
+ unsigned int no_lt_offset: 1;/* no entry in lt_offset table */
+ unsigned int fTemplate: 1; /* function template */
+ unsigned int fExpansion: 1; /* function expansion */
+ unsigned int linked : 1; /* linked with other expansions */
+ unsigned int duplicate: 1; /* clone of another procedure */
+ unsigned int overloaded:1; /* overloaded function */
+ unsigned int member: 1; /* class member function */
+ unsigned int constructor:1; /* constructor function */
+ unsigned int destructor:1; /* destructor function */
+ unsigned int Static: 1; /* static function */
+ unsigned int Virtual: 1; /* virtual function */
+ unsigned int constant: 1; /* constant function */
+ unsigned int pure: 1; /* pure (virtual) function */
+ unsigned int language: 4; /* procedure's language */
+ unsigned int inlined: 1; /* function has been inlined */
+ unsigned int Operator: 1; /* operator function */
+ unsigned int stub: 1; /* bodyless function */
+ unsigned int optimize: 2; /* optimization level */
+ unsigned int level: 5; /* nesting level (top=0) */
+} quick_procedure_entry, *quick_procedure_entry_ptr;
+
+/* Source File Descriptor:
+ An element of the source file quick look-up table. */
+
+typedef struct quick_source
+{
+ long isym; /* 0-based index in $LNTT$ of
+ first symbol for this file. */
+ CORE_ADDR adrStart; /* mem adr of start of file's code */
+ CORE_ADDR adrEnd; /* mem adr of end of file's code */
+ char *sbFile; /* name of source file */
+ unsigned int fHasDecl: 1; /* do we have a .d file? */
+ unsigned int fWarned: 1; /* have warned about age problems? */
+ unsigned int fSrcfile: 1; /* 0 => include 1=> source */
+ unsigned short ilnMac; /* lines in file (0 if don't know) */
+ int ipd; /* 0-based index of first procedure
+ in this file, in the quick
+ look-up table of procedures. */
+ unsigned int *rgLn; /* line pointer array, if any */
+} quick_file_entry, *quick_file_entry_ptr;
+
+/* Module Descriptor:
+ An element of the module quick reference table. */
+
+typedef struct quick_module
+{
+ long isym; /* 0-based index of first
+ symbol for module. */
+ CORE_ADDR adrStart; /* adr of start of mod. */
+ CORE_ADDR adrEnd; /* adr of end of mod. */
+ char *sbAlias; /* alias name of module */
+ char *sbMod; /* real name of module */
+ unsigned int imports: 1; /* module have any imports? */
+ unsigned int vars_in_front: 1; /* module globals in front? */
+ unsigned int vars_in_gaps: 1; /* module globals in gaps? */
+ unsigned int language: 4; /* type of language */
+ unsigned int unused : 25;
+ unsigned int unused2; /* space for future stuff */
+} quick_module_entry, *quick_module_entry_ptr;
+
+/* Auxiliary Procedure Descriptor:
+ An element of the auxiliary procedure quick look-up table. */
+
+typedef struct quick_aux_procedure
+{
+ long isym_inln; /* start on inline list for proc */
+ long spare;
+} quick_aux_procedure_entry, *quick_aux_procedure_entry_ptr;
+
+/* Paragraph Descriptor:
+ An element of the paragraph quick look-up table. */
+
+typedef struct quick_paragraph
+{
+ long isym; /* first symbol for label (index) */
+ CORE_ADDR adrStart; /* memory adr of start of label */
+ CORE_ADDR adrEnd; /* memory adr of end of label */
+ char *sbLab; /* name of label */
+ unsigned int inst; /* Used in xdb to store inst @ bp */
+ unsigned int sect: 1; /* true = section, false = parag. */
+ unsigned int unused: 31; /* future use */
+} quick_paragraph_entry, *quick_paragraph_entry_ptr;
+
+/* Class Descriptor:
+ An element of the class quick look-up table. */
+
+typedef struct quick_class
+{
+ char *sbClass; /* name of class */
+ long isym; /* class symbol (tag) */
+ unsigned int type : 2; /* 0=class, 1=union, 2=struct */
+ unsigned int fTemplate : 1;/* class template */
+ unsigned int expansion : 1;/* template expansion */
+ unsigned int unused :28;
+ sltpointer lowscope; /* beginning of defined scope */
+ sltpointer hiscope; /* end of defined scope */
+} quick_class_entry, *quick_class_entry_ptr;
+
+/* Address Alias Entry
+ An element of the address alias quick look-up table. */
+
+typedef struct quick_alias
+{
+ CORE_ADDR low;
+ CORE_ADDR high;
+ int index;
+ unsigned int unused : 31;
+ unsigned int alternate : 1; /* alternate unnamed aliases? */
+} quick_alias_entry, *quick_alias_entry_ptr;
+
+/* Object Identification Entry
+ An element of the object identification quick look-up table. */
+
+typedef struct quick_obj_ID
+{
+ CORE_ADDR obj_ident; /* class identifier */
+ long isym; /* class symbol */
+ long offset; /* offset to object start */
+} quick_obj_ID_entry, *quick_obj_ID_entry_ptr;
+
+#endif /* HP_SYMTAB_INCLUDED */
diff --git a/include/ieee.h b/include/ieee.h
new file mode 100644
index 000000000..5abc32b62
--- /dev/null
+++ b/include/ieee.h
@@ -0,0 +1,165 @@
+/* IEEE Standard 695-1980 "Universal Format for Object Modules" header file
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+ Contributed by Cygnus Support. */
+
+#define N_W_VARIABLES 8
+#define Module_Beginning 0xe0
+
+typedef struct ieee_module
+ {
+ char *processor;
+ char *module_name;
+ }
+ieee_module_begin_type;
+
+#define Address_Descriptor 0xec
+typedef struct ieee_address
+ {
+ bfd_vma number_of_bits_mau;
+ bfd_vma number_of_maus_in_address;
+
+ unsigned char byte_order;
+#define IEEE_LITTLE 0xcc
+#define IEEE_BIG 0xcd
+ }
+ieee_address_descriptor_type;
+
+typedef union ieee_w_variable
+ {
+ file_ptr offset[N_W_VARIABLES];
+
+ struct
+ {
+ file_ptr extension_record;
+ file_ptr environmental_record;
+ file_ptr section_part;
+ file_ptr external_part;
+ file_ptr debug_information_part;
+ file_ptr data_part;
+ file_ptr trailer_part;
+ file_ptr me_record;
+ }
+ r;
+ }
+ieee_w_variable_type;
+
+typedef enum ieee_record
+ {
+ ieee_number_start_enum = 0x00,
+ ieee_number_end_enum=0x7f,
+ ieee_number_repeat_start_enum = 0x80,
+ ieee_number_repeat_end_enum = 0x88,
+ ieee_number_repeat_4_enum = 0x84,
+ ieee_number_repeat_3_enum = 0x83,
+ ieee_number_repeat_2_enum = 0x82,
+ ieee_number_repeat_1_enum = 0x81,
+ ieee_module_beginning_enum = 0xe0,
+ ieee_module_end_enum = 0xe1,
+ ieee_extension_length_1_enum = 0xde,
+ ieee_extension_length_2_enum = 0xdf,
+ ieee_section_type_enum = 0xe6,
+ ieee_section_alignment_enum = 0xe7,
+ ieee_external_symbol_enum = 0xe8,
+ ieee_comma = 0x90,
+ ieee_external_reference_enum = 0xe9,
+ ieee_set_current_section_enum = 0xe5,
+ ieee_address_descriptor_enum = 0xec,
+ ieee_load_constant_bytes_enum = 0xed,
+ ieee_load_with_relocation_enum = 0xe4,
+
+ ieee_variable_A_enum = 0xc1,
+ ieee_variable_B_enum = 0xc2,
+ ieee_variable_C_enum = 0xc3,
+ ieee_variable_D_enum = 0xc4,
+ ieee_variable_E_enum = 0xc5,
+ ieee_variable_F_enum = 0xc6,
+ ieee_variable_G_enum = 0xc7,
+ ieee_variable_H_enum = 0xc8,
+ ieee_variable_I_enum = 0xc9,
+ ieee_variable_J_enum = 0xca,
+ ieee_variable_K_enum = 0xcb,
+ ieee_variable_L_enum = 0xcc,
+ ieee_variable_M_enum = 0xcd,
+ ieee_variable_N_enum = 0xce,
+ ieee_variable_O_enum = 0xcf,
+ ieee_variable_P_enum = 0xd0,
+ ieee_variable_Q_enum = 0xd1,
+ ieee_variable_R_enum = 0xd2,
+ ieee_variable_S_enum = 0xd3,
+ ieee_variable_T_enum = 0xd4,
+ ieee_variable_U_enum = 0xd5,
+ ieee_variable_V_enum = 0xd6,
+ ieee_variable_W_enum = 0xd7,
+ ieee_variable_X_enum = 0xd8,
+ ieee_variable_Y_enum = 0xd9,
+ ieee_variable_Z_enum = 0xda,
+ ieee_function_plus_enum = 0xa5,
+ ieee_function_minus_enum = 0xa6,
+ ieee_function_signed_open_b_enum = 0xba,
+ ieee_function_signed_close_b_enum = 0xbb,
+
+ ieee_function_unsigned_open_b_enum = 0xbc,
+ ieee_function_unsigned_close_b_enum = 0xbd,
+
+ ieee_function_either_open_b_enum = 0xbe,
+ ieee_function_either_close_b_enum = 0xbf,
+ ieee_record_seperator_enum = 0xdb,
+
+ ieee_e2_first_byte_enum = 0xe2,
+ ieee_section_size_enum = 0xe2d3,
+ ieee_physical_region_size_enum = 0xe2c1,
+ ieee_region_base_address_enum = 0xe2c2,
+ ieee_mau_size_enum = 0xe2c6,
+ ieee_m_value_enum = 0xe2cd,
+ ieee_section_base_address_enum = 0xe2cc,
+ ieee_asn_record_enum = 0xe2ce,
+ ieee_section_offset_enum = 0xe2d2,
+ ieee_value_starting_address_enum = 0xe2c7,
+ ieee_assign_value_to_variable_enum = 0xe2d7,
+ ieee_set_current_pc_enum = 0xe2d0,
+ ieee_value_record_enum = 0xe2c9,
+ ieee_nn_record = 0xf0,
+ ieee_at_record_enum = 0xf1,
+ ieee_ty_record_enum = 0xf2,
+ ieee_attribute_record_enum = 0xf1c9,
+ ieee_atn_record_enum = 0xf1ce,
+ ieee_external_reference_info_record_enum = 0xf1d8,
+ ieee_weak_external_reference_enum= 0xf4,
+ ieee_repeat_data_enum = 0xf7,
+ ieee_bb_record_enum = 0xf8,
+ ieee_be_record_enum = 0xf9
+ }
+ieee_record_enum_type;
+
+typedef struct ieee_section
+ {
+ unsigned int section_index;
+ unsigned int section_type;
+ char * section_name;
+ unsigned int parent_section_index;
+ unsigned int sibling_section_index;
+ unsigned int context_index;
+ }
+ieee_section_type;
+
+#define IEEE_REFERENCE_BASE 11
+#define IEEE_PUBLIC_BASE 32
+#define IEEE_SECTION_NUMBER_BASE 1
+
diff --git a/include/libiberty.h b/include/libiberty.h
new file mode 100644
index 000000000..c9f480aaf
--- /dev/null
+++ b/include/libiberty.h
@@ -0,0 +1,366 @@
+/* Function declarations for libiberty.
+
+ Copyright 2001, 2002 Free Software Foundation, Inc.
+
+ Note - certain prototypes declared in this header file are for
+ functions whoes implementation copyright does not belong to the
+ FSF. Those prototypes are present in this file for reference
+ purposes only and their presence in this file should not construed
+ as an indication of ownership by the FSF of the implementation of
+ those functions in any way or form whatsoever.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+ Written by Cygnus Support, 1994.
+
+ The libiberty library provides a number of functions which are
+ missing on some operating systems. We do not declare those here,
+ to avoid conflicts with the system header files on operating
+ systems that do support those functions. In this file we only
+ declare those functions which are specific to libiberty. */
+
+#ifndef LIBIBERTY_H
+#define LIBIBERTY_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "ansidecl.h"
+
+#ifdef ANSI_PROTOTYPES
+/* Get a definition for size_t. */
+#include <stddef.h>
+/* Get a definition for va_list. */
+#include <stdarg.h>
+#endif
+
+/* Build an argument vector from a string. Allocates memory using
+ malloc. Use freeargv to free the vector. */
+
+extern char **buildargv PARAMS ((const char *)) ATTRIBUTE_MALLOC;
+
+/* Free a vector returned by buildargv. */
+
+extern void freeargv PARAMS ((char **));
+
+/* Duplicate an argument vector. Allocates memory using malloc. Use
+ freeargv to free the vector. */
+
+extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC;
+
+
+/* Return the last component of a path name. Note that we can't use a
+ prototype here because the parameter is declared inconsistently
+ across different systems, sometimes as "char *" and sometimes as
+ "const char *" */
+
+/* HAVE_DECL_* is a three-state macro: undefined, 0 or 1. If it is
+ undefined, we haven't run the autoconf check so provide the
+ declaration without arguments. If it is 0, we checked and failed
+ to find the declaration so provide a fully prototyped one. If it
+ is 1, we found it so don't provide any declaration at all. */
+#if !HAVE_DECL_BASENAME
+#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME)
+extern char *basename PARAMS ((const char *));
+#else
+extern char *basename ();
+#endif
+#endif
+
+/* A well-defined basename () that is always compiled in. */
+
+extern const char *lbasename PARAMS ((const char *));
+
+/* A well-defined realpath () that is always compiled in. */
+
+extern char *lrealpath PARAMS ((const char *));
+
+/* Concatenate an arbitrary number of strings. You must pass NULL as
+ the last argument of this function, to terminate the list of
+ strings. Allocates memory using xmalloc. */
+
+extern char *concat PARAMS ((const char *, ...)) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
+
+/* Concatenate an arbitrary number of strings. You must pass NULL as
+ the last argument of this function, to terminate the list of
+ strings. Allocates memory using xmalloc. The first argument is
+ not one of the strings to be concatenated, but if not NULL is a
+ pointer to be freed after the new string is created, similar to the
+ way xrealloc works. */
+
+extern char *reconcat PARAMS ((char *, const char *, ...)) ATTRIBUTE_MALLOC ATTRIBUTE_SENTINEL;
+
+/* Determine the length of concatenating an arbitrary number of
+ strings. You must pass NULL as the last argument of this function,
+ to terminate the list of strings. */
+
+extern unsigned long concat_length PARAMS ((const char *, ...)) ATTRIBUTE_SENTINEL;
+
+/* Concatenate an arbitrary number of strings into a SUPPLIED area of
+ memory. You must pass NULL as the last argument of this function,
+ to terminate the list of strings. The supplied memory is assumed
+ to be large enough. */
+
+extern char *concat_copy PARAMS ((char *, const char *, ...)) ATTRIBUTE_SENTINEL;
+
+/* Concatenate an arbitrary number of strings into a GLOBAL area of
+ memory. You must pass NULL as the last argument of this function,
+ to terminate the list of strings. The supplied memory is assumed
+ to be large enough. */
+
+extern char *concat_copy2 PARAMS ((const char *, ...)) ATTRIBUTE_SENTINEL;
+
+/* This is the global area used by concat_copy2. */
+
+extern char *libiberty_concat_ptr;
+
+/* Concatenate an arbitrary number of strings. You must pass NULL as
+ the last argument of this function, to terminate the list of
+ strings. Allocates memory using alloca. The arguments are
+ evaluated twice! */
+#define ACONCAT(ACONCAT_PARAMS) \
+ (libiberty_concat_ptr = alloca (concat_length ACONCAT_PARAMS + 1), \
+ concat_copy2 ACONCAT_PARAMS)
+
+/* Check whether two file descriptors refer to the same file. */
+
+extern int fdmatch PARAMS ((int fd1, int fd2));
+
+/* Get the working directory. The result is cached, so don't call
+ chdir() between calls to getpwd(). */
+
+extern char * getpwd PARAMS ((void));
+
+/* Get the amount of time the process has run, in microseconds. */
+
+extern long get_run_time PARAMS ((void));
+
+/* Generate a relocated path to some installation directory. Allocates
+ return value using malloc. */
+
+extern char *make_relative_prefix PARAMS ((const char *, const char *,
+ const char *));
+
+/* Choose a temporary directory to use for scratch files. */
+
+extern char *choose_temp_base PARAMS ((void)) ATTRIBUTE_MALLOC;
+
+/* Return a temporary file name or NULL if unable to create one. */
+
+extern char *make_temp_file PARAMS ((const char *)) ATTRIBUTE_MALLOC;
+
+/* Allocate memory filled with spaces. Allocates using malloc. */
+
+extern const char *spaces PARAMS ((int count));
+
+/* Return the maximum error number for which strerror will return a
+ string. */
+
+extern int errno_max PARAMS ((void));
+
+/* Return the name of an errno value (e.g., strerrno (EINVAL) returns
+ "EINVAL"). */
+
+extern const char *strerrno PARAMS ((int));
+
+/* Given the name of an errno value, return the value. */
+
+extern int strtoerrno PARAMS ((const char *));
+
+/* ANSI's strerror(), but more robust. */
+
+extern char *xstrerror PARAMS ((int));
+
+/* Return the maximum signal number for which strsignal will return a
+ string. */
+
+extern int signo_max PARAMS ((void));
+
+/* Return a signal message string for a signal number
+ (e.g., strsignal (SIGHUP) returns something like "Hangup"). */
+/* This is commented out as it can conflict with one in system headers.
+ We still document its existence though. */
+
+/*extern const char *strsignal PARAMS ((int));*/
+
+/* Return the name of a signal number (e.g., strsigno (SIGHUP) returns
+ "SIGHUP"). */
+
+extern const char *strsigno PARAMS ((int));
+
+/* Given the name of a signal, return its number. */
+
+extern int strtosigno PARAMS ((const char *));
+
+/* Register a function to be run by xexit. Returns 0 on success. */
+
+extern int xatexit PARAMS ((void (*fn) (void)));
+
+/* Exit, calling all the functions registered with xatexit. */
+
+extern void xexit PARAMS ((int status)) ATTRIBUTE_NORETURN;
+
+/* Set the program name used by xmalloc. */
+
+extern void xmalloc_set_program_name PARAMS ((const char *));
+
+/* Report an allocation failure. */
+extern void xmalloc_failed PARAMS ((size_t)) ATTRIBUTE_NORETURN;
+
+/* Allocate memory without fail. If malloc fails, this will print a
+ message to stderr (using the name set by xmalloc_set_program_name,
+ if any) and then call xexit. */
+
+extern PTR xmalloc PARAMS ((size_t)) ATTRIBUTE_MALLOC;
+
+/* Reallocate memory without fail. This works like xmalloc. Note,
+ realloc type functions are not suitable for attribute malloc since
+ they may return the same address across multiple calls. */
+
+extern PTR xrealloc PARAMS ((PTR, size_t));
+
+/* Allocate memory without fail and set it to zero. This works like
+ xmalloc. */
+
+extern PTR xcalloc PARAMS ((size_t, size_t)) ATTRIBUTE_MALLOC;
+
+/* Copy a string into a memory buffer without fail. */
+
+extern char *xstrdup PARAMS ((const char *)) ATTRIBUTE_MALLOC;
+
+/* Copy an existing memory buffer to a new memory buffer without fail. */
+
+extern PTR xmemdup PARAMS ((const PTR, size_t, size_t)) ATTRIBUTE_MALLOC;
+
+/* Physical memory routines. Return values are in BYTES. */
+extern double physmem_total PARAMS ((void));
+extern double physmem_available PARAMS ((void));
+
+
+/* These macros provide a K&R/C89/C++-friendly way of allocating structures
+ with nice encapsulation. The XDELETE*() macros are technically
+ superfluous, but provided here for symmetry. Using them consistently
+ makes it easier to update client code to use different allocators such
+ as new/delete and new[]/delete[]. */
+
+/* Scalar allocators. */
+
+#define XNEW(T) ((T *) xmalloc (sizeof (T)))
+#define XCNEW(T) ((T *) xcalloc (1, sizeof (T)))
+#define XDELETE(P) free ((void*) (P))
+
+/* Array allocators. */
+
+#define XNEWVEC(T, N) ((T *) xmalloc (sizeof (T) * (N)))
+#define XCNEWVEC(T, N) ((T *) xcalloc ((N), sizeof (T)))
+#define XRESIZEVEC(T, P, N) ((T *) xrealloc ((void *) (P), sizeof (T) * (N)))
+#define XDELETEVEC(P) free ((void*) (P))
+
+/* Allocators for variable-sized structures and raw buffers. */
+
+#define XNEWVAR(T, S) ((T *) xmalloc ((S)))
+#define XCNEWVAR(T, S) ((T *) xcalloc (1, (S)))
+#define XRESIZEVAR(T, P, S) ((T *) xrealloc ((P), (S)))
+
+/* Type-safe obstack allocator. */
+
+#define XOBNEW(O, T) ((T *) obstack_alloc ((O), sizeof (T)))
+
+
+/* hex character manipulation routines */
+
+#define _hex_array_size 256
+#define _hex_bad 99
+extern const unsigned char _hex_value[_hex_array_size];
+extern void hex_init PARAMS ((void));
+#define hex_p(c) (hex_value (c) != _hex_bad)
+/* If you change this, note well: Some code relies on side effects in
+ the argument being performed exactly once. */
+#define hex_value(c) ((unsigned int) _hex_value[(unsigned char) (c)])
+
+/* Definitions used by the pexecute routine. */
+
+#define PEXECUTE_FIRST 1
+#define PEXECUTE_LAST 2
+#define PEXECUTE_ONE (PEXECUTE_FIRST + PEXECUTE_LAST)
+#define PEXECUTE_SEARCH 4
+#define PEXECUTE_VERBOSE 8
+
+/* Execute a program. */
+
+extern int pexecute PARAMS ((const char *, char * const *, const char *,
+ const char *, char **, char **, int));
+
+/* Wait for pexecute to finish. */
+
+extern int pwait PARAMS ((int, int *, int));
+
+#if !HAVE_DECL_ASPRINTF
+/* Like sprintf but provides a pointer to malloc'd storage, which must
+ be freed by the caller. */
+
+extern int asprintf PARAMS ((char **, const char *, ...)) ATTRIBUTE_PRINTF_2;
+#endif
+
+#if !HAVE_DECL_VASPRINTF
+/* Like vsprintf but provides a pointer to malloc'd storage, which
+ must be freed by the caller. */
+
+extern int vasprintf PARAMS ((char **, const char *, va_list))
+ ATTRIBUTE_PRINTF(2,0);
+#endif
+
+#define ARRAY_SIZE(a) (sizeof (a) / sizeof ((a)[0]))
+
+/* Drastically simplified alloca configurator. If we're using GCC,
+ we use __builtin_alloca; otherwise we use the C alloca. The C
+ alloca is always available. You can override GCC by defining
+ USE_C_ALLOCA yourself. The canonical autoconf macro C_ALLOCA is
+ also set/unset as it is often used to indicate whether code needs
+ to call alloca(0). */
+extern PTR C_alloca PARAMS ((size_t)) ATTRIBUTE_MALLOC;
+#undef alloca
+#if GCC_VERSION >= 2000 && !defined USE_C_ALLOCA
+# define alloca(x) __builtin_alloca(x)
+# undef C_ALLOCA
+# define ASTRDUP(X) \
+ (__extension__ ({ const char *const libiberty_optr = (X); \
+ const unsigned long libiberty_len = strlen (libiberty_optr) + 1; \
+ char *const libiberty_nptr = (char *const) alloca (libiberty_len); \
+ (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len); }))
+#else
+# define alloca(x) C_alloca(x)
+# undef USE_C_ALLOCA
+# define USE_C_ALLOCA 1
+# undef C_ALLOCA
+# define C_ALLOCA 1
+extern const char *libiberty_optr;
+extern char *libiberty_nptr;
+extern unsigned long libiberty_len;
+# define ASTRDUP(X) \
+ (libiberty_optr = (X), \
+ libiberty_len = strlen (libiberty_optr) + 1, \
+ libiberty_nptr = (char *) alloca (libiberty_len), \
+ (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len))
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif /* ! defined (LIBIBERTY_H) */
diff --git a/include/md5.h b/include/md5.h
new file mode 100644
index 000000000..ad51f1987
--- /dev/null
+++ b/include/md5.h
@@ -0,0 +1,142 @@
+/* md5.h - Declaration of functions and data types used for MD5 sum
+ computing library functions.
+ Copyright 1995, 1996, 2000 Free Software Foundation, Inc.
+ NOTE: The canonical source of this file is maintained with the GNU C
+ Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _MD5_H
+#define _MD5_H 1
+
+#include <stdio.h>
+
+#if defined HAVE_LIMITS_H || _LIBC
+# include <limits.h>
+#endif
+
+/* The following contortions are an attempt to use the C preprocessor
+ to determine an unsigned integral type that is 32 bits wide. An
+ alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but
+ doing that would require that the configure script compile and *run*
+ the resulting executable. Locally running cross-compiled executables
+ is usually not possible. */
+
+#ifdef _LIBC
+# include <sys/types.h>
+typedef u_int32_t md5_uint32;
+#else
+# define INT_MAX_32_BITS 2147483647
+
+/* If UINT_MAX isn't defined, assume it's a 32-bit type.
+ This should be valid for all systems GNU cares about because
+ that doesn't include 16-bit systems, and only modern systems
+ (that certainly have <limits.h>) have 64+-bit integral types. */
+
+# ifndef INT_MAX
+# define INT_MAX INT_MAX_32_BITS
+# endif
+
+# if INT_MAX == INT_MAX_32_BITS
+ typedef unsigned int md5_uint32;
+# else
+# if SHRT_MAX == INT_MAX_32_BITS
+ typedef unsigned short md5_uint32;
+# else
+# if LONG_MAX == INT_MAX_32_BITS
+ typedef unsigned long md5_uint32;
+# else
+ /* The following line is intended to evoke an error.
+ Using #error is not portable enough. */
+ "Cannot determine unsigned 32-bit data type."
+# endif
+# endif
+# endif
+#endif
+
+#undef __P
+#if defined (__STDC__) && __STDC__
+#define __P(x) x
+#else
+#define __P(x) ()
+#endif
+
+/* Structure to save state of computation between the single steps. */
+struct md5_ctx
+{
+ md5_uint32 A;
+ md5_uint32 B;
+ md5_uint32 C;
+ md5_uint32 D;
+
+ md5_uint32 total[2];
+ md5_uint32 buflen;
+ char buffer[128];
+};
+
+/*
+ * The following three functions are build up the low level used in
+ * the functions `md5_stream' and `md5_buffer'.
+ */
+
+/* Initialize structure containing state of computation.
+ (RFC 1321, 3.3: Step 3) */
+extern void md5_init_ctx __P ((struct md5_ctx *ctx));
+
+/* Starting with the result of former calls of this function (or the
+ initialization function update the context for the next LEN bytes
+ starting at BUFFER.
+ It is necessary that LEN is a multiple of 64!!! */
+extern void md5_process_block __P ((const void *buffer, size_t len,
+ struct md5_ctx *ctx));
+
+/* Starting with the result of former calls of this function (or the
+ initialization function update the context for the next LEN bytes
+ starting at BUFFER.
+ It is NOT required that LEN is a multiple of 64. */
+extern void md5_process_bytes __P ((const void *buffer, size_t len,
+ struct md5_ctx *ctx));
+
+/* Process the remaining bytes in the buffer and put result from CTX
+ in first 16 bytes following RESBUF. The result is always in little
+ endian byte order, so that a byte-wise output yields to the wanted
+ ASCII representation of the message digest.
+
+ IMPORTANT: On some systems it is required that RESBUF is correctly
+ aligned for a 32 bits value. */
+extern void *md5_finish_ctx __P ((struct md5_ctx *ctx, void *resbuf));
+
+
+/* Put result from CTX in first 16 bytes following RESBUF. The result is
+ always in little endian byte order, so that a byte-wise output yields
+ to the wanted ASCII representation of the message digest.
+
+ IMPORTANT: On some systems it is required that RESBUF is correctly
+ aligned for a 32 bits value. */
+extern void *md5_read_ctx __P ((const struct md5_ctx *ctx, void *resbuf));
+
+
+/* Compute MD5 message digest for bytes read from STREAM. The
+ resulting message digest number will be written into the 16 bytes
+ beginning at RESBLOCK. */
+extern int md5_stream __P ((FILE *stream, void *resblock));
+
+/* Compute MD5 message digest for LEN bytes beginning at BUFFER. The
+ result is always in little endian byte order, so that a byte-wise
+ output yields to the wanted ASCII representation of the message
+ digest. */
+extern void *md5_buffer __P ((const char *buffer, size_t len, void *resblock));
+
+#endif
diff --git a/include/nlm/ChangeLog b/include/nlm/ChangeLog
new file mode 100644
index 000000000..b3c9529b8
--- /dev/null
+++ b/include/nlm/ChangeLog
@@ -0,0 +1,93 @@
+2003-08-07 Alan Modra <amodra@bigpond.net.au>
+
+ * internal.h (Nlm_Internal_Custom_Header): Replace PTR with void *.
+
+2001-10-02 Alan Modra <amodra@bigpond.net.au>
+
+ * common.h (NLM_CAT, NLM_CAT3): Don't define.
+ (NLM_CAT4): Update conditions under which this is defined. Document
+ why CONCAT4 can't be used.
+
+Fri May 6 13:31:04 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * external.h (nlmNAME(External_Custom_Header)): Add length,
+ dataOffset, and dataStamp field.
+ (nlmNAME(External_Cygnus_Ext_Header)): Remove.
+ * internal.h (Nlm_Internal_Custom_Header): Add hdrLength,
+ dataOffset, dataStamp and hdr fields.
+
+Fri Apr 22 11:12:39 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * external.h (struct nlmNAME(external_cygnus_ext_header)): Rename
+ from nlmNAME(external_cygnus_section_header). Change stamp field
+ to 8 bytes. Add bytes field.
+ * internal.h (nlm_internal_cygnus_ext_header): Rename from
+ nlm_internal_cygnus_section_header. Change stamp field to 8
+ bytes.
+
+Thu Apr 21 11:57:09 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h (struct nlm_internal_cygnus_section_header): Define.
+ * external.h (struct nlmNAME(external_cygnus_section_header):
+ Define.
+
+Wed Apr 20 14:27:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h (struct nlm_internal_custom_header): Remove
+ debugRecOffset and debugRecLength fields. Add data field.
+ * external.h (struct nlmNAME(external_custom_header)): Remove
+ debugRecOffset and debugRecLength fields.
+
+Mon Feb 7 08:28:40 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * internal.h: Change HOST_64_BIT to BFD_HOST_64_BIT.
+
+Thu Dec 2 14:14:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * alpha-ext.h: New file describing formats of information in Alpha
+ NetWare files.
+ * common.h: Define some non-external Alpha information.
+
+Wed Nov 17 17:38:58 1993 Sean Eric Fagan (sef@cygnus.com)
+
+ * external.h: Don't define external_fixed_header here.
+ * i386-ext.h, sparc32-ext.h: New header files to define
+ external_fixed_header for particular CPU's.
+
+Wed Oct 27 11:45:56 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h (Nlm_Internal_Extended_Header): Added fields
+ sharedDebugRecordOffset and sharedDebugRecordCount.
+ * external.h (NlmNAME(External_Extended_Header)): Likewise.
+
+ * common.h (NLM_SIGNATURE): Do not define (it's different for each
+ backend).
+
+Tue Aug 31 13:24:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * internal.h: Change length fields of type char to type unsigned
+ char.
+
+Sat Jul 31 02:12:14 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * common.h (NLM_HIBIT, NLM_HEADER_VERSION): Define.
+
+Thu Jul 22 16:09:47 1993 Fred Fish (fnf@deneb.cygnus.com)
+
+ * common.h (NLM_CAT*, NLM_ARCH_SIZE, NLM_TARGET_LONG_SIZE,
+ NLM_TARGET_ADDRESS_SIZE, NLM_NAME, NlmNAME, nlmNAME): New
+ macros.
+ * external.h (TARGET_LONG_SIZE, TARGET_ADDRESS_SIZE): Remove
+ macros, convert usages to NLM_ equivalents.
+ * external.h: Use nlmNAME and NlmNAME macros to derive both
+ 32 and 64 bit versions.
+
+Mon Jul 19 22:12:40 1993 Fred Fish (fnf@deneb.cygnus.com)
+
+ * (common.h, external.h, internal.h): New files for NLM/NetWare
+ support.
+
+
+Local Variables:
+version-control: never
+End:
diff --git a/include/nlm/alpha-ext.h b/include/nlm/alpha-ext.h
new file mode 100644
index 000000000..ae6752402
--- /dev/null
+++ b/include/nlm/alpha-ext.h
@@ -0,0 +1,166 @@
+/* Alpha NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993 Free Software Foundation, Inc.
+ By Ian Lance Taylor, Cygnus Support
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* An Alpha NLM starts with an instance of this structure. */
+
+struct nlm32_alpha_external_prefix_header
+{
+ /* Magic number. Must be NLM32_ALPHA_MAGIC. */
+ unsigned char magic[4];
+ /* Format descriptor. Current value is 2. */
+ unsigned char format[4];
+ /* Size of prefix header. */
+ unsigned char size[4];
+ /* Padding. */
+ unsigned char pad1[4];
+ /* More fields may be added later, supposedly. */
+};
+
+/* The external format of an Alpha NLM reloc. This is the same as an
+ Alpha ECOFF reloc. */
+
+struct nlm32_alpha_external_reloc
+{
+ unsigned char r_vaddr[8];
+ unsigned char r_symndx[4];
+ unsigned char r_bits[4];
+};
+
+/* Constants to unpack the r_bits field of a reloc. */
+
+#define RELOC_BITS0_TYPE_LITTLE 0xff
+#define RELOC_BITS0_TYPE_SH_LITTLE 0
+
+#define RELOC_BITS1_EXTERN_LITTLE 0x01
+
+#define RELOC_BITS1_OFFSET_LITTLE 0x7e
+#define RELOC_BITS1_OFFSET_SH_LITTLE 1
+
+#define RELOC_BITS1_RESERVED_LITTLE 0x80
+#define RELOC_BITS1_RESERVED_SH_LITTLE 7
+#define RELOC_BITS2_RESERVED_LITTLE 0xff
+#define RELOC_BITS2_RESERVED_SH_LEFT_LITTLE 1
+#define RELOC_BITS3_RESERVED_LITTLE 0x03
+#define RELOC_BITS3_RESERVED_SH_LEFT_LITTLE 9
+
+#define RELOC_BITS3_SIZE_LITTLE 0xfc
+#define RELOC_BITS3_SIZE_SH_LITTLE 2
+
+/* The external format of the fixed header. */
+
+typedef struct nlm32_alpha_external_fixed_header
+{
+
+ /* The signature field identifies the file as an NLM. It must contain
+ the signature string, which depends upon the NLM target. */
+
+ unsigned char signature[24];
+
+ /* The version of the header. At this time, the highest version number
+ is 4. */
+
+ unsigned char version[4];
+
+ /* The name of the module, which must be a DOS name (1-8 characters followed
+ by a period and a 1-3 character extension). The first byte is the byte
+ length of the name and the last byte is a null terminator byte. This
+ field is fixed length, and any unused bytes should be null bytes. The
+ value is set by the OUTPUT keyword to NLMLINK. */
+
+ unsigned char moduleName[14];
+
+ /* Padding to make it come out correct. */
+
+ unsigned char pad1[2];
+
+ /* The byte offset of the code image from the start of the file. */
+
+ unsigned char codeImageOffset[4];
+
+ /* The size of the code image, in bytes. */
+
+ unsigned char codeImageSize[4];
+
+ /* The byte offset of the data image from the start of the file. */
+
+ unsigned char dataImageOffset[4];
+
+ /* The size of the data image, in bytes. */
+
+ unsigned char dataImageSize[4];
+
+ /* The size of the uninitialized data region that the loader is to be
+ allocated at load time. Uninitialized data follows the initialized
+ data in the NLM address space. */
+
+ unsigned char uninitializedDataSize[4];
+
+ /* The byte offset of the custom data from the start of the file. The
+ custom data is set by the CUSTOM keyword to NLMLINK. It is possible
+ for this to be EOF if there is no custom data. */
+
+ unsigned char customDataOffset[4];
+
+ /* The size of the custom data, in bytes. */
+
+ unsigned char customDataSize[4];
+
+ /* The byte offset of the module dependencies from the start of the file.
+ The module dependencies are determined by the MODULE keyword in
+ NLMLINK. */
+
+ unsigned char moduleDependencyOffset[4];
+
+ /* The number of module dependencies at the moduleDependencyOffset. */
+
+ unsigned char numberOfModuleDependencies[4];
+
+ /* The byte offset of the relocation fixup data from the start of the file */
+
+ unsigned char relocationFixupOffset[4];
+
+ unsigned char numberOfRelocationFixups[4];
+
+ unsigned char externalReferencesOffset[4];
+
+ unsigned char numberOfExternalReferences[4];
+
+ unsigned char publicsOffset[4];
+
+ unsigned char numberOfPublics[4];
+
+ /* The byte offset of the internal debug info from the start of the file.
+ It is possible for this to be EOF if there is no debug info. */
+
+ unsigned char debugInfoOffset[4];
+
+ unsigned char numberOfDebugRecords[4];
+
+ unsigned char codeStartOffset[4];
+
+ unsigned char exitProcedureOffset[4];
+
+ unsigned char checkUnloadProcedureOffset[4];
+
+ unsigned char moduleType[4];
+
+ unsigned char flags[4];
+
+} Nlm32_alpha_External_Fixed_Header;
diff --git a/include/nlm/common.h b/include/nlm/common.h
new file mode 100644
index 000000000..208f4cfa7
--- /dev/null
+++ b/include/nlm/common.h
@@ -0,0 +1,123 @@
+/* NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993, 2001 Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of NLM support for BFD, and contains the portions
+ that are common to both the internal and external representations. */
+
+/* If NLM_ARCH_SIZE is not defined, default to 32. NLM_ARCH_SIZE is
+ optionally defined by the application. */
+
+#ifndef NLM_ARCH_SIZE
+# define NLM_ARCH_SIZE 32
+#endif
+
+/* Due to horrible details of ANSI macro expansion, we can't use CONCAT4
+ for NLM_NAME. CONCAT2 is used in BFD_JUMP_TABLE macros, and some of
+ them will expand to tokens that themselves are macros defined in terms
+ of NLM_NAME. If NLM_NAME were defined using CONCAT4 (which is itself
+ defined in bfd-in.h using CONCAT2), ANSI preprocessor rules say that
+ the CONCAT2 within NLM_NAME should not be expanded.
+ So use another name. */
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#ifdef SABER
+#define NLM_CAT4(a,b,c,d) a##b##c##d
+#else
+/* This hack is to avoid a problem with some strict ANSI C preprocessors.
+ The problem is, "32_" is not a valid preprocessing token, and we don't
+ want extra underscores (e.g., "nlm_32_"). The NLM_XCAT2 macro will
+ cause the inner CAT2 macros to be evaluated first, producing
+ still-valid pp-tokens. Then the final concatenation can be done. */
+#define NLM_CAT2(a,b) a##b
+#define NLM_XCAT2(a,b) NLM_CAT2(a,b)
+#define NLM_CAT4(a,b,c,d) NLM_XCAT2(NLM_CAT2(a,b),NLM_CAT2(c,d))
+#endif
+#else
+#define NLM_CAT4(a,b,c,d) a/**/b/**/c/**/d
+#endif
+
+#if NLM_ARCH_SIZE == 32
+# define NLM_TARGET_LONG_SIZE 4
+# define NLM_TARGET_ADDRESS_SIZE 4
+# define NLM_NAME(x,y) NLM_CAT4(x,32,_,y)
+# define NLM_HIBIT (((bfd_vma) 1) << 31)
+#endif
+#if NLM_ARCH_SIZE == 64
+# define NLM_TARGET_LONG_SIZE 8
+# define NLM_TARGET_ADDRESS_SIZE 8
+# define NLM_NAME(x,y) NLM_CAT4(x,64,_,y)
+# define NLM_HIBIT (((bfd_vma) 1) << 63)
+#endif
+
+#define NlmNAME(X) NLM_NAME(Nlm,X)
+#define nlmNAME(X) NLM_NAME(nlm,X)
+
+/* Give names to things that should not change. */
+
+#define NLM_MAX_DESCRIPTION_LENGTH 127
+#define NLM_MAX_SCREEN_NAME_LENGTH 71
+#define NLM_MAX_THREAD_NAME_LENGTH 71
+#define NLM_MAX_COPYRIGHT_MESSAGE_LENGTH 255
+#define NLM_OTHER_DATA_LENGTH 400 /* FIXME */
+#define NLM_OLD_THREAD_NAME_LENGTH 5
+#define NLM_SIGNATURE_SIZE 24
+#define NLM_HEADER_VERSION 4
+#define NLM_MODULE_NAME_SIZE 14
+#define NLM_DEFAULT_STACKSIZE (8 * 1024)
+
+/* Alpha information. This should probably be in a separate Alpha
+ header file, but it can't go in alpha-ext.h because some of it is
+ needed by nlmconv.c. */
+
+/* Magic number in Alpha prefix header. */
+#define NLM32_ALPHA_MAGIC (0x83561840)
+
+/* The r_type field in an Alpha reloc is one of the following values. */
+#define ALPHA_R_IGNORE 0
+#define ALPHA_R_REFLONG 1
+#define ALPHA_R_REFQUAD 2
+#define ALPHA_R_GPREL32 3
+#define ALPHA_R_LITERAL 4
+#define ALPHA_R_LITUSE 5
+#define ALPHA_R_GPDISP 6
+#define ALPHA_R_BRADDR 7
+#define ALPHA_R_HINT 8
+#define ALPHA_R_SREL16 9
+#define ALPHA_R_SREL32 10
+#define ALPHA_R_SREL64 11
+#define ALPHA_R_OP_PUSH 12
+#define ALPHA_R_OP_STORE 13
+#define ALPHA_R_OP_PSUB 14
+#define ALPHA_R_OP_PRSHIFT 15
+#define ALPHA_R_GPVALUE 16
+#define ALPHA_R_NW_RELOC 250
+
+/* A local reloc, other than ALPHA_R_GPDISP or ALPHA_R_IGNORE, must be
+ against one of these symbol indices. */
+#define ALPHA_RELOC_SECTION_TEXT 1
+#define ALPHA_RELOC_SECTION_DATA 3
+
+/* An ALPHA_R_NW_RELOC has one of these values in the size field. If
+ it is SETGP, the r_vaddr field holds the GP value to use. If it is
+ LITA, the r_vaddr field holds the address of the .lita section and
+ the r_symndx field holds the size of the .lita section. */
+#define ALPHA_R_NW_RELOC_SETGP 1
+#define ALPHA_R_NW_RELOC_LITA 2
diff --git a/include/nlm/external.h b/include/nlm/external.h
new file mode 100644
index 000000000..12a486fd4
--- /dev/null
+++ b/include/nlm/external.h
@@ -0,0 +1,174 @@
+/* NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993, 1994 Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of NLM support for BFD, and contains the portions
+ that describe how NLM is represented externally by the BFD library.
+ I.E. it describes the in-file representation of NLM. It requires
+ the nlm/common.h file which contains the portions that are common to
+ both the internal and external representations.
+
+ Note that an NLM header consists of three parts:
+
+ (1) A fixed length header that has specific fields of known length,
+ at specific offsets in the file.
+
+ (2) A variable length header that has specific fields in a specific
+ order, but some fields may be variable length.
+
+ (3) A auxiliary header that has various optional fields in no specific
+ order. There is no way to identify the end of the auxiliary headers
+ except by finding a header without a recognized 'stamp'.
+
+ The exact format of the fixed length header unfortunately varies
+ from one NLM target to another, due to padding. Each target
+ defines the correct external format in a separate header file.
+
+*/
+
+/* NLM Header */
+
+/* The version header is one of the optional auxiliary headers and
+ follows the fixed length and variable length NLM headers. */
+
+typedef struct nlmNAME(external_version_header)
+{
+
+ /* The header is recognized by "VeRsIoN#" in the stamp field. */
+ char stamp[8];
+
+ unsigned char majorVersion[NLM_TARGET_LONG_SIZE];
+
+ unsigned char minorVersion[NLM_TARGET_LONG_SIZE];
+
+ unsigned char revision[NLM_TARGET_LONG_SIZE];
+
+ unsigned char year[NLM_TARGET_LONG_SIZE];
+
+ unsigned char month[NLM_TARGET_LONG_SIZE];
+
+ unsigned char day[NLM_TARGET_LONG_SIZE];
+
+} NlmNAME(External_Version_Header);
+
+
+typedef struct nlmNAME(external_copyright_header)
+{
+
+ /* The header is recognized by "CoPyRiGhT=" in the stamp field. */
+
+ char stamp[10];
+
+ unsigned char copyrightMessageLength[1];
+
+ /* There is a variable length field here called 'copyrightMessage'
+ that is the length specified by copyrightMessageLength. */
+
+} NlmNAME(External_Copyright_Header);
+
+
+typedef struct nlmNAME(external_extended_header)
+{
+
+ /* The header is recognized by "MeSsAgEs" in the stamp field. */
+
+ char stamp[8];
+
+ unsigned char languageID[NLM_TARGET_LONG_SIZE];
+
+ unsigned char messageFileOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char messageFileLength[NLM_TARGET_LONG_SIZE];
+
+ unsigned char messageCount[NLM_TARGET_LONG_SIZE];
+
+ unsigned char helpFileOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char helpFileLength[NLM_TARGET_LONG_SIZE];
+
+ unsigned char RPCDataOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char RPCDataLength[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedCodeOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedCodeLength[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedDataOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedDataLength[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedRelocationFixupOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedRelocationFixupCount[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedExternalReferenceOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedExternalReferenceCount[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedPublicsOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedPublicsCount[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedDebugRecordOffset[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedDebugRecordCount[NLM_TARGET_LONG_SIZE];
+
+ unsigned char sharedInitializationOffset[NLM_TARGET_ADDRESS_SIZE];
+
+ unsigned char SharedExitProcedureOffset[NLM_TARGET_ADDRESS_SIZE];
+
+ unsigned char productID[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved0[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved1[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved2[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved3[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved4[NLM_TARGET_LONG_SIZE];
+
+ unsigned char reserved5[NLM_TARGET_LONG_SIZE];
+
+} NlmNAME(External_Extended_Header);
+
+
+typedef struct nlmNAME(external_custom_header)
+{
+
+ /* The header is recognized by "CuStHeAd" in the stamp field. */
+ char stamp[8];
+
+ /* Length of this header. */
+ unsigned char length[NLM_TARGET_LONG_SIZE];
+
+ /* Offset to data. */
+ unsigned char dataOffset[NLM_TARGET_LONG_SIZE];
+
+ /* Length of data. */
+ unsigned char dataLength[NLM_TARGET_LONG_SIZE];
+
+ /* Stamp for this customer header--we recognize "CyGnUsEx". */
+ char dataStamp[8];
+
+} NlmNAME(External_Custom_Header);
diff --git a/include/nlm/i386-ext.h b/include/nlm/i386-ext.h
new file mode 100644
index 000000000..c7380120e
--- /dev/null
+++ b/include/nlm/i386-ext.h
@@ -0,0 +1,116 @@
+/* i386 NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* The external format of the fixed header. */
+
+typedef struct nlm32_i386_external_fixed_header
+{
+
+ /* The signature field identifies the file as an NLM. It must contain
+ the signature string, which depends upon the NLM target. */
+
+ unsigned char signature[24];
+
+ /* The version of the header. At this time, the highest version number
+ is 4. */
+
+ unsigned char version[4];
+
+ /* The name of the module, which must be a DOS name (1-8 characters followed
+ by a period and a 1-3 character extension). The first byte is the byte
+ length of the name and the last byte is a null terminator byte. This
+ field is fixed length, and any unused bytes should be null bytes. The
+ value is set by the OUTPUT keyword to NLMLINK. */
+
+ unsigned char moduleName[14];
+
+ /* The byte offset of the code image from the start of the file. */
+
+ unsigned char codeImageOffset[4];
+
+ /* The size of the code image, in bytes. */
+
+ unsigned char codeImageSize[4];
+
+ /* The byte offset of the data image from the start of the file. */
+
+ unsigned char dataImageOffset[4];
+
+ /* The size of the data image, in bytes. */
+
+ unsigned char dataImageSize[4];
+
+ /* The size of the uninitialized data region that the loader is to be
+ allocated at load time. Uninitialized data follows the initialized
+ data in the NLM address space. */
+
+ unsigned char uninitializedDataSize[4];
+
+ /* The byte offset of the custom data from the start of the file. The
+ custom data is set by the CUSTOM keyword to NLMLINK. It is possible
+ for this to be EOF if there is no custom data. */
+
+ unsigned char customDataOffset[4];
+
+ /* The size of the custom data, in bytes. */
+
+ unsigned char customDataSize[4];
+
+ /* The byte offset of the module dependencies from the start of the file.
+ The module dependencies are determined by the MODULE keyword in
+ NLMLINK. */
+
+ unsigned char moduleDependencyOffset[4];
+
+ /* The number of module dependencies at the moduleDependencyOffset. */
+
+ unsigned char numberOfModuleDependencies[4];
+
+ /* The byte offset of the relocation fixup data from the start of the file */
+
+ unsigned char relocationFixupOffset[4];
+
+ unsigned char numberOfRelocationFixups[4];
+
+ unsigned char externalReferencesOffset[4];
+
+ unsigned char numberOfExternalReferences[4];
+
+ unsigned char publicsOffset[4];
+
+ unsigned char numberOfPublics[4];
+
+ /* The byte offset of the internal debug info from the start of the file.
+ It is possible for this to be EOF if there is no debug info. */
+
+ unsigned char debugInfoOffset[4];
+
+ unsigned char numberOfDebugRecords[4];
+
+ unsigned char codeStartOffset[4];
+
+ unsigned char exitProcedureOffset[4];
+
+ unsigned char checkUnloadProcedureOffset[4];
+
+ unsigned char moduleType[4];
+
+ unsigned char flags[4];
+
+} Nlm32_i386_External_Fixed_Header;
diff --git a/include/nlm/internal.h b/include/nlm/internal.h
new file mode 100644
index 000000000..f61c42db8
--- /dev/null
+++ b/include/nlm/internal.h
@@ -0,0 +1,309 @@
+/* NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993, 1994, 2003 Free Software Foundation, Inc.
+
+ Written by Fred Fish @ Cygnus Support.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* This file is part of NLM support for BFD, and contains the portions
+ that describe how NLM is represented internally in the BFD library.
+ I.E. it describes the in-memory representation of NLM. It requires
+ the nlm/common.h file which contains the portions that are common to
+ both the internal and external representations. */
+
+#if 0
+
+/* Types used by various structures, functions, etc. */
+
+typedef unsigned long Nlm32_Addr; /* Unsigned program address */
+typedef unsigned long Nlm32_Off; /* Unsigned file offset */
+typedef long Nlm32_Sword; /* Signed large integer */
+typedef unsigned long Nlm32_Word; /* Unsigned large integer */
+typedef unsigned short Nlm32_Half; /* Unsigned medium integer */
+typedef unsigned char Nlm32_Char; /* Unsigned tiny integer */
+
+#ifdef BFD_HOST_64_BIT
+typedef unsigned BFD_HOST_64_BIT Nlm64_Addr;
+typedef unsigned BFD_HOST_64_BIT Nlm64_Off;
+typedef BFD_HOST_64_BIT Nlm64_Sxword;
+typedef unsigned BFD_HOST_64_BIT Nlm64_Xword;
+#endif
+typedef long Nlm64_Sword;
+typedef unsigned long Nlm64_Word;
+typedef unsigned short Nlm64_Half;
+
+#endif /* 0 */
+
+/* This structure contains the internal form of the portion of the NLM
+ header that is fixed length. */
+
+typedef struct nlm_internal_fixed_header
+{
+ /* The signature field identifies the file as an NLM. It must contain
+ the signature string, which depends upon the NLM target. */
+
+ char signature[NLM_SIGNATURE_SIZE];
+
+ /* The version of the header. At this time, the highest version number
+ is 4. */
+
+ long version;
+
+ /* The name of the module, which must be a DOS name (1-8 characters followed
+ by a period and a 1-3 character extension. The first byte is the byte
+ length of the name and the last byte is a null terminator byte. This
+ field is fixed length, and any unused bytes should be null bytes. The
+ value is set by the OUTPUT keyword to NLMLINK. */
+
+ char moduleName[NLM_MODULE_NAME_SIZE];
+
+ /* The byte offset of the code image from the start of the file. */
+
+ file_ptr codeImageOffset;
+
+ /* The size of the code image, in bytes. */
+
+ bfd_size_type codeImageSize;
+
+ /* The byte offset of the data image from the start of the file. */
+
+ file_ptr dataImageOffset;
+
+ /* The size of the data image, in bytes. */
+
+ bfd_size_type dataImageSize;
+
+ /* The size of the uninitialized data region that the loader is to be
+ allocated at load time. Uninitialized data follows the initialized
+ data in the NLM address space. */
+
+ bfd_size_type uninitializedDataSize;
+
+ /* The byte offset of the custom data from the start of the file. The
+ custom data is set by the CUSTOM keyword to NLMLINK. */
+
+ file_ptr customDataOffset;
+
+ /* The size of the custom data, in bytes. */
+
+ bfd_size_type customDataSize;
+
+ /* The byte offset of the module dependencies from the start of the file.
+ The module dependencies are determined by the MODULE keyword in
+ NLMLINK. */
+
+ file_ptr moduleDependencyOffset;
+
+ /* The number of module dependencies at the moduleDependencyOffset. */
+
+ long numberOfModuleDependencies;
+
+ /* The byte offset of the relocation fixup data from the start of the file */
+
+ file_ptr relocationFixupOffset;
+ long numberOfRelocationFixups;
+ file_ptr externalReferencesOffset;
+ long numberOfExternalReferences;
+ file_ptr publicsOffset;
+ long numberOfPublics;
+ file_ptr debugInfoOffset;
+ long numberOfDebugRecords;
+ file_ptr codeStartOffset;
+ file_ptr exitProcedureOffset;
+ file_ptr checkUnloadProcedureOffset;
+ long moduleType;
+ long flags;
+} Nlm_Internal_Fixed_Header;
+
+#define nlm32_internal_fixed_header nlm_internal_fixed_header
+#define Nlm32_Internal_Fixed_Header Nlm_Internal_Fixed_Header
+#define nlm64_internal_fixed_header nlm_internal_fixed_header
+#define Nlm64_Internal_Fixed_Header Nlm_Internal_Fixed_Header
+
+/* This structure contains the portions of the NLM header that are either
+ variable in size in the external representation, or else are not at a
+ fixed offset relative to the start of the NLM header due to preceding
+ variable sized fields.
+
+ Note that all the fields must exist in the external header, and in
+ the order used here (the same order is used in the internal form
+ for consistency, not out of necessity). */
+
+typedef struct nlm_internal_variable_header
+{
+
+ /* The descriptionLength field contains the length of the text in
+ descriptionText, excluding the null terminator. The descriptionText
+ field contains the NLM description obtained from the DESCRIPTION
+ keyword in NLMLINK plus the null byte terminator. The descriptionText
+ can be up to NLM_MAX_DESCRIPTION_LENGTH characters. */
+
+ unsigned char descriptionLength;
+ char descriptionText[NLM_MAX_DESCRIPTION_LENGTH + 1];
+
+ /* The stackSize field contains the size of the stack in bytes, as
+ specified by the STACK or STACKSIZE keyword in NLMLINK. If no size
+ is specified, the default is NLM_DEFAULT_STACKSIZE. */
+
+ long stackSize;
+
+ /* The reserved field is included only for completeness. It should contain
+ zero. */
+
+ long reserved;
+
+ /* This field is fixed length, should contain " LONG" (note leading
+ space), and is unused. */
+
+ char oldThreadName[NLM_OLD_THREAD_NAME_LENGTH];
+
+ /* The screenNameLength field contains the length of the actual text stored
+ in the screenName field, excluding the null byte terminator. The
+ screenName field contains the screen name as specified by the SCREENNAME
+ keyword in NLMLINK, and can be up to NLM_MAX_SCREEN_NAME_LENGTH
+ characters. */
+
+ unsigned char screenNameLength;
+ char screenName[NLM_MAX_SCREEN_NAME_LENGTH + 1];
+
+ /* The threadNameLength field contains the length of the actual text stored
+ in the threadName field, excluding the null byte terminator. The
+ threadName field contains the thread name as specified by the THREADNAME
+ keyword in NLMLINK, and can be up to NLM_MAX_THREAD_NAME_LENGTH
+ characters. */
+
+ unsigned char threadNameLength;
+ char threadName[NLM_MAX_THREAD_NAME_LENGTH + 1];
+
+} Nlm_Internal_Variable_Header;
+
+#define nlm32_internal_variable_header nlm_internal_variable_header
+#define Nlm32_Internal_Variable_Header Nlm_Internal_Variable_Header
+#define nlm64_internal_variable_header nlm_internal_variable_header
+#define Nlm64_Internal_Variable_Header Nlm_Internal_Variable_Header
+
+/* The version header is one of the optional auxiliary headers and
+ follows the fixed length and variable length NLM headers. */
+
+typedef struct nlm_internal_version_header
+{
+ /* The header is recognized by "VeRsIoN#" in the stamp field. */
+ char stamp[8];
+ long majorVersion;
+ long minorVersion;
+ long revision;
+ long year;
+ long month;
+ long day;
+} Nlm_Internal_Version_Header;
+
+#define nlm32_internal_version_header nlm_internal_version_header
+#define Nlm32_Internal_Version_Header Nlm_Internal_Version_Header
+#define nlm64_internal_version_header nlm_internal_version_header
+#define Nlm64_Internal_Version_Header Nlm_Internal_Version_Header
+
+typedef struct nlm_internal_copyright_header
+{
+ /* The header is recognized by "CoPyRiGhT=" in the stamp field. */
+ char stamp[10];
+ unsigned char copyrightMessageLength;
+ char copyrightMessage[NLM_MAX_COPYRIGHT_MESSAGE_LENGTH];
+} Nlm_Internal_Copyright_Header;
+
+#define nlm32_internal_copyright_header nlm_internal_copyright_header
+#define Nlm32_Internal_Copyright_Header Nlm_Internal_Copyright_Header
+#define nlm64_internal_copyright_header nlm_internal_copyright_header
+#define Nlm64_Internal_Copyright_Header Nlm_Internal_Copyright_Header
+
+typedef struct nlm_internal_extended_header
+{
+ /* The header is recognized by "MeSsAgEs" in the stamp field. */
+ char stamp[8];
+ long languageID;
+ file_ptr messageFileOffset;
+ bfd_size_type messageFileLength;
+ long messageCount;
+ file_ptr helpFileOffset;
+ bfd_size_type helpFileLength;
+ file_ptr RPCDataOffset;
+ bfd_size_type RPCDataLength;
+ file_ptr sharedCodeOffset;
+ bfd_size_type sharedCodeLength;
+ file_ptr sharedDataOffset;
+ bfd_size_type sharedDataLength;
+ file_ptr sharedRelocationFixupOffset;
+ long sharedRelocationFixupCount;
+ file_ptr sharedExternalReferenceOffset;
+ long sharedExternalReferenceCount;
+ file_ptr sharedPublicsOffset;
+ long sharedPublicsCount;
+ file_ptr sharedDebugRecordOffset;
+ long sharedDebugRecordCount;
+ bfd_vma SharedInitializationOffset;
+ bfd_vma SharedExitProcedureOffset;
+ long productID;
+ long reserved0;
+ long reserved1;
+ long reserved2;
+ long reserved3;
+ long reserved4;
+ long reserved5;
+} Nlm_Internal_Extended_Header;
+
+#define nlm32_internal_extended_header nlm_internal_extended_header
+#define Nlm32_Internal_Extended_Header Nlm_Internal_Extended_Header
+#define nlm64_internal_extended_header nlm_internal_extended_header
+#define Nlm64_Internal_Extended_Header Nlm_Internal_Extended_Header
+
+/* The format of a custom header as stored internally is different
+ from the external format. This is how we store a custom header
+ which we do not recognize. */
+
+typedef struct nlm_internal_custom_header
+{
+ /* The header is recognized by "CuStHeAd" in the stamp field. */
+ char stamp[8];
+ bfd_size_type hdrLength;
+ file_ptr dataOffset;
+ bfd_size_type dataLength;
+ char dataStamp[8];
+ void *hdr;
+} Nlm_Internal_Custom_Header;
+
+#define nlm32_internal_custom_header nlm_internal_custom_header
+#define Nlm32_Internal_Custom_Header Nlm_Internal_Custom_Header
+#define nlm64_internal_custom_header nlm_internal_custom_header
+#define Nlm64_Internal_Custom_Header Nlm_Internal_Custom_Header
+
+/* The internal Cygnus header is written out externally as a custom
+ header. We don't try to replicate that structure here. */
+
+typedef struct nlm_internal_cygnus_ext_header
+{
+ /* The header is recognized by "CyGnUsEx" in the stamp field. */
+ char stamp[8];
+ /* File location of debugging information. */
+ file_ptr offset;
+ /* Length of debugging information. */
+ bfd_size_type length;
+} Nlm_Internal_Cygnus_Ext_Header;
+
+#define nlm32_internal_cygnus_ext_header nlm_internal_cygnus_ext_header
+#define Nlm32_Internal_Cygnus_Ext_Header Nlm_Internal_Cygnus_Ext_Header
+#define nlm64_internal_cygnus_ext_header nlm_internal_cygnus_ext_header
+#define Nlm64_Internal_Cygnus_Ext_Header Nlm_Internal_Cygnus_Ext_Header
diff --git a/include/nlm/ppc-ext.h b/include/nlm/ppc-ext.h
new file mode 100644
index 000000000..0aae10772
--- /dev/null
+++ b/include/nlm/ppc-ext.h
@@ -0,0 +1,163 @@
+/* PowerPC NLM (NetWare Loadable Module) support for BFD.
+ Copyright (C) 1994 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifdef OLDFORMAT
+
+/* The format of a PowerPC NLM changed. These structures are only
+ used in the old format. */
+
+/* A PowerPC NLM starts with an instance of this structure. */
+
+struct nlm32_powerpc_external_prefix_header
+{
+ /* Signature. Must be "AppleNLM". */
+ char signature[8];
+ /* Version number. Current value is 1. */
+ unsigned char headerVersion[4];
+ /* ??. Should be set to 0. */
+ unsigned char origins[4];
+ /* File creation date in standard Unix time format (seconds since
+ 1/1/70). */
+ unsigned char date[4];
+};
+
+#define NLM32_POWERPC_SIGNATURE "AppleNLM"
+#define NLM32_POWERPC_HEADER_VERSION 1
+
+/* The external format of a PowerPC NLM reloc. This is the same as an
+ XCOFF dynamic reloc. */
+
+struct nlm32_powerpc_external_reloc
+{
+ /* Address. */
+ unsigned char l_vaddr[4];
+ /* Symbol table index. This is 0 for .text and 1 for .data. 2
+ means .bss, but I don't know if it is used. In XCOFF, larger
+ numbers are indices into the dynamic symbol table, but they are
+ presumably not used in an NLM. */
+ unsigned char l_symndx[4];
+ /* Relocation type. */
+ unsigned char l_rtype[2];
+ /* Section number being relocated. */
+ unsigned char l_rsecnm[2];
+};
+
+#endif /* OLDFORMAT */
+
+/* The external format of the fixed header. */
+
+typedef struct nlm32_powerpc_external_fixed_header
+{
+
+ /* The signature field identifies the file as an NLM. It must contain
+ the signature string, which depends upon the NLM target. */
+
+ unsigned char signature[24];
+
+ /* The version of the header. At this time, the highest version number
+ is 4. */
+
+ unsigned char version[4];
+
+ /* The name of the module, which must be a DOS name (1-8 characters followed
+ by a period and a 1-3 character extension). The first byte is the byte
+ length of the name and the last byte is a null terminator byte. This
+ field is fixed length, and any unused bytes should be null bytes. The
+ value is set by the OUTPUT keyword to NLMLINK. */
+
+ unsigned char moduleName[14];
+
+ /* Padding to make it come out correct. */
+
+ unsigned char pad1[2];
+
+ /* The byte offset of the code image from the start of the file. */
+
+ unsigned char codeImageOffset[4];
+
+ /* The size of the code image, in bytes. */
+
+ unsigned char codeImageSize[4];
+
+ /* The byte offset of the data image from the start of the file. */
+
+ unsigned char dataImageOffset[4];
+
+ /* The size of the data image, in bytes. */
+
+ unsigned char dataImageSize[4];
+
+ /* The size of the uninitialized data region that the loader is to be
+ allocated at load time. Uninitialized data follows the initialized
+ data in the NLM address space. */
+
+ unsigned char uninitializedDataSize[4];
+
+ /* The byte offset of the custom data from the start of the file. The
+ custom data is set by the CUSTOM keyword to NLMLINK. It is possible
+ for this to be EOF if there is no custom data. */
+
+ unsigned char customDataOffset[4];
+
+ /* The size of the custom data, in bytes. */
+
+ unsigned char customDataSize[4];
+
+ /* The byte offset of the module dependencies from the start of the file.
+ The module dependencies are determined by the MODULE keyword in
+ NLMLINK. */
+
+ unsigned char moduleDependencyOffset[4];
+
+ /* The number of module dependencies at the moduleDependencyOffset. */
+
+ unsigned char numberOfModuleDependencies[4];
+
+ /* The byte offset of the relocation fixup data from the start of the file */
+
+ unsigned char relocationFixupOffset[4];
+
+ unsigned char numberOfRelocationFixups[4];
+
+ unsigned char externalReferencesOffset[4];
+
+ unsigned char numberOfExternalReferences[4];
+
+ unsigned char publicsOffset[4];
+
+ unsigned char numberOfPublics[4];
+
+ /* The byte offset of the internal debug info from the start of the file.
+ It is possible for this to be EOF if there is no debug info. */
+
+ unsigned char debugInfoOffset[4];
+
+ unsigned char numberOfDebugRecords[4];
+
+ unsigned char codeStartOffset[4];
+
+ unsigned char exitProcedureOffset[4];
+
+ unsigned char checkUnloadProcedureOffset[4];
+
+ unsigned char moduleType[4];
+
+ unsigned char flags[4];
+
+} Nlm32_powerpc_External_Fixed_Header;
diff --git a/include/nlm/sparc32-ext.h b/include/nlm/sparc32-ext.h
new file mode 100644
index 000000000..d73b644b4
--- /dev/null
+++ b/include/nlm/sparc32-ext.h
@@ -0,0 +1,120 @@
+/* SPARC NLM (NetWare Loadable Module) support for BFD.
+ Copyright 1993 Free Software Foundation, Inc.
+
+This file is part of BFD, the Binary File Descriptor library.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* The external format of the fixed header. */
+
+typedef struct nlm32_sparc_external_fixed_header
+{
+
+ /* The signature field identifies the file as an NLM. It must contain
+ the signature string, which depends upon the NLM target. */
+
+ unsigned char signature[24];
+
+ /* The version of the header. At this time, the highest version number
+ is 4. */
+
+ unsigned char version[4];
+
+ /* The name of the module, which must be a DOS name (1-8 characters followed
+ by a period and a 1-3 character extension). The first byte is the byte
+ length of the name and the last byte is a null terminator byte. This
+ field is fixed length, and any unused bytes should be null bytes. The
+ value is set by the OUTPUT keyword to NLMLINK. */
+
+ unsigned char moduleName[14];
+
+ /* Padding to make it come out correct. */
+
+ unsigned char pad1[2];
+
+ /* The byte offset of the code image from the start of the file. */
+
+ unsigned char codeImageOffset[4];
+
+ /* The size of the code image, in bytes. */
+
+ unsigned char codeImageSize[4];
+
+ /* The byte offset of the data image from the start of the file. */
+
+ unsigned char dataImageOffset[4];
+
+ /* The size of the data image, in bytes. */
+
+ unsigned char dataImageSize[4];
+
+ /* The size of the uninitialized data region that the loader is to be
+ allocated at load time. Uninitialized data follows the initialized
+ data in the NLM address space. */
+
+ unsigned char uninitializedDataSize[4];
+
+ /* The byte offset of the custom data from the start of the file. The
+ custom data is set by the CUSTOM keyword to NLMLINK. It is possible
+ for this to be EOF if there is no custom data. */
+
+ unsigned char customDataOffset[4];
+
+ /* The size of the custom data, in bytes. */
+
+ unsigned char customDataSize[4];
+
+ /* The byte offset of the module dependencies from the start of the file.
+ The module dependencies are determined by the MODULE keyword in
+ NLMLINK. */
+
+ unsigned char moduleDependencyOffset[4];
+
+ /* The number of module dependencies at the moduleDependencyOffset. */
+
+ unsigned char numberOfModuleDependencies[4];
+
+ /* The byte offset of the relocation fixup data from the start of the file */
+
+ unsigned char relocationFixupOffset[4];
+
+ unsigned char numberOfRelocationFixups[4];
+
+ unsigned char externalReferencesOffset[4];
+
+ unsigned char numberOfExternalReferences[4];
+
+ unsigned char publicsOffset[4];
+
+ unsigned char numberOfPublics[4];
+
+ /* The byte offset of the internal debug info from the start of the file.
+ It is possible for this to be EOF if there is no debug info. */
+
+ unsigned char debugInfoOffset[4];
+
+ unsigned char numberOfDebugRecords[4];
+
+ unsigned char codeStartOffset[4];
+
+ unsigned char exitProcedureOffset[4];
+
+ unsigned char checkUnloadProcedureOffset[4];
+
+ unsigned char moduleType[4];
+
+ unsigned char flags[4];
+
+} Nlm32_sparc_External_Fixed_Header;
diff --git a/include/oasys.h b/include/oasys.h
new file mode 100644
index 000000000..c8f737a45
--- /dev/null
+++ b/include/oasys.h
@@ -0,0 +1,192 @@
+/* Oasys object format header file for BFD.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+ Contributed by Cygnus Support. */
+
+#define OASYS_MAX_SEC_COUNT 16
+/* **** */
+
+typedef struct oasys_archive_header
+ {
+ unsigned int version;
+ char create_date[12];
+ char revision_date[12];
+ unsigned int mod_count;
+ file_ptr mod_tbl_offset;
+ unsigned int sym_tbl_size;
+ unsigned int sym_count;
+ file_ptr sym_tbl_offset;
+ unsigned int xref_count;
+ file_ptr xref_lst_offset;
+ }
+oasys_archive_header_type;
+
+typedef struct oasys_extarchive_header
+ {
+ bfd_byte version[4];
+ bfd_byte create_date[12];
+ bfd_byte revision_date[12];
+ bfd_byte mod_count[4];
+ bfd_byte mod_tbl_offset[4];
+ bfd_byte sym_tbl_size[4];
+ bfd_byte sym_count[4];
+ bfd_byte sym_tbl_offset[4];
+ bfd_byte xref_count[4];
+ bfd_byte xref_lst_offset[4];
+ }
+oasys_extarchive_header_type;
+
+typedef struct oasys_module_table
+ {
+ int mod_number;
+ char mod_date[12];
+ unsigned int mod_size;
+ unsigned int dep_count;
+ unsigned int depee_count;
+ file_ptr file_offset;
+ unsigned int sect_count;
+ char *module_name;
+ unsigned int module_name_size;
+ }
+oasys_module_table_type;
+
+typedef struct oasys_extmodule_table_a
+ {
+ bfd_byte mod_number[4];
+ bfd_byte mod_date[12];
+ bfd_byte mod_size[4];
+ bfd_byte dep_count[4];
+ bfd_byte depee_count[4];
+ bfd_byte sect_count[4];
+ bfd_byte file_offset[4];
+ bfd_byte mod_name[32];
+ }
+oasys_extmodule_table_type_a_type;
+
+typedef struct oasys_extmodule_table_b
+ {
+ bfd_byte mod_number[4];
+ bfd_byte mod_date[12];
+ bfd_byte mod_size[4];
+ bfd_byte dep_count[4];
+ bfd_byte depee_count[4];
+ bfd_byte sect_count[4];
+ bfd_byte file_offset[4];
+ bfd_byte mod_name_length[4];
+ }
+oasys_extmodule_table_type_b_type;
+
+typedef enum oasys_record
+ {
+ oasys_record_is_end_enum = 0,
+ oasys_record_is_data_enum = 1,
+ oasys_record_is_symbol_enum = 2,
+ oasys_record_is_header_enum = 3,
+ oasys_record_is_named_section_enum = 4,
+ oasys_record_is_com_enum = 5,
+ oasys_record_is_debug_enum = 6,
+ oasys_record_is_section_enum = 7,
+ oasys_record_is_debug_file_enum = 8,
+ oasys_record_is_module_enum = 9,
+ oasys_record_is_local_enum = 10
+ }
+oasys_record_enum_type;
+
+typedef struct oasys_record_header
+ {
+ unsigned char length;
+ unsigned char check_sum;
+ unsigned char type;
+ unsigned char fill;
+ }
+oasys_record_header_type;
+
+typedef struct oasys_data_record
+ {
+ oasys_record_header_type header;
+ unsigned char relb;
+ bfd_byte addr[4];
+ /* maximum total size of data record is 255 bytes */
+ bfd_byte data[246];
+ }
+oasys_data_record_type;
+
+typedef struct oasys_header_record
+ {
+ oasys_record_header_type header;
+ unsigned char version_number;
+ unsigned char rev_number;
+ char module_name[26-6];
+ char description[64-26];
+ }
+oasys_header_record_type;
+
+#define OASYS_VERSION_NUMBER 0
+#define OASYS_REV_NUMBER 0
+
+typedef struct oasys_symbol_record
+ {
+ oasys_record_header_type header;
+ unsigned char relb;
+ bfd_byte value[4];
+ bfd_byte refno[2];
+ char name[64];
+ }
+oasys_symbol_record_type;
+
+#define RELOCATION_PCREL_BIT 0x80
+#define RELOCATION_32BIT_BIT 0x40
+#define RELOCATION_TYPE_BITS 0x30
+#define RELOCATION_TYPE_ABS 0x00
+#define RELOCATION_TYPE_REL 0x10
+#define RELOCATION_TYPE_UND 0x20
+#define RELOCATION_TYPE_COM 0x30
+#define RELOCATION_SECT_BITS 0x0f
+
+typedef struct oasys_section_record
+ {
+ oasys_record_header_type header;
+ unsigned char relb;
+ bfd_byte value[4];
+ bfd_byte vma[4];
+ bfd_byte fill[3];
+ }
+oasys_section_record_type;
+
+typedef struct oasys_end_record
+ {
+ oasys_record_header_type header;
+ unsigned char relb;
+ bfd_byte entry[4];
+ bfd_byte fill[2];
+ bfd_byte zero;
+ }
+oasys_end_record_type;
+
+typedef union oasys_record_union
+ {
+ oasys_record_header_type header;
+ oasys_data_record_type data;
+ oasys_section_record_type section;
+ oasys_symbol_record_type symbol;
+ oasys_header_record_type first;
+ oasys_end_record_type end;
+ bfd_byte pad[256];
+ }
+oasys_record_union_type;
diff --git a/include/objalloc.h b/include/objalloc.h
new file mode 100644
index 000000000..c7106478d
--- /dev/null
+++ b/include/objalloc.h
@@ -0,0 +1,115 @@
+/* objalloc.h -- routines to allocate memory for objects
+ Copyright 1997, 2001 Free Software Foundation, Inc.
+ Written by Ian Lance Taylor, Cygnus Solutions.
+
+This program is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#ifndef OBJALLOC_H
+#define OBJALLOC_H
+
+#include "ansidecl.h"
+
+/* These routines allocate space for an object. The assumption is
+ that the object will want to allocate space as it goes along, but
+ will never want to free any particular block. There is a function
+ to free a block, which also frees all more recently allocated
+ blocks. There is also a function to free all the allocated space.
+
+ This is essentially a specialization of obstacks. The main
+ difference is that a block may not be allocated a bit at a time.
+ Another difference is that these routines are always built on top
+ of malloc, and always pass an malloc failure back to the caller,
+ unlike more recent versions of obstacks. */
+
+/* This is what an objalloc structure looks like. Callers should not
+ refer to these fields, nor should they allocate these structure
+ themselves. Instead, they should only create them via
+ objalloc_init, and only access them via the functions and macros
+ listed below. The structure is only defined here so that we can
+ access it via macros. */
+
+struct objalloc
+{
+ char *current_ptr;
+ unsigned int current_space;
+ PTR chunks;
+};
+
+/* Work out the required alignment. */
+
+struct objalloc_align { char x; double d; };
+
+#if defined (__STDC__) && __STDC__
+#ifndef offsetof
+#include <stddef.h>
+#endif
+#endif
+#ifndef offsetof
+#define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER)
+#endif
+#define OBJALLOC_ALIGN offsetof (struct objalloc_align, d)
+
+/* Create an objalloc structure. Returns NULL if malloc fails. */
+
+extern struct objalloc *objalloc_create PARAMS ((void));
+
+/* Allocate space from an objalloc structure. Returns NULL if malloc
+ fails. */
+
+extern PTR _objalloc_alloc PARAMS ((struct objalloc *, unsigned long));
+
+/* The macro version of objalloc_alloc. We only define this if using
+ gcc, because otherwise we would have to evaluate the arguments
+ multiple times, or use a temporary field as obstack.h does. */
+
+#if defined (__GNUC__) && defined (__STDC__) && __STDC__
+
+/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and
+ does not implement __extension__. But that compiler doesn't define
+ __GNUC_MINOR__. */
+#if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__)
+#define __extension__
+#endif
+
+#define objalloc_alloc(o, l) \
+ __extension__ \
+ ({ struct objalloc *__o = (o); \
+ unsigned long __len = (l); \
+ if (__len == 0) \
+ __len = 1; \
+ __len = (__len + OBJALLOC_ALIGN - 1) &~ (OBJALLOC_ALIGN - 1); \
+ (__len <= __o->current_space \
+ ? (__o->current_ptr += __len, \
+ __o->current_space -= __len, \
+ (PTR) (__o->current_ptr - __len)) \
+ : _objalloc_alloc (__o, __len)); })
+
+#else /* ! __GNUC__ */
+
+#define objalloc_alloc(o, l) _objalloc_alloc ((o), (l))
+
+#endif /* ! __GNUC__ */
+
+/* Free an entire objalloc structure. */
+
+extern void objalloc_free PARAMS ((struct objalloc *));
+
+/* Free a block allocated by objalloc_alloc. This also frees all more
+ recently allocated blocks. */
+
+extern void objalloc_free_block PARAMS ((struct objalloc *, PTR));
+
+#endif /* OBJALLOC_H */
diff --git a/include/obstack.h b/include/obstack.h
new file mode 100644
index 000000000..007853e80
--- /dev/null
+++ b/include/obstack.h
@@ -0,0 +1,611 @@
+/* obstack.h - object stack macros
+ Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998,
+ 1999, 2000
+ Free Software Foundation, Inc.
+
+
+ NOTE: The canonical source of this file is maintained with the GNU C Library.
+ Bugs can be reported to bug-glibc@gnu.org.
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ USA. */
+
+/* Summary:
+
+All the apparent functions defined here are macros. The idea
+is that you would use these pre-tested macros to solve a
+very specific set of problems, and they would run fast.
+Caution: no side-effects in arguments please!! They may be
+evaluated MANY times!!
+
+These macros operate a stack of objects. Each object starts life
+small, and may grow to maturity. (Consider building a word syllable
+by syllable.) An object can move while it is growing. Once it has
+been "finished" it never changes address again. So the "top of the
+stack" is typically an immature growing object, while the rest of the
+stack is of mature, fixed size and fixed address objects.
+
+These routines grab large chunks of memory, using a function you
+supply, called `obstack_chunk_alloc'. On occasion, they free chunks,
+by calling `obstack_chunk_free'. You must define them and declare
+them before using any obstack macros.
+
+Each independent stack is represented by a `struct obstack'.
+Each of the obstack macros expects a pointer to such a structure
+as the first argument.
+
+One motivation for this package is the problem of growing char strings
+in symbol tables. Unless you are "fascist pig with a read-only mind"
+--Gosper's immortal quote from HAKMEM item 154, out of context--you
+would not like to put any arbitrary upper limit on the length of your
+symbols.
+
+In practice this often means you will build many short symbols and a
+few long symbols. At the time you are reading a symbol you don't know
+how long it is. One traditional method is to read a symbol into a
+buffer, realloc()ating the buffer every time you try to read a symbol
+that is longer than the buffer. This is beaut, but you still will
+want to copy the symbol from the buffer to a more permanent
+symbol-table entry say about half the time.
+
+With obstacks, you can work differently. Use one obstack for all symbol
+names. As you read a symbol, grow the name in the obstack gradually.
+When the name is complete, finalize it. Then, if the symbol exists already,
+free the newly read name.
+
+The way we do this is to take a large chunk, allocating memory from
+low addresses. When you want to build a symbol in the chunk you just
+add chars above the current "high water mark" in the chunk. When you
+have finished adding chars, because you got to the end of the symbol,
+you know how long the chars are, and you can create a new object.
+Mostly the chars will not burst over the highest address of the chunk,
+because you would typically expect a chunk to be (say) 100 times as
+long as an average object.
+
+In case that isn't clear, when we have enough chars to make up
+the object, THEY ARE ALREADY CONTIGUOUS IN THE CHUNK (guaranteed)
+so we just point to it where it lies. No moving of chars is
+needed and this is the second win: potentially long strings need
+never be explicitly shuffled. Once an object is formed, it does not
+change its address during its lifetime.
+
+When the chars burst over a chunk boundary, we allocate a larger
+chunk, and then copy the partly formed object from the end of the old
+chunk to the beginning of the new larger chunk. We then carry on
+accreting characters to the end of the object as we normally would.
+
+A special macro is provided to add a single char at a time to a
+growing object. This allows the use of register variables, which
+break the ordinary 'growth' macro.
+
+Summary:
+ We allocate large chunks.
+ We carve out one object at a time from the current chunk.
+ Once carved, an object never moves.
+ We are free to append data of any size to the currently
+ growing object.
+ Exactly one object is growing in an obstack at any one time.
+ You can run one obstack per control block.
+ You may have as many control blocks as you dare.
+ Because of the way we do it, you can `unwind' an obstack
+ back to a previous state. (You may remove objects much
+ as you would with a stack.)
+*/
+
+
+/* Don't do the contents of this file more than once. */
+
+#ifndef _OBSTACK_H
+#define _OBSTACK_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* We use subtraction of (char *) 0 instead of casting to int
+ because on word-addressable machines a simple cast to int
+ may ignore the byte-within-word field of the pointer. */
+
+#ifndef __PTR_TO_INT
+# define __PTR_TO_INT(P) ((P) - (char *) 0)
+#endif
+
+#ifndef __INT_TO_PTR
+# define __INT_TO_PTR(P) ((P) + (char *) 0)
+#endif
+
+/* We need the type of the resulting object. If __PTRDIFF_TYPE__ is
+ defined, as with GNU C, use that; that way we don't pollute the
+ namespace with <stddef.h>'s symbols. Otherwise, if <stddef.h> is
+ available, include it and use ptrdiff_t. In traditional C, long is
+ the best that we can do. */
+
+#ifdef __PTRDIFF_TYPE__
+# define PTR_INT_TYPE __PTRDIFF_TYPE__
+#else
+# ifdef HAVE_STDDEF_H
+# include <stddef.h>
+# define PTR_INT_TYPE ptrdiff_t
+# else
+# define PTR_INT_TYPE long
+# endif
+#endif
+
+#if defined _LIBC || defined HAVE_STRING_H
+# include <string.h>
+# if defined __STDC__ && __STDC__
+# define _obstack_memcpy(To, From, N) memcpy ((To), (From), (N))
+# else
+# define _obstack_memcpy(To, From, N) memcpy ((To), (char *)(From), (N))
+# endif
+#else
+# ifdef memcpy
+# define _obstack_memcpy(To, From, N) memcpy ((To), (char *)(From), (N))
+# else
+# define _obstack_memcpy(To, From, N) bcopy ((char *)(From), (To), (N))
+# endif
+#endif
+
+struct _obstack_chunk /* Lives at front of each chunk. */
+{
+ char *limit; /* 1 past end of this chunk */
+ struct _obstack_chunk *prev; /* address of prior chunk or NULL */
+ char contents[4]; /* objects begin here */
+};
+
+struct obstack /* control current object in current chunk */
+{
+ long chunk_size; /* preferred size to allocate chunks in */
+ struct _obstack_chunk *chunk; /* address of current struct obstack_chunk */
+ char *object_base; /* address of object we are building */
+ char *next_free; /* where to add next char to current object */
+ char *chunk_limit; /* address of char after current chunk */
+ PTR_INT_TYPE temp; /* Temporary for some macros. */
+ int alignment_mask; /* Mask of alignment for each object. */
+#if defined __STDC__ && __STDC__
+ /* These prototypes vary based on `use_extra_arg', and we use
+ casts to the prototypeless function type in all assignments,
+ but having prototypes here quiets -Wstrict-prototypes. */
+ struct _obstack_chunk *(*chunkfun) (void *, long);
+ void (*freefun) (void *, struct _obstack_chunk *);
+ void *extra_arg; /* first arg for chunk alloc/dealloc funcs */
+#else
+ struct _obstack_chunk *(*chunkfun) (); /* User's fcn to allocate a chunk. */
+ void (*freefun) (); /* User's function to free a chunk. */
+ char *extra_arg; /* first arg for chunk alloc/dealloc funcs */
+#endif
+ unsigned use_extra_arg:1; /* chunk alloc/dealloc funcs take extra arg */
+ unsigned maybe_empty_object:1;/* There is a possibility that the current
+ chunk contains a zero-length object. This
+ prevents freeing the chunk if we allocate
+ a bigger chunk to replace it. */
+ unsigned alloc_failed:1; /* No longer used, as we now call the failed
+ handler on error, but retained for binary
+ compatibility. */
+};
+
+/* Declare the external functions we use; they are in obstack.c. */
+
+#if defined __STDC__ && __STDC__
+extern void _obstack_newchunk (struct obstack *, int);
+extern void _obstack_free (struct obstack *, void *);
+extern int _obstack_begin (struct obstack *, int, int,
+ void *(*) (long), void (*) (void *));
+extern int _obstack_begin_1 (struct obstack *, int, int,
+ void *(*) (void *, long),
+ void (*) (void *, void *), void *);
+extern int _obstack_memory_used (struct obstack *);
+#else
+extern void _obstack_newchunk ();
+extern void _obstack_free ();
+extern int _obstack_begin ();
+extern int _obstack_begin_1 ();
+extern int _obstack_memory_used ();
+#endif
+
+#if defined __STDC__ && __STDC__
+
+/* Do the function-declarations after the structs
+ but before defining the macros. */
+
+void obstack_init (struct obstack *obstack);
+
+void * obstack_alloc (struct obstack *obstack, int size);
+
+void * obstack_copy (struct obstack *obstack, void *address, int size);
+void * obstack_copy0 (struct obstack *obstack, void *address, int size);
+
+void obstack_free (struct obstack *obstack, void *block);
+
+void obstack_blank (struct obstack *obstack, int size);
+
+void obstack_grow (struct obstack *obstack, void *data, int size);
+void obstack_grow0 (struct obstack *obstack, void *data, int size);
+
+void obstack_1grow (struct obstack *obstack, int data_char);
+void obstack_ptr_grow (struct obstack *obstack, void *data);
+void obstack_int_grow (struct obstack *obstack, int data);
+
+void * obstack_finish (struct obstack *obstack);
+
+int obstack_object_size (struct obstack *obstack);
+
+int obstack_room (struct obstack *obstack);
+void obstack_make_room (struct obstack *obstack, int size);
+void obstack_1grow_fast (struct obstack *obstack, int data_char);
+void obstack_ptr_grow_fast (struct obstack *obstack, void *data);
+void obstack_int_grow_fast (struct obstack *obstack, int data);
+void obstack_blank_fast (struct obstack *obstack, int size);
+
+void * obstack_base (struct obstack *obstack);
+void * obstack_next_free (struct obstack *obstack);
+int obstack_alignment_mask (struct obstack *obstack);
+int obstack_chunk_size (struct obstack *obstack);
+int obstack_memory_used (struct obstack *obstack);
+
+#endif /* __STDC__ */
+
+/* Non-ANSI C cannot really support alternative functions for these macros,
+ so we do not declare them. */
+
+/* Error handler called when `obstack_chunk_alloc' failed to allocate
+ more memory. This can be set to a user defined function. The
+ default action is to print a message and abort. */
+#if defined __STDC__ && __STDC__
+extern void (*obstack_alloc_failed_handler) (void);
+#else
+extern void (*obstack_alloc_failed_handler) ();
+#endif
+
+/* Exit value used when `print_and_abort' is used. */
+extern int obstack_exit_failure;
+
+/* Pointer to beginning of object being allocated or to be allocated next.
+ Note that this might not be the final address of the object
+ because a new chunk might be needed to hold the final size. */
+
+#define obstack_base(h) ((h)->object_base)
+
+/* Size for allocating ordinary chunks. */
+
+#define obstack_chunk_size(h) ((h)->chunk_size)
+
+/* Pointer to next byte not yet allocated in current chunk. */
+
+#define obstack_next_free(h) ((h)->next_free)
+
+/* Mask specifying low bits that should be clear in address of an object. */
+
+#define obstack_alignment_mask(h) ((h)->alignment_mask)
+
+/* To prevent prototype warnings provide complete argument list in
+ standard C version. */
+#if defined __STDC__ && __STDC__
+
+# define obstack_init(h) \
+ _obstack_begin ((h), 0, 0, \
+ (void *(*) (long)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free)
+
+# define obstack_begin(h, size) \
+ _obstack_begin ((h), (size), 0, \
+ (void *(*) (long)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free)
+
+# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \
+ _obstack_begin ((h), (size), (alignment), \
+ (void *(*) (long)) (chunkfun), (void (*) (void *)) (freefun))
+
+# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \
+ _obstack_begin_1 ((h), (size), (alignment), \
+ (void *(*) (void *, long)) (chunkfun), \
+ (void (*) (void *, void *)) (freefun), (arg))
+
+# define obstack_chunkfun(h, newchunkfun) \
+ ((h) -> chunkfun = (struct _obstack_chunk *(*)(void *, long)) (newchunkfun))
+
+# define obstack_freefun(h, newfreefun) \
+ ((h) -> freefun = (void (*)(void *, struct _obstack_chunk *)) (newfreefun))
+
+#else
+
+# define obstack_init(h) \
+ _obstack_begin ((h), 0, 0, \
+ (void *(*) ()) obstack_chunk_alloc, (void (*) ()) obstack_chunk_free)
+
+# define obstack_begin(h, size) \
+ _obstack_begin ((h), (size), 0, \
+ (void *(*) ()) obstack_chunk_alloc, (void (*) ()) obstack_chunk_free)
+
+# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \
+ _obstack_begin ((h), (size), (alignment), \
+ (void *(*) ()) (chunkfun), (void (*) ()) (freefun))
+
+# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \
+ _obstack_begin_1 ((h), (size), (alignment), \
+ (void *(*) ()) (chunkfun), (void (*) ()) (freefun), (arg))
+
+# define obstack_chunkfun(h, newchunkfun) \
+ ((h) -> chunkfun = (struct _obstack_chunk *(*)()) (newchunkfun))
+
+# define obstack_freefun(h, newfreefun) \
+ ((h) -> freefun = (void (*)()) (newfreefun))
+
+#endif
+
+#define obstack_1grow_fast(h,achar) (*((h)->next_free)++ = (achar))
+
+#define obstack_blank_fast(h,n) ((h)->next_free += (n))
+
+#define obstack_memory_used(h) _obstack_memory_used (h)
+
+#if defined __GNUC__ && defined __STDC__ && __STDC__
+/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and
+ does not implement __extension__. But that compiler doesn't define
+ __GNUC_MINOR__. */
+# if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__)
+# define __extension__
+# endif
+
+/* For GNU C, if not -traditional,
+ we can define these macros to compute all args only once
+ without using a global variable.
+ Also, we can avoid using the `temp' slot, to make faster code. */
+
+# define obstack_object_size(OBSTACK) \
+ __extension__ \
+ ({ struct obstack *__o = (OBSTACK); \
+ (unsigned) (__o->next_free - __o->object_base); })
+
+# define obstack_room(OBSTACK) \
+ __extension__ \
+ ({ struct obstack *__o = (OBSTACK); \
+ (unsigned) (__o->chunk_limit - __o->next_free); })
+
+# define obstack_make_room(OBSTACK,length) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ int __len = (length); \
+ if (__o->chunk_limit - __o->next_free < __len) \
+ _obstack_newchunk (__o, __len); \
+ (void) 0; })
+
+# define obstack_empty_p(OBSTACK) \
+ __extension__ \
+ ({ struct obstack *__o = (OBSTACK); \
+ (__o->chunk->prev == 0 && __o->next_free - __o->chunk->contents == 0); })
+
+# define obstack_grow(OBSTACK,where,length) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ int __len = (length); \
+ if (__o->next_free + __len > __o->chunk_limit) \
+ _obstack_newchunk (__o, __len); \
+ _obstack_memcpy (__o->next_free, (where), __len); \
+ __o->next_free += __len; \
+ (void) 0; })
+
+# define obstack_grow0(OBSTACK,where,length) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ int __len = (length); \
+ if (__o->next_free + __len + 1 > __o->chunk_limit) \
+ _obstack_newchunk (__o, __len + 1); \
+ _obstack_memcpy (__o->next_free, (where), __len); \
+ __o->next_free += __len; \
+ *(__o->next_free)++ = 0; \
+ (void) 0; })
+
+# define obstack_1grow(OBSTACK,datum) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ if (__o->next_free + 1 > __o->chunk_limit) \
+ _obstack_newchunk (__o, 1); \
+ obstack_1grow_fast (__o, datum); \
+ (void) 0; })
+
+/* These assume that the obstack alignment is good enough for pointers or ints,
+ and that the data added so far to the current object
+ shares that much alignment. */
+
+# define obstack_ptr_grow(OBSTACK,datum) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ if (__o->next_free + sizeof (void *) > __o->chunk_limit) \
+ _obstack_newchunk (__o, sizeof (void *)); \
+ obstack_ptr_grow_fast (__o, datum); })
+
+# define obstack_int_grow(OBSTACK,datum) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ if (__o->next_free + sizeof (int) > __o->chunk_limit) \
+ _obstack_newchunk (__o, sizeof (int)); \
+ obstack_int_grow_fast (__o, datum); })
+
+# define obstack_ptr_grow_fast(OBSTACK,aptr) \
+__extension__ \
+({ struct obstack *__o1 = (OBSTACK); \
+ *(const void **) __o1->next_free = (aptr); \
+ __o1->next_free += sizeof (const void *); \
+ (void) 0; })
+
+# define obstack_int_grow_fast(OBSTACK,aint) \
+__extension__ \
+({ struct obstack *__o1 = (OBSTACK); \
+ *(int *) __o1->next_free = (aint); \
+ __o1->next_free += sizeof (int); \
+ (void) 0; })
+
+# define obstack_blank(OBSTACK,length) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ int __len = (length); \
+ if (__o->chunk_limit - __o->next_free < __len) \
+ _obstack_newchunk (__o, __len); \
+ obstack_blank_fast (__o, __len); \
+ (void) 0; })
+
+# define obstack_alloc(OBSTACK,length) \
+__extension__ \
+({ struct obstack *__h = (OBSTACK); \
+ obstack_blank (__h, (length)); \
+ obstack_finish (__h); })
+
+# define obstack_copy(OBSTACK,where,length) \
+__extension__ \
+({ struct obstack *__h = (OBSTACK); \
+ obstack_grow (__h, (where), (length)); \
+ obstack_finish (__h); })
+
+# define obstack_copy0(OBSTACK,where,length) \
+__extension__ \
+({ struct obstack *__h = (OBSTACK); \
+ obstack_grow0 (__h, (where), (length)); \
+ obstack_finish (__h); })
+
+/* The local variable is named __o1 to avoid a name conflict
+ when obstack_blank is called. */
+# define obstack_finish(OBSTACK) \
+__extension__ \
+({ struct obstack *__o1 = (OBSTACK); \
+ void *value; \
+ value = (void *) __o1->object_base; \
+ if (__o1->next_free == value) \
+ __o1->maybe_empty_object = 1; \
+ __o1->next_free \
+ = __INT_TO_PTR ((__PTR_TO_INT (__o1->next_free)+__o1->alignment_mask)\
+ & ~ (__o1->alignment_mask)); \
+ if (__o1->next_free - (char *)__o1->chunk \
+ > __o1->chunk_limit - (char *)__o1->chunk) \
+ __o1->next_free = __o1->chunk_limit; \
+ __o1->object_base = __o1->next_free; \
+ value; })
+
+# define obstack_free(OBSTACK, OBJ) \
+__extension__ \
+({ struct obstack *__o = (OBSTACK); \
+ void *__obj = (void *) (OBJ); \
+ if (__obj > (void *)__o->chunk && __obj < (void *)__o->chunk_limit) \
+ __o->next_free = __o->object_base = (char *) __obj; \
+ else (obstack_free) (__o, __obj); })
+
+#else /* not __GNUC__ or not __STDC__ */
+
+# define obstack_object_size(h) \
+ (unsigned) ((h)->next_free - (h)->object_base)
+
+# define obstack_room(h) \
+ (unsigned) ((h)->chunk_limit - (h)->next_free)
+
+# define obstack_empty_p(h) \
+ ((h)->chunk->prev == 0 && (h)->next_free - (h)->chunk->contents == 0)
+
+/* Note that the call to _obstack_newchunk is enclosed in (..., 0)
+ so that we can avoid having void expressions
+ in the arms of the conditional expression.
+ Casting the third operand to void was tried before,
+ but some compilers won't accept it. */
+
+# define obstack_make_room(h,length) \
+( (h)->temp = (length), \
+ (((h)->next_free + (h)->temp > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), (h)->temp), 0) : 0))
+
+# define obstack_grow(h,where,length) \
+( (h)->temp = (length), \
+ (((h)->next_free + (h)->temp > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \
+ _obstack_memcpy ((h)->next_free, (where), (h)->temp), \
+ (h)->next_free += (h)->temp)
+
+# define obstack_grow0(h,where,length) \
+( (h)->temp = (length), \
+ (((h)->next_free + (h)->temp + 1 > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), (h)->temp + 1), 0) : 0), \
+ _obstack_memcpy ((h)->next_free, (where), (h)->temp), \
+ (h)->next_free += (h)->temp, \
+ *((h)->next_free)++ = 0)
+
+# define obstack_1grow(h,datum) \
+( (((h)->next_free + 1 > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), 1), 0) : 0), \
+ obstack_1grow_fast (h, datum))
+
+# define obstack_ptr_grow(h,datum) \
+( (((h)->next_free + sizeof (char *) > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), sizeof (char *)), 0) : 0), \
+ obstack_ptr_grow_fast (h, datum))
+
+# define obstack_int_grow(h,datum) \
+( (((h)->next_free + sizeof (int) > (h)->chunk_limit) \
+ ? (_obstack_newchunk ((h), sizeof (int)), 0) : 0), \
+ obstack_int_grow_fast (h, datum))
+
+# define obstack_ptr_grow_fast(h,aptr) \
+ (((const void **) ((h)->next_free += sizeof (void *)))[-1] = (aptr))
+
+# define obstack_int_grow_fast(h,aint) \
+ (((int *) ((h)->next_free += sizeof (int)))[-1] = (aptr))
+
+# define obstack_blank(h,length) \
+( (h)->temp = (length), \
+ (((h)->chunk_limit - (h)->next_free < (h)->temp) \
+ ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \
+ obstack_blank_fast (h, (h)->temp))
+
+# define obstack_alloc(h,length) \
+ (obstack_blank ((h), (length)), obstack_finish ((h)))
+
+# define obstack_copy(h,where,length) \
+ (obstack_grow ((h), (where), (length)), obstack_finish ((h)))
+
+# define obstack_copy0(h,where,length) \
+ (obstack_grow0 ((h), (where), (length)), obstack_finish ((h)))
+
+# define obstack_finish(h) \
+( ((h)->next_free == (h)->object_base \
+ ? (((h)->maybe_empty_object = 1), 0) \
+ : 0), \
+ (h)->temp = __PTR_TO_INT ((h)->object_base), \
+ (h)->next_free \
+ = __INT_TO_PTR ((__PTR_TO_INT ((h)->next_free)+(h)->alignment_mask) \
+ & ~ ((h)->alignment_mask)), \
+ (((h)->next_free - (char *) (h)->chunk \
+ > (h)->chunk_limit - (char *) (h)->chunk) \
+ ? ((h)->next_free = (h)->chunk_limit) : 0), \
+ (h)->object_base = (h)->next_free, \
+ __INT_TO_PTR ((h)->temp))
+
+# if defined __STDC__ && __STDC__
+# define obstack_free(h,obj) \
+( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \
+ (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\
+ ? (int) ((h)->next_free = (h)->object_base \
+ = (h)->temp + (char *) (h)->chunk) \
+ : (((obstack_free) ((h), (h)->temp + (char *) (h)->chunk), 0), 0)))
+# else
+# define obstack_free(h,obj) \
+( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \
+ (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\
+ ? (int) ((h)->next_free = (h)->object_base \
+ = (h)->temp + (char *) (h)->chunk) \
+ : (_obstack_free ((h), (h)->temp + (char *) (h)->chunk), 0)))
+# endif
+
+#endif /* not __GNUC__ or not __STDC__ */
+
+#ifdef __cplusplus
+} /* C++ */
+#endif
+
+#endif /* obstack.h */
diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog
new file mode 100644
index 000000000..6d75eee99
--- /dev/null
+++ b/include/opcode/ChangeLog
@@ -0,0 +1,109 @@
+2004-09-30 Paul Brook <paul@codesourcery.com>
+
+ * arm.h (ARM_EXT_V6K, ARM_EXT_V6Z): Define.
+ (ARM_ARCH_V6K, ARM_ARCH_V6Z, ARM_ARCH_V6ZK): Define.
+
+2004-09-11 Theodore A. Roth <troth@openavr.org>
+
+ * avr.h: Add support for
+ atmega48, atmega88, atmega168, attiny13, attiny2313, at90can128.
+
+2004-09-09 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * ppc.h (PPC_OPERAND_OPTIONAL): Fix comment.
+
+2004-08-24 Dmitry Diky <diwil@spec.ru>
+
+ * msp430.h (msp430_opc): Add new instructions.
+ (msp430_rcodes): Declare new instructions.
+ (msp430_hcodes): Likewise..
+
+2004-08-13 Nick Clifton <nickc@redhat.com>
+
+ PR/301
+ * h8300.h (O_JSR): Do not allow VECIND addressing for non-SX
+ processors.
+
+2004-08-30 Michal Ludvig <mludvig@suse.cz>
+
+ * i386.h (i386_optab): Added montmul/xsha1/xsha256 insns.
+
+2004-07-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ * i386.h (i386_optab): Allow cs/ds in 64bit for branch hints.
+
+2004-07-21 Jan Beulich <jbeulich@novell.com>
+
+ * i386.h: Adjust instruction descriptions to better match the
+ specification.
+
+2004-07-16 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h: Remove all old content. Replace with architecture defines
+ from gas/config/tc-arm.c.
+
+2004-07-09 Andreas Schwab <schwab@suse.de>
+
+ * m68k.h: Fix comment.
+
+2004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
+
+ * crx.h: New file.
+
+2004-06-24 Alan Modra <amodra@bigpond.net.au>
+
+ * i386.h (i386_optab): Remove fildd, fistpd and fisttpd.
+
+2004-05-24 Peter Barada <peter@the-baradas.com>
+
+ * m68k.h: Add 'size' to m68k_opcode.
+
+2004-05-05 Peter Barada <peter@the-baradas.com>
+
+ * m68k.h: Switch from ColdFire chip name to core variant.
+
+2004-04-22 Peter Barada <peter@the-baradas.com>
+
+ * m68k.h: Add mcfmac/mcfemac definitions. Update operand
+ descriptions for new EMAC cases.
+ Remove ColdFire macmw/macml/msacmw/msacmw hacks and properly
+ handle Motorola MAC syntax.
+ Allow disassembly of ColdFire V4e object files.
+
+2004-03-16 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (PPC_OPERAND_GPR_0): Define. Bump other operand defines.
+
+2004-03-12 Jakub Jelinek <jakub@redhat.com>
+
+ * i386.h (i386_optab): Remove CpuNo64 from sysenter and sysexit.
+
+2004-03-12 Michal Ludvig <mludvig@suse.cz>
+
+ * i386.h (i386_optab): Added xstore as an alias for xstorerng.
+
+2004-03-12 Michal Ludvig <mludvig@suse.cz>
+
+ * i386.h (i386_optab): Added xstore/xcrypt insns.
+
+2004-02-09 Anil Paranjpe <anilp1@KPITCummins.com>
+
+ * h8300.h (32bit ldc/stc): Add relaxing support.
+
+2004-01-12 Anil Paranjpe <anilp1@KPITCummins.com>
+
+ * h8300.h (BITOP): Pass MEMRELAX flag.
+
+2004-01-09 Anil Paranjpe <anilp1@KPITCummins.com>
+
+ * h8300.h (BITOP): Dissallow operations on @aa:16 and @aa:32
+ except for the H8S.
+
+For older changes see ChangeLog-9103
+
+Local Variables:
+mode: change-log
+left-margin: 8
+fill-column: 74
+version-control: never
+End:
diff --git a/include/opcode/ChangeLog-9103 b/include/opcode/ChangeLog-9103
new file mode 100644
index 000000000..0cdb1f3be
--- /dev/null
+++ b/include/opcode/ChangeLog-9103
@@ -0,0 +1,3102 @@
+2003-10-21 Peter Barada <pbarada@mail.wm.sps.mot.com>
+ Bernardo Innocenti <bernie@develer.com>
+
+ * m68k.h: Add MCFv4/MCF5528x support.
+
+2003-10-19 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h (JMP_INSN_BYTE): Define.
+
+2003-09-30 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Document +E, +F, +G, +H, and +I operand types.
+ Update documentation of I, +B and +C operand types.
+ (INSN_ISA64R2, ISA_MIPS64R2, CPU_MIPS64R2): New defines.
+ (M_DEXT, M_DINS): New enum values.
+
+2003-09-04 Nick Clifton <nickc@redhat.com>
+
+ * v850.h (PROCESSOR_V850E1): Define.
+
+2003-08-19 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (PPC_OPCODE_440): Define. Formatting. Use hex for other
+ PPC_OPCODE_* defines.
+
+2003-08-16 Jason Eckhardt <jle@rice.edu>
+
+ * i860.h (fmov.ds): Expand as famov.ds.
+ (fmov.sd): Expand as famov.sd.
+ (pfmov.ds): Expand as pfamov.ds.
+
+2003-08-07 Michael Meissner <gnu@the-meissners.org>
+
+ * cgen.h: Remove PARAM macro usage in all prototypes.
+ (CGEN_EXTRACT_INFO): Use void * instead of PTR.
+ (cgen_print_fn): Ditto.
+ (CGEN_HW_ENTRY): Ditto.
+ (CGEN_MAYBE_MULTI_IFLD): Ditto.
+ (struct cgen_insn): Ditto.
+ (CGEN_CPU_TABLE): Ditto.
+
+2003-08-07 Alan Modra <amodra@bigpond.net.au>
+
+ * alpha.h: Remove PARAMS macro.
+ * arc.h: Likewise.
+ * d10v.h: Likewise.
+ * d30v.h: Likewise.
+ * i370.h: Likewise.
+ * or32.h: Likewise.
+ * pj.h: Likewise.
+ * ppc.h: Likewise.
+ * sparc.h: Likewise.
+ * tic80.h: Likewise.
+ * v850.h: Likewise.
+
+2003-07-18 Michael Snyder <msnyder@redhat.com>
+
+ * include/opcode/h8sx.h (DO_MOVA1, DO_MOVA2): Reformatting.
+
+2003-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * mips.h (CPU_RM7000): New macro.
+ (OPCODE_IS_MEMBER): Match CPU_RM7000 against 4650 insns.
+
+2003-07-09 Alexandre Oliva <aoliva@redhat.com>
+
+ 2000-04-01 Alexandre Oliva <aoliva@cygnus.com>
+ * mn10300.h (AM33_2): Renamed from AM33.
+ 2000-03-31 Alexandre Oliva <aoliva@cygnus.com>
+ * mn10300.h (AM332, FMT_D3): Defined.
+ (MN10300_OPERAND_FSREG, MN10300_OPERAND_FDREG): Likewise.
+ (MN10300_OPERAND_FPCR): Likewise.
+
+2003-07-01 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h (s390_opcode_cpu_val): Add enum for cpu type z990.
+
+2003-06-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * h8300.h (IMM2_NS, IMM8_NS, IMM16_NS): Remove.
+ (IMM8U, IMM8U_NS): Define.
+ (h8_opcodes): Use IMM8U_NS for mov.[wl] #xx:8,@yy.
+
+2003-06-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * h8300.h (h8_opcodes): Fix the mov.l @(dd:32,ERs),ERd and
+ mov.l ERs,@(dd:32,ERd) entries.
+
+2003-06-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * i386.h (i386_optab): Support Intel Precott New Instructions.
+
+2003-06-10 Gary Hade <garyhade@us.ibm.com>
+
+ * ppc.h (PPC_OPERAND_DQ): Define.
+
+2003-06-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * h8300.h (IMM4_NS, IMM8_NS): New.
+ (h8_opcodes): Replace IMM4 with IMM4_NS in mov.b and mov.w entries.
+ Likewise IMM8 for mov.w and mov.l. Likewise IMM16U for mov.l.
+
+2003-06-03 Michael Snyder <msnyder@redhat.com>
+
+ * h8300.h (enum h8_model): Add AV_H8S to distinguish from H8H.
+ (ldc): Split ccr ops from exr ops (which are only available
+ on H8S or H8SX).
+ (stc): Ditto.
+ (andc, orc, xorc): Ditto.
+ (ldmac, stmac, clrmac, mac): Change access to AV_H8S.
+
+2003-06-03 Michael Snyder <msnyder@redhat.com>
+ and Bernd Schmidt <bernds@redhat.com>
+ and Alexandre Oliva <aoliva@redhat.com>
+ * h8300.h: Add support for h8300sx instruction set.
+
+2003-05-23 Jason Eckhardt <jle@rice.edu>
+
+ * i860.h (expand_type): Add XP_ONLY.
+ (scyc.b): New XP instruction.
+ (ldio.l): Likewise.
+ (ldio.s): Likewise.
+ (ldio.b): Likewise.
+ (ldint.l): Likewise.
+ (ldint.s): Likewise.
+ (ldint.b): Likewise.
+ (stio.l): Likewise.
+ (stio.s): Likewise.
+ (stio.b): Likewise.
+ (pfld.q): Likewise.
+
+2003-05-20 Jason Eckhardt <jle@rice.edu>
+
+ * i860.h (flush): Set lower 3 bits properly and use 'L'
+ for the immediate operand type instead of 'i'.
+
+2003-05-20 Jason Eckhardt <jle@rice.edu>
+
+ * i860.h (fzchks): Both S and R bits must be set.
+ (pfzchks): Likewise.
+ (faddp): Likewise.
+ (pfaddp): Likewise.
+ (fix.ss): Remove (invalid instruction).
+ (pfix.ss): Likewise.
+ (ftrunc.ss): Likewise.
+ (pftrunc.ss): Likewise.
+
+2003-05-18 Jason Eckhardt <jle@rice.edu>
+
+ * i860.h (form, pform): Add missing .dd suffix.
+
+2003-05-13 Stephane Carrez <stcarrez@nerim.fr>
+
+ * m68hc11.h (M68HC12_BANK_VIRT): Define to 0x010000
+
+2003-04-07 Michael Snyder <msnyder@redhat.com>
+
+ * h8300.h (ldc/stc): Fix up src/dst swaps.
+
+2003-04-09 J. Grant <jg-binutils@jguk.org>
+
+ * mips.h: Correct comment typo.
+
+2003-03-21 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h (s390_opcode_arch_val): Rename to s390_opcode_mode_val.
+ (S390_OPCODE_ESAME): Rename to S390_OPCODE_ZARCH.
+ (s390_opcode): Remove architecture. Add modes and min_cpu.
+
+2003-03-17 D.Venkatasubramanian <dvenkat@noida.hcltech.com>
+
+ * h8300.h (O_SYS_CMDLINE): New pseudo opcode for command line
+ processing.
+
+2003-02-21 Noida D.Venkatasubramanian <dvenkat@noida.hcltech.com>
+
+ * h8300.h (ldmac, stmac): Replace MACREG with MS32 and MD32.
+
+2003-01-23 Alan Modra <amodra@bigpond.net.au>
+
+ * m68hc11.h (cpu6812s): Define.
+
+2003-01-07 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Fix missing space in comment.
+ (INSN_ISA1, INSN_ISA2, INSN_ISA3, INSN_ISA4, INSN_ISA5)
+ (INSN_ISA32, INSN_ISA32R2, INSN_ISA64): Shift values right
+ by four bits.
+
+2003-01-02 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Update copyright years to include 2002 (which had
+ been missed previously) and 2003. Make comments about "+A",
+ "+B", and "+C" operand types more descriptive.
+
+2002-12-31 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Note that the "+D" operand type name is now used.
+
+2002-12-30 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Document "+" as the start of two-character operand
+ type names, and add new "K", "+A", "+B", and "+C" operand types.
+ (OP_MASK_INSMSB, OP_SH_INSMSB, OP_MASK_EXTMSB)
+ (OP_SH_EXTMSB, INSN_ISA32R2, ISA_MIPS32R2, CPU_MIPS32R2): New
+ defines.
+
+2002-12-24 Dmitry Diky <diwil@mail.ru>
+
+ * msp430.h: New file. Defines msp430 opcodes.
+
+2002-12-30 D.Venkatasubramanian <dvenkat@noida.hcltech.com>
+
+ * h8300.h: Added some more pseudo opcodes for system call
+ processing.
+
+2002-12-19 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (OP_OP_COP0, OP_OP_COP1, OP_OP_COP2, OP_OP_COP3)
+ (OP_OP_LWC1, OP_OP_LWC2, OP_OP_LWC3, OP_OP_LDC1, OP_OP_LDC2)
+ (OP_OP_LDC3, OP_OP_SWC1, OP_OP_SWC2, OP_OP_SWC3, OP_OP_SDC1)
+ (OP_OP_SDC2, OP_OP_SDC3): Define.
+
+2002-12-16 Alan Modra <amodra@bigpond.net.au>
+
+ * hppa.h (completer_chars): #if 0 out.
+
+ * ns32k.h (struct ns32k_opcode): Constify "name", "operands" and
+ "default_args".
+ (struct not_wot): Constify "args".
+ (struct not): Constify "name".
+ (numopcodes): Delete.
+ (endop): Delete.
+
+2002-12-13 Alan Modra <amodra@bigpond.net.au>
+
+ * pj.h (pj_opc_info_t): Add union.
+
+2002-12-04 David Mosberger <davidm@hpl.hp.com>
+
+ * ia64.h: Fix copyright message.
+ (IA64_OPND_AR_CSD): New operand kind.
+
+2002-12-03 Richard Henderson <rth@redhat.com>
+
+ * ia64.h (enum ia64_opnd): Add IA64_OPND_LDXMOV.
+
+2002-12-03 Alan Modra <amodra@bigpond.net.au>
+
+ * cgen.h (struct cgen_maybe_multi_ifield): Add "const PTR p" to union.
+ Constify "leaf" and "multi".
+
+2002-11-19 Klee Dienes <kdienes@apple.com>
+
+ * h8300.h (h8_opcode): Remove 'noperands', 'idx', and 'size'
+ fields.
+ (h8_opcodes). Modify initializer and initializer macros to no
+ longer initialize the removed fields.
+
+2002-11-19 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * tic4x.h (c4x_insts): Fixed LDHI constraint
+
+2002-11-18 Klee Dienes <kdienes@apple.com>
+
+ * h8300.h (h8_opcode): Remove 'length' field.
+ (h8_opcodes): Mark as 'const' (both the declaration and
+ definition). Modify initializer and initializer macros to no
+ longer initialize the length field.
+
+2002-11-18 Klee Dienes <kdienes@apple.com>
+
+ * arc.h (arc_ext_opcodes): Declare as extern.
+ (arc_ext_operands): Declare as extern.
+ * i860.h (i860_opcodes): Declare as const.
+
+2002-11-18 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * tic4x.h: File reordering. Added enhanced opcodes.
+
+2002-11-16 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * tic4x.h: Major rewrite of entire file. Define instruction
+ classes, and put each instruction into a class.
+
+2002-11-11 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * tic4x.h: Added new opcodes and corrected some bugs. Add support
+ for new DSP types.
+
+2002-10-14 Alan Modra <amodra@bigpond.net.au>
+
+ * cgen.h: Test __BFD_H_SEEN__ rather than BFD_VERSION_DATE.
+
+2002-09-30 Gavin Romig-Koch <gavin@redhat.com>
+ Ken Raeburn <raeburn@cygnus.com>
+ Aldy Hernandez <aldyh@redhat.com>
+ Eric Christopher <echristo@redhat.com>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * mips.h: Update comment for new opcodes.
+ (OP_MASK_VECBYTE, OP_SH_VECBYTE): New.
+ (OP_MASK_VECALIGN, OP_SH_VECALIGN): New.
+ (INSN_4111, INSN_4120, INSN_5400, INSN_5500): New.
+ (CPU_VR4120, CPU_VR5400, CPU_VR5500): New.
+ (OPCODE_IS_MEMBER): Handle the new CPU_* values and INSN_* flags.
+ Don't match CPU_R4111 with INSN_4100.
+
+2002-08-19 Elena Zannoni <ezannoni@redhat.com>
+
+ From matthew green <mrg@redhat.com>
+
+ * ppc.h (PPC_OPCODE_SPE): New opcode flag for Powerpc e500
+ instructions.
+ (PPC_OPCODE_ISEL, PPC_OPCODE_BRLOCK, PPC_OPCODE_PMR,
+ PPC_OPCODE_CACHELCK, PPC_OPCODE_RFMCI): New opcode flags for the
+ e500x2 Integer select, branch locking, performance monitor,
+ cache locking and machine check APUs, respectively.
+ (PPC_OPCODE_EFS): New opcode type for efs* instructions.
+ (PPC_OPCODE_CLASSIC): New opcode type for Classic PowerPC instructions.
+
+2002-08-13 Stephane Carrez <stcarrez@nerim.fr>
+
+ * m68hc11.h (M6812_OP_PAGE): Define to identify call operand.
+ (M68HC12_BANK_VIRT, M68HC12_BANK_MASK, M68HC12_BANK_BASE,
+ M68HC12_BANK_SHIFT, M68HC12_BANK_PAGE_MASK): Define for 68HC12
+ memory banks.
+ (M6811_OC1M5, M6811_OC1M4, M6811_MODF): Fix value.
+
+2002-07-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * mips.h (INSN_MIPS16): New define.
+
+2002-07-08 Alan Modra <amodra@bigpond.net.au>
+
+ * i386.h: Remove IgnoreSize from movsx and movzx.
+
+2002-06-08 Alan Modra <amodra@bigpond.net.au>
+
+ * a29k.h: Replace CONST with const.
+ (CONST): Don't define.
+ * convex.h: Replace CONST with const.
+ (CONST): Don't define.
+ * dlx.h: Replace CONST with const.
+ * or32.h (CONST): Don't define.
+
+2002-05-30 Chris G. Demetriou <cgd@broadcom.com>
+
+ * mips.h (OP_SH_ALN, OP_MASK_ALN, OP_SH_VSEL, OP_MASK_VSEL)
+ (MDMX_FMTSEL_IMM_QH, MDMX_FMTSEL_IMM_OB, MDMX_FMTSEL_VEC_QH)
+ (MDMX_FMTSEL_VEC_OB, INSN_READ_MDMX_ACC, INSN_WRITE_MDMX_ACC)
+ (INSN_MDMX): New constants, for MDMX support.
+ (opcode character list): Add "O", "Q", "X", "Y", and "Z" for MDMX.
+
+2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
+
+ * dlx.h: New file.
+
+2002-05-25 Alan Modra <amodra@bigpond.net.au>
+
+ * ia64.h: Use #include "" instead of <> for local header files.
+ * sparc.h: Likewise.
+
+2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * mips.h: Add M_DROL, M_DROL_I, M_DROR, M_DROR_I macro cases.
+
+2002-05-17 Andrey Volkov <avolkov@sources.redhat.com>
+
+ * h8300.h: Corrected defs of all control regs
+ and eepmov instr.
+
+2002-04-11 Alan Modra <amodra@bigpond.net.au>
+
+ * i386.h: Add intel mode cmpsd and movsd.
+ Put them before SSE2 insns, so that rep prefix works.
+
+2002-03-15 Chris G. Demetriou <cgd@broadcom.com>
+
+ * mips.h (INSN_MIPS3D): New definition used to mark MIPS-3D
+ instructions.
+ (OPCODE_IS_MEMBER): Adjust comments to indicate that ASE bit masks
+ may be passed along with the ISA bitmask.
+
+2002-03-05 Paul Koning <pkoning@equallogic.com>
+
+ * pdp11.h: Add format codes for float instruction formats.
+
+2002-02-25 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (PPC_OPCODE_POWER4, PPC_OPCODE_NOPOWER4): Define.
+
+Mon Feb 18 17:31:48 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (push,pop): Fix Reg64 to WordReg to allow 16bit operands.
+
+Mon Feb 11 12:53:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (push,pop): Allow 16bit operands in 64bit mode.
+ (xchg): Fix.
+ (in, out): Disable 64bit operands.
+ (call, jmp): Avoid REX prefixes.
+ (jcxz): Prohibit in 64bit mode
+ (jrcxz, loop): Add 64bit variants.
+ (movq): Fix patterns.
+ (movmskps, pextrw, pinstrw): Add 64bit variants.
+
+2002-01-31 Ivan Guzvinec <ivang@opencores.org>
+
+ * or32.h: New file.
+
+2002-01-22 Graydon Hoare <graydon@redhat.com>
+
+ * cgen.h (CGEN_MAYBE_MULTI_IFLD): New structure.
+ (CGEN_OPERAND): Add CGEN_MAYBE_MULTI_IFLD field.
+
+2002-01-21 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
+
+ * h8300.h: Comment typo fix.
+
+2002-01-03 matthew green <mrg@redhat.com>
+
+ * ppc.h (PPC_OPCODE_BOOKE): BookE is not Motorola specific.
+ (PPC_OPCODE_BOOKE64): Likewise.
+
+Mon Dec 31 16:45:41 2001 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (call, ret): Move to end of table.
+ (addb, addib): PA2.0 variants should have been PA2.0W.
+ (ldw, ldh, ldb, stw, sth, stb, stwa): Reorder to keep disassembler
+ happy.
+ (fldw, fldd, fstw, fstd, bb): Likewise.
+ (short loads/stores): Tweak format specifier slightly to keep
+ disassembler happy.
+ (indexed loads/stores): Likewise.
+ (absolute loads/stores): Likewise.
+
+2001-12-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * d10v.h (OPERAND_NOSP): New macro.
+
+2001-11-29 Alexandre Oliva <aoliva@redhat.com>
+
+ * d10v.h (OPERAND_SP): New macro.
+
+2001-11-15 Alan Modra <amodra@bigpond.net.au>
+
+ * ppc.h (struct powerpc_operand <insert, extract>): Add dialect param.
+
+2001-11-11 Timothy Wall <twall@alum.mit.edu>
+
+ * tic54x.h: Revise opcode layout; don't really need a separate
+ structure for parallel opcodes.
+
+2001-11-13 Zack Weinberg <zack@codesourcery.com>
+ Alan Modra <amodra@bigpond.net.au>
+
+ * i386.h (i386_optab): Add entries for "sldr", "smsw" and "str" to
+ accept WordReg.
+
+2001-11-04 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (OPCODE_IS_MEMBER): Remove extra space.
+
+2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * mmix.h: New file.
+
+2001-10-18 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (OPCODE_IS_MEMBER): Add a no-op term to the end
+ of the expression, to make source code merging easier.
+
+2001-10-17 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h: Sort coprocessor instruction argument characters
+ in comment, add a few more words of description for "H".
+
+2001-10-17 Chris Demetriou <cgd@broadcom.com>
+
+ * mips.h (INSN_SB1): New cpu-specific instruction bit.
+ (OPCODE_IS_MEMBER): Allow instructions matching INSN_SB1
+ if cpu is CPU_SB1.
+
+2001-10-17 matthew green <mrg@redhat.com>
+
+ * ppc.h (PPC_OPCODE_BOOKE64): Fix typo.
+
+2001-10-12 matthew green <mrg@redhat.com>
+
+ * ppc.h (PPC_OPCODE_BOOKE, PPC_OPCODE_BOOKE64, PPC_OPCODE_403): New
+ opcode flags for BookE 32-bit, BookE 64-bit and PowerPC 403
+ instructions, respectively.
+
+2001-09-27 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * v850.h: Remove spurious comment.
+
+2001-09-21 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * h8300.h: Fix compile time warning messages
+
+2001-09-04 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (struct alpha_operand): Pack elements into bitfields.
+
+2001-08-31 Eric Christopher <echristo@redhat.com>
+
+ * mips.h: Remove CPU_MIPS32_4K.
+
+2001-08-27 Torbjorn Granlund <tege@swox.com>
+
+ * ppc.h (PPC_OPERAND_DS): Define.
+
+2001-08-25 Andreas Jaeger <aj@suse.de>
+
+ * d30v.h: Fix declaration of reg_name_cnt.
+
+ * d10v.h: Fix declaration of d10v_reg_name_cnt.
+
+ * arc.h: Add prototypes from opcodes/arc-opc.c.
+
+2001-08-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * mips.h (INSN_10000): Define.
+ (OPCODE_IS_MEMBER): Check for INSN_10000.
+
+2001-08-10 Alan Modra <amodra@one.net.au>
+
+ * ppc.h: Revert 2001-08-08.
+
+2001-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * mips.h (INSN_GP32): Remove.
+ (OPCODE_IS_MEMBER): Remove gp32 parameter.
+ (M_MOVE): New macro identifier.
+
+2001-08-08 Alan Modra <amodra@one.net.au>
+
+ 1999-10-25 Torbjorn Granlund <tege@swox.com>
+ * ppc.h (struct powerpc_operand): New field `reloc'.
+
+2001-08-01 Aldy Hernandez <aldyh@redhat.com>
+
+ * mips.h (INSN_ISA_MASK): Nuke bits 12-15.
+
+2001-07-12 Jeff Johnston <jjohnstn@redhat.com>
+
+ * cgen.h (CGEN_INSN): Add regex support.
+ (build_insn_regex): Declare.
+
+2001-07-11 Frank Ch. Eigler <fche@redhat.com>
+
+ * cgen.h (CGEN_MACH): Add insn_chunk_bitsize field.
+ (cgen_cpu_desc): Ditto.
+
+2001-07-07 Ben Elliston <bje@redhat.com>
+
+ * m88k.h: Clean up and reformat. Remove unused code.
+
+2001-06-14 Geoffrey Keating <geoffk@redhat.com>
+
+ * cgen.h (cgen_keyword): Add nonalpha_chars field.
+
+2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * mips.h (CPU_R12000): Define.
+
+2001-05-23 John Healy <jhealy@redhat.com>
+
+ * cgen.h: Increased CGEN_MAX_SYNTAX_ELEMENTS to 48.
+
+2001-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * mips.h (INSN_ISA_MASK): Define.
+
+2001-05-12 Alan Modra <amodra@one.net.au>
+
+ * i386.h (i386_optab): Second operand of cvtps2dq is an xmm reg,
+ not an mmx reg. Swap xmm/mmx regs on both movdq2q and movq2dq,
+ and use InvMem as these insns must have register operands.
+
+2001-05-04 Alan Modra <amodra@one.net.au>
+
+ * i386.h (i386_optab): Move InvMem to first operand of pmovmskb
+ and pextrw to swap reg/rm assignments.
+
+2001-04-05 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h (enum cris_insn_version_usage): Correct comment for
+ cris_ver_v3p.
+
+2001-03-24 Alan Modra <alan@linuxcare.com.au>
+
+ * i386.h (i386_optab): Correct entry for "movntdq". Add "punpcklqdq".
+ Add InvMem to first operand of "maskmovdqu".
+
+2001-03-22 Hans-Peter Nilsson <hp@axis.com>
+
+ * cris.h (ADD_PC_INCR_OPCODE): New macro.
+
+2001-03-21 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.h: Fix formatting.
+
+2001-03-22 Alan Modra <alan@linuxcare.com.au>
+
+ * i386.h (i386_optab): Add paddq, psubq.
+
+2001-03-19 Alan Modra <alan@linuxcare.com.au>
+
+ * i386.h (REGNAM_AL, REGNAM_AX, REGNAM_EAX): Define.
+
+2001-02-28 Igor Shevlyakov <igor@windriver.com>
+
+ * m68k.h: new defines for Coldfire V4. Update mcf to know
+ about mcf5407.
+
+2001-02-18 lars brinkhoff <lars@nocrew.org>
+
+ * pdp11.h: New file.
+
+2001-02-12 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): SSE integer converison instructions have
+ 64bit versions on x86-64.
+
+2001-02-10 Nick Clifton <nickc@redhat.com>
+
+ * mips.h: Remove extraneous whitespace. Formating change to allow
+ for future contribution.
+
+2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * s390.h: New file.
+
+2001-02-02 Patrick Macdonald <patrickm@redhat.com>
+
+ * cgen.h (CGEN_SYNTAX_CHAR_TYPE): Typedef as unsigned short.
+ (CGEN_MAX_SYNTAX_ELEMENTS): Rename from CGEN_MAX_SYNTAX_BYTES.
+ (CGEN_SYNTAX): Define using CGEN_MAX_SYNTAX_ELEMENTS.
+
+2001-01-24 Karsten Keil <kkeil@suse.de>
+
+ * i386.h (i386_optab): Fix swapgs
+
+2001-01-14 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Describe new '<' and '>' operand types, and tidy
+ existing comments.
+ (pa_opcodes): Add entries for missing wide mode ldi,ldo,ldw,stw.
+ Remove duplicate "ldw j(s,b),x". Sort some entries.
+
+2001-01-13 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): Fix pusha and ret templates.
+
+2001-01-11 Peter Targett <peter.targett@arccores.com>
+
+ * arc.h (ARC_MACH_5, ARC_MACH_6, ARC_MACH_7, ARC_MACH_8): New
+ definitions for masking cpu type.
+ (arc_ext_operand_value) New structure for storing extended
+ operands.
+ (ARC_OPERAND_*) Flags for operand values.
+
+2001-01-10 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (pinsrw): Add.
+ (pshufw): Remove.
+ (cvttpd2dq): Fix operands.
+ (cvttps2dq): Likewise.
+ (movq2q): Rename to movdq2q.
+
+2001-01-10 Richard Schaal <richard.schaal@intel.com>
+
+ * i386.h: Correct movnti instruction.
+
+2001-01-09 Jeff Johnston <jjohnstn@redhat.com>
+
+ * cgen.h (CGEN_SYNTAX_CHAR_TYPE): New typedef based on max number
+ of operands (unsigned char or unsigned short).
+ (CGEN_SYNTAX): Changed to make array CGEN_SYNTAX_CHAR_TYPE.
+ (CGEN_SYNTAX_CHAR): Changed to cast to unsigned char.
+
+2001-01-05 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): Make [sml]fence template to use immext field.
+
+2001-01-03 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): Fix 64bit pushf template; Add instructions
+ introduced by Pentium4
+
+2000-12-30 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): Add "rex*" instructions;
+ add swapgs; disable jmp/call far direct instructions for
+ 64bit mode; add syscall and sysret; disable registers for 0xc6
+ template. Add 'q' suffixes to extendable instructions, disable
+ obsolete instructions, add new sign/zero extension ones.
+ (i386_regtab): Add extended registers.
+ (*Suf): Add No_qSuf.
+ (q_Suf, wlq_Suf, bwlq_Suf): New.
+
+2000-12-20 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (i386_optab): Replace "Imm" with "EncImm".
+ (i386_regtab): Add flags field.
+
+2000-12-12 Nick Clifton <nickc@redhat.com>
+
+ * mips.h: Fix formatting.
+
+2000-12-01 Chris Demetriou <cgd@sibyte.com>
+
+ mips.h (OP_MASK_SYSCALL, OP_SH_SYSCALL): Delete.
+ (OP_MASK_CODE20, OP_SH_CODE20): Define, with values of old
+ OP_*_SYSCALL definitions.
+ (OP_SH_CODE19, OP_MASK_CODE19): Define, for use as
+ 19 bit wait codes.
+ (MIPS operand specifier comments): Remove 'm', add 'U' and
+ 'J', and update the meaning of 'B' so that it's more general.
+
+ * mips.h (INSN_ISA1, INSN_ISA2, INSN_ISA3, INSN_ISA4,
+ INSN_ISA5): Renumber, redefine to mean the ISA at which the
+ instruction was added.
+ (INSN_ISA32): New constant.
+ (INSN_4650, INSN_4010, INSN_4100, INSN_3900, INSN_GP32):
+ Renumber to avoid new and/or renumbered INSN_* constants.
+ (INSN_MIPS32): Delete.
+ (ISA_UNKNOWN): New constant to indicate unknown ISA.
+ (ISA_MIPS1, ISA_MIPS2, ISA_MIPS3, ISA_MIPS4, ISA_MIPS5,
+ ISA_MIPS32): New constants, defined to be the mask of INSN_*
+ constants available at that ISA level.
+ (CPU_UNKNOWN): New constant to indicate unknown CPU.
+ (CPU_4K, CPU_MIPS32_4K): Rename the former to the latter,
+ define it with a unique value.
+ (OPCODE_IS_MEMBER): Update for new ISA membership-related
+ constant meanings.
+
+ * mips.h (INSN_ISA64, ISA_MIPS5, ISA_MIPS64): New
+ definitions.
+
+ * mips.h (CPU_SB1): New constant.
+
+2000-10-20 Jakub Jelinek <jakub@redhat.com>
+
+ * sparc.h (enum sparc_opcode_arch_val): Add SPARC_OPCODE_ARCH_V9B.
+ Note that '3' is used for siam operand.
+
+2000-09-22 Jim Wilson <wilson@cygnus.com>
+
+ * ia64.h (enum ia64_dependency_semantics): Add IA64_DVS_STOP.
+
+2000-09-13 Anders Norlander <anorland@acc.umu.se>
+
+ * mips.h: Use defines instead of hard-coded processor numbers.
+ (CPU_R2000, CPU_R3000, CPU_R3900, CPU_R4000, CPU_R4010,
+ CPU_VR4100, CPU_R4111, CPU_R4300, CPU_R4400, CPU_R4600, CPU_R4650,
+ CPU_R5000, CPU_R6000, CPU_R8000, CPU_R10000, CPU_MIPS32, CPU_4K,
+ CPU_4KC, CPU_4KM, CPU_4KP): Define..
+ (OPCODE_IS_MEMBER): Use new defines.
+ (OP_MASK_SEL, OP_SH_SEL): Define.
+ (OP_MASK_CODE20, OP_SH_CODE20): Define.
+ Add 'P' to used characters.
+ Use 'H' for coprocessor select field.
+ Use 'm' for 20 bit breakpoint code.
+ Document new arg characters and add to used characters.
+ (INSN_MIPS32): New define for MIPS32 extensions.
+ (OPCODE_IS_MEMBER): Recognize MIPS32 instructions.
+
+2000-09-05 Alan Modra <alan@linuxcare.com.au>
+
+ * hppa.h: Mention cz completer.
+
+2000-08-16 Jim Wilson <wilson@cygnus.com>
+
+ * ia64.h (IA64_OPCODE_POSTINC): New.
+
+2000-08-15 H.J. Lu <hjl@gnu.org>
+
+ * i386.h: Swap the Intel syntax "movsx"/"movzx" due to the
+ IgnoreSize change.
+
+2000-08-08 Jason Eckhardt <jle@cygnus.com>
+
+ * i860.h: Small formatting adjustments.
+
+2000-07-29 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * avr.h (AVR_UNDEF_P, AVR_SKIP_P, AVR_DISP0_P): New macros.
+ Move related opcodes closer to each other.
+ Minor changes in comments, list undefined opcodes.
+
+2000-07-26 Dave Brolley <brolley@redhat.com>
+
+ * cgen.h (cgen_hw_lookup_by_num): Second parameter is unsigned.
+
+2000-07-22 Jason Eckhardt <jle@cygnus.com>
+
+ * i860.h (btne, bte, bla): Changed these opcodes
+ to use sbroff ('r') instead of split16 ('s').
+ (J, K, L, M): New operand types for 16-bit aligned fields.
+ (ld.x, {p}fld.x, fst.x, pst.d): Changed these opcodes to
+ use I, J, K, L, M instead of just I.
+ (T, U): New operand types for split 16-bit aligned fields.
+ (st.x): Changed these opcodes to use S, T, U instead of just S.
+ (andh, andnoth, orh, xorh): Deleted 3-register forms as they do not
+ exist on the i860.
+ (pfgt.sd, pfle.sd): Deleted these as they do not exist on the i860.
+ (pfeq.ss, pfeq.dd): New opcodes.
+ (st.s): Fixed incorrect mask bits.
+ (fmlow): Fixed incorrect mask bits.
+ (fzchkl, pfzchkl): Fixed incorrect mask bits.
+ (faddz, pfaddz): Fixed incorrect mask bits.
+ (form, pform): Fixed incorrect mask bits.
+ (pfld.l): Fixed incorrect mask bits.
+ (fst.q): Fixed incorrect mask bits.
+ (all floating point opcodes): Fixed incorrect mask bits for
+ handling of dual bit.
+
+2000-07-20 Hans-Peter Nilsson <hp@axis.com>
+
+ cris.h: New file.
+
+2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * avr.h (AVR_ISA_WRAP): Remove, now assumed if not AVR_ISA_MEGA.
+ (AVR_ISA_ESPM): Remove, because ESPM removed in databook update.
+ (AVR_ISA_85xx): Remove, all uses changed back to AVR_ISA_2xxx.
+ (AVR_ISA_M83): Define for ATmega83, ATmega85.
+ (espm): Remove, because ESPM removed in databook update.
+ (eicall, eijmp): Move to the end of opcode table.
+
+2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * m68hc11.h: New file for support of Motorola 68hc11.
+
+Fri Jun 9 21:51:50 2000 Denis Chertykov <denisc@overta.ru>
+
+ * avr.h: clr,lsl,rol, ... moved after add,adc, ...
+
+Wed Jun 7 21:39:54 2000 Denis Chertykov <denisc@overta.ru>
+
+ * avr.h: New file with AVR opcodes.
+
+Wed Apr 12 17:11:20 2000 Donald Lindsay <dlindsay@hound.cygnus.com>
+
+ * d10v.h: added ALONE attribute for d10v_opcode.exec_type.
+
+2000-05-23 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * i386.h: Allow d suffix on iret, and add DefaultSize modifier.
+
+2000-05-17 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * i386.h: Use sl_FP, not sl_Suf for fild.
+
+2000-05-16 Frank Ch. Eigler <fche@redhat.com>
+
+ * cgen.h (CGEN_MAX_SYNTAX_BYTES): Increase to 32. Check that
+ it exceeds CGEN_ACTUAL_MAX_SYNTAX_BYTES, if set.
+ (CGEN_MAX_IFMT_OPERANDS): Increase to 16. Check that it exceeds
+ CGEN_ACTUAL_MAX_IFMT_OPERANDS, if set.
+
+2000-05-13 Alan Modra <alan@linuxcare.com.au>,
+
+ * i386.h (i386_optab): Cpu686 for sysenter,sysexit,fxsave,fxrestore.
+
+2000-05-13 Alan Modra <alan@linuxcare.com.au>,
+ Alexander Sokolov <robocop@netlink.ru>
+
+ * i386.h (i386_optab): Add cpu_flags for all instructions.
+
+2000-05-13 Alan Modra <alan@linuxcare.com.au>
+
+ From Gavin Romig-Koch <gavin@cygnus.com>
+ * i386.h (wld_Suf): Define. Use on pushf, popf, pusha, popa.
+
+2000-05-04 Timothy Wall <twall@cygnus.com>
+
+ * tic54x.h: New.
+
+2000-05-03 J.T. Conklin <jtc@redback.com>
+
+ * ppc.h (PPC_OPCODE_ALTIVEC): New opcode flag for vector unit.
+ (PPC_OPERAND_VR): New operand flag for vector registers.
+
+2000-05-01 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.h (EOP): Add missing initializer.
+
+Fri Apr 21 15:03:37 2000 Jason Eckhardt <jle@cygnus.com>
+
+ * hppa.h (pa_opcodes): New opcodes for PA2.0 wide mode
+ forms of ld/st{b,h,w,d} and fld/fst{w,d} (16-bit displacements).
+ New operand types l,y,&,fe,fE,fx added to support above forms.
+ (pa_opcodes): Replaced usage of 'x' as source/target for
+ floating point double-word loads/stores with 'fx'.
+
+Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
+ David Mosberger <davidm@hpl.hp.com>
+ Timothy Wall <twall@cygnus.com>
+ Jim Wilson <wilson@cygnus.com>
+
+ * ia64.h: New file.
+
+2000-03-27 Nick Clifton <nickc@cygnus.com>
+
+ * d30v.h (SHORT_A1): Fix value.
+ (SHORT_AR): Renumber so that it is at the end of the list of short
+ instructions, not the end of the list of long instructions.
+
+2000-03-26 Alan Modra <alan@linuxcare.com>
+
+ * i386.h: (UNIXWARE_COMPAT): Rename to SYSV386_COMPAT as the
+ problem isn't really specific to Unixware.
+ (OLDGCC_COMPAT): Define.
+ (i386_optab): If !OLDGCC_COMPAT, don't handle fsubp etc. with
+ destination %st(0).
+ Fix lots of comments.
+
+2000-03-02 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d30v.h:
+ (SHORT_B2r, SHORT_B3, SHORT_B3r, SHORT_B3b, SHORT_B3br): Updated.
+ (SHORT_D1r, SHORT_D2, SHORT_D2r, SHORT_D2Br, SHORT_U): Updated.
+ (SHORT_F, SHORT_AF, SHORT_T, SHORT_A5, SHORT_CMP, SHORT_CMPU): Updated.
+ (SHORT_A1, SHORT_AA, SHORT_RA, SHORT_MODINC, SHORT_MODDEC): Updated.
+ (SHORT_C1, SHORT_C2, SHORT_UF, SHORT_A2, SHORT_NONE, LONG): Updated.
+ (LONG_U, LONG_Ur, LONG_CMP, LONG_M, LONG_M2, LONG_2, LONG_2r): Updated.
+ (LONG_2b, LONG_2br, LONG_D, LONG_Dr, LONG_Dbr): Updated.
+
+2000-02-25 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (fild, fistp): Change intel d_Suf form to fildd and
+ fistpd without suffix.
+
+2000-02-24 Nick Clifton <nickc@cygnus.com>
+
+ * cgen.h (cgen_cpu_desc): Rename field 'flags' to
+ 'signed_overflow_ok_p'.
+ Delete prototypes for cgen_set_flags() and cgen_get_flags().
+
+2000-02-24 Andrew Haley <aph@cygnus.com>
+
+ * cgen.h (CGEN_INSN_MACH_HAS_P): New macro.
+ (CGEN_CPU_TABLE): flags: new field.
+ Add prototypes for new functions.
+
+2000-02-24 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Add some more UNIXWARE_COMPAT comments.
+
+2000-02-23 Linas Vepstas <linas@linas.org>
+
+ * i370.h: New file.
+
+2000-02-22 Chandra Chavva <cchavva@cygnus.com>
+
+ * d30v.h (FLAG_NOT_WITH_ADDSUBppp): Redefined as operation
+ cannot be combined in parallel with ADD/SUBppp.
+
+2000-02-22 Andrew Haley <aph@cygnus.com>
+
+ * mips.h: (OPCODE_IS_MEMBER): Add comment.
+
+1999-12-30 Andrew Haley <aph@cygnus.com>
+
+ * mips.h (OPCODE_IS_MEMBER): Add gp32 arg, which determines
+ whether synthetic opcodes (e.g. move) generate 32-bit or 64-bit
+ insns.
+
+2000-01-15 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Qualify intel mode far call and jmp with x_Suf.
+
+1999-12-27 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Add JumpAbsolute qualifier to all non-intel mode
+ indirect jumps and calls. Add FF/3 call for intel mode.
+
+Wed Dec 1 03:05:25 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h: Add new operand types. Add new instruction formats.
+
+Wed Nov 24 20:28:58 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Correctly handle immediate for PA2.0 "bb"
+ instruction.
+
+1999-11-18 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (INSN_ISA5): New.
+
+1999-11-01 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (OPCODE_IS_MEMBER): New.
+
+1999-10-29 Nick Clifton <nickc@cygnus.com>
+
+ * d30v.h (SHORT_AR): Define.
+
+1999-10-18 Michael Meissner <meissner@cygnus.com>
+
+ * alpha.h (alpha_num_opcodes): Convert to unsigned.
+ (alpha_num_operands): Ditto.
+
+Sun Oct 10 01:46:56 1999 Jerry Quinn <jerry.quinn.adv91@alum.dartmouth.org>
+
+ * hppa.h (pa_opcodes): Add load and store cache control to
+ instructions. Add ordered access load and store.
+
+ * hppa.h (pa_opcode): Add new entries for addb and addib.
+
+ * hppa.h (pa_opcodes): Fix cmpb and cmpib entries.
+
+ * hppa.h (pa_opcodes): Add entries for cmpb and cmpib.
+
+Thu Oct 7 00:12:25 MDT 1999 Diego Novillo <dnovillo@cygnus.com>
+
+ * d10v.h: Add flag RESTRICTED_NUM3 for imm3 operands.
+
+Thu Sep 23 07:08:38 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * hppa.h (pa_opcodes): Add "call" and "ret". Clean up "b", "bve"
+ and "be" using completer prefixes.
+
+ * hppa.h (pa_opcodes): Add initializers to silence compiler.
+
+ * hppa.h: Update comments about character usage.
+
+Mon Sep 20 03:55:31 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Fix minor thinkos introduced while cleaning
+ up the new fstw & bve instructions.
+
+Sun Sep 19 10:40:59 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Add remaining PA2.0 integer load/store
+ instructions.
+
+ * hppa.h (pa_opcodes): Add remaining PA2.0 FP load/store instructions.
+
+ * hppa.h (pa_opcodes): Add long offset double word load/store
+ instructions.
+
+ * hppa.h (pa_opcodes): Add FLAG_STRICT variants of FP loads and
+ stores.
+
+ * hppa.h (pa_opcodes): Handle PA2.0 fcnv, fcmp and ftest insns.
+
+ * hppa.h (pa_opcodes): Finish support for PA2.0 "b" instructions.
+
+ * hppa.h (pa_opcodes): Handle PA2.0 "bve" instructions.
+
+ * hppa.h (pa_opcodes): Add new syntax "be" instructions.
+
+ * hppa.h (pa_opcodes): Note use of 'M' and 'L'.
+
+ * hppa.h (pa_opcodes): Add support for "b,l".
+
+ * hppa.h (pa_opcodes): Add support for "b,gate".
+
+Sat Sep 18 11:41:16 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Use 'fX' for first register operand
+ in xmpyu.
+
+ * hppa.h (pa_opcodes): Fix mask for probe and probei.
+
+ * hppa.h (pa_opcodes): Fix mask for depwi.
+
+Tue Sep 7 13:44:25 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Add "addil" variant which has the %r1 as
+ an explicit output argument.
+
+Mon Sep 6 04:41:42 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h: Add strict variants of PA1.0/PA1.1 loads and stores.
+ Add a few PA2.0 loads and store variants.
+
+1999-09-04 Steve Chamberlain <sac@pobox.com>
+
+ * pj.h: New file.
+
+1999-08-29 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_regtab): Move %st to top of table, and split off
+ other fp reg entries.
+ (i386_float_regtab): To here.
+
+Sat Aug 28 00:25:25 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * hppa.h (pa_opcodes): Replace 'f' by 'v'. Prefix float register args
+ by 'f'.
+
+ * hppa.h (pa_opcodes): Add extrd, extrw, depd, depdi, depw, depwi.
+ Add supporting args.
+
+ * hppa.h: Document new completers and args.
+ * hppa.h (pa_opcodes): Add 64 bit patterns and pa2.0 syntax for uxor,
+ uaddcm, dcor, addi, add, sub, subi, shladd, rfi, and probe. Add pa2.0
+ extensions for ssm, rsm, pdtlb, pitlb. Add performance instructions
+ pmenb and pmdis.
+
+ * hppa.h (pa_opcodes): Add pa2.0 instructions hadd, hshl,
+ hshr, hsub, mixh, mixw, permh.
+
+ * hppa.h (pa_opcodes): Change completers in instructions to
+ use 'c' prefix.
+
+ * hppa.h (pa_opcodes): Add popbts, new forms of bb, havg,
+ hshladd, hshradd, shrpd, and shrpw instructions. Update arg comments.
+
+ * hppa.h (pa_opcodes): Change fmpyfadd, fmpynfadd, fneg,
+ fnegabs to use 'I' instead of 'F'.
+
+1999-08-21 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Add AMD athlon instructions, pfnacc, pfpnacc, pswapd.
+ Document pf2iw and pi2fw as athlon insns. Remove pswapw.
+ Alphabetically sort PIII insns.
+
+Wed Aug 18 18:14:40 1999 Doug Evans <devans@canuck.cygnus.com>
+
+ * cgen.h (CGEN_INSN_MACH_HAS_P): New macro.
+
+Fri Aug 6 09:46:35 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * hppa.h (pa_opcodes): Add 64 bit versions of or, xor, and,
+ and andcm. Add 32 and 64 bit version of cmpclr, cmpiclr.
+
+ * hppa.h: Document 64 bit condition completers.
+
+Thu Aug 5 16:56:07 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * hppa.h (pa_opcodes): Change condition args to use '?' prefix.
+
+1999-08-04 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_optab): Add DefaultSize modifier to all insns
+ that implicitly modify %esp. #undef d_Suf, x_suf, sld_suf,
+ sldx_suf, bwld_Suf, d_FP, x_FP, sld_FP, sldx_FP at end of table.
+
+Wed Jul 28 02:04:24 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+ Jeff Law <law@cygnus.com>
+
+ * hppa.h (pa_opcodes): Add "pushnom" and "pushbts".
+
+ * hppa.h (pa_opcodes): Mark all PA2.0 opcodes with FLAG_STRICT.
+
+ * hppa.h (pa_opcodes): Change xmpyu, fmpyfadd,
+ and fmpynfadd to use 'J' and 'K' instead of 'E' and 'X'.
+
+1999-07-13 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Add "undocumented" AMD 3DNow! pf2iw, pi2fw, pswapw insns.
+
+Thu Jul 1 00:17:24 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (struct pa_opcode): Add new field "flags".
+ (FLAGS_STRICT): Define.
+
+Fri Jun 25 04:22:04 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+ Jeff Law <law@cygnus.com>
+
+ * hppa.h (pa_opcodes): Add pa2.0 clrbts instruction.
+
+ * hppa.h (pa_opcodes): Add entries for mfia and mtsarcm instructions.
+
+1999-06-23 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Allow `l' suffix on bswap. Allow `w' suffix on arpl,
+ lldt, lmsw, ltr, str, verr, verw. Add FP flag to fcmov*. Add FP
+ flag to fcomi and friends.
+
+Fri May 28 15:26:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Move integer arithmetic instructions after
+ integer logical instructions.
+
+1999-05-28 Linus Nordberg <linus.nordberg@canit.se>
+
+ * m68k.h: Document new formats `E', `G', `H' and new places `N',
+ `n', `o'.
+
+ * m68k.h: Define mcf5206e, mcf5307, mcf. Document new format `u'
+ and new places `m', `M', `h'.
+
+Thu May 27 04:13:54 1999 Joel Sherrill (joel@OARcorp.com
+
+ * hppa.h (pa_opcodes): Add several processor specific system
+ instructions.
+
+Wed May 26 16:57:44 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pa_opcodes): Add second entry for "comb", "comib",
+ "addb", and "addib" to be used by the disassembler.
+
+1999-05-12 Alan Modra <alan@apri.levels.unisa.edu.au>
+
+ * i386.h (ReverseModrm): Remove all occurences.
+ (InvMem): Add to control/debug/test mov insns, movhlps, movlhps,
+ movmskps, pextrw, pmovmskb, maskmovq.
+ Change NoSuf to FP on all MMX, XMM and AMD insns as these all
+ ignore the data size prefix.
+
+ * i386.h (i386_optab, i386_regtab): Add support for PIII SIMD.
+ Mostly stolen from Doug Ledford <dledford@redhat.com>
+
+Sat May 8 23:27:35 1999 Richard Henderson <rth@cygnus.com>
+
+ * ppc.h (PPC_OPCODE_64_BRIDGE): New.
+
+1999-04-14 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (CGEN_ATTR): Delete member num_nonbools.
+ (CGEN_ATTR_TYPE): Update.
+ (CGEN_ATTR_MASK): Number booleans starting at 0.
+ (CGEN_ATTR_VALUE): Update.
+ (CGEN_INSN_ATTR): Update.
+
+Mon Apr 12 23:43:27 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (fmpyfadd, fmpynfadd, fneg, fnegabs): New PA2.0
+ instructions.
+
+Tue Mar 23 11:24:38 1999 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (bb, bvb): Tweak opcode/mask.
+
+
+1999-03-22 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (CGEN_ISA,CGEN_MACH): New typedefs.
+ (struct cgen_cpu_desc): Rename member mach to machs. New member isas.
+ New members word_bitsize,default_insn_bitsize,base_insn-bitsize,
+ min_insn_bitsize,max_insn_bitsize,isa_table,mach_table,rebuild_tables.
+ Delete member max_insn_size.
+ (enum cgen_cpu_open_arg): New enum.
+ (cpu_open): Update prototype.
+ (cpu_open_1): Declare.
+ (cgen_set_cpu): Delete.
+
+1999-03-11 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (CGEN_HW_TABLE): Delete `num_init_entries' member.
+ (CGEN_OPERAND_NIL): New macro.
+ (CGEN_OPERAND): New member `type'.
+ (@arch@_cgen_operand_table): Delete decl.
+ (CGEN_OPERAND_INDEX,CGEN_OPERAND_TYPE,CGEN_OPERAND_ENTRY): Delete.
+ (CGEN_OPERAND_TABLE): New struct.
+ (cgen_operand_lookup_by_name,cgen_operand_lookup_by_num): Declare.
+ (CGEN_OPINST): Pointer to operand table entry replaced with enum.
+ (CGEN_CPU_TABLE): New member `isa'. Change member `operand_table',
+ now a CGEN_OPERAND_TABLE. Add CGEN_CPU_DESC arg to
+ {get,set}_{int,vma}_operand.
+ (@arch@_cgen_cpu_open): New arg `isa'.
+ (cgen_set_cpu): Ditto.
+
+Fri Feb 26 02:36:45 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.h: Fill in cmov and fcmov alternates. Add fcomi short forms.
+
+1999-02-25 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (enum cgen_asm_type): Add CGEN_ASM_NONE.
+ (CGEN_HW_ENTRY): Delete member `next'. Change type of `type' to
+ enum cgen_hw_type.
+ (CGEN_HW_TABLE): New struct.
+ (hw_table): Delete declaration.
+ (CGEN_OPERAND): Change member hw to hw_type, change type from pointer
+ to table entry to enum.
+ (CGEN_OPINST): Ditto.
+ (CGEN_CPU_TABLE): Change member hw_list to hw_table.
+
+Sat Feb 13 14:13:44 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (AXP_OPCODE_EV6): New.
+ (AXP_OPCODE_NOPAL): Include it.
+
+1999-02-09 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (CGEN_CPU_DESC): Renamed from CGEN_OPCODE_DESC.
+ All uses updated. New members int_insn_p, max_insn_size,
+ parse_operand,insert_operand,extract_operand,print_operand,
+ sizeof_fields,set_fields_bitsize,get_int_operand,set_int_operand,
+ get_vma_operand,set_vma_operand,parse_handlers,insert_handlers,
+ extract_handlers,print_handlers.
+ (CGEN_ATTR): Change type of num_nonbools to unsigned int.
+ (CGEN_ATTR_BOOL_OFFSET): New macro.
+ (CGEN_ATTR_MASK): Subtract it to compute bit number.
+ (CGEN_ATTR_VALUE): Redo bool/nonbool attr calculation.
+ (cgen_opcode_handler): Renamed from cgen_base.
+ (CGEN_HW_ATTR_VALUE): Renamed from CGEN_HW_ATTR, all uses updated.
+ (CGEN_OPERAND_ATTR_VALUE): Renamed from CGEN_OPERAND_ATTR,
+ all uses updated.
+ (CGEN_OPERAND_INDEX): Rewrite to use table entry, not global.
+ (enum cgen_opinst_type): Renamed from cgen_operand_instance_type.
+ (CGEN_IFLD_ATTR_VALUE): Renamed from CGEN_IFLD_ATTR, all uses updated.
+ (CGEN_OPCODE,CGEN_IBASE): New types.
+ (CGEN_INSN): Rewrite.
+ (CGEN_{ASM,DIS}_HASH*): Delete.
+ (init_opcode_table,init_ibld_table): Declare.
+ (CGEN_INSN_ATTR): New type.
+
+Mon Feb 1 21:09:14 1999 Catherine Moore <clm@cygnus.com>
+
+ * i386.h (d_Suf, x_Suf, sld_Suf, sldx_Suf, bwld_Suf): Define.
+ (x_FP, d_FP, dls_FP, sldx_FP): Define.
+ Change *Suf definitions to include x and d suffixes.
+ (movsx): Use w_Suf and b_Suf.
+ (movzx): Likewise.
+ (movs): Use bwld_Suf.
+ (fld): Change ordering. Use sld_FP.
+ (fild): Add Intel Syntax equivalent of fildq.
+ (fst): Use sld_FP.
+ (fist): Use sld_FP.
+ (fstp): Use sld_FP. Add x_FP version.
+ (fistp): LLongMem version for Intel Syntax.
+ (fcom, fcomp): Use sld_FP.
+ (fadd, fiadd, fsub): Use sld_FP.
+ (fsubr): Use sld_FP.
+ (fmul, fimul, fdvi, fidiv, fdivr): Use sld_FP.
+
+1999-01-27 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (enum cgen_mode): Add CGEN_MODE_TARGET_MAX, CGEN_MODE_INT,
+ CGEN_MODE_UINT.
+
+1999-01-16 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (bv): Fix mask.
+
+1999-01-05 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (CGEN_ATTR_VALUE_TYPE): New typedef.
+ (CGEN_ATTR): Use it.
+ (CGEN_ATTR_TYPE,CGEN_ATTR_ENTRY): Ditto.
+ (CGEN_ATTR_TABLE): New member dfault.
+
+1998-12-30 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (MIPS16_INSN_BRANCH): New.
+
+Wed Dec 9 10:38:48 1998 David Taylor <taylor@texas.cygnus.com>
+
+ The following is part of a change made by Edith Epstein
+ <eepstein@sophia.cygnus.com> as part of a project to merge in
+ changes by HP; HP did not create ChangeLog entries.
+
+ * hppa.h (completer_chars): list of chars to not put a space
+ after.
+
+Sun Dec 6 13:21:34 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h (i386_optab): Permit w suffix on processor control and
+ status word instructions.
+
+1998-11-30 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (struct cgen_hw_entry): Delete const on attrs member.
+ (struct cgen_keyword_entry): Ditto.
+ (struct cgen_operand): Ditto.
+ (CGEN_IFLD): New typedef, with associated access macros.
+ (CGEN_IFMT): New typedef, with associated access macros.
+ (CGEN_IFMT): Renamed from CGEN_FORMAT. New member `iflds'.
+ (CGEN_IVALUE): New typedef.
+ (struct cgen_insn): Delete const on syntax,attrs members.
+ `format' now points to format data. Type of `value' is now
+ CGEN_IVALUE.
+ (struct cgen_opcode_table): New member ifld_table.
+
+1998-11-18 Doug Evans <devans@casey.cygnus.com>
+
+ * cgen.h (cgen_extract_fn): Update type of `base_insn' arg.
+ (CGEN_OPERAND_INSTANCE): New member `attrs'.
+ (CGEN_OPERAND_INSTANCE_{ATTRS,ATTR}): New macros.
+ (cgen_dis_lookup_insn): Update type of `base_insn' arg.
+ (cgen_opcode_table): Update type of dis_hash fn.
+ (extract_operand): Update type of `insn_value' arg.
+
+Thu Oct 29 11:38:36 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * cgen.h (CGEN_VERSION_{MAJOR,MINOR,FIXLEVEL}): Delete.
+
+Tue Oct 27 08:57:59 1998 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * mips.h (INSN_MULT): Added.
+
+Tue Oct 20 11:31:34 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (MAX_MNEM_SIZE): Rename from MAX_OPCODE_SIZE.
+
+Mon Oct 19 12:50:00 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_INSN_INT): New typedef.
+ (CGEN_INT_INSN_P): Renamed from CGEN_INT_INSN.
+ (CGEN_INSN_BYTES): Renamed from cgen_insn_t.
+ (CGEN_INSN_BYTES_PTR): New typedef.
+ (CGEN_EXTRACT_INFO): New typedef.
+ (cgen_insert_fn,cgen_extract_fn): Update.
+ (cgen_opcode_table): New member `insn_endian'.
+ (assemble_insn,lookup_insn,lookup_get_insn_operands): Update.
+ (insert_operand,extract_operand): Update.
+ (cgen_get_insn_value,cgen_put_insn_value): Add prototypes.
+
+Fri Oct 9 13:38:13 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_ATTR_BOOLS): New macro.
+ (struct CGEN_HW_ENTRY): New member `attrs'.
+ (CGEN_HW_ATTR): New macro.
+ (struct CGEN_OPERAND_INSTANCE): New member `name'.
+ (CGEN_INSN_INVALID_P): New macro.
+
+Mon Oct 5 00:21:07 1998 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h: Add "fid".
+
+Sun Oct 4 21:00:00 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ From Robert Andrew Dale <rob@nb.net>
+ * i386.h (i386_optab): Add AMD 3DNow! instructions.
+ (AMD_3DNOW_OPCODE): Define.
+
+Tue Sep 22 17:53:47 1998 Nick Clifton <nickc@cygnus.com>
+
+ * d30v.h (EITHER_BUT_PREFER_MU): Define.
+
+Mon Aug 10 14:09:38 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * cgen.h (cgen_insn): #if 0 out element `cdx'.
+
+Mon Aug 3 12:21:57 1998 Doug Evans <devans@seba.cygnus.com>
+
+ Move all global state data into opcode table struct, and treat
+ opcode table as something that is "opened/closed".
+ * cgen.h (CGEN_OPCODE_DESC): New type.
+ (all fns): New first arg of opcode table descriptor.
+ (cgen_set_parse_operand_fn): Add prototype.
+ (cgen_current_machine,cgen_current_endian): Delete.
+ (CGEN_OPCODE_TABLE): New members mach,endian,operand_table,
+ parse_operand_fn,asm_hash_table,asm_hash_table_entries,
+ dis_hash_table,dis_hash_table_entries.
+ (opcode_open,opcode_close): Add prototypes.
+
+ * cgen.h (cgen_insn): New element `cdx'.
+
+Thu Jul 30 21:44:25 1998 Frank Ch. Eigler <fche@cygnus.com>
+
+ * d30v.h (FLAG_LKR): New flag for "left-kills-right" instructions.
+
+Tue Jul 28 10:59:07 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h: Add "no_match_operands" field for instructions.
+ (MN10300_MAX_OPERANDS): Define.
+
+Fri Jul 24 11:44:24 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * cgen.h (cgen_macro_insn_count): Declare.
+
+Tue Jul 21 13:12:13 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_VERSION_{MAJOR,MINOR,FIXLEVEL}): Define.
+ (cgen_insert_fn,cgen_extract_fn): New arg `pc'.
+ (get_operand,put_operand): Replaced with get_{int,vma}_operand,
+ set_{int,vma}_operand.
+
+Fri Jun 26 11:09:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h: Add "machine" field for instructions.
+ (MN103, AM30): Define machine types.
+
+Fri Jun 19 16:09:09 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Use FP, not sl_Suf, for fxsave and fxrstor.
+
+1998-06-18 Ulrich Drepper <drepper@cygnus.com>
+
+ * i386.h: Add support for fxsave, fxrstor, sysenter and sysexit.
+
+Sat Jun 13 11:31:35 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_optab): Add general form of aad and aam. Add ud2a
+ and ud2b.
+ (i386_regtab): Allow cr0..7, db0..7, dr0..7, tr0..7, not just
+ those that happen to be implemented on pentiums.
+
+Tue Jun 9 12:16:01 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Change occurences of Data16 to Size16, Data32 to Size32,
+ IgnoreDataSize to IgnoreSize. Flag address and data size prefixes
+ with Size16|IgnoreSize or Size32|IgnoreSize.
+
+Mon Jun 8 12:15:52 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (REPNE): Rename to REPNE_PREFIX_OPCODE.
+ (REPE): Rename to REPE_PREFIX_OPCODE.
+ (i386_regtab_end): Remove.
+ (i386_prefixtab, i386_prefixtab_end): Remove.
+ (i386_optab): Use NULL as sentinel rather than "" to suit rewrite
+ of md_begin.
+ (MAX_OPCODE_SIZE): Define.
+ (i386_optab_end): Remove.
+ (sl_Suf): Define.
+ (sl_FP): Use sl_Suf.
+
+ * i386.h (i386_optab): Allow 16 bit displacement for `mov
+ mem,acc'. Combine 16 and 32 bit forms of various insns. Allow 16
+ bit form of ljmp. Add IsPrefix modifier to prefixes. Add addr32,
+ data32, dword, and adword prefixes.
+ (i386_regtab): Add BaseIndex modifier to valid 16 bit base/index
+ regs.
+
+Fri Jun 5 23:42:43 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_regtab): Remove BaseIndex modifier from esp.
+
+ * i386.h: Allow `l' suffix on fld, fst, fstp, fcom, fcomp with
+ register operands, because this is a common idiom. Flag them with
+ a warning. Allow illegal faddp, fsubp, fsubrp, fmulp, fdivp,
+ fdivrp because gcc erroneously generates them. Also flag with a
+ warning.
+
+ * i386.h: Add suffix modifiers to most insns, and tighter operand
+ checks in some cases. Fix a number of UnixWare compatibility
+ issues with float insns. Merge some floating point opcodes, using
+ new FloatMF modifier.
+ (WORD_PREFIX_OPCODE): Rename to DATA_PREFIX_OPCODE for
+ consistency.
+
+ * i386.h: Change occurence of ShortformW to W|ShortForm. Add
+ IgnoreDataSize where appropriate.
+
+Wed Jun 3 18:28:45 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: (one_byte_segment_defaults): Remove.
+ (two_byte_segment_defaults): Remove.
+ (i386_regtab): Add BaseIndex to 32 bit regs reg_type.
+
+Fri May 15 15:59:04 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (cgen_hw_lookup_by_name): Renamed from cgen_hw_lookup.
+ (cgen_hw_lookup_by_num): Declare.
+
+Thu May 7 09:27:58 1998 Frank Ch. Eigler <fche@cygnus.com>
+
+ * mips.h (OP_{SH,MASK}_CODE2): Added "q" operand format for lower
+ ten bits of MIPS ISA1 "break" instruction, and for "sdbbp"
+
+Thu May 7 02:14:08 1998 Doug Evans <devans@charmed.cygnus.com>
+
+ * cgen.h (cgen_asm_init_parse): Delete.
+ (cgen_save_fixups,cgen_restore_fixups,cgen_swap_fixups): Delete.
+ (cgen_asm_record_register,cgen_asm_finish_insn): Delete.
+
+Mon Apr 27 10:13:11 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_ATTR_TYPE): Delete `const', moved to uses.
+ (cgen_asm_finish_insn): Update prototype.
+ (cgen_insn): New members num, data.
+ (CGEN_INSN_TABLE): Members asm_hash, asm_hash_table_size,
+ dis_hash, dis_hash_table_size moved to ...
+ (CGEN_OPCODE_TABLE). Here. Renamed from CGEN_OPCODE_DATA.
+ All uses updated. New members asm_hash_p, dis_hash_p.
+ (CGEN_MINSN_EXPANSION): New struct.
+ (cgen_expand_macro_insn): Declare.
+ (cgen_macro_insn_count): Declare.
+ (get_insn_operands): Update prototype.
+ (lookup_get_insn_operands): Declare.
+
+Tue Apr 21 17:11:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_optab): Change iclrKludge and imulKludge to
+ regKludge. Add operands types for string instructions.
+
+Mon Apr 20 14:40:29 1998 Tom Tromey <tromey@cygnus.com>
+
+ * i386.h (X): Renamed from `Z_' to preserve formatting of opcode
+ table.
+
+Sun Apr 19 13:54:06 1998 Tom Tromey <tromey@cygnus.com>
+
+ * i386.h (Z_): Renamed from `_' to avoid clash with common alias
+ for `gettext'.
+
+Fri Apr 3 12:04:48 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h: Remove NoModrm flag from all insns: it's never checked.
+ Add IsString flag to string instructions.
+ (IS_STRING): Don't define.
+ (LOCK_PREFIX_OPCODE, CS_PREFIX_OPCODE, DS_PREFIX_OPCODE): Define.
+ (ES_PREFIX_OPCODE, FS_PREFIX_OPCODE, GS_PREFIX_OPCODE): Define.
+ (SS_PREFIX_OPCODE): Define.
+
+Mon Mar 30 21:31:56 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Revert March 24 patch; no more LinearAddress.
+
+Mon Mar 30 10:25:54 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_optab): Remove fwait (9b) from all floating point
+ instructions, and instead add FWait opcode modifier. Add short
+ form of fldenv and fstenv.
+ (FWAIT_OPCODE): Define.
+
+ * i386.h (i386_optab): Change second operand constraint of `mov
+ sreg,reg|mem' instruction from Reg16|Mem to WordReg|WordMem to
+ allow legal instructions such as `movl %gs,%esi'
+
+Fri Mar 27 18:30:52 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * h8300.h: Various changes to fully bracket initializers.
+
+Tue Mar 24 18:32:47 1998 H.J. Lu <hjl@gnu.org>
+
+ * i386.h: Set LinearAddress for lidt and lgdt.
+
+Mon Mar 2 10:44:07 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_BOOL_ATTR): New macro.
+
+Thu Feb 26 15:54:31 1998 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.h (FLAG_DELAY): New flag for delayed branches/jumps.
+
+Mon Feb 23 10:38:21 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_CAT3): Delete. Use CONCAT3 now.
+ (cgen_insn): Record syntax and format entries here, rather than
+ separately.
+
+Tue Feb 17 21:42:56 1998 Nick Clifton <nickc@cygnus.com>
+
+ * cgen.h (CGEN_SYNTAX_MAKE_FIELD): New macro.
+
+Tue Feb 17 16:00:56 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (cgen_insert_fn): Change type of result to const char *.
+ (cgen_parse_{signed,unsigned}_integer): Delete min,max arguments.
+ (CGEN_{INSN,KEYWORD,OPERAND}_NBOOL_ATTRS): Renamed from ..._MAX_ATTRS.
+
+Thu Feb 12 18:30:41 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * cgen.h (lookup_insn): New argument alias_p.
+
+Thu Feb 12 03:41:00 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+Fix rac to accept only a0:
+ * d10v.h (OPERAND_ACC): Split into:
+ (OPERAND_ACC0, OPERAND_ACC1) .
+ (OPERAND_GPR): Define.
+
+Wed Feb 11 17:31:53 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_FIELDS): Define here.
+ (CGEN_HW_ENTRY): New member `type'.
+ (hw_list): Delete decl.
+ (enum cgen_mode): Declare.
+ (CGEN_OPERAND): New member `hw'.
+ (enum cgen_operand_instance_type): Declare.
+ (CGEN_OPERAND_INSTANCE): New type.
+ (CGEN_INSN): New member `operands'.
+ (CGEN_OPCODE_DATA): Make hw_list const.
+ (get_insn_operands,lookup_insn): Add prototypes for.
+
+Tue Feb 3 17:11:23 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (CGEN_INSN_MAX_ATTRS): Renamed from CGEN_MAX_INSN_ATTRS.
+ (CGEN_HW_ENTRY): Move `next' entry to end of struct.
+ (CGEN_KEYWORD_MAX_ATTRS): Renamed from CGEN_MAX_KEYWORD_ATTRS.
+ (CGEN_OPERAND_MAX_ATTRS): Renamed from CGEN_MAX_OPERAND_ATTRS.
+
+Mon Feb 2 19:19:15 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * cgen.h: Correct typo in comment end marker.
+
+Mon Feb 2 17:10:38 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
+
+ * tic30.h: New file.
+
+Thu Jan 22 17:54:56 1998 Nick Clifton <nickc@cygnus.com>
+
+ * cgen.h: Add prototypes for cgen_save_fixups(),
+ cgen_restore_fixups(), and cgen_swap_fixups(). Change prototype
+ of cgen_asm_finish_insn() to return a char *.
+
+Wed Jan 14 17:21:43 1998 Nick Clifton <nickc@cygnus.com>
+
+ * cgen.h: Formatting changes to improve readability.
+
+Mon Jan 12 11:37:36 1998 Doug Evans <devans@seba.cygnus.com>
+
+ * cgen.h (*): Clean up pass over `struct foo' usage.
+ (CGEN_ATTR): Make unsigned char.
+ (CGEN_ATTR_TYPE): Update.
+ (CGEN_ATTR_{ENTRY,TABLE}): New types.
+ (cgen_base): Move member `attrs' to cgen_insn.
+ (CGEN_KEYWORD): New member `null_entry'.
+ (CGEN_{SYNTAX,FORMAT}): New types.
+ (cgen_insn): Format and syntax separated from each other.
+
+Tue Dec 16 15:15:52 1997 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.h (d30v_opcode): Reorder flags somewhat, add new flags for
+ 2 word load/store, ADDppp/SUBppp, 16/32 bit multiply. Make
+ flags_{used,set} long.
+ (d30v_operand): Make flags field long.
+
+Mon Dec 1 12:24:44 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * m68k.h: Fix comment describing operand types.
+
+Sun Nov 23 22:31:27 1997 Michael Meissner <meissner@cygnus.com>
+
+ * d30v.h (SHORT_CMPU): Add case for cmpu instruction, and move
+ everything else after down.
+
+Tue Nov 18 18:45:14 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * d10v.h (OPERAND_FLAG): Split into:
+ (OPERAND_FFLAG, OPERAND_CFLAG) .
+
+Thu Nov 13 11:04:24 1997 Gavin Koch <gavin@cygnus.com>
+
+ * mips.h (struct mips_opcode): Changed comments to reflect new
+ field usage.
+
+Fri Oct 24 22:36:20 1997 Ken Raeburn <raeburn@cygnus.com>
+
+ * mips.h: Added to comments a quick-ref list of all assigned
+ operand type characters.
+ (OP_{MASK,SH}_PERFREG): New macros.
+
+Wed Oct 22 17:28:33 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h: Add '_' and '/' for v9a asr's.
+ Patch from David Miller <davem@vger.rutgers.edu>
+
+Tue Oct 14 13:22:29 1997 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h: Bit ops with absolute addresses not in the 8 bit
+ area are not available in the base model (H8/300).
+
+Thu Sep 25 13:03:41 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * m68k.h: Remove documentation of ` operand specifier.
+
+Wed Sep 24 19:00:34 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * m68k.h: Document q and v operand specifiers.
+
+Mon Sep 15 18:28:37 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (struct v850_opcode): Add processors field.
+ (PROCESSOR_V850, PROCESSOR_ALL): New bit constants.
+ (PROCESSOR_V850E, PROCESSOR_NOT_V850): New bit constants.
+ (PROCESSOR_V850EA): New bit constants.
+
+Mon Sep 15 11:29:43 1997 Ken Raeburn <raeburn@cygnus.com>
+
+ Merge changes from Martin Hunt:
+
+ * d30v.h: Allow up to 64 control registers. Add
+ SHORT_A5S format.
+
+ * d30v.h (LONG_Db): New form for delayed branches.
+
+ * d30v.h: (LONG_Db): New form for repeati.
+
+ * d30v.h (SHORT_D2B): New form.
+
+ * d30v.h (SHORT_A2): New form.
+
+ * d30v.h (OPERAND_2REG): Add new operand to indicate 2
+ registers are used. Needed for VLIW optimization.
+
+Mon Sep 8 14:05:45 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * cgen.h: Move assembler interface section
+ up so cgen_parse_operand_result is defined for cgen_parse_address.
+ (cgen_parse_address): Update prototype.
+
+Tue Sep 2 15:32:32 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (V850_OPREAND_ADJUST_SHORT_MEMORY): Removed.
+
+Tue Aug 26 12:21:52 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h (two_byte_segment_defaults): Correct base register 5 in
+ modes 1 and 2 to be ss rather than ds. From Gabriel Paubert
+ <paubert@iram.es>.
+
+ * i386.h: Set ud2 to 0x0f0b. From Gabriel Paubert
+ <paubert@iram.es>.
+
+ * i386.h: Comment fixes for ficom[p]?{s,l} from Gabriel Paubert
+ <paubert@iram.es>.
+
+ * i386.h (JUMP_ON_CX_ZERO): Uncomment (define again).
+ (JUMP_ON_ECX_ZERO): Remove commented out macro.
+
+Fri Aug 22 10:38:29 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (V850_NOT_R0): New flag.
+
+Mon Aug 18 11:05:58 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (struct v850_opcode): Remove flags field.
+
+Wed Aug 13 18:45:48 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (struct v850_opcode): Add flags field.
+ (struct v850_operand): Extend meaning of 'bits' and 'shift'
+ fields.
+ (V850E_INSTRUCTION, V850EA_INSTRUCTION): New flags.
+ (V850E_PUSH_POP, V850E_IMMEDIATE16, V850E_IMMEDIATE32): New flags.
+
+Fri Aug 8 16:58:42 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * arc.h: New file.
+
+Thu Jul 24 21:16:58 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (sparc_opcodes): Declare as const.
+
+Thu Jul 10 12:53:25 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mips.h (FP_S, FP_D): Define. Bitmasks indicating if an insn
+ uses single or double precision floating point resources.
+ (INSN_NO_ISA, INSN_ISA1): Define.
+ (cpu specific INSN macros): Tweak into bitmasks outside the range
+ of INSN_ISA field.
+
+Mon Jun 16 14:10:00 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
+
+ * i386.h: Fix pand opcode.
+
+Mon Jun 2 11:35:09 1997 Gavin Koch <gavin@cygnus.com>
+
+ * mips.h: Widen INSN_ISA and move it to a more convenient
+ bit position. Add INSN_3900.
+
+Tue May 20 11:25:29 1997 Gavin Koch <gavin@cygnus.com>
+
+ * mips.h (struct mips_opcode): added new field membership.
+
+Mon May 12 16:26:50 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
+
+ * i386.h (movd): only Reg32 is allowed.
+
+ * i386.h: add fcomp and ud2. From Wayne Scott
+ <wscott@ichips.intel.com>.
+
+Mon May 5 17:16:21 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Add MMX instructions.
+
+Mon May 5 12:45:19 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
+
+ * i386.h: Remove W modifier from conditional move instructions.
+
+Mon Apr 14 14:56:58 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Change the opcodes for fsubp, fsubrp, fdivp, and fdivrp
+ with no arguments to match that generated by the UnixWare
+ assembler.
+
+Thu Apr 10 14:35:00 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * cgen.h (<cpu>_cgen_assemble_insn): New arg for errmsg.
+ (cgen_parse_operand_fn): Declare.
+ (cgen_init_parse_operand): Declare.
+ (cgen_parse_operand): Renamed from cgen_asm_parse_operand,
+ new argument `want'.
+ (enum cgen_parse_operand_result): Renamed from cgen_asm_result.
+ (enum cgen_parse_operand_type): New enum.
+
+Sat Apr 5 13:14:05 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Revert last patch for the NON_BROKEN_OPCODES cases.
+
+Fri Apr 4 11:46:11 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * cgen.h: New file.
+
+Fri Apr 4 14:02:32 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Correct opcode values for fsubp, fsubrp, fdivp, and
+ fdivrp.
+
+Tue Mar 25 22:57:26 1997 Stu Grossman (grossman@critters.cygnus.com)
+
+ * v850.h (extract): Make unsigned.
+
+Mon Mar 24 14:38:15 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Add iclr.
+
+Thu Mar 20 19:49:10 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Change DW to W for cmpxchg and xadd, since they don't
+ take a direction bit.
+
+Sat Mar 15 19:03:29 1997 H.J. Lu <hjl@lucon.org>
+
+ * sparc.h (sparc_opcode_lookup_arch): Use full prototype.
+
+Fri Mar 14 15:22:01 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * sparc.h: Include <ansidecl.h>. Update function declarations to
+ use prototypes, and to use const when appropriate.
+
+Thu Mar 6 14:18:30 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_RELAX): Define.
+
+Mon Feb 24 15:15:56 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h: Change pre_defined_registers to
+ d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
+
+Sat Feb 22 21:25:00 1997 Dawn Perchik <dawn@cygnus.com>
+
+ * mips.h: Add macros for cop0, cop1 cop2 and cop3.
+ Change mips_opcodes from const array to a pointer,
+ and change bfd_mips_num_opcodes from const int to int,
+ so that we can increase the size of the mips opcodes table
+ dynamically.
+
+Fri Feb 21 16:34:18 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d30v.h (FLAG_X): Remove unused flag.
+
+Tue Feb 18 17:37:20 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d30v.h: New file.
+
+Fri Feb 14 13:16:15 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (PDS_NAME): Macro to access name field of predefined symbols.
+ (PDS_VALUE): Macro to access value field of predefined symbols.
+ (tic80_next_predefined_symbol): Add prototype.
+
+Mon Feb 10 10:32:17 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (tic80_symbol_to_value): Change prototype to match
+ change in function, added class parameter.
+
+Thu Feb 6 17:30:15 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_ENDMASK): Add for flagging TIc80
+ endmask fields, which are somewhat weird in that 0 and 32 are
+ treated exactly the same.
+
+Thu Jan 30 13:46:18 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h: Change all the OPERAND defines to use the form (1 << X)
+ rather than a constant that is 2**X. Reorder them to put bits for
+ operands that have symbolic names in the upper bits, so they can
+ be packed into an int where the lower bits contain the value that
+ corresponds to that symbolic name.
+ (predefined_symbo): Add struct.
+ (tic80_predefined_symbols): Declare array of translations.
+ (tic80_num_predefined_symbols): Declare size of that array.
+ (tic80_value_to_symbol): Declare function.
+ (tic80_symbol_to_value): Declare function.
+
+Wed Jan 29 09:37:25 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.h (MN10200_OPERAND_RELAX): Define.
+
+Sat Jan 18 15:18:59 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_NO_R0_DEST): Add for opcodes where r0 cannot
+ be the destination register.
+
+Thu Jan 16 20:48:55 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (struct tic80_opcode): Change "format" field to "flags".
+ (FMT_UNUSED, FMT_SI, FMT_LI, FMT_REG): Delete.
+ (TIC80_VECTOR): Define a flag bit for the flags. This one means
+ that the opcode can have two vector instructions in a single
+ 32 bit word and we have to encode/decode both.
+
+Tue Jan 14 19:37:09 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_PCREL): Renamed from
+ TIC80_OPERAND_RELATIVE for PC relative.
+ (TIC80_OPERAND_BASEREL): New flag bit for register
+ base relative.
+
+Mon Jan 13 15:56:38 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_FLOAT): Add for floating point operands.
+
+Mon Jan 6 10:51:15 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_SCALED): Operand may have optional
+ ":s" modifier for scaling.
+
+Sun Jan 5 12:12:19 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_M_SI): Add operand modifier for ":m".
+ (TIC80_OPERAND_M_LI): Ditto
+
+Sat Jan 4 19:02:44 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (TIC80_OPERAND_BITNUM): Renamed from TIC80_OPERAND_CC_SZ.
+ (TIC80_OPERAND_CC): New define for condition code operand.
+ (TIC80_OPERAND_CR): New define for control register operand.
+
+Fri Jan 3 16:22:23 1997 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h (struct tic80_opcode): Name changed.
+ (struct tic80_opcode): Remove format field.
+ (struct tic80_operand): Add insertion and extraction functions.
+ (TIC80_OPERAND_*): Remove old bogus values, start adding new
+ correct ones.
+ (FMT_*): Ditto.
+
+Tue Dec 31 15:05:41 1996 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * v850.h (V850_OPERAND_ADJUST_SHORT_MEMORY): New flag to adjust
+ type IV instruction offsets.
+
+Fri Dec 27 22:23:10 1996 Fred Fish <fnf@cygnus.com>
+
+ * tic80.h: New file.
+
+Wed Dec 18 10:06:31 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.h (MN10200_OPERAND_NOCHECK): Define.
+
+Sat Dec 14 10:48:31 1996 Fred Fish <fnf@ninemoons.com>
+
+ * mn10200.h: Fix comment, mn10200_operand not powerpc_operand.
+ * mn10300.h: Fix comment, mn10300_operand not powerpc_operand.
+ * v850.h: Fix comment, v850_operand not powerpc_operand.
+
+Mon Dec 9 16:45:39 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.h: Flesh out structures and definitions needed by
+ the mn10200 assembler & disassembler.
+
+Tue Nov 26 10:46:56 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h: Add mips16 definitions.
+
+Mon Nov 25 17:56:54 1996 J.T. Conklin <jtc@cygnus.com>
+
+ * m68k.h: Document new <, >, m, n, o and p operand specifiers.
+
+Wed Nov 20 10:59:41 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_PCREL): Define.
+ (MN10300_OPERAND_MEMADDR): Define.
+
+Tue Nov 19 13:30:40 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_REG_LIST): Define.
+
+Wed Nov 6 13:41:08 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_SPLIT): Define.
+
+Tue Nov 5 13:26:12 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_EXTENDED): Define.
+
+Mon Nov 4 12:52:48 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_REPEATED): Define.
+
+Fri Nov 1 10:31:02 1996 Richard Henderson <rth@tamu.edu>
+
+ * alpha.h: Don't include "bfd.h"; private relocation types are now
+ negative to minimize problems with shared libraries. Organize
+ instruction subsets by AMASK extensions and PALcode
+ implementation.
+ (struct alpha_operand): Move flags slot for better packing.
+
+Tue Oct 29 12:19:10 1996 Jeffrey A Law (law@cygnus.com)
+
+ * v850.h (V850_OPERAND_RELAX): New operand flag.
+
+Thu Oct 10 14:29:11 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (FMT_*): Move operand format definitions
+ here.
+
+Tue Oct 8 14:48:07 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (MN10300_OPERAND_PAREN): Define.
+
+Mon Oct 7 16:52:11 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (mn10300_opcode): Add "format" field.
+ (MN10300_OPERAND_*): Define.
+
+Thu Oct 3 10:33:46 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10x00.h: Delete.
+ * mn10200.h, mn10300.h: New files.
+
+Wed Oct 2 21:31:26 1996 Jeffrey A Law (law@cygnus.com)
+
+ * mn10x00.h: New file.
+
+Fri Sep 27 18:26:46 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * v850.h: Add new flag to indicate this instruction uses a PC
+ displacement.
+
+Fri Sep 13 14:58:13 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (stmac): Add missing instruction.
+
+Sat Aug 31 16:02:03 1996 Jeffrey A Law (law@cygnus.com)
+
+ * v850.h (v850_opcode): Remove "size" field. Add "memop"
+ field.
+
+Fri Aug 23 10:39:08 1996 Jeffrey A Law (law@cygnus.com)
+
+ * v850.h (V850_OPERAND_EP): Define.
+
+ * v850.h (v850_opcode): Add size field.
+
+Thu Aug 22 16:51:25 1996 J.T. Conklin <jtc@rtl.cygnus.com>
+
+ * v850.h (v850_operands): Add insert and extract fields, pointers
+ to functions used to handle unusual operand encoding.
+ (V850_OPERAND_REG, V850_OPERAND_SRG, V850_OPERAND_CC,
+ V850_OPERAND_SIGNED): Defined.
+
+Wed Aug 21 17:45:10 1996 J.T. Conklin <jtc@rtl.cygnus.com>
+
+ * v850.h (v850_operands): Add flags field.
+ (OPERAND_REG, OPERAND_NUM): Defined.
+
+Tue Aug 20 14:52:02 1996 J.T. Conklin <jtc@rtl.cygnus.com>
+
+ * v850.h: New file.
+
+Fri Aug 16 14:44:15 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * mips.h (OP_SH_LOCC, OP_SH_HICC, OP_MASK_CC, OP_SH_COP1NORM,
+ OP_MASK_COP1NORM, OP_SH_COP1SPEC, OP_MASK_COP1SPEC,
+ OP_MASK_COP1SCLR, OP_MASK_COP1CMP, OP_SH_COP1CMP, OP_SH_FORMAT,
+ OP_MASK_FORMAT, OP_SH_TRUE, OP_MASK_TRUE, OP_SH_GE, OP_MASK_GE,
+ OP_SH_UNSIGNED, OP_MASK_UNSIGNED, OP_SH_HINT, OP_MASK_HINT):
+ Defined.
+
+Fri Aug 16 00:15:15 1996 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h (pitlb, pitlbe, iitlba, iitlbp, fic, fice): Accept
+ a 3 bit space id instead of a 2 bit space id.
+
+Thu Aug 15 13:11:46 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h: Add some additional defines to support the
+ assembler in determining which operations can be done in parallel.
+
+Tue Aug 6 11:13:22 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (SN): Define.
+ (eepmov.b): Renamed from "eepmov"
+ (nop, bpt, rte, rts, sleep, clrmac): These have no size associated
+ with them.
+
+Fri Jul 26 11:47:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h (OPERAND_SHIFT): New operand flag.
+
+Thu Jul 25 12:06:22 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h: Changes for divs, parallel-only instructions, and
+ signed numbers.
+
+Mon Jul 22 11:21:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h (pd_reg): Define. Putting the definition here allows
+ the assembler and disassembler to share the same struct.
+
+Mon Jul 22 12:15:25 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * i960.h (i960_opcodes): "halt" takes an argument. From Stephen
+ Williams <steve@icarus.com>.
+
+Wed Jul 17 14:46:38 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
+
+ * d10v.h: New file.
+
+Thu Jul 11 12:09:15 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (band, bclr): Force high bit of immediate nibble to zero.
+
+Wed Jul 3 14:30:12 1996 J.T. Conklin <jtc@rtl.cygnus.com>
+
+ * m68k.h (mcf5200): New macro.
+ Document names of coldfire control registers.
+
+Tue Jul 2 23:05:45 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (SRC_IN_DST): Define.
+
+ * h8300.h (UNOP3): Mark the register operand in this insn
+ as a source operand, not a destination operand.
+ (SHIFT_2, SHIFT_IMM): Remove. Eliminate all references.
+ (UNOP3): Change SHIFT_IMM to IMM for H8/S bitops. Mark
+ register operand with SRC_IN_DST.
+
+Fri Jun 21 13:52:17 1996 Richard Henderson <rth@tamu.edu>
+
+ * alpha.h: New file.
+
+Thu Jun 20 15:02:57 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * rs6k.h: Remove obsolete file.
+
+Wed Jun 19 15:29:38 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Correct opcode values for faddp, fsubp, fsubrp, fmulp,
+ fdivp, and fdivrp. Add ffreep.
+
+Tue Jun 18 16:06:00 1996 Jeffrey A. Law <law@rtl.cygnus.com>
+
+ * h8300.h: Reorder various #defines for readability.
+ (ABS32SRC, ABS32DST, DSP32LIST, ABS32LIST, A32LIST): Define.
+ (BITOP): Accept additional (unused) argument. All callers changed.
+ (EBITOP): Likewise.
+ (O_LAST): Bump.
+ (ldc, stc, movb, movw, movl): Use 32bit offsets and absolutes.
+
+ * h8300.h (EXR, SHIFT_2, MACREG, SHIFT_IMM, RDINC): Define.
+ (O_TAS, O_CLRMAC, O_LDMAC, O_MAC, O_LDM, O_STM): Define.
+ (BITOP, EBITOP): Handle new H8/S addressing modes for
+ bit insns.
+ (UNOP3): Handle new shift/rotate insns on the H8/S.
+ (insns using exr): New instructions.
+ (tas, mac, ldmac, clrmac, ldm, stm): New instructions.
+
+Thu May 23 16:56:48 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (add.l): Undo Apr 5th change. The manual I had
+ was incorrect.
+
+Mon May 6 23:38:22 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (START): Remove.
+ (MEMRELAX): Define. Mark absolute memory operands in mov.b, mov.w
+ and mov.l insns that can be relaxed.
+
+Tue Apr 30 18:30:58 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386.h: Remove Abs32 from lcall.
+
+Mon Apr 22 17:09:23 1996 Doug Evans <dje@blues.cygnus.com>
+
+ * sparc.h (SPARC_OPCODE_ARCH_V9_P): New macro.
+ (SLCPOP): New macro.
+ Mark X,Y opcode letters as in use.
+
+Thu Apr 11 17:28:18 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * sparc.h (F_FLOAT, F_FBR): Define.
+
+Fri Apr 5 16:55:34 1996 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (ABS8MEM): Renamed from ABSMOV. Remove ABSMOV
+ from all insns.
+ (ABS8SRC,ABS8DST): Add ABS8MEM.
+ (add.l): Fix reg+reg variant.
+ (eepmov.w): Renamed from eepmovw.
+ (ldc,stc): Fix many cases.
+
+Sun Mar 31 13:30:03 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (SPARC_OPCODE_ARCH_MASK): New macro.
+
+Thu Mar 7 15:08:23 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (O): Mark operand letter as in use.
+
+Tue Feb 20 20:46:21 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (sparc_{encode,decode}_sparclet_cpreg): Declare.
+ Mark operand letters uU as in use.
+
+Mon Feb 19 01:59:08 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (sparc_opcode_arch_val): Add SPARC_OPCODE_ARCH_SPARCLET.
+ (sparc_opcode_arch): Delete member `conflicts'. Add `supported'.
+ (SPARC_OPCODE_SUPPORTED): New macro.
+ (SPARC_OPCODE_CONFLICT_P): Rewrite.
+ (F_NOTV9): Delete.
+
+Fri Feb 16 12:23:34 1996 Jeffrey A Law (law@cygnus.com)
+
+ * sparc.h (sparc_opcode_lookup_arch) Make return type in
+ declaration consistent with return type in definition.
+
+Wed Feb 14 18:14:11 1996 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * i386.h (i386_optab): Remove Data32 from pushf and popf.
+
+Thu Feb 8 14:27:21 1996 James Carlson <carlson@xylogics.com>
+
+ * i386.h (i386_regtab): Add 80486 test registers.
+
+Mon Feb 5 18:35:46 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * i960.h (I_HX): Define.
+ (i960_opcodes): Add HX instruction.
+
+Mon Jan 29 12:43:39 1996 Ken Raeburn <raeburn@cygnus.com>
+
+ * i386.h: Fix waiting forms of finit, fstenv, fsave, fstsw, fstcw,
+ and fclex.
+
+Wed Jan 24 22:36:59 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (enum sparc_opcode_arch_val): Replaces sparc_architecture.
+ (SPARC_OPCODE_CONFLICT_P): Renamed from ARCHITECTURES_CONFLICT_P.
+ (bfd_* defines): Delete.
+ (sparc_opcode_archs): Replaces architecture_pname.
+ (sparc_opcode_lookup_arch): Declare.
+ (NUMOPCODES): Delete.
+
+Mon Jan 22 08:24:32 1996 Doug Evans <dje@charmed.cygnus.com>
+
+ * sparc.h (enum sparc_architecture): Add v9a.
+ (ARCHITECTURES_CONFLICT_P): Update.
+
+Thu Dec 28 13:27:53 1995 John Hassey <hassey@rtp.dg.com>
+
+ * i386.h: Added Pentium Pro instructions.
+
+Thu Nov 2 22:59:22 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * m68k.h: Document new 'W' operand place.
+
+Tue Oct 24 10:49:10 1995 Jeffrey A Law (law@cygnus.com)
+
+ * hppa.h: Add lci and syncdma instructions.
+
+Mon Oct 23 11:09:16 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
+
+ * mips.h: Added INSN_4100 flag to mark NEC VR4100 specific
+ instructions.
+
+Mon Oct 16 10:28:15 1995 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * ppc.h (PPC_OPCODE_{COMMON,ANY}): New opcode flags for
+ assembler's -mcom and -many switches.
+
+Wed Oct 11 16:56:33 1995 Ken Raeburn <raeburn@cygnus.com>
+
+ * i386.h: Fix cmpxchg8b extension opcode description.
+
+Thu Oct 5 18:03:36 1995 Ken Raeburn <raeburn@cygnus.com>
+
+ * i386.h: Add Pentium instructions wrmsr, rdtsc, rdmsr, cmpxchg8b,
+ and register cr4.
+
+Tue Sep 19 15:26:43 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * m68k.h: Change comment: split type P into types 0, 1 and 2.
+
+Wed Aug 30 13:50:55 1995 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (sparc_{encode,decode}_prefetch): Declare.
+
+Tue Aug 29 15:34:58 1995 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (sparc_{encode,decode}_{asi,membar}): Declare.
+
+Wed Aug 2 18:32:19 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * m68kmri.h: Remove.
+
+ * m68k.h: Move tables into opcodes/m68k-opc.c, leaving just the
+ declarations. Remove F_ALIAS and flag field of struct
+ m68k_opcode. Change arch field of struct m68k_opcode to unsigned
+ int. Make name and args fields of struct m68k_opcode const.
+
+Wed Aug 2 08:16:46 1995 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc.h (F_NOTV9): Define.
+
+Tue Jul 11 14:20:42 1995 Jeff Spiegel <jeffs@lsil.com>
+
+ * mips.h (INSN_4010): Define.
+
+Wed Jun 21 18:49:51 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * m68k.h (TBL1): Reverse sense of "round" argument in result.
+
+ Changes from Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>:
+ * m68k.h: Fix argument descriptions of coprocessor
+ instructions to allow only alterable operands where appropriate.
+ [!NO_DEFAULT_SIZES]: An omitted size defaults to `w'.
+ (m68k_opcode_aliases): Add more aliases.
+
+Fri Apr 14 22:15:34 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * m68k.h: Added explcitly short-sized conditional branches, and a
+ bunch of aliases (fmov*, ftest*, tdivul) to support gcc's
+ svr4-based configurations.
+
+Mon Mar 13 21:30:01 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ Mon Feb 27 08:36:39 1995 Bryan Ford <baford@cs.utah.edu>
+ * i386.h: added missing Data16/Data32 flags to a few instructions.
+
+Wed Mar 8 15:19:53 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (OP_MASK_FR, OP_SH_FR): Define.
+ (OP_MASK_BCC, OP_SH_BCC): Define.
+ (OP_MASK_PREFX, OP_SH_PREFX): Define.
+ (OP_MASK_CCC, OP_SH_CCC): Define.
+ (INSN_READ_FPR_R): Define.
+ (INSN_RFE): Delete.
+
+Wed Mar 8 03:13:23 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * m68k.h (enum m68k_architecture): Deleted.
+ (struct m68k_opcode_alias): New type.
+ (m68k_opcodes): Now const. Deleted opcode aliases with exactly
+ matching constraints, values and flags. As a side effect of this,
+ the MOTOROLA_SYNTAX_ONLY and MIT_SYNTAX_ONLY macros, which so far
+ as I know were never used, now may need re-examining.
+ (numopcodes): Now const.
+ (m68k_opcode_aliases, numaliases): New variables.
+ (endop): Deleted.
+ [DONT_DEFINE_TABLE]: Declare numopcodes, numaliases, and
+ m68k_opcode_aliases; update declaration of m68k_opcodes.
+
+Mon Mar 6 10:02:00 1995 Jeff Law (law@snake.cs.utah.edu)
+
+ * hppa.h (delay_type): Delete unused enumeration.
+ (pa_opcode): Replace unused delayed field with an architecture
+ field.
+ (pa_opcodes): Mark each instruction as either PA1.0 or PA1.1.
+
+Fri Mar 3 16:10:24 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (INSN_ISA4): Define.
+
+Fri Feb 24 19:13:37 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (M_DLA_AB, M_DLI): Define.
+
+Thu Feb 23 17:33:09 1995 Jeff Law (law@snake.cs.utah.edu)
+
+ * hppa.h (fstwx): Fix single-bit error.
+
+Wed Feb 15 12:19:52 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips.h (M_ULD, M_ULD_A, M_USD, M_USD_A): Define.
+
+Mon Feb 6 10:35:23 1995 J.T. Conklin <jtc@rtl.cygnus.com>
+
+ * i386.h: added cpuid instruction , and dr[0-7] aliases for the
+ debug registers. From Charles Hannum (mycroft@netbsd.org).
+
+Mon Feb 6 03:31:54 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ Changes from Bryan Ford <baford@schirf.cs.utah.edu> for 16-bit
+ i386 support:
+ * i386.h (MOV_AX_DISP32): New macro.
+ (i386_optab): Added Data16 and Data32 as needed. Added "w" forms
+ of several call/return instructions.
+ (ADDR_PREFIX_OPCODE): New macro.
+
+Mon Jan 23 16:45:43 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ Sat Jan 21 17:50:38 1995 Pat Rankin (rankin@eql.caltech.edu)
+
+ * vax.h (struct vot_wot, field `args'): Make it pointer to const
+ char.
+ (struct vot, field `name'): ditto.
+
+Thu Jan 19 14:47:53 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
+
+ * vax.h: Supply and properly group all values in end sentinel.
+
+Tue Jan 17 10:55:30 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * mips.h (INSN_ISA, INSN_4650): Define.
+
+Wed Oct 19 13:34:17 1994 Ian Lance Taylor <ian@sanguine.cygnus.com>
+
+ * a29k.h: Add operand type 'I' for `inv' and `iretinv'. On
+ systems with a separate instruction and data cache, such as the
+ 29040, these instructions take an optional argument.
+
+Wed Sep 14 17:44:20 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+
+ * mips.h (INSN_STORE_MEMORY): Correct value to not conflict with
+ INSN_TRAP.
+
+Tue Sep 6 11:39:08 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
+
+ * mips.h (INSN_STORE_MEMORY): Define.
+
+Thu Jul 28 19:28:07 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * sparc.h: Document new operand type 'x'.
+
+Tue Jul 26 17:48:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i960.h (I_CX2): New instruction category. It includes
+ instructions available on Cx and Jx processors.
+ (I_JX): New instruction category, for JX-only instructions.
+ (i960_opcodes): Put eshro and sysctl in I_CX2 category. Added
+ Jx-only instructions, in I_JX category.
+
+Wed Jul 13 18:43:47 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * ns32k.h (endop): Made pointer const too.
+
+Sun Jul 10 11:01:09 1994 Ian Dall (dall@hfrd.dsto.gov.au)
+
+ * ns32k.h: Drop Q operand type as there is no correct use
+ for it. Add I and Z operand types which allow better checking.
+
+Thu Jul 7 12:34:48 1994 Steve Chamberlain (sac@jonny.cygnus.com)
+
+ * h8300.h (xor.l) :fix bit pattern.
+ (L_2): New size of operand.
+ (trapa): Use it.
+
+Fri Jun 10 16:38:11 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * m68k.h: Move "trap" before "tpcc" to change disassembly.
+
+Fri Jun 3 15:57:36 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * sparc.h: Include v9 definitions.
+
+Thu Jun 2 12:23:17 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * m68k.h (m68060): Defined.
+ (m68040up, mfloat, mmmu): Include it.
+ (struct m68k_opcode): Widen `arch' field.
+ (m68k_opcodes): Updated for M68060. Removed comments that were
+ instructions commented out by "JF" years ago.
+
+Thu Apr 28 18:31:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * m68k.h (struct m68k_opcode): Shorten `arch' field to 8 bits, and
+ add a one-bit `flags' field.
+ (F_ALIAS): New macro.
+
+Wed Apr 27 11:29:52 1994 Steve Chamberlain (sac@cygnus.com)
+
+ * h8300.h (dec, inc): Get encoding right.
+
+Mon Apr 4 13:12:43 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ppc.h (struct powerpc_operand): Removed signedp field; just use
+ a flag instead.
+ (PPC_OPERAND_SIGNED): Define.
+ (PPC_OPERAND_SIGNOPT): Define.
+
+Thu Mar 31 19:34:08 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i386.h (IS_JUMP_ON_ECX_ZERO, "jcxz" pattern): Operand size
+ prefix is 0x66, not 0x67. Patch from H.J. Lu (hlu@nynexst.com).
+
+Thu Mar 3 15:51:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i386.h: Reverse last change. It'll be handled in gas instead.
+
+Thu Feb 24 15:29:05 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i386.h (sar): Disabled the two-operand Imm1 form, since it was
+ slower on the 486 and used the implicit shift count despite the
+ explicit operand. The one-operand form is still available to get
+ the shorter form with the implicit shift count.
+
+Thu Feb 17 12:27:52 1994 Torbjorn Granlund (tege@mexican.cygnus.com)
+
+ * hppa.h: Fix typo in fstws arg string.
+
+Wed Feb 9 21:23:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ppc.h (struct powerpc_opcode): Make operands field unsigned.
+
+Mon Feb 7 19:14:58 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ppc.h (PPC_OPCODE_601): Define.
+
+Fri Feb 4 23:43:50 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * hppa.h (addb): Use '@' for addb and addib pseudo ops.
+ (so we can determine valid completers for both addb and addb[tf].)
+
+ * hppa.h (xmpyu): No floating point format specifier for the
+ xmpyu instruction.
+
+Fri Feb 4 23:36:52 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ppc.h (PPC_OPERAND_NEXT): Define.
+ (PPC_OPERAND_NEGATIVE): Change value to make room for above.
+ (struct powerpc_macro): Define.
+ (powerpc_macros, powerpc_num_macros): Declare.
+
+Fri Jan 21 19:13:50 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * ppc.h: New file. Header file for PowerPC opcode table.
+
+Mon Jan 17 00:14:23 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * hppa.h: More minor template fixes for sfu and copr (to allow
+ for easier disassembly).
+
+ * hppa.h: Fix templates for all the sfu and copr instructions.
+
+Wed Dec 15 15:12:42 1993 Ken Raeburn (raeburn@cujo.cygnus.com)
+
+ * i386.h (push): Permit Imm16 operand too.
+
+Sat Dec 11 16:14:06 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * h8300.h (andc): Exists in base arch.
+
+Wed Dec 1 12:15:32 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * From Hisashi MINAMINO <minamino@sramhc.sra.co.jp>
+ * hppa.h: #undef NONE to avoid conflict with hiux include files.
+
+Sun Nov 21 22:06:57 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * hppa.h: Add FP quadword store instructions.
+
+Wed Nov 17 17:13:16 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h: (M_J_A): Added.
+ (M_LA): Removed.
+
+Mon Nov 8 12:12:47 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (OP_MASK_CACHE, OP_SH_CACHE): Define. From Ted Lemon
+ <mellon@pepper.ncd.com>.
+
+Sun Nov 7 00:30:11 1993 Jeffrey A. Law (law@snake.cs.utah.edu)
+
+ * hppa.h: Immediate field in probei instructions is unsigned,
+ not low-sign extended.
+
+Wed Nov 3 10:30:00 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * m88k.h (RRI10MASK): Change from 0xfc00ffe0 to 0xfc00fc00.
+
+Tue Nov 2 12:41:30 1993 Ken Raeburn (raeburn@rover.cygnus.com)
+
+ * i386.h: Add "fxch" without operand.
+
+Mon Nov 1 18:13:03 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (M_JAL_1, M_JAL_2, M_JAL_A): Added.
+
+Sat Oct 2 22:26:11 1993 Jeffrey A Law (law@snake.cs.utah.edu)
+
+ * hppa.h: Add gfw and gfr to the opcode table.
+
+Wed Sep 29 16:23:00 1993 K. Richard Pixley (rich@sendai.cygnus.com)
+
+ * m88k.h: extended to handle m88110.
+
+Tue Sep 28 19:19:08 1993 Jeffrey A Law (law@snake.cs.utah.edu)
+
+ * hppa.h (be, ble): Use operand type 'z' to denote absolute branch
+ addresses.
+
+Tue Sep 14 14:04:35 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * i960.h (i960_opcodes): Properly bracket initializers.
+
+Mon Sep 13 12:50:52 1993 K. Richard Pixley (rich@sendai.cygnus.com)
+
+ * m88k.h (BOFLAG): rewrite to avoid nested comment.
+
+Mon Sep 13 15:46:06 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * m68k.h (two): Protect second argument with parentheses.
+
+Fri Sep 10 16:29:47 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * i386.h (i386_optab): Added new instruction "rsm" (for i386sl).
+ Deleted old in/out instructions in "#if 0" section.
+
+Thu Sep 9 17:42:19 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * i386.h (i386_optab): Properly bracket initializers.
+
+Wed Aug 25 13:50:56 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * hppa.h (pa_opcode): Use '|' for movb and movib insns. (From
+ Jeff Law, law@cs.utah.edu).
+
+Mon Aug 23 16:55:03 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * i386.h (lcall): Accept Imm32 operand also.
+
+Mon Aug 23 12:43:11 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (M_ABSU): Removed (absolute value of unsigned number??).
+ (M_DABS): Added.
+
+Thu Aug 19 15:08:37 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h (INSN_*): Changed values. Removed unused definitions.
+ Added INSN_COND_BRANCH_LIKELY, INSN_ISA2 and INSN_ISA3. Split
+ INSN_LOAD_DELAY into INSN_LOAD_MEMORY_DELAY and
+ INSN_LOAD_COPROC_DELAY. Split INSN_COPROC_DELAY into
+ INSN_COPROC_MOVE_DELAY and INSN_COPROC_MEMORY_DELAY.
+ (M_*): Added new values for r6000 and r4000 macros.
+ (ANY_DELAY): Removed.
+
+Wed Aug 18 15:37:48 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h: Added M_LI_S and M_LI_SS.
+
+Tue Aug 17 07:08:08 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
+
+ * h8300.h: Get some rare mov.bs correct.
+
+Thu Aug 5 09:15:17 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * sparc.h: Don't define const ourself; rely on ansidecl.h having
+ been included.
+
+Fri Jul 30 18:41:11 1993 John Gilmore (gnu@cygnus.com)
+
+ * sparc.h (F_JSR, F_UNBR, F_CONDBR): Add new flags to mark
+ jump instructions, for use in disassemblers.
+
+Thu Jul 22 07:25:27 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * m88k.h: Make bitfields just unsigned, not unsigned long or
+ unsigned short.
+
+Wed Jul 21 11:55:31 1993 Jim Kingdon (kingdon@deneb.cygnus.com)
+
+ * hppa.h: New argument type 'y'. Use in various float instructions.
+
+Mon Jul 19 17:17:03 1993 Jim Kingdon (kingdon@deneb.cygnus.com)
+
+ * hppa.h (break): First immediate field is unsigned.
+
+ * hppa.h: Add rfir instruction.
+
+Sun Jul 18 16:28:08 1993 Jim Kingdon (kingdon@rtl.cygnus.com)
+
+ * mips.h: Split the actual table out into ../../opcodes/mips-opc.c.
+
+Fri Jul 16 09:59:29 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h: Reworked the hazard information somewhat, and fixed some
+ bugs in the instruction hazard descriptions.
+
+Thu Jul 15 12:42:01 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * m88k.h: Corrected a couple of opcodes.
+
+Tue Jul 6 15:17:35 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * mips.h: Replaced with version from Ralph Campbell and OSF. The
+ new version includes instruction hazard information, but is
+ otherwise reasonably similar.
+
+Thu Jul 1 20:36:17 1993 Doug Evans (dje@canuck.cygnus.com)
+
+ * h8300.h: Fix typo in UNOP3 (affected sh[al][lr].l).
+
+Fri Jun 11 18:38:44 1993 Ken Raeburn (raeburn@cygnus.com)
+
+ Patches from Jeff Law, law@cs.utah.edu:
+ * hppa.h: Clean up some of the OLD_TABLE, non-OLD_TABLE braindamage.
+ Make the tables be the same for the following instructions:
+ "bb", "addb[tf]", "addib[tf]", "add", "add[loc]", "addco",
+ "sh[123]add", "sh[123]add[lo]", "sub", "sub[obt]", "sub[bt]o",
+ "ds", "comclr", "addi", "addi[ot]", "addito", "subi", "subio",
+ "comiclr", "fadd", "fsub", "fmpy", "fdiv", "fsqrt", "fabs",
+ "frnd", "fcpy", "fcnvff", "fcnvxf", "fcnvfx", "fcnvfxt",
+ "fcmp", and "ftest".
+
+ * hppa.h: Make new and old tables the same for "break", "mtctl",
+ "mfctl", "bb", "ssm", "rsm", "xmpyu", "fmpyadd", "fmpysub".
+ Fix typo in last patch. Collapse several #ifdefs into a
+ single #ifdef.
+
+ * hppa.h: Delete remaining OLD_TABLE code. Bring some
+ of the comments up-to-date.
+
+ * hppa.h: Update "free list" of letters and update
+ comments describing each letter's function.
+
+Thu Jul 8 09:05:26 1993 Doug Evans (dje@canuck.cygnus.com)
+
+ * h8300.h: Lots of little fixes for the h8/300h.
+
+Tue Jun 8 12:16:03 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
+
+ Support for H8/300-H
+ * h8300.h: Lots of new opcodes.
+
+Fri Jun 4 15:41:37 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
+
+ * h8300.h: checkpoint, includes H8/300-H opcodes.
+
+Thu Jun 3 15:42:59 1993 Stu Grossman (grossman@cygnus.com)
+
+ * Patches from Jeffrey Law <law@cs.utah.edu>.
+ * hppa.h: Rework single precision FP
+ instructions so that they correctly disassemble code
+ PA1.1 code.
+
+Thu May 27 19:21:22 1993 Bruce Bauman (boot@osf.org)
+
+ * i386.h (i386_optab, mov pattern): Remove Mem16 restriction from
+ mov to allow instructions like mov ss,xyz(ecx) to assemble.
+
+Tue May 25 00:39:40 1993 Ken Raeburn (raeburn@cygnus.com)
+
+ * hppa.h: Use new version from Utah if OLD_TABLE isn't defined;
+ gdb will define it for now.
+
+Mon May 24 15:20:06 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * sparc.h: Don't end enumerator list with comma.
+
+Fri May 14 15:15:50 1993 Ian Lance Taylor (ian@cygnus.com)
+
+ * Based on patches from davidj@ICSI.Berkeley.EDU (David Johnson):
+ * mips.h (OP_MASK_COPZ, OP_SH_COPZ): Define.
+ ("bc2t"): Correct typo.
+ ("[ls]wc[023]"): Use T rather than t.
+ ("c[0123]"): Define general coprocessor instructions.
+
+Mon May 10 06:02:25 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com)
+
+ * m68k.h: Move split point for gcc compilation more towards
+ middle.
+
+Fri Apr 9 13:26:16 1993 Jim Kingdon (kingdon@cygnus.com)
+
+ * rs6k.h: Clean up instructions for primary opcode 19 (many were
+ simply wrong, ics, rfi, & rfsvc were missing).
+ Add "a" to opr_ext for "bb". Doc fix.
+
+Thu Mar 18 13:45:31 1993 Per Bothner (bothner@rtl.cygnus.com)
+
+ * i386.h: 486 extensions from John Hassey (hassey@dg-rtp.dg.com).
+ * mips.h: Add casts, to suppress warnings about shifting too much.
+ * m68k.h: Document the placement code '9'.
+
+Thu Feb 18 02:03:14 1993 John Gilmore (gnu@cygnus.com)
+
+ * m68k.h (BREAK_UP_BIG_DECL, AND_OTHER_PART): Add kludge which
+ allows callers to break up the large initialized struct full of
+ opcodes into two half-sized ones. This permits GCC to compile
+ this module, since it takes exponential space for initializers.
+ (numopcodes, endop): Revise to use AND_OTHER_PART in size calcs.
+
+Thu Feb 4 02:06:56 1993 John Gilmore (gnu@cygnus.com)
+
+ * a29k.h: Remove RCS crud, update GPL to v2, update copyrights.
+ * convex.h: Added, from GDB's convx-opcode.h. Added CONST to all
+ initialized structs in it.
+
+Thu Jan 28 21:32:22 1993 John Gilmore (gnu@cygnus.com)
+
+ Delta 88 changes inspired by Carl Greco, <cgreco@Creighton.Edu>:
+ * m88k.h (PMEM): Avoid previous definition from <sys/param.h>.
+ (AND): Change to AND_ to avoid ansidecl.h `AND' conflict.
+
+Sat Jan 23 18:10:49 PST 1993 Ralph Campbell (ralphc@pyramid.com)
+
+ * mips.h: document "i" and "j" operands correctly.
+
+Thu Jan 7 15:58:13 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
+
+ * mips.h: Removed endianness dependency.
+
+Sun Jan 3 14:13:35 1993 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * h8300.h: include info on number of cycles per instruction.
+
+Mon Dec 21 21:29:08 1992 Stu Grossman (grossman at cygnus.com)
+
+ * hppa.h: Move handy aliases to the front. Fix masks for extract
+ and deposit instructions.
+
+Sat Dec 12 16:09:48 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * i386.h: accept shld and shrd both with and without the shift
+ count argument, which is always %cl.
+
+Fri Nov 27 17:13:18 1992 Ken Raeburn (raeburn at cygnus.com)
+
+ * i386.h (i386_optab_end, i386_regtab_end): Now const.
+ (one_byte_segment_defaults, two_byte_segment_defaults,
+ i386_prefixtab_end): Ditto.
+
+Mon Nov 23 10:47:25 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * vax.h (bb*): Use "v" (bitfield type), not "a" (address operand)
+ for operand 2; from John Carr, jfc@dsg.dec.com.
+
+Wed Nov 4 07:36:49 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * m68k.h: Define FIXED_SIZE_BRANCH, so bsr and bra instructions
+ always use 16-bit offsets. Makes calculated-size jump tables
+ feasible.
+
+Fri Oct 16 22:52:43 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * i386.h: Fix one-operand forms of in* and out* patterns.
+
+Tue Sep 22 14:08:14 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * m68k.h: Added CPU32 support.
+
+Tue Sep 22 00:38:41 1992 John Gilmore (gnu@cygnus.com)
+
+ * mips.h (break): Disassemble the argument. Patch from
+ jonathan@cs.stanford.edu (Jonathan Stone).
+
+Wed Sep 9 11:25:28 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * m68k.h: merged Motorola and MIT syntax.
+
+Thu Sep 3 09:33:22 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * m68k.h (pmove): make the tests less strict, the 68k book is
+ wrong.
+
+Tue Aug 25 23:25:19 1992 Ken Raeburn (raeburn@cambridge.cygnus.com)
+
+ * m68k.h (m68ec030): Defined as alias for 68030.
+ (m68k_opcodes): New type characters "3" for 68030 MMU regs and "t"
+ for immediate 0-7 added. Set up some opcodes (ptest, bkpt) to use
+ them. Tightened description of "fmovex" to distinguish it from
+ some "pmove" encodings. Added "pmove" for 68030 MMU regs, cleaned
+ up descriptions that claimed versions were available for chips not
+ supporting them. Added "pmovefd".
+
+Mon Aug 24 12:04:51 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * m68k.h: fix where the . goes in divull
+
+Wed Aug 19 11:22:24 1992 Ian Lance Taylor (ian@cygnus.com)
+
+ * m68k.h: the cas2 instruction is supposed to be written with
+ indirection on the last two operands, which can be either data or
+ address registers. Added a new operand type 'r' which accepts
+ either register type. Added new cases for cas2l and cas2w which
+ use them. Corrected masks for cas2 which failed to recognize use
+ of address register.
+
+Fri Aug 14 14:20:38 1992 Per Bothner (bothner@cygnus.com)
+
+ * m68k.h: Merged in patches (mostly m68040-specific) from
+ Colin Smith <colin@wrs.com>.
+
+ * m68k.h: Merged m68kmri.h and m68k.h (using the former as a
+ base). Also cleaned up duplicates, re-ordered instructions for
+ the sake of dis-assembling (so aliases come after standard names).
+ * m68kmri.h: Now just defines some macros, and #includes m68k.h.
+
+Wed Aug 12 16:38:15 1992 Steve Chamberlain (sac@thepub.cygnus.com)
+
+ * m68kmri.h: added various opcodes. Moved jbxx to bxxes. Filled in
+ all missing .s
+
+Mon Aug 10 23:22:33 1992 Ken Raeburn (raeburn@cygnus.com)
+
+ * sparc.h: Moved tables to BFD library.
+
+ * i386.h (i386_optab): Add fildq, fistpq aliases used by gcc.
+
+Sun Jun 28 13:29:03 1992 Fred Fish (fnf@cygnus.com)
+
+ * h8300.h: Finish filling in all the holes in the opcode table,
+ so that the Lucid C compiler can digest this as well...
+
+Fri Jun 26 21:27:17 1992 John Gilmore (gnu at cygnus.com)
+
+ * i386.h: Add setc, setnc, addr16, data16, repz, repnz aliases.
+ Fix opcodes on various sizes of fild/fist instructions
+ (16bit=no suffix, 32bit="l" suffix, 64bit="ll" suffix).
+ Use tabs to indent for comments. Fixes suggested by Minh Tran-Le.
+
+Thu Jun 25 16:13:26 1992 Stu Grossman (grossman at cygnus.com)
+
+ * h8300.h: Fill in all the holes in the opcode table so that the
+ losing HPUX C compiler can digest this...
+
+Thu Jun 11 12:15:25 1992 John Gilmore (gnu at cygnus.com)
+
+ * mips.h: Fix decoding of coprocessor instructions, somewhat.
+ (Fix by Eric Anderson, 3jean@maas-neotek.arc.nasa.gov.)
+
+Thu May 28 11:17:44 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
+
+ * sparc.h: Add new architecture variant sparclite; add its scan
+ and divscc opcodes. Define ARCHITECTURES_CONFLICT_P macro.
+
+Tue May 5 14:23:27 1992 Per Bothner (bothner@rtl.cygnus.com)
+
+ * mips.h: Add some more opcode synonyms (from Frank Yellin,
+ fy@lucid.com).
+
+Thu Apr 16 18:25:26 1992 Per Bothner (bothner@cygnus.com)
+
+ * rs6k.h: New version from IBM (Metin).
+
+Thu Apr 9 00:31:19 1992 Per Bothner (bothner@rtl.cygnus.com)
+
+ * rs6k.h: Fix incorrect extended opcode for instructions `fm'
+ and `fd'. (From metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik).)
+
+Tue Apr 7 13:38:47 1992 Stu Grossman (grossman at cygnus.com)
+
+ * rs6k.h: Move from ../../gdb/rs6k-opcode.h.
+
+Fri Apr 3 11:30:20 1992 Fred Fish (fnf@cygnus.com)
+
+ * m68k.h (one, two): Cast macro args to unsigned to suppress
+ complaints from compiler and lint about integer overflow during
+ shift.
+
+Sun Mar 29 12:22:08 1992 John Gilmore (gnu at cygnus.com)
+
+ * sparc.h (OP): Avoid signed overflow when shifting to high order bit.
+
+Fri Mar 6 00:22:38 1992 John Gilmore (gnu at cygnus.com)
+
+ * mips.h: Make bitfield layout depend on the HOST compiler,
+ not on the TARGET system.
+
+Fri Feb 21 01:29:51 1992 K. Richard Pixley (rich@cygnus.com)
+
+ * i386.h: added inb, inw, outb, outw opcodes, added att syntax for
+ scmp, slod, smov, ssca, ssto. Curtesy Minh Tran-Le
+ <TRANLE@INTELLICORP.COM>.
+
+Thu Jan 30 07:31:44 1992 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * h8300.h: turned op_type enum into #define list
+
+Thu Jan 30 01:07:24 1992 John Gilmore (gnu at cygnus.com)
+
+ * sparc.h: Remove "cypress" architecture. Remove "fitox" and
+ similar instructions -- they've been renamed to "fitoq", etc.
+ REALLY fix tsubcctv. Fix "fcmpeq" and "fcmpq" which had wrong
+ number of arguments.
+ * h8300.h: Remove extra ; which produces compiler warning.
+
+Tue Jan 28 22:59:22 1992 Stu Grossman (grossman at cygnus.com)
+
+ * sparc.h: fix opcode for tsubcctv.
+
+Tue Jan 7 17:19:39 1992 K. Richard Pixley (rich at cygnus.com)
+
+ * sparc.h: fba and cba are now aliases for fb and cb respectively.
+
+Fri Dec 27 10:55:50 1991 Per Bothner (bothner at cygnus.com)
+
+ * sparc.h (nop): Made the 'lose' field be even tighter,
+ so only a standard 'nop' is disassembled as a nop.
+
+Sun Dec 22 12:18:18 1991 Michael Tiemann (tiemann at cygnus.com)
+
+ * sparc.h (nop): Add RD_GO to `lose' so that only %g0 in dest is
+ disassembled as a nop.
+
+Wed Dec 18 17:19:44 1991 Stu Grossman (grossman at cygnus.com)
+
+ * m68k.h, sparc.h: ANSIfy enums.
+
+Tue Dec 10 00:22:20 1991 K. Richard Pixley (rich at rtl.cygnus.com)
+
+ * sparc.h: fix a typo.
+
+Sat Nov 30 20:40:51 1991 Steve Chamberlain (sac at rtl.cygnus.com)
+
+ * a29k.h, arm.h, h8300.h, i386.h, i860.h, i960.h , m68k.h,
+ m88k.h, mips.h , np1.h, ns32k.h, pn.h, pyr.h, sparc.h, tahoe.h,
+ vax.h: Renamed from ../<foo>-opcode.h.
+
+
+Local Variables:
+version-control: never
+End:
diff --git a/include/opcode/a29k.h b/include/opcode/a29k.h
new file mode 100644
index 000000000..c6c8c3700
--- /dev/null
+++ b/include/opcode/a29k.h
@@ -0,0 +1,281 @@
+/* Table of opcodes for the AMD 29000 family.
+ Copyright 1990, 1991, 1993, 1994, 2002 Free Software Foundation, Inc.
+
+This file is part of GDB and GAS.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+struct a29k_opcode {
+ /* Name of the instruction. */
+ char *name;
+
+ /* Opcode word */
+ unsigned long opcode;
+
+ /* A string of characters which describe the operands.
+ Valid characters are:
+ , Itself. The character appears in the assembly code.
+ a RA. The register number is in bits 8-15 of the instruction.
+ b RB. The register number is in bits 0-7 of the instruction.
+ c RC. The register number is in bits 16-23 of the instruction.
+ i An immediate operand is in bits 0-7 of the instruction.
+ x Bits 0-7 and 16-23 of the instruction are bits 0-7 and 8-15
+ (respectively) of the immediate operand.
+ h Same as x but the instruction contains bits 16-31 of the
+ immediate operand.
+ X Same as x but bits 16-31 of the signed immediate operand
+ are set to 1 (thus the operand is always negative).
+ P,A Bits 0-7 and 16-23 of the instruction are bits 2-9 and 10-17
+ (respectively) of the immediate operand.
+ P=PC-relative, sign-extended to 32 bits.
+ A=Absolute, zero-extended to 32 bits.
+ e CE bit (bit 23) for a load/store instruction.
+ n Control field (bits 16-22) for a load/store instruction.
+ v Immediate operand in bits 16-23 of the instruction.
+ (used for trap numbers).
+ s SA. Special-purpose register number in bits 8-15
+ of the instruction.
+ u UI--bit 7 of the instruction.
+ r RND--bits 4-6 of the instruction.
+ d FD--bits 2-3 of the instruction.
+ f FS--bits 0-1 of the instruction.
+ I ID--bits 16-17 of the instruction.
+
+ Extensions for 29050:
+
+ d FMT--bits 2-3 of the instruction (not really new).
+ f ACN--bits 0-1 of the instruction (not really new).
+ F FUNC--Special function in bits 18-21 of the instruction.
+ C ACN--bits 16-17 specifying the accumlator register. */
+ char *args;
+};
+
+static const struct a29k_opcode a29k_opcodes[] =
+{
+
+{ "add", 0x14000000, "c,a,b" },
+{ "add", 0x15000000, "c,a,i" },
+{ "addc", 0x1c000000, "c,a,b" },
+{ "addc", 0x1d000000, "c,a,i" },
+{ "addcs", 0x18000000, "c,a,b" },
+{ "addcs", 0x19000000, "c,a,i" },
+{ "addcu", 0x1a000000, "c,a,b" },
+{ "addcu", 0x1b000000, "c,a,i" },
+{ "adds", 0x10000000, "c,a,b" },
+{ "adds", 0x11000000, "c,a,i" },
+{ "addu", 0x12000000, "c,a,b" },
+{ "addu", 0x13000000, "c,a,i" },
+{ "and", 0x90000000, "c,a,b" },
+{ "and", 0x91000000, "c,a,i" },
+{ "andn", 0x9c000000, "c,a,b" },
+{ "andn", 0x9d000000, "c,a,i" },
+{ "aseq", 0x70000000, "v,a,b" },
+{ "aseq", 0x71000000, "v,a,i" },
+{ "asge", 0x5c000000, "v,a,b" },
+{ "asge", 0x5d000000, "v,a,i" },
+{ "asgeu", 0x5e000000, "v,a,b" },
+{ "asgeu", 0x5f000000, "v,a,i" },
+{ "asgt", 0x58000000, "v,a,b" },
+{ "asgt", 0x59000000, "v,a,i" },
+{ "asgtu", 0x5a000000, "v,a,b" },
+{ "asgtu", 0x5b000000, "v,a,i" },
+{ "asle", 0x54000000, "v,a,b" },
+{ "asle", 0x55000000, "v,a,i" },
+{ "asleu", 0x56000000, "v,a,b" },
+{ "asleu", 0x57000000, "v,a,i" },
+{ "aslt", 0x50000000, "v,a,b" },
+{ "aslt", 0x51000000, "v,a,i" },
+{ "asltu", 0x52000000, "v,a,b" },
+{ "asltu", 0x53000000, "v,a,i" },
+{ "asneq", 0x72000000, "v,a,b" },
+{ "asneq", 0x73000000, "v,a,i" },
+{ "call", 0xa8000000, "a,P" },
+{ "call", 0xa9000000, "a,A" },
+{ "calli", 0xc8000000, "a,b" },
+{ "class", 0xe6000000, "c,a,f" },
+{ "clz", 0x08000000, "c,b" },
+{ "clz", 0x09000000, "c,i" },
+{ "const", 0x03000000, "a,x" },
+{ "consth", 0x02000000, "a,h" },
+{ "consthz", 0x05000000, "a,h" },
+{ "constn", 0x01000000, "a,X" },
+{ "convert", 0xe4000000, "c,a,u,r,d,f" },
+{ "cpbyte", 0x2e000000, "c,a,b" },
+{ "cpbyte", 0x2f000000, "c,a,i" },
+{ "cpeq", 0x60000000, "c,a,b" },
+{ "cpeq", 0x61000000, "c,a,i" },
+{ "cpge", 0x4c000000, "c,a,b" },
+{ "cpge", 0x4d000000, "c,a,i" },
+{ "cpgeu", 0x4e000000, "c,a,b" },
+{ "cpgeu", 0x4f000000, "c,a,i" },
+{ "cpgt", 0x48000000, "c,a,b" },
+{ "cpgt", 0x49000000, "c,a,i" },
+{ "cpgtu", 0x4a000000, "c,a,b" },
+{ "cpgtu", 0x4b000000, "c,a,i" },
+{ "cple", 0x44000000, "c,a,b" },
+{ "cple", 0x45000000, "c,a,i" },
+{ "cpleu", 0x46000000, "c,a,b" },
+{ "cpleu", 0x47000000, "c,a,i" },
+{ "cplt", 0x40000000, "c,a,b" },
+{ "cplt", 0x41000000, "c,a,i" },
+{ "cpltu", 0x42000000, "c,a,b" },
+{ "cpltu", 0x43000000, "c,a,i" },
+{ "cpneq", 0x62000000, "c,a,b" },
+{ "cpneq", 0x63000000, "c,a,i" },
+{ "dadd", 0xf1000000, "c,a,b" },
+{ "ddiv", 0xf7000000, "c,a,b" },
+{ "deq", 0xeb000000, "c,a,b" },
+{ "dge", 0xef000000, "c,a,b" },
+{ "dgt", 0xed000000, "c,a,b" },
+{ "div", 0x6a000000, "c,a,b" },
+{ "div", 0x6b000000, "c,a,i" },
+{ "div0", 0x68000000, "c,b" },
+{ "div0", 0x69000000, "c,i" },
+{ "divide", 0xe1000000, "c,a,b" },
+{ "dividu", 0xe3000000, "c,a,b" },
+{ "divl", 0x6c000000, "c,a,b" },
+{ "divl", 0x6d000000, "c,a,i" },
+{ "divrem", 0x6e000000, "c,a,b" },
+{ "divrem", 0x6f000000, "c,a,i" },
+{ "dmac", 0xd9000000, "F,C,a,b" },
+{ "dmsm", 0xdb000000, "c,a,b" },
+{ "dmul", 0xf5000000, "c,a,b" },
+{ "dsub", 0xf3000000, "c,a,b" },
+{ "emulate", 0xd7000000, "v,a,b" },
+{ "exbyte", 0x0a000000, "c,a,b" },
+{ "exbyte", 0x0b000000, "c,a,i" },
+{ "exhw", 0x7c000000, "c,a,b" },
+{ "exhw", 0x7d000000, "c,a,i" },
+{ "exhws", 0x7e000000, "c,a" },
+{ "extract", 0x7a000000, "c,a,b" },
+{ "extract", 0x7b000000, "c,a,i" },
+{ "fadd", 0xf0000000, "c,a,b" },
+{ "fdiv", 0xf6000000, "c,a,b" },
+{ "fdmul", 0xf9000000, "c,a,b" },
+{ "feq", 0xea000000, "c,a,b" },
+{ "fge", 0xee000000, "c,a,b" },
+{ "fgt", 0xec000000, "c,a,b" },
+{ "fmac", 0xd8000000, "F,C,a,b" },
+{ "fmsm", 0xda000000, "c,a,b" },
+{ "fmul", 0xf4000000, "c,a,b" },
+{ "fsub", 0xf2000000, "c,a,b" },
+{ "halt", 0x89000000, "" },
+{ "inbyte", 0x0c000000, "c,a,b" },
+{ "inbyte", 0x0d000000, "c,a,i" },
+{ "inhw", 0x78000000, "c,a,b" },
+{ "inhw", 0x79000000, "c,a,i" },
+{ "inv", 0x9f000000, "I" },
+{ "iret", 0x88000000, "" },
+{ "iretinv", 0x8c000000, "I" },
+{ "jmp", 0xa0000000, "P" },
+{ "jmp", 0xa1000000, "A" },
+{ "jmpf", 0xa4000000, "a,P" },
+{ "jmpf", 0xa5000000, "a,A" },
+{ "jmpfdec", 0xb4000000, "a,P" },
+{ "jmpfdec", 0xb5000000, "a,A" },
+{ "jmpfi", 0xc4000000, "a,b" },
+{ "jmpi", 0xc0000000, "b" },
+{ "jmpt", 0xac000000, "a,P" },
+{ "jmpt", 0xad000000, "a,A" },
+{ "jmpti", 0xcc000000, "a,b" },
+{ "load", 0x16000000, "e,n,a,b" },
+{ "load", 0x17000000, "e,n,a,i" },
+{ "loadl", 0x06000000, "e,n,a,b" },
+{ "loadl", 0x07000000, "e,n,a,i" },
+{ "loadm", 0x36000000, "e,n,a,b" },
+{ "loadm", 0x37000000, "e,n,a,i" },
+{ "loadset", 0x26000000, "e,n,a,b" },
+{ "loadset", 0x27000000, "e,n,a,i" },
+{ "mfacc", 0xe9000100, "c,d,f" },
+{ "mfsr", 0xc6000000, "c,s" },
+{ "mftlb", 0xb6000000, "c,a" },
+{ "mtacc", 0xe8010000, "a,d,f" },
+{ "mtsr", 0xce000000, "s,b" },
+{ "mtsrim", 0x04000000, "s,x" },
+{ "mttlb", 0xbe000000, "a,b" },
+{ "mul", 0x64000000, "c,a,b" },
+{ "mul", 0x65000000, "c,a,i" },
+{ "mull", 0x66000000, "c,a,b" },
+{ "mull", 0x67000000, "c,a,i" },
+{ "multiplu", 0xe2000000, "c,a,b" },
+{ "multiply", 0xe0000000, "c,a,b" },
+{ "multm", 0xde000000, "c,a,b" },
+{ "multmu", 0xdf000000, "c,a,b" },
+{ "mulu", 0x74000000, "c,a,b" },
+{ "mulu", 0x75000000, "c,a,i" },
+{ "nand", 0x9a000000, "c,a,b" },
+{ "nand", 0x9b000000, "c,a,i" },
+{ "nop", 0x70400101, "" },
+{ "nor", 0x98000000, "c,a,b" },
+{ "nor", 0x99000000, "c,a,i" },
+{ "or", 0x92000000, "c,a,b" },
+{ "or", 0x93000000, "c,a,i" },
+{ "orn", 0xaa000000, "c,a,b" },
+{ "orn", 0xab000000, "c,a,i" },
+
+/* The description of "setip" in Chapter 8 ("instruction set") of the user's
+ manual claims that these are absolute register numbers. But section
+ 7.2.1 explains that they are not. The latter is correct, so print
+ these normally ("lr0", "lr5", etc.). */
+{ "setip", 0x9e000000, "c,a,b" },
+
+{ "sll", 0x80000000, "c,a,b" },
+{ "sll", 0x81000000, "c,a,i" },
+{ "sqrt", 0xe5000000, "c,a,f" },
+{ "sra", 0x86000000, "c,a,b" },
+{ "sra", 0x87000000, "c,a,i" },
+{ "srl", 0x82000000, "c,a,b" },
+{ "srl", 0x83000000, "c,a,i" },
+{ "store", 0x1e000000, "e,n,a,b" },
+{ "store", 0x1f000000, "e,n,a,i" },
+{ "storel", 0x0e000000, "e,n,a,b" },
+{ "storel", 0x0f000000, "e,n,a,i" },
+{ "storem", 0x3e000000, "e,n,a,b" },
+{ "storem", 0x3f000000, "e,n,a,i" },
+{ "sub", 0x24000000, "c,a,b" },
+{ "sub", 0x25000000, "c,a,i" },
+{ "subc", 0x2c000000, "c,a,b" },
+{ "subc", 0x2d000000, "c,a,i" },
+{ "subcs", 0x28000000, "c,a,b" },
+{ "subcs", 0x29000000, "c,a,i" },
+{ "subcu", 0x2a000000, "c,a,b" },
+{ "subcu", 0x2b000000, "c,a,i" },
+{ "subr", 0x34000000, "c,a,b" },
+{ "subr", 0x35000000, "c,a,i" },
+{ "subrc", 0x3c000000, "c,a,b" },
+{ "subrc", 0x3d000000, "c,a,i" },
+{ "subrcs", 0x38000000, "c,a,b" },
+{ "subrcs", 0x39000000, "c,a,i" },
+{ "subrcu", 0x3a000000, "c,a,b" },
+{ "subrcu", 0x3b000000, "c,a,i" },
+{ "subrs", 0x30000000, "c,a,b" },
+{ "subrs", 0x31000000, "c,a,i" },
+{ "subru", 0x32000000, "c,a,b" },
+{ "subru", 0x33000000, "c,a,i" },
+{ "subs", 0x20000000, "c,a,b" },
+{ "subs", 0x21000000, "c,a,i" },
+{ "subu", 0x22000000, "c,a,b" },
+{ "subu", 0x23000000, "c,a,i" },
+{ "xnor", 0x96000000, "c,a,b" },
+{ "xnor", 0x97000000, "c,a,i" },
+{ "xor", 0x94000000, "c,a,b" },
+{ "xor", 0x95000000, "c,a,i" },
+
+{ "", 0x0, "" } /* Dummy entry, not included in NUM_OPCODES. This
+ lets code examine entry i+1 without checking
+ if we've run off the end of the table. */
+};
+
+const unsigned int num_opcodes = (((sizeof a29k_opcodes) / (sizeof a29k_opcodes[0])) - 1);
diff --git a/include/opcode/alpha.h b/include/opcode/alpha.h
new file mode 100644
index 000000000..efe16260e
--- /dev/null
+++ b/include/opcode/alpha.h
@@ -0,0 +1,237 @@
+/* alpha.h -- Header file for Alpha opcode table
+ Copyright 1996, 1999, 2001, 2003 Free Software Foundation, Inc.
+ Contributed by Richard Henderson <rth@tamu.edu>,
+ patterned after the PPC opcode table written by Ian Lance Taylor.
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef OPCODE_ALPHA_H
+#define OPCODE_ALPHA_H
+
+/* The opcode table is an array of struct alpha_opcode. */
+
+struct alpha_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned mask;
+
+ /* One bit flags for the opcode. These are primarily used to
+ indicate specific processors and environments support the
+ instructions. The defined values are listed below. */
+ unsigned flags;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[4];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct alpha_opcode alpha_opcodes[];
+extern const unsigned alpha_num_opcodes;
+
+/* Values defined for the flags field of a struct alpha_opcode. */
+
+/* CPU Availability */
+#define AXP_OPCODE_BASE 0x0001 /* Base architecture -- all cpus. */
+#define AXP_OPCODE_EV4 0x0002 /* EV4 specific PALcode insns. */
+#define AXP_OPCODE_EV5 0x0004 /* EV5 specific PALcode insns. */
+#define AXP_OPCODE_EV6 0x0008 /* EV6 specific PALcode insns. */
+#define AXP_OPCODE_BWX 0x0100 /* Byte/word extension (amask bit 0). */
+#define AXP_OPCODE_CIX 0x0200 /* "Count" extension (amask bit 1). */
+#define AXP_OPCODE_MAX 0x0400 /* Multimedia extension (amask bit 8). */
+
+#define AXP_OPCODE_NOPAL (~(AXP_OPCODE_EV4|AXP_OPCODE_EV5|AXP_OPCODE_EV6))
+
+/* A macro to extract the major opcode from an instruction. */
+#define AXP_OP(i) (((i) >> 26) & 0x3F)
+
+/* The total number of major opcodes. */
+#define AXP_NOPS 0x40
+
+
+/* The operands table is an array of struct alpha_operand. */
+
+struct alpha_operand
+{
+ /* The number of bits in the operand. */
+ unsigned int bits : 5;
+
+ /* How far the operand is left shifted in the instruction. */
+ unsigned int shift : 5;
+
+ /* The default relocation type for this operand. */
+ signed int default_reloc : 16;
+
+ /* One bit syntax flags. */
+ unsigned int flags : 16;
+
+ /* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (op & ((1 << o->bits) - 1)) << o->shift;
+ (i is the instruction which we are filling in, o is a pointer to
+ this structure, and op is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged (most operands
+ can accept any value). */
+ unsigned (*insert) (unsigned instruction, int op, const char **errmsg);
+
+ /* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if ((o->flags & AXP_OPERAND_SIGNED) != 0
+ && (op & (1 << (o->bits - 1))) != 0)
+ op -= 1 << o->bits;
+ (i is the instruction, o is a pointer to this structure, and op
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed. */
+ int (*extract) (unsigned instruction, int *invalid);
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the alpha_opcodes table. */
+
+extern const struct alpha_operand alpha_operands[];
+extern const unsigned alpha_num_operands;
+
+/* Values defined for the flags field of a struct alpha_operand. */
+
+/* Mask for selecting the type for typecheck purposes */
+#define AXP_OPERAND_TYPECHECK_MASK \
+ (AXP_OPERAND_PARENS | AXP_OPERAND_COMMA | AXP_OPERAND_IR | \
+ AXP_OPERAND_FPR | AXP_OPERAND_RELATIVE | AXP_OPERAND_SIGNED | \
+ AXP_OPERAND_UNSIGNED)
+
+/* This operand does not actually exist in the assembler input. This
+ is used to support extended mnemonics, for which two operands fields
+ are identical. The assembler should call the insert function with
+ any op value. The disassembler should call the extract function,
+ ignore the return value, and check the value placed in the invalid
+ argument. */
+#define AXP_OPERAND_FAKE 01
+
+/* The operand should be wrapped in parentheses rather than separated
+ from the previous by a comma. This is used for the load and store
+ instructions which want their operands to look like "Ra,disp(Rb)". */
+#define AXP_OPERAND_PARENS 02
+
+/* Used in combination with PARENS, this supresses the supression of
+ the comma. This is used for "jmp Ra,(Rb),hint". */
+#define AXP_OPERAND_COMMA 04
+
+/* This operand names an integer register. */
+#define AXP_OPERAND_IR 010
+
+/* This operand names a floating point register. */
+#define AXP_OPERAND_FPR 020
+
+/* This operand is a relative branch displacement. The disassembler
+ prints these symbolically if possible. */
+#define AXP_OPERAND_RELATIVE 040
+
+/* This operand takes signed values. */
+#define AXP_OPERAND_SIGNED 0100
+
+/* This operand takes unsigned values. This exists primarily so that
+ a flags value of 0 can be treated as end-of-arguments. */
+#define AXP_OPERAND_UNSIGNED 0200
+
+/* Supress overflow detection on this field. This is used for hints. */
+#define AXP_OPERAND_NOOVERFLOW 0400
+
+/* Mask for optional argument default value. */
+#define AXP_OPERAND_OPTIONAL_MASK 07000
+
+/* This operand defaults to zero. This is used for jump hints. */
+#define AXP_OPERAND_DEFAULT_ZERO 01000
+
+/* This operand should default to the first (real) operand and is used
+ in conjunction with AXP_OPERAND_OPTIONAL. This allows
+ "and $0,3,$0" to be written as "and $0,3", etc. I don't like
+ it, but it's what DEC does. */
+#define AXP_OPERAND_DEFAULT_FIRST 02000
+
+/* Similarly, this operand should default to the second (real) operand.
+ This allows "negl $0" instead of "negl $0,$0". */
+#define AXP_OPERAND_DEFAULT_SECOND 04000
+
+
+/* Register common names */
+
+#define AXP_REG_V0 0
+#define AXP_REG_T0 1
+#define AXP_REG_T1 2
+#define AXP_REG_T2 3
+#define AXP_REG_T3 4
+#define AXP_REG_T4 5
+#define AXP_REG_T5 6
+#define AXP_REG_T6 7
+#define AXP_REG_T7 8
+#define AXP_REG_S0 9
+#define AXP_REG_S1 10
+#define AXP_REG_S2 11
+#define AXP_REG_S3 12
+#define AXP_REG_S4 13
+#define AXP_REG_S5 14
+#define AXP_REG_FP 15
+#define AXP_REG_A0 16
+#define AXP_REG_A1 17
+#define AXP_REG_A2 18
+#define AXP_REG_A3 19
+#define AXP_REG_A4 20
+#define AXP_REG_A5 21
+#define AXP_REG_T8 22
+#define AXP_REG_T9 23
+#define AXP_REG_T10 24
+#define AXP_REG_T11 25
+#define AXP_REG_RA 26
+#define AXP_REG_PV 27
+#define AXP_REG_T12 27
+#define AXP_REG_AT 28
+#define AXP_REG_GP 29
+#define AXP_REG_SP 30
+#define AXP_REG_ZERO 31
+
+#endif /* OPCODE_ALPHA_H */
diff --git a/include/opcode/arc.h b/include/opcode/arc.h
new file mode 100644
index 000000000..629979d54
--- /dev/null
+++ b/include/opcode/arc.h
@@ -0,0 +1,323 @@
+/* Opcode table for the ARC.
+ Copyright 1994, 1995, 1997, 2001, 2002, 2003
+ Free Software Foundation, Inc.
+ Contributed by Doug Evans (dje@cygnus.com).
+
+ This file is part of GAS, the GNU Assembler, GDB, the GNU debugger, and
+ the GNU Binutils.
+
+ GAS/GDB is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ GAS/GDB is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GAS or GDB; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330, Boston,
+ MA 02111-1307, USA. */
+
+
+/* List of the various cpu types.
+ The tables currently use bit masks to say whether the instruction or
+ whatever is supported by a particular cpu. This lets us have one entry
+ apply to several cpus.
+
+ The `base' cpu must be 0. The cpu type is treated independently of
+ endianness. The complete `mach' number includes endianness.
+ These values are internal to opcodes/bfd/binutils/gas. */
+#define ARC_MACH_5 0
+#define ARC_MACH_6 1
+#define ARC_MACH_7 2
+#define ARC_MACH_8 4
+
+/* Additional cpu values can be inserted here and ARC_MACH_BIG moved down. */
+#define ARC_MACH_BIG 16
+
+/* Mask of number of bits necessary to record cpu type. */
+#define ARC_MACH_CPU_MASK (ARC_MACH_BIG - 1)
+
+/* Mask of number of bits necessary to record cpu type + endianness. */
+#define ARC_MACH_MASK ((ARC_MACH_BIG << 1) - 1)
+
+/* Type to denote an ARC instruction (at least a 32 bit unsigned int). */
+
+typedef unsigned int arc_insn;
+
+struct arc_opcode {
+ char *syntax; /* syntax of insn */
+ unsigned long mask, value; /* recognize insn if (op&mask) == value */
+ int flags; /* various flag bits */
+
+/* Values for `flags'. */
+
+/* Return CPU number, given flag bits. */
+#define ARC_OPCODE_CPU(bits) ((bits) & ARC_MACH_CPU_MASK)
+
+/* Return MACH number, given flag bits. */
+#define ARC_OPCODE_MACH(bits) ((bits) & ARC_MACH_MASK)
+
+/* First opcode flag bit available after machine mask. */
+#define ARC_OPCODE_FLAG_START (ARC_MACH_MASK + 1)
+
+/* This insn is a conditional branch. */
+#define ARC_OPCODE_COND_BRANCH (ARC_OPCODE_FLAG_START)
+#define SYNTAX_3OP (ARC_OPCODE_COND_BRANCH << 1)
+#define SYNTAX_LENGTH (SYNTAX_3OP )
+#define SYNTAX_2OP (SYNTAX_3OP << 1)
+#define OP1_MUST_BE_IMM (SYNTAX_2OP << 1)
+#define OP1_IMM_IMPLIED (OP1_MUST_BE_IMM << 1)
+#define SYNTAX_VALID (OP1_IMM_IMPLIED << 1)
+
+#define I(x) (((x) & 31) << 27)
+#define A(x) (((x) & ARC_MASK_REG) << ARC_SHIFT_REGA)
+#define B(x) (((x) & ARC_MASK_REG) << ARC_SHIFT_REGB)
+#define C(x) (((x) & ARC_MASK_REG) << ARC_SHIFT_REGC)
+#define R(x,b,m) (((x) & (m)) << (b)) /* value X, mask M, at bit B */
+
+/* These values are used to optimize assembly and disassembly. Each insn
+ is on a list of related insns (same first letter for assembly, same
+ insn code for disassembly). */
+
+ struct arc_opcode *next_asm; /* Next instr to try during assembly. */
+ struct arc_opcode *next_dis; /* Next instr to try during disassembly. */
+
+/* Macros to create the hash values for the lists. */
+#define ARC_HASH_OPCODE(string) \
+ ((string)[0] >= 'a' && (string)[0] <= 'z' ? (string)[0] - 'a' : 26)
+#define ARC_HASH_ICODE(insn) \
+ ((unsigned int) (insn) >> 27)
+
+ /* Macros to access `next_asm', `next_dis' so users needn't care about the
+ underlying mechanism. */
+#define ARC_OPCODE_NEXT_ASM(op) ((op)->next_asm)
+#define ARC_OPCODE_NEXT_DIS(op) ((op)->next_dis)
+};
+
+/* this is an "insert at front" linked list per Metaware spec
+ that new definitions override older ones. */
+extern struct arc_opcode *arc_ext_opcodes;
+
+struct arc_operand_value {
+ char *name; /* eg: "eq" */
+ short value; /* eg: 1 */
+ unsigned char type; /* index into `arc_operands' */
+ unsigned char flags; /* various flag bits */
+
+/* Values for `flags'. */
+
+/* Return CPU number, given flag bits. */
+#define ARC_OPVAL_CPU(bits) ((bits) & ARC_MACH_CPU_MASK)
+/* Return MACH number, given flag bits. */
+#define ARC_OPVAL_MACH(bits) ((bits) & ARC_MACH_MASK)
+};
+
+struct arc_ext_operand_value {
+ struct arc_ext_operand_value *next;
+ struct arc_operand_value operand;
+};
+
+extern struct arc_ext_operand_value *arc_ext_operands;
+
+struct arc_operand {
+/* One of the insn format chars. */
+ unsigned char fmt;
+
+/* The number of bits in the operand (may be unused for a modifier). */
+ unsigned char bits;
+
+/* How far the operand is left shifted in the instruction, or
+ the modifier's flag bit (may be unused for a modifier. */
+ unsigned char shift;
+
+/* Various flag bits. */
+ int flags;
+
+/* Values for `flags'. */
+
+/* This operand is a suffix to the opcode. */
+#define ARC_OPERAND_SUFFIX 1
+
+/* This operand is a relative branch displacement. The disassembler
+ prints these symbolically if possible. */
+#define ARC_OPERAND_RELATIVE_BRANCH 2
+
+/* This operand is an absolute branch address. The disassembler
+ prints these symbolically if possible. */
+#define ARC_OPERAND_ABSOLUTE_BRANCH 4
+
+/* This operand is an address. The disassembler
+ prints these symbolically if possible. */
+#define ARC_OPERAND_ADDRESS 8
+
+/* This operand is a long immediate value. */
+#define ARC_OPERAND_LIMM 0x10
+
+/* This operand takes signed values. */
+#define ARC_OPERAND_SIGNED 0x20
+
+/* This operand takes signed values, but also accepts a full positive
+ range of values. That is, if bits is 16, it takes any value from
+ -0x8000 to 0xffff. */
+#define ARC_OPERAND_SIGNOPT 0x40
+
+/* This operand should be regarded as a negative number for the
+ purposes of overflow checking (i.e., the normal most negative
+ number is disallowed and one more than the normal most positive
+ number is allowed). This flag will only be set for a signed
+ operand. */
+#define ARC_OPERAND_NEGATIVE 0x80
+
+/* This operand doesn't really exist. The program uses these operands
+ in special ways. */
+#define ARC_OPERAND_FAKE 0x100
+
+/* separate flags operand for j and jl instructions */
+#define ARC_OPERAND_JUMPFLAGS 0x200
+
+/* allow warnings and errors to be issued after call to insert_xxxxxx */
+#define ARC_OPERAND_WARN 0x400
+#define ARC_OPERAND_ERROR 0x800
+
+/* this is a load operand */
+#define ARC_OPERAND_LOAD 0x8000
+
+/* this is a store operand */
+#define ARC_OPERAND_STORE 0x10000
+
+/* Modifier values. */
+/* A dot is required before a suffix. Eg: .le */
+#define ARC_MOD_DOT 0x1000
+
+/* A normal register is allowed (not used, but here for completeness). */
+#define ARC_MOD_REG 0x2000
+
+/* An auxiliary register name is expected. */
+#define ARC_MOD_AUXREG 0x4000
+
+/* Sum of all ARC_MOD_XXX bits. */
+#define ARC_MOD_BITS 0x7000
+
+/* Non-zero if the operand type is really a modifier. */
+#define ARC_MOD_P(X) ((X) & ARC_MOD_BITS)
+
+/* enforce read/write only register restrictions */
+#define ARC_REGISTER_READONLY 0x01
+#define ARC_REGISTER_WRITEONLY 0x02
+#define ARC_REGISTER_NOSHORT_CUT 0x04
+
+/* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (p & ((1 << o->bits) - 1)) << o->shift;
+ (I is the instruction which we are filling in, O is a pointer to
+ this structure, and OP is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged.
+
+ REG is non-NULL when inserting a register value. */
+
+ arc_insn (*insert)
+ (arc_insn insn, const struct arc_operand *operand, int mods,
+ const struct arc_operand_value *reg, long value, const char **errmsg);
+
+/* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if ((o->flags & ARC_OPERAND_SIGNED) != 0
+ && (op & (1 << (o->bits - 1))) != 0)
+ op -= 1 << o->bits;
+ (I is the instruction, O is a pointer to this structure, and OP
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed.
+
+ INSN is a pointer to an array of two `arc_insn's. The first element is
+ the insn, the second is the limm if present.
+
+ Operands that have a printable form like registers and suffixes have
+ their struct arc_operand_value pointer stored in OPVAL. */
+
+ long (*extract)
+ (arc_insn *insn, const struct arc_operand *operand, int mods,
+ const struct arc_operand_value **opval, int *invalid);
+};
+
+/* Bits that say what version of cpu we have. These should be passed to
+ arc_init_opcode_tables. At present, all there is is the cpu type. */
+
+/* CPU number, given value passed to `arc_init_opcode_tables'. */
+#define ARC_HAVE_CPU(bits) ((bits) & ARC_MACH_CPU_MASK)
+/* MACH number, given value passed to `arc_init_opcode_tables'. */
+#define ARC_HAVE_MACH(bits) ((bits) & ARC_MACH_MASK)
+
+/* Special register values: */
+#define ARC_REG_SHIMM_UPDATE 61
+#define ARC_REG_SHIMM 63
+#define ARC_REG_LIMM 62
+
+/* Non-zero if REG is a constant marker. */
+#define ARC_REG_CONSTANT_P(REG) ((REG) >= 61)
+
+/* Positions and masks of various fields: */
+#define ARC_SHIFT_REGA 21
+#define ARC_SHIFT_REGB 15
+#define ARC_SHIFT_REGC 9
+#define ARC_MASK_REG 63
+
+/* Delay slot types. */
+#define ARC_DELAY_NONE 0 /* no delay slot */
+#define ARC_DELAY_NORMAL 1 /* delay slot in both cases */
+#define ARC_DELAY_JUMP 2 /* delay slot only if branch taken */
+
+/* Non-zero if X will fit in a signed 9 bit field. */
+#define ARC_SHIMM_CONST_P(x) ((long) (x) >= -256 && (long) (x) <= 255)
+
+extern const struct arc_operand arc_operands[];
+extern const int arc_operand_count;
+extern struct arc_opcode arc_opcodes[];
+extern const int arc_opcodes_count;
+extern const struct arc_operand_value arc_suffixes[];
+extern const int arc_suffixes_count;
+extern const struct arc_operand_value arc_reg_names[];
+extern const int arc_reg_names_count;
+extern unsigned char arc_operand_map[];
+
+/* Utility fns in arc-opc.c. */
+int arc_get_opcode_mach (int, int);
+
+/* `arc_opcode_init_tables' must be called before `arc_xxx_supported'. */
+void arc_opcode_init_tables (int);
+void arc_opcode_init_insert (void);
+void arc_opcode_init_extract (void);
+const struct arc_opcode *arc_opcode_lookup_asm (const char *);
+const struct arc_opcode *arc_opcode_lookup_dis (unsigned int);
+int arc_opcode_limm_p (long *);
+const struct arc_operand_value *arc_opcode_lookup_suffix
+ (const struct arc_operand *type, int value);
+int arc_opcode_supported (const struct arc_opcode *);
+int arc_opval_supported (const struct arc_operand_value *);
+int arc_limm_fixup_adjust (arc_insn);
+int arc_insn_is_j (arc_insn);
+int arc_insn_not_jl (arc_insn);
+int arc_operand_type (int);
+struct arc_operand_value *get_ext_suffix (char *);
+int arc_get_noshortcut_flag (void);
diff --git a/include/opcode/arm.h b/include/opcode/arm.h
new file mode 100644
index 000000000..dd90e2ac6
--- /dev/null
+++ b/include/opcode/arm.h
@@ -0,0 +1,96 @@
+/* ARM assembler/disassembler support.
+ Copyright 2004 Free Software Foundation, Inc.
+
+ This file is part of GDB and GAS.
+
+ GDB and GAS are free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 1, or (at
+ your option) any later version.
+
+ GDB and GAS are distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GDB or GAS; see the file COPYING. If not, write to the
+ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+/* The following bitmasks control CPU extensions: */
+#define ARM_EXT_V1 0x00000001 /* All processors (core set). */
+#define ARM_EXT_V2 0x00000002 /* Multiply instructions. */
+#define ARM_EXT_V2S 0x00000004 /* SWP instructions. */
+#define ARM_EXT_V3 0x00000008 /* MSR MRS. */
+#define ARM_EXT_V3M 0x00000010 /* Allow long multiplies. */
+#define ARM_EXT_V4 0x00000020 /* Allow half word loads. */
+#define ARM_EXT_V4T 0x00000040 /* Thumb v1. */
+#define ARM_EXT_V5 0x00000080 /* Allow CLZ, etc. */
+#define ARM_EXT_V5T 0x00000100 /* Thumb v2. */
+#define ARM_EXT_V5ExP 0x00000200 /* DSP core set. */
+#define ARM_EXT_V5E 0x00000400 /* DSP Double transfers. */
+#define ARM_EXT_V5J 0x00000800 /* Jazelle extension. */
+#define ARM_EXT_V6 0x00001000 /* ARM V6. */
+#define ARM_EXT_V6K 0x00002000 /* ARM V6K. */
+#define ARM_EXT_V6Z 0x00004000 /* ARM V6Z. */
+
+/* Co-processor space extensions. */
+#define ARM_CEXT_XSCALE 0x00800000 /* Allow MIA etc. */
+#define ARM_CEXT_MAVERICK 0x00400000 /* Use Cirrus/DSP coprocessor. */
+#define ARM_CEXT_IWMMXT 0x00200000 /* Intel Wireless MMX technology coprocessor. */
+
+/* Architectures are the sum of the base and extensions. The ARM ARM (rev E)
+ defines the following: ARMv3, ARMv3M, ARMv4xM, ARMv4, ARMv4TxM, ARMv4T,
+ ARMv5xM, ARMv5, ARMv5TxM, ARMv5T, ARMv5TExP, ARMv5TE. To these we add
+ three more to cover cores prior to ARM6. Finally, there are cores which
+ implement further extensions in the co-processor space. */
+#define ARM_ARCH_V1 ARM_EXT_V1
+#define ARM_ARCH_V2 (ARM_ARCH_V1 | ARM_EXT_V2)
+#define ARM_ARCH_V2S (ARM_ARCH_V2 | ARM_EXT_V2S)
+#define ARM_ARCH_V3 (ARM_ARCH_V2S | ARM_EXT_V3)
+#define ARM_ARCH_V3M (ARM_ARCH_V3 | ARM_EXT_V3M)
+#define ARM_ARCH_V4xM (ARM_ARCH_V3 | ARM_EXT_V4)
+#define ARM_ARCH_V4 (ARM_ARCH_V3M | ARM_EXT_V4)
+#define ARM_ARCH_V4TxM (ARM_ARCH_V4xM | ARM_EXT_V4T)
+#define ARM_ARCH_V4T (ARM_ARCH_V4 | ARM_EXT_V4T)
+#define ARM_ARCH_V5xM (ARM_ARCH_V4xM | ARM_EXT_V5)
+#define ARM_ARCH_V5 (ARM_ARCH_V4 | ARM_EXT_V5)
+#define ARM_ARCH_V5TxM (ARM_ARCH_V5xM | ARM_EXT_V4T | ARM_EXT_V5T)
+#define ARM_ARCH_V5T (ARM_ARCH_V5 | ARM_EXT_V4T | ARM_EXT_V5T)
+#define ARM_ARCH_V5TExP (ARM_ARCH_V5T | ARM_EXT_V5ExP)
+#define ARM_ARCH_V5TE (ARM_ARCH_V5TExP | ARM_EXT_V5E)
+#define ARM_ARCH_V5TEJ (ARM_ARCH_V5TE | ARM_EXT_V5J)
+#define ARM_ARCH_V6 (ARM_ARCH_V5TEJ | ARM_EXT_V6)
+#define ARM_ARCH_V6K (ARM_ARCH_V6 | ARM_EXT_V6K)
+#define ARM_ARCH_V6Z (ARM_ARCH_V6 | ARM_EXT_V6Z)
+#define ARM_ARCH_V6ZK (ARM_ARCH_V6 | ARM_EXT_V6K | ARM_EXT_V6Z)
+
+/* Processors with specific extensions in the co-processor space. */
+#define ARM_ARCH_XSCALE (ARM_ARCH_V5TE | ARM_CEXT_XSCALE)
+#define ARM_ARCH_IWMMXT (ARM_ARCH_XSCALE | ARM_CEXT_IWMMXT)
+
+#define FPU_FPA_EXT_V1 0x80000000 /* Base FPA instruction set. */
+#define FPU_FPA_EXT_V2 0x40000000 /* LFM/SFM. */
+#define FPU_VFP_EXT_NONE 0x20000000 /* Use VFP word-ordering. */
+#define FPU_VFP_EXT_V1xD 0x10000000 /* Base VFP instruction set. */
+#define FPU_VFP_EXT_V1 0x08000000 /* Double-precision insns. */
+#define FPU_VFP_EXT_V2 0x04000000 /* ARM10E VFPr1. */
+#define FPU_MAVERICK 0x02000000 /* Cirrus Maverick. */
+#define FPU_NONE 0
+
+#define FPU_ARCH_FPE FPU_FPA_EXT_V1
+#define FPU_ARCH_FPA (FPU_ARCH_FPE | FPU_FPA_EXT_V2)
+
+#define FPU_ARCH_VFP FPU_VFP_EXT_NONE
+#define FPU_ARCH_VFP_V1xD (FPU_VFP_EXT_V1xD | FPU_VFP_EXT_NONE)
+#define FPU_ARCH_VFP_V1 (FPU_ARCH_VFP_V1xD | FPU_VFP_EXT_V1)
+#define FPU_ARCH_VFP_V2 (FPU_ARCH_VFP_V1 | FPU_VFP_EXT_V2)
+
+#define FPU_ARCH_MAVERICK FPU_MAVERICK
+
+/* Some useful combinations: */
+#define ARM_ANY 0x0000ffff /* Any basic core. */
+#define ARM_ALL 0x00ffffff /* Any core + co-processor */
+#define CPROC_ANY 0x00ff0000 /* Any co-processor */
+#define FPU_ANY 0xff000000 /* Note this is ~ARM_ALL. */
diff --git a/include/opcode/avr.h b/include/opcode/avr.h
new file mode 100644
index 000000000..463482348
--- /dev/null
+++ b/include/opcode/avr.h
@@ -0,0 +1,265 @@
+/* Opcode table for the Atmel AVR micro controllers.
+
+ Copyright 2000 Free Software Foundation, Inc.
+ Contributed by Denis Chertykov <denisc@overta.ru>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define AVR_ISA_1200 0x0001 /* in the beginning there was ... */
+#define AVR_ISA_LPM 0x0002 /* device has LPM */
+#define AVR_ISA_LPMX 0x0004 /* device has LPM Rd,Z[+] */
+#define AVR_ISA_SRAM 0x0008 /* device has SRAM (LD, ST, PUSH, POP, ...) */
+#define AVR_ISA_MEGA 0x0020 /* device has >8K program memory (JMP and CALL
+ supported, no 8K wrap on RJMP and RCALL) */
+#define AVR_ISA_MUL 0x0040 /* device has new core (MUL, FMUL, ...) */
+#define AVR_ISA_ELPM 0x0080 /* device has >64K program memory (ELPM) */
+#define AVR_ISA_ELPMX 0x0100 /* device has ELPM Rd,Z[+] */
+#define AVR_ISA_SPM 0x0200 /* device can program itself */
+#define AVR_ISA_BRK 0x0400 /* device has BREAK (on-chip debug) */
+#define AVR_ISA_EIND 0x0800 /* device has >128K program memory (none yet) */
+#define AVR_ISA_MOVW 0x1000 /* device has MOVW */
+
+#define AVR_ISA_TINY1 (AVR_ISA_1200 | AVR_ISA_LPM)
+#define AVR_ISA_2xxx (AVR_ISA_TINY1 | AVR_ISA_SRAM)
+#define AVR_ISA_TINY2 (AVR_ISA_2xxx | AVR_ISA_MOVW | AVR_ISA_LPMX | \
+ AVR_ISA_SPM | AVR_ISA_BRK)
+#define AVR_ISA_M8 (AVR_ISA_2xxx | AVR_ISA_MUL | AVR_ISA_MOVW | \
+ AVR_ISA_LPMX | AVR_ISA_SPM)
+#define AVR_ISA_M603 (AVR_ISA_2xxx | AVR_ISA_MEGA)
+#define AVR_ISA_M103 (AVR_ISA_M603 | AVR_ISA_ELPM)
+#define AVR_ISA_M161 (AVR_ISA_M603 | AVR_ISA_MUL | AVR_ISA_MOVW | \
+ AVR_ISA_LPMX | AVR_ISA_SPM)
+#define AVR_ISA_94K (AVR_ISA_M603 | AVR_ISA_MUL | AVR_ISA_MOVW | AVR_ISA_LPMX)
+#define AVR_ISA_M323 (AVR_ISA_M161 | AVR_ISA_BRK)
+#define AVR_ISA_M128 (AVR_ISA_M323 | AVR_ISA_ELPM | AVR_ISA_ELPMX)
+
+#define AVR_ISA_ALL 0xFFFF
+
+#define REGISTER_P(x) ((x) == 'r' \
+ || (x) == 'd' \
+ || (x) == 'w' \
+ || (x) == 'a' \
+ || (x) == 'v')
+
+/* Undefined combination of operands - does the register
+ operand overlap with pre-decremented or post-incremented
+ pointer register (like ld r31,Z+)? */
+#define AVR_UNDEF_P(x) (((x) & 0xFFED) == 0x91E5 || \
+ ((x) & 0xFDEF) == 0x91AD || ((x) & 0xFDEF) == 0x91AE || \
+ ((x) & 0xFDEF) == 0x91C9 || ((x) & 0xFDEF) == 0x91CA || \
+ ((x) & 0xFDEF) == 0x91E1 || ((x) & 0xFDEF) == 0x91E2)
+
+/* Is this a skip instruction {cpse,sbic,sbis,sbrc,sbrs}? */
+#define AVR_SKIP_P(x) (((x) & 0xFC00) == 0x1000 || \
+ ((x) & 0xFD00) == 0x9900 || ((x) & 0xFC08) == 0xFC00)
+
+/* Is this `ldd r,b+0' or `std b+0,r' (b={Y,Z}, disassembled as
+ `ld r,b' or `st b,r' respectively - next opcode entry)? */
+#define AVR_DISP0_P(x) (((x) & 0xFC07) == 0x8000)
+
+/* constraint letters
+ r - any register
+ d - `ldi' register (r16-r31)
+ v - `movw' even register (r0, r2, ..., r28, r30)
+ a - `fmul' register (r16-r23)
+ w - `adiw' register (r24,r26,r28,r30)
+ e - pointer registers (X,Y,Z)
+ b - base pointer register and displacement ([YZ]+disp)
+ z - Z pointer register (for [e]lpm Rd,Z[+])
+ M - immediate value from 0 to 255
+ n - immediate value from 0 to 255 ( n = ~M ). Relocation impossible
+ s - immediate value from 0 to 7
+ P - Port address value from 0 to 63. (in, out)
+ p - Port address value from 0 to 31. (cbi, sbi, sbic, sbis)
+ K - immediate value from 0 to 63 (used in `adiw', `sbiw')
+ i - immediate value
+ l - signed pc relative offset from -64 to 63
+ L - signed pc relative offset from -2048 to 2047
+ h - absolute code address (call, jmp)
+ S - immediate value from 0 to 7 (S = s << 4)
+ ? - use this opcode entry if no parameters, else use next opcode entry
+
+ Order is important - some binary opcodes have more than one name,
+ the disassembler will only see the first match.
+
+ Remaining undefined opcodes (1699 total - some of them might work
+ as normal instructions if not all of the bits are decoded):
+
+ 0x0001...0x00ff (255) (known to be decoded as `nop' by the old core)
+ "100100xxxxxxx011" (128) 0x9[0-3][0-9a-f][3b]
+ "100100xxxxxx1000" (64) 0x9[0-3][0-9a-f]8
+ "1001001xxxxx01xx" (128) 0x9[23][0-9a-f][4-7]
+ "1001010xxxxx0100" (32) 0x9[45][0-9a-f]4
+ "1001010x001x1001" (4) 0x9[45][23]9
+ "1001010x01xx1001" (8) 0x9[45][4-7]9
+ "1001010x1xxx1001" (16) 0x9[45][8-9a-f]9
+ "1001010xxxxx1011" (32) 0x9[45][0-9a-f]b
+ "10010101001x1000" (2) 0x95[23]8
+ "1001010101xx1000" (4) 0x95[4-7]8
+ "1001010110111000" (1) 0x95b8
+ "1001010111111000" (1) 0x95f8 (`espm' removed in databook update)
+ "11111xxxxxxx1xxx" (1024) 0xf[8-9a-f][0-9a-f][8-9a-f]
+ */
+
+AVR_INSN (clc, "", "1001010010001000", 1, AVR_ISA_1200, 0x9488)
+AVR_INSN (clh, "", "1001010011011000", 1, AVR_ISA_1200, 0x94d8)
+AVR_INSN (cli, "", "1001010011111000", 1, AVR_ISA_1200, 0x94f8)
+AVR_INSN (cln, "", "1001010010101000", 1, AVR_ISA_1200, 0x94a8)
+AVR_INSN (cls, "", "1001010011001000", 1, AVR_ISA_1200, 0x94c8)
+AVR_INSN (clt, "", "1001010011101000", 1, AVR_ISA_1200, 0x94e8)
+AVR_INSN (clv, "", "1001010010111000", 1, AVR_ISA_1200, 0x94b8)
+AVR_INSN (clz, "", "1001010010011000", 1, AVR_ISA_1200, 0x9498)
+
+AVR_INSN (sec, "", "1001010000001000", 1, AVR_ISA_1200, 0x9408)
+AVR_INSN (seh, "", "1001010001011000", 1, AVR_ISA_1200, 0x9458)
+AVR_INSN (sei, "", "1001010001111000", 1, AVR_ISA_1200, 0x9478)
+AVR_INSN (sen, "", "1001010000101000", 1, AVR_ISA_1200, 0x9428)
+AVR_INSN (ses, "", "1001010001001000", 1, AVR_ISA_1200, 0x9448)
+AVR_INSN (set, "", "1001010001101000", 1, AVR_ISA_1200, 0x9468)
+AVR_INSN (sev, "", "1001010000111000", 1, AVR_ISA_1200, 0x9438)
+AVR_INSN (sez, "", "1001010000011000", 1, AVR_ISA_1200, 0x9418)
+
+ /* Same as {cl,se}[chinstvz] above. */
+AVR_INSN (bclr, "S", "100101001SSS1000", 1, AVR_ISA_1200, 0x9488)
+AVR_INSN (bset, "S", "100101000SSS1000", 1, AVR_ISA_1200, 0x9408)
+
+AVR_INSN (icall,"", "1001010100001001", 1, AVR_ISA_2xxx, 0x9509)
+AVR_INSN (ijmp, "", "1001010000001001", 1, AVR_ISA_2xxx, 0x9409)
+
+AVR_INSN (lpm, "?", "1001010111001000", 1, AVR_ISA_TINY1,0x95c8)
+AVR_INSN (lpm, "r,z", "1001000ddddd010+", 1, AVR_ISA_LPMX, 0x9004)
+AVR_INSN (elpm, "?", "1001010111011000", 1, AVR_ISA_ELPM, 0x95d8)
+AVR_INSN (elpm, "r,z", "1001000ddddd011+", 1, AVR_ISA_ELPMX,0x9006)
+
+AVR_INSN (nop, "", "0000000000000000", 1, AVR_ISA_1200, 0x0000)
+AVR_INSN (ret, "", "1001010100001000", 1, AVR_ISA_1200, 0x9508)
+AVR_INSN (reti, "", "1001010100011000", 1, AVR_ISA_1200, 0x9518)
+AVR_INSN (sleep,"", "1001010110001000", 1, AVR_ISA_1200, 0x9588)
+AVR_INSN (break,"", "1001010110011000", 1, AVR_ISA_BRK, 0x9598)
+AVR_INSN (wdr, "", "1001010110101000", 1, AVR_ISA_1200, 0x95a8)
+AVR_INSN (spm, "", "1001010111101000", 1, AVR_ISA_SPM, 0x95e8)
+
+AVR_INSN (adc, "r,r", "000111rdddddrrrr", 1, AVR_ISA_1200, 0x1c00)
+AVR_INSN (add, "r,r", "000011rdddddrrrr", 1, AVR_ISA_1200, 0x0c00)
+AVR_INSN (and, "r,r", "001000rdddddrrrr", 1, AVR_ISA_1200, 0x2000)
+AVR_INSN (cp, "r,r", "000101rdddddrrrr", 1, AVR_ISA_1200, 0x1400)
+AVR_INSN (cpc, "r,r", "000001rdddddrrrr", 1, AVR_ISA_1200, 0x0400)
+AVR_INSN (cpse, "r,r", "000100rdddddrrrr", 1, AVR_ISA_1200, 0x1000)
+AVR_INSN (eor, "r,r", "001001rdddddrrrr", 1, AVR_ISA_1200, 0x2400)
+AVR_INSN (mov, "r,r", "001011rdddddrrrr", 1, AVR_ISA_1200, 0x2c00)
+AVR_INSN (mul, "r,r", "100111rdddddrrrr", 1, AVR_ISA_MUL, 0x9c00)
+AVR_INSN (or, "r,r", "001010rdddddrrrr", 1, AVR_ISA_1200, 0x2800)
+AVR_INSN (sbc, "r,r", "000010rdddddrrrr", 1, AVR_ISA_1200, 0x0800)
+AVR_INSN (sub, "r,r", "000110rdddddrrrr", 1, AVR_ISA_1200, 0x1800)
+
+ /* Shorthand for {eor,add,adc,and} r,r above. */
+AVR_INSN (clr, "r=r", "001001rdddddrrrr", 1, AVR_ISA_1200, 0x2400)
+AVR_INSN (lsl, "r=r", "000011rdddddrrrr", 1, AVR_ISA_1200, 0x0c00)
+AVR_INSN (rol, "r=r", "000111rdddddrrrr", 1, AVR_ISA_1200, 0x1c00)
+AVR_INSN (tst, "r=r", "001000rdddddrrrr", 1, AVR_ISA_1200, 0x2000)
+
+AVR_INSN (andi, "d,M", "0111KKKKddddKKKK", 1, AVR_ISA_1200, 0x7000)
+ /*XXX special case*/
+AVR_INSN (cbr, "d,n", "0111KKKKddddKKKK", 1, AVR_ISA_1200, 0x7000)
+
+AVR_INSN (ldi, "d,M", "1110KKKKddddKKKK", 1, AVR_ISA_1200, 0xe000)
+AVR_INSN (ser, "d", "11101111dddd1111", 1, AVR_ISA_1200, 0xef0f)
+
+AVR_INSN (ori, "d,M", "0110KKKKddddKKKK", 1, AVR_ISA_1200, 0x6000)
+AVR_INSN (sbr, "d,M", "0110KKKKddddKKKK", 1, AVR_ISA_1200, 0x6000)
+
+AVR_INSN (cpi, "d,M", "0011KKKKddddKKKK", 1, AVR_ISA_1200, 0x3000)
+AVR_INSN (sbci, "d,M", "0100KKKKddddKKKK", 1, AVR_ISA_1200, 0x4000)
+AVR_INSN (subi, "d,M", "0101KKKKddddKKKK", 1, AVR_ISA_1200, 0x5000)
+
+AVR_INSN (sbrc, "r,s", "1111110rrrrr0sss", 1, AVR_ISA_1200, 0xfc00)
+AVR_INSN (sbrs, "r,s", "1111111rrrrr0sss", 1, AVR_ISA_1200, 0xfe00)
+AVR_INSN (bld, "r,s", "1111100ddddd0sss", 1, AVR_ISA_1200, 0xf800)
+AVR_INSN (bst, "r,s", "1111101ddddd0sss", 1, AVR_ISA_1200, 0xfa00)
+
+AVR_INSN (in, "r,P", "10110PPdddddPPPP", 1, AVR_ISA_1200, 0xb000)
+AVR_INSN (out, "P,r", "10111PPrrrrrPPPP", 1, AVR_ISA_1200, 0xb800)
+
+AVR_INSN (adiw, "w,K", "10010110KKddKKKK", 1, AVR_ISA_2xxx, 0x9600)
+AVR_INSN (sbiw, "w,K", "10010111KKddKKKK", 1, AVR_ISA_2xxx, 0x9700)
+
+AVR_INSN (cbi, "p,s", "10011000pppppsss", 1, AVR_ISA_1200, 0x9800)
+AVR_INSN (sbi, "p,s", "10011010pppppsss", 1, AVR_ISA_1200, 0x9a00)
+AVR_INSN (sbic, "p,s", "10011001pppppsss", 1, AVR_ISA_1200, 0x9900)
+AVR_INSN (sbis, "p,s", "10011011pppppsss", 1, AVR_ISA_1200, 0x9b00)
+
+AVR_INSN (brcc, "l", "111101lllllll000", 1, AVR_ISA_1200, 0xf400)
+AVR_INSN (brcs, "l", "111100lllllll000", 1, AVR_ISA_1200, 0xf000)
+AVR_INSN (breq, "l", "111100lllllll001", 1, AVR_ISA_1200, 0xf001)
+AVR_INSN (brge, "l", "111101lllllll100", 1, AVR_ISA_1200, 0xf404)
+AVR_INSN (brhc, "l", "111101lllllll101", 1, AVR_ISA_1200, 0xf405)
+AVR_INSN (brhs, "l", "111100lllllll101", 1, AVR_ISA_1200, 0xf005)
+AVR_INSN (brid, "l", "111101lllllll111", 1, AVR_ISA_1200, 0xf407)
+AVR_INSN (brie, "l", "111100lllllll111", 1, AVR_ISA_1200, 0xf007)
+AVR_INSN (brlo, "l", "111100lllllll000", 1, AVR_ISA_1200, 0xf000)
+AVR_INSN (brlt, "l", "111100lllllll100", 1, AVR_ISA_1200, 0xf004)
+AVR_INSN (brmi, "l", "111100lllllll010", 1, AVR_ISA_1200, 0xf002)
+AVR_INSN (brne, "l", "111101lllllll001", 1, AVR_ISA_1200, 0xf401)
+AVR_INSN (brpl, "l", "111101lllllll010", 1, AVR_ISA_1200, 0xf402)
+AVR_INSN (brsh, "l", "111101lllllll000", 1, AVR_ISA_1200, 0xf400)
+AVR_INSN (brtc, "l", "111101lllllll110", 1, AVR_ISA_1200, 0xf406)
+AVR_INSN (brts, "l", "111100lllllll110", 1, AVR_ISA_1200, 0xf006)
+AVR_INSN (brvc, "l", "111101lllllll011", 1, AVR_ISA_1200, 0xf403)
+AVR_INSN (brvs, "l", "111100lllllll011", 1, AVR_ISA_1200, 0xf003)
+
+ /* Same as br?? above. */
+AVR_INSN (brbc, "s,l", "111101lllllllsss", 1, AVR_ISA_1200, 0xf400)
+AVR_INSN (brbs, "s,l", "111100lllllllsss", 1, AVR_ISA_1200, 0xf000)
+
+AVR_INSN (rcall, "L", "1101LLLLLLLLLLLL", 1, AVR_ISA_1200, 0xd000)
+AVR_INSN (rjmp, "L", "1100LLLLLLLLLLLL", 1, AVR_ISA_1200, 0xc000)
+
+AVR_INSN (call, "h", "1001010hhhhh111h", 2, AVR_ISA_MEGA, 0x940e)
+AVR_INSN (jmp, "h", "1001010hhhhh110h", 2, AVR_ISA_MEGA, 0x940c)
+
+AVR_INSN (asr, "r", "1001010rrrrr0101", 1, AVR_ISA_1200, 0x9405)
+AVR_INSN (com, "r", "1001010rrrrr0000", 1, AVR_ISA_1200, 0x9400)
+AVR_INSN (dec, "r", "1001010rrrrr1010", 1, AVR_ISA_1200, 0x940a)
+AVR_INSN (inc, "r", "1001010rrrrr0011", 1, AVR_ISA_1200, 0x9403)
+AVR_INSN (lsr, "r", "1001010rrrrr0110", 1, AVR_ISA_1200, 0x9406)
+AVR_INSN (neg, "r", "1001010rrrrr0001", 1, AVR_ISA_1200, 0x9401)
+AVR_INSN (pop, "r", "1001000rrrrr1111", 1, AVR_ISA_2xxx, 0x900f)
+AVR_INSN (push, "r", "1001001rrrrr1111", 1, AVR_ISA_2xxx, 0x920f)
+AVR_INSN (ror, "r", "1001010rrrrr0111", 1, AVR_ISA_1200, 0x9407)
+AVR_INSN (swap, "r", "1001010rrrrr0010", 1, AVR_ISA_1200, 0x9402)
+
+ /* Known to be decoded as `nop' by the old core. */
+AVR_INSN (movw, "v,v", "00000001ddddrrrr", 1, AVR_ISA_MOVW, 0x0100)
+AVR_INSN (muls, "d,d", "00000010ddddrrrr", 1, AVR_ISA_MUL, 0x0200)
+AVR_INSN (mulsu,"a,a", "000000110ddd0rrr", 1, AVR_ISA_MUL, 0x0300)
+AVR_INSN (fmul, "a,a", "000000110ddd1rrr", 1, AVR_ISA_MUL, 0x0308)
+AVR_INSN (fmuls,"a,a", "000000111ddd0rrr", 1, AVR_ISA_MUL, 0x0380)
+AVR_INSN (fmulsu,"a,a","000000111ddd1rrr", 1, AVR_ISA_MUL, 0x0388)
+
+AVR_INSN (sts, "i,r", "1001001ddddd0000", 2, AVR_ISA_2xxx, 0x9200)
+AVR_INSN (lds, "r,i", "1001000ddddd0000", 2, AVR_ISA_2xxx, 0x9000)
+
+ /* Special case for b+0, `e' must be next entry after `b',
+ b={Y=1,Z=0}, ee={X=11,Y=10,Z=00}, !=1 if -e or e+ or X. */
+AVR_INSN (ldd, "r,b", "10o0oo0dddddbooo", 1, AVR_ISA_2xxx, 0x8000)
+AVR_INSN (ld, "r,e", "100!000dddddee-+", 1, AVR_ISA_1200, 0x8000)
+AVR_INSN (std, "b,r", "10o0oo1rrrrrbooo", 1, AVR_ISA_2xxx, 0x8200)
+AVR_INSN (st, "e,r", "100!001rrrrree-+", 1, AVR_ISA_1200, 0x8200)
+
+ /* These are for devices that don't exist yet
+ (>128K program memory, PC = EIND:Z). */
+AVR_INSN (eicall, "", "1001010100011001", 1, AVR_ISA_EIND, 0x9519)
+AVR_INSN (eijmp, "", "1001010000011001", 1, AVR_ISA_EIND, 0x9419)
+
diff --git a/include/opcode/cgen.h b/include/opcode/cgen.h
new file mode 100644
index 000000000..16366fd0d
--- /dev/null
+++ b/include/opcode/cgen.h
@@ -0,0 +1,1460 @@
+/* Header file for targets using CGEN: Cpu tools GENerator.
+
+Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002
+Free Software Foundation, Inc.
+
+This file is part of GDB, the GNU debugger, and the GNU Binutils.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef CGEN_H
+#define CGEN_H
+
+/* ??? This file requires bfd.h but only to get bfd_vma.
+ Seems like an awful lot to require just to get such a fundamental type.
+ Perhaps the definition of bfd_vma can be moved outside of bfd.h.
+ Or perhaps one could duplicate its definition in another file.
+ Until such time, this file conditionally compiles definitions that require
+ bfd_vma using __BFD_H_SEEN__. */
+
+/* Enums must be defined before they can be used.
+ Allow them to be used in struct definitions, even though the enum must
+ be defined elsewhere.
+ If CGEN_ARCH isn't defined, this file is being included by something other
+ than <arch>-desc.h. */
+
+/* Prepend the arch name, defined in <arch>-desc.h, and _cgen_ to symbol S.
+ The lack of spaces in the arg list is important for non-stdc systems.
+ This file is included by <arch>-desc.h.
+ It can be included independently of <arch>-desc.h, in which case the arch
+ dependent portions will be declared as "unknown_cgen_foo". */
+
+#ifndef CGEN_SYM
+#define CGEN_SYM(s) CONCAT3 (unknown,_cgen_,s)
+#endif
+
+/* This file contains the static (unchanging) pieces and as much other stuff
+ as we can reasonably put here. It's generally cleaner to put stuff here
+ rather than having it machine generated if possible. */
+
+/* The assembler syntax is made up of expressions (duh...).
+ At the lowest level the values are mnemonics, register names, numbers, etc.
+ Above that are subexpressions, if any (an example might be the
+ "effective address" in m68k cpus). Subexpressions are wip.
+ At the second highest level are the insns themselves. Above that are
+ pseudo-insns, synthetic insns, and macros, if any. */
+
+/* Lots of cpu's have a fixed insn size, or one which rarely changes,
+ and it's generally easier to handle these by treating the insn as an
+ integer type, rather than an array of characters. So we allow targets
+ to control this. When an integer type the value is in host byte order,
+ when an array of characters the value is in target byte order. */
+
+typedef unsigned int CGEN_INSN_INT;
+#if CGEN_INT_INSN_P
+typedef CGEN_INSN_INT CGEN_INSN_BYTES;
+typedef CGEN_INSN_INT *CGEN_INSN_BYTES_PTR;
+#else
+typedef unsigned char *CGEN_INSN_BYTES;
+typedef unsigned char *CGEN_INSN_BYTES_PTR;
+#endif
+
+#ifdef __GNUC__
+#define CGEN_INLINE __inline__
+#else
+#define CGEN_INLINE
+#endif
+
+enum cgen_endian
+{
+ CGEN_ENDIAN_UNKNOWN,
+ CGEN_ENDIAN_LITTLE,
+ CGEN_ENDIAN_BIG
+};
+
+/* Forward decl. */
+
+typedef struct cgen_insn CGEN_INSN;
+
+/* Opaque pointer version for use by external world. */
+
+typedef struct cgen_cpu_desc *CGEN_CPU_DESC;
+
+/* Attributes.
+ Attributes are used to describe various random things associated with
+ an object (ifield, hardware, operand, insn, whatever) and are specified
+ as name/value pairs.
+ Integer attributes computed at compile time are currently all that's
+ supported, though adding string attributes and run-time computation is
+ straightforward. Integer attribute values are always host int's
+ (signed or unsigned). For portability, this means 32 bits.
+ Integer attributes are further categorized as boolean, bitset, integer,
+ and enum types. Boolean attributes appear frequently enough that they're
+ recorded in one host int. This limits the maximum number of boolean
+ attributes to 32, though that's a *lot* of attributes. */
+
+/* Type of attribute values. */
+
+typedef int CGEN_ATTR_VALUE_TYPE;
+
+/* Struct to record attribute information. */
+
+typedef struct
+{
+ /* Boolean attributes. */
+ unsigned int bool;
+ /* Non-boolean integer attributes. */
+ CGEN_ATTR_VALUE_TYPE nonbool[1];
+} CGEN_ATTR;
+
+/* Define a structure member for attributes with N non-boolean entries.
+ There is no maximum number of non-boolean attributes.
+ There is a maximum of 32 boolean attributes (since they are all recorded
+ in one host int). */
+
+#define CGEN_ATTR_TYPE(n) \
+struct { unsigned int bool; \
+ CGEN_ATTR_VALUE_TYPE nonbool[(n) ? (n) : 1]; }
+
+/* Return the boolean attributes. */
+
+#define CGEN_ATTR_BOOLS(a) ((a)->bool)
+
+/* Non-boolean attribute numbers are offset by this much. */
+
+#define CGEN_ATTR_NBOOL_OFFSET 32
+
+/* Given a boolean attribute number, return its mask. */
+
+#define CGEN_ATTR_MASK(attr) (1 << (attr))
+
+/* Return the value of boolean attribute ATTR in ATTRS. */
+
+#define CGEN_BOOL_ATTR(attrs, attr) ((CGEN_ATTR_MASK (attr) & (attrs)) != 0)
+
+/* Return value of attribute ATTR in ATTR_TABLE for OBJ.
+ OBJ is a pointer to the entity that has the attributes
+ (??? not used at present but is reserved for future purposes - eventually
+ the goal is to allow recording attributes in source form and computing
+ them lazily at runtime, not sure of the details yet). */
+
+#define CGEN_ATTR_VALUE(obj, attr_table, attr) \
+((unsigned int) (attr) < CGEN_ATTR_NBOOL_OFFSET \
+ ? ((CGEN_ATTR_BOOLS (attr_table) & CGEN_ATTR_MASK (attr)) != 0) \
+ : ((attr_table)->nonbool[(attr) - CGEN_ATTR_NBOOL_OFFSET]))
+
+/* Attribute name/value tables.
+ These are used to assist parsing of descriptions at run-time. */
+
+typedef struct
+{
+ const char * name;
+ CGEN_ATTR_VALUE_TYPE value;
+} CGEN_ATTR_ENTRY;
+
+/* For each domain (ifld,hw,operand,insn), list of attributes. */
+
+typedef struct
+{
+ const char * name;
+ const CGEN_ATTR_ENTRY * dfault;
+ const CGEN_ATTR_ENTRY * vals;
+} CGEN_ATTR_TABLE;
+
+/* Instruction set variants. */
+
+typedef struct {
+ const char *name;
+
+ /* Default instruction size (in bits).
+ This is used by the assembler when it encounters an unknown insn. */
+ unsigned int default_insn_bitsize;
+
+ /* Base instruction size (in bits).
+ For non-LIW cpus this is generally the length of the smallest insn.
+ For LIW cpus its wip (work-in-progress). For the m32r its 32. */
+ unsigned int base_insn_bitsize;
+
+ /* Minimum/maximum instruction size (in bits). */
+ unsigned int min_insn_bitsize;
+ unsigned int max_insn_bitsize;
+} CGEN_ISA;
+
+/* Machine variants. */
+
+typedef struct {
+ const char *name;
+ /* The argument to bfd_arch_info->scan. */
+ const char *bfd_name;
+ /* one of enum mach_attr */
+ int num;
+ /* parameter from mach->cpu */
+ unsigned int insn_chunk_bitsize;
+} CGEN_MACH;
+
+/* Parse result (also extraction result).
+
+ The result of parsing an insn is stored here.
+ To generate the actual insn, this is passed to the insert handler.
+ When printing an insn, the result of extraction is stored here.
+ To print the insn, this is passed to the print handler.
+
+ It is machine generated so we don't define it here,
+ but we do need a forward decl for the handler fns.
+
+ There is one member for each possible field in the insn.
+ The type depends on the field.
+ Also recorded here is the computed length of the insn for architectures
+ where it varies.
+*/
+
+typedef struct cgen_fields CGEN_FIELDS;
+
+/* Total length of the insn, as recorded in the `fields' struct. */
+/* ??? The field insert handler has lots of opportunities for optimization
+ if it ever gets inlined. On architectures where insns all have the same
+ size, may wish to detect that and make this macro a constant - to allow
+ further optimizations. */
+
+#define CGEN_FIELDS_BITSIZE(fields) ((fields)->length)
+
+/* Extraction support for variable length insn sets. */
+
+/* When disassembling we don't know the number of bytes to read at the start.
+ So the first CGEN_BASE_INSN_SIZE bytes are read at the start and the rest
+ are read when needed. This struct controls this. It is basically the
+ disassemble_info stuff, except that we provide a cache for values already
+ read (since bytes can typically be read several times to fetch multiple
+ operands that may be in them), and that extraction of fields is needed
+ in contexts other than disassembly. */
+
+typedef struct {
+ /* A pointer to the disassemble_info struct.
+ We don't require dis-asm.h so we use void * for the type here.
+ If NULL, BYTES is full of valid data (VALID == -1). */
+ void *dis_info;
+ /* Points to a working buffer of sufficient size. */
+ unsigned char *insn_bytes;
+ /* Mask of bytes that are valid in INSN_BYTES. */
+ unsigned int valid;
+} CGEN_EXTRACT_INFO;
+
+/* Associated with each insn or expression is a set of "handlers" for
+ performing operations like parsing, printing, etc. These require a bfd_vma
+ value to be passed around but we don't want all applications to need bfd.h.
+ So this stuff is only provided if bfd.h has been included. */
+
+/* Parse handler.
+ CD is a cpu table descriptor.
+ INSN is a pointer to a struct describing the insn being parsed.
+ STRP is a pointer to a pointer to the text being parsed.
+ FIELDS is a pointer to a cgen_fields struct in which the results are placed.
+ If the expression is successfully parsed, *STRP is updated.
+ If not it is left alone.
+ The result is NULL if success or an error message. */
+typedef const char * (cgen_parse_fn)
+ (CGEN_CPU_DESC, const CGEN_INSN *insn_,
+ const char **strp_, CGEN_FIELDS *fields_);
+
+/* Insert handler.
+ CD is a cpu table descriptor.
+ INSN is a pointer to a struct describing the insn being parsed.
+ FIELDS is a pointer to a cgen_fields struct from which the values
+ are fetched.
+ INSNP is a pointer to a buffer in which to place the insn.
+ PC is the pc value of the insn.
+ The result is an error message or NULL if success. */
+
+#ifdef __BFD_H_SEEN__
+typedef const char * (cgen_insert_fn)
+ (CGEN_CPU_DESC, const CGEN_INSN *insn_,
+ CGEN_FIELDS *fields_, CGEN_INSN_BYTES_PTR insnp_,
+ bfd_vma pc_);
+#else
+typedef const char * (cgen_insert_fn) ();
+#endif
+
+/* Extract handler.
+ CD is a cpu table descriptor.
+ INSN is a pointer to a struct describing the insn being parsed.
+ The second argument is a pointer to a struct controlling extraction
+ (only used for variable length insns).
+ EX_INFO is a pointer to a struct for controlling reading of further
+ bytes for the insn.
+ BASE_INSN is the first CGEN_BASE_INSN_SIZE bytes (host order).
+ FIELDS is a pointer to a cgen_fields struct in which the results are placed.
+ PC is the pc value of the insn.
+ The result is the length of the insn in bits or zero if not recognized. */
+
+#ifdef __BFD_H_SEEN__
+typedef int (cgen_extract_fn)
+ (CGEN_CPU_DESC, const CGEN_INSN *insn_,
+ CGEN_EXTRACT_INFO *ex_info_, CGEN_INSN_INT base_insn_,
+ CGEN_FIELDS *fields_, bfd_vma pc_);
+#else
+typedef int (cgen_extract_fn) ();
+#endif
+
+/* Print handler.
+ CD is a cpu table descriptor.
+ INFO is a pointer to the disassembly info.
+ Eg: disassemble_info. It's defined as `PTR' so this file can be included
+ without dis-asm.h.
+ INSN is a pointer to a struct describing the insn being printed.
+ FIELDS is a pointer to a cgen_fields struct.
+ PC is the pc value of the insn.
+ LEN is the length of the insn, in bits. */
+
+#ifdef __BFD_H_SEEN__
+typedef void (cgen_print_fn)
+ (CGEN_CPU_DESC, void * info_, const CGEN_INSN *insn_,
+ CGEN_FIELDS *fields_, bfd_vma pc_, int len_);
+#else
+typedef void (cgen_print_fn) ();
+#endif
+
+/* Parse/insert/extract/print handlers.
+
+ Indices into the handler tables.
+ We could use pointers here instead, but 90% of them are generally identical
+ and that's a lot of redundant data. Making these unsigned char indices
+ into tables of pointers saves a bit of space.
+ Using indices also keeps assembler code out of the disassembler and
+ vice versa. */
+
+struct cgen_opcode_handler
+{
+ unsigned char parse, insert, extract, print;
+};
+
+/* Assembler interface.
+
+ The interface to the assembler is intended to be clean in the sense that
+ libopcodes.a is a standalone entity and could be used with any assembler.
+ Not that one would necessarily want to do that but rather that it helps
+ keep a clean interface. The interface will obviously be slanted towards
+ GAS, but at least it's a start.
+ ??? Note that one possible user of the assembler besides GAS is GDB.
+
+ Parsing is controlled by the assembler which calls
+ CGEN_SYM (assemble_insn). If it can parse and build the entire insn
+ it doesn't call back to the assembler. If it needs/wants to call back
+ to the assembler, cgen_parse_operand_fn is called which can either
+
+ - return a number to be inserted in the insn
+ - return a "register" value to be inserted
+ (the register might not be a register per pe)
+ - queue the argument and return a marker saying the expression has been
+ queued (eg: a fix-up)
+ - return an error message indicating the expression wasn't recognizable
+
+ The result is an error message or NULL for success.
+ The parsed value is stored in the bfd_vma *. */
+
+/* Values for indicating what the caller wants. */
+
+enum cgen_parse_operand_type
+{
+ CGEN_PARSE_OPERAND_INIT,
+ CGEN_PARSE_OPERAND_INTEGER,
+ CGEN_PARSE_OPERAND_ADDRESS
+};
+
+/* Values for indicating what was parsed. */
+
+enum cgen_parse_operand_result
+{
+ CGEN_PARSE_OPERAND_RESULT_NUMBER,
+ CGEN_PARSE_OPERAND_RESULT_REGISTER,
+ CGEN_PARSE_OPERAND_RESULT_QUEUED,
+ CGEN_PARSE_OPERAND_RESULT_ERROR
+};
+
+#ifdef __BFD_H_SEEN__ /* Don't require bfd.h unnecessarily. */
+typedef const char * (cgen_parse_operand_fn)
+ (CGEN_CPU_DESC,
+ enum cgen_parse_operand_type, const char **, int, int,
+ enum cgen_parse_operand_result *, bfd_vma *);
+#else
+typedef const char * (cgen_parse_operand_fn) ();
+#endif
+
+/* Set the cgen_parse_operand_fn callback. */
+
+extern void cgen_set_parse_operand_fn
+ (CGEN_CPU_DESC, cgen_parse_operand_fn);
+
+/* Called before trying to match a table entry with the insn. */
+
+extern void cgen_init_parse_operand (CGEN_CPU_DESC);
+
+/* Operand values (keywords, integers, symbols, etc.) */
+
+/* Types of assembler elements. */
+
+enum cgen_asm_type
+{
+ CGEN_ASM_NONE, CGEN_ASM_KEYWORD, CGEN_ASM_MAX
+};
+
+#ifndef CGEN_ARCH
+enum cgen_hw_type { CGEN_HW_MAX };
+#endif
+
+/* List of hardware elements. */
+
+typedef struct
+{
+ char *name;
+ enum cgen_hw_type type;
+ /* There is currently no example where both index specs and value specs
+ are required, so for now both are clumped under "asm_data". */
+ enum cgen_asm_type asm_type;
+ void *asm_data;
+#ifndef CGEN_HW_NBOOL_ATTRS
+#define CGEN_HW_NBOOL_ATTRS 1
+#endif
+ CGEN_ATTR_TYPE (CGEN_HW_NBOOL_ATTRS) attrs;
+#define CGEN_HW_ATTRS(hw) (&(hw)->attrs)
+} CGEN_HW_ENTRY;
+
+/* Return value of attribute ATTR in HW. */
+
+#define CGEN_HW_ATTR_VALUE(hw, attr) \
+CGEN_ATTR_VALUE ((hw), CGEN_HW_ATTRS (hw), (attr))
+
+/* Table of hardware elements for selected mach, computed at runtime.
+ enum cgen_hw_type is an index into this table (specifically `entries'). */
+
+typedef struct {
+ /* Pointer to null terminated table of all compiled in entries. */
+ const CGEN_HW_ENTRY *init_entries;
+ unsigned int entry_size; /* since the attribute member is variable sized */
+ /* Array of all entries, initial and run-time added. */
+ const CGEN_HW_ENTRY **entries;
+ /* Number of elements in `entries'. */
+ unsigned int num_entries;
+ /* For now, xrealloc is called each time a new entry is added at runtime.
+ ??? May wish to keep track of some slop to reduce the number of calls to
+ xrealloc, except that there's unlikely to be many and not expected to be
+ in speed critical code. */
+} CGEN_HW_TABLE;
+
+extern const CGEN_HW_ENTRY * cgen_hw_lookup_by_name
+ (CGEN_CPU_DESC, const char *);
+extern const CGEN_HW_ENTRY * cgen_hw_lookup_by_num
+ (CGEN_CPU_DESC, unsigned int);
+
+/* This struct is used to describe things like register names, etc. */
+
+typedef struct cgen_keyword_entry
+{
+ /* Name (as in register name). */
+ char * name;
+
+ /* Value (as in register number).
+ The value cannot be -1 as that is used to indicate "not found".
+ IDEA: Have "FUNCTION" attribute? [function is called to fetch value]. */
+ int value;
+
+ /* Attributes.
+ This should, but technically needn't, appear last. It is a variable sized
+ array in that one architecture may have 1 nonbool attribute and another
+ may have more. Having this last means the non-architecture specific code
+ needn't care. The goal is to eventually record
+ attributes in their raw form, evaluate them at run-time, and cache the
+ values, so this worry will go away anyway. */
+ /* ??? Moving this last should be done by treating keywords like insn lists
+ and moving the `next' fields into a CGEN_KEYWORD_LIST struct. */
+ /* FIXME: Not used yet. */
+#ifndef CGEN_KEYWORD_NBOOL_ATTRS
+#define CGEN_KEYWORD_NBOOL_ATTRS 1
+#endif
+ CGEN_ATTR_TYPE (CGEN_KEYWORD_NBOOL_ATTRS) attrs;
+
+ /* ??? Putting these here means compiled in entries can't be const.
+ Not a really big deal, but something to consider. */
+ /* Next name hash table entry. */
+ struct cgen_keyword_entry *next_name;
+ /* Next value hash table entry. */
+ struct cgen_keyword_entry *next_value;
+} CGEN_KEYWORD_ENTRY;
+
+/* Top level struct for describing a set of related keywords
+ (e.g. register names).
+
+ This struct supports run-time entry of new values, and hashed lookups. */
+
+typedef struct cgen_keyword
+{
+ /* Pointer to initial [compiled in] values. */
+ CGEN_KEYWORD_ENTRY *init_entries;
+
+ /* Number of entries in `init_entries'. */
+ unsigned int num_init_entries;
+
+ /* Hash table used for name lookup. */
+ CGEN_KEYWORD_ENTRY **name_hash_table;
+
+ /* Hash table used for value lookup. */
+ CGEN_KEYWORD_ENTRY **value_hash_table;
+
+ /* Number of entries in the hash_tables. */
+ unsigned int hash_table_size;
+
+ /* Pointer to null keyword "" entry if present. */
+ const CGEN_KEYWORD_ENTRY *null_entry;
+
+ /* String containing non-alphanumeric characters used
+ in keywords.
+ At present, the highest number of entries used is 1. */
+ char nonalpha_chars[8];
+} CGEN_KEYWORD;
+
+/* Structure used for searching. */
+
+typedef struct
+{
+ /* Table being searched. */
+ const CGEN_KEYWORD *table;
+
+ /* Specification of what is being searched for. */
+ const char *spec;
+
+ /* Current index in hash table. */
+ unsigned int current_hash;
+
+ /* Current element in current hash chain. */
+ CGEN_KEYWORD_ENTRY *current_entry;
+} CGEN_KEYWORD_SEARCH;
+
+/* Lookup a keyword from its name. */
+
+const CGEN_KEYWORD_ENTRY *cgen_keyword_lookup_name
+ (CGEN_KEYWORD *, const char *);
+
+/* Lookup a keyword from its value. */
+
+const CGEN_KEYWORD_ENTRY *cgen_keyword_lookup_value
+ (CGEN_KEYWORD *, int);
+
+/* Add a keyword. */
+
+void cgen_keyword_add (CGEN_KEYWORD *, CGEN_KEYWORD_ENTRY *);
+
+/* Keyword searching.
+ This can be used to retrieve every keyword, or a subset. */
+
+CGEN_KEYWORD_SEARCH cgen_keyword_search_init
+ (CGEN_KEYWORD *, const char *);
+const CGEN_KEYWORD_ENTRY *cgen_keyword_search_next
+ (CGEN_KEYWORD_SEARCH *);
+
+/* Operand value support routines. */
+
+extern const char *cgen_parse_keyword
+ (CGEN_CPU_DESC, const char **, CGEN_KEYWORD *, long *);
+#ifdef __BFD_H_SEEN__ /* Don't require bfd.h unnecessarily. */
+extern const char *cgen_parse_signed_integer
+ (CGEN_CPU_DESC, const char **, int, long *);
+extern const char *cgen_parse_unsigned_integer
+ (CGEN_CPU_DESC, const char **, int, unsigned long *);
+extern const char *cgen_parse_address
+ (CGEN_CPU_DESC, const char **, int, int,
+ enum cgen_parse_operand_result *, bfd_vma *);
+extern const char *cgen_validate_signed_integer
+ (long, long, long);
+extern const char *cgen_validate_unsigned_integer
+ (unsigned long, unsigned long, unsigned long);
+#endif
+
+/* Operand modes. */
+
+/* ??? This duplicates the values in arch.h. Revisit.
+ These however need the CGEN_ prefix [as does everything in this file]. */
+/* ??? Targets may need to add their own modes so we may wish to move this
+ to <arch>-opc.h, or add a hook. */
+
+enum cgen_mode {
+ CGEN_MODE_VOID, /* ??? rename simulator's VM to VOID? */
+ CGEN_MODE_BI, CGEN_MODE_QI, CGEN_MODE_HI, CGEN_MODE_SI, CGEN_MODE_DI,
+ CGEN_MODE_UBI, CGEN_MODE_UQI, CGEN_MODE_UHI, CGEN_MODE_USI, CGEN_MODE_UDI,
+ CGEN_MODE_SF, CGEN_MODE_DF, CGEN_MODE_XF, CGEN_MODE_TF,
+ CGEN_MODE_TARGET_MAX,
+ CGEN_MODE_INT, CGEN_MODE_UINT,
+ CGEN_MODE_MAX
+};
+
+/* FIXME: Until simulator is updated. */
+
+#define CGEN_MODE_VM CGEN_MODE_VOID
+
+/* Operands. */
+
+#ifndef CGEN_ARCH
+enum cgen_operand_type { CGEN_OPERAND_MAX };
+#endif
+
+/* "nil" indicator for the operand instance table */
+#define CGEN_OPERAND_NIL CGEN_OPERAND_MAX
+
+/* A tree of these structs represents the multi-ifield
+ structure of an operand's hw-index value, if it exists. */
+
+struct cgen_ifld;
+
+typedef struct cgen_maybe_multi_ifield
+{
+ int count; /* 0: indexed by single cgen_ifld (possibly null: dead entry);
+ n: indexed by array of more cgen_maybe_multi_ifields. */
+ union
+ {
+ const void *p;
+ const struct cgen_maybe_multi_ifield * multi;
+ const struct cgen_ifld * leaf;
+ } val;
+}
+CGEN_MAYBE_MULTI_IFLD;
+
+/* This struct defines each entry in the operand table. */
+
+typedef struct
+{
+ /* Name as it appears in the syntax string. */
+ char *name;
+
+ /* Operand type. */
+ enum cgen_operand_type type;
+
+ /* The hardware element associated with this operand. */
+ enum cgen_hw_type hw_type;
+
+ /* FIXME: We don't yet record ifield definitions, which we should.
+ When we do it might make sense to delete start/length (since they will
+ be duplicated in the ifield's definition) and replace them with a
+ pointer to the ifield entry. */
+
+ /* Bit position.
+ This is just a hint, and may be unused in more complex operands.
+ May be unused for a modifier. */
+ unsigned char start;
+
+ /* The number of bits in the operand.
+ This is just a hint, and may be unused in more complex operands.
+ May be unused for a modifier. */
+ unsigned char length;
+
+ /* The (possibly-multi) ifield used as an index for this operand, if it
+ is indexed by a field at all. This substitutes / extends the start and
+ length fields above, but unsure at this time whether they are used
+ anywhere. */
+ CGEN_MAYBE_MULTI_IFLD index_fields;
+#if 0 /* ??? Interesting idea but relocs tend to get too complicated,
+ and ABI dependent, for simple table lookups to work. */
+ /* Ideally this would be the internal (external?) reloc type. */
+ int reloc_type;
+#endif
+
+ /* Attributes.
+ This should, but technically needn't, appear last. It is a variable sized
+ array in that one architecture may have 1 nonbool attribute and another
+ may have more. Having this last means the non-architecture specific code
+ needn't care, now or tomorrow. The goal is to eventually record
+ attributes in their raw form, evaluate them at run-time, and cache the
+ values, so this worry will go away anyway. */
+#ifndef CGEN_OPERAND_NBOOL_ATTRS
+#define CGEN_OPERAND_NBOOL_ATTRS 1
+#endif
+ CGEN_ATTR_TYPE (CGEN_OPERAND_NBOOL_ATTRS) attrs;
+#define CGEN_OPERAND_ATTRS(operand) (&(operand)->attrs)
+} CGEN_OPERAND;
+
+/* Return value of attribute ATTR in OPERAND. */
+
+#define CGEN_OPERAND_ATTR_VALUE(operand, attr) \
+CGEN_ATTR_VALUE ((operand), CGEN_OPERAND_ATTRS (operand), (attr))
+
+/* Table of operands for selected mach/isa, computed at runtime.
+ enum cgen_operand_type is an index into this table (specifically
+ `entries'). */
+
+typedef struct {
+ /* Pointer to null terminated table of all compiled in entries. */
+ const CGEN_OPERAND *init_entries;
+ unsigned int entry_size; /* since the attribute member is variable sized */
+ /* Array of all entries, initial and run-time added. */
+ const CGEN_OPERAND **entries;
+ /* Number of elements in `entries'. */
+ unsigned int num_entries;
+ /* For now, xrealloc is called each time a new entry is added at runtime.
+ ??? May wish to keep track of some slop to reduce the number of calls to
+ xrealloc, except that there's unlikely to be many and not expected to be
+ in speed critical code. */
+} CGEN_OPERAND_TABLE;
+
+extern const CGEN_OPERAND * cgen_operand_lookup_by_name
+ (CGEN_CPU_DESC, const char *);
+extern const CGEN_OPERAND * cgen_operand_lookup_by_num
+ (CGEN_CPU_DESC, int);
+
+/* Instruction operand instances.
+
+ For each instruction, a list of the hardware elements that are read and
+ written are recorded. */
+
+/* The type of the instance. */
+
+enum cgen_opinst_type {
+ /* End of table marker. */
+ CGEN_OPINST_END = 0,
+ CGEN_OPINST_INPUT, CGEN_OPINST_OUTPUT
+};
+
+typedef struct
+{
+ /* Input or output indicator. */
+ enum cgen_opinst_type type;
+
+ /* Name of operand. */
+ const char *name;
+
+ /* The hardware element referenced. */
+ enum cgen_hw_type hw_type;
+
+ /* The mode in which the operand is being used. */
+ enum cgen_mode mode;
+
+ /* The operand table entry CGEN_OPERAND_NIL if there is none
+ (i.e. an explicit hardware reference). */
+ enum cgen_operand_type op_type;
+
+ /* If `operand' is "nil", the index (e.g. into array of registers). */
+ int index;
+
+ /* Attributes.
+ ??? This perhaps should be a real attribute struct but there's
+ no current need, so we save a bit of space and just have a set of
+ flags. The interface is such that this can easily be made attributes
+ should it prove useful. */
+ unsigned int attrs;
+#define CGEN_OPINST_ATTRS(opinst) ((opinst)->attrs)
+/* Return value of attribute ATTR in OPINST. */
+#define CGEN_OPINST_ATTR(opinst, attr) \
+((CGEN_OPINST_ATTRS (opinst) & (attr)) != 0)
+/* Operand is conditionally referenced (read/written). */
+#define CGEN_OPINST_COND_REF 1
+} CGEN_OPINST;
+
+/* Syntax string.
+
+ Each insn format and subexpression has one of these.
+
+ The syntax "string" consists of characters (n > 0 && n < 128), and operand
+ values (n >= 128), and is terminated by 0. Operand values are 128 + index
+ into the operand table. The operand table doesn't exist in C, per se, as
+ the data is recorded in the parse/insert/extract/print switch statements. */
+
+/* This should be at least as large as necessary for any target. */
+#define CGEN_MAX_SYNTAX_ELEMENTS 48
+
+/* A target may know its own precise maximum. Assert that it falls below
+ the above limit. */
+#ifdef CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS
+#if CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS > CGEN_MAX_SYNTAX_ELEMENTS
+#error "CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS too high - enlarge CGEN_MAX_SYNTAX_ELEMENTS"
+#endif
+#endif
+
+typedef unsigned short CGEN_SYNTAX_CHAR_TYPE;
+
+typedef struct
+{
+ CGEN_SYNTAX_CHAR_TYPE syntax[CGEN_MAX_SYNTAX_ELEMENTS];
+} CGEN_SYNTAX;
+
+#define CGEN_SYNTAX_STRING(syn) (syn->syntax)
+#define CGEN_SYNTAX_CHAR_P(c) ((c) < 128)
+#define CGEN_SYNTAX_CHAR(c) ((unsigned char)c)
+#define CGEN_SYNTAX_FIELD(c) ((c) - 128)
+#define CGEN_SYNTAX_MAKE_FIELD(c) ((c) + 128)
+
+/* ??? I can't currently think of any case where the mnemonic doesn't come
+ first [and if one ever doesn't building the hash tables will be tricky].
+ However, we treat mnemonics as just another operand of the instruction.
+ A value of 1 means "this is where the mnemonic appears". 1 isn't
+ special other than it's a non-printable ASCII char. */
+
+#define CGEN_SYNTAX_MNEMONIC 1
+#define CGEN_SYNTAX_MNEMONIC_P(ch) ((ch) == CGEN_SYNTAX_MNEMONIC)
+
+/* Instruction fields.
+
+ ??? We currently don't allow adding fields at run-time.
+ Easy to fix when needed. */
+
+typedef struct cgen_ifld {
+ /* Enum of ifield. */
+ int num;
+#define CGEN_IFLD_NUM(f) ((f)->num)
+
+ /* Name of the field, distinguishes it from all other fields. */
+ const char *name;
+#define CGEN_IFLD_NAME(f) ((f)->name)
+
+ /* Default offset, in bits, from the start of the insn to the word
+ containing the field. */
+ int word_offset;
+#define CGEN_IFLD_WORD_OFFSET(f) ((f)->word_offset)
+
+ /* Default length of the word containing the field. */
+ int word_size;
+#define CGEN_IFLD_WORD_SIZE(f) ((f)->word_size)
+
+ /* Default starting bit number.
+ Whether lsb=0 or msb=0 is determined by CGEN_INSN_LSB0_P. */
+ int start;
+#define CGEN_IFLD_START(f) ((f)->start)
+
+ /* Length of the field, in bits. */
+ int length;
+#define CGEN_IFLD_LENGTH(f) ((f)->length)
+
+#ifndef CGEN_IFLD_NBOOL_ATTRS
+#define CGEN_IFLD_NBOOL_ATTRS 1
+#endif
+ CGEN_ATTR_TYPE (CGEN_IFLD_NBOOL_ATTRS) attrs;
+#define CGEN_IFLD_ATTRS(f) (&(f)->attrs)
+} CGEN_IFLD;
+
+/* Return value of attribute ATTR in IFLD. */
+#define CGEN_IFLD_ATTR_VALUE(ifld, attr) \
+CGEN_ATTR_VALUE ((ifld), CGEN_IFLD_ATTRS (ifld), (attr))
+
+/* Instruction data. */
+
+/* Instruction formats.
+
+ Instructions are grouped by format. Associated with an instruction is its
+ format. Each insn's opcode table entry contains a format table entry.
+ ??? There is usually very few formats compared with the number of insns,
+ so one can reduce the size of the opcode table by recording the format table
+ as a separate entity. Given that we currently don't, format table entries
+ are also distinguished by their operands. This increases the size of the
+ table, but reduces the number of tables. It's all minutiae anyway so it
+ doesn't really matter [at this point in time].
+
+ ??? Support for variable length ISA's is wip. */
+
+/* Accompanying each iformat description is a list of its fields. */
+
+typedef struct {
+ const CGEN_IFLD *ifld;
+#define CGEN_IFMT_IFLD_IFLD(ii) ((ii)->ifld)
+} CGEN_IFMT_IFLD;
+
+/* This should be at least as large as necessary for any target. */
+#define CGEN_MAX_IFMT_OPERANDS 16
+
+/* A target may know its own precise maximum. Assert that it falls below
+ the above limit. */
+#ifdef CGEN_ACTUAL_MAX_IFMT_OPERANDS
+#if CGEN_ACTUAL_MAX_IFMT_OPERANDS > CGEN_MAX_IFMT_OPERANDS
+#error "CGEN_ACTUAL_MAX_IFMT_OPERANDS too high - enlarge CGEN_MAX_IFMT_OPERANDS"
+#endif
+#endif
+
+
+typedef struct
+{
+ /* Length that MASK and VALUE have been calculated to
+ [VALUE is recorded elsewhere].
+ Normally it is base_insn_bitsize. On [V]LIW architectures where the base
+ insn size may be larger than the size of an insn, this field is less than
+ base_insn_bitsize. */
+ unsigned char mask_length;
+#define CGEN_IFMT_MASK_LENGTH(ifmt) ((ifmt)->mask_length)
+
+ /* Total length of instruction, in bits. */
+ unsigned char length;
+#define CGEN_IFMT_LENGTH(ifmt) ((ifmt)->length)
+
+ /* Mask to apply to the first MASK_LENGTH bits.
+ Each insn's value is stored with the insn.
+ The first step in recognizing an insn for disassembly is
+ (opcode & mask) == value. */
+ CGEN_INSN_INT mask;
+#define CGEN_IFMT_MASK(ifmt) ((ifmt)->mask)
+
+ /* Instruction fields.
+ +1 for trailing NULL. */
+ CGEN_IFMT_IFLD iflds[CGEN_MAX_IFMT_OPERANDS + 1];
+#define CGEN_IFMT_IFLDS(ifmt) ((ifmt)->iflds)
+} CGEN_IFMT;
+
+/* Instruction values. */
+
+typedef struct
+{
+ /* The opcode portion of the base insn. */
+ CGEN_INSN_INT base_value;
+
+#ifdef CGEN_MAX_EXTRA_OPCODE_OPERANDS
+ /* Extra opcode values beyond base_value. */
+ unsigned long ifield_values[CGEN_MAX_EXTRA_OPCODE_OPERANDS];
+#endif
+} CGEN_IVALUE;
+
+/* Instruction opcode table.
+ This contains the syntax and format data of an instruction. */
+
+/* ??? Some ports already have an opcode table yet still need to use the rest
+ of what cgen_insn has. Plus keeping the opcode data with the operand
+ instance data can create a pretty big file. So we keep them separately.
+ Not sure this is a good idea in the long run. */
+
+typedef struct
+{
+ /* Indices into parse/insert/extract/print handler tables. */
+ struct cgen_opcode_handler handlers;
+#define CGEN_OPCODE_HANDLERS(opc) (& (opc)->handlers)
+
+ /* Syntax string. */
+ CGEN_SYNTAX syntax;
+#define CGEN_OPCODE_SYNTAX(opc) (& (opc)->syntax)
+
+ /* Format entry. */
+ const CGEN_IFMT *format;
+#define CGEN_OPCODE_FORMAT(opc) ((opc)->format)
+#define CGEN_OPCODE_MASK_BITSIZE(opc) CGEN_IFMT_MASK_LENGTH (CGEN_OPCODE_FORMAT (opc))
+#define CGEN_OPCODE_BITSIZE(opc) CGEN_IFMT_LENGTH (CGEN_OPCODE_FORMAT (opc))
+#define CGEN_OPCODE_IFLDS(opc) CGEN_IFMT_IFLDS (CGEN_OPCODE_FORMAT (opc))
+
+ /* Instruction opcode value. */
+ CGEN_IVALUE value;
+#define CGEN_OPCODE_VALUE(opc) (& (opc)->value)
+#define CGEN_OPCODE_BASE_VALUE(opc) (CGEN_OPCODE_VALUE (opc)->base_value)
+#define CGEN_OPCODE_BASE_MASK(opc) CGEN_IFMT_MASK (CGEN_OPCODE_FORMAT (opc))
+} CGEN_OPCODE;
+
+/* Instruction attributes.
+ This is made a published type as applications can cache a pointer to
+ the attributes for speed. */
+
+#ifndef CGEN_INSN_NBOOL_ATTRS
+#define CGEN_INSN_NBOOL_ATTRS 1
+#endif
+typedef CGEN_ATTR_TYPE (CGEN_INSN_NBOOL_ATTRS) CGEN_INSN_ATTR_TYPE;
+
+/* Enum of architecture independent attributes. */
+
+#ifndef CGEN_ARCH
+/* ??? Numbers here are recorded in two places. */
+typedef enum cgen_insn_attr {
+ CGEN_INSN_ALIAS = 0
+} CGEN_INSN_ATTR;
+#endif
+
+/* This struct defines each entry in the instruction table. */
+
+typedef struct
+{
+ /* Each real instruction is enumerated. */
+ /* ??? This may go away in time. */
+ int num;
+#define CGEN_INSN_NUM(insn) ((insn)->base->num)
+
+ /* Name of entry (that distinguishes it from all other entries). */
+ /* ??? If mnemonics have operands, try to print full mnemonic. */
+ const char *name;
+#define CGEN_INSN_NAME(insn) ((insn)->base->name)
+
+ /* Mnemonic. This is used when parsing and printing the insn.
+ In the case of insns that have operands on the mnemonics, this is
+ only the constant part. E.g. for conditional execution of an `add' insn,
+ where the full mnemonic is addeq, addne, etc., and the condition is
+ treated as an operand, this is only "add". */
+ const char *mnemonic;
+#define CGEN_INSN_MNEMONIC(insn) ((insn)->base->mnemonic)
+
+ /* Total length of instruction, in bits. */
+ int bitsize;
+#define CGEN_INSN_BITSIZE(insn) ((insn)->base->bitsize)
+
+#if 0 /* ??? Disabled for now as there is a problem with embedded newlines
+ and the table is already pretty big. Should perhaps be moved
+ to a file of its own. */
+ /* Semantics, as RTL. */
+ /* ??? Plain text or bytecodes? */
+ /* ??? Note that the operand instance table could be computed at run-time
+ if we parse this and cache the results. Something to eventually do. */
+ const char *rtx;
+#define CGEN_INSN_RTX(insn) ((insn)->base->rtx)
+#endif
+
+ /* Attributes.
+ This must appear last. It is a variable sized array in that one
+ architecture may have 1 nonbool attribute and another may have more.
+ Having this last means the non-architecture specific code needn't
+ care. The goal is to eventually record attributes in their raw form,
+ evaluate them at run-time, and cache the values, so this worry will go
+ away anyway. */
+ CGEN_INSN_ATTR_TYPE attrs;
+#define CGEN_INSN_ATTRS(insn) (&(insn)->base->attrs)
+/* Return value of attribute ATTR in INSN. */
+#define CGEN_INSN_ATTR_VALUE(insn, attr) \
+CGEN_ATTR_VALUE ((insn), CGEN_INSN_ATTRS (insn), (attr))
+} CGEN_IBASE;
+
+/* Return non-zero if INSN is the "invalid" insn marker. */
+
+#define CGEN_INSN_INVALID_P(insn) (CGEN_INSN_MNEMONIC (insn) == 0)
+
+/* Main struct contain instruction information.
+ BASE is always present, the rest is present only if asked for. */
+
+struct cgen_insn
+{
+ /* ??? May be of use to put a type indicator here.
+ Then this struct could different info for different classes of insns. */
+ /* ??? A speedup can be had by moving `base' into this struct.
+ Maybe later. */
+ const CGEN_IBASE *base;
+ const CGEN_OPCODE *opcode;
+ const CGEN_OPINST *opinst;
+
+ /* Regex to disambiguate overloaded opcodes */
+ void *rx;
+#define CGEN_INSN_RX(insn) ((insn)->rx)
+#define CGEN_MAX_RX_ELEMENTS (CGEN_MAX_SYNTAX_ELEMENTS * 5)
+};
+
+/* Instruction lists.
+ This is used for adding new entries and for creating the hash lists. */
+
+typedef struct cgen_insn_list
+{
+ struct cgen_insn_list *next;
+ const CGEN_INSN *insn;
+} CGEN_INSN_LIST;
+
+/* Table of instructions. */
+
+typedef struct
+{
+ const CGEN_INSN *init_entries;
+ unsigned int entry_size; /* since the attribute member is variable sized */
+ unsigned int num_init_entries;
+ CGEN_INSN_LIST *new_entries;
+} CGEN_INSN_TABLE;
+
+/* Return number of instructions. This includes any added at run-time. */
+
+extern int cgen_insn_count (CGEN_CPU_DESC);
+extern int cgen_macro_insn_count (CGEN_CPU_DESC);
+
+/* Macros to access the other insn elements not recorded in CGEN_IBASE. */
+
+/* Fetch INSN's operand instance table. */
+/* ??? Doesn't handle insns added at runtime. */
+#define CGEN_INSN_OPERANDS(insn) ((insn)->opinst)
+
+/* Return INSN's opcode table entry. */
+#define CGEN_INSN_OPCODE(insn) ((insn)->opcode)
+
+/* Return INSN's handler data. */
+#define CGEN_INSN_HANDLERS(insn) CGEN_OPCODE_HANDLERS (CGEN_INSN_OPCODE (insn))
+
+/* Return INSN's syntax. */
+#define CGEN_INSN_SYNTAX(insn) CGEN_OPCODE_SYNTAX (CGEN_INSN_OPCODE (insn))
+
+/* Return size of base mask in bits. */
+#define CGEN_INSN_MASK_BITSIZE(insn) \
+ CGEN_OPCODE_MASK_BITSIZE (CGEN_INSN_OPCODE (insn))
+
+/* Return mask of base part of INSN. */
+#define CGEN_INSN_BASE_MASK(insn) \
+ CGEN_OPCODE_BASE_MASK (CGEN_INSN_OPCODE (insn))
+
+/* Return value of base part of INSN. */
+#define CGEN_INSN_BASE_VALUE(insn) \
+ CGEN_OPCODE_BASE_VALUE (CGEN_INSN_OPCODE (insn))
+
+/* Standard way to test whether INSN is supported by MACH.
+ MACH is one of enum mach_attr.
+ The "|1" is because the base mach is always selected. */
+#define CGEN_INSN_MACH_HAS_P(insn, mach) \
+((CGEN_INSN_ATTR_VALUE ((insn), CGEN_INSN_MACH) & ((1 << (mach)) | 1)) != 0)
+
+/* Macro instructions.
+ Macro insns aren't real insns, they map to one or more real insns.
+ E.g. An architecture's "nop" insn may actually be an "mv r0,r0" or
+ some such.
+
+ Macro insns can expand to nothing (e.g. a nop that is optimized away).
+ This is useful in multi-insn macros that build a constant in a register.
+ Of course this isn't the default behaviour and must be explicitly enabled.
+
+ Assembly of macro-insns is relatively straightforward. Disassembly isn't.
+ However, disassembly of at least some kinds of macro insns is important
+ in order that the disassembled code preserve the readability of the original
+ insn. What is attempted here is to disassemble all "simple" macro-insns,
+ where "simple" is currently defined to mean "expands to one real insn".
+
+ Simple macro-insns are handled specially. They are emitted as ALIAS's
+ of real insns. This simplifies their handling since there's usually more
+ of them than any other kind of macro-insn, and proper disassembly of them
+ falls out for free. */
+
+/* For each macro-insn there may be multiple expansion possibilities,
+ depending on the arguments. This structure is accessed via the `data'
+ member of CGEN_INSN. */
+
+typedef struct cgen_minsn_expansion {
+ /* Function to do the expansion.
+ If the expansion fails (e.g. "no match") NULL is returned.
+ Space for the expansion is obtained with malloc.
+ It is up to the caller to free it. */
+ const char * (* fn)
+ (const struct cgen_minsn_expansion *,
+ const char *, const char **, int *,
+ CGEN_OPERAND **);
+#define CGEN_MIEXPN_FN(ex) ((ex)->fn)
+
+ /* Instruction(s) the macro expands to.
+ The format of STR is defined by FN.
+ It is typically the assembly code of the real insn, but it could also be
+ the original Scheme expression or a tokenized form of it (with FN being
+ an appropriate interpreter). */
+ const char * str;
+#define CGEN_MIEXPN_STR(ex) ((ex)->str)
+} CGEN_MINSN_EXPANSION;
+
+/* Normal expander.
+ When supported, this function will convert the input string to another
+ string and the parser will be invoked recursively. The output string
+ may contain further macro invocations. */
+
+extern const char * cgen_expand_macro_insn
+ (CGEN_CPU_DESC, const struct cgen_minsn_expansion *,
+ const char *, const char **, int *, CGEN_OPERAND **);
+
+/* The assembler insn table is hashed based on some function of the mnemonic
+ (the actually hashing done is up to the target, but we provide a few
+ examples like the first letter or a function of the entire mnemonic). */
+
+extern CGEN_INSN_LIST * cgen_asm_lookup_insn
+ (CGEN_CPU_DESC, const char *);
+#define CGEN_ASM_LOOKUP_INSN(cd, string) cgen_asm_lookup_insn ((cd), (string))
+#define CGEN_ASM_NEXT_INSN(insn) ((insn)->next)
+
+/* The disassembler insn table is hashed based on some function of machine
+ instruction (the actually hashing done is up to the target). */
+
+extern CGEN_INSN_LIST * cgen_dis_lookup_insn
+ (CGEN_CPU_DESC, const char *, CGEN_INSN_INT);
+/* FIXME: delete these two */
+#define CGEN_DIS_LOOKUP_INSN(cd, buf, value) cgen_dis_lookup_insn ((cd), (buf), (value))
+#define CGEN_DIS_NEXT_INSN(insn) ((insn)->next)
+
+/* The CPU description.
+ A copy of this is created when the cpu table is "opened".
+ All global state information is recorded here.
+ Access macros are provided for "public" members. */
+
+typedef struct cgen_cpu_desc
+{
+ /* Bitmap of selected machine(s) (a la BFD machine number). */
+ int machs;
+
+ /* Bitmap of selected isa(s).
+ ??? Simultaneous multiple isas might not make sense, but it's not (yet)
+ precluded. */
+ int isas;
+
+ /* Current endian. */
+ enum cgen_endian endian;
+#define CGEN_CPU_ENDIAN(cd) ((cd)->endian)
+
+ /* Current insn endian. */
+ enum cgen_endian insn_endian;
+#define CGEN_CPU_INSN_ENDIAN(cd) ((cd)->insn_endian)
+
+ /* Word size (in bits). */
+ /* ??? Or maybe maximum word size - might we ever need to allow a cpu table
+ to be opened for both sparc32/sparc64?
+ ??? Another alternative is to create a table of selected machs and
+ lazily fetch the data from there. */
+ unsigned int word_bitsize;
+
+ /* Instruction chunk size (in bits), for purposes of endianness
+ conversion. */
+ unsigned int insn_chunk_bitsize;
+
+ /* Indicator if sizes are unknown.
+ This is used by default_insn_bitsize,base_insn_bitsize if there is a
+ difference between the selected isa's. */
+#define CGEN_SIZE_UNKNOWN 65535
+
+ /* Default instruction size (in bits).
+ This is used by the assembler when it encounters an unknown insn. */
+ unsigned int default_insn_bitsize;
+
+ /* Base instruction size (in bits).
+ For non-LIW cpus this is generally the length of the smallest insn.
+ For LIW cpus its wip (work-in-progress). For the m32r its 32. */
+ unsigned int base_insn_bitsize;
+
+ /* Minimum/maximum instruction size (in bits). */
+ unsigned int min_insn_bitsize;
+ unsigned int max_insn_bitsize;
+
+ /* Instruction set variants. */
+ const CGEN_ISA *isa_table;
+
+ /* Machine variants. */
+ const CGEN_MACH *mach_table;
+
+ /* Hardware elements. */
+ CGEN_HW_TABLE hw_table;
+
+ /* Instruction fields. */
+ const CGEN_IFLD *ifld_table;
+
+ /* Operands. */
+ CGEN_OPERAND_TABLE operand_table;
+
+ /* Main instruction table. */
+ CGEN_INSN_TABLE insn_table;
+#define CGEN_CPU_INSN_TABLE(cd) (& (cd)->insn_table)
+
+ /* Macro instructions are defined separately and are combined with real
+ insns during hash table computation. */
+ CGEN_INSN_TABLE macro_insn_table;
+
+ /* Copy of CGEN_INT_INSN_P. */
+ int int_insn_p;
+
+ /* Called to rebuild the tables after something has changed. */
+ void (*rebuild_tables) (CGEN_CPU_DESC);
+
+ /* Operand parser callback. */
+ cgen_parse_operand_fn * parse_operand_fn;
+
+ /* Parse/insert/extract/print cover fns for operands. */
+ const char * (*parse_operand)
+ (CGEN_CPU_DESC, int opindex_, const char **, CGEN_FIELDS *fields_);
+#ifdef __BFD_H_SEEN__
+ const char * (*insert_operand)
+ (CGEN_CPU_DESC, int opindex_, CGEN_FIELDS *fields_,
+ CGEN_INSN_BYTES_PTR, bfd_vma pc_);
+ int (*extract_operand)
+ (CGEN_CPU_DESC, int opindex_, CGEN_EXTRACT_INFO *, CGEN_INSN_INT,
+ CGEN_FIELDS *fields_, bfd_vma pc_);
+ void (*print_operand)
+ (CGEN_CPU_DESC, int opindex_, void * info_, CGEN_FIELDS * fields_,
+ void const *attrs_, bfd_vma pc_, int length_);
+#else
+ const char * (*insert_operand) ();
+ int (*extract_operand) ();
+ void (*print_operand) ();
+#endif
+#define CGEN_CPU_PARSE_OPERAND(cd) ((cd)->parse_operand)
+#define CGEN_CPU_INSERT_OPERAND(cd) ((cd)->insert_operand)
+#define CGEN_CPU_EXTRACT_OPERAND(cd) ((cd)->extract_operand)
+#define CGEN_CPU_PRINT_OPERAND(cd) ((cd)->print_operand)
+
+ /* Size of CGEN_FIELDS struct. */
+ unsigned int sizeof_fields;
+#define CGEN_CPU_SIZEOF_FIELDS(cd) ((cd)->sizeof_fields)
+
+ /* Set the bitsize field. */
+ void (*set_fields_bitsize) (CGEN_FIELDS *fields_, int size_);
+#define CGEN_CPU_SET_FIELDS_BITSIZE(cd) ((cd)->set_fields_bitsize)
+
+ /* CGEN_FIELDS accessors. */
+ int (*get_int_operand)
+ (CGEN_CPU_DESC, int opindex_, const CGEN_FIELDS *fields_);
+ void (*set_int_operand)
+ (CGEN_CPU_DESC, int opindex_, CGEN_FIELDS *fields_, int value_);
+#ifdef __BFD_H_SEEN__
+ bfd_vma (*get_vma_operand)
+ (CGEN_CPU_DESC, int opindex_, const CGEN_FIELDS *fields_);
+ void (*set_vma_operand)
+ (CGEN_CPU_DESC, int opindex_, CGEN_FIELDS *fields_, bfd_vma value_);
+#else
+ long (*get_vma_operand) ();
+ void (*set_vma_operand) ();
+#endif
+#define CGEN_CPU_GET_INT_OPERAND(cd) ((cd)->get_int_operand)
+#define CGEN_CPU_SET_INT_OPERAND(cd) ((cd)->set_int_operand)
+#define CGEN_CPU_GET_VMA_OPERAND(cd) ((cd)->get_vma_operand)
+#define CGEN_CPU_SET_VMA_OPERAND(cd) ((cd)->set_vma_operand)
+
+ /* Instruction parse/insert/extract/print handlers. */
+ /* FIXME: make these types uppercase. */
+ cgen_parse_fn * const *parse_handlers;
+ cgen_insert_fn * const *insert_handlers;
+ cgen_extract_fn * const *extract_handlers;
+ cgen_print_fn * const *print_handlers;
+#define CGEN_PARSE_FN(cd, insn) (cd->parse_handlers[(insn)->opcode->handlers.parse])
+#define CGEN_INSERT_FN(cd, insn) (cd->insert_handlers[(insn)->opcode->handlers.insert])
+#define CGEN_EXTRACT_FN(cd, insn) (cd->extract_handlers[(insn)->opcode->handlers.extract])
+#define CGEN_PRINT_FN(cd, insn) (cd->print_handlers[(insn)->opcode->handlers.print])
+
+ /* Return non-zero if insn should be added to hash table. */
+ int (* asm_hash_p) (const CGEN_INSN *);
+
+ /* Assembler hash function. */
+ unsigned int (* asm_hash) (const char *);
+
+ /* Number of entries in assembler hash table. */
+ unsigned int asm_hash_size;
+
+ /* Return non-zero if insn should be added to hash table. */
+ int (* dis_hash_p) (const CGEN_INSN *);
+
+ /* Disassembler hash function. */
+ unsigned int (* dis_hash) (const char *, CGEN_INSN_INT);
+
+ /* Number of entries in disassembler hash table. */
+ unsigned int dis_hash_size;
+
+ /* Assembler instruction hash table. */
+ CGEN_INSN_LIST **asm_hash_table;
+ CGEN_INSN_LIST *asm_hash_table_entries;
+
+ /* Disassembler instruction hash table. */
+ CGEN_INSN_LIST **dis_hash_table;
+ CGEN_INSN_LIST *dis_hash_table_entries;
+
+ /* This field could be turned into a bitfield if room for other flags is needed. */
+ unsigned int signed_overflow_ok_p;
+
+} CGEN_CPU_TABLE;
+
+/* wip */
+#ifndef CGEN_WORD_ENDIAN
+#define CGEN_WORD_ENDIAN(cd) CGEN_CPU_ENDIAN (cd)
+#endif
+#ifndef CGEN_INSN_WORD_ENDIAN
+#define CGEN_INSN_WORD_ENDIAN(cd) CGEN_CPU_INSN_ENDIAN (cd)
+#endif
+
+/* Prototypes of major functions. */
+/* FIXME: Move more CGEN_SYM-defined functions into CGEN_CPU_DESC.
+ Not the init fns though, as that would drag in things that mightn't be
+ used and might not even exist. */
+
+/* Argument types to cpu_open. */
+
+enum cgen_cpu_open_arg {
+ CGEN_CPU_OPEN_END,
+ /* Select instruction set(s), arg is bitmap or 0 meaning "unspecified". */
+ CGEN_CPU_OPEN_ISAS,
+ /* Select machine(s), arg is bitmap or 0 meaning "unspecified". */
+ CGEN_CPU_OPEN_MACHS,
+ /* Select machine, arg is mach's bfd name.
+ Multiple machines can be specified by repeated use. */
+ CGEN_CPU_OPEN_BFDMACH,
+ /* Select endian, arg is CGEN_ENDIAN_*. */
+ CGEN_CPU_OPEN_ENDIAN
+};
+
+/* Open a cpu descriptor table for use.
+ ??? We only support ISO C stdargs here, not K&R.
+ Laziness, plus experiment to see if anything requires K&R - eventually
+ K&R will no longer be supported - e.g. GDB is currently trying this. */
+
+extern CGEN_CPU_DESC CGEN_SYM (cpu_open) (enum cgen_cpu_open_arg, ...);
+
+/* Cover fn to handle simple case. */
+
+extern CGEN_CPU_DESC CGEN_SYM (cpu_open_1)
+ (const char *mach_name_, enum cgen_endian endian_);
+
+/* Close it. */
+
+extern void CGEN_SYM (cpu_close) (CGEN_CPU_DESC);
+
+/* Initialize the opcode table for use.
+ Called by init_asm/init_dis. */
+
+extern void CGEN_SYM (init_opcode_table) (CGEN_CPU_DESC cd_);
+
+/* build the insn selection regex.
+ called by init_opcode_table */
+
+extern char * CGEN_SYM(build_insn_regex) (CGEN_INSN *insn_);
+
+/* Initialize the ibld table for use.
+ Called by init_asm/init_dis. */
+
+extern void CGEN_SYM (init_ibld_table) (CGEN_CPU_DESC cd_);
+
+/* Initialize an cpu table for assembler or disassembler use.
+ These must be called immediately after cpu_open. */
+
+extern void CGEN_SYM (init_asm) (CGEN_CPU_DESC);
+extern void CGEN_SYM (init_dis) (CGEN_CPU_DESC);
+
+/* Initialize the operand instance table for use. */
+
+extern void CGEN_SYM (init_opinst_table) (CGEN_CPU_DESC cd_);
+
+/* Assemble an instruction. */
+
+extern const CGEN_INSN * CGEN_SYM (assemble_insn)
+ (CGEN_CPU_DESC, const char *, CGEN_FIELDS *,
+ CGEN_INSN_BYTES_PTR, char **);
+
+extern const CGEN_KEYWORD CGEN_SYM (operand_mach);
+extern int CGEN_SYM (get_mach) (const char *);
+
+/* Operand index computation. */
+extern const CGEN_INSN * cgen_lookup_insn
+ (CGEN_CPU_DESC, const CGEN_INSN * insn_,
+ CGEN_INSN_INT int_value_, unsigned char *bytes_value_,
+ int length_, CGEN_FIELDS *fields_, int alias_p_);
+extern void cgen_get_insn_operands
+ (CGEN_CPU_DESC, const CGEN_INSN * insn_,
+ const CGEN_FIELDS *fields_, int *indices_);
+extern const CGEN_INSN * cgen_lookup_get_insn_operands
+ (CGEN_CPU_DESC, const CGEN_INSN *insn_,
+ CGEN_INSN_INT int_value_, unsigned char *bytes_value_,
+ int length_, int *indices_, CGEN_FIELDS *fields_);
+
+/* Cover fns to bfd_get/set. */
+
+extern CGEN_INSN_INT cgen_get_insn_value
+ (CGEN_CPU_DESC, unsigned char *, int);
+extern void cgen_put_insn_value
+ (CGEN_CPU_DESC, unsigned char *, int, CGEN_INSN_INT);
+
+/* Read in a cpu description file.
+ ??? For future concerns, including adding instructions to the assembler/
+ disassembler at run-time. */
+
+extern const char * cgen_read_cpu_file (CGEN_CPU_DESC, const char * filename_);
+
+/* Allow signed overflow of instruction fields. */
+extern void cgen_set_signed_overflow_ok (CGEN_CPU_DESC);
+
+/* Generate an error message if a signed field in an instruction overflows. */
+extern void cgen_clear_signed_overflow_ok (CGEN_CPU_DESC);
+
+/* Will an error message be generated if a signed field in an instruction overflows ? */
+extern unsigned int cgen_signed_overflow_ok_p (CGEN_CPU_DESC);
+
+#endif /* CGEN_H */
diff --git a/include/opcode/convex.h b/include/opcode/convex.h
new file mode 100644
index 000000000..ccf556829
--- /dev/null
+++ b/include/opcode/convex.h
@@ -0,0 +1,1707 @@
+/* Information for instruction disassembly on the Convex.
+ Copyright 1989, 1993, 2002 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define xxx 0
+#define rrr 1
+#define rr 2
+#define rxr 3
+#define r 4
+#define nops 5
+#define nr 6
+#define pcrel 7
+#define lr 8
+#define rxl 9
+#define rlr 10
+#define rrl 11
+#define iml 12
+#define imr 13
+#define a1r 14
+#define a1l 15
+#define a2r 16
+#define a2l 17
+#define a3 18
+#define a4 19
+#define a5 20
+#define V 1
+#define S 2
+#define VM 3
+#define A 4
+#define VL 5
+#define VS 6
+#define VLS 7
+#define PSW 8
+/* Prevent an error during "make depend". */
+#if !defined (PC)
+#define PC 9
+#endif
+#define ITR 10
+#define VV 11
+#define ITSR 12
+#define TOC 13
+#define CIR 14
+#define TTR 15
+#define VMU 16
+#define VML 17
+#define ICR 18
+#define TCPU 19
+#define CPUID 20
+#define TID 21
+
+const char *op[] = {
+ "",
+ "v0\0v1\0v2\0v3\0v4\0v5\0v6\0v7",
+ "s0\0s1\0s2\0s3\0s4\0s5\0s6\0s7",
+ "vm",
+ "sp\0a1\0a2\0a3\0a4\0a5\0ap\0fp",
+ "vl",
+ "vs",
+ "vls",
+ "psw",
+ "pc",
+ "itr",
+ "vv",
+ "itsr",
+ "toc",
+ "cir",
+ "ttr",
+ "vmu",
+ "vml",
+ "icr",
+ "tcpu",
+ "cpuid",
+ "tid",
+};
+
+const struct formstr format0[] = {
+ {0,0,rrr,V,S,S}, /* mov */
+ {0,0,rrr,S,S,V}, /* mov */
+ {1,1,rrr,V,V,V}, /* merg.t */
+ {2,1,rrr,V,V,V}, /* mask.t */
+ {1,2,rrr,V,S,V}, /* merg.f */
+ {2,2,rrr,V,S,V}, /* mask.f */
+ {1,1,rrr,V,S,V}, /* merg.t */
+ {2,1,rrr,V,S,V}, /* mask.t */
+ {3,3,rrr,V,V,V}, /* mul.s */
+ {3,4,rrr,V,V,V}, /* mul.d */
+ {4,3,rrr,V,V,V}, /* div.s */
+ {4,4,rrr,V,V,V}, /* div.d */
+ {3,3,rrr,V,S,V}, /* mul.s */
+ {3,4,rrr,V,S,V}, /* mul.d */
+ {4,3,rrr,V,S,V}, /* div.s */
+ {4,4,rrr,V,S,V}, /* div.d */
+ {5,0,rrr,V,V,V}, /* and */
+ {6,0,rrr,V,V,V}, /* or */
+ {7,0,rrr,V,V,V}, /* xor */
+ {8,0,rrr,V,V,V}, /* shf */
+ {5,0,rrr,V,S,V}, /* and */
+ {6,0,rrr,V,S,V}, /* or */
+ {7,0,rrr,V,S,V}, /* xor */
+ {8,0,rrr,V,S,V}, /* shf */
+ {9,3,rrr,V,V,V}, /* add.s */
+ {9,4,rrr,V,V,V}, /* add.d */
+ {10,3,rrr,V,V,V}, /* sub.s */
+ {10,4,rrr,V,V,V}, /* sub.d */
+ {9,3,rrr,V,S,V}, /* add.s */
+ {9,4,rrr,V,S,V}, /* add.d */
+ {10,3,rrr,V,S,V}, /* sub.s */
+ {10,4,rrr,V,S,V}, /* sub.d */
+ {9,5,rrr,V,V,V}, /* add.b */
+ {9,6,rrr,V,V,V}, /* add.h */
+ {9,7,rrr,V,V,V}, /* add.w */
+ {9,8,rrr,V,V,V}, /* add.l */
+ {9,5,rrr,V,S,V}, /* add.b */
+ {9,6,rrr,V,S,V}, /* add.h */
+ {9,7,rrr,V,S,V}, /* add.w */
+ {9,8,rrr,V,S,V}, /* add.l */
+ {10,5,rrr,V,V,V}, /* sub.b */
+ {10,6,rrr,V,V,V}, /* sub.h */
+ {10,7,rrr,V,V,V}, /* sub.w */
+ {10,8,rrr,V,V,V}, /* sub.l */
+ {10,5,rrr,V,S,V}, /* sub.b */
+ {10,6,rrr,V,S,V}, /* sub.h */
+ {10,7,rrr,V,S,V}, /* sub.w */
+ {10,8,rrr,V,S,V}, /* sub.l */
+ {3,5,rrr,V,V,V}, /* mul.b */
+ {3,6,rrr,V,V,V}, /* mul.h */
+ {3,7,rrr,V,V,V}, /* mul.w */
+ {3,8,rrr,V,V,V}, /* mul.l */
+ {3,5,rrr,V,S,V}, /* mul.b */
+ {3,6,rrr,V,S,V}, /* mul.h */
+ {3,7,rrr,V,S,V}, /* mul.w */
+ {3,8,rrr,V,S,V}, /* mul.l */
+ {4,5,rrr,V,V,V}, /* div.b */
+ {4,6,rrr,V,V,V}, /* div.h */
+ {4,7,rrr,V,V,V}, /* div.w */
+ {4,8,rrr,V,V,V}, /* div.l */
+ {4,5,rrr,V,S,V}, /* div.b */
+ {4,6,rrr,V,S,V}, /* div.h */
+ {4,7,rrr,V,S,V}, /* div.w */
+ {4,8,rrr,V,S,V}, /* div.l */
+};
+
+const struct formstr format1[] = {
+ {11,0,xxx,0,0,0}, /* exit */
+ {12,0,a3,0,0,0}, /* jmp */
+ {13,2,a3,0,0,0}, /* jmpi.f */
+ {13,1,a3,0,0,0}, /* jmpi.t */
+ {14,2,a3,0,0,0}, /* jmpa.f */
+ {14,1,a3,0,0,0}, /* jmpa.t */
+ {15,2,a3,0,0,0}, /* jmps.f */
+ {15,1,a3,0,0,0}, /* jmps.t */
+ {16,0,a3,0,0,0}, /* tac */
+ {17,0,a1r,A,0,0}, /* ldea */
+ {18,8,a1l,VLS,0,0}, /* ld.l */
+ {18,9,a1l,VM,0,0}, /* ld.x */
+ {19,0,a3,0,0,0}, /* tas */
+ {20,0,a3,0,0,0}, /* pshea */
+ {21,8,a2l,VLS,0,0}, /* st.l */
+ {21,9,a2l,VM,0,0}, /* st.x */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {22,0,a3,0,0,0}, /* call */
+ {23,0,a3,0,0,0}, /* calls */
+ {24,0,a3,0,0,0}, /* callq */
+ {25,0,a1r,A,0,0}, /* pfork */
+ {26,5,a2r,S,0,0}, /* ste.b */
+ {26,6,a2r,S,0,0}, /* ste.h */
+ {26,7,a2r,S,0,0}, /* ste.w */
+ {26,8,a2r,S,0,0}, /* ste.l */
+ {18,5,a1r,A,0,0}, /* ld.b */
+ {18,6,a1r,A,0,0}, /* ld.h */
+ {18,7,a1r,A,0,0}, /* ld.w */
+ {27,7,a1r,A,0,0}, /* incr.w */
+ {21,5,a2r,A,0,0}, /* st.b */
+ {21,6,a2r,A,0,0}, /* st.h */
+ {21,7,a2r,A,0,0}, /* st.w */
+ {27,8,a1r,S,0,0}, /* incr.l */
+ {18,5,a1r,S,0,0}, /* ld.b */
+ {18,6,a1r,S,0,0}, /* ld.h */
+ {18,7,a1r,S,0,0}, /* ld.w */
+ {18,8,a1r,S,0,0}, /* ld.l */
+ {21,5,a2r,S,0,0}, /* st.b */
+ {21,6,a2r,S,0,0}, /* st.h */
+ {21,7,a2r,S,0,0}, /* st.w */
+ {21,8,a2r,S,0,0}, /* st.l */
+ {18,5,a1r,V,0,0}, /* ld.b */
+ {18,6,a1r,V,0,0}, /* ld.h */
+ {18,7,a1r,V,0,0}, /* ld.w */
+ {18,8,a1r,V,0,0}, /* ld.l */
+ {21,5,a2r,V,0,0}, /* st.b */
+ {21,6,a2r,V,0,0}, /* st.h */
+ {21,7,a2r,V,0,0}, /* st.w */
+ {21,8,a2r,V,0,0}, /* st.l */
+};
+
+const struct formstr format2[] = {
+ {28,5,rr,A,A,0}, /* cvtw.b */
+ {28,6,rr,A,A,0}, /* cvtw.h */
+ {29,7,rr,A,A,0}, /* cvtb.w */
+ {30,7,rr,A,A,0}, /* cvth.w */
+ {28,5,rr,S,S,0}, /* cvtw.b */
+ {28,6,rr,S,S,0}, /* cvtw.h */
+ {29,7,rr,S,S,0}, /* cvtb.w */
+ {30,7,rr,S,S,0}, /* cvth.w */
+ {28,3,rr,S,S,0}, /* cvtw.s */
+ {31,7,rr,S,S,0}, /* cvts.w */
+ {32,3,rr,S,S,0}, /* cvtd.s */
+ {31,4,rr,S,S,0}, /* cvts.d */
+ {31,8,rr,S,S,0}, /* cvts.l */
+ {32,8,rr,S,S,0}, /* cvtd.l */
+ {33,3,rr,S,S,0}, /* cvtl.s */
+ {33,4,rr,S,S,0}, /* cvtl.d */
+ {34,0,rr,A,A,0}, /* ldpa */
+ {8,0,nr,A,0,0}, /* shf */
+ {18,6,nr,A,0,0}, /* ld.h */
+ {18,7,nr,A,0,0}, /* ld.w */
+ {33,7,rr,S,S,0}, /* cvtl.w */
+ {28,8,rr,S,S,0}, /* cvtw.l */
+ {35,1,rr,S,S,0}, /* plc.t */
+ {36,0,rr,S,S,0}, /* tzc */
+ {37,6,rr,A,A,0}, /* eq.h */
+ {37,7,rr,A,A,0}, /* eq.w */
+ {37,6,nr,A,0,0}, /* eq.h */
+ {37,7,nr,A,0,0}, /* eq.w */
+ {37,5,rr,S,S,0}, /* eq.b */
+ {37,6,rr,S,S,0}, /* eq.h */
+ {37,7,rr,S,S,0}, /* eq.w */
+ {37,8,rr,S,S,0}, /* eq.l */
+ {38,6,rr,A,A,0}, /* leu.h */
+ {38,7,rr,A,A,0}, /* leu.w */
+ {38,6,nr,A,0,0}, /* leu.h */
+ {38,7,nr,A,0,0}, /* leu.w */
+ {38,5,rr,S,S,0}, /* leu.b */
+ {38,6,rr,S,S,0}, /* leu.h */
+ {38,7,rr,S,S,0}, /* leu.w */
+ {38,8,rr,S,S,0}, /* leu.l */
+ {39,6,rr,A,A,0}, /* ltu.h */
+ {39,7,rr,A,A,0}, /* ltu.w */
+ {39,6,nr,A,0,0}, /* ltu.h */
+ {39,7,nr,A,0,0}, /* ltu.w */
+ {39,5,rr,S,S,0}, /* ltu.b */
+ {39,6,rr,S,S,0}, /* ltu.h */
+ {39,7,rr,S,S,0}, /* ltu.w */
+ {39,8,rr,S,S,0}, /* ltu.l */
+ {40,6,rr,A,A,0}, /* le.h */
+ {40,7,rr,A,A,0}, /* le.w */
+ {40,6,nr,A,0,0}, /* le.h */
+ {40,7,nr,A,0,0}, /* le.w */
+ {40,5,rr,S,S,0}, /* le.b */
+ {40,6,rr,S,S,0}, /* le.h */
+ {40,7,rr,S,S,0}, /* le.w */
+ {40,8,rr,S,S,0}, /* le.l */
+ {41,6,rr,A,A,0}, /* lt.h */
+ {41,7,rr,A,A,0}, /* lt.w */
+ {41,6,nr,A,0,0}, /* lt.h */
+ {41,7,nr,A,0,0}, /* lt.w */
+ {41,5,rr,S,S,0}, /* lt.b */
+ {41,6,rr,S,S,0}, /* lt.h */
+ {41,7,rr,S,S,0}, /* lt.w */
+ {41,8,rr,S,S,0}, /* lt.l */
+ {9,7,rr,S,A,0}, /* add.w */
+ {8,0,rr,A,A,0}, /* shf */
+ {0,0,rr,A,A,0}, /* mov */
+ {0,0,rr,S,A,0}, /* mov */
+ {0,7,rr,S,S,0}, /* mov.w */
+ {8,0,rr,S,S,0}, /* shf */
+ {0,0,rr,S,S,0}, /* mov */
+ {0,0,rr,A,S,0}, /* mov */
+ {5,0,rr,A,A,0}, /* and */
+ {6,0,rr,A,A,0}, /* or */
+ {7,0,rr,A,A,0}, /* xor */
+ {42,0,rr,A,A,0}, /* not */
+ {5,0,rr,S,S,0}, /* and */
+ {6,0,rr,S,S,0}, /* or */
+ {7,0,rr,S,S,0}, /* xor */
+ {42,0,rr,S,S,0}, /* not */
+ {40,3,rr,S,S,0}, /* le.s */
+ {40,4,rr,S,S,0}, /* le.d */
+ {41,3,rr,S,S,0}, /* lt.s */
+ {41,4,rr,S,S,0}, /* lt.d */
+ {9,3,rr,S,S,0}, /* add.s */
+ {9,4,rr,S,S,0}, /* add.d */
+ {10,3,rr,S,S,0}, /* sub.s */
+ {10,4,rr,S,S,0}, /* sub.d */
+ {37,3,rr,S,S,0}, /* eq.s */
+ {37,4,rr,S,S,0}, /* eq.d */
+ {43,6,rr,A,A,0}, /* neg.h */
+ {43,7,rr,A,A,0}, /* neg.w */
+ {3,3,rr,S,S,0}, /* mul.s */
+ {3,4,rr,S,S,0}, /* mul.d */
+ {4,3,rr,S,S,0}, /* div.s */
+ {4,4,rr,S,S,0}, /* div.d */
+ {9,6,rr,A,A,0}, /* add.h */
+ {9,7,rr,A,A,0}, /* add.w */
+ {9,6,nr,A,0,0}, /* add.h */
+ {9,7,nr,A,0,0}, /* add.w */
+ {9,5,rr,S,S,0}, /* add.b */
+ {9,6,rr,S,S,0}, /* add.h */
+ {9,7,rr,S,S,0}, /* add.w */
+ {9,8,rr,S,S,0}, /* add.l */
+ {10,6,rr,A,A,0}, /* sub.h */
+ {10,7,rr,A,A,0}, /* sub.w */
+ {10,6,nr,A,0,0}, /* sub.h */
+ {10,7,nr,A,0,0}, /* sub.w */
+ {10,5,rr,S,S,0}, /* sub.b */
+ {10,6,rr,S,S,0}, /* sub.h */
+ {10,7,rr,S,S,0}, /* sub.w */
+ {10,8,rr,S,S,0}, /* sub.l */
+ {3,6,rr,A,A,0}, /* mul.h */
+ {3,7,rr,A,A,0}, /* mul.w */
+ {3,6,nr,A,0,0}, /* mul.h */
+ {3,7,nr,A,0,0}, /* mul.w */
+ {3,5,rr,S,S,0}, /* mul.b */
+ {3,6,rr,S,S,0}, /* mul.h */
+ {3,7,rr,S,S,0}, /* mul.w */
+ {3,8,rr,S,S,0}, /* mul.l */
+ {4,6,rr,A,A,0}, /* div.h */
+ {4,7,rr,A,A,0}, /* div.w */
+ {4,6,nr,A,0,0}, /* div.h */
+ {4,7,nr,A,0,0}, /* div.w */
+ {4,5,rr,S,S,0}, /* div.b */
+ {4,6,rr,S,S,0}, /* div.h */
+ {4,7,rr,S,S,0}, /* div.w */
+ {4,8,rr,S,S,0}, /* div.l */
+};
+
+const struct formstr format3[] = {
+ {32,3,rr,V,V,0}, /* cvtd.s */
+ {31,4,rr,V,V,0}, /* cvts.d */
+ {33,4,rr,V,V,0}, /* cvtl.d */
+ {32,8,rr,V,V,0}, /* cvtd.l */
+ {0,0,rrl,S,S,VM}, /* mov */
+ {0,0,rlr,S,VM,S}, /* mov */
+ {0,0,0,0,0,0},
+ {44,0,rr,S,S,0}, /* lop */
+ {36,0,rr,V,V,0}, /* tzc */
+ {44,0,rr,V,V,0}, /* lop */
+ {0,0,0,0,0,0},
+ {42,0,rr,V,V,0}, /* not */
+ {8,0,rr,S,V,0}, /* shf */
+ {35,1,rr,V,V,0}, /* plc.t */
+ {45,2,rr,V,V,0}, /* cprs.f */
+ {45,1,rr,V,V,0}, /* cprs.t */
+ {37,3,rr,V,V,0}, /* eq.s */
+ {37,4,rr,V,V,0}, /* eq.d */
+ {43,3,rr,V,V,0}, /* neg.s */
+ {43,4,rr,V,V,0}, /* neg.d */
+ {37,3,rr,S,V,0}, /* eq.s */
+ {37,4,rr,S,V,0}, /* eq.d */
+ {43,3,rr,S,S,0}, /* neg.s */
+ {43,4,rr,S,S,0}, /* neg.d */
+ {40,3,rr,V,V,0}, /* le.s */
+ {40,4,rr,V,V,0}, /* le.d */
+ {41,3,rr,V,V,0}, /* lt.s */
+ {41,4,rr,V,V,0}, /* lt.d */
+ {40,3,rr,S,V,0}, /* le.s */
+ {40,4,rr,S,V,0}, /* le.d */
+ {41,3,rr,S,V,0}, /* lt.s */
+ {41,4,rr,S,V,0}, /* lt.d */
+ {37,5,rr,V,V,0}, /* eq.b */
+ {37,6,rr,V,V,0}, /* eq.h */
+ {37,7,rr,V,V,0}, /* eq.w */
+ {37,8,rr,V,V,0}, /* eq.l */
+ {37,5,rr,S,V,0}, /* eq.b */
+ {37,6,rr,S,V,0}, /* eq.h */
+ {37,7,rr,S,V,0}, /* eq.w */
+ {37,8,rr,S,V,0}, /* eq.l */
+ {40,5,rr,V,V,0}, /* le.b */
+ {40,6,rr,V,V,0}, /* le.h */
+ {40,7,rr,V,V,0}, /* le.w */
+ {40,8,rr,V,V,0}, /* le.l */
+ {40,5,rr,S,V,0}, /* le.b */
+ {40,6,rr,S,V,0}, /* le.h */
+ {40,7,rr,S,V,0}, /* le.w */
+ {40,8,rr,S,V,0}, /* le.l */
+ {41,5,rr,V,V,0}, /* lt.b */
+ {41,6,rr,V,V,0}, /* lt.h */
+ {41,7,rr,V,V,0}, /* lt.w */
+ {41,8,rr,V,V,0}, /* lt.l */
+ {41,5,rr,S,V,0}, /* lt.b */
+ {41,6,rr,S,V,0}, /* lt.h */
+ {41,7,rr,S,V,0}, /* lt.w */
+ {41,8,rr,S,V,0}, /* lt.l */
+ {43,5,rr,V,V,0}, /* neg.b */
+ {43,6,rr,V,V,0}, /* neg.h */
+ {43,7,rr,V,V,0}, /* neg.w */
+ {43,8,rr,V,V,0}, /* neg.l */
+ {43,5,rr,S,S,0}, /* neg.b */
+ {43,6,rr,S,S,0}, /* neg.h */
+ {43,7,rr,S,S,0}, /* neg.w */
+ {43,8,rr,S,S,0}, /* neg.l */
+};
+
+const struct formstr format4[] = {
+ {46,0,nops,0,0,0}, /* nop */
+ {47,0,pcrel,0,0,0}, /* br */
+ {48,2,pcrel,0,0,0}, /* bri.f */
+ {48,1,pcrel,0,0,0}, /* bri.t */
+ {49,2,pcrel,0,0,0}, /* bra.f */
+ {49,1,pcrel,0,0,0}, /* bra.t */
+ {50,2,pcrel,0,0,0}, /* brs.f */
+ {50,1,pcrel,0,0,0}, /* brs.t */
+};
+
+const struct formstr format5[] = {
+ {51,5,rr,V,V,0}, /* ldvi.b */
+ {51,6,rr,V,V,0}, /* ldvi.h */
+ {51,7,rr,V,V,0}, /* ldvi.w */
+ {51,8,rr,V,V,0}, /* ldvi.l */
+ {28,3,rr,V,V,0}, /* cvtw.s */
+ {31,7,rr,V,V,0}, /* cvts.w */
+ {28,8,rr,V,V,0}, /* cvtw.l */
+ {33,7,rr,V,V,0}, /* cvtl.w */
+ {52,5,rxr,V,V,0}, /* stvi.b */
+ {52,6,rxr,V,V,0}, /* stvi.h */
+ {52,7,rxr,V,V,0}, /* stvi.w */
+ {52,8,rxr,V,V,0}, /* stvi.l */
+ {52,5,rxr,S,V,0}, /* stvi.b */
+ {52,6,rxr,S,V,0}, /* stvi.h */
+ {52,7,rxr,S,V,0}, /* stvi.w */
+ {52,8,rxr,S,V,0}, /* stvi.l */
+};
+
+const struct formstr format6[] = {
+ {53,0,r,A,0,0}, /* ldsdr */
+ {54,0,r,A,0,0}, /* ldkdr */
+ {55,3,r,S,0,0}, /* ln.s */
+ {55,4,r,S,0,0}, /* ln.d */
+ {56,0,nops,0,0,0}, /* patu */
+ {57,0,r,A,0,0}, /* pate */
+ {58,0,nops,0,0,0}, /* pich */
+ {59,0,nops,0,0,0}, /* plch */
+ {0,0,lr,PSW,A,0}, /* mov */
+ {0,0,rxl,A,PSW,0}, /* mov */
+ {0,0,lr,PC,A,0}, /* mov */
+ {60,0,r,S,0,0}, /* idle */
+ {0,0,lr,ITR,S,0}, /* mov */
+ {0,0,rxl,S,ITR,0}, /* mov */
+ {0,0,0,0,0,0},
+ {0,0,rxl,S,ITSR,0}, /* mov */
+ {61,0,nops,0,0,0}, /* rtnq */
+ {62,0,nops,0,0,0}, /* cfork */
+ {63,0,nops,0,0,0}, /* rtn */
+ {64,0,nops,0,0,0}, /* wfork */
+ {65,0,nops,0,0,0}, /* join */
+ {66,0,nops,0,0,0}, /* rtnc */
+ {67,3,r,S,0,0}, /* exp.s */
+ {67,4,r,S,0,0}, /* exp.d */
+ {68,3,r,S,0,0}, /* sin.s */
+ {68,4,r,S,0,0}, /* sin.d */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {69,3,r,S,0,0}, /* cos.s */
+ {69,4,r,S,0,0}, /* cos.d */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {70,7,r,A,0,0}, /* psh.w */
+ {0,0,0,0,0,0},
+ {71,7,r,A,0,0}, /* pop.w */
+ {0,0,0,0,0,0},
+ {70,7,r,S,0,0}, /* psh.w */
+ {70,8,r,S,0,0}, /* psh.l */
+ {71,7,r,S,0,0}, /* pop.w */
+ {71,8,r,S,0,0}, /* pop.l */
+ {72,0,nops,0,0,0}, /* eni */
+ {73,0,nops,0,0,0}, /* dsi */
+ {74,0,nops,0,0,0}, /* bkpt */
+ {75,0,nops,0,0,0}, /* msync */
+ {76,0,r,S,0,0}, /* mski */
+ {77,0,r,S,0,0}, /* xmti */
+ {0,0,rxl,S,VV,0}, /* mov */
+ {78,0,nops,0,0,0}, /* tstvv */
+ {0,0,lr,VS,A,0}, /* mov */
+ {0,0,rxl,A,VS,0}, /* mov */
+ {0,0,lr,VL,A,0}, /* mov */
+ {0,0,rxl,A,VL,0}, /* mov */
+ {0,7,lr,VS,S,0}, /* mov.w */
+ {0,7,rxl,S,VS,0}, /* mov.w */
+ {0,7,lr,VL,S,0}, /* mov.w */
+ {0,7,rxl,S,VL,0}, /* mov.w */
+ {79,0,r,A,0,0}, /* diag */
+ {80,0,nops,0,0,0}, /* pbkpt */
+ {81,3,r,S,0,0}, /* sqrt.s */
+ {81,4,r,S,0,0}, /* sqrt.d */
+ {82,0,nops,0,0,0}, /* casr */
+ {0,0,0,0,0,0},
+ {83,3,r,S,0,0}, /* atan.s */
+ {83,4,r,S,0,0}, /* atan.d */
+};
+
+const struct formstr format7[] = {
+ {84,5,r,V,0,0}, /* sum.b */
+ {84,6,r,V,0,0}, /* sum.h */
+ {84,7,r,V,0,0}, /* sum.w */
+ {84,8,r,V,0,0}, /* sum.l */
+ {85,0,r,V,0,0}, /* all */
+ {86,0,r,V,0,0}, /* any */
+ {87,0,r,V,0,0}, /* parity */
+ {0,0,0,0,0,0},
+ {88,5,r,V,0,0}, /* max.b */
+ {88,6,r,V,0,0}, /* max.h */
+ {88,7,r,V,0,0}, /* max.w */
+ {88,8,r,V,0,0}, /* max.l */
+ {89,5,r,V,0,0}, /* min.b */
+ {89,6,r,V,0,0}, /* min.h */
+ {89,7,r,V,0,0}, /* min.w */
+ {89,8,r,V,0,0}, /* min.l */
+ {84,3,r,V,0,0}, /* sum.s */
+ {84,4,r,V,0,0}, /* sum.d */
+ {90,3,r,V,0,0}, /* prod.s */
+ {90,4,r,V,0,0}, /* prod.d */
+ {88,3,r,V,0,0}, /* max.s */
+ {88,4,r,V,0,0}, /* max.d */
+ {89,3,r,V,0,0}, /* min.s */
+ {89,4,r,V,0,0}, /* min.d */
+ {90,5,r,V,0,0}, /* prod.b */
+ {90,6,r,V,0,0}, /* prod.h */
+ {90,7,r,V,0,0}, /* prod.w */
+ {90,8,r,V,0,0}, /* prod.l */
+ {35,2,lr,VM,S,0}, /* plc.f */
+ {35,1,lr,VM,S,0}, /* plc.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr formatx[] = {
+ {0,0,0,0,0,0},
+};
+
+const struct formstr format1a[] = {
+ {91,0,imr,A,0,0}, /* halt */
+ {92,0,a4,0,0,0}, /* sysc */
+ {18,6,imr,A,0,0}, /* ld.h */
+ {18,7,imr,A,0,0}, /* ld.w */
+ {5,0,imr,A,0,0}, /* and */
+ {6,0,imr,A,0,0}, /* or */
+ {7,0,imr,A,0,0}, /* xor */
+ {8,0,imr,A,0,0}, /* shf */
+ {9,6,imr,A,0,0}, /* add.h */
+ {9,7,imr,A,0,0}, /* add.w */
+ {10,6,imr,A,0,0}, /* sub.h */
+ {10,7,imr,A,0,0}, /* sub.w */
+ {3,6,imr,A,0,0}, /* mul.h */
+ {3,7,imr,A,0,0}, /* mul.w */
+ {4,6,imr,A,0,0}, /* div.h */
+ {4,7,imr,A,0,0}, /* div.w */
+ {18,7,iml,VL,0,0}, /* ld.w */
+ {18,7,iml,VS,0,0}, /* ld.w */
+ {0,0,0,0,0,0},
+ {8,7,imr,S,0,0}, /* shf.w */
+ {93,0,a5,0,0,0}, /* trap */
+ {0,0,0,0,0,0},
+ {37,6,imr,A,0,0}, /* eq.h */
+ {37,7,imr,A,0,0}, /* eq.w */
+ {38,6,imr,A,0,0}, /* leu.h */
+ {38,7,imr,A,0,0}, /* leu.w */
+ {39,6,imr,A,0,0}, /* ltu.h */
+ {39,7,imr,A,0,0}, /* ltu.w */
+ {40,6,imr,A,0,0}, /* le.h */
+ {40,7,imr,A,0,0}, /* le.w */
+ {41,6,imr,A,0,0}, /* lt.h */
+ {41,7,imr,A,0,0}, /* lt.w */
+};
+
+const struct formstr format1b[] = {
+ {18,4,imr,S,0,0}, /* ld.d */
+ {18,10,imr,S,0,0}, /* ld.u */
+ {18,8,imr,S,0,0}, /* ld.l */
+ {18,7,imr,S,0,0}, /* ld.w */
+ {5,0,imr,S,0,0}, /* and */
+ {6,0,imr,S,0,0}, /* or */
+ {7,0,imr,S,0,0}, /* xor */
+ {8,0,imr,S,0,0}, /* shf */
+ {9,6,imr,S,0,0}, /* add.h */
+ {9,7,imr,S,0,0}, /* add.w */
+ {10,6,imr,S,0,0}, /* sub.h */
+ {10,7,imr,S,0,0}, /* sub.w */
+ {3,6,imr,S,0,0}, /* mul.h */
+ {3,7,imr,S,0,0}, /* mul.w */
+ {4,6,imr,S,0,0}, /* div.h */
+ {4,7,imr,S,0,0}, /* div.w */
+ {9,3,imr,S,0,0}, /* add.s */
+ {10,3,imr,S,0,0}, /* sub.s */
+ {3,3,imr,S,0,0}, /* mul.s */
+ {4,3,imr,S,0,0}, /* div.s */
+ {40,3,imr,S,0,0}, /* le.s */
+ {41,3,imr,S,0,0}, /* lt.s */
+ {37,6,imr,S,0,0}, /* eq.h */
+ {37,7,imr,S,0,0}, /* eq.w */
+ {38,6,imr,S,0,0}, /* leu.h */
+ {38,7,imr,S,0,0}, /* leu.w */
+ {39,6,imr,S,0,0}, /* ltu.h */
+ {39,7,imr,S,0,0}, /* ltu.w */
+ {40,6,imr,S,0,0}, /* le.h */
+ {40,7,imr,S,0,0}, /* le.w */
+ {41,6,imr,S,0,0}, /* lt.h */
+ {41,7,imr,S,0,0}, /* lt.w */
+};
+
+const struct formstr e0_format0[] = {
+ {10,3,rrr,S,V,V}, /* sub.s */
+ {10,4,rrr,S,V,V}, /* sub.d */
+ {4,3,rrr,S,V,V}, /* div.s */
+ {4,4,rrr,S,V,V}, /* div.d */
+ {10,11,rrr,S,V,V}, /* sub.s.f */
+ {10,12,rrr,S,V,V}, /* sub.d.f */
+ {4,11,rrr,S,V,V}, /* div.s.f */
+ {4,12,rrr,S,V,V}, /* div.d.f */
+ {3,11,rrr,V,V,V}, /* mul.s.f */
+ {3,12,rrr,V,V,V}, /* mul.d.f */
+ {4,11,rrr,V,V,V}, /* div.s.f */
+ {4,12,rrr,V,V,V}, /* div.d.f */
+ {3,11,rrr,V,S,V}, /* mul.s.f */
+ {3,12,rrr,V,S,V}, /* mul.d.f */
+ {4,11,rrr,V,S,V}, /* div.s.f */
+ {4,12,rrr,V,S,V}, /* div.d.f */
+ {5,2,rrr,V,V,V}, /* and.f */
+ {6,2,rrr,V,V,V}, /* or.f */
+ {7,2,rrr,V,V,V}, /* xor.f */
+ {8,2,rrr,V,V,V}, /* shf.f */
+ {5,2,rrr,V,S,V}, /* and.f */
+ {6,2,rrr,V,S,V}, /* or.f */
+ {7,2,rrr,V,S,V}, /* xor.f */
+ {8,2,rrr,V,S,V}, /* shf.f */
+ {9,11,rrr,V,V,V}, /* add.s.f */
+ {9,12,rrr,V,V,V}, /* add.d.f */
+ {10,11,rrr,V,V,V}, /* sub.s.f */
+ {10,12,rrr,V,V,V}, /* sub.d.f */
+ {9,11,rrr,V,S,V}, /* add.s.f */
+ {9,12,rrr,V,S,V}, /* add.d.f */
+ {10,11,rrr,V,S,V}, /* sub.s.f */
+ {10,12,rrr,V,S,V}, /* sub.d.f */
+ {9,13,rrr,V,V,V}, /* add.b.f */
+ {9,14,rrr,V,V,V}, /* add.h.f */
+ {9,15,rrr,V,V,V}, /* add.w.f */
+ {9,16,rrr,V,V,V}, /* add.l.f */
+ {9,13,rrr,V,S,V}, /* add.b.f */
+ {9,14,rrr,V,S,V}, /* add.h.f */
+ {9,15,rrr,V,S,V}, /* add.w.f */
+ {9,16,rrr,V,S,V}, /* add.l.f */
+ {10,13,rrr,V,V,V}, /* sub.b.f */
+ {10,14,rrr,V,V,V}, /* sub.h.f */
+ {10,15,rrr,V,V,V}, /* sub.w.f */
+ {10,16,rrr,V,V,V}, /* sub.l.f */
+ {10,13,rrr,V,S,V}, /* sub.b.f */
+ {10,14,rrr,V,S,V}, /* sub.h.f */
+ {10,15,rrr,V,S,V}, /* sub.w.f */
+ {10,16,rrr,V,S,V}, /* sub.l.f */
+ {3,13,rrr,V,V,V}, /* mul.b.f */
+ {3,14,rrr,V,V,V}, /* mul.h.f */
+ {3,15,rrr,V,V,V}, /* mul.w.f */
+ {3,16,rrr,V,V,V}, /* mul.l.f */
+ {3,13,rrr,V,S,V}, /* mul.b.f */
+ {3,14,rrr,V,S,V}, /* mul.h.f */
+ {3,15,rrr,V,S,V}, /* mul.w.f */
+ {3,16,rrr,V,S,V}, /* mul.l.f */
+ {4,13,rrr,V,V,V}, /* div.b.f */
+ {4,14,rrr,V,V,V}, /* div.h.f */
+ {4,15,rrr,V,V,V}, /* div.w.f */
+ {4,16,rrr,V,V,V}, /* div.l.f */
+ {4,13,rrr,V,S,V}, /* div.b.f */
+ {4,14,rrr,V,S,V}, /* div.h.f */
+ {4,15,rrr,V,S,V}, /* div.w.f */
+ {4,16,rrr,V,S,V}, /* div.l.f */
+};
+
+const struct formstr e0_format1[] = {
+ {0,0,0,0,0,0},
+ {94,0,a3,0,0,0}, /* tst */
+ {95,0,a3,0,0,0}, /* lck */
+ {96,0,a3,0,0,0}, /* ulk */
+ {17,0,a1r,S,0,0}, /* ldea */
+ {97,0,a1r,A,0,0}, /* spawn */
+ {98,0,a1r,A,0,0}, /* ldcmr */
+ {99,0,a2r,A,0,0}, /* stcmr */
+ {100,0,a1r,A,0,0}, /* popr */
+ {101,0,a2r,A,0,0}, /* pshr */
+ {102,7,a1r,A,0,0}, /* rcvr.w */
+ {103,7,a2r,A,0,0}, /* matm.w */
+ {104,7,a2r,A,0,0}, /* sndr.w */
+ {104,8,a2r,S,0,0}, /* sndr.l */
+ {102,8,a1r,S,0,0}, /* rcvr.l */
+ {103,8,a2r,S,0,0}, /* matm.l */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {105,7,a2r,A,0,0}, /* putr.w */
+ {105,8,a2r,S,0,0}, /* putr.l */
+ {106,7,a1r,A,0,0}, /* getr.w */
+ {106,8,a1r,S,0,0}, /* getr.l */
+ {26,13,a2r,S,0,0}, /* ste.b.f */
+ {26,14,a2r,S,0,0}, /* ste.h.f */
+ {26,15,a2r,S,0,0}, /* ste.w.f */
+ {26,16,a2r,S,0,0}, /* ste.l.f */
+ {107,7,a2r,A,0,0}, /* matr.w */
+ {108,7,a2r,A,0,0}, /* mat.w */
+ {109,7,a1r,A,0,0}, /* get.w */
+ {110,7,a1r,A,0,0}, /* rcv.w */
+ {0,0,0,0,0,0},
+ {111,7,a1r,A,0,0}, /* inc.w */
+ {112,7,a2r,A,0,0}, /* put.w */
+ {113,7,a2r,A,0,0}, /* snd.w */
+ {107,8,a2r,S,0,0}, /* matr.l */
+ {108,8,a2r,S,0,0}, /* mat.l */
+ {109,8,a1r,S,0,0}, /* get.l */
+ {110,8,a1r,S,0,0}, /* rcv.l */
+ {0,0,0,0,0,0},
+ {111,8,a1r,S,0,0}, /* inc.l */
+ {112,8,a2r,S,0,0}, /* put.l */
+ {113,8,a2r,S,0,0}, /* snd.l */
+ {18,13,a1r,V,0,0}, /* ld.b.f */
+ {18,14,a1r,V,0,0}, /* ld.h.f */
+ {18,15,a1r,V,0,0}, /* ld.w.f */
+ {18,16,a1r,V,0,0}, /* ld.l.f */
+ {21,13,a2r,V,0,0}, /* st.b.f */
+ {21,14,a2r,V,0,0}, /* st.h.f */
+ {21,15,a2r,V,0,0}, /* st.w.f */
+ {21,16,a2r,V,0,0}, /* st.l.f */
+};
+
+const struct formstr e0_format2[] = {
+ {28,5,rr,V,V,0}, /* cvtw.b */
+ {28,6,rr,V,V,0}, /* cvtw.h */
+ {29,7,rr,V,V,0}, /* cvtb.w */
+ {30,7,rr,V,V,0}, /* cvth.w */
+ {28,13,rr,V,V,0}, /* cvtw.b.f */
+ {28,14,rr,V,V,0}, /* cvtw.h.f */
+ {29,15,rr,V,V,0}, /* cvtb.w.f */
+ {30,15,rr,V,V,0}, /* cvth.w.f */
+ {31,8,rr,V,V,0}, /* cvts.l */
+ {32,7,rr,V,V,0}, /* cvtd.w */
+ {33,3,rr,V,V,0}, /* cvtl.s */
+ {28,4,rr,V,V,0}, /* cvtw.d */
+ {31,16,rr,V,V,0}, /* cvts.l.f */
+ {32,15,rr,V,V,0}, /* cvtd.w.f */
+ {33,11,rr,V,V,0}, /* cvtl.s.f */
+ {28,12,rr,V,V,0}, /* cvtw.d.f */
+ {114,0,rr,S,S,0}, /* enal */
+ {8,7,rr,S,S,0}, /* shf.w */
+ {115,0,rr,S,S,0}, /* enag */
+ {0,0,0,0,0,0},
+ {28,4,rr,S,S,0}, /* cvtw.d */
+ {32,7,rr,S,S,0}, /* cvtd.w */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {116,3,rr,S,S,0}, /* frint.s */
+ {116,4,rr,S,S,0}, /* frint.d */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {116,3,rr,V,V,0}, /* frint.s */
+ {116,4,rr,V,V,0}, /* frint.d */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {116,11,rr,V,V,0}, /* frint.s.f */
+ {116,12,rr,V,V,0}, /* frint.d.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {81,3,rr,V,V,0}, /* sqrt.s */
+ {81,4,rr,V,V,0}, /* sqrt.d */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {81,11,rr,V,V,0}, /* sqrt.s.f */
+ {81,12,rr,V,V,0}, /* sqrt.d.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e0_format3[] = {
+ {32,11,rr,V,V,0}, /* cvtd.s.f */
+ {31,12,rr,V,V,0}, /* cvts.d.f */
+ {33,12,rr,V,V,0}, /* cvtl.d.f */
+ {32,16,rr,V,V,0}, /* cvtd.l.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {36,2,rr,V,V,0}, /* tzc.f */
+ {44,2,rr,V,V,0}, /* lop.f */
+ {117,2,rr,V,V,0}, /* xpnd.f */
+ {42,2,rr,V,V,0}, /* not.f */
+ {8,2,rr,S,V,0}, /* shf.f */
+ {35,17,rr,V,V,0}, /* plc.t.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {37,11,rr,V,V,0}, /* eq.s.f */
+ {37,12,rr,V,V,0}, /* eq.d.f */
+ {43,11,rr,V,V,0}, /* neg.s.f */
+ {43,12,rr,V,V,0}, /* neg.d.f */
+ {37,11,rr,S,V,0}, /* eq.s.f */
+ {37,12,rr,S,V,0}, /* eq.d.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {40,11,rr,V,V,0}, /* le.s.f */
+ {40,12,rr,V,V,0}, /* le.d.f */
+ {41,11,rr,V,V,0}, /* lt.s.f */
+ {41,12,rr,V,V,0}, /* lt.d.f */
+ {40,11,rr,S,V,0}, /* le.s.f */
+ {40,12,rr,S,V,0}, /* le.d.f */
+ {41,11,rr,S,V,0}, /* lt.s.f */
+ {41,12,rr,S,V,0}, /* lt.d.f */
+ {37,13,rr,V,V,0}, /* eq.b.f */
+ {37,14,rr,V,V,0}, /* eq.h.f */
+ {37,15,rr,V,V,0}, /* eq.w.f */
+ {37,16,rr,V,V,0}, /* eq.l.f */
+ {37,13,rr,S,V,0}, /* eq.b.f */
+ {37,14,rr,S,V,0}, /* eq.h.f */
+ {37,15,rr,S,V,0}, /* eq.w.f */
+ {37,16,rr,S,V,0}, /* eq.l.f */
+ {40,13,rr,V,V,0}, /* le.b.f */
+ {40,14,rr,V,V,0}, /* le.h.f */
+ {40,15,rr,V,V,0}, /* le.w.f */
+ {40,16,rr,V,V,0}, /* le.l.f */
+ {40,13,rr,S,V,0}, /* le.b.f */
+ {40,14,rr,S,V,0}, /* le.h.f */
+ {40,15,rr,S,V,0}, /* le.w.f */
+ {40,16,rr,S,V,0}, /* le.l.f */
+ {41,13,rr,V,V,0}, /* lt.b.f */
+ {41,14,rr,V,V,0}, /* lt.h.f */
+ {41,15,rr,V,V,0}, /* lt.w.f */
+ {41,16,rr,V,V,0}, /* lt.l.f */
+ {41,13,rr,S,V,0}, /* lt.b.f */
+ {41,14,rr,S,V,0}, /* lt.h.f */
+ {41,15,rr,S,V,0}, /* lt.w.f */
+ {41,16,rr,S,V,0}, /* lt.l.f */
+ {43,13,rr,V,V,0}, /* neg.b.f */
+ {43,14,rr,V,V,0}, /* neg.h.f */
+ {43,15,rr,V,V,0}, /* neg.w.f */
+ {43,16,rr,V,V,0}, /* neg.l.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e0_format4[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e0_format5[] = {
+ {51,13,rr,V,V,0}, /* ldvi.b.f */
+ {51,14,rr,V,V,0}, /* ldvi.h.f */
+ {51,15,rr,V,V,0}, /* ldvi.w.f */
+ {51,16,rr,V,V,0}, /* ldvi.l.f */
+ {28,11,rr,V,V,0}, /* cvtw.s.f */
+ {31,15,rr,V,V,0}, /* cvts.w.f */
+ {28,16,rr,V,V,0}, /* cvtw.l.f */
+ {33,15,rr,V,V,0}, /* cvtl.w.f */
+ {52,13,rxr,V,V,0}, /* stvi.b.f */
+ {52,14,rxr,V,V,0}, /* stvi.h.f */
+ {52,15,rxr,V,V,0}, /* stvi.w.f */
+ {52,16,rxr,V,V,0}, /* stvi.l.f */
+ {52,13,rxr,S,V,0}, /* stvi.b.f */
+ {52,14,rxr,S,V,0}, /* stvi.h.f */
+ {52,15,rxr,S,V,0}, /* stvi.w.f */
+ {52,16,rxr,S,V,0}, /* stvi.l.f */
+};
+
+const struct formstr e0_format6[] = {
+ {0,0,rxl,S,CIR,0}, /* mov */
+ {0,0,lr,CIR,S,0}, /* mov */
+ {0,0,lr,TOC,S,0}, /* mov */
+ {0,0,lr,CPUID,S,0}, /* mov */
+ {0,0,rxl,S,TTR,0}, /* mov */
+ {0,0,lr,TTR,S,0}, /* mov */
+ {118,0,nops,0,0,0}, /* ctrsl */
+ {119,0,nops,0,0,0}, /* ctrsg */
+ {0,0,rxl,S,VMU,0}, /* mov */
+ {0,0,lr,VMU,S,0}, /* mov */
+ {0,0,rxl,S,VML,0}, /* mov */
+ {0,0,lr,VML,S,0}, /* mov */
+ {0,0,rxl,S,ICR,0}, /* mov */
+ {0,0,lr,ICR,S,0}, /* mov */
+ {0,0,rxl,S,TCPU,0}, /* mov */
+ {0,0,lr,TCPU,S,0}, /* mov */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {120,0,nops,0,0,0}, /* stop */
+ {0,0,0,0,0,0},
+ {0,0,rxl,S,TID,0}, /* mov */
+ {0,0,lr,TID,S,0}, /* mov */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e0_format7[] = {
+ {84,13,r,V,0,0}, /* sum.b.f */
+ {84,14,r,V,0,0}, /* sum.h.f */
+ {84,15,r,V,0,0}, /* sum.w.f */
+ {84,16,r,V,0,0}, /* sum.l.f */
+ {85,2,r,V,0,0}, /* all.f */
+ {86,2,r,V,0,0}, /* any.f */
+ {87,2,r,V,0,0}, /* parity.f */
+ {0,0,0,0,0,0},
+ {88,13,r,V,0,0}, /* max.b.f */
+ {88,14,r,V,0,0}, /* max.h.f */
+ {88,15,r,V,0,0}, /* max.w.f */
+ {88,16,r,V,0,0}, /* max.l.f */
+ {89,13,r,V,0,0}, /* min.b.f */
+ {89,14,r,V,0,0}, /* min.h.f */
+ {89,15,r,V,0,0}, /* min.w.f */
+ {89,16,r,V,0,0}, /* min.l.f */
+ {84,11,r,V,0,0}, /* sum.s.f */
+ {84,12,r,V,0,0}, /* sum.d.f */
+ {90,11,r,V,0,0}, /* prod.s.f */
+ {90,12,r,V,0,0}, /* prod.d.f */
+ {88,11,r,V,0,0}, /* max.s.f */
+ {88,12,r,V,0,0}, /* max.d.f */
+ {89,11,r,V,0,0}, /* min.s.f */
+ {89,12,r,V,0,0}, /* min.d.f */
+ {90,13,r,V,0,0}, /* prod.b.f */
+ {90,14,r,V,0,0}, /* prod.h.f */
+ {90,15,r,V,0,0}, /* prod.w.f */
+ {90,16,r,V,0,0}, /* prod.l.f */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e1_format0[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {10,18,rrr,S,V,V}, /* sub.s.t */
+ {10,19,rrr,S,V,V}, /* sub.d.t */
+ {4,18,rrr,S,V,V}, /* div.s.t */
+ {4,19,rrr,S,V,V}, /* div.d.t */
+ {3,18,rrr,V,V,V}, /* mul.s.t */
+ {3,19,rrr,V,V,V}, /* mul.d.t */
+ {4,18,rrr,V,V,V}, /* div.s.t */
+ {4,19,rrr,V,V,V}, /* div.d.t */
+ {3,18,rrr,V,S,V}, /* mul.s.t */
+ {3,19,rrr,V,S,V}, /* mul.d.t */
+ {4,18,rrr,V,S,V}, /* div.s.t */
+ {4,19,rrr,V,S,V}, /* div.d.t */
+ {5,1,rrr,V,V,V}, /* and.t */
+ {6,1,rrr,V,V,V}, /* or.t */
+ {7,1,rrr,V,V,V}, /* xor.t */
+ {8,1,rrr,V,V,V}, /* shf.t */
+ {5,1,rrr,V,S,V}, /* and.t */
+ {6,1,rrr,V,S,V}, /* or.t */
+ {7,1,rrr,V,S,V}, /* xor.t */
+ {8,1,rrr,V,S,V}, /* shf.t */
+ {9,18,rrr,V,V,V}, /* add.s.t */
+ {9,19,rrr,V,V,V}, /* add.d.t */
+ {10,18,rrr,V,V,V}, /* sub.s.t */
+ {10,19,rrr,V,V,V}, /* sub.d.t */
+ {9,18,rrr,V,S,V}, /* add.s.t */
+ {9,19,rrr,V,S,V}, /* add.d.t */
+ {10,18,rrr,V,S,V}, /* sub.s.t */
+ {10,19,rrr,V,S,V}, /* sub.d.t */
+ {9,20,rrr,V,V,V}, /* add.b.t */
+ {9,21,rrr,V,V,V}, /* add.h.t */
+ {9,22,rrr,V,V,V}, /* add.w.t */
+ {9,23,rrr,V,V,V}, /* add.l.t */
+ {9,20,rrr,V,S,V}, /* add.b.t */
+ {9,21,rrr,V,S,V}, /* add.h.t */
+ {9,22,rrr,V,S,V}, /* add.w.t */
+ {9,23,rrr,V,S,V}, /* add.l.t */
+ {10,20,rrr,V,V,V}, /* sub.b.t */
+ {10,21,rrr,V,V,V}, /* sub.h.t */
+ {10,22,rrr,V,V,V}, /* sub.w.t */
+ {10,23,rrr,V,V,V}, /* sub.l.t */
+ {10,20,rrr,V,S,V}, /* sub.b.t */
+ {10,21,rrr,V,S,V}, /* sub.h.t */
+ {10,22,rrr,V,S,V}, /* sub.w.t */
+ {10,23,rrr,V,S,V}, /* sub.l.t */
+ {3,20,rrr,V,V,V}, /* mul.b.t */
+ {3,21,rrr,V,V,V}, /* mul.h.t */
+ {3,22,rrr,V,V,V}, /* mul.w.t */
+ {3,23,rrr,V,V,V}, /* mul.l.t */
+ {3,20,rrr,V,S,V}, /* mul.b.t */
+ {3,21,rrr,V,S,V}, /* mul.h.t */
+ {3,22,rrr,V,S,V}, /* mul.w.t */
+ {3,23,rrr,V,S,V}, /* mul.l.t */
+ {4,20,rrr,V,V,V}, /* div.b.t */
+ {4,21,rrr,V,V,V}, /* div.h.t */
+ {4,22,rrr,V,V,V}, /* div.w.t */
+ {4,23,rrr,V,V,V}, /* div.l.t */
+ {4,20,rrr,V,S,V}, /* div.b.t */
+ {4,21,rrr,V,S,V}, /* div.h.t */
+ {4,22,rrr,V,S,V}, /* div.w.t */
+ {4,23,rrr,V,S,V}, /* div.l.t */
+};
+
+const struct formstr e1_format1[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {26,20,a2r,S,0,0}, /* ste.b.t */
+ {26,21,a2r,S,0,0}, /* ste.h.t */
+ {26,22,a2r,S,0,0}, /* ste.w.t */
+ {26,23,a2r,S,0,0}, /* ste.l.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {18,20,a1r,V,0,0}, /* ld.b.t */
+ {18,21,a1r,V,0,0}, /* ld.h.t */
+ {18,22,a1r,V,0,0}, /* ld.w.t */
+ {18,23,a1r,V,0,0}, /* ld.l.t */
+ {21,20,a2r,V,0,0}, /* st.b.t */
+ {21,21,a2r,V,0,0}, /* st.h.t */
+ {21,22,a2r,V,0,0}, /* st.w.t */
+ {21,23,a2r,V,0,0}, /* st.l.t */
+};
+
+const struct formstr e1_format2[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {28,20,rr,V,V,0}, /* cvtw.b.t */
+ {28,21,rr,V,V,0}, /* cvtw.h.t */
+ {29,22,rr,V,V,0}, /* cvtb.w.t */
+ {30,22,rr,V,V,0}, /* cvth.w.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {31,23,rr,V,V,0}, /* cvts.l.t */
+ {32,22,rr,V,V,0}, /* cvtd.w.t */
+ {33,18,rr,V,V,0}, /* cvtl.s.t */
+ {28,19,rr,V,V,0}, /* cvtw.d.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {116,18,rr,V,V,0}, /* frint.s.t */
+ {116,19,rr,V,V,0}, /* frint.d.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {81,18,rr,V,V,0}, /* sqrt.s.t */
+ {81,19,rr,V,V,0}, /* sqrt.d.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e1_format3[] = {
+ {32,18,rr,V,V,0}, /* cvtd.s.t */
+ {31,19,rr,V,V,0}, /* cvts.d.t */
+ {33,19,rr,V,V,0}, /* cvtl.d.t */
+ {32,23,rr,V,V,0}, /* cvtd.l.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {36,1,rr,V,V,0}, /* tzc.t */
+ {44,1,rr,V,V,0}, /* lop.t */
+ {117,1,rr,V,V,0}, /* xpnd.t */
+ {42,1,rr,V,V,0}, /* not.t */
+ {8,1,rr,S,V,0}, /* shf.t */
+ {35,24,rr,V,V,0}, /* plc.t.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {37,18,rr,V,V,0}, /* eq.s.t */
+ {37,19,rr,V,V,0}, /* eq.d.t */
+ {43,18,rr,V,V,0}, /* neg.s.t */
+ {43,19,rr,V,V,0}, /* neg.d.t */
+ {37,18,rr,S,V,0}, /* eq.s.t */
+ {37,19,rr,S,V,0}, /* eq.d.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {40,18,rr,V,V,0}, /* le.s.t */
+ {40,19,rr,V,V,0}, /* le.d.t */
+ {41,18,rr,V,V,0}, /* lt.s.t */
+ {41,19,rr,V,V,0}, /* lt.d.t */
+ {40,18,rr,S,V,0}, /* le.s.t */
+ {40,19,rr,S,V,0}, /* le.d.t */
+ {41,18,rr,S,V,0}, /* lt.s.t */
+ {41,19,rr,S,V,0}, /* lt.d.t */
+ {37,20,rr,V,V,0}, /* eq.b.t */
+ {37,21,rr,V,V,0}, /* eq.h.t */
+ {37,22,rr,V,V,0}, /* eq.w.t */
+ {37,23,rr,V,V,0}, /* eq.l.t */
+ {37,20,rr,S,V,0}, /* eq.b.t */
+ {37,21,rr,S,V,0}, /* eq.h.t */
+ {37,22,rr,S,V,0}, /* eq.w.t */
+ {37,23,rr,S,V,0}, /* eq.l.t */
+ {40,20,rr,V,V,0}, /* le.b.t */
+ {40,21,rr,V,V,0}, /* le.h.t */
+ {40,22,rr,V,V,0}, /* le.w.t */
+ {40,23,rr,V,V,0}, /* le.l.t */
+ {40,20,rr,S,V,0}, /* le.b.t */
+ {40,21,rr,S,V,0}, /* le.h.t */
+ {40,22,rr,S,V,0}, /* le.w.t */
+ {40,23,rr,S,V,0}, /* le.l.t */
+ {41,20,rr,V,V,0}, /* lt.b.t */
+ {41,21,rr,V,V,0}, /* lt.h.t */
+ {41,22,rr,V,V,0}, /* lt.w.t */
+ {41,23,rr,V,V,0}, /* lt.l.t */
+ {41,20,rr,S,V,0}, /* lt.b.t */
+ {41,21,rr,S,V,0}, /* lt.h.t */
+ {41,22,rr,S,V,0}, /* lt.w.t */
+ {41,23,rr,S,V,0}, /* lt.l.t */
+ {43,20,rr,V,V,0}, /* neg.b.t */
+ {43,21,rr,V,V,0}, /* neg.h.t */
+ {43,22,rr,V,V,0}, /* neg.w.t */
+ {43,23,rr,V,V,0}, /* neg.l.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e1_format4[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e1_format5[] = {
+ {51,20,rr,V,V,0}, /* ldvi.b.t */
+ {51,21,rr,V,V,0}, /* ldvi.h.t */
+ {51,22,rr,V,V,0}, /* ldvi.w.t */
+ {51,23,rr,V,V,0}, /* ldvi.l.t */
+ {28,18,rr,V,V,0}, /* cvtw.s.t */
+ {31,22,rr,V,V,0}, /* cvts.w.t */
+ {28,23,rr,V,V,0}, /* cvtw.l.t */
+ {33,22,rr,V,V,0}, /* cvtl.w.t */
+ {52,20,rxr,V,V,0}, /* stvi.b.t */
+ {52,21,rxr,V,V,0}, /* stvi.h.t */
+ {52,22,rxr,V,V,0}, /* stvi.w.t */
+ {52,23,rxr,V,V,0}, /* stvi.l.t */
+ {52,20,rxr,S,V,0}, /* stvi.b.t */
+ {52,21,rxr,S,V,0}, /* stvi.h.t */
+ {52,22,rxr,S,V,0}, /* stvi.w.t */
+ {52,23,rxr,S,V,0}, /* stvi.l.t */
+};
+
+const struct formstr e1_format6[] = {
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+const struct formstr e1_format7[] = {
+ {84,20,r,V,0,0}, /* sum.b.t */
+ {84,21,r,V,0,0}, /* sum.h.t */
+ {84,22,r,V,0,0}, /* sum.w.t */
+ {84,23,r,V,0,0}, /* sum.l.t */
+ {85,1,r,V,0,0}, /* all.t */
+ {86,1,r,V,0,0}, /* any.t */
+ {87,1,r,V,0,0}, /* parity.t */
+ {0,0,0,0,0,0},
+ {88,20,r,V,0,0}, /* max.b.t */
+ {88,21,r,V,0,0}, /* max.h.t */
+ {88,22,r,V,0,0}, /* max.w.t */
+ {88,23,r,V,0,0}, /* max.l.t */
+ {89,20,r,V,0,0}, /* min.b.t */
+ {89,21,r,V,0,0}, /* min.h.t */
+ {89,22,r,V,0,0}, /* min.w.t */
+ {89,23,r,V,0,0}, /* min.l.t */
+ {84,18,r,V,0,0}, /* sum.s.t */
+ {84,19,r,V,0,0}, /* sum.d.t */
+ {90,18,r,V,0,0}, /* prod.s.t */
+ {90,19,r,V,0,0}, /* prod.d.t */
+ {88,18,r,V,0,0}, /* max.s.t */
+ {88,19,r,V,0,0}, /* max.d.t */
+ {89,18,r,V,0,0}, /* min.s.t */
+ {89,19,r,V,0,0}, /* min.d.t */
+ {90,20,r,V,0,0}, /* prod.b.t */
+ {90,21,r,V,0,0}, /* prod.h.t */
+ {90,22,r,V,0,0}, /* prod.w.t */
+ {90,23,r,V,0,0}, /* prod.l.t */
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+ {0,0,0,0,0,0},
+};
+
+char *lop[] = {
+ "mov", /* 0 */
+ "merg", /* 1 */
+ "mask", /* 2 */
+ "mul", /* 3 */
+ "div", /* 4 */
+ "and", /* 5 */
+ "or", /* 6 */
+ "xor", /* 7 */
+ "shf", /* 8 */
+ "add", /* 9 */
+ "sub", /* 10 */
+ "exit", /* 11 */
+ "jmp", /* 12 */
+ "jmpi", /* 13 */
+ "jmpa", /* 14 */
+ "jmps", /* 15 */
+ "tac", /* 16 */
+ "ldea", /* 17 */
+ "ld", /* 18 */
+ "tas", /* 19 */
+ "pshea", /* 20 */
+ "st", /* 21 */
+ "call", /* 22 */
+ "calls", /* 23 */
+ "callq", /* 24 */
+ "pfork", /* 25 */
+ "ste", /* 26 */
+ "incr", /* 27 */
+ "cvtw", /* 28 */
+ "cvtb", /* 29 */
+ "cvth", /* 30 */
+ "cvts", /* 31 */
+ "cvtd", /* 32 */
+ "cvtl", /* 33 */
+ "ldpa", /* 34 */
+ "plc", /* 35 */
+ "tzc", /* 36 */
+ "eq", /* 37 */
+ "leu", /* 38 */
+ "ltu", /* 39 */
+ "le", /* 40 */
+ "lt", /* 41 */
+ "not", /* 42 */
+ "neg", /* 43 */
+ "lop", /* 44 */
+ "cprs", /* 45 */
+ "nop", /* 46 */
+ "br", /* 47 */
+ "bri", /* 48 */
+ "bra", /* 49 */
+ "brs", /* 50 */
+ "ldvi", /* 51 */
+ "stvi", /* 52 */
+ "ldsdr", /* 53 */
+ "ldkdr", /* 54 */
+ "ln", /* 55 */
+ "patu", /* 56 */
+ "pate", /* 57 */
+ "pich", /* 58 */
+ "plch", /* 59 */
+ "idle", /* 60 */
+ "rtnq", /* 61 */
+ "cfork", /* 62 */
+ "rtn", /* 63 */
+ "wfork", /* 64 */
+ "join", /* 65 */
+ "rtnc", /* 66 */
+ "exp", /* 67 */
+ "sin", /* 68 */
+ "cos", /* 69 */
+ "psh", /* 70 */
+ "pop", /* 71 */
+ "eni", /* 72 */
+ "dsi", /* 73 */
+ "bkpt", /* 74 */
+ "msync", /* 75 */
+ "mski", /* 76 */
+ "xmti", /* 77 */
+ "tstvv", /* 78 */
+ "diag", /* 79 */
+ "pbkpt", /* 80 */
+ "sqrt", /* 81 */
+ "casr", /* 82 */
+ "atan", /* 83 */
+ "sum", /* 84 */
+ "all", /* 85 */
+ "any", /* 86 */
+ "parity", /* 87 */
+ "max", /* 88 */
+ "min", /* 89 */
+ "prod", /* 90 */
+ "halt", /* 91 */
+ "sysc", /* 92 */
+ "trap", /* 93 */
+ "tst", /* 94 */
+ "lck", /* 95 */
+ "ulk", /* 96 */
+ "spawn", /* 97 */
+ "ldcmr", /* 98 */
+ "stcmr", /* 99 */
+ "popr", /* 100 */
+ "pshr", /* 101 */
+ "rcvr", /* 102 */
+ "matm", /* 103 */
+ "sndr", /* 104 */
+ "putr", /* 105 */
+ "getr", /* 106 */
+ "matr", /* 107 */
+ "mat", /* 108 */
+ "get", /* 109 */
+ "rcv", /* 110 */
+ "inc", /* 111 */
+ "put", /* 112 */
+ "snd", /* 113 */
+ "enal", /* 114 */
+ "enag", /* 115 */
+ "frint", /* 116 */
+ "xpnd", /* 117 */
+ "ctrsl", /* 118 */
+ "ctrsg", /* 119 */
+ "stop", /* 120 */
+};
+
+char *rop[] = {
+ "", /* 0 */
+ ".t", /* 1 */
+ ".f", /* 2 */
+ ".s", /* 3 */
+ ".d", /* 4 */
+ ".b", /* 5 */
+ ".h", /* 6 */
+ ".w", /* 7 */
+ ".l", /* 8 */
+ ".x", /* 9 */
+ ".u", /* 10 */
+ ".s.f", /* 11 */
+ ".d.f", /* 12 */
+ ".b.f", /* 13 */
+ ".h.f", /* 14 */
+ ".w.f", /* 15 */
+ ".l.f", /* 16 */
+ ".t.f", /* 17 */
+ ".s.t", /* 18 */
+ ".d.t", /* 19 */
+ ".b.t", /* 20 */
+ ".h.t", /* 21 */
+ ".w.t", /* 22 */
+ ".l.t", /* 23 */
+ ".t.t", /* 24 */
+};
diff --git a/include/opcode/cris.h b/include/opcode/cris.h
new file mode 100644
index 000000000..1f10034c3
--- /dev/null
+++ b/include/opcode/cris.h
@@ -0,0 +1,300 @@
+/* cris.h -- Header file for CRIS opcode and register tables.
+ Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Axis Communications AB, Lund, Sweden.
+ Originally written for GAS 1.38.1 by Mikael Asker.
+ Updated, BFDized and GNUified by Hans-Peter Nilsson.
+
+This file is part of GAS, GDB and the GNU binutils.
+
+GAS, GDB, and GNU binutils is free software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License as
+published by the Free Software Foundation; either version 2, or (at your
+option) any later version.
+
+GAS, GDB, and GNU binutils are distributed in the hope that they will be
+useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef __CRIS_H_INCLUDED_
+#define __CRIS_H_INCLUDED_
+
+#if !defined(__STDC__) && !defined(const)
+#define const
+#endif
+
+
+/* Registers. */
+#define MAX_REG (15)
+#define REG_SP (14)
+#define REG_PC (15)
+
+/* CPU version control of disassembly and assembly of instructions.
+ May affect how the instruction is assembled, at least the size of
+ immediate operands. */
+enum cris_insn_version_usage
+{
+ /* Any version. */
+ cris_ver_version_all=0,
+
+ /* Indeterminate (intended for disassembly only, or obsolete). */
+ cris_ver_warning,
+
+ /* Simulator only (reserved). */
+ cris_ver_sim,
+
+ /* Only for v0..3 (Etrax 1..4). */
+ cris_ver_v0_3,
+
+ /* Only for v3 or higher (ETRAX 4 and beyond). */
+ cris_ver_v3p,
+
+ /* Only for v8 (Etrax 100). */
+ cris_ver_v8,
+
+ /* Only for v8 or higher (ETRAX 100, ETRAX 100 LX). */
+ cris_ver_v8p,
+
+ /* Only for v10 or higher (ETRAX 100 LX).
+ Of course some or all these of may change to cris_ver_v10p if/when
+ there's a new revision. */
+ cris_ver_v10p
+};
+
+
+/* Special registers. */
+struct cris_spec_reg
+{
+ const char *const name;
+ unsigned int number;
+
+ /* The size of the register. */
+ unsigned int reg_size;
+
+ /* What CPU version the special register of that name is implemented
+ in. If cris_ver_warning, emit an unimplemented-warning. */
+ enum cris_insn_version_usage applicable_version;
+
+ /* There might be a specific warning for using a special register
+ here. */
+ const char *const warning;
+};
+extern const struct cris_spec_reg cris_spec_regs[];
+
+/* Opcode-dependent constants. */
+#define AUTOINCR_BIT (0x04)
+
+/* Prefixes. */
+#define BDAP_QUICK_OPCODE (0x0100)
+#define BDAP_QUICK_Z_BITS (0x0e00)
+
+#define BIAP_OPCODE (0x0540)
+#define BIAP_Z_BITS (0x0a80)
+
+#define DIP_OPCODE (0x0970)
+#define DIP_Z_BITS (0xf280)
+
+#define BDAP_INDIR_LOW (0x40)
+#define BDAP_INDIR_LOW_Z (0x80)
+#define BDAP_INDIR_HIGH (0x09)
+#define BDAP_INDIR_HIGH_Z (0x02)
+
+#define BDAP_INDIR_OPCODE (BDAP_INDIR_HIGH * 0x0100 + BDAP_INDIR_LOW)
+#define BDAP_INDIR_Z_BITS (BDAP_INDIR_HIGH_Z * 0x100 + BDAP_INDIR_LOW_Z)
+#define BDAP_PC_LOW (BDAP_INDIR_LOW + REG_PC)
+#define BDAP_INCR_HIGH (BDAP_INDIR_HIGH + AUTOINCR_BIT)
+
+/* No prefix must have this code for its "match" bits in the
+ opcode-table. "BCC .+2" will do nicely. */
+#define NO_CRIS_PREFIX 0
+
+/* Definitions for condition codes. */
+#define CC_CC 0x0
+#define CC_HS 0x0
+#define CC_CS 0x1
+#define CC_LO 0x1
+#define CC_NE 0x2
+#define CC_EQ 0x3
+#define CC_VC 0x4
+#define CC_VS 0x5
+#define CC_PL 0x6
+#define CC_MI 0x7
+#define CC_LS 0x8
+#define CC_HI 0x9
+#define CC_GE 0xA
+#define CC_LT 0xB
+#define CC_GT 0xC
+#define CC_LE 0xD
+#define CC_A 0xE
+#define CC_EXT 0xF
+
+/* A table of strings "cc", "cs"... indexed with condition code
+ values as above. */
+extern const char *const cris_cc_strings[];
+
+/* Bcc quick. */
+#define BRANCH_QUICK_LOW (0)
+#define BRANCH_QUICK_HIGH (0)
+#define BRANCH_QUICK_OPCODE (BRANCH_QUICK_HIGH * 0x0100 + BRANCH_QUICK_LOW)
+#define BRANCH_QUICK_Z_BITS (0x0F00)
+
+/* BA quick. */
+#define BA_QUICK_HIGH (BRANCH_QUICK_HIGH + CC_A * 0x10)
+#define BA_QUICK_OPCODE (BA_QUICK_HIGH * 0x100 + BRANCH_QUICK_LOW)
+
+/* Bcc [PC+]. */
+#define BRANCH_PC_LOW (0xFF)
+#define BRANCH_INCR_HIGH (0x0D)
+#define BA_PC_INCR_OPCODE \
+ ((BRANCH_INCR_HIGH + CC_A * 0x10) * 0x0100 + BRANCH_PC_LOW)
+
+/* Jump. */
+/* Note that old versions generated special register 8 (in high bits)
+ and not-that-old versions recognized it as a jump-instruction.
+ That opcode now belongs to JUMPU. */
+#define JUMP_INDIR_OPCODE (0x0930)
+#define JUMP_INDIR_Z_BITS (0xf2c0)
+#define JUMP_PC_INCR_OPCODE \
+ (JUMP_INDIR_OPCODE + AUTOINCR_BIT * 0x0100 + REG_PC)
+#define ADD_PC_INCR_OPCODE \
+ (0xfa00 + (2 << 4) + AUTOINCR_BIT * 0x0100 + REG_PC)
+
+/* Nop. */
+#define NOP_OPCODE (0x050F)
+#define NOP_Z_BITS (0xFAF0)
+
+/* Structure of an opcode table entry. */
+enum cris_imm_oprnd_size_type
+{
+ /* No size is applicable. */
+ SIZE_NONE,
+
+ /* Always 32 bits. */
+ SIZE_FIX_32,
+
+ /* Indicated by size of special register. */
+ SIZE_SPEC_REG,
+
+ /* Indicated by size field. */
+ SIZE_FIELD
+};
+
+/* For GDB. FIXME: Is this the best way to handle opcode
+ interpretation? */
+enum cris_op_type
+{
+ cris_not_implemented_op = 0,
+ cris_abs_op,
+ cris_addi_op,
+ cris_asr_op,
+ cris_asrq_op,
+ cris_ax_ei_setf_op,
+ cris_bdap_prefix,
+ cris_biap_prefix,
+ cris_break_op,
+ cris_btst_nop_op,
+ cris_clearf_di_op,
+ cris_dip_prefix,
+ cris_dstep_logshift_mstep_neg_not_op,
+ cris_eight_bit_offset_branch_op,
+ cris_move_mem_to_reg_movem_op,
+ cris_move_reg_to_mem_movem_op,
+ cris_move_to_preg_op,
+ cris_muls_op,
+ cris_mulu_op,
+ cris_none_reg_mode_add_sub_cmp_and_or_move_op,
+ cris_none_reg_mode_clear_test_op,
+ cris_none_reg_mode_jump_op,
+ cris_none_reg_mode_move_from_preg_op,
+ cris_quick_mode_add_sub_op,
+ cris_quick_mode_and_cmp_move_or_op,
+ cris_quick_mode_bdap_prefix,
+ cris_reg_mode_add_sub_cmp_and_or_move_op,
+ cris_reg_mode_clear_op,
+ cris_reg_mode_jump_op,
+ cris_reg_mode_move_from_preg_op,
+ cris_reg_mode_test_op,
+ cris_scc_op,
+ cris_sixteen_bit_offset_branch_op,
+ cris_three_operand_add_sub_cmp_and_or_op,
+ cris_three_operand_bound_op,
+ cris_two_operand_bound_op,
+ cris_xor_op
+};
+
+struct cris_opcode
+{
+ /* The name of the insn. */
+ const char *name;
+
+ /* Bits that must be 1 for a match. */
+ unsigned int match;
+
+ /* Bits that must be 0 for a match. */
+ unsigned int lose;
+
+ /* See the table in "opcodes/cris-opc.c". */
+ const char *args;
+
+ /* Nonzero if this is a delayed branch instruction. */
+ char delayed;
+
+ /* Size of immediate operands. */
+ enum cris_imm_oprnd_size_type imm_oprnd_size;
+
+ /* Indicates which version this insn was first implemented in. */
+ enum cris_insn_version_usage applicable_version;
+
+ /* What kind of operation this is. */
+ enum cris_op_type op;
+};
+extern const struct cris_opcode cris_opcodes[];
+
+
+/* These macros are for the target-specific flags in disassemble_info
+ used at disassembly. */
+
+/* This insn accesses memory. This flag is more trustworthy than
+ checking insn_type for "dis_dref" which does not work for
+ e.g. "JSR [foo]". */
+#define CRIS_DIS_FLAG_MEMREF (1 << 0)
+
+/* The "target" field holds a register number. */
+#define CRIS_DIS_FLAG_MEM_TARGET_IS_REG (1 << 1)
+
+/* The "target2" field holds a register number; add it to "target". */
+#define CRIS_DIS_FLAG_MEM_TARGET2_IS_REG (1 << 2)
+
+/* Yet another add-on: the register in "target2" must be multiplied
+ by 2 before adding to "target". */
+#define CRIS_DIS_FLAG_MEM_TARGET2_MULT2 (1 << 3)
+
+/* Yet another add-on: the register in "target2" must be multiplied
+ by 4 (mutually exclusive with .._MULT2). */
+#define CRIS_DIS_FLAG_MEM_TARGET2_MULT4 (1 << 4)
+
+/* The register in "target2" is an indirect memory reference (of the
+ register there), add to "target". Assumed size is dword (mutually
+ exclusive with .._MULT[24]). */
+#define CRIS_DIS_FLAG_MEM_TARGET2_MEM (1 << 5)
+
+/* Add-on to CRIS_DIS_FLAG_MEM_TARGET2_MEM; the memory access is "byte";
+ sign-extended before adding to "target". */
+#define CRIS_DIS_FLAG_MEM_TARGET2_MEM_BYTE (1 << 6)
+
+/* Add-on to CRIS_DIS_FLAG_MEM_TARGET2_MEM; the memory access is "word";
+ sign-extended before adding to "target". */
+#define CRIS_DIS_FLAG_MEM_TARGET2_MEM_WORD (1 << 7)
+
+#endif /* __CRIS_H_INCLUDED_ */
+
+/*
+ * Local variables:
+ * eval: (c-set-style "gnu")
+ * indent-tabs-mode: t
+ * End:
+ */
diff --git a/include/opcode/crx.h b/include/opcode/crx.h
new file mode 100644
index 000000000..1e0d5733a
--- /dev/null
+++ b/include/opcode/crx.h
@@ -0,0 +1,395 @@
+/* crx.h -- Header file for CRX opcode and register tables.
+ Copyright 2004 Free Software Foundation, Inc.
+ Contributed by Tomer Levi, NSC, Israel.
+ Originally written for GAS 2.12 by Tomer Levi, NSC, Israel.
+ Updates, BFDizing, GNUifying and ELF support by Tomer Levi.
+
+ This file is part of GAS, GDB and the GNU binutils.
+
+ GAS, GDB, and GNU binutils is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2, or (at your
+ option) any later version.
+
+ GAS, GDB, and GNU binutils are distributed in the hope that they will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _CRX_H_
+#define _CRX_H_
+
+/* CRX core/debug Registers :
+ The enums are used as indices to CRX registers table (crx_regtab).
+ Therefore, order MUST be preserved. */
+
+typedef enum
+ {
+ /* 32-bit general purpose registers. */
+ r0, r1, r2, r3, r4, r5, r6, r7, r8, r9,
+ r10, r11, r12, r13, r14, r15, ra, sp,
+ /* 32-bit user registers. */
+ u0, u1, u2, u3, u4, u5, u6, u7, u8, u9,
+ u10, u11, u12, u13, u14, u15, ura, usp,
+ /* hi and lo registers. */
+ hi, lo,
+ /* hi and lo user registers. */
+ uhi, ulo,
+ /* Processor Status Register. */
+ psr,
+ /* Configuration Register. */
+ cfg,
+ /* Coprocessor Configuration Register. */
+ cpcfg,
+ /* Cashe Configuration Register. */
+ ccfg,
+ /* Interrupt Base Register. */
+ intbase,
+ /* Interrupt Stack Pointer Register. */
+ isp,
+ /* Coprocessor Enable Register. */
+ cen,
+ /* Program Counter Register. */
+ pc,
+ /* Not a register. */
+ nullregister,
+ MAX_REG
+ }
+reg;
+
+/* CRX Coprocessor registers and special registers :
+ The enums are used as indices to CRX coprocessor registers table
+ (crx_copregtab). Therefore, order MUST be preserved. */
+
+typedef enum
+ {
+ /* Coprocessor registers. */
+ c0 = MAX_REG, c1, c2, c3, c4, c5, c6, c7, c8,
+ c9, c10, c11, c12, c13, c14, c15,
+ /* Coprocessor special registers. */
+ cs0, cs1 ,cs2, cs3, cs4, cs5, cs6, cs7, cs8,
+ cs9, cs10, cs11, cs12, cs13, cs14, cs15,
+ /* Not a Coprocessor register. */
+ nullcopregister,
+ MAX_COPREG
+ }
+copreg;
+
+/* CRX Register types. */
+
+typedef enum
+ {
+ CRX_PC_REGTYPE, /* pc type */
+ CRX_R_REGTYPE, /* r<N> */
+ CRX_U_REGTYPE, /* u<N> */
+ CRX_C_REGTYPE, /* c<N> */
+ CRX_CS_REGTYPE, /* cs<N> */
+ CRX_MTPR_REGTYPE, /* mtpr */
+ CRX_CFG_REGTYPE /* *hi|lo, *cfg, psr */
+ }
+reg_type;
+
+/* CRX argument types :
+ The argument types correspond to instructions operands
+
+ Argument types :
+ r - register
+ c - constant
+ d - displacement
+ ic - immediate
+ icr - index register
+ rbase - register base
+ s - star ('*')
+ copr - coprocessor register
+ copsr - coprocessor special register. */
+
+typedef enum
+ {
+ arg_r, arg_c, arg_cr, arg_dc, arg_dcr, arg_sc,
+ arg_ic, arg_icr, arg_rbase, arg_copr, arg_copsr,
+ /* Not an argument. */
+ nullargs
+ }
+argtype;
+
+/* CRX operand types :
+ The operand types correspond to instructions operands
+
+ Operand Types :
+ cst4 - 4-bit encoded constant
+ iN - N-bit immediate field
+ d, dispsN - N-bit immediate signed displacement
+ dispuN - N-bit immediate unsigned displacement
+ absN - N-bit absolute address
+ rbase - 4-bit genaral-purpose register specifier
+ regr - 4-bit genaral-purpose register specifier
+ regr8 - 8-bit register address space
+ copregr - coprocessor register
+ copsregr - coprocessor special register
+ scl2 - 2-bit scaling factor for memory index
+ ridx - register index. */
+
+typedef enum
+ {
+ dummy, cst4, disps9,
+ i3, i4, i5, i8, i12, i16, i32,
+ d5, d9, d17, d25, d33,
+ abs16, abs32,
+ rbase, rbase_cst4,
+ rbase_dispu8, rbase_dispu12, rbase_dispu16, rbase_dispu28, rbase_dispu32,
+ rbase_ridx_scl2_dispu6, rbase_ridx_scl2_dispu22,
+ regr, regr8, copregr,copregr8,copsregr,
+ /* Not an operand. */
+ nulloperand,
+ /* Maximum supported operand. */
+ MAX_OPRD
+ }
+operand_type;
+
+/* CRX instruction types. */
+
+#define ARITH_INS 1
+#define LD_STOR_INS 2
+#define BRANCH_INS 3
+#define ARITH_BYTE_INS 4
+#define CMPBR_INS 5
+#define SHIFT_INS 6
+#define BRANCH_NEQ_INS 7
+#define LD_STOR_INS_INC 8
+#define STOR_IMM_INS 9
+#define CSTBIT_INS 10
+#define SYS_INS 11
+#define JMP_INS 12
+#define MUL_INS 13
+#define DIV_INS 14
+#define COP_BRANCH_INS 15
+#define COP_REG_INS 16
+#define DCR_BRANCH_INS 17
+#define MMC_INS 18
+#define MMU_INS 19
+
+/* Maximum value supported for instruction types. */
+#define CRX_INS_MAX (1 << 5)
+/* Mask to record an instruction type. */
+#define CRX_INS_MASK (CRX_INS_MAX - 1)
+/* Return instruction type, given instruction's attributes. */
+#define CRX_INS_TYPE(attr) ((attr) & CRX_INS_MASK)
+
+/* Indicates whether this instruction has a register list as parameter. */
+#define REG_LIST CRX_INS_MAX
+/* The operands in binary and assembly are placed in reverse order.
+ load - (REVERSE_MATCH)/store - (! REVERSE_MATCH). */
+#define REVERSE_MATCH (REG_LIST << 1)
+
+/* Kind of displacement map used DISPU[BWD]4. */
+#define DISPUB4 (REVERSE_MATCH << 1)
+#define DISPUW4 (DISPUB4 << 1)
+#define DISPUD4 (DISPUW4 << 1)
+#define CST4MAP (DISPUB4 | DISPUW4 | DISPUD4)
+
+/* Printing formats, where the instruction prefix isn't consecutive. */
+#define FMT_1 (DISPUD4 << 1) /* 0xF0F00000 */
+#define FMT_2 (FMT_1 << 1) /* 0xFFF0FF00 */
+#define FMT_3 (FMT_2 << 1) /* 0xFFF00F00 */
+#define FMT_4 (FMT_3 << 1) /* 0xFFF0F000 */
+#define FMT_5 (FMT_4 << 1) /* 0xFFF0FFF0 */
+#define FMT_CRX (FMT_1 | FMT_2 | FMT_3 | FMT_4 | FMT_5)
+
+#define RELAXABLE (FMT_5 << 1)
+
+/* Maximum operands per instruction. */
+#define MAX_OPERANDS 5
+/* Maximum words per instruction. */
+#define MAX_WORDS 3
+/* Maximum register name length. */
+#define MAX_REGNAME_LEN 10
+/* Maximum instruction length. */
+#define MAX_INST_LEN 256
+
+/* Single operand description. */
+
+typedef struct
+ {
+ /* Operand type. */
+ operand_type op_type;
+ /* Operand location within the opcode. */
+ unsigned int shift;
+ }
+operand_desc;
+
+/* Instruction data structure used in instruction table. */
+
+typedef struct
+ {
+ /* Name. */
+ const char *mnemonic;
+ /* Size (in words). */
+ unsigned int size;
+ /* Constant prefix (matched by the disassembler). */
+ unsigned long match;
+ /* Match size (in bits). */
+ int match_bits;
+ /* Attributes. */
+ unsigned int flags;
+ /* Operands (always last, so unreferenced operands are initialized). */
+ operand_desc operands[MAX_OPERANDS];
+ }
+inst;
+
+/* Data structure for a single instruction's arguments (Operands). */
+
+typedef struct
+ {
+ /* Register or base register. */
+ reg r;
+ /* Index register. */
+ reg i_r;
+ /* Coprocessor register. */
+ copreg cr;
+ /* Constant/immediate/absolute value. */
+ unsigned long int constant;
+ /* Scaled index mode. */
+ unsigned int scale;
+ /* Argument type. */
+ argtype type;
+ /* Size of the argument (in bits) required to represent. */
+ int size;
+ /* Indicates whether a constant is positive or negative. */
+ int signflag;
+ }
+argument;
+
+/* Internal structure to hold the various entities
+ corresponding to the current assembling instruction. */
+
+typedef struct
+ {
+ /* Number of arguments. */
+ int nargs;
+ /* The argument data structure for storing args (operands). */
+ argument arg[MAX_OPERANDS];
+/* The following fields are required only by CRX-assembler. */
+#ifdef TC_CRX
+ /* Expression used for setting the fixups (if any). */
+ expressionS exp;
+ bfd_reloc_code_real_type rtype;
+#endif /* TC_CRX */
+ /* Instruction size (in bytes). */
+ int size;
+ }
+ins;
+
+/* Structure to hold information about predefined operands. */
+
+typedef struct
+ {
+ /* Size (in bits). */
+ unsigned int bit_size;
+ /* Argument type. */
+ argtype arg_type;
+ }
+operand_entry;
+
+/* Structure to hold trap handler information. */
+
+typedef struct
+ {
+ /* Trap name. */
+ char *name;
+ /* Index in dispatch table. */
+ unsigned int entry;
+ }
+trap_entry;
+
+/* Structure to hold information about predefined registers. */
+
+typedef struct
+ {
+ /* Name (string representation). */
+ char *name;
+ /* Value (enum representation). */
+ union
+ {
+ /* Register. */
+ reg reg_val;
+ /* Coprocessor register. */
+ copreg copreg_val;
+ } value;
+ /* Register image. */
+ int image;
+ /* Register type. */
+ reg_type type;
+ }
+reg_entry;
+
+/* Structure to hold a cst4 operand mapping. */
+
+typedef struct
+ {
+ /* The binary value which is written to the object file. */
+ int binary;
+ /* The value which is mapped. */
+ int value;
+ }
+cst4_entry;
+
+/* CRX opcode table. */
+extern const inst crx_instruction[];
+extern const int crx_num_opcodes;
+#define NUMOPCODES crx_num_opcodes
+
+/* CRX operands table. */
+extern const operand_entry crx_optab[];
+
+/* CRX registers table. */
+extern const reg_entry crx_regtab[];
+extern const int crx_num_regs;
+#define NUMREGS crx_num_regs
+
+/* CRX coprocessor registers table. */
+extern const reg_entry crx_copregtab[];
+extern const int crx_num_copregs;
+#define NUMCOPREGS crx_num_copregs
+
+/* CRX trap/interrupt table. */
+extern const trap_entry crx_traps[];
+extern const int crx_num_traps;
+#define NUMTRAPS crx_num_traps
+
+/* cst4 operand mapping. */
+extern const cst4_entry cst4_map[];
+extern const int cst4_maps;
+
+/* Current instruction we're assembling. */
+extern const inst *instruction;
+
+/* A macro for representing the instruction "constant" opcode, that is,
+ the FIXED part of the instruction. The "constant" opcode is represented
+ as a 32-bit unsigned long, where OPC is expanded (by a left SHIFT)
+ over that range. */
+#define BIN(OPC,SHIFT) (OPC << SHIFT)
+
+/* Is the current instruction type is TYPE ? */
+#define IS_INSN_TYPE(TYPE) \
+ (CRX_INS_TYPE(instruction->flags) == TYPE)
+
+/* Is the current instruction mnemonic is MNEMONIC ? */
+#define IS_INSN_MNEMONIC(MNEMONIC) \
+ (strcmp(instruction->mnemonic,MNEMONIC) == 0)
+
+/* Does the current instruction has register list ? */
+#define INST_HAS_REG_LIST \
+ (instruction->flags & REG_LIST)
+
+/* Long long type handling. */
+/* Replace all appearances of 'long long int' with LONGLONG. */
+typedef long long int LONGLONG;
+typedef unsigned long long ULONGLONG;
+/* A mask for the upper 31 bits of a 64 bits type. */
+#define UPPER31_MASK 0xFFFFFFFE00000000LL
+
+#endif /* _CRX_H_ */
diff --git a/include/opcode/d10v.h b/include/opcode/d10v.h
new file mode 100644
index 000000000..74d9006f1
--- /dev/null
+++ b/include/opcode/d10v.h
@@ -0,0 +1,208 @@
+/* d10v.h -- Header file for D10V opcode table
+ Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003
+ Free Software Foundation, Inc.
+ Written by Martin Hunt (hunt@cygnus.com), Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef D10V_H
+#define D10V_H
+
+/* Format Specifier */
+#define FM00 0
+#define FM01 0x40000000
+#define FM10 0x80000000
+#define FM11 0xC0000000
+
+#define NOP 0x5e00
+#define OPCODE_DIVS 0x14002800
+
+/* The opcode table is an array of struct d10v_opcode. */
+
+struct d10v_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* the opcode format */
+ int format;
+
+ /* These numbers were picked so we can do if( i & SHORT_OPCODE) */
+#define SHORT_OPCODE 1
+#define LONG_OPCODE 8
+#define SHORT_2 1 /* short with 2 operands */
+#define SHORT_B 3 /* short with 8-bit branch */
+#define LONG_B 8 /* long with 16-bit branch */
+#define LONG_L 10 /* long with 3 operands */
+#define LONG_R 12 /* reserved */
+
+ /* just a placeholder for variable-length instructions */
+ /* for example, "bra" will be a fake for "bra.s" and bra.l" */
+ /* which will immediately follow in the opcode table. */
+#define OPCODE_FAKE 32
+
+ /* the number of cycles */
+ int cycles;
+
+ /* the execution unit(s) used */
+ int unit;
+#define EITHER 0
+#define IU 1
+#define MU 2
+#define BOTH 3
+
+ /* execution type; parallel or sequential */
+ /* this field is used to decide if two instructions */
+ /* can be executed in parallel */
+ int exec_type;
+#define PARONLY 1 /* parallel only */
+#define SEQ 2 /* must be sequential */
+#define PAR 4 /* may be parallel */
+#define BRANCH_LINK 8 /* subroutine call. must be aligned */
+#define RMEM 16 /* reads memory */
+#define WMEM 32 /* writes memory */
+#define RF0 64 /* reads f0 */
+#define WF0 128 /* modifies f0 */
+#define WCAR 256 /* write Carry */
+#define BRANCH 512 /* branch, no link */
+#define ALONE 1024 /* short but pack with a NOP if on asm line alone */
+
+ /* the opcode */
+ long opcode;
+
+ /* mask. if( (i & mask) == opcode ) then match */
+ long mask;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[6];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct d10v_opcode d10v_opcodes[];
+extern const int d10v_num_opcodes;
+
+/* The operands table is an array of struct d10v_operand. */
+struct d10v_operand
+{
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* One bit syntax flags. */
+ int flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the d10v_opcodes table. */
+
+extern const struct d10v_operand d10v_operands[];
+
+/* Values defined for the flags field of a struct d10v_operand. */
+
+/* the operand must be an even number */
+#define OPERAND_EVEN (1)
+
+/* the operand must be an odd number */
+#define OPERAND_ODD (2)
+
+/* this is the destination register; it will be modified */
+/* this is used by the optimizer */
+#define OPERAND_DEST (4)
+
+/* number or symbol */
+#define OPERAND_NUM (8)
+
+/* address or label */
+#define OPERAND_ADDR (0x10)
+
+/* register */
+#define OPERAND_REG (0x20)
+
+/* postincrement + */
+#define OPERAND_PLUS (0x40)
+
+/* postdecrement - */
+#define OPERAND_MINUS (0x80)
+
+/* @ */
+#define OPERAND_ATSIGN (0x100)
+
+/* @( */
+#define OPERAND_ATPAR (0x200)
+
+/* accumulator 0 */
+#define OPERAND_ACC0 (0x400)
+
+/* accumulator 1 */
+#define OPERAND_ACC1 (0x800)
+
+/* f0 / f1 flag register */
+#define OPERAND_FFLAG (0x1000)
+
+/* c flag register */
+#define OPERAND_CFLAG (0x2000)
+
+/* control register */
+#define OPERAND_CONTROL (0x4000)
+
+/* predecrement mode '@-sp' */
+#define OPERAND_ATMINUS (0x8000)
+
+/* signed number */
+#define OPERAND_SIGNED (0x10000)
+
+/* special accumulator shifts need a 4-bit number */
+/* 1 <= x <= 16 */
+#define OPERAND_SHIFT (0x20000)
+
+/* general purpose register */
+#define OPERAND_GPR (0x40000)
+
+/* special imm3 values with range restricted to -2 <= imm3 <= 3 */
+/* needed for rac/rachi */
+#define RESTRICTED_NUM3 (0x80000)
+
+/* Pre-decrement is only supported for SP. */
+#define OPERAND_SP (0x100000)
+
+/* Post-decrement is not supported for SP. Like OPERAND_EVEN, and
+ unlike OPERAND_SP, this flag doesn't prevent the instruction from
+ matching, it only fails validation later on. */
+#define OPERAND_NOSP (0x200000)
+
+/* Structure to hold information about predefined registers. */
+struct pd_reg
+{
+ char *name; /* name to recognize */
+ char *pname; /* name to print for this register */
+ int value;
+};
+
+extern const struct pd_reg d10v_predefined_registers[];
+int d10v_reg_name_cnt (void);
+
+/* an expressionS only has one register type, so we fake it */
+/* by setting high bits to indicate type */
+#define REGISTER_MASK 0xFF
+
+#endif /* D10V_H */
diff --git a/include/opcode/d30v.h b/include/opcode/d30v.h
new file mode 100644
index 000000000..809bdeb7d
--- /dev/null
+++ b/include/opcode/d30v.h
@@ -0,0 +1,286 @@
+/* d30v.h -- Header file for D30V opcode table
+ Copyright 1997, 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
+ Written by Martin Hunt (hunt@cygnus.com), Cygnus Solutions
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef D30V_H
+#define D30V_H
+
+#define NOP 0x00F00000
+
+/* Structure to hold information about predefined registers. */
+struct pd_reg
+{
+ char *name; /* name to recognize */
+ char *pname; /* name to print for this register */
+ int value;
+};
+
+extern const struct pd_reg pre_defined_registers[];
+int reg_name_cnt (void);
+
+/* the number of control registers */
+#define MAX_CONTROL_REG 64
+
+/* define the format specifiers */
+#define FM00 0
+#define FM01 0x80000000
+#define FM10 0x8000000000000000LL
+#define FM11 0x8000000080000000LL
+
+/* define the opcode classes */
+#define BRA 0
+#define LOGIC 1
+#define IMEM 2
+#define IALU1 4
+#define IALU2 5
+
+/* define the execution condition codes */
+#define ECC_AL 0 /* ALways (default) */
+#define ECC_TX 1 /* F0=True, F1=Don't care */
+#define ECC_FX 2 /* F0=False, F1=Don't care */
+#define ECC_XT 3 /* F0=Don't care, F1=True */
+#define ECC_XF 4 /* F0=Don't care, F1=False */
+#define ECC_TT 5 /* F0=True, F1=True */
+#define ECC_TF 6 /* F0=True, F1=False */
+#define ECC_RESERVED 7 /* reserved */
+#define ECC_MAX ECC_RESERVED
+
+extern const char *d30v_ecc_names[];
+
+/* condition code table for CMP and CMPU */
+extern const char *d30v_cc_names[];
+
+/* The opcode table is an array of struct d30v_opcode. */
+struct d30v_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* the opcode */
+ int op1; /* first part, "IALU1" for example */
+ int op2; /* the rest of the opcode */
+
+ /* opcode format(s). These numbers correspond to entries */
+ /* in the d30v_format_table */
+ unsigned char format[4];
+
+#define SHORT_M 1
+#define SHORT_M2 5 /* for ld2w and st2w */
+#define SHORT_A 9
+#define SHORT_B1 11
+#define SHORT_B2 12
+#define SHORT_B2r 13
+#define SHORT_B3 14
+#define SHORT_B3r 16
+#define SHORT_B3b 18
+#define SHORT_B3br 20
+#define SHORT_D1r 22
+#define SHORT_D2 24
+#define SHORT_D2r 26
+#define SHORT_D2Br 28
+#define SHORT_U 30 /* unary SHORT_A. ABS for example */
+#define SHORT_F 31 /* SHORT_A with flag registers */
+#define SHORT_AF 33 /* SHORT_A with only the first register a flag register */
+#define SHORT_T 35 /* for trap instruction */
+#define SHORT_A5 36 /* SHORT_A with a 5-bit immediate instead of 6 */
+#define SHORT_CMP 38 /* special form for CMPcc */
+#define SHORT_CMPU 40 /* special form for CMPUcc */
+#define SHORT_A1 42 /* special form of SHORT_A for MACa opcodes where a=1 */
+#define SHORT_AA 44 /* SHORT_A with the first register an accumulator */
+#define SHORT_RA 46 /* SHORT_A with the second register an accumulator */
+#define SHORT_MODINC 48
+#define SHORT_MODDEC 49
+#define SHORT_C1 50
+#define SHORT_C2 51
+#define SHORT_UF 52
+#define SHORT_A2 53
+#define SHORT_NONE 55 /* no operands */
+#define SHORT_AR 56 /* like SHORT_AA but only accept register as third parameter */
+#define LONG 57
+#define LONG_U 58 /* unary LONG */
+#define LONG_Ur 59 /* LONG pc-relative */
+#define LONG_CMP 60 /* special form for CMPcc and CMPUcc */
+#define LONG_M 61 /* Memory long for ldb, stb */
+#define LONG_M2 62 /* Memory long for ld2w, st2w */
+#define LONG_2 63 /* LONG with 2 operands; jmptnz */
+#define LONG_2r 64 /* LONG with 2 operands; bratnz */
+#define LONG_2b 65 /* LONG_2 with modifier of 3 */
+#define LONG_2br 66 /* LONG_2r with modifier of 3 */
+#define LONG_D 67 /* for DJMPI */
+#define LONG_Dr 68 /* for DBRAI */
+#define LONG_Dbr 69 /* for repeati */
+
+ /* the execution unit(s) used */
+ int unit;
+#define EITHER 0
+#define IU 1
+#define MU 2
+#define EITHER_BUT_PREFER_MU 3
+
+ /* this field is used to decide if two instructions */
+ /* can be executed in parallel */
+ long flags_used;
+ long flags_set;
+#define FLAG_0 (1L<<0)
+#define FLAG_1 (1L<<1)
+#define FLAG_2 (1L<<2)
+#define FLAG_3 (1L<<3)
+#define FLAG_4 (1L<<4) /* S (saturation) */
+#define FLAG_5 (1L<<5) /* V (overflow) */
+#define FLAG_6 (1L<<6) /* VA (accumulated overflow) */
+#define FLAG_7 (1L<<7) /* C (carry/borrow) */
+#define FLAG_SM (1L<<8) /* SM (stack mode) */
+#define FLAG_RP (1L<<9) /* RP (repeat enable) */
+#define FLAG_CONTROL (1L<<10) /* control registers */
+#define FLAG_A0 (1L<<11) /* A0 */
+#define FLAG_A1 (1L<<12) /* A1 */
+#define FLAG_JMP (1L<<13) /* instruction is a branch */
+#define FLAG_JSR (1L<<14) /* subroutine call. must be aligned */
+#define FLAG_MEM (1L<<15) /* reads/writes memory */
+#define FLAG_NOT_WITH_ADDSUBppp (1L<<16) /* Old meaning: a 2 word 4 byter operation
+ New meaning: operation cannot be
+ combined in parallel with ADD/SUBppp. */
+#define FLAG_MUL16 (1L<<17) /* 16 bit multiply */
+#define FLAG_MUL32 (1L<<18) /* 32 bit multiply */
+#define FLAG_ADDSUBppp (1L<<19) /* ADDppp or SUBppp */
+#define FLAG_DELAY (1L<<20) /* This is a delayed branch or jump */
+#define FLAG_LKR (1L<<21) /* insn in left slot kills right slot */
+#define FLAG_CVVA (FLAG_5|FLAG_6|FLAG_7)
+#define FLAG_C FLAG_7
+#define FLAG_ALL (FLAG_0 | \
+ FLAG_1 | \
+ FLAG_2 | \
+ FLAG_3 | \
+ FLAG_4 | \
+ FLAG_5 | \
+ FLAG_6 | \
+ FLAG_7 | \
+ FLAG_SM | \
+ FLAG_RP | \
+ FLAG_CONTROL)
+
+ int reloc_flag;
+#define RELOC_PCREL 1
+#define RELOC_ABS 2
+};
+
+extern const struct d30v_opcode d30v_opcode_table[];
+extern const int d30v_num_opcodes;
+
+/* The operands table is an array of struct d30v_operand. */
+struct d30v_operand
+{
+ /* the length of the field */
+ int length;
+
+ /* The number of significant bits in the operand. */
+ int bits;
+
+ /* position relative to Ra */
+ int position;
+
+ /* syntax flags. */
+ long flags;
+};
+extern const struct d30v_operand d30v_operand_table[];
+
+/* Values defined for the flags field of a struct d30v_operand. */
+
+/* this is the destination register; it will be modified */
+/* this is used by the optimizer */
+#define OPERAND_DEST (1)
+
+/* number or symbol */
+#define OPERAND_NUM (2)
+
+/* address or label */
+#define OPERAND_ADDR (4)
+
+/* register */
+#define OPERAND_REG (8)
+
+/* postincrement + */
+#define OPERAND_PLUS (0x10)
+
+/* postdecrement - */
+#define OPERAND_MINUS (0x20)
+
+/* signed number */
+#define OPERAND_SIGNED (0x40)
+
+/* this operand must be shifted left by 3 */
+#define OPERAND_SHIFT (0x80)
+
+/* flag register */
+#define OPERAND_FLAG (0x100)
+
+/* control register */
+#define OPERAND_CONTROL (0x200)
+
+/* accumulator */
+#define OPERAND_ACC (0x400)
+
+/* @ */
+#define OPERAND_ATSIGN (0x800)
+
+/* @( */
+#define OPERAND_ATPAR (0x1000)
+
+/* predecrement mode '@-sp' */
+#define OPERAND_ATMINUS (0x2000)
+
+/* this operand changes the instruction name */
+/* for example, CPMcc, CMPUcc */
+#define OPERAND_NAME (0x4000)
+
+/* fake operand for mvtsys and mvfsys */
+#define OPERAND_SPECIAL (0x8000)
+
+/* let the optimizer know that two registers are affected */
+#define OPERAND_2REG (0x10000)
+
+/* This operand is pc-relative. Note that repeati can have two immediate
+ operands, one of which is pcrel, the other (the IMM6U one) is not. */
+#define OPERAND_PCREL (0x20000)
+
+/* The format table is an array of struct d30v_format. */
+struct d30v_format
+{
+ int form; /* SHORT_A, LONG, etc */
+ int modifier; /* two bit modifier following opcode */
+ unsigned char operands[5];
+};
+extern const struct d30v_format d30v_format_table[];
+
+
+/* an instruction is defined by an opcode and a format */
+/* for example, "add" has one opcode, but three different */
+/* formats, 2 SHORT_A forms and a LONG form. */
+struct d30v_insn
+{
+ struct d30v_opcode *op; /* pointer to an entry in the opcode table */
+ struct d30v_format *form; /* pointer to an entry in the format table */
+ int ecc; /* execution condition code */
+};
+
+/* an expressionS only has one register type, so we fake it */
+/* by setting high bits to indicate type */
+#define REGISTER_MASK 0xFF
+
+#endif /* D30V_H */
diff --git a/include/opcode/dlx.h b/include/opcode/dlx.h
new file mode 100644
index 000000000..e1b249f85
--- /dev/null
+++ b/include/opcode/dlx.h
@@ -0,0 +1,282 @@
+/* Table of opcodes for the DLX microprocess.
+ Copyright 2002 Free Software Foundation, Inc.
+
+ This file is part of GDB and GAS.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ Initially created by Kuang Hwa Lin, 2002. */
+
+/* Following are the function codes for the Special OP (ALU). */
+#define ALUOP 0x00000000
+#define SPECIALOP 0x00000000
+
+#define NOPF 0x00000000
+#define SLLF 0x00000004
+#define SRLF 0x00000006
+#define SRAF 0x00000007
+
+#define SEQUF 0x00000010
+#define SNEUF 0x00000011
+#define SLTUF 0x00000012
+#define SGTUF 0x00000013
+#define SLEUF 0x00000014
+#define SGEUF 0x00000015
+
+#define ADDF 0x00000020
+#define ADDUF 0x00000021
+#define SUBF 0x00000022
+#define SUBUF 0x00000023
+#define ANDF 0x00000024
+#define ORF 0x00000025
+#define XORF 0x00000026
+
+#define SEQF 0x00000028
+#define SNEF 0x00000029
+#define SLTF 0x0000002A
+#define SGTF 0x0000002B
+#define SLEF 0x0000002C
+#define SGEF 0x0000002D
+ /* Following special functions was not mentioned in the
+ Hennessy's book but was implemented in the RTL. */
+#define MVTSF 0x00000030
+#define MVFSF 0x00000031
+#define BSWAPF 0x00000032
+#define LUTF 0x00000033
+/* Following special functions was mentioned in the
+ Hennessy's book but was not implemented in the RTL. */
+#define MULTF 0x00000005
+#define MULTUF 0x00000006
+#define DIVF 0x00000007
+#define DIVUF 0x00000008
+
+
+/* Following are the rest of the OPcodes:
+ JOP = (0x002 << 26), JALOP = (0x003 << 26), BEQOP = (0x004 << 26), BNEOP = (0x005 << 26)
+ ADDIOP = (0x008 << 26), ADDUIOP= (0x009 << 26), SUBIOP = (0x00A << 26), SUBUIOP= (0x00B << 26)
+ ANDIOP = (0x00C << 26), ORIOP = (0x00D << 26), XORIOP = (0x00E << 26), LHIOP = (0x00F << 26)
+ RFEOP = (0x010 << 26), TRAPOP = (0x011 << 26), JROP = (0x012 << 26), JALROP = (0x013 << 26)
+ BREAKOP= (0x014 << 26)
+ SEQIOP = (0x018 << 26), SNEIOP = (0x019 << 26), SLTIOP = (0x01A << 26), SGTIOP = (0x01B << 26)
+ SLEIOP = (0x01C << 26), SGEIOP = (0x01D << 26)
+ LBOP = (0x020 << 26), LHOP = (0x021 << 26), LWOP = (0x023 << 26), LBUOP = (0x024 << 26)
+ LHUOP = (0x025 << 26), SBOP = (0x028 << 26), SHOP = (0x029 << 26), SWOP = (0x02B << 26)
+ LSBUOP = (0x026 << 26), LSHU = (0x027 << 26), LSW = (0x02C << 26),
+ SEQUIOP= (0x030 << 26), SNEUIOP= (0x031 << 26), SLTUIOP= (0x032 << 26), SGTUIOP= (0x033 << 26)
+ SLEUIOP= (0x034 << 26), SGEUIOP= (0x035 << 26)
+ SLLIOP = (0x036 << 26), SRLIOP = (0x037 << 26), SRAIOP = (0x038 << 26). */
+#define JOP 0x08000000
+#define JALOP 0x0c000000
+#define BEQOP 0x10000000
+#define BNEOP 0x14000000
+
+#define ADDIOP 0x20000000
+#define ADDUIOP 0x24000000
+#define SUBIOP 0x28000000
+#define SUBUIOP 0x2c000000
+#define ANDIOP 0x30000000
+#define ORIOP 0x34000000
+#define XORIOP 0x38000000
+#define LHIOP 0x3c000000
+#define RFEOP 0x40000000
+#define TRAPOP 0x44000000
+#define JROP 0x48000000
+#define JALROP 0x4c000000
+#define BREAKOP 0x50000000
+
+#define SEQIOP 0x60000000
+#define SNEIOP 0x64000000
+#define SLTIOP 0x68000000
+#define SGTIOP 0x6c000000
+#define SLEIOP 0x70000000
+#define SGEIOP 0x74000000
+
+#define LBOP 0x80000000
+#define LHOP 0x84000000
+#define LWOP 0x8c000000
+#define LBUOP 0x90000000
+#define LHUOP 0x94000000
+#define LDSTBU
+#define LDSTHU
+#define SBOP 0xa0000000
+#define SHOP 0xa4000000
+#define SWOP 0xac000000
+#define LDST
+
+#define SEQUIOP 0xc0000000
+#define SNEUIOP 0xc4000000
+#define SLTUIOP 0xc8000000
+#define SGTUIOP 0xcc000000
+#define SLEUIOP 0xd0000000
+#define SGEUIOP 0xd4000000
+
+#define SLLIOP 0xd8000000
+#define SRLIOP 0xdc000000
+#define SRAIOP 0xe0000000
+
+/* Following 3 ops was added to provide the MP atonmic operation. */
+#define LSBUOP 0x98000000
+#define LSHUOP 0x9c000000
+#define LSWOP 0xb0000000
+
+/* Following opcode was defined in the Hennessy's book as
+ "normal" opcode but was implemented in the RTL as special
+ functions. */
+#if 0
+#define MVTSOP 0x50000000
+#define MVFSOP 0x54000000
+#endif
+
+struct dlx_opcode
+{
+ /* Name of the instruction. */
+ char *name;
+
+ /* Opcode word. */
+ unsigned long opcode;
+
+ /* A string of characters which describe the operands.
+ Valid characters are:
+ , Itself. The character appears in the assembly code.
+ a rs1 The register number is in bits 21-25 of the instruction.
+ b rs2/rd The register number is in bits 16-20 of the instruction.
+ c rd. The register number is in bits 11-15 of the instruction.
+ f FUNC bits 0-10 of the instruction.
+ i An immediate operand is in bits 0-16 of the instruction. 0 extended
+ I An immediate operand is in bits 0-16 of the instruction. sign extended
+ d An 16 bit PC relative displacement.
+ D An immediate operand is in bits 0-25 of the instruction.
+ N No opperands needed, for nops.
+ P it can be a register or a 16 bit operand. */
+ char *args;
+};
+
+static const struct dlx_opcode dlx_opcodes[] =
+ {
+ /* Arithmetic and Logic R-TYPE instructions. */
+ { "nop", (ALUOP|NOPF), "N" }, /* NOP */
+ { "add", (ALUOP|ADDF), "c,a,b" }, /* Add */
+ { "addu", (ALUOP|ADDUF), "c,a,b" }, /* Add Unsigned */
+ { "sub", (ALUOP|SUBF), "c,a,b" }, /* SUB */
+ { "subu", (ALUOP|SUBUF), "c,a,b" }, /* Sub Unsigned */
+ { "mult", (ALUOP|MULTF), "c,a,b" }, /* MULTIPLY */
+ { "multu", (ALUOP|MULTUF), "c,a,b" }, /* MULTIPLY Unsigned */
+ { "div", (ALUOP|DIVF), "c,a,b" }, /* DIVIDE */
+ { "divu", (ALUOP|DIVUF), "c,a,b" }, /* DIVIDE Unsigned */
+ { "and", (ALUOP|ANDF), "c,a,b" }, /* AND */
+ { "or", (ALUOP|ORF), "c,a,b" }, /* OR */
+ { "xor", (ALUOP|XORF), "c,a,b" }, /* Exclusive OR */
+ { "sll", (ALUOP|SLLF), "c,a,b" }, /* SHIFT LEFT LOGICAL */
+ { "sra", (ALUOP|SRAF), "c,a,b" }, /* SHIFT RIGHT ARITHMETIC */
+ { "srl", (ALUOP|SRLF), "c,a,b" }, /* SHIFT RIGHT LOGICAL */
+ { "seq", (ALUOP|SEQF), "c,a,b" }, /* Set if equal */
+ { "sne", (ALUOP|SNEF), "c,a,b" }, /* Set if not equal */
+ { "slt", (ALUOP|SLTF), "c,a,b" }, /* Set if less */
+ { "sgt", (ALUOP|SGTF), "c,a,b" }, /* Set if greater */
+ { "sle", (ALUOP|SLEF), "c,a,b" }, /* Set if less or equal */
+ { "sge", (ALUOP|SGEF), "c,a,b" }, /* Set if greater or equal */
+ { "sequ", (ALUOP|SEQUF), "c,a,b" }, /* Set if equal unsigned */
+ { "sneu", (ALUOP|SNEUF), "c,a,b" }, /* Set if not equal unsigned */
+ { "sltu", (ALUOP|SLTUF), "c,a,b" }, /* Set if less unsigned */
+ { "sgtu", (ALUOP|SGTUF), "c,a,b" }, /* Set if greater unsigned */
+ { "sleu", (ALUOP|SLEUF), "c,a,b" }, /* Set if less or equal unsigned*/
+ { "sgeu", (ALUOP|SGEUF), "c,a,b" }, /* Set if greater or equal */
+ { "mvts", (ALUOP|MVTSF), "c,a" }, /* Move to special register */
+ { "mvfs", (ALUOP|MVFSF), "c,a" }, /* Move from special register */
+ { "bswap", (ALUOP|BSWAPF), "c,a,b" }, /* ??? Was not documented */
+ { "lut", (ALUOP|LUTF), "c,a,b" }, /* ????? same as above */
+
+ /* Arithmetic and Logical Immediate I-TYPE instructions. */
+ { "addi", ADDIOP, "b,a,I" }, /* Add Immediate */
+ { "addui", ADDUIOP, "b,a,i" }, /* Add Usigned Immediate */
+ { "subi", SUBIOP, "b,a,I" }, /* Sub Immediate */
+ { "subui", SUBUIOP, "b,a,i" }, /* Sub Unsigned Immedated */
+ { "andi", ANDIOP, "b,a,i" }, /* AND Immediate */
+ { "ori", ORIOP, "b,a,i" }, /* OR Immediate */
+ { "xori", XORIOP, "b,a,i" }, /* Exclusive OR Immediate */
+ { "slli", SLLIOP, "b,a,i" }, /* SHIFT LEFT LOCICAL Immediate */
+ { "srai", SRAIOP, "b,a,i" }, /* SHIFT RIGHT ARITH. Immediate */
+ { "srli", SRLIOP, "b,a,i" }, /* SHIFT RIGHT LOGICAL Immediate*/
+ { "seqi", SEQIOP, "b,a,i" }, /* Set if equal */
+ { "snei", SNEIOP, "b,a,i" }, /* Set if not equal */
+ { "slti", SLTIOP, "b,a,i" }, /* Set if less */
+ { "sgti", SGTIOP, "b,a,i" }, /* Set if greater */
+ { "slei", SLEIOP, "b,a,i" }, /* Set if less or equal */
+ { "sgei", SGEIOP, "b,a,i" }, /* Set if greater or equal */
+ { "sequi", SEQUIOP, "b,a,i" }, /* Set if equal */
+ { "sneui", SNEUIOP, "b,a,i" }, /* Set if not equal */
+ { "sltui", SLTUIOP, "b,a,i" }, /* Set if less */
+ { "sgtui", SGTUIOP, "b,a,i" }, /* Set if greater */
+ { "sleui", SLEUIOP, "b,a,i" }, /* Set if less or equal */
+ { "sgeui", SGEUIOP, "b,a,i" }, /* Set if greater or equal */
+ /* Macros for I type instructions. */
+ { "mov", ADDIOP, "b,P" }, /* a move macro */
+ { "movu", ADDUIOP, "b,P" }, /* a move macro, unsigned */
+
+#if 0
+ /* Move special. */
+ { "mvts", MVTSOP, "b,a" }, /* Move From Integer to Special */
+ { "mvfs", MVFSOP, "b,a" }, /* Move From Special to Integer */
+#endif
+
+ /* Load high Immediate I-TYPE instruction. */
+ { "lhi", LHIOP, "b,i" }, /* Load High Immediate */
+ { "lui", LHIOP, "b,i" }, /* Load High Immediate */
+ { "sethi", LHIOP, "b,i" }, /* Load High Immediate */
+
+ /* LOAD/STORE BYTE 8 bits I-TYPE. */
+ { "lb", LBOP, "b,a,I" }, /* Load Byte */
+ { "lbu", LBUOP, "b,a,I" }, /* Load Byte Unsigned */
+ { "ldstbu", LSBUOP, "b,a,I" }, /* Load store Byte Unsigned */
+ { "sb", SBOP, "b,a,I" }, /* Store Byte */
+
+ /* LOAD/STORE HALFWORD 16 bits. */
+ { "lh", LHOP, "b,a,I" }, /* Load Halfword */
+ { "lhu", LHUOP, "b,a,I" }, /* Load Halfword Unsigned */
+ { "ldsthu", LSHUOP, "b,a,I" }, /* Load Store Halfword Unsigned */
+ { "sh", SHOP, "b,a,I" }, /* Store Halfword */
+
+ /* LOAD/STORE WORD 32 bits. */
+ { "lw", LWOP, "b,a,I" }, /* Load Word */
+ { "sw", SWOP, "b,a,I" }, /* Store Word */
+ { "ldstw", LSWOP, "b,a,I" }, /* Load Store Word */
+
+ /* Branch PC-relative, 16 bits offset. */
+ { "beqz", BEQOP, "a,d" }, /* Branch if a == 0 */
+ { "bnez", BNEOP, "a,d" }, /* Branch if a != 0 */
+ { "beq", BEQOP, "a,d" }, /* Branch if a == 0 */
+ { "bne", BNEOP, "a,d" }, /* Branch if a != 0 */
+
+ /* Jumps Trap and RFE J-TYPE. */
+ { "j", JOP, "D" }, /* Jump, PC-relative 26 bits */
+ { "jal", JALOP, "D" }, /* JAL, PC-relative 26 bits */
+ { "break", BREAKOP, "D" }, /* break to OS */
+ { "trap" , TRAPOP, "D" }, /* TRAP to OS */
+ { "rfe", RFEOP, "N" }, /* Return From Exception */
+ /* Macros. */
+ { "call", JOP, "D" }, /* Jump, PC-relative 26 bits */
+
+ /* Jumps Trap and RFE I-TYPE. */
+ { "jr", JROP, "a" }, /* Jump Register, Abs (32 bits) */
+ { "jalr", JALROP, "a" }, /* JALR, Abs (32 bits) */
+ /* Macros. */
+ { "retr", JROP, "a" }, /* Jump Register, Abs (32 bits) */
+
+ { "", 0x0, "" } /* Dummy entry, not included in NUM_OPCODES.
+ This lets code examine entry i + 1 without
+ checking if we've run off the end of the table. */
+ };
+
+const unsigned int num_dlx_opcodes = (((sizeof dlx_opcodes) / (sizeof dlx_opcodes[0])) - 1);
diff --git a/include/opcode/h8300.h b/include/opcode/h8300.h
new file mode 100644
index 000000000..fe1097fd2
--- /dev/null
+++ b/include/opcode/h8300.h
@@ -0,0 +1,1892 @@
+/* Opcode table for the H8/300
+ Copyright 1991, 1992, 1993, 1994, 1996, 1997, 1998, 2000, 2002, 2003, 2004
+ Free Software Foundation, Inc.
+ Written by Steve Chamberlain <sac@cygnus.com>.
+
+ This file is part of GDB, the GNU Debugger and GAS, the GNU Assembler.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+/* Instructions are stored as a sequence of nibbles.
+ If the nibble has value 15 or less than the representation is complete.
+ Otherwise, we record what it contains with several flags. */
+
+typedef int op_type;
+
+enum h8_flags
+{
+ L_2 = 0x10,
+ L_3 = 0x20,
+ /* 3 bit constant, zero not accepted. */
+ L_3NZ = 0x30,
+ L_4 = 0x40,
+ L_5 = 0x50,
+ L_8 = 0x60,
+ L_8U = 0x70,
+ L_16 = 0x80,
+ L_16U = 0x90,
+ L_24 = 0xA0,
+ L_32 = 0xB0,
+ L_P = 0xC0,
+
+ /* Mask to isolate the L_x size bits. */
+ SIZE = 0xF0,
+
+ REG = 0x0100,
+ ABS = 0x0200,
+ MEMIND = 0x0300,
+ IMM = 0x0400,
+ DISP = 0x0500,
+ IND = 0x0600,
+ POSTINC = 0x0700,
+ POSTDEC = 0x0800,
+ PREINC = 0x0900,
+ PREDEC = 0x0A00,
+ PCREL = 0x0B00,
+ KBIT = 0x0C00,
+ DBIT = 0x0D00,
+ CONST_2 = 0x0E00,
+ CONST_4 = 0x0F00,
+ CONST_8 = 0x1000,
+ CONST_16 = 0x1100,
+ INDEXB = 0x1200,
+ INDEXW = 0x1300,
+ INDEXL = 0x1400,
+ PCIDXB = 0x1500,
+ PCIDXW = 0x1600,
+ PCIDXL = 0x1700,
+ VECIND = 0x1800,
+ LOWREG = 0x1900,
+ DATA = 0x2000,
+
+ /* Synonyms. */
+ INC = POSTINC,
+ DEC = PREDEC,
+ /* Control Registers. */
+ CCR = 0x4000,
+ EXR = 0x4100,
+ MACH = 0x4200,
+ MACL = 0x4300,
+ RESERV1 = 0x4400,
+ RESERV2 = 0x4500,
+ VBR = 0x4600,
+ SBR = 0x4700,
+ MACREG = 0x4800,
+ CCR_EXR = 0x4900,
+ VBR_SBR = 0x4A00,
+ CC_EX_VB_SB = 0x4B00,
+ RESERV3 = 0x4C00,
+ RESERV4 = 0x4D00,
+ RESERV5 = 0x4E00,
+ RESERV6 = 0x4F00,
+
+ /* Mask to isolate the addressing mode bits (REG .. PREDEC). */
+ MODE = 0x7F00,
+
+ CTRL = 0x4000,
+
+ NO_SYMBOLS = 0x8000,
+ SRC = 0x10000,
+ DST = 0x20000,
+ OP3 = 0x40000,
+ MEMRELAX = 0x80000, /* Move insn which may relax. */
+
+ DISPREG = 0x100000,
+ IGNORE = 0x200000,
+ ABSJMP = 0x400000,
+
+ B00 = 0x800000, /* Bit 0 must be low. */
+ B01 = 0x1000000, /* Bit 0 must be high. */
+ B10 = 0x2000000, /* Bit 1 must be low. */
+ B11 = 0x4000000, /* Bit 1 must be high. */
+ B20 = 0x8000000, /* Bit 2 must be low. */
+ B21 = 0x10000000, /* Bit 2 must be high. */
+ B30 = 0x20000000, /* Bit 3 must be low. */
+ B31 = 0x40000000, /* Bit 3 must be high. */
+ E = 0x80000000, /* End of nibble sequence. */
+
+ /* Immediates smaller than 8 bits are always unsigned. */
+ IMM3 = IMM | L_3,
+ IMM4 = IMM | L_4,
+ IMM5 = IMM | L_5,
+ IMM3NZ = IMM | L_3NZ,
+ IMM2 = IMM | L_2,
+
+ IMM8 = IMM | SRC | L_8,
+ IMM8U = IMM | SRC | L_8U,
+ IMM16 = IMM | SRC | L_16,
+ IMM16U = IMM | SRC | L_16U,
+ IMM32 = IMM | SRC | L_32,
+
+ IMM3NZ_NS = IMM3NZ | NO_SYMBOLS,
+ IMM4_NS = IMM4 | NO_SYMBOLS,
+ IMM8U_NS = IMM8U | NO_SYMBOLS,
+ IMM16U_NS = IMM16U | NO_SYMBOLS,
+
+ RD8 = DST | L_8 | REG,
+ RD16 = DST | L_16 | REG,
+ RD32 = DST | L_32 | REG,
+ R3_8 = OP3 | L_8 | REG,
+ R3_16 = OP3 | L_16 | REG,
+ R3_32 = OP3 | L_32 | REG,
+ RS8 = SRC | L_8 | REG,
+ RS16 = SRC | L_16 | REG,
+ RS32 = SRC | L_32 | REG,
+
+ RSP = SRC | L_P | REG,
+ RDP = DST | L_P | REG,
+
+ PCREL8 = PCREL | L_8,
+ PCREL16 = PCREL | L_16,
+
+ OP3PCREL8 = OP3 | PCREL | L_8,
+ OP3PCREL16 = OP3 | PCREL | L_16,
+
+ INDEXB16 = INDEXB | L_16,
+ INDEXW16 = INDEXW | L_16,
+ INDEXL16 = INDEXL | L_16,
+ INDEXB16D = INDEXB | L_16 | DST,
+ INDEXW16D = INDEXW | L_16 | DST,
+ INDEXL16D = INDEXL | L_16 | DST,
+
+ INDEXB32 = INDEXB | L_32,
+ INDEXW32 = INDEXW | L_32,
+ INDEXL32 = INDEXL | L_32,
+ INDEXB32D = INDEXB | L_32 | DST,
+ INDEXW32D = INDEXW | L_32 | DST,
+ INDEXL32D = INDEXL | L_32 | DST,
+
+ DISP2SRC = DISP | L_2 | SRC,
+ DISP16SRC = DISP | L_16 | SRC,
+ DISP32SRC = DISP | L_32 | SRC,
+
+ DISP2DST = DISP | L_2 | DST,
+ DISP16DST = DISP | L_16 | DST,
+ DISP32DST = DISP | L_32 | DST,
+
+ DSTDISPREG = DST | DISPREG,
+ SRCDISPREG = SRC | DISPREG,
+
+ ABS8SRC = SRC | ABS | L_8,
+ ABS16SRC = SRC | ABS | L_16U,
+ ABS24SRC = SRC | ABS | L_24,
+ ABS32SRC = SRC | ABS | L_32,
+
+ ABS8DST = DST | ABS | L_8,
+ ABS16DST = DST | ABS | L_16U,
+ ABS24DST = DST | ABS | L_24,
+ ABS32DST = DST | ABS | L_32,
+
+ ABS8OP3 = OP3 | ABS | L_8,
+ ABS16OP3 = OP3 | ABS | L_16U,
+ ABS24OP3 = OP3 | ABS | L_24,
+ ABS32OP3 = OP3 | ABS | L_32,
+
+ RDDEC = DST | DEC,
+ RSINC = SRC | INC,
+ RDINC = DST | INC,
+
+ RSPOSTINC = SRC | POSTINC,
+ RDPOSTINC = DST | POSTINC,
+ RSPREINC = SRC | PREINC,
+ RDPREINC = DST | PREINC,
+ RSPOSTDEC = SRC | POSTDEC,
+ RDPOSTDEC = DST | POSTDEC,
+ RSPREDEC = SRC | PREDEC,
+ RDPREDEC = DST | PREDEC,
+
+ RSIND = SRC | IND,
+ RDIND = DST | IND,
+ R3_IND = OP3 | IND,
+
+#define MS32 (SRC | L_32 | MACREG)
+#define MD32 (DST | L_32 | MACREG)
+
+#if 1
+ OR8 = RS8, /* ??? OR as in One Register. */
+ OR16 = RS16,
+ OR32 = RS32,
+#else
+ OR8 = RD8,
+ OR16 = RD16,
+ OR32 = RD32
+#endif
+};
+
+enum ctrlreg
+{
+ C_CCR = 0,
+ C_EXR = 1,
+ C_MACH = 2,
+ C_MACL = 3,
+ C_VBR = 6,
+ C_SBR = 7
+};
+
+enum {MAX_CODE_NIBBLES = 33};
+
+struct code
+{
+ op_type nib[MAX_CODE_NIBBLES];
+};
+
+struct arg
+{
+ op_type nib[3];
+};
+
+/* Availability of instructions on processor models. */
+enum h8_model
+{
+ AV_H8,
+ AV_H8H,
+ AV_H8S,
+ AV_H8SX
+};
+
+struct h8_opcode
+{
+ int how;
+ enum h8_model available;
+ int time;
+ char *name;
+ struct arg args;
+ struct code data;
+};
+
+#ifdef DEFINE_TABLE
+
+#define DATA2 DATA, DATA
+#define DATA3 DATA, DATA, DATA
+#define DATA5 DATA, DATA, DATA, DATA, DATA
+#define DATA7 DATA, DATA, DATA, DATA, DATA, DATA, DATA
+
+#define IMM8LIST IMM8, DATA
+#define IMM16LIST IMM16, DATA3
+#define IMM16ULIST IMM16U, DATA3
+#define IMM24LIST IMM24, DATA5
+#define IMM32LIST IMM32, DATA7
+
+#define DISP16LIST DISP | L_16, DATA3
+#define DISP24LIST DISP | L_24, DATA5
+#define DISP32LIST DISP | L_32, DATA7
+
+#define ABS8LIST ABS | L_8, DATA
+#define ABS16LIST ABS | L_16U, DATA3
+#define ABS24LIST ABS | L_24, DATA5
+#define ABS32LIST ABS | L_32, DATA7
+
+#define DSTABS8LIST DST | ABS | L_8, DATA
+#define DSTABS16LIST DST | ABS | L_16U, DATA3
+#define DSTABS24LIST DST | ABS | L_24, DATA5
+#define DSTABS32LIST DST | ABS | L_32, DATA7
+
+#define OP3ABS8LIST OP3 | ABS | L_8, DATA
+#define OP3ABS16LIST OP3 | ABS | L_16, DATA3
+#define OP3ABS24LIST OP3 | ABS | L_24, DATA5
+#define OP3ABS32LIST OP3 | ABS | L_32, DATA7
+
+#define DSTDISP16LIST DST | DISP | L_16, DATA3
+#define DSTDISP24LIST DST | DISP | L_24, DATA5
+#define DSTDISP32LIST DST | DISP | L_32, DATA7
+
+#define A16LIST L_16, DATA3
+#define A24LIST L_24, DATA5
+#define A32LIST L_32, DATA7
+
+/* Extended Operand Prefixes: */
+
+#define PREFIX_010 0x0, 0x1, 0x0
+#define PREFIX_015 0x0, 0x1, 0x5
+#define PREFIX_017 0x0, 0x1, 0x7
+
+#define PREFIX_0100 0x0, 0x1, 0x0, 0x0
+#define PREFIX_010_D2 0x0, 0x1, 0x0, B30 | B21 | DISP2SRC
+#define PREFIX_0101 0x0, 0x1, 0x0, 0x1
+#define PREFIX_0102 0x0, 0x1, 0x0, 0x2
+#define PREFIX_0103 0x0, 0x1, 0x0, 0x3
+#define PREFIX_0104 0x0, 0x1, 0x0, 0x4
+#define PREFIX_0105 0x0, 0x1, 0x0, 0x5
+#define PREFIX_0106 0x0, 0x1, 0x0, 0x6
+#define PREFIX_0107 0x0, 0x1, 0x0, 0x7
+#define PREFIX_0108 0x0, 0x1, 0x0, 0x8
+#define PREFIX_0109 0x0, 0x1, 0x0, 0x9
+#define PREFIX_010A 0x0, 0x1, 0x0, 0xa
+#define PREFIX_010D 0x0, 0x1, 0x0, 0xd
+#define PREFIX_010E 0x0, 0x1, 0x0, 0xe
+
+#define PREFIX_0150 0x0, 0x1, 0x5, 0x0
+#define PREFIX_015_D2 0x0, 0x1, 0x5, B30 | B21 | DISP2SRC
+#define PREFIX_0151 0x0, 0x1, 0x5, 0x1
+#define PREFIX_0152 0x0, 0x1, 0x5, 0x2
+#define PREFIX_0153 0x0, 0x1, 0x5, 0x3
+#define PREFIX_0154 0x0, 0x1, 0x5, 0x4
+#define PREFIX_0155 0x0, 0x1, 0x5, 0x5
+#define PREFIX_0156 0x0, 0x1, 0x5, 0x6
+#define PREFIX_0157 0x0, 0x1, 0x5, 0x7
+#define PREFIX_0158 0x0, 0x1, 0x5, 0x8
+#define PREFIX_0159 0x0, 0x1, 0x5, 0x9
+#define PREFIX_015A 0x0, 0x1, 0x5, 0xa
+#define PREFIX_015D 0x0, 0x1, 0x5, 0xd
+#define PREFIX_015E 0x0, 0x1, 0x5, 0xe
+#define PREFIX_015F 0x0, 0x1, 0x5, 0xf
+
+#define PREFIX_0170 0x0, 0x1, 0x7, 0x0
+#define PREFIX_017_D2S 0x0, 0x1, 0x7, B30 | B21 | DISP2SRC
+#define PREFIX_017_D2D 0x0, 0x1, 0x7, B30 | B21 | DISP2DST
+#define PREFIX_0171 0x0, 0x1, 0x7, 0x1
+#define PREFIX_0172 0x0, 0x1, 0x7, 0x2
+#define PREFIX_0173 0x0, 0x1, 0x7, 0x3
+#define PREFIX_0174 0x0, 0x1, 0x7, 0x4
+#define PREFIX_0175 0x0, 0x1, 0x7, 0x5
+#define PREFIX_0176 0x0, 0x1, 0x7, 0x6
+#define PREFIX_0177 0x0, 0x1, 0x7, 0x7
+#define PREFIX_0178 0x0, 0x1, 0x7, 0x8
+#define PREFIX_0179 0x0, 0x1, 0x7, 0x9
+#define PREFIX_017A 0x0, 0x1, 0x7, 0xa
+#define PREFIX_017D 0x0, 0x1, 0x7, 0xd
+#define PREFIX_017E 0x0, 0x1, 0x7, 0xe
+#define PREFIX_017F 0x0, 0x1, 0x7, 0xf
+
+#define PREFIX_6A15 0x6, 0xa, 0x1, 0x5
+#define PREFIX_6A35 0x6, 0xa, 0x3, 0x5
+#define PREFIX_6B15 0x6, 0xb, 0x1, 0x5
+#define PREFIX_6B35 0x6, 0xb, 0x3, 0x5
+
+#define PREFIX_78R4 0x7, 0x8, B31 | DISPREG, 0x4
+#define PREFIX_78R5 0x7, 0x8, B31 | DISPREG, 0x5
+#define PREFIX_78R6 0x7, 0x8, B31 | DISPREG, 0x6
+#define PREFIX_78R7 0x7, 0x8, B31 | DISPREG, 0x7
+
+#define PREFIX_78R4W 0x7, 0x8, B30 | DISPREG, 0x4
+#define PREFIX_78R5W 0x7, 0x8, B30 | DISPREG, 0x5
+#define PREFIX_78R6W 0x7, 0x8, B30 | DISPREG, 0x6
+#define PREFIX_78R7W 0x7, 0x8, B30 | DISPREG, 0x7
+
+#define PREFIX_78R4WD 0x7, 0x8, B30 | DSTDISPREG, 0x4
+#define PREFIX_78R5WD 0x7, 0x8, B30 | DSTDISPREG, 0x5
+#define PREFIX_78R6WD 0x7, 0x8, B30 | DSTDISPREG, 0x6
+#define PREFIX_78R7WD 0x7, 0x8, B30 | DSTDISPREG, 0x7
+
+#define PREFIX_7974 0x7, 0x9, 0x7, 0x4
+#define PREFIX_7A74 0x7, 0xa, 0x7, 0x4
+#define PREFIX_7A7C 0x7, 0xa, 0x7, 0xc
+
+
+/* Source standard fragment: */
+#define FROM_IND 0, RSIND
+#define FROM_POSTINC 8, RSPOSTINC
+#define FROM_POSTDEC 10, RSPOSTDEC
+#define FROM_PREINC 9, RSPREINC
+#define FROM_PREDEC 11, RSPREDEC
+#define FROM_DISP2 B30 | B20 | DISP2SRC, DISPREG
+#define FROM_DISP16 12, B30 | DISPREG
+#define FROM_DISP32 12, B31 | DISPREG
+#define FROM_DISP16B 13, B30 | DISPREG
+#define FROM_DISP16W 14, B30 | DISPREG
+#define FROM_DISP16L 15, B30 | DISPREG
+#define FROM_DISP32B 13, B31 | DISPREG
+#define FROM_DISP32W 14, B31 | DISPREG
+#define FROM_DISP32L 15, B31 | DISPREG
+#define FROM_ABS16 4, B30 | IGNORE
+#define FROM_ABS32 4, B31 | IGNORE
+
+/* Destination standard fragment: */
+#define TO_IND 0, RDIND
+#define TO_IND_MOV 0, RDIND | B30
+#define TO_POSTINC 8, RDPOSTINC
+#define TO_POSTINC_MOV 8, RDPOSTINC | B30
+#define TO_POSTDEC 10, RDPOSTDEC
+#define TO_POSTDEC_MOV 10, RDPOSTDEC | B30
+#define TO_PREINC 9, RDPREINC
+#define TO_PREINC_MOV 9, RDPREINC | B30
+#define TO_PREDEC 11, RDPREDEC
+#define TO_PREDEC_MOV 11, RDPREDEC | B30
+#define TO_DISP2 B30 | B20 | DISP2DST, DSTDISPREG
+#define TO_DISP2_MOV B30 | B20 | DISP2DST, DSTDISPREG | B30
+#define TO_DISP16 12, B30 | DSTDISPREG
+#define TO_DISP32 12, B31 | DSTDISPREG
+#define TO_DISP16B 13, B30 | DSTDISPREG
+#define TO_DISP16W 14, B30 | DSTDISPREG
+#define TO_DISP16L 15, B30 | DSTDISPREG
+#define TO_DISP32B 13, B31 | DSTDISPREG
+#define TO_DISP32W 14, B31 | DSTDISPREG
+#define TO_DISP32L 15, B31 | DSTDISPREG
+#define TO_ABS16 4, B30 | IGNORE
+#define TO_ABS32 4, B31 | IGNORE
+
+/* Source fragment for three-word instruction: */
+#define TFROM_IND 6, 9, B30 | RSIND, 12
+#define TFROM_DISP2 6, 9, B30 | DISPREG, 12
+#define TFROM_ABS16 6, 11, B30 | B20 | B10 | IGNORE, 12, ABS16LIST
+#define TFROM_ABS32 6, 11, B30 | B20 | B11 | IGNORE, 12, ABS32LIST
+#define TFROM_POSTINC 6, 13, B30 | RSPOSTINC, 12
+#define TFROM_PREINC 6, 13, B30 | RSPREINC, 12
+#define TFROM_POSTDEC 6, 13, B30 | RSPOSTDEC, 12
+#define TFROM_PREDEC 6, 13, B30 | RSPREDEC, 12
+#define TFROM_DISP16 6, 15, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP32 6, 11, 2, 12, DISP32LIST
+#define TFROM_DISP16B 6, 15, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP16W 6, 15, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP16L 6, 15, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP32B 6, 11, 2, 12, DISP32LIST
+#define TFROM_DISP32W 6, 11, 2, 12, DISP32LIST
+#define TFROM_DISP32L 6, 11, 2, 12, DISP32LIST
+#define TFROM_ABS16W 6, 11, 1, 12, ABS16LIST
+#define TFROM_ABS32W 6, 11, 3, 12, ABS32LIST
+
+/* Source fragment for three-word instruction: */
+#define TFROM_IND_B 6, 8, B30 | RSIND, 12
+#define TFROM_ABS16_B 6, 10, B30 | B20 | B10 | IGNORE, 12, ABS16LIST
+#define TFROM_ABS32_B 6, 10, B30 | B20 | B11 | IGNORE, 12, ABS32LIST
+
+#define TFROM_DISP2_B 6, 8, B30 | DISPREG, 12
+#define TFROM_POSTINC_B 6, 12, B30 | RSPOSTINC, 12
+#define TFROM_PREINC_B 6, 12, B30 | RSPREINC, 12
+#define TFROM_POSTDEC_B 6, 12, B30 | RSPOSTDEC, 12
+#define TFROM_PREDEC_B 6, 12, B30 | RSPREDEC, 12
+#define TFROM_DISP16_B 6, 14, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP32_B 6, 10, 2, 12, DISP32LIST
+#define TFROM_DISP16B_B 6, 14, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP16W_B 6, 14, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP16L_B 6, 14, B30 | DISPREG, 12, DISP16LIST
+#define TFROM_DISP32B_B 6, 10, 2, 12, DISP32LIST
+#define TFROM_DISP32W_B 6, 10, 2, 12, DISP32LIST
+#define TFROM_DISP32L_B 6, 10, 2, 12, DISP32LIST
+
+#define TFROM_ABS16W_B 6, 10, 1, 12, ABS16LIST
+#define TFROM_ABS32W_B 6, 10, 3, 12, ABS32LIST
+
+/* Extended Operand Class Expanders: */
+
+#define MOVFROM_STD(CODE, PREFIX, NAME, SRC, SRC_INFIX) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND, E}}, {{PREFIX, SRC_INFIX, TO_IND_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, SRC_INFIX, TO_POSTINC_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, SRC_INFIX, TO_POSTDEC_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, SRC_INFIX, TO_PREINC_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, SRC_INFIX, TO_PREDEC_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP2_MOV, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP16, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP32, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16B, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16W, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16L, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32B, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32W, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32L, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST, E}}, {{PREFIX, SRC_INFIX, TO_ABS16, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST, E}}, {{PREFIX, SRC_INFIX, TO_ABS32, DSTABS32LIST, E}}}
+
+#define MOVFROM_AD(CODE, PREFIX, NAME, SRC, SRC_INFIX, SRC_SUFFIX) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND, E}}, {{PREFIX, SRC_INFIX, TO_IND_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, SRC_INFIX, TO_POSTINC_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, SRC_INFIX, TO_POSTDEC_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, SRC_INFIX, TO_PREINC_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, SRC_INFIX, TO_PREDEC_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP2_MOV, SRC_SUFFIX, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP16, SRC_SUFFIX, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, SRC_INFIX, TO_DISP32, SRC_SUFFIX, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16B, SRC_SUFFIX, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16W, SRC_SUFFIX, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, SRC_INFIX, TO_DISP16L, SRC_SUFFIX, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32B, SRC_SUFFIX, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32W, SRC_SUFFIX, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, SRC_INFIX, TO_DISP32L, SRC_SUFFIX, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST, E}}, {{PREFIX, SRC_INFIX, TO_ABS16, SRC_SUFFIX, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST, E}}, {{PREFIX, SRC_INFIX, TO_ABS32, SRC_SUFFIX, DSTABS32LIST, E}}}
+
+#define MOVFROM_IMM8(CODE, PREFIX, NAME, SRC) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND, E}}, {{PREFIX, 0, RDIND, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, 8, RDPOSTINC, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, 10, RDPOSTDEC, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, 9, RDPREINC, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, 11, RDPREDEC, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, B30 | B20 | DISP2DST, DSTDISPREG, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, 12, B30 | DSTDISPREG, IMM8LIST, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, 12, B31 | DSTDISPREG, IMM8LIST, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, 13, B30 | DSTDISPREG, IMM8LIST, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, 14, B30 | DSTDISPREG, IMM8LIST, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, 15, B30 | DSTDISPREG, IMM8LIST, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, 13, B31 | DSTDISPREG, IMM8LIST, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, 14, B31 | DSTDISPREG, IMM8LIST, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, 15, B31 | DSTDISPREG, IMM8LIST, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST, E}}, {{PREFIX, 4, B30 | IGNORE, IMM8LIST, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST, E}}, {{PREFIX, 4, B31 | IGNORE, IMM8LIST, DSTABS32LIST, E}}}
+
+#define MOVFROM_IMM(CODE, PREFIX, NAME, SRC, LIST) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND, E}}, {{PREFIX, LIST, 0, RDIND, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, LIST, 8, RDPOSTINC, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, LIST, 10, RDPOSTDEC, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, LIST, 9, RDPREINC, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, LIST, 11, RDPREDEC, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, LIST, B30 | B20 | DISP2DST, DSTDISPREG, DATA2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, LIST, 12, B30 | DSTDISPREG, DATA2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, LIST, 12, B31 | DSTDISPREG, DATA2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, LIST, 13, B30 | DSTDISPREG, DATA2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, LIST, 14, B30 | DSTDISPREG, DATA2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, LIST, 15, B30 | DSTDISPREG, DATA2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, LIST, 13, B31 | DSTDISPREG, DATA2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, LIST, 14, B31 | DSTDISPREG, DATA2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, LIST, 15, B31 | DSTDISPREG, DATA2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST, E}}, {{PREFIX, LIST, 4, B30 | IGNORE, DATA2, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST, E}}, {{PREFIX, LIST, 4, B31 | IGNORE, DATA2, DSTABS32LIST, E}}}
+
+#define MOVFROM_REG_BW(CODE, NAME, SRC, PREFIX, OP1, OP2, OP3, OP4, RELAX16) \
+ {CODE, AV_H8, 4, NAME, {{SRC, RDIND, E}}, {{ 6, OP1, B31 | RDIND, SRC, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, 3, 6, OP3, B31 | RDPOSTINC, SRC, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, 1, 6, OP3, B31 | RDPOSTDEC, SRC, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, 2, 6, OP3, B31 | RDPREINC, SRC, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{SRC, RDPREDEC, E}}, {{ 6, OP3, B31 | RDPREDEC, SRC, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, B30 | B20 | DISP2DST, 6, OP1, B31 | DSTDISPREG, SRC, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{SRC, DISP16DST, E}}, {{ 6, OP4, B31 | DSTDISPREG, SRC, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{SRC, DISP32DST, E}}, {{7, 8, B30 | DSTDISPREG, 0, 6, OP2, 10, SRC, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, 1, 6, OP4, B31 | DSTDISPREG, SRC, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, 2, 6, OP4, B31 | DSTDISPREG, SRC, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, 3, 6, OP4, B31 | DSTDISPREG, SRC, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{7, 8, B30 | DSTDISPREG, 1, 6, OP2, 10, SRC, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{7, 8, B30 | DSTDISPREG, 2, 6, OP2, 10, SRC, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{7, 8, B30 | DSTDISPREG, 3, 6, OP2, 10, SRC, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8, 4, NAME, {{SRC, ABS16DST, E}}, {{ 6, OP2, 8, SRC, RELAX16 | DSTABS16LIST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{SRC, ABS32DST, E}}, {{ 6, OP2, 10, SRC, MEMRELAX | DSTABS32LIST, E}}}
+
+#define MOVTO_REG_BW(CODE, NAME, DST, PREFIX, OP1, OP2, OP3, OP4, RELAX16) \
+ {CODE, AV_H8, 4, NAME, {{RSIND, DST, E}}, {{ 6, OP1, B30 | RSIND, DST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{RSPOSTINC, DST, E}}, {{ 6, OP3, B30 | RSPOSTINC, DST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTDEC, DST, E}}, {{PREFIX, 2, 6, OP3, B30 | RSPOSTDEC, DST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREINC, DST, E}}, {{PREFIX, 1, 6, OP3, B30 | RSPREINC, DST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREDEC, DST, E}}, {{PREFIX, 3, 6, OP3, B30 | RSPREDEC, DST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP2SRC, DST, E}}, {{PREFIX, B30 | B20 | DISP2SRC, 6, OP1, B30 | DISPREG, DST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{DISP16SRC, DST, E}}, {{ 6, OP4, B30 | DISPREG, DST, DISP16LIST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{DISP32SRC, DST, E}}, {{7, 8, B30 | DISPREG, 0, 6, OP2, 2, DST, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB16, DST, E}}, {{PREFIX, 1, 6, OP4, B30 | DISPREG, DST, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW16, DST, E}}, {{PREFIX, 2, 6, OP4, B30 | DISPREG, DST, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL16, DST, E}}, {{PREFIX, 3, 6, OP4, B30 | DISPREG, DST, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB32, DST, E}}, {{7, 8, B30 | DISPREG, 1, 6, OP2, 2, DST, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW32, DST, E}}, {{7, 8, B30 | DISPREG, 2, 6, OP2, 2, DST, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL32, DST, E}}, {{7, 8, B30 | DISPREG, 3, 6, OP2, 2, DST, DISP32LIST, E}}}, \
+ {CODE, AV_H8, 4, NAME, {{ABS16SRC, DST, E}}, {{ 6, OP2, 0, DST, RELAX16 | ABS16LIST, E}}}, \
+ {CODE, AV_H8, 6, NAME, {{ABS32SRC, DST, E}}, {{ 6, OP2, 2, DST, MEMRELAX | ABS32LIST, E}}}
+
+/* Expansion macros for two-word (plus data) instructions. */
+
+/* Expansion from one source to "standard" destinations. */
+#define EXPAND2_STD_SRC(CODE, WEIGHT, NAME, SRC, PREFIX, NIB1, NIB2) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, TO_POSTINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, TO_POSTDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, TO_PREINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, TO_PREDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, TO_DISP2, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, TO_DISP16, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, TO_DISP32, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, TO_DISP16B, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, TO_DISP16W, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, TO_DISP16L, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, TO_DISP32B, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, TO_DISP32W, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, TO_DISP32L, NIB1, NIB2, DSTDISP32LIST, E}}}
+
+/* Expansion from one destination to "standard" sources. */
+#define EXPAND2_STD_DST(CODE, WEIGHT, NAME, DST, PREFIX, NIB1, NIB2) \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTINC, DST, E}}, {{PREFIX, FROM_POSTINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTDEC, DST, E}}, {{PREFIX, FROM_POSTDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREINC, DST, E}}, {{PREFIX, FROM_PREINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREDEC, DST, E}}, {{PREFIX, FROM_PREDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP2SRC, DST, E}}, {{PREFIX, FROM_DISP2, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP16SRC, DST, E}}, {{PREFIX, FROM_DISP16, NIB1, NIB2, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP32SRC, DST, E}}, {{PREFIX, FROM_DISP32, NIB1, NIB2, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB16, DST, E}}, {{PREFIX, FROM_DISP16B, NIB1, NIB2, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW16, DST, E}}, {{PREFIX, FROM_DISP16W, NIB1, NIB2, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL16, DST, E}}, {{PREFIX, FROM_DISP16L, NIB1, NIB2, DISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB32, DST, E}}, {{PREFIX, FROM_DISP32B, NIB1, NIB2, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW32, DST, E}}, {{PREFIX, FROM_DISP32W, NIB1, NIB2, DISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL32, DST, E}}, {{PREFIX, FROM_DISP32L, NIB1, NIB2, DISP32LIST, E}}}
+
+/* Expansion from immediate source to "standard" destinations. */
+#define EXPAND2_STD_IMM(CODE, WEIGHT, NAME, SRC, PREFIX, OPCODE, IGN, IMMLIST) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, TO_POSTINC, OPCODE, IGN, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, TO_POSTDEC, OPCODE, IGN, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, TO_PREINC, OPCODE, IGN, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, TO_PREDEC, OPCODE, IGN, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, TO_DISP2, OPCODE, IGN, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, TO_DISP16, OPCODE, IGN, DSTDISP16LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, TO_DISP32, OPCODE, IGN, DSTDISP32LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, TO_DISP16B, OPCODE, IGN, DSTDISP16LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, TO_DISP16W, OPCODE, IGN, DSTDISP16LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, TO_DISP16L, OPCODE, IGN, DSTDISP16LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, TO_DISP32B, OPCODE, IGN, DSTDISP32LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, TO_DISP32W, OPCODE, IGN, DSTDISP32LIST, IMMLIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, TO_DISP32L, OPCODE, IGN, DSTDISP32LIST, IMMLIST, E}}}
+
+/* Expansion from abs/disp source to "standard" destinations. */
+#define EXPAND2_STD_ABSDISP(CODE, WEIGHT, NAME, SRC, PREFIX, DSTLIST, NIB1, NIB2) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, DSTLIST, TO_POSTINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, DSTLIST, TO_POSTDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, DSTLIST, TO_PREINC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, DSTLIST, TO_PREDEC, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, DSTLIST, TO_DISP2, NIB1, NIB2, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, DSTLIST, TO_DISP16, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, DSTLIST, TO_DISP32, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, DSTLIST, TO_DISP16B, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, DSTLIST, TO_DISP16W, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, DSTLIST, TO_DISP16L, NIB1, NIB2, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, DSTLIST, TO_DISP32B, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, DSTLIST, TO_DISP32W, NIB1, NIB2, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, DSTLIST, TO_DISP32L, NIB1, NIB2, DSTDISP32LIST, E}}}
+
+/* Expansion from ind source to "standard" destinations. */
+#define EXPAND2_STD_IND(CODE, WEIGHT, NAME, OPCODE, BIT) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDPOSTINC, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_POSTINC, OPCODE, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDPOSTDEC, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_POSTDEC, OPCODE, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDPREINC, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_PREINC, OPCODE, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDPREDEC, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_PREDEC, OPCODE, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, DISP2DST, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP2, OPCODE, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, DISP16DST, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP16, OPCODE, IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, DISP32DST, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP32, OPCODE, IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXB16D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP16B, OPCODE, IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXW16D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP16W, OPCODE, IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXL16D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP16L, OPCODE, IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXB32D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP32B, OPCODE, IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXW32D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP32W, OPCODE, IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, INDEXL32D, E}}, {{0x7, 0xc, BIT | RSIND, 0x5, TO_DISP32L, OPCODE, IGNORE, DSTDISP32LIST, E}}}
+
+/* Expansion macros for three word (plus data) instructions. */
+
+#define EXPAND3_STD_SRC(CODE, WEIGHT, NAME, SRC, PREFIX, INFIX, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, INFIX, 8, RDPOSTINC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, INFIX, 10, RDPOSTDEC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, INFIX, 9, RDPREINC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, INFIX, 11, RDPREDEC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, INFIX, B30 | B20 | DISP2DST, DSTDISPREG, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, INFIX, 12, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, INFIX, 12, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, INFIX, 13, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, INFIX, 14, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, INFIX, 15, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, INFIX, 13, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, INFIX, 14, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, INFIX, 15, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}
+
+#define EXPAND3_L_SRC(CODE, WEIGHT, NAME, SRC, PREFIX, INFIX, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND, E}}, {{PREFIX, INFIX, 0, RDIND, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}}, {{PREFIX, INFIX, 8, RDPOSTINC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}}, {{PREFIX, INFIX, 10, RDPOSTDEC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC, E}}, {{PREFIX, INFIX, 9, RDPREINC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC, E}}, {{PREFIX, INFIX, 11, RDPREDEC, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST, E}}, {{PREFIX, INFIX, B30 | B20 | DISP2DST, DSTDISPREG, OPCODE, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}}, {{PREFIX, INFIX, 12, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}}, {{PREFIX, INFIX, 12, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}}, {{PREFIX, INFIX, 13, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}}, {{PREFIX, INFIX, 14, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}}, {{PREFIX, INFIX, 15, B30 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}}, {{PREFIX, INFIX, 13, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}}, {{PREFIX, INFIX, 14, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}}, {{PREFIX, INFIX, 15, B31 | DSTDISPREG, OPCODE, B30 | IGNORE, DSTDISP32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST, E}}, {{PREFIX, INFIX, 4, B30 | IGNORE, OPCODE, B30 | IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST, E}}, {{PREFIX, INFIX, 4, B31 | IGNORE, OPCODE, B30 | IGNORE, DSTABS32LIST, E}}}
+
+
+#define EXPAND_STD_MATRIX_L(CODE, NAME, OPCODE) \
+ EXPAND3_L_SRC (CODE, 6, NAME, RSIND, PREFIX_0104, TFROM_IND, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, RSPOSTINC, PREFIX_0104, TFROM_POSTINC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, RSPOSTDEC, PREFIX_0106, TFROM_POSTDEC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, RSPREINC, PREFIX_0105, TFROM_PREINC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, RSPREDEC, PREFIX_0107, TFROM_PREDEC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, DISP2SRC, PREFIX_010_D2, TFROM_DISP2, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, DISP16SRC, PREFIX_0104, TFROM_DISP16, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, DISP32SRC, PREFIX_78R4, TFROM_DISP32, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXB16, PREFIX_0105, TFROM_DISP16B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXW16, PREFIX_0106, TFROM_DISP16W, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXL16, PREFIX_0107, TFROM_DISP16L, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXB32, PREFIX_78R5, TFROM_DISP32B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXW32, PREFIX_78R6, TFROM_DISP32W, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, INDEXL32, PREFIX_78R7, TFROM_DISP32L, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, ABS16SRC, PREFIX_0104, TFROM_ABS16, OPCODE), \
+ EXPAND3_L_SRC (CODE, 6, NAME, ABS32SRC, PREFIX_0104, TFROM_ABS32, OPCODE)
+
+
+#define EXPAND_STD_MATRIX_W(CODE, NAME, OPCODE) \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPOSTINC, PREFIX_0154, TFROM_POSTINC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPOSTDEC, PREFIX_0156, TFROM_POSTDEC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPREINC, PREFIX_0155, TFROM_PREINC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPREDEC, PREFIX_0157, TFROM_PREDEC, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP2SRC, PREFIX_015_D2, TFROM_DISP2, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP16SRC, PREFIX_0154, TFROM_DISP16, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP32SRC, PREFIX_78R4W, TFROM_DISP32, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXB16, PREFIX_0155, TFROM_DISP16B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXW16, PREFIX_0156, TFROM_DISP16W, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXL16, PREFIX_0157, TFROM_DISP16L, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXB32, PREFIX_78R5W, TFROM_DISP32B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXW32, PREFIX_78R6W, TFROM_DISP32W, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXL32, PREFIX_78R7W, TFROM_DISP32L, OPCODE)
+
+#define EXPAND_STD_MATRIX_B(CODE, NAME, OPCODE) \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPOSTINC, PREFIX_0174, TFROM_POSTINC_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPOSTDEC, PREFIX_0176, TFROM_POSTDEC_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPREINC, PREFIX_0175, TFROM_PREINC_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, RSPREDEC, PREFIX_0177, TFROM_PREDEC_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP2SRC, PREFIX_017_D2S, TFROM_DISP2_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP16SRC, PREFIX_0174, TFROM_DISP16_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, DISP32SRC, PREFIX_78R4W, TFROM_DISP32_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXB16, PREFIX_0175, TFROM_DISP16B_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXW16, PREFIX_0176, TFROM_DISP16W_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXL16, PREFIX_0177, TFROM_DISP16L_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXB32, PREFIX_78R5W, TFROM_DISP32B_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXW32, PREFIX_78R6W, TFROM_DISP32W_B, OPCODE), \
+ EXPAND3_L_SRC (CODE, 4, NAME, INDEXL32, PREFIX_78R7W, TFROM_DISP32L_B, OPCODE)
+
+
+/* Use the expansion macros to fill out the opcode table. */
+
+#define EXPAND_FROM_REG8(CODE, NAME, OP1, OP2, OP3) \
+ {CODE, AV_H8SX, 0, NAME, {{RS8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, OP1, OP2, RS8, IGNORE, E}}}, \
+ EXPAND2_STD_SRC (CODE, 2, NAME, RS8, PREFIX_0179, OP3, RS8), \
+ {CODE, AV_H8SX, 0, NAME, {{RS8, ABS8DST, E}}, {{0x7, 0xf, DSTABS8LIST, OP1, OP2, RS8, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RS8, ABS16DST, E}}, {{0x6, 0xa, 0x1, B31 | IGNORE, DSTABS16LIST, OP1, OP2, RS8, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RS8, ABS32DST, E}}, {{0x6, 0xa, 0x3, B31 | IGNORE, DSTABS32LIST, OP1, OP2, RS8, IGNORE, E}}}
+
+#define EXPAND_TO_REG8(CODE, NAME, OP1, OP2, OP3) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RD8, E}}, {{0x7, 0xc, B30 | RSIND, IGNORE, OP1, OP2, IGNORE, RD8, E}}}, \
+ EXPAND2_STD_DST (CODE, 2, NAME, RD8, PREFIX_017A, OP3, RD8), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS8SRC, RD8, E}}, {{0x7, 0xe, ABS8LIST, OP1, OP2, IGNORE, RD8, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, RD8, E}}, {{0x6, 0xa, 0x1, B30 | IGNORE, ABS16LIST, OP1, OP2, IGNORE, RD8, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, RD8, E}}, {{0x6, 0xa, 0x3, B30 | IGNORE, ABS32LIST, OP1, OP2, IGNORE, RD8, E}}}
+
+#define EXPAND_FROM_IND8(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDIND, E}}, {{0x7, 0xc, B30 | RSIND, 0x5, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_IND (CODE, 2, NAME, OPCODE, B30), \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, ABS16DST, E}}, {{0x7, 0xc, B30 | RSIND, 0x5, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, ABS32DST, E}}, {{0x7, 0xc, B30 | RSIND, 0x5, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_ABS16_B(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, RDIND, E}}, {{PREFIX_6A15, ABS16LIST, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_ABSDISP (CODE, 2, NAME, ABS16SRC, PREFIX_6A15, ABS16LIST, OPCODE, IGNORE), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, ABS16DST, E}}, {{PREFIX_6A15, ABS16LIST, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, ABS32DST, E}}, {{PREFIX_6A15, ABS16LIST, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_ABS32_B(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, RDIND, E}}, {{PREFIX_6A35, ABS32LIST, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_ABSDISP (CODE, 2, NAME, ABS32SRC, PREFIX_6A35, ABS32LIST, OPCODE, IGNORE), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, ABS16DST, E}}, {{PREFIX_6A35, ABS32LIST, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, ABS32DST, E}}, {{PREFIX_6A35, ABS32LIST, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_IMM16_W(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16, RDIND, E}}, {{PREFIX_015E, TO_IND, OPCODE, IGNORE, IMM16LIST, E}}}, \
+ EXPAND2_STD_IMM (CODE, 2, NAME, IMM16, PREFIX_015E, OPCODE, IGNORE, IMM16LIST), \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16, ABS16DST, E}}, {{PREFIX_015E, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, IMM16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16, ABS32DST, E}}, {{PREFIX_015E, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, IMM16LIST, E}}}
+
+#define EXPAND_FROM_REG16(CODE, NAME, OP1, OP2, OP3) \
+ {CODE, AV_H8, 2, NAME, {{RS16, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, IGNORE, OP1, OP2, RS16, IGNORE, E}}}, \
+ EXPAND2_STD_SRC (CODE, 2, NAME, RS16, PREFIX_0159, OP3, RS16), \
+ {CODE, AV_H8SX, 0, NAME, {{RS16, ABS16DST, E}}, {{0x6, 0xb, 0x1, B31 | IGNORE, DSTABS16LIST, OP1, OP2, RS16, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RS16, ABS32DST, E}}, {{0x6, 0xb, 0x3, B31 | IGNORE, DSTABS32LIST, OP1, OP2, RS16, IGNORE, E}}}
+
+#define EXPAND_TO_REG16(CODE, NAME, OP1, OP2, OP3) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RD16, E}}, {{0x7, 0xc, B31 | RSIND, IGNORE, OP1, OP2, IGNORE, RD16, E}}}, \
+ EXPAND2_STD_DST (CODE, 2, NAME, RD16, PREFIX_015A, OP3, RD16), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, RD16, E}}, {{0x6, 0xb, 0x1, B30 | IGNORE, ABS16LIST, OP1, OP2, IGNORE, RD16, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, RD16, E}}, {{0x6, 0xb, 0x3, B30 | IGNORE, ABS32LIST, OP1, OP2, IGNORE, RD16, E}}}
+
+#define EXPAND_FROM_IND16(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RDIND, E}}, {{0x7, 0xc, B31 | RSIND, 0x5, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_IND (CODE, 2, NAME, OPCODE, B31), \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, ABS16DST, E}}, {{0x7, 0xc, B31 | RSIND, 0x5, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, ABS32DST, E}}, {{0x7, 0xc, B31 | RSIND, 0x5, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_ABS16_W(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, RDIND, E}}, {{PREFIX_6B15, ABS16LIST, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_ABSDISP (CODE, 2, NAME, ABS16SRC, PREFIX_6B15, ABS16LIST, OPCODE, IGNORE), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, ABS16DST, E}}, {{PREFIX_6B15, ABS16LIST, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, ABS32DST, E}}, {{PREFIX_6B15, ABS16LIST, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_ABS32_W(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, RDIND, E}}, {{PREFIX_6B35, ABS32LIST, TO_IND, OPCODE, IGNORE, E}}}, \
+ EXPAND2_STD_ABSDISP (CODE, 2, NAME, ABS32SRC, PREFIX_6B35, ABS32LIST, OPCODE, IGNORE), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, ABS16DST, E}}, {{PREFIX_6B35, ABS32LIST, TO_ABS16, OPCODE, IGNORE, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, ABS32DST, E}}, {{PREFIX_6B35, ABS32LIST, TO_ABS32, OPCODE, IGNORE, DSTABS32LIST, E}}}
+
+#define EXPAND_FROM_IMM16_L(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16U_NS, RDIND, E}}, {{PREFIX_010E, TO_IND, OPCODE, B30 | IGNORE, IMM16ULIST, E}}}, \
+ EXPAND2_STD_IMM (CODE, 2, NAME, IMM16U_NS, PREFIX_010E, OPCODE, B30 | IGNORE, IMM16ULIST), \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16U_NS, ABS16DST, E}}, {{PREFIX_010E, TO_ABS16, OPCODE, B30 | IGNORE, DSTABS16LIST, IMM16ULIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16U_NS, ABS32DST, E}}, {{PREFIX_010E, TO_ABS32, OPCODE, B30 | IGNORE, DSTABS32LIST, IMM16ULIST, E}}}
+
+#define EXPAND_FROM_IMM32_L(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{IMM32, RDIND, E}}, {{PREFIX_010E, TO_IND, OPCODE, B31 | IGNORE, IMM32LIST, E}}}, \
+ EXPAND2_STD_IMM (CODE, 2, NAME, IMM32, PREFIX_010E, OPCODE, B31 | IGNORE, IMM32LIST), \
+ {CODE, AV_H8SX, 0, NAME, {{IMM32, ABS16DST, E}}, {{PREFIX_010E, TO_ABS16, OPCODE, B31 | IGNORE, DSTABS16LIST, IMM32LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM32, ABS32DST, E}}, {{PREFIX_010E, TO_ABS32, OPCODE, B31 | IGNORE, DSTABS32LIST, IMM32LIST, E}}}
+
+#define EXPAND_FROM_REG32(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{RS32, RDIND, E}}, {{PREFIX_0109, TO_IND, OPCODE, B30 | RS32, E}}}, \
+ EXPAND2_STD_SRC (CODE, 2, NAME, RS32, PREFIX_0109, OPCODE, B30 | RS32), \
+ {CODE, AV_H8SX, 0, NAME, {{RS32, ABS16DST, E}}, {{PREFIX_0109, TO_ABS16, OPCODE, B30 | RS32, DSTABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RS32, ABS32DST, E}}, {{PREFIX_0109, TO_ABS32, OPCODE, B30 | RS32, DSTABS32LIST, E}}}
+
+#define EXPAND_TO_REG32(CODE, NAME, OPCODE) \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, RD32, E}}, {{PREFIX_010A, FROM_IND, OPCODE, B30 | RD32, E}}}, \
+ EXPAND2_STD_DST (CODE, 2, NAME, RD32, PREFIX_010A, OPCODE, B30 | RD32), \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, RD32, E}}, {{PREFIX_010A, FROM_ABS16, OPCODE, B30 | RD32, ABS16LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, RD32, E}}, {{PREFIX_010A, FROM_ABS32, OPCODE, B30 | RD32, ABS32LIST, E}}}
+
+
+#define EXPAND_TWOOP_B(CODE, NAME, OP1, OP2, OP3, OP4, BIT) \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, RDPOSTINC, E}}, {{PREFIX_0174, 0x6, 0xc, B30 | RDPOSTINC, B31 | B20 | IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RDPOSTDEC, B31 | B20 | IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, RDPREINC, E}}, {{PREFIX_0175, 0x6, 0xc, B30 | RDPREINC, B31 | B20 | IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, RDPREDEC, E}}, {{PREFIX_0177, 0x6, 0xc, B30 | RDPREDEC, B31 | B20 | IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, DISP2DST, E}}, {{PREFIX_017_D2D, 0x6, 0x8, B30 | DSTDISPREG, B31 | B20 | IGNORE, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, DISP16DST, E}}, {{PREFIX_0174, 0x6, 0xe, B30 | DSTDISPREG, B31 | B20 | IGNORE, DSTDISP16LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, DISP32DST, E}}, {{PREFIX_78R4WD, 0x6, 0xa, 2, B31 | B20 | IGNORE, DSTDISP32LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXB16D, E}}, {{PREFIX_0175, 0x6, 0xe, B30 | DSTDISPREG, B31 | B20 | IGNORE, DSTDISP16LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXW16D, E}}, {{PREFIX_0176, 0x6, 0xe, B30 | DSTDISPREG, B31 | B20 | IGNORE, DSTDISP16LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXL16D, E}}, {{PREFIX_0177, 0x6, 0xe, B30 | DSTDISPREG, B31 | B20 | IGNORE, DSTDISP16LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXB32D, E}}, {{PREFIX_78R5WD, 0x6, 0xa, 2, B31 | B20 | IGNORE, DSTDISP32LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXW32D, E}}, {{PREFIX_78R6WD, 0x6, 0xa, 2, B31 | B20 | IGNORE, DSTDISP32LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, INDEXL32D, E}}, {{PREFIX_78R7WD, 0x6, 0xa, 2, B31 | B20 | IGNORE, DSTDISP32LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, ABS8DST, E}}, {{0x7, 0xf, DSTABS8LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, ABS16DST, E}}, {{0x6, 0xa, 0x1, B31 | B20 | IGNORE, DSTABS16LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{IMM8, ABS32DST, E}}, {{0x6, 0xa, 0x3, B31 | B20 | IGNORE, DSTABS32LIST, OP1, BIT | IGNORE, IMM8LIST, E}}}, \
+ {CODE, AV_H8, 2, NAME, {{RS8, RD8, E}}, {{OP2, OP3, RS8, RD8, E}}}, \
+ EXPAND_FROM_REG8 (CODE, NAME, OP2, OP3, OP4), \
+ EXPAND_TO_REG8 (CODE, NAME, OP2, OP3, OP4), \
+ EXPAND_FROM_IND8 (CODE, NAME, OP4), \
+ EXPAND_STD_MATRIX_B (CODE, NAME, OP4), \
+ EXPAND_FROM_ABS16_B (CODE, NAME, OP4), \
+ EXPAND_FROM_ABS32_B (CODE, NAME, OP4)
+
+#define EXPAND_TWOOP_W(CODE, NAME, OP1, OP2, OP3) \
+ {CODE, AV_H8H, 6, NAME, {{IMM16, RD16, E}}, {{0x7, 0x9, OP3, RD16, IMM16LIST, E}}}, \
+ EXPAND_FROM_IMM16_W (CODE, NAME, OP3), \
+ EXPAND_FROM_REG16 (CODE, NAME, OP1, OP2, OP3), \
+ EXPAND_TO_REG16 (CODE, NAME, OP1, OP2, OP3), \
+ EXPAND_FROM_IND16 (CODE, NAME, OP3), \
+ EXPAND_STD_MATRIX_W (CODE, NAME, OP3), \
+ EXPAND_FROM_ABS16_W (CODE, NAME, OP3), \
+ EXPAND_FROM_ABS32_W (CODE, NAME, OP3)
+
+#define EXPAND_TWOOP_L(CODE, NAME, OP1) \
+ {CODE, AV_H8SX, 0, NAME, {{IMM16U_NS, RD32, E}}, {{0x7, 0xa, OP1, B31 | RD32, IMM16ULIST, E}}}, \
+ {CODE, AV_H8H, 6, NAME, {{IMM32, RD32, E}}, {{0x7, 0xa, OP1, B30 | RD32, IMM32LIST, E}}}, \
+ EXPAND_FROM_IMM16_L (CODE, NAME, OP1), \
+ EXPAND_FROM_IMM32_L (CODE, NAME, OP1), \
+ EXPAND_FROM_REG32 (CODE, NAME, OP1), \
+ EXPAND_TO_REG32 (CODE, NAME, OP1), \
+ EXPAND_STD_MATRIX_L (CODE, NAME, OP1)
+
+
+/* Old expanders: */
+
+#define BITOP(code, imm, name, op00, op01, op10, op11, op20, op21, op30, op4) \
+ {code, AV_H8, 2, name, {{imm, RD8, E}}, {{op00, op01, imm, RD8, E}}}, \
+ {code, AV_H8, 6, name, {{imm, RDIND, E}}, {{op10, op11, B30 | RDIND, 0, op00, op01, imm, 0, E}}}, \
+ {code, AV_H8, 6, name, {{imm, ABS8DST, E}}, {{op20, op21, DSTABS8LIST, op00, op01, imm, 0, E}}}, \
+ {code, AV_H8S, 6, name, {{imm, ABS16DST, E}}, {{0x6, 0xa, 0x1, op30, DST | MEMRELAX | ABS16LIST , op00, op01, imm, op4, E}}}, \
+ {code, AV_H8S, 6, name, {{imm, ABS32DST, E}}, {{0x6, 0xa, 0x3, op30, DST | MEMRELAX | ABS32LIST , op00, op01, imm, op4, E}}}
+
+#define BITOP_B(code, imm, name, op00, op01, op10, op11, op20, op21, op30, op4) \
+ {code, AV_H8SX, 0, name, {{imm, RDIND, E}}, {{op10, op11, B30 | RDIND, 0, op00, op01, imm, op4, E}}}, \
+ {code, AV_H8SX, 0, name, {{imm, ABS8DST, E}}, {{op20, op21, DSTABS8LIST, op00, op01, imm, op4, E}}}, \
+ {code, AV_H8SX, 0, name, {{imm, ABS16DST, E}}, {{0x6, 0xa, 0x1, op30, DST | ABS16LIST, op00, op01, imm, op4, E}}}, \
+ {code, AV_H8SX, 0, name, {{imm, ABS32DST, E}}, {{0x6, 0xa, 0x3, op30, DST | ABS32LIST, op00, op01, imm, op4, E}}}
+
+#define EBITOP(code, imm, name, op00, op01, op10, op11, op20, op21, op30, op4) \
+ BITOP(code, imm, name, op00+1, op01, op10, op11, op20, op21, op30, op4), \
+ BITOP(code, RS8, name, op00, op01, op10, op11, op20, op21, op30, op4)
+
+#define EBITOP_B(code, imm, name, op00, op01, op10, op11, op20, op21, op30, op4) \
+ BITOP_B(code, imm, name, op00+1, op01, op10, op11, op20, op21, op30, op4), \
+ BITOP_B(code, RS8, name, op00, op01, op10, op11, op20, op21, op30, op4)
+
+#define WTWOP(code, name, op1, op2) \
+ {code, AV_H8, 2, name, {{RS16, RD16, E}}, {{op1, op2, RS16, RD16, E}}}
+
+#define BRANCH(code, name, op) \
+ {code, AV_H8H, 6, name, {{PCREL16, E}}, {{0x5, 0x8, op, 0x0, PCREL16, DATA3 | B00, E}}}, \
+ {code, AV_H8, 4, name, {{PCREL8, E}}, {{0x4, op, PCREL8, DATA | B00, E}}}
+
+
+#define UNOP(code, name, op1, op2) \
+ {code, AV_H8, 2, name, {{OR8, E}}, {{op1, op2, 0, OR8, E}}}
+
+#define EXPAND_UNOP_STD_B(CODE, NAME, PREFIX, OP1, OP2, OP3) \
+ {CODE, AV_H8, 2, NAME, {{OR8, E}}, {{ OP1, OP2, OP3, OR8, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, E}}, {{ 7, 13, B30 | RSIND, IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTINC, E}}, {{PREFIX, 4, 6, 12, B30 | RSPOSTINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTDEC, E}}, {{PREFIX, 6, 6, 12, B30 | RSPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREINC, E}}, {{PREFIX, 5, 6, 12, B30 | RSPREINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREDEC, E}}, {{PREFIX, 7, 6, 12, B30 | RSPREDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP2SRC, E}}, {{PREFIX, B30 | B21 | DISP2SRC, 6, 8, B30 | DISPREG, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP16SRC, E}}, {{PREFIX, 4, 6, 14, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP32SRC, E}}, {{7, 8, B30 | DISPREG, 4, 6, 10, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB16, E}}, {{PREFIX, 5, 6, 14, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW16, E}}, {{PREFIX, 6, 6, 14, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL16, E}}, {{PREFIX, 7, 6, 14, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB32, E}}, {{7, 8, B30 | DISPREG, 5, 6, 10, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW32, E}}, {{7, 8, B30 | DISPREG, 6, 6, 10, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL32, E}}, {{7, 8, B30 | DISPREG, 7, 6, 10, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS8SRC, E}}, {{ 7, 15, ABS8LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, E}}, {{ 6, 10, 1, B31 | IGNORE, ABS16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, E}}, {{ 6, 10, 3, B31 | IGNORE, ABS32LIST, OP1, OP2, OP3, IGNORE, E}}}
+
+#define EXPAND_UNOP_STD_W(CODE, NAME, PREFIX, OP1, OP2, OP3) \
+ {CODE, AV_H8H, 2, NAME, {{OR16, E}}, {{ OP1, OP2, OP3, OR16, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, E}}, {{ 7, 13, B31 | RSIND, IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTINC, E}}, {{PREFIX, 4, 6, 13, B30 | RSPOSTINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTDEC, E}}, {{PREFIX, 6, 6, 13, B30 | RSPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREINC, E}}, {{PREFIX, 5, 6, 13, B30 | RSPREINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREDEC, E}}, {{PREFIX, 7, 6, 13, B30 | RSPREDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP2SRC, E}}, {{PREFIX, B30 | B21 | DISP2SRC, 6, 9, B30 | DISPREG, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP16SRC, E}}, {{PREFIX, 4, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP32SRC, E}}, {{7, 8, B30 | DISPREG, 4, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB16, E}}, {{PREFIX, 5, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW16, E}}, {{PREFIX, 6, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL16, E}}, {{PREFIX, 7, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB32, E}}, {{7, 8, B30 | DISPREG, 5, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW32, E}}, {{7, 8, B30 | DISPREG, 6, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL32, E}}, {{7, 8, B30 | DISPREG, 7, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, E}}, {{ 6, 11, 1, B31 | IGNORE, ABS16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, E}}, {{ 6, 11, 3, B31 | IGNORE, ABS32LIST, OP1, OP2, OP3, IGNORE, E}}}
+
+#define EXPAND_UNOP_STD_L(CODE, NAME, PREFIX, OP1, OP2, OP3) \
+ {CODE, AV_H8H, 2, NAME, {{OR32, E}}, {{ OP1, OP2, OP3, B30 | OR32, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSIND, E}}, {{PREFIX, 4, 6, 9, B30 | RSIND, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTINC, E}}, {{PREFIX, 4, 6, 13, B30 | RSPOSTINC, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPOSTDEC, E}}, {{PREFIX, 6, 6, 13, B30 | RSPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREINC, E}}, {{PREFIX, 5, 6, 13, B30 | RSPREINC, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{RSPREDEC, E}}, {{PREFIX, 7, 6, 13, B30 | RSPREDEC, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP2SRC, E}}, {{PREFIX, B30 | B21 | DISP2SRC, 6, 9, B30 | DISPREG, B31 | IGNORE, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP16SRC, E}}, {{PREFIX, 4, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{DISP32SRC, E}}, {{7, 8, B31 | DISPREG, 4, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB16, E}}, {{PREFIX, 5, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW16, E}}, {{PREFIX, 6, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL16, E}}, {{PREFIX, 7, 6, 15, B30 | DISPREG, B31 | IGNORE, DISP16LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXB32, E}}, {{7, 8, B31 | DISPREG, 5, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXW32, E}}, {{7, 8, B31 | DISPREG, 6, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{INDEXL32, E}}, {{7, 8, B31 | DISPREG, 7, 6, 11, 2, B31 | IGNORE, DISP32LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS16SRC, E}}, {{PREFIX, 4, 6, 11, 0, B31 | IGNORE, ABS16LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{ABS32SRC, E}}, {{PREFIX, 4, 6, 11, 2, B31 | IGNORE, ABS32LIST, OP1, OP2, OP3, B30 | IGNORE, E}}}
+
+#define EXPAND_UNOP_EXTENDED_B(CODE, NAME, CONST, PREFIX, OP1, OP2, OP3) \
+ {CODE, AV_H8, 2, NAME, {{CONST, RD8, E}}, {{ OP1, OP2, OP3, RD8, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDIND, E}}, {{ 7, 13, B30 | RDIND, IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTINC, E}}, {{PREFIX, 4, 6, 12, B30 | RDPOSTINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTDEC, E}}, {{PREFIX, 6, 6, 12, B30 | RDPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREINC, E}}, {{PREFIX, 5, 6, 12, B30 | RDPREINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREDEC, E}}, {{PREFIX, 7, 6, 12, B30 | RDPREDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP2DST, E}}, {{PREFIX, B30 | B21 | DISP2DST, 6, 8, B30 | DSTDISPREG, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP16DST, E}}, {{PREFIX, 4, 6, 14, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP32DST, E}}, {{7, 8, B30 | DSTDISPREG, 4, 6, 10, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB16D, E}}, {{PREFIX, 5, 6, 14, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW16D, E}}, {{PREFIX, 6, 6, 14, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL16D, E}}, {{PREFIX, 7, 6, 14, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB32D, E}}, {{7, 8, B30 | DSTDISPREG, 5, 6, 10, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW32D, E}}, {{7, 8, B30 | DSTDISPREG, 6, 6, 10, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL32D, E}}, {{7, 8, B30 | DSTDISPREG, 7, 6, 10, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS8DST, E}}, {{ 7, 15, DSTABS8LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS16DST, E}}, {{ 6, 10, 1, B31 | IGNORE, DSTABS16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS32DST, E}}, {{ 6, 10, 3, B31 | IGNORE, DSTABS32LIST, OP1, OP2, OP3, IGNORE, E}}}
+
+#define EXPAND_UNOP_EXTENDED_W(CODE, NAME, CONST, PREFIX, OP1, OP2, OP3) \
+ {CODE, AV_H8, 2, NAME, {{CONST, RD16, E}}, {{ OP1, OP2, OP3, RD16, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDIND, E}}, {{ 7, 13, B31 | RDIND, IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTINC, E}}, {{PREFIX, 4, 6, 13, B30 | RDPOSTINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTDEC, E}}, {{PREFIX, 6, 6, 13, B30 | RDPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREINC, E}}, {{PREFIX, 5, 6, 13, B30 | RDPREINC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREDEC, E}}, {{PREFIX, 7, 6, 13, B30 | RDPREDEC, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP2DST, E}}, {{PREFIX, B30 | B21 | DISP2DST, 6, 9, B30 | DSTDISPREG, B31 | IGNORE, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP16DST, E}}, {{PREFIX, 4, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP32DST, E}}, {{7, 8, B30 | DSTDISPREG, 4, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB16D, E}}, {{PREFIX, 5, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW16D, E}}, {{PREFIX, 6, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL16D, E}}, {{PREFIX, 7, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB32D, E}}, {{7, 8, B30 | DSTDISPREG, 5, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW32D, E}}, {{7, 8, B30 | DSTDISPREG, 6, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL32D, E}}, {{7, 8, B30 | DSTDISPREG, 7, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS16DST, E}}, {{ 6, 11, 1, B31 | IGNORE, DSTABS16LIST, OP1, OP2, OP3, IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS32DST, E}}, {{ 6, 11, 3, B31 | IGNORE, DSTABS32LIST, OP1, OP2, OP3, IGNORE, E}}}
+
+#define EXPAND_UNOP_EXTENDED_L(CODE, NAME, CONST, PREFIX, OP1, OP2, OP3, BIT) \
+ {CODE, AV_H8, 2, NAME, {{CONST, RD32, E}}, {{ OP1, OP2, OP3, BIT | RD32, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDIND, E}}, {{PREFIX, 4, 6, 9, B30 | RDIND, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTINC, E}}, {{PREFIX, 4, 6, 13, B30 | RDPOSTINC, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPOSTDEC, E}}, {{PREFIX, 6, 6, 13, B30 | RDPOSTDEC, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREINC, E}}, {{PREFIX, 5, 6, 13, B30 | RDPREINC, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, RDPREDEC, E}}, {{PREFIX, 7, 6, 13, B30 | RDPREDEC, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP2DST, E}}, {{PREFIX, B30 | B21 | DISP2DST, 6, 9, B30 | DSTDISPREG, B31 | IGNORE, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP16DST, E}}, {{PREFIX, 4, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, DISP32DST, E}}, {{7, 8, B31 | DSTDISPREG, 4, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB16D, E}}, {{PREFIX, 5, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW16D, E}}, {{PREFIX, 6, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL16D, E}}, {{PREFIX, 7, 6, 15, B30 | DSTDISPREG, B31 | IGNORE, DSTDISP16LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXB32D, E}}, {{7, 8, B31 | DSTDISPREG, 5, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXW32D, E}}, {{7, 8, B31 | DSTDISPREG, 6, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, INDEXL32D, E}}, {{7, 8, B31 | DSTDISPREG, 7, 6, 11, 2, B31 | IGNORE, DSTDISP32LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS16DST, E}}, {{PREFIX, 4, 6, 11, 0, B31 | IGNORE, DSTABS16LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}, \
+ {CODE, AV_H8SX, 0, NAME, {{CONST, ABS32DST, E}}, {{PREFIX, 4, 6, 11, 2, B31 | IGNORE, DSTABS32LIST, OP1, OP2, OP3, BIT | IGNORE, E}}}
+
+#define PREFIXLDC 0x0, 0x1, 0x4, B30 | CCR_EXR | DST
+#define PREFIXSTC 0x0, 0x1, 0x4, B30 | CCR_EXR | SRC
+
+#define O(op, size) (op * 4 + size)
+#define OP_SIZE(HOW) (HOW % 4)
+#define OP_KIND(HOW) (HOW / 4)
+
+enum h8_asm_codes
+{
+ O_RECOMPILE = 0,
+ O_ADD,
+ O_ADDX,
+ O_AND,
+ O_BAND,
+ O_BRA,
+ O_BRAB,
+ O_BRAW,
+ O_BRAL,
+ O_BRAS,
+ O_BRABC,
+ O_BRABS,
+ O_BSRBC,
+ O_BSRBS,
+ O_BRN,
+ O_BHI,
+ O_BLS,
+ O_BCC,
+ O_BCS,
+ O_BNE,
+ O_BVC,
+ O_BVS,
+ O_BPL,
+ O_BMI,
+ O_BGE,
+ O_BLT,
+ O_BGT,
+ O_BLE,
+ O_ANDC,
+ O_BEQ,
+ O_BCLR,
+ O_BCLREQ,
+ O_BCLRNE,
+ O_BSETEQ,
+ O_BSETNE,
+ O_BFLD,
+ O_BFST,
+ O_BIAND,
+ O_BILD,
+ O_BIOR,
+ O_BIXOR,
+ O_BIST,
+ O_BISTZ,
+ O_BLD,
+ O_BNOT,
+ O_BOR,
+ O_BSET,
+ O_BSR,
+ O_BXOR,
+ O_CMP,
+ O_DAA,
+ O_DAS,
+ O_DEC,
+ O_DIVU,
+ O_DIVS,
+ O_DIVXU,
+ O_DIVXS,
+ O_INC,
+ O_LDC,
+ O_MOV,
+ O_MOVAB,
+ O_MOVAW,
+ O_MOVAL,
+ O_MOVMD,
+ O_MOVSD,
+ O_OR,
+ O_ROTL,
+ O_ROTR,
+ O_ROTXL,
+ O_ROTXR,
+ O_BPT,
+ O_SHAL,
+ O_SHAR,
+ O_SHLL,
+ O_SHLR,
+ O_SUB,
+ O_SUBS,
+ O_TRAPA,
+ O_XOR,
+ O_XORC,
+ O_BST,
+ O_BSTZ,
+ O_BTST,
+ O_EEPMOV,
+ O_EXTS,
+ O_EXTU,
+ O_JMP,
+ O_JSR,
+ O_MULU,
+ O_MULUU,
+ O_MULS,
+ O_MULSU,
+ O_MULXU,
+ O_MULXS,
+ O_NOP,
+ O_NOT,
+ O_ORC,
+ O_RTE,
+ O_RTEL,
+ O_STC,
+ O_SUBX,
+ O_NEG,
+ O_RTS,
+ O_RTSL,
+ O_SLEEP,
+ O_ILL,
+ O_ADDS,
+ O_SYSCALL,
+ O_TAS,
+ O_CLRMAC,
+ O_LDMAC,
+ O_MAC,
+ O_LDM,
+ O_STM,
+ O_STMAC,
+ O_LAST,
+ /* Change made for System Call processing. */
+ O_SYS_CREAT,
+ O_SYS_OPEN,
+ O_SYS_READ,
+ O_SYS_WRITE,
+ O_SYS_LSEEK,
+ O_SYS_CLOSE,
+ O_SYS_STAT,
+ O_SYS_FSTAT,
+/* Space reserved for future file I/O system calls. */
+ O_SYS_CMDLINE
+ /* End of System Call specific Changes. */
+};
+
+enum h8_size
+{
+ SB = 0,
+ SW = 1,
+ SL = 2,
+ SN = 3
+};
+
+
+/* FIXME: Lots of insns have "E, 0, 0, 0, 0" in the nibble code sequences.
+ Methinks the zeroes aren't necessary. Once confirmed, nuke 'em. */
+
+struct h8_opcode h8_opcodes[] =
+{
+ {O (O_ADD, SB), AV_H8, 2, "add.b", {{IMM8, RD8, E}}, {{0x8, RD8, IMM8LIST, E}}},
+ EXPAND_TWOOP_B (O (O_ADD, SB), "add.b", 0x8, 0x0, 0x8, 0x1, 0),
+
+ {O (O_ADD, SW), AV_H8, 6, "add.w", {{RS16, RD16, E}}, {{0x0, 0x9, RS16, RD16, E}}},
+ {O (O_ADD, SW), AV_H8SX, 0, "add.w", {{IMM3NZ_NS, RD16, E}}, {{0x0, 0xa, B30 | IMM3NZ, RD16, E}}},
+ {O (O_ADD, SW), AV_H8SX, 0, "add.w", {{IMM3NZ_NS, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, IGNORE, 0x0, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_ADD, SW), AV_H8SX, 0, "add.w", {{IMM3NZ_NS, ABS16DST, E}}, {{0x6, 0xb, 0x1, B31 | IGNORE, DSTABS16LIST, 0x0, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_ADD, SW), AV_H8SX, 0, "add.w", {{IMM3NZ_NS, ABS32DST, E}}, {{0x6, 0xb, 0x3, B31 | IGNORE, DSTABS32LIST, 0x0, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ EXPAND_TWOOP_W (O (O_ADD, SW), "add.w", 0x0, 0x9, 0x1),
+
+ {O (O_ADD, SL), AV_H8H, 6, "add.l", {{RS32, RD32, E}}, {{0x0, 0xa, B31 | RS32, B30 | RD32, E}}},
+ {O (O_ADD, SL), AV_H8SX, 0, "add.l", {{IMM3NZ_NS, RD32, E}}, {{0x0, 0xa, B31 | IMM3NZ, B31 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_ADD, SL), "add.l", 0x1),
+
+ {O (O_ADDS, SL), AV_H8, 2, "adds", {{KBIT, RDP, E}}, {{0x0, 0xB,KBIT, RDP, E}}},
+
+ {O (O_ADDX, SB), AV_H8, 2, "addx", {{IMM8, RD8, E}}, {{0x9, RD8, IMM8LIST, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{IMM8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, 0x9, IGNORE, IMM8LIST, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{IMM8, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RDPOSTDEC, B31 | IGNORE, 0x9, IGNORE, IMM8LIST, E}}},
+ {O (O_ADDX, SB), AV_H8, 2, "addx", {{RS8, RD8, E}}, {{0x0, 0xe, RS8, RD8, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RS8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, 0x0, 0xe, RS8, IGNORE, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RS8, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RDPOSTDEC, B31 | IGNORE, 0x0, 0xe, RS8, IGNORE, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RSIND, RD8, E}}, {{0x7, 0xc, B30 | RSIND, IGNORE, 0x0, 0xe, IGNORE, RD8, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RSPOSTDEC, RD8, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RSPOSTDEC, B30 | B20 | IGNORE, 0x0, 0xe, IGNORE, RD8, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RSIND, RDIND, E}}, {{PREFIX_0174, 0x6, 0x8, B30 | RSIND, 0xd, 0x0, RDIND, 0x1, IGNORE, E}}},
+ {O (O_ADDX, SB), AV_H8SX, 0, "addx.b", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x1, IGNORE, E}}},
+
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{IMM16, RD16, E}}, {{PREFIX_0151, 0x7, 0x9, 0x1, RD16, IMM16LIST, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{IMM16, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, B01 | IGNORE, 0x7, 0x9, 0x1, IGNORE, IMM16LIST, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{IMM16, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x7, 0x9, 0x1, IGNORE, IMM16LIST, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RS16, RD16, E}}, {{PREFIX_0151, 0x0, 0x9, RS16, RD16, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RS16, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, B01 | IGNORE, 0x0, 0x9, RS16, IGNORE, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RS16, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x0, 0x9, RS16, IGNORE, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RSIND, RD16, E}}, {{0x7, 0xc, B31 | RSIND, B01 | IGNORE, 0x0, 0x9, IGNORE, RD16, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RSPOSTDEC, RD16, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RSPOSTDEC, B30 | B20 | B01 | IGNORE, 0x0, 0x9, IGNORE, RD16, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RSIND, RDIND, E}}, {{PREFIX_0154, 0x6, 0x9, B30 | RSIND, 0xd, 0x0, RDIND, 0x1, IGNORE, E}}},
+ {O (O_ADDX, SW), AV_H8SX, 0, "addx.w", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x1, IGNORE, E}}},
+
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{IMM32, RD32, E}}, {{PREFIX_0101, 0x7, 0xa, 0x1, RD32, IMM32LIST, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{IMM32, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RDIND, B31 | B20 | B01 | IGNORE, 0x7, 0xa, 0x1, IGNORE, IMM32LIST, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{IMM32, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x7, 0xa, 0x1, IGNORE, IMM32LIST, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RS32, RD32, E}}, {{PREFIX_0101, 0x0, 0xa, B31 | RS32, B30 | RD32, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RS32, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RDIND, B31 | B20 | B01 | IGNORE, 0x0, 0xa, B31 | RS32, B30 | IGNORE, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RS32, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x0, 0xa, B31 | RS32, B30 | IGNORE, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RSIND, RD32, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RSIND, B30 | B20 | B01 | IGNORE, 0x0, 0xa, B31 | IGNORE, B30 | RD32, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RSPOSTDEC, RD32, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RSPOSTDEC, B30 | B20 | B01 | IGNORE, 0x0, 0xa, B31 | IGNORE, B30 | RD32, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RSIND, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RSIND, 0xd, 0x0, RDIND, 0x1, IGNORE, E}}},
+ {O (O_ADDX, SL), AV_H8SX, 0, "addx.l", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x1, IGNORE, E}}},
+
+ {O (O_AND, SB), AV_H8, 2, "and.b", {{IMM8, RD8, E}}, {{0xe, RD8, IMM8LIST, E}}},
+ EXPAND_TWOOP_B (O (O_AND, SB), "and.b", 0xe, 0x1, 0x6, 0x6, 0),
+
+ {O (O_AND, SW), AV_H8, 2, "and.w", {{RS16, RD16, E}}, {{0x6, 0x6, RS16, RD16, E}}},
+ EXPAND_TWOOP_W (O (O_AND, SW), "and.w", 0x6, 0x6, 0x6),
+
+ {O (O_AND, SL), AV_H8H, 2, "and.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xF, 0x0, 0x6, 0x6, B30 | RS32, B30 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_AND, SL), "and.l", 0x6),
+
+ {O (O_ANDC, SB), AV_H8, 2, "andc", {{IMM8, CCR | DST, E}}, {{0x0, 0x6, IMM8LIST, E}}},
+ {O (O_ANDC, SB), AV_H8S, 2, "andc", {{IMM8, EXR | DST, E}}, {{0x0, 0x1, 0x4, EXR | DST, 0x0, 0x6, IMM8LIST, E}}},
+
+ BRANCH (O (O_BRA, SB), "bra", 0x0),
+
+ {O (O_BRAB, SB), AV_H8SX, 0, "bra", {{LOWREG | L_8, E}}, {{0x5, 0x9, LOWREG | L_8 | B30, 0x5, E}}},
+ {O (O_BRAW, SW), AV_H8SX, 0, "bra", {{LOWREG | L_16, E}}, {{0x5, 0x9, LOWREG | L_16 | B30, 0x6, E}}},
+ {O (O_BRAL, SL), AV_H8SX, 0, "bra", {{RS32, E}}, {{0x5, 0x9, RS32 | B30, 0x7, E}}},
+
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, RDIND, OP3PCREL8}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x4, B30 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS8DST, OP3PCREL8}}, {{0x7, 0xE, DSTABS8LIST, 0x4, B30 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS16DST, OP3PCREL8}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x4, B30 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS32DST, OP3PCREL8}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x4, B30 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, RDIND, OP3PCREL8}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x4, B31 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS8DST, OP3PCREL8}}, {{0x7, 0xE, DSTABS8LIST, 0x4, B31 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS16DST, OP3PCREL8}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x4, B31 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS32DST, OP3PCREL8}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x4, B31 | IMM3, OP3PCREL8, DATA, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, RDIND, OP3PCREL16}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x5, 0x8, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS8DST, OP3PCREL16}}, {{0x7, 0xE, DSTABS8LIST, 0x5, 0x8, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS16DST, OP3PCREL16}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x5, 0x8, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABC, SB), AV_H8SX, 0, "bra/bc", {{IMM3, ABS32DST, OP3PCREL16}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x5, 0x8, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, RDIND, OP3PCREL16}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x5, 0x8, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS8DST, OP3PCREL16}}, {{0x7, 0xE, DSTABS8LIST, 0x5, 0x8, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS16DST, OP3PCREL16}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x5, 0x8, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BRABS, SB), AV_H8SX, 0, "bra/bs", {{IMM3, ABS32DST, OP3PCREL16}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x5, 0x8, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+
+ {O (O_BRAS, SB), AV_H8SX, 0, "bra/s", {{PCREL8, E}}, {{0x4, 0x0, PCREL8, DATA | B01, E}}},
+
+ {O (O_BSRBC, SB), AV_H8SX, 0, "bsr/bc", {{IMM3, RDIND, OP3PCREL16}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x5, 0xC, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBC, SB), AV_H8SX, 0, "bsr/bc", {{IMM3, ABS8DST, OP3PCREL16}}, {{0x7, 0xE, DSTABS8LIST, 0x5, 0xC, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBC, SB), AV_H8SX, 0, "bsr/bc", {{IMM3, ABS16DST, OP3PCREL16}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x5, 0xC, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBC, SB), AV_H8SX, 0, "bsr/bc", {{IMM3, ABS32DST, OP3PCREL16}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x5, 0xC, B30 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBS, SB), AV_H8SX, 0, "bsr/bs", {{IMM3, RDIND, OP3PCREL16}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0x5, 0xC, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBS, SB), AV_H8SX, 0, "bsr/bs", {{IMM3, ABS8DST, OP3PCREL16}}, {{0x7, 0xE, DSTABS8LIST, 0x5, 0xC, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBS, SB), AV_H8SX, 0, "bsr/bs", {{IMM3, ABS16DST, OP3PCREL16}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0x5, 0xC, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+ {O (O_BSRBS, SB), AV_H8SX, 0, "bsr/bs", {{IMM3, ABS32DST, OP3PCREL16}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0x5, 0xC, B31 | IMM3, 0x0, OP3PCREL16, DATA3, E}}},
+
+ BRANCH (O (O_BRA, SB), "bt", 0x0),
+ BRANCH (O (O_BRN, SB), "brn", 0x1),
+ BRANCH (O (O_BRN, SB), "bf", 0x1),
+ BRANCH (O (O_BHI, SB), "bhi", 0x2),
+ BRANCH (O (O_BLS, SB), "bls", 0x3),
+ BRANCH (O (O_BCC, SB), "bcc", 0x4),
+ BRANCH (O (O_BCC, SB), "bhs", 0x4),
+ BRANCH (O (O_BCS, SB), "bcs", 0x5),
+ BRANCH (O (O_BCS, SB), "blo", 0x5),
+ BRANCH (O (O_BNE, SB), "bne", 0x6),
+ BRANCH (O (O_BEQ, SB), "beq", 0x7),
+ BRANCH (O (O_BVC, SB), "bvc", 0x8),
+ BRANCH (O (O_BVS, SB), "bvs", 0x9),
+ BRANCH (O (O_BPL, SB), "bpl", 0xA),
+ BRANCH (O (O_BMI, SB), "bmi", 0xB),
+ BRANCH (O (O_BGE, SB), "bge", 0xC),
+ BRANCH (O (O_BLT, SB), "blt", 0xD),
+ BRANCH (O (O_BGT, SB), "bgt", 0xE),
+ BRANCH (O (O_BLE, SB), "ble", 0xF),
+
+ EBITOP (O (O_BCLR, SB), IMM3 | B30, "bclr", 0x6, 0x2, 0x7, 0xD, 0x7, 0xF, 0x8, 0),
+ BITOP (O (O_BAND, SB), IMM3 | B30, "band", 0x7, 0x6, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BIAND, SB), IMM3 | B31, "biand", 0x7, 0x6, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BILD, SB), IMM3 | B31, "bild", 0x7, 0x7, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BIOR, SB), IMM3 | B31, "bior", 0x7, 0x4, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BIST, SB), IMM3 | B31, "bist", 0x6, 0x7, 0x7, 0xD, 0x7, 0xF, 0x8, 0),
+ BITOP (O (O_BIXOR, SB), IMM3 | B31, "bixor", 0x7, 0x5, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BLD, SB), IMM3 | B30, "bld", 0x7, 0x7, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ EBITOP (O (O_BNOT, SB), IMM3 | B30, "bnot", 0x6, 0x1, 0x7, 0xD, 0x7, 0xF, 0x8, 0),
+ BITOP (O (O_BOR, SB), IMM3 | B30, "bor", 0x7, 0x4, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ EBITOP (O (O_BSET, SB), IMM3 | B30, "bset", 0x6, 0x0, 0x7, 0xD, 0x7, 0xF, 0x8, 0),
+ BITOP (O (O_BST, SB), IMM3 | B30, "bst", 0x6, 0x7, 0x7, 0xD, 0x7, 0xF, 0x8, 0),
+ EBITOP (O (O_BTST, SB), IMM3 | B30, "btst", 0x6, 0x3, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+ BITOP (O (O_BXOR, SB), IMM3 | B30, "bxor", 0x7, 0x5, 0x7, 0xC, 0x7, 0xE, 0x0, 0),
+
+ EBITOP_B (O (O_BCLREQ, SB), IMM3 | B30, "bclr/eq", 0x6, 0x2, 0x7, 0xD, 0x7, 0xF, 0x8, 0x7),
+ EBITOP_B (O (O_BCLRNE, SB), IMM3 | B30, "bclr/ne", 0x6, 0x2, 0x7, 0xD, 0x7, 0xF, 0x8, 0x6),
+ EBITOP_B (O (O_BSETEQ, SB), IMM3 | B30, "bset/eq", 0x6, 0x0, 0x7, 0xD, 0x7, 0xF, 0x8, 0x7),
+ EBITOP_B (O (O_BSETNE, SB), IMM3 | B30, "bset/ne", 0x6, 0x0, 0x7, 0xD, 0x7, 0xF, 0x8, 0x6),
+ BITOP_B (O (O_BISTZ, SB), IMM3 | B31, "bistz", 0x6, 0x7, 0x7, 0xD, 0x7, 0xF, 0x8, 0x7),
+ BITOP_B (O (O_BSTZ, SB), IMM3 | B30, "bstz", 0x6, 0x7, 0x7, 0xD, 0x7, 0xF, 0x8, 0x7),
+
+ {O (O_BFLD, SB), AV_H8SX, 0, "bfld", {{IMM8, RDIND, R3_8}}, {{0x7, 0xC, B30 | RDIND, 0x0, 0xF, R3_8, IMM8LIST, E}}},
+ {O (O_BFLD, SB), AV_H8SX, 0, "bfld", {{IMM8, ABS8DST, R3_8}}, {{0x7, 0xE, DSTABS8LIST, 0xF, R3_8, IMM8LIST, E}}},
+ {O (O_BFLD, SB), AV_H8SX, 0, "bfld", {{IMM8, ABS16DST, R3_8}}, {{0x6, 0xA, 0x1, 0x0, DSTABS16LIST, 0xF, R3_8, IMM8LIST, E}}},
+ {O (O_BFLD, SB), AV_H8SX, 0, "bfld", {{IMM8, ABS32DST, R3_8}}, {{0x6, 0xA, 0x3, 0x0, DSTABS32LIST, 0xF, R3_8, IMM8LIST, E}}},
+
+ /* Because the assembler treats SRC, DST and OP3 as ordinals,
+ I must designate the second argument, an immediate value, as DST.
+ May God have mercy on my soul. */
+ {O (O_BFST, SB), AV_H8SX, 0, "bfst", {{RS8, DST | IMM8, R3_IND}}, {{0x7, 0xD, B30 | R3_IND, 0x0, 0xF, RS8, DST | IMM8LIST, E}}},
+ {O (O_BFST, SB), AV_H8SX, 0, "bfst", {{RS8, DST | IMM8, ABS8OP3}}, {{0x7, 0xF, OP3ABS8LIST, 0xF, RS8, DST | IMM8LIST, E}}},
+ {O (O_BFST, SB), AV_H8SX, 0, "bfst", {{RS8, DST | IMM8, ABS16OP3}}, {{0x6, 0xA, 0x1, 0x8, OP3ABS16LIST, 0xF, RS8, DST | IMM8LIST, E}}},
+ {O (O_BFST, SB), AV_H8SX, 0, "bfst", {{RS8, DST | IMM8, ABS32OP3}}, {{0x6, 0xA, 0x3, 0x8, OP3ABS32LIST, 0xF, RS8, DST | IMM8LIST, E}}},
+
+ {O (O_BSR, SB), AV_H8, 6, "bsr", {{PCREL8, E}}, {{0x5, 0x5, PCREL8, DATA, E}}},
+ {O (O_BSR, SB), AV_H8, 6, "bsr", {{PCREL16, E}}, {{0x5, 0xC, 0x0, 0x0, PCREL16, DATA3, E}}},
+ {O (O_BSR, SB), AV_H8SX, 0, "bsr", {{LOWREG | L_8, E}}, {{0x5, 0xd, B30 | LOWREG | L_8, 0x5, E}}},
+ {O (O_BSR, SW), AV_H8SX, 0, "bsr", {{LOWREG | L_16, E}}, {{0x5, 0xd, B30 | LOWREG | L_16, 0x6, E}}},
+ {O (O_BSR, SL), AV_H8SX, 0, "bsr", {{OR32, E}}, {{0x5, 0xd, B30 | OR32, 0x7, E}}},
+
+ {O (O_CMP, SB), AV_H8, 2, "cmp.b", {{IMM8, RD8, E}}, {{0xa, RD8, IMM8LIST, E}}},
+ EXPAND_TWOOP_B (O (O_CMP, SB), "cmp.b", 0xa, 0x1, 0xc, 0x2, B00),
+
+ {O (O_CMP, SW), AV_H8, 2, "cmp.w", {{RS16, RD16, E}}, {{0x1, 0xd, RS16, RD16, E}}},
+ {O (O_CMP, SW), AV_H8SX, 0, "cmp.w", {{IMM3NZ_NS, RD16, E}}, {{0x1, 0xf, B30 | IMM3NZ, RD16, E}}},
+ {O (O_CMP, SW), AV_H8SX, 0, "cmp.w", {{IMM3NZ_NS, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, IGNORE, 0x1, 0xf, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_CMP, SW), AV_H8SX, 0, "cmp.w", {{IMM3NZ_NS, ABS16DST, E}}, {{0x6, 0xb, 0x1, B31 | IGNORE, DSTABS16LIST, 0x1, 0xf, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_CMP, SW), AV_H8SX, 0, "cmp.w", {{IMM3NZ_NS, ABS32DST, E}}, {{0x6, 0xb, 0x3, B31 | IGNORE, DSTABS32LIST, 0x1, 0xf, B30 | IMM3NZ, IGNORE, E}}},
+ EXPAND_TWOOP_W (O (O_CMP, SW), "cmp.w", 0x1, 0xd, 0x2),
+
+ {O (O_CMP, SL), AV_H8H, 6, "cmp.l", {{RS32, RD32, E}}, {{0x1, 0xf, B31 | RS32, B30 | RD32, E}}},
+ {O (O_CMP, SL), AV_H8SX, 0, "cmp.l", {{IMM3NZ_NS, RD32, E}}, {{0x1, 0xf, B31 | IMM3NZ, B31 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_CMP, SL), "cmp.l", 0x2),
+
+ UNOP (O (O_DAA, SB), "daa", 0x0, 0xF),
+ UNOP (O (O_DAS, SB), "das", 0x1, 0xF),
+ UNOP (O (O_DEC, SB), "dec.b", 0x1, 0xA),
+
+ {O (O_DEC, SW), AV_H8H, 2, "dec.w", {{DBIT, RD16, E}}, {{0x1, 0xB, 0x5 | DBIT, RD16, E}}},
+ {O (O_DEC, SL), AV_H8H, 2, "dec.l", {{DBIT, RD32, E}}, {{0x1, 0xB, 0x7 | DBIT, RD32 | B30, E}}},
+
+ {O (O_DIVS, SW), AV_H8SX, 0, "divs.w", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xd, 0x6, 0x5, 0x1, IMM4, RD16, E}}},
+ {O (O_DIVS, SW), AV_H8SX, 0, "divs.w", {{RS16, RD16, E}}, {{0x0, 0x1, 0xd, 0x2, 0x5, 0x1, RS16, RD16, E}}},
+ {O (O_DIVS, SL), AV_H8SX, 0, "divs.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xd, 0x6, 0x5, 0x3, IMM4, B30 | RD32, E}}},
+ {O (O_DIVS, SL), AV_H8SX, 0, "divs.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xd, 0x2, 0x5, 0x3, B30 | RS32, B30 | RD32, E}}},
+
+ {O (O_DIVU, SW), AV_H8SX, 0, "divu.w", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xd, 0xe, 0x5, 0x1, IMM4, RD16, E}}},
+ {O (O_DIVU, SW), AV_H8SX, 0, "divu.w", {{RS16, RD16, E}}, {{0x0, 0x1, 0xd, 0xa, 0x5, 0x1, RS16, RD16, E}}},
+ {O (O_DIVU, SL), AV_H8SX, 0, "divu.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xd, 0xe, 0x5, 0x3, IMM4, B30 | RD32, E}}},
+ {O (O_DIVU, SL), AV_H8SX, 0, "divu.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xd, 0xa, 0x5, 0x3, B30 | RS32, B30 | RD32, E}}},
+
+ {O (O_DIVXS, SB), AV_H8SX, 0, "divxs.b", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xD, 0x4, 0x5, 0x1, IMM4, RD16, E}}},
+ {O (O_DIVXS, SB), AV_H8H, 13, "divxs.b", {{RS8, RD16, E}}, {{0x0, 0x1, 0xD, 0x0, 0x5, 0x1, RS8, RD16, E}}},
+ {O (O_DIVXS, SW), AV_H8SX, 0, "divxs.w", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xD, 0x4, 0x5, 0x3, IMM4, B30 | RD32, E}}},
+ {O (O_DIVXS, SW), AV_H8H, 21, "divxs.w", {{RS16, RD32, E}}, {{0x0, 0x1, 0xD, 0x0, 0x5, 0x3, RS16, B30 | RD32, E}}},
+
+ {O (O_DIVXU, SB), AV_H8SX, 0, "divxu.b", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xD, 0xC, 0x5, 0x1, IMM4, RD16, E}}},
+ {O (O_DIVXU, SB), AV_H8, 13, "divxu.b", {{RS8, RD16, E}}, {{0x5, 0x1, RS8, RD16, E}}},
+ {O (O_DIVXU, SW), AV_H8SX, 0, "divxu.w", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xD, 0xC, 0x5, 0x3, IMM4, B30 | RD32, E}}},
+ {O (O_DIVXU, SW), AV_H8H, 21, "divxu.w", {{RS16, RD32, E}}, {{0x5, 0x3, RS16, B30 | RD32, E}}},
+
+ {O (O_EEPMOV, SB), AV_H8, 4, "eepmov.b", {{E}}, {{0x7, 0xB, 0x5, 0xC, 0x5, 0x9, 0x8, 0xF, E}}},
+ {O (O_EEPMOV, SW), AV_H8H, 4, "eepmov.w", {{E}}, {{0x7, 0xB, 0xD, 0x4, 0x5, 0x9, 0x8, 0xF, E}}},
+
+ EXPAND_UNOP_STD_W (O (O_EXTS, SW), "exts.w", PREFIX_015, 0x1, 0x7, 0xd),
+ EXPAND_UNOP_STD_L (O (O_EXTS, SL), "exts.l", PREFIX_010, 0x1, 0x7, 0xf),
+ EXPAND_UNOP_EXTENDED_L (O (O_EXTS, SL), "exts.l", CONST_2, PREFIX_010, 0x1, 0x7, 0xe, 0),
+ EXPAND_UNOP_STD_W (O (O_EXTU, SW), "extu.w", PREFIX_015, 0x1, 0x7, 0x5),
+ EXPAND_UNOP_STD_L (O (O_EXTU, SL), "extu.l", PREFIX_010, 0x1, 0x7, 0x7),
+ EXPAND_UNOP_EXTENDED_L (O (O_EXTU, SL), "extu.l", CONST_2, PREFIX_010, 0x1, 0x7, 0x6, 0),
+
+ UNOP (O (O_INC, SB), "inc", 0x0, 0xA),
+
+ {O (O_INC, SW), AV_H8H, 2, "inc.w", {{DBIT, RD16, E}}, {{0x0, 0xB, 0x5 | DBIT, RD16, E}}},
+ {O (O_INC, SL), AV_H8H, 2, "inc.l", {{DBIT, RD32, E}}, {{0x0, 0xB, 0x7 | DBIT, RD32 | B30, E}}},
+
+ {O (O_JMP, SN), AV_H8, 4, "jmp", {{RSIND, E}}, {{0x5, 0x9, B30 | RSIND, 0x0, E}}},
+ {O (O_JMP, SN), AV_H8, 6, "jmp", {{ABSJMP | L_24, E}}, {{0x5, 0xA, SRC | ABSJMP | L_24, DATA5, E}}},
+
+ {O (O_JMP, SN), AV_H8SX, 0, "jmp", {{ABSJMP | L_32, E}}, {{0x5, 0x9, 0x0, 0x8, ABSJMP | L_32, DATA7, E}}},
+
+ {O (O_JMP, SN), AV_H8, 8, "jmp", {{MEMIND, E}}, {{0x5, 0xB, SRC | MEMIND, DATA, E}}},
+ {O (O_JMP, SN), AV_H8SX, 0, "jmp", {{VECIND, E}}, {{0x5, 0x9, B31 | SRC | VECIND, DATA, E}}},
+
+ {O (O_JSR, SN), AV_H8, 6, "jsr", {{RSIND, E}}, {{0x5, 0xD, B30 | RSIND, 0x0, E}}},
+ {O (O_JSR, SN), AV_H8, 8, "jsr", {{ABSJMP | L_24, E}}, {{0x5, 0xE, SRC | ABSJMP | L_24, DATA5, E}}},
+
+ {O (O_JSR, SN), AV_H8SX, 0, "jsr", {{ABSJMP | L_32, E}}, {{0x5, 0xD, 0x0, 0x8, ABSJMP | L_32, DATA7, E}}},
+
+ {O (O_JSR, SN), AV_H8, 8, "jsr", {{MEMIND, E}}, {{0x5, 0xF, SRC | MEMIND, DATA, E}}},
+ {O (O_JSR, SN), AV_H8SX, 8, "jsr", {{VECIND, E}}, {{0x5, 0xD, SRC | VECIND, DATA, E}}},
+
+ {O (O_LDC, SB), AV_H8, 2, "ldc", {{IMM8, CCR | DST, E}}, {{ 0x0, 0x7, IMM8LIST, E}}},
+ {O (O_LDC, SB), AV_H8S, 2, "ldc", {{IMM8, EXR | DST, E}}, {{0x0, 0x1, 0x4, EXR | DST, 0x0, 0x7, IMM8LIST, E}}},
+ {O (O_LDC, SB), AV_H8, 2, "ldc", {{RS8, CCR | DST, E}}, {{0x0, 0x3, B30 | CCR | DST, RS8, E}}},
+ {O (O_LDC, SB), AV_H8S, 2, "ldc", {{RS8, EXR | DST, E}}, {{0x0, 0x3, B30 | EXR | DST, RS8, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{RSIND, CCR | DST, E}}, {{PREFIXLDC, 0x6, 0x9, B30 | RSIND, IGNORE, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{RSIND, EXR | DST, E}}, {{PREFIXLDC, 0x6, 0x9, B30 | RSIND, IGNORE, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{RSPOSTINC, CCR | DST, E}}, {{PREFIXLDC, 0x6, 0xD, B30 | RSPOSTINC, IGNORE, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{RSPOSTINC, EXR | DST, E}}, {{PREFIXLDC, 0x6, 0xD, B30 | RSPOSTINC, IGNORE, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{DISP16SRC, CCR | DST, E}}, {{PREFIXLDC, 0x6, 0xF, B30 | DISPREG, IGNORE, SRC | DISP16LIST, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{DISP16SRC, EXR | DST, E}}, {{PREFIXLDC, 0x6, 0xF, B30 | DISPREG, IGNORE, SRC | DISP16LIST, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{DISP32SRC, CCR | DST, E}}, {{PREFIXLDC, 0x7, 0x8, B30 | DISPREG, 0x0, 0x6, 0xB, 0x2, IGNORE, SRC | DISP32LIST, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{DISP32SRC, EXR | DST, E}}, {{PREFIXLDC, 0x7, 0x8, B30 | DISPREG, 0x0, 0x6, 0xB, 0x2, IGNORE, SRC | DISP32LIST, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{ABS16SRC, CCR | DST, E}}, {{PREFIXLDC, 0x6, 0xB, 0x0, IGNORE, SRC | ABS16LIST, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{ABS16SRC, EXR | DST, E}}, {{PREFIXLDC, 0x6, 0xB, 0x0, IGNORE, SRC | ABS16LIST, E}}},
+ {O (O_LDC, SW), AV_H8H, 2, "ldc", {{ABS32SRC, CCR | DST, E}}, {{PREFIXLDC, 0x6, 0xB, 0x2, IGNORE, SRC | MEMRELAX | ABS32LIST, E}}},
+ {O (O_LDC, SW), AV_H8S, 2, "ldc", {{ABS32SRC, EXR | DST, E}}, {{PREFIXLDC, 0x6, 0xB, 0x2, IGNORE, SRC | MEMRELAX | ABS32LIST, E}}},
+
+ {O (O_LDC, SL), AV_H8SX, 0, "ldc", {{RS32, B30 | VBR_SBR | DST, E}}, {{0x0, 0x3, B30 | VBR_SBR | DST, RS32, E}}},
+
+
+ {O (O_MOV, SB), AV_H8, 2, "mov.b", {{IMM8, RD8, E}}, {{0xF, RD8, IMM8LIST, E}}},
+ {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4_NS, ABS16DST, E}}, {{0x6, 0xa, 0xd, IMM4, DSTABS16LIST, E}}},
+ {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4_NS, ABS32DST, E}}, {{0x6, 0xa, 0xf, IMM4, DSTABS32LIST, E}}},
+ MOVFROM_IMM8 (O (O_MOV, SB), PREFIX_017D, "mov.b", IMM8),
+
+ {O (O_MOV, SB), AV_H8, 2, "mov.b", {{RS8, RD8, E}}, {{0x0, 0xC, RS8, RD8, E}}},
+ MOVFROM_REG_BW (O (O_MOV, SB), "mov.b", RS8, PREFIX_017, 8, 10, 12, 14, MEMRELAX),
+ {O (O_MOV, SB), AV_H8, 4, "mov.b", {{RS8, ABS8DST, E}}, {{0x3, RS8, DSTABS8LIST, E}}},
+ MOVTO_REG_BW (O (O_MOV, SB), "mov.b", RD8, PREFIX_017, 8, 10, 12, 14, MEMRELAX),
+ {O (O_MOV, SB), AV_H8, 4, "mov.b", {{ABS8SRC, RD8, E}}, {{0x2, RD8, ABS8LIST, E}}},
+
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", RSIND, FROM_IND),
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", RSPOSTINC, FROM_POSTINC),
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", RSPOSTDEC, FROM_POSTDEC),
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", RSPREINC, FROM_PREINC),
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", RSPREDEC, FROM_PREDEC),
+ MOVFROM_STD (O (O_MOV, SB), PREFIX_0178, "mov.b", DISP2SRC, FROM_DISP2),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", DISP16SRC, FROM_DISP16, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", DISP32SRC, FROM_DISP32, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXB16, FROM_DISP16B, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXW16, FROM_DISP16W, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXL16, FROM_DISP16L, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXB32, FROM_DISP32B, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXW32, FROM_DISP32W, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", INDEXL32, FROM_DISP32L, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", ABS16SRC, FROM_ABS16, ABS16LIST),
+ MOVFROM_AD (O (O_MOV, SB), PREFIX_0178, "mov.b", ABS32SRC, FROM_ABS32, ABS32LIST),
+
+ {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM3NZ_NS, RD16, E}}, {{0x0, 0xf, B30 | IMM3NZ, RD16, E}}},
+ {O (O_MOV, SW), AV_H8, 4, "mov.w", {{IMM16, RD16, E}}, {{0x7, 0x9, 0x0, RD16, IMM16LIST, E}}},
+ {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4_NS, ABS16DST, E}}, {{0x6, 0xb, 0xd, IMM4, DSTABS16LIST, E}}},
+ {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4_NS, ABS32DST, E}}, {{0x6, 0xb, 0xf, IMM4, DSTABS32LIST, E}}},
+
+ MOVFROM_IMM8 (O (O_MOV, SW), PREFIX_015D, "mov.w", IMM8U_NS),
+ MOVFROM_IMM (O (O_MOV, SW), PREFIX_7974, "mov.w", IMM16, IMM16LIST),
+
+ {O (O_MOV, SW), AV_H8, 2, "mov.w", {{RS16, RD16, E}}, {{0x0, 0xD, RS16, RD16, E}}},
+ MOVFROM_REG_BW (O (O_MOV, SW), "mov.w", RS16, PREFIX_015, 9, 11, 13, 15, 0),
+ MOVTO_REG_BW (O (O_MOV, SW), "mov.w", RD16, PREFIX_015, 9, 11, 13, 15, 0),
+
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", RSIND, FROM_IND),
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", RSPOSTINC, FROM_POSTINC),
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", RSPOSTDEC, FROM_POSTDEC),
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", RSPREINC, FROM_PREINC),
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", RSPREDEC, FROM_PREDEC),
+ MOVFROM_STD (O (O_MOV, SW), PREFIX_0158, "mov.w", DISP2SRC, FROM_DISP2),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", DISP16SRC, FROM_DISP16, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", DISP32SRC, FROM_DISP32, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXB16, FROM_DISP16B, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXW16, FROM_DISP16W, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXL16, FROM_DISP16L, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXB32, FROM_DISP32B, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXW32, FROM_DISP32W, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", INDEXL32, FROM_DISP32L, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", ABS16SRC, FROM_ABS16, ABS16LIST),
+ MOVFROM_AD (O (O_MOV, SW), PREFIX_0158, "mov.w", ABS32SRC, FROM_ABS32, ABS32LIST),
+
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM3NZ_NS, RD32, E}}, {{0x0, 0xf, B31 | IMM3NZ, B31 | RD32, E}}},
+
+ MOVFROM_IMM8 (O (O_MOV, SL), PREFIX_010D, "mov.l", IMM8U_NS),
+ MOVFROM_IMM (O (O_MOV, SL), PREFIX_7A7C, "mov.l", IMM16U_NS, IMM16ULIST),
+
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM16U_NS, RD32, E}}, {{0x7, 0xa, 0x0, B31 | RD32, IMM16ULIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 4, "mov.l", {{IMM32, RD32, E}}, {{0x7, 0xa, 0x0, B30 | RD32, IMM32LIST, E}}},
+
+ MOVFROM_IMM (O (O_MOV, SL), PREFIX_7A74, "mov.l", IMM32, IMM32LIST),
+
+ {O (O_MOV, SL), AV_H8H, 2, "mov.l", {{RS32, RD32, E}}, {{0x0, 0xf, B31 | RS32, B30 | RD32, E}}},
+
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, RDIND, E}}, {{PREFIX_0100, 0x6, 0x9, B31 | RDIND, B30 | RS32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, RDPOSTINC, E}}, {{PREFIX_0103, 0x6, 0xd, B31 | RDPOSTINC, RS32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, RDPOSTDEC, E}}, {{PREFIX_0101, 0x6, 0xd, B31 | RDPOSTDEC, RS32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, RDPREINC, E}}, {{PREFIX_0102, 0x6, 0xd, B31 | RDPREINC, RS32, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, RDPREDEC, E}}, {{PREFIX_0100, 0x6, 0xd, B31 | RDPREDEC, RS32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, DISP2DST, E}}, {{PREFIX_010, B30 | B20 | DISP2DST, 0x6, 0x9, B31 | DSTDISPREG, RS32, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, DISP16DST, E}}, {{PREFIX_0100, 0x6, 0xf, B31 | DSTDISPREG, RS32, DSTDISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 6, "mov.l", {{RS32, DISP32DST, E}}, {{0x7, 0x8, B31 | DSTDISPREG, 0x0, 0x6, 0xb, 0xa, RS32, DSTDISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, DISP32DST, E}}, {{PREFIX_0100, 0x7, 0x8, B31 | DSTDISPREG, 0x0, 0x6, 0xb, 0xa, RS32, DSTDISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXB16D, E}}, {{PREFIX_0101, 0x6, 0xf, B31 | DSTDISPREG, RS32, DSTDISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXW16D, E}}, {{PREFIX_0102, 0x6, 0xf, B31 | DSTDISPREG, RS32, DSTDISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXL16D, E}}, {{PREFIX_0103, 0x6, 0xf, B31 | DSTDISPREG, RS32, DSTDISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXB32D, E}}, {{0x7, 0x8, B31 | DSTDISPREG, 0x1, 0x6, 0xb, 0xa, RS32, DSTDISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXW32D, E}}, {{0x7, 0x8, B31 | DSTDISPREG, 0x2, 0x6, 0xb, 0xa, RS32, DSTDISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RS32, INDEXL32D, E}}, {{0x7, 0x8, B31 | DSTDISPREG, 0x3, 0x6, 0xb, 0xa, RS32, DSTDISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, ABS16DST, E}}, {{PREFIX_0100, 0x6, 0xb, 0x8, RS32, DSTABS16LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RS32, ABS32DST, E}}, {{PREFIX_0100, 0x6, 0xb, 0xa, RS32, MEMRELAX | DSTABS32LIST, E}}},
+
+ {O (O_MOV, SL), AV_H8H, 4, "mov.l", {{RSIND, RD32, E}}, {{PREFIX_0100, 0x6, 0x9, B30 | RSIND, RD32, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{RSPOSTINC, RD32, E}}, {{PREFIX_0100, 0x6, 0xd, B30 | RSPOSTINC, RD32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RSPOSTDEC, RD32, E}}, {{PREFIX_0102, 0x6, 0xd, B30 | RSPOSTDEC, RD32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RSPREINC, RD32, E}}, {{PREFIX_0101, 0x6, 0xd, B30 | RSPREINC, RD32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{RSPREDEC, RD32, E}}, {{PREFIX_0103, 0x6, 0xd, B30 | RSPREDEC, RD32, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{DISP2SRC, RD32, E}}, {{PREFIX_010, B30 | B20 | DISP2SRC, 0x6, 0x9, B30 | DISPREG, RD32, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{DISP16SRC, RD32, E}}, {{PREFIX_0100, 0x6, 0xf, B30 | DISPREG, RD32, SRC | DISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 6, "mov.l", {{DISP32SRC, RD32, E}}, {{0x7, 0x8, B31 | DISPREG, 0x0, 0x6, 0xb, 0x2, RD32, SRC | DISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{DISP32SRC, RD32, E}}, {{PREFIX_0100, 0x7, 0x8, B30 | DISPREG, 0x0, 0x6, 0xb, 0x2, RD32, SRC | DISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXB16, RD32, E}}, {{PREFIX_0101, 0x6, 0xf, B30 | DISPREG, RD32, SRC | DISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXW16, RD32, E}}, {{PREFIX_0102, 0x6, 0xf, B30 | DISPREG, RD32, SRC | DISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXL16, RD32, E}}, {{PREFIX_0103, 0x6, 0xf, B30 | DISPREG, RD32, SRC | DISP16LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXB32, RD32, E}}, {{0x7, 0x8, B31 | DISPREG, 0x1, 0x6, 0xb, 0x2, RD32, SRC | DISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXW32, RD32, E}}, {{0x7, 0x8, B31 | DISPREG, 0x2, 0x6, 0xb, 0x2, RD32, SRC | DISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{INDEXL32, RD32, E}}, {{0x7, 0x8, B31 | DISPREG, 0x3, 0x6, 0xb, 0x2, RD32, SRC | DISP32LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{ABS16SRC, RD32, E}}, {{PREFIX_0100, 0x6, 0xb, 0x0, RD32, SRC | ABS16LIST, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "mov.l", {{ABS32SRC, RD32, E}}, {{PREFIX_0100, 0x6, 0xb, 0x2, RD32, SRC | MEMRELAX | ABS32LIST, E}}},
+
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", RSIND, FROM_IND),
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", RSPOSTINC, FROM_POSTINC),
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", RSPOSTDEC, FROM_POSTDEC),
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", RSPREINC, FROM_PREINC),
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", RSPREDEC, FROM_PREDEC),
+ MOVFROM_STD (O (O_MOV, SL), PREFIX_0108, "mov.l", DISP2SRC, FROM_DISP2),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", DISP16SRC, FROM_DISP16, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", DISP32SRC, FROM_DISP32, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXB16, FROM_DISP16B, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXW16, FROM_DISP16W, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXL16, FROM_DISP16L, DISP16LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXB32, FROM_DISP32B, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXW32, FROM_DISP32W, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", INDEXL32, FROM_DISP32L, DISP32LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", ABS16SRC, FROM_ABS16, ABS16LIST),
+ MOVFROM_AD (O (O_MOV, SL), PREFIX_0108, "mov.l", ABS32SRC, FROM_ABS32, ABS32LIST),
+
+#define DO_MOVA1(TYPE, OP0, OP1) \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0x8, B30 | R3_32, DISP16LIST, E}}}, \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0x9, B30 | R3_32, DISP16LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xA, B30 | R3_32, DISP16LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xB, B30 | R3_32, DISP16LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xC, B30 | R3_32, DISP16LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xD, B30 | R3_32, DISP16LIST, E}}}, \
+\
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0x8, B31 | R3_32, DISP32LIST, E}}}, \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0x9, B31 | R3_32, DISP32LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xA, B31 | R3_32, DISP32LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xB, B31 | R3_32, DISP32LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xC, B31 | R3_32, DISP32LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xD, B31 | R3_32, DISP32LIST, E}}}
+
+#define DO_MOVA2(TYPE, OP0, OP1, OP2) \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0x8, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0x9, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xA, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xB, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB16, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xC, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW16, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xD, B30 | R3_32, OP2, DISP16LIST, E}}}, \
+\
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0x8, B31 | R3_32, OP2, DISP32LIST, E}}}, \
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0x9, B31 | R3_32, OP2, DISP32LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xA, B31 | R3_32, OP2, DISP32LIST, E}}}, \
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xB, B31 | R3_32, OP2, DISP32LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB32, TYPE, R3_32}}, {{PREFIX_017F, OP0, OP1, 0xC, B31 | R3_32, OP2, DISP32LIST, E}}}, \
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW32, TYPE, R3_32}}, {{PREFIX_015F, OP0, OP1, 0xD, B31 | R3_32, OP2, DISP32LIST, E}}}
+
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB16, E}}, {{0x7, 0xA, 0x8, B31 | DISPREG, DISP16LIST, E}}},
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW16, E}}, {{0x7, 0xA, 0x9, B31 | DISPREG, DISP16LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB16, E}}, {{0x7, 0xA, 0xA, B31 | DISPREG, DISP16LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW16, E}}, {{0x7, 0xA, 0xB, B31 | DISPREG, DISP16LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB16, E}}, {{0x7, 0xA, 0xC, B31 | DISPREG, DISP16LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW16, E}}, {{0x7, 0xA, 0xD, B31 | DISPREG, DISP16LIST, E}}},
+
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB32, E}}, {{0x7, 0xA, 0x8, B30 | DISPREG, DISP32LIST, E}}},
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW32, E}}, {{0x7, 0xA, 0x9, B30 | DISPREG, DISP32LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB32, E}}, {{0x7, 0xA, 0xA, B30 | DISPREG, DISP32LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW32, E}}, {{0x7, 0xA, 0xB, B30 | DISPREG, DISP32LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB32, E}}, {{0x7, 0xA, 0xC, B30 | DISPREG, DISP32LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW32, E}}, {{0x7, 0xA, 0xD, B30 | DISPREG, DISP32LIST, E}}},
+
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB16, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0x8, B31 | R3_32, DISP16LIST, E}}},
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW16, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0x9, B31 | R3_32, DISP16LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB16, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0xA, B31 | R3_32, DISP16LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW16, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0xB, B31 | R3_32, DISP16LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB16, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0xC, B31 | R3_32, DISP16LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW16, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0xD, B31 | R3_32, DISP16LIST, E}}},
+
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXB32, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0x8, B30 | R3_32, DISP32LIST, E}}},
+ {O (O_MOVAB, SL), AV_H8SX, 0, "mova/b.l", {{INDEXW32, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0x9, B30 | R3_32, DISP32LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXB32, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0xA, B30 | R3_32, DISP32LIST, E}}},
+ {O (O_MOVAW, SL), AV_H8SX, 0, "mova/w.l", {{INDEXW32, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0xB, B30 | R3_32, DISP32LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXB32, RD8, R3_32}}, {{0x7, 0x8, RD8, 0x8, 0x7, 0xA, 0xC, B30 | R3_32, DISP32LIST, E}}},
+ {O (O_MOVAL, SL), AV_H8SX, 0, "mova/l.l", {{INDEXW32, RD16, R3_32}}, {{0x7, 0x8, RD16, 0x9, 0x7, 0xA, 0xD, B30 | R3_32, DISP32LIST, E}}},
+
+ DO_MOVA1 (RDIND, 0x0, B30 | RDIND),
+ DO_MOVA1 (RDPOSTINC, 0x8, B30 | RDPOSTINC),
+ DO_MOVA1 (RDPOSTDEC, 0xA, B30 | RDPOSTDEC),
+ DO_MOVA1 (RDPREINC, 0x9, B30 | RDPREINC),
+ DO_MOVA1 (RDPREDEC, 0xB, B30 | RDPREDEC),
+ DO_MOVA1 (DISP2DST, B30 | B20 | DISP2DST, B30 | DSTDISPREG),
+ DO_MOVA2 (DISP16DST, 0xC, B30 | DSTDISPREG, DSTDISP16LIST),
+ DO_MOVA2 (DISP32DST, 0xC, B31 | DSTDISPREG, DSTDISP32LIST),
+ DO_MOVA2 (INDEXB16D, 0xD, B30 | DSTDISPREG, DSTDISP16LIST),
+ DO_MOVA2 (INDEXW16D, 0xE, B30 | DSTDISPREG, DSTDISP16LIST),
+ DO_MOVA2 (INDEXL16D, 0xF, B30 | DSTDISPREG, DSTDISP16LIST),
+ DO_MOVA2 (INDEXB32D, 0xD, B31 | DSTDISPREG, DSTDISP32LIST),
+ DO_MOVA2 (INDEXW32D, 0xE, B31 | DSTDISPREG, DSTDISP32LIST),
+ DO_MOVA2 (INDEXL32D, 0xF, B31 | DSTDISPREG, DSTDISP32LIST),
+ DO_MOVA2 (ABS16DST, 0x4, 0x0, DSTABS16LIST),
+ DO_MOVA2 (ABS32DST, 0x4, 0x8, DSTABS32LIST),
+
+ {O (O_MOV, SB), AV_H8, 10, "movfpe", {{ABS16SRC, RD8, E}}, {{0x6, 0xA, 0x4, RD8, ABS16SRC, DATA3, E}}},
+ {O (O_MOV, SB), AV_H8, 10, "movtpe", {{RS8, ABS16DST, E}}, {{0x6, 0xA, 0xC, RS8, ABS16DST, DATA3, E}}},
+
+ {O (O_MOVMD, SB), AV_H8SX, 0, "movmd.b", {{E}}, {{0x7, 0xb, 0x9, 0x4, E}}},
+ {O (O_MOVMD, SW), AV_H8SX, 0, "movmd.w", {{E}}, {{0x7, 0xb, 0xa, 0x4, E}}},
+ {O (O_MOVMD, SL), AV_H8SX, 0, "movmd.l", {{E}}, {{0x7, 0xb, 0xb, 0x4, E}}},
+ {O (O_MOVSD, SB), AV_H8SX, 0, "movsd.b", {{PCREL16, E}}, {{0x7, 0xb, 0x8, 0x4, PCREL16, DATA3, E}}},
+
+ {O (O_MULS, SW), AV_H8SX, 0, "muls.w", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xc, 0x6, 0x5, 0x0, IMM4, RD16, E}}},
+ {O (O_MULS, SW), AV_H8SX, 0, "muls.w", {{RS16, RD16, E}}, {{0x0, 0x1, 0xc, 0x2, 0x5, 0x0, RS16, RD16, E}}},
+ {O (O_MULS, SL), AV_H8SX, 0, "muls.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0x6, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULS, SL), AV_H8SX, 0, "muls.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xc, 0x2, 0x5, 0x2, B30 | RS32, B30 | RD32, E}}},
+
+ {O (O_MULU, SW), AV_H8SX, 0, "mulu.w", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xc, 0xe, 0x5, 0x0, IMM4, RD16, E}}},
+ {O (O_MULU, SW), AV_H8SX, 0, "mulu.w", {{RS16, RD16, E}}, {{0x0, 0x1, 0xc, 0xa, 0x5, 0x0, RS16, RD16, E}}},
+ {O (O_MULU, SL), AV_H8SX, 0, "mulu.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0xe, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULU, SL), AV_H8SX, 0, "mulu.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xc, 0xa, 0x5, 0x2, B30 | RS32, B30 | RD32, E}}},
+
+ {O (O_MULSU, SL), AV_H8SX, 0, "muls/u.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0x7, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULSU, SL), AV_H8SX, 0, "muls/u.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xc, 0x3, 0x5, 0x2, B30 | RS32, B30 | RD32, E}}},
+ {O (O_MULUU, SL), AV_H8SX, 0, "mulu/u.l", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0xf, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULUU, SL), AV_H8SX, 0, "mulu/u.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xc, 0xb, 0x5, 0x2, B30 | RS32, B30 | RD32, E}}},
+
+ {O (O_MULXS, SB), AV_H8SX, 0, "mulxs.b", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xc, 0x4, 0x5, 0x0, IMM4, RD16, E}}},
+ {O (O_MULXS, SB), AV_H8H, 20, "mulxs.b", {{RS8, RD16, E}}, {{0x0, 0x1, 0xc, 0x0, 0x5, 0x0, RS8, RD16, E}}},
+ {O (O_MULXS, SW), AV_H8SX, 0, "mulxs.w", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0x4, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULXS, SW), AV_H8H, 20, "mulxs.w", {{RS16, RD32, E}}, {{0x0, 0x1, 0xc, 0x0, 0x5, 0x2, RS16, B30 | RD32, E}}},
+
+ {O (O_MULXU, SB), AV_H8SX, 0, "mulxu.b", {{IMM4, RD16, E}}, {{0x0, 0x1, 0xc, 0xc, 0x5, 0x0, IMM4, RD16, E}}},
+ {O (O_MULXU, SB), AV_H8, 14, "mulxu.b", {{RS8, RD16, E}}, {{0x5, 0x0, RS8, RD16, E}}},
+ {O (O_MULXU, SW), AV_H8SX, 0, "mulxu.w", {{IMM4, RD32, E}}, {{0x0, 0x1, 0xc, 0xc, 0x5, 0x2, IMM4, B30 | RD32, E}}},
+ {O (O_MULXU, SW), AV_H8H, 14, "mulxu.w", {{RS16, RD32, E}}, {{0x5, 0x2, RS16, B30 | RD32, E}}},
+
+ EXPAND_UNOP_STD_B (O (O_NEG, SB), "neg.b", PREFIX_017, 0x1, 0x7, 0x8),
+ EXPAND_UNOP_STD_W (O (O_NEG, SW), "neg.w", PREFIX_015, 0x1, 0x7, 0x9),
+ EXPAND_UNOP_STD_L (O (O_NEG, SL), "neg.l", PREFIX_010, 0x1, 0x7, 0xb),
+
+ {O (O_NOP, SN), AV_H8, 2, "nop", {{E}}, {{0x0, 0x0, 0x0, 0x0, E}}},
+
+ EXPAND_UNOP_STD_B (O (O_NOT, SB), "not.b", PREFIX_017, 0x1, 0x7, 0x0),
+ EXPAND_UNOP_STD_W (O (O_NOT, SW), "not.w", PREFIX_015, 0x1, 0x7, 0x1),
+ EXPAND_UNOP_STD_L (O (O_NOT, SL), "not.l", PREFIX_010, 0x1, 0x7, 0x3),
+
+ {O (O_OR, SB), AV_H8, 2, "or.b", {{IMM8, RD8, E}}, {{0xc, RD8, IMM8LIST, E}}},
+ EXPAND_TWOOP_B (O (O_OR, SB), "or.b", 0xc, 0x1, 0x4, 0x4, 0),
+
+ {O (O_OR, SW), AV_H8, 2, "or.w", {{RS16, RD16, E}}, {{0x6, 0x4, RS16, RD16, E}}},
+ EXPAND_TWOOP_W (O (O_OR, SW), "or.w", 0x6, 0x4, 0x4),
+
+ {O (O_OR, SL), AV_H8H, 2, "or.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xF, 0x0, 0x6, 0x4, B30 | RS32, B30 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_OR, SL), "or.l", 0x4),
+
+ {O (O_ORC, SB), AV_H8, 2, "orc", {{IMM8, CCR | DST, E}}, {{0x0, 0x4, IMM8LIST, E}}},
+ {O (O_ORC, SB), AV_H8S, 2, "orc", {{IMM8, EXR | DST, E}}, {{0x0, 0x1, 0x4, EXR | DST, 0x0, 0x4, IMM8LIST, E}}},
+
+ {O (O_MOV, SW), AV_H8, 6, "pop.w", {{OR16, E}}, {{0x6, 0xD, 0x7, OR16, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "pop.l", {{OR32, E}}, {{PREFIX_0100, 0x6, 0xD, 0x7, OR32 | B30, E}}},
+ {O (O_MOV, SW), AV_H8, 6, "push.w", {{OR16, E}}, {{0x6, 0xD, 0xF, OR16, E}}},
+ {O (O_MOV, SL), AV_H8H, 6, "push.l", {{OR32, E}}, {{PREFIX_0100, 0x6, 0xD, 0xF, OR32 | B30, E}}},
+
+ EXPAND_UNOP_STD_B (O (O_ROTL, SB), "rotl.b", PREFIX_017, 0x1, 0x2, 0x8),
+ EXPAND_UNOP_EXTENDED_B (O (O_ROTL, SB), "rotl.b", CONST_2, PREFIX_017, 0x1, 0x2, 0xc),
+ EXPAND_UNOP_STD_W (O (O_ROTL, SW), "rotl.w", PREFIX_015, 0x1, 0x2, 0x9),
+ EXPAND_UNOP_EXTENDED_W (O (O_ROTL, SW), "rotl.w", CONST_2, PREFIX_015, 0x1, 0x2, 0xd),
+ EXPAND_UNOP_STD_L (O (O_ROTL, SL), "rotl.l", PREFIX_010, 0x1, 0x2, 0xb),
+ EXPAND_UNOP_EXTENDED_L (O (O_ROTL, SL), "rotl.l", CONST_2, PREFIX_010, 0x1, 0x2, 0xf, B30),
+ EXPAND_UNOP_STD_B (O (O_ROTR, SB), "rotr.b", PREFIX_017, 0x1, 0x3, 0x8),
+ EXPAND_UNOP_EXTENDED_B (O (O_ROTR, SB), "rotr.b", CONST_2, PREFIX_017, 0x1, 0x3, 0xc),
+ EXPAND_UNOP_STD_W (O (O_ROTR, SW), "rotr.w", PREFIX_015, 0x1, 0x3, 0x9),
+ EXPAND_UNOP_EXTENDED_W (O (O_ROTR, SW), "rotr.w", CONST_2, PREFIX_015, 0x1, 0x3, 0xd),
+ EXPAND_UNOP_STD_L (O (O_ROTR, SL), "rotr.l", PREFIX_010, 0x1, 0x3, 0xb),
+ EXPAND_UNOP_EXTENDED_L (O (O_ROTR, SL), "rotr.l", CONST_2, PREFIX_010, 0x1, 0x3, 0xf, B30),
+ EXPAND_UNOP_STD_B (O (O_ROTXL, SB), "rotxl.b", PREFIX_017, 0x1, 0x2, 0x0),
+ EXPAND_UNOP_EXTENDED_B (O (O_ROTXL, SB), "rotxl.b", CONST_2, PREFIX_017, 0x1, 0x2, 0x4),
+ EXPAND_UNOP_STD_W (O (O_ROTXL, SW), "rotxl.w", PREFIX_015, 0x1, 0x2, 0x1),
+ EXPAND_UNOP_EXTENDED_W (O (O_ROTXL, SW), "rotxl.w", CONST_2, PREFIX_015, 0x1, 0x2, 0x5),
+ EXPAND_UNOP_STD_L (O (O_ROTXL, SL), "rotxl.l", PREFIX_010, 0x1, 0x2, 0x3),
+ EXPAND_UNOP_EXTENDED_L (O (O_ROTXL, SL), "rotxl.l", CONST_2, PREFIX_010, 0x1, 0x2, 0x7, B30),
+ EXPAND_UNOP_STD_B (O (O_ROTXR, SB), "rotxr.b", PREFIX_017, 0x1, 0x3, 0x0),
+ EXPAND_UNOP_EXTENDED_B (O (O_ROTXR, SB), "rotxr.b", CONST_2, PREFIX_017, 0x1, 0x3, 0x4),
+ EXPAND_UNOP_STD_W (O (O_ROTXR, SW), "rotxr.w", PREFIX_015, 0x1, 0x3, 0x1),
+ EXPAND_UNOP_EXTENDED_W (O (O_ROTXR, SW), "rotxr.w", CONST_2, PREFIX_015, 0x1, 0x3, 0x5),
+ EXPAND_UNOP_STD_L (O (O_ROTXR, SL), "rotxr.l", PREFIX_010, 0x1, 0x3, 0x3),
+ EXPAND_UNOP_EXTENDED_L (O (O_ROTXR, SL), "rotxr.l", CONST_2, PREFIX_010, 0x1, 0x3, 0x7, B30),
+
+
+ {O (O_BPT, SN), AV_H8, 10, "bpt", {{E}}, {{0x7, 0xA, 0xF, 0xF, E}}},
+ {O (O_RTE, SN), AV_H8, 10, "rte", {{E}}, {{0x5, 0x6, 0x7, 0x0, E}}},
+ {O (O_RTS, SN), AV_H8, 8, "rts", {{E}}, {{0x5, 0x4, 0x7, 0x0, E}}},
+ {O (O_RTEL, SN), AV_H8SX, 0, "rte/l", {{RS32, RD32, E}}, {{0x5, 0x6, RS32 | B30, RD32 | B30, E}}},
+ {O (O_RTSL, SN), AV_H8SX, 0, "rts/l", {{RS32, RD32, E}}, {{0x5, 0x4, RS32 | B30, RD32 | B30, E}}},
+
+ EXPAND_UNOP_STD_B (O (O_SHAL, SB), "shal.b", PREFIX_017, 0x1, 0x0, 0x8),
+ EXPAND_UNOP_EXTENDED_B (O (O_SHAL, SB), "shal.b", CONST_2, PREFIX_017, 0x1, 0x0, 0xc),
+ EXPAND_UNOP_STD_W (O (O_SHAL, SW), "shal.w", PREFIX_015, 0x1, 0x0, 0x9),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHAL, SW), "shal.w", CONST_2, PREFIX_015, 0x1, 0x0, 0xd),
+ EXPAND_UNOP_STD_L (O (O_SHAL, SL), "shal.l", PREFIX_010, 0x1, 0x0, 0xb),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHAL, SL), "shal.l", CONST_2, PREFIX_010, 0x1, 0x0, 0xf, B30),
+ EXPAND_UNOP_STD_B (O (O_SHAR, SB), "shar.b", PREFIX_017, 0x1, 0x1, 0x8),
+ EXPAND_UNOP_EXTENDED_B (O (O_SHAR, SB), "shar.b", CONST_2, PREFIX_017, 0x1, 0x1, 0xc),
+ EXPAND_UNOP_STD_W (O (O_SHAR, SW), "shar.w", PREFIX_015, 0x1, 0x1, 0x9),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHAR, SW), "shar.w", CONST_2, PREFIX_015, 0x1, 0x1, 0xd),
+ EXPAND_UNOP_STD_L (O (O_SHAR, SL), "shar.l", PREFIX_010, 0x1, 0x1, 0xb),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHAR, SL), "shar.l", CONST_2, PREFIX_010, 0x1, 0x1, 0xf, B30),
+
+ EXPAND_UNOP_STD_B (O (O_SHLL, SB), "shll.b", PREFIX_017, 0x1, 0x0, 0x0),
+
+ {O (O_SHLL, SB), AV_H8SX, 0, "shll.b", {{RS8, RD8, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x0, 0x0, RD8, E}}},
+
+ EXPAND_UNOP_EXTENDED_B (O (O_SHLL, SB), "shll.b", CONST_2, PREFIX_017, 0x1, 0x0, 0x4),
+ EXPAND_UNOP_EXTENDED_B (O (O_SHLL, SB), "shll.b", CONST_4, PREFIX_017, 0x1, 0x0, 0xa),
+ {O (O_SHLL, SB), AV_H8SX, 0, "shll.b", {{IMM5, RD8, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x0, 0x0, RD8, E}}},
+
+ EXPAND_UNOP_STD_W (O (O_SHLL, SW), "shll.w", PREFIX_015, 0x1, 0x0, 0x1),
+
+ {O (O_SHLL, SW), AV_H8SX, 0, "shll.w", {{RS8, RD16, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x0, 0x1, RD16, E}}},
+
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLL, SW), "shll.w", CONST_2, PREFIX_015, 0x1, 0x0, 0x5),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLL, SW), "shll.w", CONST_4, PREFIX_015, 0x1, 0x0, 0x2),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLL, SW), "shll.w", CONST_8, PREFIX_015, 0x1, 0x0, 0x6),
+ {O (O_SHLL, SW), AV_H8SX, 0, "shll.w", {{IMM5, RD16, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x0, 0x1, RD16, E}}},
+
+ EXPAND_UNOP_STD_L (O (O_SHLL, SL), "shll.l", PREFIX_010, 0x1, 0x0, 0x3),
+
+ {O (O_SHLL, SL), AV_H8SX, 0, "shll.l", {{RS8, RD32, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x0, 0x3, B30 | RD32, E}}},
+
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLL, SL), "shll.l", CONST_2, PREFIX_010, 0x1, 0x0, 0x7, B30),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLL, SL), "shll.l", CONST_4, PREFIX_010, 0x1, 0x0, 0x3, B31),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLL, SL), "shll.l", CONST_8, PREFIX_010, 0x1, 0x0, 0x7, B31),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLL, SL), "shll.l", CONST_16, PREFIX_010, 0x1, 0x0, 0xf, B31),
+ {O (O_SHLL, SL), AV_H8SX, 0, "shll.l", {{IMM5, RD32, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x0, 0x3, B30 | RD32, E}}},
+
+ EXPAND_UNOP_STD_B (O (O_SHLR, SB), "shlr.b", PREFIX_017, 0x1, 0x1, 0x0),
+
+ {O (O_SHLR, SB), AV_H8SX, 0, "shlr.b", {{RS8, RD8, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x1, 0x0, RD8, E}}},
+
+ EXPAND_UNOP_EXTENDED_B (O (O_SHLR, SB), "shlr.b", CONST_2, PREFIX_017, 0x1, 0x1, 0x4),
+ EXPAND_UNOP_EXTENDED_B (O (O_SHLR, SB), "shlr.b", CONST_4, PREFIX_017, 0x1, 0x1, 0xa),
+ {O (O_SHLR, SB), AV_H8SX, 0, "shlr.b", {{IMM5, RD8, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x1, 0x0, RD8, E}}},
+
+ EXPAND_UNOP_STD_W (O (O_SHLR, SW), "shlr.w", PREFIX_015, 0x1, 0x1, 0x1),
+
+ {O (O_SHLR, SW), AV_H8SX, 0, "shlr.w", {{RS8, RD16, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x1, 0x1, RD16, E}}},
+
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLR, SW), "shlr.w", CONST_2, PREFIX_015, 0x1, 0x1, 0x5),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLR, SW), "shlr.w", CONST_4, PREFIX_015, 0x1, 0x1, 0x2),
+ EXPAND_UNOP_EXTENDED_W (O (O_SHLR, SW), "shlr.w", CONST_8, PREFIX_015, 0x1, 0x1, 0x6),
+ {O (O_SHLR, SW), AV_H8SX, 0, "shlr.w", {{IMM5, RD16, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x1, 0x1, RD16, E}}},
+
+ EXPAND_UNOP_STD_L (O (O_SHLR, SL), "shlr.l", PREFIX_010, 0x1, 0x1, 0x3),
+
+ {O (O_SHLR, SL), AV_H8SX, 0, "shlr.l", {{RS8, RD32, E}}, {{0x7, 0x8, RS8, 0x8, 0x1, 0x1, 0x3, B30 | RD32, E}}},
+
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLR, SL), "shlr.l", CONST_2, PREFIX_010, 0x1, 0x1, 0x7, B30),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLR, SL), "shlr.l", CONST_4, PREFIX_010, 0x1, 0x1, 0x3, B31),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLR, SL), "shlr.l", CONST_8, PREFIX_010, 0x1, 0x1, 0x7, B31),
+ EXPAND_UNOP_EXTENDED_L (O (O_SHLR, SL), "shlr.l", CONST_16, PREFIX_010, 0x1, 0x1, 0xf, B31),
+ {O (O_SHLR, SL), AV_H8SX, 0, "shlr.l", {{IMM5, RD32, E}}, {{0x0, 0x3, B31 | IMM5, DATA, 0x1, 0x1, 0x3, B30 | RD32, E}}},
+
+ {O (O_SLEEP, SN), AV_H8, 2, "sleep", {{E}}, {{0x0, 0x1, 0x8, 0x0, E}}},
+
+ {O (O_STC, SB), AV_H8, 2, "stc", {{CCR | SRC, RD8, E}}, {{0x0, 0x2, B30 | CCR | SRC, RD8, E}}},
+ {O (O_STC, SB), AV_H8S, 2, "stc", {{EXR | SRC, RD8, E}}, {{0x0, 0x2, B30 | EXR | SRC, RD8, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, RDIND, E}}, {{PREFIXSTC, 0x6, 0x9, B31 | RDIND, IGNORE, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, RDIND, E}}, {{PREFIXSTC, 0x6, 0x9, B31 | RDIND, IGNORE, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, RDPREDEC, E}}, {{PREFIXSTC, 0x6, 0xD, B31 | RDPREDEC, IGNORE, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, RDPREDEC, E}}, {{PREFIXSTC, 0x6, 0xD, B31 | RDPREDEC, IGNORE, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, DISP16DST, E}}, {{PREFIXSTC, 0x6, 0xF, B31 | DSTDISPREG, IGNORE, DSTDISP16LIST, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, DISP16DST, E}}, {{PREFIXSTC, 0x6, 0xF, B31 | DSTDISPREG, IGNORE, DSTDISP16LIST, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, DISP32DST, E}}, {{PREFIXSTC, 0x7, 0x8, B30 | DSTDISPREG, 0, 0x6, 0xB, 0xA, IGNORE, DSTDISP32LIST, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, DISP32DST, E}}, {{PREFIXSTC, 0x7, 0x8, B30 | DSTDISPREG, 0, 0x6, 0xB, 0xA, IGNORE, DSTDISP32LIST, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, ABS16DST, E}}, {{PREFIXSTC, 0x6, 0xB, 0x8, IGNORE, DST | ABS16LIST, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, ABS16DST, E}}, {{PREFIXSTC, 0x6, 0xB, 0x8, IGNORE, DST | ABS16LIST, E}}},
+ {O (O_STC, SW), AV_H8H, 2, "stc", {{CCR | SRC, ABS32DST, E}}, {{PREFIXSTC, 0x6, 0xB, 0xA, IGNORE, DST | MEMRELAX | ABS32LIST, E}}},
+ {O (O_STC, SW), AV_H8S, 2, "stc", {{EXR | SRC, ABS32DST, E}}, {{PREFIXSTC, 0x6, 0xB, 0xA, IGNORE, DST | MEMRELAX | ABS32LIST, E}}},
+ {O (O_STC, SL), AV_H8SX, 0, "stc", {{B30 | VBR_SBR | SRC, RD32, E}}, {{0x0, 0x2, B30 | VBR_SBR | SRC, RD32, E}}},
+
+
+ EXPAND_TWOOP_B (O (O_SUB, SB), "sub.b", 0xa, 0x1, 0x8, 0x3, B01),
+
+ {O (O_SUB, SW), AV_H8, 2, "sub.w", {{RS16, RD16, E}}, {{0x1, 0x9, RS16, RD16, E}}},
+ {O (O_SUB, SW), AV_H8SX, 0, "sub.w", {{IMM3NZ_NS, RD16, E}}, {{0x1, 0xa, B30 | IMM3NZ, RD16, E}}},
+ {O (O_SUB, SW), AV_H8SX, 0, "sub.w", {{IMM3NZ_NS, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, IGNORE, 0x1, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_SUB, SW), AV_H8SX, 0, "sub.w", {{IMM3NZ_NS, ABS16DST, E}}, {{0x6, 0xb, 0x1, B31 | IGNORE, DSTABS16LIST, 0x1, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ {O (O_SUB, SW), AV_H8SX, 0, "sub.w", {{IMM3NZ_NS, ABS32DST, E}}, {{0x6, 0xb, 0x3, B31 | IGNORE, DSTABS32LIST, 0x1, 0xa, B30 | IMM3NZ, IGNORE, E}}},
+ EXPAND_TWOOP_W (O (O_SUB, SW), "sub.w", 0x1, 0x9, 0x3),
+
+ {O (O_SUB, SL), AV_H8H, 6, "sub.l", {{RS32, RD32, E}}, {{0x1, 0xa, B31 | RS32, B30 | RD32, E}}},
+ {O (O_SUB, SL), AV_H8SX, 0, "sub.l", {{IMM3NZ_NS, RD32, E}}, {{0x1, 0xa, B31 | IMM3NZ, B31 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_SUB, SL), "sub.l", 0x3),
+
+ {O (O_SUBS, SL), AV_H8, 2, "subs", {{KBIT, RDP, E}}, {{0x1, 0xB,KBIT, RDP, E}}},
+
+ {O (O_SUBX, SB), AV_H8, 2, "subx", {{IMM8, RD8, E}}, {{0xb, RD8, IMM8LIST, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{IMM8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, 0xb, IGNORE, IMM8LIST, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{IMM8, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RDPOSTDEC, B31 | IGNORE, 0xb, IGNORE, IMM8LIST, E}}},
+ {O (O_SUBX, SB), AV_H8, 2, "subx", {{RS8, RD8, E}}, {{0x1, 0xe, RS8, RD8, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RS8, RDIND, E}}, {{0x7, 0xd, B30 | RDIND, IGNORE, 0x1, 0xe, RS8, IGNORE, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RS8, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RDPOSTDEC, B31 | IGNORE, 0x1, 0xe, RS8, IGNORE, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RSIND, RD8, E}}, {{0x7, 0xc, B30 | RSIND, IGNORE, 0x1, 0xe, IGNORE, RD8, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RSPOSTDEC, RD8, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RSPOSTDEC, B30 | B20 | IGNORE, 0x1, 0xe, IGNORE, RD8, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RSIND, RDIND, E}}, {{PREFIX_0174, 0x6, 0x8, B30 | RSIND, 0xd, 0x0, RDIND, 0x3, IGNORE, E}}},
+ {O (O_SUBX, SB), AV_H8SX, 0, "subx.b", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0176, 0x6, 0xc, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x3, IGNORE, E}}},
+
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{IMM16, RD16, E}}, {{PREFIX_0151, 0x7, 0x9, 0x3, RD16, IMM16LIST, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{IMM16, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, B01 | IGNORE, 0x7, 0x9, 0x3, IGNORE, IMM16LIST, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{IMM16, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x7, 0x9, 0x3, IGNORE, IMM16LIST, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RS16, RD16, E}}, {{PREFIX_0151, 0x1, 0x9, RS16, RD16, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RS16, RDIND, E}}, {{0x7, 0xd, B31 | RDIND, B01 | IGNORE, 0x1, 0x9, RS16, IGNORE, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RS16, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x1, 0x9, RS16, IGNORE, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RSIND, RD16, E}}, {{0x7, 0xc, B31 | RSIND, B01 | IGNORE, 0x1, 0x9, IGNORE, RD16, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RSPOSTDEC, RD16, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RSPOSTDEC, B30 | B20 | B01 | IGNORE, 0x1, 0x9, IGNORE, RD16, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RSIND, RDIND, E}}, {{PREFIX_0154, 0x6, 0x9, B30 | RSIND, 0xd, 0x0, RDIND, 0x3, IGNORE, E}}},
+ {O (O_SUBX, SW), AV_H8SX, 0, "subx.w", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0156, 0x6, 0xd, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x3, IGNORE, E}}},
+
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{IMM32, RD32, E}}, {{PREFIX_0101, 0x7, 0xa, 0x3, RD32, IMM32LIST, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{IMM32, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RDIND, B31 | B20 | B01 | IGNORE, 0x7, 0xa, 0x3, IGNORE, IMM32LIST, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{IMM32, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x7, 0xa, 0x3, IGNORE, IMM32LIST, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RS32, RD32, E}}, {{PREFIX_0101, 0x1, 0xa, B31 | RS32, B30 | RD32, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RS32, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RDIND, B31 | B20 | B01 | IGNORE, 0x1, 0xa, B31 | RS32, B30 | IGNORE, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RS32, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RDPOSTDEC, B31 | B20 | B01 | IGNORE, 0x1, 0xa, B31 | RS32, B30 | IGNORE, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RSIND, RD32, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RSIND, B30 | B20 | B01 | IGNORE, 0x1, 0xa, B31 | IGNORE, B30 | RD32, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RSPOSTDEC, RD32, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RSPOSTDEC, B30 | B20 | B01 | IGNORE, 0x1, 0xa, B31 | IGNORE, B30 | RD32, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RSIND, RDIND, E}}, {{PREFIX_0104, 0x6, 0x9, B30 | RSIND, 0xd, 0x0, RDIND, 0x3, IGNORE, E}}},
+ {O (O_SUBX, SL), AV_H8SX, 0, "subx.l", {{RSPOSTDEC, RDPOSTDEC, E}}, {{PREFIX_0106, 0x6, 0xd, B30 | RSPOSTDEC, 0xd, 0xa, RDPOSTDEC, 0x3, IGNORE, E}}},
+
+ {O (O_TRAPA, SB), AV_H8H, 2, "trapa", {{IMM2, E}}, {{0x5, 0x7, IMM2, IGNORE, E}}},
+ {O (O_TAS, SB), AV_H8H, 2, "tas", {{RSIND, E}}, {{0x0, 0x1, 0xe, 0x0, 0x7, 0xb, B30 | RSIND, 0xc, E}}},
+
+ {O (O_XOR, SB), AV_H8, 2, "xor.b", {{IMM8, RD8, E}}, {{0xd, RD8, IMM8LIST, E}}},
+ EXPAND_TWOOP_B (O (O_XOR, SB), "xor.b", 0xd, 0x1, 0x5, 0x5, 0),
+
+ {O (O_XOR, SW), AV_H8, 2, "xor.w", {{RS16, RD16, E}}, {{0x6, 0x5, RS16, RD16, E}}},
+ EXPAND_TWOOP_W (O (O_XOR, SW), "xor.w", 0x6, 0x5, 0x5),
+
+ {O (O_XOR, SL), AV_H8H, 2, "xor.l", {{RS32, RD32, E}}, {{0x0, 0x1, 0xF, 0x0, 0x6, 0x5, B30 | RS32, B30 | RD32, E}}},
+ EXPAND_TWOOP_L (O (O_XOR, SL), "xor.l", 0x5),
+
+ {O (O_XORC, SB), AV_H8, 2, "xorc", {{IMM8, CCR | DST, E}}, {{0x0, 0x5, IMM8LIST, E}}},
+ {O (O_XORC, SB), AV_H8S, 2, "xorc", {{IMM8, EXR | DST, E}}, {{0x0, 0x1, 0x4, EXR | DST, 0x0, 0x5, IMM8LIST, E}}},
+
+ {O (O_CLRMAC, SN), AV_H8S, 2, "clrmac", {{E}}, {{0x0, 0x1, 0xa, 0x0, E}}},
+ {O (O_MAC, SW), AV_H8S, 2, "mac", {{RSPOSTINC, RDPOSTINC, E}}, {{0x0, 0x1, 0x6, 0x0, 0x6, 0xd, B30 | RSPOSTINC, B30 | RDPOSTINC, E}}},
+ {O (O_LDMAC, SL), AV_H8S, 2, "ldmac", {{RS32, MD32, E}}, {{0x0, 0x3, MD32, RS32, E}}},
+ {O (O_STMAC, SL), AV_H8S, 2, "stmac", {{MS32, RD32, E}}, {{0x0, 0x2, MS32, RD32, E}}},
+ {O (O_LDM, SL), AV_H8H, 6, "ldm.l", {{RSPOSTINC, RD32, E}}, {{0x0, 0x1, DATA, 0x0, 0x6, 0xD, 0x7, B30 | RD32, E}}},
+ {O (O_STM, SL), AV_H8H, 6, "stm.l", {{RS32, RDPREDEC, E}}, {{0x0, 0x1, DATA, 0x0, 0x6, 0xD, 0xF, B30 | RS32, E}}},
+ {0, 0, 0, NULL, {{0, 0, 0}}, {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}}
+};
+#else
+extern const struct h8_opcode h8_opcodes[];
+#endif
+
diff --git a/include/opcode/hppa.h b/include/opcode/hppa.h
new file mode 100644
index 000000000..8234664a6
--- /dev/null
+++ b/include/opcode/hppa.h
@@ -0,0 +1,874 @@
+/* Table of opcodes for the PA-RISC.
+ Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000,
+ 2001, 2002
+ Free Software Foundation, Inc.
+
+ Contributed by the Center for Software Science at the
+ University of Utah (pa-gdb-bugs@cs.utah.edu).
+
+This file is part of GAS, the GNU Assembler, and GDB, the GNU disassembler.
+
+GAS/GDB is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GAS/GDB is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GAS or GDB; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#if !defined(__STDC__) && !defined(const)
+#define const
+#endif
+
+/*
+ * Structure of an opcode table entry.
+ */
+
+/* There are two kinds of delay slot nullification: normal which is
+ * controled by the nullification bit, and conditional, which depends
+ * on the direction of the branch and its success or failure.
+ *
+ * NONE is unfortunately #defined in the hiux system include files.
+ * #undef it away.
+ */
+#undef NONE
+struct pa_opcode
+{
+ const char *name;
+ unsigned long int match; /* Bits that must be set... */
+ unsigned long int mask; /* ... in these bits. */
+ char *args;
+ enum pa_arch arch;
+ char flags;
+};
+
+/* Enable/disable strict syntax checking. Not currently used, but will
+ be necessary for PA2.0 support in the future. */
+#define FLAG_STRICT 0x1
+
+/*
+ All hppa opcodes are 32 bits.
+
+ The match component is a mask saying which bits must match a
+ particular opcode in order for an instruction to be an instance
+ of that opcode.
+
+ The args component is a string containing one character for each operand of
+ the instruction. Characters used as a prefix allow any second character to
+ be used without conflicting with the main operand characters.
+
+ Bit positions in this description follow HP usage of lsb = 31,
+ "at" is lsb of field.
+
+ In the args field, the following characters must match exactly:
+
+ '+,() '
+
+ In the args field, the following characters are unused:
+
+ ' " - / 34 6789:; '
+ '@ C M [\] '
+ '` e g } '
+
+ Here are all the characters:
+
+ ' !"#$%&'()*+-,./0123456789:;<=>?'
+ '@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'
+ '`abcdefghijklmnopqrstuvwxyz{|}~ '
+
+Kinds of operands:
+ x integer register field at 15.
+ b integer register field at 10.
+ t integer register field at 31.
+ a integer register field at 10 and 15 (for PERMH)
+ 5 5 bit immediate at 15.
+ s 2 bit space specifier at 17.
+ S 3 bit space specifier at 18.
+ V 5 bit immediate value at 31
+ i 11 bit immediate value at 31
+ j 14 bit immediate value at 31
+ k 21 bit immediate value at 31
+ l 16 bit immediate value at 31 (wide mode only, unusual encoding).
+ n nullification for branch instructions
+ N nullification for spop and copr instructions
+ w 12 bit branch displacement
+ W 17 bit branch displacement (PC relative)
+ X 22 bit branch displacement (PC relative)
+ z 17 bit branch displacement (just a number, not an address)
+
+Also these:
+
+ . 2 bit shift amount at 25
+ * 4 bit shift amount at 25
+ p 5 bit shift count at 26 (to support the SHD instruction) encoded as
+ 31-p
+ ~ 6 bit shift count at 20,22:26 encoded as 63-~.
+ P 5 bit bit position at 26
+ q 6 bit bit position at 20,22:26
+ T 5 bit field length at 31 (encoded as 32-T)
+ % 6 bit field length at 23,27:31 (variable extract/deposit)
+ | 6 bit field length at 19,27:31 (fixed extract/deposit)
+ A 13 bit immediate at 18 (to support the BREAK instruction)
+ ^ like b, but describes a control register
+ ! sar (cr11) register
+ D 26 bit immediate at 31 (to support the DIAG instruction)
+ $ 9 bit immediate at 28 (to support POPBTS)
+
+ v 3 bit Special Function Unit identifier at 25
+ O 20 bit Special Function Unit operation split between 15 bits at 20
+ and 5 bits at 31
+ o 15 bit Special Function Unit operation at 20
+ 2 22 bit Special Function Unit operation split between 17 bits at 20
+ and 5 bits at 31
+ 1 15 bit Special Function Unit operation split between 10 bits at 20
+ and 5 bits at 31
+ 0 10 bit Special Function Unit operation split between 5 bits at 20
+ and 5 bits at 31
+ u 3 bit coprocessor unit identifier at 25
+ F Source Floating Point Operand Format Completer encoded 2 bits at 20
+ I Source Floating Point Operand Format Completer encoded 1 bits at 20
+ (for 0xe format FP instructions)
+ G Destination Floating Point Operand Format Completer encoded 2 bits at 18
+ H Floating Point Operand Format at 26 for 'fmpyadd' and 'fmpysub'
+ (very similar to 'F')
+
+ r 5 bit immediate value at 31 (for the break instruction)
+ (very similar to V above, except the value is unsigned instead of
+ low_sign_ext)
+ R 5 bit immediate value at 15 (for the ssm, rsm, probei instructions)
+ (same as r above, except the value is in a different location)
+ U 10 bit immediate value at 15 (for SSM, RSM on pa2.0)
+ Q 5 bit immediate value at 10 (a bit position specified in
+ the bb instruction. It's the same as r above, except the
+ value is in a different location)
+ B 5 bit immediate value at 10 (a bit position specified in
+ the bb instruction. Similar to Q, but 64 bit handling is
+ different.
+ Z %r1 -- implicit target of addil instruction.
+ L ,%r2 completer for new syntax branch
+ { Source format completer for fcnv
+ _ Destination format completer for fcnv
+ h cbit for fcmp
+ = gfx tests for ftest
+ d 14 bit offset for single precision FP long load/store.
+ # 14 bit offset for double precision FP load long/store.
+ J Yet another 14 bit offset for load/store with ma,mb completers.
+ K Yet another 14 bit offset for load/store with ma,mb completers.
+ y 16 bit offset for word aligned load/store (PA2.0 wide).
+ & 16 bit offset for dword aligned load/store (PA2.0 wide).
+ < 16 bit offset for load/store with ma,mb completers (PA2.0 wide).
+ > 16 bit offset for load/store with ma,mb completers (PA2.0 wide).
+ Y %sr0,%r31 -- implicit target of be,l instruction.
+ @ implicit immediate value of 0
+
+Completer operands all have 'c' as the prefix:
+
+ cx indexed load completer.
+ cX indexed load completer. Like cx, but emits a space after
+ in disassembler.
+ cm short load and store completer.
+ cM short load and store completer. Like cm, but emits a space
+ after in disassembler.
+ cq long load and store completer (like cm, but inserted into a
+ different location in the target instruction).
+ cs store bytes short completer.
+ cA store bytes short completer. Like cs, but emits a space
+ after in disassembler.
+ ce long load/store completer for LDW/STW with a different encoding than the
+ others
+ cc load cache control hint
+ cd load and clear cache control hint
+ cC store cache control hint
+ co ordered access
+
+ cp branch link and push completer
+ cP branch pop completer
+ cl branch link completer
+ cg branch gate completer
+
+ cw read/write completer for PROBE
+ cW wide completer for MFCTL
+ cL local processor completer for cache control
+ cZ System Control Completer (to support LPA, LHA, etc.)
+
+ ci correction completer for DCOR
+ ca add completer
+ cy 32 bit add carry completer
+ cY 64 bit add carry completer
+ cv signed overflow trap completer
+ ct trap on condition completer for ADDI, SUB
+ cT trap on condition completer for UADDCM
+ cb 32 bit borrow completer for SUB
+ cB 64 bit borrow completer for SUB
+
+ ch left/right half completer
+ cH signed/unsigned saturation completer
+ cS signed/unsigned completer at 21
+ cz zero/sign extension completer.
+ c* permutation completer
+
+Condition operands all have '?' as the prefix:
+
+ ?f Floating point compare conditions (encoded as 5 bits at 31)
+
+ ?a add conditions
+ ?A 64 bit add conditions
+ ?@ add branch conditions followed by nullify
+ ?d non-negated add branch conditions
+ ?D negated add branch conditions
+ ?w wide mode non-negated add branch conditions
+ ?W wide mode negated add branch conditions
+
+ ?s compare/subtract conditions
+ ?S 64 bit compare/subtract conditions
+ ?t non-negated compare and branch conditions
+ ?n 32 bit compare and branch conditions followed by nullify
+ ?N 64 bit compare and branch conditions followed by nullify
+ ?Q 64 bit compare and branch conditions for CMPIB instruction
+
+ ?l logical conditions
+ ?L 64 bit logical conditions
+
+ ?b branch on bit conditions
+ ?B 64 bit branch on bit conditions
+
+ ?x shift/extract/deposit conditions
+ ?X 64 bit shift/extract/deposit conditions
+ ?y shift/extract/deposit conditions followed by nullify for conditional
+ branches
+
+ ?u unit conditions
+ ?U 64 bit unit conditions
+
+Floating point registers all have 'f' as a prefix:
+
+ ft target register at 31
+ fT target register with L/R halves at 31
+ fa operand 1 register at 10
+ fA operand 1 register with L/R halves at 10
+ fX Same as fA, except prints a space before register during disasm
+ fb operand 2 register at 15
+ fB operand 2 register with L/R halves at 15
+ fC operand 3 register with L/R halves at 16:18,21:23
+ fe Like fT, but encoding is different.
+ fE Same as fe, except prints a space before register during disasm.
+ fx target register at 15 (only for PA 2.0 long format FLDD/FSTD).
+
+Float registers for fmpyadd and fmpysub:
+
+ fi mult operand 1 register at 10
+ fj mult operand 2 register at 15
+ fk mult target register at 20
+ fl add/sub operand register at 25
+ fm add/sub target register at 31
+
+*/
+
+
+#if 0
+/* List of characters not to put a space after. Note that
+ "," is included, as the "spopN" operations use literal
+ commas in their completer sections. */
+static const char *const completer_chars = ",CcY<>?!@+&U~FfGHINnOoZMadu|/=0123%e$m}";
+#endif
+
+/* The order of the opcodes in this table is significant:
+
+ * The assembler requires that all instances of the same mnemonic must be
+ consecutive. If they aren't, the assembler will bomb at runtime.
+
+ * The disassembler should not care about the order of the opcodes. */
+
+static const struct pa_opcode pa_opcodes[] =
+{
+
+/* Pseudo-instructions. */
+
+{ "ldi", 0x34000000, 0xffe00000, "l,x", pa20w, 0},/* ldo val(r0),r */
+{ "ldi", 0x34000000, 0xffe0c000, "j,x", pa10, 0},/* ldo val(r0),r */
+
+{ "cmpib", 0xec000000, 0xfc000000, "?Qn5,b,w", pa20, FLAG_STRICT},
+{ "cmpib", 0x84000000, 0xf4000000, "?nn5,b,w", pa10, FLAG_STRICT},
+{ "comib", 0x84000000, 0xfc000000, "?nn5,b,w", pa10, 0}, /* comib{tf}*/
+/* This entry is for the disassembler only. It will never be used by
+ assembler. */
+{ "comib", 0x8c000000, 0xfc000000, "?nn5,b,w", pa10, 0}, /* comib{tf}*/
+{ "cmpb", 0x9c000000, 0xdc000000, "?Nnx,b,w", pa20, FLAG_STRICT},
+{ "cmpb", 0x80000000, 0xf4000000, "?nnx,b,w", pa10, FLAG_STRICT},
+{ "comb", 0x80000000, 0xfc000000, "?nnx,b,w", pa10, 0}, /* comb{tf} */
+/* This entry is for the disassembler only. It will never be used by
+ assembler. */
+{ "comb", 0x88000000, 0xfc000000, "?nnx,b,w", pa10, 0}, /* comb{tf} */
+{ "addb", 0xa0000000, 0xf4000000, "?Wnx,b,w", pa20w, FLAG_STRICT},
+{ "addb", 0xa0000000, 0xfc000000, "?@nx,b,w", pa10, 0}, /* addb{tf} */
+/* This entry is for the disassembler only. It will never be used by
+ assembler. */
+{ "addb", 0xa8000000, 0xfc000000, "?@nx,b,w", pa10, 0},
+{ "addib", 0xa4000000, 0xf4000000, "?Wn5,b,w", pa20w, FLAG_STRICT},
+{ "addib", 0xa4000000, 0xfc000000, "?@n5,b,w", pa10, 0}, /* addib{tf}*/
+/* This entry is for the disassembler only. It will never be used by
+ assembler. */
+{ "addib", 0xac000000, 0xfc000000, "?@n5,b,w", pa10, 0}, /* addib{tf}*/
+{ "nop", 0x08000240, 0xffffffff, "", pa10, 0}, /* or 0,0,0 */
+{ "copy", 0x08000240, 0xffe0ffe0, "x,t", pa10, 0}, /* or r,0,t */
+{ "mtsar", 0x01601840, 0xffe0ffff, "x", pa10, 0}, /* mtctl r,cr11 */
+
+/* Loads and Stores for integer registers. */
+
+{ "ldd", 0x0c0010e0, 0xfc1f33e0, "cocc@(s,b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x0c0010e0, 0xfc1f33e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x0c0000c0, 0xfc0013c0, "cxccx(s,b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x0c0000c0, 0xfc0013c0, "cxccx(b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x0c0010c0, 0xfc0013c0, "cmcc5(s,b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x0c0010c0, 0xfc0013c0, "cmcc5(b),t", pa20, FLAG_STRICT},
+{ "ldd", 0x50000000, 0xfc000002, "cq&(b),x", pa20w, FLAG_STRICT},
+{ "ldd", 0x50000000, 0xfc000002, "cq#(b),x", pa20, FLAG_STRICT},
+{ "ldw", 0x0c000080, 0xfc0013c0, "cxccx(s,b),t", pa10, FLAG_STRICT},
+{ "ldw", 0x0c000080, 0xfc0013c0, "cxccx(b),t", pa10, FLAG_STRICT},
+{ "ldw", 0x0c001080, 0xfc0013c0, "cmcc5(s,b),t", pa10, FLAG_STRICT},
+{ "ldw", 0x0c001080, 0xfc0013c0, "cmcc5(b),t", pa10, FLAG_STRICT},
+{ "ldw", 0x0c0010a0, 0xfc1f33e0, "cocc@(s,b),t", pa20, FLAG_STRICT},
+{ "ldw", 0x0c0010a0, 0xfc1f33e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldw", 0x4c000000, 0xfc000000, "ce<(b),x", pa20w, FLAG_STRICT},
+{ "ldw", 0x4c000000, 0xfc000000, "ceJ(s,b),x", pa10, FLAG_STRICT},
+{ "ldw", 0x4c000000, 0xfc000000, "ceJ(b),x", pa10, FLAG_STRICT},
+{ "ldw", 0x5c000004, 0xfc000006, "ce>(b),x", pa20w, FLAG_STRICT},
+{ "ldw", 0x5c000004, 0xfc000006, "ceK(s,b),x", pa20, FLAG_STRICT},
+{ "ldw", 0x5c000004, 0xfc000006, "ceK(b),x", pa20, FLAG_STRICT},
+{ "ldw", 0x48000000, 0xfc000000, "l(b),x", pa20w, FLAG_STRICT},
+{ "ldw", 0x48000000, 0xfc000000, "j(s,b),x", pa10, 0},
+{ "ldw", 0x48000000, 0xfc000000, "j(b),x", pa10, 0},
+{ "ldh", 0x0c000040, 0xfc0013c0, "cxccx(s,b),t", pa10, FLAG_STRICT},
+{ "ldh", 0x0c000040, 0xfc0013c0, "cxccx(b),t", pa10, FLAG_STRICT},
+{ "ldh", 0x0c001040, 0xfc0013c0, "cmcc5(s,b),t", pa10, FLAG_STRICT},
+{ "ldh", 0x0c001040, 0xfc0013c0, "cmcc5(b),t", pa10, FLAG_STRICT},
+{ "ldh", 0x0c001060, 0xfc1f33e0, "cocc@(s,b),t", pa20, FLAG_STRICT},
+{ "ldh", 0x0c001060, 0xfc1f33e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldh", 0x44000000, 0xfc000000, "l(b),x", pa20w, FLAG_STRICT},
+{ "ldh", 0x44000000, 0xfc000000, "j(s,b),x", pa10, 0},
+{ "ldh", 0x44000000, 0xfc000000, "j(b),x", pa10, 0},
+{ "ldb", 0x0c000000, 0xfc0013c0, "cxccx(s,b),t", pa10, FLAG_STRICT},
+{ "ldb", 0x0c000000, 0xfc0013c0, "cxccx(b),t", pa10, FLAG_STRICT},
+{ "ldb", 0x0c001000, 0xfc0013c0, "cmcc5(s,b),t", pa10, FLAG_STRICT},
+{ "ldb", 0x0c001000, 0xfc0013c0, "cmcc5(b),t", pa10, FLAG_STRICT},
+{ "ldb", 0x0c001020, 0xfc1f33e0, "cocc@(s,b),t", pa20, FLAG_STRICT},
+{ "ldb", 0x0c001020, 0xfc1f33e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldb", 0x40000000, 0xfc000000, "l(b),x", pa20w, FLAG_STRICT},
+{ "ldb", 0x40000000, 0xfc000000, "j(s,b),x", pa10, 0},
+{ "ldb", 0x40000000, 0xfc000000, "j(b),x", pa10, 0},
+{ "std", 0x0c0012e0, 0xfc0033ff, "cocCx,@(s,b)", pa20, FLAG_STRICT},
+{ "std", 0x0c0012e0, 0xfc0033ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "std", 0x0c0012c0, 0xfc0013c0, "cmcCx,V(s,b)", pa20, FLAG_STRICT},
+{ "std", 0x0c0012c0, 0xfc0013c0, "cmcCx,V(b)", pa20, FLAG_STRICT},
+{ "std", 0x70000000, 0xfc000002, "cqx,&(b)", pa20w, FLAG_STRICT},
+{ "std", 0x70000000, 0xfc000002, "cqx,#(b)", pa20, FLAG_STRICT},
+{ "stw", 0x0c001280, 0xfc0013c0, "cmcCx,V(s,b)", pa10, FLAG_STRICT},
+{ "stw", 0x0c001280, 0xfc0013c0, "cmcCx,V(b)", pa10, FLAG_STRICT},
+{ "stw", 0x0c0012a0, 0xfc0013ff, "cocCx,@(s,b)", pa20, FLAG_STRICT},
+{ "stw", 0x0c0012a0, 0xfc0013ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "stw", 0x6c000000, 0xfc000000, "cex,<(b)", pa20w, FLAG_STRICT},
+{ "stw", 0x6c000000, 0xfc000000, "cex,J(s,b)", pa10, FLAG_STRICT},
+{ "stw", 0x6c000000, 0xfc000000, "cex,J(b)", pa10, FLAG_STRICT},
+{ "stw", 0x7c000004, 0xfc000006, "cex,>(b)", pa20w, FLAG_STRICT},
+{ "stw", 0x7c000004, 0xfc000006, "cex,K(s,b)", pa20, FLAG_STRICT},
+{ "stw", 0x7c000004, 0xfc000006, "cex,K(b)", pa20, FLAG_STRICT},
+{ "stw", 0x68000000, 0xfc000000, "x,l(b)", pa20w, FLAG_STRICT},
+{ "stw", 0x68000000, 0xfc000000, "x,j(s,b)", pa10, 0},
+{ "stw", 0x68000000, 0xfc000000, "x,j(b)", pa10, 0},
+{ "sth", 0x0c001240, 0xfc0013c0, "cmcCx,V(s,b)", pa10, FLAG_STRICT},
+{ "sth", 0x0c001240, 0xfc0013c0, "cmcCx,V(b)", pa10, FLAG_STRICT},
+{ "sth", 0x0c001260, 0xfc0033ff, "cocCx,@(s,b)", pa20, FLAG_STRICT},
+{ "sth", 0x0c001260, 0xfc0033ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "sth", 0x64000000, 0xfc000000, "x,l(b)", pa20w, FLAG_STRICT},
+{ "sth", 0x64000000, 0xfc000000, "x,j(s,b)", pa10, 0},
+{ "sth", 0x64000000, 0xfc000000, "x,j(b)", pa10, 0},
+{ "stb", 0x0c001200, 0xfc0013c0, "cmcCx,V(s,b)", pa10, FLAG_STRICT},
+{ "stb", 0x0c001200, 0xfc0013c0, "cmcCx,V(b)", pa10, FLAG_STRICT},
+{ "stb", 0x0c001220, 0xfc0033ff, "cocCx,@(s,b)", pa20, FLAG_STRICT},
+{ "stb", 0x0c001220, 0xfc0033ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "stb", 0x60000000, 0xfc000000, "x,l(b)", pa20w, FLAG_STRICT},
+{ "stb", 0x60000000, 0xfc000000, "x,j(s,b)", pa10, 0},
+{ "stb", 0x60000000, 0xfc000000, "x,j(b)", pa10, 0},
+{ "ldwm", 0x4c000000, 0xfc000000, "j(s,b),x", pa10, 0},
+{ "ldwm", 0x4c000000, 0xfc000000, "j(b),x", pa10, 0},
+{ "stwm", 0x6c000000, 0xfc000000, "x,j(s,b)", pa10, 0},
+{ "stwm", 0x6c000000, 0xfc000000, "x,j(b)", pa10, 0},
+{ "ldwx", 0x0c000080, 0xfc001fc0, "cXx(s,b),t", pa10, 0},
+{ "ldwx", 0x0c000080, 0xfc001fc0, "cXx(b),t", pa10, 0},
+{ "ldhx", 0x0c000040, 0xfc001fc0, "cXx(s,b),t", pa10, 0},
+{ "ldhx", 0x0c000040, 0xfc001fc0, "cXx(b),t", pa10, 0},
+{ "ldbx", 0x0c000000, 0xfc001fc0, "cXx(s,b),t", pa10, 0},
+{ "ldbx", 0x0c000000, 0xfc001fc0, "cXx(b),t", pa10, 0},
+{ "ldwa", 0x0c000180, 0xfc00d3c0, "cxccx(b),t", pa10, FLAG_STRICT},
+{ "ldwa", 0x0c001180, 0xfc00d3c0, "cmcc5(b),t", pa10, FLAG_STRICT},
+{ "ldwa", 0x0c0011a0, 0xfc1ff3e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldcw", 0x0c0001c0, 0xfc0013c0, "cxcdx(s,b),t", pa10, FLAG_STRICT},
+{ "ldcw", 0x0c0001c0, 0xfc0013c0, "cxcdx(b),t", pa10, FLAG_STRICT},
+{ "ldcw", 0x0c0011c0, 0xfc0013c0, "cmcd5(s,b),t", pa10, FLAG_STRICT},
+{ "ldcw", 0x0c0011c0, 0xfc0013c0, "cmcd5(b),t", pa10, FLAG_STRICT},
+{ "stwa", 0x0c001380, 0xfc00d3c0, "cmcCx,V(b)", pa10, FLAG_STRICT},
+{ "stwa", 0x0c0013a0, 0xfc00d3ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "stby", 0x0c001300, 0xfc0013c0, "cscCx,V(s,b)", pa10, FLAG_STRICT},
+{ "stby", 0x0c001300, 0xfc0013c0, "cscCx,V(b)", pa10, FLAG_STRICT},
+{ "ldda", 0x0c000100, 0xfc00d3c0, "cxccx(b),t", pa20, FLAG_STRICT},
+{ "ldda", 0x0c001100, 0xfc00d3c0, "cmcc5(b),t", pa20, FLAG_STRICT},
+{ "ldda", 0x0c001120, 0xfc1ff3e0, "cocc@(b),t", pa20, FLAG_STRICT},
+{ "ldcd", 0x0c000140, 0xfc0013c0, "cxcdx(s,b),t", pa20, FLAG_STRICT},
+{ "ldcd", 0x0c000140, 0xfc0013c0, "cxcdx(b),t", pa20, FLAG_STRICT},
+{ "ldcd", 0x0c001140, 0xfc0013c0, "cmcd5(s,b),t", pa20, FLAG_STRICT},
+{ "ldcd", 0x0c001140, 0xfc0013c0, "cmcd5(b),t", pa20, FLAG_STRICT},
+{ "stda", 0x0c0013e0, 0xfc0033ff, "cocCx,@(s,b)", pa20, FLAG_STRICT},
+{ "stda", 0x0c0013e0, 0xfc0033ff, "cocCx,@(b)", pa20, FLAG_STRICT},
+{ "stda", 0x0c0013c0, 0xfc0013c0, "cmcCx,V(s,b)", pa20, FLAG_STRICT},
+{ "stda", 0x0c0013c0, 0xfc0013c0, "cmcCx,V(b)", pa20, FLAG_STRICT},
+{ "ldwax", 0x0c000180, 0xfc00dfc0, "cXx(b),t", pa10, 0},
+{ "ldcwx", 0x0c0001c0, 0xfc001fc0, "cXx(s,b),t", pa10, 0},
+{ "ldcwx", 0x0c0001c0, 0xfc001fc0, "cXx(b),t", pa10, 0},
+{ "ldws", 0x0c001080, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
+{ "ldws", 0x0c001080, 0xfc001fc0, "cM5(b),t", pa10, 0},
+{ "ldhs", 0x0c001040, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
+{ "ldhs", 0x0c001040, 0xfc001fc0, "cM5(b),t", pa10, 0},
+{ "ldbs", 0x0c001000, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
+{ "ldbs", 0x0c001000, 0xfc001fc0, "cM5(b),t", pa10, 0},
+{ "ldwas", 0x0c001180, 0xfc00dfc0, "cM5(b),t", pa10, 0},
+{ "ldcws", 0x0c0011c0, 0xfc001fc0, "cM5(s,b),t", pa10, 0},
+{ "ldcws", 0x0c0011c0, 0xfc001fc0, "cM5(b),t", pa10, 0},
+{ "stws", 0x0c001280, 0xfc001fc0, "cMx,V(s,b)", pa10, 0},
+{ "stws", 0x0c001280, 0xfc001fc0, "cMx,V(b)", pa10, 0},
+{ "sths", 0x0c001240, 0xfc001fc0, "cMx,V(s,b)", pa10, 0},
+{ "sths", 0x0c001240, 0xfc001fc0, "cMx,V(b)", pa10, 0},
+{ "stbs", 0x0c001200, 0xfc001fc0, "cMx,V(s,b)", pa10, 0},
+{ "stbs", 0x0c001200, 0xfc001fc0, "cMx,V(b)", pa10, 0},
+{ "stwas", 0x0c001380, 0xfc00dfc0, "cMx,V(b)", pa10, 0},
+{ "stdby", 0x0c001340, 0xfc0013c0, "cscCx,V(s,b)", pa20, FLAG_STRICT},
+{ "stdby", 0x0c001340, 0xfc0013c0, "cscCx,V(b)", pa20, FLAG_STRICT},
+{ "stbys", 0x0c001300, 0xfc001fc0, "cAx,V(s,b)", pa10, 0},
+{ "stbys", 0x0c001300, 0xfc001fc0, "cAx,V(b)", pa10, 0},
+
+/* Immediate instructions. */
+{ "ldo", 0x34000000, 0xfc000000, "l(b),x", pa20w, 0},
+{ "ldo", 0x34000000, 0xfc00c000, "j(b),x", pa10, 0},
+{ "ldil", 0x20000000, 0xfc000000, "k,b", pa10, 0},
+{ "addil", 0x28000000, 0xfc000000, "k,b,Z", pa10, 0},
+{ "addil", 0x28000000, 0xfc000000, "k,b", pa10, 0},
+
+/* Branching instructions. */
+{ "b", 0xe8008000, 0xfc00e000, "cpnXL", pa20, FLAG_STRICT},
+{ "b", 0xe800a000, 0xfc00e000, "clnXL", pa20, FLAG_STRICT},
+{ "b", 0xe8000000, 0xfc00e000, "clnW,b", pa10, FLAG_STRICT},
+{ "b", 0xe8002000, 0xfc00e000, "cgnW,b", pa10, FLAG_STRICT},
+{ "b", 0xe8000000, 0xffe0e000, "nW", pa10, 0}, /* b,l foo,r0 */
+{ "bl", 0xe8000000, 0xfc00e000, "nW,b", pa10, 0},
+{ "gate", 0xe8002000, 0xfc00e000, "nW,b", pa10, 0},
+{ "blr", 0xe8004000, 0xfc00e001, "nx,b", pa10, 0},
+{ "bv", 0xe800c000, 0xfc00fffd, "nx(b)", pa10, 0},
+{ "bv", 0xe800c000, 0xfc00fffd, "n(b)", pa10, 0},
+{ "bve", 0xe800f001, 0xfc1ffffd, "cpn(b)L", pa20, FLAG_STRICT},
+{ "bve", 0xe800f000, 0xfc1ffffd, "cln(b)L", pa20, FLAG_STRICT},
+{ "bve", 0xe800d001, 0xfc1ffffd, "cPn(b)", pa20, FLAG_STRICT},
+{ "bve", 0xe800d000, 0xfc1ffffd, "n(b)", pa20, FLAG_STRICT},
+{ "be", 0xe4000000, 0xfc000000, "clnz(S,b),Y", pa10, FLAG_STRICT},
+{ "be", 0xe4000000, 0xfc000000, "clnz(b),Y", pa10, FLAG_STRICT},
+{ "be", 0xe0000000, 0xfc000000, "nz(S,b)", pa10, 0},
+{ "be", 0xe0000000, 0xfc000000, "nz(b)", pa10, 0},
+{ "ble", 0xe4000000, 0xfc000000, "nz(S,b)", pa10, 0},
+{ "movb", 0xc8000000, 0xfc000000, "?ynx,b,w", pa10, 0},
+{ "movib", 0xcc000000, 0xfc000000, "?yn5,b,w", pa10, 0},
+{ "combt", 0x80000000, 0xfc000000, "?tnx,b,w", pa10, 0},
+{ "combf", 0x88000000, 0xfc000000, "?tnx,b,w", pa10, 0},
+{ "comibt", 0x84000000, 0xfc000000, "?tn5,b,w", pa10, 0},
+{ "comibf", 0x8c000000, 0xfc000000, "?tn5,b,w", pa10, 0},
+{ "addbt", 0xa0000000, 0xfc000000, "?dnx,b,w", pa10, 0},
+{ "addbf", 0xa8000000, 0xfc000000, "?dnx,b,w", pa10, 0},
+{ "addibt", 0xa4000000, 0xfc000000, "?dn5,b,w", pa10, 0},
+{ "addibf", 0xac000000, 0xfc000000, "?dn5,b,w", pa10, 0},
+{ "bb", 0xc0004000, 0xffe06000, "?bnx,!,w", pa10, FLAG_STRICT},
+{ "bb", 0xc4004000, 0xfc004000, "?bnx,Q,w", pa10, 0},
+{ "bb", 0xc0006000, 0xffe06000, "?Bnx,!,w", pa20, FLAG_STRICT},
+{ "bb", 0xc4004000, 0xfc004000, "?Bnx,B,w", pa20, FLAG_STRICT},
+{ "bvb", 0xc0004000, 0xffe04000, "?bnx,w", pa10, 0},
+{ "clrbts", 0xe8004005, 0xffffffff, "", pa20, FLAG_STRICT},
+{ "popbts", 0xe8004005, 0xfffff007, "$", pa20, FLAG_STRICT},
+{ "pushnom", 0xe8004001, 0xffffffff, "", pa20, FLAG_STRICT},
+{ "pushbts", 0xe8004001, 0xffe0ffff, "x", pa20, FLAG_STRICT},
+
+/* Computation Instructions. */
+
+{ "cmpclr", 0x080008a0, 0xfc000fe0, "?Sx,b,t", pa20, FLAG_STRICT},
+{ "cmpclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa10, FLAG_STRICT},
+{ "comclr", 0x08000880, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "or", 0x08000260, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
+{ "or", 0x08000240, 0xfc000fe0, "?lx,b,t", pa10, 0},
+{ "xor", 0x080002a0, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
+{ "xor", 0x08000280, 0xfc000fe0, "?lx,b,t", pa10, 0},
+{ "and", 0x08000220, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
+{ "and", 0x08000200, 0xfc000fe0, "?lx,b,t", pa10, 0},
+{ "andcm", 0x08000020, 0xfc000fe0, "?Lx,b,t", pa20, FLAG_STRICT},
+{ "andcm", 0x08000000, 0xfc000fe0, "?lx,b,t", pa10, 0},
+{ "uxor", 0x080003a0, 0xfc000fe0, "?Ux,b,t", pa20, FLAG_STRICT},
+{ "uxor", 0x08000380, 0xfc000fe0, "?ux,b,t", pa10, 0},
+{ "uaddcm", 0x080009a0, 0xfc000fa0, "cT?Ux,b,t", pa20, FLAG_STRICT},
+{ "uaddcm", 0x08000980, 0xfc000fa0, "cT?ux,b,t", pa10, FLAG_STRICT},
+{ "uaddcm", 0x08000980, 0xfc000fe0, "?ux,b,t", pa10, 0},
+{ "uaddcmt", 0x080009c0, 0xfc000fe0, "?ux,b,t", pa10, 0},
+{ "dcor", 0x08000ba0, 0xfc1f0fa0, "ci?Ub,t", pa20, FLAG_STRICT},
+{ "dcor", 0x08000b80, 0xfc1f0fa0, "ci?ub,t", pa10, FLAG_STRICT},
+{ "dcor", 0x08000b80, 0xfc1f0fe0, "?ub,t", pa10, 0},
+{ "idcor", 0x08000bc0, 0xfc1f0fe0, "?ub,t", pa10, 0},
+{ "addi", 0xb0000000, 0xfc000000, "ct?ai,b,x", pa10, FLAG_STRICT},
+{ "addi", 0xb4000000, 0xfc000000, "cv?ai,b,x", pa10, FLAG_STRICT},
+{ "addi", 0xb4000000, 0xfc000800, "?ai,b,x", pa10, 0},
+{ "addio", 0xb4000800, 0xfc000800, "?ai,b,x", pa10, 0},
+{ "addit", 0xb0000000, 0xfc000800, "?ai,b,x", pa10, 0},
+{ "addito", 0xb0000800, 0xfc000800, "?ai,b,x", pa10, 0},
+{ "add", 0x08000720, 0xfc0007e0, "cY?Ax,b,t", pa20, FLAG_STRICT},
+{ "add", 0x08000700, 0xfc0007e0, "cy?ax,b,t", pa10, FLAG_STRICT},
+{ "add", 0x08000220, 0xfc0003e0, "ca?Ax,b,t", pa20, FLAG_STRICT},
+{ "add", 0x08000200, 0xfc0003e0, "ca?ax,b,t", pa10, FLAG_STRICT},
+{ "add", 0x08000600, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "addl", 0x08000a00, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "addo", 0x08000e00, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "addc", 0x08000700, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "addco", 0x08000f00, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sub", 0x080004e0, 0xfc0007e0, "ct?Sx,b,t", pa20, FLAG_STRICT},
+{ "sub", 0x080004c0, 0xfc0007e0, "ct?sx,b,t", pa10, FLAG_STRICT},
+{ "sub", 0x08000520, 0xfc0007e0, "cB?Sx,b,t", pa20, FLAG_STRICT},
+{ "sub", 0x08000500, 0xfc0007e0, "cb?sx,b,t", pa10, FLAG_STRICT},
+{ "sub", 0x08000420, 0xfc0007e0, "cv?Sx,b,t", pa20, FLAG_STRICT},
+{ "sub", 0x08000400, 0xfc0007e0, "cv?sx,b,t", pa10, FLAG_STRICT},
+{ "sub", 0x08000400, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subo", 0x08000c00, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subb", 0x08000500, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subbo", 0x08000d00, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subt", 0x080004c0, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subto", 0x08000cc0, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "ds", 0x08000440, 0xfc000fe0, "?sx,b,t", pa10, 0},
+{ "subi", 0x94000000, 0xfc000000, "cv?si,b,x", pa10, FLAG_STRICT},
+{ "subi", 0x94000000, 0xfc000800, "?si,b,x", pa10, 0},
+{ "subio", 0x94000800, 0xfc000800, "?si,b,x", pa10, 0},
+{ "cmpiclr", 0x90000800, 0xfc000800, "?Si,b,x", pa20, FLAG_STRICT},
+{ "cmpiclr", 0x90000000, 0xfc000800, "?si,b,x", pa10, FLAG_STRICT},
+{ "comiclr", 0x90000000, 0xfc000800, "?si,b,x", pa10, 0},
+{ "shladd", 0x08000220, 0xfc000320, "ca?Ax,.,b,t", pa20, FLAG_STRICT},
+{ "shladd", 0x08000200, 0xfc000320, "ca?ax,.,b,t", pa10, FLAG_STRICT},
+{ "sh1add", 0x08000640, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh1addl", 0x08000a40, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh1addo", 0x08000e40, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh2add", 0x08000680, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh2addl", 0x08000a80, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh2addo", 0x08000e80, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh3add", 0x080006c0, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh3addl", 0x08000ac0, 0xfc000fe0, "?ax,b,t", pa10, 0},
+{ "sh3addo", 0x08000ec0, 0xfc000fe0, "?ax,b,t", pa10, 0},
+
+/* Subword Operation Instructions. */
+
+{ "hadd", 0x08000300, 0xfc00ff20, "cHx,b,t", pa20, FLAG_STRICT},
+{ "havg", 0x080002c0, 0xfc00ffe0, "x,b,t", pa20, FLAG_STRICT},
+{ "hshl", 0xf8008800, 0xffe0fc20, "x,*,t", pa20, FLAG_STRICT},
+{ "hshladd", 0x08000700, 0xfc00ff20, "x,.,b,t", pa20, FLAG_STRICT},
+{ "hshr", 0xf800c800, 0xfc1ff820, "cSb,*,t", pa20, FLAG_STRICT},
+{ "hshradd", 0x08000500, 0xfc00ff20, "x,.,b,t", pa20, FLAG_STRICT},
+{ "hsub", 0x08000100, 0xfc00ff20, "cHx,b,t", pa20, FLAG_STRICT},
+{ "mixh", 0xf8008400, 0xfc009fe0, "chx,b,t", pa20, FLAG_STRICT},
+{ "mixw", 0xf8008000, 0xfc009fe0, "chx,b,t", pa20, FLAG_STRICT},
+{ "permh", 0xf8000000, 0xfc009020, "c*a,t", pa20, FLAG_STRICT},
+
+
+/* Extract and Deposit Instructions. */
+
+{ "shrpd", 0xd0000200, 0xfc001fe0, "?Xx,b,!,t", pa20, FLAG_STRICT},
+{ "shrpd", 0xd0000400, 0xfc001400, "?Xx,b,~,t", pa20, FLAG_STRICT},
+{ "shrpw", 0xd0000000, 0xfc001fe0, "?xx,b,!,t", pa10, FLAG_STRICT},
+{ "shrpw", 0xd0000800, 0xfc001c00, "?xx,b,p,t", pa10, FLAG_STRICT},
+{ "vshd", 0xd0000000, 0xfc001fe0, "?xx,b,t", pa10, 0},
+{ "shd", 0xd0000800, 0xfc001c00, "?xx,b,p,t", pa10, 0},
+{ "extrd", 0xd0001200, 0xfc001ae0, "cS?Xb,!,%,x", pa20, FLAG_STRICT},
+{ "extrd", 0xd8000000, 0xfc000000, "cS?Xb,q,|,x", pa20, FLAG_STRICT},
+{ "extrw", 0xd0001000, 0xfc001be0, "cS?xb,!,T,x", pa10, FLAG_STRICT},
+{ "extrw", 0xd0001800, 0xfc001800, "cS?xb,P,T,x", pa10, FLAG_STRICT},
+{ "vextru", 0xd0001000, 0xfc001fe0, "?xb,T,x", pa10, 0},
+{ "vextrs", 0xd0001400, 0xfc001fe0, "?xb,T,x", pa10, 0},
+{ "extru", 0xd0001800, 0xfc001c00, "?xb,P,T,x", pa10, 0},
+{ "extrs", 0xd0001c00, 0xfc001c00, "?xb,P,T,x", pa10, 0},
+{ "depd", 0xd4000200, 0xfc001ae0, "cz?Xx,!,%,b", pa20, FLAG_STRICT},
+{ "depd", 0xf0000000, 0xfc000000, "cz?Xx,~,|,b", pa20, FLAG_STRICT},
+{ "depdi", 0xd4001200, 0xfc001ae0, "cz?X5,!,%,b", pa20, FLAG_STRICT},
+{ "depdi", 0xf4000000, 0xfc000000, "cz?X5,~,|,b", pa20, FLAG_STRICT},
+{ "depw", 0xd4000000, 0xfc001be0, "cz?xx,!,T,b", pa10, FLAG_STRICT},
+{ "depw", 0xd4000800, 0xfc001800, "cz?xx,p,T,b", pa10, FLAG_STRICT},
+{ "depwi", 0xd4001000, 0xfc001be0, "cz?x5,!,T,b", pa10, FLAG_STRICT},
+{ "depwi", 0xd4001800, 0xfc001800, "cz?x5,p,T,b", pa10, FLAG_STRICT},
+{ "zvdep", 0xd4000000, 0xfc001fe0, "?xx,T,b", pa10, 0},
+{ "vdep", 0xd4000400, 0xfc001fe0, "?xx,T,b", pa10, 0},
+{ "zdep", 0xd4000800, 0xfc001c00, "?xx,p,T,b", pa10, 0},
+{ "dep", 0xd4000c00, 0xfc001c00, "?xx,p,T,b", pa10, 0},
+{ "zvdepi", 0xd4001000, 0xfc001fe0, "?x5,T,b", pa10, 0},
+{ "vdepi", 0xd4001400, 0xfc001fe0, "?x5,T,b", pa10, 0},
+{ "zdepi", 0xd4001800, 0xfc001c00, "?x5,p,T,b", pa10, 0},
+{ "depi", 0xd4001c00, 0xfc001c00, "?x5,p,T,b", pa10, 0},
+
+/* System Control Instructions. */
+
+{ "break", 0x00000000, 0xfc001fe0, "r,A", pa10, 0},
+{ "rfi", 0x00000c00, 0xffffff1f, "cr", pa10, FLAG_STRICT},
+{ "rfi", 0x00000c00, 0xffffffff, "", pa10, 0},
+{ "rfir", 0x00000ca0, 0xffffffff, "", pa11, 0},
+{ "ssm", 0x00000d60, 0xfc00ffe0, "U,t", pa20, FLAG_STRICT},
+{ "ssm", 0x00000d60, 0xffe0ffe0, "R,t", pa10, 0},
+{ "rsm", 0x00000e60, 0xfc00ffe0, "U,t", pa20, FLAG_STRICT},
+{ "rsm", 0x00000e60, 0xffe0ffe0, "R,t", pa10, 0},
+{ "mtsm", 0x00001860, 0xffe0ffff, "x", pa10, 0},
+{ "ldsid", 0x000010a0, 0xfc1f3fe0, "(s,b),t", pa10, 0},
+{ "ldsid", 0x000010a0, 0xfc1f3fe0, "(b),t", pa10, 0},
+{ "mtsp", 0x00001820, 0xffe01fff, "x,S", pa10, 0},
+{ "mtctl", 0x00001840, 0xfc00ffff, "x,^", pa10, 0},
+{ "mtsarcm", 0x016018C0, 0xffe0ffff, "x", pa20, FLAG_STRICT},
+{ "mfia", 0x000014A0, 0xffffffe0, "t", pa20, FLAG_STRICT},
+{ "mfsp", 0x000004a0, 0xffff1fe0, "S,t", pa10, 0},
+{ "mfctl", 0x016048a0, 0xffffffe0, "cW!,t", pa20, FLAG_STRICT},
+{ "mfctl", 0x000008a0, 0xfc1fffe0, "^,t", pa10, 0},
+{ "sync", 0x00000400, 0xffffffff, "", pa10, 0},
+{ "syncdma", 0x00100400, 0xffffffff, "", pa10, 0},
+{ "probe", 0x04001180, 0xfc003fa0, "cw(s,b),x,t", pa10, FLAG_STRICT},
+{ "probe", 0x04001180, 0xfc003fa0, "cw(b),x,t", pa10, FLAG_STRICT},
+{ "probei", 0x04003180, 0xfc003fa0, "cw(s,b),R,t", pa10, FLAG_STRICT},
+{ "probei", 0x04003180, 0xfc003fa0, "cw(b),R,t", pa10, FLAG_STRICT},
+{ "prober", 0x04001180, 0xfc003fe0, "(s,b),x,t", pa10, 0},
+{ "prober", 0x04001180, 0xfc003fe0, "(b),x,t", pa10, 0},
+{ "proberi", 0x04003180, 0xfc003fe0, "(s,b),R,t", pa10, 0},
+{ "proberi", 0x04003180, 0xfc003fe0, "(b),R,t", pa10, 0},
+{ "probew", 0x040011c0, 0xfc003fe0, "(s,b),x,t", pa10, 0},
+{ "probew", 0x040011c0, 0xfc003fe0, "(b),x,t", pa10, 0},
+{ "probewi", 0x040031c0, 0xfc003fe0, "(s,b),R,t", pa10, 0},
+{ "probewi", 0x040031c0, 0xfc003fe0, "(b),R,t", pa10, 0},
+{ "lpa", 0x04001340, 0xfc003fc0, "cZx(s,b),t", pa10, 0},
+{ "lpa", 0x04001340, 0xfc003fc0, "cZx(b),t", pa10, 0},
+{ "lha", 0x04001300, 0xfc003fc0, "cZx(s,b),t", pa10, 0},
+{ "lha", 0x04001300, 0xfc003fc0, "cZx(b),t", pa10, 0},
+{ "lci", 0x04001300, 0xfc003fe0, "x(s,b),t", pa10, 0},
+{ "lci", 0x04001300, 0xfc003fe0, "x(b),t", pa10, 0},
+{ "pdtlb", 0x04001600, 0xfc003fdf, "cLcZx(s,b)", pa20, FLAG_STRICT},
+{ "pdtlb", 0x04001600, 0xfc003fdf, "cLcZx(b)", pa20, FLAG_STRICT},
+{ "pdtlb", 0x04001200, 0xfc003fdf, "cZx(s,b)", pa10, 0},
+{ "pdtlb", 0x04001200, 0xfc003fdf, "cZx(b)", pa10, 0},
+{ "pitlb", 0x04000600, 0xfc001fdf, "cLcZx(S,b)", pa20, FLAG_STRICT},
+{ "pitlb", 0x04000600, 0xfc001fdf, "cLcZx(b)", pa20, FLAG_STRICT},
+{ "pitlb", 0x04000200, 0xfc001fdf, "cZx(S,b)", pa10, 0},
+{ "pitlb", 0x04000200, 0xfc001fdf, "cZx(b)", pa10, 0},
+{ "pdtlbe", 0x04001240, 0xfc003fdf, "cZx(s,b)", pa10, 0},
+{ "pdtlbe", 0x04001240, 0xfc003fdf, "cZx(b)", pa10, 0},
+{ "pitlbe", 0x04000240, 0xfc001fdf, "cZx(S,b)", pa10, 0},
+{ "pitlbe", 0x04000240, 0xfc001fdf, "cZx(b)", pa10, 0},
+{ "idtlba", 0x04001040, 0xfc003fff, "x,(s,b)", pa10, 0},
+{ "idtlba", 0x04001040, 0xfc003fff, "x,(b)", pa10, 0},
+{ "iitlba", 0x04000040, 0xfc001fff, "x,(S,b)", pa10, 0},
+{ "iitlba", 0x04000040, 0xfc001fff, "x,(b)", pa10, 0},
+{ "idtlbp", 0x04001000, 0xfc003fff, "x,(s,b)", pa10, 0},
+{ "idtlbp", 0x04001000, 0xfc003fff, "x,(b)", pa10, 0},
+{ "iitlbp", 0x04000000, 0xfc001fff, "x,(S,b)", pa10, 0},
+{ "iitlbp", 0x04000000, 0xfc001fff, "x,(b)", pa10, 0},
+{ "pdc", 0x04001380, 0xfc003fdf, "cZx(s,b)", pa10, 0},
+{ "pdc", 0x04001380, 0xfc003fdf, "cZx(b)", pa10, 0},
+{ "fdc", 0x04001280, 0xfc003fdf, "cZx(s,b)", pa10, 0},
+{ "fdc", 0x04001280, 0xfc003fdf, "cZx(b)", pa10, 0},
+{ "fic", 0x04000280, 0xfc001fdf, "cZx(S,b)", pa10, 0},
+{ "fic", 0x04000280, 0xfc001fdf, "cZx(b)", pa10, 0},
+{ "fdce", 0x040012c0, 0xfc003fdf, "cZx(s,b)", pa10, 0},
+{ "fdce", 0x040012c0, 0xfc003fdf, "cZx(b)", pa10, 0},
+{ "fice", 0x040002c0, 0xfc001fdf, "cZx(S,b)", pa10, 0},
+{ "fice", 0x040002c0, 0xfc001fdf, "cZx(b)", pa10, 0},
+{ "diag", 0x14000000, 0xfc000000, "D", pa10, 0},
+{ "idtlbt", 0x04001800, 0xfc00ffff, "x,b", pa20, FLAG_STRICT},
+{ "iitlbt", 0x04000800, 0xfc00ffff, "x,b", pa20, FLAG_STRICT},
+
+/* These may be specific to certain versions of the PA. Joel claimed
+ they were 72000 (7200?) specific. However, I'm almost certain the
+ mtcpu/mfcpu were undocumented, but available in the older 700 machines. */
+{ "mtcpu", 0x14001600, 0xfc00ffff, "x,^", pa10, 0},
+{ "mfcpu", 0x14001A00, 0xfc00ffff, "^,x", pa10, 0},
+{ "tocen", 0x14403600, 0xffffffff, "", pa10, 0},
+{ "tocdis", 0x14401620, 0xffffffff, "", pa10, 0},
+{ "shdwgr", 0x14402600, 0xffffffff, "", pa10, 0},
+{ "grshdw", 0x14400620, 0xffffffff, "", pa10, 0},
+
+/* gfw and gfr are not in the HP PA 1.1 manual, but they are in either
+ the Timex FPU or the Mustang ERS (not sure which) manual. */
+{ "gfw", 0x04001680, 0xfc003fdf, "cZx(s,b)", pa11, 0},
+{ "gfw", 0x04001680, 0xfc003fdf, "cZx(b)", pa11, 0},
+{ "gfr", 0x04001a80, 0xfc003fdf, "cZx(s,b)", pa11, 0},
+{ "gfr", 0x04001a80, 0xfc003fdf, "cZx(b)", pa11, 0},
+
+/* Floating Point Coprocessor Instructions. */
+
+{ "fldw", 0x24000000, 0xfc001380, "cxccx(s,b),fT", pa10, FLAG_STRICT},
+{ "fldw", 0x24000000, 0xfc001380, "cxccx(b),fT", pa10, FLAG_STRICT},
+{ "fldw", 0x24001000, 0xfc001380, "cmcc5(s,b),fT", pa10, FLAG_STRICT},
+{ "fldw", 0x24001000, 0xfc001380, "cmcc5(b),fT", pa10, FLAG_STRICT},
+{ "fldw", 0x24001020, 0xfc1f33a0, "cocc@(s,b),fT", pa20, FLAG_STRICT},
+{ "fldw", 0x24001020, 0xfc1f33a0, "cocc@(b),fT", pa20, FLAG_STRICT},
+{ "fldw", 0x5c000000, 0xfc000004, "y(b),fe", pa20w, FLAG_STRICT},
+{ "fldw", 0x58000000, 0xfc000000, "cJy(b),fe", pa20w, FLAG_STRICT},
+{ "fldw", 0x5c000000, 0xfc000004, "d(b),fe", pa20, FLAG_STRICT},
+{ "fldw", 0x58000000, 0xfc000000, "cJd(b),fe", pa20, FLAG_STRICT},
+{ "fldd", 0x2c000000, 0xfc0013c0, "cxccx(s,b),ft", pa10, FLAG_STRICT},
+{ "fldd", 0x2c000000, 0xfc0013c0, "cxccx(b),ft", pa10, FLAG_STRICT},
+{ "fldd", 0x2c001000, 0xfc0013c0, "cmcc5(s,b),ft", pa10, FLAG_STRICT},
+{ "fldd", 0x2c001000, 0xfc0013c0, "cmcc5(b),ft", pa10, FLAG_STRICT},
+{ "fldd", 0x2c001020, 0xfc1f33e0, "cocc@(s,b),ft", pa20, FLAG_STRICT},
+{ "fldd", 0x2c001020, 0xfc1f33e0, "cocc@(b),ft", pa20, FLAG_STRICT},
+{ "fldd", 0x50000002, 0xfc000002, "cq&(b),fx", pa20w, FLAG_STRICT},
+{ "fldd", 0x50000002, 0xfc000002, "cq#(b),fx", pa20, FLAG_STRICT},
+{ "fstw", 0x24000200, 0xfc001380, "cxcCfT,x(s,b)", pa10, FLAG_STRICT},
+{ "fstw", 0x24000200, 0xfc001380, "cxcCfT,x(b)", pa10, FLAG_STRICT},
+{ "fstw", 0x24001200, 0xfc001380, "cmcCfT,5(s,b)", pa10, FLAG_STRICT},
+{ "fstw", 0x24001200, 0xfc001380, "cmcCfT,5(b)", pa10, FLAG_STRICT},
+{ "fstw", 0x24001220, 0xfc1f33a0, "cocCfT,@(s,b)", pa10, FLAG_STRICT},
+{ "fstw", 0x24001220, 0xfc1f33a0, "cocCfT,@(b)", pa10, FLAG_STRICT},
+{ "fstw", 0x7c000000, 0xfc000004, "fE,y(b)", pa20w, FLAG_STRICT},
+{ "fstw", 0x78000000, 0xfc000000, "cJfe,y(b)", pa20w, FLAG_STRICT},
+{ "fstw", 0x7c000000, 0xfc000004, "fe,d(b)", pa20, FLAG_STRICT},
+{ "fstw", 0x78000000, 0xfc000000, "cJfe,d(b)", pa20, FLAG_STRICT},
+{ "fstd", 0x2c000200, 0xfc0013c0, "cxcCft,x(s,b)", pa10, FLAG_STRICT},
+{ "fstd", 0x2c000200, 0xfc0013c0, "cxcCft,x(b)", pa10, FLAG_STRICT},
+{ "fstd", 0x2c001200, 0xfc0013c0, "cmcCft,5(s,b)", pa10, FLAG_STRICT},
+{ "fstd", 0x2c001200, 0xfc0013c0, "cmcCft,5(b)", pa10, FLAG_STRICT},
+{ "fstd", 0x2c001220, 0xfc1f33e0, "cocCft,@(s,b)", pa10, FLAG_STRICT},
+{ "fstd", 0x2c001220, 0xfc1f33e0, "cocCft,@(b)", pa10, FLAG_STRICT},
+{ "fstd", 0x70000002, 0xfc000002, "cqfx,&(b)", pa20w, FLAG_STRICT},
+{ "fstd", 0x70000002, 0xfc000002, "cqfx,#(b)", pa20, FLAG_STRICT},
+{ "fldwx", 0x24000000, 0xfc001f80, "cXx(s,b),fT", pa10, 0},
+{ "fldwx", 0x24000000, 0xfc001f80, "cXx(b),fT", pa10, 0},
+{ "flddx", 0x2c000000, 0xfc001fc0, "cXx(s,b),ft", pa10, 0},
+{ "flddx", 0x2c000000, 0xfc001fc0, "cXx(b),ft", pa10, 0},
+{ "fstwx", 0x24000200, 0xfc001f80, "cxfT,x(s,b)", pa10, 0},
+{ "fstwx", 0x24000200, 0xfc001f80, "cxfT,x(b)", pa10, 0},
+{ "fstdx", 0x2c000200, 0xfc001fc0, "cxft,x(s,b)", pa10, 0},
+{ "fstdx", 0x2c000200, 0xfc001fc0, "cxft,x(b)", pa10, 0},
+{ "fstqx", 0x3c000200, 0xfc001fc0, "cxft,x(s,b)", pa10, 0},
+{ "fstqx", 0x3c000200, 0xfc001fc0, "cxft,x(b)", pa10, 0},
+{ "fldws", 0x24001000, 0xfc001f80, "cm5(s,b),fT", pa10, 0},
+{ "fldws", 0x24001000, 0xfc001f80, "cm5(b),fT", pa10, 0},
+{ "fldds", 0x2c001000, 0xfc001fc0, "cm5(s,b),ft", pa10, 0},
+{ "fldds", 0x2c001000, 0xfc001fc0, "cm5(b),ft", pa10, 0},
+{ "fstws", 0x24001200, 0xfc001f80, "cmfT,5(s,b)", pa10, 0},
+{ "fstws", 0x24001200, 0xfc001f80, "cmfT,5(b)", pa10, 0},
+{ "fstds", 0x2c001200, 0xfc001fc0, "cmft,5(s,b)", pa10, 0},
+{ "fstds", 0x2c001200, 0xfc001fc0, "cmft,5(b)", pa10, 0},
+{ "fstqs", 0x3c001200, 0xfc001fc0, "cmft,5(s,b)", pa10, 0},
+{ "fstqs", 0x3c001200, 0xfc001fc0, "cmft,5(b)", pa10, 0},
+{ "fadd", 0x30000600, 0xfc00e7e0, "Ffa,fb,fT", pa10, 0},
+{ "fadd", 0x38000600, 0xfc00e720, "IfA,fB,fT", pa10, 0},
+{ "fsub", 0x30002600, 0xfc00e7e0, "Ffa,fb,fT", pa10, 0},
+{ "fsub", 0x38002600, 0xfc00e720, "IfA,fB,fT", pa10, 0},
+{ "fmpy", 0x30004600, 0xfc00e7e0, "Ffa,fb,fT", pa10, 0},
+{ "fmpy", 0x38004600, 0xfc00e720, "IfA,fB,fT", pa10, 0},
+{ "fdiv", 0x30006600, 0xfc00e7e0, "Ffa,fb,fT", pa10, 0},
+{ "fdiv", 0x38006600, 0xfc00e720, "IfA,fB,fT", pa10, 0},
+{ "fsqrt", 0x30008000, 0xfc1fe7e0, "Ffa,fT", pa10, 0},
+{ "fsqrt", 0x38008000, 0xfc1fe720, "FfA,fT", pa10, 0},
+{ "fabs", 0x30006000, 0xfc1fe7e0, "Ffa,fT", pa10, 0},
+{ "fabs", 0x38006000, 0xfc1fe720, "FfA,fT", pa10, 0},
+{ "frem", 0x30008600, 0xfc00e7e0, "Ffa,fb,fT", pa10, 0},
+{ "frem", 0x38008600, 0xfc00e720, "FfA,fB,fT", pa10, 0},
+{ "frnd", 0x3000a000, 0xfc1fe7e0, "Ffa,fT", pa10, 0},
+{ "frnd", 0x3800a000, 0xfc1fe720, "FfA,fT", pa10, 0},
+{ "fcpy", 0x30004000, 0xfc1fe7e0, "Ffa,fT", pa10, 0},
+{ "fcpy", 0x38004000, 0xfc1fe720, "FfA,fT", pa10, 0},
+{ "fcnvff", 0x30000200, 0xfc1f87e0, "FGfa,fT", pa10, 0},
+{ "fcnvff", 0x38000200, 0xfc1f8720, "FGfA,fT", pa10, 0},
+{ "fcnvxf", 0x30008200, 0xfc1f87e0, "FGfa,fT", pa10, 0},
+{ "fcnvxf", 0x38008200, 0xfc1f8720, "FGfA,fT", pa10, 0},
+{ "fcnvfx", 0x30010200, 0xfc1f87e0, "FGfa,fT", pa10, 0},
+{ "fcnvfx", 0x38010200, 0xfc1f8720, "FGfA,fT", pa10, 0},
+{ "fcnvfxt", 0x30018200, 0xfc1f87e0, "FGfa,fT", pa10, 0},
+{ "fcnvfxt", 0x38018200, 0xfc1f8720, "FGfA,fT", pa10, 0},
+{ "fmpyfadd", 0xb8000000, 0xfc000020, "IfA,fB,fC,fT", pa20, FLAG_STRICT},
+{ "fmpynfadd", 0xb8000020, 0xfc000020, "IfA,fB,fC,fT", pa20, FLAG_STRICT},
+{ "fneg", 0x3000c000, 0xfc1fe7e0, "Ffa,fT", pa20, FLAG_STRICT},
+{ "fneg", 0x3800c000, 0xfc1fe720, "IfA,fT", pa20, FLAG_STRICT},
+{ "fnegabs", 0x3000e000, 0xfc1fe7e0, "Ffa,fT", pa20, FLAG_STRICT},
+{ "fnegabs", 0x3800e000, 0xfc1fe720, "IfA,fT", pa20, FLAG_STRICT},
+{ "fcnv", 0x30000200, 0xfc1c0720, "{_fa,fT", pa20, FLAG_STRICT},
+{ "fcnv", 0x38000200, 0xfc1c0720, "FGfA,fT", pa20, FLAG_STRICT},
+{ "fcmp", 0x30000400, 0xfc0007e0, "F?ffa,fb,h", pa20, FLAG_STRICT},
+{ "fcmp", 0x38000400, 0xfc000720, "I?ffA,fB,h", pa20, FLAG_STRICT},
+{ "fcmp", 0x30000400, 0xfc00e7e0, "F?ffa,fb", pa10, 0},
+{ "fcmp", 0x38000400, 0xfc00e720, "I?ffA,fB", pa10, 0},
+{ "xmpyu", 0x38004700, 0xfc00e720, "fX,fB,fT", pa11, 0},
+{ "fmpyadd", 0x18000000, 0xfc000000, "Hfi,fj,fk,fl,fm", pa11, 0},
+{ "fmpysub", 0x98000000, 0xfc000000, "Hfi,fj,fk,fl,fm", pa11, 0},
+{ "ftest", 0x30002420, 0xffffffe0, ",=", pa20, FLAG_STRICT},
+{ "ftest", 0x30000420, 0xffff1fff, "m", pa20, FLAG_STRICT},
+{ "ftest", 0x30002420, 0xffffffff, "", pa10, 0},
+{ "fid", 0x30000000, 0xffffffff, "", pa11, 0},
+
+/* Performance Monitor Instructions. */
+
+{ "pmdis", 0x30000280, 0xffffffdf, "N", pa20, FLAG_STRICT},
+{ "pmenb", 0x30000680, 0xffffffff, "", pa20, FLAG_STRICT},
+
+/* Assist Instructions. */
+
+{ "spop0", 0x10000000, 0xfc000600, "v,ON", pa10, 0},
+{ "spop1", 0x10000200, 0xfc000600, "v,oNt", pa10, 0},
+{ "spop2", 0x10000400, 0xfc000600, "v,1Nb", pa10, 0},
+{ "spop3", 0x10000600, 0xfc000600, "v,0Nx,b", pa10, 0},
+{ "copr", 0x30000000, 0xfc000000, "u,2N", pa10, 0},
+{ "cldwx", 0x24000000, 0xfc001e00, "ucXx(s,b),t", pa10, 0},
+{ "cldwx", 0x24000000, 0xfc001e00, "ucXx(b),t", pa10, 0},
+{ "clddx", 0x2c000000, 0xfc001e00, "ucXx(s,b),t", pa10, 0},
+{ "clddx", 0x2c000000, 0xfc001e00, "ucXx(b),t", pa10, 0},
+{ "cstwx", 0x24000200, 0xfc001e00, "ucXt,x(s,b)", pa10, 0},
+{ "cstwx", 0x24000200, 0xfc001e00, "ucXt,x(b)", pa10, 0},
+{ "cstdx", 0x2c000200, 0xfc001e00, "ucXt,x(s,b)", pa10, 0},
+{ "cstdx", 0x2c000200, 0xfc001e00, "ucXt,x(b)", pa10, 0},
+{ "cldws", 0x24001000, 0xfc001e00, "ucM5(s,b),t", pa10, 0},
+{ "cldws", 0x24001000, 0xfc001e00, "ucM5(b),t", pa10, 0},
+{ "cldds", 0x2c001000, 0xfc001e00, "ucM5(s,b),t", pa10, 0},
+{ "cldds", 0x2c001000, 0xfc001e00, "ucM5(b),t", pa10, 0},
+{ "cstws", 0x24001200, 0xfc001e00, "ucMt,5(s,b)", pa10, 0},
+{ "cstws", 0x24001200, 0xfc001e00, "ucMt,5(b)", pa10, 0},
+{ "cstds", 0x2c001200, 0xfc001e00, "ucMt,5(s,b)", pa10, 0},
+{ "cstds", 0x2c001200, 0xfc001e00, "ucMt,5(b)", pa10, 0},
+{ "cldw", 0x24000000, 0xfc001e00, "ucXx(s,b),t", pa10, FLAG_STRICT},
+{ "cldw", 0x24000000, 0xfc001e00, "ucXx(b),t", pa10, FLAG_STRICT},
+{ "cldw", 0x24001000, 0xfc001e00, "ucM5(s,b),t", pa10, FLAG_STRICT},
+{ "cldw", 0x24001000, 0xfc001e00, "ucM5(b),t", pa10, FLAG_STRICT},
+{ "cldd", 0x2c000000, 0xfc001e00, "ucXx(s,b),t", pa10, FLAG_STRICT},
+{ "cldd", 0x2c000000, 0xfc001e00, "ucXx(b),t", pa10, FLAG_STRICT},
+{ "cldd", 0x2c001000, 0xfc001e00, "ucM5(s,b),t", pa10, FLAG_STRICT},
+{ "cldd", 0x2c001000, 0xfc001e00, "ucM5(b),t", pa20, FLAG_STRICT},
+{ "cstw", 0x24000200, 0xfc001e00, "ucXt,x(s,b)", pa10, FLAG_STRICT},
+{ "cstw", 0x24000200, 0xfc001e00, "ucXt,x(b)", pa10, FLAG_STRICT},
+{ "cstw", 0x24001200, 0xfc001e00, "ucMt,5(s,b)", pa10, FLAG_STRICT},
+{ "cstw", 0x24001200, 0xfc001e00, "ucMt,5(b)", pa10, FLAG_STRICT},
+{ "cstd", 0x2c000200, 0xfc001e00, "ucXt,x(s,b)", pa10, FLAG_STRICT},
+{ "cstd", 0x2c000200, 0xfc001e00, "ucXt,x(b)", pa10, FLAG_STRICT},
+{ "cstd", 0x2c001200, 0xfc001e00, "ucMt,5(s,b)", pa10, FLAG_STRICT},
+{ "cstd", 0x2c001200, 0xfc001e00, "ucMt,5(b)", pa10, FLAG_STRICT},
+
+/* More pseudo instructions which must follow the main table. */
+{ "call", 0xe800f000, 0xfc1ffffd, "n(b)", pa20, FLAG_STRICT},
+{ "call", 0xe800a000, 0xffe0e000, "nW", pa10, FLAG_STRICT},
+{ "ret", 0xe840d000, 0xfffffffd, "n", pa20, FLAG_STRICT},
+
+};
+
+#define NUMOPCODES ((sizeof pa_opcodes)/(sizeof pa_opcodes[0]))
+
+/* SKV 12/18/92. Added some denotations for various operands. */
+
+#define PA_IMM11_AT_31 'i'
+#define PA_IMM14_AT_31 'j'
+#define PA_IMM21_AT_31 'k'
+#define PA_DISP12 'w'
+#define PA_DISP17 'W'
+
+#define N_HPPA_OPERAND_FORMATS 5
diff --git a/include/opcode/i370.h b/include/opcode/i370.h
new file mode 100644
index 000000000..e317f2364
--- /dev/null
+++ b/include/opcode/i370.h
@@ -0,0 +1,265 @@
+/* i370.h -- Header file for S/390 opcode table
+ Copyright 1994, 1995, 1998, 1999, 2000, 2003 Free Software Foundation, Inc.
+ PowerPC version written by Ian Lance Taylor, Cygnus Support
+ Rewritten for i370 ESA/390 support, Linas Vepstas <linas@linas.org>
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef I370_H
+#define I370_H
+
+/* The opcode table is an array of struct i370_opcode. */
+typedef union
+{
+ unsigned int i[2];
+ unsigned short s[4];
+ unsigned char b[8];
+} i370_insn_t;
+
+struct i370_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* the length of the instruction */
+ char len;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ i370_insn_t opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ i370_insn_t mask;
+
+ /* One bit flags for the opcode. These are used to indicate which
+ specific processors support the instructions. The defined values
+ are listed below. */
+ unsigned long flags;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[8];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct i370_opcode i370_opcodes[];
+extern const int i370_num_opcodes;
+
+/* Values defined for the flags field of a struct i370_opcode. */
+
+/* Opcode is defined for the original 360 architecture. */
+#define I370_OPCODE_360 (0x01)
+
+/* Opcode is defined for the 370 architecture. */
+#define I370_OPCODE_370 (0x02)
+
+/* Opcode is defined for the 370-XA architecture. */
+#define I370_OPCODE_370_XA (0x04)
+
+/* Opcode is defined for the ESA/370 architecture. */
+#define I370_OPCODE_ESA370 (0x08)
+
+/* Opcode is defined for the ESA/390 architecture. */
+#define I370_OPCODE_ESA390 (0x10)
+
+/* Opcode is defined for the ESA/390 w/ BFP facility. */
+#define I370_OPCODE_ESA390_BF (0x20)
+
+/* Opcode is defined for the ESA/390 w/ branch & set authority facility. */
+#define I370_OPCODE_ESA390_BS (0x40)
+
+/* Opcode is defined for the ESA/390 w/ checksum facility. */
+#define I370_OPCODE_ESA390_CK (0x80)
+
+/* Opcode is defined for the ESA/390 w/ compare & move extended facility. */
+#define I370_OPCODE_ESA390_CM (0x100)
+
+/* Opcode is defined for the ESA/390 w/ flt.pt. support extensions facility. */
+#define I370_OPCODE_ESA390_FX (0x200)
+
+/* Opcode is defined for the ESA/390 w/ HFP facility. */
+#define I370_OPCODE_ESA390_HX (0x400)
+
+/* Opcode is defined for the ESA/390 w/ immediate & relative facility. */
+#define I370_OPCODE_ESA390_IR (0x800)
+
+/* Opcode is defined for the ESA/390 w/ move-inverse facility. */
+#define I370_OPCODE_ESA390_MI (0x1000)
+
+/* Opcode is defined for the ESA/390 w/ program-call-fast facility. */
+#define I370_OPCODE_ESA390_PC (0x2000)
+
+/* Opcode is defined for the ESA/390 w/ perform-locked-op facility. */
+#define I370_OPCODE_ESA390_PL (0x4000)
+
+/* Opcode is defined for the ESA/390 w/ square-root facility. */
+#define I370_OPCODE_ESA390_QR (0x8000)
+
+/* Opcode is defined for the ESA/390 w/ resume-program facility. */
+#define I370_OPCODE_ESA390_RP (0x10000)
+
+/* Opcode is defined for the ESA/390 w/ set-address-space-fast facility. */
+#define I370_OPCODE_ESA390_SA (0x20000)
+
+/* Opcode is defined for the ESA/390 w/ subspace group facility. */
+#define I370_OPCODE_ESA390_SG (0x40000)
+
+/* Opcode is defined for the ESA/390 w/ string facility. */
+#define I370_OPCODE_ESA390_SR (0x80000)
+
+/* Opcode is defined for the ESA/390 w/ trap facility. */
+#define I370_OPCODE_ESA390_TR (0x100000)
+
+#define I370_OPCODE_ESA390_SUPERSET (0x1fffff)
+
+
+/* The operands table is an array of struct i370_operand. */
+
+struct i370_operand
+{
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (op & ((1 << o->bits) - 1)) << o->shift;
+ (i is the instruction which we are filling in, o is a pointer to
+ this structure, and op is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged (most operands
+ can accept any value). */
+ i370_insn_t (*insert)
+ (i370_insn_t instruction, long op, const char **errmsg);
+
+ /* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if ((o->flags & I370_OPERAND_SIGNED) != 0
+ && (op & (1 << (o->bits - 1))) != 0)
+ op -= 1 << o->bits;
+ (i is the instruction, o is a pointer to this structure, and op
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed. */
+ long (*extract) (i370_insn_t instruction, int *invalid);
+
+ /* One bit syntax flags. */
+ unsigned long flags;
+
+ /* name -- handy for debugging, otherwise pointless */
+ char * name;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the i370_opcodes table. */
+
+extern const struct i370_operand i370_operands[];
+
+/* Values defined for the flags field of a struct i370_operand. */
+
+/* This operand should be wrapped in parentheses rather than
+ separated from the previous by a comma. This is used for S, RS and
+ SS form instructions which want their operands to look like
+ reg,displacement(basereg) */
+#define I370_OPERAND_SBASE (0x01)
+
+/* This operand is a base register. It may or may not appear next
+ to an index register, i.e. either of the two forms
+ reg,displacement(basereg)
+ reg,displacement(index,basereg) */
+#define I370_OPERAND_BASE (0x02)
+
+/* This pair of operands should be wrapped in parentheses rather than
+ separated from the last by a comma. This is used for the RX form
+ instructions which want their operands to look like
+ reg,displacement(index,basereg) */
+#define I370_OPERAND_INDEX (0x04)
+
+/* This operand names a register. The disassembler uses this to print
+ register names with a leading 'r'. */
+#define I370_OPERAND_GPR (0x08)
+
+/* This operand names a floating point register. The disassembler
+ prints these with a leading 'f'. */
+#define I370_OPERAND_FPR (0x10)
+
+/* This operand is a displacement. */
+#define I370_OPERAND_RELATIVE (0x20)
+
+/* This operand is a length, such as that in SS form instructions. */
+#define I370_OPERAND_LENGTH (0x40)
+
+/* This operand is optional, and is zero if omitted. This is used for
+ the optional B2 field in the shift-left, shift-right instructions. The
+ assembler must count the number of operands remaining on the line,
+ and the number of operands remaining for the opcode, and decide
+ whether this operand is present or not. The disassembler should
+ print this operand out only if it is not zero. */
+#define I370_OPERAND_OPTIONAL (0x80)
+
+
+/* Define some misc macros. We keep them with the operands table
+ for simplicity. The macro table is an array of struct i370_macro. */
+
+struct i370_macro
+{
+ /* The macro name. */
+ const char *name;
+
+ /* The number of operands the macro takes. */
+ unsigned int operands;
+
+ /* One bit flags for the opcode. These are used to indicate which
+ specific processors support the instructions. The values are the
+ same as those for the struct i370_opcode flags field. */
+ unsigned long flags;
+
+ /* A format string to turn the macro into a normal instruction.
+ Each %N in the string is replaced with operand number N (zero
+ based). */
+ const char *format;
+};
+
+extern const struct i370_macro i370_macros[];
+extern const int i370_num_macros;
+
+
+#endif /* I370_H */
diff --git a/include/opcode/i386.h b/include/opcode/i386.h
new file mode 100644
index 000000000..96bf149d5
--- /dev/null
+++ b/include/opcode/i386.h
@@ -0,0 +1,1612 @@
+/* opcode/i386.h -- Intel 80386 opcode table
+ Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+ 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
+
+ This file is part of GAS, the GNU Assembler, and GDB, the GNU Debugger.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* The SystemV/386 SVR3.2 assembler, and probably all AT&T derived
+ ix86 Unix assemblers, generate floating point instructions with
+ reversed source and destination registers in certain cases.
+ Unfortunately, gcc and possibly many other programs use this
+ reversed syntax, so we're stuck with it.
+
+ eg. `fsub %st(3),%st' results in st = st - st(3) as expected, but
+ `fsub %st,%st(3)' results in st(3) = st - st(3), rather than
+ the expected st(3) = st(3) - st
+
+ This happens with all the non-commutative arithmetic floating point
+ operations with two register operands, where the source register is
+ %st, and destination register is %st(i). See FloatDR below.
+
+ The affected opcode map is dceX, dcfX, deeX, defX. */
+
+#ifndef SYSV386_COMPAT
+/* Set non-zero for broken, compatible instructions. Set to zero for
+ non-broken opcodes at your peril. gcc generates SystemV/386
+ compatible instructions. */
+#define SYSV386_COMPAT 1
+#endif
+#ifndef OLDGCC_COMPAT
+/* Set non-zero to cater for old (<= 2.8.1) versions of gcc that could
+ generate nonsense fsubp, fsubrp, fdivp and fdivrp with operands
+ reversed. */
+#define OLDGCC_COMPAT SYSV386_COMPAT
+#endif
+
+static const template i386_optab[] =
+{
+
+#define X None
+#define NoSuf (No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_xSuf|No_qSuf)
+#define b_Suf (No_wSuf|No_lSuf|No_sSuf|No_xSuf|No_qSuf)
+#define w_Suf (No_bSuf|No_lSuf|No_sSuf|No_xSuf|No_qSuf)
+#define l_Suf (No_bSuf|No_wSuf|No_sSuf|No_xSuf|No_qSuf)
+#define q_Suf (No_bSuf|No_wSuf|No_sSuf|No_lSuf|No_xSuf)
+#define x_Suf (No_bSuf|No_wSuf|No_sSuf|No_lSuf|No_qSuf)
+#define bw_Suf (No_lSuf|No_sSuf|No_xSuf|No_qSuf)
+#define bl_Suf (No_wSuf|No_sSuf|No_xSuf|No_qSuf)
+#define wl_Suf (No_bSuf|No_sSuf|No_xSuf|No_qSuf)
+#define wlq_Suf (No_bSuf|No_sSuf|No_xSuf)
+#define lq_Suf (No_bSuf|No_wSuf|No_sSuf|No_xSuf)
+#define wq_Suf (No_bSuf|No_lSuf|No_sSuf|No_xSuf)
+#define sl_Suf (No_bSuf|No_wSuf|No_xSuf|No_qSuf)
+#define sldx_Suf (No_bSuf|No_wSuf|No_qSuf)
+#define bwl_Suf (No_sSuf|No_xSuf|No_qSuf)
+#define bwlq_Suf (No_sSuf|No_xSuf)
+#define FP (NoSuf|IgnoreSize)
+#define l_FP (l_Suf|IgnoreSize)
+#define x_FP (x_Suf|IgnoreSize)
+#define sl_FP (sl_Suf|IgnoreSize)
+#if SYSV386_COMPAT
+/* Someone forgot that the FloatR bit reverses the operation when not
+ equal to the FloatD bit. ie. Changing only FloatD results in the
+ destination being swapped *and* the direction being reversed. */
+#define FloatDR FloatD
+#else
+#define FloatDR (FloatD|FloatR)
+#endif
+
+/* Move instructions. */
+#define MOV_AX_DISP32 0xa0
+/* In the 64bit mode the short form mov immediate is redefined to have
+ 64bit displacement value. */
+{ "mov", 2, 0xa0, X, CpuNo64,bwlq_Suf|D|W, { Disp16|Disp32, Acc, 0 } },
+{ "mov", 2, 0x88, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+/* In the 64bit mode the short form mov immediate is redefined to have
+ 64bit displacement value. */
+{ "mov", 2, 0xb0, X, 0, bwl_Suf|W|ShortForm, { EncImm, Reg8|Reg16|Reg32, 0 } },
+{ "mov", 2, 0xc6, 0, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0 } },
+{ "mov", 2, 0xb0, X, Cpu64, q_Suf|W|ShortForm, { Imm64, Reg64, 0 } },
+/* The segment register moves accept WordReg so that a segment register
+ can be copied to a 32 bit register, and vice versa, without using a
+ size prefix. When moving to a 32 bit register, the upper 16 bits
+ are set to an implementation defined value (on the Pentium Pro,
+ the implementation defined value is zero). */
+{ "mov", 2, 0x8c, X, 0, wl_Suf|Modrm, { SReg2, WordReg|WordMem, 0 } },
+{ "mov", 2, 0x8c, X, Cpu386, wl_Suf|Modrm, { SReg3, WordReg|WordMem, 0 } },
+{ "mov", 2, 0x8e, X, 0, wl_Suf|Modrm|IgnoreSize, { WordReg|WordMem, SReg2, 0 } },
+{ "mov", 2, 0x8e, X, Cpu386, wl_Suf|Modrm|IgnoreSize, { WordReg|WordMem, SReg3, 0 } },
+/* Move to/from control debug registers. In the 16 or 32bit modes they are 32bit. In the 64bit
+ mode they are 64bit.*/
+{ "mov", 2, 0x0f20, X, Cpu386|CpuNo64, l_Suf|D|Modrm|IgnoreSize,{ Control, Reg32|InvMem, 0} },
+{ "mov", 2, 0x0f20, X, Cpu64, q_Suf|D|Modrm|IgnoreSize|NoRex64,{ Control, Reg64|InvMem, 0} },
+{ "mov", 2, 0x0f21, X, Cpu386|CpuNo64, l_Suf|D|Modrm|IgnoreSize,{ Debug, Reg32|InvMem, 0} },
+{ "mov", 2, 0x0f21, X, Cpu64, q_Suf|D|Modrm|IgnoreSize|NoRex64,{ Debug, Reg64|InvMem, 0} },
+{ "mov", 2, 0x0f24, X, Cpu386, l_Suf|D|Modrm|IgnoreSize, { Test, Reg32|InvMem, 0} },
+{ "movabs",2, 0xa0, X, Cpu64, bwlq_Suf|D|W, { Disp64, Acc, 0 } },
+{ "movabs",2, 0xb0, X, Cpu64, q_Suf|W|ShortForm, { Imm64, Reg64, 0 } },
+
+/* Move with sign extend. */
+/* "movsbl" & "movsbw" must not be unified into "movsb" to avoid
+ conflict with the "movs" string move instruction. */
+{"movsbl", 2, 0x0fbe, X, Cpu386, NoSuf|Modrm, { Reg8|ByteMem, Reg32, 0} },
+{"movsbw", 2, 0x0fbe, X, Cpu386, NoSuf|Modrm, { Reg8|ByteMem, Reg16, 0} },
+{"movswl", 2, 0x0fbf, X, Cpu386, NoSuf|Modrm, { Reg16|ShortMem,Reg32, 0} },
+{"movsbq", 2, 0x0fbe, X, Cpu64, NoSuf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
+{"movswq", 2, 0x0fbf, X, Cpu64, NoSuf|Modrm|Rex64, { Reg16|ShortMem,Reg64, 0} },
+{"movslq", 2, 0x63, X, Cpu64, NoSuf|Modrm|Rex64, { Reg32|WordMem, Reg64, 0} },
+/* Intel Syntax next 5 insns */
+{"movsx", 2, 0x0fbe, X, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, WordReg, 0} },
+{"movsx", 2, 0x0fbf, X, Cpu386, w_Suf|Modrm, { Reg16|ShortMem, Reg32, 0} },
+{"movsx", 2, 0x0fbe, X, Cpu64, b_Suf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
+{"movsx", 2, 0x0fbf, X, Cpu64, w_Suf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
+{"movsx", 2, 0x63, X, Cpu64, l_Suf|Modrm|Rex64, { Reg32|WordMem, Reg64, 0} },
+
+/* Move with zero extend. */
+{"movzb", 2, 0x0fb6, X, Cpu386, wl_Suf|Modrm, { Reg8|ByteMem, WordReg, 0} },
+{"movzwl", 2, 0x0fb7, X, Cpu386, NoSuf|Modrm, { Reg16|ShortMem, Reg32, 0} },
+/* These instructions are not particulary usefull, since the zero extend
+ 32->64 is implicit, but we can encode them. */
+{"movzbq", 2, 0x0fb6, X, Cpu64, NoSuf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
+{"movzwq", 2, 0x0fb7, X, Cpu64, NoSuf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
+/* Intel Syntax next 4 insns */
+{"movzx", 2, 0x0fb6, X, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, WordReg, 0} },
+{"movzx", 2, 0x0fb7, X, Cpu386, w_Suf|Modrm, { Reg16|ShortMem, Reg32, 0} },
+/* These instructions are not particulary usefull, since the zero extend
+ 32->64 is implicit, but we can encode them. */
+{"movzx", 2, 0x0fb6, X, Cpu64, b_Suf|Modrm|Rex64, { Reg8|ByteMem, Reg64, 0} },
+{"movzx", 2, 0x0fb7, X, Cpu64, w_Suf|Modrm|Rex64, { Reg16|ShortMem, Reg64, 0} },
+
+/* Push instructions. */
+{"push", 1, 0x50, X, CpuNo64, wl_Suf|ShortForm|DefaultSize, { WordReg, 0, 0 } },
+{"push", 1, 0xff, 6, CpuNo64, wl_Suf|Modrm|DefaultSize, { WordReg|WordMem, 0, 0 } },
+{"push", 1, 0x6a, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { Imm8S, 0, 0} },
+{"push", 1, 0x68, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { Imm16|Imm32, 0, 0} },
+{"push", 1, 0x06, X, CpuNo64, wl_Suf|Seg2ShortForm|DefaultSize, { SReg2, 0, 0 } },
+{"push", 1, 0x0fa0, X, Cpu386|CpuNo64, wl_Suf|Seg3ShortForm|DefaultSize, { SReg3, 0, 0 } },
+/* In 64bit mode, the operand size is implicitly 64bit. */
+{"push", 1, 0x50, X, Cpu64, wq_Suf|ShortForm|DefaultSize|NoRex64, { Reg16|Reg64, 0, 0 } },
+{"push", 1, 0xff, 6, Cpu64, wq_Suf|Modrm|DefaultSize|NoRex64, { Reg16|Reg64|WordMem, 0, 0 } },
+{"push", 1, 0x6a, X, Cpu64, wq_Suf|DefaultSize|NoRex64, { Imm8S, 0, 0} },
+{"push", 1, 0x68, X, Cpu64, wq_Suf|DefaultSize|NoRex64, { Imm32S|Imm16, 0, 0} },
+{"push", 1, 0x0fa0, X, Cpu64, wq_Suf|Seg3ShortForm|DefaultSize|NoRex64, { SReg3, 0, 0 } },
+
+{"pusha", 0, 0x60, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { 0, 0, 0 } },
+
+/* Pop instructions. */
+{"pop", 1, 0x58, X, CpuNo64, wl_Suf|ShortForm|DefaultSize, { WordReg, 0, 0 } },
+{"pop", 1, 0x8f, 0, CpuNo64, wl_Suf|Modrm|DefaultSize, { WordReg|WordMem, 0, 0 } },
+#define POP_SEG_SHORT 0x07
+{"pop", 1, 0x07, X, CpuNo64, wl_Suf|Seg2ShortForm|DefaultSize, { SReg2, 0, 0 } },
+{"pop", 1, 0x0fa1, X, Cpu386|CpuNo64, wl_Suf|Seg3ShortForm|DefaultSize, { SReg3, 0, 0 } },
+/* In 64bit mode, the operand size is implicitly 64bit. */
+{"pop", 1, 0x58, X, Cpu64, wq_Suf|ShortForm|DefaultSize|NoRex64, { Reg16|Reg64, 0, 0 } },
+{"pop", 1, 0x8f, 0, Cpu64, wq_Suf|Modrm|DefaultSize|NoRex64, { Reg16|Reg64|WordMem, 0, 0 } },
+{"pop", 1, 0x0fa1, X, Cpu64, wq_Suf|Seg3ShortForm|DefaultSize|NoRex64, { SReg3, 0, 0 } },
+
+{"popa", 0, 0x61, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { 0, 0, 0 } },
+
+/* Exchange instructions.
+ xchg commutes: we allow both operand orders.
+
+ In the 64bit code, xchg eax, eax is reused for new nop instruction. */
+#if 0 /* While the two entries that are disabled generate shorter code
+ for xchg eax, reg (on x86_64), the special case xchg eax, eax
+ does not get handled correctly - it degenerates into nop, but
+ that way the side effect of zero-extending eax to rax is lost. */
+{"xchg", 2, 0x90, X, 0, wlq_Suf|ShortForm, { WordReg, Acc, 0 } },
+{"xchg", 2, 0x90, X, 0, wlq_Suf|ShortForm, { Acc, WordReg, 0 } },
+#else
+{"xchg", 2, 0x90, X, CpuNo64, wl_Suf|ShortForm, { WordReg, Acc, 0 } },
+{"xchg", 2, 0x90, X, CpuNo64, wl_Suf|ShortForm, { Acc, WordReg, 0 } },
+{"xchg", 2, 0x90, X, Cpu64, wq_Suf|ShortForm, { Reg16|Reg64, Acc, 0 } },
+{"xchg", 2, 0x90, X, Cpu64, wq_Suf|ShortForm, { Acc, Reg16|Reg64, 0 } },
+#endif
+{"xchg", 2, 0x86, X, 0, bwlq_Suf|W|Modrm, { Reg, Reg|AnyMem, 0 } },
+{"xchg", 2, 0x86, X, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, Reg, 0 } },
+
+/* In/out from ports. */
+/* XXX should reject %rax */
+{"in", 2, 0xe4, X, 0, bwl_Suf|W, { Imm8, Acc, 0 } },
+{"in", 2, 0xec, X, 0, bwl_Suf|W, { InOutPortReg, Acc, 0 } },
+{"in", 1, 0xe4, X, 0, bwl_Suf|W, { Imm8, 0, 0 } },
+{"in", 1, 0xec, X, 0, bwl_Suf|W, { InOutPortReg, 0, 0 } },
+{"out", 2, 0xe6, X, 0, bwl_Suf|W, { Acc, Imm8, 0 } },
+{"out", 2, 0xee, X, 0, bwl_Suf|W, { Acc, InOutPortReg, 0 } },
+{"out", 1, 0xe6, X, 0, bwl_Suf|W, { Imm8, 0, 0 } },
+{"out", 1, 0xee, X, 0, bwl_Suf|W, { InOutPortReg, 0, 0 } },
+
+/* Load effective address. */
+{"lea", 2, 0x8d, X, 0, wlq_Suf|Modrm, { WordMem, WordReg, 0 } },
+
+/* Load segment registers from memory. */
+{"lds", 2, 0xc5, X, CpuNo64, wl_Suf|Modrm, { WordMem, WordReg, 0} },
+{"les", 2, 0xc4, X, CpuNo64, wl_Suf|Modrm, { WordMem, WordReg, 0} },
+{"lfs", 2, 0x0fb4, X, Cpu386, wl_Suf|Modrm, { WordMem, WordReg, 0} },
+{"lgs", 2, 0x0fb5, X, Cpu386, wl_Suf|Modrm, { WordMem, WordReg, 0} },
+{"lss", 2, 0x0fb2, X, Cpu386, wl_Suf|Modrm, { WordMem, WordReg, 0} },
+
+/* Flags register instructions. */
+{"clc", 0, 0xf8, X, 0, NoSuf, { 0, 0, 0} },
+{"cld", 0, 0xfc, X, 0, NoSuf, { 0, 0, 0} },
+{"cli", 0, 0xfa, X, 0, NoSuf, { 0, 0, 0} },
+{"clts", 0, 0x0f06, X, Cpu286, NoSuf, { 0, 0, 0} },
+{"cmc", 0, 0xf5, X, 0, NoSuf, { 0, 0, 0} },
+{"lahf", 0, 0x9f, X, CpuNo64,NoSuf, { 0, 0, 0} },
+{"sahf", 0, 0x9e, X, CpuNo64,NoSuf, { 0, 0, 0} },
+{"pushf", 0, 0x9c, X, CpuNo64,wl_Suf|DefaultSize, { 0, 0, 0} },
+{"pushf", 0, 0x9c, X, Cpu64, wq_Suf|DefaultSize|NoRex64,{ 0, 0, 0} },
+{"popf", 0, 0x9d, X, CpuNo64,wl_Suf|DefaultSize, { 0, 0, 0} },
+{"popf", 0, 0x9d, X, Cpu64, wq_Suf|DefaultSize|NoRex64,{ 0, 0, 0} },
+{"stc", 0, 0xf9, X, 0, NoSuf, { 0, 0, 0} },
+{"std", 0, 0xfd, X, 0, NoSuf, { 0, 0, 0} },
+{"sti", 0, 0xfb, X, 0, NoSuf, { 0, 0, 0} },
+
+/* Arithmetic. */
+{"add", 2, 0x00, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"add", 2, 0x83, 0, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"add", 2, 0x04, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"add", 2, 0x80, 0, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"inc", 1, 0x40, X, CpuNo64,wl_Suf|ShortForm, { WordReg, 0, 0} },
+{"inc", 1, 0xfe, 0, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"sub", 2, 0x28, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"sub", 2, 0x83, 5, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"sub", 2, 0x2c, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"sub", 2, 0x80, 5, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"dec", 1, 0x48, X, CpuNo64, wl_Suf|ShortForm, { WordReg, 0, 0} },
+{"dec", 1, 0xfe, 1, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"sbb", 2, 0x18, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"sbb", 2, 0x83, 3, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"sbb", 2, 0x1c, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"sbb", 2, 0x80, 3, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"cmp", 2, 0x38, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"cmp", 2, 0x83, 7, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"cmp", 2, 0x3c, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"cmp", 2, 0x80, 7, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"test", 2, 0x84, X, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, Reg, 0} },
+{"test", 2, 0x84, X, 0, bwlq_Suf|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"test", 2, 0xa8, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"test", 2, 0xf6, 0, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"and", 2, 0x20, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"and", 2, 0x83, 4, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"and", 2, 0x24, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"and", 2, 0x80, 4, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"or", 2, 0x08, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"or", 2, 0x83, 1, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"or", 2, 0x0c, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"or", 2, 0x80, 1, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"xor", 2, 0x30, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"xor", 2, 0x83, 6, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"xor", 2, 0x34, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"xor", 2, 0x80, 6, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+/* clr with 1 operand is really xor with 2 operands. */
+{"clr", 1, 0x30, X, 0, bwlq_Suf|W|Modrm|regKludge, { Reg, 0, 0 } },
+
+{"adc", 2, 0x10, X, 0, bwlq_Suf|D|W|Modrm, { Reg, Reg|AnyMem, 0} },
+{"adc", 2, 0x83, 2, 0, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, 0} },
+{"adc", 2, 0x14, X, 0, bwlq_Suf|W, { EncImm, Acc, 0} },
+{"adc", 2, 0x80, 2, 0, bwlq_Suf|W|Modrm, { EncImm, Reg|AnyMem, 0} },
+
+{"neg", 1, 0xf6, 3, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+{"not", 1, 0xf6, 2, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"aaa", 0, 0x37, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"aas", 0, 0x3f, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"daa", 0, 0x27, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"das", 0, 0x2f, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"aad", 0, 0xd50a, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"aad", 1, 0xd5, X, CpuNo64, NoSuf, { Imm8S, 0, 0} },
+{"aam", 0, 0xd40a, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"aam", 1, 0xd4, X, CpuNo64, NoSuf, { Imm8S, 0, 0} },
+
+/* Conversion insns. */
+/* Intel naming */
+{"cbw", 0, 0x98, X, 0, NoSuf|Size16, { 0, 0, 0} },
+{"cdqe", 0, 0x98, X, Cpu64, NoSuf|Size64, { 0, 0, 0} },
+{"cwde", 0, 0x98, X, 0, NoSuf|Size32, { 0, 0, 0} },
+{"cwd", 0, 0x99, X, 0, NoSuf|Size16, { 0, 0, 0} },
+{"cdq", 0, 0x99, X, 0, NoSuf|Size32, { 0, 0, 0} },
+{"cqo", 0, 0x99, X, Cpu64, NoSuf|Size64, { 0, 0, 0} },
+/* AT&T naming */
+{"cbtw", 0, 0x98, X, 0, NoSuf|Size16, { 0, 0, 0} },
+{"cltq", 0, 0x98, X, Cpu64, NoSuf|Size64, { 0, 0, 0} },
+{"cwtl", 0, 0x98, X, 0, NoSuf|Size32, { 0, 0, 0} },
+{"cwtd", 0, 0x99, X, 0, NoSuf|Size16, { 0, 0, 0} },
+{"cltd", 0, 0x99, X, 0, NoSuf|Size32, { 0, 0, 0} },
+{"cqto", 0, 0x99, X, Cpu64, NoSuf|Size64, { 0, 0, 0} },
+
+/* Warning! the mul/imul (opcode 0xf6) must only have 1 operand! They are
+ expanding 64-bit multiplies, and *cannot* be selected to accomplish
+ 'imul %ebx, %eax' (opcode 0x0faf must be used in this case)
+ These multiplies can only be selected with single operand forms. */
+{"mul", 1, 0xf6, 4, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+{"imul", 1, 0xf6, 5, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+{"imul", 2, 0x0faf, X, Cpu386, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"imul", 3, 0x6b, X, Cpu186, wlq_Suf|Modrm, { Imm8S, WordReg|WordMem, WordReg} },
+{"imul", 3, 0x69, X, Cpu186, wlq_Suf|Modrm, { Imm16|Imm32S|Imm32, WordReg|WordMem, WordReg} },
+/* imul with 2 operands mimics imul with 3 by putting the register in
+ both i.rm.reg & i.rm.regmem fields. regKludge enables this
+ transformation. */
+{"imul", 2, 0x6b, X, Cpu186, wlq_Suf|Modrm|regKludge,{ Imm8S, WordReg, 0} },
+{"imul", 2, 0x69, X, Cpu186, wlq_Suf|Modrm|regKludge,{ Imm16|Imm32S|Imm32, WordReg, 0} },
+
+{"div", 1, 0xf6, 6, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+{"div", 2, 0xf6, 6, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, Acc, 0} },
+{"idiv", 1, 0xf6, 7, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+{"idiv", 2, 0xf6, 7, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, Acc, 0} },
+
+{"rol", 2, 0xd0, 0, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"rol", 2, 0xc0, 0, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"rol", 2, 0xd2, 0, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"rol", 1, 0xd0, 0, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"ror", 2, 0xd0, 1, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"ror", 2, 0xc0, 1, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"ror", 2, 0xd2, 1, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"ror", 1, 0xd0, 1, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"rcl", 2, 0xd0, 2, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"rcl", 2, 0xc0, 2, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"rcl", 2, 0xd2, 2, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"rcl", 1, 0xd0, 2, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"rcr", 2, 0xd0, 3, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"rcr", 2, 0xc0, 3, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"rcr", 2, 0xd2, 3, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"rcr", 1, 0xd0, 3, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"sal", 2, 0xd0, 4, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"sal", 2, 0xc0, 4, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"sal", 2, 0xd2, 4, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"sal", 1, 0xd0, 4, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"shl", 2, 0xd0, 4, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"shl", 2, 0xc0, 4, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"shl", 2, 0xd2, 4, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"shl", 1, 0xd0, 4, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"shr", 2, 0xd0, 5, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"shr", 2, 0xc0, 5, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"shr", 2, 0xd2, 5, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"shr", 1, 0xd0, 5, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"sar", 2, 0xd0, 7, 0, bwlq_Suf|W|Modrm, { Imm1, Reg|AnyMem, 0} },
+{"sar", 2, 0xc0, 7, Cpu186, bwlq_Suf|W|Modrm, { Imm8, Reg|AnyMem, 0} },
+{"sar", 2, 0xd2, 7, 0, bwlq_Suf|W|Modrm, { ShiftCount, Reg|AnyMem, 0} },
+{"sar", 1, 0xd0, 7, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, 0, 0} },
+
+{"shld", 3, 0x0fa4, X, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg, WordReg|WordMem} },
+{"shld", 3, 0x0fa5, X, Cpu386, wlq_Suf|Modrm, { ShiftCount, WordReg, WordReg|WordMem} },
+{"shld", 2, 0x0fa5, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+
+{"shrd", 3, 0x0fac, X, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg, WordReg|WordMem} },
+{"shrd", 3, 0x0fad, X, Cpu386, wlq_Suf|Modrm, { ShiftCount, WordReg, WordReg|WordMem} },
+{"shrd", 2, 0x0fad, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+
+/* Control transfer instructions. */
+{"call", 1, 0xe8, X, CpuNo64, wl_Suf|JumpDword|DefaultSize, { Disp16|Disp32, 0, 0} },
+{"call", 1, 0xe8, X, Cpu64, wq_Suf|JumpDword|DefaultSize|NoRex64, { Disp16|Disp32, 0, 0} },
+{"call", 1, 0xff, 2, CpuNo64, wl_Suf|Modrm|DefaultSize, { WordReg|WordMem|JumpAbsolute, 0, 0} },
+{"call", 1, 0xff, 2, Cpu64, wq_Suf|Modrm|DefaultSize|NoRex64, { Reg16|Reg64|WordMem|LLongMem|JumpAbsolute, 0, 0} },
+/* Intel Syntax */
+{"call", 2, 0x9a, X, CpuNo64, wl_Suf|JumpInterSegment|DefaultSize, { Imm16, Imm16|Imm32, 0} },
+/* Intel Syntax */
+{"call", 1, 0xff, 3, 0, x_Suf|Modrm|DefaultSize, {WordMem, 0, 0} },
+{"lcall", 2, 0x9a, X, CpuNo64, wl_Suf|JumpInterSegment|DefaultSize, {Imm16, Imm16|Imm32, 0} },
+{"lcall", 1, 0xff, 3, 0, wl_Suf|Modrm|DefaultSize, {WordMem|JumpAbsolute, 0, 0} },
+
+#define JUMP_PC_RELATIVE 0xeb
+{"jmp", 1, 0xeb, X, 0, NoSuf|Jump, { Disp,0, 0} },
+{"jmp", 1, 0xff, 4, CpuNo64, wl_Suf|Modrm, { WordReg|WordMem|JumpAbsolute, 0, 0} },
+{"jmp", 1, 0xff, 4, Cpu64, wq_Suf|Modrm|NoRex64, { Reg16|Reg64|ShortMem|LLongMem|JumpAbsolute, 0, 0} },
+/* Intel Syntax. */
+{"jmp", 2, 0xea, X, CpuNo64,wl_Suf|JumpInterSegment, { Imm16, Imm16|Imm32, 0} },
+/* Intel Syntax. */
+{"jmp", 1, 0xff, 5, 0, x_Suf|Modrm, { WordMem, 0, 0} },
+{"ljmp", 2, 0xea, X, CpuNo64, wl_Suf|JumpInterSegment, { Imm16, Imm16|Imm32, 0} },
+{"ljmp", 1, 0xff, 5, 0, wl_Suf|Modrm, { WordMem|JumpAbsolute, 0, 0} },
+
+{"ret", 0, 0xc3, X, CpuNo64,wl_Suf|DefaultSize, { 0, 0, 0} },
+{"ret", 1, 0xc2, X, CpuNo64,wl_Suf|DefaultSize, { Imm16, 0, 0} },
+{"ret", 0, 0xc3, X, Cpu64, wq_Suf|DefaultSize|NoRex64,{ 0, 0, 0} },
+{"ret", 1, 0xc2, X, Cpu64, wq_Suf|DefaultSize|NoRex64,{ Imm16, 0, 0} },
+{"lret", 0, 0xcb, X, 0, wlq_Suf|DefaultSize, { 0, 0, 0} },
+{"lret", 1, 0xca, X, 0, wlq_Suf|DefaultSize, { Imm16, 0, 0} },
+{"enter", 2, 0xc8, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { Imm16, Imm8, 0} },
+{"enter", 2, 0xc8, X, Cpu64, wq_Suf|DefaultSize|NoRex64, { Imm16, Imm8, 0} },
+{"leave", 0, 0xc9, X, Cpu186|CpuNo64, wl_Suf|DefaultSize, { 0, 0, 0} },
+{"leave", 0, 0xc9, X, Cpu64, wq_Suf|DefaultSize|NoRex64, { 0, 0, 0} },
+
+/* Conditional jumps. */
+{"jo", 1, 0x70, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jno", 1, 0x71, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jb", 1, 0x72, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jc", 1, 0x72, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnae", 1, 0x72, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnb", 1, 0x73, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnc", 1, 0x73, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jae", 1, 0x73, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"je", 1, 0x74, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jz", 1, 0x74, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jne", 1, 0x75, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnz", 1, 0x75, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jbe", 1, 0x76, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jna", 1, 0x76, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnbe", 1, 0x77, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"ja", 1, 0x77, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"js", 1, 0x78, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jns", 1, 0x79, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jp", 1, 0x7a, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jpe", 1, 0x7a, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnp", 1, 0x7b, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jpo", 1, 0x7b, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jl", 1, 0x7c, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnge", 1, 0x7c, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnl", 1, 0x7d, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jge", 1, 0x7d, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jle", 1, 0x7e, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jng", 1, 0x7e, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jnle", 1, 0x7f, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+{"jg", 1, 0x7f, X, 0, NoSuf|Jump, { Disp, 0, 0} },
+
+/* jcxz vs. jecxz is chosen on the basis of the address size prefix. */
+{"jcxz", 1, 0xe3, X, CpuNo64,NoSuf|JumpByte|Size16, { Disp, 0, 0} },
+{"jecxz", 1, 0xe3, X, CpuNo64,NoSuf|JumpByte|Size32, { Disp, 0, 0} },
+{"jecxz", 1, 0x67e3, X, Cpu64,NoSuf|JumpByte|Size32, { Disp, 0, 0} },
+{"jrcxz", 1, 0xe3, X, Cpu64, NoSuf|JumpByte|Size64|NoRex64, { Disp, 0, 0} },
+
+/* The loop instructions also use the address size prefix to select
+ %cx rather than %ecx for the loop count, so the `w' form of these
+ instructions emit an address size prefix rather than a data size
+ prefix. */
+{"loop", 1, 0xe2, X, CpuNo64,wl_Suf|JumpByte,{ Disp, 0, 0} },
+{"loop", 1, 0xe2, X, Cpu64, lq_Suf|JumpByte|NoRex64,{ Disp, 0, 0} },
+{"loopz", 1, 0xe1, X, CpuNo64,wl_Suf|JumpByte,{ Disp, 0, 0} },
+{"loopz", 1, 0xe1, X, Cpu64, lq_Suf|JumpByte|NoRex64,{ Disp, 0, 0} },
+{"loope", 1, 0xe1, X, CpuNo64,wl_Suf|JumpByte,{ Disp, 0, 0} },
+{"loope", 1, 0xe1, X, Cpu64, lq_Suf|JumpByte|NoRex64,{ Disp, 0, 0} },
+{"loopnz", 1, 0xe0, X, CpuNo64,wl_Suf|JumpByte,{ Disp, 0, 0} },
+{"loopnz", 1, 0xe0, X, Cpu64, lq_Suf|JumpByte|NoRex64,{ Disp, 0, 0} },
+{"loopne", 1, 0xe0, X, CpuNo64,wl_Suf|JumpByte,{ Disp, 0, 0} },
+{"loopne", 1, 0xe0, X, Cpu64, lq_Suf|JumpByte|NoRex64,{ Disp, 0, 0} },
+
+/* Set byte on flag instructions. */
+{"seto", 1, 0x0f90, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setno", 1, 0x0f91, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setb", 1, 0x0f92, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setc", 1, 0x0f92, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnae", 1, 0x0f92, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnb", 1, 0x0f93, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnc", 1, 0x0f93, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setae", 1, 0x0f93, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"sete", 1, 0x0f94, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setz", 1, 0x0f94, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setne", 1, 0x0f95, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnz", 1, 0x0f95, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setbe", 1, 0x0f96, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setna", 1, 0x0f96, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnbe", 1, 0x0f97, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"seta", 1, 0x0f97, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"sets", 1, 0x0f98, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setns", 1, 0x0f99, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setp", 1, 0x0f9a, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setpe", 1, 0x0f9a, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnp", 1, 0x0f9b, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setpo", 1, 0x0f9b, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setl", 1, 0x0f9c, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnge", 1, 0x0f9c, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnl", 1, 0x0f9d, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setge", 1, 0x0f9d, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setle", 1, 0x0f9e, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setng", 1, 0x0f9e, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setnle", 1, 0x0f9f, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+{"setg", 1, 0x0f9f, 0, Cpu386, b_Suf|Modrm, { Reg8|ByteMem, 0, 0} },
+
+/* String manipulation. */
+{"cmps", 0, 0xa6, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"cmps", 2, 0xa6, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, AnyMem, 0} },
+{"scmp", 0, 0xa6, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"scmp", 2, 0xa6, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, AnyMem, 0} },
+{"ins", 0, 0x6c, X, Cpu186, bwl_Suf|W|IsString, { 0, 0, 0} },
+{"ins", 2, 0x6c, X, Cpu186, bwl_Suf|W|IsString, { InOutPortReg, AnyMem|EsSeg, 0} },
+{"outs", 0, 0x6e, X, Cpu186, bwl_Suf|W|IsString, { 0, 0, 0} },
+{"outs", 2, 0x6e, X, Cpu186, bwl_Suf|W|IsString, { AnyMem, InOutPortReg, 0} },
+{"lods", 0, 0xac, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"lods", 1, 0xac, X, 0, bwlq_Suf|W|IsString, { AnyMem, 0, 0} },
+{"lods", 2, 0xac, X, 0, bwlq_Suf|W|IsString, { AnyMem, Acc, 0} },
+{"slod", 0, 0xac, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"slod", 1, 0xac, X, 0, bwlq_Suf|W|IsString, { AnyMem, 0, 0} },
+{"slod", 2, 0xac, X, 0, bwlq_Suf|W|IsString, { AnyMem, Acc, 0} },
+{"movs", 0, 0xa4, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"movs", 2, 0xa4, X, 0, bwlq_Suf|W|IsString, { AnyMem, AnyMem|EsSeg, 0} },
+{"smov", 0, 0xa4, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"smov", 2, 0xa4, X, 0, bwlq_Suf|W|IsString, { AnyMem, AnyMem|EsSeg, 0} },
+{"scas", 0, 0xae, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"scas", 1, 0xae, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, 0, 0} },
+{"scas", 2, 0xae, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, Acc, 0} },
+{"ssca", 0, 0xae, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"ssca", 1, 0xae, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, 0, 0} },
+{"ssca", 2, 0xae, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, Acc, 0} },
+{"stos", 0, 0xaa, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"stos", 1, 0xaa, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, 0, 0} },
+{"stos", 2, 0xaa, X, 0, bwlq_Suf|W|IsString, { Acc, AnyMem|EsSeg, 0} },
+{"ssto", 0, 0xaa, X, 0, bwlq_Suf|W|IsString, { 0, 0, 0} },
+{"ssto", 1, 0xaa, X, 0, bwlq_Suf|W|IsString, { AnyMem|EsSeg, 0, 0} },
+{"ssto", 2, 0xaa, X, 0, bwlq_Suf|W|IsString, { Acc, AnyMem|EsSeg, 0} },
+{"xlat", 0, 0xd7, X, 0, b_Suf|IsString, { 0, 0, 0} },
+{"xlat", 1, 0xd7, X, 0, b_Suf|IsString, { AnyMem, 0, 0} },
+
+/* Bit manipulation. */
+{"bsf", 2, 0x0fbc, X, Cpu386, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"bsr", 2, 0x0fbd, X, Cpu386, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"bt", 2, 0x0fa3, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+{"bt", 2, 0x0fba, 4, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg|WordMem, 0} },
+{"btc", 2, 0x0fbb, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+{"btc", 2, 0x0fba, 7, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg|WordMem, 0} },
+{"btr", 2, 0x0fb3, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+{"btr", 2, 0x0fba, 6, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg|WordMem, 0} },
+{"bts", 2, 0x0fab, X, Cpu386, wlq_Suf|Modrm, { WordReg, WordReg|WordMem, 0} },
+{"bts", 2, 0x0fba, 5, Cpu386, wlq_Suf|Modrm, { Imm8, WordReg|WordMem, 0} },
+
+/* Interrupts & op. sys insns. */
+/* See gas/config/tc-i386.c for conversion of 'int $3' into the special
+ int 3 insn. */
+#define INT_OPCODE 0xcd
+#define INT3_OPCODE 0xcc
+{"int", 1, 0xcd, X, 0, NoSuf, { Imm8, 0, 0} },
+{"int3", 0, 0xcc, X, 0, NoSuf, { 0, 0, 0} },
+{"into", 0, 0xce, X, CpuNo64, NoSuf, { 0, 0, 0} },
+{"iret", 0, 0xcf, X, 0, wlq_Suf|DefaultSize, { 0, 0, 0} },
+/* i386sl, i486sl, later 486, and Pentium. */
+{"rsm", 0, 0x0faa, X, Cpu386, NoSuf, { 0, 0, 0} },
+
+{"bound", 2, 0x62, X, Cpu186|CpuNo64, wl_Suf|Modrm, { WordReg, WordMem, 0} },
+
+{"hlt", 0, 0xf4, X, 0, NoSuf, { 0, 0, 0} },
+/* nop is actually 'xchgl %eax, %eax'. */
+{"nop", 0, 0x90, X, 0, NoSuf, { 0, 0, 0} },
+
+/* Protection control. */
+{"arpl", 2, 0x63, X, Cpu286|CpuNo64, w_Suf|Modrm|IgnoreSize,{ Reg16, Reg16|ShortMem, 0} },
+{"lar", 2, 0x0f02, X, Cpu286, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"lgdt", 1, 0x0f01, 2, Cpu286|CpuNo64, wl_Suf|Modrm, { WordMem, 0, 0} },
+{"lgdt", 1, 0x0f01, 2, Cpu64, q_Suf|Modrm|NoRex64, { LLongMem, 0, 0} },
+{"lidt", 1, 0x0f01, 3, Cpu286|CpuNo64, wl_Suf|Modrm, { WordMem, 0, 0} },
+{"lidt", 1, 0x0f01, 3, Cpu64, q_Suf|Modrm|NoRex64, { LLongMem, 0, 0} },
+{"lldt", 1, 0x0f00, 2, Cpu286, w_Suf|Modrm|IgnoreSize,{ Reg16|ShortMem, 0, 0} },
+{"lmsw", 1, 0x0f01, 6, Cpu286, w_Suf|Modrm|IgnoreSize,{ Reg16|ShortMem, 0, 0} },
+{"lsl", 2, 0x0f03, X, Cpu286, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"ltr", 1, 0x0f00, 3, Cpu286, w_Suf|Modrm|IgnoreSize,{ Reg16|ShortMem, 0, 0} },
+
+{"sgdt", 1, 0x0f01, 0, Cpu286|CpuNo64, wl_Suf|Modrm, { WordMem, 0, 0} },
+{"sgdt", 1, 0x0f01, 0, Cpu64, q_Suf|Modrm|NoRex64, { LLongMem, 0, 0} },
+{"sidt", 1, 0x0f01, 1, Cpu286|CpuNo64, wl_Suf|Modrm, { WordMem, 0, 0} },
+{"sidt", 1, 0x0f01, 1, Cpu64, q_Suf|Modrm, { LLongMem, 0, 0} },
+{"sldt", 1, 0x0f00, 0, Cpu286, wlq_Suf|Modrm, { WordReg|InvMem, 0, 0} },
+{"sldt", 1, 0x0f00, 0, Cpu286, w_Suf|Modrm|IgnoreSize,{ ShortMem, 0, 0} },
+{"smsw", 1, 0x0f01, 4, Cpu286, wlq_Suf|Modrm, { WordReg|InvMem, 0, 0} },
+{"smsw", 1, 0x0f01, 4, Cpu286, w_Suf|Modrm|IgnoreSize,{ ShortMem, 0, 0} },
+{"str", 1, 0x0f00, 1, Cpu286, wlq_Suf|Modrm, { WordReg|InvMem, 0, 0} },
+{"str", 1, 0x0f00, 1, Cpu286, w_Suf|Modrm|IgnoreSize,{ ShortMem, 0, 0} },
+
+{"verr", 1, 0x0f00, 4, Cpu286, w_Suf|Modrm|IgnoreSize,{ Reg16|ShortMem, 0, 0} },
+{"verw", 1, 0x0f00, 5, Cpu286, w_Suf|Modrm|IgnoreSize,{ Reg16|ShortMem, 0, 0} },
+
+/* Floating point instructions. */
+
+/* load */
+{"fld", 1, 0xd9c0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fld", 1, 0xd9, 0, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fld", 1, 0xd9c0, X, 0, l_FP|ShortForm|Ugh, { FloatReg, 0, 0} },
+/* Intel Syntax */
+{"fld", 1, 0xdb, 5, 0, x_FP|Modrm, { LLongMem, 0, 0} },
+{"fild", 1, 0xdf, 0, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+/* Intel Syntax */
+{"fildq", 1, 0xdf, 5, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fildll", 1, 0xdf, 5, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fldt", 1, 0xdb, 5, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fbld", 1, 0xdf, 4, 0, FP|Modrm, { LLongMem, 0, 0} },
+
+/* store (no pop) */
+{"fst", 1, 0xddd0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fst", 1, 0xd9, 2, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fst", 1, 0xddd0, X, 0, l_FP|ShortForm|Ugh, { FloatReg, 0, 0} },
+{"fist", 1, 0xdf, 2, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+/* store (with pop) */
+{"fstp", 1, 0xddd8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fstp", 1, 0xd9, 3, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fstp", 1, 0xddd8, X, 0, l_FP|ShortForm|Ugh, { FloatReg, 0, 0} },
+/* Intel Syntax */
+{"fstp", 1, 0xdb, 7, 0, x_FP|Modrm, { LLongMem, 0, 0} },
+{"fistp", 1, 0xdf, 3, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+/* Intel Syntax */
+{"fistpq", 1, 0xdf, 7, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fistpll",1, 0xdf, 7, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fstpt", 1, 0xdb, 7, 0, FP|Modrm, { LLongMem, 0, 0} },
+{"fbstp", 1, 0xdf, 6, 0, FP|Modrm, { LLongMem, 0, 0} },
+
+/* exchange %st<n> with %st0 */
+{"fxch", 1, 0xd9c8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for fxch %st(1) */
+{"fxch", 0, 0xd9c9, X, 0, FP, { 0, 0, 0} },
+
+/* comparison (without pop) */
+{"fcom", 1, 0xd8d0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for fcom %st(1) */
+{"fcom", 0, 0xd8d1, X, 0, FP, { 0, 0, 0} },
+{"fcom", 1, 0xd8, 2, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fcom", 1, 0xd8d0, X, 0, l_FP|ShortForm|Ugh, { FloatReg, 0, 0} },
+{"ficom", 1, 0xde, 2, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+/* comparison (with pop) */
+{"fcomp", 1, 0xd8d8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for fcomp %st(1) */
+{"fcomp", 0, 0xd8d9, X, 0, FP, { 0, 0, 0} },
+{"fcomp", 1, 0xd8, 3, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fcomp", 1, 0xd8d8, X, 0, l_FP|ShortForm|Ugh, { FloatReg, 0, 0} },
+{"ficomp", 1, 0xde, 3, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+{"fcompp", 0, 0xded9, X, 0, FP, { 0, 0, 0} },
+
+/* unordered comparison (with pop) */
+{"fucom", 1, 0xdde0, X, Cpu286, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for fucom %st(1) */
+{"fucom", 0, 0xdde1, X, Cpu286, FP, { 0, 0, 0} },
+{"fucomp", 1, 0xdde8, X, Cpu286, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for fucomp %st(1) */
+{"fucomp", 0, 0xdde9, X, Cpu286, FP, { 0, 0, 0} },
+{"fucompp",0, 0xdae9, X, Cpu286, FP, { 0, 0, 0} },
+
+{"ftst", 0, 0xd9e4, X, 0, FP, { 0, 0, 0} },
+{"fxam", 0, 0xd9e5, X, 0, FP, { 0, 0, 0} },
+
+/* load constants into %st0 */
+{"fld1", 0, 0xd9e8, X, 0, FP, { 0, 0, 0} },
+{"fldl2t", 0, 0xd9e9, X, 0, FP, { 0, 0, 0} },
+{"fldl2e", 0, 0xd9ea, X, 0, FP, { 0, 0, 0} },
+{"fldpi", 0, 0xd9eb, X, 0, FP, { 0, 0, 0} },
+{"fldlg2", 0, 0xd9ec, X, 0, FP, { 0, 0, 0} },
+{"fldln2", 0, 0xd9ed, X, 0, FP, { 0, 0, 0} },
+{"fldz", 0, 0xd9ee, X, 0, FP, { 0, 0, 0} },
+
+/* Arithmetic. */
+
+/* add */
+{"fadd", 2, 0xd8c0, X, 0, FP|ShortForm|FloatD, { FloatReg, FloatAcc, 0} },
+/* alias for fadd %st(i), %st */
+{"fadd", 1, 0xd8c0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for faddp */
+{"fadd", 0, 0xdec1, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fadd", 1, 0xd8, 0, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fiadd", 1, 0xde, 0, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+{"faddp", 2, 0xdec0, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"faddp", 1, 0xdec0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+/* alias for faddp %st, %st(1) */
+{"faddp", 0, 0xdec1, X, 0, FP, { 0, 0, 0} },
+{"faddp", 2, 0xdec0, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+
+/* subtract */
+{"fsub", 2, 0xd8e0, X, 0, FP|ShortForm|FloatDR, { FloatReg, FloatAcc, 0} },
+{"fsub", 1, 0xd8e0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for fsubp */
+{"fsub", 0, 0xdee1, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fsub", 1, 0xd8, 4, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fisub", 1, 0xde, 4, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+#if SYSV386_COMPAT
+{"fsubp", 2, 0xdee0, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fsubp", 1, 0xdee0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fsubp", 0, 0xdee1, X, 0, FP, { 0, 0, 0} },
+#if OLDGCC_COMPAT
+{"fsubp", 2, 0xdee0, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+#endif
+#else
+{"fsubp", 2, 0xdee8, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fsubp", 1, 0xdee8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fsubp", 0, 0xdee9, X, 0, FP, { 0, 0, 0} },
+#endif
+
+/* subtract reverse */
+{"fsubr", 2, 0xd8e8, X, 0, FP|ShortForm|FloatDR, { FloatReg, FloatAcc, 0} },
+{"fsubr", 1, 0xd8e8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for fsubrp */
+{"fsubr", 0, 0xdee9, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fsubr", 1, 0xd8, 5, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fisubr", 1, 0xde, 5, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+#if SYSV386_COMPAT
+{"fsubrp", 2, 0xdee8, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fsubrp", 1, 0xdee8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fsubrp", 0, 0xdee9, X, 0, FP, { 0, 0, 0} },
+#if OLDGCC_COMPAT
+{"fsubrp", 2, 0xdee8, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+#endif
+#else
+{"fsubrp", 2, 0xdee0, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fsubrp", 1, 0xdee0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fsubrp", 0, 0xdee1, X, 0, FP, { 0, 0, 0} },
+#endif
+
+/* multiply */
+{"fmul", 2, 0xd8c8, X, 0, FP|ShortForm|FloatD, { FloatReg, FloatAcc, 0} },
+{"fmul", 1, 0xd8c8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for fmulp */
+{"fmul", 0, 0xdec9, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fmul", 1, 0xd8, 1, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fimul", 1, 0xde, 1, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+{"fmulp", 2, 0xdec8, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fmulp", 1, 0xdec8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fmulp", 0, 0xdec9, X, 0, FP, { 0, 0, 0} },
+{"fmulp", 2, 0xdec8, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+
+/* divide */
+{"fdiv", 2, 0xd8f0, X, 0, FP|ShortForm|FloatDR, { FloatReg, FloatAcc, 0} },
+{"fdiv", 1, 0xd8f0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for fdivp */
+{"fdiv", 0, 0xdef1, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fdiv", 1, 0xd8, 6, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fidiv", 1, 0xde, 6, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+#if SYSV386_COMPAT
+{"fdivp", 2, 0xdef0, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fdivp", 1, 0xdef0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fdivp", 0, 0xdef1, X, 0, FP, { 0, 0, 0} },
+#if OLDGCC_COMPAT
+{"fdivp", 2, 0xdef0, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+#endif
+#else
+{"fdivp", 2, 0xdef8, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fdivp", 1, 0xdef8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fdivp", 0, 0xdef9, X, 0, FP, { 0, 0, 0} },
+#endif
+
+/* divide reverse */
+{"fdivr", 2, 0xd8f8, X, 0, FP|ShortForm|FloatDR, { FloatReg, FloatAcc, 0} },
+{"fdivr", 1, 0xd8f8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+#if SYSV386_COMPAT
+/* alias for fdivrp */
+{"fdivr", 0, 0xdef9, X, 0, FP|Ugh, { 0, 0, 0} },
+#endif
+{"fdivr", 1, 0xd8, 7, 0, sl_FP|FloatMF|Modrm, { LongMem|LLongMem, 0, 0} },
+{"fidivr", 1, 0xde, 7, 0, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+
+#if SYSV386_COMPAT
+{"fdivrp", 2, 0xdef8, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fdivrp", 1, 0xdef8, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fdivrp", 0, 0xdef9, X, 0, FP, { 0, 0, 0} },
+#if OLDGCC_COMPAT
+{"fdivrp", 2, 0xdef8, X, 0, FP|ShortForm|Ugh, { FloatReg, FloatAcc, 0} },
+#endif
+#else
+{"fdivrp", 2, 0xdef0, X, 0, FP|ShortForm, { FloatAcc, FloatReg, 0} },
+{"fdivrp", 1, 0xdef0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+{"fdivrp", 0, 0xdef1, X, 0, FP, { 0, 0, 0} },
+#endif
+
+{"f2xm1", 0, 0xd9f0, X, 0, FP, { 0, 0, 0} },
+{"fyl2x", 0, 0xd9f1, X, 0, FP, { 0, 0, 0} },
+{"fptan", 0, 0xd9f2, X, 0, FP, { 0, 0, 0} },
+{"fpatan", 0, 0xd9f3, X, 0, FP, { 0, 0, 0} },
+{"fxtract",0, 0xd9f4, X, 0, FP, { 0, 0, 0} },
+{"fprem1", 0, 0xd9f5, X, Cpu286, FP, { 0, 0, 0} },
+{"fdecstp",0, 0xd9f6, X, 0, FP, { 0, 0, 0} },
+{"fincstp",0, 0xd9f7, X, 0, FP, { 0, 0, 0} },
+{"fprem", 0, 0xd9f8, X, 0, FP, { 0, 0, 0} },
+{"fyl2xp1",0, 0xd9f9, X, 0, FP, { 0, 0, 0} },
+{"fsqrt", 0, 0xd9fa, X, 0, FP, { 0, 0, 0} },
+{"fsincos",0, 0xd9fb, X, Cpu286, FP, { 0, 0, 0} },
+{"frndint",0, 0xd9fc, X, 0, FP, { 0, 0, 0} },
+{"fscale", 0, 0xd9fd, X, 0, FP, { 0, 0, 0} },
+{"fsin", 0, 0xd9fe, X, Cpu286, FP, { 0, 0, 0} },
+{"fcos", 0, 0xd9ff, X, Cpu286, FP, { 0, 0, 0} },
+{"fchs", 0, 0xd9e0, X, 0, FP, { 0, 0, 0} },
+{"fabs", 0, 0xd9e1, X, 0, FP, { 0, 0, 0} },
+
+/* processor control */
+{"fninit", 0, 0xdbe3, X, 0, FP, { 0, 0, 0} },
+{"finit", 0, 0xdbe3, X, 0, FP|FWait, { 0, 0, 0} },
+{"fldcw", 1, 0xd9, 5, 0, FP|Modrm, { ShortMem, 0, 0} },
+{"fnstcw", 1, 0xd9, 7, 0, FP|Modrm, { ShortMem, 0, 0} },
+{"fstcw", 1, 0xd9, 7, 0, FP|FWait|Modrm, { ShortMem, 0, 0} },
+{"fnstsw", 1, 0xdfe0, X, 0, FP, { Acc, 0, 0} },
+{"fnstsw", 1, 0xdd, 7, 0, FP|Modrm, { ShortMem, 0, 0} },
+{"fnstsw", 0, 0xdfe0, X, 0, FP, { 0, 0, 0} },
+{"fstsw", 1, 0xdfe0, X, 0, FP|FWait, { Acc, 0, 0} },
+{"fstsw", 1, 0xdd, 7, 0, FP|FWait|Modrm, { ShortMem, 0, 0} },
+{"fstsw", 0, 0xdfe0, X, 0, FP|FWait, { 0, 0, 0} },
+{"fnclex", 0, 0xdbe2, X, 0, FP, { 0, 0, 0} },
+{"fclex", 0, 0xdbe2, X, 0, FP|FWait, { 0, 0, 0} },
+/* Short forms of fldenv, fstenv use data size prefix. */
+{"fnstenv",1, 0xd9, 6, 0, sl_Suf|Modrm, { LLongMem, 0, 0} },
+{"fstenv", 1, 0xd9, 6, 0, sl_Suf|FWait|Modrm, { LLongMem, 0, 0} },
+{"fldenv", 1, 0xd9, 4, 0, sl_Suf|Modrm, { LLongMem, 0, 0} },
+{"fnsave", 1, 0xdd, 6, 0, sl_Suf|Modrm, { LLongMem, 0, 0} },
+{"fsave", 1, 0xdd, 6, 0, sl_Suf|FWait|Modrm, { LLongMem, 0, 0} },
+{"frstor", 1, 0xdd, 4, 0, sl_Suf|Modrm, { LLongMem, 0, 0} },
+
+{"ffree", 1, 0xddc0, X, 0, FP|ShortForm, { FloatReg, 0, 0} },
+/* P6:free st(i), pop st */
+{"ffreep", 1, 0xdfc0, X, Cpu686, FP|ShortForm, { FloatReg, 0, 0} },
+{"fnop", 0, 0xd9d0, X, 0, FP, { 0, 0, 0} },
+#define FWAIT_OPCODE 0x9b
+{"fwait", 0, 0x9b, X, 0, FP, { 0, 0, 0} },
+
+/* Opcode prefixes; we allow them as separate insns too. */
+
+#define ADDR_PREFIX_OPCODE 0x67
+{"addr16", 0, 0x67, X, Cpu386|CpuNo64, NoSuf|IsPrefix|Size16|IgnoreSize, { 0, 0, 0} },
+{"addr32", 0, 0x67, X, Cpu386,NoSuf|IsPrefix|Size32|IgnoreSize, { 0, 0, 0} },
+{"aword", 0, 0x67, X, Cpu386|CpuNo64,NoSuf|IsPrefix|Size16|IgnoreSize, { 0, 0, 0} },
+{"adword", 0, 0x67, X, Cpu386,NoSuf|IsPrefix|Size32|IgnoreSize, { 0, 0, 0} },
+#define DATA_PREFIX_OPCODE 0x66
+{"data16", 0, 0x66, X, Cpu386,NoSuf|IsPrefix|Size16|IgnoreSize, { 0, 0, 0} },
+{"data32", 0, 0x66, X, Cpu386|CpuNo64,NoSuf|IsPrefix|Size32|IgnoreSize, { 0, 0, 0} },
+{"word", 0, 0x66, X, Cpu386,NoSuf|IsPrefix|Size16|IgnoreSize, { 0, 0, 0} },
+{"dword", 0, 0x66, X, Cpu386|CpuNo64,NoSuf|IsPrefix|Size32|IgnoreSize, { 0, 0, 0} },
+#define LOCK_PREFIX_OPCODE 0xf0
+{"lock", 0, 0xf0, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"wait", 0, 0x9b, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+#define CS_PREFIX_OPCODE 0x2e
+{"cs", 0, 0x2e, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+#define DS_PREFIX_OPCODE 0x3e
+{"ds", 0, 0x3e, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+#define ES_PREFIX_OPCODE 0x26
+{"es", 0, 0x26, X, CpuNo64, NoSuf|IsPrefix, { 0, 0, 0} },
+#define FS_PREFIX_OPCODE 0x64
+{"fs", 0, 0x64, X, Cpu386, NoSuf|IsPrefix, { 0, 0, 0} },
+#define GS_PREFIX_OPCODE 0x65
+{"gs", 0, 0x65, X, Cpu386, NoSuf|IsPrefix, { 0, 0, 0} },
+#define SS_PREFIX_OPCODE 0x36
+{"ss", 0, 0x36, X, CpuNo64, NoSuf|IsPrefix, { 0, 0, 0} },
+#define REPNE_PREFIX_OPCODE 0xf2
+#define REPE_PREFIX_OPCODE 0xf3
+{"rep", 0, 0xf3, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"repe", 0, 0xf3, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"repz", 0, 0xf3, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"repne", 0, 0xf2, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"repnz", 0, 0xf2, X, 0, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex", 0, 0x40, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexz", 0, 0x41, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexy", 0, 0x42, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexyz", 0, 0x43, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexx", 0, 0x44, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexxz", 0, 0x45, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexxy", 0, 0x46, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rexxyz", 0, 0x47, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64", 0, 0x48, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64z", 0, 0x49, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64y", 0, 0x4a, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64yz",0, 0x4b, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64x", 0, 0x4c, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64xz",0, 0x4d, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64xy",0, 0x4e, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+{"rex64xyz",0, 0x4f, X, Cpu64, NoSuf|IsPrefix, { 0, 0, 0} },
+
+/* 486 extensions. */
+
+{"bswap", 1, 0x0fc8, X, Cpu486, lq_Suf|ShortForm, { Reg32|Reg64, 0, 0 } },
+{"xadd", 2, 0x0fc0, X, Cpu486, bwlq_Suf|W|Modrm, { Reg, Reg|AnyMem, 0 } },
+{"cmpxchg", 2, 0x0fb0, X, Cpu486, bwlq_Suf|W|Modrm, { Reg, Reg|AnyMem, 0 } },
+{"invd", 0, 0x0f08, X, Cpu486, NoSuf, { 0, 0, 0} },
+{"wbinvd", 0, 0x0f09, X, Cpu486, NoSuf, { 0, 0, 0} },
+{"invlpg", 1, 0x0f01, 7, Cpu486, NoSuf|Modrm, { AnyMem, 0, 0} },
+
+/* 586 and late 486 extensions. */
+{"cpuid", 0, 0x0fa2, X, Cpu486, NoSuf, { 0, 0, 0} },
+
+/* Pentium extensions. */
+{"wrmsr", 0, 0x0f30, X, Cpu586, NoSuf, { 0, 0, 0} },
+{"rdtsc", 0, 0x0f31, X, Cpu586, NoSuf, { 0, 0, 0} },
+{"rdmsr", 0, 0x0f32, X, Cpu586, NoSuf, { 0, 0, 0} },
+{"cmpxchg8b",1,0x0fc7, 1, Cpu586, NoSuf|Modrm, { LLongMem, 0, 0} },
+
+/* Pentium II/Pentium Pro extensions. */
+{"sysenter",0, 0x0f34, X, Cpu686, NoSuf, { 0, 0, 0} },
+{"sysexit", 0, 0x0f35, X, Cpu686, NoSuf, { 0, 0, 0} },
+{"fxsave", 1, 0x0fae, 0, Cpu686, FP|Modrm, { LLongMem, 0, 0} },
+{"fxrstor", 1, 0x0fae, 1, Cpu686, FP|Modrm, { LLongMem, 0, 0} },
+{"rdpmc", 0, 0x0f33, X, Cpu686, NoSuf, { 0, 0, 0} },
+/* official undefined instr. */
+{"ud2", 0, 0x0f0b, X, Cpu686, NoSuf, { 0, 0, 0} },
+/* alias for ud2 */
+{"ud2a", 0, 0x0f0b, X, Cpu686, NoSuf, { 0, 0, 0} },
+/* 2nd. official undefined instr. */
+{"ud2b", 0, 0x0fb9, X, Cpu686, NoSuf, { 0, 0, 0} },
+
+{"cmovo", 2, 0x0f40, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovno", 2, 0x0f41, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovb", 2, 0x0f42, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovc", 2, 0x0f42, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnae", 2, 0x0f42, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovae", 2, 0x0f43, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnc", 2, 0x0f43, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnb", 2, 0x0f43, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmove", 2, 0x0f44, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovz", 2, 0x0f44, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovne", 2, 0x0f45, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnz", 2, 0x0f45, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovbe", 2, 0x0f46, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovna", 2, 0x0f46, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmova", 2, 0x0f47, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnbe", 2, 0x0f47, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovs", 2, 0x0f48, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovns", 2, 0x0f49, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovp", 2, 0x0f4a, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnp", 2, 0x0f4b, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovl", 2, 0x0f4c, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnge", 2, 0x0f4c, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovge", 2, 0x0f4d, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnl", 2, 0x0f4d, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovle", 2, 0x0f4e, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovng", 2, 0x0f4e, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovg", 2, 0x0f4f, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+{"cmovnle", 2, 0x0f4f, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
+
+{"fcmovb", 2, 0xdac0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovnae",2, 0xdac0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmove", 2, 0xdac8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovbe", 2, 0xdad0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovna", 2, 0xdad0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovu", 2, 0xdad8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovae", 2, 0xdbc0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovnb", 2, 0xdbc0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovne", 2, 0xdbc8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmova", 2, 0xdbd0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovnbe",2, 0xdbd0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcmovnu", 2, 0xdbd8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+
+{"fcomi", 2, 0xdbf0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcomi", 0, 0xdbf1, X, Cpu686, FP|ShortForm, { 0, 0, 0} },
+{"fcomi", 1, 0xdbf0, X, Cpu686, FP|ShortForm, { FloatReg, 0, 0} },
+{"fucomi", 2, 0xdbe8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fucomi", 0, 0xdbe9, X, Cpu686, FP|ShortForm, { 0, 0, 0} },
+{"fucomi", 1, 0xdbe8, X, Cpu686, FP|ShortForm, { FloatReg, 0, 0} },
+{"fcomip", 2, 0xdff0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcompi", 2, 0xdff0, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fcompi", 0, 0xdff1, X, Cpu686, FP|ShortForm, { 0, 0, 0} },
+{"fcompi", 1, 0xdff0, X, Cpu686, FP|ShortForm, { FloatReg, 0, 0} },
+{"fucomip", 2, 0xdfe8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fucompi", 2, 0xdfe8, X, Cpu686, FP|ShortForm, { FloatReg, FloatAcc, 0} },
+{"fucompi", 0, 0xdfe9, X, Cpu686, FP|ShortForm, { 0, 0, 0} },
+{"fucompi", 1, 0xdfe8, X, Cpu686, FP|ShortForm, { FloatReg, 0, 0} },
+
+/* Pentium4 extensions. */
+
+{"movnti", 2, 0x0fc3, X, CpuP4, FP|Modrm, { WordReg, WordMem, 0 } },
+{"clflush", 1, 0x0fae, 7, CpuP4, FP|Modrm, { ByteMem, 0, 0 } },
+{"lfence", 0, 0x0fae, 0xe8, CpuP4, FP|ImmExt, { 0, 0, 0 } },
+{"mfence", 0, 0x0fae, 0xf0, CpuP4, FP|ImmExt, { 0, 0, 0 } },
+{"pause", 0, 0xf390, X, CpuP4, FP, { 0, 0, 0 } },
+
+/* MMX/SSE2 instructions. */
+
+{"emms", 0, 0x0f77, X, CpuMMX, FP, { 0, 0, 0 } },
+{"movd", 2, 0x0f6e, X, CpuMMX, FP|Modrm, { Reg32|LongMem, RegMMX, 0 } },
+{"movd", 2, 0x0f7e, X, CpuMMX, FP|Modrm, { RegMMX, Reg32|LongMem, 0 } },
+{"movd", 2, 0x660f6e,X,CpuSSE2,FP|Modrm, { Reg32|LLongMem, RegXMM, 0 } },
+{"movd", 2, 0x660f7e,X,CpuSSE2,FP|Modrm, { RegXMM, Reg32|LLongMem, 0 } },
+/* Real MMX instructions. */
+{"movd", 2, 0x0f6e, X, CpuMMX, FP|Modrm, { Reg64|LLongMem, RegMMX, 0 } },
+{"movd", 2, 0x0f7e, X, CpuMMX, FP|Modrm, { RegMMX, Reg64|LLongMem, 0 } },
+{"movd", 2, 0x660f6e,X,CpuSSE2,FP|Modrm, { Reg64|LLongMem, RegXMM, 0 } },
+{"movd", 2, 0x660f7e,X,CpuSSE2,FP|Modrm, { RegXMM, Reg64|LLongMem, 0 } },
+/* In the 64bit mode the short form mov immediate is redefined to have
+ 64bit displacement value. */
+{"movq", 2, 0x0f6f, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"movq", 2, 0x0f7f, X, CpuMMX, FP|Modrm, { RegMMX, RegMMX|LongMem, 0 } },
+{"movq", 2, 0xf30f7e,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movq", 2, 0x660fd6,X,CpuSSE2,FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"movq", 2, 0x88, X, Cpu64, NoSuf|D|W|Modrm|Size64,{ Reg64, Reg64|AnyMem, 0 } },
+{"movq", 2, 0xc6, 0, Cpu64, NoSuf|W|Modrm|Size64, { Imm32S, Reg64|WordMem, 0 } },
+{"movq", 2, 0xb0, X, Cpu64, NoSuf|W|ShortForm|Size64,{ Imm64, Reg64, 0 } },
+/* Move to/from control debug registers. In the 16 or 32bit modes they are 32bit. In the 64bit
+ mode they are 64bit.*/
+{"movq", 2, 0x0f20, X, Cpu64, NoSuf|D|Modrm|IgnoreSize|NoRex64|Size64,{ Control, Reg64|InvMem, 0} },
+{"movq", 2, 0x0f21, X, Cpu64, NoSuf|D|Modrm|IgnoreSize|NoRex64|Size64,{ Debug, Reg64|InvMem, 0} },
+{"packssdw", 2, 0x0f6b, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"packssdw", 2, 0x660f6b,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"packsswb", 2, 0x0f63, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"packsswb", 2, 0x660f63,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"packuswb", 2, 0x0f67, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"packuswb", 2, 0x660f67,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddb", 2, 0x0ffc, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddb", 2, 0x660ffc,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddw", 2, 0x0ffd, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddw", 2, 0x660ffd,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddd", 2, 0x0ffe, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddd", 2, 0x660ffe,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddq", 2, 0x0fd4, X, CpuMMX, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"paddq", 2, 0x660fd4,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddsb", 2, 0x0fec, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddsb", 2, 0x660fec,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddsw", 2, 0x0fed, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddsw", 2, 0x660fed,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddusb", 2, 0x0fdc, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddusb", 2, 0x660fdc,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"paddusw", 2, 0x0fdd, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"paddusw", 2, 0x660fdd,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pand", 2, 0x0fdb, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pand", 2, 0x660fdb,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pandn", 2, 0x0fdf, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pandn", 2, 0x660fdf,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpeqb", 2, 0x0f74, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpeqb", 2, 0x660f74,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpeqw", 2, 0x0f75, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpeqw", 2, 0x660f75,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpeqd", 2, 0x0f76, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpeqd", 2, 0x660f76,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpgtb", 2, 0x0f64, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpgtb", 2, 0x660f64,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpgtw", 2, 0x0f65, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpgtw", 2, 0x660f65,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pcmpgtd", 2, 0x0f66, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pcmpgtd", 2, 0x660f66,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pmaddwd", 2, 0x0ff5, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pmaddwd", 2, 0x660ff5,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pmulhw", 2, 0x0fe5, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pmulhw", 2, 0x660fe5,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pmullw", 2, 0x0fd5, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pmullw", 2, 0x660fd5,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"por", 2, 0x0feb, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"por", 2, 0x660feb,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psllw", 2, 0x0ff1, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psllw", 2, 0x660ff1,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psllw", 2, 0x0f71, 6, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psllw", 2, 0x660f71,6,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"pslld", 2, 0x0ff2, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pslld", 2, 0x660ff2,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pslld", 2, 0x0f72, 6, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"pslld", 2, 0x660f72,6,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psllq", 2, 0x0ff3, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psllq", 2, 0x660ff3,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psllq", 2, 0x0f73, 6, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psllq", 2, 0x660f73,6,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psraw", 2, 0x0fe1, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psraw", 2, 0x660fe1,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psraw", 2, 0x0f71, 4, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psraw", 2, 0x660f71,4,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psrad", 2, 0x0fe2, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psrad", 2, 0x660fe2,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psrad", 2, 0x0f72, 4, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psrad", 2, 0x660f72,4,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psrlw", 2, 0x0fd1, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psrlw", 2, 0x660fd1,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psrlw", 2, 0x0f71, 2, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psrlw", 2, 0x660f71,2,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psrld", 2, 0x0fd2, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psrld", 2, 0x660fd2,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psrld", 2, 0x0f72, 2, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psrld", 2, 0x660f72,2,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psrlq", 2, 0x0fd3, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psrlq", 2, 0x660fd3,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psrlq", 2, 0x0f73, 2, CpuMMX, FP|Modrm, { Imm8, RegMMX, 0 } },
+{"psrlq", 2, 0x660f73,2,CpuSSE2,FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psubb", 2, 0x0ff8, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubb", 2, 0x660ff8,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubw", 2, 0x0ff9, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubw", 2, 0x660ff9,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubd", 2, 0x0ffa, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubd", 2, 0x660ffa,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubq", 2, 0x0ffb, X, CpuMMX, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"psubq", 2, 0x660ffb,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubsb", 2, 0x0fe8, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubsb", 2, 0x660fe8,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubsw", 2, 0x0fe9, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubsw", 2, 0x660fe9,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubusb", 2, 0x0fd8, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubusb", 2, 0x660fd8,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"psubusw", 2, 0x0fd9, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"psubusw", 2, 0x660fd9,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpckhbw",2, 0x0f68, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpckhbw",2, 0x660f68,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpckhwd",2, 0x0f69, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpckhwd",2, 0x660f69,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpckhdq",2, 0x0f6a, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpckhdq",2, 0x660f6a,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpcklbw",2, 0x0f60, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpcklbw",2, 0x660f60,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpcklwd",2, 0x0f61, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpcklwd",2, 0x660f61,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpckldq",2, 0x0f62, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"punpckldq",2, 0x660f62,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pxor", 2, 0x0fef, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pxor", 2, 0x660fef,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+
+/* PIII Katmai New Instructions / SIMD instructions. */
+
+{"addps", 2, 0x0f58, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"addss", 2, 0xf30f58, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"andnps", 2, 0x0f55, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"andps", 2, 0x0f54, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpeqps", 2, 0x0fc2, 0, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpeqss", 2, 0xf30fc2, 0, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpleps", 2, 0x0fc2, 2, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpless", 2, 0xf30fc2, 2, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpltps", 2, 0x0fc2, 1, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpltss", 2, 0xf30fc2, 1, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpneqps", 2, 0x0fc2, 4, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpneqss", 2, 0xf30fc2, 4, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpnleps", 2, 0x0fc2, 6, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpnless", 2, 0xf30fc2, 6, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpnltps", 2, 0x0fc2, 5, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpnltss", 2, 0xf30fc2, 5, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpordps", 2, 0x0fc2, 7, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpordss", 2, 0xf30fc2, 7, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpunordps",2, 0x0fc2, 3, CpuSSE, FP|Modrm|ImmExt, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpunordss",2, 0xf30fc2, 3, CpuSSE, FP|Modrm|ImmExt, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpps", 3, 0x0fc2, X, CpuSSE, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"cmpss", 3, 0xf30fc2, X, CpuSSE, FP|Modrm, { Imm8, RegXMM|WordMem, RegXMM } },
+{"comiss", 2, 0x0f2f, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"cvtpi2ps", 2, 0x0f2a, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegXMM, 0 } },
+{"cvtps2pi", 2, 0x0f2d, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegMMX, 0 } },
+{"cvtsi2ss", 2, 0xf30f2a, X, CpuSSE, lq_Suf|IgnoreSize|Modrm,{ Reg32|Reg64|WordMem|LLongMem, RegXMM, 0 } },
+{"cvtss2si", 2, 0xf30f2d, X, CpuSSE, lq_Suf|IgnoreSize|Modrm,{ RegXMM|WordMem, Reg32|Reg64, 0 } },
+{"cvttps2pi", 2, 0x0f2c, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegMMX, 0 } },
+{"cvttss2si", 2, 0xf30f2c, X, CpuSSE, lq_Suf|IgnoreSize|Modrm, { RegXMM|WordMem, Reg32|Reg64, 0 } },
+{"divps", 2, 0x0f5e, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"divss", 2, 0xf30f5e, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"ldmxcsr", 1, 0x0fae, 2, CpuSSE, FP|Modrm, { WordMem, 0, 0 } },
+{"maskmovq", 2, 0x0ff7, X, CpuSSE, FP|Modrm, { RegMMX|InvMem, RegMMX, 0 } },
+{"maxps", 2, 0x0f5f, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"maxss", 2, 0xf30f5f, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"minps", 2, 0x0f5d, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"minss", 2, 0xf30f5d, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"movaps", 2, 0x0f28, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movaps", 2, 0x0f29, X, CpuSSE, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"movhlps", 2, 0x0f12, X, CpuSSE, FP|Modrm, { RegXMM|InvMem, RegXMM, 0 } },
+{"movhps", 2, 0x0f16, X, CpuSSE, FP|Modrm, { LLongMem, RegXMM, 0 } },
+{"movhps", 2, 0x0f17, X, CpuSSE, FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movlhps", 2, 0x0f16, X, CpuSSE, FP|Modrm, { RegXMM|InvMem, RegXMM, 0 } },
+{"movlps", 2, 0x0f12, X, CpuSSE, FP|Modrm, { LLongMem, RegXMM, 0 } },
+{"movlps", 2, 0x0f13, X, CpuSSE, FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movmskps", 2, 0x0f50, X, CpuSSE, lq_Suf|IgnoreSize|Modrm, { RegXMM|InvMem, Reg32|Reg64, 0 } },
+{"movntps", 2, 0x0f2b, X, CpuSSE, FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movntq", 2, 0x0fe7, X, CpuSSE, FP|Modrm, { RegMMX, LLongMem, 0 } },
+{"movntdq", 2, 0x660fe7, X, CpuSSE2,FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movss", 2, 0xf30f10, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"movss", 2, 0xf30f11, X, CpuSSE, FP|Modrm, { RegXMM, RegXMM|WordMem, 0 } },
+{"movups", 2, 0x0f10, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movups", 2, 0x0f11, X, CpuSSE, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"mulps", 2, 0x0f59, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"mulss", 2, 0xf30f59, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"orps", 2, 0x0f56, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pavgb", 2, 0x0fe0, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pavgb", 2, 0x660fe0, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pavgw", 2, 0x0fe3, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pavgw", 2, 0x660fe3, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pextrw", 3, 0x0fc5, X, CpuSSE, lq_Suf|IgnoreSize|Modrm, { Imm8, RegMMX|InvMem, Reg32|Reg64 } },
+{"pextrw", 3, 0x660fc5, X, CpuSSE2,lq_Suf|IgnoreSize|Modrm, { Imm8, RegXMM|InvMem, Reg32|Reg64 } },
+{"pinsrw", 3, 0x0fc4, X, CpuSSE, lq_Suf|IgnoreSize|Modrm, { Imm8, Reg32|Reg64|ShortMem, RegMMX } },
+{"pinsrw", 3, 0x660fc4, X, CpuSSE2, lq_Suf|IgnoreSize|Modrm, { Imm8, Reg32|Reg64|ShortMem, RegXMM } },
+{"pmaxsw", 2, 0x0fee, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pmaxsw", 2, 0x660fee, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pmaxub", 2, 0x0fde, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pmaxub", 2, 0x660fde, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pminsw", 2, 0x0fea, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pminsw", 2, 0x660fea, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pminub", 2, 0x0fda, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pminub", 2, 0x660fda, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pmovmskb", 2, 0x0fd7, X, CpuSSE, lq_Suf|IgnoreSize|Modrm, { RegMMX|InvMem, Reg32|Reg64, 0 } },
+{"pmovmskb", 2, 0x660fd7, X, CpuSSE2,lq_Suf|IgnoreSize|Modrm, { RegXMM|InvMem, Reg32|Reg64, 0 } },
+{"pmulhuw", 2, 0x0fe4, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"pmulhuw", 2, 0x660fe4, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"prefetchnta", 1, 0x0f18, 0, CpuSSE, FP|Modrm, { LLongMem, 0, 0 } },
+{"prefetcht0", 1, 0x0f18, 1, CpuSSE, FP|Modrm, { LLongMem, 0, 0 } },
+{"prefetcht1", 1, 0x0f18, 2, CpuSSE, FP|Modrm, { LLongMem, 0, 0 } },
+{"prefetcht2", 1, 0x0f18, 3, CpuSSE, FP|Modrm, { LLongMem, 0, 0 } },
+{"psadbw", 2, 0x0ff6, X, CpuSSE, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } },
+{"psadbw", 2, 0x660ff6, X, CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"pshufw", 3, 0x0f70, X, CpuSSE, FP|Modrm, { Imm8, RegMMX|LLongMem, RegMMX } },
+{"rcpps", 2, 0x0f53, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"rcpss", 2, 0xf30f53, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"rsqrtps", 2, 0x0f52, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"rsqrtss", 2, 0xf30f52, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"sfence", 0, 0x0fae, 0xf8, CpuSSE, FP|ImmExt, { 0, 0, 0 } },
+{"shufps", 3, 0x0fc6, X, CpuSSE, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"sqrtps", 2, 0x0f51, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"sqrtss", 2, 0xf30f51, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"stmxcsr", 1, 0x0fae, 3, CpuSSE, FP|Modrm, { WordMem, 0, 0 } },
+{"subps", 2, 0x0f5c, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"subss", 2, 0xf30f5c, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"ucomiss", 2, 0x0f2e, X, CpuSSE, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"unpckhps", 2, 0x0f15, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"unpcklps", 2, 0x0f14, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"xorps", 2, 0x0f57, X, CpuSSE, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+
+/* SSE-2 instructions. */
+
+{"addpd", 2, 0x660f58, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"addsd", 2, 0xf20f58, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"andnpd", 2, 0x660f55, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"andpd", 2, 0x660f54, X, CpuSSE2, FP|Modrm, { RegXMM|WordMem, RegXMM, 0 } },
+{"cmpeqpd", 2, 0x660fc2, 0, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpeqsd", 2, 0xf20fc2, 0, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmplepd", 2, 0x660fc2, 2, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmplesd", 2, 0xf20fc2, 2, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpltpd", 2, 0x660fc2, 1, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpltsd", 2, 0xf20fc2, 1, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpneqpd", 2, 0x660fc2, 4, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpneqsd", 2, 0xf20fc2, 4, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpnlepd", 2, 0x660fc2, 6, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpnlesd", 2, 0xf20fc2, 6, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpnltpd", 2, 0x660fc2, 5, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpnltsd", 2, 0xf20fc2, 5, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpordpd", 2, 0x660fc2, 7, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpordsd", 2, 0xf20fc2, 7, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmpunordpd",2, 0x660fc2, 3, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LLongMem, RegXMM, 0 } },
+{"cmpunordsd",2, 0xf20fc2, 3, CpuSSE2, FP|Modrm|ImmExt,{ RegXMM|LongMem, RegXMM, 0 } },
+{"cmppd", 3, 0x660fc2, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+/* Intel mode string compare. */
+{"cmpsd", 0, 0xa7, X, 0, NoSuf|Size32|IsString, { 0, 0, 0} },
+{"cmpsd", 2, 0xa7, X, 0, NoSuf|Size32|IsString, { AnyMem, AnyMem|EsSeg, 0} },
+{"cmpsd", 3, 0xf20fc2, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LongMem, RegXMM } },
+{"comisd", 2, 0x660f2f, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"cvtpi2pd", 2, 0x660f2a, X, CpuSSE2, FP|Modrm, { RegMMX|LLongMem, RegXMM, 0 } },
+{"cvtsi2sd", 2, 0xf20f2a, X, CpuSSE2, lq_Suf|IgnoreSize|Modrm,{ Reg32|Reg64|WordMem|LLongMem, RegXMM, 0 } },
+{"divpd", 2, 0x660f5e, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"divsd", 2, 0xf20f5e, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"maxpd", 2, 0x660f5f, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"maxsd", 2, 0xf20f5f, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"minpd", 2, 0x660f5d, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"minsd", 2, 0xf20f5d, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"movapd", 2, 0x660f28, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movapd", 2, 0x660f29, X, CpuSSE2, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"movhpd", 2, 0x660f16, X, CpuSSE2, FP|Modrm, { LLongMem, RegXMM, 0 } },
+{"movhpd", 2, 0x660f17, X, CpuSSE2, FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movlpd", 2, 0x660f12, X, CpuSSE2, FP|Modrm, { LLongMem, RegXMM, 0 } },
+{"movlpd", 2, 0x660f13, X, CpuSSE2, FP|Modrm, { RegXMM, LLongMem, 0 } },
+{"movmskpd", 2, 0x660f50, X, CpuSSE2, lq_Suf|IgnoreSize|Modrm, { RegXMM|InvMem, Reg32|Reg64, 0 } },
+{"movntpd", 2, 0x660f2b, X, CpuSSE2, FP|Modrm, { RegXMM, LLongMem, 0 } },
+/* Intel mode string move. */
+{"movsd", 0, 0xa5, X, 0, NoSuf|Size32|IsString, { 0, 0, 0} },
+{"movsd", 2, 0xa5, X, 0, NoSuf|Size32|IsString, { AnyMem, AnyMem|EsSeg, 0} },
+{"movsd", 2, 0xf20f10, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"movsd", 2, 0xf20f11, X, CpuSSE2, FP|Modrm, { RegXMM, RegXMM|LongMem, 0 } },
+{"movupd", 2, 0x660f10, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movupd", 2, 0x660f11, X, CpuSSE2, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"mulpd", 2, 0x660f59, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"mulsd", 2, 0xf20f59, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"orpd", 2, 0x660f56, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"shufpd", 3, 0x660fc6, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"sqrtpd", 2, 0x660f51, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"sqrtsd", 2, 0xf20f51, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"subpd", 2, 0x660f5c, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"subsd", 2, 0xf20f5c, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"ucomisd", 2, 0x660f2e, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"unpckhpd", 2, 0x660f15, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"unpcklpd", 2, 0x660f14, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"xorpd", 2, 0x660f57, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtdq2pd", 2, 0xf30fe6, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtpd2dq", 2, 0xf20fe6, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtdq2ps", 2, 0x0f5b, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtpd2pi", 2, 0x660f2d, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegMMX, 0 } },
+{"cvtpd2ps", 2, 0x660f5a, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtps2pd", 2, 0x0f5a, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtps2dq", 2, 0x660f5b, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtsd2si", 2, 0xf20f2d, X, CpuSSE2, lq_Suf|IgnoreSize|Modrm,{ RegXMM|LLongMem, Reg32|Reg64, 0 } },
+{"cvtsd2ss", 2, 0xf20f5a, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvtss2sd", 2, 0xf30f5a, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvttpd2pi", 2, 0x660f2c, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegMMX, 0 } },
+{"cvttsd2si", 2, 0xf20f2c, X, CpuSSE2, lq_Suf|IgnoreSize|Modrm,{ RegXMM|WordMem, Reg32|Reg64, 0 } },
+{"cvttpd2dq", 2, 0x660fe6, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"cvttps2dq", 2, 0xf30f5b, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"maskmovdqu",2, 0x660ff7, X, CpuSSE2, FP|Modrm, { RegXMM|InvMem, RegXMM, 0 } },
+{"movdqa", 2, 0x660f6f, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movdqa", 2, 0x660f7f, X, CpuSSE2, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"movdqu", 2, 0xf30f6f, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movdqu", 2, 0xf30f7f, X, CpuSSE2, FP|Modrm, { RegXMM, RegXMM|LLongMem, 0 } },
+{"movdq2q", 2, 0xf20fd6, X, CpuSSE2, FP|Modrm, { RegXMM|InvMem, RegMMX, 0 } },
+{"movq2dq", 2, 0xf30fd6, X, CpuSSE2, FP|Modrm, { RegMMX|InvMem, RegXMM, 0 } },
+{"pmuludq", 2, 0x0ff4, X, CpuSSE2, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } },
+{"pmuludq", 2, 0x660ff4, X, CpuSSE2, FP|Modrm, { RegXMM|LongMem, RegXMM, 0 } },
+{"pshufd", 3, 0x660f70, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"pshufhw", 3, 0xf30f70, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"pshuflw", 3, 0xf20f70, X, CpuSSE2, FP|Modrm, { Imm8, RegXMM|LLongMem, RegXMM } },
+{"pslldq", 2, 0x660f73, 7, CpuSSE2, FP|Modrm, { Imm8, RegXMM, 0 } },
+{"psrldq", 2, 0x660f73, 3, CpuSSE2, FP|Modrm, { Imm8, RegXMM, 0 } },
+{"punpckhqdq",2, 0x660f6d, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"punpcklqdq",2, 0x660f6c, X, CpuSSE2, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+
+/* Prescott New Instructions. */
+
+{"addsubpd", 2, 0x660fd0, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"addsubps", 2, 0xf20fd0, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"fisttp", 1, 0xdf, 1, CpuPNI, sl_FP|FloatMF|Modrm, { ShortMem|LongMem, 0, 0} },
+/* Intel Syntax */
+{"fisttpq", 1, 0xdd, 1, CpuPNI, FP|Modrm, { LLongMem, 0, 0} },
+{"fisttpll", 1, 0xdd, 1, CpuPNI, FP|Modrm, { LLongMem, 0, 0} },
+{"haddpd", 2, 0x660f7c, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"haddps", 2, 0xf20f7c, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"hsubpd", 2, 0x660f7d, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"hsubps", 2, 0xf20f7d, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"lddqu", 2, 0xf20ff0, X, CpuPNI, FP|Modrm, { LLongMem, RegXMM, 0 } },
+{"monitor", 0, 0x0f01, 0xc8, CpuPNI, FP|ImmExt, { 0, 0, 0} },
+/* Need to ensure only "monitor %eax,%ecx,%edx" is accepted. */
+{"monitor", 3, 0x0f01, 0xc8, CpuPNI, FP|ImmExt, { Reg32, Reg32, Reg32} },
+{"movddup", 2, 0xf20f12, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movshdup", 2, 0xf30f16, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"movsldup", 2, 0xf30f12, X, CpuPNI, FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } },
+{"mwait", 0, 0x0f01, 0xc9, CpuPNI, FP|ImmExt, { 0, 0, 0} },
+/* Need to ensure only "mwait %eax,%ecx" is accepted. */
+{"mwait", 2, 0x0f01, 0xc9, CpuPNI, FP|ImmExt, { Reg32, Reg32, 0} },
+
+/* AMD 3DNow! instructions. */
+
+{"prefetch", 1, 0x0f0d, 0, Cpu3dnow, FP|Modrm, { ByteMem, 0, 0 } },
+{"prefetchw",1, 0x0f0d, 1, Cpu3dnow, FP|Modrm, { ByteMem, 0, 0 } },
+{"femms", 0, 0x0f0e, X, Cpu3dnow, FP, { 0, 0, 0 } },
+{"pavgusb", 2, 0x0f0f, 0xbf, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pf2id", 2, 0x0f0f, 0x1d, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pf2iw", 2, 0x0f0f, 0x1c, Cpu3dnow|Cpu686, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfacc", 2, 0x0f0f, 0xae, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfadd", 2, 0x0f0f, 0x9e, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfcmpeq", 2, 0x0f0f, 0xb0, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfcmpge", 2, 0x0f0f, 0x90, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfcmpgt", 2, 0x0f0f, 0xa0, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfmax", 2, 0x0f0f, 0xa4, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfmin", 2, 0x0f0f, 0x94, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfmul", 2, 0x0f0f, 0xb4, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfnacc", 2, 0x0f0f, 0x8a, Cpu3dnow|Cpu686, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfpnacc", 2, 0x0f0f, 0x8e, Cpu3dnow|Cpu686, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfrcp", 2, 0x0f0f, 0x96, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfrcpit1", 2, 0x0f0f, 0xa6, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfrcpit2", 2, 0x0f0f, 0xb6, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfrsqit1", 2, 0x0f0f, 0xa7, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfrsqrt", 2, 0x0f0f, 0x97, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfsub", 2, 0x0f0f, 0x9a, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pfsubr", 2, 0x0f0f, 0xaa, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pi2fd", 2, 0x0f0f, 0x0d, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pi2fw", 2, 0x0f0f, 0x0c, Cpu3dnow|Cpu686, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pmulhrw", 2, 0x0f0f, 0xb7, Cpu3dnow, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+{"pswapd", 2, 0x0f0f, 0xbb, Cpu3dnow|Cpu686, FP|Modrm|ImmExt, { RegMMX|LongMem, RegMMX, 0 } },
+
+/* AMD extensions. */
+{"syscall", 0, 0x0f05, X, CpuK6, NoSuf, { 0, 0, 0} },
+{"sysret", 0, 0x0f07, X, CpuK6, lq_Suf|DefaultSize, { 0, 0, 0} },
+{"swapgs", 0, 0x0f01, 0xf8, Cpu64, NoSuf|ImmExt, { 0, 0, 0} },
+
+/* VIA PadLock extensions. */
+{"xstorerng", 0, 0x000fa7c0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xcryptecb", 0, 0xf30fa7c8, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xcryptcbc", 0, 0xf30fa7d0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xcryptcfb", 0, 0xf30fa7e0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xcryptofb", 0, 0xf30fa7e8, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"montmul", 0, 0xf30fa6c0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xsha1", 0, 0xf30fa6c8, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+{"xsha256", 0, 0xf30fa6d0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+/* Alias for xstorerng. */
+{"xstore", 0, 0x000fa7c0, X, Cpu686|CpuPadLock, NoSuf|IsString, { 0, 0, 0} },
+
+/* sentinel */
+{NULL, 0, 0, 0, 0, 0, { 0, 0, 0} }
+};
+#undef X
+#undef NoSuf
+#undef b_Suf
+#undef w_Suf
+#undef l_Suf
+#undef q_Suf
+#undef x_Suf
+#undef bw_Suf
+#undef bl_Suf
+#undef wl_Suf
+#undef wlq_Suf
+#undef sl_Suf
+#undef bwl_Suf
+#undef bwlq_Suf
+#undef FP
+#undef l_FP
+#undef x_FP
+#undef sl_FP
+
+#define MAX_MNEM_SIZE 16 /* For parsing insn mnemonics from input. */
+
+/* 386 register table. */
+
+static const reg_entry i386_regtab[] =
+{
+ /* Make %st first as we test for it. */
+ {"st", FloatReg|FloatAcc, 0, 0},
+ /* 8 bit regs */
+#define REGNAM_AL 1 /* Entry in i386_regtab. */
+ {"al", Reg8|Acc, 0, 0},
+ {"cl", Reg8|ShiftCount, 0, 1},
+ {"dl", Reg8, 0, 2},
+ {"bl", Reg8, 0, 3},
+ {"ah", Reg8, 0, 4},
+ {"ch", Reg8, 0, 5},
+ {"dh", Reg8, 0, 6},
+ {"bh", Reg8, 0, 7},
+ {"axl", Reg8|Acc, RegRex64, 0}, /* Must be in the "al + 8" slot. */
+ {"cxl", Reg8, RegRex64, 1},
+ {"dxl", Reg8, RegRex64, 2},
+ {"bxl", Reg8, RegRex64, 3},
+ {"spl", Reg8, RegRex64, 4},
+ {"bpl", Reg8, RegRex64, 5},
+ {"sil", Reg8, RegRex64, 6},
+ {"dil", Reg8, RegRex64, 7},
+ {"r8b", Reg8, RegRex64|RegRex, 0},
+ {"r9b", Reg8, RegRex64|RegRex, 1},
+ {"r10b", Reg8, RegRex64|RegRex, 2},
+ {"r11b", Reg8, RegRex64|RegRex, 3},
+ {"r12b", Reg8, RegRex64|RegRex, 4},
+ {"r13b", Reg8, RegRex64|RegRex, 5},
+ {"r14b", Reg8, RegRex64|RegRex, 6},
+ {"r15b", Reg8, RegRex64|RegRex, 7},
+ /* 16 bit regs */
+#define REGNAM_AX 25
+ {"ax", Reg16|Acc, 0, 0},
+ {"cx", Reg16, 0, 1},
+ {"dx", Reg16|InOutPortReg, 0, 2},
+ {"bx", Reg16|BaseIndex, 0, 3},
+ {"sp", Reg16, 0, 4},
+ {"bp", Reg16|BaseIndex, 0, 5},
+ {"si", Reg16|BaseIndex, 0, 6},
+ {"di", Reg16|BaseIndex, 0, 7},
+ {"r8w", Reg16, RegRex, 0},
+ {"r9w", Reg16, RegRex, 1},
+ {"r10w", Reg16, RegRex, 2},
+ {"r11w", Reg16, RegRex, 3},
+ {"r12w", Reg16, RegRex, 4},
+ {"r13w", Reg16, RegRex, 5},
+ {"r14w", Reg16, RegRex, 6},
+ {"r15w", Reg16, RegRex, 7},
+ /* 32 bit regs */
+#define REGNAM_EAX 41
+ {"eax", Reg32|BaseIndex|Acc, 0, 0}, /* Must be in ax + 16 slot. */
+ {"ecx", Reg32|BaseIndex, 0, 1},
+ {"edx", Reg32|BaseIndex, 0, 2},
+ {"ebx", Reg32|BaseIndex, 0, 3},
+ {"esp", Reg32, 0, 4},
+ {"ebp", Reg32|BaseIndex, 0, 5},
+ {"esi", Reg32|BaseIndex, 0, 6},
+ {"edi", Reg32|BaseIndex, 0, 7},
+ {"r8d", Reg32|BaseIndex, RegRex, 0},
+ {"r9d", Reg32|BaseIndex, RegRex, 1},
+ {"r10d", Reg32|BaseIndex, RegRex, 2},
+ {"r11d", Reg32|BaseIndex, RegRex, 3},
+ {"r12d", Reg32|BaseIndex, RegRex, 4},
+ {"r13d", Reg32|BaseIndex, RegRex, 5},
+ {"r14d", Reg32|BaseIndex, RegRex, 6},
+ {"r15d", Reg32|BaseIndex, RegRex, 7},
+ {"rax", Reg64|BaseIndex|Acc, 0, 0},
+ {"rcx", Reg64|BaseIndex, 0, 1},
+ {"rdx", Reg64|BaseIndex, 0, 2},
+ {"rbx", Reg64|BaseIndex, 0, 3},
+ {"rsp", Reg64, 0, 4},
+ {"rbp", Reg64|BaseIndex, 0, 5},
+ {"rsi", Reg64|BaseIndex, 0, 6},
+ {"rdi", Reg64|BaseIndex, 0, 7},
+ {"r8", Reg64|BaseIndex, RegRex, 0},
+ {"r9", Reg64|BaseIndex, RegRex, 1},
+ {"r10", Reg64|BaseIndex, RegRex, 2},
+ {"r11", Reg64|BaseIndex, RegRex, 3},
+ {"r12", Reg64|BaseIndex, RegRex, 4},
+ {"r13", Reg64|BaseIndex, RegRex, 5},
+ {"r14", Reg64|BaseIndex, RegRex, 6},
+ {"r15", Reg64|BaseIndex, RegRex, 7},
+ /* Segment registers. */
+ {"es", SReg2, 0, 0},
+ {"cs", SReg2, 0, 1},
+ {"ss", SReg2, 0, 2},
+ {"ds", SReg2, 0, 3},
+ {"fs", SReg3, 0, 4},
+ {"gs", SReg3, 0, 5},
+ /* Control registers. */
+ {"cr0", Control, 0, 0},
+ {"cr1", Control, 0, 1},
+ {"cr2", Control, 0, 2},
+ {"cr3", Control, 0, 3},
+ {"cr4", Control, 0, 4},
+ {"cr5", Control, 0, 5},
+ {"cr6", Control, 0, 6},
+ {"cr7", Control, 0, 7},
+ {"cr8", Control, RegRex, 0},
+ {"cr9", Control, RegRex, 1},
+ {"cr10", Control, RegRex, 2},
+ {"cr11", Control, RegRex, 3},
+ {"cr12", Control, RegRex, 4},
+ {"cr13", Control, RegRex, 5},
+ {"cr14", Control, RegRex, 6},
+ {"cr15", Control, RegRex, 7},
+ /* Debug registers. */
+ {"db0", Debug, 0, 0},
+ {"db1", Debug, 0, 1},
+ {"db2", Debug, 0, 2},
+ {"db3", Debug, 0, 3},
+ {"db4", Debug, 0, 4},
+ {"db5", Debug, 0, 5},
+ {"db6", Debug, 0, 6},
+ {"db7", Debug, 0, 7},
+ {"db8", Debug, RegRex, 0},
+ {"db9", Debug, RegRex, 1},
+ {"db10", Debug, RegRex, 2},
+ {"db11", Debug, RegRex, 3},
+ {"db12", Debug, RegRex, 4},
+ {"db13", Debug, RegRex, 5},
+ {"db14", Debug, RegRex, 6},
+ {"db15", Debug, RegRex, 7},
+ {"dr0", Debug, 0, 0},
+ {"dr1", Debug, 0, 1},
+ {"dr2", Debug, 0, 2},
+ {"dr3", Debug, 0, 3},
+ {"dr4", Debug, 0, 4},
+ {"dr5", Debug, 0, 5},
+ {"dr6", Debug, 0, 6},
+ {"dr7", Debug, 0, 7},
+ {"dr8", Debug, RegRex, 0},
+ {"dr9", Debug, RegRex, 1},
+ {"dr10", Debug, RegRex, 2},
+ {"dr11", Debug, RegRex, 3},
+ {"dr12", Debug, RegRex, 4},
+ {"dr13", Debug, RegRex, 5},
+ {"dr14", Debug, RegRex, 6},
+ {"dr15", Debug, RegRex, 7},
+ /* Test registers. */
+ {"tr0", Test, 0, 0},
+ {"tr1", Test, 0, 1},
+ {"tr2", Test, 0, 2},
+ {"tr3", Test, 0, 3},
+ {"tr4", Test, 0, 4},
+ {"tr5", Test, 0, 5},
+ {"tr6", Test, 0, 6},
+ {"tr7", Test, 0, 7},
+ /* MMX and simd registers. */
+ {"mm0", RegMMX, 0, 0},
+ {"mm1", RegMMX, 0, 1},
+ {"mm2", RegMMX, 0, 2},
+ {"mm3", RegMMX, 0, 3},
+ {"mm4", RegMMX, 0, 4},
+ {"mm5", RegMMX, 0, 5},
+ {"mm6", RegMMX, 0, 6},
+ {"mm7", RegMMX, 0, 7},
+ {"xmm0", RegXMM, 0, 0},
+ {"xmm1", RegXMM, 0, 1},
+ {"xmm2", RegXMM, 0, 2},
+ {"xmm3", RegXMM, 0, 3},
+ {"xmm4", RegXMM, 0, 4},
+ {"xmm5", RegXMM, 0, 5},
+ {"xmm6", RegXMM, 0, 6},
+ {"xmm7", RegXMM, 0, 7},
+ {"xmm8", RegXMM, RegRex, 0},
+ {"xmm9", RegXMM, RegRex, 1},
+ {"xmm10", RegXMM, RegRex, 2},
+ {"xmm11", RegXMM, RegRex, 3},
+ {"xmm12", RegXMM, RegRex, 4},
+ {"xmm13", RegXMM, RegRex, 5},
+ {"xmm14", RegXMM, RegRex, 6},
+ {"xmm15", RegXMM, RegRex, 7},
+ /* No type will make this register rejected for all purposes except
+ for addressing. This saves creating one extra type for RIP. */
+ {"rip", BaseIndex, 0, 0}
+};
+
+static const reg_entry i386_float_regtab[] =
+{
+ {"st(0)", FloatReg|FloatAcc, 0, 0},
+ {"st(1)", FloatReg, 0, 1},
+ {"st(2)", FloatReg, 0, 2},
+ {"st(3)", FloatReg, 0, 3},
+ {"st(4)", FloatReg, 0, 4},
+ {"st(5)", FloatReg, 0, 5},
+ {"st(6)", FloatReg, 0, 6},
+ {"st(7)", FloatReg, 0, 7}
+};
+
+#define MAX_REG_NAME_SIZE 8 /* For parsing register names from input. */
+
+/* Segment stuff. */
+static const seg_entry cs = { "cs", 0x2e };
+static const seg_entry ds = { "ds", 0x3e };
+static const seg_entry ss = { "ss", 0x36 };
+static const seg_entry es = { "es", 0x26 };
+static const seg_entry fs = { "fs", 0x64 };
+static const seg_entry gs = { "gs", 0x65 };
+
diff --git a/include/opcode/i860.h b/include/opcode/i860.h
new file mode 100644
index 000000000..b46a5e5a4
--- /dev/null
+++ b/include/opcode/i860.h
@@ -0,0 +1,507 @@
+/* Table of opcodes for the i860.
+ Copyright 1989, 1991, 2000, 2003 Free Software Foundation, Inc.
+
+This file is part of GAS, the GNU Assembler, and GDB, the GNU disassembler.
+
+GAS/GDB is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GAS/GDB is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GAS or GDB; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+
+/* Structure of an opcode table entry. */
+struct i860_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* Bits that must be set. */
+ unsigned long match;
+
+ /* Bits that must not be set. */
+ unsigned long lose;
+
+ const char *args;
+
+ /* Nonzero if this is a possible expand-instruction. */
+ char expand;
+};
+
+
+enum expand_type
+{
+ E_MOV = 1, E_ADDR, E_U32, E_AND, E_S32, E_DELAY, XP_ONLY
+};
+
+
+/* All i860 opcodes are 32 bits, except for the pseudo-instructions
+ and the operations utilizing a 32-bit address expression, an
+ unsigned 32-bit constant, or a signed 32-bit constant.
+ These opcodes are expanded into a two-instruction sequence for
+ any situation where the immediate operand does not fit in 32 bits.
+ In the case of the add and subtract operations the expansion is
+ to a three-instruction sequence (ex: orh, or, adds). In cases
+ where the address is to be relocated, the instruction is
+ expanded to handle the worse case, this could be optimized at
+ the final link if the actual address were known.
+
+ The pseudoinstructions are: mov, fmov, pmov, nop, and fnop.
+ These instructions are implemented as a one or two instruction
+ sequence of other operations.
+
+ The match component is a mask saying which bits must match a
+ particular opcode in order for an instruction to be an instance
+ of that opcode.
+
+ The args component is a string containing one character
+ for each operand of the instruction.
+
+Kinds of operands:
+ # Number used by optimizer. It is ignored.
+ 1 src1 integer register.
+ 2 src2 integer register.
+ d dest register.
+ c ctrlreg control register.
+ i 16 bit immediate.
+ I 16 bit immediate, aligned 2^0. (ld.b)
+ J 16 bit immediate, aligned 2^1. (ld.s)
+ K 16 bit immediate, aligned 2^2. (ld.l, {p}fld.l, fst.l)
+ L 16 bit immediate, aligned 2^3. ({p}fld.d, fst.d)
+ M 16 bit immediate, aligned 2^4. ({p}fld.q, fst.q)
+ 5 5 bit immediate.
+ l lbroff 26 bit PC relative immediate.
+ r sbroff 16 bit PC relative immediate.
+ s split 16 bit immediate.
+ S split 16 bit immediate, aligned 2^0. (st.b)
+ T split 16 bit immediate, aligned 2^1. (st.s)
+ U split 16 bit immediate, aligned 2^2. (st.l)
+ e src1 floating point register.
+ f src2 floating point register.
+ g dest floating point register. */
+
+
+/* The order of the opcodes in this table is significant. The assembler
+ requires that all instances of the same mnemonic must be consecutive.
+ If they aren't, the assembler will not function properly.
+
+ The order of opcodes does not affect the disassembler. */
+
+static const struct i860_opcode i860_opcodes[] =
+{
+/* REG-Format Instructions. */
+{ "ld.c", 0x30000000, 0xcc000000, "c,d", 0 }, /* ld.c csrc2,idest */
+{ "ld.b", 0x00000000, 0xfc000000, "1(2),d", 0 }, /* ld.b isrc1(isrc2),idest */
+{ "ld.b", 0x04000000, 0xf8000000, "I(2),d", E_ADDR }, /* ld.b #const(isrc2),idest */
+{ "ld.s", 0x10000000, 0xec000001, "1(2),d", 0 }, /* ld.s isrc1(isrc2),idest */
+{ "ld.s", 0x14000000, 0xe8000001, "J(2),d", E_ADDR }, /* ld.s #const(isrc2),idest */
+{ "ld.l", 0x10000001, 0xec000000, "1(2),d", 0 }, /* ld.l isrc1(isrc2),idest */
+{ "ld.l", 0x14000001, 0xe8000000, "K(2),d", E_ADDR }, /* ld.l #const(isrc2),idest */
+
+{ "st.c", 0x38000000, 0xc4000000, "1,c", 0 }, /* st.c isrc1ni,csrc2 */
+{ "st.b", 0x0c000000, 0xf0000000, "1,S(2)", E_ADDR }, /* st.b isrc1ni,#const(isrc2) */
+{ "st.s", 0x1c000000, 0xe0000001, "1,T(2)", E_ADDR }, /* st.s isrc1ni,#const(isrc2) */
+{ "st.l", 0x1c000001, 0xe0000000, "1,U(2)", E_ADDR }, /* st.l isrc1ni,#const(isrc2) */
+
+{ "ixfr", 0x08000000, 0xf4000000, "1,g", 0 }, /* ixfr isrc1ni,fdest */
+
+{ "fld.l", 0x20000002, 0xdc000001, "1(2),g", 0 }, /* fld.l isrc1(isrc2),fdest */
+{ "fld.l", 0x24000002, 0xd8000001, "K(2),g", E_ADDR }, /* fld.l #const(isrc2),fdest */
+{ "fld.l", 0x20000003, 0xdc000000, "1(2)++,g", 0 }, /* fld.l isrc1(isrc2)++,fdest */
+{ "fld.l", 0x24000003, 0xd8000000, "K(2)++,g", E_ADDR }, /* fld.l #const(isrc2)++,fdest */
+{ "fld.d", 0x20000000, 0xdc000007, "1(2),g", 0 }, /* fld.d isrc1(isrc2),fdest */
+{ "fld.d", 0x24000000, 0xd8000007, "L(2),g", E_ADDR }, /* fld.d #const(isrc2),fdest */
+{ "fld.d", 0x20000001, 0xdc000006, "1(2)++,g", 0 }, /* fld.d isrc1(isrc2)++,fdest */
+{ "fld.d", 0x24000001, 0xd8000006, "L(2)++,g", E_ADDR }, /* fld.d #const(isrc2)++,fdest */
+{ "fld.q", 0x20000004, 0xdc000003, "1(2),g", 0 }, /* fld.q isrc1(isrc2),fdest */
+{ "fld.q", 0x24000004, 0xd8000003, "M(2),g", E_ADDR }, /* fld.q #const(isrc2),fdest */
+{ "fld.q", 0x20000005, 0xdc000002, "1(2)++,g", 0 }, /* fld.q isrc1(isrc2)++,fdest */
+{ "fld.q", 0x24000005, 0xd8000002, "M(2)++,g", E_ADDR }, /* fld.q #const(isrc2)++,fdest */
+
+{ "pfld.l", 0x60000002, 0x9c000001, "1(2),g", 0 }, /* pfld.l isrc1(isrc2),fdest */
+{ "pfld.l", 0x64000002, 0x98000001, "K(2),g", E_ADDR }, /* pfld.l #const(isrc2),fdest */
+{ "pfld.l", 0x60000003, 0x9c000000, "1(2)++,g", 0 }, /* pfld.l isrc1(isrc2)++,fdest */
+{ "pfld.l", 0x64000003, 0x98000000, "K(2)++,g", E_ADDR }, /* pfld.l #const(isrc2)++,fdest */
+{ "pfld.d", 0x60000000, 0x9c000007, "1(2),g", 0 }, /* pfld.d isrc1(isrc2),fdest */
+{ "pfld.d", 0x64000000, 0x98000007, "L(2),g", E_ADDR }, /* pfld.d #const(isrc2),fdest */
+{ "pfld.d", 0x60000001, 0x9c000006, "1(2)++,g", 0 }, /* pfld.d isrc1(isrc2)++,fdest */
+{ "pfld.d", 0x64000001, 0x98000006, "L(2)++,g", E_ADDR }, /* pfld.d #const(isrc2)++,fdest */
+{ "pfld.q", 0x60000004, 0x9c000003, "1(2),g", XP_ONLY }, /* pfld.q isrc1(isrc2),fdest */
+{ "pfld.q", 0x64000004, 0x98000003, "L(2),g", XP_ONLY }, /* pfld.q #const(isrc2),fdest */
+{ "pfld.q", 0x60000005, 0x9c000002, "1(2)++,g", XP_ONLY }, /* pfld.q isrc1(isrc2)++,fdest */
+{ "pfld.q", 0x64000005, 0x98000002, "L(2)++,g", XP_ONLY }, /* pfld.q #const(isrc2)++,fdest */
+
+{ "fst.l", 0x28000002, 0xd4000001, "g,1(2)", 0 }, /* fst.l fdest,isrc1(isrc2) */
+{ "fst.l", 0x2c000002, 0xd0000001, "g,K(2)", E_ADDR }, /* fst.l fdest,#const(isrc2) */
+{ "fst.l", 0x28000003, 0xd4000000, "g,1(2)++", 0 }, /* fst.l fdest,isrc1(isrc2)++ */
+{ "fst.l", 0x2c000003, 0xd0000000, "g,K(2)++", E_ADDR }, /* fst.l fdest,#const(isrc2)++ */
+{ "fst.d", 0x28000000, 0xd4000007, "g,1(2)", 0 }, /* fst.d fdest,isrc1(isrc2) */
+{ "fst.d", 0x2c000000, 0xd0000007, "g,L(2)", E_ADDR }, /* fst.d fdest,#const(isrc2) */
+{ "fst.d", 0x28000001, 0xd4000006, "g,1(2)++", 0 }, /* fst.d fdest,isrc1(isrc2)++ */
+{ "fst.d", 0x2c000001, 0xd0000006, "g,L(2)++", E_ADDR }, /* fst.d fdest,#const(isrc2)++ */
+{ "fst.q", 0x28000004, 0xd4000003, "g,1(2)", 0 }, /* fst.d fdest,isrc1(isrc2) */
+{ "fst.q", 0x2c000004, 0xd0000003, "g,M(2)", E_ADDR }, /* fst.d fdest,#const(isrc2) */
+{ "fst.q", 0x28000005, 0xd4000002, "g,1(2)++", 0 }, /* fst.d fdest,isrc1(isrc2)++ */
+{ "fst.q", 0x2c000005, 0xd0000002, "g,M(2)++", E_ADDR }, /* fst.d fdest,#const(isrc2)++ */
+
+{ "pst.d", 0x3c000000, 0xc0000007, "g,L(2)", E_ADDR }, /* pst.d fdest,#const(isrc2) */
+{ "pst.d", 0x3c000001, 0xc0000006, "g,L(2)++", E_ADDR }, /* pst.d fdest,#const(isrc2)++ */
+
+{ "addu", 0x80000000, 0x7c000000, "1,2,d", 0 }, /* addu isrc1,isrc2,idest */
+{ "addu", 0x84000000, 0x78000000, "i,2,d", E_S32 }, /* addu #const,isrc2,idest */
+{ "adds", 0x90000000, 0x6c000000, "1,2,d", 0 }, /* adds isrc1,isrc2,idest */
+{ "adds", 0x94000000, 0x68000000, "i,2,d", E_S32 }, /* adds #const,isrc2,idest */
+{ "subu", 0x88000000, 0x74000000, "1,2,d", 0 }, /* subu isrc1,isrc2,idest */
+{ "subu", 0x8c000000, 0x70000000, "i,2,d", E_S32 }, /* subu #const,isrc2,idest */
+{ "subs", 0x98000000, 0x64000000, "1,2,d", 0 }, /* subs isrc1,isrc2,idest */
+{ "subs", 0x9c000000, 0x60000000, "i,2,d", E_S32 }, /* subs #const,isrc2,idest */
+
+{ "shl", 0xa0000000, 0x5c000000, "1,2,d", 0 }, /* shl isrc1,isrc2,idest */
+{ "shl", 0xa4000000, 0x58000000, "i,2,d", 0 }, /* shl #const,isrc2,idest */
+{ "shr", 0xa8000000, 0x54000000, "1,2,d", 0 }, /* shr isrc1,isrc2,idest */
+{ "shr", 0xac000000, 0x50000000, "i,2,d", 0 }, /* shr #const,isrc2,idest */
+{ "shrd", 0xb0000000, 0x4c000000, "1,2,d", 0 }, /* shrd isrc1,isrc2,idest */
+{ "shra", 0xb8000000, 0x44000000, "1,2,d", 0 }, /* shra isrc1,isrc2,idest */
+{ "shra", 0xbc000000, 0x40000000, "i,2,d", 0 }, /* shra #const,isrc2,idest */
+
+{ "mov", 0xa0000000, 0x5c00f800, "2,d", 0 }, /* shl r0,isrc2,idest */
+{ "mov", 0x94000000, 0x69e00000, "i,d", E_MOV }, /* adds #const,r0,idest */
+{ "nop", 0xa0000000, 0x5ffff800, "", 0 }, /* shl r0,r0,r0 */
+{ "fnop", 0xb0000000, 0x4ffff800, "", 0 }, /* shrd r0,r0,r0 */
+
+{ "trap", 0x44000000, 0xb8000000, "1,2,d", 0 }, /* trap isrc1ni,isrc2,idest */
+
+{ "flush", 0x34000004, 0xc81f0003, "L(2)", E_ADDR }, /* flush #const(isrc2) */
+{ "flush", 0x34000005, 0xc81f0002, "L(2)++", E_ADDR }, /* flush #const(isrc2)++ */
+
+{ "and", 0xc0000000, 0x3c000000, "1,2,d", 0 }, /* and isrc1,isrc2,idest */
+{ "and", 0xc4000000, 0x38000000, "i,2,d", E_AND }, /* and #const,isrc2,idest */
+{ "andh", 0xcc000000, 0x30000000, "i,2,d", 0 }, /* andh #const,isrc2,idest */
+{ "andnot", 0xd0000000, 0x2c000000, "1,2,d", 0 }, /* andnot isrc1,isrc2,idest */
+{ "andnot", 0xd4000000, 0x28000000, "i,2,d", E_U32 }, /* andnot #const,isrc2,idest */
+{ "andnoth", 0xdc000000, 0x20000000, "i,2,d", 0 }, /* andnoth #const,isrc2,idest */
+{ "or", 0xe0000000, 0x1c000000, "1,2,d", 0 }, /* or isrc1,isrc2,idest */
+{ "or", 0xe4000000, 0x18000000, "i,2,d", E_U32 }, /* or #const,isrc2,idest */
+{ "orh", 0xec000000, 0x10000000, "i,2,d", 0 }, /* orh #const,isrc2,idest */
+{ "xor", 0xf0000000, 0x0c000000, "1,2,d", 0 }, /* xor isrc1,isrc2,idest */
+{ "xor", 0xf4000000, 0x08000000, "i,2,d", E_U32 }, /* xor #const,isrc2,idest */
+{ "xorh", 0xfc000000, 0x00000000, "i,2,d", 0 }, /* xorh #const,isrc2,idest */
+
+{ "bte", 0x58000000, 0xa4000000, "1,2,r", 0 }, /* bte isrc1s,isrc2,sbroff */
+{ "bte", 0x5c000000, 0xa0000000, "5,2,r", 0 }, /* bte #const5,isrc2,sbroff */
+{ "btne", 0x50000000, 0xac000000, "1,2,r", 0 }, /* btne isrc1s,isrc2,sbroff */
+{ "btne", 0x54000000, 0xa8000000, "5,2,r", 0 }, /* btne #const5,isrc2,sbroff */
+{ "bla", 0xb4000000, 0x48000000, "1,2,r", E_DELAY }, /* bla isrc1s,isrc2,sbroff */
+{ "bri", 0x40000000, 0xbc000000, "1", E_DELAY }, /* bri isrc1ni */
+
+/* Core Escape Instruction Format */
+{ "lock", 0x4c000001, 0xb000001e, "", 0 }, /* lock set BL in dirbase */
+{ "calli", 0x4c000002, 0xb000001d, "1", E_DELAY }, /* calli isrc1ni */
+{ "intovr", 0x4c000004, 0xb000001b, "", 0 }, /* intovr trap on integer overflow */
+{ "unlock", 0x4c000007, 0xb0000018, "", 0 }, /* unlock clear BL in dirbase */
+{ "ldio.l", 0x4c000408, 0xb00003f7, "2,d", XP_ONLY }, /* ldio.l isrc2,idest */
+{ "ldio.s", 0x4c000208, 0xb00005f7, "2,d", XP_ONLY }, /* ldio.s isrc2,idest */
+{ "ldio.b", 0x4c000008, 0xb00007f7, "2,d", XP_ONLY }, /* ldio.b isrc2,idest */
+{ "stio.l", 0x4c000409, 0xb00003f6, "1,2", XP_ONLY }, /* stio.l isrc1ni,isrc2 */
+{ "stio.s", 0x4c000209, 0xb00005f6, "1,2", XP_ONLY }, /* stio.s isrc1ni,isrc2 */
+{ "stio.b", 0x4c000009, 0xb00007f6, "1,2", XP_ONLY }, /* stio.b isrc1ni,isrc2 */
+{ "ldint.l", 0x4c00040a, 0xb00003f5, "2,d", XP_ONLY }, /* ldint.l isrc2,idest */
+{ "ldint.s", 0x4c00020a, 0xb00005f5, "2,d", XP_ONLY }, /* ldint.s isrc2,idest */
+{ "ldint.b", 0x4c00000a, 0xb00007f5, "2,d", XP_ONLY }, /* ldint.b isrc2,idest */
+{ "scyc.b", 0x4c00000b, 0xb00007f4, "2", XP_ONLY }, /* scyc.b isrc2 */
+
+/* CTRL-Format Instructions */
+{ "br", 0x68000000, 0x94000000, "l", E_DELAY }, /* br lbroff */
+{ "call", 0x6c000000, 0x90000000, "l", E_DELAY }, /* call lbroff */
+{ "bc", 0x70000000, 0x8c000000, "l", 0 }, /* bc lbroff */
+{ "bc.t", 0x74000000, 0x88000000, "l", E_DELAY }, /* bc.t lbroff */
+{ "bnc", 0x78000000, 0x84000000, "l", 0 }, /* bnc lbroff */
+{ "bnc.t", 0x7c000000, 0x80000000, "l", E_DELAY }, /* bnc.t lbroff */
+
+/* Floating Point Escape Instruction Format - pfam.p fsrc1,fsrc2,fdest. */
+{ "r2p1.ss", 0x48000400, 0xb40001ff, "e,f,g", 0 },
+{ "r2p1.sd", 0x48000480, 0xb400017f, "e,f,g", 0 },
+{ "r2p1.dd", 0x48000580, 0xb400007f, "e,f,g", 0 },
+{ "r2pt.ss", 0x48000401, 0xb40001fe, "e,f,g", 0 },
+{ "r2pt.sd", 0x48000481, 0xb400017e, "e,f,g", 0 },
+{ "r2pt.dd", 0x48000581, 0xb400007e, "e,f,g", 0 },
+{ "r2ap1.ss", 0x48000402, 0xb40001fd, "e,f,g", 0 },
+{ "r2ap1.sd", 0x48000482, 0xb400017d, "e,f,g", 0 },
+{ "r2ap1.dd", 0x48000582, 0xb400007d, "e,f,g", 0 },
+{ "r2apt.ss", 0x48000403, 0xb40001fc, "e,f,g", 0 },
+{ "r2apt.sd", 0x48000483, 0xb400017c, "e,f,g", 0 },
+{ "r2apt.dd", 0x48000583, 0xb400007c, "e,f,g", 0 },
+{ "i2p1.ss", 0x48000404, 0xb40001fb, "e,f,g", 0 },
+{ "i2p1.sd", 0x48000484, 0xb400017b, "e,f,g", 0 },
+{ "i2p1.dd", 0x48000584, 0xb400007b, "e,f,g", 0 },
+{ "i2pt.ss", 0x48000405, 0xb40001fa, "e,f,g", 0 },
+{ "i2pt.sd", 0x48000485, 0xb400017a, "e,f,g", 0 },
+{ "i2pt.dd", 0x48000585, 0xb400007a, "e,f,g", 0 },
+{ "i2ap1.ss", 0x48000406, 0xb40001f9, "e,f,g", 0 },
+{ "i2ap1.sd", 0x48000486, 0xb4000179, "e,f,g", 0 },
+{ "i2ap1.dd", 0x48000586, 0xb4000079, "e,f,g", 0 },
+{ "i2apt.ss", 0x48000407, 0xb40001f8, "e,f,g", 0 },
+{ "i2apt.sd", 0x48000487, 0xb4000178, "e,f,g", 0 },
+{ "i2apt.dd", 0x48000587, 0xb4000078, "e,f,g", 0 },
+{ "rat1p2.ss", 0x48000408, 0xb40001f7, "e,f,g", 0 },
+{ "rat1p2.sd", 0x48000488, 0xb4000177, "e,f,g", 0 },
+{ "rat1p2.dd", 0x48000588, 0xb4000077, "e,f,g", 0 },
+{ "m12apm.ss", 0x48000409, 0xb40001f6, "e,f,g", 0 },
+{ "m12apm.sd", 0x48000489, 0xb4000176, "e,f,g", 0 },
+{ "m12apm.dd", 0x48000589, 0xb4000076, "e,f,g", 0 },
+{ "ra1p2.ss", 0x4800040a, 0xb40001f5, "e,f,g", 0 },
+{ "ra1p2.sd", 0x4800048a, 0xb4000175, "e,f,g", 0 },
+{ "ra1p2.dd", 0x4800058a, 0xb4000075, "e,f,g", 0 },
+{ "m12ttpa.ss", 0x4800040b, 0xb40001f4, "e,f,g", 0 },
+{ "m12ttpa.sd", 0x4800048b, 0xb4000174, "e,f,g", 0 },
+{ "m12ttpa.dd", 0x4800058b, 0xb4000074, "e,f,g", 0 },
+{ "iat1p2.ss", 0x4800040c, 0xb40001f3, "e,f,g", 0 },
+{ "iat1p2.sd", 0x4800048c, 0xb4000173, "e,f,g", 0 },
+{ "iat1p2.dd", 0x4800058c, 0xb4000073, "e,f,g", 0 },
+{ "m12tpm.ss", 0x4800040d, 0xb40001f2, "e,f,g", 0 },
+{ "m12tpm.sd", 0x4800048d, 0xb4000172, "e,f,g", 0 },
+{ "m12tpm.dd", 0x4800058d, 0xb4000072, "e,f,g", 0 },
+{ "ia1p2.ss", 0x4800040e, 0xb40001f1, "e,f,g", 0 },
+{ "ia1p2.sd", 0x4800048e, 0xb4000171, "e,f,g", 0 },
+{ "ia1p2.dd", 0x4800058e, 0xb4000071, "e,f,g", 0 },
+{ "m12tpa.ss", 0x4800040f, 0xb40001f0, "e,f,g", 0 },
+{ "m12tpa.sd", 0x4800048f, 0xb4000170, "e,f,g", 0 },
+{ "m12tpa.dd", 0x4800058f, 0xb4000070, "e,f,g", 0 },
+
+/* Floating Point Escape Instruction Format - pfsm.p fsrc1,fsrc2,fdest. */
+{ "r2s1.ss", 0x48000410, 0xb40001ef, "e,f,g", 0 },
+{ "r2s1.sd", 0x48000490, 0xb400016f, "e,f,g", 0 },
+{ "r2s1.dd", 0x48000590, 0xb400006f, "e,f,g", 0 },
+{ "r2st.ss", 0x48000411, 0xb40001ee, "e,f,g", 0 },
+{ "r2st.sd", 0x48000491, 0xb400016e, "e,f,g", 0 },
+{ "r2st.dd", 0x48000591, 0xb400006e, "e,f,g", 0 },
+{ "r2as1.ss", 0x48000412, 0xb40001ed, "e,f,g", 0 },
+{ "r2as1.sd", 0x48000492, 0xb400016d, "e,f,g", 0 },
+{ "r2as1.dd", 0x48000592, 0xb400006d, "e,f,g", 0 },
+{ "r2ast.ss", 0x48000413, 0xb40001ec, "e,f,g", 0 },
+{ "r2ast.sd", 0x48000493, 0xb400016c, "e,f,g", 0 },
+{ "r2ast.dd", 0x48000593, 0xb400006c, "e,f,g", 0 },
+{ "i2s1.ss", 0x48000414, 0xb40001eb, "e,f,g", 0 },
+{ "i2s1.sd", 0x48000494, 0xb400016b, "e,f,g", 0 },
+{ "i2s1.dd", 0x48000594, 0xb400006b, "e,f,g", 0 },
+{ "i2st.ss", 0x48000415, 0xb40001ea, "e,f,g", 0 },
+{ "i2st.sd", 0x48000495, 0xb400016a, "e,f,g", 0 },
+{ "i2st.dd", 0x48000595, 0xb400006a, "e,f,g", 0 },
+{ "i2as1.ss", 0x48000416, 0xb40001e9, "e,f,g", 0 },
+{ "i2as1.sd", 0x48000496, 0xb4000169, "e,f,g", 0 },
+{ "i2as1.dd", 0x48000596, 0xb4000069, "e,f,g", 0 },
+{ "i2ast.ss", 0x48000417, 0xb40001e8, "e,f,g", 0 },
+{ "i2ast.sd", 0x48000497, 0xb4000168, "e,f,g", 0 },
+{ "i2ast.dd", 0x48000597, 0xb4000068, "e,f,g", 0 },
+{ "rat1s2.ss", 0x48000418, 0xb40001e7, "e,f,g", 0 },
+{ "rat1s2.sd", 0x48000498, 0xb4000167, "e,f,g", 0 },
+{ "rat1s2.dd", 0x48000598, 0xb4000067, "e,f,g", 0 },
+{ "m12asm.ss", 0x48000419, 0xb40001e6, "e,f,g", 0 },
+{ "m12asm.sd", 0x48000499, 0xb4000166, "e,f,g", 0 },
+{ "m12asm.dd", 0x48000599, 0xb4000066, "e,f,g", 0 },
+{ "ra1s2.ss", 0x4800041a, 0xb40001e5, "e,f,g", 0 },
+{ "ra1s2.sd", 0x4800049a, 0xb4000165, "e,f,g", 0 },
+{ "ra1s2.dd", 0x4800059a, 0xb4000065, "e,f,g", 0 },
+{ "m12ttsa.ss", 0x4800041b, 0xb40001e4, "e,f,g", 0 },
+{ "m12ttsa.sd", 0x4800049b, 0xb4000164, "e,f,g", 0 },
+{ "m12ttsa.dd", 0x4800059b, 0xb4000064, "e,f,g", 0 },
+{ "iat1s2.ss", 0x4800041c, 0xb40001e3, "e,f,g", 0 },
+{ "iat1s2.sd", 0x4800049c, 0xb4000163, "e,f,g", 0 },
+{ "iat1s2.dd", 0x4800059c, 0xb4000063, "e,f,g", 0 },
+{ "m12tsm.ss", 0x4800041d, 0xb40001e2, "e,f,g", 0 },
+{ "m12tsm.sd", 0x4800049d, 0xb4000162, "e,f,g", 0 },
+{ "m12tsm.dd", 0x4800059d, 0xb4000062, "e,f,g", 0 },
+{ "ia1s2.ss", 0x4800041e, 0xb40001e1, "e,f,g", 0 },
+{ "ia1s2.sd", 0x4800049e, 0xb4000161, "e,f,g", 0 },
+{ "ia1s2.dd", 0x4800059e, 0xb4000061, "e,f,g", 0 },
+{ "m12tsa.ss", 0x4800041f, 0xb40001e0, "e,f,g", 0 },
+{ "m12tsa.sd", 0x4800049f, 0xb4000160, "e,f,g", 0 },
+{ "m12tsa.dd", 0x4800059f, 0xb4000060, "e,f,g", 0 },
+
+/* Floating Point Escape Instruction Format - pfmam.p fsrc1,fsrc2,fdest. */
+{ "mr2p1.ss", 0x48000000, 0xb40005ff, "e,f,g", 0 },
+{ "mr2p1.sd", 0x48000080, 0xb400057f, "e,f,g", 0 },
+{ "mr2p1.dd", 0x48000180, 0xb400047f, "e,f,g", 0 },
+{ "mr2pt.ss", 0x48000001, 0xb40005fe, "e,f,g", 0 },
+{ "mr2pt.sd", 0x48000081, 0xb400057e, "e,f,g", 0 },
+{ "mr2pt.dd", 0x48000181, 0xb400047e, "e,f,g", 0 },
+{ "mr2mp1.ss", 0x48000002, 0xb40005fd, "e,f,g", 0 },
+{ "mr2mp1.sd", 0x48000082, 0xb400057d, "e,f,g", 0 },
+{ "mr2mp1.dd", 0x48000182, 0xb400047d, "e,f,g", 0 },
+{ "mr2mpt.ss", 0x48000003, 0xb40005fc, "e,f,g", 0 },
+{ "mr2mpt.sd", 0x48000083, 0xb400057c, "e,f,g", 0 },
+{ "mr2mpt.dd", 0x48000183, 0xb400047c, "e,f,g", 0 },
+{ "mi2p1.ss", 0x48000004, 0xb40005fb, "e,f,g", 0 },
+{ "mi2p1.sd", 0x48000084, 0xb400057b, "e,f,g", 0 },
+{ "mi2p1.dd", 0x48000184, 0xb400047b, "e,f,g", 0 },
+{ "mi2pt.ss", 0x48000005, 0xb40005fa, "e,f,g", 0 },
+{ "mi2pt.sd", 0x48000085, 0xb400057a, "e,f,g", 0 },
+{ "mi2pt.dd", 0x48000185, 0xb400047a, "e,f,g", 0 },
+{ "mi2mp1.ss", 0x48000006, 0xb40005f9, "e,f,g", 0 },
+{ "mi2mp1.sd", 0x48000086, 0xb4000579, "e,f,g", 0 },
+{ "mi2mp1.dd", 0x48000186, 0xb4000479, "e,f,g", 0 },
+{ "mi2mpt.ss", 0x48000007, 0xb40005f8, "e,f,g", 0 },
+{ "mi2mpt.sd", 0x48000087, 0xb4000578, "e,f,g", 0 },
+{ "mi2mpt.dd", 0x48000187, 0xb4000478, "e,f,g", 0 },
+{ "mrmt1p2.ss", 0x48000008, 0xb40005f7, "e,f,g", 0 },
+{ "mrmt1p2.sd", 0x48000088, 0xb4000577, "e,f,g", 0 },
+{ "mrmt1p2.dd", 0x48000188, 0xb4000477, "e,f,g", 0 },
+{ "mm12mpm.ss", 0x48000009, 0xb40005f6, "e,f,g", 0 },
+{ "mm12mpm.sd", 0x48000089, 0xb4000576, "e,f,g", 0 },
+{ "mm12mpm.dd", 0x48000189, 0xb4000476, "e,f,g", 0 },
+{ "mrm1p2.ss", 0x4800000a, 0xb40005f5, "e,f,g", 0 },
+{ "mrm1p2.sd", 0x4800008a, 0xb4000575, "e,f,g", 0 },
+{ "mrm1p2.dd", 0x4800018a, 0xb4000475, "e,f,g", 0 },
+{ "mm12ttpm.ss",0x4800000b, 0xb40005f4, "e,f,g", 0 },
+{ "mm12ttpm.sd",0x4800008b, 0xb4000574, "e,f,g", 0 },
+{ "mm12ttpm.dd",0x4800018b, 0xb4000474, "e,f,g", 0 },
+{ "mimt1p2.ss", 0x4800000c, 0xb40005f3, "e,f,g", 0 },
+{ "mimt1p2.sd", 0x4800008c, 0xb4000573, "e,f,g", 0 },
+{ "mimt1p2.dd", 0x4800018c, 0xb4000473, "e,f,g", 0 },
+{ "mm12tpm.ss", 0x4800000d, 0xb40005f2, "e,f,g", 0 },
+{ "mm12tpm.sd", 0x4800008d, 0xb4000572, "e,f,g", 0 },
+{ "mm12tpm.dd", 0x4800018d, 0xb4000472, "e,f,g", 0 },
+{ "mim1p2.ss", 0x4800000e, 0xb40005f1, "e,f,g", 0 },
+{ "mim1p2.sd", 0x4800008e, 0xb4000571, "e,f,g", 0 },
+{ "mim1p2.dd", 0x4800018e, 0xb4000471, "e,f,g", 0 },
+
+/* Floating Point Escape Instruction Format - pfmsm.p fsrc1,fsrc2,fdest. */
+{ "mr2s1.ss", 0x48000010, 0xb40005ef, "e,f,g", 0 },
+{ "mr2s1.sd", 0x48000090, 0xb400056f, "e,f,g", 0 },
+{ "mr2s1.dd", 0x48000190, 0xb400046f, "e,f,g", 0 },
+{ "mr2st.ss", 0x48000011, 0xb40005ee, "e,f,g", 0 },
+{ "mr2st.sd", 0x48000091, 0xb400056e, "e,f,g", 0 },
+{ "mr2st.dd", 0x48000191, 0xb400046e, "e,f,g", 0 },
+{ "mr2ms1.ss", 0x48000012, 0xb40005ed, "e,f,g", 0 },
+{ "mr2ms1.sd", 0x48000092, 0xb400056d, "e,f,g", 0 },
+{ "mr2ms1.dd", 0x48000192, 0xb400046d, "e,f,g", 0 },
+{ "mr2mst.ss", 0x48000013, 0xb40005ec, "e,f,g", 0 },
+{ "mr2mst.sd", 0x48000093, 0xb400056c, "e,f,g", 0 },
+{ "mr2mst.dd", 0x48000193, 0xb400046c, "e,f,g", 0 },
+{ "mi2s1.ss", 0x48000014, 0xb40005eb, "e,f,g", 0 },
+{ "mi2s1.sd", 0x48000094, 0xb400056b, "e,f,g", 0 },
+{ "mi2s1.dd", 0x48000194, 0xb400046b, "e,f,g", 0 },
+{ "mi2st.ss", 0x48000015, 0xb40005ea, "e,f,g", 0 },
+{ "mi2st.sd", 0x48000095, 0xb400056a, "e,f,g", 0 },
+{ "mi2st.dd", 0x48000195, 0xb400046a, "e,f,g", 0 },
+{ "mi2ms1.ss", 0x48000016, 0xb40005e9, "e,f,g", 0 },
+{ "mi2ms1.sd", 0x48000096, 0xb4000569, "e,f,g", 0 },
+{ "mi2ms1.dd", 0x48000196, 0xb4000469, "e,f,g", 0 },
+{ "mi2mst.ss", 0x48000017, 0xb40005e8, "e,f,g", 0 },
+{ "mi2mst.sd", 0x48000097, 0xb4000568, "e,f,g", 0 },
+{ "mi2mst.dd", 0x48000197, 0xb4000468, "e,f,g", 0 },
+{ "mrmt1s2.ss", 0x48000018, 0xb40005e7, "e,f,g", 0 },
+{ "mrmt1s2.sd", 0x48000098, 0xb4000567, "e,f,g", 0 },
+{ "mrmt1s2.dd", 0x48000198, 0xb4000467, "e,f,g", 0 },
+{ "mm12msm.ss", 0x48000019, 0xb40005e6, "e,f,g", 0 },
+{ "mm12msm.sd", 0x48000099, 0xb4000566, "e,f,g", 0 },
+{ "mm12msm.dd", 0x48000199, 0xb4000466, "e,f,g", 0 },
+{ "mrm1s2.ss", 0x4800001a, 0xb40005e5, "e,f,g", 0 },
+{ "mrm1s2.sd", 0x4800009a, 0xb4000565, "e,f,g", 0 },
+{ "mrm1s2.dd", 0x4800019a, 0xb4000465, "e,f,g", 0 },
+{ "mm12ttsm.ss",0x4800001b, 0xb40005e4, "e,f,g", 0 },
+{ "mm12ttsm.sd",0x4800009b, 0xb4000564, "e,f,g", 0 },
+{ "mm12ttsm.dd",0x4800019b, 0xb4000464, "e,f,g", 0 },
+{ "mimt1s2.ss", 0x4800001c, 0xb40005e3, "e,f,g", 0 },
+{ "mimt1s2.sd", 0x4800009c, 0xb4000563, "e,f,g", 0 },
+{ "mimt1s2.dd", 0x4800019c, 0xb4000463, "e,f,g", 0 },
+{ "mm12tsm.ss", 0x4800001d, 0xb40005e2, "e,f,g", 0 },
+{ "mm12tsm.sd", 0x4800009d, 0xb4000562, "e,f,g", 0 },
+{ "mm12tsm.dd", 0x4800019d, 0xb4000462, "e,f,g", 0 },
+{ "mim1s2.ss", 0x4800001e, 0xb40005e1, "e,f,g", 0 },
+{ "mim1s2.sd", 0x4800009e, 0xb4000561, "e,f,g", 0 },
+{ "mim1s2.dd", 0x4800019e, 0xb4000461, "e,f,g", 0 },
+
+{ "fmul.ss", 0x48000020, 0xb40005df, "e,f,g", 0 }, /* fmul.p fsrc1,fsrc2,fdest */
+{ "fmul.sd", 0x480000a0, 0xb400055f, "e,f,g", 0 }, /* fmul.p fsrc1,fsrc2,fdest */
+{ "fmul.dd", 0x480001a0, 0xb400045f, "e,f,g", 0 }, /* fmul.p fsrc1,fsrc2,fdest */
+{ "pfmul.ss", 0x48000420, 0xb40001df, "e,f,g", 0 }, /* pfmul.p fsrc1,fsrc2,fdest */
+{ "pfmul.sd", 0x480004a0, 0xb400015f, "e,f,g", 0 }, /* pfmul.p fsrc1,fsrc2,fdest */
+{ "pfmul.dd", 0x480005a0, 0xb400005f, "e,f,g", 0 }, /* pfmul.p fsrc1,fsrc2,fdest */
+{ "pfmul3.dd", 0x480005a4, 0xb400005b, "e,f,g", 0 }, /* pfmul3.p fsrc1,fsrc2,fdest */
+{ "fmlow.dd", 0x480001a1, 0xb400045e, "e,f,g", 0 }, /* fmlow.dd fsrc1,fsrc2,fdest */
+{ "frcp.ss", 0x48000022, 0xb40005dd, "f,g", 0 }, /* frcp.p fsrc2,fdest */
+{ "frcp.sd", 0x480000a2, 0xb400055d, "f,g", 0 }, /* frcp.p fsrc2,fdest */
+{ "frcp.dd", 0x480001a2, 0xb400045d, "f,g", 0 }, /* frcp.p fsrc2,fdest */
+{ "frsqr.ss", 0x48000023, 0xb40005dc, "f,g", 0 }, /* frsqr.p fsrc2,fdest */
+{ "frsqr.sd", 0x480000a3, 0xb400055c, "f,g", 0 }, /* frsqr.p fsrc2,fdest */
+{ "frsqr.dd", 0x480001a3, 0xb400045c, "f,g", 0 }, /* frsqr.p fsrc2,fdest */
+{ "fadd.ss", 0x48000030, 0xb40005cf, "e,f,g", 0 }, /* fadd.p fsrc1,fsrc2,fdest */
+{ "fadd.sd", 0x480000b0, 0xb400054f, "e,f,g", 0 }, /* fadd.p fsrc1,fsrc2,fdest */
+{ "fadd.dd", 0x480001b0, 0xb400044f, "e,f,g", 0 }, /* fadd.p fsrc1,fsrc2,fdest */
+{ "pfadd.ss", 0x48000430, 0xb40001cf, "e,f,g", 0 }, /* pfadd.p fsrc1,fsrc2,fdest */
+{ "pfadd.sd", 0x480004b0, 0xb400014f, "e,f,g", 0 }, /* pfadd.p fsrc1,fsrc2,fdest */
+{ "pfadd.dd", 0x480005b0, 0xb400004f, "e,f,g", 0 }, /* pfadd.p fsrc1,fsrc2,fdest */
+{ "fsub.ss", 0x48000031, 0xb40005ce, "e,f,g", 0 }, /* fsub.p fsrc1,fsrc2,fdest */
+{ "fsub.sd", 0x480000b1, 0xb400054e, "e,f,g", 0 }, /* fsub.p fsrc1,fsrc2,fdest */
+{ "fsub.dd", 0x480001b1, 0xb400044e, "e,f,g", 0 }, /* fsub.p fsrc1,fsrc2,fdest */
+{ "pfsub.ss", 0x48000431, 0xb40001ce, "e,f,g", 0 }, /* pfsub.p fsrc1,fsrc2,fdest */
+{ "pfsub.sd", 0x480004b1, 0xb400014e, "e,f,g", 0 }, /* pfsub.p fsrc1,fsrc2,fdest */
+{ "pfsub.dd", 0x480005b1, 0xb400004e, "e,f,g", 0 }, /* pfsub.p fsrc1,fsrc2,fdest */
+{ "fix.sd", 0x480000b2, 0xb400054d, "e,g", 0 }, /* fix.p fsrc1,fdest */
+{ "fix.dd", 0x480001b2, 0xb400044d, "e,g", 0 }, /* fix.p fsrc1,fdest */
+{ "pfix.sd", 0x480004b2, 0xb400014d, "e,g", 0 }, /* pfix.p fsrc1,fdest */
+{ "pfix.dd", 0x480005b2, 0xb400004d, "e,g", 0 }, /* pfix.p fsrc1,fdest */
+{ "famov.ss", 0x48000033, 0xb40005cc, "e,g", 0 }, /* famov.p fsrc1,fdest */
+{ "famov.ds", 0x48000133, 0xb40004cc, "e,g", 0 }, /* famov.p fsrc1,fdest */
+{ "famov.sd", 0x480000b3, 0xb400054c, "e,g", 0 }, /* famov.p fsrc1,fdest */
+{ "famov.dd", 0x480001b3, 0xb400044c, "e,g", 0 }, /* famov.p fsrc1,fdest */
+{ "pfamov.ss", 0x48000433, 0xb40001cc, "e,g", 0 }, /* pfamov.p fsrc1,fdest */
+{ "pfamov.ds", 0x48000533, 0xb40000cc, "e,g", 0 }, /* pfamov.p fsrc1,fdest */
+{ "pfamov.sd", 0x480004b3, 0xb400014c, "e,g", 0 }, /* pfamov.p fsrc1,fdest */
+{ "pfamov.dd", 0x480005b3, 0xb400004c, "e,g", 0 }, /* pfamov.p fsrc1,fdest */
+/* Opcode pfgt has R bit cleared; pfle has R bit set. */
+{ "pfgt.ss", 0x48000434, 0xb40001cb, "e,f,g", 0 }, /* pfgt.p fsrc1,fsrc2,fdest */
+{ "pfgt.dd", 0x48000534, 0xb40000cb, "e,f,g", 0 }, /* pfgt.p fsrc1,fsrc2,fdest */
+/* Opcode pfgt has R bit cleared; pfle has R bit set. */
+{ "pfle.ss", 0x480004b4, 0xb400014b, "e,f,g", 0 }, /* pfle.p fsrc1,fsrc2,fdest */
+{ "pfle.dd", 0x480005b4, 0xb400004b, "e,f,g", 0 }, /* pfle.p fsrc1,fsrc2,fdest */
+{ "pfeq.ss", 0x48000435, 0xb40001ca, "e,f,g", 0 }, /* pfeq.p fsrc1,fsrc2,fdest */
+{ "pfeq.dd", 0x48000535, 0xb40000ca, "e,f,g", 0 }, /* pfeq.p fsrc1,fsrc2,fdest */
+{ "ftrunc.sd", 0x480000ba, 0xb4000545, "e,g", 0 }, /* ftrunc.p fsrc1,fdest */
+{ "ftrunc.dd", 0x480001ba, 0xb4000445, "e,g", 0 }, /* ftrunc.p fsrc1,fdest */
+{ "pftrunc.sd", 0x480004ba, 0xb4000145, "e,g", 0 }, /* pftrunc.p fsrc1,fdest */
+{ "pftrunc.dd", 0x480005ba, 0xb4000045, "e,g", 0 }, /* pftrunc.p fsrc1,fdest */
+{ "fxfr", 0x48000040, 0xb40005bf, "e,d", 0 }, /* fxfr fsrc1,idest */
+{ "fiadd.ss", 0x48000049, 0xb40005b6, "e,f,g", 0 }, /* fiadd.w fsrc1,fsrc2,fdest */
+{ "fiadd.dd", 0x480001c9, 0xb4000436, "e,f,g", 0 }, /* fiadd.w fsrc1,fsrc2,fdest */
+{ "pfiadd.ss", 0x48000449, 0xb40001b6, "e,f,g", 0 }, /* pfiadd.w fsrc1,fsrc2,fdest */
+{ "pfiadd.dd", 0x480005c9, 0xb4000036, "e,f,g", 0 }, /* pfiadd.w fsrc1,fsrc2,fdest */
+{ "fisub.ss", 0x4800004d, 0xb40005b2, "e,f,g", 0 }, /* fisub.w fsrc1,fsrc2,fdest */
+{ "fisub.dd", 0x480001cd, 0xb4000432, "e,f,g", 0 }, /* fisub.w fsrc1,fsrc2,fdest */
+{ "pfisub.ss", 0x4800044d, 0xb40001b2, "e,f,g", 0 }, /* pfisub.w fsrc1,fsrc2,fdest */
+{ "pfisub.dd", 0x480005cd, 0xb4000032, "e,f,g", 0 }, /* pfisub.w fsrc1,fsrc2,fdest */
+{ "fzchkl", 0x480001d7, 0xb4000428, "e,f,g", 0 }, /* fzchkl fsrc1,fsrc2,fdest */
+{ "pfzchkl", 0x480005d7, 0xb4000028, "e,f,g", 0 }, /* pfzchkl fsrc1,fsrc2,fdest */
+{ "fzchks", 0x480001df, 0xb4000420, "e,f,g", 0 }, /* fzchks fsrc1,fsrc2,fdest */
+{ "pfzchks", 0x480005df, 0xb4000020, "e,f,g", 0 }, /* pfzchks fsrc1,fsrc2,fdest */
+{ "faddp", 0x480001d0, 0xb400042f, "e,f,g", 0 }, /* faddp fsrc1,fsrc2,fdest */
+{ "pfaddp", 0x480005d0, 0xb400002f, "e,f,g", 0 }, /* pfaddp fsrc1,fsrc2,fdest */
+{ "faddz", 0x480001d1, 0xb400042e, "e,f,g", 0 }, /* faddz fsrc1,fsrc2,fdest */
+{ "pfaddz", 0x480005d1, 0xb400002e, "e,f,g", 0 }, /* pfaddz fsrc1,fsrc2,fdest */
+{ "form", 0x480001da, 0xb4000425, "e,g", 0 }, /* form fsrc1,fdest */
+{ "pform", 0x480005da, 0xb4000025, "e,g", 0 }, /* pform fsrc1,fdest */
+
+/* Floating point pseudo-instructions. */
+{ "fmov.ss", 0x48000049, 0xb7e005b6, "e,g", 0 }, /* fiadd.ss fsrc1,f0,fdest */
+{ "fmov.dd", 0x480001c9, 0xb7e00436, "e,g", 0 }, /* fiadd.dd fsrc1,f0,fdest */
+{ "fmov.sd", 0x480000b3, 0xb400054c, "e,g", 0 }, /* famov.sd fsrc1,fdest */
+{ "fmov.ds", 0x48000133, 0xb40004cc, "e,g", 0 }, /* famov.ds fsrc1,fdest */
+{ "pfmov.ds", 0x48000533, 0xb40000cc, "e,g", 0 }, /* pfamov.ds fsrc1,fdest */
+{ "pfmov.dd", 0x480005c9, 0xb7e00036, "e,g", 0 }, /* pfiadd.dd fsrc1,f0,fdest */
+{ 0, 0, 0, 0, 0 },
+
+};
+
+#define NUMOPCODES ((sizeof i860_opcodes)/(sizeof i860_opcodes[0]))
+
+
diff --git a/include/opcode/i960.h b/include/opcode/i960.h
new file mode 100644
index 000000000..33b56e635
--- /dev/null
+++ b/include/opcode/i960.h
@@ -0,0 +1,525 @@
+/* Basic 80960 instruction formats.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+ The 'COJ' instructions are actually COBR instructions with the 'b' in
+ the mnemonic replaced by a 'j'; they are ALWAYS "de-optimized" if necessary:
+ if the displacement will not fit in 13 bits, the assembler will replace them
+ with the corresponding compare and branch instructions.
+
+ All of the 'MEMn' instructions are the same format; the 'n' in the name
+ indicates the default index scale factor (the size of the datum operated on).
+
+ The FBRA formats are not actually an instruction format. They are the
+ "convenience directives" for branching on floating-point comparisons,
+ each of which generates 2 instructions (a 'bno' and one other branch).
+
+ The CALLJ format is not actually an instruction format. It indicates that
+ the instruction generated (a CTRL-format 'call') should have its relocation
+ specially flagged for link-time replacement with a 'bal' or 'calls' if
+ appropriate. */
+
+#define CTRL 0
+#define COBR 1
+#define COJ 2
+#define REG 3
+#define MEM1 4
+#define MEM2 5
+#define MEM4 6
+#define MEM8 7
+#define MEM12 8
+#define MEM16 9
+#define FBRA 10
+#define CALLJ 11
+
+/* Masks for the mode bits in REG format instructions */
+#define M1 0x0800
+#define M2 0x1000
+#define M3 0x2000
+
+/* Generate the 12-bit opcode for a REG format instruction by placing the
+ * high 8 bits in instruction bits 24-31, the low 4 bits in instruction bits
+ * 7-10.
+ */
+
+#define REG_OPC(opc) ((opc & 0xff0) << 20) | ((opc & 0xf) << 7)
+
+/* Generate a template for a REG format instruction: place the opcode bits
+ * in the appropriate fields and OR in mode bits for the operands that will not
+ * be used. I.e.,
+ * set m1=1, if src1 will not be used
+ * set m2=1, if src2 will not be used
+ * set m3=1, if dst will not be used
+ *
+ * Setting the "unused" mode bits to 1 speeds up instruction execution(!).
+ * The information is also useful to us because some 1-operand REG instructions
+ * use the src1 field, others the dst field; and some 2-operand REG instructions
+ * use src1/src2, others src1/dst. The set mode bits enable us to distinguish.
+ */
+#define R_0(opc) ( REG_OPC(opc) | M1 | M2 | M3 ) /* No operands */
+#define R_1(opc) ( REG_OPC(opc) | M2 | M3 ) /* 1 operand: src1 */
+#define R_1D(opc) ( REG_OPC(opc) | M1 | M2 ) /* 1 operand: dst */
+#define R_2(opc) ( REG_OPC(opc) | M3 ) /* 2 ops: src1/src2 */
+#define R_2D(opc) ( REG_OPC(opc) | M2 ) /* 2 ops: src1/dst */
+#define R_3(opc) ( REG_OPC(opc) ) /* 3 operands */
+
+/* DESCRIPTOR BYTES FOR REGISTER OPERANDS
+ *
+ * Interpret names as follows:
+ * R: global or local register only
+ * RS: global, local, or (if target allows) special-function register only
+ * RL: global or local register, or integer literal
+ * RSL: global, local, or (if target allows) special-function register;
+ * or integer literal
+ * F: global, local, or floating-point register
+ * FL: global, local, or floating-point register; or literal (including
+ * floating point)
+ *
+ * A number appended to a name indicates that registers must be aligned,
+ * as follows:
+ * 2: register number must be multiple of 2
+ * 4: register number must be multiple of 4
+ */
+
+#define SFR 0x10 /* Mask for the "sfr-OK" bit */
+#define LIT 0x08 /* Mask for the "literal-OK" bit */
+#define FP 0x04 /* Mask for "floating-point-OK" bit */
+
+/* This macro ors the bits together. Note that 'align' is a mask
+ * for the low 0, 1, or 2 bits of the register number, as appropriate.
+ */
+#define OP(align,lit,fp,sfr) ( align | lit | fp | sfr )
+
+#define R OP( 0, 0, 0, 0 )
+#define RS OP( 0, 0, 0, SFR )
+#define RL OP( 0, LIT, 0, 0 )
+#define RSL OP( 0, LIT, 0, SFR )
+#define F OP( 0, 0, FP, 0 )
+#define FL OP( 0, LIT, FP, 0 )
+#define R2 OP( 1, 0, 0, 0 )
+#define RL2 OP( 1, LIT, 0, 0 )
+#define F2 OP( 1, 0, FP, 0 )
+#define FL2 OP( 1, LIT, FP, 0 )
+#define R4 OP( 3, 0, 0, 0 )
+#define RL4 OP( 3, LIT, 0, 0 )
+#define F4 OP( 3, 0, FP, 0 )
+#define FL4 OP( 3, LIT, FP, 0 )
+
+#define M 0x7f /* Memory operand (MEMA & MEMB format instructions) */
+
+/* Macros to extract info from the register operand descriptor byte 'od'.
+ */
+#define SFR_OK(od) (od & SFR) /* TRUE if sfr operand allowed */
+#define LIT_OK(od) (od & LIT) /* TRUE if literal operand allowed */
+#define FP_OK(od) (od & FP) /* TRUE if floating-point op allowed */
+#define REG_ALIGN(od,n) ((od & 0x3 & n) == 0)
+ /* TRUE if reg #n is properly aligned */
+#define MEMOP(od) (od == M) /* TRUE if operand is a memory operand*/
+
+/* Description of a single i80960 instruction */
+struct i960_opcode {
+ long opcode; /* 32 bits, constant fields filled in, rest zeroed */
+ char *name; /* Assembler mnemonic */
+ short iclass; /* Class: see #defines below */
+ char format; /* REG, COBR, CTRL, MEMn, COJ, FBRA, or CALLJ */
+ char num_ops; /* Number of operands */
+ char operand[3];/* Operand descriptors; same order as assembler instr */
+};
+
+/* Classes of 960 intructions:
+ * - each instruction falls into one class.
+ * - each target architecture supports one or more classes.
+ *
+ * EACH CONSTANT MUST CONTAIN 1 AND ONLY 1 SET BIT!: see targ_has_iclass().
+ */
+#define I_BASE 0x01 /* 80960 base instruction set */
+#define I_CX 0x02 /* 80960Cx instruction */
+#define I_DEC 0x04 /* Decimal instruction */
+#define I_FP 0x08 /* Floating point instruction */
+#define I_KX 0x10 /* 80960Kx instruction */
+#define I_MIL 0x20 /* Military instruction */
+#define I_CASIM 0x40 /* CA simulator instruction */
+#define I_CX2 0x80 /* Cx/Jx/Hx instructions */
+#define I_JX 0x100 /* Jx/Hx instruction */
+#define I_HX 0x200 /* Hx instructions */
+
+/******************************************************************************
+ *
+ * TABLE OF i960 INSTRUCTION DESCRIPTIONS
+ *
+ ******************************************************************************/
+
+const struct i960_opcode i960_opcodes[] = {
+
+ /* if a CTRL instruction has an operand, it's always a displacement */
+
+ /* callj default=='call' */
+ { 0x09000000, "callj", I_BASE, CALLJ, 1, { 0, 0, 0 } },
+ { 0x08000000, "b", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x09000000, "call", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x0a000000, "ret", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x0b000000, "bal", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x10000000, "bno", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* bf same as bno */
+ { 0x10000000, "bf", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* bru same as bno */
+ { 0x10000000, "bru", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x11000000, "bg", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* brg same as bg */
+ { 0x11000000, "brg", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x12000000, "be", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* bre same as be */
+ { 0x12000000, "bre", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x13000000, "bge", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* brge same as bge */
+ { 0x13000000, "brge", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x14000000, "bl", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* brl same as bl */
+ { 0x14000000, "brl", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x15000000, "bne", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* brlg same as bne */
+ { 0x15000000, "brlg", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x16000000, "ble", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* brle same as ble */
+ { 0x16000000, "brle", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x17000000, "bo", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* bt same as bo */
+ { 0x17000000, "bt", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ /* bro same as bo */
+ { 0x17000000, "bro", I_BASE, CTRL, 1, { 0, 0, 0 } },
+ { 0x18000000, "faultno", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ /* faultf same as faultno */
+ { 0x18000000, "faultf", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x19000000, "faultg", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1a000000, "faulte", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1b000000, "faultge", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1c000000, "faultl", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1d000000, "faultne", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1e000000, "faultle", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ { 0x1f000000, "faulto", I_BASE, CTRL, 0, { 0, 0, 0 } },
+ /* faultt syn for faulto */
+ { 0x1f000000, "faultt", I_BASE, CTRL, 0, { 0, 0, 0 } },
+
+ { 0x01000000, "syscall", I_CASIM,CTRL, 0, { 0, 0, 0 } },
+
+ /* If a COBR (or COJ) has 3 operands, the last one is always a
+ * displacement and does not appear explicitly in the table.
+ */
+
+ { 0x20000000, "testno", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x21000000, "testg", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x22000000, "teste", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x23000000, "testge", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x24000000, "testl", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x25000000, "testne", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x26000000, "testle", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x27000000, "testo", I_BASE, COBR, 1, { R, 0, 0 } },
+ { 0x30000000, "bbc", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x31000000, "cmpobg", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x32000000, "cmpobe", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x33000000, "cmpobge", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x34000000, "cmpobl", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x35000000, "cmpobne", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x36000000, "cmpoble", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x37000000, "bbs", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x38000000, "cmpibno", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x39000000, "cmpibg", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3a000000, "cmpibe", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3b000000, "cmpibge", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3c000000, "cmpibl", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3d000000, "cmpibne", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3e000000, "cmpible", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x3f000000, "cmpibo", I_BASE, COBR, 3, { RL, RS, 0 } },
+ { 0x31000000, "cmpojg", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x32000000, "cmpoje", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x33000000, "cmpojge", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x34000000, "cmpojl", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x35000000, "cmpojne", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x36000000, "cmpojle", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x38000000, "cmpijno", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x39000000, "cmpijg", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3a000000, "cmpije", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3b000000, "cmpijge", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3c000000, "cmpijl", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3d000000, "cmpijne", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3e000000, "cmpijle", I_BASE, COJ, 3, { RL, RS, 0 } },
+ { 0x3f000000, "cmpijo", I_BASE, COJ, 3, { RL, RS, 0 } },
+
+ { 0x80000000, "ldob", I_BASE, MEM1, 2, { M, R, 0 } },
+ { 0x82000000, "stob", I_BASE, MEM1, 2, { R, M, 0 } },
+ { 0x84000000, "bx", I_BASE, MEM1, 1, { M, 0, 0 } },
+ { 0x85000000, "balx", I_BASE, MEM1, 2, { M, R, 0 } },
+ { 0x86000000, "callx", I_BASE, MEM1, 1, { M, 0, 0 } },
+ { 0x88000000, "ldos", I_BASE, MEM2, 2, { M, R, 0 } },
+ { 0x8a000000, "stos", I_BASE, MEM2, 2, { R, M, 0 } },
+ { 0x8c000000, "lda", I_BASE, MEM1, 2, { M, R, 0 } },
+ { 0x90000000, "ld", I_BASE, MEM4, 2, { M, R, 0 } },
+ { 0x92000000, "st", I_BASE, MEM4, 2, { R, M, 0 } },
+ { 0x98000000, "ldl", I_BASE, MEM8, 2, { M, R2, 0 } },
+ { 0x9a000000, "stl", I_BASE, MEM8, 2, { R2, M, 0 } },
+ { 0xa0000000, "ldt", I_BASE, MEM12, 2, { M, R4, 0 } },
+ { 0xa2000000, "stt", I_BASE, MEM12, 2, { R4, M, 0 } },
+ { 0xb0000000, "ldq", I_BASE, MEM16, 2, { M, R4, 0 } },
+ { 0xb2000000, "stq", I_BASE, MEM16, 2, { R4, M, 0 } },
+ { 0xc0000000, "ldib", I_BASE, MEM1, 2, { M, R, 0 } },
+ { 0xc2000000, "stib", I_BASE, MEM1, 2, { R, M, 0 } },
+ { 0xc8000000, "ldis", I_BASE, MEM2, 2, { M, R, 0 } },
+ { 0xca000000, "stis", I_BASE, MEM2, 2, { R, M, 0 } },
+
+ { R_3(0x580), "notbit", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x581), "and", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x582), "andnot", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x583), "setbit", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x584), "notand", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x586), "xor", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x587), "or", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x588), "nor", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x589), "xnor", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_2D(0x58a), "not", I_BASE, REG, 2, { RSL,RS, 0 } },
+ { R_3(0x58b), "ornot", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x58c), "clrbit", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x58d), "notor", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x58e), "nand", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x58f), "alterbit", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x590), "addo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x591), "addi", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x592), "subo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x593), "subi", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x598), "shro", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x59a), "shrdi", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x59b), "shri", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x59c), "shlo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x59d), "rotate", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x59e), "shli", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_2(0x5a0), "cmpo", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x5a1), "cmpi", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x5a2), "concmpo", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x5a3), "concmpi", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_3(0x5a4), "cmpinco", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x5a5), "cmpinci", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x5a6), "cmpdeco", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x5a7), "cmpdeci", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_2(0x5ac), "scanbyte", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x5ae), "chkbit", I_BASE, REG, 2, { RSL,RSL, 0 } },
+ { R_3(0x5b0), "addc", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x5b2), "subc", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_2D(0x5cc), "mov", I_BASE, REG, 2, { RSL,RS, 0 } },
+ { R_2D(0x5dc), "movl", I_BASE, REG, 2, { RL2,R2, 0 } },
+ { R_2D(0x5ec), "movt", I_BASE, REG, 2, { RL4,R4, 0 } },
+ { R_2D(0x5fc), "movq", I_BASE, REG, 2, { RL4,R4, 0 } },
+ { R_3(0x610), "atmod", I_BASE, REG, 3, { RS, RSL,R } },
+ { R_3(0x612), "atadd", I_BASE, REG, 3, { RS, RSL,RS } },
+ { R_2D(0x640), "spanbit", I_BASE, REG, 2, { RSL,RS, 0 } },
+ { R_2D(0x641), "scanbit", I_BASE, REG, 2, { RSL,RS, 0 } },
+ { R_3(0x645), "modac", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x650), "modify", I_BASE, REG, 3, { RSL,RSL,R } },
+ { R_3(0x651), "extract", I_BASE, REG, 3, { RSL,RSL,R } },
+ { R_3(0x654), "modtc", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x655), "modpc", I_BASE, REG, 3, { RSL,RSL,R } },
+ { R_1(0x660), "calls", I_BASE, REG, 1, { RSL, 0, 0 } },
+ { R_0(0x66b), "mark", I_BASE, REG, 0, { 0, 0, 0 } },
+ { R_0(0x66c), "fmark", I_BASE, REG, 0, { 0, 0, 0 } },
+ { R_0(0x66d), "flushreg", I_BASE, REG, 0, { 0, 0, 0 } },
+ { R_0(0x66f), "syncf", I_BASE, REG, 0, { 0, 0, 0 } },
+ { R_3(0x670), "emul", I_BASE, REG, 3, { RSL,RSL,R2 } },
+ { R_3(0x671), "ediv", I_BASE, REG, 3, { RSL,RL2,RS } },
+ { R_2D(0x672), "cvtadr", I_CASIM,REG, 2, { RL, R2, 0 } },
+ { R_3(0x701), "mulo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x708), "remo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x70b), "divo", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x741), "muli", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x748), "remi", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x749), "modi", I_BASE, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x74b), "divi", I_BASE, REG, 3, { RSL,RSL,RS } },
+
+ /* Floating-point instructions */
+
+ { R_2D(0x674), "cvtir", I_FP, REG, 2, { RL, F, 0 } },
+ { R_2D(0x675), "cvtilr", I_FP, REG, 2, { RL, F, 0 } },
+ { R_3(0x676), "scalerl", I_FP, REG, 3, { RL, FL2,F2 } },
+ { R_3(0x677), "scaler", I_FP, REG, 3, { RL, FL, F } },
+ { R_3(0x680), "atanr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x681), "logepr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x682), "logr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x683), "remr", I_FP, REG, 3, { FL, FL, F } },
+ { R_2(0x684), "cmpor", I_FP, REG, 2, { FL, FL, 0 } },
+ { R_2(0x685), "cmpr", I_FP, REG, 2, { FL, FL, 0 } },
+ { R_2D(0x688), "sqrtr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x689), "expr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x68a), "logbnr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x68b), "roundr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x68c), "sinr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x68d), "cosr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x68e), "tanr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_1(0x68f), "classr", I_FP, REG, 1, { FL, 0, 0 } },
+ { R_3(0x690), "atanrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x691), "logeprl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x692), "logrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x693), "remrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_2(0x694), "cmporl", I_FP, REG, 2, { FL2,FL2, 0 } },
+ { R_2(0x695), "cmprl", I_FP, REG, 2, { FL2,FL2, 0 } },
+ { R_2D(0x698), "sqrtrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x699), "exprl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x69a), "logbnrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x69b), "roundrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x69c), "sinrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x69d), "cosrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x69e), "tanrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_1(0x69f), "classrl", I_FP, REG, 1, { FL2, 0, 0 } },
+ { R_2D(0x6c0), "cvtri", I_FP, REG, 2, { FL, R, 0 } },
+ { R_2D(0x6c1), "cvtril", I_FP, REG, 2, { FL, R2, 0 } },
+ { R_2D(0x6c2), "cvtzri", I_FP, REG, 2, { FL, R, 0 } },
+ { R_2D(0x6c3), "cvtzril", I_FP, REG, 2, { FL, R2, 0 } },
+ { R_2D(0x6c9), "movr", I_FP, REG, 2, { FL, F, 0 } },
+ { R_2D(0x6d9), "movrl", I_FP, REG, 2, { FL2,F2, 0 } },
+ { R_2D(0x6e1), "movre", I_FP, REG, 2, { FL4,F4, 0 } },
+ { R_3(0x6e2), "cpysre", I_FP, REG, 3, { FL4,FL4,F4 } },
+ { R_3(0x6e3), "cpyrsre", I_FP, REG, 3, { FL4,FL4,F4 } },
+ { R_3(0x78b), "divr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x78c), "mulr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x78d), "subr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x78f), "addr", I_FP, REG, 3, { FL, FL, F } },
+ { R_3(0x79b), "divrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x79c), "mulrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x79d), "subrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+ { R_3(0x79f), "addrl", I_FP, REG, 3, { FL2,FL2,F2 } },
+
+ /* These are the floating point branch instructions. Each actually
+ * generates 2 branch instructions: the first a CTRL instruction with
+ * the indicated opcode, and the second a 'bno'.
+ */
+
+ { 0x12000000, "brue", I_FP, FBRA, 1, { 0, 0, 0 } },
+ { 0x11000000, "brug", I_FP, FBRA, 1, { 0, 0, 0 } },
+ { 0x13000000, "bruge", I_FP, FBRA, 1, { 0, 0, 0 } },
+ { 0x14000000, "brul", I_FP, FBRA, 1, { 0, 0, 0 } },
+ { 0x16000000, "brule", I_FP, FBRA, 1, { 0, 0, 0 } },
+ { 0x15000000, "brulg", I_FP, FBRA, 1, { 0, 0, 0 } },
+
+
+ /* Decimal instructions */
+
+ { R_3(0x642), "daddc", I_DEC, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x643), "dsubc", I_DEC, REG, 3, { RSL,RSL,RS } },
+ { R_2D(0x644), "dmovt", I_DEC, REG, 2, { RSL,RS, 0 } },
+
+
+ /* KX extensions */
+
+ { R_2(0x600), "synmov", I_KX, REG, 2, { R, R, 0 } },
+ { R_2(0x601), "synmovl", I_KX, REG, 2, { R, R, 0 } },
+ { R_2(0x602), "synmovq", I_KX, REG, 2, { R, R, 0 } },
+ { R_2D(0x615), "synld", I_KX, REG, 2, { R, R, 0 } },
+
+
+ /* MC extensions */
+
+ { R_3(0x603), "cmpstr", I_MIL, REG, 3, { R, R, RL } },
+ { R_3(0x604), "movqstr", I_MIL, REG, 3, { R, R, RL } },
+ { R_3(0x605), "movstr", I_MIL, REG, 3, { R, R, RL } },
+ { R_2D(0x613), "inspacc", I_MIL, REG, 2, { R, R, 0 } },
+ { R_2D(0x614), "ldphy", I_MIL, REG, 2, { R, R, 0 } },
+ { R_3(0x617), "fill", I_MIL, REG, 3, { R, RL, RL } },
+ { R_2D(0x646), "condrec", I_MIL, REG, 2, { R, R, 0 } },
+ { R_2D(0x656), "receive", I_MIL, REG, 2, { R, R, 0 } },
+ { R_3(0x662), "send", I_MIL, REG, 3, { R, RL, R } },
+ { R_1(0x663), "sendserv", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_1(0x664), "resumprcs", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_1(0x665), "schedprcs", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_0(0x666), "saveprcs", I_MIL, REG, 0, { 0, 0, 0 } },
+ { R_1(0x668), "condwait", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_1(0x669), "wait", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_1(0x66a), "signal", I_MIL, REG, 1, { R, 0, 0 } },
+ { R_1D(0x673), "ldtime", I_MIL, REG, 1, { R2, 0, 0 } },
+
+
+ /* CX extensions */
+
+ { R_3(0x5d8), "eshro", I_CX2, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x630), "sdma", I_CX, REG, 3, { RSL,RSL,RL } },
+ { R_3(0x631), "udma", I_CX, REG, 0, { 0, 0, 0 } },
+ { R_3(0x659), "sysctl", I_CX2, REG, 3, { RSL,RSL,RL } },
+
+
+ /* Jx extensions. */
+ { R_3(0x780), "addono", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x790), "addog", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7a0), "addoe", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7b0), "addoge", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7c0), "addol", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7d0), "addone", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7e0), "addole", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7f0), "addoo", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x781), "addino", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x791), "addig", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7a1), "addie", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7b1), "addige", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7c1), "addil", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7d1), "addine", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7e1), "addile", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7f1), "addio", I_JX, REG, 3, { RSL,RSL,RS } },
+
+ { R_2D(0x5ad), "bswap", I_JX, REG, 2, { RSL, RS, 0 } },
+
+ { R_2(0x594), "cmpob", I_JX, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x595), "cmpib", I_JX, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x596), "cmpos", I_JX, REG, 2, { RSL,RSL, 0 } },
+ { R_2(0x597), "cmpis", I_JX, REG, 2, { RSL,RSL, 0 } },
+
+ { R_3(0x784), "selno", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x794), "selg", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7a4), "sele", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7b4), "selge", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7c4), "sell", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7d4), "selne", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7e4), "selle", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7f4), "selo", I_JX, REG, 3, { RSL,RSL,RS } },
+
+ { R_3(0x782), "subono", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x792), "subog", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7a2), "suboe", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7b2), "suboge", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7c2), "subol", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7d2), "subone", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7e2), "subole", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7f2), "suboo", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x783), "subino", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x793), "subig", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7a3), "subie", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7b3), "subige", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7c3), "subil", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7d3), "subine", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7e3), "subile", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_3(0x7f3), "subio", I_JX, REG, 3, { RSL,RSL,RS } },
+
+ { R_3(0x65c), "dcctl", I_JX, REG, 3, { RSL,RSL,RL } },
+ { R_3(0x65b), "icctl", I_JX, REG, 3, { RSL,RSL,RS } },
+ { R_2D(0x658), "intctl", I_JX, REG, 2, { RSL, RS, 0 } },
+ { R_0(0x5b4), "intdis", I_JX, REG, 0, { 0, 0, 0 } },
+ { R_0(0x5b5), "inten", I_JX, REG, 0, { 0, 0, 0 } },
+ { R_0(0x65d), "halt", I_JX, REG, 1, { RSL, 0, 0 } },
+
+ /* Hx extensions. */
+ { 0xac000000, "dcinva", I_HX, MEM1, 1, { M, 0, 0 } },
+
+ /* END OF TABLE */
+
+ { 0, NULL, 0, 0, 0, { 0, 0, 0 } }
+};
+
+ /* end of i960-opcode.h */
diff --git a/include/opcode/ia64.h b/include/opcode/ia64.h
new file mode 100644
index 000000000..0d33fc61b
--- /dev/null
+++ b/include/opcode/ia64.h
@@ -0,0 +1,392 @@
+/* ia64.h -- Header file for ia64 opcode table
+ Copyright (C) 1998, 1999, 2002 Free Software Foundation, Inc.
+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com> */
+
+#ifndef opcode_ia64_h
+#define opcode_ia64_h
+
+#include <sys/types.h>
+
+#include "bfd.h"
+
+
+typedef BFD_HOST_U_64_BIT ia64_insn;
+
+enum ia64_insn_type
+ {
+ IA64_TYPE_NIL = 0, /* illegal type */
+ IA64_TYPE_A, /* integer alu (I- or M-unit) */
+ IA64_TYPE_I, /* non-alu integer (I-unit) */
+ IA64_TYPE_M, /* memory (M-unit) */
+ IA64_TYPE_B, /* branch (B-unit) */
+ IA64_TYPE_F, /* floating-point (F-unit) */
+ IA64_TYPE_X, /* long encoding (X-unit) */
+ IA64_TYPE_DYN, /* Dynamic opcode */
+ IA64_NUM_TYPES
+ };
+
+enum ia64_unit
+ {
+ IA64_UNIT_NIL = 0, /* illegal unit */
+ IA64_UNIT_I, /* integer unit */
+ IA64_UNIT_M, /* memory unit */
+ IA64_UNIT_B, /* branching unit */
+ IA64_UNIT_F, /* floating-point unit */
+ IA64_UNIT_L, /* long "unit" */
+ IA64_UNIT_X, /* may be integer or branch unit */
+ IA64_NUM_UNITS
+ };
+
+/* Changes to this enumeration must be propagated to the operand table in
+ bfd/cpu-ia64-opc.c
+ */
+enum ia64_opnd
+ {
+ IA64_OPND_NIL, /* no operand---MUST BE FIRST!*/
+
+ /* constants */
+ IA64_OPND_AR_CSD, /* application register csd (ar.csd) */
+ IA64_OPND_AR_CCV, /* application register ccv (ar.ccv) */
+ IA64_OPND_AR_PFS, /* application register pfs (ar.pfs) */
+ IA64_OPND_C1, /* the constant 1 */
+ IA64_OPND_C8, /* the constant 8 */
+ IA64_OPND_C16, /* the constant 16 */
+ IA64_OPND_GR0, /* gr0 */
+ IA64_OPND_IP, /* instruction pointer (ip) */
+ IA64_OPND_PR, /* predicate register (pr) */
+ IA64_OPND_PR_ROT, /* rotating predicate register (pr.rot) */
+ IA64_OPND_PSR, /* processor status register (psr) */
+ IA64_OPND_PSR_L, /* processor status register L (psr.l) */
+ IA64_OPND_PSR_UM, /* processor status register UM (psr.um) */
+
+ /* register operands: */
+ IA64_OPND_AR3, /* third application register # (bits 20-26) */
+ IA64_OPND_B1, /* branch register # (bits 6-8) */
+ IA64_OPND_B2, /* branch register # (bits 13-15) */
+ IA64_OPND_CR3, /* third control register # (bits 20-26) */
+ IA64_OPND_F1, /* first floating-point register # */
+ IA64_OPND_F2, /* second floating-point register # */
+ IA64_OPND_F3, /* third floating-point register # */
+ IA64_OPND_F4, /* fourth floating-point register # */
+ IA64_OPND_P1, /* first predicate # */
+ IA64_OPND_P2, /* second predicate # */
+ IA64_OPND_R1, /* first register # */
+ IA64_OPND_R2, /* second register # */
+ IA64_OPND_R3, /* third register # */
+ IA64_OPND_R3_2, /* third register # (limited to gr0-gr3) */
+
+ /* indirect operands: */
+ IA64_OPND_CPUID_R3, /* cpuid[reg] */
+ IA64_OPND_DBR_R3, /* dbr[reg] */
+ IA64_OPND_DTR_R3, /* dtr[reg] */
+ IA64_OPND_ITR_R3, /* itr[reg] */
+ IA64_OPND_IBR_R3, /* ibr[reg] */
+ IA64_OPND_MR3, /* memory at addr of third register # */
+ IA64_OPND_MSR_R3, /* msr[reg] */
+ IA64_OPND_PKR_R3, /* pkr[reg] */
+ IA64_OPND_PMC_R3, /* pmc[reg] */
+ IA64_OPND_PMD_R3, /* pmd[reg] */
+ IA64_OPND_RR_R3, /* rr[reg] */
+
+ /* immediate operands: */
+ IA64_OPND_CCNT5, /* 5-bit count (31 - bits 20-24) */
+ IA64_OPND_CNT2a, /* 2-bit count (1 + bits 27-28) */
+ IA64_OPND_CNT2b, /* 2-bit count (bits 27-28): 1, 2, 3 */
+ IA64_OPND_CNT2c, /* 2-bit count (bits 30-31): 0, 7, 15, or 16 */
+ IA64_OPND_CNT5, /* 5-bit count (bits 14-18) */
+ IA64_OPND_CNT6, /* 6-bit count (bits 27-32) */
+ IA64_OPND_CPOS6a, /* 6-bit count (63 - bits 20-25) */
+ IA64_OPND_CPOS6b, /* 6-bit count (63 - bits 14-19) */
+ IA64_OPND_CPOS6c, /* 6-bit count (63 - bits 31-36) */
+ IA64_OPND_IMM1, /* signed 1-bit immediate (bit 36) */
+ IA64_OPND_IMMU2, /* unsigned 2-bit immediate (bits 13-14) */
+ IA64_OPND_IMMU7a, /* unsigned 7-bit immediate (bits 13-19) */
+ IA64_OPND_IMMU7b, /* unsigned 7-bit immediate (bits 20-26) */
+ IA64_OPND_SOF, /* 8-bit stack frame size */
+ IA64_OPND_SOL, /* 8-bit size of locals */
+ IA64_OPND_SOR, /* 6-bit number of rotating registers (scaled by 8) */
+ IA64_OPND_IMM8, /* signed 8-bit immediate (bits 13-19 & 36) */
+ IA64_OPND_IMM8U4, /* cmp4*u signed 8-bit immediate (bits 13-19 & 36) */
+ IA64_OPND_IMM8M1, /* signed 8-bit immediate -1 (bits 13-19 & 36) */
+ IA64_OPND_IMM8M1U4, /* cmp4*u signed 8-bit immediate -1 (bits 13-19 & 36)*/
+ IA64_OPND_IMM8M1U8, /* cmp*u signed 8-bit immediate -1 (bits 13-19 & 36) */
+ IA64_OPND_IMMU9, /* unsigned 9-bit immediate (bits 33-34, 20-26) */
+ IA64_OPND_IMM9a, /* signed 9-bit immediate (bits 6-12, 27, 36) */
+ IA64_OPND_IMM9b, /* signed 9-bit immediate (bits 13-19, 27, 36) */
+ IA64_OPND_IMM14, /* signed 14-bit immediate (bits 13-19, 27-32, 36) */
+ IA64_OPND_IMM17, /* signed 17-bit immediate (2*bits 6-12, 24-31, 36) */
+ IA64_OPND_IMMU21, /* unsigned 21-bit immediate (bits 6-25, 36) */
+ IA64_OPND_IMM22, /* signed 22-bit immediate (bits 13-19, 22-36) */
+ IA64_OPND_IMMU24, /* unsigned 24-bit immediate (bits 6-26, 31-32, 36) */
+ IA64_OPND_IMM44, /* signed 44-bit immediate (2^16*bits 6-32, 36) */
+ IA64_OPND_IMMU62, /* unsigned 62-bit immediate */
+ IA64_OPND_IMMU64, /* unsigned 64-bit immediate (lotsa bits...) */
+ IA64_OPND_INC3, /* signed 3-bit (bits 13-15): +/-1, 4, 8, 16 */
+ IA64_OPND_LEN4, /* 4-bit count (bits 27-30 + 1) */
+ IA64_OPND_LEN6, /* 6-bit count (bits 27-32 + 1) */
+ IA64_OPND_MBTYPE4, /* 4-bit mux type (bits 20-23) */
+ IA64_OPND_MHTYPE8, /* 8-bit mux type (bits 20-27) */
+ IA64_OPND_POS6, /* 6-bit count (bits 14-19) */
+ IA64_OPND_TAG13, /* signed 13-bit tag (ip + 16*bits 6-12, 33-34) */
+ IA64_OPND_TAG13b, /* signed 13-bit tag (ip + 16*bits 24-32) */
+ IA64_OPND_TGT25, /* signed 25-bit (ip + 16*bits 6-25, 36) */
+ IA64_OPND_TGT25b, /* signed 25-bit (ip + 16*bits 6-12, 20-32, 36) */
+ IA64_OPND_TGT25c, /* signed 25-bit (ip + 16*bits 13-32, 36) */
+ IA64_OPND_TGT64, /* 64-bit (ip + 16*bits 13-32, 36, 2-40(L)) */
+ IA64_OPND_LDXMOV, /* any symbol, generates R_IA64_LDXMOV. */
+
+ IA64_OPND_COUNT /* # of operand types (MUST BE LAST!) */
+ };
+
+enum ia64_dependency_mode
+{
+ IA64_DV_RAW,
+ IA64_DV_WAW,
+ IA64_DV_WAR,
+};
+
+enum ia64_dependency_semantics
+{
+ IA64_DVS_NONE,
+ IA64_DVS_IMPLIED,
+ IA64_DVS_IMPLIEDF,
+ IA64_DVS_DATA,
+ IA64_DVS_INSTR,
+ IA64_DVS_SPECIFIC,
+ IA64_DVS_STOP,
+ IA64_DVS_OTHER,
+};
+
+enum ia64_resource_specifier
+{
+ IA64_RS_ANY,
+ IA64_RS_AR_K,
+ IA64_RS_AR_UNAT,
+ IA64_RS_AR, /* 8-15, 20, 22-23, 31, 33-35, 37-39, 41-43, 45-47, 67-111 */
+ IA64_RS_ARb, /* 48-63, 112-127 */
+ IA64_RS_BR,
+ IA64_RS_CFM,
+ IA64_RS_CPUID,
+ IA64_RS_CR_IRR,
+ IA64_RS_CR_LRR,
+ IA64_RS_CR, /* 3-7,10-15,18,26-63,75-79,82-127 */
+ IA64_RS_DBR,
+ IA64_RS_FR,
+ IA64_RS_FRb,
+ IA64_RS_GR0,
+ IA64_RS_GR,
+ IA64_RS_IBR,
+ IA64_RS_INSERVICE, /* CR[EOI] or CR[IVR] */
+ IA64_RS_MSR,
+ IA64_RS_PKR,
+ IA64_RS_PMC,
+ IA64_RS_PMD,
+ IA64_RS_PR, /* non-rotating, 1-15 */
+ IA64_RS_PRr, /* rotating, 16-62 */
+ IA64_RS_PR63,
+ IA64_RS_RR,
+
+ IA64_RS_ARX, /* ARs not in RS_AR or RS_ARb */
+ IA64_RS_CRX, /* CRs not in RS_CR */
+ IA64_RS_PSR, /* PSR bits */
+ IA64_RS_RSE, /* implementation-specific RSE resources */
+ IA64_RS_AR_FPSR,
+};
+
+enum ia64_rse_resource
+{
+ IA64_RSE_N_STACKED_PHYS,
+ IA64_RSE_BOF,
+ IA64_RSE_STORE_REG,
+ IA64_RSE_LOAD_REG,
+ IA64_RSE_BSPLOAD,
+ IA64_RSE_RNATBITINDEX,
+ IA64_RSE_CFLE,
+ IA64_RSE_NDIRTY,
+};
+
+/* Information about a given resource dependency */
+struct ia64_dependency
+{
+ /* Name of the resource */
+ const char *name;
+ /* Does this dependency need further specification? */
+ enum ia64_resource_specifier specifier;
+ /* Mode of dependency */
+ enum ia64_dependency_mode mode;
+ /* Dependency semantics */
+ enum ia64_dependency_semantics semantics;
+ /* Register index, if applicable (distinguishes AR, CR, and PSR deps) */
+#define REG_NONE (-1)
+ int regindex;
+ /* Special info on semantics */
+ const char *info;
+};
+
+/* Two arrays of indexes into the ia64_dependency table.
+ chks are dependencies to check for conflicts when an opcode is
+ encountered; regs are dependencies to register (mark as used) when an
+ opcode is used. chks correspond to readers (RAW) or writers (WAW or
+ WAR) of a resource, while regs correspond to writers (RAW or WAW) and
+ readers (WAR) of a resource. */
+struct ia64_opcode_dependency
+{
+ int nchks;
+ const unsigned short *chks;
+ int nregs;
+ const unsigned short *regs;
+};
+
+/* encode/extract the note/index for a dependency */
+#define RDEP(N,X) (((N)<<11)|(X))
+#define NOTE(X) (((X)>>11)&0x1F)
+#define DEP(X) ((X)&0x7FF)
+
+/* A template descriptor describes the execution units that are active
+ for each of the three slots. It also specifies the location of
+ instruction group boundaries that may be present between two slots. */
+struct ia64_templ_desc
+ {
+ int group_boundary; /* 0=no boundary, 1=between slot 0 & 1, etc. */
+ enum ia64_unit exec_unit[3];
+ const char *name;
+ };
+
+/* The opcode table is an array of struct ia64_opcode. */
+
+struct ia64_opcode
+ {
+ /* The opcode name. */
+ const char *name;
+
+ /* The type of the instruction: */
+ enum ia64_insn_type type;
+
+ /* Number of output operands: */
+ int num_outputs;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ ia64_insn opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ ia64_insn mask;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ enum ia64_opnd operands[5];
+
+ /* One bit flags for the opcode. These are primarily used to
+ indicate specific processors and environments support the
+ instructions. The defined values are listed below. */
+ unsigned int flags;
+
+ /* Used by ia64_find_next_opcode (). */
+ short ent_index;
+
+ /* Opcode dependencies. */
+ const struct ia64_opcode_dependency *dependencies;
+ };
+
+/* Values defined for the flags field of a struct ia64_opcode. */
+
+#define IA64_OPCODE_FIRST (1<<0) /* must be first in an insn group */
+#define IA64_OPCODE_X_IN_MLX (1<<1) /* insn is allowed in X slot of MLX */
+#define IA64_OPCODE_LAST (1<<2) /* must be last in an insn group */
+#define IA64_OPCODE_PRIV (1<<3) /* privileged instruct */
+#define IA64_OPCODE_SLOT2 (1<<4) /* insn allowed in slot 2 only */
+#define IA64_OPCODE_NO_PRED (1<<5) /* insn cannot be predicated */
+#define IA64_OPCODE_PSEUDO (1<<6) /* insn is a pseudo-op */
+#define IA64_OPCODE_F2_EQ_F3 (1<<7) /* constraint: F2 == F3 */
+#define IA64_OPCODE_LEN_EQ_64MCNT (1<<8) /* constraint: LEN == 64-CNT */
+#define IA64_OPCODE_MOD_RRBS (1<<9) /* modifies all rrbs in CFM */
+#define IA64_OPCODE_POSTINC (1<<10) /* postincrement MR3 operand */
+
+/* A macro to extract the major opcode from an instruction. */
+#define IA64_OP(i) (((i) >> 37) & 0xf)
+
+enum ia64_operand_class
+ {
+ IA64_OPND_CLASS_CST, /* constant */
+ IA64_OPND_CLASS_REG, /* register */
+ IA64_OPND_CLASS_IND, /* indirect register */
+ IA64_OPND_CLASS_ABS, /* absolute value */
+ IA64_OPND_CLASS_REL, /* IP-relative value */
+ };
+
+/* The operands table is an array of struct ia64_operand. */
+
+struct ia64_operand
+{
+ enum ia64_operand_class class;
+
+ /* Set VALUE as the operand bits for the operand of type SELF in the
+ instruction pointed to by CODE. If an error occurs, *CODE is not
+ modified and the returned string describes the cause of the
+ error. If no error occurs, NULL is returned. */
+ const char *(*insert) (const struct ia64_operand *self, ia64_insn value,
+ ia64_insn *code);
+
+ /* Extract the operand bits for an operand of type SELF from
+ instruction CODE store them in *VALUE. If an error occurs, the
+ cause of the error is described by the string returned. If no
+ error occurs, NULL is returned. */
+ const char *(*extract) (const struct ia64_operand *self, ia64_insn code,
+ ia64_insn *value);
+
+ /* A string whose meaning depends on the operand class. */
+
+ const char *str;
+
+ struct bit_field
+ {
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+ }
+ field[4]; /* no operand has more than this many bit-fields */
+
+ unsigned int flags;
+
+ const char *desc; /* brief description */
+};
+
+/* Values defined for the flags field of a struct ia64_operand. */
+
+/* Disassemble as signed decimal (instead of hex): */
+#define IA64_OPND_FLAG_DECIMAL_SIGNED (1<<0)
+/* Disassemble as unsigned decimal (instead of hex): */
+#define IA64_OPND_FLAG_DECIMAL_UNSIGNED (1<<1)
+
+extern const struct ia64_templ_desc ia64_templ_desc[16];
+
+/* The tables are sorted by major opcode number and are otherwise in
+ the order in which the disassembler should consider instructions. */
+extern struct ia64_opcode ia64_opcodes_a[];
+extern struct ia64_opcode ia64_opcodes_i[];
+extern struct ia64_opcode ia64_opcodes_m[];
+extern struct ia64_opcode ia64_opcodes_b[];
+extern struct ia64_opcode ia64_opcodes_f[];
+extern struct ia64_opcode ia64_opcodes_d[];
+
+
+extern struct ia64_opcode *ia64_find_opcode (const char *name);
+extern struct ia64_opcode *ia64_find_next_opcode (struct ia64_opcode *ent);
+
+extern struct ia64_opcode *ia64_dis_opcode (ia64_insn insn,
+ enum ia64_insn_type type);
+
+extern void ia64_free_opcode (struct ia64_opcode *ent);
+extern const struct ia64_dependency *ia64_find_dependency (int index);
+
+/* To avoid circular library dependencies, this array is implemented
+ in bfd/cpu-ia64-opc.c: */
+extern const struct ia64_operand elf64_ia64_operands[IA64_OPND_COUNT];
+
+#endif /* opcode_ia64_h */
diff --git a/include/opcode/m68hc11.h b/include/opcode/m68hc11.h
new file mode 100644
index 000000000..648c23b56
--- /dev/null
+++ b/include/opcode/m68hc11.h
@@ -0,0 +1,427 @@
+/* m68hc11.h -- Header file for Motorola 68HC11 & 68HC12 opcode table
+ Copyright 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+ Written by Stephane Carrez (stcarrez@nerim.fr)
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _OPCODE_M68HC11_H
+#define _OPCODE_M68HC11_H
+
+/* Flags for the definition of the 68HC11 & 68HC12 CCR. */
+#define M6811_S_BIT 0x80 /* Stop disable */
+#define M6811_X_BIT 0x40 /* X-interrupt mask */
+#define M6811_H_BIT 0x20 /* Half carry flag */
+#define M6811_I_BIT 0x10 /* I-interrupt mask */
+#define M6811_N_BIT 0x08 /* Negative */
+#define M6811_Z_BIT 0x04 /* Zero */
+#define M6811_V_BIT 0x02 /* Overflow */
+#define M6811_C_BIT 0x01 /* Carry */
+
+/* 68HC11 register address offsets (range 0..0x3F or 0..64).
+ The absolute address of the I/O register depends on the setting
+ of the M6811_INIT register. At init time, the I/O registers are
+ mapped at 0x1000. Address of registers is then:
+
+ 0x1000 + M6811_xxx
+*/
+#define M6811_PORTA 0x00 /* Port A register */
+#define M6811__RES1 0x01 /* Unused/Reserved */
+#define M6811_PIOC 0x02 /* Parallel I/O Control register */
+#define M6811_PORTC 0x03 /* Port C register */
+#define M6811_PORTB 0x04 /* Port B register */
+#define M6811_PORTCL 0x05 /* Alternate latched port C */
+#define M6811__RES6 0x06 /* Unused/Reserved */
+#define M6811_DDRC 0x07 /* Data direction register for port C */
+#define M6811_PORTD 0x08 /* Port D register */
+#define M6811_DDRD 0x09 /* Data direction register for port D */
+#define M6811_PORTE 0x0A /* Port E input register */
+#define M6811_CFORC 0x0B /* Compare Force Register */
+#define M6811_OC1M 0x0C /* OC1 Action Mask register */
+#define M6811_OC1D 0x0D /* OC1 Action Data register */
+#define M6811_TCTN 0x0E /* Timer Counter Register */
+#define M6811_TCTN_H 0x0E /* " " " High part */
+#define M6811_TCTN_L 0x0F /* " " " Low part */
+#define M6811_TIC1 0x10 /* Input capture 1 register */
+#define M6811_TIC1_H 0x10 /* " " " High part */
+#define M6811_TIC1_L 0x11 /* " " " Low part */
+#define M6811_TIC2 0x12 /* Input capture 2 register */
+#define M6811_TIC2_H 0x12 /* " " " High part */
+#define M6811_TIC2_L 0x13 /* " " " Low part */
+#define M6811_TIC3 0x14 /* Input capture 3 register */
+#define M6811_TIC3_H 0x14 /* " " " High part */
+#define M6811_TIC3_L 0x15 /* " " " Low part */
+#define M6811_TOC1 0x16 /* Output Compare 1 register */
+#define M6811_TOC1_H 0x16 /* " " " High part */
+#define M6811_TOC1_L 0x17 /* " " " Low part */
+#define M6811_TOC2 0x18 /* Output Compare 2 register */
+#define M6811_TOC2_H 0x18 /* " " " High part */
+#define M6811_TOC2_L 0x19 /* " " " Low part */
+#define M6811_TOC3 0x1A /* Output Compare 3 register */
+#define M6811_TOC3_H 0x1A /* " " " High part */
+#define M6811_TOC3_L 0x1B /* " " " Low part */
+#define M6811_TOC4 0x1C /* Output Compare 4 register */
+#define M6811_TOC4_H 0x1C /* " " " High part */
+#define M6811_TOC4_L 0x1D /* " " " Low part */
+#define M6811_TOC5 0x1E /* Output Compare 5 register */
+#define M6811_TOC5_H 0x1E /* " " " High part */
+#define M6811_TOC5_L 0x1F /* " " " Low part */
+#define M6811_TCTL1 0x20 /* Timer Control register 1 */
+#define M6811_TCTL2 0x21 /* Timer Control register 2 */
+#define M6811_TMSK1 0x22 /* Timer Interrupt Mask Register 1 */
+#define M6811_TFLG1 0x23 /* Timer Interrupt Flag Register 1 */
+#define M6811_TMSK2 0x24 /* Timer Interrupt Mask Register 2 */
+#define M6811_TFLG2 0x25 /* Timer Interrupt Flag Register 2 */
+#define M6811_PACTL 0x26 /* Pulse Accumulator Control Register */
+#define M6811_PACNT 0x27 /* Pulse Accumulator Count Register */
+#define M6811_SPCR 0x28 /* SPI Control register */
+#define M6811_SPSR 0x29 /* SPI Status register */
+#define M6811_SPDR 0x2A /* SPI Data register */
+#define M6811_BAUD 0x2B /* SCI Baud register */
+#define M6811_SCCR1 0x2C /* SCI Control register 1 */
+#define M6811_SCCR2 0x2D /* SCI Control register 2 */
+#define M6811_SCSR 0x2E /* SCI Status register */
+#define M6811_SCDR 0x2F /* SCI Data (Read => RDR, Write => TDR) */
+#define M6811_ADCTL 0x30 /* A/D Control register */
+#define M6811_ADR1 0x31 /* A/D, Analog Result register 1 */
+#define M6811_ADR2 0x32 /* A/D, Analog Result register 2 */
+#define M6811_ADR3 0x33 /* A/D, Analog Result register 3 */
+#define M6811_ADR4 0x34 /* A/D, Analog Result register 4 */
+#define M6811__RES35 0x35
+#define M6811__RES36 0x36
+#define M6811__RES37 0x37
+#define M6811__RES38 0x38
+#define M6811_OPTION 0x39 /* System Configuration Options */
+#define M6811_COPRST 0x3A /* Arm/Reset COP Timer Circuitry */
+#define M6811_PPROG 0x3B /* EEPROM Programming Control Register */
+#define M6811_HPRIO 0x3C /* Highest priority I-Bit int and misc */
+#define M6811_INIT 0x3D /* Ram and I/O mapping register */
+#define M6811_TEST1 0x3E /* Factory test control register */
+#define M6811_CONFIG 0x3F /* COP, ROM and EEPROM enables */
+
+
+/* Flags of the CONFIG register (in EEPROM). */
+#define M6811_NOSEC 0x08 /* Security mode disable */
+#define M6811_NOCOP 0x04 /* COP system disable */
+#define M6811_ROMON 0x02 /* Enable on-chip rom */
+#define M6811_EEON 0x01 /* Enable on-chip eeprom */
+
+/* Flags of the PPROG register. */
+#define M6811_BYTE 0x10 /* Byte mode */
+#define M6811_ROW 0x08 /* Row mode */
+#define M6811_ERASE 0x04 /* Erase mode select (1 = erase, 0 = read) */
+#define M6811_EELAT 0x02 /* EEPROM Latch Control */
+#define M6811_EEPGM 0x01 /* EEPROM Programming Voltage Enable */
+
+/* Flags of the PIOC register. */
+#define M6811_STAF 0x80 /* Strobe A Interrupt Status Flag */
+#define M6811_STAI 0x40 /* Strobe A Interrupt Enable Mask */
+#define M6811_CWOM 0x20 /* Port C Wire OR mode */
+#define M6811_HNDS 0x10 /* Handshake mode */
+#define M6811_OIN 0x08 /* Output or Input handshaking */
+#define M6811_PLS 0x04 /* Pulse/Interlocked Handshake Operation */
+#define M6811_EGA 0x02 /* Active Edge for Strobe A */
+#define M6811_INVB 0x01 /* Invert Strobe B */
+
+/* Flags of the SCCR1 register. */
+#define M6811_R8 0x80 /* Receive Data bit 8 */
+#define M6811_T8 0x40 /* Transmit data bit 8 */
+#define M6811__SCCR1_5 0x20 /* Unused */
+#define M6811_M 0x10 /* SCI Character length */
+#define M6811_WAKE 0x08 /* Wake up method select (0=idle, 1=addr mark) */
+
+/* Flags of the SCCR2 register. */
+#define M6811_TIE 0x80 /* Transmit Interrupt enable */
+#define M6811_TCIE 0x40 /* Transmit Complete Interrupt Enable */
+#define M6811_RIE 0x20 /* Receive Interrupt Enable */
+#define M6811_ILIE 0x10 /* Idle Line Interrupt Enable */
+#define M6811_TE 0x08 /* Transmit Enable */
+#define M6811_RE 0x04 /* Receive Enable */
+#define M6811_RWU 0x02 /* Receiver Wake Up */
+#define M6811_SBK 0x01 /* Send Break */
+
+/* Flags of the SCSR register. */
+#define M6811_TDRE 0x80 /* Transmit Data Register Empty */
+#define M6811_TC 0x40 /* Transmit Complete */
+#define M6811_RDRF 0x20 /* Receive Data Register Full */
+#define M6811_IDLE 0x10 /* Idle Line Detect */
+#define M6811_OR 0x08 /* Overrun Error */
+#define M6811_NF 0x04 /* Noise Flag */
+#define M6811_FE 0x02 /* Framing Error */
+#define M6811__SCSR_0 0x01 /* Unused */
+
+/* Flags of the BAUD register. */
+#define M6811_TCLR 0x80 /* Clear Baud Rate (TEST mode) */
+#define M6811__BAUD_6 0x40 /* Not used */
+#define M6811_SCP1 0x20 /* SCI Baud rate prescaler select */
+#define M6811_SCP0 0x10
+#define M6811_RCKB 0x08 /* Baud Rate Clock Check (TEST mode) */
+#define M6811_SCR2 0x04 /* SCI Baud rate select */
+#define M6811_SCR1 0x02
+#define M6811_SCR0 0x01
+
+#define M6811_BAUD_DIV_1 (0)
+#define M6811_BAUD_DIV_3 (M6811_SCP0)
+#define M6811_BAUD_DIV_4 (M6811_SCP1)
+#define M6811_BAUD_DIV_13 (M6811_SCP1|M6811_SCP0)
+
+/* Flags of the SPCR register. */
+#define M6811_SPIE 0x80 /* Serial Peripheral Interrupt Enable */
+#define M6811_SPE 0x40 /* Serial Peripheral System Enable */
+#define M6811_DWOM 0x20 /* Port D Wire-OR mode option */
+#define M6811_MSTR 0x10 /* Master Mode Select */
+#define M6811_CPOL 0x08 /* Clock Polarity */
+#define M6811_CPHA 0x04 /* Clock Phase */
+#define M6811_SPR1 0x02 /* SPI Clock Rate Select */
+#define M6811_SPR0 0x01
+
+/* Flags of the SPSR register. */
+#define M6811_SPIF 0x80 /* SPI Transfer Complete flag */
+#define M6811_WCOL 0x40 /* Write Collision */
+#define M6811_MODF 0x10 /* Mode Fault */
+
+/* Flags of the ADCTL register. */
+#define M6811_CCF 0x80 /* Conversions Complete Flag */
+#define M6811_SCAN 0x20 /* Continuous Scan Control */
+#define M6811_MULT 0x10 /* Multiple Channel/Single Channel Control */
+#define M6811_CD 0x08 /* Channel Select D */
+#define M6811_CC 0x04 /* C */
+#define M6811_CB 0x02 /* B */
+#define M6811_CA 0x01 /* A */
+
+/* Flags of the CFORC register. */
+#define M6811_FOC1 0x80 /* Force Output Compare 1 */
+#define M6811_FOC2 0x40 /* 2 */
+#define M6811_FOC3 0x20 /* 3 */
+#define M6811_FOC4 0x10 /* 4 */
+#define M6811_FOC5 0x08 /* 5 */
+
+/* Flags of the OC1M register. */
+#define M6811_OC1M7 0x80 /* Output Compare 7 */
+#define M6811_OC1M6 0x40 /* 6 */
+#define M6811_OC1M5 0x20 /* 5 */
+#define M6811_OC1M4 0x10 /* 4 */
+#define M6811_OC1M3 0x08 /* 3 */
+
+/* Flags of the OC1D register. */
+#define M6811_OC1D7 0x80
+#define M6811_OC1D6 0x40
+#define M6811_OC1D5 0x20
+#define M6811_OC1D4 0x10
+#define M6811_OC1D3 0x08
+
+/* Flags of the TCTL1 register. */
+#define M6811_OM2 0x80 /* Output Mode 2 */
+#define M6811_OL2 0x40 /* Output Level 2 */
+#define M6811_OM3 0x20
+#define M6811_OL3 0x10
+#define M6811_OM4 0x08
+#define M6811_OL4 0x04
+#define M6811_OM5 0x02
+#define M6811_OL5 0x01
+
+/* Flags of the TCTL2 register. */
+#define M6811_EDG1B 0x20 /* Input Edge Capture Control 1 */
+#define M6811_EDG1A 0x10
+#define M6811_EDG2B 0x08 /* Input 2 */
+#define M6811_EDG2A 0x04
+#define M6811_EDG3B 0x02 /* Input 3 */
+#define M6811_EDG3A 0x01
+
+/* Flags of the TMSK1 register. */
+#define M6811_OC1I 0x80 /* Output Compare 1 Interrupt */
+#define M6811_OC2I 0x40 /* 2 */
+#define M6811_OC3I 0x20 /* 3 */
+#define M6811_OC4I 0x10 /* 4 */
+#define M6811_OC5I 0x08 /* 5 */
+#define M6811_IC1I 0x04 /* Input Capture 1 Interrupt */
+#define M6811_IC2I 0x02 /* 2 */
+#define M6811_IC3I 0x01 /* 3 */
+
+/* Flags of the TFLG1 register. */
+#define M6811_OC1F 0x80 /* Output Compare 1 Flag */
+#define M6811_OC2F 0x40 /* 2 */
+#define M6811_OC3F 0x20 /* 3 */
+#define M6811_OC4F 0x10 /* 4 */
+#define M6811_OC5F 0x08 /* 5 */
+#define M6811_IC1F 0x04 /* Input Capture 1 Flag */
+#define M6811_IC2F 0x02 /* 2 */
+#define M6811_IC3F 0x01 /* 3 */
+
+/* Flags of Timer Interrupt Mask Register 2 (TMSK2). */
+#define M6811_TOI 0x80 /* Timer Overflow Interrupt Enable */
+#define M6811_RTII 0x40 /* RTI Interrupt Enable */
+#define M6811_PAOVI 0x20 /* Pulse Accumulator Overflow Interrupt En. */
+#define M6811_PAII 0x10 /* Pulse Accumulator Interrupt Enable */
+#define M6811_PR1 0x02 /* Timer prescaler */
+#define M6811_PR0 0x01 /* Timer prescaler */
+#define M6811_TPR_1 0x00 /* " " prescale div 1 */
+#define M6811_TPR_4 0x01 /* " " prescale div 4 */
+#define M6811_TPR_8 0x02 /* " " prescale div 8 */
+#define M6811_TPR_16 0x03 /* " " prescale div 16 */
+
+/* Flags of Timer Interrupt Flag Register 2 (M6811_TFLG2). */
+#define M6811_TOF 0x80 /* Timer overflow bit */
+#define M6811_RTIF 0x40 /* Read time interrupt flag */
+#define M6811_PAOVF 0x20 /* Pulse accumulator overflow Interrupt flag */
+#define M6811_PAIF 0x10 /* Pulse accumulator Input Edge " " " */
+
+/* Flags of Pulse Accumulator Control Register (PACTL). */
+#define M6811_DDRA7 0x80 /* Data direction for port A bit 7 */
+#define M6811_PAEN 0x40 /* Pulse accumulator system enable */
+#define M6811_PAMOD 0x20 /* Pulse accumulator mode */
+#define M6811_PEDGE 0x10 /* Pulse accumulator edge control */
+#define M6811_RTR1 0x02 /* RTI Interrupt rates select */
+#define M6811_RTR0 0x01 /* " " " " */
+
+/* Flags of the Options register. */
+#define M6811_ADPU 0x80 /* A/D Powerup */
+#define M6811_CSEL 0x40 /* A/D/EE Charge pump clock source select */
+#define M6811_IRQE 0x20 /* IRQ Edge/Level sensitive */
+#define M6811_DLY 0x10 /* Stop exit turn on delay */
+#define M6811_CME 0x08 /* Clock Monitor enable */
+#define M6811_CR1 0x02 /* COP timer rate select */
+#define M6811_CR0 0x01 /* COP timer rate select */
+
+/* Flags of the HPRIO register. */
+#define M6811_RBOOT 0x80 /* Read Bootstrap ROM */
+#define M6811_SMOD 0x40 /* Special Mode */
+#define M6811_MDA 0x20 /* Mode Select A */
+#define M6811_IRV 0x10 /* Internal Read Visibility */
+#define M6811_PSEL3 0x08 /* Priority Select */
+#define M6811_PSEL2 0x04
+#define M6811_PSEL1 0x02
+#define M6811_PSEL0 0x01
+
+/* Some insns used by gas to turn relative branches into absolute ones. */
+#define M6811_BRA 0x20
+#define M6811_JMP 0x7e
+#define M6811_BSR 0x8d
+#define M6811_JSR 0xbd
+#define M6812_JMP 0x06
+#define M6812_BSR 0x07
+#define M6812_JSR 0x16
+
+/* Instruction code pages. Code page 1 is the default. */
+/*#define M6811_OPCODE_PAGE1 0x00*/
+#define M6811_OPCODE_PAGE2 0x18
+#define M6811_OPCODE_PAGE3 0x1A
+#define M6811_OPCODE_PAGE4 0xCD
+
+
+/* 68HC11 operands formats as stored in the m6811_opcode table. These
+ flags do not correspond to anything in the 68HC11 or 68HC12.
+ They are only used by GAS to recognize operands. */
+#define M6811_OP_NONE 0 /* No operand */
+#define M6811_OP_DIRECT 0x0001 /* Page 0 addressing: *<val-8bits> */
+#define M6811_OP_IMM8 0x0002 /* 8 bits immediat: #<val-8bits> */
+#define M6811_OP_IMM16 0x0004 /* 16 bits immediat: #<val-16bits> */
+#define M6811_OP_IND16 0x0008 /* Indirect abs: <val-16> */
+#define M6812_OP_IND16_P2 0x0010 /* Second parameter indirect abs. */
+#define M6812_OP_REG 0x0020 /* Register operand 1 */
+#define M6812_OP_REG_2 0x0040 /* Register operand 2 */
+
+#define M6811_OP_IX 0x0080 /* Indirect IX: <val-8>,x */
+#define M6811_OP_IY 0x0100 /* Indirect IY: <val-8>,y */
+#define M6812_OP_IDX 0x0200 /* Indirect: N,r N,[+-]r[+-] N:5-bits */
+#define M6812_OP_IDX_1 0x0400 /* N,r N:9-bits */
+#define M6812_OP_IDX_2 0x0800 /* N,r N:16-bits */
+#define M6812_OP_D_IDX 0x1000 /* Indirect indexed: [D,r] */
+#define M6812_OP_D_IDX_2 0x2000 /* [N,r] N:16-bits */
+#define M6812_OP_PAGE 0x4000 /* Page number */
+#define M6811_OP_MASK 0x07FFF
+#define M6811_OP_BRANCH 0x00008000 /* Branch, jsr, call */
+#define M6811_OP_BITMASK 0x00010000 /* Bitmask: #<val-8> */
+#define M6811_OP_JUMP_REL 0x00020000 /* Pc-Relative: <val-8> */
+#define M6812_OP_JUMP_REL16 0x00040000 /* Pc-relative: <val-16> */
+#define M6811_OP_PAGE1 0x0000
+#define M6811_OP_PAGE2 0x00080000 /* Need a page2 opcode before */
+#define M6811_OP_PAGE3 0x00100000 /* Need a page3 opcode before */
+#define M6811_OP_PAGE4 0x00200000 /* Need a page4 opcode before */
+#define M6811_MAX_OPERANDS 3 /* Max operands: brset <dst> <mask> <b> */
+
+#define M6812_ACC_OFFSET 0x00400000 /* A,r B,r D,r */
+#define M6812_ACC_IND 0x00800000 /* [D,r] */
+#define M6812_PRE_INC 0x01000000 /* n,+r n = -8..8 */
+#define M6812_PRE_DEC 0x02000000 /* n,-r */
+#define M6812_POST_INC 0x04000000 /* n,r+ */
+#define M6812_POST_DEC 0x08000000 /* n,r- */
+#define M6812_INDEXED_IND 0x10000000 /* [n,r] n = 16-bits */
+#define M6812_INDEXED 0x20000000 /* n,r n = 5, 9 or 16-bits */
+#define M6812_OP_IDX_P2 0x40000000
+
+/* Markers to identify some instructions. */
+#define M6812_OP_EXG_MARKER 0x01000000 /* exg r1,r2 */
+#define M6812_OP_TFR_MARKER 0x02000000 /* tfr r1,r2 */
+#define M6812_OP_SEX_MARKER 0x04000000 /* sex r1,r2 */
+
+#define M6812_OP_EQ_MARKER 0x80000000 /* dbeq/ibeq/tbeq */
+#define M6812_OP_DBCC_MARKER 0x04000000 /* dbeq/dbne */
+#define M6812_OP_IBCC_MARKER 0x02000000 /* ibeq/ibne */
+#define M6812_OP_TBCC_MARKER 0x01000000
+
+#define M6812_OP_TRAP_ID 0x80000000 /* trap #N */
+
+#define M6811_OP_HIGH_ADDR 0x01000000 /* Used internally by gas. */
+#define M6811_OP_LOW_ADDR 0x02000000
+
+#define M68HC12_BANK_VIRT 0x010000
+#define M68HC12_BANK_MASK 0x00003fff
+#define M68HC12_BANK_BASE 0x00008000
+#define M68HC12_BANK_SHIFT 14
+#define M68HC12_BANK_PAGE_MASK 0x0ff
+
+
+/* CPU identification. */
+#define cpu6811 0x01
+#define cpu6812 0x02
+#define cpu6812s 0x04
+
+/* The opcode table is an array of struct m68hc11_opcode. */
+struct m68hc11_opcode {
+ const char* name; /* Op-code name */
+ long format;
+ unsigned char size;
+ unsigned char opcode;
+ unsigned char cycles_low;
+ unsigned char cycles_high;
+ unsigned char set_flags_mask;
+ unsigned char clr_flags_mask;
+ unsigned char chg_flags_mask;
+ unsigned char arch;
+};
+
+/* Alias definition for 68HC12. */
+struct m68hc12_opcode_alias
+{
+ const char* name;
+ const char* translation;
+ unsigned char size;
+ unsigned char code1;
+ unsigned char code2;
+};
+
+/* The opcode table. The table contains all the opcodes (all pages).
+ You can't rely on the order. */
+extern const struct m68hc11_opcode m68hc11_opcodes[];
+extern const int m68hc11_num_opcodes;
+
+/* Alias table for 68HC12. It translates some 68HC11 insn which are not
+ implemented in 68HC12 but have equivalent translations. */
+extern const struct m68hc12_opcode_alias m68hc12_alias[];
+extern const int m68hc12_num_alias;
+
+#endif /* _OPCODE_M68HC11_H */
diff --git a/include/opcode/m68k.h b/include/opcode/m68k.h
new file mode 100644
index 000000000..014495b97
--- /dev/null
+++ b/include/opcode/m68k.h
@@ -0,0 +1,381 @@
+/* Opcode table header for m680[01234]0/m6888[12]/m68851.
+ Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2001,
+ 2003, 2004 Free Software Foundation, Inc.
+
+ This file is part of GDB, GAS, and the GNU binutils.
+
+ GDB, GAS, and the GNU binutils are free software; you can redistribute
+ them and/or modify them under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either version
+ 1, or (at your option) any later version.
+
+ GDB, GAS, and the GNU binutils are distributed in the hope that they
+ will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+ the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this file; see the file COPYING. If not, write to the Free
+ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+/* These are used as bit flags for the arch field in the m68k_opcode
+ structure. */
+#define _m68k_undef 0
+#define m68000 0x001
+#define m68008 m68000 /* Synonym for -m68000. otherwise unused. */
+#define m68010 0x002
+#define m68020 0x004
+#define m68030 0x008
+#define m68ec030 m68030 /* Similar enough to -m68030 to ignore differences;
+ gas will deal with the few differences. */
+#define m68040 0x010
+/* There is no 68050. */
+#define m68060 0x020
+#define m68881 0x040
+#define m68882 m68881 /* Synonym for -m68881. otherwise unused. */
+#define m68851 0x080
+#define cpu32 0x100 /* e.g., 68332 */
+
+#define mcfmac 0x200 /* ColdFire MAC. */
+#define mcfemac 0x400 /* ColdFire EMAC. */
+#define cfloat 0x800 /* ColdFire FPU. */
+#define mcfhwdiv 0x1000 /* ColdFire hardware divide. */
+
+#define mcfisa_a 0x2000 /* ColdFire ISA_A. */
+#define mcfisa_aa 0x4000 /* ColdFire ISA_A+. */
+#define mcfisa_b 0x8000 /* ColdFire ISA_B. */
+#define mcfusp 0x10000 /* ColdFire USP instructions. */
+
+#define mcf5200 0x20000
+#define mcf5206e 0x40000
+#define mcf521x 0x80000
+#define mcf5249 0x100000
+#define mcf528x 0x200000
+#define mcf5307 0x400000
+#define mcf5407 0x800000
+#define mcf5470 0x1000000
+#define mcf5480 0x2000000
+
+ /* Handy aliases. */
+#define m68040up (m68040 | m68060)
+#define m68030up (m68030 | m68040up)
+#define m68020up (m68020 | m68030up)
+#define m68010up (m68010 | cpu32 | m68020up)
+#define m68000up (m68000 | m68010up)
+
+#define mfloat (m68881 | m68882 | m68040 | m68060)
+#define mmmu (m68851 | m68030 | m68040 | m68060)
+
+/* The structure used to hold information for an opcode. */
+
+struct m68k_opcode
+{
+ /* The opcode name. */
+ const char *name;
+ /* The pseudo-size of the instruction(in bytes). Used to determine
+ number of bytes necessary to disassemble the instruction. */
+ unsigned int size;
+ /* The opcode itself. */
+ unsigned long opcode;
+ /* The mask used by the disassembler. */
+ unsigned long match;
+ /* The arguments. */
+ const char *args;
+ /* The architectures which support this opcode. */
+ unsigned int arch;
+};
+
+/* The structure used to hold information for an opcode alias. */
+
+struct m68k_opcode_alias
+{
+ /* The alias name. */
+ const char *alias;
+ /* The instruction for which this is an alias. */
+ const char *primary;
+};
+
+/* We store four bytes of opcode for all opcodes because that is the
+ most any of them need. The actual length of an instruction is
+ always at least 2 bytes, and is as much longer as necessary to hold
+ the operands it has.
+
+ The match field is a mask saying which bits must match particular
+ opcode in order for an instruction to be an instance of that
+ opcode.
+
+ The args field is a string containing two characters for each
+ operand of the instruction. The first specifies the kind of
+ operand; the second, the place it is stored. */
+
+/* Kinds of operands:
+ Characters used: AaBbCcDdEeFfGgHIiJkLlMmnOopQqRrSsTtU VvWwXxYyZz01234|*~%;@!&$?/<>#^+-
+
+ D data register only. Stored as 3 bits.
+ A address register only. Stored as 3 bits.
+ a address register indirect only. Stored as 3 bits.
+ R either kind of register. Stored as 4 bits.
+ r either kind of register indirect only. Stored as 4 bits.
+ At the moment, used only for cas2 instruction.
+ F floating point coprocessor register only. Stored as 3 bits.
+ O an offset (or width): immediate data 0-31 or data register.
+ Stored as 6 bits in special format for BF... insns.
+ + autoincrement only. Stored as 3 bits (number of the address register).
+ - autodecrement only. Stored as 3 bits (number of the address register).
+ Q quick immediate data. Stored as 3 bits.
+ This matches an immediate operand only when value is in range 1 .. 8.
+ M moveq immediate data. Stored as 8 bits.
+ This matches an immediate operand only when value is in range -128..127
+ T trap vector immediate data. Stored as 4 bits.
+
+ k K-factor for fmove.p instruction. Stored as a 7-bit constant or
+ a three bit register offset, depending on the field type.
+
+ # immediate data. Stored in special places (b, w or l)
+ which say how many bits to store.
+ ^ immediate data for floating point instructions. Special places
+ are offset by 2 bytes from '#'...
+ B pc-relative address, converted to an offset
+ that is treated as immediate data.
+ d displacement and register. Stores the register as 3 bits
+ and stores the displacement in the entire second word.
+
+ C the CCR. No need to store it; this is just for filtering validity.
+ S the SR. No need to store, just as with CCR.
+ U the USP. No need to store, just as with CCR.
+ E the MAC ACC. No need to store, just as with CCR.
+ e the EMAC ACC[0123].
+ G the MAC/EMAC MACSR. No need to store, just as with CCR.
+ g the EMAC ACCEXT{01,23}.
+ H the MASK. No need to store, just as with CCR.
+ i the MAC/EMAC scale factor.
+
+ I Coprocessor ID. Not printed if 1. The Coprocessor ID is always
+ extracted from the 'd' field of word one, which means that an extended
+ coprocessor opcode can be skipped using the 'i' place, if needed.
+
+ s System Control register for the floating point coprocessor.
+
+ J Misc register for movec instruction, stored in 'j' format.
+ Possible values:
+ 0x000 SFC Source Function Code reg [60, 40, 30, 20, 10]
+ 0x001 DFC Data Function Code reg [60, 40, 30, 20, 10]
+ 0x002 CACR Cache Control Register [60, 40, 30, 20, mcf]
+ 0x003 TC MMU Translation Control [60, 40]
+ 0x004 ITT0 Instruction Transparent
+ Translation reg 0 [60, 40]
+ 0x005 ITT1 Instruction Transparent
+ Translation reg 1 [60, 40]
+ 0x006 DTT0 Data Transparent
+ Translation reg 0 [60, 40]
+ 0x007 DTT1 Data Transparent
+ Translation reg 1 [60, 40]
+ 0x008 BUSCR Bus Control Register [60]
+ 0x800 USP User Stack Pointer [60, 40, 30, 20, 10]
+ 0x801 VBR Vector Base reg [60, 40, 30, 20, 10, mcf]
+ 0x802 CAAR Cache Address Register [ 30, 20]
+ 0x803 MSP Master Stack Pointer [ 40, 30, 20]
+ 0x804 ISP Interrupt Stack Pointer [ 40, 30, 20]
+ 0x805 MMUSR MMU Status reg [ 40]
+ 0x806 URP User Root Pointer [60, 40]
+ 0x807 SRP Supervisor Root Pointer [60, 40]
+ 0x808 PCR Processor Configuration reg [60]
+ 0xC00 ROMBAR ROM Base Address Register [520X]
+ 0xC04 RAMBAR0 RAM Base Address Register 0 [520X]
+ 0xC05 RAMBAR1 RAM Base Address Register 0 [520X]
+ 0xC0F MBAR0 RAM Base Address Register 0 [520X]
+ 0xC04 FLASHBAR FLASH Base Address Register [mcf528x]
+ 0xC05 RAMBAR Static RAM Base Address Register [mcf528x]
+
+ L Register list of the type d0-d7/a0-a7 etc.
+ (New! Improved! Can also hold fp0-fp7, as well!)
+ The assembler tries to see if the registers match the insn by
+ looking at where the insn wants them stored.
+
+ l Register list like L, but with all the bits reversed.
+ Used for going the other way. . .
+
+ c cache identifier which may be "nc" for no cache, "ic"
+ for instruction cache, "dc" for data cache, or "bc"
+ for both caches. Used in cinv and cpush. Always
+ stored in position "d".
+
+ u Any register, with ``upper'' or ``lower'' specification. Used
+ in the mac instructions with size word.
+
+ The remainder are all stored as 6 bits using an address mode and a
+ register number; they differ in which addressing modes they match.
+
+ * all (modes 0-6,7.0-4)
+ ~ alterable memory (modes 2-6,7.0,7.1)
+ (not 0,1,7.2-4)
+ % alterable (modes 0-6,7.0,7.1)
+ (not 7.2-4)
+ ; data (modes 0,2-6,7.0-4)
+ (not 1)
+ @ data, but not immediate (modes 0,2-6,7.0-3)
+ (not 1,7.4)
+ ! control (modes 2,5,6,7.0-3)
+ (not 0,1,3,4,7.4)
+ & alterable control (modes 2,5,6,7.0,7.1)
+ (not 0,1,3,4,7.2-4)
+ $ alterable data (modes 0,2-6,7.0,7.1)
+ (not 1,7.2-4)
+ ? alterable control, or data register (modes 0,2,5,6,7.0,7.1)
+ (not 1,3,4,7.2-4)
+ / control, or data register (modes 0,2,5,6,7.0-3)
+ (not 1,3,4,7.4)
+ > *save operands (modes 2,4,5,6,7.0,7.1)
+ (not 0,1,3,7.2-4)
+ < *restore operands (modes 2,3,5,6,7.0-3)
+ (not 0,1,4,7.4)
+
+ coldfire move operands:
+ m (modes 0-4)
+ n (modes 5,7.2)
+ o (modes 6,7.0,7.1,7.3,7.4)
+ p (modes 0-5)
+
+ coldfire bset/bclr/btst/mulsl/mulul operands:
+ q (modes 0,2-5)
+ v (modes 0,2-5,7.0,7.1)
+ b (modes 0,2-5,7.2)
+ w (modes 2-5,7.2)
+ y (modes 2,5)
+ z (modes 2,5,7.2)
+ x mov3q immediate operand.
+ 4 (modes 2,3,4,5)
+ */
+
+/* For the 68851: */
+/* I didn't use much imagination in choosing the
+ following codes, so many of them aren't very
+ mnemonic. -rab
+
+ 0 32 bit pmmu register
+ Possible values:
+ 000 TC Translation Control Register (68030, 68851)
+
+ 1 16 bit pmmu register
+ 111 AC Access Control (68851)
+
+ 2 8 bit pmmu register
+ 100 CAL Current Access Level (68851)
+ 101 VAL Validate Access Level (68851)
+ 110 SCC Stack Change Control (68851)
+
+ 3 68030-only pmmu registers (32 bit)
+ 010 TT0 Transparent Translation reg 0
+ (aka Access Control reg 0 -- AC0 -- on 68ec030)
+ 011 TT1 Transparent Translation reg 1
+ (aka Access Control reg 1 -- AC1 -- on 68ec030)
+
+ W wide pmmu registers
+ Possible values:
+ 001 DRP Dma Root Pointer (68851)
+ 010 SRP Supervisor Root Pointer (68030, 68851)
+ 011 CRP Cpu Root Pointer (68030, 68851)
+
+ f function code register (68030, 68851)
+ 0 SFC
+ 1 DFC
+
+ V VAL register only (68851)
+
+ X BADx, BACx (16 bit)
+ 100 BAD Breakpoint Acknowledge Data (68851)
+ 101 BAC Breakpoint Acknowledge Control (68851)
+
+ Y PSR (68851) (MMUSR on 68030) (ACUSR on 68ec030)
+ Z PCSR (68851)
+
+ | memory (modes 2-6, 7.*)
+
+ t address test level (68030 only)
+ Stored as 3 bits, range 0-7.
+ Also used for breakpoint instruction now.
+
+*/
+
+/* Places to put an operand, for non-general operands:
+ Characters used: BbCcDdFfGgHhIijkLlMmNnostWw123456789/
+
+ s source, low bits of first word.
+ d dest, shifted 9 in first word
+ 1 second word, shifted 12
+ 2 second word, shifted 6
+ 3 second word, shifted 0
+ 4 third word, shifted 12
+ 5 third word, shifted 6
+ 6 third word, shifted 0
+ 7 second word, shifted 7
+ 8 second word, shifted 10
+ 9 second word, shifted 5
+ D store in both place 1 and place 3; for divul and divsl.
+ B first word, low byte, for branch displacements
+ W second word (entire), for branch displacements
+ L second and third words (entire), for branch displacements
+ (also overloaded for move16)
+ b second word, low byte
+ w second word (entire) [variable word/long branch offset for dbra]
+ W second word (entire) (must be signed 16 bit value)
+ l second and third word (entire)
+ g variable branch offset for bra and similar instructions.
+ The place to store depends on the magnitude of offset.
+ t store in both place 7 and place 8; for floating point operations
+ c branch offset for cpBcc operations.
+ The place to store is word two if bit six of word one is zero,
+ and words two and three if bit six of word one is one.
+ i Increment by two, to skip over coprocessor extended operands. Only
+ works with the 'I' format.
+ k Dynamic K-factor field. Bits 6-4 of word 2, used as a register number.
+ Also used for dynamic fmovem instruction.
+ C floating point coprocessor constant - 7 bits. Also used for static
+ K-factors...
+ j Movec register #, stored in 12 low bits of second word.
+ m For M[S]ACx; 4 bits split with MSB shifted 6 bits in first word
+ and remaining 3 bits of register shifted 9 bits in first word.
+ Indicate upper/lower in 1 bit shifted 7 bits in second word.
+ Use with `R' or `u' format.
+ n `m' withouth upper/lower indication. (For M[S]ACx; 4 bits split
+ with MSB shifted 6 bits in first word and remaining 3 bits of
+ register shifted 9 bits in first word. No upper/lower
+ indication is done.) Use with `R' or `u' format.
+ o For M[S]ACw; 4 bits shifted 12 in second word (like `1').
+ Indicate upper/lower in 1 bit shifted 7 bits in second word.
+ Use with `R' or `u' format.
+ M For M[S]ACw; 4 bits in low bits of first word. Indicate
+ upper/lower in 1 bit shifted 6 bits in second word. Use with
+ `R' or `u' format.
+ N For M[S]ACw; 4 bits in low bits of second word. Indicate
+ upper/lower in 1 bit shifted 6 bits in second word. Use with
+ `R' or `u' format.
+ h shift indicator (scale factor), 1 bit shifted 10 in second word
+
+ Places to put operand, for general operands:
+ d destination, shifted 6 bits in first word
+ b source, at low bit of first word, and immediate uses one byte
+ w source, at low bit of first word, and immediate uses two bytes
+ l source, at low bit of first word, and immediate uses four bytes
+ s source, at low bit of first word.
+ Used sometimes in contexts where immediate is not allowed anyway.
+ f single precision float, low bit of 1st word, immediate uses 4 bytes
+ F double precision float, low bit of 1st word, immediate uses 8 bytes
+ x extended precision float, low bit of 1st word, immediate uses 12 bytes
+ p packed float, low bit of 1st word, immediate uses 12 bytes
+ G EMAC accumulator, load (bit 4 2nd word, !bit8 first word)
+ H EMAC accumulator, non load (bit 4 2nd word, bit 8 first word)
+ F EMAC ACCx
+ f EMAC ACCy
+ I MAC/EMAC scale factor
+ / Like 's', but set 2nd word, bit 5 if trailing_ampersand set
+ ] first word, bit 10
+*/
+
+extern const struct m68k_opcode m68k_opcodes[];
+extern const struct m68k_opcode_alias m68k_opcode_aliases[];
+
+extern const int m68k_numopcodes, m68k_numaliases;
+
+/* end of m68k-opcode.h */
diff --git a/include/opcode/m88k.h b/include/opcode/m88k.h
new file mode 100644
index 000000000..6a163bbe9
--- /dev/null
+++ b/include/opcode/m88k.h
@@ -0,0 +1,453 @@
+/* Table of opcodes for the Motorola M88k family.
+ Copyright 1989, 1990, 1991, 1993, 2001 Free Software Foundation, Inc.
+
+This file is part of GDB and GAS.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/*
+ * Disassembler Instruction Table
+ *
+ * The first field of the table is the opcode field. If an opcode
+ * is specified which has any non-opcode bits on, a system error
+ * will occur when the system attempts the install it into the
+ * instruction table. The second parameter is a pointer to the
+ * instruction mnemonic. Each operand is specified by offset, width,
+ * and type. The offset is the bit number of the least significant
+ * bit of the operand with bit 0 being the least significant bit of
+ * the instruction. The width is the number of bits used to specify
+ * the operand. The type specifies the output format to be used for
+ * the operand. The valid formats are: register, register indirect,
+ * hex constant, and bit field specification. The last field is a
+ * pointer to the next instruction in the linked list. These pointers
+ * are initialized by init_disasm().
+ *
+ * Revision History
+ *
+ * Revision 1.0 11/08/85 Creation date
+ * 1.1 02/05/86 Updated instruction mnemonic table MD
+ * 1.2 06/16/86 Updated SIM_FLAGS for floating point
+ * 1.3 09/20/86 Updated for new encoding
+ * 05/11/89 R. Trawick adapted from Motorola disassembler
+ */
+
+#include <stdio.h>
+
+/* Define the number of bits in the primary opcode field of the instruction,
+ the destination field, the source 1 and source 2 fields. */
+
+/* Size of opcode field. */
+#define OP 8
+
+/* Size of destination. */
+#define DEST 6
+
+/* Size of source1. */
+#define SOURCE1 6
+
+/* Size of source2. */
+#define SOURCE2 6
+
+/* Number of registers. */
+#define REGs 32
+
+/* Type definitions. */
+
+typedef unsigned int UINT;
+#define WORD long
+#define FLAG unsigned
+#define STATE short
+
+/* The next four equates define the priorities that the various classes
+ * of instructions have regarding writing results back into registers and
+ * signalling exceptions. */
+
+/* PMEM is also defined in <sys/param.h> on Delta 88's. Sigh! */
+#undef PMEM
+
+/* Integer priority. */
+#define PINT 0
+
+/* Floating point priority. */
+#define PFLT 1
+
+/* Memory priority. */
+#define PMEM 2
+
+/* Not applicable, instruction doesn't write to regs. */
+#define NA 3
+
+/* Highest of these priorities. */
+#define HIPRI 3
+
+/* The instruction registers are an artificial mechanism to speed up
+ * simulator execution. In the real processor, an instruction register
+ * is 32 bits wide. In the simulator, the 32 bit instruction is kept in
+ * a structure field called rawop, and the instruction is partially decoded,
+ * and split into various fields and flags which make up the other fields
+ * of the structure.
+ * The partial decode is done when the instructions are initially loaded
+ * into simulator memory. The simulator code memory is not an array of
+ * 32 bit words, but is an array of instruction register structures.
+ * Yes this wastes memory, but it executes much quicker.
+ */
+
+struct IR_FIELDS
+{
+ unsigned op:OP,
+ dest: DEST,
+ src1: SOURCE1,
+ src2: SOURCE2;
+ int ltncy,
+ extime,
+ /* Writeback priority. */
+ wb_pri;
+ /* Immediate size. */
+ unsigned imm_flags:2,
+ /* Register source 1 used. */
+ rs1_used:1,
+ /* Register source 2 used. */
+ rs2_used:1,
+ /* Register source/dest. used. */
+ rsd_used:1,
+ /* Complement. */
+ c_flag:1,
+ /* Upper half word. */
+ u_flag:1,
+ /* Execute next. */
+ n_flag:1,
+ /* Uses writeback slot. */
+ wb_flag:1,
+ /* Dest size. */
+ dest_64:1,
+ /* Source 1 size. */
+ s1_64:1,
+ /* Source 2 size. */
+ s2_64:1,
+ scale_flag:1,
+ /* Scaled register. */
+ brk_flg:1;
+};
+
+struct mem_segs
+{
+ /* Pointer (returned by calloc) to segment. */
+ struct mem_wrd *seg;
+
+ /* Base load address from file headers. */
+ unsigned long baseaddr;
+
+ /* Ending address of segment. */
+ unsigned long endaddr;
+
+ /* Segment control flags (none defined). */
+ int flags;
+};
+
+#define MAXSEGS (10) /* max number of segment allowed */
+#define MEMSEGSIZE (sizeof(struct mem_segs))/* size of mem_segs structure */
+
+#if 0
+#define BRK_RD (0x01) /* break on memory read */
+#define BRK_WR (0x02) /* break on memory write */
+#define BRK_EXEC (0x04) /* break on execution */
+#define BRK_CNT (0x08) /* break on terminal count */
+#endif
+
+struct mem_wrd
+{
+ /* Simulator instruction break down. */
+ struct IR_FIELDS opcode;
+ union {
+ /* Memory element break down. */
+ unsigned long l;
+ unsigned short s[2];
+ unsigned char c[4];
+ } mem;
+};
+
+/* Size of each 32 bit memory model. */
+#define MEMWRDSIZE (sizeof (struct mem_wrd))
+
+extern struct mem_segs memory[];
+extern struct PROCESSOR m78000;
+
+struct PROCESSOR
+{
+ unsigned WORD
+ /* Execute instruction pointer. */
+ ip,
+ /* Vector base register. */
+ vbr,
+ /* Processor status register. */
+ psr;
+
+ /* Source 1. */
+ WORD S1bus,
+ /* Source 2. */
+ S2bus,
+ /* Destination. */
+ Dbus,
+ /* Data address bus. */
+ DAbus,
+ ALU,
+ /* Data registers. */
+ Regs[REGs],
+ /* Max clocks before reg is available. */
+ time_left[REGs],
+ /* Writeback priority of reg. */
+ wb_pri[REGs],
+ /* Integer unit control regs. */
+ SFU0_regs[REGs],
+ /* Floating point control regs. */
+ SFU1_regs[REGs],
+ Scoreboard[REGs],
+ Vbr;
+ unsigned WORD scoreboard,
+ Psw,
+ Tpsw;
+ /* Waiting for a jump instruction. */
+ FLAG jump_pending:1;
+};
+
+/* Size of immediate field. */
+
+#define i26bit 1
+#define i16bit 2
+#define i10bit 3
+
+/* Definitions for fields in psr. */
+
+#define mode 31
+#define rbo 30
+#define ser 29
+#define carry 28
+#define sf7m 11
+#define sf6m 10
+#define sf5m 9
+#define sf4m 8
+#define sf3m 7
+#define sf2m 6
+#define sf1m 5
+#define mam 4
+#define inm 3
+#define exm 2
+#define trm 1
+#define ovfm 0
+
+/* The 1 clock operations. */
+
+#define ADDU 1
+#define ADDC 2
+#define ADDUC 3
+#define ADD 4
+
+#define SUBU ADD+1
+#define SUBB ADD+2
+#define SUBUB ADD+3
+#define SUB ADD+4
+
+#define AND_ ADD+5
+#define OR ADD+6
+#define XOR ADD+7
+#define CMP ADD+8
+
+/* Loads. */
+
+#define LDAB CMP+1
+#define LDAH CMP+2
+#define LDA CMP+3
+#define LDAD CMP+4
+
+#define LDB LDAD+1
+#define LDH LDAD+2
+#define LD LDAD+3
+#define LDD LDAD+4
+#define LDBU LDAD+5
+#define LDHU LDAD+6
+
+/* Stores. */
+
+#define STB LDHU+1
+#define STH LDHU+2
+#define ST LDHU+3
+#define STD LDHU+4
+
+/* Exchange. */
+
+#define XMEMBU LDHU+5
+#define XMEM LDHU+6
+
+/* Branches. */
+
+#define JSR STD+1
+#define BSR STD+2
+#define BR STD+3
+#define JMP STD+4
+#define BB1 STD+5
+#define BB0 STD+6
+#define RTN STD+7
+#define BCND STD+8
+
+/* Traps. */
+
+#define TB1 BCND+1
+#define TB0 BCND+2
+#define TCND BCND+3
+#define RTE BCND+4
+#define TBND BCND+5
+
+/* Misc. */
+
+#define MUL TBND + 1
+#define DIV MUL +2
+#define DIVU MUL +3
+#define MASK MUL +4
+#define FF0 MUL +5
+#define FF1 MUL +6
+#define CLR MUL +7
+#define SET MUL +8
+#define EXT MUL +9
+#define EXTU MUL +10
+#define MAK MUL +11
+#define ROT MUL +12
+
+/* Control register manipulations. */
+
+#define LDCR ROT +1
+#define STCR ROT +2
+#define XCR ROT +3
+
+#define FLDCR ROT +4
+#define FSTCR ROT +5
+#define FXCR ROT +6
+
+#define NOP XCR +1
+
+/* Floating point instructions. */
+
+#define FADD NOP +1
+#define FSUB NOP +2
+#define FMUL NOP +3
+#define FDIV NOP +4
+#define FSQRT NOP +5
+#define FCMP NOP +6
+#define FIP NOP +7
+#define FLT NOP +8
+#define INT NOP +9
+#define NINT NOP +10
+#define TRNC NOP +11
+#define FLDC NOP +12
+#define FSTC NOP +13
+#define FXC NOP +14
+
+#define UEXT(src,off,wid) \
+ ((((unsigned int)(src)) >> (off)) & ((1 << (wid)) - 1))
+
+#define SEXT(src,off,wid) \
+ (((((int)(src))<<(32 - ((off) + (wid)))) >>(32 - (wid))) )
+
+#define MAKE(src,off,wid) \
+ ((((unsigned int)(src)) & ((1 << (wid)) - 1)) << (off))
+
+#define opword(n) (unsigned long) (memaddr->mem.l)
+
+/* Constants and masks. */
+
+#define SFU0 0x80000000
+#define SFU1 0x84000000
+#define SFU7 0x9c000000
+#define RRI10 0xf0000000
+#define RRR 0xf4000000
+#define SFUMASK 0xfc00ffe0
+#define RRRMASK 0xfc00ffe0
+#define RRI10MASK 0xfc00fc00
+#define DEFMASK 0xfc000000
+#define CTRL 0x0000f000
+#define CTRLMASK 0xfc00f800
+
+/* Operands types. */
+
+enum operand_type
+{
+ HEX = 1,
+ REG = 2,
+ CONT = 3,
+ IND = 3,
+ BF = 4,
+ /* Scaled register. */
+ REGSC = 5,
+ /* Control register. */
+ CRREG = 6,
+ /* Floating point control register. */
+ FCRREG = 7,
+ PCREL = 8,
+ CONDMASK = 9,
+ /* Extended register. */
+ XREG = 10,
+ /* Decimal. */
+ DEC = 11
+};
+
+/* Hashing specification. */
+
+#define HASHVAL 79
+
+/* Structure templates. */
+
+typedef struct
+{
+ unsigned int offset;
+ unsigned int width;
+ enum operand_type type;
+} OPSPEC;
+
+struct SIM_FLAGS
+{
+ int ltncy, /* latency (max number of clocks needed to execute). */
+ extime, /* execution time (min number of clocks needed to execute). */
+ wb_pri; /* writeback slot priority. */
+ unsigned op:OP, /* simulator version of opcode. */
+ imm_flags:2, /* 10,16 or 26 bit immediate flags. */
+ rs1_used:1, /* register source 1 used. */
+ rs2_used:1, /* register source 2 used. */
+ rsd_used:1, /* register source/dest used. */
+ c_flag:1, /* complement. */
+ u_flag:1, /* upper half word. */
+ n_flag:1, /* execute next. */
+ wb_flag:1, /* uses writeback slot. */
+ dest_64:1, /* double precision dest. */
+ s1_64:1, /* double precision source 1. */
+ s2_64:1, /* double precision source 2. */
+ scale_flag:1; /* register is scaled. */
+};
+
+typedef struct INSTRUCTAB {
+ unsigned int opcode;
+ char *mnemonic;
+ OPSPEC op1,op2,op3;
+ struct SIM_FLAGS flgs;
+} INSTAB;
+
+
+#define NO_OPERAND {0,0,0}
+
+extern const INSTAB instructions[];
+
+/*
+ * Local Variables:
+ * fill-column: 131
+ * End:
+ */
diff --git a/include/opcode/mips.h b/include/opcode/mips.h
new file mode 100644
index 000000000..5c3ddfcd7
--- /dev/null
+++ b/include/opcode/mips.h
@@ -0,0 +1,914 @@
+/* mips.h. Mips opcode list for GDB, the GNU debugger.
+ Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+ Free Software Foundation, Inc.
+ Contributed by Ralph Campbell and OSF
+ Commented and modified by Ian Lance Taylor, Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef _MIPS_H_
+#define _MIPS_H_
+
+/* These are bit masks and shift counts to use to access the various
+ fields of an instruction. To retrieve the X field of an
+ instruction, use the expression
+ (i >> OP_SH_X) & OP_MASK_X
+ To set the same field (to j), use
+ i = (i &~ (OP_MASK_X << OP_SH_X)) | (j << OP_SH_X)
+
+ Make sure you use fields that are appropriate for the instruction,
+ of course.
+
+ The 'i' format uses OP, RS, RT and IMMEDIATE.
+
+ The 'j' format uses OP and TARGET.
+
+ The 'r' format uses OP, RS, RT, RD, SHAMT and FUNCT.
+
+ The 'b' format uses OP, RS, RT and DELTA.
+
+ The floating point 'i' format uses OP, RS, RT and IMMEDIATE.
+
+ The floating point 'r' format uses OP, FMT, FT, FS, FD and FUNCT.
+
+ A breakpoint instruction uses OP, CODE and SPEC (10 bits of the
+ breakpoint instruction are not defined; Kane says the breakpoint
+ code field in BREAK is 20 bits; yet MIPS assemblers and debuggers
+ only use ten bits). An optional two-operand form of break/sdbbp
+ allows the lower ten bits to be set too, and MIPS32 and later
+ architectures allow 20 bits to be set with a signal operand
+ (using CODE20).
+
+ The syscall instruction uses CODE20.
+
+ The general coprocessor instructions use COPZ. */
+
+#define OP_MASK_OP 0x3f
+#define OP_SH_OP 26
+#define OP_MASK_RS 0x1f
+#define OP_SH_RS 21
+#define OP_MASK_FR 0x1f
+#define OP_SH_FR 21
+#define OP_MASK_FMT 0x1f
+#define OP_SH_FMT 21
+#define OP_MASK_BCC 0x7
+#define OP_SH_BCC 18
+#define OP_MASK_CODE 0x3ff
+#define OP_SH_CODE 16
+#define OP_MASK_CODE2 0x3ff
+#define OP_SH_CODE2 6
+#define OP_MASK_RT 0x1f
+#define OP_SH_RT 16
+#define OP_MASK_FT 0x1f
+#define OP_SH_FT 16
+#define OP_MASK_CACHE 0x1f
+#define OP_SH_CACHE 16
+#define OP_MASK_RD 0x1f
+#define OP_SH_RD 11
+#define OP_MASK_FS 0x1f
+#define OP_SH_FS 11
+#define OP_MASK_PREFX 0x1f
+#define OP_SH_PREFX 11
+#define OP_MASK_CCC 0x7
+#define OP_SH_CCC 8
+#define OP_MASK_CODE20 0xfffff /* 20 bit syscall/breakpoint code. */
+#define OP_SH_CODE20 6
+#define OP_MASK_SHAMT 0x1f
+#define OP_SH_SHAMT 6
+#define OP_MASK_FD 0x1f
+#define OP_SH_FD 6
+#define OP_MASK_TARGET 0x3ffffff
+#define OP_SH_TARGET 0
+#define OP_MASK_COPZ 0x1ffffff
+#define OP_SH_COPZ 0
+#define OP_MASK_IMMEDIATE 0xffff
+#define OP_SH_IMMEDIATE 0
+#define OP_MASK_DELTA 0xffff
+#define OP_SH_DELTA 0
+#define OP_MASK_FUNCT 0x3f
+#define OP_SH_FUNCT 0
+#define OP_MASK_SPEC 0x3f
+#define OP_SH_SPEC 0
+#define OP_SH_LOCC 8 /* FP condition code. */
+#define OP_SH_HICC 18 /* FP condition code. */
+#define OP_MASK_CC 0x7
+#define OP_SH_COP1NORM 25 /* Normal COP1 encoding. */
+#define OP_MASK_COP1NORM 0x1 /* a single bit. */
+#define OP_SH_COP1SPEC 21 /* COP1 encodings. */
+#define OP_MASK_COP1SPEC 0xf
+#define OP_MASK_COP1SCLR 0x4
+#define OP_MASK_COP1CMP 0x3
+#define OP_SH_COP1CMP 4
+#define OP_SH_FORMAT 21 /* FP short format field. */
+#define OP_MASK_FORMAT 0x7
+#define OP_SH_TRUE 16
+#define OP_MASK_TRUE 0x1
+#define OP_SH_GE 17
+#define OP_MASK_GE 0x01
+#define OP_SH_UNSIGNED 16
+#define OP_MASK_UNSIGNED 0x1
+#define OP_SH_HINT 16
+#define OP_MASK_HINT 0x1f
+#define OP_SH_MMI 0 /* Multimedia (parallel) op. */
+#define OP_MASK_MMI 0x3f
+#define OP_SH_MMISUB 6
+#define OP_MASK_MMISUB 0x1f
+#define OP_MASK_PERFREG 0x1f /* Performance monitoring. */
+#define OP_SH_PERFREG 1
+#define OP_SH_SEL 0 /* Coprocessor select field. */
+#define OP_MASK_SEL 0x7 /* The sel field of mfcZ and mtcZ. */
+#define OP_SH_CODE19 6 /* 19 bit wait code. */
+#define OP_MASK_CODE19 0x7ffff
+#define OP_SH_ALN 21
+#define OP_MASK_ALN 0x7
+#define OP_SH_VSEL 21
+#define OP_MASK_VSEL 0x1f
+#define OP_MASK_VECBYTE 0x7 /* Selector field is really 4 bits,
+ but 0x8-0xf don't select bytes. */
+#define OP_SH_VECBYTE 22
+#define OP_MASK_VECALIGN 0x7 /* Vector byte-align (alni.ob) op. */
+#define OP_SH_VECALIGN 21
+#define OP_MASK_INSMSB 0x1f /* "ins" MSB. */
+#define OP_SH_INSMSB 11
+#define OP_MASK_EXTMSBD 0x1f /* "ext" MSBD. */
+#define OP_SH_EXTMSBD 11
+
+#define OP_OP_COP0 0x10
+#define OP_OP_COP1 0x11
+#define OP_OP_COP2 0x12
+#define OP_OP_COP3 0x13
+#define OP_OP_LWC1 0x31
+#define OP_OP_LWC2 0x32
+#define OP_OP_LWC3 0x33 /* a.k.a. pref */
+#define OP_OP_LDC1 0x35
+#define OP_OP_LDC2 0x36
+#define OP_OP_LDC3 0x37 /* a.k.a. ld */
+#define OP_OP_SWC1 0x39
+#define OP_OP_SWC2 0x3a
+#define OP_OP_SWC3 0x3b
+#define OP_OP_SDC1 0x3d
+#define OP_OP_SDC2 0x3e
+#define OP_OP_SDC3 0x3f /* a.k.a. sd */
+
+/* Values in the 'VSEL' field. */
+#define MDMX_FMTSEL_IMM_QH 0x1d
+#define MDMX_FMTSEL_IMM_OB 0x1e
+#define MDMX_FMTSEL_VEC_QH 0x15
+#define MDMX_FMTSEL_VEC_OB 0x16
+
+/* This structure holds information for a particular instruction. */
+
+struct mips_opcode
+{
+ /* The name of the instruction. */
+ const char *name;
+ /* A string describing the arguments for this instruction. */
+ const char *args;
+ /* The basic opcode for the instruction. When assembling, this
+ opcode is modified by the arguments to produce the actual opcode
+ that is used. If pinfo is INSN_MACRO, then this is 0. */
+ unsigned long match;
+ /* If pinfo is not INSN_MACRO, then this is a bit mask for the
+ relevant portions of the opcode when disassembling. If the
+ actual opcode anded with the match field equals the opcode field,
+ then we have found the correct instruction. If pinfo is
+ INSN_MACRO, then this field is the macro identifier. */
+ unsigned long mask;
+ /* For a macro, this is INSN_MACRO. Otherwise, it is a collection
+ of bits describing the instruction, notably any relevant hazard
+ information. */
+ unsigned long pinfo;
+ /* A collection of bits describing the instruction sets of which this
+ instruction or macro is a member. */
+ unsigned long membership;
+};
+
+/* These are the characters which may appear in the args field of an
+ instruction. They appear in the order in which the fields appear
+ when the instruction is used. Commas and parentheses in the args
+ string are ignored when assembling, and written into the output
+ when disassembling.
+
+ Each of these characters corresponds to a mask field defined above.
+
+ "<" 5 bit shift amount (OP_*_SHAMT)
+ ">" shift amount between 32 and 63, stored after subtracting 32 (OP_*_SHAMT)
+ "a" 26 bit target address (OP_*_TARGET)
+ "b" 5 bit base register (OP_*_RS)
+ "c" 10 bit breakpoint code (OP_*_CODE)
+ "d" 5 bit destination register specifier (OP_*_RD)
+ "h" 5 bit prefx hint (OP_*_PREFX)
+ "i" 16 bit unsigned immediate (OP_*_IMMEDIATE)
+ "j" 16 bit signed immediate (OP_*_DELTA)
+ "k" 5 bit cache opcode in target register position (OP_*_CACHE)
+ Also used for immediate operands in vr5400 vector insns.
+ "o" 16 bit signed offset (OP_*_DELTA)
+ "p" 16 bit PC relative branch target address (OP_*_DELTA)
+ "q" 10 bit extra breakpoint code (OP_*_CODE2)
+ "r" 5 bit same register used as both source and target (OP_*_RS)
+ "s" 5 bit source register specifier (OP_*_RS)
+ "t" 5 bit target register (OP_*_RT)
+ "u" 16 bit upper 16 bits of address (OP_*_IMMEDIATE)
+ "v" 5 bit same register used as both source and destination (OP_*_RS)
+ "w" 5 bit same register used as both target and destination (OP_*_RT)
+ "U" 5 bit same destination register in both OP_*_RD and OP_*_RT
+ (used by clo and clz)
+ "C" 25 bit coprocessor function code (OP_*_COPZ)
+ "B" 20 bit syscall/breakpoint function code (OP_*_CODE20)
+ "J" 19 bit wait function code (OP_*_CODE19)
+ "x" accept and ignore register name
+ "z" must be zero register
+ "K" 5 bit Hardware Register (rdhwr instruction) (OP_*_RD)
+ "+A" 5 bit ins/ext position, which becomes LSB (OP_*_SHAMT).
+ Enforces: 0 <= pos < 32.
+ "+B" 5 bit ins size, which becomes MSB (OP_*_INSMSB).
+ Requires that "+A" or "+E" occur first to set position.
+ Enforces: 0 < (pos+size) <= 32.
+ "+C" 5 bit ext size, which becomes MSBD (OP_*_EXTMSBD).
+ Requires that "+A" or "+E" occur first to set position.
+ Enforces: 0 < (pos+size) <= 32.
+ (Also used by "dext" w/ different limits, but limits for
+ that are checked by the M_DEXT macro.)
+ "+E" 5 bit dins/dext position, which becomes LSB-32 (OP_*_SHAMT).
+ Enforces: 32 <= pos < 64.
+ "+F" 5 bit "dinsm" size, which becomes MSB-32 (OP_*_INSMSB).
+ Requires that "+A" or "+E" occur first to set position.
+ Enforces: 32 < (pos+size) <= 64.
+ "+G" 5 bit "dextm" size, which becomes MSBD-32 (OP_*_EXTMSBD).
+ Requires that "+A" or "+E" occur first to set position.
+ Enforces: 32 < (pos+size) <= 64.
+ "+H" 5 bit "dextu" size, which becomes MSBD (OP_*_EXTMSBD).
+ Requires that "+A" or "+E" occur first to set position.
+ Enforces: 32 < (pos+size) <= 64.
+
+ Floating point instructions:
+ "D" 5 bit destination register (OP_*_FD)
+ "M" 3 bit compare condition code (OP_*_CCC) (only used for mips4 and up)
+ "N" 3 bit branch condition code (OP_*_BCC) (only used for mips4 and up)
+ "S" 5 bit fs source 1 register (OP_*_FS)
+ "T" 5 bit ft source 2 register (OP_*_FT)
+ "R" 5 bit fr source 3 register (OP_*_FR)
+ "V" 5 bit same register used as floating source and destination (OP_*_FS)
+ "W" 5 bit same register used as floating target and destination (OP_*_FT)
+
+ Coprocessor instructions:
+ "E" 5 bit target register (OP_*_RT)
+ "G" 5 bit destination register (OP_*_RD)
+ "H" 3 bit sel field for (d)mtc* and (d)mfc* (OP_*_SEL)
+ "P" 5 bit performance-monitor register (OP_*_PERFREG)
+ "e" 5 bit vector register byte specifier (OP_*_VECBYTE)
+ "%" 3 bit immediate vr5400 vector alignment operand (OP_*_VECALIGN)
+ see also "k" above
+ "+D" Combined destination register ("G") and sel ("H") for CP0 ops,
+ for pretty-printing in disassembly only.
+
+ Macro instructions:
+ "A" General 32 bit expression
+ "I" 32 bit immediate (value placed in imm_expr).
+ "+I" 32 bit immediate (value placed in imm2_expr).
+ "F" 64 bit floating point constant in .rdata
+ "L" 64 bit floating point constant in .lit8
+ "f" 32 bit floating point constant
+ "l" 32 bit floating point constant in .lit4
+
+ MDMX instruction operands (note that while these use the FP register
+ fields, they accept both $fN and $vN names for the registers):
+ "O" MDMX alignment offset (OP_*_ALN)
+ "Q" MDMX vector/scalar/immediate source (OP_*_VSEL and OP_*_FT)
+ "X" MDMX destination register (OP_*_FD)
+ "Y" MDMX source register (OP_*_FS)
+ "Z" MDMX source register (OP_*_FT)
+
+ Other:
+ "()" parens surrounding optional value
+ "," separates operands
+ "[]" brackets around index for vector-op scalar operand specifier (vr5400)
+ "+" Start of extension sequence.
+
+ Characters used so far, for quick reference when adding more:
+ "%[]<>(),+"
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
+ "abcdefhijklopqrstuvwxz"
+
+ Extension character sequences used so far ("+" followed by the
+ following), for quick reference when adding more:
+ "ABCDEFGHI"
+*/
+
+/* These are the bits which may be set in the pinfo field of an
+ instructions, if it is not equal to INSN_MACRO. */
+
+/* Modifies the general purpose register in OP_*_RD. */
+#define INSN_WRITE_GPR_D 0x00000001
+/* Modifies the general purpose register in OP_*_RT. */
+#define INSN_WRITE_GPR_T 0x00000002
+/* Modifies general purpose register 31. */
+#define INSN_WRITE_GPR_31 0x00000004
+/* Modifies the floating point register in OP_*_FD. */
+#define INSN_WRITE_FPR_D 0x00000008
+/* Modifies the floating point register in OP_*_FS. */
+#define INSN_WRITE_FPR_S 0x00000010
+/* Modifies the floating point register in OP_*_FT. */
+#define INSN_WRITE_FPR_T 0x00000020
+/* Reads the general purpose register in OP_*_RS. */
+#define INSN_READ_GPR_S 0x00000040
+/* Reads the general purpose register in OP_*_RT. */
+#define INSN_READ_GPR_T 0x00000080
+/* Reads the floating point register in OP_*_FS. */
+#define INSN_READ_FPR_S 0x00000100
+/* Reads the floating point register in OP_*_FT. */
+#define INSN_READ_FPR_T 0x00000200
+/* Reads the floating point register in OP_*_FR. */
+#define INSN_READ_FPR_R 0x00000400
+/* Modifies coprocessor condition code. */
+#define INSN_WRITE_COND_CODE 0x00000800
+/* Reads coprocessor condition code. */
+#define INSN_READ_COND_CODE 0x00001000
+/* TLB operation. */
+#define INSN_TLB 0x00002000
+/* Reads coprocessor register other than floating point register. */
+#define INSN_COP 0x00004000
+/* Instruction loads value from memory, requiring delay. */
+#define INSN_LOAD_MEMORY_DELAY 0x00008000
+/* Instruction loads value from coprocessor, requiring delay. */
+#define INSN_LOAD_COPROC_DELAY 0x00010000
+/* Instruction has unconditional branch delay slot. */
+#define INSN_UNCOND_BRANCH_DELAY 0x00020000
+/* Instruction has conditional branch delay slot. */
+#define INSN_COND_BRANCH_DELAY 0x00040000
+/* Conditional branch likely: if branch not taken, insn nullified. */
+#define INSN_COND_BRANCH_LIKELY 0x00080000
+/* Moves to coprocessor register, requiring delay. */
+#define INSN_COPROC_MOVE_DELAY 0x00100000
+/* Loads coprocessor register from memory, requiring delay. */
+#define INSN_COPROC_MEMORY_DELAY 0x00200000
+/* Reads the HI register. */
+#define INSN_READ_HI 0x00400000
+/* Reads the LO register. */
+#define INSN_READ_LO 0x00800000
+/* Modifies the HI register. */
+#define INSN_WRITE_HI 0x01000000
+/* Modifies the LO register. */
+#define INSN_WRITE_LO 0x02000000
+/* Takes a trap (easier to keep out of delay slot). */
+#define INSN_TRAP 0x04000000
+/* Instruction stores value into memory. */
+#define INSN_STORE_MEMORY 0x08000000
+/* Instruction uses single precision floating point. */
+#define FP_S 0x10000000
+/* Instruction uses double precision floating point. */
+#define FP_D 0x20000000
+/* Instruction is part of the tx39's integer multiply family. */
+#define INSN_MULT 0x40000000
+/* Instruction synchronize shared memory. */
+#define INSN_SYNC 0x80000000
+/* Instruction reads MDMX accumulator. XXX FIXME: No bits left! */
+#define INSN_READ_MDMX_ACC 0
+/* Instruction writes MDMX accumulator. XXX FIXME: No bits left! */
+#define INSN_WRITE_MDMX_ACC 0
+
+/* Instruction is actually a macro. It should be ignored by the
+ disassembler, and requires special treatment by the assembler. */
+#define INSN_MACRO 0xffffffff
+
+/* Masks used to mark instructions to indicate which MIPS ISA level
+ they were introduced in. ISAs, as defined below, are logical
+ ORs of these bits, indicating that they support the instructions
+ defined at the given level. */
+
+#define INSN_ISA_MASK 0x00000fff
+#define INSN_ISA1 0x00000001
+#define INSN_ISA2 0x00000002
+#define INSN_ISA3 0x00000004
+#define INSN_ISA4 0x00000008
+#define INSN_ISA5 0x00000010
+#define INSN_ISA32 0x00000020
+#define INSN_ISA64 0x00000040
+#define INSN_ISA32R2 0x00000080
+#define INSN_ISA64R2 0x00000100
+
+/* Masks used for MIPS-defined ASEs. */
+#define INSN_ASE_MASK 0x0000f000
+
+/* MIPS 16 ASE */
+#define INSN_MIPS16 0x00002000
+/* MIPS-3D ASE */
+#define INSN_MIPS3D 0x00004000
+/* MDMX ASE */
+#define INSN_MDMX 0x00008000
+
+/* Chip specific instructions. These are bitmasks. */
+
+/* MIPS R4650 instruction. */
+#define INSN_4650 0x00010000
+/* LSI R4010 instruction. */
+#define INSN_4010 0x00020000
+/* NEC VR4100 instruction. */
+#define INSN_4100 0x00040000
+/* Toshiba R3900 instruction. */
+#define INSN_3900 0x00080000
+/* MIPS R10000 instruction. */
+#define INSN_10000 0x00100000
+/* Broadcom SB-1 instruction. */
+#define INSN_SB1 0x00200000
+/* NEC VR4111/VR4181 instruction. */
+#define INSN_4111 0x00400000
+/* NEC VR4120 instruction. */
+#define INSN_4120 0x00800000
+/* NEC VR5400 instruction. */
+#define INSN_5400 0x01000000
+/* NEC VR5500 instruction. */
+#define INSN_5500 0x02000000
+
+/* MIPS ISA defines, use instead of hardcoding ISA level. */
+
+#define ISA_UNKNOWN 0 /* Gas internal use. */
+#define ISA_MIPS1 (INSN_ISA1)
+#define ISA_MIPS2 (ISA_MIPS1 | INSN_ISA2)
+#define ISA_MIPS3 (ISA_MIPS2 | INSN_ISA3)
+#define ISA_MIPS4 (ISA_MIPS3 | INSN_ISA4)
+#define ISA_MIPS5 (ISA_MIPS4 | INSN_ISA5)
+
+#define ISA_MIPS32 (ISA_MIPS2 | INSN_ISA32)
+#define ISA_MIPS64 (ISA_MIPS5 | INSN_ISA32 | INSN_ISA64)
+
+#define ISA_MIPS32R2 (ISA_MIPS32 | INSN_ISA32R2)
+#define ISA_MIPS64R2 (ISA_MIPS64 | INSN_ISA32R2 | INSN_ISA64R2)
+
+
+/* CPU defines, use instead of hardcoding processor number. Keep this
+ in sync with bfd/archures.c in order for machine selection to work. */
+#define CPU_UNKNOWN 0 /* Gas internal use. */
+#define CPU_R3000 3000
+#define CPU_R3900 3900
+#define CPU_R4000 4000
+#define CPU_R4010 4010
+#define CPU_VR4100 4100
+#define CPU_R4111 4111
+#define CPU_VR4120 4120
+#define CPU_R4300 4300
+#define CPU_R4400 4400
+#define CPU_R4600 4600
+#define CPU_R4650 4650
+#define CPU_R5000 5000
+#define CPU_VR5400 5400
+#define CPU_VR5500 5500
+#define CPU_R6000 6000
+#define CPU_RM7000 7000
+#define CPU_R8000 8000
+#define CPU_R10000 10000
+#define CPU_R12000 12000
+#define CPU_MIPS16 16
+#define CPU_MIPS32 32
+#define CPU_MIPS32R2 33
+#define CPU_MIPS5 5
+#define CPU_MIPS64 64
+#define CPU_MIPS64R2 65
+#define CPU_SB1 12310201 /* octal 'SB', 01. */
+
+/* Test for membership in an ISA including chip specific ISAs. INSN
+ is pointer to an element of the opcode table; ISA is the specified
+ ISA/ASE bitmask to test against; and CPU is the CPU specific ISA to
+ test, or zero if no CPU specific ISA test is desired. */
+
+#define OPCODE_IS_MEMBER(insn, isa, cpu) \
+ (((insn)->membership & isa) != 0 \
+ || (cpu == CPU_R4650 && ((insn)->membership & INSN_4650) != 0) \
+ || (cpu == CPU_RM7000 && ((insn)->membership & INSN_4650) != 0) \
+ || (cpu == CPU_R4010 && ((insn)->membership & INSN_4010) != 0) \
+ || (cpu == CPU_VR4100 && ((insn)->membership & INSN_4100) != 0) \
+ || (cpu == CPU_R3900 && ((insn)->membership & INSN_3900) != 0) \
+ || ((cpu == CPU_R10000 || cpu == CPU_R12000) \
+ && ((insn)->membership & INSN_10000) != 0) \
+ || (cpu == CPU_SB1 && ((insn)->membership & INSN_SB1) != 0) \
+ || (cpu == CPU_R4111 && ((insn)->membership & INSN_4111) != 0) \
+ || (cpu == CPU_VR4120 && ((insn)->membership & INSN_4120) != 0) \
+ || (cpu == CPU_VR5400 && ((insn)->membership & INSN_5400) != 0) \
+ || (cpu == CPU_VR5500 && ((insn)->membership & INSN_5500) != 0) \
+ || 0) /* Please keep this term for easier source merging. */
+
+/* This is a list of macro expanded instructions.
+
+ _I appended means immediate
+ _A appended means address
+ _AB appended means address with base register
+ _D appended means 64 bit floating point constant
+ _S appended means 32 bit floating point constant. */
+
+enum
+{
+ M_ABS,
+ M_ADD_I,
+ M_ADDU_I,
+ M_AND_I,
+ M_BEQ,
+ M_BEQ_I,
+ M_BEQL_I,
+ M_BGE,
+ M_BGEL,
+ M_BGE_I,
+ M_BGEL_I,
+ M_BGEU,
+ M_BGEUL,
+ M_BGEU_I,
+ M_BGEUL_I,
+ M_BGT,
+ M_BGTL,
+ M_BGT_I,
+ M_BGTL_I,
+ M_BGTU,
+ M_BGTUL,
+ M_BGTU_I,
+ M_BGTUL_I,
+ M_BLE,
+ M_BLEL,
+ M_BLE_I,
+ M_BLEL_I,
+ M_BLEU,
+ M_BLEUL,
+ M_BLEU_I,
+ M_BLEUL_I,
+ M_BLT,
+ M_BLTL,
+ M_BLT_I,
+ M_BLTL_I,
+ M_BLTU,
+ M_BLTUL,
+ M_BLTU_I,
+ M_BLTUL_I,
+ M_BNE,
+ M_BNE_I,
+ M_BNEL_I,
+ M_DABS,
+ M_DADD_I,
+ M_DADDU_I,
+ M_DDIV_3,
+ M_DDIV_3I,
+ M_DDIVU_3,
+ M_DDIVU_3I,
+ M_DEXT,
+ M_DINS,
+ M_DIV_3,
+ M_DIV_3I,
+ M_DIVU_3,
+ M_DIVU_3I,
+ M_DLA_AB,
+ M_DLCA_AB,
+ M_DLI,
+ M_DMUL,
+ M_DMUL_I,
+ M_DMULO,
+ M_DMULO_I,
+ M_DMULOU,
+ M_DMULOU_I,
+ M_DREM_3,
+ M_DREM_3I,
+ M_DREMU_3,
+ M_DREMU_3I,
+ M_DSUB_I,
+ M_DSUBU_I,
+ M_DSUBU_I_2,
+ M_J_A,
+ M_JAL_1,
+ M_JAL_2,
+ M_JAL_A,
+ M_L_DOB,
+ M_L_DAB,
+ M_LA_AB,
+ M_LB_A,
+ M_LB_AB,
+ M_LBU_A,
+ M_LBU_AB,
+ M_LCA_AB,
+ M_LD_A,
+ M_LD_OB,
+ M_LD_AB,
+ M_LDC1_AB,
+ M_LDC2_AB,
+ M_LDC3_AB,
+ M_LDL_AB,
+ M_LDR_AB,
+ M_LH_A,
+ M_LH_AB,
+ M_LHU_A,
+ M_LHU_AB,
+ M_LI,
+ M_LI_D,
+ M_LI_DD,
+ M_LI_S,
+ M_LI_SS,
+ M_LL_AB,
+ M_LLD_AB,
+ M_LS_A,
+ M_LW_A,
+ M_LW_AB,
+ M_LWC0_A,
+ M_LWC0_AB,
+ M_LWC1_A,
+ M_LWC1_AB,
+ M_LWC2_A,
+ M_LWC2_AB,
+ M_LWC3_A,
+ M_LWC3_AB,
+ M_LWL_A,
+ M_LWL_AB,
+ M_LWR_A,
+ M_LWR_AB,
+ M_LWU_AB,
+ M_MOVE,
+ M_MUL,
+ M_MUL_I,
+ M_MULO,
+ M_MULO_I,
+ M_MULOU,
+ M_MULOU_I,
+ M_NOR_I,
+ M_OR_I,
+ M_REM_3,
+ M_REM_3I,
+ M_REMU_3,
+ M_REMU_3I,
+ M_DROL,
+ M_ROL,
+ M_DROL_I,
+ M_ROL_I,
+ M_DROR,
+ M_ROR,
+ M_DROR_I,
+ M_ROR_I,
+ M_S_DA,
+ M_S_DOB,
+ M_S_DAB,
+ M_S_S,
+ M_SC_AB,
+ M_SCD_AB,
+ M_SD_A,
+ M_SD_OB,
+ M_SD_AB,
+ M_SDC1_AB,
+ M_SDC2_AB,
+ M_SDC3_AB,
+ M_SDL_AB,
+ M_SDR_AB,
+ M_SEQ,
+ M_SEQ_I,
+ M_SGE,
+ M_SGE_I,
+ M_SGEU,
+ M_SGEU_I,
+ M_SGT,
+ M_SGT_I,
+ M_SGTU,
+ M_SGTU_I,
+ M_SLE,
+ M_SLE_I,
+ M_SLEU,
+ M_SLEU_I,
+ M_SLT_I,
+ M_SLTU_I,
+ M_SNE,
+ M_SNE_I,
+ M_SB_A,
+ M_SB_AB,
+ M_SH_A,
+ M_SH_AB,
+ M_SW_A,
+ M_SW_AB,
+ M_SWC0_A,
+ M_SWC0_AB,
+ M_SWC1_A,
+ M_SWC1_AB,
+ M_SWC2_A,
+ M_SWC2_AB,
+ M_SWC3_A,
+ M_SWC3_AB,
+ M_SWL_A,
+ M_SWL_AB,
+ M_SWR_A,
+ M_SWR_AB,
+ M_SUB_I,
+ M_SUBU_I,
+ M_SUBU_I_2,
+ M_TEQ_I,
+ M_TGE_I,
+ M_TGEU_I,
+ M_TLT_I,
+ M_TLTU_I,
+ M_TNE_I,
+ M_TRUNCWD,
+ M_TRUNCWS,
+ M_ULD,
+ M_ULD_A,
+ M_ULH,
+ M_ULH_A,
+ M_ULHU,
+ M_ULHU_A,
+ M_ULW,
+ M_ULW_A,
+ M_USH,
+ M_USH_A,
+ M_USW,
+ M_USW_A,
+ M_USD,
+ M_USD_A,
+ M_XOR_I,
+ M_COP0,
+ M_COP1,
+ M_COP2,
+ M_COP3,
+ M_NUM_MACROS
+};
+
+
+/* The order of overloaded instructions matters. Label arguments and
+ register arguments look the same. Instructions that can have either
+ for arguments must apear in the correct order in this table for the
+ assembler to pick the right one. In other words, entries with
+ immediate operands must apear after the same instruction with
+ registers.
+
+ Many instructions are short hand for other instructions (i.e., The
+ jal <register> instruction is short for jalr <register>). */
+
+extern const struct mips_opcode mips_builtin_opcodes[];
+extern const int bfd_mips_num_builtin_opcodes;
+extern struct mips_opcode *mips_opcodes;
+extern int bfd_mips_num_opcodes;
+#define NUMOPCODES bfd_mips_num_opcodes
+
+
+/* The rest of this file adds definitions for the mips16 TinyRISC
+ processor. */
+
+/* These are the bitmasks and shift counts used for the different
+ fields in the instruction formats. Other than OP, no masks are
+ provided for the fixed portions of an instruction, since they are
+ not needed.
+
+ The I format uses IMM11.
+
+ The RI format uses RX and IMM8.
+
+ The RR format uses RX, and RY.
+
+ The RRI format uses RX, RY, and IMM5.
+
+ The RRR format uses RX, RY, and RZ.
+
+ The RRI_A format uses RX, RY, and IMM4.
+
+ The SHIFT format uses RX, RY, and SHAMT.
+
+ The I8 format uses IMM8.
+
+ The I8_MOVR32 format uses RY and REGR32.
+
+ The IR_MOV32R format uses REG32R and MOV32Z.
+
+ The I64 format uses IMM8.
+
+ The RI64 format uses RY and IMM5.
+ */
+
+#define MIPS16OP_MASK_OP 0x1f
+#define MIPS16OP_SH_OP 11
+#define MIPS16OP_MASK_IMM11 0x7ff
+#define MIPS16OP_SH_IMM11 0
+#define MIPS16OP_MASK_RX 0x7
+#define MIPS16OP_SH_RX 8
+#define MIPS16OP_MASK_IMM8 0xff
+#define MIPS16OP_SH_IMM8 0
+#define MIPS16OP_MASK_RY 0x7
+#define MIPS16OP_SH_RY 5
+#define MIPS16OP_MASK_IMM5 0x1f
+#define MIPS16OP_SH_IMM5 0
+#define MIPS16OP_MASK_RZ 0x7
+#define MIPS16OP_SH_RZ 2
+#define MIPS16OP_MASK_IMM4 0xf
+#define MIPS16OP_SH_IMM4 0
+#define MIPS16OP_MASK_REGR32 0x1f
+#define MIPS16OP_SH_REGR32 0
+#define MIPS16OP_MASK_REG32R 0x1f
+#define MIPS16OP_SH_REG32R 3
+#define MIPS16OP_EXTRACT_REG32R(i) ((((i) >> 5) & 7) | ((i) & 0x18))
+#define MIPS16OP_MASK_MOVE32Z 0x7
+#define MIPS16OP_SH_MOVE32Z 0
+#define MIPS16OP_MASK_IMM6 0x3f
+#define MIPS16OP_SH_IMM6 5
+
+/* These are the characters which may appears in the args field of an
+ instruction. They appear in the order in which the fields appear
+ when the instruction is used. Commas and parentheses in the args
+ string are ignored when assembling, and written into the output
+ when disassembling.
+
+ "y" 3 bit register (MIPS16OP_*_RY)
+ "x" 3 bit register (MIPS16OP_*_RX)
+ "z" 3 bit register (MIPS16OP_*_RZ)
+ "Z" 3 bit register (MIPS16OP_*_MOVE32Z)
+ "v" 3 bit same register as source and destination (MIPS16OP_*_RX)
+ "w" 3 bit same register as source and destination (MIPS16OP_*_RY)
+ "0" zero register ($0)
+ "S" stack pointer ($sp or $29)
+ "P" program counter
+ "R" return address register ($ra or $31)
+ "X" 5 bit MIPS register (MIPS16OP_*_REGR32)
+ "Y" 5 bit MIPS register (MIPS16OP_*_REG32R)
+ "6" 6 bit unsigned break code (MIPS16OP_*_IMM6)
+ "a" 26 bit jump address
+ "e" 11 bit extension value
+ "l" register list for entry instruction
+ "L" register list for exit instruction
+
+ The remaining codes may be extended. Except as otherwise noted,
+ the full extended operand is a 16 bit signed value.
+ "<" 3 bit unsigned shift count * 0 (MIPS16OP_*_RZ) (full 5 bit unsigned)
+ ">" 3 bit unsigned shift count * 0 (MIPS16OP_*_RX) (full 5 bit unsigned)
+ "[" 3 bit unsigned shift count * 0 (MIPS16OP_*_RZ) (full 6 bit unsigned)
+ "]" 3 bit unsigned shift count * 0 (MIPS16OP_*_RX) (full 6 bit unsigned)
+ "4" 4 bit signed immediate * 0 (MIPS16OP_*_IMM4) (full 15 bit signed)
+ "5" 5 bit unsigned immediate * 0 (MIPS16OP_*_IMM5)
+ "H" 5 bit unsigned immediate * 2 (MIPS16OP_*_IMM5)
+ "W" 5 bit unsigned immediate * 4 (MIPS16OP_*_IMM5)
+ "D" 5 bit unsigned immediate * 8 (MIPS16OP_*_IMM5)
+ "j" 5 bit signed immediate * 0 (MIPS16OP_*_IMM5)
+ "8" 8 bit unsigned immediate * 0 (MIPS16OP_*_IMM8)
+ "V" 8 bit unsigned immediate * 4 (MIPS16OP_*_IMM8)
+ "C" 8 bit unsigned immediate * 8 (MIPS16OP_*_IMM8)
+ "U" 8 bit unsigned immediate * 0 (MIPS16OP_*_IMM8) (full 16 bit unsigned)
+ "k" 8 bit signed immediate * 0 (MIPS16OP_*_IMM8)
+ "K" 8 bit signed immediate * 8 (MIPS16OP_*_IMM8)
+ "p" 8 bit conditional branch address (MIPS16OP_*_IMM8)
+ "q" 11 bit branch address (MIPS16OP_*_IMM11)
+ "A" 8 bit PC relative address * 4 (MIPS16OP_*_IMM8)
+ "B" 5 bit PC relative address * 8 (MIPS16OP_*_IMM5)
+ "E" 5 bit PC relative address * 4 (MIPS16OP_*_IMM5)
+ */
+
+/* For the mips16, we use the same opcode table format and a few of
+ the same flags. However, most of the flags are different. */
+
+/* Modifies the register in MIPS16OP_*_RX. */
+#define MIPS16_INSN_WRITE_X 0x00000001
+/* Modifies the register in MIPS16OP_*_RY. */
+#define MIPS16_INSN_WRITE_Y 0x00000002
+/* Modifies the register in MIPS16OP_*_RZ. */
+#define MIPS16_INSN_WRITE_Z 0x00000004
+/* Modifies the T ($24) register. */
+#define MIPS16_INSN_WRITE_T 0x00000008
+/* Modifies the SP ($29) register. */
+#define MIPS16_INSN_WRITE_SP 0x00000010
+/* Modifies the RA ($31) register. */
+#define MIPS16_INSN_WRITE_31 0x00000020
+/* Modifies the general purpose register in MIPS16OP_*_REG32R. */
+#define MIPS16_INSN_WRITE_GPR_Y 0x00000040
+/* Reads the register in MIPS16OP_*_RX. */
+#define MIPS16_INSN_READ_X 0x00000080
+/* Reads the register in MIPS16OP_*_RY. */
+#define MIPS16_INSN_READ_Y 0x00000100
+/* Reads the register in MIPS16OP_*_MOVE32Z. */
+#define MIPS16_INSN_READ_Z 0x00000200
+/* Reads the T ($24) register. */
+#define MIPS16_INSN_READ_T 0x00000400
+/* Reads the SP ($29) register. */
+#define MIPS16_INSN_READ_SP 0x00000800
+/* Reads the RA ($31) register. */
+#define MIPS16_INSN_READ_31 0x00001000
+/* Reads the program counter. */
+#define MIPS16_INSN_READ_PC 0x00002000
+/* Reads the general purpose register in MIPS16OP_*_REGR32. */
+#define MIPS16_INSN_READ_GPR_X 0x00004000
+/* Is a branch insn. */
+#define MIPS16_INSN_BRANCH 0x00010000
+
+/* The following flags have the same value for the mips16 opcode
+ table:
+ INSN_UNCOND_BRANCH_DELAY
+ INSN_COND_BRANCH_DELAY
+ INSN_COND_BRANCH_LIKELY (never used)
+ INSN_READ_HI
+ INSN_READ_LO
+ INSN_WRITE_HI
+ INSN_WRITE_LO
+ INSN_TRAP
+ INSN_ISA3
+ */
+
+extern const struct mips_opcode mips16_opcodes[];
+extern const int bfd_mips16_num_opcodes;
+
+#endif /* _MIPS_H_ */
diff --git a/include/opcode/mmix.h b/include/opcode/mmix.h
new file mode 100644
index 000000000..d2aef32bd
--- /dev/null
+++ b/include/opcode/mmix.h
@@ -0,0 +1,186 @@
+/* mmix.h -- Header file for MMIX opcode table
+ Copyright (C) 2001, 2003 Free Software Foundation, Inc.
+ Written by Hans-Peter Nilsson (hp@bitrange.com)
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version 2,
+or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* We could have just a char*[] table indexed by the register number, but
+ that would not allow for synonyms. The table is terminated with an
+ entry with a NULL name. */
+struct mmix_spec_reg
+{
+ const char *name;
+ unsigned int number;
+};
+
+/* General indication of the type of instruction. */
+enum mmix_insn_type
+ {
+ mmix_type_pseudo,
+ mmix_type_normal,
+ mmix_type_branch,
+ mmix_type_condbranch,
+ mmix_type_memaccess_octa,
+ mmix_type_memaccess_tetra,
+ mmix_type_memaccess_wyde,
+ mmix_type_memaccess_byte,
+ mmix_type_memaccess_block,
+ mmix_type_jsr
+ };
+
+/* Type of operands an instruction takes. Use when parsing assembly code
+ and disassembling. */
+enum mmix_operands_type
+ {
+ mmix_operands_none = 0,
+
+ /* All operands are registers: "$X,$Y,$Z". */
+ mmix_operands_regs,
+
+ /* "$X,YZ", like SETH. */
+ mmix_operands_reg_yz,
+
+ /* The regular "$X,$Y,$Z|Z".
+ The Z is optional; if only "$X,$Y" is given, then "$X,$Y,0" is
+ assumed. */
+ mmix_operands_regs_z_opt,
+
+ /* The regular "$X,$Y,$Z|Z". */
+ mmix_operands_regs_z,
+
+ /* "Address"; only JMP. Zero operands allowed unless GNU syntax. */
+ mmix_operands_jmp,
+
+ /* "$X|X,$Y,$Z|Z": PUSHGO; like "3", but X can be expressed as an
+ integer. */
+ mmix_operands_pushgo,
+
+ /* Two registers or a register and a byte, like FLOT, possibly with
+ rounding: "$X,$Z|Z" or "$X,ROUND_MODE,$Z|Z". */
+ mmix_operands_roundregs_z,
+
+ /* "X,YZ", POP. Unless GNU syntax, zero or one operand is allowed. */
+ mmix_operands_pop,
+
+ /* Two registers, possibly with rounding: "$X,$Z" or
+ "$X,ROUND_MODE,$Z". */
+ mmix_operands_roundregs,
+
+ /* "XYZ", like SYNC. */
+ mmix_operands_sync,
+
+ /* "X,$Y,$Z|Z", like SYNCD. */
+ mmix_operands_x_regs_z,
+
+ /* "$X,Y,$Z|Z", like NEG and NEGU. The Y field is optional, default 0. */
+ mmix_operands_neg,
+
+ /* "$X,Address, like GETA or branches. */
+ mmix_operands_regaddr,
+
+ /* "$X|X,Address, like PUSHJ. */
+ mmix_operands_pushj,
+
+ /* "$X,spec_reg"; GET. */
+ mmix_operands_get,
+
+ /* "spec_reg,$Z|Z"; PUT. */
+ mmix_operands_put,
+
+ /* Two registers, "$X,$Y". */
+ mmix_operands_set,
+
+ /* "$X,0"; SAVE. */
+ mmix_operands_save,
+
+ /* "0,$Z"; UNSAVE. */
+ mmix_operands_unsave,
+
+ /* "X,Y,Z"; like SWYM or TRAP. Zero (or 1 if GNU syntax) to three
+ operands, interpreted as 0; XYZ; X, YZ and X, Y, Z. */
+ mmix_operands_xyz_opt,
+
+ /* Just "Z", like RESUME. Unless GNU syntax, the operand can be omitted
+ and will then be assumed zero. */
+ mmix_operands_resume,
+
+ /* These are specials to handle that pseudo-directives are specified
+ like ordinary insns when being mmixal-compatible. They signify the
+ specific pseudo-directive rather than the operands type. */
+
+ /* LOC. */
+ mmix_operands_loc,
+
+ /* PREFIX. */
+ mmix_operands_prefix,
+
+ /* BYTE. */
+ mmix_operands_byte,
+
+ /* WYDE. */
+ mmix_operands_wyde,
+
+ /* TETRA. */
+ mmix_operands_tetra,
+
+ /* OCTA. */
+ mmix_operands_octa,
+
+ /* LOCAL. */
+ mmix_operands_local,
+
+ /* BSPEC. */
+ mmix_operands_bspec,
+
+ /* ESPEC. */
+ mmix_operands_espec,
+ };
+
+struct mmix_opcode
+ {
+ const char *name;
+ unsigned long match;
+ unsigned long lose;
+ enum mmix_operands_type operands;
+
+ /* This is used by the disassembly function. */
+ enum mmix_insn_type type;
+ };
+
+/* Declare the actual tables. */
+extern const struct mmix_opcode mmix_opcodes[];
+
+/* This one is terminated with an entry with a NULL name. */
+extern const struct mmix_spec_reg mmix_spec_regs[];
+
+/* Some insn values we use when padding and synthesizing address loads. */
+#define IMM_OFFSET_BIT 1
+#define COND_INV_BIT 0x8
+#define PRED_INV_BIT 0x10
+
+#define PUSHGO_INSN_BYTE 0xbe
+#define GO_INSN_BYTE 0x9e
+#define SETL_INSN_BYTE 0xe3
+#define INCML_INSN_BYTE 0xe6
+#define INCMH_INSN_BYTE 0xe5
+#define INCH_INSN_BYTE 0xe4
+#define SWYM_INSN_BYTE 0xfd
+#define JMP_INSN_BYTE 0xf0
+
+/* We can have 256 - 32 (local registers) - 1 ($255 is not allocatable)
+ global registers. */
+#define MAX_GREGS 223
diff --git a/include/opcode/mn10200.h b/include/opcode/mn10200.h
new file mode 100644
index 000000000..42fa94b0c
--- /dev/null
+++ b/include/opcode/mn10200.h
@@ -0,0 +1,110 @@
+/* mn10200.h -- Header file for Matsushita 10200 opcode table
+ Copyright 1996, 1997 Free Software Foundation, Inc.
+ Written by Jeff Law, Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef MN10200_H
+#define MN10200_H
+
+/* The opcode table is an array of struct mn10200_opcode. */
+
+struct mn10200_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned long opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned long mask;
+
+ /* The format of this opcode. */
+ unsigned char format;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[8];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct mn10200_opcode mn10200_opcodes[];
+extern const int mn10200_num_opcodes;
+
+
+/* The operands table is an array of struct mn10200_operand. */
+
+struct mn10200_operand
+{
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* One bit syntax flags. */
+ int flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the mn10200_opcodes table. */
+
+extern const struct mn10200_operand mn10200_operands[];
+
+/* Values defined for the flags field of a struct mn10200_operand. */
+#define MN10200_OPERAND_DREG 0x1
+
+#define MN10200_OPERAND_AREG 0x2
+
+#define MN10200_OPERAND_PSW 0x4
+
+#define MN10200_OPERAND_MDR 0x8
+
+#define MN10200_OPERAND_SIGNED 0x10
+
+#define MN10200_OPERAND_PROMOTE 0x20
+
+#define MN10200_OPERAND_PAREN 0x40
+
+#define MN10200_OPERAND_REPEATED 0x80
+
+#define MN10200_OPERAND_EXTENDED 0x100
+
+#define MN10200_OPERAND_NOCHECK 0x200
+
+#define MN10200_OPERAND_PCREL 0x400
+
+#define MN10200_OPERAND_MEMADDR 0x800
+
+#define MN10200_OPERAND_RELAX 0x1000
+
+#define FMT_1 1
+#define FMT_2 2
+#define FMT_3 3
+#define FMT_4 4
+#define FMT_5 5
+#define FMT_6 6
+#define FMT_7 7
+#endif /* MN10200_H */
diff --git a/include/opcode/mn10300.h b/include/opcode/mn10300.h
new file mode 100644
index 000000000..bd7faa110
--- /dev/null
+++ b/include/opcode/mn10300.h
@@ -0,0 +1,169 @@
+/* mn10300.h -- Header file for Matsushita 10300 opcode table
+ Copyright 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+ Written by Jeff Law, Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef MN10300_H
+#define MN10300_H
+
+/* The opcode table is an array of struct mn10300_opcode. */
+
+#define MN10300_MAX_OPERANDS 8
+struct mn10300_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned long opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned long mask;
+
+ /* A bitmask. For each operand, nonzero if it must not have the same
+ register specification as all other operands with a nonzero bit in
+ this flag. ie 0x81 would indicate that operands 7 and 0 must not
+ match. Note that we count operands from left to right as they appear
+ in the operands specification below. */
+ unsigned int no_match_operands;
+
+ /* The format of this opcode. */
+ unsigned char format;
+
+ /* Bitmask indicating what cpu variants this opcode is available on.
+ We assume mn10300 base opcodes are available everywhere, so we only
+ have to note opcodes which are available on other variants. */
+ unsigned int machine;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[MN10300_MAX_OPERANDS];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct mn10300_opcode mn10300_opcodes[];
+extern const int mn10300_num_opcodes;
+
+
+/* The operands table is an array of struct mn10300_operand. */
+
+struct mn10300_operand
+{
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* One bit syntax flags. */
+ int flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the mn10300_opcodes table. */
+
+extern const struct mn10300_operand mn10300_operands[];
+
+/* Values defined for the flags field of a struct mn10300_operand. */
+#define MN10300_OPERAND_DREG 0x1
+
+#define MN10300_OPERAND_AREG 0x2
+
+#define MN10300_OPERAND_SP 0x4
+
+#define MN10300_OPERAND_PSW 0x8
+
+#define MN10300_OPERAND_MDR 0x10
+
+#define MN10300_OPERAND_SIGNED 0x20
+
+#define MN10300_OPERAND_PROMOTE 0x40
+
+#define MN10300_OPERAND_PAREN 0x80
+
+#define MN10300_OPERAND_REPEATED 0x100
+
+#define MN10300_OPERAND_EXTENDED 0x200
+
+#define MN10300_OPERAND_SPLIT 0x400
+
+#define MN10300_OPERAND_REG_LIST 0x800
+
+#define MN10300_OPERAND_PCREL 0x1000
+
+#define MN10300_OPERAND_MEMADDR 0x2000
+
+#define MN10300_OPERAND_RELAX 0x4000
+
+#define MN10300_OPERAND_USP 0x8000
+
+#define MN10300_OPERAND_SSP 0x10000
+
+#define MN10300_OPERAND_MSP 0x20000
+
+#define MN10300_OPERAND_PC 0x40000
+
+#define MN10300_OPERAND_EPSW 0x80000
+
+#define MN10300_OPERAND_RREG 0x100000
+
+#define MN10300_OPERAND_XRREG 0x200000
+
+#define MN10300_OPERAND_PLUS 0x400000
+
+#define MN10300_OPERAND_24BIT 0x800000
+
+#define MN10300_OPERAND_FSREG 0x1000000
+
+#define MN10300_OPERAND_FDREG 0x2000000
+
+#define MN10300_OPERAND_FPCR 0x4000000
+
+/* Opcode Formats. */
+#define FMT_S0 1
+#define FMT_S1 2
+#define FMT_S2 3
+#define FMT_S4 4
+#define FMT_S6 5
+#define FMT_D0 6
+#define FMT_D1 7
+#define FMT_D2 8
+#define FMT_D4 9
+#define FMT_D5 10
+#define FMT_D6 11
+#define FMT_D7 12
+#define FMT_D8 13
+#define FMT_D9 14
+#define FMT_D10 15
+#define FMT_D3 16
+
+/* Variants of the mn10300 which have additional opcodes. */
+#define MN103 300
+#define AM30 300
+
+#define AM33 330
+#define AM33_2 332
+
+#endif /* MN10300_H */
diff --git a/include/opcode/msp430.h b/include/opcode/msp430.h
new file mode 100644
index 000000000..a59ede215
--- /dev/null
+++ b/include/opcode/msp430.h
@@ -0,0 +1,216 @@
+/* Opcode table for the TI MSP430 microcontrollers
+
+ Copyright 2002, 2004 Free Software Foundation, Inc.
+ Contributed by Dmitry Diky <diwil@mail.ru>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef __MSP430_H_
+#define __MSP430_H_
+
+struct msp430_operand_s
+{
+ int ol; /* Operand length words. */
+ int am; /* Addr mode. */
+ int reg; /* Register. */
+ int mode; /* Pperand mode. */
+#define OP_REG 0
+#define OP_EXP 1
+#ifndef DASM_SECTION
+ expressionS exp;
+#endif
+};
+
+#define BYTE_OPERATION (1 << 6) /* Byte operation flag for all instructions. */
+
+struct msp430_opcode_s
+{
+ char *name;
+ int fmt;
+ int insn_opnumb;
+ int bin_opcode;
+ int bin_mask;
+};
+
+#define MSP_INSN(name, size, numb, bin, mask) { #name, size, numb, bin, mask }
+
+static struct msp430_opcode_s msp430_opcodes[] =
+{
+ MSP_INSN (and, 1, 2, 0xf000, 0xf000),
+ MSP_INSN (inv, 0, 1, 0xe330, 0xfff0),
+ MSP_INSN (xor, 1, 2, 0xe000, 0xf000),
+ MSP_INSN (setz, 0, 0, 0xd322, 0xffff),
+ MSP_INSN (setc, 0, 0, 0xd312, 0xffff),
+ MSP_INSN (eint, 0, 0, 0xd232, 0xffff),
+ MSP_INSN (setn, 0, 0, 0xd222, 0xffff),
+ MSP_INSN (bis, 1, 2, 0xd000, 0xf000),
+ MSP_INSN (clrz, 0, 0, 0xc322, 0xffff),
+ MSP_INSN (clrc, 0, 0, 0xc312, 0xffff),
+ MSP_INSN (dint, 0, 0, 0xc232, 0xffff),
+ MSP_INSN (clrn, 0, 0, 0xc222, 0xffff),
+ MSP_INSN (bic, 1, 2, 0xc000, 0xf000),
+ MSP_INSN (bit, 1, 2, 0xb000, 0xf000),
+ MSP_INSN (dadc, 0, 1, 0xa300, 0xff30),
+ MSP_INSN (dadd, 1, 2, 0xa000, 0xf000),
+ MSP_INSN (tst, 0, 1, 0x9300, 0xff30),
+ MSP_INSN (cmp, 1, 2, 0x9000, 0xf000),
+ MSP_INSN (decd, 0, 1, 0x8320, 0xff30),
+ MSP_INSN (dec, 0, 1, 0x8310, 0xff30),
+ MSP_INSN (sub, 1, 2, 0x8000, 0xf000),
+ MSP_INSN (sbc, 0, 1, 0x7300, 0xff30),
+ MSP_INSN (subc, 1, 2, 0x7000, 0xf000),
+ MSP_INSN (adc, 0, 1, 0x6300, 0xff30),
+ MSP_INSN (rlc, 0, 2, 0x6000, 0xf000),
+ MSP_INSN (addc, 1, 2, 0x6000, 0xf000),
+ MSP_INSN (incd, 0, 1, 0x5320, 0xff30),
+ MSP_INSN (inc, 0, 1, 0x5310, 0xff30),
+ MSP_INSN (rla, 0, 2, 0x5000, 0xf000),
+ MSP_INSN (add, 1, 2, 0x5000, 0xf000),
+ MSP_INSN (nop, 0, 0, 0x4303, 0xffff),
+ MSP_INSN (clr, 0, 1, 0x4300, 0xff30),
+ MSP_INSN (ret, 0, 0, 0x4130, 0xff30),
+ MSP_INSN (pop, 0, 1, 0x4130, 0xff30),
+ MSP_INSN (br, 0, 3, 0x4000, 0xf000),
+ MSP_INSN (mov, 1, 2, 0x4000, 0xf000),
+ MSP_INSN (jmp, 3, 1, 0x3c00, 0xfc00),
+ MSP_INSN (jl, 3, 1, 0x3800, 0xfc00),
+ MSP_INSN (jge, 3, 1, 0x3400, 0xfc00),
+ MSP_INSN (jn, 3, 1, 0x3000, 0xfc00),
+ MSP_INSN (jc, 3, 1, 0x2c00, 0xfc00),
+ MSP_INSN (jhs, 3, 1, 0x2c00, 0xfc00),
+ MSP_INSN (jnc, 3, 1, 0x2800, 0xfc00),
+ MSP_INSN (jlo, 3, 1, 0x2800, 0xfc00),
+ MSP_INSN (jz, 3, 1, 0x2400, 0xfc00),
+ MSP_INSN (jeq, 3, 1, 0x2400, 0xfc00),
+ MSP_INSN (jnz, 3, 1, 0x2000, 0xfc00),
+ MSP_INSN (jne, 3, 1, 0x2000, 0xfc00),
+ MSP_INSN (reti, 2, 0, 0x1300, 0xffc0),
+ MSP_INSN (call, 2, 1, 0x1280, 0xffc0),
+ MSP_INSN (push, 2, 1, 0x1200, 0xff80),
+ MSP_INSN (sxt, 2, 1, 0x1180, 0xffc0),
+ MSP_INSN (rra, 2, 1, 0x1100, 0xff80),
+ MSP_INSN (swpb, 2, 1, 0x1080, 0xffc0),
+ MSP_INSN (rrc, 2, 1, 0x1000, 0xff80),
+ /* Simple polymorphs. */
+ MSP_INSN (beq, 4, 0, 0, 0xffff),
+ MSP_INSN (bne, 4, 1, 0, 0xffff),
+ MSP_INSN (blt, 4, 2, 0, 0xffff),
+ MSP_INSN (bltu, 4, 3, 0, 0xffff),
+ MSP_INSN (bge, 4, 4, 0, 0xffff),
+ MSP_INSN (bgeu, 4, 5, 0, 0xffff),
+ MSP_INSN (bltn, 4, 6, 0, 0xffff),
+ MSP_INSN (jump, 4, 7, 0, 0xffff),
+ /* Long polymorphs. */
+ MSP_INSN (bgt, 5, 0, 0, 0xffff),
+ MSP_INSN (bgtu, 5, 1, 0, 0xffff),
+ MSP_INSN (bleu, 5, 2, 0, 0xffff),
+ MSP_INSN (ble, 5, 3, 0, 0xffff),
+
+ /* End of instruction set. */
+ { NULL, 0, 0, 0, 0 }
+};
+
+/* GCC uses the some condition codes which we'll
+ implement as new polymorph instructions.
+
+ COND EXPL SHORT JUMP LONG JUMP
+ ===============================================
+ eq == jeq jne +4; br lab
+ ne != jne jeq +4; br lab
+
+ ltn honours no-overflow flag
+ ltn < jn jn +2; jmp +4; br lab
+
+ lt < jl jge +4; br lab
+ ltu < jlo lhs +4; br lab
+ le <= see below
+ leu <= see below
+
+ gt > see below
+ gtu > see below
+ ge >= jge jl +4; br lab
+ geu >= jhs jlo +4; br lab
+ ===============================================
+
+ Therefore, new opcodes are (BranchEQ -> beq; and so on...)
+ beq,bne,blt,bltn,bltu,bge,bgeu
+ 'u' means unsigned compares
+
+ Also, we add 'jump' instruction:
+ jump UNCOND -> jmp br lab
+
+ They will have fmt == 4, and insn_opnumb == number of instruction. */
+
+struct rcodes_s
+{
+ char * name;
+ int index; /* Corresponding insn_opnumb. */
+ int sop; /* Opcode if jump length is short. */
+ long lpos; /* Label position. */
+ long lop0; /* Opcode 1 _word_ (16 bits). */
+ long lop1; /* Opcode second word. */
+ long lop2; /* Opcode third word. */
+};
+
+#define MSP430_RLC(n,i,sop,o1) \
+ {#n, i, sop, 2, (o1 + 2), 0x4010, 0}
+
+static struct rcodes_s msp430_rcodes[] =
+{
+ MSP430_RLC (beq, 0, 0x2400, 0x2000),
+ MSP430_RLC (bne, 1, 0x2000, 0x2400),
+ MSP430_RLC (blt, 2, 0x3800, 0x3400),
+ MSP430_RLC (bltu, 3, 0x2800, 0x2c00),
+ MSP430_RLC (bge, 4, 0x3400, 0x3800),
+ MSP430_RLC (bgeu, 5, 0x2c00, 0x2800),
+ {"bltn", 6, 0x3000, 3, 0x3000 + 1, 0x3c00 + 2,0x4010},
+ {"jump", 7, 0x3c00, 1, 0x4010, 0, 0},
+ {0,0,0,0,0,0,0}
+};
+#undef MSP430_RLC
+
+
+/* More difficult than above and they have format 5.
+
+ COND EXPL SHORT LONG
+ =================================================================
+ gt > jeq +2; jge label jeq +6; jl +4; br label
+ gtu > jeq +2; jhs label jeq +6; jlo +4; br label
+ leu <= jeq label; jlo label jeq +2; jhs +4; br label
+ le <= jeq label; jl label jeq +2; jge +4; br label
+ ================================================================= */
+
+struct hcodes_s
+{
+ char * name;
+ int index; /* Corresponding insn_opnumb. */
+ int tlab; /* Number of labels in short mode. */
+ int op0; /* Opcode for first word of short jump. */
+ int op1; /* Opcode for second word of short jump. */
+ int lop0; /* Opcodes for long jump mode. */
+ int lop1;
+ int lop2;
+};
+
+static struct hcodes_s msp430_hcodes[] =
+{
+ {"bgt", 0, 1, 0x2401, 0x3400, 0x2403, 0x3802, 0x4010 },
+ {"bgtu", 1, 1, 0x2401, 0x2c00, 0x2403, 0x2802, 0x4010 },
+ {"bleu", 2, 2, 0x2400, 0x2800, 0x2401, 0x2c02, 0x4010 },
+ {"ble", 3, 2, 0x2400, 0x3800, 0x2401, 0x3402, 0x4010 },
+ {0,0,0,0,0,0,0,0}
+};
+
+#endif
diff --git a/include/opcode/np1.h b/include/opcode/np1.h
new file mode 100644
index 000000000..c3f7e293f
--- /dev/null
+++ b/include/opcode/np1.h
@@ -0,0 +1,422 @@
+/* Print GOULD NPL instructions for GDB, the GNU debugger.
+ Copyright 1986, 1987, 1989, 1991 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+GDB is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GDB is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GDB; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+struct gld_opcode
+{
+ char *name;
+ unsigned long opcode;
+ unsigned long mask;
+ char *args;
+ int length;
+};
+
+/* We store four bytes of opcode for all opcodes because that
+ is the most any of them need. The actual length of an instruction
+ is always at least 2 bytes, and at most four. The length of the
+ instruction is based on the opcode.
+
+ The mask component is a mask saying which bits must match
+ particular opcode in order for an instruction to be an instance
+ of that opcode.
+
+ The args component is a string containing characters
+ that are used to format the arguments to the instruction. */
+
+/* Kinds of operands:
+ r Register in first field
+ R Register in second field
+ b Base register in first field
+ B Base register in second field
+ v Vector register in first field
+ V Vector register in first field
+ A Optional address register (base register)
+ X Optional index register
+ I Immediate data (16bits signed)
+ O Offset field (16bits signed)
+ h Offset field (15bits signed)
+ d Offset field (14bits signed)
+ S Shift count field
+
+ any other characters are printed as is...
+*/
+
+/* The assembler requires that this array be sorted as follows:
+ all instances of the same mnemonic must be consecutive.
+ All instances of the same mnemonic with the same number of operands
+ must be consecutive.
+ */
+struct gld_opcode gld_opcodes[] =
+{
+{ "lb", 0xb4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lnb", 0xb8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lbs", 0xec080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lh", 0xb4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "lnh", 0xb8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "lw", 0xb4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lnw", 0xb8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "ld", 0xb4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "lnd", 0xb8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "li", 0xf8000000, 0xfc7f0000, "r,I", 4 },
+{ "lpa", 0x50080000, 0xfc080000, "r,xOA,X", 4 },
+{ "la", 0x50000000, 0xfc080000, "r,xOA,X", 4 },
+{ "labr", 0x58080000, 0xfc080000, "b,xOA,X", 4 },
+{ "lbp", 0x90080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lhp", 0x90000001, 0xfc080001, "r,xOA,X", 4 },
+{ "lwp", 0x90000000, 0xfc080000, "r,xOA,X", 4 },
+{ "ldp", 0x90000002, 0xfc080002, "r,xOA,X", 4 },
+{ "suabr", 0x58000000, 0xfc080000, "b,xOA,X", 4 },
+{ "lf", 0xbc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lfbr", 0xbc080000, 0xfc080000, "b,xOA,X", 4 },
+{ "lwbr", 0x5c000000, 0xfc080000, "b,xOA,X", 4 },
+{ "stb", 0xd4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "sth", 0xd4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "stw", 0xd4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "std", 0xd4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "stf", 0xdc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "stfbr", 0xdc080000, 0xfc080000, "b,xOA,X", 4 },
+{ "stwbr", 0x54000000, 0xfc080000, "b,xOA,X", 4 },
+{ "zmb", 0xd8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "zmh", 0xd8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "zmw", 0xd8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "zmd", 0xd8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "stbp", 0x94080000, 0xfc080000, "r,xOA,X", 4 },
+{ "sthp", 0x94000001, 0xfc080001, "r,xOA,X", 4 },
+{ "stwp", 0x94000000, 0xfc080000, "r,xOA,X", 4 },
+{ "stdp", 0x94000002, 0xfc080002, "r,xOA,X", 4 },
+{ "lil", 0xf80b0000, 0xfc7f0000, "r,D", 4 },
+{ "lwsl1", 0xec000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lwsl2", 0xfc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lwsl3", 0xfc080000, 0xfc080000, "r,xOA,X", 4 },
+
+{ "lvb", 0xb0080000, 0xfc080000, "v,xOA,X", 4 },
+{ "lvh", 0xb0000001, 0xfc080001, "v,xOA,X", 4 },
+{ "lvw", 0xb0000000, 0xfc080000, "v,xOA,X", 4 },
+{ "lvd", 0xb0000002, 0xfc080002, "v,xOA,X", 4 },
+{ "liv", 0x3c040000, 0xfc0f0000, "v,R", 2 },
+{ "livf", 0x3c080000, 0xfc0f0000, "v,R", 2 },
+{ "stvb", 0xd0080000, 0xfc080000, "v,xOA,X", 4 },
+{ "stvh", 0xd0000001, 0xfc080001, "v,xOA,X", 4 },
+{ "stvw", 0xd0000000, 0xfc080000, "v,xOA,X", 4 },
+{ "stvd", 0xd0000002, 0xfc080002, "v,xOA,X", 4 },
+
+{ "trr", 0x2c000000, 0xfc0f0000, "r,R", 2 },
+{ "trn", 0x2c040000, 0xfc0f0000, "r,R", 2 },
+{ "trnd", 0x2c0c0000, 0xfc0f0000, "r,R", 2 },
+{ "trabs", 0x2c010000, 0xfc0f0000, "r,R", 2 },
+{ "trabsd", 0x2c090000, 0xfc0f0000, "r,R", 2 },
+{ "trc", 0x2c030000, 0xfc0f0000, "r,R", 2 },
+{ "xcr", 0x28040000, 0xfc0f0000, "r,R", 2 },
+{ "cxcr", 0x2c060000, 0xfc0f0000, "r,R", 2 },
+{ "cxcrd", 0x2c0e0000, 0xfc0f0000, "r,R", 2 },
+{ "tbrr", 0x2c020000, 0xfc0f0000, "r,B", 2 },
+{ "trbr", 0x28030000, 0xfc0f0000, "b,R", 2 },
+{ "xcbr", 0x28020000, 0xfc0f0000, "b,B", 2 },
+{ "tbrbr", 0x28010000, 0xfc0f0000, "b,B", 2 },
+
+{ "trvv", 0x28050000, 0xfc0f0000, "v,V", 2 },
+{ "trvvn", 0x2c050000, 0xfc0f0000, "v,V", 2 },
+{ "trvvnd", 0x2c0d0000, 0xfc0f0000, "v,V", 2 },
+{ "trvab", 0x2c070000, 0xfc0f0000, "v,V", 2 },
+{ "trvabd", 0x2c0f0000, 0xfc0f0000, "v,V", 2 },
+{ "cmpv", 0x14060000, 0xfc0f0000, "v,V", 2 },
+{ "expv", 0x14070000, 0xfc0f0000, "v,V", 2 },
+{ "mrvvlt", 0x10030000, 0xfc0f0000, "v,V", 2 },
+{ "mrvvle", 0x10040000, 0xfc0f0000, "v,V", 2 },
+{ "mrvvgt", 0x14030000, 0xfc0f0000, "v,V", 2 },
+{ "mrvvge", 0x14040000, 0xfc0f0000, "v,V", 2 },
+{ "mrvveq", 0x10050000, 0xfc0f0000, "v,V", 2 },
+{ "mrvvne", 0x10050000, 0xfc0f0000, "v,V", 2 },
+{ "mrvrlt", 0x100d0000, 0xfc0f0000, "v,R", 2 },
+{ "mrvrle", 0x100e0000, 0xfc0f0000, "v,R", 2 },
+{ "mrvrgt", 0x140d0000, 0xfc0f0000, "v,R", 2 },
+{ "mrvrge", 0x140e0000, 0xfc0f0000, "v,R", 2 },
+{ "mrvreq", 0x100f0000, 0xfc0f0000, "v,R", 2 },
+{ "mrvrne", 0x140f0000, 0xfc0f0000, "v,R", 2 },
+{ "trvr", 0x140b0000, 0xfc0f0000, "r,V", 2 },
+{ "trrv", 0x140c0000, 0xfc0f0000, "v,R", 2 },
+
+{ "bu", 0x40000000, 0xff880000, "xOA,X", 4 },
+{ "bns", 0x70080000, 0xff880000, "xOA,X", 4 },
+{ "bnco", 0x70880000, 0xff880000, "xOA,X", 4 },
+{ "bge", 0x71080000, 0xff880000, "xOA,X", 4 },
+{ "bne", 0x71880000, 0xff880000, "xOA,X", 4 },
+{ "bunge", 0x72080000, 0xff880000, "xOA,X", 4 },
+{ "bunle", 0x72880000, 0xff880000, "xOA,X", 4 },
+{ "bgt", 0x73080000, 0xff880000, "xOA,X", 4 },
+{ "bnany", 0x73880000, 0xff880000, "xOA,X", 4 },
+{ "bs" , 0x70000000, 0xff880000, "xOA,X", 4 },
+{ "bco", 0x70800000, 0xff880000, "xOA,X", 4 },
+{ "blt", 0x71000000, 0xff880000, "xOA,X", 4 },
+{ "beq", 0x71800000, 0xff880000, "xOA,X", 4 },
+{ "buge", 0x72000000, 0xff880000, "xOA,X", 4 },
+{ "bult", 0x72800000, 0xff880000, "xOA,X", 4 },
+{ "ble", 0x73000000, 0xff880000, "xOA,X", 4 },
+{ "bany", 0x73800000, 0xff880000, "xOA,X", 4 },
+{ "brlnk", 0x44000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bib", 0x48000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bih", 0x48080000, 0xfc080000, "r,xOA,X", 4 },
+{ "biw", 0x4c000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bid", 0x4c080000, 0xfc080000, "r,xOA,X", 4 },
+{ "bivb", 0x60000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bivh", 0x60080000, 0xfc080000, "r,xOA,X", 4 },
+{ "bivw", 0x64000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bivd", 0x64080000, 0xfc080000, "r,xOA,X", 4 },
+{ "bvsb", 0x68000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bvsh", 0x68080000, 0xfc080000, "r,xOA,X", 4 },
+{ "bvsw", 0x6c000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bvsd", 0x6c080000, 0xfc080000, "r,xOA,X", 4 },
+
+{ "camb", 0x80080000, 0xfc080000, "r,xOA,X", 4 },
+{ "camh", 0x80000001, 0xfc080001, "r,xOA,X", 4 },
+{ "camw", 0x80000000, 0xfc080000, "r,xOA,X", 4 },
+{ "camd", 0x80000002, 0xfc080002, "r,xOA,X", 4 },
+{ "car", 0x10000000, 0xfc0f0000, "r,R", 2 },
+{ "card", 0x14000000, 0xfc0f0000, "r,R", 2 },
+{ "ci", 0xf8050000, 0xfc7f0000, "r,I", 4 },
+{ "chkbnd", 0x5c080000, 0xfc080000, "r,xOA,X", 4 },
+
+{ "cavv", 0x10010000, 0xfc0f0000, "v,V", 2 },
+{ "cavr", 0x10020000, 0xfc0f0000, "v,R", 2 },
+{ "cavvd", 0x10090000, 0xfc0f0000, "v,V", 2 },
+{ "cavrd", 0x100b0000, 0xfc0f0000, "v,R", 2 },
+
+{ "anmb", 0x84080000, 0xfc080000, "r,xOA,X", 4 },
+{ "anmh", 0x84000001, 0xfc080001, "r,xOA,X", 4 },
+{ "anmw", 0x84000000, 0xfc080000, "r,xOA,X", 4 },
+{ "anmd", 0x84000002, 0xfc080002, "r,xOA,X", 4 },
+{ "anr", 0x04000000, 0xfc0f0000, "r,R", 2 },
+{ "ani", 0xf8080000, 0xfc7f0000, "r,I", 4 },
+{ "ormb", 0xb8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "ormh", 0xb8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "ormw", 0xb8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "ormd", 0xb8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "orr", 0x08000000, 0xfc0f0000, "r,R", 2 },
+{ "oi", 0xf8090000, 0xfc7f0000, "r,I", 4 },
+{ "eomb", 0x8c080000, 0xfc080000, "r,xOA,X", 4 },
+{ "eomh", 0x8c000001, 0xfc080001, "r,xOA,X", 4 },
+{ "eomw", 0x8c000000, 0xfc080000, "r,xOA,X", 4 },
+{ "eomd", 0x8c000002, 0xfc080002, "r,xOA,X", 4 },
+{ "eor", 0x0c000000, 0xfc0f0000, "r,R", 2 },
+{ "eoi", 0xf80a0000, 0xfc7f0000, "r,I", 4 },
+
+{ "anvv", 0x04010000, 0xfc0f0000, "v,V", 2 },
+{ "anvr", 0x04020000, 0xfc0f0000, "v,R", 2 },
+{ "orvv", 0x08010000, 0xfc0f0000, "v,V", 2 },
+{ "orvr", 0x08020000, 0xfc0f0000, "v,R", 2 },
+{ "eovv", 0x0c010000, 0xfc0f0000, "v,V", 2 },
+{ "eovr", 0x0c020000, 0xfc0f0000, "v,R", 2 },
+
+{ "sacz", 0x100c0000, 0xfc0f0000, "r,R", 2 },
+{ "sla", 0x1c400000, 0xfc600000, "r,S", 2 },
+{ "sll", 0x1c600000, 0xfc600000, "r,S", 2 },
+{ "slc", 0x24400000, 0xfc600000, "r,S", 2 },
+{ "slad", 0x20400000, 0xfc600000, "r,S", 2 },
+{ "slld", 0x20600000, 0xfc600000, "r,S", 2 },
+{ "sra", 0x1c000000, 0xfc600000, "r,S", 2 },
+{ "srl", 0x1c200000, 0xfc600000, "r,S", 2 },
+{ "src", 0x24000000, 0xfc600000, "r,S", 2 },
+{ "srad", 0x20000000, 0xfc600000, "r,S", 2 },
+{ "srld", 0x20200000, 0xfc600000, "r,S", 2 },
+{ "sda", 0x3c030000, 0xfc0f0000, "r,R", 2 },
+{ "sdl", 0x3c020000, 0xfc0f0000, "r,R", 2 },
+{ "sdc", 0x3c010000, 0xfc0f0000, "r,R", 2 },
+{ "sdad", 0x3c0b0000, 0xfc0f0000, "r,R", 2 },
+{ "sdld", 0x3c0a0000, 0xfc0f0000, "r,R", 2 },
+
+{ "svda", 0x3c070000, 0xfc0f0000, "v,R", 2 },
+{ "svdl", 0x3c060000, 0xfc0f0000, "v,R", 2 },
+{ "svdc", 0x3c050000, 0xfc0f0000, "v,R", 2 },
+{ "svdad", 0x3c0e0000, 0xfc0f0000, "v,R", 2 },
+{ "svdld", 0x3c0d0000, 0xfc0f0000, "v,R", 2 },
+
+{ "sbm", 0xac080000, 0xfc080000, "f,xOA,X", 4 },
+{ "zbm", 0xac000000, 0xfc080000, "f,xOA,X", 4 },
+{ "tbm", 0xa8080000, 0xfc080000, "f,xOA,X", 4 },
+{ "incmb", 0xa0000000, 0xfc080000, "xOA,X", 4 },
+{ "incmh", 0xa0080000, 0xfc080000, "xOA,X", 4 },
+{ "incmw", 0xa4000000, 0xfc080000, "xOA,X", 4 },
+{ "incmd", 0xa4080000, 0xfc080000, "xOA,X", 4 },
+{ "sbmd", 0x7c080000, 0xfc080000, "r,xOA,X", 4 },
+{ "zbmd", 0x7c000000, 0xfc080000, "r,xOA,X", 4 },
+{ "tbmd", 0x78080000, 0xfc080000, "r,xOA,X", 4 },
+
+{ "ssm", 0x9c080000, 0xfc080000, "f,xOA,X", 4 },
+{ "zsm", 0x9c000000, 0xfc080000, "f,xOA,X", 4 },
+{ "tsm", 0x98080000, 0xfc080000, "f,xOA,X", 4 },
+
+{ "admb", 0xc8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "admh", 0xc8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "admw", 0xc8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "admd", 0xc8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "adr", 0x38000000, 0xfc0f0000, "r,R", 2 },
+{ "armb", 0xe8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "armh", 0xe8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "armw", 0xe8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "armd", 0xe8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "adi", 0xf8010000, 0xfc0f0000, "r,I", 4 },
+{ "sumb", 0xcc080000, 0xfc080000, "r,xOA,X", 4 },
+{ "sumh", 0xcc000001, 0xfc080001, "r,xOA,X", 4 },
+{ "sumw", 0xcc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "sumd", 0xcc000002, 0xfc080002, "r,xOA,X", 4 },
+{ "sur", 0x3c000000, 0xfc0f0000, "r,R", 2 },
+{ "sui", 0xf8020000, 0xfc0f0000, "r,I", 4 },
+{ "mpmb", 0xc0080000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpmh", 0xc0000001, 0xfc080001, "r,xOA,X", 4 },
+{ "mpmw", 0xc0000000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpr", 0x38020000, 0xfc0f0000, "r,R", 2 },
+{ "mprd", 0x3c0f0000, 0xfc0f0000, "r,R", 2 },
+{ "mpi", 0xf8030000, 0xfc0f0000, "r,I", 4 },
+{ "dvmb", 0xc4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "dvmh", 0xc4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "dvmw", 0xc4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "dvr", 0x380a0000, 0xfc0f0000, "r,R", 2 },
+{ "dvi", 0xf8040000, 0xfc0f0000, "r,I", 4 },
+{ "exs", 0x38080000, 0xfc0f0000, "r,R", 2 },
+
+{ "advv", 0x30000000, 0xfc0f0000, "v,V", 2 },
+{ "advvd", 0x30080000, 0xfc0f0000, "v,V", 2 },
+{ "adrv", 0x34000000, 0xfc0f0000, "v,R", 2 },
+{ "adrvd", 0x34080000, 0xfc0f0000, "v,R", 2 },
+{ "suvv", 0x30010000, 0xfc0f0000, "v,V", 2 },
+{ "suvvd", 0x30090000, 0xfc0f0000, "v,V", 2 },
+{ "surv", 0x34010000, 0xfc0f0000, "v,R", 2 },
+{ "survd", 0x34090000, 0xfc0f0000, "v,R", 2 },
+{ "mpvv", 0x30020000, 0xfc0f0000, "v,V", 2 },
+{ "mprv", 0x34020000, 0xfc0f0000, "v,R", 2 },
+
+{ "adfw", 0xe0080000, 0xfc080000, "r,xOA,X", 4 },
+{ "adfd", 0xe0080002, 0xfc080002, "r,xOA,X", 4 },
+{ "adrfw", 0x38010000, 0xfc0f0000, "r,R", 2 },
+{ "adrfd", 0x38090000, 0xfc0f0000, "r,R", 2 },
+{ "surfw", 0xe0000000, 0xfc080000, "r,xOA,X", 4 },
+{ "surfd", 0xe0000002, 0xfc080002, "r,xOA,X", 4 },
+{ "surfw", 0x38030000, 0xfc0f0000, "r,R", 2 },
+{ "surfd", 0x380b0000, 0xfc0f0000, "r,R", 2 },
+{ "mpfw", 0xe4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpfd", 0xe4080002, 0xfc080002, "r,xOA,X", 4 },
+{ "mprfw", 0x38060000, 0xfc0f0000, "r,R", 2 },
+{ "mprfd", 0x380e0000, 0xfc0f0000, "r,R", 2 },
+{ "rfw", 0xe4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "rfd", 0xe4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "rrfw", 0x0c0e0000, 0xfc0f0000, "r", 2 },
+{ "rrfd", 0x0c0f0000, 0xfc0f0000, "r", 2 },
+
+{ "advvfw", 0x30040000, 0xfc0f0000, "v,V", 2 },
+{ "advvfd", 0x300c0000, 0xfc0f0000, "v,V", 2 },
+{ "adrvfw", 0x34040000, 0xfc0f0000, "v,R", 2 },
+{ "adrvfd", 0x340c0000, 0xfc0f0000, "v,R", 2 },
+{ "suvvfw", 0x30050000, 0xfc0f0000, "v,V", 2 },
+{ "suvvfd", 0x300d0000, 0xfc0f0000, "v,V", 2 },
+{ "survfw", 0x34050000, 0xfc0f0000, "v,R", 2 },
+{ "survfd", 0x340d0000, 0xfc0f0000, "v,R", 2 },
+{ "mpvvfw", 0x30060000, 0xfc0f0000, "v,V", 2 },
+{ "mpvvfd", 0x300e0000, 0xfc0f0000, "v,V", 2 },
+{ "mprvfw", 0x34060000, 0xfc0f0000, "v,R", 2 },
+{ "mprvfd", 0x340e0000, 0xfc0f0000, "v,R", 2 },
+{ "rvfw", 0x30070000, 0xfc0f0000, "v", 2 },
+{ "rvfd", 0x300f0000, 0xfc0f0000, "v", 2 },
+
+{ "fltw", 0x38070000, 0xfc0f0000, "r,R", 2 },
+{ "fltd", 0x380f0000, 0xfc0f0000, "r,R", 2 },
+{ "fixw", 0x38050000, 0xfc0f0000, "r,R", 2 },
+{ "fixd", 0x380d0000, 0xfc0f0000, "r,R", 2 },
+{ "cfpds", 0x3c090000, 0xfc0f0000, "r,R", 2 },
+
+{ "fltvw", 0x080d0000, 0xfc0f0000, "v,V", 2 },
+{ "fltvd", 0x080f0000, 0xfc0f0000, "v,V", 2 },
+{ "fixvw", 0x080c0000, 0xfc0f0000, "v,V", 2 },
+{ "fixvd", 0x080e0000, 0xfc0f0000, "v,V", 2 },
+{ "cfpvds", 0x0c0d0000, 0xfc0f0000, "v,V", 2 },
+
+{ "orvrn", 0x000a0000, 0xfc0f0000, "r,V", 2 },
+{ "andvrn", 0x00080000, 0xfc0f0000, "r,V", 2 },
+{ "frsteq", 0x04090000, 0xfc0f0000, "r,V", 2 },
+{ "sigma", 0x0c080000, 0xfc0f0000, "r,V", 2 },
+{ "sigmad", 0x0c0a0000, 0xfc0f0000, "r,V", 2 },
+{ "sigmf", 0x08080000, 0xfc0f0000, "r,V", 2 },
+{ "sigmfd", 0x080a0000, 0xfc0f0000, "r,V", 2 },
+{ "prodf", 0x04080000, 0xfc0f0000, "r,V", 2 },
+{ "prodfd", 0x040a0000, 0xfc0f0000, "r,V", 2 },
+{ "maxv", 0x10080000, 0xfc0f0000, "r,V", 2 },
+{ "maxvd", 0x100a0000, 0xfc0f0000, "r,V", 2 },
+{ "minv", 0x14080000, 0xfc0f0000, "r,V", 2 },
+{ "minvd", 0x140a0000, 0xfc0f0000, "r,V", 2 },
+
+{ "lpsd", 0xf0000000, 0xfc080000, "xOA,X", 4 },
+{ "ldc", 0xf0080000, 0xfc080000, "xOA,X", 4 },
+{ "spm", 0x040c0000, 0xfc0f0000, "r", 2 },
+{ "rpm", 0x040d0000, 0xfc0f0000, "r", 2 },
+{ "tritr", 0x00070000, 0xfc0f0000, "r", 2 },
+{ "trrit", 0x00060000, 0xfc0f0000, "r", 2 },
+{ "rpswt", 0x04080000, 0xfc0f0000, "r", 2 },
+{ "exr", 0xf8070000, 0xfc0f0000, "", 4 },
+{ "halt", 0x00000000, 0xfc0f0000, "", 2 },
+{ "wait", 0x00010000, 0xfc0f0000, "", 2 },
+{ "nop", 0x00020000, 0xfc0f0000, "", 2 },
+{ "eiae", 0x00030000, 0xfc0f0000, "", 2 },
+{ "efae", 0x000d0000, 0xfc0f0000, "", 2 },
+{ "diae", 0x000e0000, 0xfc0f0000, "", 2 },
+{ "dfae", 0x000f0000, 0xfc0f0000, "", 2 },
+{ "spvc", 0xf8060000, 0xfc0f0000, "r,T,N", 4 },
+{ "rdsts", 0x00090000, 0xfc0f0000, "r", 2 },
+{ "setcpu", 0x000c0000, 0xfc0f0000, "r", 2 },
+{ "cmc", 0x000b0000, 0xfc0f0000, "r", 2 },
+{ "trrcu", 0x00040000, 0xfc0f0000, "r", 2 },
+{ "attnio", 0x00050000, 0xfc0f0000, "", 2 },
+{ "fudit", 0x28080000, 0xfc0f0000, "", 2 },
+{ "break", 0x28090000, 0xfc0f0000, "", 2 },
+{ "frzss", 0x280a0000, 0xfc0f0000, "", 2 },
+{ "ripi", 0x04040000, 0xfc0f0000, "r,R", 2 },
+{ "xcp", 0x04050000, 0xfc0f0000, "r", 2 },
+{ "block", 0x04060000, 0xfc0f0000, "", 2 },
+{ "unblock", 0x04070000, 0xfc0f0000, "", 2 },
+{ "trsc", 0x08060000, 0xfc0f0000, "r,R", 2 },
+{ "tscr", 0x08070000, 0xfc0f0000, "r,R", 2 },
+{ "fq", 0x04080000, 0xfc0f0000, "r", 2 },
+{ "flupte", 0x2c080000, 0xfc0f0000, "r", 2 },
+{ "rviu", 0x040f0000, 0xfc0f0000, "", 2 },
+{ "ldel", 0x280c0000, 0xfc0f0000, "r,R", 2 },
+{ "ldu", 0x280d0000, 0xfc0f0000, "r,R", 2 },
+{ "stdecc", 0x280b0000, 0xfc0f0000, "r,R", 2 },
+{ "trpc", 0x08040000, 0xfc0f0000, "r", 2 },
+{ "tpcr", 0x08050000, 0xfc0f0000, "r", 2 },
+{ "ghalt", 0x0c050000, 0xfc0f0000, "r", 2 },
+{ "grun", 0x0c040000, 0xfc0f0000, "", 2 },
+{ "tmpr", 0x2c0a0000, 0xfc0f0000, "r,R", 2 },
+{ "trmp", 0x2c0b0000, 0xfc0f0000, "r,R", 2 },
+
+{ "trrve", 0x28060000, 0xfc0f0000, "r", 2 },
+{ "trver", 0x28070000, 0xfc0f0000, "r", 2 },
+{ "trvlr", 0x280f0000, 0xfc0f0000, "r", 2 },
+
+{ "linkfl", 0x18000000, 0xfc0f0000, "r,R", 2 },
+{ "linkbl", 0x18020000, 0xfc0f0000, "r,R", 2 },
+{ "linkfp", 0x18010000, 0xfc0f0000, "r,R", 2 },
+{ "linkbp", 0x18030000, 0xfc0f0000, "r,R", 2 },
+{ "linkpl", 0x18040000, 0xfc0f0000, "r,R", 2 },
+{ "ulinkl", 0x18080000, 0xfc0f0000, "r,R", 2 },
+{ "ulinkp", 0x18090000, 0xfc0f0000, "r,R", 2 },
+{ "ulinktl", 0x180a0000, 0xfc0f0000, "r,R", 2 },
+{ "ulinktp", 0x180b0000, 0xfc0f0000, "r,R", 2 },
+};
+
+int numopcodes = sizeof(gld_opcodes) / sizeof(gld_opcodes[0]);
+
+struct gld_opcode *endop = gld_opcodes + sizeof(gld_opcodes) /
+ sizeof(gld_opcodes[0]);
diff --git a/include/opcode/ns32k.h b/include/opcode/ns32k.h
new file mode 100644
index 000000000..68a0dbaa4
--- /dev/null
+++ b/include/opcode/ns32k.h
@@ -0,0 +1,487 @@
+/* ns32k-opcode.h -- Opcode table for National Semi 32k processor
+ Copyright 1987, 1991, 1994, 2002 Free Software Foundation, Inc.
+
+This file is part of GAS, the GNU Assembler.
+
+GAS is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GAS is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GAS; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+#ifdef SEQUENT_COMPATABILITY
+#define DEF_MODEC 20
+#define DEF_MODEL 21
+#endif
+
+#ifndef DEF_MODEC
+#define DEF_MODEC 20
+#endif
+
+#ifndef DEF_MODEL
+#define DEF_MODEL 20
+#endif
+/*
+ After deciding the instruction entry (via hash.c) the instruction parser
+ will try to match the operands after the instruction to the required set
+ given in the entry operandfield. Every operand will result in a change in
+ the opcode or the addition of data to the opcode.
+ The operands in the source instruction are checked for inconsistent
+ semantics.
+
+ F : 32 bit float general form
+ L : 64 bit float "
+ B : byte "
+ W : word "
+ D : double-word "
+ A : double-word gen-address-form ie no regs, no immediate
+ I : integer writeable gen int except immediate (A + reg)
+ Z : floating writeable gen float except immediate (Z + freg)
+ d : displacement
+ b : displacement - pc relative addressing acb
+ p : displacement - pc relative addressing br bcond bsr cxp
+ q : quick
+ i : immediate (8 bits)
+ This is not a standard ns32k operandtype, it is used to build
+ instructions like svc arg1,arg2
+ Svc is the instruction SuperVisorCall and is sometimes used to
+ call OS-routines from usermode. Some args might be handy!
+ r : register number (3 bits)
+ O : setcfg instruction optionslist
+ C : cinv instruction optionslist
+ S : stringinstruction optionslist
+ U : registerlist save,enter
+ u : registerlist restore,exit
+ M : mmu register
+ P : cpu register
+ g : 3:rd operand of inss or exts instruction
+ G : 4:th operand of inss or exts instruction
+ Those operands are encoded in the same byte.
+ This byte is placed last in the instruction.
+ f : operand of sfsr
+ H : sequent-hack for bsr (Warning)
+
+column 1 instructions
+ 2 number of bits in opcode.
+ 3 number of bits in opcode explicitly
+ determined by the instruction type.
+ 4 opcodeseed, the number we build our opcode
+ from.
+ 5 operandtypes, used by operandparser.
+ 6 size in bytes of immediate
+*/
+struct ns32k_opcode {
+ const char *name;
+ unsigned char opcode_id_size; /* not used by the assembler */
+ unsigned char opcode_size;
+ unsigned long opcode_seed;
+ const char *operands;
+ unsigned char im_size; /* not used by dissassembler */
+ const char *default_args; /* default to those args when none given */
+ char default_modec; /* default to this addr-mode when ambigous
+ ie when the argument of a general addr-mode
+ is a plain constant */
+ char default_model; /* is a plain label */
+};
+
+#ifdef comment
+/* This section was from the gdb version of this file. */
+
+#ifndef ns32k_opcodeT
+#define ns32k_opcodeT int
+#endif /* no ns32k_opcodeT */
+
+struct not_wot /* ns32k opcode table: wot to do with this */
+ /* particular opcode */
+{
+ int obits; /* number of opcode bits */
+ int ibits; /* number of instruction bits */
+ ns32k_opcodeT code; /* op-code (may be > 8 bits!) */
+ const char *args; /* how to compile said opcode */
+};
+
+struct not /* ns32k opcode text */
+{
+ const char *name; /* opcode name: lowercase string [key] */
+ struct not_wot detail; /* rest of opcode table [datum] */
+};
+
+/* Instructions look like this:
+
+ basic instruction--1, 2, or 3 bytes
+ index byte for operand A, if operand A is indexed--1 byte
+ index byte for operand B, if operand B is indexed--1 byte
+ addressing extension for operand A
+ addressing extension for operand B
+ implied operands
+
+ Operand A is the operand listed first in the following opcode table.
+ Operand B is the operand listed second in the following opcode table.
+ All instructions have at most 2 general operands, so this is enough.
+ The implied operands are associated with operands other than A and B.
+
+ Each operand has a digit and a letter.
+
+ The digit gives the position in the assembly language. The letter,
+ one of the following, tells us what kind of operand it is. */
+
+/* F : 32 bit float
+ * L : 64 bit float
+ * B : byte
+ * W : word
+ * D : double-word
+ * I : integer not immediate
+ * Z : floating not immediate
+ * d : displacement
+ * q : quick
+ * i : immediate (8 bits)
+ * r : register number (3 bits)
+ * p : displacement - pc relative addressing
+*/
+
+
+#endif /* comment */
+
+static const struct ns32k_opcode ns32k_opcodes[]=
+{
+ { "absf", 14,24, 0x35be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "absl", 14,24, 0x34be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "absb", 14,24, 0x304e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "absw", 14,24, 0x314e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "absd", 14,24, 0x334e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "acbb", 7,16, 0x4c, "2I1q3p", 1, "", DEF_MODEC,DEF_MODEL },
+ { "acbw", 7,16, 0x4d, "2I1q3p", 2, "", DEF_MODEC,DEF_MODEL },
+ { "acbd", 7,16, 0x4f, "2I1q3p", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addf", 14,24, 0x01be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addl", 14,24, 0x00be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "addb", 6,16, 0x00, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "addw", 6,16, 0x01, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "addd", 6,16, 0x03, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addcb", 6,16, 0x10, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "addcw", 6,16, 0x11, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "addcd", 6,16, 0x13, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addpb", 14,24, 0x3c4e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "addpw", 14,24, 0x3d4e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "addpd", 14,24, 0x3f4e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addqb", 7,16, 0x0c, "2I1q", 1, "", DEF_MODEC,DEF_MODEL },
+ { "addqw", 7,16, 0x0d, "2I1q", 2, "", DEF_MODEC,DEF_MODEL },
+ { "addqd", 7,16, 0x0f, "2I1q", 4, "", DEF_MODEC,DEF_MODEL },
+ { "addr", 6,16, 0x27, "1A2I", 4, "", 21,21 },
+ { "adjspb", 11,16, 0x057c, "1B", 1, "", DEF_MODEC,DEF_MODEL },
+ { "adjspw", 11,16, 0x057d, "1W", 2, "", DEF_MODEC,DEF_MODEL },
+ { "adjspd", 11,16, 0x057f, "1D", 4, "", DEF_MODEC,DEF_MODEL },
+ { "andb", 6,16, 0x28, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "andw", 6,16, 0x29, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "andd", 6,16, 0x2b, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "ashb", 14,24, 0x044e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "ashw", 14,24, 0x054e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "ashd", 14,24, 0x074e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "beq", 8,8, 0x0a, "1p", 0, "", 21,21 },
+ { "bne", 8,8, 0x1a, "1p", 0, "", 21,21 },
+ { "bcs", 8,8, 0x2a, "1p", 0, "", 21,21 },
+ { "bcc", 8,8, 0x3a, "1p", 0, "", 21,21 },
+ { "bhi", 8,8, 0x4a, "1p", 0, "", 21,21 },
+ { "bls", 8,8, 0x5a, "1p", 0, "", 21,21 },
+ { "bgt", 8,8, 0x6a, "1p", 0, "", 21,21 },
+ { "ble", 8,8, 0x7a, "1p", 0, "", 21,21 },
+ { "bfs", 8,8, 0x8a, "1p", 0, "", 21,21 },
+ { "bfc", 8,8, 0x9a, "1p", 0, "", 21,21 },
+ { "blo", 8,8, 0xaa, "1p", 0, "", 21,21 },
+ { "bhs", 8,8, 0xba, "1p", 0, "", 21,21 },
+ { "blt", 8,8, 0xca, "1p", 0, "", 21,21 },
+ { "bge", 8,8, 0xda, "1p", 0, "", 21,21 },
+ { "but", 8,8, 0xea, "1p", 0, "", 21,21 },
+ { "buf", 8,8, 0xfa, "1p", 0, "", 21,21 },
+ { "bicb", 6,16, 0x08, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "bicw", 6,16, 0x09, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "bicd", 6,16, 0x0b, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "bicpsrb", 11,16, 0x17c, "1B", 1, "", DEF_MODEC,DEF_MODEL },
+ { "bicpsrw", 11,16, 0x17d, "1W", 2, "", DEF_MODEC,DEF_MODEL },
+ { "bispsrb", 11,16, 0x37c, "1B", 1, "", DEF_MODEC,DEF_MODEL },
+ { "bispsrw", 11,16, 0x37d, "1W", 2, "", DEF_MODEC,DEF_MODEL },
+ { "bpt", 8,8, 0xf2, "", 0, "", DEF_MODEC,DEF_MODEL },
+ { "br", 8,8, 0xea, "1p", 0, "", 21,21 },
+#ifdef SEQUENT_COMPATABILITY
+ { "bsr", 8,8, 0x02, "1H", 0, "", 21,21 },
+#else
+ { "bsr", 8,8, 0x02, "1p", 0, "", 21,21 },
+#endif
+ { "caseb", 11,16, 0x77c, "1B", 1, "", DEF_MODEC,DEF_MODEL },
+ { "casew", 11,16, 0x77d, "1W", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cased", 11,16, 0x77f, "1D", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cbitb", 14,24, 0x084e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "cbitw", 14,24, 0x094e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cbitd", 14,24, 0x0b4e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cbitib", 14,24, 0x0c4e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "cbitiw", 14,24, 0x0d4e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cbitid", 14,24, 0x0f4e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "checkb", 11,24, 0x0ee, "2A3B1r", 1, "", DEF_MODEC,DEF_MODEL },
+ { "checkw", 11,24, 0x1ee, "2A3W1r", 2, "", DEF_MODEC,DEF_MODEL },
+ { "checkd", 11,24, 0x3ee, "2A3D1r", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cinv", 14,24, 0x271e, "2D1C", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cmpf", 14,24, 0x09be, "1F2F", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cmpl", 14,24, 0x08be, "1L2L", 8, "", DEF_MODEC,DEF_MODEL },
+ { "cmpb", 6,16, 0x04, "1B2B", 1, "", DEF_MODEC,DEF_MODEL },
+ { "cmpw", 6,16, 0x05, "1W2W", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cmpd", 6,16, 0x07, "1D2D", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cmpmb", 14,24, 0x04ce, "1A2A3b", 1, "", DEF_MODEC,DEF_MODEL },
+ { "cmpmw", 14,24, 0x05ce, "1A2A3b", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cmpmd", 14,24, 0x07ce, "1A2A3b", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cmpqb", 7,16, 0x1c, "2B1q", 1, "", DEF_MODEC,DEF_MODEL },
+ { "cmpqw", 7,16, 0x1d, "2W1q", 2, "", DEF_MODEC,DEF_MODEL },
+ { "cmpqd", 7,16, 0x1f, "2D1q", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cmpsb", 16,24, 0x040e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "cmpsw", 16,24, 0x050e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "cmpsd", 16,24, 0x070e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "cmpst", 16,24, 0x840e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "comb", 14,24, 0x344e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "comw", 14,24, 0x354e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "comd", 14,24, 0x374e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cvtp", 11,24, 0x036e, "2A3D1r", 4, "", DEF_MODEC,DEF_MODEL },
+ { "cxp", 8,8, 0x22, "1p", 0, "", 21,21 },
+ { "cxpd", 11,16, 0x07f, "1A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "deib", 14,24, 0x2cce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "deiw", 14,24, 0x2dce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "deid", 14,24, 0x2fce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "dia", 8,8, 0xc2, "", 1, "", DEF_MODEC,DEF_MODEL },
+ { "divf", 14,24, 0x21be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "divl", 14,24, 0x20be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "divb", 14,24, 0x3cce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "divw", 14,24, 0x3dce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "divd", 14,24, 0x3fce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "enter", 8,8, 0x82, "1U2d", 0, "", DEF_MODEC,DEF_MODEL },
+ { "exit", 8,8, 0x92, "1u", 0, "", DEF_MODEC,DEF_MODEL },
+ { "extb", 11,24, 0x02e, "2I3B1r4d", 1, "", DEF_MODEC,DEF_MODEL },
+ { "extw", 11,24, 0x12e, "2I3W1r4d", 2, "", DEF_MODEC,DEF_MODEL },
+ { "extd", 11,24, 0x32e, "2I3D1r4d", 4, "", DEF_MODEC,DEF_MODEL },
+ { "extsb", 14,24, 0x0cce, "1I2I4G3g", 1, "", DEF_MODEC,DEF_MODEL },
+ { "extsw", 14,24, 0x0dce, "1I2I4G3g", 2, "", DEF_MODEC,DEF_MODEL },
+ { "extsd", 14,24, 0x0fce, "1I2I4G3g", 4, "", DEF_MODEC,DEF_MODEL },
+ { "ffsb", 14,24, 0x046e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "ffsw", 14,24, 0x056e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "ffsd", 14,24, 0x076e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "flag", 8,8, 0xd2, "", 0, "", DEF_MODEC,DEF_MODEL },
+ { "floorfb", 14,24, 0x3c3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "floorfw", 14,24, 0x3d3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "floorfd", 14,24, 0x3f3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "floorlb", 14,24, 0x383e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "floorlw", 14,24, 0x393e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "floorld", 14,24, 0x3b3e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "ibitb", 14,24, 0x384e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "ibitw", 14,24, 0x394e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "ibitd", 14,24, 0x3b4e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "indexb", 11,24, 0x42e, "2B3B1r", 1, "", DEF_MODEC,DEF_MODEL },
+ { "indexw", 11,24, 0x52e, "2W3W1r", 2, "", DEF_MODEC,DEF_MODEL },
+ { "indexd", 11,24, 0x72e, "2D3D1r", 4, "", DEF_MODEC,DEF_MODEL },
+ { "insb", 11,24, 0x0ae, "2B3I1r4d", 1, "", DEF_MODEC,DEF_MODEL },
+ { "insw", 11,24, 0x1ae, "2W3I1r4d", 2, "", DEF_MODEC,DEF_MODEL },
+ { "insd", 11,24, 0x3ae, "2D3I1r4d", 4, "", DEF_MODEC,DEF_MODEL },
+ { "inssb", 14,24, 0x08ce, "1B2I4G3g", 1, "", DEF_MODEC,DEF_MODEL },
+ { "inssw", 14,24, 0x09ce, "1W2I4G3g", 2, "", DEF_MODEC,DEF_MODEL },
+ { "inssd", 14,24, 0x0bce, "1D2I4G3g", 4, "", DEF_MODEC,DEF_MODEL },
+ { "jsr", 11,16, 0x67f, "1A", 4, "", 21,21 },
+ { "jump", 11,16, 0x27f, "1A", 4, "", 21,21 },
+ { "lfsr", 19,24, 0x00f3e,"1D", 4, "", DEF_MODEC,DEF_MODEL },
+ { "lmr", 15,24, 0x0b1e, "2D1M", 4, "", DEF_MODEC,DEF_MODEL },
+ { "lprb", 7,16, 0x6c, "2B1P", 1, "", DEF_MODEC,DEF_MODEL },
+ { "lprw", 7,16, 0x6d, "2W1P", 2, "", DEF_MODEC,DEF_MODEL },
+ { "lprd", 7,16, 0x6f, "2D1P", 4, "", DEF_MODEC,DEF_MODEL },
+ { "lshb", 14,24, 0x144e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "lshw", 14,24, 0x154e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "lshd", 14,24, 0x174e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "meib", 14,24, 0x24ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "meiw", 14,24, 0x25ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "meid", 14,24, 0x27ce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "modb", 14,24, 0x38ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "modw", 14,24, 0x39ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "modd", 14,24, 0x3bce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movf", 14,24, 0x05be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movl", 14,24, 0x04be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "movb", 6,16, 0x14, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movw", 6,16, 0x15, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movd", 6,16, 0x17, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movbf", 14,24, 0x043e, "1B2Z", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movwf", 14,24, 0x053e, "1W2Z", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movdf", 14,24, 0x073e, "1D2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movbl", 14,24, 0x003e, "1B2Z", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movwl", 14,24, 0x013e, "1W2Z", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movdl", 14,24, 0x033e, "1D2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movfl", 14,24, 0x1b3e, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movlf", 14,24, 0x163e, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "movmb", 14,24, 0x00ce, "1A2A3b", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movmw", 14,24, 0x01ce, "1A2A3b", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movmd", 14,24, 0x03ce, "1A2A3b", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movqb", 7,16, 0x5c, "2I1q", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movqw", 7,16, 0x5d, "2I1q", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movqd", 7,16, 0x5f, "2I1q", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movsb", 16,24, 0x000e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "movsw", 16,24, 0x010e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "movsd", 16,24, 0x030e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "movst", 16,24, 0x800e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "movsub", 14,24, 0x0cae, "1A2A", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movsuw", 14,24, 0x0dae, "1A2A", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movsud", 14,24, 0x0fae, "1A2A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movusb", 14,24, 0x1cae, "1A2A", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movusw", 14,24, 0x1dae, "1A2A", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movusd", 14,24, 0x1fae, "1A2A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "movxbd", 14,24, 0x1cce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movxwd", 14,24, 0x1dce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movxbw", 14,24, 0x10ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movzbd", 14,24, 0x18ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "movzwd", 14,24, 0x19ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "movzbw", 14,24, 0x14ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "mulf", 14,24, 0x31be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "mull", 14,24, 0x30be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "mulb", 14,24, 0x20ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "mulw", 14,24, 0x21ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "muld", 14,24, 0x23ce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "negf", 14,24, 0x15be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "negl", 14,24, 0x14be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "negb", 14,24, 0x204e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "negw", 14,24, 0x214e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "negd", 14,24, 0x234e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "nop", 8,8, 0xa2, "", 0, "", DEF_MODEC,DEF_MODEL },
+ { "notb", 14,24, 0x244e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "notw", 14,24, 0x254e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "notd", 14,24, 0x274e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "orb", 6,16, 0x18, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "orw", 6,16, 0x19, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "ord", 6,16, 0x1b, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "quob", 14,24, 0x30ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "quow", 14,24, 0x31ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "quod", 14,24, 0x33ce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "rdval", 19,24, 0x0031e,"1A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "remb", 14,24, 0x34ce, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "remw", 14,24, 0x35ce, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "remd", 14,24, 0x37ce, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "restore", 8,8, 0x72, "1u", 0, "", DEF_MODEC,DEF_MODEL },
+ { "ret", 8,8, 0x12, "1d", 0, "", DEF_MODEC,DEF_MODEL },
+ { "reti", 8,8, 0x52, "", 0, "", DEF_MODEC,DEF_MODEL },
+ { "rett", 8,8, 0x42, "1d", 0, "", DEF_MODEC,DEF_MODEL },
+ { "rotb", 14,24, 0x004e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "rotw", 14,24, 0x014e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "rotd", 14,24, 0x034e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "roundfb", 14,24, 0x243e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "roundfw", 14,24, 0x253e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "roundfd", 14,24, 0x273e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "roundlb", 14,24, 0x203e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "roundlw", 14,24, 0x213e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "roundld", 14,24, 0x233e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "rxp", 8,8, 0x32, "1d", 0, "", DEF_MODEC,DEF_MODEL },
+ { "seqb", 11,16, 0x3c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "seqw", 11,16, 0x3d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "seqd", 11,16, 0x3f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sneb", 11,16, 0xbc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "snew", 11,16, 0xbd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sned", 11,16, 0xbf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "scsb", 11,16, 0x13c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "scsw", 11,16, 0x13d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "scsd", 11,16, 0x13f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sccb", 11,16, 0x1bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sccw", 11,16, 0x1bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sccd", 11,16, 0x1bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shib", 11,16, 0x23c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shiw", 11,16, 0x23d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shid", 11,16, 0x23f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slsb", 11,16, 0x2bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slsw", 11,16, 0x2bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slsd", 11,16, 0x2bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sgtb", 11,16, 0x33c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sgtw", 11,16, 0x33d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sgtd", 11,16, 0x33f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sleb", 11,16, 0x3bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slew", 11,16, 0x3bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sled", 11,16, 0x3bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfsb", 11,16, 0x43c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfsw", 11,16, 0x43d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfsd", 11,16, 0x43f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfcb", 11,16, 0x4bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfcw", 11,16, 0x4bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfcd", 11,16, 0x4bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slob", 11,16, 0x53c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slow", 11,16, 0x53d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "slod", 11,16, 0x53f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shsb", 11,16, 0x5bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shsw", 11,16, 0x5bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "shsd", 11,16, 0x5bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sltb", 11,16, 0x63c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sltw", 11,16, 0x63d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sltd", 11,16, 0x63f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sgeb", 11,16, 0x6bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sgew", 11,16, 0x6bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sged", 11,16, 0x6bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sutb", 11,16, 0x73c, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sutw", 11,16, 0x73d, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sutd", 11,16, 0x73f, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sufb", 11,16, 0x7bc, "1B", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sufw", 11,16, 0x7bd, "1W", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sufd", 11,16, 0x7bf, "1D", 0, "", DEF_MODEC,DEF_MODEL },
+ { "save", 8,8, 0x62, "1U", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sbitb", 14,24, 0x184e, "1B2A", 1, "", DEF_MODEC,DEF_MODEL },
+ { "sbitw", 14,24, 0x194e, "1W2A", 2, "", DEF_MODEC,DEF_MODEL },
+ { "sbitd", 14,24, 0x1b4e, "1D2A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "sbitib", 14,24, 0x1c4e, "1B2A", 1, "", DEF_MODEC,DEF_MODEL },
+ { "sbitiw", 14,24, 0x1d4e, "1W2A", 2, "", DEF_MODEC,DEF_MODEL },
+ { "sbitid", 14,24, 0x1f4e, "1D2A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "setcfg", 15,24, 0x0b0e, "1O", 0, "", DEF_MODEC,DEF_MODEL },
+ { "sfsr", 14,24, 0x373e, "1f", 0, "", DEF_MODEC,DEF_MODEL },
+ { "skpsb", 16,24, 0x0c0e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "skpsw", 16,24, 0x0d0e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "skpsd", 16,24, 0x0f0e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "skpst", 16,24, 0x8c0e, "1S", 0, "[]", DEF_MODEC,DEF_MODEL },
+ { "smr", 15,24, 0x0f1e, "2I1M", 4, "", DEF_MODEC,DEF_MODEL },
+ { "sprb", 7,16, 0x2c, "2I1P", 1, "", DEF_MODEC,DEF_MODEL },
+ { "sprw", 7,16, 0x2d, "2I1P", 2, "", DEF_MODEC,DEF_MODEL },
+ { "sprd", 7,16, 0x2f, "2I1P", 4, "", DEF_MODEC,DEF_MODEL },
+ { "subf", 14,24, 0x11be, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "subl", 14,24, 0x10be, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "subb", 6,16, 0x20, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "subw", 6,16, 0x21, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "subd", 6,16, 0x23, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "subcb", 6,16, 0x30, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "subcw", 6,16, 0x31, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "subcd", 6,16, 0x33, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "subpb", 14,24, 0x2c4e, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "subpw", 14,24, 0x2d4e, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "subpd", 14,24, 0x2f4e, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+#ifdef NS32K_SVC_IMMED_OPERANDS
+ { "svc", 8,8, 0xe2, "2i1i", 1, "", DEF_MODEC,DEF_MODEL }, /* not really, but some unix uses it */
+#else
+ { "svc", 8,8, 0xe2, "", 0, "", DEF_MODEC,DEF_MODEL },
+#endif
+ { "tbitb", 6,16, 0x34, "1B2A", 1, "", DEF_MODEC,DEF_MODEL },
+ { "tbitw", 6,16, 0x35, "1W2A", 2, "", DEF_MODEC,DEF_MODEL },
+ { "tbitd", 6,16, 0x37, "1D2A", 4, "", DEF_MODEC,DEF_MODEL },
+ { "truncfb", 14,24, 0x2c3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "truncfw", 14,24, 0x2d3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "truncfd", 14,24, 0x2f3e, "1F2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "trunclb", 14,24, 0x283e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "trunclw", 14,24, 0x293e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "truncld", 14,24, 0x2b3e, "1L2I", 8, "", DEF_MODEC,DEF_MODEL },
+ { "wait", 8,8, 0xb2, "", 0, "", DEF_MODEC,DEF_MODEL },
+ { "wrval", 19,24, 0x0071e,"1A", 0, "", DEF_MODEC,DEF_MODEL },
+ { "xorb", 6,16, 0x38, "1B2I", 1, "", DEF_MODEC,DEF_MODEL },
+ { "xorw", 6,16, 0x39, "1W2I", 2, "", DEF_MODEC,DEF_MODEL },
+ { "xord", 6,16, 0x3b, "1D2I", 4, "", DEF_MODEC,DEF_MODEL },
+ { "dotf", 14,24, 0x0dfe, "1F2F", 4, "", DEF_MODEC,DEF_MODEL },
+ { "dotl", 14,24, 0x0cfe, "1L2L", 8, "", DEF_MODEC,DEF_MODEL },
+ { "logbf", 14,24, 0x15fe, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "logbl", 14,24, 0x14fe, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+ { "polyf", 14,24, 0x09fe, "1F2F", 4, "", DEF_MODEC,DEF_MODEL },
+ { "polyl", 14,24, 0x08fe, "1L2L", 8, "", DEF_MODEC,DEF_MODEL },
+ { "scalbf", 14,24, 0x11fe, "1F2Z", 4, "", DEF_MODEC,DEF_MODEL },
+ { "scalbl", 14,24, 0x10fe, "1L2Z", 8, "", DEF_MODEC,DEF_MODEL },
+};
+
+#define MAX_ARGS 4
+#define ARG_LEN 50
+
diff --git a/include/opcode/or32.h b/include/opcode/or32.h
new file mode 100644
index 000000000..d72b9bda3
--- /dev/null
+++ b/include/opcode/or32.h
@@ -0,0 +1,180 @@
+/* Table of opcodes for the OpenRISC 1000 ISA.
+ Copyright 2002, 2003 Free Software Foundation, Inc.
+ Contributed by Damjan Lampret (lampret@opencores.org).
+
+ This file is part of or1k_gen_isa, or1ksim, GDB and GAS.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* We treat all letters the same in encode/decode routines so
+ we need to assign some characteristics to them like signess etc. */
+
+#ifndef OR32_H_ISA
+#define OR32_H_ISA
+
+#define NUM_UNSIGNED (0)
+#define NUM_SIGNED (1)
+
+#define MAX_GPRS 32
+#define PAGE_SIZE 4096
+#undef __HALF_WORD_INSN__
+
+#define OPERAND_DELIM (',')
+
+#define OR32_IF_DELAY (1)
+#define OR32_W_FLAG (2)
+#define OR32_R_FLAG (4)
+
+struct or32_letter
+{
+ char letter;
+ int sign;
+ /* int reloc; relocation per letter ?? */
+};
+
+/* Main instruction specification array. */
+struct or32_opcode
+{
+ /* Name of the instruction. */
+ char *name;
+
+ /* A string of characters which describe the operands.
+ Valid characters are:
+ ,() Itself. Characters appears in the assembly code.
+ rA Register operand.
+ rB Register operand.
+ rD Register operand.
+ I An immediate operand, range -32768 to 32767.
+ J An immediate operand, range . (unused)
+ K An immediate operand, range 0 to 65535.
+ L An immediate operand, range 0 to 63.
+ M An immediate operand, range . (unused)
+ N An immediate operand, range -33554432 to 33554431.
+ O An immediate operand, range . (unused). */
+ char *args;
+
+ /* Opcode and operand encoding. */
+ char *encoding;
+ void (*exec) (void);
+ unsigned int flags;
+};
+
+#define OPTYPE_LAST (0x80000000)
+#define OPTYPE_OP (0x40000000)
+#define OPTYPE_REG (0x20000000)
+#define OPTYPE_SIG (0x10000000)
+#define OPTYPE_DIS (0x08000000)
+#define OPTYPE_DST (0x04000000)
+#define OPTYPE_SBIT (0x00001F00)
+#define OPTYPE_SHR (0x0000001F)
+#define OPTYPE_SBIT_SHR (8)
+
+/* MM: Data how to decode operands. */
+extern struct insn_op_struct
+{
+ unsigned long type;
+ unsigned long data;
+} **op_start;
+
+#ifdef HAS_EXECUTION
+extern void l_invalid (void);
+extern void l_sfne (void);
+extern void l_bf (void);
+extern void l_add (void);
+extern void l_sw (void);
+extern void l_sb (void);
+extern void l_sh (void);
+extern void l_lwz (void);
+extern void l_lbs (void);
+extern void l_lbz (void);
+extern void l_lhs (void);
+extern void l_lhz (void);
+extern void l_movhi (void);
+extern void l_and (void);
+extern void l_or (void);
+extern void l_xor (void);
+extern void l_sub (void);
+extern void l_mul (void);
+extern void l_div (void);
+extern void l_divu (void);
+extern void l_sll (void);
+extern void l_sra (void);
+extern void l_srl (void);
+extern void l_j (void);
+extern void l_jal (void);
+extern void l_jalr (void);
+extern void l_jr (void);
+extern void l_rfe (void);
+extern void l_nop (void);
+extern void l_bnf (void);
+extern void l_sfeq (void);
+extern void l_sfgts (void);
+extern void l_sfges (void);
+extern void l_sflts (void);
+extern void l_sfles (void);
+extern void l_sfgtu (void);
+extern void l_sfgeu (void);
+extern void l_sfltu (void);
+extern void l_sfleu (void);
+extern void l_mtspr (void);
+extern void l_mfspr (void);
+extern void l_sys (void);
+extern void l_trap (void); /* CZ 21/06/01. */
+extern void l_macrc (void);
+extern void l_mac (void);
+extern void l_msb (void);
+extern void l_invalid (void);
+extern void l_cust1 (void);
+extern void l_cust2 (void);
+extern void l_cust3 (void);
+extern void l_cust4 (void);
+#endif
+extern void l_none (void);
+
+extern const struct or32_letter or32_letters[];
+
+extern const struct or32_opcode or32_opcodes[];
+
+extern const unsigned int or32_num_opcodes;
+
+/* Calculates instruction length in bytes. Always 4 for OR32. */
+extern int insn_len (int);
+
+/* Is individual insn's operand signed or unsigned? */
+extern int letter_signed (char);
+
+/* Number of letters in the individual lettered operand. */
+extern int letter_range (char);
+
+/* MM: Returns index of given instruction name. */
+extern int insn_index (char *);
+
+/* MM: Returns instruction name from index. */
+extern const char *insn_name (int);
+
+/* MM: Constructs new FSM, based on or32_opcodes. */
+extern void build_automata (void);
+
+/* MM: Destructs FSM. */
+extern void destruct_automata (void);
+
+/* MM: Decodes instruction using FSM. Call build_automata first. */
+extern int insn_decode (unsigned int);
+
+/* Disassemble one instruction from insn to disassemble.
+ Return the size of the instruction. */
+int disassemble_insn (unsigned long);
+
+#endif
diff --git a/include/opcode/pdp11.h b/include/opcode/pdp11.h
new file mode 100644
index 000000000..228c221fc
--- /dev/null
+++ b/include/opcode/pdp11.h
@@ -0,0 +1,85 @@
+/* PDP-11 opcde list.
+ Copyright 2001, 2002 Free Software Foundation, Inc.
+
+This file is part of GDB and GAS.
+
+GDB and GAS are free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GDB and GAS are distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GDB or GAS; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/*
+ * PDP-11 opcode types.
+ */
+
+#define PDP11_OPCODE_NO_OPS 0
+#define PDP11_OPCODE_REG 1 /* register */
+#define PDP11_OPCODE_OP 2 /* generic operand */
+#define PDP11_OPCODE_REG_OP 3 /* register and generic operand */
+#define PDP11_OPCODE_REG_OP_REV 4 /* register and generic operand,
+ reversed syntax */
+#define PDP11_OPCODE_AC_FOP 5 /* fpu accumulator and generic float
+ operand */
+#define PDP11_OPCODE_OP_OP 6 /* two generic operands */
+#define PDP11_OPCODE_DISPL 7 /* pc-relative displacement */
+#define PDP11_OPCODE_REG_DISPL 8 /* redister and pc-relative
+ displacement */
+#define PDP11_OPCODE_IMM8 9 /* 8-bit immediate */
+#define PDP11_OPCODE_IMM6 10 /* 6-bit immediate */
+#define PDP11_OPCODE_IMM3 11 /* 3-bit immediate */
+#define PDP11_OPCODE_ILLEGAL 12 /* illegal instruction */
+#define PDP11_OPCODE_FOP_AC 13 /* generic float argument, then fpu
+ accumulator */
+#define PDP11_OPCODE_FOP 14 /* generic float operand */
+#define PDP11_OPCODE_AC_OP 15 /* fpu accumulator and generic int
+ operand */
+#define PDP11_OPCODE_OP_AC 16 /* generic int argument, then fpu
+ accumulator */
+
+/*
+ * PDP-11 instruction set extensions.
+ *
+ * Please keep the numbers low, as they are used as indices into
+ * an array.
+ */
+
+#define PDP11_NONE 0 /* not in instruction set */
+#define PDP11_BASIC 1 /* basic instruction set (11/20 etc) */
+#define PDP11_CSM 2 /* commercial instruction set */
+#define PDP11_CIS 3 /* commercial instruction set */
+#define PDP11_EIS 4 /* extended instruction set (11/45 etc) */
+#define PDP11_FIS 5 /* KEV11 floating-point instructions */
+#define PDP11_FPP 6 /* FP-11 floating-point instructions */
+#define PDP11_LEIS 7 /* limited extended instruction set
+ (11/40 etc) */
+#define PDP11_MFPT 8 /* move from processor type */
+#define PDP11_MPROC 9 /* multiprocessor instructions: tstset,
+ wrtlck */
+#define PDP11_MXPS 10 /* move from/to processor status */
+#define PDP11_SPL 11 /* set priority level */
+#define PDP11_UCODE 12 /* microcode instructions: ldub, med, xfc */
+#define PDP11_EXT_NUM 13 /* total number of extension types */
+
+struct pdp11_opcode
+{
+ const char *name;
+ int opcode;
+ int mask;
+ int type;
+ int extension;
+};
+
+extern const struct pdp11_opcode pdp11_opcodes[];
+extern const struct pdp11_opcode pdp11_aliases[];
+extern const int pdp11_num_opcodes, pdp11_num_aliases;
+
+/* end of pdp11.h */
diff --git a/include/opcode/pj.h b/include/opcode/pj.h
new file mode 100644
index 000000000..f9e44dbef
--- /dev/null
+++ b/include/opcode/pj.h
@@ -0,0 +1,49 @@
+/* Definitions for decoding the picoJava opcode table.
+ Copyright 1999, 2002, 2003 Free Software Foundation, Inc.
+ Contributed by Steve Chamberlain of Transmeta (sac@pobox.com).
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+
+/* Names used to describe the type of instruction arguments, used by
+ the assembler and disassembler. Attributes are encoded in various fields. */
+
+/* reloc size pcrel uns */
+#define O_N 0
+#define O_16 (1<<4 | 2 | (0<<6) | (0<<3))
+#define O_U16 (1<<4 | 2 | (0<<6) | (1<<3))
+#define O_R16 (2<<4 | 2 | (1<<6) | (0<<3))
+#define O_8 (3<<4 | 1 | (0<<6) | (0<<3))
+#define O_U8 (3<<4 | 1 | (0<<6) | (1<<3))
+#define O_R8 (4<<4 | 1 | (0<<6) | (0<<3))
+#define O_R32 (5<<4 | 4 | (1<<6) | (0<<3))
+#define O_32 (6<<4 | 4 | (0<<6) | (0<<3))
+
+#define ASIZE(x) ((x) & 0x7)
+#define PCREL(x) (!!((x) & (1<<6)))
+#define UNS(x) (!!((x) & (1<<3)))
+
+
+typedef struct pj_opc_info_t
+{
+ short opcode;
+ short opcode_next;
+ char len;
+ unsigned char arg[2];
+ union {
+ const char *name;
+ void (*func) (struct pj_opc_info_t *, char *);
+ } u;
+} pj_opc_info_t;
diff --git a/include/opcode/pn.h b/include/opcode/pn.h
new file mode 100644
index 000000000..8c427a2dd
--- /dev/null
+++ b/include/opcode/pn.h
@@ -0,0 +1,282 @@
+/* Print GOULD PN (PowerNode) instructions for GDB, the GNU debugger.
+ Copyright 1986, 1987, 1989, 1991 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+GDB is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GDB is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GDB; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+struct gld_opcode
+{
+ char *name;
+ unsigned long opcode;
+ unsigned long mask;
+ char *args;
+ int length;
+};
+
+/* We store four bytes of opcode for all opcodes because that
+ is the most any of them need. The actual length of an instruction
+ is always at least 2 bytes, and at most four. The length of the
+ instruction is based on the opcode.
+
+ The mask component is a mask saying which bits must match
+ particular opcode in order for an instruction to be an instance
+ of that opcode.
+
+ The args component is a string containing characters
+ that are used to format the arguments to the instruction. */
+
+/* Kinds of operands:
+ r Register in first field
+ R Register in second field
+ b Base register in first field
+ B Base register in second field
+ v Vector register in first field
+ V Vector register in first field
+ A Optional address register (base register)
+ X Optional index register
+ I Immediate data (16bits signed)
+ O Offset field (16bits signed)
+ h Offset field (15bits signed)
+ d Offset field (14bits signed)
+ S Shift count field
+
+ any other characters are printed as is...
+*/
+
+/* The assembler requires that this array be sorted as follows:
+ all instances of the same mnemonic must be consecutive.
+ All instances of the same mnemonic with the same number of operands
+ must be consecutive.
+ */
+struct gld_opcode gld_opcodes[] =
+{
+{ "abm", 0xa0080000, 0xfc080000, "f,xOA,X", 4 },
+{ "abr", 0x18080000, 0xfc0c0000, "r,f", 2 },
+{ "aci", 0xfc770000, 0xfc7f8000, "r,I", 4 },
+{ "adfd", 0xe0080002, 0xfc080002, "r,xOA,X", 4 },
+{ "adfw", 0xe0080000, 0xfc080000, "r,xOA,X", 4 },
+{ "adi", 0xc8010000, 0xfc7f0000, "r,I", 4 },
+{ "admb", 0xb8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "admd", 0xb8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "admh", 0xb8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "admw", 0xb8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "adr", 0x38000000, 0xfc0f0000, "r,R", 2 },
+{ "adrfd", 0x38090000, 0xfc0f0000, "r,R", 2 },
+{ "adrfw", 0x38010000, 0xfc0f0000, "r,R", 2 },
+{ "adrm", 0x38080000, 0xfc0f0000, "r,R", 2 },
+{ "ai", 0xfc030000, 0xfc07ffff, "I", 4 },
+{ "anmb", 0x84080000, 0xfc080000, "r,xOA,X", 4 },
+{ "anmd", 0x84000002, 0xfc080002, "r,xOA,X", 4 },
+{ "anmh", 0x84000001, 0xfc080001, "r,xOA,X", 4 },
+{ "anmw", 0x84000000, 0xfc080000, "r,xOA,X", 4 },
+{ "anr", 0x04000000, 0xfc0f0000, "r,R", 2 },
+{ "armb", 0xe8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "armd", 0xe8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "armh", 0xe8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "armw", 0xe8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "bcf", 0xf0000000, 0xfc080000, "I,xOA,X", 4 },
+{ "bct", 0xec000000, 0xfc080000, "I,xOA,X", 4 },
+{ "bei", 0x00060000, 0xffff0000, "", 2 },
+{ "bft", 0xf0000000, 0xff880000, "xOA,X", 4 },
+{ "bib", 0xf4000000, 0xfc780000, "r,xOA", 4 },
+{ "bid", 0xf4600000, 0xfc780000, "r,xOA", 4 },
+{ "bih", 0xf4200000, 0xfc780000, "r,xOA", 4 },
+{ "biw", 0xf4400000, 0xfc780000, "r,xOA", 4 },
+{ "bl", 0xf8800000, 0xff880000, "xOA,X", 4 },
+{ "bsub", 0x5c080000, 0xff8f0000, "", 2 },
+{ "bsubm", 0x28080000, 0xfc080000, "", 4 },
+{ "bu", 0xec000000, 0xff880000, "xOA,X", 4 },
+{ "call", 0x28080000, 0xfc0f0000, "", 2 },
+{ "callm", 0x5c080000, 0xff880000, "", 4 },
+{ "camb", 0x90080000, 0xfc080000, "r,xOA,X", 4 },
+{ "camd", 0x90000002, 0xfc080002, "r,xOA,X", 4 },
+{ "camh", 0x90000001, 0xfc080001, "r,xOA,X", 4 },
+{ "camw", 0x90000000, 0xfc080000, "r.xOA,X", 4 },
+{ "car", 0x10000000, 0xfc0f0000, "r,R", 2 },
+{ "cd", 0xfc060000, 0xfc070000, "r,f", 4 },
+{ "cea", 0x000f0000, 0xffff0000, "", 2 },
+{ "ci", 0xc8050000, 0xfc7f0000, "r,I", 4 },
+{ "cmc", 0x040a0000, 0xfc7f0000, "r", 2 },
+{ "cmmb", 0x94080000, 0xfc080000, "r,xOA,X", 4 },
+{ "cmmd", 0x94000002, 0xfc080002, "r,xOA,X", 4 },
+{ "cmmh", 0x94000001, 0xfc080001, "r,xOA,X", 4 },
+{ "cmmw", 0x94000000, 0xfc080000, "r,xOA,X", 4 },
+{ "cmr", 0x14000000, 0xfc0f0000, "r,R", 2 },
+{ "daci", 0xfc7f0000, 0xfc7f8000, "r,I", 4 },
+{ "dae", 0x000e0000, 0xffff0000, "", 2 },
+{ "dai", 0xfc040000, 0xfc07ffff, "I", 4 },
+{ "dci", 0xfc6f0000, 0xfc7f8000, "r,I", 4 },
+{ "di", 0xfc010000, 0xfc07ffff, "I", 4 },
+{ "dvfd", 0xe4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "dvfw", 0xe4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "dvi", 0xc8040000, 0xfc7f0000, "r,I", 4 },
+{ "dvmb", 0xc4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "dvmh", 0xc4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "dvmw", 0xc4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "dvr", 0x380a0000, 0xfc0f0000, "r,R", 2 },
+{ "dvrfd", 0x380c0000, 0xfc0f0000, "r,R", 4 },
+{ "dvrfw", 0x38040000, 0xfc0f0000, "r,xOA,X", 4 },
+{ "eae", 0x00080000, 0xffff0000, "", 2 },
+{ "eci", 0xfc670000, 0xfc7f8080, "r,I", 4 },
+{ "ecwcs", 0xfc4f0000, 0xfc7f8000, "", 4 },
+{ "ei", 0xfc000000, 0xfc07ffff, "I", 4 },
+{ "eomb", 0x8c080000, 0xfc080000, "r,xOA,X", 4 },
+{ "eomd", 0x8c000002, 0xfc080002, "r,xOA,X", 4 },
+{ "eomh", 0x8c000001, 0xfc080001, "r,xOA,X", 4 },
+{ "eomw", 0x8c000000, 0xfc080000, "r,xOA,X", 4 },
+{ "eor", 0x0c000000, 0xfc0f0000, "r,R", 2 },
+{ "eorm", 0x0c080000, 0xfc0f0000, "r,R", 2 },
+{ "es", 0x00040000, 0xfc7f0000, "r", 2 },
+{ "exm", 0xa8000000, 0xff880000, "xOA,X", 4 },
+{ "exr", 0xc8070000, 0xfc7f0000, "r", 2 },
+{ "exrr", 0xc8070002, 0xfc7f0002, "r", 2 },
+{ "fixd", 0x380d0000, 0xfc0f0000, "r,R", 2 },
+{ "fixw", 0x38050000, 0xfc0f0000, "r,R", 2 },
+{ "fltd", 0x380f0000, 0xfc0f0000, "r,R", 2 },
+{ "fltw", 0x38070000, 0xfc0f0000, "r,R", 2 },
+{ "grio", 0xfc3f0000, 0xfc7f8000, "r,I", 4 },
+{ "halt", 0x00000000, 0xffff0000, "", 2 },
+{ "hio", 0xfc370000, 0xfc7f8000, "r,I", 4 },
+{ "jwcs", 0xfa080000, 0xff880000, "xOA,X", 4 },
+{ "la", 0x50000000, 0xfc000000, "r,xOA,X", 4 },
+{ "labr", 0x58080000, 0xfc080000, "b,xOA,X", 4 },
+{ "lb", 0xac080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lcs", 0x00030000, 0xfc7f0000, "r", 2 },
+{ "ld", 0xac000002, 0xfc080002, "r,xOA,X", 4 },
+{ "lear", 0x80000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lf", 0xcc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lfbr", 0xcc080000, 0xfc080000, "b,xOA,X", 4 },
+{ "lh", 0xac000001, 0xfc080001, "r,xOA,X", 4 },
+{ "li", 0xc8000000, 0xfc7f0000, "r,I", 4 },
+{ "lmap", 0x2c070000, 0xfc7f0000, "r", 2 },
+{ "lmb", 0xb0080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lmd", 0xb0000002, 0xfc080002, "r,xOA,X", 4 },
+{ "lmh", 0xb0000001, 0xfc080001, "r,xOA,X", 4 },
+{ "lmw", 0xb0000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lnb", 0xb4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "lnd", 0xb4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "lnh", 0xb4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "lnw", 0xb4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lpsd", 0xf9800000, 0xff880000, "r,xOA,X", 4 },
+{ "lpsdcm", 0xfa800000, 0xff880000, "r,xOA,X", 4 },
+{ "lw", 0xac000000, 0xfc080000, "r,xOA,X", 4 },
+{ "lwbr", 0x5c000000, 0xfc080000, "b,xOA,X", 4 },
+{ "mpfd", 0xe4080002, 0xfc080002, "r,xOA,X", 4 },
+{ "mpfw", 0xe4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpi", 0xc8030000, 0xfc7f0000, "r,I", 4 },
+{ "mpmb", 0xc0080000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpmh", 0xc0000001, 0xfc080001, "r,xOA,X", 4 },
+{ "mpmw", 0xc0000000, 0xfc080000, "r,xOA,X", 4 },
+{ "mpr", 0x38020000, 0xfc0f0000, "r,R", 2 },
+{ "mprfd", 0x380e0000, 0xfc0f0000, "r,R", 2 },
+{ "mprfw", 0x38060000, 0xfc0f0000, "r,R", 2 },
+{ "nop", 0x00020000, 0xffff0000, "", 2 },
+{ "ormb", 0x88080000, 0xfc080000, "r,xOA,X", 4 },
+{ "ormd", 0x88000002, 0xfc080002, "r,xOA,X", 4 },
+{ "ormh", 0x88000001, 0xfc080001, "r,xOA,X", 4 },
+{ "ormw", 0x88000000, 0xfc080000, "r,xOA,X", 4 },
+{ "orr", 0x08000000, 0xfc0f0000, "r,R", 2 },
+{ "orrm", 0x08080000, 0xfc0f0000, "r,R", 2 },
+{ "rdsts", 0x00090000, 0xfc7f0000, "r", 2 },
+{ "return", 0x280e0000, 0xfc7f0000, "", 2 },
+{ "ri", 0xfc020000, 0xfc07ffff, "I", 4 },
+{ "rnd", 0x00050000, 0xfc7f0000, "r", 2 },
+{ "rpswt", 0x040b0000, 0xfc7f0000, "r", 2 },
+{ "rschnl", 0xfc2f0000, 0xfc7f8000, "r,I", 4 },
+{ "rsctl", 0xfc470000, 0xfc7f8000, "r,I", 4 },
+{ "rwcs", 0x000b0000, 0xfc0f0000, "r,R", 2 },
+{ "sacz", 0x10080000, 0xfc0f0000, "r,R", 2 },
+{ "sbm", 0x98080000, 0xfc080000, "f,xOA,X", 4 },
+{ "sbr", 0x18000000, 0xfc0c0000, "r,f", 4 },
+{ "sea", 0x000d0000, 0xffff0000, "", 2 },
+{ "setcpu", 0x2c090000, 0xfc7f0000, "r", 2 },
+{ "sio", 0xfc170000, 0xfc7f8000, "r,I", 4 },
+{ "sipu", 0x000a0000, 0xffff0000, "", 2 },
+{ "sla", 0x1c400000, 0xfc600000, "r,S", 2 },
+{ "slad", 0x20400000, 0xfc600000, "r,S", 2 },
+{ "slc", 0x24400000, 0xfc600000, "r,S", 2 },
+{ "sll", 0x1c600000, 0xfc600000, "r,S", 2 },
+{ "slld", 0x20600000, 0xfc600000, "r,S", 2 },
+{ "smc", 0x04070000, 0xfc070000, "", 2 },
+{ "sra", 0x1c000000, 0xfc600000, "r,S", 2 },
+{ "srad", 0x20000000, 0xfc600000, "r,S", 2 },
+{ "src", 0x24000000, 0xfc600000, "r,S", 2 },
+{ "srl", 0x1c200000, 0xfc600000, "r,S", 2 },
+{ "srld", 0x20200000, 0xfc600000, "r,S", 2 },
+{ "stb", 0xd4080000, 0xfc080000, "r,xOA,X", 4 },
+{ "std", 0xd4000002, 0xfc080002, "r,xOA,X", 4 },
+{ "stf", 0xdc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "stfbr", 0x54000000, 0xfc080000, "b,xOA,X", 4 },
+{ "sth", 0xd4000001, 0xfc080001, "r,xOA,X", 4 },
+{ "stmb", 0xd8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "stmd", 0xd8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "stmh", 0xd8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "stmw", 0xd8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "stpio", 0xfc270000, 0xfc7f8000, "r,I", 4 },
+{ "stw", 0xd4000000, 0xfc080000, "r,xOA,X", 4 },
+{ "stwbr", 0x54000000, 0xfc080000, "b,xOA,X", 4 },
+{ "suabr", 0x58000000, 0xfc080000, "b,xOA,X", 4 },
+{ "sufd", 0xe0000002, 0xfc080002, "r,xOA,X", 4 },
+{ "sufw", 0xe0000000, 0xfc080000, "r,xOA,X", 4 },
+{ "sui", 0xc8020000, 0xfc7f0000, "r,I", 4 },
+{ "sumb", 0xbc080000, 0xfc080000, "r,xOA,X", 4 },
+{ "sumd", 0xbc000002, 0xfc080002, "r,xOA,X", 4 },
+{ "sumh", 0xbc000001, 0xfc080001, "r,xOA,X", 4 },
+{ "sumw", 0xbc000000, 0xfc080000, "r,xOA,X", 4 },
+{ "sur", 0x3c000000, 0xfc0f0000, "r,R", 2 },
+{ "surfd", 0x380b0000, 0xfc0f0000, "r,xOA,X", 4 },
+{ "surfw", 0x38030000, 0xfc0f0000, "r,R", 2 },
+{ "surm", 0x3c080000, 0xfc0f0000, "r,R", 2 },
+{ "svc", 0xc8060000, 0xffff0000, "", 4 },
+{ "tbm", 0xa4080000, 0xfc080000, "f,xOA,X", 4 },
+{ "tbr", 0x180c0000, 0xfc0c0000, "r,f", 2 },
+{ "tbrr", 0x2c020000, 0xfc0f0000, "r,B", 2 },
+{ "tccr", 0x28040000, 0xfc7f0000, "", 2 },
+{ "td", 0xfc050000, 0xfc070000, "r,f", 4 },
+{ "tio", 0xfc1f0000, 0xfc7f8000, "r,I", 4 },
+{ "tmapr", 0x2c0a0000, 0xfc0f0000, "r,R", 2 },
+{ "tpcbr", 0x280c0000, 0xfc7f0000, "r", 2 },
+{ "trbr", 0x2c010000, 0xfc0f0000, "b,R", 2 },
+{ "trc", 0x2c030000, 0xfc0f0000, "r,R", 2 },
+{ "trcc", 0x28050000, 0xfc7f0000, "", 2 },
+{ "trcm", 0x2c0b0000, 0xfc0f0000, "r,R", 2 },
+{ "trn", 0x2c040000, 0xfc0f0000, "r,R", 2 },
+{ "trnm", 0x2c0c0000, 0xfc0f0000, "r,R", 2 },
+{ "trr", 0x2c000000, 0xfc0f0000, "r,R", 2 },
+{ "trrm", 0x2c080000, 0xfc0f0000, "r,R", 2 },
+{ "trsc", 0x2c0e0000, 0xfc0f0000, "r,R", 2 },
+{ "trsw", 0x28000000, 0xfc7f0000, "r", 2 },
+{ "tscr", 0x2c0f0000, 0xfc0f0000, "r,R", 2 },
+{ "uei", 0x00070000, 0xffff0000, "", 2 },
+{ "wait", 0x00010000, 0xffff0000, "", 2 },
+{ "wcwcs", 0xfc5f0000, 0xfc7f8000, "", 4 },
+{ "wwcs", 0x000c0000, 0xfc0f0000, "r,R", 2 },
+{ "xcbr", 0x28020000, 0xfc0f0000, "b,B", 2 },
+{ "xcr", 0x2c050000, 0xfc0f0000, "r,R", 2 },
+{ "xcrm", 0x2c0d0000, 0xfc0f0000, "r,R", 2 },
+{ "zbm", 0x9c080000, 0xfc080000, "f,xOA,X", 4 },
+{ "zbr", 0x18040000, 0xfc0c0000, "r,f", 2 },
+{ "zmb", 0xf8080000, 0xfc080000, "r,xOA,X", 4 },
+{ "zmd", 0xf8000002, 0xfc080002, "r,xOA,X", 4 },
+{ "zmh", 0xf8000001, 0xfc080001, "r,xOA,X", 4 },
+{ "zmw", 0xf8000000, 0xfc080000, "r,xOA,X", 4 },
+{ "zr", 0x0c000000, 0xfc0f0000, "r", 2 },
+};
+
+int numopcodes = sizeof(gld_opcodes) / sizeof(gld_opcodes[0]);
+
+struct gld_opcode *endop = gld_opcodes + sizeof(gld_opcodes) /
+ sizeof(gld_opcodes[0]);
diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h
new file mode 100644
index 000000000..a21cc301e
--- /dev/null
+++ b/include/opcode/ppc.h
@@ -0,0 +1,310 @@
+/* ppc.h -- Header file for PowerPC opcode table
+ Copyright 1994, 1995, 1999, 2000, 2001, 2002, 2003, 2004
+ Free Software Foundation, Inc.
+ Written by Ian Lance Taylor, Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef PPC_H
+#define PPC_H
+
+/* The opcode table is an array of struct powerpc_opcode. */
+
+struct powerpc_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned long opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned long mask;
+
+ /* One bit flags for the opcode. These are used to indicate which
+ specific processors support the instructions. The defined values
+ are listed below. */
+ unsigned long flags;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[8];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct powerpc_opcode powerpc_opcodes[];
+extern const int powerpc_num_opcodes;
+
+/* Values defined for the flags field of a struct powerpc_opcode. */
+
+/* Opcode is defined for the PowerPC architecture. */
+#define PPC_OPCODE_PPC 1
+
+/* Opcode is defined for the POWER (RS/6000) architecture. */
+#define PPC_OPCODE_POWER 2
+
+/* Opcode is defined for the POWER2 (Rios 2) architecture. */
+#define PPC_OPCODE_POWER2 4
+
+/* Opcode is only defined on 32 bit architectures. */
+#define PPC_OPCODE_32 8
+
+/* Opcode is only defined on 64 bit architectures. */
+#define PPC_OPCODE_64 0x10
+
+/* Opcode is supported by the Motorola PowerPC 601 processor. The 601
+ is assumed to support all PowerPC (PPC_OPCODE_PPC) instructions,
+ but it also supports many additional POWER instructions. */
+#define PPC_OPCODE_601 0x20
+
+/* Opcode is supported in both the Power and PowerPC architectures
+ (ie, compiler's -mcpu=common or assembler's -mcom). */
+#define PPC_OPCODE_COMMON 0x40
+
+/* Opcode is supported for any Power or PowerPC platform (this is
+ for the assembler's -many option, and it eliminates duplicates). */
+#define PPC_OPCODE_ANY 0x80
+
+/* Opcode is supported as part of the 64-bit bridge. */
+#define PPC_OPCODE_64_BRIDGE 0x100
+
+/* Opcode is supported by Altivec Vector Unit */
+#define PPC_OPCODE_ALTIVEC 0x200
+
+/* Opcode is supported by PowerPC 403 processor. */
+#define PPC_OPCODE_403 0x400
+
+/* Opcode is supported by PowerPC BookE processor. */
+#define PPC_OPCODE_BOOKE 0x800
+
+/* Opcode is only supported by 64-bit PowerPC BookE processor. */
+#define PPC_OPCODE_BOOKE64 0x1000
+
+/* Opcode is supported by PowerPC 440 processor. */
+#define PPC_OPCODE_440 0x2000
+
+/* Opcode is only supported by Power4 architecture. */
+#define PPC_OPCODE_POWER4 0x4000
+
+/* Opcode isn't supported by Power4 architecture. */
+#define PPC_OPCODE_NOPOWER4 0x8000
+
+/* Opcode is only supported by POWERPC Classic architecture. */
+#define PPC_OPCODE_CLASSIC 0x10000
+
+/* Opcode is only supported by e500x2 Core. */
+#define PPC_OPCODE_SPE 0x20000
+
+/* Opcode is supported by e500x2 Integer select APU. */
+#define PPC_OPCODE_ISEL 0x40000
+
+/* Opcode is an e500 SPE floating point instruction. */
+#define PPC_OPCODE_EFS 0x80000
+
+/* Opcode is supported by branch locking APU. */
+#define PPC_OPCODE_BRLOCK 0x100000
+
+/* Opcode is supported by performance monitor APU. */
+#define PPC_OPCODE_PMR 0x200000
+
+/* Opcode is supported by cache locking APU. */
+#define PPC_OPCODE_CACHELCK 0x400000
+
+/* Opcode is supported by machine check APU. */
+#define PPC_OPCODE_RFMCI 0x800000
+
+/* A macro to extract the major opcode from an instruction. */
+#define PPC_OP(i) (((i) >> 26) & 0x3f)
+
+/* The operands table is an array of struct powerpc_operand. */
+
+struct powerpc_operand
+{
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (op & ((1 << o->bits) - 1)) << o->shift;
+ (i is the instruction which we are filling in, o is a pointer to
+ this structure, and op is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged (most operands
+ can accept any value). */
+ unsigned long (*insert)
+ (unsigned long instruction, long op, int dialect, const char **errmsg);
+
+ /* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if ((o->flags & PPC_OPERAND_SIGNED) != 0
+ && (op & (1 << (o->bits - 1))) != 0)
+ op -= 1 << o->bits;
+ (i is the instruction, o is a pointer to this structure, and op
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed. */
+ long (*extract) (unsigned long instruction, int dialect, int *invalid);
+
+ /* One bit syntax flags. */
+ unsigned long flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the powerpc_opcodes table. */
+
+extern const struct powerpc_operand powerpc_operands[];
+
+/* Values defined for the flags field of a struct powerpc_operand. */
+
+/* This operand takes signed values. */
+#define PPC_OPERAND_SIGNED (01)
+
+/* This operand takes signed values, but also accepts a full positive
+ range of values when running in 32 bit mode. That is, if bits is
+ 16, it takes any value from -0x8000 to 0xffff. In 64 bit mode,
+ this flag is ignored. */
+#define PPC_OPERAND_SIGNOPT (02)
+
+/* This operand does not actually exist in the assembler input. This
+ is used to support extended mnemonics such as mr, for which two
+ operands fields are identical. The assembler should call the
+ insert function with any op value. The disassembler should call
+ the extract function, ignore the return value, and check the value
+ placed in the valid argument. */
+#define PPC_OPERAND_FAKE (04)
+
+/* The next operand should be wrapped in parentheses rather than
+ separated from this one by a comma. This is used for the load and
+ store instructions which want their operands to look like
+ reg,displacement(reg)
+ */
+#define PPC_OPERAND_PARENS (010)
+
+/* This operand may use the symbolic names for the CR fields, which
+ are
+ lt 0 gt 1 eq 2 so 3 un 3
+ cr0 0 cr1 1 cr2 2 cr3 3
+ cr4 4 cr5 5 cr6 6 cr7 7
+ These may be combined arithmetically, as in cr2*4+gt. These are
+ only supported on the PowerPC, not the POWER. */
+#define PPC_OPERAND_CR (020)
+
+/* This operand names a register. The disassembler uses this to print
+ register names with a leading 'r'. */
+#define PPC_OPERAND_GPR (040)
+
+/* Like PPC_OPERAND_GPR, but don't print a leading 'r' for r0. */
+#define PPC_OPERAND_GPR_0 (0100)
+
+/* This operand names a floating point register. The disassembler
+ prints these with a leading 'f'. */
+#define PPC_OPERAND_FPR (0200)
+
+/* This operand is a relative branch displacement. The disassembler
+ prints these symbolically if possible. */
+#define PPC_OPERAND_RELATIVE (0400)
+
+/* This operand is an absolute branch address. The disassembler
+ prints these symbolically if possible. */
+#define PPC_OPERAND_ABSOLUTE (01000)
+
+/* This operand is optional, and is zero if omitted. This is used for
+ example, in the optional BF field in the comparison instructions. The
+ assembler must count the number of operands remaining on the line,
+ and the number of operands remaining for the opcode, and decide
+ whether this operand is present or not. The disassembler should
+ print this operand out only if it is not zero. */
+#define PPC_OPERAND_OPTIONAL (02000)
+
+/* This flag is only used with PPC_OPERAND_OPTIONAL. If this operand
+ is omitted, then for the next operand use this operand value plus
+ 1, ignoring the next operand field for the opcode. This wretched
+ hack is needed because the Power rotate instructions can take
+ either 4 or 5 operands. The disassembler should print this operand
+ out regardless of the PPC_OPERAND_OPTIONAL field. */
+#define PPC_OPERAND_NEXT (04000)
+
+/* This operand should be regarded as a negative number for the
+ purposes of overflow checking (i.e., the normal most negative
+ number is disallowed and one more than the normal most positive
+ number is allowed). This flag will only be set for a signed
+ operand. */
+#define PPC_OPERAND_NEGATIVE (010000)
+
+/* This operand names a vector unit register. The disassembler
+ prints these with a leading 'v'. */
+#define PPC_OPERAND_VR (020000)
+
+/* This operand is for the DS field in a DS form instruction. */
+#define PPC_OPERAND_DS (040000)
+
+/* This operand is for the DQ field in a DQ form instruction. */
+#define PPC_OPERAND_DQ (0100000)
+
+/* The POWER and PowerPC assemblers use a few macros. We keep them
+ with the operands table for simplicity. The macro table is an
+ array of struct powerpc_macro. */
+
+struct powerpc_macro
+{
+ /* The macro name. */
+ const char *name;
+
+ /* The number of operands the macro takes. */
+ unsigned int operands;
+
+ /* One bit flags for the opcode. These are used to indicate which
+ specific processors support the instructions. The values are the
+ same as those for the struct powerpc_opcode flags field. */
+ unsigned long flags;
+
+ /* A format string to turn the macro into a normal instruction.
+ Each %N in the string is replaced with operand number N (zero
+ based). */
+ const char *format;
+};
+
+extern const struct powerpc_macro powerpc_macros[];
+extern const int powerpc_num_macros;
+
+#endif /* PPC_H */
diff --git a/include/opcode/pyr.h b/include/opcode/pyr.h
new file mode 100644
index 000000000..d0bed6a47
--- /dev/null
+++ b/include/opcode/pyr.h
@@ -0,0 +1,305 @@
+/* pyramid.opcode.h -- gdb initial attempt.
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+/* pyramid opcode table: wot to do with this
+ particular opcode */
+
+struct pyr_datum
+{
+ char nargs;
+ char * args; /* how to compile said opcode */
+ unsigned long mask; /* Bit vector: which operand modes are valid
+ for this opcode */
+ unsigned char code; /* op-code (always 6(?) bits */
+};
+
+typedef struct pyr_insn_format
+{
+ unsigned int mode :4;
+ unsigned int operator :8;
+ unsigned int index_scale :2;
+ unsigned int index_reg :6;
+ unsigned int operand_1 :6;
+ unsigned int operand_2:6;
+} pyr_insn_format;
+
+
+/* We store four bytes of opcode for all opcodes.
+ Pyramid is sufficiently RISCy that:
+ - insns are always an integral number of words;
+ - the length of any insn can be told from the first word of
+ the insn. (ie, if there are zero, one, or two words of
+ immediate operand/offset).
+
+
+ The args component is a string containing two characters for each
+ operand of the instruction. The first specifies the kind of operand;
+ the second, the place it is stored. */
+
+/* Kinds of operands:
+ mask assembler syntax description
+ 0x0001: movw Rn,Rn register to register
+ 0x0002: movw K,Rn quick immediate to register
+ 0x0004: movw I,Rn long immediate to register
+ 0x0008: movw (Rn),Rn register indirect to register
+ movw (Rn)[x],Rn register indirect to register
+ 0x0010: movw I(Rn),Rn offset register indirect to register
+ movw I(Rn)[x],Rn offset register indirect, indexed, to register
+
+ 0x0020: movw Rn,(Rn) register to register indirect
+ 0x0040: movw K,(Rn) quick immediate to register indirect
+ 0x0080: movw I,(Rn) long immediate to register indirect
+ 0x0100: movw (Rn),(Rn) register indirect to-register indirect
+ 0x0100: movw (Rn),(Rn) register indirect to-register indirect
+ 0x0200: movw I(Rn),(Rn) register indirect+offset to register indirect
+ 0x0200: movw I(Rn),(Rn) register indirect+offset to register indirect
+
+ 0x0400: movw Rn,I(Rn) register to register indirect+offset
+ 0x0800: movw K,I(Rn) quick immediate to register indirect+offset
+ 0x1000: movw I,I(Rn) long immediate to register indirect+offset
+ 0x1000: movw (Rn),I(Rn) register indirect to-register indirect+offset
+ 0x1000: movw I(Rn),I(Rn) register indirect+offset to register indirect
+ +offset
+ 0x0000: (irregular) ???
+
+
+ Each insn has a four-bit field encoding the type(s) of its operands.
+*/
+
+/* Some common combinations
+ */
+
+/* the first 5,(0x1|0x2|0x4|0x8|0x10) ie (1|2|4|8|16), ie ( 32 -1)*/
+#define GEN_TO_REG (31)
+
+#define UNKNOWN ((unsigned long)-1)
+#define ANY (GEN_TO_REG | (GEN_TO_REG << 5) | (GEN_TO_REG << 15))
+
+#define CONVERT (1|8|0x10|0x20|0x200)
+
+#define K_TO_REG (2)
+#define I_TO_REG (4)
+#define NOTK_TO_REG (GEN_TO_REG & ~K_TO_REG)
+#define NOTI_TO_REG (GEN_TO_REG & ~I_TO_REG)
+
+/* The assembler requires that this array be sorted as follows:
+ all instances of the same mnemonic must be consecutive.
+ All instances of the same mnemonic with the same number of operands
+ must be consecutive.
+ */
+
+struct pyr_opcode /* pyr opcode text */
+{
+ char * name; /* opcode name: lowercase string [key] */
+ struct pyr_datum datum; /* rest of opcode table [datum] */
+};
+
+#define pyr_how args
+#define pyr_nargs nargs
+#define pyr_mask mask
+#define pyr_name name
+
+struct pyr_opcode pyr_opcodes[] =
+{
+ {"movb", { 2, "", UNKNOWN, 0x11}, },
+ {"movh", { 2, "", UNKNOWN, 0x12} },
+ {"movw", { 2, "", ANY, 0x10} },
+ {"movl", { 2, "", ANY, 0x13} },
+ {"mnegw", { 2, "", (0x1|0x8|0x10), 0x14} },
+ {"mnegf", { 2, "", 0x1, 0x15} },
+ {"mnegd", { 2, "", 0x1, 0x16} },
+ {"mcomw", { 2, "", (0x1|0x8|0x10), 0x17} },
+ {"mabsw", { 2, "", (0x1|0x8|0x10), 0x18} },
+ {"mabsf", { 2, "", 0x1, 0x19} },
+ {"mabsd", { 2, "", 0x1, 0x1a} },
+ {"mtstw", { 2, "", (0x1|0x8|0x10), 0x1c} },
+ {"mtstf", { 2, "", 0x1, 0x1d} },
+ {"mtstd", { 2, "", 0x1, 0x1e} },
+ {"mova", { 2, "", 0x8|0x10, 0x1f} },
+ {"movzbw", { 2, "", (0x1|0x8|0x10), 0x20} },
+ {"movzhw", { 2, "", (0x1|0x8|0x10), 0x21} },
+ /* 2 insns out of order here */
+ {"movbl", { 2, "", 1, 0x4f} },
+ {"filbl", { 2, "", 1, 0x4e} },
+
+ {"cvtbw", { 2, "", CONVERT, 0x22} },
+ {"cvthw", { 2, "", CONVERT, 0x23} },
+ {"cvtwb", { 2, "", CONVERT, 0x24} },
+ {"cvtwh", { 2, "", CONVERT, 0x25} },
+ {"cvtwf", { 2, "", CONVERT, 0x26} },
+ {"cvtwd", { 2, "", CONVERT, 0x27} },
+ {"cvtfw", { 2, "", CONVERT, 0x28} },
+ {"cvtfd", { 2, "", CONVERT, 0x29} },
+ {"cvtdw", { 2, "", CONVERT, 0x2a} },
+ {"cvtdf", { 2, "", CONVERT, 0x2b} },
+
+ {"addw", { 2, "", GEN_TO_REG, 0x40} },
+ {"addwc", { 2, "", GEN_TO_REG, 0x41} },
+ {"subw", { 2, "", GEN_TO_REG, 0x42} },
+ {"subwb", { 2, "", GEN_TO_REG, 0x43} },
+ {"rsubw", { 2, "", GEN_TO_REG, 0x44} },
+ {"mulw", { 2, "", GEN_TO_REG, 0x45} },
+ {"emul", { 2, "", GEN_TO_REG, 0x47} },
+ {"umulw", { 2, "", GEN_TO_REG, 0x46} },
+ {"divw", { 2, "", GEN_TO_REG, 0x48} },
+ {"ediv", { 2, "", GEN_TO_REG, 0x4a} },
+ {"rdivw", { 2, "", GEN_TO_REG, 0x4b} },
+ {"udivw", { 2, "", GEN_TO_REG, 0x49} },
+ {"modw", { 2, "", GEN_TO_REG, 0x4c} },
+ {"umodw", { 2, "", GEN_TO_REG, 0x4d} },
+
+
+ {"addf", { 2, "", 1, 0x50} },
+ {"addd", { 2, "", 1, 0x51} },
+ {"subf", { 2, "", 1, 0x52} },
+ {"subd", { 2, "", 1, 0x53} },
+ {"mulf", { 2, "", 1, 0x56} },
+ {"muld", { 2, "", 1, 0x57} },
+ {"divf", { 2, "", 1, 0x58} },
+ {"divd", { 2, "", 1, 0x59} },
+
+
+ {"cmpb", { 2, "", UNKNOWN, 0x61} },
+ {"cmph", { 2, "", UNKNOWN, 0x62} },
+ {"cmpw", { 2, "", UNKNOWN, 0x60} },
+ {"ucmpb", { 2, "", UNKNOWN, 0x66} },
+ /* WHY no "ucmph"??? */
+ {"ucmpw", { 2, "", UNKNOWN, 0x65} },
+ {"xchw", { 2, "", UNKNOWN, 0x0f} },
+
+
+ {"andw", { 2, "", GEN_TO_REG, 0x30} },
+ {"orw", { 2, "", GEN_TO_REG, 0x31} },
+ {"xorw", { 2, "", GEN_TO_REG, 0x32} },
+ {"bicw", { 2, "", GEN_TO_REG, 0x33} },
+ {"lshlw", { 2, "", GEN_TO_REG, 0x38} },
+ {"ashlw", { 2, "", GEN_TO_REG, 0x3a} },
+ {"ashll", { 2, "", GEN_TO_REG, 0x3c} },
+ {"ashrw", { 2, "", GEN_TO_REG, 0x3b} },
+ {"ashrl", { 2, "", GEN_TO_REG, 0x3d} },
+ {"rotlw", { 2, "", GEN_TO_REG, 0x3e} },
+ {"rotrw", { 2, "", GEN_TO_REG, 0x3f} },
+
+ /* push and pop insns are "going away next release". */
+ {"pushw", { 2, "", GEN_TO_REG, 0x0c} },
+ {"popw", { 2, "", (0x1|0x8|0x10), 0x0d} },
+ {"pusha", { 2, "", (0x8|0x10), 0x0e} },
+
+ {"bitsw", { 2, "", UNKNOWN, 0x35} },
+ {"bitcw", { 2, "", UNKNOWN, 0x36} },
+ /* some kind of ibra/dbra insns??*/
+ {"icmpw", { 2, "", UNKNOWN, 0x67} },
+ {"dcmpw", { 2, "", (1|4|0x20|0x80|0x400|0x1000), 0x69} },/*FIXME*/
+ {"acmpw", { 2, "", 1, 0x6b} },
+
+ /* Call is written as a 1-op insn, but is always (dis)assembled as a 2-op
+ insn with a 2nd op of tr14. The assembler will have to grok this. */
+ {"call", { 2, "", GEN_TO_REG, 0x04} },
+ {"call", { 1, "", GEN_TO_REG, 0x04} },
+
+ {"callk", { 1, "", UNKNOWN, 0x06} },/* system call?*/
+ /* Ret is usually written as a 0-op insn, but gets disassembled as a
+ 1-op insn. The operand is always tr15. */
+ {"ret", { 0, "", UNKNOWN, 0x09} },
+ {"ret", { 1, "", UNKNOWN, 0x09} },
+ {"adsf", { 2, "", (1|2|4), 0x08} },
+ {"retd", { 2, "", UNKNOWN, 0x0a} },
+ {"btc", { 2, "", UNKNOWN, 0x01} },
+ {"bfc", { 2, "", UNKNOWN, 0x02} },
+ /* Careful: halt is 0x00000000. Jump must have some other (mode?)bit set?? */
+ {"jump", { 1, "", UNKNOWN, 0x00} },
+ {"btp", { 2, "", UNKNOWN, 0xf00} },
+ /* read control-stack pointer is another 1-or-2 operand insn. */
+ {"rcsp", { 2, "", UNKNOWN, 0x01f} },
+ {"rcsp", { 1, "", UNKNOWN, 0x01f} }
+};
+
+/* end: pyramid.opcode.h */
+/* One day I will have to take the time to find out what operands
+ are valid for these insns, and guess at what they mean.
+
+ I can't imagine what the "I???" insns (iglob, etc) do.
+
+ the arithmetic-sounding insns ending in "p" sound awfully like BCD
+ arithmetic insns:
+ dshlp -> Decimal SHift Left Packed
+ dshrp -> Decimal SHift Right Packed
+ and cvtlp would be convert long to packed.
+ I have no idea how the operands are interpreted; but having them be
+ a long register with (address, length) of an in-memory packed BCD operand
+ would not be surprising.
+ They are unlikely to be a packed bcd string: 64 bits of long give
+ is only 15 digits+sign, which isn't enough for COBOL.
+ */
+#if 0
+ {"wcsp", { 2, "", UNKNOWN, 0x00} }, /*write csp?*/
+ /* The OSx Operating System Porting Guide claims SSL does things
+ with tr12 (a register reserved to it) to do with static block-structure
+ references. SSL=Set Static Link? It's "Going away next release". */
+ {"ssl", { 2, "", UNKNOWN, 0x00} },
+ {"ccmps", { 2, "", UNKNOWN, 0x00} },
+ {"lcd", { 2, "", UNKNOWN, 0x00} },
+ {"uemul", { 2, "", UNKNOWN, 0x00} }, /*unsigned emul*/
+ {"srf", { 2, "", UNKNOWN, 0x00} }, /*Gidget time???*/
+ {"mnegp", { 2, "", UNKNOWN, 0x00} }, /move-neg phys?*/
+ {"ldp", { 2, "", UNKNOWN, 0x00} }, /*load phys?*/
+ {"ldti", { 2, "", UNKNOWN, 0x00} },
+ {"ldb", { 2, "", UNKNOWN, 0x00} },
+ {"stp", { 2, "", UNKNOWN, 0x00} },
+ {"stti", { 2, "", UNKNOWN, 0x00} },
+ {"stb", { 2, "", UNKNOWN, 0x00} },
+ {"stu", { 2, "", UNKNOWN, 0x00} },
+ {"addp", { 2, "", UNKNOWN, 0x00} },
+ {"subp", { 2, "", UNKNOWN, 0x00} },
+ {"mulp", { 2, "", UNKNOWN, 0x00} },
+ {"divp", { 2, "", UNKNOWN, 0x00} },
+ {"dshlp", { 2, "", UNKNOWN, 0x00} }, /* dec shl packed? */
+ {"dshrp", { 2, "", UNKNOWN, 0x00} }, /* dec shr packed? */
+ {"movs", { 2, "", UNKNOWN, 0x00} }, /*move (string?)?*/
+ {"cmpp", { 2, "", UNKNOWN, 0x00} }, /* cmp phys?*/
+ {"cmps", { 2, "", UNKNOWN, 0x00} }, /* cmp (string?)?*/
+ {"cvtlp", { 2, "", UNKNOWN, 0x00} }, /* cvt long to p??*/
+ {"cvtpl", { 2, "", UNKNOWN, 0x00} }, /* cvt p to l??*/
+ {"dintr", { 2, "", UNKNOWN, 0x00} }, /* ?? intr ?*/
+ {"rphysw", { 2, "", UNKNOWN, 0x00} }, /* read phys word?*/
+ {"wphysw", { 2, "", UNKNOWN, 0x00} }, /* write phys word?*/
+ {"cmovs", { 2, "", UNKNOWN, 0x00} },
+ {"rsubw", { 2, "", UNKNOWN, 0x00} },
+ {"bicpsw", { 2, "", UNKNOWN, 0x00} }, /* clr bit in psw? */
+ {"bispsw", { 2, "", UNKNOWN, 0x00} }, /* set bit in psw? */
+ {"eio", { 2, "", UNKNOWN, 0x00} }, /* ?? ?io ? */
+ {"callp", { 2, "", UNKNOWN, 0x00} }, /* call phys?*/
+ {"callr", { 2, "", UNKNOWN, 0x00} },
+ {"lpcxt", { 2, "", UNKNOWN, 0x00} }, /*load proc context*/
+ {"rei", { 2, "", UNKNOWN, 0x00} }, /*ret from intrpt*/
+ {"rport", { 2, "", UNKNOWN, 0x00} }, /*read-port?*/
+ {"rtod", { 2, "", UNKNOWN, 0x00} }, /*read-time-of-day?*/
+ {"ssi", { 2, "", UNKNOWN, 0x00} },
+ {"vtpa", { 2, "", UNKNOWN, 0x00} }, /*virt-to-phys-addr?*/
+ {"wicl", { 2, "", UNKNOWN, 0x00} }, /* write icl ? */
+ {"wport", { 2, "", UNKNOWN, 0x00} }, /*write-port?*/
+ {"wtod", { 2, "", UNKNOWN, 0x00} }, /*write-time-of-day?*/
+ {"flic", { 2, "", UNKNOWN, 0x00} },
+ {"iglob", { 2, "", UNKNOWN, 0x00} }, /* I global? */
+ {"iphys", { 2, "", UNKNOWN, 0x00} }, /* I physical? */
+ {"ipid", { 2, "", UNKNOWN, 0x00} }, /* I pid? */
+ {"ivect", { 2, "", UNKNOWN, 0x00} }, /* I vector? */
+ {"lamst", { 2, "", UNKNOWN, 0x00} },
+ {"tio", { 2, "", UNKNOWN, 0x00} },
+#endif
diff --git a/include/opcode/s390.h b/include/opcode/s390.h
new file mode 100644
index 000000000..f582a4e51
--- /dev/null
+++ b/include/opcode/s390.h
@@ -0,0 +1,141 @@
+/* s390.h -- Header file for S390 opcode table
+ Copyright 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA. */
+
+#ifndef S390_H
+#define S390_H
+
+/* List of instruction sets variations. */
+
+enum s390_opcode_mode_val
+ {
+ S390_OPCODE_ESA = 0,
+ S390_OPCODE_ZARCH
+ };
+
+enum s390_opcode_cpu_val
+ {
+ S390_OPCODE_G5 = 0,
+ S390_OPCODE_G6,
+ S390_OPCODE_Z900,
+ S390_OPCODE_Z990
+ };
+
+/* The opcode table is an array of struct s390_opcode. */
+
+struct s390_opcode
+ {
+ /* The opcode name. */
+ const char * name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned char opcode[6];
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned char mask[6];
+
+ /* The opcode length in bytes. */
+ int oplen;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[6];
+
+ /* Bitmask of execution modes this opcode is available for. */
+ unsigned int modes;
+
+ /* First cpu this opcode is available for. */
+ enum s390_opcode_cpu_val min_cpu;
+ };
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct s390_opcode s390_opcodes[];
+extern const int s390_num_opcodes;
+
+/* A opcode format table for the .insn pseudo mnemonic. */
+extern const struct s390_opcode s390_opformats[];
+extern const int s390_num_opformats;
+
+/* Values defined for the flags field of a struct powerpc_opcode. */
+
+/* The operands table is an array of struct s390_operand. */
+
+struct s390_operand
+ {
+ /* The number of bits in the operand. */
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+ int shift;
+
+ /* One bit syntax flags. */
+ unsigned long flags;
+ };
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the powerpc_opcodes table. */
+
+extern const struct s390_operand s390_operands[];
+
+/* Values defined for the flags field of a struct s390_operand. */
+
+/* This operand names a register. The disassembler uses this to print
+ register names with a leading 'r'. */
+#define S390_OPERAND_GPR 0x1
+
+/* This operand names a floating point register. The disassembler
+ prints these with a leading 'f'. */
+#define S390_OPERAND_FPR 0x2
+
+/* This operand names an access register. The disassembler
+ prints these with a leading 'a'. */
+#define S390_OPERAND_AR 0x4
+
+/* This operand names a control register. The disassembler
+ prints these with a leading 'c'. */
+#define S390_OPERAND_CR 0x8
+
+/* This operand is a displacement. */
+#define S390_OPERAND_DISP 0x10
+
+/* This operand names a base register. */
+#define S390_OPERAND_BASE 0x20
+
+/* This operand names an index register, it can be skipped. */
+#define S390_OPERAND_INDEX 0x40
+
+/* This operand is a relative branch displacement. The disassembler
+ prints these symbolically if possible. */
+#define S390_OPERAND_PCREL 0x80
+
+/* This operand takes signed values. */
+#define S390_OPERAND_SIGNED 0x100
+
+/* This operand is a length. */
+#define S390_OPERAND_LENGTH 0x200
+
+#endif /* S390_H */
diff --git a/include/opcode/sparc.h b/include/opcode/sparc.h
new file mode 100644
index 000000000..c3364933a
--- /dev/null
+++ b/include/opcode/sparc.h
@@ -0,0 +1,241 @@
+/* Definitions for opcode table for the sparc.
+ Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2002,
+ 2003 Free Software Foundation, Inc.
+
+This file is part of GAS, the GNU Assembler, GDB, the GNU debugger, and
+the GNU Binutils.
+
+GAS/GDB is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GAS/GDB is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GAS or GDB; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#include "ansidecl.h"
+
+/* The SPARC opcode table (and other related data) is defined in
+ the opcodes library in sparc-opc.c. If you change anything here, make
+ sure you fix up that file, and vice versa. */
+
+ /* FIXME-someday: perhaps the ,a's and such should be embedded in the
+ instruction's name rather than the args. This would make gas faster, pinsn
+ slower, but would mess up some macros a bit. xoxorich. */
+
+/* List of instruction sets variations.
+ These values are such that each element is either a superset of a
+ preceding each one or they conflict in which case SPARC_OPCODE_CONFLICT_P
+ returns non-zero.
+ The values are indices into `sparc_opcode_archs' defined in sparc-opc.c.
+ Don't change this without updating sparc-opc.c. */
+
+enum sparc_opcode_arch_val {
+ SPARC_OPCODE_ARCH_V6 = 0,
+ SPARC_OPCODE_ARCH_V7,
+ SPARC_OPCODE_ARCH_V8,
+ SPARC_OPCODE_ARCH_SPARCLET,
+ SPARC_OPCODE_ARCH_SPARCLITE,
+ /* v9 variants must appear last */
+ SPARC_OPCODE_ARCH_V9,
+ SPARC_OPCODE_ARCH_V9A, /* v9 with ultrasparc additions */
+ SPARC_OPCODE_ARCH_V9B, /* v9 with ultrasparc and cheetah additions */
+ SPARC_OPCODE_ARCH_BAD /* error return from sparc_opcode_lookup_arch */
+};
+
+/* The highest architecture in the table. */
+#define SPARC_OPCODE_ARCH_MAX (SPARC_OPCODE_ARCH_BAD - 1)
+
+/* Given an enum sparc_opcode_arch_val, return the bitmask to use in
+ insn encoding/decoding. */
+#define SPARC_OPCODE_ARCH_MASK(arch) (1 << (arch))
+
+/* Given a valid sparc_opcode_arch_val, return non-zero if it's v9. */
+#define SPARC_OPCODE_ARCH_V9_P(arch) ((arch) >= SPARC_OPCODE_ARCH_V9)
+
+/* Table of cpu variants. */
+
+struct sparc_opcode_arch {
+ const char *name;
+ /* Mask of sparc_opcode_arch_val's supported.
+ EG: For v7 this would be
+ (SPARC_OPCODE_ARCH_MASK (..._V6) | SPARC_OPCODE_ARCH_MASK (..._V7)).
+ These are short's because sparc_opcode.architecture is. */
+ short supported;
+};
+
+extern const struct sparc_opcode_arch sparc_opcode_archs[];
+
+/* Given architecture name, look up it's sparc_opcode_arch_val value. */
+extern enum sparc_opcode_arch_val sparc_opcode_lookup_arch (const char *);
+
+/* Return the bitmask of supported architectures for ARCH. */
+#define SPARC_OPCODE_SUPPORTED(ARCH) (sparc_opcode_archs[ARCH].supported)
+
+/* Non-zero if ARCH1 conflicts with ARCH2.
+ IE: ARCH1 as a supported bit set that ARCH2 doesn't, and vice versa. */
+#define SPARC_OPCODE_CONFLICT_P(ARCH1, ARCH2) \
+(((SPARC_OPCODE_SUPPORTED (ARCH1) & SPARC_OPCODE_SUPPORTED (ARCH2)) \
+ != SPARC_OPCODE_SUPPORTED (ARCH1)) \
+ && ((SPARC_OPCODE_SUPPORTED (ARCH1) & SPARC_OPCODE_SUPPORTED (ARCH2)) \
+ != SPARC_OPCODE_SUPPORTED (ARCH2)))
+
+/* Structure of an opcode table entry. */
+
+struct sparc_opcode {
+ const char *name;
+ unsigned long match; /* Bits that must be set. */
+ unsigned long lose; /* Bits that must not be set. */
+ const char *args;
+ /* This was called "delayed" in versions before the flags. */
+ char flags;
+ short architecture; /* Bitmask of sparc_opcode_arch_val's. */
+};
+
+#define F_DELAYED 1 /* Delayed branch */
+#define F_ALIAS 2 /* Alias for a "real" instruction */
+#define F_UNBR 4 /* Unconditional branch */
+#define F_CONDBR 8 /* Conditional branch */
+#define F_JSR 16 /* Subroutine call */
+#define F_FLOAT 32 /* Floating point instruction (not a branch) */
+#define F_FBR 64 /* Floating point branch */
+/* FIXME: Add F_ANACHRONISTIC flag for v9. */
+
+/*
+
+All sparc opcodes are 32 bits, except for the `set' instruction (really a
+macro), which is 64 bits. It is handled as a special case.
+
+The match component is a mask saying which bits must match a particular
+opcode in order for an instruction to be an instance of that opcode.
+
+The args component is a string containing one character for each operand of the
+instruction.
+
+Kinds of operands:
+ # Number used by optimizer. It is ignored.
+ 1 rs1 register.
+ 2 rs2 register.
+ d rd register.
+ e frs1 floating point register.
+ v frs1 floating point register (double/even).
+ V frs1 floating point register (quad/multiple of 4).
+ f frs2 floating point register.
+ B frs2 floating point register (double/even).
+ R frs2 floating point register (quad/multiple of 4).
+ g frsd floating point register.
+ H frsd floating point register (double/even).
+ J frsd floating point register (quad/multiple of 4).
+ b crs1 coprocessor register
+ c crs2 coprocessor register
+ D crsd coprocessor register
+ m alternate space register (asr) in rd
+ M alternate space register (asr) in rs1
+ h 22 high bits.
+ X 5 bit unsigned immediate
+ Y 6 bit unsigned immediate
+ 3 SIAM mode (3 bits). (v9b)
+ K MEMBAR mask (7 bits). (v9)
+ j 10 bit Immediate. (v9)
+ I 11 bit Immediate. (v9)
+ i 13 bit Immediate.
+ n 22 bit immediate.
+ k 2+14 bit PC relative immediate. (v9)
+ G 19 bit PC relative immediate. (v9)
+ l 22 bit PC relative immediate.
+ L 30 bit PC relative immediate.
+ a Annul. The annul bit is set.
+ A Alternate address space. Stored as 8 bits.
+ C Coprocessor state register.
+ F floating point state register.
+ p Processor state register.
+ N Branch predict clear ",pn" (v9)
+ T Branch predict set ",pt" (v9)
+ z %icc. (v9)
+ Z %xcc. (v9)
+ q Floating point queue.
+ r Single register that is both rs1 and rd.
+ O Single register that is both rs2 and rd.
+ Q Coprocessor queue.
+ S Special case.
+ t Trap base register.
+ w Window invalid mask register.
+ y Y register.
+ u sparclet coprocessor registers in rd position
+ U sparclet coprocessor registers in rs1 position
+ E %ccr. (v9)
+ s %fprs. (v9)
+ P %pc. (v9)
+ W %tick. (v9)
+ o %asi. (v9)
+ 6 %fcc0. (v9)
+ 7 %fcc1. (v9)
+ 8 %fcc2. (v9)
+ 9 %fcc3. (v9)
+ ! Privileged Register in rd (v9)
+ ? Privileged Register in rs1 (v9)
+ * Prefetch function constant. (v9)
+ x OPF field (v9 impdep).
+ 0 32/64 bit immediate for set or setx (v9) insns
+ _ Ancillary state register in rd (v9a)
+ / Ancillary state register in rs1 (v9a)
+
+The following chars are unused: (note: ,[] are used as punctuation)
+[45]
+
+*/
+
+#define OP2(x) (((x)&0x7) << 22) /* op2 field of format2 insns */
+#define OP3(x) (((x)&0x3f) << 19) /* op3 field of format3 insns */
+#define OP(x) ((unsigned)((x)&0x3) << 30) /* op field of all insns */
+#define OPF(x) (((x)&0x1ff) << 5) /* opf field of float insns */
+#define OPF_LOW5(x) OPF((x)&0x1f) /* v9 */
+#define F3F(x, y, z) (OP(x) | OP3(y) | OPF(z)) /* format3 float insns */
+#define F3I(x) (((x)&0x1) << 13) /* immediate field of format 3 insns */
+#define F2(x, y) (OP(x) | OP2(y)) /* format 2 insns */
+#define F3(x, y, z) (OP(x) | OP3(y) | F3I(z)) /* format3 insns */
+#define F1(x) (OP(x))
+#define DISP30(x) ((x)&0x3fffffff)
+#define ASI(x) (((x)&0xff) << 5) /* asi field of format3 insns */
+#define RS2(x) ((x)&0x1f) /* rs2 field */
+#define SIMM13(x) ((x)&0x1fff) /* simm13 field */
+#define RD(x) (((x)&0x1f) << 25) /* destination register field */
+#define RS1(x) (((x)&0x1f) << 14) /* rs1 field */
+#define ASI_RS2(x) (SIMM13(x))
+#define MEMBAR(x) ((x)&0x7f)
+#define SLCPOP(x) (((x)&0x7f) << 6) /* sparclet cpop */
+
+#define ANNUL (1<<29)
+#define BPRED (1<<19) /* v9 */
+#define IMMED F3I(1)
+#define RD_G0 RD(~0)
+#define RS1_G0 RS1(~0)
+#define RS2_G0 RS2(~0)
+
+extern const struct sparc_opcode sparc_opcodes[];
+extern const int sparc_num_opcodes;
+
+extern int sparc_encode_asi (const char *);
+extern const char *sparc_decode_asi (int);
+extern int sparc_encode_membar (const char *);
+extern const char *sparc_decode_membar (int);
+extern int sparc_encode_prefetch (const char *);
+extern const char *sparc_decode_prefetch (int);
+extern int sparc_encode_sparclet_cpreg (const char *);
+extern const char *sparc_decode_sparclet_cpreg (int);
+
+/*
+ * Local Variables:
+ * fill-column: 131
+ * comment-column: 0
+ * End:
+ */
+
+/* end of sparc.h */
diff --git a/include/opcode/tahoe.h b/include/opcode/tahoe.h
new file mode 100644
index 000000000..b5cee249e
--- /dev/null
+++ b/include/opcode/tahoe.h
@@ -0,0 +1,213 @@
+/*
+ * Ported by the State University of New York at Buffalo by the Distributed
+ * Computer Systems Lab, Department of Computer Science, 1991.
+ */
+
+#ifndef tahoe_opcodeT
+#define tahoe_opcodeT int
+#endif /* no tahoe_opcodeT */
+
+struct vot_wot /* tahoe opcode table: wot to do with this */
+ /* particular opcode */
+{
+ char * args; /* how to compile said opcode */
+ tahoe_opcodeT code; /* op-code (may be > 8 bits!) */
+};
+
+struct vot /* tahoe opcode text */
+{
+ char * name; /* opcode name: lowercase string [key] */
+ struct vot_wot detail; /* rest of opcode table [datum] */
+};
+
+#define vot_how args
+#define vot_code code
+#define vot_detail detail
+#define vot_name name
+
+static struct vot
+votstrs[] =
+{
+{ "halt", {"", 0x00 } },
+{ "sinf", {"", 0x05 } },
+{ "ldf", {"rl", 0x06 } },
+{ "ldd", {"rq", 0x07 } },
+{ "addb2", {"rbmb", 0x08 } },
+{ "movb", {"rbwb", 0x09 } },
+{ "addw2", {"rwmw", 0x0a } },
+{ "movw", {"rwww", 0x0b } },
+{ "addl2", {"rlml", 0x0c } },
+{ "movl", {"rlwl", 0x0d } },
+{ "bbs", {"rlvlbw", 0x0e } },
+{ "nop", {"", 0x10 } },
+{ "brb", {"bb", 0x11 } },
+{ "brw", {"bw", 0x13 } },
+{ "cosf", {"", 0x15 } },
+{ "lnf", {"rl", 0x16 } },
+{ "lnd", {"rq", 0x17 } },
+{ "addb3", {"rbrbwb", 0x18 } },
+{ "cmpb", {"rbwb", 0x19 } },
+{ "addw3", {"rwrwww", 0x1a } },
+{ "cmpw", {"rwww", 0x1b } },
+{ "addl3", {"rlrlwl", 0x1c } },
+{ "cmpl", {"rlwl", 0x1d } },
+{ "bbc", {"rlvlbw", 0x1e } },
+{ "rei", {"", 0x20 } },
+{ "bneq", {"bb", 0x21 } },
+{ "bnequ", {"bb", 0x21 } },
+{ "cvtwl", {"rwwl", 0x23 } },
+{ "stf", {"wl", 0x26 } },
+{ "std", {"wq", 0x27 } },
+{ "subb2", {"rbmb", 0x28 } },
+{ "mcomb", {"rbwb", 0x29 } },
+{ "subw2", {"rwmw", 0x2a } },
+{ "mcomw", {"rwww", 0x2b } },
+{ "subl2", {"rlml", 0x2c } },
+{ "mcoml", {"rlwl", 0x2d } },
+{ "emul", {"rlrlrlwq", 0x2e } },
+{ "aoblss", {"rlmlbw", 0x2f } },
+{ "bpt", {"", 0x30 } },
+{ "beql", {"bb", 0x31 } },
+{ "beqlu", {"bb", 0x31 } },
+{ "cvtwb", {"rwwb", 0x33 } },
+{ "logf", {"", 0x35 } },
+{ "cmpf", {"rl", 0x36 } },
+{ "cmpd", {"rq", 0x37 } },
+{ "subb3", {"rbrbwb", 0x38 } },
+{ "bitb", {"rbrb", 0x39 } },
+{ "subw3", {"rwrwww", 0x3a } },
+{ "bitw", {"rwrw", 0x3b } },
+{ "subl3", {"rlrlwl", 0x3c } },
+{ "bitl", {"rlrl", 0x3d } },
+{ "ediv", {"rlrqwlwl", 0x3e } },
+{ "aobleq", {"rlmlbw", 0x3f } },
+{ "ret", {"", 0x40 } },
+{ "bgtr", {"bb", 0x41 } },
+{ "sqrtf", {"", 0x45 } },
+{ "cmpf2", {"rl", 0x46 } },
+{ "cmpd2", {"rqrq", 0x47 } },
+{ "shll", {"rbrlwl", 0x48 } },
+{ "clrb", {"wb", 0x49 } },
+{ "shlq", {"rbrqwq", 0x4a } },
+{ "clrw", {"ww", 0x4b } },
+{ "mull2", {"rlml", 0x4c } },
+{ "clrl", {"wl", 0x4d } },
+{ "shal", {"rbrlwl", 0x4e } },
+{ "bleq", {"bb", 0x51 } },
+{ "expf", {"", 0x55 } },
+{ "tstf", {"", 0x56 } },
+{ "tstd", {"", 0x57 } },
+{ "shrl", {"rbrlwl", 0x58 } },
+{ "tstb", {"rb", 0x59 } },
+{ "shrq", {"rbrqwq", 0x5a } },
+{ "tstw", {"rw", 0x5b } },
+{ "mull3", {"rlrlwl", 0x5c } },
+{ "tstl", {"rl", 0x5d } },
+{ "shar", {"rbrlwl", 0x5e } },
+{ "bbssi", {"rlmlbw", 0x5f } },
+{ "ldpctx", {"", 0x60 } },
+{ "pushd", {"", 0x67 } },
+{ "incb", {"mb", 0x69 } },
+{ "incw", {"mw", 0x6b } },
+{ "divl2", {"rlml", 0x6c } },
+{ "incl", {"ml", 0x6d } },
+{ "cvtlb", {"rlwb", 0x6f } },
+{ "svpctx", {"", 0x70 } },
+{ "jmp", {"ab", 0x71 } },
+{ "cvlf", {"rl", 0x76 } },
+{ "cvld", {"rl", 0x77 } },
+{ "decb", {"mb", 0x79 } },
+{ "decw", {"mw", 0x7b } },
+{ "divl3", {"rlrlwl", 0x7c } },
+{ "decl", {"ml", 0x7d } },
+{ "cvtlw", {"rlww", 0x7f } },
+{ "bgeq", {"bb", 0x81 } },
+{ "movs2", {"abab", 0x82 } },
+{ "cvfl", {"wl", 0x86 } },
+{ "cvdl", {"wl", 0x87 } },
+{ "orb2", {"rbmb", 0x88 } },
+{ "cvtbl", {"rbwl", 0x89 } },
+{ "orw2", {"rwmw", 0x8a } },
+{ "bispsw", {"rw", 0x8b } },
+{ "orl2", {"rlml", 0x8c } },
+{ "adwc", {"rlml", 0x8d } },
+{ "adda", {"rlml", 0x8e } },
+{ "blss", {"bb", 0x91 } },
+{ "cmps2", {"abab", 0x92 } },
+{ "ldfd", {"rl", 0x97 } },
+{ "orb3", {"rbrbwb", 0x98 } },
+{ "cvtbw", {"rbww", 0x99 } },
+{ "orw3", {"rwrwww", 0x9a } },
+{ "bicpsw", {"rw", 0x9b } },
+{ "orl3", {"rlrlwl", 0x9c } },
+{ "sbwc", {"rlml", 0x9d } },
+{ "suba", {"rlml", 0x9e } },
+{ "bgtru", {"bb", 0xa1 } },
+{ "cvdf", {"", 0xa6 } },
+{ "andb2", {"rbmb", 0xa8 } },
+{ "movzbl", {"rbwl", 0xa9 } },
+{ "andw2", {"rwmw", 0xaa } },
+{ "loadr", {"rwal", 0xab } },
+{ "andl2", {"rlml", 0xac } },
+{ "mtpr", {"rlrl", 0xad } },
+{ "ffs", {"rlwl", 0xae } },
+{ "blequ", {"bb", 0xb1 } },
+{ "negf", {"", 0xb6 } },
+{ "negd", {"", 0xb7 } },
+{ "andb3", {"rbrbwb", 0xb8 } },
+{ "movzbw", {"rbww", 0xb9 } },
+{ "andw3", {"rwrwww", 0xba } },
+{ "storer", {"rwal", 0xbb } },
+{ "andl3", {"rlrlwl", 0xbc } },
+{ "mfpr", {"rlwl", 0xbd } },
+{ "ffc", {"rlwl", 0xbe } },
+{ "calls", {"rbab", 0xbf } },
+{ "prober", {"rbabrl", 0xc0 } },
+{ "bvc", {"bb", 0xc1 } },
+{ "movs3", {"ababrw", 0xc2 } },
+{ "movzwl", {"rwwl", 0xc3 } },
+{ "addf", {"rl", 0xc6 } },
+{ "addd", {"rq", 0xc7 } },
+{ "xorb2", {"rbmb", 0xc8 } },
+{ "movob", {"rbwb", 0xc9 } },
+{ "xorw2", {"rwmw", 0xca } },
+{ "movow", {"rwww", 0xcb } },
+{ "xorl2", {"rlml", 0xcc } },
+{ "movpsl", {"wl", 0xcd } },
+{ "kcall", {"rw", 0xcf } },
+{ "probew", {"rbabrl", 0xd0 } },
+{ "bvs", {"bb", 0xd1 } },
+{ "cmps3", {"ababrw", 0xd2 } },
+{ "subf", {"rq", 0xd6 } },
+{ "subd", {"rq", 0xd7 } },
+{ "xorb3", {"rbrbwb", 0xd8 } },
+{ "pushb", {"rb", 0xd9 } },
+{ "xorw3", {"rwrwww", 0xda } },
+{ "pushw", {"rw", 0xdb } },
+{ "xorl3", {"rlrlwl", 0xdc } },
+{ "pushl", {"rl", 0xdd } },
+{ "insque", {"abab", 0xe0 } },
+{ "bcs", {"bb", 0xe1 } },
+{ "bgequ", {"bb", 0xe1 } },
+{ "mulf", {"rq", 0xe6 } },
+{ "muld", {"rq", 0xe7 } },
+{ "mnegb", {"rbwb", 0xe8 } },
+{ "movab", {"abwl", 0xe9 } },
+{ "mnegw", {"rwww", 0xea } },
+{ "movaw", {"awwl", 0xeb } },
+{ "mnegl", {"rlwl", 0xec } },
+{ "moval", {"alwl", 0xed } },
+{ "remque", {"ab", 0xf0 } },
+{ "bcc", {"bb", 0xf1 } },
+{ "blssu", {"bb", 0xf1 } },
+{ "divf", {"rq", 0xf6 } },
+{ "divd", {"rq", 0xf7 } },
+{ "movblk", {"alalrw", 0xf8 } },
+{ "pushab", {"ab", 0xf9 } },
+{ "pushaw", {"aw", 0xfb } },
+{ "casel", {"rlrlrl", 0xfc } },
+{ "pushal", {"al", 0xfd } },
+{ "callf", {"rbab", 0xfe } },
+{ "" , "" } /* empty is end sentinel */
+
+};
diff --git a/include/opcode/tic30.h b/include/opcode/tic30.h
new file mode 100644
index 000000000..a70027591
--- /dev/null
+++ b/include/opcode/tic30.h
@@ -0,0 +1,691 @@
+/* tic30.h -- Header file for TI TMS320C30 opcode table
+ Copyright 1998 Free Software Foundation, Inc.
+ Contributed by Steven Haworth (steve@pm.cse.rmit.edu.au)
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA. */
+
+/* FIXME: The opcode table should be in opcodes/tic30-opc.c, not in a
+ header file. */
+
+#ifndef _TMS320_H_
+#define _TMS320_H_
+
+struct _register
+{
+ char *name;
+ unsigned char opcode;
+ unsigned char regtype;
+};
+
+typedef struct _register reg;
+
+#define REG_Rn 0x01
+#define REG_ARn 0x02
+#define REG_DP 0x03
+#define REG_OTHER 0x04
+
+static const reg tic30_regtab[] = {
+ { "r0", 0x00, REG_Rn },
+ { "r1", 0x01, REG_Rn },
+ { "r2", 0x02, REG_Rn },
+ { "r3", 0x03, REG_Rn },
+ { "r4", 0x04, REG_Rn },
+ { "r5", 0x05, REG_Rn },
+ { "r6", 0x06, REG_Rn },
+ { "r7", 0x07, REG_Rn },
+ { "ar0",0x08, REG_ARn },
+ { "ar1",0x09, REG_ARn },
+ { "ar2",0x0A, REG_ARn },
+ { "ar3",0x0B, REG_ARn },
+ { "ar4",0x0C, REG_ARn },
+ { "ar5",0x0D, REG_ARn },
+ { "ar6",0x0E, REG_ARn },
+ { "ar7",0x0F, REG_ARn },
+ { "dp", 0x10, REG_DP },
+ { "ir0",0x11, REG_OTHER },
+ { "ir1",0x12, REG_OTHER },
+ { "bk", 0x13, REG_OTHER },
+ { "sp", 0x14, REG_OTHER },
+ { "st", 0x15, REG_OTHER },
+ { "ie", 0x16, REG_OTHER },
+ { "if", 0x17, REG_OTHER },
+ { "iof",0x18, REG_OTHER },
+ { "rs", 0x19, REG_OTHER },
+ { "re", 0x1A, REG_OTHER },
+ { "rc", 0x1B, REG_OTHER },
+ { "R0", 0x00, REG_Rn },
+ { "R1", 0x01, REG_Rn },
+ { "R2", 0x02, REG_Rn },
+ { "R3", 0x03, REG_Rn },
+ { "R4", 0x04, REG_Rn },
+ { "R5", 0x05, REG_Rn },
+ { "R6", 0x06, REG_Rn },
+ { "R7", 0x07, REG_Rn },
+ { "AR0",0x08, REG_ARn },
+ { "AR1",0x09, REG_ARn },
+ { "AR2",0x0A, REG_ARn },
+ { "AR3",0x0B, REG_ARn },
+ { "AR4",0x0C, REG_ARn },
+ { "AR5",0x0D, REG_ARn },
+ { "AR6",0x0E, REG_ARn },
+ { "AR7",0x0F, REG_ARn },
+ { "DP", 0x10, REG_DP },
+ { "IR0",0x11, REG_OTHER },
+ { "IR1",0x12, REG_OTHER },
+ { "BK", 0x13, REG_OTHER },
+ { "SP", 0x14, REG_OTHER },
+ { "ST", 0x15, REG_OTHER },
+ { "IE", 0x16, REG_OTHER },
+ { "IF", 0x17, REG_OTHER },
+ { "IOF",0x18, REG_OTHER },
+ { "RS", 0x19, REG_OTHER },
+ { "RE", 0x1A, REG_OTHER },
+ { "RC", 0x1B, REG_OTHER },
+ { "", 0, 0 }
+};
+
+static const reg *const tic30_regtab_end
+ = tic30_regtab + sizeof(tic30_regtab)/sizeof(tic30_regtab[0]);
+
+/* Indirect Addressing Modes Modification Fields */
+/* Indirect Addressing with Displacement */
+#define PreDisp_Add 0x00
+#define PreDisp_Sub 0x01
+#define PreDisp_Add_Mod 0x02
+#define PreDisp_Sub_Mod 0x03
+#define PostDisp_Add_Mod 0x04
+#define PostDisp_Sub_Mod 0x05
+#define PostDisp_Add_Circ 0x06
+#define PostDisp_Sub_Circ 0x07
+/* Indirect Addressing with Index Register IR0 */
+#define PreIR0_Add 0x08
+#define PreIR0_Sub 0x09
+#define PreIR0_Add_Mod 0x0A
+#define PreIR0_Sub_Mod 0x0B
+#define PostIR0_Add_Mod 0x0C
+#define PostIR0_Sub_Mod 0x0D
+#define PostIR0_Add_Circ 0x0E
+#define PostIR0_Sub_Circ 0x0F
+/* Indirect Addressing with Index Register IR1 */
+#define PreIR1_Add 0x10
+#define PreIR1_Sub 0x11
+#define PreIR1_Add_Mod 0x12
+#define PreIR1_Sub_Mod 0x13
+#define PostIR1_Add_Mod 0x14
+#define PostIR1_Sub_Mod 0x15
+#define PostIR1_Add_Circ 0x16
+#define PostIR1_Sub_Circ 0x17
+/* Indirect Addressing (Special Cases) */
+#define IndirectOnly 0x18
+#define PostIR0_Add_BitRev 0x19
+
+typedef struct {
+ char *syntax;
+ unsigned char modfield;
+ unsigned char displacement;
+} ind_addr_type;
+
+#define IMPLIED_DISP 0x01
+#define DISP_REQUIRED 0x02
+#define NO_DISP 0x03
+
+static const ind_addr_type tic30_indaddr_tab[] = {
+ { "*+ar", PreDisp_Add, IMPLIED_DISP },
+ { "*-ar", PreDisp_Sub, IMPLIED_DISP },
+ { "*++ar", PreDisp_Add_Mod, IMPLIED_DISP },
+ { "*--ar", PreDisp_Sub_Mod, IMPLIED_DISP },
+ { "*ar++", PostDisp_Add_Mod, IMPLIED_DISP },
+ { "*ar--", PostDisp_Sub_Mod, IMPLIED_DISP },
+ { "*ar++%", PostDisp_Add_Circ, IMPLIED_DISP },
+ { "*ar--%", PostDisp_Sub_Circ, IMPLIED_DISP },
+ { "*+ar()", PreDisp_Add, DISP_REQUIRED },
+ { "*-ar()", PreDisp_Sub, DISP_REQUIRED },
+ { "*++ar()", PreDisp_Add_Mod, DISP_REQUIRED },
+ { "*--ar()", PreDisp_Sub_Mod, DISP_REQUIRED },
+ { "*ar++()", PostDisp_Add_Mod, DISP_REQUIRED },
+ { "*ar--()", PostDisp_Sub_Mod, DISP_REQUIRED },
+ { "*ar++()%", PostDisp_Add_Circ, DISP_REQUIRED },
+ { "*ar--()%", PostDisp_Sub_Circ, DISP_REQUIRED },
+ { "*+ar(ir0)", PreIR0_Add, NO_DISP },
+ { "*-ar(ir0)", PreIR0_Sub, NO_DISP },
+ { "*++ar(ir0)", PreIR0_Add_Mod, NO_DISP },
+ { "*--ar(ir0)", PreIR0_Sub_Mod, NO_DISP },
+ { "*ar++(ir0)", PostIR0_Add_Mod, NO_DISP },
+ { "*ar--(ir0)", PostIR0_Sub_Mod, NO_DISP },
+ { "*ar++(ir0)%",PostIR0_Add_Circ, NO_DISP },
+ { "*ar--(ir0)%",PostIR0_Sub_Circ, NO_DISP },
+ { "*+ar(ir1)", PreIR1_Add, NO_DISP },
+ { "*-ar(ir1)", PreIR1_Sub, NO_DISP },
+ { "*++ar(ir1)", PreIR1_Add_Mod, NO_DISP },
+ { "*--ar(ir1)", PreIR1_Sub_Mod, NO_DISP },
+ { "*ar++(ir1)", PostIR1_Add_Mod, NO_DISP },
+ { "*ar--(ir1)", PostIR1_Sub_Mod, NO_DISP },
+ { "*ar++(ir1)%",PostIR1_Add_Circ, NO_DISP },
+ { "*ar--(ir1)%",PostIR1_Sub_Circ, NO_DISP },
+ { "*ar", IndirectOnly, NO_DISP },
+ { "*ar++(ir0)b",PostIR0_Add_BitRev, NO_DISP },
+ { "", 0,0 }
+};
+
+static const ind_addr_type *const tic30_indaddrtab_end
+ = tic30_indaddr_tab + sizeof(tic30_indaddr_tab)/sizeof(tic30_indaddr_tab[0]);
+
+/* Possible operand types */
+/* Register types */
+#define Rn 0x0001
+#define ARn 0x0002
+#define DPReg 0x0004
+#define OtherReg 0x0008
+/* Addressing mode types */
+#define Direct 0x0010
+#define Indirect 0x0020
+#define Imm16 0x0040
+#define Disp 0x0080
+#define Imm24 0x0100
+#define Abs24 0x0200
+/* 3 operand addressing mode types */
+#define op3T1 0x0400
+#define op3T2 0x0800
+/* Interrupt vector */
+#define IVector 0x1000
+/* Not required */
+#define NotReq 0x2000
+
+#define GAddr1 Rn | Direct | Indirect | Imm16
+#define GAddr2 GAddr1 | AllReg
+#define TAddr1 op3T1 | Rn | Indirect
+#define TAddr2 op3T2 | Rn | Indirect
+#define Reg Rn | ARn
+#define AllReg Reg | DPReg | OtherReg
+
+typedef struct _template
+{
+ char *name;
+ unsigned int operands; /* how many operands */
+ unsigned int base_opcode; /* base_opcode is the fundamental opcode byte */
+ /* the bits in opcode_modifier are used to generate the final opcode from
+ the base_opcode. These bits also are used to detect alternate forms of
+ the same instruction */
+ unsigned int opcode_modifier;
+
+ /* opcode_modifier bits: */
+#define AddressMode 0x00600000
+#define PCRel 0x02000000
+#define StackOp 0x001F0000
+#define Rotate StackOp
+
+ /* operand_types[i] describes the type of operand i. This is made
+ by OR'ing together all of the possible type masks. (e.g.
+ 'operand_types[i] = Reg|Imm' specifies that operand i can be
+ either a register or an immediate operand */
+ unsigned int operand_types[3];
+ /* This defines the number type of an immediate argument to an instruction. */
+ int imm_arg_type;
+#define Imm_None 0
+#define Imm_Float 1
+#define Imm_SInt 2
+#define Imm_UInt 3
+}
+template;
+
+static const template tic30_optab[] = {
+ { "absf" ,2,0x00000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "absi" ,2,0x00800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "addc" ,2,0x01000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "addc3" ,3,0x20000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "addf" ,2,0x01800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "addf3" ,3,0x20800000,AddressMode, { TAddr1, TAddr2, Rn }, Imm_None },
+ { "addi" ,2,0x02000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "addi3" ,3,0x21000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "and" ,2,0x02800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "and3" ,3,0x21800000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "andn" ,2,0x03000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "andn3" ,3,0x22000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "ash" ,2,0x03800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ash3" ,3,0x22800000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "b" ,1,0x68000000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bu" ,1,0x68000000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blo" ,1,0x68010000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bls" ,1,0x68020000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bhi" ,1,0x68030000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bhs" ,1,0x68040000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "beq" ,1,0x68050000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bne" ,1,0x68060000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blt" ,1,0x68070000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "ble" ,1,0x68080000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bgt" ,1,0x68090000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bge" ,1,0x680A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bz" ,1,0x68050000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnz" ,1,0x68060000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bp" ,1,0x68090000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bn" ,1,0x68070000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnn" ,1,0x680A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnv" ,1,0x680C0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bv" ,1,0x680D0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnuf" ,1,0x680E0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "buf" ,1,0x680F0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnc" ,1,0x68040000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bc" ,1,0x68010000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnlv" ,1,0x68100000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blv" ,1,0x68110000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnluf" ,1,0x68120000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bluf" ,1,0x68130000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bzuf" ,1,0x68140000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bd" ,1,0x68200000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bud" ,1,0x68200000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blod" ,1,0x68210000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blsd" ,1,0x68220000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bhid" ,1,0x68230000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bhsd" ,1,0x68240000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "beqd" ,1,0x68250000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bned" ,1,0x68260000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bltd" ,1,0x68270000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bled" ,1,0x68280000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bgtd" ,1,0x68290000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bged" ,1,0x682A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bzd" ,1,0x68250000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnzd" ,1,0x68260000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bpd" ,1,0x68290000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnd" ,1,0x68270000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnnd" ,1,0x682A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnvd" ,1,0x682C0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bvd" ,1,0x682D0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnufd" ,1,0x682E0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bufd" ,1,0x682F0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bncd" ,1,0x68240000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bcd" ,1,0x68210000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnlvd" ,1,0x68300000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blvd" ,1,0x68310000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bnlufd" ,1,0x68320000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "blufd" ,1,0x68330000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "bzufd" ,1,0x68340000,PCRel, { AllReg|Disp, 0, 0 }, Imm_None },
+ { "br" ,1,0x60000000,0, { Imm24, 0, 0 }, Imm_UInt },
+ { "brd" ,1,0x61000000,0, { Imm24, 0, 0 }, Imm_UInt },
+ { "call" ,1,0x62000000,0, { Imm24, 0, 0 }, Imm_UInt },
+ { "callu" ,1,0x70000000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calllo" ,1,0x70010000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callls" ,1,0x70020000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callhi" ,1,0x70030000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callhs" ,1,0x70040000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calleq" ,1,0x70050000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callne" ,1,0x70060000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calllt" ,1,0x70070000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callle" ,1,0x70080000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callgt" ,1,0x70090000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callge" ,1,0x700A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callz" ,1,0x70050000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnz" ,1,0x70060000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callp" ,1,0x70090000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calln" ,1,0x70070000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnn" ,1,0x700A0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnv" ,1,0x700C0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callv" ,1,0x700D0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnuf",1,0x700E0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calluf" ,1,0x700F0000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnc" ,1,0x70040000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callc" ,1,0x70010000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnlv",1,0x70100000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "calllv" ,1,0x70110000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callnluf",1,0x70120000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callluf",1,0x70130000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "callzuf",1,0x70140000,PCRel, { AllReg|Disp, 0, 0 }, Imm_UInt },
+ { "cmpf" ,2,0x04000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "cmpf3" ,2,0x23000000,AddressMode, { TAddr1, TAddr2, 0 }, Imm_None },
+ { "cmpi" ,2,0x04800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "cmpi3" ,2,0x23800000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, 0 }, Imm_None },
+ { "db" ,2,0x6C000000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbu" ,2,0x6C000000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblo" ,2,0x6C010000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbls" ,2,0x6C020000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbhi" ,2,0x6C030000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbhs" ,2,0x6C040000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbeq" ,2,0x6C050000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbne" ,2,0x6C060000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblt" ,2,0x6C070000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dble" ,2,0x6C080000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbgt" ,2,0x6C090000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbge" ,2,0x6C0A0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbz" ,2,0x6C050000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnz" ,2,0x6C060000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbp" ,2,0x6C090000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbn" ,2,0x6C070000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnn" ,2,0x6C0A0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnv" ,2,0x6C0C0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbv" ,2,0x6C0D0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnuf" ,2,0x6C0E0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbuf" ,2,0x6C0F0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnc" ,2,0x6C040000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbc" ,2,0x6C010000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnlv" ,2,0x6C100000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblv" ,2,0x6C110000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnluf" ,2,0x6C120000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbluf" ,2,0x6C130000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbzuf" ,2,0x6C140000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbd" ,2,0x6C200000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbud" ,2,0x6C200000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblod" ,2,0x6C210000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblsd" ,2,0x6C220000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbhid" ,2,0x6C230000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbhsd" ,2,0x6C240000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbeqd" ,2,0x6C250000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbned" ,2,0x6C260000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbltd" ,2,0x6C270000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbled" ,2,0x6C280000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbgtd" ,2,0x6C290000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbged" ,2,0x6C2A0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbzd" ,2,0x6C250000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnzd" ,2,0x6C260000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbpd" ,2,0x6C290000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnd" ,2,0x6C270000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnnd" ,2,0x6C2A0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnvd" ,2,0x6C2C0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbvd" ,2,0x6C2D0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnufd" ,2,0x6C2E0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbufd" ,2,0x6C2F0000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbncd" ,2,0x6C240000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbcd" ,2,0x6C210000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnlvd" ,2,0x6C300000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblvd" ,2,0x6C310000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbnlufd",2,0x6C320000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dblufd" ,2,0x6C330000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "dbzufd" ,2,0x6C340000,PCRel, { ARn, AllReg|Disp, 0 }, Imm_None },
+ { "fix" ,2,0x05000000,AddressMode, { GAddr1, AllReg, 0 }, Imm_Float },
+ { "float" ,2,0x05800000,AddressMode, { GAddr2, Rn, 0 }, Imm_SInt },
+ { "iack" ,1,0x1B000000,AddressMode, { Direct|Indirect, 0, 0 }, Imm_None },
+ { "idle" ,0,0x06000000,0, { 0, 0, 0 }, Imm_None },
+ { "idle2" ,0,0x06000001,0, { 0, 0, 0 }, Imm_None }, /* LC31 Only */
+ { "lde" ,2,0x06800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldf" ,2,0x07000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfu" ,2,0x40000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldflo" ,2,0x40800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfls" ,2,0x41000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfhi" ,2,0x41800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfhs" ,2,0x42000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfeq" ,2,0x42800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfne" ,2,0x43000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldflt" ,2,0x43800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfle" ,2,0x44000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfgt" ,2,0x44800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfge" ,2,0x45000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfz" ,2,0x42800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnz" ,2,0x43000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfp" ,2,0x44800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfn" ,2,0x43800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnn" ,2,0x45000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnv" ,2,0x46000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfv" ,2,0x46800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnuf" ,2,0x47000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfuf" ,2,0x47800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnc" ,2,0x42000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfc" ,2,0x40800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnlv" ,2,0x48000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldflv" ,2,0x48800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfnluf",2,0x49000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfluf" ,2,0x49800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfzuf" ,2,0x4A000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldfi" ,2,0x07800000,AddressMode, { Direct|Indirect, Rn, 0 }, Imm_None },
+ { "ldi" ,2,0x08000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldiu" ,2,0x50000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldilo" ,2,0x50800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldils" ,2,0x51000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldihi" ,2,0x51800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldihs" ,2,0x52000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldieq" ,2,0x52800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldine" ,2,0x53000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldilt" ,2,0x53800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldile" ,2,0x54000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldigt" ,2,0x54800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldige" ,2,0x55000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldiz" ,2,0x52800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinz" ,2,0x53000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldip" ,2,0x54800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldin" ,2,0x53800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinn" ,2,0x55000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinv" ,2,0x56000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldiv" ,2,0x56800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinuf" ,2,0x57000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldiuf" ,2,0x57800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinc" ,2,0x52000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldic" ,2,0x50800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinlv" ,2,0x58000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldilv" ,2,0x58800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldinluf",2,0x59000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldiluf" ,2,0x59800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldizuf" ,2,0x5A000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "ldii" ,2,0x08800000,AddressMode, { Direct|Indirect, AllReg, 0 }, Imm_None },
+ { "ldm" ,2,0x09000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "ldp" ,2,0x08700000,0, { Abs24|Direct, DPReg|NotReq, 0 }, Imm_UInt },
+ { "lopower",0,0x10800001,0, { 0, 0, 0 }, Imm_None }, /* LC31 Only */
+ { "lsh" ,2,0x09800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "lsh3" ,3,0x24000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "maxspeed",0,0x10800000,0, { 0, 0, 0 }, Imm_None }, /* LC31 Only */
+ { "mpyf" ,2,0x0A000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "mpyf3" ,3,0x24800000,AddressMode, { TAddr1, TAddr2, Rn }, Imm_None },
+ { "mpyi" ,2,0x0A800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "mpyi3" ,3,0x25000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "negb" ,2,0x0B000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "negf" ,2,0x0B800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "negi" ,2,0x0C000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "nop" ,1,0x0C800000,AddressMode, { AllReg|Indirect|NotReq, 0, 0 }, Imm_None },
+ { "norm" ,2,0x0D000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float }, /*Check another source*/
+ { "not" ,2,0x0D800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "or" ,2,0x10000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "or3" ,3,0x25800000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "pop" ,1,0x0E200000,StackOp, { AllReg, 0, 0 }, Imm_None },
+ { "popf" ,1,0x0EA00000,StackOp, { Rn, 0, 0 }, Imm_None },
+ { "push" ,1,0x0F200000,StackOp, { AllReg, 0, 0 }, Imm_None },
+ { "pushf" ,1,0x0FA00000,StackOp, { Rn, 0, 0 }, Imm_None },
+ { "reti" ,0,0x78000000,0, { 0, 0, 0 }, Imm_None },
+ { "retiu" ,0,0x78000000,0, { 0, 0, 0 }, Imm_None },
+ { "retilo" ,0,0x78010000,0, { 0, 0, 0 }, Imm_None },
+ { "retils" ,0,0x78020000,0, { 0, 0, 0 }, Imm_None },
+ { "retihi" ,0,0x78030000,0, { 0, 0, 0 }, Imm_None },
+ { "retihs" ,0,0x78040000,0, { 0, 0, 0 }, Imm_None },
+ { "retieq" ,0,0x78050000,0, { 0, 0, 0 }, Imm_None },
+ { "retine" ,0,0x78060000,0, { 0, 0, 0 }, Imm_None },
+ { "retilt" ,0,0x78070000,0, { 0, 0, 0 }, Imm_None },
+ { "retile" ,0,0x78080000,0, { 0, 0, 0 }, Imm_None },
+ { "retigt" ,0,0x78090000,0, { 0, 0, 0 }, Imm_None },
+ { "retige" ,0,0x780A0000,0, { 0, 0, 0 }, Imm_None },
+ { "retiz" ,0,0x78050000,0, { 0, 0, 0 }, Imm_None },
+ { "retinz" ,0,0x78060000,0, { 0, 0, 0 }, Imm_None },
+ { "retip" ,0,0x78090000,0, { 0, 0, 0 }, Imm_None },
+ { "retin" ,0,0x78070000,0, { 0, 0, 0 }, Imm_None },
+ { "retinn" ,0,0x780A0000,0, { 0, 0, 0 }, Imm_None },
+ { "retinv" ,0,0x780C0000,0, { 0, 0, 0 }, Imm_None },
+ { "retiv" ,0,0x780D0000,0, { 0, 0, 0 }, Imm_None },
+ { "retinuf",0,0x780E0000,0, { 0, 0, 0 }, Imm_None },
+ { "retiuf" ,0,0x780F0000,0, { 0, 0, 0 }, Imm_None },
+ { "retinc" ,0,0x78040000,0, { 0, 0, 0 }, Imm_None },
+ { "retic" ,0,0x78010000,0, { 0, 0, 0 }, Imm_None },
+ { "retinlv",0,0x78100000,0, { 0, 0, 0 }, Imm_None },
+ { "retilv" ,0,0x78110000,0, { 0, 0, 0 }, Imm_None },
+ { "retinluf",0,0x78120000,0, { 0, 0, 0 }, Imm_None },
+ { "retiluf",0,0x78130000,0, { 0, 0, 0 }, Imm_None },
+ { "retizuf",0,0x78140000,0, { 0, 0, 0 }, Imm_None },
+ { "rets" ,0,0x78800000,0, { 0, 0, 0 }, Imm_None },
+ { "retsu" ,0,0x78800000,0, { 0, 0, 0 }, Imm_None },
+ { "retslo" ,0,0x78810000,0, { 0, 0, 0 }, Imm_None },
+ { "retsls" ,0,0x78820000,0, { 0, 0, 0 }, Imm_None },
+ { "retshi" ,0,0x78830000,0, { 0, 0, 0 }, Imm_None },
+ { "retshs" ,0,0x78840000,0, { 0, 0, 0 }, Imm_None },
+ { "retseq" ,0,0x78850000,0, { 0, 0, 0 }, Imm_None },
+ { "retsne" ,0,0x78860000,0, { 0, 0, 0 }, Imm_None },
+ { "retslt" ,0,0x78870000,0, { 0, 0, 0 }, Imm_None },
+ { "retsle" ,0,0x78880000,0, { 0, 0, 0 }, Imm_None },
+ { "retsgt" ,0,0x78890000,0, { 0, 0, 0 }, Imm_None },
+ { "retsge" ,0,0x788A0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsz" ,0,0x78850000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnz" ,0,0x78860000,0, { 0, 0, 0 }, Imm_None },
+ { "retsp" ,0,0x78890000,0, { 0, 0, 0 }, Imm_None },
+ { "retsn" ,0,0x78870000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnn" ,0,0x788A0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnv" ,0,0x788C0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsv" ,0,0x788D0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnuf",0,0x788E0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsuf" ,0,0x788F0000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnc" ,0,0x78840000,0, { 0, 0, 0 }, Imm_None },
+ { "retsc" ,0,0x78810000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnlv",0,0x78900000,0, { 0, 0, 0 }, Imm_None },
+ { "retslv" ,0,0x78910000,0, { 0, 0, 0 }, Imm_None },
+ { "retsnluf",0,0x78920000,0, { 0, 0, 0 }, Imm_None },
+ { "retsluf",0,0x78930000,0, { 0, 0, 0 }, Imm_None },
+ { "retszuf",0,0x78940000,0, { 0, 0, 0 }, Imm_None },
+ { "rnd" ,2,0x11000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "rol" ,1,0x11E00001,Rotate, { AllReg, 0, 0 }, Imm_None },
+ { "rolc" ,1,0x12600001,Rotate, { AllReg, 0, 0 }, Imm_None },
+ { "ror" ,1,0x12E0FFFF,Rotate, { AllReg, 0, 0 }, Imm_None },
+ { "rorc" ,1,0x1360FFFF,Rotate, { AllReg, 0, 0 }, Imm_None },
+ { "rptb" ,1,0x64000000,0, { Imm24, 0, 0 }, Imm_UInt },
+ { "rpts" ,1,0x139B0000,AddressMode, { GAddr2, 0, 0 }, Imm_UInt },
+ { "sigi" ,0,0x16000000,0, { 0, 0, 0 }, Imm_None },
+ { "stf" ,2,0x14000000,AddressMode, { Rn, Direct|Indirect, 0 }, Imm_Float },
+ { "stfi" ,2,0x14800000,AddressMode, { Rn, Direct|Indirect, 0 }, Imm_Float },
+ { "sti" ,2,0x15000000,AddressMode, { AllReg, Direct|Indirect, 0 }, Imm_SInt },
+ { "stii" ,2,0x15800000,AddressMode, { AllReg, Direct|Indirect, 0 }, Imm_SInt },
+ { "subb" ,2,0x16800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "subb3" ,3,0x26000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "subc" ,2,0x17000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "subf" ,2,0x17800000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "subf3" ,3,0x26800000,AddressMode, { TAddr1, TAddr2, Rn }, Imm_None },
+ { "subi" ,2,0x18000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "subi3" ,3,0x27000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "subrb" ,2,0x18800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "subrf" ,2,0x19000000,AddressMode, { GAddr1, Rn, 0 }, Imm_Float },
+ { "subri" ,2,0x19800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_SInt },
+ { "swi" ,0,0x66000000,0, { 0, 0, 0 }, Imm_None },
+ { "trap" ,1,0x74800020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapu" ,1,0x74800020,0, { IVector, 0, 0 }, Imm_None },
+ { "traplo" ,1,0x74810020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapls" ,1,0x74820020,0, { IVector, 0, 0 }, Imm_None },
+ { "traphi" ,1,0x74830020,0, { IVector, 0, 0 }, Imm_None },
+ { "traphs" ,1,0x74840020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapeq" ,1,0x74850020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapne" ,1,0x74860020,0, { IVector, 0, 0 }, Imm_None },
+ { "traplt" ,1,0x74870020,0, { IVector, 0, 0 }, Imm_None },
+ { "traple" ,1,0x74880020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapgt" ,1,0x74890020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapge" ,1,0x748A0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapz" ,1,0x74850020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnz" ,1,0x74860020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapp" ,1,0x74890020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapn" ,1,0x74870020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnn" ,1,0x748A0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnv" ,1,0x748C0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapv" ,1,0x748D0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnuf",1,0x748E0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapuf" ,1,0x748F0020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnc" ,1,0x74840020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapc" ,1,0x74810020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnlv",1,0x74900020,0, { IVector, 0, 0 }, Imm_None },
+ { "traplv" ,1,0x74910020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapnluf",1,0x74920020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapluf",1,0x74930020,0, { IVector, 0, 0 }, Imm_None },
+ { "trapzuf",1,0x74940020,0, { IVector, 0, 0 }, Imm_None },
+ { "tstb" ,2,0x1A000000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "tstb3" ,2,0x27800000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, 0 }, Imm_None },
+ { "xor" ,2,0x1A800000,AddressMode, { GAddr2, AllReg, 0 }, Imm_UInt },
+ { "xor3" ,3,0x28000000,AddressMode, { TAddr1|AllReg, TAddr2|AllReg, AllReg }, Imm_None },
+ { "" ,0,0x00000000,0, { 0, 0, 0 }, 0 }
+};
+
+static const template *const tic30_optab_end =
+ tic30_optab + sizeof(tic30_optab)/sizeof(tic30_optab[0]);
+
+typedef struct {
+ char *name;
+ unsigned int operands_1;
+ unsigned int operands_2;
+ unsigned int base_opcode;
+ unsigned int operand_types[2][3];
+ /* Which operand fits into which part of the final opcode word. */
+ int oporder;
+} partemplate;
+
+/* oporder defines - not very descriptive. */
+#define OO_4op1 0
+#define OO_4op2 1
+#define OO_4op3 2
+#define OO_5op1 3
+#define OO_5op2 4
+#define OO_PField 5
+
+static const partemplate tic30_paroptab[] = {
+ { "q_absf_stf", 2,2,0xC8000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_absi_sti", 2,2,0xCA000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_addf3_stf", 3,2,0xCC000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_addi3_sti", 3,2,0xCE000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_and3_sti", 3,2,0xD0000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_ash3_sti", 3,2,0xD2000000, { { Rn, Indirect, Rn }, { Rn, Indirect, 0 } },
+ OO_5op2 },
+ { "q_fix_sti", 2,2,0xD4000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_float_stf", 2,2,0xD6000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_ldf_ldf", 2,2,0xC4000000, { { Indirect, Rn, 0 }, { Indirect, Rn, 0 } },
+ OO_4op2 },
+ { "q_ldf_stf", 2,2,0xD8000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_ldi_ldi", 2,2,0xC6000000, { { Indirect, Rn, 0 }, { Indirect, Rn, 0 } },
+ OO_4op2 },
+ { "q_ldi_sti", 2,2,0xDA000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_lsh3_sti", 3,2,0xDC000000, { { Rn, Indirect, Rn }, { Rn, Indirect, 0 } },
+ OO_5op2 },
+ { "q_mpyf3_addf3",3,3,0x80000000, { { Rn | Indirect, Rn | Indirect, Rn },
+ { Rn | Indirect, Rn | Indirect, Rn } }, OO_PField },
+ { "q_mpyf3_stf", 3,2,0xDE000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_mpyf3_subf3",3,3,0x84000000, { { Rn | Indirect, Rn | Indirect, Rn },
+ { Rn | Indirect, Rn | Indirect, Rn } }, OO_PField },
+ { "q_mpyi3_addi3",3,3,0x88000000, { { Rn | Indirect, Rn | Indirect, Rn },
+ { Rn | Indirect, Rn | Indirect, Rn } }, OO_PField },
+ { "q_mpyi3_sti", 3,2,0xE0000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_mpyi3_subi3",3,3,0x8C000000, { { Rn | Indirect, Rn | Indirect, Rn },
+ { Rn | Indirect, Rn | Indirect, Rn } }, OO_PField },
+ { "q_negf_stf", 2,2,0xE2000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_negi_sti", 2,2,0xE4000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_not_sti", 2,2,0xE6000000, { { Indirect, Rn, 0 }, { Rn, Indirect, 0 } },
+ OO_4op1 },
+ { "q_or3_sti", 3,2,0xE8000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "q_stf_stf", 2,2,0xC0000000, { { Rn, Indirect, 0 }, { Rn, Indirect, 0 } },
+ OO_4op3 },
+ { "q_sti_sti", 2,2,0xC2000000, { { Rn, Indirect, 0 }, { Rn, Indirect, 0 } },
+ OO_4op3 },
+ { "q_subf3_stf", 3,2,0xEA000000, { { Rn, Indirect, Rn }, { Rn, Indirect, 0 } },
+ OO_5op2 },
+ { "q_subi3_sti", 3,2,0xEC000000, { { Rn, Indirect, Rn }, { Rn, Indirect, 0 } },
+ OO_5op2 },
+ { "q_xor3_sti", 3,2,0xEE000000, { { Indirect, Rn, Rn }, { Rn, Indirect, 0 } },
+ OO_5op1 },
+ { "", 0,0,0x00000000, { { 0, 0, 0 }, { 0, 0, 0 } }, 0 }
+};
+
+static const partemplate *const tic30_paroptab_end =
+ tic30_paroptab + sizeof(tic30_paroptab)/sizeof(tic30_paroptab[0]);
+
+#endif
diff --git a/include/opcode/tic4x.h b/include/opcode/tic4x.h
new file mode 100644
index 000000000..0e6af6460
--- /dev/null
+++ b/include/opcode/tic4x.h
@@ -0,0 +1,1079 @@
+/* Table of opcodes for the Texas Instruments TMS320C[34]X family.
+
+ Copyright (C) 2002, 2003 Free Software Foundation.
+
+ Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+*/
+
+#define IS_CPU_TIC3X(v) ((v) == 30 || (v) == 31 || (v) == 32 || (v) == 33)
+#define IS_CPU_TIC4X(v) ((v) == 0 || (v) == 40 || (v) == 44)
+
+/* Define some bitfield extraction/insertion macros. */
+#define EXTR(inst, m, l) ((inst) << (31 - (m)) >> (31 - ((m) - (l))))
+#define EXTRU(inst, m, l) EXTR ((unsigned long)(inst), (m), (l))
+#define EXTRS(inst, m, l) EXTR ((long)(inst), (m), (l))
+#define INSERTU(inst, val, m, l) (inst |= ((val) << (l)))
+#define INSERTS(inst, val, m, l) INSERTU (inst, ((val) & ((1 << ((m) - (l) + 1)) - 1)), m, l)
+
+/* Define register numbers. */
+typedef enum
+ {
+ REG_R0, REG_R1, REG_R2, REG_R3,
+ REG_R4, REG_R5, REG_R6, REG_R7,
+ REG_AR0, REG_AR1, REG_AR2, REG_AR3,
+ REG_AR4, REG_AR5, REG_AR6, REG_AR7,
+ REG_DP, REG_IR0, REG_IR1, REG_BK,
+ REG_SP, REG_ST, REG_DIE, REG_IIE,
+ REG_IIF, REG_RS, REG_RE, REG_RC,
+ REG_R8, REG_R9, REG_R10, REG_R11,
+ REG_IVTP, REG_TVTP
+ }
+c4x_reg_t;
+
+/* Note that the actual register numbers for IVTP is 0 and TVTP is 1. */
+
+#define REG_IE REG_DIE /* C3x only */
+#define REG_IF REG_IIE /* C3x only */
+#define REG_IOF REG_IIF /* C3x only */
+
+#define TIC3X_REG_MAX REG_RC
+#define TIC4X_REG_MAX REG_TVTP
+
+/* Register table size including C4x expansion regs. */
+#define REG_TABLE_SIZE (TIC4X_REG_MAX + 1)
+
+struct tic4x_register
+{
+ char * name;
+ unsigned long regno;
+};
+
+typedef struct tic4x_register tic4x_register_t;
+
+/* We could store register synonyms here. */
+static const tic4x_register_t tic3x_registers[] =
+{
+ {"f0", REG_R0},
+ {"r0", REG_R0},
+ {"f1", REG_R1},
+ {"r1", REG_R1},
+ {"f2", REG_R2},
+ {"r2", REG_R2},
+ {"f3", REG_R3},
+ {"r3", REG_R3},
+ {"f4", REG_R4},
+ {"r4", REG_R4},
+ {"f5", REG_R5},
+ {"r5", REG_R5},
+ {"f6", REG_R6},
+ {"r6", REG_R6},
+ {"f7", REG_R7},
+ {"r7", REG_R7},
+ {"ar0", REG_AR0},
+ {"ar1", REG_AR1},
+ {"ar2", REG_AR2},
+ {"ar3", REG_AR3},
+ {"ar4", REG_AR4},
+ {"ar5", REG_AR5},
+ {"ar6", REG_AR6},
+ {"ar7", REG_AR7},
+ {"dp", REG_DP},
+ {"ir0", REG_IR0},
+ {"ir1", REG_IR1},
+ {"bk", REG_BK},
+ {"sp", REG_SP},
+ {"st", REG_ST},
+ {"ie", REG_IE},
+ {"if", REG_IF},
+ {"iof", REG_IOF},
+ {"rs", REG_RS},
+ {"re", REG_RE},
+ {"rc", REG_RC},
+ {"", 0}
+};
+
+const unsigned int tic3x_num_registers = (((sizeof tic3x_registers) / (sizeof tic3x_registers[0])) - 1);
+
+/* Define C4x registers in addition to C3x registers. */
+static const tic4x_register_t tic4x_registers[] =
+{
+ {"die", REG_DIE}, /* Clobbers C3x REG_IE */
+ {"iie", REG_IIE}, /* Clobbers C3x REG_IF */
+ {"iif", REG_IIF}, /* Clobbers C3x REG_IOF */
+ {"f8", REG_R8},
+ {"r8", REG_R8},
+ {"f9", REG_R9},
+ {"r9", REG_R9},
+ {"f10", REG_R10},
+ {"r10", REG_R10},
+ {"f11", REG_R11},
+ {"r11", REG_R11},
+ {"ivtp", REG_IVTP},
+ {"tvtp", REG_TVTP},
+ {"", 0}
+};
+
+const unsigned int tic4x_num_registers = (((sizeof tic4x_registers) / (sizeof tic4x_registers[0])) - 1);
+
+struct tic4x_cond
+{
+ char * name;
+ unsigned long cond;
+};
+
+typedef struct tic4x_cond tic4x_cond_t;
+
+/* Define conditional branch/load suffixes. Put desired form for
+ disassembler last. */
+static const tic4x_cond_t tic4x_conds[] =
+{
+ { "u", 0x00 },
+ { "c", 0x01 }, { "lo", 0x01 },
+ { "ls", 0x02 },
+ { "hi", 0x03 },
+ { "nc", 0x04 }, { "hs", 0x04 },
+ { "z", 0x05 }, { "eq", 0x05 },
+ { "nz", 0x06 }, { "ne", 0x06 },
+ { "n", 0x07 }, { "l", 0x07 }, { "lt", 0x07 },
+ { "le", 0x08 },
+ { "p", 0x09 }, { "gt", 0x09 },
+ { "nn", 0x0a }, { "ge", 0x0a },
+ { "nv", 0x0c },
+ { "v", 0x0d },
+ { "nuf", 0x0e },
+ { "uf", 0x0f },
+ { "nlv", 0x10 },
+ { "lv", 0x11 },
+ { "nluf", 0x12 },
+ { "luf", 0x13 },
+ { "zuf", 0x14 },
+ /* Dummy entry, not included in num_conds. This
+ lets code examine entry i+1 without checking
+ if we've run off the end of the table. */
+ { "", 0x0}
+};
+
+const unsigned int tic4x_num_conds = (((sizeof tic4x_conds) / (sizeof tic4x_conds[0])) - 1);
+
+struct tic4x_indirect
+{
+ char * name;
+ unsigned long modn;
+};
+
+typedef struct tic4x_indirect tic4x_indirect_t;
+
+/* Define indirect addressing modes where:
+ d displacement (signed)
+ y ir0
+ z ir1 */
+
+static const tic4x_indirect_t tic4x_indirects[] =
+{
+ { "*+a(d)", 0x00 },
+ { "*-a(d)", 0x01 },
+ { "*++a(d)", 0x02 },
+ { "*--a(d)", 0x03 },
+ { "*a++(d)", 0x04 },
+ { "*a--(d)", 0x05 },
+ { "*a++(d)%", 0x06 },
+ { "*a--(d)%", 0x07 },
+ { "*+a(y)", 0x08 },
+ { "*-a(y)", 0x09 },
+ { "*++a(y)", 0x0a },
+ { "*--a(y)", 0x0b },
+ { "*a++(y)", 0x0c },
+ { "*a--(y)", 0x0d },
+ { "*a++(y)%", 0x0e },
+ { "*a--(y)%", 0x0f },
+ { "*+a(z)", 0x10 },
+ { "*-a(z)", 0x11 },
+ { "*++a(z)", 0x12 },
+ { "*--a(z)", 0x13 },
+ { "*a++(z)", 0x14 },
+ { "*a--(z)", 0x15 },
+ { "*a++(z)%", 0x16 },
+ { "*a--(z)%", 0x17 },
+ { "*a", 0x18 },
+ { "*a++(y)b", 0x19 },
+ /* Dummy entry, not included in num_indirects. This
+ lets code examine entry i+1 without checking
+ if we've run off the end of the table. */
+ { "", 0x0}
+};
+
+#define TIC3X_MODN_MAX 0x19
+
+const unsigned int tic4x_num_indirects = (((sizeof tic4x_indirects) / (sizeof tic4x_indirects[0])) - 1);
+
+/* Instruction template. */
+struct tic4x_inst
+{
+ char * name;
+ unsigned long opcode;
+ unsigned long opmask;
+ char * args;
+ unsigned long oplevel;
+};
+
+typedef struct tic4x_inst tic4x_inst_t;
+
+/* Opcode infix
+ B condition 16--20 U,C,Z,LO,HI, etc.
+ C condition 23--27 U,C,Z,LO,HI, etc.
+
+ Arguments
+ , required arg follows
+ ; optional arg follows
+
+ Argument types bits [classes] - example
+ -----------------------------------------------------------
+ * indirect (all) 0--15 [A,AB,AU,AF,A2,A3,A6,A7,AY,B,BA,BB,BI,B6,B7] - *+AR0(5), *++AR0(IR0)
+ # direct (for LDP) 0--15 [Z] - @start, start
+ @ direct 0--15 [A,AB,AU,AF,A3,A6,A7,AY,B,BA,BB,BI,B6,B7] - @start, start
+ A address register 22--24 [D] - AR0, AR7
+ B unsigned integer 0--23 [I,I2] - @start, start (absolute on C3x, relative on C4x)
+ C indirect (disp - C4x) 0--7 [S,SC,S2,T,TC,T2,T2C] - *+AR0(5)
+ E register (all) 0--7 [T,TC,T2,T2C] - R0, R7, R11, AR0, DP
+ e register (0-11) 0--7 [S,SC,S2] - R0, R7, R11
+ F short float immediate 0--15 [AF,B,BA,BB] - 3.5, 0e-3.5e-1
+ G register (all) 8--15 [T,TC,T2,T2C] - R0, R7, R11, AR0, DP
+ g register (0-11) 0--7 [S,SC,S2] - R0, R7, R11
+ H register (0-7) 18--16 [LS,M,P,Q] - R0, R7
+ I indirect (no disp) 0--7 [S,SC,S2,T,TC,T2,T2C] - *+AR0(1), *+AR0(IR0)
+ i indirect (enhanced) 0--7 [LL,LS,M,P,Q,QC] - *+AR0(1), R5
+ J indirect (no disp) 8--15 [LL,LS,P,Q,QC,S,SC,S2,T,TC,T2,T2C] - *+AR0(1), *+AR0(IR0)
+ j indirect (enhanced) 8--15 [M] - *+AR0(1), R5
+ K register 19--21 [LL,M,Q,QC] - R0, R7
+ L register 22--24 [LL,LS,P,Q,QC] - R0, R7
+ M register (R2,R3) 22--22 [M] R2, R3
+ N register (R0,R1) 23--23 [M] R0, R1
+ O indirect(disp - C4x) 8--15 [S,SC,S2,T,TC,T2] - *+AR0(5)
+ P displacement (PC Rel) 0--15 [D,J,JS] - @start, start
+ Q register (all) 0--15 [A,AB,AU,A2,A3,AY,BA,BI,D,I2,J,JS] - R0, AR0, DP, SP
+ q register (0-11) 0--15 [AF,B,BB] - R0, R7, R11
+ R register (all) 16--20 [A,AB,AU,AF,A6,A7,R,T,TC] - R0, AR0, DP, SP
+ r register (0-11) 16--20 [B,BA,BB,BI,B6,B7,RF,S,SC] - R0, R1, R11
+ S short int immediate 0--15 [A,AB,AY,BI] - -5, 5
+ T integer (C4x) 16--20 [Z] - -5, 12
+ U unsigned integer 0--15 [AU,A3] - 0, 65535
+ V vector (C4x: 0--8) 0--4 [Z] - 25, 7
+ W short int (C4x) 0--7 [T,TC,T2,T2C] - -3, 5
+ X expansion reg (C4x) 0--4 [Z] - IVTP, TVTP
+ Y address reg (C4x) 16--20 [Z] - AR0, DP, SP, IR0
+ Z expansion reg (C4x) 16--20 [Z] - IVTP, TVTP
+*/
+
+#define TIC4X_OPERANDS_MAX 7 /* Max number of operands for an inst. */
+#define TIC4X_NAME_MAX 16 /* Max number of chars in parallel name. */
+
+/* Define the instruction level */
+#define OP_C3X 0x1 /* C30 support - supported by all */
+#define OP_C4X 0x2 /* C40 support - C40, C44 */
+#define OP_ENH 0x4 /* Class LL,LS,M,P,Q,QC enhancements. Argument type
+ I and J is enhanced in these classes - C31>=6.0,
+ C32>=2.0, C33 */
+#define OP_LPWR 0x8 /* Low power support (LOPOWER, MAXSPEED) - C30>=7.0,
+ LC31, C31>=5.0, C32 */
+#define OP_IDLE2 0x10 /* Idle2 support (IDLE2) - C30>=7.0, LC31, C31>=5.0,
+ C32, C33, C40>=5.0, C44 */
+
+/* The following class definition is a classification scheme for
+ putting instructions with similar type of arguments together. It
+ simplifies the op-code definitions significantly, as we then only
+ need to use the class macroes for 95% of the DSP's opcodes.
+*/
+
+/* A: General 2-operand integer operations
+ Syntax: <i> src, dst
+ src = Register (Q), Direct (@), Indirect (*), Signed immediate (S)
+ dst = Register (R)
+ Instr: 15/8 - ABSI, ADDC, ADDI, ASH, CMPI, LDI, LSH, MPYI, NEGB, NEGI,
+ SUBB, SUBC, SUBI, SUBRB, SUBRI, C4x: LBn, LHn, LWLn, LWRn,
+ MBn, MHn, MPYSHI, MPYUHI
+*/
+#define A_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q;R", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,R", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,R", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "S,R", level }
+
+/* AB: General 2-operand integer operation with condition
+ Syntax: <i>c src, dst
+ c = Condition
+ src = Register (Q), Direct (@), Indirect (*), Signed immediate (S)
+ dst = Register (R)
+ Instr: 1/0 - LDIc
+*/
+#define AB_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x40000000, 0xf0600000, "Q;R", level }, \
+ { name, opcode|0x40200000, 0xf0600000, "@,R", level }, \
+ { name, opcode|0x40400000, 0xf0600000, "*,R", level }, \
+ { name, opcode|0x40600000, 0xf0600000, "S,R", level }
+
+/* AU: General 2-operand unsigned integer operation
+ Syntax: <i> src, dst
+ src = Register (Q), Direct (@), Indirect (*), Unsigned immediate (U)
+ dst = Register (R)
+ Instr: 6/2 - AND, ANDN, NOT, OR, TSTB, XOR, C4x: LBUn, LHUn
+*/
+#define AU_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q;R", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,R", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,R", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "U,R", level }
+
+/* AF: General 2-operand float to integer operation
+ Syntax: <i> src, dst
+ src = Register 0-11 (q), Direct (@), Indirect (*), Float immediate (F)
+ dst = Register (R)
+ Instr: 1/0 - FIX
+*/
+#define AF_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "q;R", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,R", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,R", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "F,R", level }
+
+/* A2: Limited 1-operand (integer) operation
+ Syntax: <i> src
+ src = Register (Q), Indirect (*), None
+ Instr: 1/0 - NOP
+*/
+#define A2_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*", level }, \
+ { name, opcode|0x00000000, 0xffe00000, "" , level }
+
+/* A3: General 1-operand unsigned integer operation
+ Syntax: <i> src
+ src = Register (Q), Direct (@), Indirect (*), Unsigned immediate (U)
+ Instr: 1/0 - RPTS
+*/
+#define A3_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffff0000, "Q", level }, \
+ { name, opcode|0x00200000, 0xffff0000, "@", level }, \
+ { name, opcode|0x00400000, 0xffff0000, "*", level }, \
+ { name, opcode|0x00600000, 0xffff0000, "U", level }
+
+/* A6: Limited 2-operand integer operation
+ Syntax: <i> src, dst
+ src = Direct (@), Indirect (*)
+ dst = Register (R)
+ Instr: 1/1 - LDII, C4x: SIGI
+*/
+#define A6_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00200000, 0xffe00000, "@,R", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,R", level }
+
+/* A7: Limited 2-operand integer store operation
+ Syntax: <i> src, dst
+ src = Register (R)
+ dst = Direct (@), Indirect (*)
+ Instr: 2/0 - STI, STII
+*/
+#define A7_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00200000, 0xffe00000, "R,@", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "R,*", level }
+
+/* AY: General 2-operand signed address load operation
+ Syntax: <i> src, dst
+ src = Register (Q), Direct (@), Indirect (*), Signed immediate (S)
+ dst = Address register - ARx, IRx, DP, BK, SP (Y)
+ Instr: 0/1 - C4x: LDA
+ Note: Q and Y should *never* be the same register
+*/
+#define AY_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q,Y", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,Y", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,Y", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "S,Y", level }
+
+/* B: General 2-operand float operation
+ Syntax: <i> src, dst
+ src = Register 0-11 (q), Direct (@), Indirect (*), Float immediate (F)
+ dst = Register 0-11 (r)
+ Instr: 12/2 - ABSF, ADDF, CMPF, LDE, LDF, LDM, MPYF, NEGF, NORM, RND,
+ SUBF, SUBRF, C4x: RSQRF, TOIEEE
+*/
+#define B_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "q;r", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,r", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,r", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "F,r", level }
+
+/* BA: General 2-operand integer to float operation
+ Syntax: <i> src, dst
+ src = Register (Q), Direct (@), Indirect (*), Float immediate (F)
+ dst = Register 0-11 (r)
+ Instr: 0/1 - C4x: CRCPF
+*/
+#define BA_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q;r", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,r", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,r", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "F,r", level }
+
+/* BB: General 2-operand conditional float operation
+ Syntax: <i>c src, dst
+ c = Condition
+ src = Register 0-11 (q), Direct (@), Indirect (*), Float immediate (F)
+ dst = Register 0-11 (r)
+ Instr: 1/0 - LDFc
+*/
+#define BB_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x40000000, 0xf0600000, "q;r", level }, \
+ { name, opcode|0x40200000, 0xf0600000, "@,r", level }, \
+ { name, opcode|0x40400000, 0xf0600000, "*,r", level }, \
+ { name, opcode|0x40600000, 0xf0600000, "F,r", level }
+
+/* BI: General 2-operand integer to float operation (yet different to BA)
+ Syntax: <i> src, dst
+ src = Register (Q), Direct (@), Indirect (*), Signed immediate (S)
+ dst = Register 0-11 (r)
+ Instr: 1/0 - FLOAT
+*/
+#define BI_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00000000, 0xffe00000, "Q;r", level }, \
+ { name, opcode|0x00200000, 0xffe00000, "@,r", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,r", level }, \
+ { name, opcode|0x00600000, 0xffe00000, "S,r", level }
+
+/* B6: Limited 2-operand float operation
+ Syntax: <i> src, dst
+ src = Direct (@), Indirect (*)
+ dst = Register 0-11 (r)
+ Instr: 1/1 - LDFI, C4x: FRIEEE
+*/
+#define B6_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00200000, 0xffe00000, "@,r", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "*,r", level }
+
+/* B7: Limited 2-operand float store operation
+ Syntax: <i> src, dst
+ src = Register 0-11 (r)
+ dst = Direct (@), Indirect (*)
+ Instr: 2/0 - STF, STFI
+*/
+#define B7_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x00200000, 0xffe00000, "r,@", level }, \
+ { name, opcode|0x00400000, 0xffe00000, "r,*", level }
+
+/* D: Decrement and brach operations
+ Syntax: <i>c ARn, dst
+ c = condition
+ ARn = AR register 0-7 (A)
+ dst = Register (Q), PC-relative (P)
+ Instr: 2/0 - DBc, DBcD
+ Alias: <name1> <name2>
+*/
+#define D_CLASS_INSN(name1, name2, opcode, level) \
+ { name1, opcode|0x00000000, 0xfe200000, "A,Q", level }, \
+ { name1, opcode|0x02000000, 0xfe200000, "A,P", level }, \
+ { name2, opcode|0x00000000, 0xfe200000, "A,Q", level }, \
+ { name2, opcode|0x02000000, 0xfe200000, "A,P", level }
+
+/* I: General branch operations
+ Syntax: <i> dst
+ dst = Address (B)
+ Instr: 3/1 - BR, BRD, CALL, C4x: LAJ
+*/
+
+/* I2: General branch operations (C4x addition)
+ Syntax: <i> dst
+ dst = Address (B), C4x: Register (Q)
+ Instr: 2/0 - RPTB, RPTBD
+*/
+
+/* J: General conditional branch operations
+ Syntax: <i>c dst
+ c = Condition
+ dst = Register (Q), PC-relative (P)
+ Instr: 2/3 - Bc, BcD, C4x: BcAF, BcAT, LAJc
+ Alias: <name1> <name2>
+*/
+#define J_CLASS_INSN(name1, name2, opcode, level) \
+ { name1, opcode|0x00000000, 0xffe00000, "Q", level }, \
+ { name1, opcode|0x02000000, 0xffe00000, "P", level }, \
+ { name2, opcode|0x00000000, 0xffe00000, "Q", level }, \
+ { name2, opcode|0x02000000, 0xffe00000, "P", level }
+
+/* JS: General conditional branch operations
+ Syntax: <i>c dst
+ c = Condition
+ dst = Register (Q), PC-relative (P)
+ Instr: 1/1 - CALLc, C4X: LAJc
+*/
+
+/* LL: Load-load parallell operation
+ Syntax: <i> src2, dst2 || <i> src1, dst1
+ src1 = Indirect 0,1,IR0,IR1 (J)
+ dst1 = Register 0-7 (K)
+ src2 = Indirect 0,1,IR0,IR1, ENH: Register (i)
+ dst2 = Register 0-7 (L)
+ Instr: 2/0 - LDF||LDF, LDI||LDI
+ Alias: i||i, i1||i2, i2||i1
+*/
+#define LL_CLASS_INSN(name, opcode, level) \
+ { name "_" name , opcode, 0xfe000000, "i;L|J,K", level }, \
+ { name "2_" name "1", opcode, 0xfe000000, "i;L|J,K", level }, \
+ { name "1_" name "2", opcode, 0xfe000000, "J,K|i;L", level }
+
+/* LS: Store-store parallell operation
+ Syntax: <i> src2, dst2 || <i> src1, dst1
+ src1 = Register 0-7 (H)
+ dst1 = Indirect 0,1,IR0,IR1 (J)
+ src2 = Register 0-7 (L)
+ dst2 = Indirect 0,1,IR0,IR1, ENH: register (i)
+ Instr: 2/0 - STF||STF, STI||STI
+ Alias: i||i, i1||i2, i2||i1.
+*/
+#define LS_CLASS_INSN(name, opcode, level) \
+ { name "_" name , opcode, 0xfe000000, "L;i|H,J", level }, \
+ { name "2_" name "1", opcode, 0xfe000000, "L;i|H,J", level }, \
+ { name "1_" name "2", opcode, 0xfe000000, "H,J|L;i", level }
+
+/* M: General multiply and add/sub operations
+ Syntax: <ia> src3,src4,dst1 || <ib> src2,src1,dst2 [00] - Manual
+ <ia> src3,src1,dst1 || <ib> src2,src4,dst2 [01] - Manual
+ <ia> src1,src3,dst1 || <ib> src2,src4,dst2 [01]
+ <ia> src1,src2,dst1 || <ib> src4,src3,dst2 [02] - Manual
+ <ia> src3,src1,dst1 || <ib> src4,src2,dst2 [03] - Manual
+ <ia> src1,src3,dst1 || <ib> src4,src2,dst2 [03]
+ src1 = Register 0-7 (K)
+ src2 = Register 0-7 (H)
+ src3 = Indirect 0,1,IR0,IR1, ENH: register (j)
+ src4 = Indirect 0,1,IR0,IR1, ENH: register (i)
+ dst1 = Register 0-1 (N)
+ dst2 = Register 2-3 (M)
+ Instr: 4/0 - MPYF3||ADDF3, MPYF3||SUBF3, MPYI3||ADDI3, MPYI3||SUBI3
+ Alias: a||b, a3||n, a||b3, a3||b3, b||a, b3||a, b||a3, b3||a3
+*/
+#define M_CLASS_INSN(namea, nameb, opcode, level) \
+ { namea "_" nameb, opcode|0x00000000, 0xff000000, "i;j;N|H;K;M", level }, \
+ { namea "_" nameb, opcode|0x01000000, 0xff000000, "j;K;N|H;i;M", level }, \
+ { namea "_" nameb, opcode|0x01000000, 0xff000000, "K;j;N|H;i;M", level }, \
+ { namea "_" nameb, opcode|0x02000000, 0xff000000, "H;K;N|i;j;M", level }, \
+ { namea "_" nameb, opcode|0x03000000, 0xff000000, "j;K;N|i;H;M", level }, \
+ { namea "_" nameb, opcode|0x03000000, 0xff000000, "K;j;N|i;H;M", level }, \
+ { namea "3_" nameb, opcode|0x00000000, 0xff000000, "i;j;N|H;K;M", level }, \
+ { namea "3_" nameb, opcode|0x01000000, 0xff000000, "j;K;N|H;i;M", level }, \
+ { namea "3_" nameb, opcode|0x01000000, 0xff000000, "K;j;N|H;i;M", level }, \
+ { namea "3_" nameb, opcode|0x02000000, 0xff000000, "H;K;N|i;j;M", level }, \
+ { namea "3_" nameb, opcode|0x03000000, 0xff000000, "j;K;N|i;H;M", level }, \
+ { namea "3_" nameb, opcode|0x03000000, 0xff000000, "K;j;N|i;H;M", level }, \
+ { namea "_" nameb "3", opcode|0x00000000, 0xff000000, "i;j;N|H;K;M", level }, \
+ { namea "_" nameb "3", opcode|0x01000000, 0xff000000, "j;K;N|H;i;M", level }, \
+ { namea "_" nameb "3", opcode|0x01000000, 0xff000000, "K;j;N|H;i;M", level }, \
+ { namea "_" nameb "3", opcode|0x02000000, 0xff000000, "H;K;N|i;j;M", level }, \
+ { namea "_" nameb "3", opcode|0x03000000, 0xff000000, "j;K;N|i;H;M", level }, \
+ { namea "_" nameb "3", opcode|0x03000000, 0xff000000, "K;j;N|i;H;M", level }, \
+ { namea "3_" nameb "3", opcode|0x00000000, 0xff000000, "i;j;N|H;K;M", level }, \
+ { namea "3_" nameb "3", opcode|0x01000000, 0xff000000, "j;K;N|H;i;M", level }, \
+ { namea "3_" nameb "3", opcode|0x01000000, 0xff000000, "K;j;N|H;i;M", level }, \
+ { namea "3_" nameb "3", opcode|0x02000000, 0xff000000, "H;K;N|i;j;M", level }, \
+ { namea "3_" nameb "3", opcode|0x03000000, 0xff000000, "j;K;N|i;H;M", level }, \
+ { namea "3_" nameb "3", opcode|0x03000000, 0xff000000, "K;j;N|i;H;M", level }, \
+ { nameb "_" namea, opcode|0x00000000, 0xff000000, "H;K;M|i;j;N", level }, \
+ { nameb "_" namea, opcode|0x01000000, 0xff000000, "H;i;M|j;K;N", level }, \
+ { nameb "_" namea, opcode|0x01000000, 0xff000000, "H;i;M|K;j;N", level }, \
+ { nameb "_" namea, opcode|0x02000000, 0xff000000, "i;j;M|H;K;N", level }, \
+ { nameb "_" namea, opcode|0x03000000, 0xff000000, "i;H;M|j;K;N", level }, \
+ { nameb "_" namea, opcode|0x03000000, 0xff000000, "i;H;M|K;j;N", level }, \
+ { nameb "3_" namea, opcode|0x00000000, 0xff000000, "H;K;M|i;j;N", level }, \
+ { nameb "3_" namea, opcode|0x01000000, 0xff000000, "H;i;M|j;K;N", level }, \
+ { nameb "3_" namea, opcode|0x01000000, 0xff000000, "H;i;M|K;j;N", level }, \
+ { nameb "3_" namea, opcode|0x02000000, 0xff000000, "i;j;M|H;K;N", level }, \
+ { nameb "3_" namea, opcode|0x03000000, 0xff000000, "i;H;M|j;K;N", level }, \
+ { nameb "3_" namea, opcode|0x03000000, 0xff000000, "i;H;M|K;j;N", level }, \
+ { nameb "_" namea "3", opcode|0x00000000, 0xff000000, "H;K;M|i;j;N", level }, \
+ { nameb "_" namea "3", opcode|0x01000000, 0xff000000, "H;i;M|j;K;N", level }, \
+ { nameb "_" namea "3", opcode|0x01000000, 0xff000000, "H;i;M|K;j;N", level }, \
+ { nameb "_" namea "3", opcode|0x02000000, 0xff000000, "i;j;M|H;K;N", level }, \
+ { nameb "_" namea "3", opcode|0x03000000, 0xff000000, "i;H;M|j;K;N", level }, \
+ { nameb "_" namea "3", opcode|0x03000000, 0xff000000, "i;H;M|K;j;N", level }, \
+ { nameb "3_" namea "3", opcode|0x00000000, 0xff000000, "H;K;M|i;j;N", level }, \
+ { nameb "3_" namea "3", opcode|0x01000000, 0xff000000, "H;i;M|j;K;N", level }, \
+ { nameb "3_" namea "3", opcode|0x01000000, 0xff000000, "H;i;M|K;j;N", level }, \
+ { nameb "3_" namea "3", opcode|0x02000000, 0xff000000, "i;j;M|H;K;N", level }, \
+ { nameb "3_" namea "3", opcode|0x03000000, 0xff000000, "i;H;M|j;K;N", level }, \
+ { nameb "3_" namea "3", opcode|0x03000000, 0xff000000, "i;H;M|K;j;N", level }
+
+/* P: General 2-operand operation with parallell store
+ Syntax: <ia> src2, dst1 || <ib> src3, dst2
+ src2 = Indirect 0,1,IR0,IR1, ENH: register (i)
+ dst1 = Register 0-7 (L)
+ src3 = Register 0-7 (H)
+ dst2 = Indirect 0,1,IR0,IR1 (J)
+ Instr: 9/2 - ABSF||STF, ABSI||STI, FIX||STI, FLOAT||STF, LDF||STF,
+ LDI||STI, NEGF||STF, NEGI||STI, NOT||STI, C4x: FRIEEE||STF,
+ TOIEEE||STF
+ Alias: a||b, b||a
+*/
+#define P_CLASS_INSN(namea, nameb, opcode, level) \
+ { namea "_" nameb, opcode, 0xfe000000, "i;L|H,J", level }, \
+ { nameb "_" namea, opcode, 0xfe000000, "H,J|i;L", level }
+
+/* Q: General 3-operand operation with parallell store
+ Syntax: <ia> src1, src2, dst1 || <ib> src3, dst2
+ src1 = Register 0-7 (K)
+ src2 = Indirect 0,1,IR0,IR1, ENH: register (i)
+ dst1 = Register 0-7 (L)
+ src3 = Register 0-7 (H)
+ dst2 = Indirect 0,1,IR0,IR1 (J)
+ Instr: 4/0 - ASH3||STI, LSH3||STI, SUBF3||STF, SUBI3||STI
+ Alias: a||b, b||a, a3||b, b||a3
+*/
+#define Q_CLASS_INSN(namea, nameb, opcode, level) \
+ { namea "_" nameb , opcode, 0xfe000000, "K,i;L|H,J", level }, \
+ { nameb "_" namea , opcode, 0xfe000000, "H,J|K,i;L", level }, \
+ { namea "3_" nameb , opcode, 0xfe000000, "K,i;L|H,J", level }, \
+ { nameb "_" namea "3", opcode, 0xfe000000, "H,J|K,i;L", level }
+
+/* QC: General commutative 3-operand operation with parallell store
+ Syntax: <ia> src2, src1, dst1 || <ib> src3, dst2
+ <ia> src1, src2, dst1 || <ib> src3, dst2 - Manual
+ src1 = Register 0-7 (K)
+ src2 = Indirect 0,1,IR0,IR1, ENH: register (i)
+ dst1 = Register 0-7 (L)
+ src3 = Register 0-7 (H)
+ dst2 = Indirect 0,1,IR0,IR1 (J)
+ Instr: 7/0 - ADDF3||STF, ADDI3||STI, AND3||STI, MPYF3||STF, MPYI3||STI,
+ OR3||STI, XOR3||STI
+ Alias: a||b, b||a, a3||b, b||a3
+*/
+#define QC_CLASS_INSN(namea, nameb, opcode, level) \
+ { namea "_" nameb , opcode, 0xfe000000, "i;K;L|H,J", level }, \
+ { namea "_" nameb , opcode, 0xfe000000, "K;i;L|H,J", level }, \
+ { nameb "_" namea , opcode, 0xfe000000, "H,J|i;K;L", level }, \
+ { nameb "_" namea , opcode, 0xfe000000, "H,J|K;i;L", level }, \
+ { namea "3_" nameb , opcode, 0xfe000000, "i;K;L|H,J", level }, \
+ { namea "3_" nameb , opcode, 0xfe000000, "K;i;L|H,J", level }, \
+ { nameb "_" namea "3", opcode, 0xfe000000, "H,J|i;K;L", level }, \
+ { nameb "_" namea "3", opcode, 0xfe000000, "H,J|K;i;L", level }
+
+/* R: General register integer operation
+ Syntax: <i> dst
+ dst = Register (R)
+ Instr: 6/0 - POP, PUSH, ROL, ROLC, ROR, RORC
+*/
+#define R_CLASS_INSN(name, opcode, level) \
+ { name, opcode, 0xffe0ffff, "R", level }
+
+/* RF: General register float operation
+ Syntax: <i> dst
+ dst = Register 0-11 (r)
+ Instr: 2/0 - POPF, PUSHF
+*/
+#define RF_CLASS_INSN(name, opcode, level) \
+ { name, opcode, 0xffe0ffff, "r", level }
+
+/* S: General 3-operand float operation
+ Syntax: <i> src2, src1, dst
+ src2 = Register 0-11 (e), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C)
+ src1 = Register 0-11 (g), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ dst = Register 0-11 (r)
+ Instr: 1/0 - SUBF3
+ Alias: i, i3
+*/
+#define S_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "e,g;r", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "e,J,r", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,g;r", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J,r", level }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,g;r", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O,r", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "e,g;r", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "e,J,r", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,g;r", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J,r", level }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,g;r", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O,r", OP_C4X }
+
+/* SC: General commutative 3-operand float operation
+ Syntax: <i> src2, src1, dst - Manual
+ <i> src1, src2, dst
+ src2 = Register 0-11 (e), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C)
+ src1 = Register 0-11 (g), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ dst = Register 0-11 (r)
+ Instr: 2/0 - ADDF3, MPYF3
+ Alias: i, i3
+*/
+#define SC_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "e,g;r", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "e,J,r", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,g;r", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J,r", level }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,g;r", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "g,C,r", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O,r", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "e,g;r", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "e,J,r", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,g;r", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J,r", level }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "g,C,r", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,g;r", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O,r", OP_C4X }
+
+/* S2: General 3-operand float operation with 2 args
+ Syntax: <i> src2, src1
+ src2 = Register 0-11 (e), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C)
+ src1 = Register 0-11 (g), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ Instr: 1/0 - CMPF3
+ Alias: i, i3
+*/
+#define S2_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "e,g", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "e,J", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,g", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,g", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "e,g", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "e,J", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,g", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,g", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }
+
+/* T: General 3-operand integer operand
+ Syntax: <i> src2, src1, dst
+ src2 = Register (E), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C), Immediate (W)
+ src1 = Register (G), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ dst = Register (R)
+ Instr: 5/0 - ANDN3, ASH3, LSH3, SUBB3, SUBI3
+ Alias: i, i3
+*/
+#define T_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "E,G;R", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "E,J,R", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,G;R", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J,R", level }, \
+ { name, opcode|0x30000000, 0xffe00000, "W,G;R", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,G;R", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "W,O,R", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O,R", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "E,G;R", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "E,J,R", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,G;R", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J,R", level }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "W,G;R", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,G;R", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "W,O,R", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O,R", OP_C4X }
+
+/* TC: General commutative 3-operand integer operation
+ Syntax: <i> src2, src1, dst
+ <i> src1, src2, dst
+ src2 = Register (E), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C), Immediate (W)
+ src1 = Register (G), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ dst = Register (R)
+ Instr: 6/2 - ADDC3, ADDI3, AND3, MPYI3, OR3, XOR3, C4x: MPYSHI, MPYUHI
+ Alias: i, i3
+*/
+#define TC_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "E,G;R", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "E,J,R", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,G;R", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J,R", level }, \
+ { name, opcode|0x30000000, 0xffe00000, "W,G;R", OP_C4X }, \
+ { name, opcode|0x30000000, 0xffe00000, "G,W,R", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,G;R", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "G,C,R", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "W,O,R", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "O,W,R", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O,R", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "E,G;R", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "E,J,R", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,G;R", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J,R", level }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "W,G;R", OP_C4X }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "G,W,R", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,G;R", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "G,C,R", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "W,O,R", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "O,W,R", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O,R", OP_C4X }
+
+/* T2: General 3-operand integer operation with 2 args
+ Syntax: <i> src2, src1
+ src2 = Register (E), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C), Immediate (W)
+ src1 = Register (G), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (O)
+ Instr: 1/0 - CMPI3
+ Alias: i, i3
+*/
+#define T2_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "E,G", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "E,J", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,G", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name, opcode|0x30000000, 0xffe00000, "W,G", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,G", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "W,O", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "E,G", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "E,J", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,G", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "W,G", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,G", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "W,O", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }
+
+/* T2C: General commutative 3-operand integer operation with 2 args
+ Syntax: <i> src2, src1 - Manual
+ <i> src1, src2
+ src2 = Register (E), Indirect 0,1,IR0,IR1 (I), C4x T2: Indirect (C), Immediate (W)
+ src1 = Register (G), Indirect 0,1,IR0,IR1 (J), C4x T2: Indirect (0)
+ Instr: 1/0 - TSTB3
+ Alias: i, i3
+*/
+#define T2C_CLASS_INSN(name, opcode, level) \
+ { name, opcode|0x20000000, 0xffe00000, "E,G", level }, \
+ { name, opcode|0x20200000, 0xffe00000, "E,J", level }, \
+ { name, opcode|0x20400000, 0xffe00000, "I,G", level }, \
+ { name, opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name, opcode|0x30000000, 0xffe00000, "W,G", OP_C4X }, \
+ { name, opcode|0x30000000, 0xffe00000, "G,W", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "C,G", OP_C4X }, \
+ { name, opcode|0x30200000, 0xffe00000, "G,C", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "W,O", OP_C4X }, \
+ { name, opcode|0x30400000, 0xffe00000, "O,W", OP_C4X }, \
+ { name, opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }, \
+ { name "3", opcode|0x20000000, 0xffe00000, "E,G", level }, \
+ { name "3", opcode|0x20200000, 0xffe00000, "E,J", level }, \
+ { name "3", opcode|0x20400000, 0xffe00000, "I,G", level }, \
+ { name "3", opcode|0x20600000, 0xffe00000, "I,J", level }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "W,G", OP_C4X }, \
+ { name "3", opcode|0x30000000, 0xffe00000, "G,W", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "C,G", OP_C4X }, \
+ { name "3", opcode|0x30200000, 0xffe00000, "G,C", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "W,O", OP_C4X }, \
+ { name "3", opcode|0x30400000, 0xffe00000, "O,W", OP_C4X }, \
+ { name "3", opcode|0x30600000, 0xffe00000, "C,O", OP_C4X }
+
+/* Z: Misc operations with or without arguments
+ Syntax: <i> <arg1>,...
+ Instr: 16 - RETIc, RETSc, SIGI(c3X), SWI, IDLE, IDLE2, RETIcD,
+ TRAPc, LATc, LDEP, LDEHI, LDEPE, LDPK, STIK, LDP, IACK
+*/
+
+
+/* Define tic4x opcodes for assembler and disassembler. */
+static const tic4x_inst_t tic4x_insts[] =
+{
+ /* Put synonyms after the desired forms in table so that they get
+ overwritten in the lookup table. The disassembler will thus
+ print the `proper' mnemonics. Note that the disassembler
+ only decodes the 11 MSBs, so instructions like ldp @0x500 will
+ be printed as ldiu 5, dp. Note that with parallel instructions,
+ the second part is executed before the first part, unless
+ the sti1||sti2 form is used. We also allow sti2||sti1
+ which is equivalent to the default sti||sti form.
+ */
+ B_CLASS_INSN( "absf", 0x00000000, OP_C3X ),
+ P_CLASS_INSN( "absf", "stf", 0xc8000000, OP_C3X ),
+ A_CLASS_INSN( "absi", 0x00800000, OP_C3X ),
+ P_CLASS_INSN( "absi", "sti", 0xca000000, OP_C3X ),
+ A_CLASS_INSN( "addc", 0x01000000, OP_C3X ),
+ TC_CLASS_INSN( "addc", 0x00000000, OP_C3X ),
+ B_CLASS_INSN( "addf", 0x01800000, OP_C3X ),
+ SC_CLASS_INSN( "addf", 0x00800000, OP_C3X ),
+ QC_CLASS_INSN( "addf", "stf", 0xcc000000, OP_C3X ),
+ A_CLASS_INSN( "addi", 0x02000000, OP_C3X ),
+ TC_CLASS_INSN( "addi", 0x01000000, OP_C3X ),
+ QC_CLASS_INSN( "addi", "sti", 0xce000000, OP_C3X ),
+ AU_CLASS_INSN( "and", 0x02800000, OP_C3X ),
+ TC_CLASS_INSN( "and", 0x01800000, OP_C3X ),
+ QC_CLASS_INSN( "and", "sti", 0xd0000000, OP_C3X ),
+ AU_CLASS_INSN( "andn", 0x03000000, OP_C3X ),
+ T_CLASS_INSN( "andn", 0x02000000, OP_C3X ),
+ A_CLASS_INSN( "ash", 0x03800000, OP_C3X ),
+ T_CLASS_INSN( "ash", 0x02800000, OP_C3X ),
+ Q_CLASS_INSN( "ash", "sti", 0xd2000000, OP_C3X ),
+ J_CLASS_INSN( "bB", "b", 0x68000000, OP_C3X ),
+ J_CLASS_INSN( "bBd", "bd", 0x68200000, OP_C3X ),
+ J_CLASS_INSN( "bBaf", "baf", 0x68a00000, OP_C4X ),
+ J_CLASS_INSN( "bBat", "bat", 0x68600000, OP_C4X ),
+ { "br", 0x60000000, 0xff000000, "B" , OP_C3X }, /* I_CLASS */
+ { "brd", 0x61000000, 0xff000000, "B" , OP_C3X }, /* I_CLASS */
+ { "call", 0x62000000, 0xff000000, "B" , OP_C3X }, /* I_CLASS */
+ { "callB", 0x70000000, 0xffe00000, "Q" , OP_C3X }, /* JS_CLASS */
+ { "callB", 0x72000000, 0xffe00000, "P" , OP_C3X }, /* JS_CLASS */
+ B_CLASS_INSN( "cmpf", 0x04000000, OP_C3X ),
+ S2_CLASS_INSN( "cmpf", 0x03000000, OP_C3X ),
+ A_CLASS_INSN( "cmpi", 0x04800000, OP_C3X ),
+ T2_CLASS_INSN( "cmpi", 0x03800000, OP_C3X ),
+ D_CLASS_INSN( "dbB", "db", 0x6c000000, OP_C3X ),
+ D_CLASS_INSN( "dbBd", "dbd", 0x6c200000, OP_C3X ),
+ AF_CLASS_INSN( "fix", 0x05000000, OP_C3X ),
+ P_CLASS_INSN( "fix", "sti", 0xd4000000, OP_C3X ),
+ BI_CLASS_INSN( "float", 0x05800000, OP_C3X ),
+ P_CLASS_INSN( "float", "stf", 0xd6000000, OP_C3X ),
+ B6_CLASS_INSN( "frieee", 0x1c000000, OP_C4X ),
+ P_CLASS_INSN( "frieee","stf", 0xf2000000, OP_C4X ),
+ { "iack", 0x1b200000, 0xffe00000, "@" , OP_C3X }, /* Z_CLASS */
+ { "iack", 0x1b400000, 0xffe00000, "*" , OP_C3X }, /* Z_CLASS */
+ { "idle", 0x06000000, 0xffffffff, "" , OP_C3X }, /* Z_CLASS */
+ { "idlez", 0x06000000, 0xffffffff, "" , OP_C3X }, /* Z_CLASS */
+ { "idle2", 0x06000001, 0xffffffff, "" , OP_IDLE2 }, /* Z_CLASS */
+ { "laj", 0x63000000, 0xff000000, "B" , OP_C4X }, /* I_CLASS */
+ { "lajB", 0x70200000, 0xffe00000, "Q" , OP_C4X }, /* JS_CLASS */
+ { "lajB", 0x72200000, 0xffe00000, "P" , OP_C4X }, /* JS_CLASS */
+ { "latB", 0x74800000, 0xffe00000, "V" , OP_C4X }, /* Z_CLASS */
+ A_CLASS_INSN( "lb0", 0xb0000000, OP_C4X ),
+ A_CLASS_INSN( "lb1", 0xb0800000, OP_C4X ),
+ A_CLASS_INSN( "lb2", 0xb1000000, OP_C4X ),
+ A_CLASS_INSN( "lb3", 0xb1800000, OP_C4X ),
+ AU_CLASS_INSN( "lbu0", 0xb2000000, OP_C4X ),
+ AU_CLASS_INSN( "lbu1", 0xb2800000, OP_C4X ),
+ AU_CLASS_INSN( "lbu2", 0xb3000000, OP_C4X ),
+ AU_CLASS_INSN( "lbu3", 0xb3800000, OP_C4X ),
+ AY_CLASS_INSN( "lda", 0x1e800000, OP_C4X ),
+ B_CLASS_INSN( "lde", 0x06800000, OP_C3X ),
+ { "ldep", 0x76000000, 0xffe00000, "X,R" , OP_C4X }, /* Z_CLASS */
+ B_CLASS_INSN( "ldf", 0x07000000, OP_C3X ),
+ LL_CLASS_INSN( "ldf", 0xc4000000, OP_C3X ),
+ P_CLASS_INSN( "ldf", "stf", 0xd8000000, OP_C3X ),
+ BB_CLASS_INSN( "ldfC", 0x00000000, OP_C3X ),
+ B6_CLASS_INSN( "ldfi", 0x07800000, OP_C3X ),
+ { "ldhi", 0x1fe00000, 0xffe00000, "U,R" , OP_C4X }, /* Z_CLASS */
+ { "ldhi", 0x1fe00000, 0xffe00000, "#,R" , OP_C4X }, /* Z_CLASS */
+ A_CLASS_INSN( "ldi", 0x08000000, OP_C3X ),
+ LL_CLASS_INSN( "ldi", 0xc6000000, OP_C3X ),
+ P_CLASS_INSN( "ldi", "sti", 0xda000000, OP_C3X ),
+ AB_CLASS_INSN( "ldiC", 0x10000000, OP_C3X ),
+ A6_CLASS_INSN( "ldii", 0x08800000, OP_C3X ),
+ { "ldp", 0x50700000, 0xffff0000, "#" , OP_C3X }, /* Z_CLASS - synonym for ldiu #,dp */
+ B_CLASS_INSN( "ldm", 0x09000000, OP_C3X ),
+ { "ldpe", 0x76800000, 0xffe00000, "Q,Z" , OP_C4X }, /* Z_CLASS */
+ { "ldpk", 0x1F700000, 0xffff0000, "#" , OP_C4X }, /* Z_CLASS */
+ A_CLASS_INSN( "lh0", 0xba000000, OP_C4X ),
+ A_CLASS_INSN( "lh1", 0xba800000, OP_C4X ),
+ AU_CLASS_INSN( "lhu0", 0xbb000000, OP_C4X ),
+ AU_CLASS_INSN( "lhu1", 0xbb800000, OP_C4X ),
+ { "lopower", 0x10800001,0xffffffff, "" , OP_LPWR }, /* Z_CLASS */
+ A_CLASS_INSN( "lsh", 0x09800000, OP_C3X ),
+ T_CLASS_INSN( "lsh", 0x04000000, OP_C3X ),
+ Q_CLASS_INSN( "lsh", "sti", 0xdc000000, OP_C3X ),
+ A_CLASS_INSN( "lwl0", 0xb4000000, OP_C4X ),
+ A_CLASS_INSN( "lwl1", 0xb4800000, OP_C4X ),
+ A_CLASS_INSN( "lwl2", 0xb5000000, OP_C4X ),
+ A_CLASS_INSN( "lwl3", 0xb5800000, OP_C4X ),
+ A_CLASS_INSN( "lwr0", 0xb6000000, OP_C4X ),
+ A_CLASS_INSN( "lwr1", 0xb6800000, OP_C4X ),
+ A_CLASS_INSN( "lwr2", 0xb7000000, OP_C4X ),
+ A_CLASS_INSN( "lwr3", 0xb7800000, OP_C4X ),
+ { "maxspeed",0x10800000,0xffffffff, "" , OP_LPWR }, /* Z_CLASS */
+ A_CLASS_INSN( "mb0", 0xb8000000, OP_C4X ),
+ A_CLASS_INSN( "mb1", 0xb8800000, OP_C4X ),
+ A_CLASS_INSN( "mb2", 0xb9000000, OP_C4X ),
+ A_CLASS_INSN( "mb3", 0xb9800000, OP_C4X ),
+ A_CLASS_INSN( "mh0", 0xbc000000, OP_C4X ),
+ A_CLASS_INSN( "mh1", 0xbc800000, OP_C4X ),
+ A_CLASS_INSN( "mh2", 0xbd000000, OP_C4X ),
+ A_CLASS_INSN( "mh3", 0xbd800000, OP_C4X ),
+ B_CLASS_INSN( "mpyf", 0x0a000000, OP_C3X ),
+ SC_CLASS_INSN( "mpyf", 0x04800000, OP_C3X ),
+ M_CLASS_INSN( "mpyf", "addf", 0x80000000, OP_C3X ),
+ QC_CLASS_INSN( "mpyf", "stf", 0xde000000, OP_C3X ),
+ M_CLASS_INSN( "mpyf", "subf", 0x84000000, OP_C3X ),
+ A_CLASS_INSN( "mpyi", 0x0a800000, OP_C3X ),
+ TC_CLASS_INSN( "mpyi", 0x05000000, OP_C3X ),
+ M_CLASS_INSN( "mpyi", "addi", 0x88000000, OP_C3X ),
+ QC_CLASS_INSN( "mpyi", "sti", 0xe0000000, OP_C3X ),
+ M_CLASS_INSN( "mpyi", "subi", 0x8c000000, OP_C3X ),
+ A_CLASS_INSN( "mpyshi", 0x1d800000, OP_C4X ),
+ TC_CLASS_INSN( "mpyshi", 0x28800000, OP_C4X ),
+ A_CLASS_INSN( "mpyuhi", 0x1e000000, OP_C4X ),
+ TC_CLASS_INSN( "mpyuhi", 0x29000000, OP_C4X ),
+ A_CLASS_INSN( "negb", 0x0b000000, OP_C3X ),
+ B_CLASS_INSN( "negf", 0x0b800000, OP_C3X ),
+ P_CLASS_INSN( "negf", "stf", 0xe2000000, OP_C3X ),
+ A_CLASS_INSN( "negi", 0x0c000000, OP_C3X ),
+ P_CLASS_INSN( "negi", "sti", 0xe4000000, OP_C3X ),
+ A2_CLASS_INSN( "nop", 0x0c800000, OP_C3X ),
+ B_CLASS_INSN( "norm", 0x0d000000, OP_C3X ),
+ AU_CLASS_INSN( "not", 0x0d800000, OP_C3X ),
+ P_CLASS_INSN( "not", "sti", 0xe6000000, OP_C3X ),
+ AU_CLASS_INSN( "or", 0x10000000, OP_C3X ),
+ TC_CLASS_INSN( "or", 0x05800000, OP_C3X ),
+ QC_CLASS_INSN( "or", "sti", 0xe8000000, OP_C3X ),
+ R_CLASS_INSN( "pop", 0x0e200000, OP_C3X ),
+ RF_CLASS_INSN( "popf", 0x0ea00000, OP_C3X ),
+ R_CLASS_INSN( "push", 0x0f200000, OP_C3X ),
+ RF_CLASS_INSN( "pushf", 0x0fa00000, OP_C3X ),
+ BA_CLASS_INSN( "rcpf", 0x1d000000, OP_C4X ),
+ { "retiB", 0x78000000, 0xffe00000, "" , OP_C3X }, /* Z_CLASS */
+ { "reti", 0x78000000, 0xffe00000, "" , OP_C3X }, /* Z_CLASS - Alias for retiu */
+ { "retiBd", 0x78200000, 0xffe00000, "" , OP_C4X }, /* Z_CLASS */
+ { "retid", 0x78200000, 0xffe00000, "" , OP_C4X }, /* Z_CLASS - Alias for retiud */
+ { "retsB", 0x78800000, 0xffe00000, "" , OP_C3X }, /* Z_CLASS */
+ { "rets", 0x78800000, 0xffe00000, "" , OP_C3X }, /* Z_CLASS - Alias for retsu */
+ B_CLASS_INSN( "rnd", 0x11000000, OP_C3X ),
+ R_CLASS_INSN( "rol", 0x11e00001, OP_C3X ),
+ R_CLASS_INSN( "rolc", 0x12600001, OP_C3X ),
+ R_CLASS_INSN( "ror", 0x12e0ffff, OP_C3X ),
+ R_CLASS_INSN( "rorc", 0x1360ffff, OP_C3X ),
+ { "rptb", 0x64000000, 0xff000000, "B" , OP_C3X }, /* I2_CLASS */
+ { "rptb", 0x79000000, 0xff000000, "Q" , OP_C4X }, /* I2_CLASS */
+ { "rptbd", 0x65000000, 0xff000000, "B" , OP_C4X }, /* I2_CLASS */
+ { "rptbd", 0x79800000, 0xff000000, "Q" , OP_C4X }, /* I2_CLASS */
+ A3_CLASS_INSN( "rpts", 0x139b0000, OP_C3X ),
+ B_CLASS_INSN( "rsqrf", 0x1c800000, OP_C4X ),
+ { "sigi", 0x16000000, 0xffe00000, "" , OP_C3X }, /* Z_CLASS */
+ A6_CLASS_INSN( "sigi", 0x16000000, OP_C4X ),
+ B7_CLASS_INSN( "stf", 0x14000000, OP_C3X ),
+ LS_CLASS_INSN( "stf", 0xc0000000, OP_C3X ),
+ B7_CLASS_INSN( "stfi", 0x14800000, OP_C3X ),
+ A7_CLASS_INSN( "sti", 0x15000000, OP_C3X ),
+ { "sti", 0x15000000, 0xffe00000, "T,@" , OP_C4X }, /* Class A7 - Alias for stik */
+ { "sti", 0x15600000, 0xffe00000, "T,*" , OP_C4X }, /* Class A7 */
+ LS_CLASS_INSN( "sti", 0xc2000000, OP_C3X ),
+ A7_CLASS_INSN( "stii", 0x15800000, OP_C3X ),
+ { "stik", 0x15000000, 0xffe00000, "T,@" , OP_C4X }, /* Z_CLASS */
+ { "stik", 0x15600000, 0xffe00000, "T,*" , OP_C4X }, /* Z_CLASS */
+ A_CLASS_INSN( "subb", 0x16800000, OP_C3X ),
+ T_CLASS_INSN( "subb", 0x06000000, OP_C3X ),
+ A_CLASS_INSN( "subc", 0x17000000, OP_C3X ),
+ B_CLASS_INSN( "subf", 0x17800000, OP_C3X ),
+ S_CLASS_INSN( "subf", 0x06800000, OP_C3X ),
+ Q_CLASS_INSN( "subf", "stf", 0xea000000, OP_C3X ),
+ A_CLASS_INSN( "subi", 0x18000000, OP_C3X ),
+ T_CLASS_INSN( "subi", 0x07000000, OP_C3X ),
+ Q_CLASS_INSN( "subi", "sti", 0xec000000, OP_C3X ),
+ A_CLASS_INSN( "subrb", 0x18800000, OP_C3X ),
+ B_CLASS_INSN( "subrf", 0x19000000, OP_C3X ),
+ A_CLASS_INSN( "subri", 0x19800000, OP_C3X ),
+ { "swi", 0x66000000, 0xffffffff, "" , OP_C3X }, /* Z_CLASS */
+ B_CLASS_INSN( "toieee", 0x1b800000, OP_C4X ),
+ P_CLASS_INSN( "toieee","stf", 0xf0000000, OP_C4X ),
+ { "trapB", 0x74000000, 0xffe00000, "V" , OP_C3X }, /* Z_CLASS */
+ { "trap", 0x74000000, 0xffe00000, "V" , OP_C3X }, /* Z_CLASS - Alias for trapu */
+ AU_CLASS_INSN( "tstb", 0x1a000000, OP_C3X ),
+ T2C_CLASS_INSN("tstb", 0x07800000, OP_C3X ),
+ AU_CLASS_INSN( "xor", 0x1a800000, OP_C3X ),
+ TC_CLASS_INSN( "xor", 0x08000000, OP_C3X ),
+ QC_CLASS_INSN( "xor", "sti", 0xee000000, OP_C3X ),
+
+ /* Dummy entry, not included in tic4x_num_insts. This
+ lets code examine entry i + 1 without checking
+ if we've run off the end of the table. */
+ { "", 0x0, 0x00, "", 0 }
+};
+
+const unsigned int tic4x_num_insts = (((sizeof tic4x_insts) / (sizeof tic4x_insts[0])) - 1);
diff --git a/include/opcode/tic54x.h b/include/opcode/tic54x.h
new file mode 100644
index 000000000..ae657225d
--- /dev/null
+++ b/include/opcode/tic54x.h
@@ -0,0 +1,163 @@
+/* tic54x.h -- Header file for TI TMS320C54X opcode table
+ Copyright 1999, 2000 Free Software Foundation, Inc.
+ Written by Timothy Wall (twall@cygnus.com)
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA. */
+
+#ifndef _opcode_tic54x_h_
+#define _opcode_tic54x_h_
+
+typedef struct _symbol
+{
+ const char *name;
+ unsigned short value;
+} symbol;
+
+enum optype {
+ OPT = 0x8000,
+ OP_None = 0x0,
+
+ OP_Xmem, /* AR3 or AR4, indirect */
+ OP_Ymem, /* AR3 or AR4, indirect */
+ OP_pmad, /* PROG mem, direct */
+ OP_dmad, /* DATA mem, direct */
+ OP_Smem,
+ OP_Lmem, /* 32-bit single-addressed (direct/indirect) */
+ OP_MMR,
+ OP_PA,
+ OP_Sind,
+ OP_xpmad,
+ OP_xpmad_ms7,
+ OP_MMRX,
+ OP_MMRY,
+
+ OP_SRC1, /* src accumulator in bit 8 */
+ OP_SRC, /* src accumulator in bit 9 */
+ OP_RND, /* rounded result dst accumulator, opposite of bit 8 */
+ OP_DST, /* dst accumulator in bit 8 */
+ OP_ARX, /* arX in bits 0-3 */
+ OP_SHIFT, /* -16 to 15 (SHIFT), bits 0-4 */
+ OP_SHFT, /* 0 to 15 (SHIFT1 in summary), bits 0-3 */
+ OP_B, /* ACC B only */
+ OP_A, /* ACC A only */
+
+ OP_lk, /* 16-bit immediate, '#' optional */
+ OP_TS,
+ OP_k8, /* -128 <= k <= 128 */
+ OP_16, /* literal "16" */
+ OP_BITC, /* 0 to 16 */
+ OP_CC, /* condition code */
+ OP_CC2, /* 4-bit condition code */
+ OP_CC3, /* 2-bit condition code */
+ OP_123, /* 1, 2, or 3 */
+ OP_031, /* 0-31, numeric */
+ OP_k5, /* 0 to 31 */
+ OP_k8u, /* 0 to 255 */
+ OP_ASM, /* "ASM" */
+ OP_T, /* "T" */
+ OP_DP, /* "DP" */
+ OP_ARP, /* "ARP" */
+ OP_k3, /* 0-7 */
+ OP_lku, /* 0 to 65535 */
+ OP_N, /* 0/1 or ST0/ST1 */
+ OP_SBIT, /* status bit or 0-15 */
+ OP_12, /* one or two */
+ OP_k9, /* 9 bits of data page (DP) address */
+ OP_TRN, /* "TRN" */
+
+};
+
+typedef struct _template
+{
+ /* The opcode mnemonic */
+ const char *name;
+ unsigned int words; /* insn size in words */
+ int minops, maxops; /* min/max operand count */
+ /* The significant bits in the opcode. Other bits are zero.
+ Instructions with more than 16 bits of opcode store the rest in the upper
+ 16 bits.
+ */
+ unsigned short opcode;
+#define INDIRECT(OP) ((OP)&0x80)
+#define MOD(OP) (((OP)>>3)&0xF)
+#define ARF(OP) ((OP)&0x7)
+#define IS_LKADDR(OP) (INDIRECT(OP) && MOD(OP)>=12)
+#define SRC(OP) ((OP)&0x200)
+#define DST(OP) ((OP)&0x100)
+#define SRC1(OP) ((OP)&0x100)
+#define SHIFT(OP) (((OP)&0x10)?(((OP)&0x1F)-32):((OP)&0x1F))
+#define SHFT(OP) ((OP)&0xF)
+#define ARX(OP) ((OP)&0x7)
+#define XMEM(OP) (((OP)&0x00F0)>>4)
+#define YMEM(OP) ((OP)&0x000F)
+#define XMOD(C) (((C)&0xC)>>2)
+#define XARX(C) (((C)&0x3)+2)
+#define CC3(OP) (((OP)>>8)&0x3)
+#define SBIT(OP) ((OP)&0xF)
+#define MMR(OP) ((OP)&0x7F)
+#define MMRX(OP) ((((OP)>>4)&0xF)+16)
+#define MMRY(OP) (((OP)&0xF)+16)
+
+#define OPTYPE(X) ((X)&~OPT)
+
+ /* Ones in this mask indicate which bits must match the opcode field.
+ Zeroes indicate don't care bits (operands and/or opcode options) */
+ unsigned short mask;
+
+ /* An array of operand codes (at most 4 operands) */
+#define MAX_OPERANDS 4
+ enum optype operand_types[MAX_OPERANDS];
+
+ /* Special purpose flags (e.g. branch type, parallel, delay, etc)
+ */
+ unsigned short flags;
+#define B_NEXT 0 /* normal execution, next insn is next address */
+#define B_BRANCH 1 /* next insn is in opcode */
+#define B_RET 2 /* next insn is on stack */
+#define B_BACC 3 /* next insn is in acc */
+#define B_REPEAT 4 /* next insn repeats */
+#define FL_BMASK 0x07
+
+#define FL_DELAY 0x10 /* instruction uses delay slots */
+#define FL_EXT 0x20 /* instruction takes two words */
+#define FL_FAR 0x40 /* far mode addressing */
+#define FL_LP 0x80 /* LP-only instruction */
+#define FL_NR 0x100 /* no repeat allowed */
+#define FL_SMR 0x200 /* Smem read (for flagging write-only *+ARx */
+
+#define FL_PAR 0x400 /* Parallel instruction. */
+
+ unsigned short opcode2, mask2; /* some insns have an extended opcode */
+
+ const char* parname;
+ enum optype paroperand_types[MAX_OPERANDS];
+
+} template;
+
+extern const template tic54x_unknown_opcode;
+extern const template tic54x_optab[];
+extern const template tic54x_paroptab[];
+extern const symbol mmregs[], regs[];
+extern const symbol condition_codes[], cc2_codes[], status_bits[];
+extern const symbol cc3_codes[];
+extern const char *misc_symbols[];
+struct disassemble_info;
+extern const template* tic54x_get_insn (struct disassemble_info *,
+ bfd_vma, unsigned short, int *);
+
+#endif /* _opcode_tic54x_h_ */
diff --git a/include/opcode/tic80.h b/include/opcode/tic80.h
new file mode 100644
index 000000000..c6a79df28
--- /dev/null
+++ b/include/opcode/tic80.h
@@ -0,0 +1,282 @@
+/* tic80.h -- Header file for TI TMS320C80 (MV) opcode table
+ Copyright 1996, 1997, 2003 Free Software Foundation, Inc.
+ Written by Fred Fish (fnf@cygnus.com), Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef TIC80_H
+#define TIC80_H
+
+/* The opcode table is an array of struct tic80_opcode. */
+
+struct tic80_opcode
+{
+ /* The opcode name. */
+
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with operands
+ are zeroes. */
+
+ unsigned long opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a mask
+ containing ones indicating those bits which must match the opcode
+ field, and zeroes indicating those bits which need not match (and are
+ presumably filled in by operands). */
+
+ unsigned long mask;
+
+ /* Special purpose flags for this opcode. */
+
+ unsigned char flags;
+
+ /* An array of operand codes. Each code is an index into the operand
+ table. They appear in the order which the operands must appear in
+ assembly code, and are terminated by a zero. FIXME: Adjust size to
+ match actual requirements when TIc80 support is complete */
+
+ unsigned char operands[8];
+};
+
+/* The table itself is sorted by major opcode number, and is otherwise in
+ the order in which the disassembler should consider instructions.
+ FIXME: This isn't currently true. */
+
+extern const struct tic80_opcode tic80_opcodes[];
+extern const int tic80_num_opcodes;
+
+
+/* The operands table is an array of struct tic80_operand. */
+
+struct tic80_operand
+{
+ /* The number of bits in the operand. */
+
+ int bits;
+
+ /* How far the operand is left shifted in the instruction. */
+
+ int shift;
+
+ /* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (op & ((1 << o->bits) - 1)) << o->shift;
+ (i is the instruction which we are filling in, o is a pointer to
+ this structure, and op is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged (most operands
+ can accept any value). */
+
+ unsigned long (*insert)
+ (unsigned long instruction, long op, const char **errmsg);
+
+ /* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if ((o->flags & TIC80_OPERAND_SIGNED) != 0
+ && (op & (1 << (o->bits - 1))) != 0)
+ op -= 1 << o->bits;
+ (i is the instruction, o is a pointer to this structure, and op
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed. */
+
+ long (*extract) (unsigned long instruction, int *invalid);
+
+ /* One bit syntax flags. */
+
+ unsigned long flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the tic80_opcodes table. */
+
+extern const struct tic80_operand tic80_operands[];
+
+
+/* Values defined for the flags field of a struct tic80_operand.
+
+ Note that flags for all predefined symbols, such as the general purpose
+ registers (ex: r10), control registers (ex: FPST), condition codes (ex:
+ eq0.b), bit numbers (ex: gt.b), etc are large enough that they can be
+ or'd into an int where the lower bits contain the actual numeric value
+ that correponds to this predefined symbol. This way a single int can
+ contain both the value of the symbol and it's type.
+ */
+
+/* This operand must be an even register number. Floating point numbers
+ for example are stored in even/odd register pairs. */
+
+#define TIC80_OPERAND_EVEN (1 << 0)
+
+/* This operand must be an odd register number and must be one greater than
+ the register number of the previous operand. I.E. the second register in
+ an even/odd register pair. */
+
+#define TIC80_OPERAND_ODD (1 << 1)
+
+/* This operand takes signed values. */
+
+#define TIC80_OPERAND_SIGNED (1 << 2)
+
+/* This operand may be either a predefined constant name or a numeric value.
+ An example would be a condition code like "eq0.b" which has the numeric
+ value 0x2. */
+
+#define TIC80_OPERAND_NUM (1 << 3)
+
+/* This operand should be wrapped in parentheses rather than separated
+ from the previous one by a comma. This is used for various
+ instructions, like the load and store instructions, which want
+ their operands to look like "displacement(reg)" */
+
+#define TIC80_OPERAND_PARENS (1 << 4)
+
+/* This operand is a PC relative branch offset. The disassembler prints
+ these symbolically if possible. Note that the offsets are taken as word
+ offsets. */
+
+#define TIC80_OPERAND_PCREL (1 << 5)
+
+/* This flag is a hint to the disassembler for using hex as the prefered
+ printing format, even for small positive or negative immediate values.
+ Normally values in the range -999 to 999 are printed as signed decimal
+ values and other values are printed in hex. */
+
+#define TIC80_OPERAND_BITFIELD (1 << 6)
+
+/* This operand may have a ":m" modifier specified by bit 17 in a short
+ immediate form instruction. */
+
+#define TIC80_OPERAND_M_SI (1 << 7)
+
+/* This operand may have a ":m" modifier specified by bit 15 in a long
+ immediate or register form instruction. */
+
+#define TIC80_OPERAND_M_LI (1 << 8)
+
+/* This operand may have a ":s" modifier specified in bit 11 in a long
+ immediate or register form instruction. */
+
+#define TIC80_OPERAND_SCALED (1 << 9)
+
+/* This operand is a floating point value */
+
+#define TIC80_OPERAND_FLOAT (1 << 10)
+
+/* This operand is an byte offset from a base relocation. The lower
+ two bits of the final relocated address are ignored when the value is
+ written to the program counter. */
+
+#define TIC80_OPERAND_BASEREL (1 << 11)
+
+/* This operand is an "endmask" field for a shift instruction.
+ It is treated special in that it can have values of 0-32,
+ where 0 and 32 result in the same instruction. The assembler
+ must be able to accept both endmask values. This disassembler
+ has no way of knowing from the instruction which value was
+ given at assembly time, so it just uses '0'. */
+
+#define TIC80_OPERAND_ENDMASK (1 << 12)
+
+/* This operand is one of the 32 general purpose registers.
+ The disassembler prints these with a leading 'r'. */
+
+#define TIC80_OPERAND_GPR (1 << 27)
+
+/* This operand is a floating point accumulator register.
+ The disassembler prints these with a leading 'a'. */
+
+#define TIC80_OPERAND_FPA ( 1 << 28)
+
+/* This operand is a control register number, either numeric or
+ symbolic (like "EIF", "EPC", etc).
+ The disassembler prints these symbolically. */
+
+#define TIC80_OPERAND_CR (1 << 29)
+
+/* This operand is a condition code, either numeric or
+ symbolic (like "eq0.b", "ne0.w", etc).
+ The disassembler prints these symbolically. */
+
+#define TIC80_OPERAND_CC (1 << 30)
+
+/* This operand is a bit number, either numeric or
+ symbolic (like "eq.b", "or.f", etc).
+ The disassembler prints these symbolically.
+ Note that they appear in the instruction in 1's complement relative
+ to the values given in the manual. */
+
+#define TIC80_OPERAND_BITNUM (1 << 31)
+
+/* This mask is used to strip operand bits from an int that contains
+ both operand bits and a numeric value in the lsbs. */
+
+#define TIC80_OPERAND_MASK (TIC80_OPERAND_GPR | TIC80_OPERAND_FPA | TIC80_OPERAND_CR | TIC80_OPERAND_CC | TIC80_OPERAND_BITNUM)
+
+
+/* Flag bits for the struct tic80_opcode flags field. */
+
+#define TIC80_VECTOR 01 /* Is a vector instruction */
+#define TIC80_NO_R0_DEST 02 /* Register r0 cannot be a destination register */
+
+
+/* The opcodes library contains a table that allows translation from predefined
+ symbol names to numeric values, and vice versa. */
+
+/* Structure to hold information about predefined symbols. */
+
+struct predefined_symbol
+{
+ char *name; /* name to recognize */
+ int value;
+};
+
+#define PDS_NAME(pdsp) ((pdsp) -> name)
+#define PDS_VALUE(pdsp) ((pdsp) -> value)
+
+/* Translation array. */
+extern const struct predefined_symbol tic80_predefined_symbols[];
+/* How many members in the array. */
+extern const int tic80_num_predefined_symbols;
+
+/* Translate value to symbolic name. */
+const char *tic80_value_to_symbol (int val, int class);
+
+/* Translate symbolic name to value. */
+int tic80_symbol_to_value (char *name, int class);
+
+const struct predefined_symbol *tic80_next_predefined_symbol
+ (const struct predefined_symbol *);
+
+#endif /* TIC80_H */
diff --git a/include/opcode/v850.h b/include/opcode/v850.h
new file mode 100644
index 000000000..75689bff6
--- /dev/null
+++ b/include/opcode/v850.h
@@ -0,0 +1,166 @@
+/* v850.h -- Header file for NEC V850 opcode table
+ Copyright 1996, 1997, 2001, 2003 Free Software Foundation, Inc.
+ Written by J.T. Conklin, Cygnus Support
+
+This file is part of GDB, GAS, and the GNU binutils.
+
+GDB, GAS, and the GNU binutils are free software; you can redistribute
+them and/or modify them under the terms of the GNU General Public
+License as published by the Free Software Foundation; either version
+1, or (at your option) any later version.
+
+GDB, GAS, and the GNU binutils are distributed in the hope that they
+will be useful, but WITHOUT ANY WARRANTY; without even the implied
+warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this file; see the file COPYING. If not, write to the Free
+Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef V850_H
+#define V850_H
+
+/* The opcode table is an array of struct v850_opcode. */
+
+struct v850_opcode
+{
+ /* The opcode name. */
+ const char *name;
+
+ /* The opcode itself. Those bits which will be filled in with
+ operands are zeroes. */
+ unsigned long opcode;
+
+ /* The opcode mask. This is used by the disassembler. This is a
+ mask containing ones indicating those bits which must match the
+ opcode field, and zeroes indicating those bits which need not
+ match (and are presumably filled in by operands). */
+ unsigned long mask;
+
+ /* An array of operand codes. Each code is an index into the
+ operand table. They appear in the order which the operands must
+ appear in assembly code, and are terminated by a zero. */
+ unsigned char operands[8];
+
+ /* Which (if any) operand is a memory operand. */
+ unsigned int memop;
+
+ /* Target processor(s). A bit field of processors which support
+ this instruction. Note a bit field is used as some instructions
+ are available on multiple, different processor types, whereas
+ other instructions are only available on one specific type. */
+ unsigned int processors;
+};
+
+/* Values for the processors field in the v850_opcode structure. */
+#define PROCESSOR_V850 (1 << 0) /* Just the V850. */
+#define PROCESSOR_ALL -1 /* Any processor. */
+#define PROCESSOR_V850E (1 << 1) /* Just the V850E. */
+#define PROCESSOR_NOT_V850 (~ PROCESSOR_V850) /* Any processor except the V850. */
+#define PROCESSOR_V850EA (1 << 2) /* Just the V850EA. */
+#define PROCESSOR_V850E1 (1 << 3) /* Just the V850E1. */
+
+/* The table itself is sorted by major opcode number, and is otherwise
+ in the order in which the disassembler should consider
+ instructions. */
+extern const struct v850_opcode v850_opcodes[];
+extern const int v850_num_opcodes;
+
+
+/* The operands table is an array of struct v850_operand. */
+
+struct v850_operand
+{
+ /* The number of bits in the operand. */
+ /* If this value is -1 then the operand's bits are in a discontinous distribution in the instruction. */
+ int bits;
+
+ /* (bits >= 0): How far the operand is left shifted in the instruction. */
+ /* (bits == -1): Bit mask of the bits in the operand. */
+ int shift;
+
+ /* Insertion function. This is used by the assembler. To insert an
+ operand value into an instruction, check this field.
+
+ If it is NULL, execute
+ i |= (op & ((1 << o->bits) - 1)) << o->shift;
+ (i is the instruction which we are filling in, o is a pointer to
+ this structure, and op is the opcode value; this assumes twos
+ complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction and the operand value. It will return the new value
+ of the instruction. If the ERRMSG argument is not NULL, then if
+ the operand value is illegal, *ERRMSG will be set to a warning
+ string (the operand will be inserted in any case). If the
+ operand value is legal, *ERRMSG will be unchanged (most operands
+ can accept any value). */
+ unsigned long (* insert)
+ (unsigned long instruction, long op, const char ** errmsg);
+
+ /* Extraction function. This is used by the disassembler. To
+ extract this operand type from an instruction, check this field.
+
+ If it is NULL, compute
+ op = o->bits == -1 ? ((i) & o->shift) : ((i) >> o->shift) & ((1 << o->bits) - 1);
+ if (o->flags & V850_OPERAND_SIGNED)
+ op = (op << (32 - o->bits)) >> (32 - o->bits);
+ (i is the instruction, o is a pointer to this structure, and op
+ is the result; this assumes twos complement arithmetic).
+
+ If this field is not NULL, then simply call it with the
+ instruction value. It will return the value of the operand. If
+ the INVALID argument is not NULL, *INVALID will be set to
+ non-zero if this operand type can not actually be extracted from
+ this operand (i.e., the instruction does not match). If the
+ operand is valid, *INVALID will not be changed. */
+ unsigned long (* extract) (unsigned long instruction, int * invalid);
+
+ /* One bit syntax flags. */
+ int flags;
+};
+
+/* Elements in the table are retrieved by indexing with values from
+ the operands field of the v850_opcodes table. */
+
+extern const struct v850_operand v850_operands[];
+
+/* Values defined for the flags field of a struct v850_operand. */
+
+/* This operand names a general purpose register */
+#define V850_OPERAND_REG 0x01
+
+/* This operand names a system register */
+#define V850_OPERAND_SRG 0x02
+
+/* This operand names a condition code used in the setf instruction */
+#define V850_OPERAND_CC 0x04
+
+/* This operand takes signed values */
+#define V850_OPERAND_SIGNED 0x08
+
+/* This operand is the ep register. */
+#define V850_OPERAND_EP 0x10
+
+/* This operand is a PC displacement */
+#define V850_OPERAND_DISP 0x20
+
+/* This is a relaxable operand. Only used for D9->D22 branch relaxing
+ right now. We may need others in the future (or maybe handle them like
+ promoted operands on the mn10300?) */
+#define V850_OPERAND_RELAX 0x40
+
+/* The register specified must not be r0 */
+#define V850_NOT_R0 0x80
+
+/* push/pop type instruction, V850E specific. */
+#define V850E_PUSH_POP 0x100
+
+/* 16 bit immediate follows instruction, V850E specific. */
+#define V850E_IMMEDIATE16 0x200
+
+/* 32 bit immediate follows instruction, V850E specific. */
+#define V850E_IMMEDIATE32 0x400
+
+#endif /* V850_H */
diff --git a/include/opcode/vax.h b/include/opcode/vax.h
new file mode 100644
index 000000000..6fda6b255
--- /dev/null
+++ b/include/opcode/vax.h
@@ -0,0 +1,382 @@
+/* Vax opcde list.
+ Copyright 1989, 1991, 1992, 1995 Free Software Foundation, Inc.
+
+This file is part of GDB and GAS.
+
+GDB and GAS are free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GDB and GAS are distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GDB or GAS; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef vax_opcodeT
+#define vax_opcodeT int
+#endif /* no vax_opcodeT */
+
+struct vot_wot /* vax opcode table: wot to do with this */
+ /* particular opcode */
+{
+ const char *args; /* how to compile said opcode */
+ vax_opcodeT code; /* op-code (may be > 8 bits!) */
+};
+
+struct vot /* vax opcode text */
+{
+ const char *name; /* opcode name: lowercase string [key] */
+ struct vot_wot detail; /* rest of opcode table [datum] */
+};
+
+#define vot_how args
+#define vot_code code
+#define vot_detail detail
+#define vot_name name
+
+static const struct vot
+votstrs[] =
+{
+{ "halt", {"", 0x00 } },
+{ "nop", {"", 0x01 } },
+{ "rei", {"", 0x02 } },
+{ "bpt", {"", 0x03 } },
+{ "ret", {"", 0x04 } },
+{ "rsb", {"", 0x05 } },
+{ "ldpctx", {"", 0x06 } },
+{ "svpctx", {"", 0x07 } },
+{ "cvtps", {"rwabrwab", 0x08 } },
+{ "cvtsp", {"rwabrwab", 0x09 } },
+{ "index", {"rlrlrlrlrlwl", 0x0a } },
+{ "crc", {"abrlrwab", 0x0b } },
+{ "prober", {"rbrwab", 0x0c } },
+{ "probew", {"rbrwab", 0x0d } },
+{ "insque", {"abab", 0x0e } },
+{ "remque", {"abwl", 0x0f } },
+{ "bsbb", {"bb", 0x10 } },
+{ "brb", {"bb", 0x11 } },
+{ "bneq", {"bb", 0x12 } },
+{ "bnequ", {"bb", 0x12 } },
+{ "beql", {"bb", 0x13 } },
+{ "beqlu", {"bb", 0x13 } },
+{ "bgtr", {"bb", 0x14 } },
+{ "bleq", {"bb", 0x15 } },
+{ "jsb", {"ab", 0x16 } },
+{ "jmp", {"ab", 0x17 } },
+{ "bgeq", {"bb", 0x18 } },
+{ "blss", {"bb", 0x19 } },
+{ "bgtru", {"bb", 0x1a } },
+{ "blequ", {"bb", 0x1b } },
+{ "bvc", {"bb", 0x1c } },
+{ "bvs", {"bb", 0x1d } },
+{ "bcc", {"bb", 0x1e } },
+{ "bgequ", {"bb", 0x1e } },
+{ "blssu", {"bb", 0x1f } },
+{ "bcs", {"bb", 0x1f } },
+{ "addp4", {"rwabrwab", 0x20 } },
+{ "addp6", {"rwabrwabrwab", 0x21 } },
+{ "subp4", {"rwabrwab", 0x22 } },
+{ "subp6", {"rwabrwabrwab", 0x23 } },
+{ "cvtpt", {"rwababrwab", 0x24 } },
+{ "mulp", {"rwabrwabrwab", 0x25 } },
+{ "cvttp", {"rwababrwab", 0x26 } },
+{ "divp", {"rwabrwabrwab", 0x27 } },
+{ "movc3", {"rwabab", 0x28 } },
+{ "cmpc3", {"rwabab", 0x29 } },
+{ "scanc", {"rwababrb", 0x2a } },
+{ "spanc", {"rwababrb", 0x2b } },
+{ "movc5", {"rwabrbrwab", 0x2c } },
+{ "cmpc5", {"rwabrbrwab", 0x2d } },
+{ "movtc", {"rwabrbabrwab", 0x2e } },
+{ "movtuc", {"rwabrbabrwab", 0x2f } },
+{ "bsbw", {"bw", 0x30 } },
+{ "brw", {"bw", 0x31 } },
+{ "cvtwl", {"rwwl", 0x32 } },
+{ "cvtwb", {"rwwb", 0x33 } },
+{ "movp", {"rwabab", 0x34 } },
+{ "cmpp3", {"rwabab", 0x35 } },
+{ "cvtpl", {"rwabwl", 0x36 } },
+{ "cmpp4", {"rwabrwab", 0x37 } },
+{ "editpc", {"rwababab", 0x38 } },
+{ "matchc", {"rwabrwab", 0x39 } },
+{ "locc", {"rbrwab", 0x3a } },
+{ "skpc", {"rbrwab", 0x3b } },
+{ "movzwl", {"rwwl", 0x3c } },
+{ "acbw", {"rwrwmwbw", 0x3d } },
+{ "movaw", {"awwl", 0x3e } },
+{ "pushaw", {"aw", 0x3f } },
+{ "addf2", {"rfmf", 0x40 } },
+{ "addf3", {"rfrfwf", 0x41 } },
+{ "subf2", {"rfmf", 0x42 } },
+{ "subf3", {"rfrfwf", 0x43 } },
+{ "mulf2", {"rfmf", 0x44 } },
+{ "mulf3", {"rfrfwf", 0x45 } },
+{ "divf2", {"rfmf", 0x46 } },
+{ "divf3", {"rfrfwf", 0x47 } },
+{ "cvtfb", {"rfwb", 0x48 } },
+{ "cvtfw", {"rfww", 0x49 } },
+{ "cvtfl", {"rfwl", 0x4a } },
+{ "cvtrfl", {"rfwl", 0x4b } },
+{ "cvtbf", {"rbwf", 0x4c } },
+{ "cvtwf", {"rwwf", 0x4d } },
+{ "cvtlf", {"rlwf", 0x4e } },
+{ "acbf", {"rfrfmfbw", 0x4f } },
+{ "movf", {"rfwf", 0x50 } },
+{ "cmpf", {"rfrf", 0x51 } },
+{ "mnegf", {"rfwf", 0x52 } },
+{ "tstf", {"rf", 0x53 } },
+{ "emodf", {"rfrbrfwlwf", 0x54 } },
+{ "polyf", {"rfrwab", 0x55 } },
+{ "cvtfd", {"rfwd", 0x56 } },
+ /* opcode 57 is not defined yet */
+{ "adawi", {"rwmw", 0x58 } },
+ /* opcode 59 is not defined yet */
+ /* opcode 5a is not defined yet */
+ /* opcode 5b is not defined yet */
+{ "insqhi", {"abaq", 0x5c } },
+{ "insqti", {"abaq", 0x5d } },
+{ "remqhi", {"aqwl", 0x5e } },
+{ "remqti", {"aqwl", 0x5f } },
+{ "addd2", {"rdmd", 0x60 } },
+{ "addd3", {"rdrdwd", 0x61 } },
+{ "subd2", {"rdmd", 0x62 } },
+{ "subd3", {"rdrdwd", 0x63 } },
+{ "muld2", {"rdmd", 0x64 } },
+{ "muld3", {"rdrdwd", 0x65 } },
+{ "divd2", {"rdmd", 0x66 } },
+{ "divd3", {"rdrdwd", 0x67 } },
+{ "cvtdb", {"rdwb", 0x68 } },
+{ "cvtdw", {"rdww", 0x69 } },
+{ "cvtdl", {"rdwl", 0x6a } },
+{ "cvtrdl", {"rdwl", 0x6b } },
+{ "cvtbd", {"rbwd", 0x6c } },
+{ "cvtwd", {"rwwd", 0x6d } },
+{ "cvtld", {"rlwd", 0x6e } },
+{ "acbd", {"rdrdmdbw", 0x6f } },
+{ "movd", {"rdwd", 0x70 } },
+{ "cmpd", {"rdrd", 0x71 } },
+{ "mnegd", {"rdwd", 0x72 } },
+{ "tstd", {"rd", 0x73 } },
+{ "emodd", {"rdrbrdwlwd", 0x74 } },
+{ "polyd", {"rdrwab", 0x75 } },
+{ "cvtdf", {"rdwf", 0x76 } },
+ /* opcode 77 is not defined yet */
+{ "ashl", {"rbrlwl", 0x78 } },
+{ "ashq", {"rbrqwq", 0x79 } },
+{ "emul", {"rlrlrlwq", 0x7a } },
+{ "ediv", {"rlrqwlwl", 0x7b } },
+{ "clrd", {"wd", 0x7c } },
+{ "clrg", {"wg", 0x7c } },
+{ "clrq", {"wd", 0x7c } },
+{ "movq", {"rqwq", 0x7d } },
+{ "movaq", {"aqwl", 0x7e } },
+{ "movad", {"adwl", 0x7e } },
+{ "pushaq", {"aq", 0x7f } },
+{ "pushad", {"ad", 0x7f } },
+{ "addb2", {"rbmb", 0x80 } },
+{ "addb3", {"rbrbwb", 0x81 } },
+{ "subb2", {"rbmb", 0x82 } },
+{ "subb3", {"rbrbwb", 0x83 } },
+{ "mulb2", {"rbmb", 0x84 } },
+{ "mulb3", {"rbrbwb", 0x85 } },
+{ "divb2", {"rbmb", 0x86 } },
+{ "divb3", {"rbrbwb", 0x87 } },
+{ "bisb2", {"rbmb", 0x88 } },
+{ "bisb3", {"rbrbwb", 0x89 } },
+{ "bicb2", {"rbmb", 0x8a } },
+{ "bicb3", {"rbrbwb", 0x8b } },
+{ "xorb2", {"rbmb", 0x8c } },
+{ "xorb3", {"rbrbwb", 0x8d } },
+{ "mnegb", {"rbwb", 0x8e } },
+{ "caseb", {"rbrbrb", 0x8f } },
+{ "movb", {"rbwb", 0x90 } },
+{ "cmpb", {"rbrb", 0x91 } },
+{ "mcomb", {"rbwb", 0x92 } },
+{ "bitb", {"rbrb", 0x93 } },
+{ "clrb", {"wb", 0x94 } },
+{ "tstb", {"rb", 0x95 } },
+{ "incb", {"mb", 0x96 } },
+{ "decb", {"mb", 0x97 } },
+{ "cvtbl", {"rbwl", 0x98 } },
+{ "cvtbw", {"rbww", 0x99 } },
+{ "movzbl", {"rbwl", 0x9a } },
+{ "movzbw", {"rbww", 0x9b } },
+{ "rotl", {"rbrlwl", 0x9c } },
+{ "acbb", {"rbrbmbbw", 0x9d } },
+{ "movab", {"abwl", 0x9e } },
+{ "pushab", {"ab", 0x9f } },
+{ "addw2", {"rwmw", 0xa0 } },
+{ "addw3", {"rwrwww", 0xa1 } },
+{ "subw2", {"rwmw", 0xa2 } },
+{ "subw3", {"rwrwww", 0xa3 } },
+{ "mulw2", {"rwmw", 0xa4 } },
+{ "mulw3", {"rwrwww", 0xa5 } },
+{ "divw2", {"rwmw", 0xa6 } },
+{ "divw3", {"rwrwww", 0xa7 } },
+{ "bisw2", {"rwmw", 0xa8 } },
+{ "bisw3", {"rwrwww", 0xa9 } },
+{ "bicw2", {"rwmw", 0xaa } },
+{ "bicw3", {"rwrwww", 0xab } },
+{ "xorw2", {"rwmw", 0xac } },
+{ "xorw3", {"rwrwww", 0xad } },
+{ "mnegw", {"rwww", 0xae } },
+{ "casew", {"rwrwrw", 0xaf } },
+{ "movw", {"rwww", 0xb0 } },
+{ "cmpw", {"rwrw", 0xb1 } },
+{ "mcomw", {"rwww", 0xb2 } },
+{ "bitw", {"rwrw", 0xb3 } },
+{ "clrw", {"ww", 0xb4 } },
+{ "tstw", {"rw", 0xb5 } },
+{ "incw", {"mw", 0xb6 } },
+{ "decw", {"mw", 0xb7 } },
+{ "bispsw", {"rw", 0xb8 } },
+{ "bicpsw", {"rw", 0xb9 } },
+{ "popr", {"rw", 0xba } },
+{ "pushr", {"rw", 0xbb } },
+{ "chmk", {"rw", 0xbc } },
+{ "chme", {"rw", 0xbd } },
+{ "chms", {"rw", 0xbe } },
+{ "chmu", {"rw", 0xbf } },
+{ "addl2", {"rlml", 0xc0 } },
+{ "addl3", {"rlrlwl", 0xc1 } },
+{ "subl2", {"rlml", 0xc2 } },
+{ "subl3", {"rlrlwl", 0xc3 } },
+{ "mull2", {"rlml", 0xc4 } },
+{ "mull3", {"rlrlwl", 0xc5 } },
+{ "divl2", {"rlml", 0xc6 } },
+{ "divl3", {"rlrlwl", 0xc7 } },
+{ "bisl2", {"rlml", 0xc8 } },
+{ "bisl3", {"rlrlwl", 0xc9 } },
+{ "bicl2", {"rlml", 0xca } },
+{ "bicl3", {"rlrlwl", 0xcb } },
+{ "xorl2", {"rlml", 0xcc } },
+{ "xorl3", {"rlrlwl", 0xcd } },
+{ "mnegl", {"rlwl", 0xce } },
+{ "casel", {"rlrlrl", 0xcf } },
+{ "movl", {"rlwl", 0xd0 } },
+{ "cmpl", {"rlrl", 0xd1 } },
+{ "mcoml", {"rlwl", 0xd2 } },
+{ "bitl", {"rlrl", 0xd3 } },
+{ "clrf", {"wf", 0xd4 } },
+{ "clrl", {"wl", 0xd4 } },
+{ "tstl", {"rl", 0xd5 } },
+{ "incl", {"ml", 0xd6 } },
+{ "decl", {"ml", 0xd7 } },
+{ "adwc", {"rlml", 0xd8 } },
+{ "sbwc", {"rlml", 0xd9 } },
+{ "mtpr", {"rlrl", 0xda } },
+{ "mfpr", {"rlwl", 0xdb } },
+{ "movpsl", {"wl", 0xdc } },
+{ "pushl", {"rl", 0xdd } },
+{ "moval", {"alwl", 0xde } },
+{ "movaf", {"afwl", 0xde } },
+{ "pushal", {"al", 0xdf } },
+{ "pushaf", {"af", 0xdf } },
+{ "bbs", {"rlvbbb", 0xe0 } },
+{ "bbc", {"rlvbbb", 0xe1 } },
+{ "bbss", {"rlvbbb", 0xe2 } },
+{ "bbcs", {"rlvbbb", 0xe3 } },
+{ "bbsc", {"rlvbbb", 0xe4 } },
+{ "bbcc", {"rlvbbb", 0xe5 } },
+{ "bbssi", {"rlvbbb", 0xe6 } },
+{ "bbcci", {"rlvbbb", 0xe7 } },
+{ "blbs", {"rlbb", 0xe8 } },
+{ "blbc", {"rlbb", 0xe9 } },
+{ "ffs", {"rlrbvbwl", 0xea } },
+{ "ffc", {"rlrbvbwl", 0xeb } },
+{ "cmpv", {"rlrbvbrl", 0xec } },
+{ "cmpzv", {"rlrbvbrl", 0xed } },
+{ "extv", {"rlrbvbwl", 0xee } },
+{ "extzv", {"rlrbvbwl", 0xef } },
+{ "insv", {"rlrlrbvb", 0xf0 } },
+{ "acbl", {"rlrlmlbw", 0xf1 } },
+{ "aoblss", {"rlmlbb", 0xf2 } },
+{ "aobleq", {"rlmlbb", 0xf3 } },
+{ "sobgeq", {"mlbb", 0xf4 } },
+{ "sobgtr", {"mlbb", 0xf5 } },
+{ "cvtlb", {"rlwb", 0xf6 } },
+{ "cvtlw", {"rlww", 0xf7 } },
+{ "ashp", {"rbrwabrbrwab", 0xf8 } },
+{ "cvtlp", {"rlrwab", 0xf9 } },
+{ "callg", {"abab", 0xfa } },
+{ "calls", {"rlab", 0xfb } },
+{ "xfc", {"", 0xfc } },
+ /* undefined opcodes here */
+{ "cvtdh", {"rdwh", 0x32fd } },
+{ "cvtgf", {"rgwh", 0x33fd } },
+{ "addg2", {"rgmg", 0x40fd } },
+{ "addg3", {"rgrgwg", 0x41fd } },
+{ "subg2", {"rgmg", 0x42fd } },
+{ "subg3", {"rgrgwg", 0x43fd } },
+{ "mulg2", {"rgmg", 0x44fd } },
+{ "mulg3", {"rgrgwg", 0x45fd } },
+{ "divg2", {"rgmg", 0x46fd } },
+{ "divg3", {"rgrgwg", 0x47fd } },
+{ "cvtgb", {"rgwb", 0x48fd } },
+{ "cvtgw", {"rgww", 0x49fd } },
+{ "cvtgl", {"rgwl", 0x4afd } },
+{ "cvtrgl", {"rgwl", 0x4bfd } },
+{ "cvtbg", {"rbwg", 0x4cfd } },
+{ "cvtwg", {"rwwg", 0x4dfd } },
+{ "cvtlg", {"rlwg", 0x4efd } },
+{ "acbg", {"rgrgmgbw", 0x4ffd } },
+{ "movg", {"rgwg", 0x50fd } },
+{ "cmpg", {"rgrg", 0x51fd } },
+{ "mnegg", {"rgwg", 0x52fd } },
+{ "tstg", {"rg", 0x53fd } },
+{ "emodg", {"rgrwrgwlwg", 0x54fd } },
+{ "polyg", {"rgrwab", 0x55fd } },
+{ "cvtgh", {"rgwh", 0x56fd } },
+ /* undefined opcodes here */
+{ "addh2", {"rhmh", 0x60fd } },
+{ "addh3", {"rhrhwh", 0x61fd } },
+{ "subh2", {"rhmh", 0x62fd } },
+{ "subh3", {"rhrhwh", 0x63fd } },
+{ "mulh2", {"rhmh", 0x64fd } },
+{ "mulh3", {"rhrhwh", 0x65fd } },
+{ "divh2", {"rhmh", 0x66fd } },
+{ "divh3", {"rhrhwh", 0x67fd } },
+{ "cvthb", {"rhwb", 0x68fd } },
+{ "cvthw", {"rhww", 0x69fd } },
+{ "cvthl", {"rhwl", 0x6afd } },
+{ "cvtrhl", {"rhwl", 0x6bfd } },
+{ "cvtbh", {"rbwh", 0x6cfd } },
+{ "cvtwh", {"rwwh", 0x6dfd } },
+{ "cvtlh", {"rlwh", 0x6efd } },
+{ "acbh", {"rhrhmhbw", 0x6ffd } },
+{ "movh", {"rhwh", 0x70fd } },
+{ "cmph", {"rhrh", 0x71fd } },
+{ "mnegh", {"rhwh", 0x72fd } },
+{ "tsth", {"rh", 0x73fd } },
+{ "emodh", {"rhrwrhwlwh", 0x74fd } },
+{ "polyh", {"rhrwab", 0x75fd } },
+{ "cvthg", {"rhwg", 0x76fd } },
+ /* undefined opcodes here */
+{ "clrh", {"wh", 0x7cfd } },
+{ "clro", {"wo", 0x7cfd } },
+{ "movo", {"rowo", 0x7dfd } },
+{ "movah", {"ahwl", 0x7efd } },
+{ "movao", {"aowl", 0x7efd } },
+{ "pushah", {"ah", 0x7ffd } },
+{ "pushao", {"ao", 0x7ffd } },
+ /* undefined opcodes here */
+{ "cvtfh", {"rfwh", 0x98fd } },
+{ "cvtfg", {"rfwg", 0x99fd } },
+ /* undefined opcodes here */
+{ "cvthf", {"rhwf", 0xf6fd } },
+{ "cvthd", {"rhwd", 0xf7fd } },
+ /* undefined opcodes here */
+{ "bugl", {"rl", 0xfdff } },
+{ "bugw", {"rw", 0xfeff } },
+ /* undefined opcodes here */
+
+{ "", {"", 0} } /* empty is end sentinel */
+
+}; /* votstrs */
+
+/* end: vax.opcode.h */
diff --git a/include/os9k.h b/include/os9k.h
new file mode 100644
index 000000000..596f56d5a
--- /dev/null
+++ b/include/os9k.h
@@ -0,0 +1,181 @@
+/* os9k.h - OS-9000 i386 module header definitions
+ Copyright 2000 Free Software Foundation, Inc.
+
+This file is part of GNU CC.
+
+GNU CC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU CC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU CC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#if !defined(_MODULE_H)
+#define _MODULE_H
+
+#define _MPF386
+
+/* Size of common header less parity field. */
+#define N_M_PARITY (sizeof(mh_com)-sizeof(unisgned short))
+#define OLD_M_PARITY 46
+#define M_PARITY N_M_PARITY
+
+#ifdef _MPF68K
+#define MODSYNC 0x4afc /* Module header sync code for 680x0 processors. */
+#endif
+
+#ifdef _MPF386
+#define MODSYNC 0x4afc /* Module header sync code for 80386 processors. */
+#endif
+
+#define MODREV 1 /* Module format revision 1. */
+#define CRCCON 0x800063 /* CRC polynomial constant. */
+
+/* Module access permission values. */
+#define MP_OWNER_READ 0x0001
+#define MP_OWNER_WRITE 0x0002
+#define MP_OWNER_EXEC 0x0004
+#define MP_GROUP_READ 0x0010
+#define MP_GROUP_WRITE 0x0020
+#define MP_GROUP_EXEC 0x0040
+#define MP_WORLD_READ 0x0100
+#define MP_WORLD_WRITE 0x0200
+#define MP_WORLD_EXEC 0x0400
+#define MP_WORLD_ACCESS 0x0777
+#define MP_OWNER_MASK 0x000f
+#define MP_GROUP_MASK 0x00f0
+#define MP_WORLD_MASK 0x0f00
+#define MP_SYSTM_MASK 0xf000
+
+/* Module Type/Language values. */
+#define MT_ANY 0
+#define MT_PROGRAM 0x0001
+#define MT_SUBROUT 0x0002
+#define MT_MULTI 0x0003
+#define MT_DATA 0x0004
+#define MT_TRAPLIB 0x000b
+#define MT_SYSTEM 0x000c
+#define MT_FILEMAN 0x000d
+#define MT_DEVDRVR 0x000e
+#define MT_DEVDESC 0x000f
+#define MT_MASK 0xff00
+
+#define ML_ANY 0
+#define ML_OBJECT 1
+#define ML_ICODE 2
+#define ML_PCODE 3
+#define ML_CCODE 4
+#define ML_CBLCODE 5
+#define ML_FRTNCODE 6
+#define ML_MASK 0x00ff
+
+#define mktypelang(type, lang) (((type) << 8) | (lang))
+
+/* Module Attribute values. */
+#define MA_REENT 0x80
+#define MA_GHOST 0x40
+#define MA_SUPER 0x20
+#define MA_MASK 0xff00
+#define MR_MASK 0x00ff
+
+#define mkattrevs(attr, revs) (((attr) << 8) | (revs))
+
+#define m_user m_owner.grp_usr.usr
+#define m_group m_owner.grp_usr.grp
+#define m_group_user m_owner.group_user
+
+/* Macro definitions for accessing module header fields. */
+#define MODNAME(mod) ((u_char*)((u_char*)mod + ((Mh_com)mod)->m_name))
+#if 0
+/* Appears not to be used, and the u_int32 typedef is gone (because it
+ conflicted with a Mach header. */
+#define MODSIZE(mod) ((u_int32)((Mh_com)mod)->m_size)
+#endif /* 0 */
+#define MHCOM_BYTES_SIZE 80
+#define N_BADMAG(a) (((a).a_info) != MODSYNC)
+
+typedef struct mh_com
+{
+ /* Sync bytes ($4afc). */
+ unsigned char m_sync[2];
+ unsigned char m_sysrev[2]; /* System revision check value. */
+ unsigned char m_size[4]; /* Module size. */
+ unsigned char m_owner[4]; /* Group/user id. */
+ unsigned char m_name[4]; /* Offset to module name. */
+ unsigned char m_access[2]; /* Access permissions. */
+ unsigned char m_tylan[2]; /* Type/lang. */
+ unsigned char m_attrev[2]; /* Rev/attr. */
+ unsigned char m_edit[2]; /* Edition. */
+ unsigned char m_needs[4]; /* Module hardware requirements flags. (reserved). */
+ unsigned char m_usage[4]; /* Comment string offset. */
+ unsigned char m_symbol[4]; /* Symbol table offset. */
+ unsigned char m_exec[4]; /* Offset to execution entry point. */
+ unsigned char m_excpt[4]; /* Offset to exception entry point. */
+ unsigned char m_data[4]; /* Data storage requirement. */
+ unsigned char m_stack[4]; /* Stack size. */
+ unsigned char m_idata[4]; /* Offset to initialized data. */
+ unsigned char m_idref[4]; /* Offset to data reference lists. */
+ unsigned char m_init[4]; /* Initialization routine offset. */
+ unsigned char m_term[4]; /* Termination routine offset. */
+ unsigned char m_ident[2]; /* Ident code for ident program. */
+ char m_spare[8]; /* Reserved bytes. */
+ unsigned char m_parity[2]; /* Header parity. */
+} mh_com,*Mh_com;
+
+/* Executable memory module. */
+typedef mh_com *Mh_exec,mh_exec;
+
+/* Data memory module. */
+typedef mh_com *Mh_data,mh_data;
+
+/* File manager memory module. */
+typedef mh_com *Mh_fman,mh_fman;
+
+/* Device driver module. */
+typedef mh_com *Mh_drvr,mh_drvr;
+
+/* Trap handler module. */
+typedef mh_com mh_trap, *Mh_trap;
+
+/* Device descriptor module. */
+typedef mh_com *Mh_dev,mh_dev;
+
+/* Configuration module. */
+typedef mh_com *Mh_config, mh_config;
+
+#if 0
+
+#if !defined(_MODDIR_H)
+/* Go get _os_fmod (and others). */
+#include <moddir.h>
+#endif
+
+error_code _os_crc (void *, u_int32, int *);
+error_code _os_datmod (char *, u_int32, u_int16 *, u_int16 *, u_int32, void **, mh_data **);
+error_code _os_get_moddir (void *, u_int32 *);
+error_code _os_initdata (mh_com *, void *);
+error_code _os_link (char **, mh_com **, void **, u_int16 *, u_int16 *);
+error_code _os_linkm (mh_com *, void **, u_int16 *, u_int16 *);
+error_code _os_load (char *, mh_com **, void **, u_int32, u_int16 *, u_int16 *, u_int32);
+error_code _os_mkmodule (char *, u_int32, u_int16 *, u_int16 *, u_int32, void **, mh_com **, u_int32);
+error_code _os_modaddr (void *, mh_com **);
+error_code _os_setcrc (mh_com *);
+error_code _os_slink (u_int32, char *, void **, void **, mh_com **);
+error_code _os_slinkm (u_int32, mh_com *, void **, void **);
+error_code _os_unlink (mh_com *);
+error_code _os_unload (char *, u_int32);
+error_code _os_tlink (u_int32, char *, void **, mh_trap **, void *, u_int32);
+error_code _os_tlinkm (u_int32, mh_com *, void **, void *, u_int32);
+error_code _os_iodel (mh_com *);
+error_code _os_vmodul (mh_com *, mh_com *, u_int32);
+#endif /* 0 */
+
+#endif
diff --git a/include/partition.h b/include/partition.h
new file mode 100644
index 000000000..5d3623f71
--- /dev/null
+++ b/include/partition.h
@@ -0,0 +1,85 @@
+/* List implementation of a partition of consecutive integers.
+ Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+ Contributed by CodeSourcery, LLC.
+
+ This file is part of GCC.
+
+ GCC is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ GCC is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+/* This package implements a partition of consecutive integers. The
+ elements are partitioned into classes. Each class is represented
+ by one of its elements, the canonical element, which is chosen
+ arbitrarily from elements in the class. The principal operations
+ on a partition are FIND, which takes an element, determines its
+ class, and returns the canonical element for that class, and UNION,
+ which unites the two classes that contain two given elements into a
+ single class.
+
+ The list implementation used here provides constant-time finds. By
+ storing the size of each class with the class's canonical element,
+ it is able to perform unions over all the classes in the partition
+ in O (N log N) time. */
+
+#ifndef _PARTITION_H
+#define _PARTITION_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include "ansidecl.h"
+#include <stdio.h>
+
+struct partition_elem
+{
+ /* The canonical element that represents the class containing this
+ element. */
+ int class_element;
+ /* The next element in this class. Elements in each class form a
+ circular list. */
+ struct partition_elem* next;
+ /* The number of elements in this class. Valid only if this is the
+ canonical element for its class. */
+ unsigned class_count;
+};
+
+typedef struct partition_def
+{
+ /* The number of elements in this partition. */
+ int num_elements;
+ /* The elements in the partition. */
+ struct partition_elem elements[1];
+} *partition;
+
+extern partition partition_new PARAMS((int));
+extern void partition_delete PARAMS((partition));
+extern int partition_union PARAMS((partition,
+ int,
+ int));
+extern void partition_print PARAMS((partition,
+ FILE*));
+
+/* Returns the canonical element corresponding to the class containing
+ ELEMENT__ in PARTITION__. */
+
+#define partition_find(partition__, element__) \
+ ((partition__)->elements[(element__)].class_element)
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* _PARTITION_H */
diff --git a/include/progress.h b/include/progress.h
new file mode 100644
index 000000000..23b096007
--- /dev/null
+++ b/include/progress.h
@@ -0,0 +1,37 @@
+/* Default definitions for progress macros.
+ Copyright 1994 Free Software Foundation, Inc.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* The default definitions below are intended to be replaced by real
+ definitions, if building the tools for an interactive programming
+ environment. */
+
+#ifndef _PROGRESS_H
+#define _PROGRESS_H
+
+#ifndef START_PROGRESS
+#define START_PROGRESS(STR,N)
+#endif
+
+#ifndef PROGRESS
+#define PROGRESS(X)
+#endif
+
+#ifndef END_PROGRESS
+#define END_PROGRESS(STR)
+#endif
+
+#endif /* _PROGRESS_H */
diff --git a/include/safe-ctype.h b/include/safe-ctype.h
new file mode 100644
index 000000000..69a3f74cc
--- /dev/null
+++ b/include/safe-ctype.h
@@ -0,0 +1,119 @@
+/* <ctype.h> replacement macros.
+
+ Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+ Contributed by Zack Weinberg <zackw@stanford.edu>.
+
+This file is part of the libiberty library.
+Libiberty is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public
+License as published by the Free Software Foundation; either
+version 2 of the License, or (at your option) any later version.
+
+Libiberty is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with libiberty; see the file COPYING.LIB. If
+not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+/* This is a compatible replacement of the standard C library's <ctype.h>
+ with the following properties:
+
+ - Implements all isxxx() macros required by C99.
+ - Also implements some character classes useful when
+ parsing C-like languages.
+ - Does not change behavior depending on the current locale.
+ - Behaves properly for all values in the range of a signed or
+ unsigned char.
+
+ To avoid conflicts, this header defines the isxxx functions in upper
+ case, e.g. ISALPHA not isalpha. */
+
+#ifndef SAFE_CTYPE_H
+#define SAFE_CTYPE_H
+
+#ifdef isalpha
+ #error "safe-ctype.h and ctype.h may not be used simultaneously"
+#endif
+
+/* Determine host character set. */
+#define HOST_CHARSET_UNKNOWN 0
+#define HOST_CHARSET_ASCII 1
+#define HOST_CHARSET_EBCDIC 2
+
+#if '\n' == 0x0A && ' ' == 0x20 && '0' == 0x30 \
+ && 'A' == 0x41 && 'a' == 0x61 && '!' == 0x21
+# define HOST_CHARSET HOST_CHARSET_ASCII
+#else
+# if '\n' == 0x15 && ' ' == 0x40 && '0' == 0xF0 \
+ && 'A' == 0xC1 && 'a' == 0x81 && '!' == 0x5A
+# define HOST_CHARSET HOST_CHARSET_EBCDIC
+# else
+# define HOST_CHARSET HOST_CHARSET_UNKNOWN
+# endif
+#endif
+
+/* Categories. */
+
+enum {
+ /* In C99 */
+ _sch_isblank = 0x0001, /* space \t */
+ _sch_iscntrl = 0x0002, /* nonprinting characters */
+ _sch_isdigit = 0x0004, /* 0-9 */
+ _sch_islower = 0x0008, /* a-z */
+ _sch_isprint = 0x0010, /* any printing character including ' ' */
+ _sch_ispunct = 0x0020, /* all punctuation */
+ _sch_isspace = 0x0040, /* space \t \n \r \f \v */
+ _sch_isupper = 0x0080, /* A-Z */
+ _sch_isxdigit = 0x0100, /* 0-9A-Fa-f */
+
+ /* Extra categories useful to cpplib. */
+ _sch_isidst = 0x0200, /* A-Za-z_ */
+ _sch_isvsp = 0x0400, /* \n \r */
+ _sch_isnvsp = 0x0800, /* space \t \f \v \0 */
+
+ /* Combinations of the above. */
+ _sch_isalpha = _sch_isupper|_sch_islower, /* A-Za-z */
+ _sch_isalnum = _sch_isalpha|_sch_isdigit, /* A-Za-z0-9 */
+ _sch_isidnum = _sch_isidst|_sch_isdigit, /* A-Za-z0-9_ */
+ _sch_isgraph = _sch_isalnum|_sch_ispunct, /* isprint and not space */
+ _sch_iscppsp = _sch_isvsp|_sch_isnvsp, /* isspace + \0 */
+ _sch_isbasic = _sch_isprint|_sch_iscppsp /* basic charset of ISO C
+ (plus ` and @) */
+};
+
+/* Character classification. */
+extern const unsigned short _sch_istable[256];
+
+#define _sch_test(c, bit) (_sch_istable[(c) & 0xff] & (unsigned short)(bit))
+
+#define ISALPHA(c) _sch_test(c, _sch_isalpha)
+#define ISALNUM(c) _sch_test(c, _sch_isalnum)
+#define ISBLANK(c) _sch_test(c, _sch_isblank)
+#define ISCNTRL(c) _sch_test(c, _sch_iscntrl)
+#define ISDIGIT(c) _sch_test(c, _sch_isdigit)
+#define ISGRAPH(c) _sch_test(c, _sch_isgraph)
+#define ISLOWER(c) _sch_test(c, _sch_islower)
+#define ISPRINT(c) _sch_test(c, _sch_isprint)
+#define ISPUNCT(c) _sch_test(c, _sch_ispunct)
+#define ISSPACE(c) _sch_test(c, _sch_isspace)
+#define ISUPPER(c) _sch_test(c, _sch_isupper)
+#define ISXDIGIT(c) _sch_test(c, _sch_isxdigit)
+
+#define ISIDNUM(c) _sch_test(c, _sch_isidnum)
+#define ISIDST(c) _sch_test(c, _sch_isidst)
+#define IS_ISOBASIC(c) _sch_test(c, _sch_isbasic)
+#define IS_VSPACE(c) _sch_test(c, _sch_isvsp)
+#define IS_NVSPACE(c) _sch_test(c, _sch_isnvsp)
+#define IS_SPACE_OR_NUL(c) _sch_test(c, _sch_iscppsp)
+
+/* Character transformation. */
+extern const unsigned char _sch_toupper[256];
+extern const unsigned char _sch_tolower[256];
+#define TOUPPER(c) _sch_toupper[(c) & 0xff]
+#define TOLOWER(c) _sch_tolower[(c) & 0xff]
+
+#endif /* SAFE_CTYPE_H */
diff --git a/include/sort.h b/include/sort.h
new file mode 100644
index 000000000..3f3a92f18
--- /dev/null
+++ b/include/sort.h
@@ -0,0 +1,48 @@
+/* Sorting algorithms.
+ Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+ Contributed by Mark Mitchell <mark@codesourcery.com>.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+#ifndef SORT_H
+#define SORT_H
+
+#include <sys/types.h> /* For size_t */
+#ifdef __STDC__
+#include <stddef.h>
+#endif /* __STDC__ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include "ansidecl.h"
+
+/* Sort an array of pointers. */
+
+extern void sort_pointers PARAMS ((size_t, void **, void **));
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* SORT_H */
+
+
+
+
diff --git a/include/splay-tree.h b/include/splay-tree.h
new file mode 100644
index 000000000..e05aeb5af
--- /dev/null
+++ b/include/splay-tree.h
@@ -0,0 +1,159 @@
+/* A splay-tree datatype.
+ Copyright 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
+ Contributed by Mark Mitchell (mark@markmitchell.com).
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+/* For an easily readable description of splay-trees, see:
+
+ Lewis, Harry R. and Denenberg, Larry. Data Structures and Their
+ Algorithms. Harper-Collins, Inc. 1991.
+
+ The major feature of splay trees is that all basic tree operations
+ are amortized O(log n) time for a tree with n nodes. */
+
+#ifndef _SPLAY_TREE_H
+#define _SPLAY_TREE_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include "ansidecl.h"
+
+#ifndef GTY
+#define GTY(X)
+#endif
+
+/* Use typedefs for the key and data types to facilitate changing
+ these types, if necessary. These types should be sufficiently wide
+ that any pointer or scalar can be cast to these types, and then
+ cast back, without loss of precision. */
+typedef unsigned long int splay_tree_key;
+typedef unsigned long int splay_tree_value;
+
+/* Forward declaration for a node in the tree. */
+typedef struct splay_tree_node_s *splay_tree_node;
+
+/* The type of a function which compares two splay-tree keys. The
+ function should return values as for qsort. */
+typedef int (*splay_tree_compare_fn) PARAMS((splay_tree_key, splay_tree_key));
+
+/* The type of a function used to deallocate any resources associated
+ with the key. */
+typedef void (*splay_tree_delete_key_fn) PARAMS((splay_tree_key));
+
+/* The type of a function used to deallocate any resources associated
+ with the value. */
+typedef void (*splay_tree_delete_value_fn) PARAMS((splay_tree_value));
+
+/* The type of a function used to iterate over the tree. */
+typedef int (*splay_tree_foreach_fn) PARAMS((splay_tree_node, void*));
+
+/* The type of a function used to allocate memory for tree root and
+ node structures. The first argument is the number of bytes needed;
+ the second is a data pointer the splay tree functions pass through
+ to the allocator. This function must never return zero. */
+typedef PTR (*splay_tree_allocate_fn) PARAMS((int, void *));
+
+/* The type of a function used to free memory allocated using the
+ corresponding splay_tree_allocate_fn. The first argument is the
+ memory to be freed; the latter is a data pointer the splay tree
+ functions pass through to the freer. */
+typedef void (*splay_tree_deallocate_fn) PARAMS((void *, void *));
+
+/* The nodes in the splay tree. */
+struct splay_tree_node_s GTY(())
+{
+ /* The key. */
+ splay_tree_key GTY ((use_param1)) key;
+
+ /* The value. */
+ splay_tree_value GTY ((use_param2)) value;
+
+ /* The left and right children, respectively. */
+ splay_tree_node GTY ((use_params)) left;
+ splay_tree_node GTY ((use_params)) right;
+};
+
+/* The splay tree itself. */
+struct splay_tree_s GTY(())
+{
+ /* The root of the tree. */
+ splay_tree_node GTY ((use_params)) root;
+
+ /* The comparision function. */
+ splay_tree_compare_fn comp;
+
+ /* The deallocate-key function. NULL if no cleanup is necessary. */
+ splay_tree_delete_key_fn delete_key;
+
+ /* The deallocate-value function. NULL if no cleanup is necessary. */
+ splay_tree_delete_value_fn delete_value;
+
+ /* Allocate/free functions, and a data pointer to pass to them. */
+ splay_tree_allocate_fn allocate;
+ splay_tree_deallocate_fn deallocate;
+ PTR GTY((skip)) allocate_data;
+
+};
+typedef struct splay_tree_s *splay_tree;
+
+extern splay_tree splay_tree_new PARAMS((splay_tree_compare_fn,
+ splay_tree_delete_key_fn,
+ splay_tree_delete_value_fn));
+extern splay_tree splay_tree_new_with_allocator
+ PARAMS((splay_tree_compare_fn,
+ splay_tree_delete_key_fn,
+ splay_tree_delete_value_fn,
+ splay_tree_allocate_fn,
+ splay_tree_deallocate_fn,
+ void *));
+extern void splay_tree_delete PARAMS((splay_tree));
+extern splay_tree_node splay_tree_insert
+ PARAMS((splay_tree,
+ splay_tree_key,
+ splay_tree_value));
+extern void splay_tree_remove PARAMS((splay_tree,
+ splay_tree_key));
+extern splay_tree_node splay_tree_lookup
+ PARAMS((splay_tree,
+ splay_tree_key));
+extern splay_tree_node splay_tree_predecessor
+ PARAMS((splay_tree,
+ splay_tree_key));
+extern splay_tree_node splay_tree_successor
+ PARAMS((splay_tree,
+ splay_tree_key));
+extern splay_tree_node splay_tree_max
+ PARAMS((splay_tree));
+extern splay_tree_node splay_tree_min
+ PARAMS((splay_tree));
+extern int splay_tree_foreach PARAMS((splay_tree,
+ splay_tree_foreach_fn,
+ void*));
+extern int splay_tree_compare_ints PARAMS((splay_tree_key,
+ splay_tree_key));
+extern int splay_tree_compare_pointers PARAMS((splay_tree_key,
+ splay_tree_key));
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* _SPLAY_TREE_H */
diff --git a/include/symcat.h b/include/symcat.h
new file mode 100644
index 000000000..61ce1e9b3
--- /dev/null
+++ b/include/symcat.h
@@ -0,0 +1,49 @@
+/* Symbol concatenation utilities.
+
+ Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef SYM_CAT_H
+#define SYM_CAT_H
+
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define CONCAT2(a,b) a##b
+#define CONCAT3(a,b,c) a##b##c
+#define CONCAT4(a,b,c,d) a##b##c##d
+#define STRINGX(s) #s
+#else
+/* Note one should never pass extra whitespace to the CONCATn macros,
+ e.g. CONCAT2(foo, bar) because traditonal C will keep the space between
+ the two labels instead of concatenating them. Instead, make sure to
+ write CONCAT2(foo,bar). */
+#define CONCAT2(a,b) a/**/b
+#define CONCAT3(a,b,c) a/**/b/**/c
+#define CONCAT4(a,b,c,d) a/**/b/**/c/**/d
+#define STRINGX(s) "s"
+#endif
+
+#define XCONCAT2(a,b) CONCAT2(a,b)
+#define XCONCAT3(a,b,c) CONCAT3(a,b,c)
+#define XCONCAT4(a,b,c,d) CONCAT4(a,b,c,d)
+
+/* Note the layer of indirection here is typically used to allow
+ stringification of the expansion of macros. I.e. "#define foo
+ bar", "XSTRING(foo)", to yield "bar". Be aware that this only
+ works for __STDC__, not for traditional C which will still resolve
+ to "foo". */
+#define XSTRING(s) STRINGX(s)
+
+#endif /* SYM_CAT_H */
diff --git a/include/ternary.h b/include/ternary.h
new file mode 100644
index 000000000..40d442e62
--- /dev/null
+++ b/include/ternary.h
@@ -0,0 +1,51 @@
+/* ternary.h - Ternary Search Trees
+ Copyright 2001 Free Software Foundation, Inc.
+
+ Contributed by Daniel Berlin (dan@cgsoftware.com)
+
+
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ USA. */
+#ifndef TERNARY_H_
+#define TERNARY_H_
+/* Ternary search trees */
+
+typedef struct ternary_node_def *ternary_tree;
+
+typedef struct ternary_node_def
+{
+ char splitchar;
+ ternary_tree lokid;
+ ternary_tree eqkid;
+ ternary_tree hikid;
+}
+ternary_node;
+
+/* Insert string S into tree P, associating it with DATA.
+ Return the data in the tree associated with the string if it's
+ already there, and replace is 0.
+ Otherwise, replaces if it it exists, inserts if it doesn't, and
+ returns the data you passed in. */
+PTR ternary_insert PARAMS ((ternary_tree *p, const char *s,
+ PTR data, int replace));
+
+/* Delete the ternary search tree rooted at P.
+ Does NOT delete the data you associated with the strings. */
+void ternary_cleanup PARAMS ((ternary_tree p));
+
+/* Search the ternary tree for string S, returning the data associated
+ with it if found. */
+PTR ternary_search PARAMS ((const ternary_node *p, const char *s));
+#endif
diff --git a/include/xregex.h b/include/xregex.h
new file mode 100644
index 000000000..645195bbc
--- /dev/null
+++ b/include/xregex.h
@@ -0,0 +1,28 @@
+/* This file redefines all regex external names before including
+ a renamed copy of glibc's regex.h. */
+
+#ifndef _XREGEX_H
+#define _XREGEX_H 1
+
+# define regfree xregfree
+# define regexec xregexec
+# define regcomp xregcomp
+# define regerror xregerror
+# define re_set_registers xre_set_registers
+# define re_match_2 xre_match_2
+# define re_match xre_match
+# define re_search xre_search
+# define re_compile_pattern xre_compile_pattern
+# define re_set_syntax xre_set_syntax
+# define re_search_2 xre_search_2
+# define re_compile_fastmap xre_compile_fastmap
+# define re_syntax_options xre_syntax_options
+# define re_max_failures xre_max_failures
+
+# define _REGEX_RE_COMP
+# define re_comp xre_comp
+# define re_exec xre_exec
+
+#include "xregex2.h"
+
+#endif /* xregex.h */
diff --git a/include/xregex2.h b/include/xregex2.h
new file mode 100644
index 000000000..2991daf9b
--- /dev/null
+++ b/include/xregex2.h
@@ -0,0 +1,571 @@
+/* Definitions for data structures and routines for the regular
+ expression library, version 0.12.
+ Copyright (C) 1985,1989-1993,1995-1998, 2000 Free Software Foundation, Inc.
+ This file is part of the GNU C Library. Its master source is NOT part of
+ the C library, however. The master source lives in /gd/gnu/lib.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+#ifndef _REGEX_H
+#define _REGEX_H 1
+
+/* Allow the use in C++ code. */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* POSIX says that <sys/types.h> must be included (by the caller) before
+ <regex.h>. */
+
+#if !defined _POSIX_C_SOURCE && !defined _POSIX_SOURCE && defined VMS
+/* VMS doesn't have `size_t' in <sys/types.h>, even though POSIX says it
+ should be there. */
+# include <stddef.h>
+#endif
+
+/* The following two types have to be signed and unsigned integer type
+ wide enough to hold a value of a pointer. For most ANSI compilers
+ ptrdiff_t and size_t should be likely OK. Still size of these two
+ types is 2 for Microsoft C. Ugh... */
+typedef long int s_reg_t;
+typedef unsigned long int active_reg_t;
+
+/* The following bits are used to determine the regexp syntax we
+ recognize. The set/not-set meanings are chosen so that Emacs syntax
+ remains the value 0. The bits are given in alphabetical order, and
+ the definitions shifted by one from the previous bit; thus, when we
+ add or remove a bit, only one other definition need change. */
+typedef unsigned long int reg_syntax_t;
+
+/* If this bit is not set, then \ inside a bracket expression is literal.
+ If set, then such a \ quotes the following character. */
+#define RE_BACKSLASH_ESCAPE_IN_LISTS ((unsigned long int) 1)
+
+/* If this bit is not set, then + and ? are operators, and \+ and \? are
+ literals.
+ If set, then \+ and \? are operators and + and ? are literals. */
+#define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
+
+/* If this bit is set, then character classes are supported. They are:
+ [:alpha:], [:upper:], [:lower:], [:digit:], [:alnum:], [:xdigit:],
+ [:space:], [:print:], [:punct:], [:graph:], and [:cntrl:].
+ If not set, then character classes are not supported. */
+#define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1)
+
+/* If this bit is set, then ^ and $ are always anchors (outside bracket
+ expressions, of course).
+ If this bit is not set, then it depends:
+ ^ is an anchor if it is at the beginning of a regular
+ expression or after an open-group or an alternation operator;
+ $ is an anchor if it is at the end of a regular expression, or
+ before a close-group or an alternation operator.
+
+ This bit could be (re)combined with RE_CONTEXT_INDEP_OPS, because
+ POSIX draft 11.2 says that * etc. in leading positions is undefined.
+ We already implemented a previous draft which made those constructs
+ invalid, though, so we haven't changed the code back. */
+#define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1)
+
+/* If this bit is set, then special characters are always special
+ regardless of where they are in the pattern.
+ If this bit is not set, then special characters are special only in
+ some contexts; otherwise they are ordinary. Specifically,
+ * + ? and intervals are only special when not after the beginning,
+ open-group, or alternation operator. */
+#define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1)
+
+/* If this bit is set, then *, +, ?, and { cannot be first in an re or
+ immediately after an alternation or begin-group operator. */
+#define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1)
+
+/* If this bit is set, then . matches newline.
+ If not set, then it doesn't. */
+#define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1)
+
+/* If this bit is set, then . doesn't match NUL.
+ If not set, then it does. */
+#define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1)
+
+/* If this bit is set, nonmatching lists [^...] do not match newline.
+ If not set, they do. */
+#define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1)
+
+/* If this bit is set, either \{...\} or {...} defines an
+ interval, depending on RE_NO_BK_BRACES.
+ If not set, \{, \}, {, and } are literals. */
+#define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1)
+
+/* If this bit is set, +, ? and | aren't recognized as operators.
+ If not set, they are. */
+#define RE_LIMITED_OPS (RE_INTERVALS << 1)
+
+/* If this bit is set, newline is an alternation operator.
+ If not set, newline is literal. */
+#define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1)
+
+/* If this bit is set, then `{...}' defines an interval, and \{ and \}
+ are literals.
+ If not set, then `\{...\}' defines an interval. */
+#define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1)
+
+/* If this bit is set, (...) defines a group, and \( and \) are literals.
+ If not set, \(...\) defines a group, and ( and ) are literals. */
+#define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1)
+
+/* If this bit is set, then \<digit> matches <digit>.
+ If not set, then \<digit> is a back-reference. */
+#define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1)
+
+/* If this bit is set, then | is an alternation operator, and \| is literal.
+ If not set, then \| is an alternation operator, and | is literal. */
+#define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1)
+
+/* If this bit is set, then an ending range point collating higher
+ than the starting range point, as in [z-a], is invalid.
+ If not set, then when ending range point collates higher than the
+ starting range point, the range is ignored. */
+#define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1)
+
+/* If this bit is set, then an unmatched ) is ordinary.
+ If not set, then an unmatched ) is invalid. */
+#define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1)
+
+/* If this bit is set, succeed as soon as we match the whole pattern,
+ without further backtracking. */
+#define RE_NO_POSIX_BACKTRACKING (RE_UNMATCHED_RIGHT_PAREN_ORD << 1)
+
+/* If this bit is set, do not process the GNU regex operators.
+ If not set, then the GNU regex operators are recognized. */
+#define RE_NO_GNU_OPS (RE_NO_POSIX_BACKTRACKING << 1)
+
+/* If this bit is set, turn on internal regex debugging.
+ If not set, and debugging was on, turn it off.
+ This only works if regex.c is compiled -DDEBUG.
+ We define this bit always, so that all that's needed to turn on
+ debugging is to recompile regex.c; the calling code can always have
+ this bit set, and it won't affect anything in the normal case. */
+#define RE_DEBUG (RE_NO_GNU_OPS << 1)
+
+/* If this bit is set, a syntactically invalid interval is treated as
+ a string of ordinary characters. For example, the ERE 'a{1' is
+ treated as 'a\{1'. */
+#define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1)
+
+/* This global variable defines the particular regexp syntax to use (for
+ some interfaces). When a regexp is compiled, the syntax used is
+ stored in the pattern buffer, so changing this does not affect
+ already-compiled regexps. */
+extern reg_syntax_t re_syntax_options;
+
+/* Define combinations of the above bits for the standard possibilities.
+ (The [[[ comments delimit what gets put into the Texinfo file, so
+ don't delete them!) */
+/* [[[begin syntaxes]]] */
+#define RE_SYNTAX_EMACS 0
+
+#define RE_SYNTAX_AWK \
+ (RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DOT_NOT_NULL \
+ | RE_NO_BK_PARENS | RE_NO_BK_REFS \
+ | RE_NO_BK_VBAR | RE_NO_EMPTY_RANGES \
+ | RE_DOT_NEWLINE | RE_CONTEXT_INDEP_ANCHORS \
+ | RE_UNMATCHED_RIGHT_PAREN_ORD | RE_NO_GNU_OPS)
+
+#define RE_SYNTAX_GNU_AWK \
+ ((RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DEBUG) \
+ & ~(RE_DOT_NOT_NULL | RE_INTERVALS | RE_CONTEXT_INDEP_OPS))
+
+#define RE_SYNTAX_POSIX_AWK \
+ (RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS \
+ | RE_INTERVALS | RE_NO_GNU_OPS)
+
+#define RE_SYNTAX_GREP \
+ (RE_BK_PLUS_QM | RE_CHAR_CLASSES \
+ | RE_HAT_LISTS_NOT_NEWLINE | RE_INTERVALS \
+ | RE_NEWLINE_ALT)
+
+#define RE_SYNTAX_EGREP \
+ (RE_CHAR_CLASSES | RE_CONTEXT_INDEP_ANCHORS \
+ | RE_CONTEXT_INDEP_OPS | RE_HAT_LISTS_NOT_NEWLINE \
+ | RE_NEWLINE_ALT | RE_NO_BK_PARENS \
+ | RE_NO_BK_VBAR)
+
+#define RE_SYNTAX_POSIX_EGREP \
+ (RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES \
+ | RE_INVALID_INTERVAL_ORD)
+
+/* P1003.2/D11.2, section 4.20.7.1, lines 5078ff. */
+#define RE_SYNTAX_ED RE_SYNTAX_POSIX_BASIC
+
+#define RE_SYNTAX_SED RE_SYNTAX_POSIX_BASIC
+
+/* Syntax bits common to both basic and extended POSIX regex syntax. */
+#define _RE_SYNTAX_POSIX_COMMON \
+ (RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \
+ | RE_INTERVALS | RE_NO_EMPTY_RANGES)
+
+#define RE_SYNTAX_POSIX_BASIC \
+ (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM)
+
+/* Differs from ..._POSIX_BASIC only in that RE_BK_PLUS_QM becomes
+ RE_LIMITED_OPS, i.e., \? \+ \| are not recognized. Actually, this
+ isn't minimal, since other operators, such as \`, aren't disabled. */
+#define RE_SYNTAX_POSIX_MINIMAL_BASIC \
+ (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS)
+
+#define RE_SYNTAX_POSIX_EXTENDED \
+ (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \
+ | RE_CONTEXT_INDEP_OPS | RE_NO_BK_BRACES \
+ | RE_NO_BK_PARENS | RE_NO_BK_VBAR \
+ | RE_CONTEXT_INVALID_OPS | RE_UNMATCHED_RIGHT_PAREN_ORD)
+
+/* Differs from ..._POSIX_EXTENDED in that RE_CONTEXT_INDEP_OPS is
+ removed and RE_NO_BK_REFS is added. */
+#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED \
+ (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \
+ | RE_CONTEXT_INVALID_OPS | RE_NO_BK_BRACES \
+ | RE_NO_BK_PARENS | RE_NO_BK_REFS \
+ | RE_NO_BK_VBAR | RE_UNMATCHED_RIGHT_PAREN_ORD)
+/* [[[end syntaxes]]] */
+
+/* Maximum number of duplicates an interval can allow. Some systems
+ (erroneously) define this in other header files, but we want our
+ value, so remove any previous define. */
+#ifdef RE_DUP_MAX
+# undef RE_DUP_MAX
+#endif
+/* If sizeof(int) == 2, then ((1 << 15) - 1) overflows. */
+#define RE_DUP_MAX (0x7fff)
+
+
+/* POSIX `cflags' bits (i.e., information for `regcomp'). */
+
+/* If this bit is set, then use extended regular expression syntax.
+ If not set, then use basic regular expression syntax. */
+#define REG_EXTENDED 1
+
+/* If this bit is set, then ignore case when matching.
+ If not set, then case is significant. */
+#define REG_ICASE (REG_EXTENDED << 1)
+
+/* If this bit is set, then anchors do not match at newline
+ characters in the string.
+ If not set, then anchors do match at newlines. */
+#define REG_NEWLINE (REG_ICASE << 1)
+
+/* If this bit is set, then report only success or fail in regexec.
+ If not set, then returns differ between not matching and errors. */
+#define REG_NOSUB (REG_NEWLINE << 1)
+
+
+/* POSIX `eflags' bits (i.e., information for regexec). */
+
+/* If this bit is set, then the beginning-of-line operator doesn't match
+ the beginning of the string (presumably because it's not the
+ beginning of a line).
+ If not set, then the beginning-of-line operator does match the
+ beginning of the string. */
+#define REG_NOTBOL 1
+
+/* Like REG_NOTBOL, except for the end-of-line. */
+#define REG_NOTEOL (1 << 1)
+
+
+/* If any error codes are removed, changed, or added, update the
+ `re_error_msg' table in regex.c. */
+typedef enum
+{
+#ifdef _XOPEN_SOURCE
+ REG_ENOSYS = -1, /* This will never happen for this implementation. */
+#endif
+
+ REG_NOERROR = 0, /* Success. */
+ REG_NOMATCH, /* Didn't find a match (for regexec). */
+
+ /* POSIX regcomp return error codes. (In the order listed in the
+ standard.) */
+ REG_BADPAT, /* Invalid pattern. */
+ REG_ECOLLATE, /* Not implemented. */
+ REG_ECTYPE, /* Invalid character class name. */
+ REG_EESCAPE, /* Trailing backslash. */
+ REG_ESUBREG, /* Invalid back reference. */
+ REG_EBRACK, /* Unmatched left bracket. */
+ REG_EPAREN, /* Parenthesis imbalance. */
+ REG_EBRACE, /* Unmatched \{. */
+ REG_BADBR, /* Invalid contents of \{\}. */
+ REG_ERANGE, /* Invalid range end. */
+ REG_ESPACE, /* Ran out of memory. */
+ REG_BADRPT, /* No preceding re for repetition op. */
+
+ /* Error codes we've added. */
+ REG_EEND, /* Premature end. */
+ REG_ESIZE, /* Compiled pattern bigger than 2^16 bytes. */
+ REG_ERPAREN /* Unmatched ) or \); not returned from regcomp. */
+} reg_errcode_t;
+
+/* This data structure represents a compiled pattern. Before calling
+ the pattern compiler, the fields `buffer', `allocated', `fastmap',
+ `translate', and `no_sub' can be set. After the pattern has been
+ compiled, the `re_nsub' field is available. All other fields are
+ private to the regex routines. */
+
+#ifndef RE_TRANSLATE_TYPE
+# define RE_TRANSLATE_TYPE char *
+#endif
+
+struct re_pattern_buffer
+{
+/* [[[begin pattern_buffer]]] */
+ /* Space that holds the compiled pattern. It is declared as
+ `unsigned char *' because its elements are
+ sometimes used as array indexes. */
+ unsigned char *buffer;
+
+ /* Number of bytes to which `buffer' points. */
+ unsigned long int allocated;
+
+ /* Number of bytes actually used in `buffer'. */
+ unsigned long int used;
+
+ /* Syntax setting with which the pattern was compiled. */
+ reg_syntax_t syntax;
+
+ /* Pointer to a fastmap, if any, otherwise zero. re_search uses
+ the fastmap, if there is one, to skip over impossible
+ starting points for matches. */
+ char *fastmap;
+
+ /* Either a translate table to apply to all characters before
+ comparing them, or zero for no translation. The translation
+ is applied to a pattern when it is compiled and to a string
+ when it is matched. */
+ RE_TRANSLATE_TYPE translate;
+
+ /* Number of subexpressions found by the compiler. */
+ size_t re_nsub;
+
+ /* Zero if this pattern cannot match the empty string, one else.
+ Well, in truth it's used only in `re_search_2', to see
+ whether or not we should use the fastmap, so we don't set
+ this absolutely perfectly; see `re_compile_fastmap' (the
+ `duplicate' case). */
+ unsigned can_be_null : 1;
+
+ /* If REGS_UNALLOCATED, allocate space in the `regs' structure
+ for `max (RE_NREGS, re_nsub + 1)' groups.
+ If REGS_REALLOCATE, reallocate space if necessary.
+ If REGS_FIXED, use what's there. */
+#define REGS_UNALLOCATED 0
+#define REGS_REALLOCATE 1
+#define REGS_FIXED 2
+ unsigned regs_allocated : 2;
+
+ /* Set to zero when `regex_compile' compiles a pattern; set to one
+ by `re_compile_fastmap' if it updates the fastmap. */
+ unsigned fastmap_accurate : 1;
+
+ /* If set, `re_match_2' does not return information about
+ subexpressions. */
+ unsigned no_sub : 1;
+
+ /* If set, a beginning-of-line anchor doesn't match at the
+ beginning of the string. */
+ unsigned not_bol : 1;
+
+ /* Similarly for an end-of-line anchor. */
+ unsigned not_eol : 1;
+
+ /* If true, an anchor at a newline matches. */
+ unsigned newline_anchor : 1;
+
+/* [[[end pattern_buffer]]] */
+};
+
+typedef struct re_pattern_buffer regex_t;
+
+/* Type for byte offsets within the string. POSIX mandates this. */
+typedef int regoff_t;
+
+
+/* This is the structure we store register match data in. See
+ regex.texinfo for a full description of what registers match. */
+struct re_registers
+{
+ unsigned num_regs;
+ regoff_t *start;
+ regoff_t *end;
+};
+
+
+/* If `regs_allocated' is REGS_UNALLOCATED in the pattern buffer,
+ `re_match_2' returns information about at least this many registers
+ the first time a `regs' structure is passed. */
+#ifndef RE_NREGS
+# define RE_NREGS 30
+#endif
+
+
+/* POSIX specification for registers. Aside from the different names than
+ `re_registers', POSIX uses an array of structures, instead of a
+ structure of arrays. */
+typedef struct
+{
+ regoff_t rm_so; /* Byte offset from string's start to substring's start. */
+ regoff_t rm_eo; /* Byte offset from string's start to substring's end. */
+} regmatch_t;
+
+/* Declarations for routines. */
+
+/* To avoid duplicating every routine declaration -- once with a
+ prototype (if we are ANSI), and once without (if we aren't) -- we
+ use the following macro to declare argument types. This
+ unfortunately clutters up the declarations a bit, but I think it's
+ worth it. */
+
+#if __STDC__
+
+# define _RE_ARGS(args) args
+
+#else /* not __STDC__ */
+
+# define _RE_ARGS(args) ()
+
+#endif /* not __STDC__ */
+
+/* Sets the current default syntax to SYNTAX, and return the old syntax.
+ You can also simply assign to the `re_syntax_options' variable. */
+extern reg_syntax_t re_set_syntax _RE_ARGS ((reg_syntax_t syntax));
+
+/* Compile the regular expression PATTERN, with length LENGTH
+ and syntax given by the global `re_syntax_options', into the buffer
+ BUFFER. Return NULL if successful, and an error string if not. */
+extern const char *re_compile_pattern
+ _RE_ARGS ((const char *pattern, size_t length,
+ struct re_pattern_buffer *buffer));
+
+
+/* Compile a fastmap for the compiled pattern in BUFFER; used to
+ accelerate searches. Return 0 if successful and -2 if was an
+ internal error. */
+extern int re_compile_fastmap _RE_ARGS ((struct re_pattern_buffer *buffer));
+
+
+/* Search in the string STRING (with length LENGTH) for the pattern
+ compiled into BUFFER. Start searching at position START, for RANGE
+ characters. Return the starting position of the match, -1 for no
+ match, or -2 for an internal error. Also return register
+ information in REGS (if REGS and BUFFER->no_sub are nonzero). */
+extern int re_search
+ _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string,
+ int length, int start, int range, struct re_registers *regs));
+
+
+/* Like `re_search', but search in the concatenation of STRING1 and
+ STRING2. Also, stop searching at index START + STOP. */
+extern int re_search_2
+ _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1,
+ int length1, const char *string2, int length2,
+ int start, int range, struct re_registers *regs, int stop));
+
+
+/* Like `re_search', but return how many characters in STRING the regexp
+ in BUFFER matched, starting at position START. */
+extern int re_match
+ _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string,
+ int length, int start, struct re_registers *regs));
+
+
+/* Relates to `re_match' as `re_search_2' relates to `re_search'. */
+extern int re_match_2
+ _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1,
+ int length1, const char *string2, int length2,
+ int start, struct re_registers *regs, int stop));
+
+
+/* Set REGS to hold NUM_REGS registers, storing them in STARTS and
+ ENDS. Subsequent matches using BUFFER and REGS will use this memory
+ for recording register information. STARTS and ENDS must be
+ allocated with malloc, and must each be at least `NUM_REGS * sizeof
+ (regoff_t)' bytes long.
+
+ If NUM_REGS == 0, then subsequent matches should allocate their own
+ register data.
+
+ Unless this function is called, the first search or match using
+ PATTERN_BUFFER will allocate its own register data, without
+ freeing the old data. */
+extern void re_set_registers
+ _RE_ARGS ((struct re_pattern_buffer *buffer, struct re_registers *regs,
+ unsigned num_regs, regoff_t *starts, regoff_t *ends));
+
+#if defined _REGEX_RE_COMP || defined _LIBC
+# ifndef _CRAY
+/* 4.2 bsd compatibility. */
+extern char *re_comp _RE_ARGS ((const char *));
+extern int re_exec _RE_ARGS ((const char *));
+# endif
+#endif
+
+/* GCC 2.95 and later have "__restrict"; C99 compilers have
+ "restrict", and "configure" may have defined "restrict". */
+#ifndef __restrict
+# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__))
+# if defined restrict || 199901L <= __STDC_VERSION__
+# define __restrict restrict
+# else
+# define __restrict
+# endif
+# endif
+#endif
+
+/* GCC 3.1 and later support declaring arrays as non-overlapping
+ using the syntax array_name[restrict] */
+#ifndef __restrict_arr
+# if ! (3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) || defined (__GNUG__)
+# define __restrict_arr
+# else
+# define __restrict_arr __restrict
+# endif
+#endif
+
+/* POSIX compatibility. */
+extern int regcomp _RE_ARGS ((regex_t *__restrict __preg,
+ const char *__restrict __pattern,
+ int __cflags));
+
+extern int regexec _RE_ARGS ((const regex_t *__restrict __preg,
+ const char *__restrict __string, size_t __nmatch,
+ regmatch_t __pmatch[__restrict_arr],
+ int __eflags));
+
+extern size_t regerror _RE_ARGS ((int __errcode, const regex_t *__preg,
+ char *__errbuf, size_t __errbuf_size));
+
+extern void regfree _RE_ARGS ((regex_t *__preg));
+
+
+#ifdef __cplusplus
+}
+#endif /* C++ */
+
+#endif /* regex.h */
+
+/*
+Local variables:
+make-backup-files: t
+version-control: t
+trim-versions-without-asking: nil
+End:
+*/
diff --git a/include/xtensa-config.h b/include/xtensa-config.h
new file mode 100644
index 000000000..4191c3685
--- /dev/null
+++ b/include/xtensa-config.h
@@ -0,0 +1,139 @@
+/* Xtensa configuration settings.
+ Copyright (C) 2001,2002,2003 Free Software Foundation, Inc.
+ Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef XTENSA_CONFIG_H
+#define XTENSA_CONFIG_H
+
+/* The macros defined here match those with the same names in the Xtensa
+ compile-time HAL (Hardware Abstraction Layer). Please refer to the
+ Xtensa System Software Reference Manual for documentation of these
+ macros. */
+
+#undef XCHAL_HAVE_BE
+#define XCHAL_HAVE_BE 1
+
+#undef XCHAL_HAVE_DENSITY
+#define XCHAL_HAVE_DENSITY 1
+
+#undef XCHAL_HAVE_CONST16
+#define XCHAL_HAVE_CONST16 0
+
+#undef XCHAL_HAVE_ABS
+#define XCHAL_HAVE_ABS 1
+
+#undef XCHAL_HAVE_ADDX
+#define XCHAL_HAVE_ADDX 1
+
+#undef XCHAL_HAVE_L32R
+#define XCHAL_HAVE_L32R 1
+
+#undef XCHAL_HAVE_MAC16
+#define XCHAL_HAVE_MAC16 0
+
+#undef XCHAL_HAVE_MUL16
+#define XCHAL_HAVE_MUL16 0
+
+#undef XCHAL_HAVE_MUL32
+#define XCHAL_HAVE_MUL32 0
+
+#undef XCHAL_HAVE_DIV32
+#define XCHAL_HAVE_DIV32 0
+
+#undef XCHAL_HAVE_NSA
+#define XCHAL_HAVE_NSA 1
+
+#undef XCHAL_HAVE_MINMAX
+#define XCHAL_HAVE_MINMAX 0
+
+#undef XCHAL_HAVE_SEXT
+#define XCHAL_HAVE_SEXT 0
+
+#undef XCHAL_HAVE_LOOPS
+#define XCHAL_HAVE_LOOPS 1
+
+#undef XCHAL_HAVE_BOOLEANS
+#define XCHAL_HAVE_BOOLEANS 0
+
+#undef XCHAL_HAVE_FP
+#define XCHAL_HAVE_FP 0
+
+#undef XCHAL_HAVE_FP_DIV
+#define XCHAL_HAVE_FP_DIV 0
+
+#undef XCHAL_HAVE_FP_RECIP
+#define XCHAL_HAVE_FP_RECIP 0
+
+#undef XCHAL_HAVE_FP_SQRT
+#define XCHAL_HAVE_FP_SQRT 0
+
+#undef XCHAL_HAVE_FP_RSQRT
+#define XCHAL_HAVE_FP_RSQRT 0
+
+#undef XCHAL_HAVE_WINDOWED
+#define XCHAL_HAVE_WINDOWED 1
+
+
+#undef XCHAL_ICACHE_SIZE
+#define XCHAL_ICACHE_SIZE 8192
+
+#undef XCHAL_DCACHE_SIZE
+#define XCHAL_DCACHE_SIZE 8192
+
+#undef XCHAL_ICACHE_LINESIZE
+#define XCHAL_ICACHE_LINESIZE 16
+
+#undef XCHAL_DCACHE_LINESIZE
+#define XCHAL_DCACHE_LINESIZE 16
+
+#undef XCHAL_ICACHE_LINEWIDTH
+#define XCHAL_ICACHE_LINEWIDTH 4
+
+#undef XCHAL_DCACHE_LINEWIDTH
+#define XCHAL_DCACHE_LINEWIDTH 4
+
+#undef XCHAL_DCACHE_IS_WRITEBACK
+#define XCHAL_DCACHE_IS_WRITEBACK 0
+
+
+#undef XCHAL_HAVE_MMU
+#define XCHAL_HAVE_MMU 1
+
+#undef XCHAL_MMU_MIN_PTE_PAGE_SIZE
+#define XCHAL_MMU_MIN_PTE_PAGE_SIZE 12
+
+
+#undef XCHAL_HAVE_DEBUG
+#define XCHAL_HAVE_DEBUG 1
+
+#undef XCHAL_NUM_IBREAK
+#define XCHAL_NUM_IBREAK 2
+
+#undef XCHAL_NUM_DBREAK
+#define XCHAL_NUM_DBREAK 2
+
+#undef XCHAL_DEBUGLEVEL
+#define XCHAL_DEBUGLEVEL 4
+
+
+#undef XCHAL_EXTRA_SA_SIZE
+#define XCHAL_EXTRA_SA_SIZE 0
+
+#undef XCHAL_EXTRA_SA_ALIGN
+#define XCHAL_EXTRA_SA_ALIGN 1
+
+#endif /* !XTENSA_CONFIG_H */
diff --git a/include/xtensa-isa-internal.h b/include/xtensa-isa-internal.h
new file mode 100644
index 000000000..7f221eae4
--- /dev/null
+++ b/include/xtensa-isa-internal.h
@@ -0,0 +1,114 @@
+/* Internal definitions for configurable Xtensa ISA support.
+ Copyright 2003 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+/* Use the statically-linked version for the GNU tools. */
+#define STATIC_LIBISA 1
+
+#define ISA_INTERFACE_VERSION 3
+
+struct config_struct
+{
+ char *param_name;
+ char *param_value;
+};
+
+/* Encode/decode function types for immediate operands. */
+typedef uint32 (*xtensa_immed_decode_fn) (uint32);
+typedef xtensa_encode_result (*xtensa_immed_encode_fn) (uint32 *);
+
+/* Field accessor function types. */
+typedef uint32 (*xtensa_get_field_fn) (const xtensa_insnbuf);
+typedef void (*xtensa_set_field_fn) (xtensa_insnbuf, uint32);
+
+/* PC-relative relocation function types. */
+typedef uint32 (*xtensa_do_reloc_fn) (uint32, uint32);
+typedef uint32 (*xtensa_undo_reloc_fn) (uint32, uint32);
+
+/* Instruction decode function type. */
+typedef int (*xtensa_insn_decode_fn) (const xtensa_insnbuf);
+
+/* Instruction encoding template function type (each of these functions
+ returns a constant template; they exist only to make it easier for the
+ TIE compiler to generate endian-independent DLLs). */
+typedef xtensa_insnbuf (*xtensa_encoding_template_fn) (void);
+
+
+typedef struct xtensa_operand_internal_struct
+{
+ char *operand_kind; /* e.g., "a", "f", "i", "l".... */
+ char inout; /* '<', '>', or '='. */
+ char isPCRelative; /* Is this a PC-relative offset? */
+ xtensa_get_field_fn get_field; /* Get encoded value of the field. */
+ xtensa_set_field_fn set_field; /* Set field with an encoded value. */
+ xtensa_immed_encode_fn encode; /* Encode the operand value. */
+ xtensa_immed_decode_fn decode; /* Decode the value from the field. */
+ xtensa_do_reloc_fn do_reloc; /* Perform a PC-relative relocation. */
+ xtensa_undo_reloc_fn undo_reloc; /* Undo a PC-relative relocation. */
+} xtensa_operand_internal;
+
+
+typedef struct xtensa_iclass_internal_struct
+{
+ int num_operands; /* Size of "operands" array. */
+ xtensa_operand_internal **operands; /* Array of operand structures. */
+} xtensa_iclass_internal;
+
+
+typedef struct xtensa_opcode_internal_struct
+{
+ const char *name; /* Opcode mnemonic. */
+ int length; /* Length in bytes of the insn. */
+ xtensa_encoding_template_fn template; /* Fn returning encoding template. */
+ xtensa_iclass_internal *iclass; /* Iclass for this opcode. */
+} xtensa_opcode_internal;
+
+
+typedef struct opname_lookup_entry_struct
+{
+ const char *key; /* Opcode mnemonic. */
+ xtensa_opcode opcode; /* Internal opcode number. */
+} opname_lookup_entry;
+
+
+typedef struct xtensa_isa_internal_struct
+{
+ int is_big_endian; /* Endianness. */
+ int insn_size; /* Maximum length in bytes. */
+ int insnbuf_size; /* Number of insnbuf_words. */
+ int num_opcodes; /* Total number for all modules. */
+ xtensa_opcode_internal **opcode_table;/* Indexed by internal opcode #. */
+ int num_modules; /* Number of modules (DLLs) loaded. */
+ int *module_opcode_base; /* Starting opcode # for each module. */
+ xtensa_insn_decode_fn *module_decode_fn; /* Decode fn for each module. */
+ opname_lookup_entry *opname_lookup_table; /* Lookup table for each module. */
+ struct config_struct *config; /* Table of configuration parameters. */
+ int has_density; /* Is density option available? */
+} xtensa_isa_internal;
+
+
+typedef struct xtensa_isa_module_struct
+{
+ int (*get_num_opcodes_fn) (void);
+ xtensa_opcode_internal **(*get_opcodes_fn) (void);
+ int (*decode_insn_fn) (const xtensa_insnbuf);
+ struct config_struct *(*get_config_table_fn) (void);
+} xtensa_isa_module;
+
+extern xtensa_isa_module xtensa_isa_modules[];
+
diff --git a/include/xtensa-isa.h b/include/xtensa-isa.h
new file mode 100644
index 000000000..54f750c9a
--- /dev/null
+++ b/include/xtensa-isa.h
@@ -0,0 +1,230 @@
+/* Interface definition for configurable Xtensa ISA support.
+ Copyright 2003 Free Software Foundation, Inc.
+
+ This file is part of BFD, the Binary File Descriptor library.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef XTENSA_LIBISA_H
+#define XTENSA_LIBISA_H
+
+/* Use the statically-linked version for the GNU tools. */
+#define STATIC_LIBISA 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef uint32
+#define uint32 unsigned int
+#endif
+
+/* This file defines the interface to the Xtensa ISA library. This library
+ contains most of the ISA-specific information for a particular Xtensa
+ processor. For example, the set of valid instructions, their opcode
+ encodings and operand fields are all included here. To support Xtensa's
+ configurability and user-defined instruction extensions (i.e., TIE), the
+ library is initialized by loading one or more dynamic libraries; only a
+ small set of interface code is present in the statically-linked portion
+ of the library.
+
+ This interface basically defines four abstract data types.
+
+ . an instruction buffer - for holding the raw instruction bits
+ . ISA info - information about the ISA as a whole
+ . opcode info - information about individual instructions
+ . operand info - information about specific instruction operands
+
+ It would be nice to implement these as classes in C++, but the library is
+ implemented in C to match the expectations of the GNU tools.
+ Instead, the interface defines a set of functions to access each data
+ type. With the exception of the instruction buffer, the internal
+ representations of the data structures are hidden. All accesses must be
+ made through the functions defined here. */
+
+typedef void* xtensa_isa;
+typedef void* xtensa_operand;
+
+
+/* Opcodes are represented here using sequential integers beginning with 0.
+ The specific value used for a particular opcode is only fixed for a
+ particular instantiation of an xtensa_isa structure, so these values
+ should only be used internally. */
+typedef int xtensa_opcode;
+
+/* Define a unique value for undefined opcodes ("static const int" doesn't
+ seem to work for this because EGCS 1.0.3 on i686-Linux without -O won't
+ allow it to be used as an initializer). */
+#define XTENSA_UNDEFINED -1
+
+
+typedef int libisa_module_specifier;
+
+extern xtensa_isa xtensa_isa_init (void);
+
+
+/* Instruction buffers. */
+
+typedef uint32 xtensa_insnbuf_word;
+typedef xtensa_insnbuf_word *xtensa_insnbuf;
+
+/* Get the size in words of the xtensa_insnbuf array. */
+extern int xtensa_insnbuf_size (xtensa_isa);
+
+/* Allocate (with malloc) an xtensa_insnbuf of the right size. */
+extern xtensa_insnbuf xtensa_insnbuf_alloc (xtensa_isa);
+
+/* Release (with free) an xtensa_insnbuf of the right size. */
+extern void xtensa_insnbuf_free (xtensa_insnbuf);
+
+/* Inward and outward conversion from memory images (byte streams) to our
+ internal instruction representation. */
+extern void xtensa_insnbuf_to_chars (xtensa_isa, const xtensa_insnbuf,
+ char *);
+
+extern void xtensa_insnbuf_from_chars (xtensa_isa, xtensa_insnbuf,
+ const char *);
+
+
+/* ISA information. */
+
+/* Load the ISA information from a shared library. If successful, this returns
+ a value which identifies the ISA for use in subsequent calls to the ISA
+ library; otherwise, it returns NULL. Multiple ISAs can be loaded to support
+ heterogeneous multiprocessor systems. */
+extern xtensa_isa xtensa_load_isa (libisa_module_specifier);
+
+/* Extend an existing set of ISA information by loading an additional shared
+ library of ISA information. This is primarily intended for loading TIE
+ extensions. If successful, the return value is non-zero. */
+extern int xtensa_extend_isa (xtensa_isa, libisa_module_specifier);
+
+/* The default ISA. This variable is set automatically to the ISA most
+ recently loaded and is provided as a convenience. An exception is the GNU
+ opcodes library, where there is a fixed interface that does not allow
+ passing the ISA as a parameter and the ISA must be taken from this global
+ variable. (Note: Since this variable is just a convenience, it is not
+ exported when libisa is built as a DLL, due to the hassle of dealing with
+ declspecs.) */
+extern xtensa_isa xtensa_default_isa;
+
+
+/* Deallocate an xtensa_isa structure. */
+extern void xtensa_isa_free (xtensa_isa);
+
+/* Get the maximum instruction size in bytes. */
+extern int xtensa_insn_maxlength (xtensa_isa);
+
+/* Get the total number of opcodes for this processor. */
+extern int xtensa_num_opcodes (xtensa_isa);
+
+/* Translate a mnemonic name to an opcode. Returns XTENSA_UNDEFINED if
+ the name is not a valid opcode mnemonic. */
+extern xtensa_opcode xtensa_opcode_lookup (xtensa_isa, const char *);
+
+/* Decode a binary instruction buffer. Returns the opcode or
+ XTENSA_UNDEFINED if the instruction is illegal. */
+extern xtensa_opcode xtensa_decode_insn (xtensa_isa, const xtensa_insnbuf);
+
+
+/* Opcode information. */
+
+/* Set the opcode field(s) in a binary instruction buffer. The operand
+ fields are set to zero. */
+extern void xtensa_encode_insn (xtensa_isa, xtensa_opcode, xtensa_insnbuf);
+
+/* Get the mnemonic name for an opcode. */
+extern const char * xtensa_opcode_name (xtensa_isa, xtensa_opcode);
+
+/* Find the length (in bytes) of an instruction. */
+extern int xtensa_insn_length (xtensa_isa, xtensa_opcode);
+
+/* Find the length of an instruction by looking only at the first byte. */
+extern int xtensa_insn_length_from_first_byte (xtensa_isa, char);
+
+/* Find the number of operands for an instruction. */
+extern int xtensa_num_operands (xtensa_isa, xtensa_opcode);
+
+/* Get the information about operand number "opnd" of a particular opcode. */
+extern xtensa_operand xtensa_get_operand (xtensa_isa, xtensa_opcode, int);
+
+/* Operand information. */
+
+/* Find the kind of operand. There are three possibilities:
+ 1) PC-relative immediates (e.g., "l", "L"). These can be identified with
+ the xtensa_operand_isPCRelative function.
+ 2) non-PC-relative immediates ("i").
+ 3) register-file short names (e.g., "a", "b", "m" and others defined
+ via TIE). */
+extern char * xtensa_operand_kind (xtensa_operand);
+
+/* Check if an operand is an input ('<'), output ('>'), or inout ('=')
+ operand. Note: The output operand of a conditional assignment
+ (e.g., movnez) appears here as an inout ('=') even if it is declared
+ in the TIE code as an output ('>'); this allows the compiler to
+ properly handle register allocation for conditional assignments. */
+extern char xtensa_operand_inout (xtensa_operand);
+
+/* Get and set the raw (encoded) value of the field for the specified
+ operand. The "set" function does not check if the value fits in the
+ field; that is done by the "encode" function below. */
+extern uint32 xtensa_operand_get_field (xtensa_operand, const xtensa_insnbuf);
+
+extern void xtensa_operand_set_field (xtensa_operand, xtensa_insnbuf, uint32);
+
+
+/* Encode and decode operands. The raw bits in the operand field
+ may be encoded in a variety of different ways. These functions hide the
+ details of that encoding. The encode function has a special return type
+ (xtensa_encode_result) to indicate success or the reason for failure; the
+ encoded value is returned through the argument pointer. The decode function
+ has no possibility of failure and returns the decoded value. */
+
+typedef enum
+{
+ xtensa_encode_result_ok,
+ xtensa_encode_result_align,
+ xtensa_encode_result_not_in_table,
+ xtensa_encode_result_too_low,
+ xtensa_encode_result_too_high,
+ xtensa_encode_result_not_ok,
+ xtensa_encode_result_max = xtensa_encode_result_not_ok
+} xtensa_encode_result;
+
+extern xtensa_encode_result xtensa_operand_encode (xtensa_operand, uint32 *);
+
+extern uint32 xtensa_operand_decode (xtensa_operand, uint32);
+
+
+/* For PC-relative offset operands, the interpretation of the offset may vary
+ between opcodes, e.g., is it relative to the current PC or that of the next
+ instruction? The following functions are defined to perform PC-relative
+ relocations and to undo them (as in the disassembler). The first function
+ takes the desired address and the PC of the current instruction and returns
+ the unencoded value to be stored in the offset field. The second function
+ takes the unencoded offset value and the current PC and returns the address.
+ Note that these functions do not replace the encode/decode functions; the
+ operands must be encoded/decoded separately. */
+
+extern int xtensa_operand_isPCRelative (xtensa_operand);
+
+extern uint32 xtensa_operand_do_reloc (xtensa_operand, uint32, uint32);
+
+extern uint32 xtensa_operand_undo_reloc (xtensa_operand, uint32, uint32);
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* XTENSA_LIBISA_H */
diff --git a/install-sh b/install-sh
index 4d4a9519e..dd97db7aa 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2005-05-14.22
+scriptversion=2004-09-10.20
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -109,7 +109,7 @@ while test -n "$1"; do
shift
continue;;
- --help) echo "$usage"; exit $?;;
+ --help) echo "$usage"; exit 0;;
-m) chmodcmd="$chmodprog $2"
shift
@@ -134,7 +134,7 @@ while test -n "$1"; do
shift
continue;;
- --version) echo "$0 $scriptversion"; exit $?;;
+ --version) echo "$0 $scriptversion"; exit 0;;
*) # When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
@@ -213,7 +213,7 @@ do
fi
# This sed command emulates the dirname command.
- dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+ dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
@@ -226,8 +226,7 @@ do
oIFS=$IFS
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
- set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
- shift
+ set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS=$oIFS
pathcomp=
@@ -296,7 +295,7 @@ do
|| $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
|| {
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
- (exit 1); exit 1
+ (exit 1); exit
}
else
:
@@ -307,12 +306,12 @@ do
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
}
}
- fi || { (exit 1); exit 1; }
+ fi || { (exit 1); exit; }
done
# The final little trick to "correctly" pass the exit status to the exit trap.
{
- (exit 0); exit 0
+ (exit 0); exit
}
# Local variables:
diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog
index 7457e3dbf..217380739 100644
--- a/libgloss/ChangeLog
+++ b/libgloss/ChangeLog
@@ -1,412 +1,3 @@
-2006-03-02 DJ Delorie <dj@redhat.com>
-
- * m32c/exit.S: Preserve r1.
-
-2006-02-24 Paul Brook <paul@codesourcery.com>
-
- * arm/redboot-crt0.S: Use cps in Thumb-2 mode.
-
-2006-02-22 Nathan Sidwell <nathan@codesourcery.com>
-
- * m68k/Makefile.in (CF_SCRIPTS): New.
- (all): Add CF_SCRIPTS.
- (m5208evb.ld, m5213evb.ld, m5235evb.ld, m5272c3.ld,
- m5282evb.ld): New targets
- (install): Iterate over CF_SCRIPTS.
- * m68k/crt0.S: Don't use dbra on any cf chips.
- * m68k/dbug-cf.sc: New.
-
-2006-02-07 Paul Brook <paul@codesourcery.com>
-
- * arm/crt0.S: Add Thumb-2 startup code.
- * arm/redboot-crt0.S: Ditto.
- * arm/libcfunc.c (do_AngelSWI): Use AngelSWIInsn.
- * arm/swi.h (AngelSWIInsn, AngelSWIAsm): Define.
- * arm/trap.S: Disable for Thumb-2.
-
-2006-01-18 Nathan Sidwell <nathan@codesourcery.com>
-
- * mt/ms2.ld (.sram): Correct typo in section names.
-
-2006-01-16 Nathan Sidwell <nathan@codesourcery.com>
-
- * mt/Makefile.in (SCRIPTS, CRT0): Add ms2 files.
- (crt0-ms2.o): New target.
- * mt/crt0-ms2.S, mt/exit-ms2.c, mt/ms2.ld, mt/startup-ms2.S: New.
-
-2006-01-04 Paul Brook <paul@codesourcery.com>
-
- * m68k/bcc.ld: Add .got.plt and .got
- * m68k/idp.ld: Ditto.
- * m68k/idpgdb: Ditto.
- * m68k/mvme135.ld: Ditto.
- * m68k/sbc5204.ld: Ditto.
- * m68k/sbc5206.ld: Ditto.
- * m68k/sim.ld: Ditto.
-
-2005-12-13 DJ Delorie <dj@redhat.com>
-
- * m32c/crt0.S: Add support for preinit, init, and fini arrays, and
- .init and .fini processing.
- * m32c/crtn.S: Likewise.
- * m32c/exit.S: Likewise.
-
-2005-12-13 Nathan Sidwell <nathan@codesourcery.com>
-
- * mt/16-002.ld: Change architecture to 'mt'. Remove
- SEARCH_DIR.
- * mt/16-003.ld: Likewise.
- * mt/64-001.ld: Likewise.
- * mt/Makefile.in: Change comment to reference 'mt' rather than 'ms1'.
- * mt/crt0.S: Likewise.
-
-2005-12-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in: Replace ms1 arch with mt arch.
- * configure: Rebuilt.
- * mt: Renamed from ms1 dir.
-
-2005-12-06 Paul Brook <paul@codesourcery.com>
-
- * m68k/bcc.ld: Add .text.*, .rodata.*, .data.* and .bss.*.
- * m68k/idp.ld: Ditto.
- * m68k/idpgdb: Ditto.
- * m68k/mvme135.ld: Ditto.
- * m68k/sbc5204.ld: Ditto.
- * m68k/sbc5206.ld: Ditto.
- * m68k/sim.ld: Ditto.
-
-2005-11-30 Shaun Jackman <sjackman@gmail.com>
-
- * libnosys/Makefile.in (OBJS): Add chown, readlink, and symlink.
- * libnosys/chown.c: New file.
- * libnosys/readlink.c: New file.
- * libnosys/symlink.c: New file.
-
-2005-11-30 Shaun Jackman <sjackman@gmail.com>
-
- * arm/libcfunc.c (clock, sleep, usleep): New functions.
- * arm/syscalls.c (_clock): New function.
- (_times): Call _clock.
-
-2005-11-17 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/arm/libcfunc.c (isatty): Call _isatty. GDB now supports
- the IsTTY SWI that _isatty calls.
-
-2005-11-17 Hans-Peter Nilsson <hp@axis.com>
-
- * cris/linunistd.h: Don't redefine errno as extern int.
-
-2005-10-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * arm/configure.in: Add AC_SUBST for BUILD_CRT0_TRUE and
- BUILD_CRT0_FALSE.
- * arm/configure: Regenerate.
-
-2005-10-17 Jeff Johnston <jjohnstn@redhat.com>
-
- * arm/configure.in: Support building crt0.o when syscalls
- are disabled in newlib.
- * arm/configure: Regenerated.
-
-2005-10-03 James E Wilson <wilson@specifix.com>
-
- * mips/array.ld, mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld,
- mips/dve.ld, mips/idt.ld, mips/idt32.ld, mips/idt64.ld,
- mips/idtecoff.ld, mips/jmr3904app-java.ld, mips/jmr3904app.ld,
- jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld, mips/nullmon.ld,
- mips/pmon.ld: Add support for .bss.* sections.
-
-2005-09-23 James E Wilson <wilson@specifix.com>
-
- * mips/array.ld, mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld,
- mips/dve.ld, mips/idt.ld, mips/idt32.ld, mips/idt64.ld,
- mips/idtecoff.ld, mips/jmr3904app-java.ld, mips/jmr3904app.ld,
- jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld, mips/nullmon.ld,
- mips/pmon.ld: Change x* to x.* in existing linkonce lines. Add
- support for .gnu.linkonce.b.*.
-
-2005-08-30 Jeff Johnston <jjohnstn@redhat.com>
-
- * rs6000/Makefile.in (VPATH): Use colon as separator.
-
-2005-08-24 Aldy Hernandez <aldyh@redhat.com>
-
- * ms1/access.c: Change copyright notice.
-
-2005-08-19 DJ Delorie <dj@redhat.com>
-
- * m32c/Makefile.in (m16cmon.ld, m32cmon.ld): Fix output names.
- (*.o): Add dependencies.
- * m32c/m32csys.h: Move syscall location to 0x400 as per Renesas
- recommendations.
-
-2005-08-18 DJ Delorie <dj@redhat.com>
-
- * m32c/Makefile.in: Block out memory regions reserved for monitors
- and simulators. Add monitor link scripts.
-
-2005-08-16 Shaun Jackman <sjackman@gmail.com>
-
- * arm/syscalls.c (initialise_monitor_handles): Set
- monitor_stderr to the result of SWI_open(":tt", "a")
- instead of simply duplicating stdout.
-
-2005-08-10 DJ Delorie <dj@redhat.com>
-
- * configure.in: Add m32c support.
- * configure: Regenerated
- * m32c: New directory, Renesas R8C/M16C/M32C support.
- * m32c/abort.S m32c/argvlen.S m32c/argv.S m32c/chdir.S,
- m32c/chmod.S m32c/close.S m32c/configure m32c/configure.in,
- m32c/crt0.S, m32c/crtn.S, m32c/exit.S, m32c/fstat.S,
- m32c/genscript, m32c/getpid.S, m32c/gettimeofday.S,
- m32c/heaptop.S, m32c/isatty.S, m32c/kill.S, m32c/link.S,
- m32c/lseek.S, m32c/m32csys.h, m32c/m32c.tmpl, m32c/Makefile.in,
- m32c/open.S, m32c/read.S, m32c/sbrk.c, m32c/stat.S, m32c/time.S,
- m32c/times.S, m32c/unlink.S, m32c/utime.S, m32c/write.S: New files
-
-2005-08-02 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/arm/libcfunc.c (isatty): New function.
-
-2005-08-02 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/arm/syscalls.c (_exit): Call _kill with the second
- argument set to -1, which is an invalid signal number.
- (_kill): Comment and coding style changes only.
- (_raise): Remove function.
-
-2005-07-19 Paul Brook <paul@codesourcery.com>
-
- * arm/crt0.S: Ensure doubleword stack alignment.
-
-2005-07-18 Richard Sandiford <richard@codesourcery.com>
-
- * mips/array.ld (.sdata): Include .gnu.linkonce.s.*, not
- .gnu.linkonce.s*.
- (.sbss): Include .sbss.* and .gnu.linkonce.sb.*.
- * mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld, mips/dve.ld,
- * mips/idt32.ld, mips/idt64.ld, mips/idtecoff.ld, mips/idt.ld,
- * mips/jmr3904app-java.ld, mips/jmr3904app.ld,
- * mips/jmr3904dram-java.ld, mips/jmr3904dram.ld,
- * mips/lsi.ld, mips/nullmon.ld, mips/pmon.ld: As for mips/array.ld.
-
-2005-07-18 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/arm/libcfunc.c (abort): Call _exit instead of the RDI swi.
- (alarm): Add the weak attribute.
- (pause): New function. Return ENOSYS.
- * libgloss/arm/syscalls.c (_getpid): Add the weak attribute.
- (_fstat): Ditto.
- (_stat): Ditto.
- (_link): Ditto. Return ENOSYS.
- (_unlink): Call the swi instead of returning -1.
- (_raise): Add the weak attribute. Return ENOSYS.
- (isatty): Rename to _isatty. Call the swi instead of returning 1.
- (_system): Call the swi instead of returning ENOSYS.
- (_rename): Ditto.
-
-2005-07-06 Aldy Hernandez <aldyh@redhat.com>
-
- * configure.in: Add ms1 case.
- * configure: Regenerate.
- * ms1/16-002.ld: New.
- * ms1/16-003.ld: New.
- * ms1/64-001.ld: New.
- * ms1/access.c: New.
- * ms1/chmod.c: New.
- * ms1/close.c: New.
- * ms1/configure: New.
- * ms1/configure.in: New.
- * ms1/crt0-16-002.S: New.
- * ms1/crt0-16-003.S: New.
- * ms1/crt0-64-001.S: New.
- * ms1/crt0.S: New.
- * ms1/exit-16-002.c: New.
- * ms1/exit-16-003.c: New.
- * ms1/exit-64-001.c: New.
- * ms1/exit.c: New.
- * ms1/fstat.c: New.
- * ms1/getpid.c: New.
- * ms1/gettime.c: New.
- * ms1/isatty.c: New.
- * ms1/kill.c: New.
- * ms1/lseek.c: New.
- * ms1/Makefile.in: New.
- * ms1/open.c: New.
- * ms1/read.c: New.
- * ms1/sbrk.c: New.
- * ms1/startup-16-002.S: New.
- * ms1/startup-16-003.S: New.
- * ms1/startup-64-001.S: New.
- * ms1/stat.c: New.
- * ms1/time.c: New.
- * ms1/times.c: New.
- * ms1/trap.h: New.
- * ms1/trap.S: New.
- * ms1/unlink.c: New.
- * ms1/utime.c: New.
- * ms1/write.c: New.
-
-2005-05-19 Corinna Vinschen <vinschen@redhat.com>
-
- * arm/elf-redboot.ld, iq2000/sim.ld, m68hc11/sim-valid-m68hc11.ld,
- * m68hc11/sim-valid-m68hc12.ld, mcore/elf-cmb.ld, mips/cfe.ld,
- * mips/ddb-kseg0.ld, mips/ddb.ld, mips/dve.ld, mips/idt.ld,
- * mips/idt32.ld, mips/idt64.ld, mips/jmr3904app-java.ld,
- * mips/jmr3904app.ld, mips/jmr3904dram-java.ld, mips/jmr3904dram.ld,
- * mips/nullmon.ld, mips/pmon.ld, mn10200/eval.ld, mn10200/sim.ld,
- * mn10300/asb2303.ld, mn10300/asb2305.ld, mn10300/eval.ld,
- * mn10300/sim.ld, rs6000/ads.ld, rs6000/mbx.ld, rs6000/yellowknife.ld,
- * sh/sh1lcevb.ld, sh/sh2lcevb.ld, sh/sh3bb.ld, sh/sh3lcevb.ld,
- * sparc/elfsim.ld, sparc/ex930.ld, sparc/ex931.ld, sparc/ex934.ld,
- * sparc/sparc86x.ld, xstormy16/eva_app.ld, xstormy16/eva_stub.ld,
- * xstormy16/sim_high.ld, xstormy16/sim_rom.ld: Add .debug_ranges
- section.
-
-2005-05-05 Tobias Anderberg <tobias.anderberg@axis.com>
-
- * arm/syscalls.c (get_errno): Fix output register constraint.
-
-2005-05-05 J"orn Rennecke <joern.rennecke@st.com>
-
- * rs6000/sim-getrusage.S: New file, broken out of:
- (simulator.S).
- * rs6000/Makefile.in (SIM_OBJS): Add sim-getrusage.o.
- (sim-getrusage.o): New rule.
-
-2005-04-28 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/syscalls.c (get_errno): Add an output register constraint.
-
-2005-04-19 Eric Christopher <echristo@redhat.com>
-
- * mips/regs.S: Sign extend constants for mips64 and unify
- address handling.
-
-2005-04-12 Shaun Jackman <sjackman@gmail.com>
-
- * libgloss/arm/Makefile.in (RDPMON_BSP): librdpmon.a was empty due
- to a typo. Fixed.
- (RDIMON_BSP): Ditto.
-
-2005-04-12 Richard Sandiford <rsandifo@redhat.com>
-
- * mips/array.ld, mips/cfe.ld, mips/dve.ld, mips/idt32.ld,
- * mips/idt64.ld, mips/idtecoff.ld, mips/idt.ld,
- * mips/jmr3904app-java.ld, mips/jmr3904app.ld,
- * mips/jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld,
- * mips/nullmon.ld, mips/pmon.ld: Keep .init and .fini.
-
-2005-02-08 Antony King <antony.king@st.com>
-
- * arm/syscalls.c: Change CHECK_INIT to pass reentrant struct
- instead of file pointer.
-
-2005-02-01 Hans-Peter Nilsson <hp@axis.com>
-
- * cris/Makefile.in (ALL_INSTALL_FILES): New macro.
- (ALL_INSTALL_FILES_NEWLIB_COPY): New macro.
- (all): Use ALL_INSTALL_FILES instead of its contents. Add
- ALL_INSTALL_FILES_NEWLIB_COPY.
- ($(objroot)/newlib/%, $(objroot)/newlib/libnosys.a): New rules
-
-2005-01-27 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.in: Support cris-*-* and crisv32-*-*.
- * libnosys/configure.in: Ditto.
- * configure, libnosys/configure: Regenerate.
- * cris: New directory.
- * cris/crt0.S, cris/crtn.c, cris/gensyscalls, cris/linunistd.h,
- cris/outbyte.c, cris/configure.in, cris/crti.c, cris/lcrt0.c,
- cris/Makefile.in, cris/setup.S, cris/configure: New files.
-
-2005-01-21 Hans-Peter Nilsson <hp@axis.com>
-
- * libnosys/warning.h (stub_warning): Remove "warning: " prefix.
-
-2005-01-18 Hans-Peter Nilsson <hp@axis.com>
-
- * libnosys/warning.h (link_warning) [HAVE_GNU_LD and HAVE_ELF]:
- Prefix symbol in section name with __SYMBOL_PREFIX. Do not use
- __make_section_unallocated. Mark magic variable as used.
-
-2005-01-18 Hans-Peter Nilsson <hp@axis.com>
-
- * libnosys/configure.in (libc_cv_asm_previous_directive): Set
- cache-id variable.
- (libc_cv_asm_popsection_directive): Ditto.
- (libc_cv_section_attributes): Ditto.
- (libc_symbol_prefix): Rename from libc_dollar_prefix. Check for
- "_" as well, and set __SYMBOL_PREFIX accordingly.
- * libnosys/configure: Regenerate.
-
-2005-01-18 Hans-Peter Nilsson <hp@axis.com>
-
- * libnosys/Makefile.in (LD, AS): Correct obsoleted suffix: Say
- as-new and ld-new, not as.new and ld.new.
-
-2005-01-14 Hans-Peter Nilsson <hp@axis.com>
-
- * libnosys/warning.h (__make_section_unallocated)
- [HAVE_ASM_PREVIOUS_DIRECTIVE, HAVE_ASM_POPSECTION_DIRECTIVE]: Use "\n"
- instead of ";" to delimit assembly lines.
-
-2005-01-07 Paul Brook <paul@codesourcery.com>
-
- * arm/crt0.S: Call __libc_{init,fini}_array instead of
- _init/_fini if they exist.
-
-2004-11-26 Paul Brook <paul@codesourcery.com>
-
- * arm/crt0.S (_start): Add .cantunwind annotation.
-
-2004-10-28 Nick Clifton <nickc@redhat.com>
-
- * configure.in: Add support for iq2000 target.
- * configure: Regenerate.
-
-2004-10-05 Tomer Levi <Tomer.Levi@nsc.com>
-
- * configure.in: Support crx-*-*.
- * configure: regenerate.
- * crx/_exit.c: New file.
- * crx/_getenv.c: Ditto.
- * crx/_rename: Ditto.
- * crx/close.c: Ditto.
- * crx/configure.in: Ditto.
- * crx/crti.S: Ditto.
- * crx/crtn.S: Ditto.
- * crx/crt0.S: Ditto.
- * crx/dvz_hndl.c: Ditto.
- * crx/flg_hndl.c: Ditto.
- * crx/fstat.c: Ditto.
- * crx/getpid.c: Ditto.
- * crx/iad_hndl.c: Ditto.
- * crx/intable.c: Ditto.
- * crx/isatty.c: Ditto.
- * crx/kill.c: Ditto.
- * crx/lseek.c: Ditto.
- * crx/Makefile.in: Ditto.
- * crx/open.c: Ditto.
- * crx/putnum.c: Ditto.
- * crx/read.c: Ditto.
- * crx/sbrk.c: Ditto.
- * crx/sim.ld: Ditto.
- * crx/stat.c: Ditto.
- * crx/svc_hndl.c: Ditto.
- * crx/time.c: Ditto.
- * crx/und_hndl.c: Ditto.
- * crx/unlink.c: Ditto.
- * crx/write.c: Ditto.
-
-2004-10-01 Paul Brook <paul@codesourcery.com>
-
- * arm/configure.in: Add *-*-aebi target.
- * arm/configure: Regenerate.
-
2004-08-25 Corinna Vinschen <vinschen@redhat.com>
* i386/cygmon.ld (.text): Fix alignment.
diff --git a/libgloss/arm/Makefile.in b/libgloss/arm/Makefile.in
index 436db13ed..828c488b1 100644
--- a/libgloss/arm/Makefile.in
+++ b/libgloss/arm/Makefile.in
@@ -116,11 +116,11 @@ rdimon-libcfunc.o: libcfunc.c
$(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) -DARM_RDI_MONITOR -o $@ -c $<
$(RDPMON_BSP): $(RDPMON_OBJS)
- ${AR} ${ARFLAGS} $@ $^
+ ${AR} ${ARFLAGS} $@ $(IDTOBJS)
${RANLIB} $@
$(RDIMON_BSP): $(RDIMON_OBJS)
- ${AR} ${ARFLAGS} $@ $^
+ ${AR} ${ARFLAGS} $@ $(IDTOBJS)
${RANLIB} $@
clean mostlyclean:
diff --git a/libgloss/arm/configure b/libgloss/arm/configure
index 47d91ec30..d788cd167 100644
--- a/libgloss/arm/configure
+++ b/libgloss/arm/configure
@@ -537,16 +537,13 @@ else
fi
if test "x$newlib_may_supply_syscalls" = "xyes"; then
- BUILD_CRT0_TRUE='#'
- BUILD_CRT0_FALSE=
-else
BUILD_CRT0_TRUE=
BUILD_CRT0_FALSE='#'
+else
+ BUILD_CRT0_TRUE='#'
+ BUILD_CRT0_FALSE=
fi
-
-
-
if test "$srcdir" = "." ; then
if test "${with_target_subdir}" != "." ; then
libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
@@ -604,7 +601,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:608: checking host system type" >&5
+echo "configure:605: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -625,7 +622,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:629: checking target system type" >&5
+echo "configure:626: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -643,7 +640,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:647: checking build system type" >&5
+echo "configure:644: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -697,7 +694,7 @@ test "$program_transform_name" = "" && program_transform_name="s,x,x,"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:701: checking for a BSD compatible install" >&5
+echo "configure:698: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -761,7 +758,7 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:765: checking for $ac_word" >&5
+echo "configure:762: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -791,7 +788,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:795: checking for $ac_word" >&5
+echo "configure:792: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -840,7 +837,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:844: checking whether we are using GNU C" >&5
+echo "configure:841: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -849,7 +846,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:853: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:850: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -864,7 +861,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:868: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:865: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -900,7 +897,7 @@ LD=${LD-ld}
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:904: checking for $ac_word" >&5
+echo "configure:901: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -929,7 +926,7 @@ fi
case "${target}" in
- *-*-elf | *-*-eabi)
+ *-*-elf)
objtype=elf-
;;
*-*-coff)
@@ -1090,8 +1087,6 @@ s%@includedir@%$includedir%g
s%@oldincludedir@%$oldincludedir%g
s%@infodir@%$infodir%g
s%@mandir@%$mandir%g
-s%@BUILD_CRT0_TRUE@%$BUILD_CRT0_TRUE%g
-s%@BUILD_CRT0_FALSE@%$BUILD_CRT0_FALSE%g
s%@host@%$host%g
s%@host_alias@%$host_alias%g
s%@host_cpu@%$host_cpu%g
diff --git a/libgloss/arm/configure.in b/libgloss/arm/configure.in
index 71595998a..c3a5de1f5 100644
--- a/libgloss/arm/configure.in
+++ b/libgloss/arm/configure.in
@@ -12,16 +12,13 @@ AC_ARG_ENABLE(newlib-supplied-syscalls,
esac], [newlib_may_supply_syscalls=yes])dnl
if test "x$newlib_may_supply_syscalls" = "xyes"; then
- BUILD_CRT0_TRUE='#'
- BUILD_CRT0_FALSE=
-else
BUILD_CRT0_TRUE=
BUILD_CRT0_FALSE='#'
+else
+ BUILD_CRT0_TRUE='#'
+ BUILD_CRT0_FALSE=
fi
-AC_SUBST(BUILD_CRT0_TRUE)
-AC_SUBST(BUILD_CRT0_FALSE)
-
if test "$srcdir" = "." ; then
if test "${with_target_subdir}" != "." ; then
libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
@@ -86,7 +83,7 @@ AC_SUBST(LD)
AC_PROG_RANLIB
case "${target}" in
- *-*-elf | *-*-eabi)
+ *-*-elf)
objtype=elf-
;;
*-*-coff)
diff --git a/libgloss/arm/crt0.S b/libgloss/arm/crt0.S
index 823f409a4..7f36b12fc 100644
--- a/libgloss/arm/crt0.S
+++ b/libgloss/arm/crt0.S
@@ -1,4 +1,3 @@
-#include "newlib.h"
#include "swi.h"
/* ANSI concatenation macros. */
@@ -11,37 +10,17 @@
#error __USER_LABEL_PREFIX is not defined
#endif
-#ifdef HAVE_INITFINI_ARRAY
-#define _init __libc_init_array
-#define _fini __libc_fini_array
-#endif
-
/* .text is used instead of .section .text so it works with arm-aout too. */
.text
-#if defined(__thumb2__)
- .syntax unified
- .thumb
-.macro FUNC_START name
- .global \name
- .thumb_func
-\name:
-.endm
-#else
.code 32
-.macro FUNC_START name
- .global \name
-\name:
-.endm
-#endif
.align 0
- FUNC_START _mainCRTStartup
- FUNC_START _start
- FUNC_START start
-#if defined(__ELF__) && !defined(__USING_SJLJ_EXCEPTIONS__)
- /* Annotation for EABI unwinding tables. */
- .fnstart
-#endif
+ .global _mainCRTStartup
+ .global _start
+ .global start
+start:
+_start:
+_mainCRTStartup:
/* Start by setting up a stack */
#ifdef ARM_RDP_MONITOR
@@ -56,12 +35,7 @@
/* Issue Angel SWI to read stack info */
mov r0, #AngelSWI_Reason_HeapInfo
adr r1, .LC0 /* point at ptr to 4 words to receive data */
-#if defined(__thumb2__)
- bkpt AngelSWI
-#else
- /* We are always in ARM mode for startup */
- AngelSWIAsm AngelSWI_ARM
-#endif
+ swi AngelSWI_ARM /* We are always in ARM mode for startup */
ldr r0, .LC0 /* point at values read */
ldr sp, [r0, #8]
ldr sl, [r0, #12]
@@ -140,8 +114,8 @@
sub a3, a3, a1 /* Third arg: length of block */
-#if defined(__thumb__) && !defined(__thumb2__)
- /* Enter Thumb mode.... */
+#ifdef __thumb__ /* Enter Thumb mode.... */
+
add a4, pc, #1 /* Get the address of the Thumb block */
bx a4 /* Go there and start Thumb decoding */
@@ -181,7 +155,7 @@ __change_mode:
#else
mov r0, #AngelSWI_Reason_GetCmdLine
adr r1, .LC30 /* Space for command line */
- AngelSWIAsm AngelSWI
+ swi AngelSWI
ldr r1, .LC30
#endif
/* Parse string at r1 */
@@ -267,11 +241,6 @@ __change_mode:
add r3, #4
b .LC15
.LC14:
- /* Ensure doubleword stack alignment. */
- mov r4, sp
- mov r5, #7
- bic r4, r5
- mov sp, r4
#else
add r2, sp, r0, LSL #2 /* End of args */
mov r3, sp /* Start of args */
@@ -281,8 +250,6 @@ __change_mode:
strhi r5, [r2, #-4]!
strhi r4, [r3], #4
bhi .LC13
- /* Ensure doubleword stack alignment. */
- bic sp, sp, #7
#endif
#endif
@@ -303,7 +270,7 @@ __change_mode:
bl FUNCTION (exit) /* Should not return. */
-#if defined(__thumb__) && !defined(__thumb2__)
+#ifdef __thumb__
/* Come out of Thumb mode. This code should be redundant. */
mov a4, pc
@@ -362,11 +329,6 @@ change_back:
#endif
#endif
-#if defined(__ELF__) && !defined(__USING_SJLJ_EXCEPTIONS__)
- /* Protect against unhandled exceptions. */
- .cantunwind
- .fnend
-#endif
.LC1:
.word __bss_start__
.LC2:
diff --git a/libgloss/arm/elf-redboot.ld b/libgloss/arm/elf-redboot.ld
index 3d1f8d806..be3865430 100644
--- a/libgloss/arm/elf-redboot.ld
+++ b/libgloss/arm/elf-redboot.ld
@@ -209,7 +209,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/arm/libcfunc.c b/libgloss/arm/libcfunc.c
index 4f131939a..ddc611f34 100644
--- a/libgloss/arm/libcfunc.c
+++ b/libgloss/arm/libcfunc.c
@@ -5,17 +5,15 @@
Note: These functions are in a seperate file so that OS providers can
overrride the system call stubs (defined in syscalls.c) without having
to provide libc funcitons as well. */
-
#include "swi.h"
-#include <errno.h>
-#include <unistd.h>
#ifdef ARM_RDI_MONITOR
+
static inline int
do_AngelSWI (int reason, void * arg)
{
int value;
- asm volatile ("mov r0, %1; mov r1, %2; " AngelSWIInsn " %a3; mov %0, r0"
+ asm volatile ("mov r0, %1; mov r1, %2; swi %a3; mov %0, r0"
: "=r" (value) /* Outputs */
: "r" (reason), "r" (arg), "i" (AngelSWI) /* Inputs */
: "r0", "r1", "lr"
@@ -24,65 +22,19 @@ do_AngelSWI (int reason, void * arg)
}
#endif /* ARM_RDI_MONITOR */
+
void
abort (void)
{
- extern void _exit (int n);
#ifdef ARM_RDI_MONITOR
do_AngelSWI (AngelSWI_Reason_ReportException,
(void *) ADP_Stopped_RunTimeError);
#else
- _exit(17);
+ asm ("mov r0,#17\nswi %a0" :: "i" (SWI_Exit));
#endif
}
-unsigned __attribute__((weak))
-alarm (unsigned seconds)
-{
- (void)seconds;
- return 0;
-}
-
-clock_t _clock(void);
-clock_t __attribute__((weak))
-clock(void)
-{
- return _clock();
-}
-
-int _isatty(int fildes);
-int __attribute__((weak))
-isatty(int fildes)
-{
- return _isatty(fildes);
-}
-
-int __attribute__((weak))
-pause(void)
-{
- errno = ENOSYS;
- return -1;
-}
-
-#include <sys/types.h>
-#include <time.h>
-
-unsigned __attribute__((weak))
-sleep(unsigned seconds)
-{
- clock_t t0 = _clock();
- clock_t dt = seconds * CLOCKS_PER_SEC;
-
- while (_clock() - t0 < dt);
- return 0;
-}
-
-int __attribute__((weak))
-usleep(useconds_t useconds)
+void
+alarm (void)
{
- clock_t t0 = _clock();
- clock_t dt = useconds / (1000000/CLOCKS_PER_SEC);
-
- while (_clock() - t0 < dt);
- return 0;
}
diff --git a/libgloss/arm/redboot-crt0.S b/libgloss/arm/redboot-crt0.S
index 2499ac091..f2963eeb4 100644
--- a/libgloss/arm/redboot-crt0.S
+++ b/libgloss/arm/redboot-crt0.S
@@ -12,34 +12,18 @@
.text
/* Setup the assembly entry point. */
-#ifdef __thumb2__
-.macro FUNC_START name
- .global \name
- .thumb_func
-\name:
-.endm
- .syntax unified
- .thumb
-#else
-.macro FUNC_START name
- .global \name
-\name:
-.endm
- .code 32
-#endif
- FUNC_START SYM_NAME(start)
- FUNC_START SYM_NAME(_start)
+ .code 32
+ .globl SYM_NAME(start)
+ .globl SYM_NAME(_start)
+SYM_NAME(start):
+SYM_NAME(_start):
mov fp, #0 /* Null frame pointer. */
mov r7, #0 /* Null frame pointer for Thumb. */
/* Enable interrupts for gdb debugging. */
-#ifdef __thumb2__
- cpsie if
-#else
mrs r0, cpsr
bic r0, r0, #0xC0
msr cpsr, r0
-#endif
mov a2, #0 /* Second arg: fill value. */
ldr a1, .LC1 /* First arg: start of memory block. */
@@ -62,7 +46,7 @@
/* Nothing to left to clear. */
#endif
-#if defined(__thumb__) && !defined(__thumb2__) /* Enter Thumb mode. */
+#ifdef __thumb__ /* Enter Thumb mode. */
add a4, pc, #1 /* Get the address of the Thumb block. */
bx a4 /* Go there and start Thumb decoding. */
diff --git a/libgloss/arm/swi.h b/libgloss/arm/swi.h
index f5c910313..15c3866a1 100644
--- a/libgloss/arm/swi.h
+++ b/libgloss/arm/swi.h
@@ -33,14 +33,6 @@
#else
#define AngelSWI AngelSWI_ARM
#endif
-/* For Thumb-2 code use the BKPT instruction instead of SWI. */
-#ifdef __thumb2__
-#define AngelSWIInsn "bkpt"
-#define AngelSWIAsm bkpt
-#else
-#define AngelSWIInsn "swi"
-#define AngelSWIAsm swi
-#endif
/* The reason codes: */
#define AngelSWI_Reason_Open 0x01
diff --git a/libgloss/arm/syscalls.c b/libgloss/arm/syscalls.c
index a6d2f747e..42e69b7b0 100644
--- a/libgloss/arm/syscalls.c
+++ b/libgloss/arm/syscalls.c
@@ -7,7 +7,6 @@
#include <sys/stat.h>
#include <sys/fcntl.h>
#include <stdio.h>
-#include <string.h>
#include <time.h>
#include <sys/time.h>
#include <sys/times.h>
@@ -19,10 +18,11 @@
/* Forward prototypes. */
int _system _PARAMS ((const char *));
int _rename _PARAMS ((const char *, const char *));
-int _isatty _PARAMS ((int));
+int isatty _PARAMS ((int));
clock_t _times _PARAMS ((struct tms *));
int _gettimeofday _PARAMS ((struct timeval *, struct timezone *));
-int _unlink _PARAMS ((const char *));
+void _raise _PARAMS ((void));
+int _unlink _PARAMS ((void));
int _link _PARAMS ((void));
int _stat _PARAMS ((const char *, struct stat *));
int _fstat _PARAMS ((int, struct stat *));
@@ -31,7 +31,6 @@ int _getpid _PARAMS ((int));
int _kill _PARAMS ((int, int));
void _exit _PARAMS ((int));
int _close _PARAMS ((int));
-clock_t _clock _PARAMS ((void));
int _swiclose _PARAMS ((int));
int _open _PARAMS ((const char *, int, ...));
int _swiopen _PARAMS ((const char *, int));
@@ -56,17 +55,20 @@ register char * stack_ptr asm ("sp");
/* following is copied from libc/stdio/local.h to check std streams */
extern void _EXFUN(__sinit,(struct _reent *));
-#define CHECK_INIT(ptr) \
- do \
- { \
- if ((ptr) && !(ptr)->__sdidinit) \
- __sinit (ptr); \
- } \
+#define CHECK_INIT(fp) \
+ do \
+ { \
+ if ((fp)->_data == 0) \
+ (fp)->_data = _REENT; \
+ if (!(fp)->_data->__sdidinit) \
+ __sinit ((fp)->_data); \
+ } \
while (0)
/* Adjust our internal handles to stay away from std* handles. */
#define FILE_HANDLE_OFFSET (0x20)
+static int std_files_checked;
static int monitor_stdin;
static int monitor_stdout;
static int monitor_stderr;
@@ -99,7 +101,7 @@ static inline int
do_AngelSWI (int reason, void * arg)
{
int value;
- asm volatile ("mov r0, %1; mov r1, %2; " AngelSWIInsn " %a3; mov %0, r0"
+ asm volatile ("mov r0, %1; mov r1, %2; swi %a3; mov %0, r0"
: "=r" (value) /* Outputs */
: "r" (reason), "r" (arg), "i" (AngelSWI) /* Inputs */
: "r0", "r1", "r2", "r3", "ip", "lr", "memory", "cc"
@@ -117,8 +119,13 @@ do_AngelSWI (int reason, void * arg)
static int
remap_handle (int fh)
{
- CHECK_INIT(_REENT);
-
+ if (!std_files_checked)
+ {
+ CHECK_INIT(stdin);
+ CHECK_INIT(stdout);
+ CHECK_INIT(stderr);
+ std_files_checked = 1;
+ }
if (fh == STDIN_FILENO)
return monitor_stdin;
if (fh == STDOUT_FILENO)
@@ -134,16 +141,6 @@ initialise_monitor_handles (void)
{
int i;
- /* Open the standard file descriptors by opening the special
- * teletype device, ":tt", read-only to obtain a descritpor for
- * standard input and write-only to obtain a descriptor for standard
- * output. Finally, open ":tt" in append mode to obtain a descriptor
- * for standard error. Since this is a write mode, most kernels will
- * probably return the same value as for standard output, but the
- * kernel can differentiate the two using the mode flag and return a
- * different descriptor for standard error.
- */
-
#ifdef ARM_RDI_MONITOR
int volatile block[3];
@@ -155,12 +152,7 @@ initialise_monitor_handles (void)
block[0] = (int) ":tt";
block[2] = 3; /* length of filename */
block[1] = 4; /* mode "w" */
- monitor_stdout = do_AngelSWI (AngelSWI_Reason_Open, (void *) block);
-
- block[0] = (int) ":tt";
- block[2] = 3; /* length of filename */
- block[1] = 8; /* mode "a" */
- monitor_stderr = do_AngelSWI (AngelSWI_Reason_Open, (void *) block);
+ monitor_stdout = monitor_stderr = do_AngelSWI (AngelSWI_Reason_Open, (void *) block);
#else
int fh;
const char * name;
@@ -177,14 +169,7 @@ initialise_monitor_handles (void)
: "=r"(fh)
: "i" (SWI_Open),"r"(name)
: "r0","r1");
- monitor_stdout = fh;
-
- name = ":tt";
- asm ("mov r0,%2; mov r1, #8; swi %a1; mov %0, r0"
- : "=r"(fh)
- : "i" (SWI_Open),"r"(name)
- : "r0","r1");
- monitor_stderr = fh;
+ monitor_stdout = monitor_stderr = fh;
#endif
for (i = 0; i < MAX_OPEN_FILES; i ++)
@@ -194,8 +179,6 @@ initialise_monitor_handles (void)
openfiles[0].pos = 0;
openfiles[1].handle = monitor_stdout;
openfiles[1].pos = 0;
- openfiles[2].handle = monitor_stderr;
- openfiles[2].pos = 0;
}
static int
@@ -204,9 +187,7 @@ get_errno (void)
#ifdef ARM_RDI_MONITOR
return do_AngelSWI (AngelSWI_Reason_Errno, NULL);
#else
- register r0 asm("r0");
- asm ("swi %a1" : "=r"(r0) : "i" (SWI_GetErrno));
- return r0;
+ asm ("swi %a0" :: "i" (SWI_GetErrno));
#endif
}
@@ -370,6 +351,8 @@ _write (int file,
return len - x;
}
+extern int strlen (const char *);
+
int
_swiopen (const char * path,
int flags)
@@ -458,31 +441,33 @@ _close (int file)
return wrap (_swiclose (file));
}
+void
+_exit (int n)
+{
+ /* FIXME: return code is thrown away. */
+
+#ifdef ARM_RDI_MONITOR
+ do_AngelSWI (AngelSWI_Reason_ReportException,
+ (void *) ADP_Stopped_ApplicationExit);
+#else
+ asm ("swi %a0" :: "i" (SWI_Exit));
+#endif
+ n = n;
+}
+
int
-_kill (int pid, int sig)
+_kill (int n, int m)
{
- (void)pid; (void)sig;
#ifdef ARM_RDI_MONITOR
- /* Note: Both arguments are thrown away. */
return do_AngelSWI (AngelSWI_Reason_ReportException,
(void *) ADP_Stopped_ApplicationExit);
#else
asm ("swi %a0" :: "i" (SWI_Exit));
#endif
+ n = n; m = m;
}
-void
-_exit (int status)
-{
- /* There is only one SWI for both _exit and _kill. For _exit, call
- the SWI with the second argument set to -1, an invalid value for
- signum, so that the SWI handler can distinguish the two calls.
- Note: The RDI implementation of _kill throws away both its
- arguments. */
- _kill(status, -1);
-}
-
-int __attribute__((weak))
+int
_getpid (int n)
{
return 1;
@@ -522,7 +507,9 @@ _sbrk (int incr)
return (caddr_t) prev_heap_end;
}
-int __attribute__((weak))
+extern void memset (struct stat *, int, unsigned int);
+
+int
_fstat (int file, struct stat * st)
{
memset (st, 0, sizeof (* st));
@@ -532,8 +519,7 @@ _fstat (int file, struct stat * st)
file = file;
}
-int __attribute__((weak))
-_stat (const char *fname, struct stat *st)
+int _stat (const char *fname, struct stat *st)
{
int file;
@@ -549,22 +535,22 @@ _stat (const char *fname, struct stat *st)
return 0;
}
-int __attribute__((weak))
+int
_link (void)
{
- errno = ENOSYS;
return -1;
}
int
-_unlink (const char *path)
+_unlink (void)
{
-#ifdef ARM_RDI_MONITOR
- return do_AngelSWI (AngelSWI_Reason_Remove, &path);
-#else
- (void)path;
- asm ("swi %a0" :: "i" (SWI_Remove));
-#endif
+ return -1;
+}
+
+void
+_raise (void)
+{
+ return;
}
int
@@ -598,7 +584,7 @@ _gettimeofday (struct timeval * tp, struct timezone * tzp)
/* Return a clock that ticks at 100Hz. */
clock_t
-_clock (void)
+_times (struct tms * tp)
{
clock_t timeval;
@@ -607,14 +593,6 @@ _clock (void)
#else
asm ("swi %a1; mov %0, r0" : "=r" (timeval): "i" (SWI_Clock) : "r0");
#endif
- return timeval;
-}
-
-/* Return a clock that ticks at 100Hz. */
-clock_t
-_times (struct tms * tp)
-{
- clock_t timeval = _clock();
if (tp)
{
@@ -629,35 +607,24 @@ _times (struct tms * tp)
int
-_isatty (int fd)
+isatty (int fd)
{
-#ifdef ARM_RDI_MONITOR
- return do_AngelSWI (AngelSWI_Reason_IsTTY, &fd);
-#else
- (void)fd;
- asm ("swi %a0" :: "i" (SWI_IsTTY));
-#endif
+ return 1;
+ fd = fd;
}
int
_system (const char *s)
{
-#ifdef ARM_RDI_MONITOR
- return do_AngelSWI (AngelSWI_Reason_System, &s);
-#else
- (void)s;
- asm ("swi %a0" :: "i" (SWI_CLI));
-#endif
+ if (s == NULL)
+ return 0;
+ errno = ENOSYS;
+ return -1;
}
int
_rename (const char * oldpath, const char * newpath)
{
-#ifdef ARM_RDI_MONITOR
- const char *block[2] = {oldpath, newpath};
- return do_AngelSWI (AngelSWI_Reason_Rename, block);
-#else
- (void)oldpath; (void)newpath;
- asm ("swi %a0" :: "i" (SWI_Rename));
-#endif
+ errno = ENOSYS;
+ return -1;
}
diff --git a/libgloss/arm/trap.S b/libgloss/arm/trap.S
index 21b6937f9..328fabca5 100644
--- a/libgloss/arm/trap.S
+++ b/libgloss/arm/trap.S
@@ -1,5 +1,4 @@
/* Run-time exception support */
-#if !defined(__thumb2__)
#include "swi.h"
/* .text is used instead of .section .text so it works with arm-aout too. */
@@ -92,4 +91,3 @@ __rt_stkovf_split_big:
@ We now know how much extra stack the function requires.
@ Terminate the program for the moment:
swi SWI_Exit
-#endif
diff --git a/libgloss/configure b/libgloss/configure
index 1b2f62305..4c6a01528 100755
--- a/libgloss/configure
+++ b/libgloss/configure
@@ -774,12 +774,6 @@ case "${target}" in
mn10300-*-*)
configdirs="${configdirs} mn10300 testsuite"
;;
- cris-*-* | crisv32-*-*)
- configdirs="${configdirs} cris testsuite"
- ;;
- crx-*-*)
- configdirs="${configdirs} crx"
- ;;
d30v-*-*)
configdirs="${configdirs} d30v testsuite"
;;
@@ -792,14 +786,9 @@ case "${target}" in
mcore-*-*)
configdirs="${configdirs} mcore testsuite"
;;
- mt-*-*)
- configdirs="${configdirs} mt testsuite";;
xstormy16-*-*)
configdirs="${configdirs} xstormy16 testsuite"
;;
- m32c-*-*)
- configdirs="${configdirs} m32c testsuite"
- ;;
strongarm-*-elf | strongarm-*-coff)
configdirs="${configdirs} arm testsuite";
;;
@@ -812,8 +801,6 @@ case "${target}" in
xscale-*-elf | xscale-*-coff)
configdirs="${configdirs} arm testsuite";
;;
- iq2000-*-*)
- configdirs="${configdirs} iq2000 testsuite";;
esac
@@ -834,7 +821,7 @@ subdirs="$configdirs"
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:838: checking for $ac_word" >&5
+echo "configure:825: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -864,7 +851,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:868: checking for $ac_word" >&5
+echo "configure:855: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -913,7 +900,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:917: checking whether we are using GNU C" >&5
+echo "configure:904: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -922,7 +909,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:926: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:913: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -937,7 +924,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:941: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:928: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -969,7 +956,7 @@ AS=${AS-as}
# Extract the first word of "ar", so it can be a program name with args.
set dummy ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:973: checking for $ac_word" >&5
+echo "configure:960: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1003,7 +990,7 @@ LD=${LD-ld}
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1007: checking for $ac_word" >&5
+echo "configure:994: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/libgloss/configure.in b/libgloss/configure.in
index 3eca088ec..55e417b61 100644
--- a/libgloss/configure.in
+++ b/libgloss/configure.in
@@ -85,12 +85,6 @@ case "${target}" in
mn10300-*-*)
configdirs="${configdirs} mn10300 testsuite"
;;
- cris-*-* | crisv32-*-*)
- configdirs="${configdirs} cris testsuite"
- ;;
- crx-*-*)
- configdirs="${configdirs} crx"
- ;;
d30v-*-*)
configdirs="${configdirs} d30v testsuite"
;;
@@ -103,14 +97,9 @@ case "${target}" in
mcore-*-*)
configdirs="${configdirs} mcore testsuite"
;;
- mt-*-*)
- configdirs="${configdirs} mt testsuite";;
xstormy16-*-*)
configdirs="${configdirs} xstormy16 testsuite"
;;
- m32c-*-*)
- configdirs="${configdirs} m32c testsuite"
- ;;
strongarm-*-elf | strongarm-*-coff)
configdirs="${configdirs} arm testsuite";
;;
@@ -123,8 +112,6 @@ case "${target}" in
xscale-*-elf | xscale-*-coff)
configdirs="${configdirs} arm testsuite";
;;
- iq2000-*-*)
- configdirs="${configdirs} iq2000 testsuite";;
esac
diff --git a/libgloss/cris/Makefile.in b/libgloss/cris/Makefile.in
deleted file mode 100644
index ca3ec3804..000000000
--- a/libgloss/cris/Makefile.in
+++ /dev/null
@@ -1,277 +0,0 @@
-#
-# libgloss Makefile.in for CRIS. Copied and modified from mcore long ago.
-#
-
-DESTDIR =
-VPATH = @srcdir@
-srcdir = @srcdir@
-objdir = .
-srcroot = $(srcdir)/../..
-objroot = $(objdir)/../..
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-host_alias = @host_alias@
-target_alias = @target_alias@
-
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(exec_prefix)/$(target_alias)
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-
-SHELL = /bin/sh
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-
-OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
- then echo ${objroot}/../binutils/objdump ; \
- else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
-OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
- then echo ${objroot}/../binutils/objcopy ; \
- else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
-
-CFLAGS = -g
-SCRIPTS =
-
-OBJS = outbyte.o
-
-# Beware: GNU make construct used (shell call). Since GCC at the time
-# of this writing requires GNU make >= 3.79.1, this should pose no
-# problem.
-SYSCALL_CFILES := $(shell sed -ne 's/^cat > \([^ ]*\).*/\1/p' < $(srcdir)/gensyscalls)
-
-# Here is all of the simulator stuff.
-# Actually, now it's just the GNU/Linux stuff, as that's also the
-# simulator ABI. The name of the library is different, though.
-SIM_SCRIPTS =
-SIM_LDFLAGS =
-SIM_BSP = libsyssim.a
-SIM_CRT0 = $(LIN_CRT0)
-SIM_OBJS = $(LIN_OBJS)
-SIM_TEST = sim-test
-SIM_INSTALL = install-sim
-
-# Here is all of the GNU/Linux stuff. At present we don't build newlib
-# and libgloss for cris*-linux-gnu*, but it's nice to keep that as an
-# option.
-LIN_PREFIX =
-LIN_LDFLAGS =
-LIN_BSP = libsyslinux.a
-LIN_CRT0 = lcrt0.o
-LIN_EXTRA = crti.o crtn.o crt1.o
-LIN_OBJS = close.o execve.o exit.o fcntl.o fork.o fstat.o getpid.o \
- gettod.o isatty.o kill.o link.o lseek.o open.o read.o \
- rename.o sbrk.o stat.o times.o unlink.o wait.o write.o ${OBJS}
-LIN_SCRIPTS =
-LIN_TEST =
-LIN_INSTALL = install-lin
-
-# In (over)due time, here will be all stuff necessary for a development
-# board.
-BSP_PREFIX =
-BSP_LDFLAGS =
-BSP_BSP = libbsp.a
-BSP_CRT0 = crt0.o
-BSP_OBJS = ${OBJS} setup.o
-BSP_SCRIPTS =
-BSP_TEST =
-BSP_INSTALL = install-bsp
-
-ALL_INSTALL_FILES = \
- ${SIM_CRT0} ${SIM_EXTRA} ${SIM_BSP} \
- ${LIN_CRT0} ${LIN_EXTRA} ${LIN_BSP} \
- ${BSP_CRT0} ${BSP_EXTRA} ${BSP_BSP}
-
-ALL_INSTALL_FILES_NEWLIB_COPY = \
- $(sort ${ALL_INSTALL_FILES:%=$(objroot)/newlib/%}) $(objroot)/newlib/libnosys.a
-
-# Host specific makefile fragment comes in here.
-@host_makefile_frag@
-
-# Need to augment the definition from host_makefile_frag above.
-INCLUDES += -I$(srcdir)
-
-all: ${ALL_INSTALL_FILES} ${ALL_INSTALL_FILES_NEWLIB_COPY} libnosys.a
-
-#
-# Here's where we build the board support packages for each target.
-#
-${SIM_BSP}: ${SIM_OBJS}
- ${AR} ${ARFLAGS} ${SIM_BSP} ${SIM_OBJS}
- ${RANLIB} ${SIM_BSP}
-
-${BSP_BSP}: ${BSP_OBJS}
- ${AR} ${ARFLAGS} ${BSP_BSP} ${BSP_OBJS}
- ${RANLIB} ${BSP_BSP}
-
-${LIN_BSP}: ${LIN_OBJS}
- ${AR} ${ARFLAGS} ${LIN_BSP} ${LIN_OBJS}
- ${RANLIB} ${LIN_BSP}
-
-# We need a link to libnosys.a in this directory, since this is the
-# directory used when test-compiling for configuration for other parts and
-# when running the testsuite. By using a symbolic link, it does not
-# matter whether libnosys.a is built yet when the rule is executed.
-libnosys.a:
- ln -s ../libnosys/libnosys.a
-
-# Toplevel build rules for various other libraries have gcc -B options
-# applied so the newlib build directory is reached, but not the target
-# libgloss directory (whose name is unknown to the toplevel configury
-# anyway). Configury tests that check for a successful link therefore
-# fail; they can't find crt0.o and non-libc.a+libm.a libraries. We copy
-# over all files we would install to the neighboring newlib directory.
-# Only the default crt0.o and libraries are needed, but we do them all for
-# completeness. They're however installed from here, not from the newlib
-# build directory.
-$(objroot)/newlib/%: %
- cp -p $^ $@
-
-# This rule, being more specific, overrides the pattern rule above.
-$(objroot)/newlib/libnosys.a:
- ln -s ../libgloss/libnosys/libnosys.a $(objroot)/newlib
-
-#
-# Build a test program for each target board. Just trying to get
-# it to link is a good test, so we ignore all the errors for now.
-#
-#
-# Here's where we build the test programs for each target.
-#
-.PHONY: test
-test: ${SIM_TEST} ${BSP_TEST}
-
-sim-test: sim-test.x sim-test.dis
-
-sim-test.x: test.o ${SIM_CRT0} ${SIM_BSP}
- ${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
- ${SIM_CRT0} test.o \
- -o sim-test.x ${LIBS_FOR_TARGET} -lc ${SIM_BSP}
-
-sim-test.dis: sim-test.x
- ${OBJDUMP} -d sim-test.x > sim-test.dis
-
-
-test.o: ${srcdir}/m68k/test.c
-
-# Debug usage.
-.c.S:
- ${CC} ${CFLAGS_FOR_TARGET} $(INCLUDES) $(CFLAGS) -c $<
-
-# Caveat: for the -melinux multilib in cris-axis-aout, crt0.o is the
-# same as lcrt0.o, while elsewhere (other cris-axis-aout multilib and
-# cris-axis-elf) it's crt0.c compiled.
-crt0.o: lcrt0.o crt0.S
- case "${MULTISUBDIR}" in \
- */elinux) \
- cp -p $< $@; st=$$?;; \
- *) \
- case "$?" in \
- *crt0.S) \
- $(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) -xassembler-with-cpp -c $(srcdir)/crt0.S;; \
- *) touch $@;; \
- esac; \
- st=$$?;; \
- esac; exit $$st
-
-crt1.o: lcrt0.o
- cp -p $< $@
-
-clean mostlyclean:
- rm -f a.out core *.i *.o *-test *.srec *.dis *.x $(SIM_BSP) $(BSP_BSP) $(LIN_BSP) libnosys.a
-
-distclean maintainer-clean realclean: clean
- rm -f Makefile config.status *~
-
-.PHONY: install info install-info clean-info
-install: ${SIM_INSTALL} ${BSP_INSTALL} ${LIN_INSTALL}
-
-# Note that bsp and elinux objects are exclusive: do not overlap
-# installed files.
-install-bsp:
- case "${MULTISUBDIR}" in \
- */elinux) ;; \
- *) set -e; \
- for x in ${BSP_CRT0} ${BSP_BSP} ${BSP_SCRIPTS}; do \
- ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done;; \
- esac
-
-install-sim:
- set -e; \
- for x in ${SIM_CRT0} ${SIM_BSP} ${SIM_SCRIPTS}; do \
- ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done
-
-install-lin:
- case "${MULTISUBDIR}" in \
- */elinux) \
- ${INSTALL_DATA} ${LIN_CRT0} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/crt0.o; \
- set -e; \
- for x in ${LIN_BSP} ${LIN_SCRIPTS}; do \
- ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done;; \
- *) \
- set -e; \
- for x in ${LIN_BSP} ${LIN_SCRIPTS} ${LIN_EXTRA}; do \
- ${INSTALL_DATA} $$x ${tooldir}/lib${MULTISUBDIR}/$$x; \
- done;; \
- esac
-
-doc:
-info:
-install-info:
-clean-info:
-
-Makefile: Makefile.in config.status @host_makefile_frag_path@
- $(SHELL) config.status
-
-config.status: configure
- $(SHELL) config.status --recheck
-
-$(SYSCALL_CFILES): syscalls.stamp
-
-syscalls.stamp: gensyscalls
- $(SHELL) $(srcdir)/gensyscalls
- touch $@
-
-# Dependencies that could and should be auto-generated.
-close.o: close.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-execve.o: execve.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-exit.o: exit.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-fork.o: fork.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-fstat.o: fstat.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-fcntl.o: fcntl.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-getpid.o: getpid.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-gettod.o: gettod.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-isatty.o: isatty.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-kill.o: kill.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-link.o: link.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-lseek.o: lseek.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-open.o: open.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-read.o: read.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-rename.o: rename.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-sbrk.o: sbrk.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-stat.o: stat.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-times.o: times.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-unlink.o: unlink.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-wait.o: wait.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-write.o: write.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-lcrt0.o: lcrt0.c linunistd.h $(objdir)/../libnosys/config.h $(srcdir)/../libnosys/warning.h
-setup.o: setup.S
-crti.o: crti.c
-crtn.o: crtn.c
diff --git a/libgloss/cris/configure b/libgloss/cris/configure
deleted file mode 100755
index edda80296..000000000
--- a/libgloss/cris/configure
+++ /dev/null
@@ -1,1203 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=Makefile.in
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-ac_aux_dir=
-for ac_dir in $libgloss_topdir $srcdir/$libgloss_topdir; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $libgloss_topdir $srcdir/$libgloss_topdir" 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:587: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:608: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:626: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:680: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:744: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:774: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:823: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:832: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:847: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-AS=${AS-as}
-
-AR=${AR-ar}
-
-LD=${LD-ld}
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:883: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-host_makefile_frag_path=$host_makefile_frag
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@LD@%$LD%g
-s%@RANLIB@%$RANLIB%g
-s%@host_makefile_frag_path@%$host_makefile_frag_path%g
-/@host_makefile_frag@/r $host_makefile_frag
-s%@host_makefile_frag@%%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-. ${libgloss_topdir}/config-ml.in
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/libgloss/cris/configure.in b/libgloss/cris/configure.in
deleted file mode 100644
index 9ac0d4589..000000000
--- a/libgloss/cris/configure.in
+++ /dev/null
@@ -1,90 +0,0 @@
-dnl This file is based on ../mcore/configure.in
-dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.5)dnl
-AC_INIT(Makefile.in)
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-AC_CONFIG_AUX_DIR($libgloss_topdir)
-
-AC_CANONICAL_SYSTEM
-AC_ARG_PROGRAM
-
-AC_PROG_INSTALL
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-AS=${AS-as}
-AC_SUBST(AS)
-AR=${AR-ar}
-AC_SUBST(AR)
-LD=${LD-ld}
-AC_SUBST(LD)
-AC_PROG_RANLIB
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-dnl We have to assign the same value to other variables because autoconf
-dnl doesn't provide a mechanism to substitute a replacement keyword with
-dnl arbitrary data or pathnames.
-dnl
-host_makefile_frag_path=$host_makefile_frag
-AC_SUBST(host_makefile_frag_path)
-AC_SUBST_FILE(host_makefile_frag)
-
-AC_OUTPUT(Makefile,
-. ${libgloss_topdir}/config-ml.in,
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-)
diff --git a/libgloss/cris/crt0.S b/libgloss/cris/crt0.S
deleted file mode 100644
index a48efceb2..000000000
--- a/libgloss/cris/crt0.S
+++ /dev/null
@@ -1,83 +0,0 @@
-/* Generic simplistic start-up-stub for CRIS/CRISv32.
- Copyright (C) 1993-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-#undef cris
-#undef L
-#ifdef __NO_UNDERSCORES__
-#define L(x) x
-#else
-#define L(x) _ ## x
-#endif
-
-; Rudimentary v0..v32-compatible startup stub.
-
-#ifdef __ELF__
- .section .startup,"ax"
-#endif
- .global __start
- nop
-__start:
- ba 0f
- nop
-
- .rept 256 - 2
- .dword _.int
- .endr
-
-_.int:
-#ifdef __arch_common_v10_v32
- ; This is just to allow the multilib to compile without
- ; hackery: the "common" subset doesn't recognize
- ; interrupt-return insns.
-#elif __CRIS_arch_version >= 32
- rete
- rfe
-#else
- reti
- nop
-#endif
-
-0:
- move.d __setup,$r9
- jsr $r9
- nop
-#ifdef __ELF__
- jsr L(_init)
- nop
- move.d L(_fini),$r10
- jsr L(atexit)
- nop
-#endif
- jsr L(main)
- nop
- jsr L(exit)
- nop
-0:
- nop
- ba 0b
- nop
diff --git a/libgloss/cris/crti.c b/libgloss/cris/crti.c
deleted file mode 100644
index ceb71e545..000000000
--- a/libgloss/cris/crti.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Executable and DSO init/fini start for cris*-axis-linux-gnu and simulators
- Copyright (C) 2000, 2001, 2004, 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-#ifdef __ELF__
-__asm__ (".syntax no_register_prefix");
-
-__asm__ (".section .init\n"
-#ifdef __NO_UNDERSCORES__
- " .globl _init\n"
- "_init:\n"
-#else /* not __NO_UNDERSCORES__ */
- " .globl __init\n"
- "__init:\n"
-#endif /* not __NO_UNDERSCORES__ */
- "\tsubq 4,sp\n"
- "\tmove srp,[sp]\n"
-#ifdef __PIC__
- "\tsubq 4,sp\n"
- "\tmove.d r0,[sp]\n"
-#if __CRIS_arch_version >= 32
- "\tlapc _GLOBAL_OFFSET_TABLE_,$r0\n"
-#else /* not __CRIS_arch_version >= 32 */
- "\tmove.d $pc,$r0\n"
- "\tsub.d .:GOTOFF,$r0\n"
-#endif /* not __CRIS_arch_version >= 32 */
-#endif /* __PIC__ */
-
- "\t.section .fini\n"
-#ifdef __NO_UNDERSCORES__
- " .globl _fini\n"
- "_fini:\n"
-#else /* not __NO_UNDERSCORES__ */
- " .globl __fini\n"
- "__fini:\n"
-#endif /* not __NO_UNDERSCORES__ */
- "\tsubq 4,sp\n"
- "\tmove srp,[sp]\n"
-#ifdef __PIC__
- "\tsubq 4,sp\n"
- "\tmove.d r0,[sp]\n"
-#if __CRIS_arch_version >= 32
- "\tlapc _GLOBAL_OFFSET_TABLE_,$r0\n"
-#else /* not __CRIS_arch_version >= 32 */
- "\tmove.d $pc,$r0\n"
- "\tsub.d .:GOTOFF,$r0\n"
-#endif /* not __CRIS_arch_version >= 32 */
-#endif /* __PIC__ */
-);
-
-#else /* not __ELF__ */
-extern int Dummy;
-#endif /* not __ELF__ */
diff --git a/libgloss/cris/crtn.c b/libgloss/cris/crtn.c
deleted file mode 100644
index 012e5b1e4..000000000
--- a/libgloss/cris/crtn.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Executable and DSO init/fini end for cris*-axis-linux-gnu and simulators
- Copyright (C) 2000, 2001, 2004, 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-#ifdef __ELF__
-
-__asm__ (".syntax no_register_prefix");
-
-__asm__ (".section .init\n"
-#ifdef __PIC__
- "\tmove.d [sp+],r0\n"
-#endif
- "\tmove.d [sp+],r9\n"
- "\tjump r9\n"
- "\tnop\n"
-
- "\t.section .fini\n"
-#ifdef __PIC__
- "\tmove.d [sp+],r0\n"
-#endif
- "\tmove.d [sp+],r9\n"
- "\tjump r9\n"
- "\tnop\n");
-
-#else
-extern int Dummy;
-#endif
diff --git a/libgloss/cris/gensyscalls b/libgloss/cris/gensyscalls
deleted file mode 100644
index 9df8b0376..000000000
--- a/libgloss/cris/gensyscalls
+++ /dev/null
@@ -1,252 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2005 Axis Communications.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# 2. Neither the name of Axis Communications nor the names of its
-# contributors may be used to endorse or promote products derived
-# from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
-# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
-# COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
-# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
-# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-
-# To avoid an abundance of copyright/license messages for boilerplate
-# code, we instead generate them from this file. Generating the
-# function code could also be done automatically, but at the cost of
-# slightly more intricate build machinery and/or scattered syscall
-# information. Beware that the cat-lines must match the sed regexp
-# "^cat > \([^ ]*\).*".
-
-lu='/* -*- buffer-read-only: t -*-
- THIS FILE IS AUTOMATICALLY GENERATED
- FROM "'$0'". */
-#include "linunistd.h"
-#define R(x) return (x); }
-'
-lui="$lu int"
-r=") { R (_Sys_"
-
-cat > close.c <<EOF
-$lui _close (int fd${r}close (fd))
-EOF
-cat > execve.c <<EOF
-$lui _execve (char *path, char **argv, char **env${r}execve (path, argv, env))
-EOF
-cat > exit.c <<EOF
-$lu void _exit (int val) { _Sys_exit (val); /* Appease GCC: */ while (1) ; }
-EOF
-cat > fcntl.c <<EOF
-$lui _fcntl (int fd, int cmd, long arg${r}fcntl (fd, cmd, arg))
-EOF
-cat > fork.c <<EOF
-$lui _fork (void${r}fork ())
-EOF
-cat > fstat.c <<EOF
-$lu#include <string.h>
-#include <sys/stat.h>
-int
-_fstat (int fd, struct stat *buf)
-{
- struct new_stat ks;
- int retval = _Sys_fstat (fd, &ks);
-
- /* Blank before filling it in. */
- memset (buf, 0, sizeof (*buf));
-
- /* We have to translate from the linux struct new_stat.
- It seems we don't have to translate the contents, though. */
- buf->st_dev = ks.st_dev;
- buf->st_ino = ks.st_ino;
- buf->st_mode = ks.st_mode;
- buf->st_nlink = ks.st_nlink;
- buf->st_uid = ks.st_uid;
- buf->st_gid = ks.st_gid;
- buf->st_rdev = ks.st_rdev;
- buf->st_size = ks.st_size;
- buf->st_blksize = ks.st_blksize;
- buf->st_blocks = ks.st_blocks;
- buf->st_atime = ks.st_atime;
- buf->st_mtime = ks.st_mtime;
- buf->st_ctime = ks.st_ctime;
- R (retval)
-EOF
-cat > getpid.c <<EOF
-$lui _getpid (void${r}getpid ())
-EOF
-cat > gettod.c <<EOF
-$lu#include <sys/time.h>
-#include <sys/times.h>
-int
-_gettimeofday (struct timeval *tp, struct timezone *tzp
-${r}gettimeofday (tp, tzp))
-EOF
-cat > isatty.c <<EOF
-$lu
-typedef unsigned int tcflag_t;
-typedef unsigned char cc_t;
-#define NCCS 19
-
-struct termios {
- tcflag_t c_iflag; /* input mode flags */
- tcflag_t c_oflag; /* output mode flags */
- tcflag_t c_cflag; /* control mode flags */
- tcflag_t c_lflag; /* local mode flags */
- cc_t c_line; /* line discipline */
- cc_t c_cc[NCCS]; /* control characters */
-};
-
-/* From asm-etrax100/ioctls.h: beware of updates. */
-#define TCGETS 0x5401
-
-/* Note that this name does not have a prepended underscore. */
-int
-isatty (int fd)
-{
- struct termios dummy;
- int save_errno = errno;
- int ret = _Sys_ioctl (fd, TCGETS, (unsigned long) &dummy);
- errno = save_errno;
- R (ret == 0)
-EOF
-cat > kill.c <<EOF
-$lui _kill (int pid, int sig${r}kill (pid, sig))
-EOF
-cat > link.c <<EOF
-$lui _link (const char *old, const char *new${r}link (old, new))
-EOF
-cat > lseek.c <<EOF
-$lui _lseek (int fd, int offset, int whence${r}lseek (fd, offset, whence))
-EOF
-cat > open.c <<EOF
-$lui _open (const char *fnam, int flags, int mode${r}open (fnam, flags, mode))
-EOF
-cat > read.c <<EOF
-$lui _read (int fd, char *buf, int nbytes${r}read (fd, buf, nbytes))
-EOF
-cat > rename.c <<EOF
-$lui _rename (const char *old, const char *new${r}rename (old, new))
-EOF
-cat > sbrk.c <<EOF
-$lu
-/* From asm-etrax100/mman.h: beware of updates. */
-#define PROT_READ 0x1 /* page can be read */
-#define PROT_WRITE 0x2 /* page can be written */
-#define MAP_ANONYMOUS 0x20 /* don't use a file */
-char *
-_sbrk (int d)
-{
- static long last_alloc = 0;
-
- /* FIXME: Things are a whole lot different than elinux. */
-#ifdef __elinux__
-
- /* We can't promise linear memory from a predetermined location.
- We're NO_MM. We're paria. We have to rely on tweaks and unclean
- behavior. We abuse the fact that the malloc function in newlib
- accepts nonlinear chunks in return to its sbrk calls (with a minor
- patch). */
-
- /* We use an "old" type mmap, which takes a pointer to a vector of 6
- longs where the parameters are stored. */
- long buffer[6];
-
- /* We can't return memory. Well we could, but we would have to keep a
- list of previous allocations. FIXME: Seems reasonable to do that
- later. */
- if (d < 0)
- return (char *) last_alloc;
-
- buffer[3] = MAP_ANONYMOUS; /* Not associated with a file. */
- buffer[4] = -1; /* No file. */
- buffer[0] = 0; /* Address 0: let mmap pick one. */
- buffer[1] = d; /* Length. */
- buffer[2] = (PROT_READ | PROT_WRITE); /* Protection flags. */
- buffer[5] = 0; /* Offset into file. */
-
- last_alloc = _Sys_mmap (buffer);
-
- return (char *) last_alloc;
-
-#else /* not __elinux__ */
-
- long prev_brk;
-
- if (last_alloc == 0)
- {
- last_alloc = _Sys_brk (0);
-
- if (last_alloc < 0)
- return (char *) -1;
- }
-
- prev_brk = last_alloc;
-
- if (_Sys_brk (last_alloc + d) < last_alloc + d)
- return (char *) -1;
-
- last_alloc += d;
-
- return (char *) prev_brk;
-#endif
-}
-EOF
-cat > stat.c <<EOF
-$lu#include <string.h>
-#include <sys/stat.h>
-int
-_stat (const char *path, struct stat *buf)
-{
- struct new_stat ks;
- int retval = _Sys_stat (path, &ks);
-
- /* Blank before filling it in. */
- memset (buf, 0, sizeof (*buf));
-
- /* We have to translate from the linux struct new_stat.
- It seems we don't have to translate the contents, though. */
- buf->st_dev = ks.st_dev;
- buf->st_ino = ks.st_ino;
- buf->st_mode = ks.st_mode;
- buf->st_nlink = ks.st_nlink;
- buf->st_uid = ks.st_uid;
- buf->st_gid = ks.st_gid;
- buf->st_rdev = ks.st_rdev;
- buf->st_size = ks.st_size;
- buf->st_blksize = ks.st_blksize;
- buf->st_blocks = ks.st_blocks;
- buf->st_atime = ks.st_atime;
- buf->st_mtime = ks.st_mtime;
- buf->st_ctime = ks.st_ctime;
- R (retval)
-EOF
-cat > times.c <<EOF
-$lu#include <sys/times.h>
-clock_t
-_times (struct tms * tp${r}times (tp))
-EOF
-cat > unlink.c <<EOF
-$lui _unlink (const char *f${r}unlink (f))
-EOF
-cat > wait.c <<EOF
-$lui _wait (int *status${r}wait4 (_getpid(), status, 0, 0))
-EOF
-cat > write.c <<EOF
-$lui _write (int fd, char *buf, int nbytes${r}write (fd, buf, nbytes))
-EOF
-exit 0
diff --git a/libgloss/cris/lcrt0.c b/libgloss/cris/lcrt0.c
deleted file mode 100644
index ee5074634..000000000
--- a/libgloss/cris/lcrt0.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/* Support for cris*-axis-linux-gnu and src/sim/cris simulator.
- Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-#include "linunistd.h"
-
-extern void exit (int) __attribute ((__noreturn__));
-
-__asm__ (".syntax no_register_prefix");
-
-#ifdef __ELF__
-/* This simulator magic for an earlier simulator was supposed to be
- found two bytes before _start. Let's keep it for sake of
- compatibility. Trying to emit them with an ordinary const char[]
- and attribute section makes gcc barf; it doesn't like having the
- same section attribute for both code and data.
- The code is supposed to cause a crash if someone jumps to 0. */
-__asm__
- (
- " .section .startup,\"ax\",@progbits\n"
- " .byte 55,55\n"
- " move.d 0xbadacce5,r9\n"
- " clear.d [r9]\n"
- " setf\n"
- " setf\n"
- " .previous");
-#endif
-
-__asm__
- (
-#ifdef __AOUT__
- " .text\n\t"
-#elif defined (__ELF__)
- " .section .startup,\"ax\",@progbits\n"
-#endif
- " .global __start\n"
- "__start:\n"
- /* SP must be set up by the simulator or the system. */
-
- /* Find ARGC, ARGV and ENV. */
- /* ARGC. */
- " move.d [sp],r10\n"
-
- /* ARGV. */
- " move.d sp,r11\n"
- " addq 4,r11\n"
-
- /* ENVP. */
- " move.d sp,r12\n"
- " addi r10.d,r12\n"
- " addq 8,r12\n"
-
- /* Terminate R9 and R6; we don't have a "console_print_etrax" or system
- call function. */
- " clear.d r9\n"
- " clear.d r6\n"
- " move.d __start1,r13\n"
- " jump r13\n"
- " setf\n"
-#ifndef __AOUT__
- /* We rely on a.out not being in .data here. Quite fragile, but
- covered by e.g. running the GCC test-suite for cris-unknown-aout. */
- " .previous"
-#endif
- );
-
-extern void _Libctors (void);
-extern void _Libdtors (void);
-
-extern void __init__start (void) __attribute ((weak));
-extern void __aout__ctors (void) __attribute ((weak));
-
-static void start1 () __asm__ ("__start1") __attribute ((__used__));
-static void
-start1 (int argc, char **argv, char **env)
-{
-#ifdef __ELF__
- /* For ELF systems, we call _init and register _fini with atexit. */
- {
- extern void _init (void);
- extern void _fini (void);
- _init ();
- if (atexit (_fini) != 0)
- exit (-1);
- }
-#else
- /* Constructors which may get here through the ELF .init section, when
- linking ELF and producing a.out. */
- if (__init__start)
- __init__start ();
-
- if (__aout__ctors)
- __aout__ctors ();
-
- /* Call constructors in shared libraries. */
- _Libctors ();
-
- if (atexit (_Libdtors) != 0)
- exit (-1);
-#endif
-
- /* Call the user program. */
- exit (main (argc, argv, env));
-}
diff --git a/libgloss/cris/linunistd.h b/libgloss/cris/linunistd.h
deleted file mode 100644
index 039679d4d..000000000
--- a/libgloss/cris/linunistd.h
+++ /dev/null
@@ -1,421 +0,0 @@
-/* Support for syscalls for cris*-axis-linux-gnu and simulators
- Copyright (C) 1998-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* Derived from asm-etrax100/unistd.h with minor modifications to fit as
- LOSS for newlib. */
-
-#ifndef _ASM_ELINUX_UNISTD_H_
-#define _ASM_ELINUX_UNISTD_H_
-
-/* Our callers might want to use link_warning, so provide it from here. */
-#include "../libnosys/config.h"
-#include "libnosys/warning.h"
-
-#include <errno.h>
-
-/*
- * This file contains the system call numbers, and stub macros for libc.
- */
-
-#define __NR_setup 0 /* used only by init, to get system going */
-#define __NR_exit 1
-#define __NR_fork 2
-#define __NR_read 3
-#define __NR_write 4
-#define __NR_open 5
-#define __NR_close 6
-#define __NR_waitpid 7
-#define __NR_creat 8
-#define __NR_link 9
-#define __NR_unlink 10
-#define __NR_execve 11
-#define __NR_chdir 12
-#define __NR_time 13
-#define __NR_mknod 14
-#define __NR_chmod 15
-#define __NR_chown 16
-#define __NR_break 17
-#define __NR_oldstat 18
-#define __NR_lseek 19
-#define __NR_getpid 20
-#define __NR_mount 21
-#define __NR_umount 22
-#define __NR_setuid 23
-#define __NR_getuid 24
-#define __NR_stime 25
-#define __NR_ptrace 26
-#define __NR_alarm 27
-#define __NR_oldfstat 28
-#define __NR_pause 29
-#define __NR_utime 30
-#define __NR_stty 31
-#define __NR_gtty 32
-#define __NR_access 33
-#define __NR_nice 34
-#define __NR_ftime 35
-#define __NR_sync 36
-#define __NR_kill 37
-#define __NR_rename 38
-#define __NR_mkdir 39
-#define __NR_rmdir 40
-#define __NR_dup 41
-#define __NR_pipe 42
-#define __NR_times 43
-#define __NR_prof 44
-#define __NR_brk 45
-#define __NR_setgid 46
-#define __NR_getgid 47
-#define __NR_signal 48
-#define __NR_geteuid 49
-#define __NR_getegid 50
-#define __NR_acct 51
-#define __NR_phys 52
-#define __NR_lock 53
-#define __NR_ioctl 54
-#define __NR_fcntl 55
-#define __NR_mpx 56
-#define __NR_setpgid 57
-#define __NR_ulimit 58
-#define __NR_oldolduname 59
-#define __NR_umask 60
-#define __NR_chroot 61
-#define __NR_ustat 62
-#define __NR_dup2 63
-#define __NR_getppid 64
-#define __NR_getpgrp 65
-#define __NR_setsid 66
-#define __NR_sigaction 67
-#define __NR_sgetmask 68
-#define __NR_ssetmask 69
-#define __NR_setreuid 70
-#define __NR_setregid 71
-#define __NR_sigsuspend 72
-#define __NR_sigpending 73
-#define __NR_sethostname 74
-#define __NR_setrlimit 75
-#define __NR_getrlimit 76
-#define __NR_getrusage 77
-#define __NR_gettimeofday 78
-#define __NR_settimeofday 79
-#define __NR_getgroups 80
-#define __NR_setgroups 81
-#define __NR_select 82
-#define __NR_symlink 83
-#define __NR_oldlstat 84
-#define __NR_readlink 85
-#define __NR_uselib 86
-#define __NR_swapon 87
-#define __NR_reboot 88
-#define __NR_readdir 89
-#define __NR_mmap 90
-#define __NR_munmap 91
-#define __NR_truncate 92
-#define __NR_ftruncate 93
-#define __NR_fchmod 94
-#define __NR_fchown 95
-#define __NR_getpriority 96
-#define __NR_setpriority 97
-#define __NR_profil 98
-#define __NR_statfs 99
-#define __NR_fstatfs 100
-#define __NR_ioperm 101
-#define __NR_socketcall 102
-#define __NR_syslog 103
-#define __NR_setitimer 104
-#define __NR_getitimer 105
-#define __NR_stat 106
-#define __NR_lstat 107
-#define __NR_fstat 108
-#define __NR_olduname 109
-#define __NR_iopl 110
-#define __NR_vhangup 111
-#define __NR_idle 112
-#define __NR_vm86 113
-#define __NR_wait4 114
-#define __NR_swapoff 115
-#define __NR_sysinfo 116
-#define __NR_ipc 117
-#define __NR_fsync 118
-#define __NR_sigreturn 119
-#define __NR_clone 120
-#define __NR_setdomainname 121
-#define __NR_uname 122
-#define __NR_modify_ldt 123
-#define __NR_adjtimex 124
-#define __NR_mprotect 125
-#define __NR_sigprocmask 126
-#define __NR_create_module 127
-#define __NR_init_module 128
-#define __NR_delete_module 129
-#define __NR_get_kernel_syms 130
-#define __NR_quotactl 131
-#define __NR_getpgid 132
-#define __NR_fchdir 133
-#define __NR_bdflush 134
-#define __NR_sysfs 135
-#define __NR_personality 136
-#define __NR_afs_syscall 137 /* Syscall for Andrew File System */
-#define __NR_setfsuid 138
-#define __NR_setfsgid 139
-#define __NR__llseek 140
-#define __NR_getdents 141
-#define __NR__newselect 142
-#define __NR_flock 143
-#define __NR_msync 144
-#define __NR_readv 145
-#define __NR_writev 146
-#define __NR_getsid 147
-#define __NR_fdatasync 148
-#define __NR__sysctl 149
-#define __NR_mlock 150
-#define __NR_munlock 151
-#define __NR_mlockall 152
-#define __NR_munlockall 153
-#define __NR_sched_setparam 154
-#define __NR_sched_getparam 155
-#define __NR_sched_setscheduler 156
-#define __NR_sched_getscheduler 157
-#define __NR_sched_yield 158
-#define __NR_sched_get_priority_max 159
-#define __NR_sched_get_priority_min 160
-#define __NR_sched_rr_get_interval 161
-#define __NR_nanosleep 162
-#define __NR_mremap 163
-
-#define __NR_mmap2 192
-
-#define PASTE(x,y) x##y
-#define XSTR(x) # x
-#define STR(x) XSTR (x)
-
-#ifdef __elinux__
-# define CRIS_SYSCALL "jir .$System.call"
-# define CALLNO_REG r1
-# define ARG5_REG r0
-# define MOVE_ARG5 "move.d"
-# define COLON_ARG5_CLOBBER : "r0"
-#else
-# define CRIS_SYSCALL "break 13"
-# define CALLNO_REG r9
-# define ARG5_REG srp
-# define MOVE_ARG5 "move"
-# define COLON_ARG5_CLOBBER
-#endif
-
-/* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */
-#define _syscall0(type,name) \
-type PASTE(_Sys_,name) (void) \
-{ \
- register long __a __asm__ ("r10"); \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_)); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall1(type,name,type1,arg1) \
-type PASTE(_Sys_,name) (type1 arg1) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a)); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall2(type,name,type1,arg1,type2,arg2) \
-type PASTE(_Sys_,name) (type1 arg1,type2 arg2) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __b __asm__ ("r11") = (long) arg2; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a), "r" (__b)); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
-type PASTE(_Sys_,name) (type1 arg1,type2 arg2,type3 arg3) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __b __asm__ ("r11") = (long) arg2; \
- register long __c __asm__ ("r12") = (long) arg3; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a), "r" (__b), "r" (__c)); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall4(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-type PASTE(_Sys_,name) (type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __b __asm__ ("r11") = (long) arg2; \
- register long __c __asm__ ("r12") = (long) arg3; \
- register long __d __asm__ ("r13") = (long) arg4; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a), "r" (__b), \
- "r" (__c), "r" (__d)); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
- type5,arg5) \
-type PASTE(_Sys_,name) (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __b __asm__ ("r11") = (long) arg2; \
- register long __c __asm__ ("r12") = (long) arg3; \
- register long __d __asm__ ("r13") = (long) arg4; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (MOVE_ARG5 " %6,$" STR (ARG5_REG) "\n\t" \
- CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a), "r" (__b), \
- "r" (__c), "r" (__d), "g" (arg5) \
- COLON_ARG5_CLOBBER); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define _syscall6(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
- type5,arg5,type6,arg6) \
-type PASTE(_Sys_,name) (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5, type6 arg6) \
-{ \
- register long __a __asm__ ("r10") = (long) arg1; \
- register long __b __asm__ ("r11") = (long) arg2; \
- register long __c __asm__ ("r12") = (long) arg3; \
- register long __d __asm__ ("r13") = (long) arg4; \
- register long __n_ __asm__ (STR (CALLNO_REG)) = (__NR_##name); \
- __asm__ __volatile__ (MOVE_ARG5 " %6,$" STR (ARG5_REG) "\n\t" \
- "move %7,$mof\n\t" \
- CRIS_SYSCALL \
- : "=r" (__a) \
- : "r" (__n_), "0" (__a), "r" (__b), \
- "r" (__c), "r" (__d), "g" (arg5), "g" (arg6) \
- COLON_ARG5_CLOBBER); \
- if (__a >= 0) \
- return (type) __a; \
- errno = -__a; \
- return -1; \
-}
-
-#define __NR__exit __NR_exit
-static inline _syscall0(int,idle)
-static inline _syscall0(int,fork)
-static inline _syscall2(int,clone,unsigned long,flags,char *,esp)
-static inline _syscall0(int,pause)
-static inline _syscall0(int,setup)
-static inline _syscall0(int,sync)
-static inline _syscall3(int,write,int,fd,const char *,buf,unsigned,count)
-static inline _syscall1(int,dup,int,fd)
-static inline _syscall3(int,execve,const char *,file,char **,argv,char **,envp)
-static inline _syscall3(int,open,const char *,file,int,flag,int,mode)
-static inline _syscall1(int,close,int,fd)
-static inline _syscall1(int,_exit,int,exitcode)
-static inline _syscall1(int,exit,int,exitcode)
-static inline _syscall3(int,waitpid,int,pid,int *,wait_stat,int,options)
-static inline _syscall3(int,read,int,fd,char *,buf,unsigned,count)
-static inline _syscall2(int,socketcall,int,call,unsigned long *,args)
-static inline _syscall3(int,ioctl,unsigned int,fd,unsigned int,cmd,unsigned long,arg)
-static inline _syscall3(int,fcntl,unsigned int,fd,unsigned int,cmd,unsigned long,arg)
-static inline _syscall5(int,mount,const char *,a,const char *,b,const char *,c,unsigned long,rwflag,const void *,data)
-static inline _syscall2(int,rename,const char *,a,const char*,b)
-
-#ifndef __elinux__
-/* Make sure these are only used where they are supported. */
-static inline _syscall6(int,mmap2,unsigned long, addr, unsigned long, len,
- unsigned long, prot, unsigned long, flags,
- unsigned long, fd, unsigned long, pgoff)
-static inline _syscall1(long,brk,long,addr)
-#endif
-
-/* This structure is ripped from asm-etrax100/stat.h: beware of updates. */
-struct new_stat {
- unsigned short st_dev;
- unsigned short __pad1;
- unsigned long st_ino;
- unsigned short st_mode;
- unsigned short st_nlink;
- unsigned short st_uid;
- unsigned short st_gid;
- unsigned short st_rdev;
- unsigned short __pad2;
- unsigned long st_size;
- unsigned long st_blksize;
- unsigned long st_blocks;
- unsigned long st_atime;
- unsigned long __unused1;
- unsigned long st_mtime;
- unsigned long __unused2;
- unsigned long st_ctime;
- unsigned long __unused3;
- unsigned long __unused4;
- unsigned long __unused5;
-};
-
-static inline _syscall2(int,stat,const char *,path,struct new_stat *,statbuf)
-static inline _syscall2(int,fstat,int,fd,struct new_stat *,statbuf)
-static inline _syscall0(int,getpid)
-static inline _syscall2(int,kill,int,pid,int,sig)
-static inline _syscall3(int,lseek,int,fd,int,offset,int,whence)
-struct tms;
-static inline _syscall1(long,times,struct tms *,tbuf)
-static inline _syscall1(long,mmap,long *, buf)
-struct timeval;
-struct timezone;
-static inline _syscall2(int,gettimeofday,struct timeval *,tp,
- struct timezone *, tzp)
-static inline _syscall2(int,link,const char *,old,const char *,new)
-static inline _syscall1(int,unlink,const char *, f)
-struct rusage;
-static inline _syscall4(int,wait4,int,pid,int *,sa,int,op,struct rusage *,ru)
-#endif /* _ASM_ELINUX_UNISTD_H_ */
diff --git a/libgloss/cris/outbyte.c b/libgloss/cris/outbyte.c
deleted file mode 100644
index 1cb686b96..000000000
--- a/libgloss/cris/outbyte.c
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Low-level kind-of-support for CRIS. Mostly used as a placeholder
- function. Too small and obvious to warrant a copyright notice. */
-
-#include <stdio.h>
-void
-outbyte (int ch)
-{
- write (1, &ch, 1);
-}
diff --git a/libgloss/cris/setup.S b/libgloss/cris/setup.S
deleted file mode 100644
index ef0be7109..000000000
--- a/libgloss/cris/setup.S
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Support for standalone CRIS/CRISv32 code.
- Copyright (C) 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
- .text
- .global __setup
-__setup:
- /* Make sure to save SRP. */
-#ifdef __arch_common_v10_v32
- /* Can't do anything if we don't know for which arch. This file is
- then only a placeholder. Oh, and we can't use the "ret" insn in
- "common" code. */
-#else
- /* Code missing:
- - Initialize RAM circuits.
- - Initialize serial output and input.
- - Set stack-pointer. */
- ret
- nop
-#endif
diff --git a/libgloss/crx/Makefile.in b/libgloss/crx/Makefile.in
deleted file mode 100644
index a4abe3fc9..000000000
--- a/libgloss/crx/Makefile.in
+++ /dev/null
@@ -1,156 +0,0 @@
-#
-#
-
-DESTDIR =
-
-VPATH = @srcdir@ @srcdir@/..
-srcdir = @srcdir@
-objdir = .
-srcroot = $(srcdir)/../..
-objroot = $(objdir)/../..
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-host_alias = @host_alias@
-target_alias = @target_alias@
-
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(exec_prefix)/$(target_alias)
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-
-SHELL = /bin/sh
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-
-OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
- then echo ${objroot}/../binutils/objdump ; \
- else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
-OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
- then echo ${objroot}/../binutils/objcopy ; \
- else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
-
-# Here is all of the handlers stuff
-H_SCRIPTS =
-H_BSP = libh.a
-H_OBJS = intable.o dvz_hndl.o flg_hndl.o iad_hndl.o svc_hndl.o und_hndl.o
-H_TEST = hndl-test
-H_INSTALL = install-hndl
-
-# Here is all of the simulator stuff
-SIM_SCRIPTS = sim.ld
-SIM_BSP = libsim.a
-SIM_OBJS = _exit.o close.o _getenv.o lseek.o open.o read.o \
- _rename.o sbrk.o time.o unlink.o write.o \
- stat.o putnum.o kill.o getpid.o isatty.o fstat.o
-SIM_TEST = sim-test
-SIM_INSTALL = install-sim
-
-# Here is all of the CRT stuff
-CRT = crti.o crtn.o crt0.o
-CRT_INSTALL = install-crt
-
-# Host specific makefile fragment comes in here.
-@host_makefile_frag@
-
-#
-# build a test program for each target board. Just trying to get
-# it to link is a good test, so we ignore all the errors for now.
-#
-all: ${CRT} ${SIM_BSP} ${H_BSP}
-
-#
-# here's where we build the board support packages for each target
-#
-${H_BSP}: ${H_OBJS}
- ${AR} ${ARFLAGS} ${H_BSP} ${H_OBJS}
- ${RANLIB} ${H_BSP}
-
-${SIM_BSP}: ${SIM_OBJS}
- ${AR} ${ARFLAGS} ${SIM_BSP} ${SIM_OBJS}
- ${RANLIB} ${SIM_BSP}
-
-#
-# here's where we build the test programs for each target
-#
-.PHONY: test
-test: ${SIM_TEST} ${H_TEST}
-
-hndl-test: hndl-test.x hndl-test.dis
-
-hndl-test.x: test.o ${H_BSP}
- ${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
- test.o \
- -o hndl-test.x ${LIBS_FOR_TARGET} -lc ${H_BSP} -Wl,-T${SIM_SCRIPTS}
-
-hndl-test.dis: hndl-test.x
- ${OBJDUMP} -d hndl-test.x > hndl-test.dis
-
-
-sim-test: sim-test.x sim-test.dis
-
-sim-test.x: test.o ${SIM_BSP}
- ${CC} ${LDFLAGS_FOR_TARGET} -L${objdir} \
- test.o \
- -o sim-test.x ${LIBS_FOR_TARGET} -lc ${SIM_BSP} -Wl,-T${SIM_SCRIPTS}
-
-sim-test.dis: sim-test.x
- ${OBJDUMP} -d sim-test.x > sim-test.dis
-
-#
-#
-#
-.c.S:
- ${CC} ${CFLAGS_FOR_TARGET} -c $<
-
-clean mostlyclean:
- rm -f a.out core *.i *.o *-test *.srec *.dis *.x $(SIM_BSP) $(H_BSP)
-
-distclean maintainer-clean realclean: clean
- rm -f Makefile config.status *~
-
-.PHONY: install info install-info clean-info
-install: ${CRT_INSTALL} ${SIM_INSTALL} ${H_INSTALL}
-
-install-crt:
- set -e; for x in ${CRT} ; do\
- ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done
-
-install-sim:
- for x in ${SIM_BSP} ; do\
- ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done
- for x in ${SIM_SCRIPTS}; do\
- ${INSTALL_DATA} ${srcdir}/$${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done
-
-install-hndl:
- for x in ${H_BSP}; do\
- ${INSTALL_PROGRAM} $${x} $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; \
- done
-
-doc:
-info:
-install-info:
-clean-info:
-
-Makefile: Makefile.in config.status @host_makefile_frag_path@
- $(SHELL) config.status
-
-config.status: configure
- $(SHELL) config.status --recheck
diff --git a/libgloss/crx/_exit.c b/libgloss/crx/_exit.c
deleted file mode 100644
index 9a3cfa6ae..000000000
--- a/libgloss/crx/_exit.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* _exit.c -- Implementation of the low-level _exit() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <stdlib.h>
-#include <sys/syscall.h>
-
-/* Returns control to the debugger. */
-void _exit (int stat)
-{
- HOST_SERVICE (SVC_EOP);
-}
diff --git a/libgloss/crx/_getenv.c b/libgloss/crx/_getenv.c
deleted file mode 100644
index c43555dfa..000000000
--- a/libgloss/crx/_getenv.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* _getenv.c -- Implementation of the low-level _getenv() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-#include <stdlib.h>
-
-register char *R2 __asm__("r2");
-register char *R3 __asm__("r3");
-
-char * _getenv (const char *name)
-{
- char *x;
- char *y;
-
- x = R2;
-
- y = (char *) calloc (256, 1);
- R3 = y;
-
- R2 = x;
-
- HOST_SERVICE (SVC_GETENV);
-}
-
diff --git a/libgloss/crx/_rename.c b/libgloss/crx/_rename.c
deleted file mode 100644
index b3d7bd0db..000000000
--- a/libgloss/crx/_rename.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* _rename.c -- Implementation of the low-level rename() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-int _rename (char *from, char *to)
-{
- HOST_SERVICE (SVC_RENAME);
-}
diff --git a/libgloss/crx/close.c b/libgloss/crx/close.c
deleted file mode 100644
index 72ce4bd6f..000000000
--- a/libgloss/crx/close.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* close.c -- Implementation of the low-level close() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-int close (int fd)
-{
- HOST_SERVICE (SVC_CLOSE);
-}
diff --git a/libgloss/crx/configure b/libgloss/crx/configure
deleted file mode 100755
index 26420eaa9..000000000
--- a/libgloss/crx/configure
+++ /dev/null
@@ -1,1228 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=intable.c
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:573: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:594: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:612: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-
-if test "$srcdir" = "." ; then
- mdir=`echo "${with_multisubdir}/" \
- | sed -e 's,\([^/][^/]*\),..,g' -e 's,^/$,,'`
- ac_aux_dir=
-for ac_dir in ${mdir}../../.. $srcdir/${mdir}../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ${mdir}../../.. $srcdir/${mdir}../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-else
- ac_aux_dir=
-for ac_dir in ${srcdir}/../.. $srcdir/${srcdir}/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ${srcdir}/../.. $srcdir/${srcdir}/../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-fi
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:710: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:774: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:804: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:853: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:862: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:877: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-AS=${AS-as}
-
-AR=${AR-ar}
-
-LD=${LD-ld}
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:913: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-host_makefile_frag_path=$host_makefile_frag
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@LD@%$LD%g
-s%@RANLIB@%$RANLIB%g
-s%@host_makefile_frag_path@%$host_makefile_frag_path%g
-/@host_makefile_frag@/r $host_makefile_frag
-s%@host_makefile_frag@%%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/libgloss/crx/configure.in b/libgloss/crx/configure.in
deleted file mode 100644
index 63a902e18..000000000
--- a/libgloss/crx/configure.in
+++ /dev/null
@@ -1,75 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.5)dnl
-AC_INIT(intable.c)
-
-AC_CANONICAL_SYSTEM
-AC_ARG_PROGRAM
-
-if test "$srcdir" = "." ; then
- mdir=`echo "${with_multisubdir}/" \
- | sed -e 's,\([[^/]][[^/]]*\),..,g' -e 's,^/$,,'`
- AC_CONFIG_AUX_DIR(${mdir}../../..)
-else
- AC_CONFIG_AUX_DIR(${srcdir}/../..)
-fi
-
-AC_PROG_INSTALL
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-AS=${AS-as}
-AC_SUBST(AS)
-AR=${AR-ar}
-AC_SUBST(AR)
-LD=${LD-ld}
-AC_SUBST(LD)
-AC_PROG_RANLIB
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-dnl We have to assign the same value to other variables because autoconf
-dnl doesn't provide a mechanism to substitute a replacement keyword with
-dnl arbitrary data or pathnames.
-dnl
-host_makefile_frag_path=$host_makefile_frag
-AC_SUBST(host_makefile_frag_path)
-AC_SUBST_FILE(host_makefile_frag)
-
-AC_OUTPUT(Makefile)
diff --git a/libgloss/crx/crt0.S b/libgloss/crx/crt0.S
deleted file mode 100644
index c49849728..000000000
--- a/libgloss/crx/crt0.S
+++ /dev/null
@@ -1,93 +0,0 @@
- ##############################################################################
- # crt0.S -- CRX default start-up routine #
- # #
- # Copyright (c) 2004 National Semiconductor Corporation #
- # #
- # The authors hereby grant permission to use, copy, modify, distribute, #
- # and license this software and its documentation for any purpose, provided #
- # that existing copyright notices are retained in all copies and that this #
- # notice is included verbatim in any distributions. No written agreement, #
- # license, or royalty fee is required for any of the authorized uses. #
- # Modifications to this software may be copyrighted by their authors #
- # and need not follow the licensing terms described here, provided that #
- # the new terms are clearly indicated on the first page of each file where #
- # they apply. #
- # #
- # This is the start routine of your CRX program. #
- # It is linked with your application automatically. You can use #
- # this routine as a template and modify it to your needs, yet this #
- # file must be supplied for the compiler. #
- # It is assumed that the following symbols are defined in your linker #
- # script: __STACK_START, __ISTACK_START, __DATA_START, __DATA_END, #
- # __DATA_IMAGE_START, __BSS_START, __BSS_END. #
- ##############################################################################
-
- .text
- .align 4
- .globl _main
- .globl _start
- .globl _atexit
- .globl _exit
- .globl __dispatch_table
-
-_start:
-
- #----------------------------------------------------------------------------#
- # Initialize the stack pointers. The constants __STACK_START and #
- # __ISTACK_START should be defined in the linker script. #
-
- movd $__STACK_START, sp
- movd $__ISTACK_START, r0
- mtpr r0, isp
-
- #----------------------------------------------------------------------------#
- # Initialize the default sections according to the linker script. #
-
- movd $__DATA_END, r4
- subd $__DATA_START, r4
- movd $__DATA_START, r2
- movd $__DATA_IMAGE_START, r3
- bal ra, _memcpy
- movd $__BSS_END, r4
- subd $__BSS_START, r4
- movd $__BSS_START, r2
- movd $0, r3
- bal ra, _memset
-
- #----------------------------------------------------------------------------#
- # Initialize the intbase (pointer to the dispatch table). #
-
- movd $__dispatch_table, r0
- mtpr r0, intbase
-
- #----------------------------------------------------------------------------#
- # Handle global and static constructurs execution and setup #
- # destructors to be called from exit. #
- bal ra, _init
- movd $_fini, r2
- bal ra, _atexit
-
- #----------------------------------------------------------------------------#
- # Here you may add initializations that are specific to your #
- # environment. For example: #
- # 1. Configure wait states and other BIU parameters in order to get #
- # the best performance out of your target (see the specification #
- # document). #
- # 2. Enable maskable interrupts that should be enabled when your #
- # program starts to execute. #
-
-
- #----------------------------------------------------------------------------#
- # Jump to the main function in your application. #
-
- bal ra, _main
-
- #----------------------------------------------------------------------------#
- # Upon returning from the main function (if it isn't an infinite loop), #
- # jump to the exit function. The exit function is located in the #
- # library 'libc.a'. #
-
- movd r0, r2 # _main return value is passed as a
- # parameter to exit.
- br _exit # returns control to the debugger.
-
diff --git a/libgloss/crx/crti.S b/libgloss/crx/crti.S
deleted file mode 100644
index 7bca798e3..000000000
--- a/libgloss/crx/crti.S
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Specialized code needed to support construction and destruction of
- file-scope objects in C++ and Java code, and to support exception handling.
- Copyright (C) 1999 Free Software Foundation, Inc.
- Contributed by Charles-Antoine Gauthier (charles.gauthier@iit.nrc.ca).
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING. If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
-
-/* As a special exception, if you link this library with files
- compiled with GCC to produce an executable, this does not cause
- the resulting executable to be covered by the GNU General Public License.
- This exception does not however invalidate any other reasons why
- the executable file might be covered by the GNU General Public License. */
-
-/*
- * This file just supplies function prologues for the .init and .fini
- * sections. It is linked in before crtbegin.o.
- */
-
- .file "crti.o"
- .ident "GNU C crti.o"
-
- .section .init
- .globl _init
- .type _init,@function
-_init:
- push ra
- .section .fini
- .globl _fini
- .type _fini,@function
-_fini:
- push ra
-
diff --git a/libgloss/crx/crtn.S b/libgloss/crx/crtn.S
deleted file mode 100644
index 8375f43e8..000000000
--- a/libgloss/crx/crtn.S
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Specialized code needed to support construction and destruction of
- file-scope objects in C++ and Java code, and to support exception handling.
- Copyright (C) 1999 Free Software Foundation, Inc.
- Contributed by Charles-Antoine Gauthier (charles.gauthier@iit.nrc.ca).
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING. If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
-
-/* As a special exception, if you link this library with files
- compiled with GCC to produce an executable, this does not cause
- the resulting executable to be covered by the GNU General Public License.
- This exception does not however invalidate any other reasons why
- the executable file might be covered by the GNU General Public License. */
-
-/*
- * This file supplies function epilogues for the .init and .fini sections.
- * It is linked in after all other files.
- */
-
- .file "crtn.o"
- .ident "GNU C crtn.o"
-
- .section .init
- popret ra
-
- .section .fini
- popret ra
diff --git a/libgloss/crx/dvz_hndl.c b/libgloss/crx/dvz_hndl.c
deleted file mode 100644
index a9bde4020..000000000
--- a/libgloss/crx/dvz_hndl.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* dvz_hndl.c -- Implementation of the DVZ trap handler
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-void dvz_handler (void) __attribute__ ((interrupt ()));
-
-void dvz_handler (void)
-{
- HOST_SERVICE (SVC_DVZ);
-}
diff --git a/libgloss/crx/flg_hndl.c b/libgloss/crx/flg_hndl.c
deleted file mode 100644
index 0bb9c8680..000000000
--- a/libgloss/crx/flg_hndl.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* flg_hndl.c -- Implementation of the FLG trap handler
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-void flg_handler (void) __attribute__ ((interrupt ()));
-
-void flg_handler (void)
-{
- HOST_SERVICE (SVC_FLG);
-}
diff --git a/libgloss/crx/fstat.c b/libgloss/crx/fstat.c
deleted file mode 100644
index 380fc2aaa..000000000
--- a/libgloss/crx/fstat.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* fstat.c -- get status of a file.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-#include <sys/stat.h>
-
-/*
- * fstat -- Since we have no file system, we just return an error.
- */
-int
-_DEFUN (fstat, (fd, buf),
- int fd _AND
- struct stat *buf)
-{
- buf->st_mode = S_IFCHR; /* Always pretend to be a tty */
- buf->st_blksize = 0;
-
- return (0);
-}
diff --git a/libgloss/crx/getpid.c b/libgloss/crx/getpid.c
deleted file mode 100644
index 3c1a7b8b8..000000000
--- a/libgloss/crx/getpid.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* getpid.c -- get the current process id.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-#define __MYPID 1
-
-/*
- * getpid -- only one process, so just return 1.
- */
-int
-_DEFUN (getpid, (),
- )
-{
- return __MYPID;
-}
diff --git a/libgloss/crx/iad_hndl.c b/libgloss/crx/iad_hndl.c
deleted file mode 100644
index 875dbe63b..000000000
--- a/libgloss/crx/iad_hndl.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* iad_hndl.c -- Implementation of the IAD trap handler
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-void iad_handler (void) __attribute__ ((interrupt ()));
-
-void iad_handler (void)
-{
- HOST_SERVICE (SVC_IAD);
-}
diff --git a/libgloss/crx/intable.c b/libgloss/crx/intable.c
deleted file mode 100644
index 02ca66b00..000000000
--- a/libgloss/crx/intable.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* intable.c -- CompactRISC default dispatch table definition
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <stdio.h>
-#include <sys/libh.h>
-
-void (* const _dispatch_table[32])(void)=
-{
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- svc_handler,
- dvz_handler,
- flg_handler,
- NULL,
- NULL,
- und_handler,
- NULL,
- iad_handler,
- NULL,
- NULL,
- NULL
-};
diff --git a/libgloss/crx/isatty.c b/libgloss/crx/isatty.c
deleted file mode 100644
index 927d75497..000000000
--- a/libgloss/crx/isatty.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* isatty.c -- chek the terminal device.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-
-/*
- * isatty -- returns 1 if connected to a terminal device,
- * returns 0 if not. Since we're hooked up to a
- * serial port, we'll say yes _AND return a 1.
- */
-int
-_DEFUN (isatty, (fd),
- int fd)
-{
- return (1);
-}
diff --git a/libgloss/crx/kill.c b/libgloss/crx/kill.c
deleted file mode 100644
index 3ed228fd2..000000000
--- a/libgloss/crx/kill.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* kill.c -- remove a process.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-#define __MYPID 1
-
-/*
- * kill -- go out via exit...
- */
-int
-_DEFUN (kill, (pid, sig),
- int pid _AND
- int sig)
-{
- if(pid == __MYPID)
- _exit(sig);
- return 0;
-}
diff --git a/libgloss/crx/lseek.c b/libgloss/crx/lseek.c
deleted file mode 100644
index 6c4354c93..000000000
--- a/libgloss/crx/lseek.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* lseek.c -- Implementation of the low-level lseek() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-long lseek (int fd, long offset, int whence)
-{
- HOST_SERVICE (SVC_LSEEK);
-}
diff --git a/libgloss/crx/open.c b/libgloss/crx/open.c
deleted file mode 100644
index abe7bbfd1..000000000
--- a/libgloss/crx/open.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* open.c -- Implementation of the low-level open() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-#include <stdarg.h>
-
-int open_aux (char *, int, int);
-
-/* The prototype in <fcntl.h> for open() uses ..., meaning function
- * parameters reside on stack, but the debugger expects the parameters
- * to reside in registers, thus we call an auxiliary function with
- * bounded number of parameters.
- */
-int open (char *path, int flags, ...)
-{
- int mode;
- va_list ap;
-
- va_start(ap, flags);
- mode = va_arg(ap, int);
- open_aux (path, flags, mode);
- va_end(ap);
-}
-
-int open_aux (char *path, int flags, int mode)
-{
- HOST_SERVICE (SVC_OPEN);
-}
-
diff --git a/libgloss/crx/putnum.c b/libgloss/crx/putnum.c
deleted file mode 100644
index 3317bbf0a..000000000
--- a/libgloss/crx/putnum.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* putnum.c -- put a hex number on the output device.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-
-/*
- * putnum -- print a 32 bit number in hex
- */
-void
-_DEFUN (putnum, (num),
- unsigned int num)
-{
- char buf[9];
- int cnt;
- char *ptr;
- int digit;
-
- ptr = buf;
- for (cnt = 7 ; cnt >= 0 ; cnt--) {
- digit = (num >> (cnt * 4)) & 0xf;
-
- if (digit <= 9)
- *ptr++ = (char) ('0' + digit);
- else
- *ptr++ = (char) ('a' - 10 + digit);
- }
-
- *ptr = (char) 0;
- print (buf);
-}
diff --git a/libgloss/crx/read.c b/libgloss/crx/read.c
deleted file mode 100644
index f0cb43a52..000000000
--- a/libgloss/crx/read.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* read.c -- Implementation of the low-level read() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-int read (int fd, char *buffer, int nbytes)
-{
- HOST_SERVICE (SVC_READ);
-}
diff --git a/libgloss/crx/sbrk.c b/libgloss/crx/sbrk.c
deleted file mode 100644
index 70d5d4f7d..000000000
--- a/libgloss/crx/sbrk.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* sbrk.c -- Implementation of the low-level sbrk() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <errno.h>
-#include <stddef.h> /* where ptrdiff_t is defined */
-#include <stdlib.h>
-
-/* Extend heap space by size bytes.
- Return start of new space allocated, or -1 for errors
- Error cases:
- 1. Allocation is not within heap range */
-
-void * sbrk (ptrdiff_t size)
-{
- /*
- * The following two memory locations should be defined in the linker script file
- */
- extern const char _HEAP_START; /* start of heap */
- extern const char _HEAP_MAX; /* end of heap (maximum value of heap_ptr) */
-
- static const char * heap_ptr; /* pointer to head of heap */
- const char * old_heap_ptr;
- static unsigned char init_sbrk = 0;
-
- /* heap_ptr is initialized to HEAP_START */
- if (init_sbrk == 0)
- {
- heap_ptr = &_HEAP_START;
- init_sbrk = 1;
- }
-
- old_heap_ptr = heap_ptr;
-
- if ((heap_ptr + size) > &_HEAP_MAX)
- {
- /* top of heap is bigger than _HEAP_MAX */
- errno = ENOMEM;
- return (void *) -1;
- }
-
- /* success: update heap_ptr and return previous value */
- heap_ptr += size;
- return (void *)old_heap_ptr;
-}
diff --git a/libgloss/crx/sim.ld b/libgloss/crx/sim.ld
deleted file mode 100644
index a75c03dcd..000000000
--- a/libgloss/crx/sim.ld
+++ /dev/null
@@ -1,126 +0,0 @@
-/* Example Linker Script for linking NS CRX elf32 files. */
-OUTPUT_FORMAT("elf32-crx")
-OUTPUT_ARCH(crx)
-
-/*
- The libh.a library includes various CR default handlers.
- The libsim.a library includes low-level functions, which
- are used as an interface to communicate with the simulator.
-*/
-GROUP(-lc -lsim -lh -lgcc)
-
-/*
- The next line forces the entry point (_start in this script)
- to be entered in the output file as an undefined symbol.
- It is needed in case the entry point is not called explicitly
- (which is the usual case) AND is in an archive.
-*/
-EXTERN(_start)
-ENTRY(_start)
-
-/* Define memory regions */
-MEMORY
-{
- rom : ORIGIN = 0x2, LENGTH = 3M
- ram : ORIGIN = 4M, LENGTH = 10M
-}
-
-SECTIONS
-{
- .init :
- {
- __INIT_START = .;
- KEEP (*(.init))
- __INIT_END = .;
- } > rom
-
- .fini :
- {
- __FINI_START = .;
- KEEP (*(.fini))
- __FINI_END = .;
- } > rom
-
- .jcr :
- {
- KEEP (*(.jcr))
- } > rom
-
- .text :
- {
- __TEXT_START = .;
- *(.text) *(.text.*) *(.gnu.linkonce.t.*)
- __TEXT_END = .;
- } > rom
-
- .rdata :
- {
- __RDATA_START = .;
- *(.rdata_4) *(.rdata_2) *(.rdata_1) *(.rdata.*) *(.gnu.linkonce.r.*)
- __RDATA_END = .;
- } > rom
-
- .ctor ALIGN(4) :
- {
- __CTOR_START = .;
- KEEP (*crtbegin*.o(.ctors))
- KEEP (*(EXCLUDE_FILE (*crtend*.o) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- __CTOR_END = .;
- } > rom
-
- .dtor ALIGN(4) :
- {
- __DTOR_START = .;
- KEEP (*crtbegin*.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
- __DTOR_END = .;
- } > rom
-
- .data :
- {
- __DATA_START = .;
- *(.data_4) *(.data_2) *(.data_1) *(.data) *(.data.*) *(.gnu.linkonce.d.*)
- __DATA_END = .;
- } > ram AT > rom
-
- .bss (NOLOAD) :
- {
- __BSS_START = .;
- *(.bss_4) *(.bss_2) *(.bss_1) *(.bss) *(COMMON) *(.bss.*) *(.gnu.linkonce.b.*)
- __BSS_END = .;
- } > ram
-
-/*
- You may change the sizes of the following sections to fit the actual
- size your program requires.
- The heap and stack are aligned to the bus width, as a speed optimization
- for accessing data located there.
-*/
- .heap :
- {
- . = ALIGN(4);
- __HEAP_START = .;
- . += 0x2000;
- __HEAP_MAX = .;
- } > ram
-
- .stack :
- {
- . = ALIGN(4);
- . += 0x6000;
- __STACK_START = .;
- } > ram
-
- .istack :
- {
- . = ALIGN(4);
- . += 0x100;
- __ISTACK_START = .;
- } > ram
-}
-
-__DATA_IMAGE_START = LOADADDR(.data);
diff --git a/libgloss/crx/stat.c b/libgloss/crx/stat.c
deleted file mode 100644
index 6ffef821b..000000000
--- a/libgloss/crx/stat.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* stat.c -- Get the status of a file.
- *
- * Copyright (c) 1995 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-#include <_ansi.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-/*
- * stat -- Since we have no file system, we just return an error.
- */
-int
-_DEFUN (stat, (path, buf),
- const char *path _AND
- struct stat *buf)
-{
- errno = EIO;
- return (-1);
-}
-
diff --git a/libgloss/crx/svc_hndl.c b/libgloss/crx/svc_hndl.c
deleted file mode 100644
index ab93a4d2c..000000000
--- a/libgloss/crx/svc_hndl.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* svc_hndl.c -- Implementation of the SVC trap handler
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-void svc_handler (void) __attribute__ ((interrupt ()));
-
-void svc_handler (void)
-{
- HOST_SERVICE (SVC_SVC);
-}
diff --git a/libgloss/crx/time.c b/libgloss/crx/time.c
deleted file mode 100644
index 4d7cfa19a..000000000
--- a/libgloss/crx/time.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* time.c -- Implementation of the low-level time() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <unistd.h>
-#include <time.h>
-#include <errno.h>
-#include <sys/time.h>
-#include <sys/times.h>
-#include <sys/syscall.h>
-
-time_t _Time (time_t *timer)
-{
- HOST_SERVICE (SVC_TIME);
-}
-
-time_t time (time_t *tod)
-{
- time_t t = _Time (NULL);
-
- if (tod)
- *tod = t;
-
- return (t);
-}
-
-/* _times -- no clock, so return an error. */
-clock_t times (struct tms *buf)
-{
- errno = EINVAL;
- return (-1);
-}
-
-/* _gettimeofday -- implement in terms of time. */
-int gettimeofday (struct timeval *tv, struct timezone *tz)
-{
- if (tz)
- tz->tz_minuteswest = tz->tz_dsttime = 0;
-
- tv->tv_usec = 0;
- tv->tv_sec = time (0);
- return 0;
-}
-
diff --git a/libgloss/crx/und_hndl.c b/libgloss/crx/und_hndl.c
deleted file mode 100644
index 4c5cca332..000000000
--- a/libgloss/crx/und_hndl.c
+++ /dev/null
@@ -1,23 +0,0 @@
-/* und_hndl.c -- Implementation of the UND trap handler
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-void und_handler (void) __attribute__ ((interrupt ()));
-
-void und_handler (void)
-{
- HOST_SERVICE (SVC_UND);
-}
diff --git a/libgloss/crx/unlink.c b/libgloss/crx/unlink.c
deleted file mode 100644
index 3a934712a..000000000
--- a/libgloss/crx/unlink.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* unlink.c -- Implementation of the low-level unlink() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-int unlink (char *path)
-{
- HOST_SERVICE (SVC_UNLINK);
-}
diff --git a/libgloss/crx/write.c b/libgloss/crx/write.c
deleted file mode 100644
index a9a7ff48c..000000000
--- a/libgloss/crx/write.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* write.c -- Implementation of the low-level write() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include <sys/syscall.h>
-
-int write (int fd, char *buffer, int nbytes)
-{
- HOST_SERVICE (SVC_WRITE);
-}
diff --git a/libgloss/iq2000/sim.ld b/libgloss/iq2000/sim.ld
index 5f59d020b..6530a850a 100644
--- a/libgloss/iq2000/sim.ld
+++ b/libgloss/iq2000/sim.ld
@@ -268,7 +268,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/libnosys/Makefile.in b/libgloss/libnosys/Makefile.in
index d6634fc54..da48e5318 100644
--- a/libgloss/libnosys/Makefile.in
+++ b/libgloss/libnosys/Makefile.in
@@ -44,15 +44,15 @@ SHELL = /bin/sh
CC = @CC@
#AS = @AS@
-AS = `if [ -f ${objroot}/../gas/as-new ] ; \
- then echo ${objroot}/../gas/as-new ; \
+AS = `if [ -f ${objroot}/../gas/as.new ] ; \
+ then echo ${objroot}/../gas/as.new ; \
else echo as ; fi`
AR = @AR@
#LD = @LD@
-LD = `if [ -f ${objroot}/../ld/ld-new ] ; \
- then echo ${objroot}/../ld/ld-new ; \
+LD = `if [ -f ${objroot}/../ld/ld.new ] ; \
+ then echo ${objroot}/../ld/ld.new ; \
else echo ld ; fi`
RANLIB = @RANLIB@
@@ -65,10 +65,9 @@ OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
# object files needed
-OBJS = chown.o close.o environ.o errno.o execve.o fork.o fstat.o \
- getpid.o gettod.o isatty.o kill.o link.o lseek.o open.o \
- read.o readlink.o sbrk.o stat.o symlink.o times.o unlink.o \
- wait.o write.o _exit.o
+OBJS = close.o environ.o errno.o execve.o fork.o fstat.o getpid.o gettod.o \
+ isatty.o kill.o link.o lseek.o open.o read.o sbrk.o stat.o \
+ times.o unlink.o wait.o write.o _exit.o
# Object files specific to particular targets.
EVALOBJS = ${OBJS}
diff --git a/libgloss/libnosys/chown.c b/libgloss/libnosys/chown.c
deleted file mode 100644
index 67f98d59d..000000000
--- a/libgloss/libnosys/chown.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Stub version of chown.
- */
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include <sys/types.h>
-#undef errno
-extern int errno;
-#include "warning.h"
-
-int
-_DEFUN (_chown, (path, owner, group),
- const char *path _AND
- uid_t owner _AND
- gid_t group)
-{
- errno = ENOSYS;
- return -1;
-}
-
-stub_warning(_chown)
diff --git a/libgloss/libnosys/configure b/libgloss/libnosys/configure
index a3de0b107..6e8e082bd 100755
--- a/libgloss/libnosys/configure
+++ b/libgloss/libnosys/configure
@@ -755,8 +755,6 @@ case "${target}" in
;;
strongarm-*-*)
;;
- cris-*-* | crisv32-*-*)
- ;;
d10v*)
;;
h8300*-*-*)
@@ -809,17 +807,15 @@ EOF
echo $ac_n "checking for .previous assembler directive""... $ac_c" 1>&6
-echo "configure:813: checking for .previous assembler directive" >&5
+echo "configure:811: checking for .previous assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_previous_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- libc_cv_asm_previous_directive=no
- cat > conftest.s <<EOF
+ cat > conftest.s <<EOF
.section foo_section
.previous
EOF
- if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:822: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
- libc_cv_asm_previous_directive=yes
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:819: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
cat >> confdefs.h <<\EOF
#define HAVE_ASM_PREVIOUS_DIRECTIVE 1
EOF
@@ -831,17 +827,15 @@ fi
echo "$ac_t""$libc_cv_asm_previous_directive" 1>&6
echo $ac_n "checking for .popsection assembler directive""... $ac_c" 1>&6
-echo "configure:835: checking for .popsection assembler directive" >&5
+echo "configure:831: checking for .popsection assembler directive" >&5
if eval "test \"`echo '$''{'libc_cv_asm_popsection_directive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- libc_cv_asm_popsection_directive=no
- cat > conftest.s <<EOF
+ cat > conftest.s <<EOF
.pushsection foo_section
.popsection
EOF
- if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:844: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
- libc_cv_asm_popsection_directive=yes
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:839: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
cat >> confdefs.h <<\EOF
#define HAVE_ASM_POPSECTION_DIRECTIVE 1
EOF
@@ -853,17 +847,15 @@ fi
echo "$ac_t""$libc_cv_asm_popsection_directive" 1>&6
echo $ac_n "checking for section attributes""... $ac_c" 1>&6
-echo "configure:857: checking for section attributes" >&5
+echo "configure:851: checking for section attributes" >&5
if eval "test \"`echo '$''{'libc_cv_section_attributes'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
- libc_cv_section_attributes=no
- cat > conftest.c <<EOF
+ cat > conftest.c <<EOF
int secttest __attribute__ ((section (".gnu.warning.secttest"))) = 10;
int main() {}
EOF
- if { ac_try='${CC-cc} -c $CFLAGS conftest.c 1>&5'; { (eval echo configure:866: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
- libc_cv_section_attributes=yes
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.c 1>&5'; { (eval echo configure:859: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
cat >> confdefs.h <<\EOF
#define HAVE_SECTION_ATTRIBUTES 1
EOF
@@ -876,31 +868,27 @@ echo "$ac_t""$libc_cv_section_attributes" 1>&6
;;
esac
-echo $ac_n "checking for symbol prefix""... $ac_c" 1>&6
-echo "configure:881: checking for symbol prefix" >&5
-if eval "test \"`echo '$''{'libc_symbol_prefix'+set}'`\" = set"; then
+echo $ac_n "checking for function prefix""... $ac_c" 1>&6
+echo "configure:873: checking for function prefix" >&5
+if eval "test \"`echo '$''{'libc_dollar_prefix'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.c <<\EOF
foo () { }
EOF
-libc_symbol_prefix=none
-if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo" > /dev/null'; { (eval echo configure:889: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
+if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo" > /dev/null'; { (eval echo configure:880: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
then
- libc_symbol_prefix='$'
+ libc_dollar_prefix=yes
else
- if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "_foo" > /dev/null'; { (eval echo configure:893: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; };
- then
- libc_symbol_prefix=_
- fi
+ libc_dollar_prefix=no
fi
rm -f conftest*
fi
-echo "$ac_t""$libc_symbol_prefix" 1>&6
-if test $libc_symbol_prefix != none; then
- cat >> confdefs.h <<EOF
-#define __SYMBOL_PREFIX "$libc_symbol_prefix"
+echo "$ac_t""$libc_dollar_prefix" 1>&6
+if test $libc_dollar_prefix = yes ; then
+ cat >> confdefs.h <<\EOF
+#define __SYMBOL_PREFIX "$"
EOF
else
@@ -913,7 +901,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:917: checking for $ac_word" >&5
+echo "configure:905: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -943,7 +931,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:947: checking for $ac_word" >&5
+echo "configure:935: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -992,7 +980,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:996: checking whether we are using GNU C" >&5
+echo "configure:984: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1001,7 +989,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1005: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:993: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1016,7 +1004,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1020: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1008: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1052,7 +1040,7 @@ LD=${LD-ld}
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1056: checking for $ac_word" >&5
+echo "configure:1044: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/libgloss/libnosys/configure.in b/libgloss/libnosys/configure.in
index b39799fd3..9149e396b 100644
--- a/libgloss/libnosys/configure.in
+++ b/libgloss/libnosys/configure.in
@@ -89,8 +89,6 @@ case "${target}" in
;;
strongarm-*-*)
;;
- cris-*-* | crisv32-*-*)
- ;;
d10v*)
;;
h8300*-*-*)
@@ -139,63 +137,53 @@ case "${target}" in
AC_CACHE_CHECK(for .previous assembler directive,
libc_cv_asm_previous_directive, [dnl
- libc_cv_asm_previous_directive=no
cat > conftest.s <<EOF
.section foo_section
.previous
EOF
if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
- libc_cv_asm_previous_directive=yes
AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
fi
rm -f conftest*])
AC_CACHE_CHECK(for .popsection assembler directive,
libc_cv_asm_popsection_directive, [dnl
- libc_cv_asm_popsection_directive=no
cat > conftest.s <<EOF
.pushsection foo_section
.popsection
EOF
if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
- libc_cv_asm_popsection_directive=yes
AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
fi
rm -f conftest*])
AC_CACHE_CHECK(for section attributes,
libc_cv_section_attributes, [dnl
- libc_cv_section_attributes=no
cat > conftest.c <<EOF
int secttest __attribute__ ((section (".gnu.warning.secttest"))) = 10;
int main() {}
EOF
if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.c 1>&AC_FD_CC); then
- libc_cv_section_attributes=yes
AC_DEFINE(HAVE_SECTION_ATTRIBUTES)
fi
rm -f conftest*])
;;
esac
-AC_CACHE_CHECK(for symbol prefix, libc_symbol_prefix, [dnl
+AC_CACHE_CHECK(for function prefix, libc_dollar_prefix, [dnl
cat > conftest.c <<\EOF
foo () { }
EOF
dnl
-libc_symbol_prefix=none
if AC_TRY_COMMAND([${CC-cc} -S conftest.c -o - | fgrep "\$foo" > /dev/null]);
then
- libc_symbol_prefix='$'
+ libc_dollar_prefix=yes
else
- if AC_TRY_COMMAND([${CC-cc} -S conftest.c -o - | fgrep "_foo" > /dev/null]);
- then
- libc_symbol_prefix=_
- fi
+ libc_dollar_prefix=no
fi
rm -f conftest* ])
-if test $libc_symbol_prefix != none; then
- AC_DEFINE_UNQUOTED(__SYMBOL_PREFIX, "$libc_symbol_prefix")
+if test $libc_dollar_prefix = yes ; then
+ AC_DEFINE(__SYMBOL_PREFIX, "$")
else
AC_DEFINE(__SYMBOL_PREFIX, "")
fi
diff --git a/libgloss/libnosys/readlink.c b/libgloss/libnosys/readlink.c
deleted file mode 100644
index 7df253c40..000000000
--- a/libgloss/libnosys/readlink.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Stub version of readlink.
- */
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include <sys/types.h>
-#undef errno
-extern int errno;
-#include "warning.h"
-
-int
-_DEFUN (_readlink, (path, buf, bufsize),
- const char *path _AND
- char *buf _AND
- size_t bufsize)
-{
- errno = ENOSYS;
- return -1;
-}
-
-stub_warning(_readlink)
diff --git a/libgloss/libnosys/symlink.c b/libgloss/libnosys/symlink.c
deleted file mode 100644
index d9e29f2e4..000000000
--- a/libgloss/libnosys/symlink.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Stub version of symlink.
- */
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#undef errno
-extern int errno;
-#include "warning.h"
-
-int
-_DEFUN (_symlink, (path1, path2),
- const char *path1 _AND
- const char *path2)
-{
- errno = ENOSYS;
- return -1;
-}
-
-stub_warning(_symlink)
diff --git a/libgloss/libnosys/warning.h b/libgloss/libnosys/warning.h
index 9232a9244..2c2998250 100644
--- a/libgloss/libnosys/warning.h
+++ b/libgloss/libnosys/warning.h
@@ -7,19 +7,19 @@
/* We want the .gnu.warning.SYMBOL section to be unallocated. */
# ifdef HAVE_ASM_PREVIOUS_DIRECTIVE
# define __make_section_unallocated(section_string) \
- asm(".section " section_string "\n .previous");
+ asm(".section " section_string "; .previous");
# elif defined (HAVE_ASM_POPSECTION_DIRECTIVE)
# define __make_section_unallocated(section_string) \
- asm(".pushsection " section_string "\n .popsection");
+ asm(".pushsection " section_string "; .popsection");
# else
# define __make_section_unallocated(section_string)
# endif
# ifdef HAVE_SECTION_ATTRIBUTES
# define link_warning(symbol, msg) \
+ __make_section_unallocated (".gnu.warning." #symbol) \
static const char __evoke_link_warning_##symbol[] \
- __attribute__ ((section (".gnu.warning." __SYMBOL_PREFIX #symbol), \
- __used__)) = msg;
+ __attribute__ ((section (".gnu.warning." #symbol))) = msg;
# else
# define link_warning(symbol, msg)
# endif
@@ -35,10 +35,9 @@
# define link_warning(symbol, msg)
#endif
-/* A canned warning for sysdeps/stub functions.
- The GNU linker prepends a "warning: " string. */
+/* A canned warning for sysdeps/stub functions. */
#define stub_warning(name) \
link_warning (name, \
- #name " is not implemented and will always fail")
+ "warning: " #name " is not implemented and will always fail")
#endif /* __WARNING_H__ */
diff --git a/libgloss/m32c/Makefile.in b/libgloss/m32c/Makefile.in
deleted file mode 100644
index eb00aae00..000000000
--- a/libgloss/m32c/Makefile.in
+++ /dev/null
@@ -1,193 +0,0 @@
-# Copyright (c) 2005 Red Hat Inc
-#
-# The authors hereby grant permission to use, copy, modify, distribute,
-# and license this software and its documentation for any purpose, provided
-# that existing copyright notices are retained in all copies and that this
-# notice is included verbatim in any distributions. No written agreement,
-# license, or royalty fee is required for any of the authorized uses.
-# Modifications to this software may be copyrighted by their authors
-# and need not follow the licensing terms described here, provided that
-# the new terms are clearly indicated on the first page of each file where
-# they apply.
-
-# Makefile for libgloss/m32c.
-
-VPATH = @srcdir@
-srcdir = @srcdir@
-objdir = .
-srcroot = $(srcdir)/../..
-objroot = $(objdir)/../..
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-host_alias = @host_alias@
-target_alias = @target_alias@
-
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(exec_prefix)/$(target_alias)
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-MULTIDO = true
-MULTICLEAN = true
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-SHELL = /bin/sh
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-AR_FLAGS = rc
-
-OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
- then echo ${objroot}/../binutils/objdump ; \
- else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
-OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
- then echo ${objroot}/../binutils/objcopy ; \
- else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
-
-SCRIPTS = r8c.ld m16c.ld m32cm.ld m32c.ld m16cmon.ld m32cmon.ld sim8.ld sim16.ld sim24.ld
-CRT = crt0.o crtn.o
-SIM_BSP = libsim.a
-LIBNOSYS = ../libnosys/libnosys.a
-SIM_OBJS = \
- sbrk.o \
- heaptop.o \
- exit.o \
- open.o \
- close.o \
- read.o \
- write.o \
- lseek.o \
- unlink.o \
- getpid.o \
- kill.o \
- fstat.o \
- argvlen.o \
- argv.o \
- chdir.o \
- stat.o \
- chmod.o \
- utime.o \
- time.o \
- gettimeofday.o \
- times.o \
- link.o \
- isatty.o \
- abort.o
-
-
-#### Host specific Makefile fragment comes in here.
-@host_makefile_frag@
-
-
-# Override .S.o rule to pass assembler debugging flags
-.S.o:
- $(CC) -Wa,-gdwarf2 -Wa,-I$(srcdir) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $<
-
-all: $(CRT) $(SIM_BSP) $(SCRIPTS)
-
-$(SIM_BSP): $(SIM_OBJS)
- $(AR) $(ARFLAGS) $@ $?
- $(RANLIB) $@
-
-# genscript parameters: srcdir name ramstart ramsize romstart romsize vecprefix
-
-GDEP = $(srcdir)/m32c.tmpl $(srcdir)/genscript Makefile
-GS = $(SHELL) $(srcdir)/genscript $(srcdir)
-
-# NOTE: The simulators and monitors reserve the following locations
-# for themselves, so we skip them:
-# R8C/M16C: 0x400-0x4ff 0x0ff600-0x0ffcff
-# M32C: 0x400-0x4ff 0xfff600-0xfffcff
-
-r8c.ld : $(GDEP)
- $(GS) r8c 0x500 0x300 0xc000 0x3f24 0xff
-
-m16c.ld : $(GDEP)
- $(GS) m16c 0x500 0x4f00 0xc0000 0x3f600 0xfff
-
-m32cm.ld : $(GDEP)
- $(GS) m32cm 0x500 0x2700 0xfe0000 0x01f600 0xffff
-
-m32c.ld : $(GDEP)
- $(GS) m32c 0x500 0x7b00 0xf80000 0x07f600 0xffff
-
-
-m16cmon.ld : $(GDEP)
- $(GS) m16cmon 0x400 0x100 0xff600 0x800 0xfff
-
-m32cmon.ld : $(GDEP)
- $(GS) m32cmon 0x400 0x100 0xfff600 0x800 0xffff
-
-
-sim8.ld : $(GDEP)
- $(GS) sim8 0x500 0xf624 0 0 0xff
-
-sim16.ld : $(GDEP)
- $(GS) sim16 0x500 0xf700 0x20000 0x80000 0xfff
-
-sim24.ld : $(GDEP)
- $(GS) sim24 0x200000 0x800000 0 0 0xffff
-
-# Dependencies
-
-SDEPS = $(srcdir)/m32csys.h $(srcdir)/../syscall.h
-
-abort.o : $(SDEPS)
-argv.o : $(SDEPS)
-argvlen.o : $(SDEPS)
-chdir.o : $(SDEPS)
-chmod.o : $(SDEPS)
-close.o : $(SDEPS)
-exit.o : $(SDEPS)
-fstat.o : $(SDEPS)
-getpid.o : $(SDEPS)
-gettimeofday.o : $(SDEPS)
-heaptop.o : $(SDEPS)
-kill.o : $(SDEPS)
-link.o : $(SDEPS)
-lseek.o : $(SDEPS)
-open.o : $(SDEPS)
-read.o : $(SDEPS)
-stat.o : $(SDEPS)
-time.o : $(SDEPS)
-times.o : $(SDEPS)
-unlink.o : $(SDEPS)
-utime.o : $(SDEPS)
-write.o : $(SDEPS)
-
-install: $(CRT) $(SIM_BSP) $(SCRIPTS)
- for c in $(CRT) $(SIM_BSP); do \
- $(INSTALL_DATA) $$c $(tooldir)/lib${MULTISUBDIR}/$$c ;\
- done
- for c in $(SCRIPTS); do \
- $(INSTALL_DATA) $$c $(tooldir)/lib${MULTISUBDIR}/$$c ;\
- done
-
-clean mostlyclean:
- rm -f *.o *.a
-
-distclean maintainer-clean realclean: clean
- rm -f Makefile config.cache config.log config.status
-
-.PHONY: info dvi doc install-info clean-info
-info doc dvi:
-install-info:
-clean-info:
-
-Makefile: Makefile.in config.status @host_makefile_frag_path@
- $(SHELL) config.status
-
-config.status: configure
- $(SHELL) config.status --recheck
diff --git a/libgloss/m32c/abort.S b/libgloss/m32c/abort.S
deleted file mode 100644
index 41d2942d5..000000000
--- a/libgloss/m32c/abort.S
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
- .global _abort
-_abort:
- /* This is for debuggers. The simulator stops here too. */
- brk
-
- /* Else, fall back on the simulator's "kill me" option. */
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
- mov.w #42,r1
-#else
- mov.w #42,r0
-#endif
-
- SYSCALL(SYS_kill)
-
- /* Else, exit. */
- jmp.a __exit
diff --git a/libgloss/m32c/argv.S b/libgloss/m32c/argv.S
deleted file mode 100644
index 850964cf2..000000000
--- a/libgloss/m32c/argv.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(argv)
diff --git a/libgloss/m32c/argvlen.S b/libgloss/m32c/argvlen.S
deleted file mode 100644
index 073c69be5..000000000
--- a/libgloss/m32c/argvlen.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(argvlen)
diff --git a/libgloss/m32c/chdir.S b/libgloss/m32c/chdir.S
deleted file mode 100644
index a68aeb259..000000000
--- a/libgloss/m32c/chdir.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(chdir)
diff --git a/libgloss/m32c/chmod.S b/libgloss/m32c/chmod.S
deleted file mode 100644
index 7fc14c9a7..000000000
--- a/libgloss/m32c/chmod.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(chmod)
diff --git a/libgloss/m32c/close.S b/libgloss/m32c/close.S
deleted file mode 100644
index ae6b63c98..000000000
--- a/libgloss/m32c/close.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(close)
diff --git a/libgloss/m32c/configure b/libgloss/m32c/configure
deleted file mode 100755
index 5d272c9f8..000000000
--- a/libgloss/m32c/configure
+++ /dev/null
@@ -1,1204 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=crt0.S
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-ac_aux_dir=
-for ac_dir in $libgloss_topdir $srcdir/$libgloss_topdir; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $libgloss_topdir $srcdir/$libgloss_topdir" 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:587: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:608: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:626: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:680: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:744: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:774: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:823: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:832: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:847: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-AS=${AS-as}
-
-AR=${AR-ar}
-
-LD=${LD-ld}
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:884: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-host_makefile_frag_path=$host_makefile_frag
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@LD@%$LD%g
-s%@RANLIB@%$RANLIB%g
-s%@host_makefile_frag_path@%$host_makefile_frag_path%g
-/@host_makefile_frag@/r $host_makefile_frag
-s%@host_makefile_frag@%%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-. ${libgloss_topdir}/config-ml.in
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/libgloss/m32c/configure.in b/libgloss/m32c/configure.in
deleted file mode 100644
index 877f6a06e..000000000
--- a/libgloss/m32c/configure.in
+++ /dev/null
@@ -1,90 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.5)dnl
-AC_INIT(crt0.S)
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-AC_CONFIG_AUX_DIR($libgloss_topdir)
-
-AC_CANONICAL_SYSTEM
-AC_ARG_PROGRAM
-
-AC_PROG_INSTALL
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AS=${AS-as}
-AC_SUBST(AS)
-AR=${AR-ar}
-AC_SUBST(AR)
-LD=${LD-ld}
-AC_SUBST(LD)
-AC_PROG_RANLIB
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-dnl We have to assign the same value to other variables because autoconf
-dnl doesn't provide a mechanism to substitute a replacement keyword with
-dnl arbitrary data or pathnames.
-dnl
-host_makefile_frag_path=$host_makefile_frag
-AC_SUBST(host_makefile_frag_path)
-AC_SUBST_FILE(host_makefile_frag)
-
-AC_OUTPUT(Makefile,
-. ${libgloss_topdir}/config-ml.in,
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-)
diff --git a/libgloss/m32c/crt0.S b/libgloss/m32c/crt0.S
deleted file mode 100644
index 9b29ffc9b..000000000
--- a/libgloss/m32c/crt0.S
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
-#define A16
-#define A(n,w) n
-#define W w
-#define ADDR .2byte
-#define ALIGN 1
-#else
-#define A24
-#define A(n,w) w
-#define W l
-#define ADDR .4byte
-#define ALIGN 2
-#endif
-
- .text
-
- .global _start
-_start:
-.LFB2:
- fset U /* User stack */
- ldc #__stack,sp
-
-#ifdef A16
- mov.b #%hi8(__romdatastart),r1h
- mov.w #%lo16(__romdatastart),a0
- mov.w #__datastart,a1
-#else
- mov.l #__romdatastart,a0
- mov.l #__datastart,a1
-#endif
- mov.w #__romdatacopysize,r3
- shl.w #-1,r3
- smovf.w
-
-#ifdef A16
- mov.w #__bssstart,a1
-#else
- mov.l #__bssstart,a1
-#endif
- mov.w #__bsssize,r3
- shl.w #-1,r3
- mov.w #0,r0
- sstr.w
-
- jsr.a __m32c_init
-
- jsr.a _main
-.LFE2:
-
-#ifdef A24
- /* rv in r0, ok for arg0 */
-#else
- mov.w r0,r1
-#endif
-
- jsr.a _exit
-
- .text
-
- .global _m32c_run_preinit_array
- .type _m32c_run_preinit_array,@function
-_m32c_run_preinit_array:
- mov.W #__preinit_array_start,a0
- mov.W #__preinit_array_end,a1
- jmp.w _m32c_run_inilist
-
- .global _m32c_run_init_array
- .type _m32c_run_init_array,@function
-_m32c_run_init_array:
- mov.W #__init_array_start,a0
- mov.W #__init_array_end,a1
- jmp.w _m32c_run_inilist
-
- .global _m32c_run_fini_array
- .type _m32c_run_fini_array,@function
-_m32c_run_fini_array:
- mov.W #__fini_array_start,a0
- mov.W #__fini_array_end,a1
- /* fall through */
-
-_m32c_run_inilist:
-next_inilist:
- cmp.W a0,a1
- jeq done_inilist
- pushm a0,a1
- mov.W [a0],a0
-#ifdef A16
- mov.b:s #0,a1 /* zero extends */
- jsri.a a1a0
-#else
- jsri.a a0
-#endif
- popm a0,a1
- add.W A(#2,#4),a0
- jmp.b next_inilist
-done_inilist:
- rts
-
- .section .init,"ax",@progbits
-
- .global __m32c_init
-__m32c_init:
- enter #0
-
- .section .fini,"ax",@progbits
-
- .global __m32c_fini
-__m32c_fini:
- enter #0
- jsr.a _m32c_run_fini_array
-
-
-;;; Provide Dwarf unwinding information that will help GDB stop
-;;; backtraces at the right place. This is stolen from assembly
-;;; code generated by GCC with -dA.
- .section .debug_frame,"",@progbits
-.Lframe0:
- .4byte .LECIE0-.LSCIE0 ; Length of Common Information Entry
-.LSCIE0:
- .4byte 0xffffffff ; CIE Identifier Tag
- .byte 0x1 ; CIE Version
- .ascii "\0" ; CIE Augmentation
- .uleb128 0x1 ; CIE Code Alignment Factor
- .sleb128 -1 ; CIE Data Alignment Factor
- .byte 0xd ; CIE RA Column
- .byte 0xc ; DW_CFA_def_cfa
- .uleb128 0xc
- .uleb128 0x3
- .byte 0x8d ; DW_CFA_offset, column 0xd
- .uleb128 0x3
- .p2align ALIGN
-.LECIE0:
-.LSFDE0:
- .4byte .LEFDE0-.LASFDE0 ; FDE Length
-.LASFDE0:
- .4byte .Lframe0 ; FDE CIE offset
- ADDR .LFB2 ; FDE initial location
- ADDR .LFE2-.LFB2 ; FDE address range
- .byte 0xf ; DW_CFA_def_cfa_expression
- .uleb128 1 ; length of expression
- .byte 0x30 ; DW_OP_lit0
- .p2align ALIGN
-.LEFDE0:
-
- .text
diff --git a/libgloss/m32c/crtn.S b/libgloss/m32c/crtn.S
deleted file mode 100644
index d4e86b8a5..000000000
--- a/libgloss/m32c/crtn.S
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
-#define A16
-#define A(n,w) n
-#define W w
-#else
-#define A24
-#define A(n,w) w
-#define W l
-#endif
-
- .section .init,"ax",@progbits
- jsr.a _m32c_run_preinit_array
- jsr.a _m32c_run_init_array
- exitd
- .global __m32c_init_end
-__m32c_init_end:
-
- .section .fini,"ax",@progbits
-
- exitd
- .global __m32c_fini_end
-__m32c_fini_end:
-
- .text
-
diff --git a/libgloss/m32c/exit.S b/libgloss/m32c/exit.S
deleted file mode 100644
index e27d73d30..000000000
--- a/libgloss/m32c/exit.S
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
- .global __exit
-__exit:
- push.w r1
- jsr.a __m32c_fini
- pop.w r1
- SYSCALL(SYS_exit)
diff --git a/libgloss/m32c/fstat.S b/libgloss/m32c/fstat.S
deleted file mode 100644
index 44815b17e..000000000
--- a/libgloss/m32c/fstat.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(fstat)
diff --git a/libgloss/m32c/genscript b/libgloss/m32c/genscript
deleted file mode 100644
index 665778e64..000000000
--- a/libgloss/m32c/genscript
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/bin/sh
-
-# Copyright (c) 2005 Red Hat Incorporated.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-#
-# The name of Red Hat Incorporated may not be used to endorse
-# or promote products derived from this software without specific
-# prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-srcdir="$1"
-name="$2"
-ramstart="$3"
-ramsize="$4"
-romstart="$5"
-romsize="$6"
-vecprefix="$7"
-
-sedcmd="s/RAMSTART/$ramstart/g; s/RAMSIZE/$ramsize/g"
-sedcmd="$sedcmd; s/ROMSTART/$romstart/g; s/ROMSIZE/$romsize/g"
-
-# .rodata can be left with .text
-rotext='/IF_ROCOPY/d'
-# .rodata needs to be with .data
-rodata='/IF_ROROM/d'
-
-# All sections are put in one region
-simram='s/LOWROM/RAM/g; s/= .*SIZEOF.*/= 0);/; s/AT>ROM//g'
-oneram='s/> ROM/> RAM/g;'
-# RW data needs to be copied to RAM
-rwonly='s/LOWROM/ROM/g; s/ SIZEOF(.rodata) + //g'
-# all data needs to be copied to RAM
-rocopy='s/LOWROM/RAM AT>ROM/g'
-
-case $name:$romstart in
- sim*:0 )
- # The r8c and m32c simulators have only a single memory region
- sedcmd="$sedcmd; $simram; $oneram; $rotext"
- ;;
- sim*:* )
- # This is most likely the m16c simulator
- sedcmd="$sedcmd; $simram; $rodata"
- ;;
- *:0x???? )
- # This is most likely the r8c chip
- sedcmd="$sedcmd; $rwonly; $rotext"
- ;;
- m32*:* )
- sedcmd="$sedcmd; $rwonly; $rotext"
- ;;
- *:* )
- sedcmd="$sedcmd; $rocopy; $rodata"
- ;;
-esac
-sedcmd="$sedcmd; /ORIGIN = 0,/d"
-
-sedcmd="$sedcmd; s/VECSTART/${vecprefix}dc/; s/RESETSTART/${vecprefix}fc/"
-
-sed "$sedcmd" < ${srcdir}/m32c.tmpl > ${name}.ld
diff --git a/libgloss/m32c/getpid.S b/libgloss/m32c/getpid.S
deleted file mode 100644
index 00b5d391e..000000000
--- a/libgloss/m32c/getpid.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(getpid)
diff --git a/libgloss/m32c/gettimeofday.S b/libgloss/m32c/gettimeofday.S
deleted file mode 100644
index 8537a1adb..000000000
--- a/libgloss/m32c/gettimeofday.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(gettimeofday)
diff --git a/libgloss/m32c/heaptop.S b/libgloss/m32c/heaptop.S
deleted file mode 100644
index 36c95dfad..000000000
--- a/libgloss/m32c/heaptop.S
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-#define SYS__set_heaptop 11
-
-S(_set_heaptop)
diff --git a/libgloss/m32c/isatty.S b/libgloss/m32c/isatty.S
deleted file mode 100644
index 490c8cbd3..000000000
--- a/libgloss/m32c/isatty.S
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
- .global _isatty
-_isatty:
- mov.w #1,r0
- rts
diff --git a/libgloss/m32c/kill.S b/libgloss/m32c/kill.S
deleted file mode 100644
index 61d846947..000000000
--- a/libgloss/m32c/kill.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(kill)
diff --git a/libgloss/m32c/link.S b/libgloss/m32c/link.S
deleted file mode 100644
index 08efad8c7..000000000
--- a/libgloss/m32c/link.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(link)
diff --git a/libgloss/m32c/lseek.S b/libgloss/m32c/lseek.S
deleted file mode 100644
index 9026e9219..000000000
--- a/libgloss/m32c/lseek.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(lseek)
diff --git a/libgloss/m32c/m32c.tmpl b/libgloss/m32c/m32c.tmpl
deleted file mode 100644
index b06ce4ff7..000000000
--- a/libgloss/m32c/m32c.tmpl
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-/* Default linker script, for normal executables */
-OUTPUT_FORMAT("elf32-m32c", "elf32-m32c",
- "elf32-m32c")
-OUTPUT_ARCH(m32c)
-ENTRY(_start)
-/* Do we need any of these for elf?
- __DYNAMIC = 0; */
-MEMORY {
- RAM (w) : ORIGIN = RAMSTART, LENGTH = RAMSIZE
- ROM (r) : ORIGIN = ROMSTART, LENGTH = ROMSIZE
- VEC (r) : ORIGIN = VECSTART, LENGTH = 32
- RESETVEC (r) : ORIGIN = RESETSTART, LENGTH = 4
-}
-SECTIONS
-{
- /* There are three cases we care about: First, RW data that must be
- in the low 64k. This will always be copied from ROM. Second, RO
- data that must be in the low 64k. This may be copied from ROM if
- the ROM is above 64k. Third, anything that does not need to be
- in the first 64k. Chips normally only have two memory regions;
- low ram and either high or low rom. We map the low rom needs
- into one of the actual regions. */
-
- /* .text goes first so the rom image of ram data will follow it. */
- .text :
- {
- *(.text .stub .text.* .gnu.linkonce.t.*)
- KEEP (*(.text.*personality*))
- /* .gnu.warning sections are handled specially by elf32.em. */
- *(.gnu.warning)
- *(.interp .hash .dynsym .dynstr .gnu.version*)
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- . = ALIGN(2);
- PROVIDE(__romdatastart = .); /* IF_ROCOPY */
- } > ROM =0
-
- /* rodata will either be part of data, or will be in low rom. So we
- might be spanning it, or we might not. This lets us include it
- in our calculations when appropriate. */
-
- .rodata : {
- . = ALIGN(2);
- PROVIDE(__datastart = .); /* IF_ROCOPY */
- *(.plt)
- KEEP (*(.init))
- KEEP (*(.fini))
- *(.rodata .rodata.* .gnu.linkonce.r.*)
- *(.rodata1)
- *(.eh_frame_hdr)
- KEEP (*(.eh_frame))
- KEEP (*(.gcc_except_table)) *(.gcc_except_table.*)
- . = ALIGN(2);
- PROVIDE(__romdatastart = .); /* IF_ROROM */
- } > LOWROM
-
- .data : {
- . = ALIGN(32 / 8);
- PROVIDE (__datastart = .); /* IF_ROROM */
- PROVIDE (__preinit_array_start = .);
- KEEP (*(.preinit_array))
- PROVIDE (__preinit_array_end = .);
- PROVIDE (__init_array_start = .);
- KEEP (*(.init_array))
- PROVIDE (__init_array_end = .);
- PROVIDE (__fini_array_start = .);
- KEEP (*(.fini_array))
- PROVIDE (__fini_array_end = .);
-
- /* gcc uses crtbegin.o to find the start of
- the constructors, so we make sure it is
- first. Because this is a wildcard, it
- doesn't matter if the user does not
- actually link against crtbegin.o; the
- linker won't look for a file to match a
- wildcard. The wildcard also means that it
- doesn't matter which directory crtbegin.o
- is in. */
- KEEP (*crtbegin*.o(.ctors))
- /* We don't want to include the .ctor section from
- from the crtend.o file until after the sorted ctors.
- The .ctor section from the crtend file contains the
- end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
-
- KEEP (*crtbegin*.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
-
- KEEP (*(.jcr))
- *(.data.rel.ro.local) *(.data.rel.ro*)
- *(.dynamic)
-
- *(.data .data.* .gnu.linkonce.d.*)
- KEEP (*(.gnu.linkonce.d.*personality*))
- SORT(CONSTRUCTORS)
- *(.data1)
- *(.got.plt) *(.got)
-
- . = ALIGN(2);
- _edata = .;
- PROVIDE (edata = .);
- PROVIDE (__dataend = .);
- } > RAM AT>ROM
-
- /* Note that __romdatacopysize may be ZERO for the simulator, which
- knows how to intialize RAM directly. It should ONLY be used for
- copying data from ROM to RAM; if you need to know the size of the
- data section, subtract the end symbol from the start symbol. */
- /* Note that crt0 assumes this is even; all the start/stop symbols
- are also assumed word-aligned. */
- PROVIDE (__romdatacopysize = SIZEOF(.rodata) + SIZEOF(.data));
-
- .bss : {
- . = ALIGN(2);
- PROVIDE (__bssstart = .);
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- . = ALIGN(2);
- PROVIDE (__bssend = .);
- _end = .;
- PROVIDE (end = .);
- } > RAM
- PROVIDE (__bsssize = SIZEOF(.bss));
-
- .stack (RAMSTART + RAMSIZE - 2) :
- {
- PROVIDE (__stack = .);
- *(.stack)
- }
-
- .vec : {
- *(.vec)
- } > VEC
- .resetvec : {
- *(.resetvec)
- } > RESETVEC
-
- /* The rest are all not normally part of the runtime image. */
-
- /* Stabs debugging sections. */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- /* DWARF debug sections.
- Symbols in the DWARF debugging sections are relative to the beginning
- of the section so we begin them at 0. */
- /* DWARF 1 */
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- /* GNU DWARF 1 extensions */
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- /* DWARF 1.1 and DWARF 2 */
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- /* DWARF 2 */
- .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- /* SGI/MIPS DWARF 2 extensions */
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
- /DISCARD/ : { *(.note.GNU-stack) }
-}
diff --git a/libgloss/m32c/m32csys.h b/libgloss/m32c/m32csys.h
deleted file mode 100644
index e8b9b5f5d..000000000
--- a/libgloss/m32c/m32csys.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "syscall.h"
-
-/* Both the simulators and monitors reserve RAM areas 0x400 through
- 0x4ff for their internal use. We use one of those memory locations
- as our system call trap. */
-
-#define POUND #
-#define SYSCALL(N) mov.b POUND N,0x400
-
-#define SYS__exit SYS_exit
-
-#define S(n) _##n: .global _##n | SYSCALL(SYS_##n) | rts
diff --git a/libgloss/m32c/open.S b/libgloss/m32c/open.S
deleted file mode 100644
index a64585111..000000000
--- a/libgloss/m32c/open.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(open)
diff --git a/libgloss/m32c/read.S b/libgloss/m32c/read.S
deleted file mode 100644
index 0aa4f131e..000000000
--- a/libgloss/m32c/read.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(read)
diff --git a/libgloss/m32c/sbrk.c b/libgloss/m32c/sbrk.c
deleted file mode 100644
index 69375aa42..000000000
--- a/libgloss/m32c/sbrk.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-extern void _set_heaptop(void *ptr);
-
-char *
-sbrk(int adj)
-{
- extern char end;
- static char *heap = &end;
- char *rv = heap;
-
- heap += adj;
- _set_heaptop(heap);
- return rv;
-}
diff --git a/libgloss/m32c/stat.S b/libgloss/m32c/stat.S
deleted file mode 100644
index a96dcbdbc..000000000
--- a/libgloss/m32c/stat.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(stat)
diff --git a/libgloss/m32c/time.S b/libgloss/m32c/time.S
deleted file mode 100644
index 61f5dd5cd..000000000
--- a/libgloss/m32c/time.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(time)
diff --git a/libgloss/m32c/times.S b/libgloss/m32c/times.S
deleted file mode 100644
index bf77a563f..000000000
--- a/libgloss/m32c/times.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(times)
diff --git a/libgloss/m32c/unlink.S b/libgloss/m32c/unlink.S
deleted file mode 100644
index 8dfb05938..000000000
--- a/libgloss/m32c/unlink.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(unlink)
diff --git a/libgloss/m32c/utime.S b/libgloss/m32c/utime.S
deleted file mode 100644
index b244a2149..000000000
--- a/libgloss/m32c/utime.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(utime)
diff --git a/libgloss/m32c/write.S b/libgloss/m32c/write.S
deleted file mode 100644
index 273eb470d..000000000
--- a/libgloss/m32c/write.S
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#include "m32csys.h"
-
-S(write)
diff --git a/libgloss/m68hc11/sim-valid-m68hc11.ld b/libgloss/m68hc11/sim-valid-m68hc11.ld
index 82e3b68fa..904b8d649 100644
--- a/libgloss/m68hc11/sim-valid-m68hc11.ld
+++ b/libgloss/m68hc11/sim-valid-m68hc11.ld
@@ -306,5 +306,4 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
}
diff --git a/libgloss/m68hc11/sim-valid-m68hc12.ld b/libgloss/m68hc11/sim-valid-m68hc12.ld
index 681bc6d47..17dea1d76 100644
--- a/libgloss/m68hc11/sim-valid-m68hc12.ld
+++ b/libgloss/m68hc11/sim-valid-m68hc12.ld
@@ -306,5 +306,4 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
}
diff --git a/libgloss/m68k/Makefile.in b/libgloss/m68k/Makefile.in
index 8faf5ffcf..5df402288 100644
--- a/libgloss/m68k/Makefile.in
+++ b/libgloss/m68k/Makefile.in
@@ -123,8 +123,6 @@ IDPGDB_OBJS= leds.o idp-inbyte.o idp-gdb-outbyte.o mc68ec.o
DBUG_BSP= libdbug.a
DBUG_OBJS= dbug-exit.o dbug-inbyte.o dbug-outbyte.o
-CF_SCRIPTS= m5208evb.ld m5213evb.ld m5235evb.ld m5272c3.ld m5282evb.ld
-
# Host specific makefile fragment comes in here.
@host_makefile_frag@
@@ -132,7 +130,7 @@ CF_SCRIPTS= m5208evb.ld m5213evb.ld m5235evb.ld m5272c3.ld m5282evb.ld
# build a test program for each target board. Just trying to get
# it to link is a good test, so we ignore all the errors for now.
#
-all: ${SIM_CRT0} ${SIM_BSP} ${CRT0} ${BCC_BSP} ${IDP_BSP} ${IDPGDB_BSP} ${MVME135_BSP} ${MVME162_BSP} ${DBUG_BSP} ${CF_SCRIPTS}
+all: ${SIM_CRT0} ${SIM_BSP} ${CRT0} ${BCC_BSP} ${IDP_BSP} ${IDPGDB_BSP} ${MVME135_BSP} ${MVME162_BSP} ${DBUG_BSP}
#
# here's where we build the board support packages for each target
@@ -165,21 +163,6 @@ ${MVME162_BSP}: $(OBJS) ${MVME162_OBJS}
${AR} ${ARFLAGS} $@ $(OBJS) ${MVME162_OBJS}
${RANLIB} $@
-m5208evb.ld: dbug-cf.sc Makefile
- RAMSTART=1024M RAMSIZE=16M RAMDBUG=128K ${SHELL} $< > $@
-
-m5213evb.ld: dbug-cf.sc Makefile
- RAMSTART=512M RAMSIZE=32K RAMDBUG=8K ${SHELL} $< > $@
-
-m5235evb.ld: dbug-cf.sc Makefile
- RAMSTART=0M RAMSIZE=16M RAMDBUG=64K ${SHELL} $< > $@
-
-m5272c3.ld: dbug-cf.sc Makefile
- RAMSTART=0M RAMSIZE=4M RAMDBUG=128K ${SHELL} $< > $@
-
-m5282evb.ld: dbug-cf.sc Makefile
- RAMSTART=0M RAMSIZE=16M RAMDBUG=64K ${SHELL} $< > $@
-
leds.o: ${srcdir}/leds.c
$(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) -c $<
@@ -300,9 +283,6 @@ install:
$(INSTALL_PROGRAM) $(DBUG_BSP) $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$(DBUG_BSP)
$(INSTALL_DATA) ${srcdir}/sbc5204.ld $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/sbc5204.ld
$(INSTALL_DATA) ${srcdir}/sbc5206.ld $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/sbc5206.ld
- for script in $(CF_SCRIPTS) ; \
- do $(INSTALL_DATA) $$script $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$$script ; \
- done
# target specific makefile fragment comes in here.
@target_makefile_frag@
diff --git a/libgloss/m68k/bcc.ld b/libgloss/m68k/bcc.ld
index b9acfb365..65f6441ef 100644
--- a/libgloss/m68k/bcc.ld
+++ b/libgloss/m68k/bcc.ld
@@ -63,7 +63,7 @@ SECTIONS
{
.text :
{
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
__CTOR_LIST__ = .;
___CTOR_LIST__ = .;
@@ -77,7 +77,7 @@ SECTIONS
*(.dtors)
LONG(0)
__DTOR_END__ = .;
- *(.rodata .rodata.*)
+ *(.rodata)
*(.gcc_except_table)
. = ALIGN(0x2);
@@ -99,9 +99,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -110,7 +109,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/crt0.S b/libgloss/m68k/crt0.S
index 1aa0dd6bb..321b97f03 100644
--- a/libgloss/m68k/crt0.S
+++ b/libgloss/m68k/crt0.S
@@ -84,7 +84,7 @@ SYM (start):
subql IMM(1), d0
2:
clrb (a0)+
-#if !defined(__mcoldfire__)
+#if !defined(__mcoldfire__) && !defined(__mcf5200__)
dbra d0, 2b
clrw d0
subql IMM(1), d0
diff --git a/libgloss/m68k/dbug-cf.sc b/libgloss/m68k/dbug-cf.sc
deleted file mode 100644
index 0342ed1fd..000000000
--- a/libgloss/m68k/dbug-cf.sc
+++ /dev/null
@@ -1,112 +0,0 @@
-# a linker script template.
-# RAMSTART - start of board's ram
-# RAMSIZE - size of board's ram
-# RAMDBUG - bytes at start of RAM for DBUG use
-
-cat <<EOF
-STARTUP(crt0.o)
-OUTPUT_ARCH(m68k)
-/* DBUG loads SREC files */
-/*OUTPUT_FORMAT(srec)*/
-ENTRY(start)
-SEARCH_DIR(.)
-GROUP(-ldbug -lc -lgcc -ldbug)
-__DYNAMIC = 0;
-
-MEMORY
-{
- ram (rwx) : ORIGIN = ${RAMSTART} + ${RAMDBUG:-0},
- LENGTH = ${RAMSIZE} - ${RAMDBUG:-0}
-}
-
-PROVIDE (__stack = ${RAMSTART} + ${RAMSIZE});
-
-/*
- * Initalize some symbols to be zero so we can reference them in the
- * crt0 without core dumping. These functions are all optional, but
- * we do this so we can have our crt0 always use them if they exist.
- * This is so BSPs work better when using the crt0 installed gcc.
- * We have to initalize them twice, so we cover a.out (which prepends
- * an underscore) and coff object file formats.
- */
-PROVIDE (hardware_init_hook = 0);
-PROVIDE (_hardware_init_hook = 0);
-PROVIDE (software_init_hook = 0);
-PROVIDE (_software_init_hook = 0);
-/*
- * stick everything in ram (of course)
- */
-SECTIONS
-{
- .text :
- {
- CREATE_OBJECT_SYMBOLS
- *(.text .text.*)
-
- . = ALIGN(0x4);
- /* These are for running static constructors and destructors under ELF. */
- KEEP (*crtbegin.o(.ctors))
- KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
-
- *(.rodata .rodata.*)
-
- . = ALIGN(0x4);
- *(.gcc_except_table)
-
- . = ALIGN(0x4);
- *(.eh_frame)
-
- . = ALIGN(0x4);
- __INIT_SECTION__ = . ;
- LONG (0x4e560000) /* linkw %fp,#0 */
- *(.init)
- SHORT (0x4e5e) /* unlk %fp */
- SHORT (0x4e75) /* rts */
-
- . = ALIGN(0x4);
- __FINI_SECTION__ = . ;
- LONG (0x4e560000) /* linkw %fp,#0 */
- *(.fini)
- SHORT (0x4e5e) /* unlk %fp */
- SHORT (0x4e75) /* rts */
-
- _etext = .;
- *(.lit)
- } > ram
-
- .data :
- {
- *(.got.plt) *(.got)
- *(.shdata)
- *(.data .data.*)
- _edata = .;
- } > ram
-
- .bss :
- {
- . = ALIGN(0x4);
- __bss_start = . ;
- *(.shbss)
- *(.bss .bss.*)
- *(COMMON)
- _end = ALIGN (0x8);
- __end = _end;
- } > ram
-
- .stab 0 (NOLOAD) :
- {
- *(.stab)
- }
-
- .stabstr 0 (NOLOAD) :
- {
- *(.stabstr)
- }
-}
-EOF
diff --git a/libgloss/m68k/idp.ld b/libgloss/m68k/idp.ld
index 73597832d..db6d8c56d 100644
--- a/libgloss/m68k/idp.ld
+++ b/libgloss/m68k/idp.ld
@@ -77,7 +77,7 @@ SECTIONS
.text :
{
CREATE_OBJECT_SYMBOLS
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
/* These are for running static constructors and destructors under ELF. */
@@ -90,7 +90,7 @@ SECTIONS
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
- *(.rodata .rodata.*)
+ *(.rodata)
. = ALIGN(0x4);
*(.gcc_except_table)
@@ -118,9 +118,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -129,7 +128,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/idpgdb.ld b/libgloss/m68k/idpgdb.ld
index a8a13ee02..9d24e28cf 100644
--- a/libgloss/m68k/idpgdb.ld
+++ b/libgloss/m68k/idpgdb.ld
@@ -77,7 +77,7 @@ SECTIONS
.text :
{
CREATE_OBJECT_SYMBOLS
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
/* These are for running static constructors and destructors under ELF. */
@@ -90,7 +90,7 @@ SECTIONS
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
- *(.rodata .rodata.*)
+ *(.rodata)
. = ALIGN(0x4);
*(.gcc_except_table)
@@ -118,9 +118,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -129,7 +128,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/mvme135.ld b/libgloss/m68k/mvme135.ld
index fd52e4e3f..dba0dbe23 100644
--- a/libgloss/m68k/mvme135.ld
+++ b/libgloss/m68k/mvme135.ld
@@ -64,7 +64,7 @@ SECTIONS
{
.text :
{
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
__CTOR_LIST__ = .;
___CTOR_LIST__ = .;
@@ -78,7 +78,7 @@ SECTIONS
*(.dtors)
LONG(0)
__DTOR_END__ = .;
- *(.rodata .rodata.*)
+ *(.rodata)
*(.gcc_except_table)
. = ALIGN(0x2);
@@ -100,9 +100,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -111,7 +110,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/mvme162.ld b/libgloss/m68k/mvme162.ld
index 18d5f62d2..fd3ae1014 100644
--- a/libgloss/m68k/mvme162.ld
+++ b/libgloss/m68k/mvme162.ld
@@ -65,7 +65,7 @@ SECTIONS
{
.text :
{
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
__CTOR_LIST__ = .;
___CTOR_LIST__ = .;
@@ -79,7 +79,7 @@ SECTIONS
*(.dtors)
LONG(0)
__DTOR_END__ = .;
- *(.rodata .rodata.*)
+ *(.rodata)
*(.gcc_except_table)
. = ALIGN(0x2);
@@ -101,9 +101,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -112,7 +111,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/sbc5204.ld b/libgloss/m68k/sbc5204.ld
index da10fe811..4570b0e18 100644
--- a/libgloss/m68k/sbc5204.ld
+++ b/libgloss/m68k/sbc5204.ld
@@ -63,7 +63,7 @@ SECTIONS
{
.text :
{
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
__CTOR_LIST__ = .;
___CTOR_LIST__ = .;
@@ -77,7 +77,7 @@ SECTIONS
*(.dtors)
LONG(0)
__DTOR_END__ = .;
- *(.rodata .rodata.*)
+ *(.rodata)
*(.gcc_except_table)
. = ALIGN(0x2);
@@ -99,9 +99,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -110,7 +109,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/sbc5206.ld b/libgloss/m68k/sbc5206.ld
index e0707d8a2..d082a08d1 100644
--- a/libgloss/m68k/sbc5206.ld
+++ b/libgloss/m68k/sbc5206.ld
@@ -63,7 +63,7 @@ SECTIONS
{
.text :
{
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
__CTOR_LIST__ = .;
___CTOR_LIST__ = .;
@@ -77,7 +77,7 @@ SECTIONS
*(.dtors)
LONG(0)
__DTOR_END__ = .;
- *(.rodata .rodata.*)
+ *(.rodata)
*(.gcc_except_table)
. = ALIGN(0x2);
@@ -99,9 +99,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -110,7 +109,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/m68k/sim.ld b/libgloss/m68k/sim.ld
index 57a41d0cf..b44fd07b3 100644
--- a/libgloss/m68k/sim.ld
+++ b/libgloss/m68k/sim.ld
@@ -18,7 +18,7 @@ SECTIONS
.text :
{
CREATE_OBJECT_SYMBOLS
- *(.text .text.*)
+ *(.text)
. = ALIGN(0x4);
/* These are for running static constructors and destructors under ELF. */
@@ -31,7 +31,7 @@ SECTIONS
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
- *(.rodata .rodata.*)
+ *(.rodata)
. = ALIGN(0x4);
*(.gcc_except_table)
@@ -59,9 +59,8 @@ SECTIONS
.data :
{
- *(.got.plt) *(.got)
*(.shdata)
- *(.data .data.*)
+ *(.data)
_edata = .;
} > ram
@@ -70,7 +69,7 @@ SECTIONS
. = ALIGN(0x4);
__bss_start = . ;
*(.shbss)
- *(.bss .bss.*)
+ *(.bss)
*(COMMON)
_end = ALIGN (0x8);
__end = _end;
diff --git a/libgloss/mcore/elf-cmb.ld b/libgloss/mcore/elf-cmb.ld
index 611e6b972..591aa9de8 100644
--- a/libgloss/mcore/elf-cmb.ld
+++ b/libgloss/mcore/elf-cmb.ld
@@ -180,7 +180,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mips/array.ld b/libgloss/mips/array.ld
index fc4cc8fc2..5c99bcb3c 100644
--- a/libgloss/mips/array.ld
+++ b/libgloss/mips/array.ld
@@ -84,17 +84,17 @@ SECTIONS
. = 0x80020000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -140,13 +140,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
_gp = ALIGN(16) + 0x8000;
.lit8 : {
@@ -158,22 +158,18 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
edata = .;
_edata = .;
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
end = .;
diff --git a/libgloss/mips/cfe.ld b/libgloss/mips/cfe.ld
index 58e8014d7..a251f8e91 100644
--- a/libgloss/mips/cfe.ld
+++ b/libgloss/mips/cfe.ld
@@ -36,15 +36,15 @@ SECTIONS
PROVIDE (eprol = .);
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
}
.init : {
- KEEP (*(.init))
+ *(.init)
}
.fini : {
- KEEP (*(.fini))
+ *(.fini)
}
.rel.sdata : {
PROVIDE (__runtime_reloc_start = .);
@@ -95,13 +95,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -115,7 +115,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
PROVIDE (edata = .);
@@ -123,15 +123,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -163,7 +159,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/ddb-kseg0.ld b/libgloss/mips/ddb-kseg0.ld
index db3759ea6..a3b2d5b4f 100644
--- a/libgloss/mips/ddb-kseg0.ld
+++ b/libgloss/mips/ddb-kseg0.ld
@@ -37,7 +37,7 @@ SECTIONS
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
@@ -89,13 +89,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -109,7 +109,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -117,15 +117,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -156,7 +152,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/ddb.ld b/libgloss/mips/ddb.ld
index 028078353..c877d9240 100644
--- a/libgloss/mips/ddb.ld
+++ b/libgloss/mips/ddb.ld
@@ -37,7 +37,7 @@ SECTIONS
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
@@ -89,13 +89,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -109,7 +109,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -117,15 +117,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -156,7 +152,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/dve.ld b/libgloss/mips/dve.ld
index 073d1e9ca..0e91b5ddc 100644
--- a/libgloss/mips/dve.ld
+++ b/libgloss/mips/dve.ld
@@ -33,17 +33,17 @@ SECTIONS
. = 0xA0040000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -89,13 +89,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -110,7 +110,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -118,15 +118,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -157,7 +153,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/idt.ld b/libgloss/mips/idt.ld
index e0f87a792..fb06bd8b2 100644
--- a/libgloss/mips/idt.ld
+++ b/libgloss/mips/idt.ld
@@ -37,15 +37,15 @@ SECTIONS
PROVIDE (eprol = .);
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
}
.init : {
- KEEP (*(.init))
+ *(.init)
}
.fini : {
- KEEP (*(.fini))
+ *(.fini)
}
.rel.sdata : {
PROVIDE (__runtime_reloc_start = .);
@@ -96,13 +96,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -116,7 +116,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
PROVIDE (edata = .);
@@ -124,15 +124,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -163,7 +159,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/idt32.ld b/libgloss/mips/idt32.ld
index b5bba04b8..9e6a651cb 100644
--- a/libgloss/mips/idt32.ld
+++ b/libgloss/mips/idt32.ld
@@ -38,15 +38,15 @@ SECTIONS
PROVIDE (eprol = .);
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
}
.init : {
- KEEP (*(.init))
+ *(.init)
}
.fini : {
- KEEP (*(.fini))
+ *(.fini)
}
.rel.sdata : {
PROVIDE (__runtime_reloc_start = .);
@@ -98,13 +98,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -118,7 +118,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
PROVIDE (edata = .);
@@ -126,15 +126,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -165,7 +161,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/idt64.ld b/libgloss/mips/idt64.ld
index 4a400ae73..3042e7c38 100644
--- a/libgloss/mips/idt64.ld
+++ b/libgloss/mips/idt64.ld
@@ -38,15 +38,15 @@ SECTIONS
PROVIDE (eprol = .);
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
}
.init : {
- KEEP (*(.init))
+ *(.init)
}
.fini : {
- KEEP (*(.fini))
+ *(.fini)
}
.rel.sdata : {
PROVIDE (__runtime_reloc_start = .);
@@ -97,13 +97,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -117,7 +117,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
PROVIDE (edata = .);
@@ -125,15 +125,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -164,7 +160,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/idtecoff.ld b/libgloss/mips/idtecoff.ld
index 2788cc824..2910db687 100644
--- a/libgloss/mips/idtecoff.ld
+++ b/libgloss/mips/idtecoff.ld
@@ -35,17 +35,17 @@ SECTIONS
. = 0xA0020000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -54,13 +54,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -75,7 +75,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -83,15 +83,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
end = .;
diff --git a/libgloss/mips/jmr3904app-java.ld b/libgloss/mips/jmr3904app-java.ld
index 98ce5357c..3759d0b3c 100644
--- a/libgloss/mips/jmr3904app-java.ld
+++ b/libgloss/mips/jmr3904app-java.ld
@@ -35,17 +35,17 @@ SECTIONS
/* It fits the Cygmon ROMS */
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -54,13 +54,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -75,7 +75,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -83,15 +83,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
. += 0x2000 ; /* 8k bytes of stack. */
__stack = ALIGN(64) ;
@@ -125,7 +121,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/jmr3904app.ld b/libgloss/mips/jmr3904app.ld
index 3056a36bf..0785d597b 100644
--- a/libgloss/mips/jmr3904app.ld
+++ b/libgloss/mips/jmr3904app.ld
@@ -32,17 +32,17 @@ SECTIONS
/* It fits the Cygmon ROMS */
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -88,13 +88,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -108,7 +108,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -116,15 +116,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
. += 0x2000 ; /* 8k bytes of stack. */
__stack = ALIGN(64) ;
@@ -158,7 +154,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/jmr3904dram-java.ld b/libgloss/mips/jmr3904dram-java.ld
index 71e84032e..3bf777c48 100644
--- a/libgloss/mips/jmr3904dram-java.ld
+++ b/libgloss/mips/jmr3904dram-java.ld
@@ -37,17 +37,17 @@ SECTIONS
/* It fits the Cygmon ROMS */
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -56,13 +56,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -77,7 +77,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -85,15 +85,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -128,7 +124,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/jmr3904dram.ld b/libgloss/mips/jmr3904dram.ld
index a2cb1eae5..67be2b532 100644
--- a/libgloss/mips/jmr3904dram.ld
+++ b/libgloss/mips/jmr3904dram.ld
@@ -34,17 +34,17 @@ SECTIONS
/* It fits the Cygmon ROMS */
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -53,13 +53,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -74,7 +74,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -82,15 +82,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -125,7 +121,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/lsi.ld b/libgloss/mips/lsi.ld
index 839382527..b1f3e6fce 100644
--- a/libgloss/mips/lsi.ld
+++ b/libgloss/mips/lsi.ld
@@ -34,15 +34,15 @@ SECTIONS
. = 0xA0020000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -88,13 +88,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
CONSTRUCTORS
}
. = ALIGN(8);
@@ -109,22 +109,18 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
edata = .;
_edata = .;
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
end = .;
diff --git a/libgloss/mips/nullmon.ld b/libgloss/mips/nullmon.ld
index 1d9319504..a0017392e 100644
--- a/libgloss/mips/nullmon.ld
+++ b/libgloss/mips/nullmon.ld
@@ -34,17 +34,17 @@ SECTIONS
. = 0xA0020000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -90,13 +90,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -110,7 +110,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -118,15 +118,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
. = ALIGN(64) ;
@@ -158,7 +154,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/pmon.ld b/libgloss/mips/pmon.ld
index e9a20aecc..214594a2d 100644
--- a/libgloss/mips/pmon.ld
+++ b/libgloss/mips/pmon.ld
@@ -34,17 +34,17 @@ SECTIONS
. = 0xA0020000;
.text : {
_ftext = . ;
- KEEP (*(.init))
+ *(.init)
eprol = .;
*(.text)
*(.text.*)
- *(.gnu.linkonce.t.*)
+ *(.gnu.linkonce.t*)
*(.mips16.fn.*)
*(.mips16.call.*)
PROVIDE (__runtime_reloc_start = .);
*(.rel.sdata)
PROVIDE (__runtime_reloc_stop = .);
- KEEP (*(.fini))
+ *(.fini)
etext = .;
_etext = .;
}
@@ -90,13 +90,13 @@ SECTIONS
*(.rdata)
*(.rodata)
*(.rodata.*)
- *(.gnu.linkonce.r.*)
+ *(.gnu.linkonce.r*)
}
_fdata = ALIGN(16);
.data : {
*(.data)
*(.data.*)
- *(.gnu.linkonce.d.*)
+ *(.gnu.linkonce.d*)
}
. = ALIGN(8);
_gp = . + 0x8000;
@@ -110,7 +110,7 @@ SECTIONS
.sdata : {
*(.sdata)
*(.sdata.*)
- *(.gnu.linkonce.s.*)
+ *(.gnu.linkonce.s*)
}
. = ALIGN(4);
edata = .;
@@ -118,15 +118,11 @@ SECTIONS
_fbss = .;
.sbss : {
*(.sbss)
- *(.sbss.*)
- *(.gnu.linkonce.sb.*)
*(.scommon)
}
.bss : {
_bss_start = . ;
*(.bss)
- *(.bss.*)
- *(.gnu.linkonce.b.*)
*(COMMON)
}
@@ -157,7 +153,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
diff --git a/libgloss/mips/regs.S b/libgloss/mips/regs.S
index bdf933f13..17cc15a75 100644
--- a/libgloss/mips/regs.S
+++ b/libgloss/mips/regs.S
@@ -53,16 +53,15 @@
#define fp1 $f1
/* Useful memory constants: */
+#define K0BASE 0x80000000
#ifndef __mips64
-#define K0BASE 0x80000000
#define K1BASE 0xA0000000
#define K0BASE_ADDR ((char *)K0BASE)
#define K1BASE_ADDR ((char *)K1BASE)
#else
-#define K0BASE 0xFFFFFFFF80000000
-#define K1BASE 0xFFFFFFFFA0000000
+#define K1BASE 0xFFFFFFFFA0000000LL
#define K0BASE_ADDR ((char *)0xFFFFFFFF80000000LL)
-#define K1BASE_ADDR ((char *)0xFFFFFFFFA0000000LL)
+#define K1BASE_ADDR ((char *)K1BASE)
#endif
#define PHYS_TO_K1(a) ((unsigned)(a) | K1BASE)
diff --git a/libgloss/mn10200/eval.ld b/libgloss/mn10200/eval.ld
index c5c958b95..7c91ed770 100644
--- a/libgloss/mn10200/eval.ld
+++ b/libgloss/mn10200/eval.ld
@@ -144,7 +144,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mn10200/sim.ld b/libgloss/mn10200/sim.ld
index 4c7516961..90c9e5798 100644
--- a/libgloss/mn10200/sim.ld
+++ b/libgloss/mn10200/sim.ld
@@ -140,7 +140,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mn10300/asb2303.ld b/libgloss/mn10300/asb2303.ld
index 0fe2784da..fcc686594 100644
--- a/libgloss/mn10300/asb2303.ld
+++ b/libgloss/mn10300/asb2303.ld
@@ -137,7 +137,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mn10300/asb2305.ld b/libgloss/mn10300/asb2305.ld
index b82746907..e4655eeb9 100644
--- a/libgloss/mn10300/asb2305.ld
+++ b/libgloss/mn10300/asb2305.ld
@@ -137,7 +137,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mn10300/eval.ld b/libgloss/mn10300/eval.ld
index f26f582b4..ca5494939 100644
--- a/libgloss/mn10300/eval.ld
+++ b/libgloss/mn10300/eval.ld
@@ -137,7 +137,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mn10300/sim.ld b/libgloss/mn10300/sim.ld
index 97fe4548d..0bfa27840 100644
--- a/libgloss/mn10300/sim.ld
+++ b/libgloss/mn10300/sim.ld
@@ -135,7 +135,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/mt/16-002.ld b/libgloss/mt/16-002.ld
deleted file mode 100644
index 9dfd62eff..000000000
--- a/libgloss/mt/16-002.ld
+++ /dev/null
@@ -1,248 +0,0 @@
-OUTPUT_FORMAT("elf32-mt", "elf32-mt", "elf32-mt")
-OUTPUT_ARCH(mt)
-ENTRY(__boot_start)
-
-/* Do we need any of these for elf?
- __DYNAMIC = 0; */
-MEMORY
-{
- ram (rwx) : ORIGIN = 0x0, LENGTH = 128K
- frame-buffer (w) : ORIGIN = 0xde0000, LENGTH = 40K
- ports (w) : ORIGIN = 0xfff000, LENGTH = 4K
- dma-ram (w) : ORIGIN = 0x1000000, LENGTH = 16M-4K
-}
-SECTIONS
-{
- /* Read-only sections, merged into text segment: */
- . = 0x0;
- PROVIDE(__executable_start = 0x0);
- .interp : { *(.interp) }
- .hash : { *(.hash) }
- .dynsym : { *(.dynsym) }
- .dynstr : { *(.dynstr) }
- .gnu.version : { *(.gnu.version) }
- .gnu.version_d : { *(.gnu.version_d) }
- .gnu.version_r : { *(.gnu.version_r) }
- .rel.init : { *(.rel.init) }
- .rela.init : { *(.rela.init) }
- .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
- .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
- .rel.fini : { *(.rel.fini) }
- .rela.fini : { *(.rela.fini) }
- .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
- .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
- .rel.data.rel.ro : { *(.rel.data.rel.ro*) }
- .rela.data.rel.ro : { *(.rela.data.rel.ro*) }
- .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
- .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
- .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
- .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
- .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
- .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
- .rel.ctors : { *(.rel.ctors) }
- .rela.ctors : { *(.rela.ctors) }
- .rel.dtors : { *(.rel.dtors) }
- .rela.dtors : { *(.rela.dtors) }
- .rel.got : { *(.rel.got) }
- .rela.got : { *(.rela.got) }
- .rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) }
- .rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
- .rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) }
- .rela.sbss : { *(.rela.sbss .rela.sbss.* .rel.gnu.linkonce.sb.*) }
- .rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) }
- .rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
- .rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) }
- .rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
- .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
- .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
- .rel.plt : { *(.rel.plt) }
- .rela.plt : { *(.rela.plt) }
-
- .startup : { *startup-16-002.o(.startup) } >ram =0
- . = 0x40 ;
-
- .init : { KEEP (*(.init)) } >ram =0
- .plt : { *(.plt) } >ram
- .text :
- {
- *startup-16-002.o(.text)
- *(.text .stub .text.* .gnu.linkonce.t.*)
- KEEP (*(.text.*personality*))
- /* .gnu.warning sections are handled specially by elf32.em. */
- *(.gnu.warning)
- } >ram =0
- .fini : { KEEP (*(.fini)) } >ram =0
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >ram
- .rodata1 : { *(.rodata1) } >ram
- .sdata2 : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) } >ram
- .sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) } >ram
- .eh_frame_hdr : { *(.eh_frame_hdr) } >ram
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Adjust the address for the data segment. We want to adjust up to
- the same address within the page on the next page up. */
- . = ALIGN(256) + (. & (256 - 1));
- /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Thread Local Storage sections */
- .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >ram
- .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >ram
- /* Ensure the __preinit_array_start label is properly aligned. We
- could instead move the label definition inside the section, but
- the linker would then create the section even if it turns out to
- be empty, which isn't pretty. */
- . = ALIGN(32 / 8);
- PROVIDE (__preinit_array_start = .);
- .preinit_array : { *(.preinit_array) } >ram
- PROVIDE (__preinit_array_end = .);
- PROVIDE (__init_array_start = .);
- .init_array : { *(.init_array) } >ram
- PROVIDE (__init_array_end = .);
- PROVIDE (__fini_array_start = .);
- .fini_array : { *(.fini_array) } >ram
- PROVIDE (__fini_array_end = .);
- .ctors :
- {
- /* gcc uses crtbegin.o to find the start of
- the constructors, so we make sure it is
- first. Because this is a wildcard, it
- doesn't matter if the user does not
- actually link against crtbegin.o; the
- linker won't look for a file to match a
- wildcard. The wildcard also means that it
- doesn't matter which directory crtbegin.o
- is in. */
- KEEP (*crtbegin.o(.ctors))
- /* We don't want to include the .ctor section from
- from the crtend.o file until after the sorted ctors.
- The .ctor section from the crtend file contains the
- end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o ) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- } >ram
- .dtors :
- {
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
- } >ram
- .jcr : { KEEP (*(.jcr)) } >ram
- .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >ram
- .dynamic : { *(.dynamic) } >ram
-
- /* DJK - Re-align the data section from the read-only section. */
- . = ALIGN(16) + (. & (16 - 1));
- PROVIDE (_data = .);
- .data :
- {
- *(.data .data.* .gnu.linkonce.d.*)
- SORT(CONSTRUCTORS)
- } >ram
- .data1 : { *(.data1) } >ram
- .got : { *(.got.plt) *(.got) } >ram
-
- /* We want the small data sections together, so single-instruction offsets
- can access them all, and initialized data all before uninitialized, so
- we can shorten the on-disk segment size. */
- .sdata : { *(.sdata .sdata.* .gnu.linkonce.s.*) } >ram
- _edata = .;
- PROVIDE ( edata = . ) ;
- .sbss :
- {
- PROVIDE (__sbss_start = .);
- PROVIDE (___sbss_start = .);
- *(.dynsbss)
- *(.sbss .sbss.* .gnu.linkonce.sb.*)
- *(.scommon)
- PROVIDE (__sbss_end = .);
- PROVIDE (___sbss_end = .);
- } >ram
- .bss :
- {
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- /* Align here to ensure that the .bss section occupies space up to
- _end. Align after .bss to ensure correct alignment even if the
- .bss section disappears because there are no input sections. */
- . = ALIGN(32 / 8);
- } >ram
- . = ALIGN(32 / 8);
- __bss_start = ADDR ( .sbss ) ;
- __bss_end = __bss_start + SIZEOF ( .sbss ) + SIZEOF ( .bss ) - 4 ;
- _end = .;
- PROVIDE (end = .);
-
- /* DJK - Initialized frame buffer data is copied from RAM to FB. */
- .auxbss : AT (ADDR(.bss) + SIZEOF(.bss)) { *(.auxbss) } >frame-buffer
- .auxdata : AT (LOADADDR(.auxbss) + SIZEOF(.auxbss))
- {
- *(.auxdata)
- } >frame-buffer
-
- _fbbss_start = ADDR ( .auxbss );
- _fbbss_end = _fbbss_start + SIZEOF ( .auxbss ) - 4;
- _fbdata_start = LOADADDR ( .auxdata );
- _fbdata_end = _fbdata_start + SIZEOF ( .auxdata ) ;
- _fbdata_vma = ADDR ( .auxdata );
-
- PROVIDE (__FRAME_BUFFER_START = ADDR(.auxbss) );
- PROVIDE (__FRAME_BUFFER_SIZE = 0xa000);
- PROVIDE (__FRAME_BUFFER_END = __FRAME_BUFFER_START + __FRAME_BUFFER_SIZE);
-
- .dma : { _dma_start = .; *(.dma) _dma_end = .; } >dma-ram
- .internal_io (NOLOAD) : { *(.internal_io) } >ports
-
- /* Stabs debugging sections. */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- /* DWARF debug sections.
- Symbols in the DWARF debugging sections are relative to the beginning
- of the section so we begin them at 0. */
- /* DWARF 1 */
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- /* GNU DWARF 1 extensions */
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- /* DWARF 1.1 and DWARF 2 */
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- /* DWARF 2 */
- .debug_info 0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- /* SGI/MIPS DWARF 2 extensions */
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
-
- /* In a multi-core environment, each core is given its own stack space
- equal to __stack_size. */
- PROVIDE (__stack = 0x1fff0);
- PROVIDE (__stack_size = 0x800);
-
- .stack (DEFINED(__stack) ? __stack : 0x007ffff0) :
- {
- __stack = .;
- *(.stack)
- LONG(0xdeaddead)
- }
- /DISCARD/ : { *(.note.GNU-stack) }
-}
diff --git a/libgloss/mt/16-003.ld b/libgloss/mt/16-003.ld
deleted file mode 100644
index c837b7540..000000000
--- a/libgloss/mt/16-003.ld
+++ /dev/null
@@ -1,258 +0,0 @@
-OUTPUT_FORMAT("elf32-mt", "elf32-mt", "elf32-mt")
-OUTPUT_ARCH(mt)
-ENTRY(__boot_start)
-
-/* Do we need any of these for elf?
- __DYNAMIC = 0; */
-MEMORY
-{
- ram (rwx) : ORIGIN = 0x0, LENGTH = 608K
- frame-buffer (w) : ORIGIN = 0xff000000, LENGTH = 80K
- dma-ram (w) : ORIGIN = 0x1000000, LENGTH = 16M-4K
- ports (w) : ORIGIN = 0xfffff000, LENGTH = 4K
-}
-SECTIONS
-{
- /* Read-only sections, merged into text segment: */
- . = 0x0;
- PROVIDE(__executable_start = 0x0);
- .interp : { *(.interp) }
- .hash : { *(.hash) }
- .dynsym : { *(.dynsym) }
- .dynstr : { *(.dynstr) }
- .gnu.version : { *(.gnu.version) }
- .gnu.version_d : { *(.gnu.version_d) }
- .gnu.version_r : { *(.gnu.version_r) }
- .rel.init : { *(.rel.init) }
- .rela.init : { *(.rela.init) }
- .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
- .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
- .rel.fini : { *(.rel.fini) }
- .rela.fini : { *(.rela.fini) }
- .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
- .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
- .rel.data.rel.ro : { *(.rel.data.rel.ro*) }
- .rela.data.rel.ro : { *(.rela.data.rel.ro*) }
- .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
- .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
- .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
- .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
- .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
- .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
- .rel.ctors : { *(.rel.ctors) }
- .rela.ctors : { *(.rela.ctors) }
- .rel.dtors : { *(.rel.dtors) }
- .rela.dtors : { *(.rela.dtors) }
- .rel.got : { *(.rel.got) }
- .rela.got : { *(.rela.got) }
- .rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) }
- .rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
- .rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) }
- .rela.sbss : { *(.rela.sbss .rela.sbss.* .rel.gnu.linkonce.sb.*) }
- .rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) }
- .rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
- .rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) }
- .rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
- .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
- .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
- .rel.plt : { *(.rel.plt) }
- .rela.plt : { *(.rela.plt) }
-
- .startup : { *startup-16-003.o(.startup) } >ram =0
- . = 0x40;
-
- .init : { KEEP (*(.init)) } >ram =0
- .plt : { *(.plt) } >ram
- .text :
- {
- *startup-16-003.o(.text);
- *(.text .stub .text.* .gnu.linkonce.t.*)
- KEEP (*(.text.*personality*))
- /* .gnu.warning sections are handled specially by elf32.em. */
- *(.gnu.warning)
- } >ram =0
- .fini : { KEEP (*(.fini)) } >ram =0
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >ram
- .rodata1 : { *(.rodata1) } >ram
- .sdata2 : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) } >ram
- .sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) } >ram
- .eh_frame_hdr : { *(.eh_frame_hdr) } >ram
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Adjust the address for the data segment. We want to adjust up to
- the same address within the page on the next page up. */
- . = ALIGN(256) + (. & (256 - 1));
- /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Thread Local Storage sections */
- .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >ram
- .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >ram
- /* Ensure the __preinit_array_start label is properly aligned. We
- could instead move the label definition inside the section, but
- the linker would then create the section even if it turns out to
- be empty, which isn't pretty. */
- . = ALIGN(32 / 8);
- PROVIDE (__preinit_array_start = .);
- .preinit_array : { *(.preinit_array) } >ram
- PROVIDE (__preinit_array_end = .);
- PROVIDE (__init_array_start = .);
- .init_array : { *(.init_array) } >ram
- PROVIDE (__init_array_end = .);
- PROVIDE (__fini_array_start = .);
- .fini_array : { *(.fini_array) } >ram
- PROVIDE (__fini_array_end = .);
- .ctors :
- {
- /* gcc uses crtbegin.o to find the start of
- the constructors, so we make sure it is
- first. Because this is a wildcard, it
- doesn't matter if the user does not
- actually link against crtbegin.o; the
- linker won't look for a file to match a
- wildcard. The wildcard also means that it
- doesn't matter which directory crtbegin.o
- is in. */
- KEEP (*crtbegin.o(.ctors))
- /* We don't want to include the .ctor section from
- from the crtend.o file until after the sorted ctors.
- The .ctor section from the crtend file contains the
- end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- } >ram
- .dtors :
- {
- KEEP (*crtbegin*.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
- } >ram
- .jcr : { KEEP (*(.jcr)) } >ram
- .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >ram
- .dynamic : { *(.dynamic) } >ram
-
- /* DJK - Re-align the data section from the read-only section. */
- . = ALIGN(16) + (. & (16 - 1));
- PROVIDE (_data = .);
- .data :
- {
- *(.data .data.* .gnu.linkonce.d.*)
- KEEP (*(.gnu.linkonce.d.*personality*))
- SORT(CONSTRUCTORS)
- } >ram
- .data1 : { *(.data1) } >ram
- .got : { *(.got.plt) *(.got) } >ram
-
- /* We want the small data sections together, so single-instruction offsets
- can access them all, and initialized data all before uninitialized, so
- we can shorten the on-disk segment size. */
- .sdata : { *(.sdata .sdata.* .gnu.linkonce.s.*) } >ram
- _edata = .;
- PROVIDE ( edata = . );
- .sbss :
- {
- PROVIDE (__sbss_start = .);
- PROVIDE (___sbss_start = .);
- *(.dynsbss)
- *(.sbss .sbss.* .gnu.linkonce.sb.*)
- *(.scommon)
- PROVIDE (__sbss_end = .);
- PROVIDE (___sbss_end = .);
- } >ram
- .bss :
- {
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- /* Align here to ensure that the .bss section occupies space up to
- _end. Align after .bss to ensure correct alignment even if the
- .bss section disappears because there are no input sections. */
- . = ALIGN(32 / 8);
- } >ram
- . = ALIGN(32 / 8);
- __bss_start = ADDR ( .sbss ) ;
- __bss_end = __bss_start + SIZEOF ( .sbss ) + SIZEOF ( .bss ) - 4 ;
- _end = .;
- PROVIDE (end = .);
-
- /* DJK - Initialized frame buffer data is copied from RAM to FB. */
- .auxbss : AT (ADDR(.bss) + SIZEOF(.bss)) { *(.auxbss) } >frame-buffer
- .auxdata : AT (LOADADDR(.auxbss) + SIZEOF(.auxbss))
- {
- *(.auxdata.bank0)
- . = ALIGN(0x4000);
- *(.auxdata.bank1)
- . = ALIGN(0x4000);
- *(.auxdata.bank2)
- . = ALIGN(0x4000);
- *(.auxdata.bank3)
- . = ALIGN(0x4000);
- *(.auxdata.bank4)
- *(.auxdata)
- } >frame-buffer
-
- _fbbss_start = ADDR ( .auxbss );
- _fbbss_end = _fbbss_start + SIZEOF ( .auxbss ) - 4;
- _fbdata_start = LOADADDR ( .auxdata );
- _fbdata_end = _fbdata_start + SIZEOF ( .auxdata ) ;
- _fbdata_vma = ADDR ( .auxdata );
-
- PROVIDE (__FRAME_BUFFER_START = ADDR(.auxbss) );
- PROVIDE (__FRAME_BUFFER_SIZE = 0x14000);
- PROVIDE (__FRAME_BUFFER_END = __FRAME_BUFFER_START + __FRAME_BUFFER_SIZE);
-
- .dma : { _dma_start = .; *(.dma) _dma_end = .; } >dma-ram
- .internal_io (NOLOAD) : { *(.internal_io) } >ports
-
- /* Stabs debugging sections. */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- /* DWARF debug sections.
- Symbols in the DWARF debugging sections are relative to the beginning
- of the section so we begin them at 0. */
- /* DWARF 1 */
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- /* GNU DWARF 1 extensions */
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- /* DWARF 1.1 and DWARF 2 */
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- /* DWARF 2 */
- .debug_info 0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- /* SGI/MIPS DWARF 2 extensions */
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
-
- /* In a multi-core environment, each core is given its own stack space
- equal to __stack_size, growing downwards. */
- PROVIDE (__stack = 0x97ff0);
- PROVIDE (__stack_size = 0x800);
-
- .stack (DEFINED(__stack) ? __stack : 0x007ffff0) :
- {
- __stack = .;
- *(.stack)
- LONG(0xdeaddead)
- }
- /DISCARD/ : { *(.note.GNU-stack) }
-}
diff --git a/libgloss/mt/64-001.ld b/libgloss/mt/64-001.ld
deleted file mode 100644
index 501ec32f8..000000000
--- a/libgloss/mt/64-001.ld
+++ /dev/null
@@ -1,282 +0,0 @@
-OUTPUT_FORMAT("elf32-mt", "elf32-mt", "elf32-mt")
-OUTPUT_ARCH(mt)
-ENTRY(__boot_start)
-
-/* Do we need any of these for elf?
- __DYNAMIC = 0; */
-MEMORY
-{
- rom (rx) : ORIGIN = 0x000000, LENGTH = 8M
- frame-buffer (w) : ORIGIN = 0x800000, LENGTH = 64K
- ram (w) : ORIGIN = 0xc00000, LENGTH = 4M
- dma-ram (w) : ORIGIN = 0x1000000, LENGTH = 16M
-}
-SECTIONS
-{
- /* Read-only sections, merged into text segment: */
- PROVIDE (__executable_start = 0x0); . = 0x0;
- .interp : { *(.interp) }
- .hash : { *(.hash) }
- .dynsym : { *(.dynsym) }
- .dynstr : { *(.dynstr) }
- .gnu.version : { *(.gnu.version) }
- .gnu.version_d : { *(.gnu.version_d) }
- .gnu.version_r : { *(.gnu.version_r) }
- .rel.init : { *(.rel.init) }
- .rela.init : { *(.rela.init) }
- .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
- .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
- .rel.fini : { *(.rel.fini) }
- .rela.fini : { *(.rela.fini) }
- .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
- .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
- .rel.data.rel.ro : { *(.rel.data.rel.ro*) }
- .rela.data.rel.ro : { *(.rel.data.rel.ro*) }
- .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
- .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
- .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
- .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
- .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
- .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
- .rel.ctors : { *(.rel.ctors) }
- .rela.ctors : { *(.rela.ctors) }
- .rel.dtors : { *(.rel.dtors) }
- .rela.dtors : { *(.rela.dtors) }
- .rel.got : { *(.rel.got) }
- .rela.got : { *(.rela.got) }
- .rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) }
- .rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
- .rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) }
- .rela.sbss : { *(.rela.sbss .rela.sbss.* .rel.gnu.linkonce.sb.*) }
- .rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) }
- .rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
- .rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) }
- .rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
- .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
- .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
- .rel.plt : { *(.rel.plt) }
- .rela.plt : { *(.rela.plt) }
-
- .startup : { *startup-64-001.o(.startup) } >rom =0
-
- .init : { KEEP (*(.init)) } >rom =0
- .plt : { *(.plt) } >rom
- .text :
- {
- *startup-64-001.o(.text)
- *(.text .stub .text.* .gnu.linkonce.t.*)
- /* .gnu.warning sections are handled specially by elf32.em. */
- *(.gnu.warning)
- } >rom =0
- .fini :
- {
- KEEP (*(.fini))
- } >rom =0
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >rom
- .rodata1 : { *(.rodata1) } >rom
-
- /* Data starting here needs to be copied from ROM to the frame buffer. */
- /* Section .sdata2 is used as the beginning marker of the frame buffer
- address as well as the start of the data that needs to be copied. */
- .sdata2 : AT (ADDR(.rodata1) + SIZEOF(.rodata1))
- { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) } >frame-buffer
- .sbss2 : AT (LOADADDR(.sdata2) + SIZEOF(.sdata2))
- { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) } >frame-buffer
- .eh_frame_hdr : AT (LOADADDR(.sbss2) + SIZEOF(.sbss2))
- { *(.eh_frame_hdr) } >frame-buffer
- .eh_frame : AT (LOADADDR(.eh_frame_hdr) + SIZEOF(.eh_frame_hdr))
- ONLY_IF_RO { KEEP (*(.eh_frame)) } >frame-buffer
- .gcc_except_table : AT (LOADADDR(.eh_frame) + SIZEOF(.eh_frame))
- ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >frame-buffer
- /* Adjust the address for the data segment. We want to adjust up to
- the same address within the page on the next page up. */
- . = ALIGN(256) + (. & (256 - 1));
- /* Exception handling */
- .eh_frame : AT (LOADADDR(.eh_frame_hdr) + SIZEOF(.eh_frame_hdr))
- ONLY_IF_RW { KEEP (*(.eh_frame)) } >frame-buffer
- .gcc_except_table : AT (LOADADDR(.eh_frame) + SIZEOF(.eh_frame))
- ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >frame-buffer
- /* Thread Local Storage sections */
- .tdata : AT (LOADADDR(.gcc_except_table) + SIZEOF(.gcc_except_table))
- { *(.tdata .tdata.* .gnu.linkonce.td.*) } >frame-buffer
- .tbss : AT (LOADADDR(.tdata) + SIZEOF(.tdata))
- { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >frame-buffer
- /* Ensure the __preinit_array_start label is properly aligned. We
- could instead move the label definition inside the section, but
- the linker would then create the section even if it turns out to
- be empty, which isn't pretty. */
- . = ALIGN(32 / 8);
- PROVIDE (__preinit_array_start = .);
- .preinit_array : AT (LOADADDR(.tbss) + SIZEOF(.tbss))
- { *(.preinit_array) } >frame-buffer
- PROVIDE (__preinit_array_end = .);
- PROVIDE (__init_array_start = .);
- .init_array : AT (LOADADDR(.preinit_array) + SIZEOF(.preinit_array))
- { *(.init_array) } >frame-buffer
- PROVIDE (__init_array_end = .);
- PROVIDE (__fini_array_start = .);
- .fini_array : AT (LOADADDR(.init_array) + SIZEOF(.init_array))
- { *(.fini_array) } >frame-buffer
- PROVIDE (__fini_array_end = .);
- .ctors : AT (LOADADDR(.fini_array) + SIZEOF(.fini_array))
- {
- /* gcc uses crtbegin.o to find the start of
- the constructors, so we make sure it is
- first. Because this is a wildcard, it
- doesn't matter if the user does not
- actually link against crtbegin.o; the
- linker won't look for a file to match a
- wildcard. The wildcard also means that it
- doesn't matter which directory crtbegin.o
- is in. */
- KEEP (*crtbegin*.o(.ctors))
- /* We don't want to include the .ctor section from
- from the crtend.o file until after the sorted ctors.
- The .ctor section from the crtend file contains the
- end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- } >frame-buffer
- .dtors : AT (LOADADDR(.ctors) + SIZEOF(.ctors))
- {
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o ) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
- } >frame-buffer
- .jcr : AT (LOADADDR(.dtors) + SIZEOF(.dtors))
- { KEEP (*(.jcr)) } >frame-buffer
- .data.rel.ro : AT (LOADADDR(.jcr) + SIZEOF(.jcr))
- { *(.data.rel.ro.local) *(.data.rel.ro*) } >frame-buffer
- .dynamic : AT (LOADADDR(.data.rel.ro) + SIZEOF(.data.rel.ro))
- { *(.dynamic) } >frame-buffer
-
- /* DJK - Re-align the data section from the read-only section. */
- . = ALIGN(16) + (. & (16 - 1));
- PROVIDE (_data = .);
- .data : AT (LOADADDR(.dynamic) + SIZEOF(.dynamic))
- {
- *(.data .data.* .gnu.linkonce.d.*)
- KEEP (*(.gnu.linkonce.d.*personality*))
- SORT(CONSTRUCTORS)
- } >frame-buffer
- .data1 : AT (LOADADDR(.data) + SIZEOF(.data))
- { *(.data1) } >frame-buffer
- .got : AT (LOADADDR(.data1) + SIZEOF(.data1))
- { *(.got.plt) *(.got) }
-
- /* We want the small data sections together, so single-instruction offsets
- can access them all, and initialized data all before uninitialized, so
- we can shorten the on-disk segment size. */
- .sdata : AT (LOADADDR(.got) + SIZEOF(.got))
- { *(.sdata .sdata.* .gnu.linkonce.s.*) } >frame-buffer
- _edata = .;
- PROVIDE ( edata = . ) ;
-
- _fbdata_start = LOADADDR(.sdata2) ;
- _fbdata_end = LOADADDR(.sdata) + SIZEOF(.sdata) - 4 ;
-
- PROVIDE (__FRAME_BUFFER_START = ADDR(.sdata2));
- PROVIDE (__FRAME_BUFFER_SIZE = 0x10000);
- PROVIDE (__FRAME_BUFFER_END = __FRAME_BUFFER_START + __FRAME_BUFFER_SIZE);
-
- .sbss : AT (LOADADDR(.sdata) + SIZEOF(.sdata))
- {
- PROVIDE (__sbss_start = .);
- PROVIDE (___sbss_start = .);
- *(.dynsbss)
- *(.sbss .sbss.* .gnu.linkonce.sb.*)
- *(.scommon)
- PROVIDE (__sbss_end = .);
- PROVIDE (___sbss_end = .);
- } >frame-buffer
- .bss : AT (LOADADDR(.sbss) + SIZEOF(.sbss))
- {
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- /* Align here to ensure that the .bss section occupies space up to
- _end. Align after .bss to ensure correct alignment even if the
- .bss section disappears because there are no input sections. */
- . = ALIGN(32 / 8);
- } >frame-buffer
- . = ALIGN(32 / 8);
- __bss_start = ADDR(.sbss) ;
- __bss_end = __bss_start + SIZEOF(.sbss) + SIZEOF(.bss) - 4 ;
- _end = .;
- PROVIDE (end = .);
-
- PROVIDE ( _extdata_start = ADDR(.bss) + SIZEOF(.bss));
- .extdata : AT ( LOADADDR(.bss) + SIZEOF(.bss))
- {
- *(.extdata)
- } >ram
- PROVIDE (_extdata_end = _extdata_start + SIZEOF(.extdata) - 4 );
-
- .extbss : AT ( LOADADDR(.extdata) + SIZEOF(.extdata))
- {
- _extbss_start = .;
- *(.extbss);
- . = ALIGN(4);
- _extbss_end = .;
- } >ram
- . = ALIGN(4);
-
- PROVIDE (__EXTERNAL_MEMORY_START = 0xc00000);
-
- .dma :
- {
- _dma_start = .;
- *(.dma)
- _dma_end = .;
- } >dma-ram
-
- /* Stabs debugging sections. */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- /* DWARF debug sections.
- Symbols in the DWARF debugging sections are relative to the beginning
- of the section so we begin them at 0. */
- /* DWARF 1 */
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- /* GNU DWARF 1 extensions */
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- /* DWARF 1.1 and DWARF 2 */
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- /* DWARF 2 */
- .debug_info 0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- /* SGI/MIPS DWARF 2 extensions */
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
-
-
- PROVIDE (__stack = 0x80fff0);
-
- .stack (DEFINED(__stack) ? __stack : 0x7FFFF0) :
- {
- __stack = .;
- *(.stack)
- LONG(0xdeaddead)
- }
- /DISCARD/ : { *(.note.GNU-stack) }
-}
diff --git a/libgloss/mt/Makefile.in b/libgloss/mt/Makefile.in
deleted file mode 100644
index 031c864ba..000000000
--- a/libgloss/mt/Makefile.in
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright (c) 2001, 2005 Red Hat, Inc.
-#
-# The authors hereby grant permission to use, copy, modify, distribute,
-# and license this software and its documentation for any purpose, provided
-# that existing copyright notices are retained in all copies and that this
-# notice is included verbatim in any distributions. No written agreement,
-# license, or royalty fee is required for any of the authorized uses.
-# Modifications to this software may be copyrighted by their authors
-# and need not follow the licensing terms described here, provided that
-# the new terms are clearly indicated on the first page of each file where
-# they apply.
-
-# Makefile for libgloss/mt. This is the board support for the Morpho mt.
-
-VPATH = @srcdir@ @srcdir@/..
-srcdir = @srcdir@
-objdir = .
-srcroot = $(srcdir)/../..
-objroot = $(objdir)/../..
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-host_alias = @host_alias@
-target_alias = @target_alias@
-
-bindir = @bindir@
-libdir = @libdir@
-tooldir = $(exec_prefix)/$(target_alias)
-
-# Multilib support variables.
-# TOP is used instead of MULTI{BUILD,SRC}TOP.
-MULTIDIRS =
-MULTISUBDIR =
-MULTIDO = true
-MULTICLEAN = true
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-SHELL = /bin/sh
-
-CC = @CC@
-
-AS = @AS@
-AR = @AR@
-LD = @LD@
-RANLIB = @RANLIB@
-AR_FLAGS = rc
-
-OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
- then echo ${objroot}/../binutils/objdump ; \
- else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
-OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
- then echo ${objroot}/../binutils/objcopy ; \
- else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
-
-SCRIPTS = 16-002.ld 16-003.ld 64-001.ld ms2.ld
-CRT0 = crt0.o crt0-64-001.o crt0-16-002.o crt0-16-003.o crt0-ms2.o \
- startup-64-001.o startup-16-002.o startup-16-003.o startup-ms2.o \
- exit.o exit-64-001.o exit-16-002.o exit-16-003.o exit-ms2.o
-
-SIM_BSP = libsim.a
-SIM_OBJS = access.o chmod.o close.o \
- fstat.o getpid.o gettime.o isatty.o kill.o lseek.o open.o \
- read.o sbrk.o stat.o time.o times.o trap.o unlink.o utime.o write.o
-
-#### Host specific Makefile fragment comes in here.
-@host_makefile_frag@
-
-all: $(CRT0) $(SIM_BSP)
-
-$(SIM_BSP): $(SIM_OBJS)
- $(AR) $(ARFLAGS) $@ $?
- $(RANLIB) $@
-
-access.o: $(srcdir)/access.c
-chmod.o: $(srcdir)/chmod.c
-close.o: $(srcdir)/close.c
-fstat.o: $(srcdir)/fstat.c
-getpid.o: $(srcdir)/getpid.c
-gettime.o: $(srcdir)/gettime.c
-isatty.o: $(srcdir)/isatty.c
-kill.o: $(srcdir)/kill.c
-lseek.o: $(srcdir)/lseek.c
-open.o: $(srcdir)/open.c
-read.o: $(srcdir)/read.c
-sbrk.o: $(srcdir)/sbrk.c
-stat.o: $(srcdir)/stat.c
-time.o: $(srcdir)/time.c
-times.o: $(srcdir)/times.c
-unlink.o: $(srcdir)/unlink.c
-utime.o: $(srcdir)/utime.c
-write.o: $(srcdir)/write.c
-crt0.o: $(srcdir)/crt0.S
-crt0-16-002.o: $(srcdir)/crt0-16-002.S
-crt0-16-003.o: $(srcdir)/crt0-16-003.S
-crt0-64-001.o: $(srcdir)/crt0-64-001.S
-crt0-ms2.o: $(srcdir)/crt0-ms2.S
-
-trap.o: $(srcdir)/trap.S
-
-install: $($(CPU)_INSTALL)
- for c in $(CRT0); do \
- $(INSTALL_DATA) $$c $(tooldir)/lib${MULTISUBDIR}/$$c ; \
- done;
- $(INSTALL_DATA) $(SIM_BSP) $(tooldir)/lib${MULTISUBDIR}/$(SIM_BSP)
- for c in $(SCRIPTS); do \
- $(INSTALL_DATA) $(srcdir)/$$c $(tooldir)/lib/$$c ; \
- done;
-
-clean mostlyclean:
- rm -f *.o *.a
-
-distclean maintainer-clean realclean: clean
- rm -f Makefile config.cache config.log config.status
-
-.PHONY: info dvi doc install-info clean-info
-info doc dvi:
-install-info:
-clean-info:
-
-Makefile: Makefile.in config.status @host_makefile_frag_path@
- $(SHELL) config.status
-
-config.status: configure
- $(SHELL) config.status --recheck
diff --git a/libgloss/mt/access.c b/libgloss/mt/access.c
deleted file mode 100644
index 8e08b3a7f..000000000
--- a/libgloss/mt/access.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* This is file ACCESS.C */
-/*
- * Copyright (C) 1993 DJ Delorie
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms is permitted
- * provided that the above copyright notice and following paragraph are
- * duplicated in all such forms.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-int access(const char *fn, int flags)
-{
- struct stat s;
- if (stat(fn, &s))
- return -1;
- if (s.st_mode & S_IFDIR)
- return 0;
- if (flags & W_OK)
- {
- if (s.st_mode & S_IWRITE)
- return 0;
- return -1;
- }
- return 0;
-}
-
diff --git a/libgloss/mt/chmod.c b/libgloss/mt/chmod.c
deleted file mode 100644
index 8200506fe..000000000
--- a/libgloss/mt/chmod.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-chmod (const char *path, mode_t mode)
-{
- return TRAP0 (SYS_chmod, path, mode, 0);
-}
diff --git a/libgloss/mt/close.c b/libgloss/mt/close.c
deleted file mode 100644
index 02ee07287..000000000
--- a/libgloss/mt/close.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-close (int file)
-{
- return TRAP0 (SYS_close, file, 0, 0);
-}
diff --git a/libgloss/mt/configure b/libgloss/mt/configure
deleted file mode 100755
index 5d272c9f8..000000000
--- a/libgloss/mt/configure
+++ /dev/null
@@ -1,1204 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=crt0.S
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-ac_aux_dir=
-for ac_dir in $libgloss_topdir $srcdir/$libgloss_topdir; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $libgloss_topdir $srcdir/$libgloss_topdir" 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:587: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:608: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:626: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:680: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:744: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:774: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:823: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:832: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:847: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-AS=${AS-as}
-
-AR=${AR-ar}
-
-LD=${LD-ld}
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:884: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-host_makefile_frag_path=$host_makefile_frag
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@LD@%$LD%g
-s%@RANLIB@%$RANLIB%g
-s%@host_makefile_frag_path@%$host_makefile_frag_path%g
-/@host_makefile_frag@/r $host_makefile_frag
-s%@host_makefile_frag@%%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-. ${libgloss_topdir}/config-ml.in
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/libgloss/mt/configure.in b/libgloss/mt/configure.in
deleted file mode 100644
index 877f6a06e..000000000
--- a/libgloss/mt/configure.in
+++ /dev/null
@@ -1,90 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.5)dnl
-AC_INIT(crt0.S)
-
-if test "${enable_shared}" = "yes" ; then
- echo "Shared libraries not supported for cross compiling, ignored"
-fi
-
-if test "$srcdir" = "." ; then
- if test "${with_target_subdir}" != "." ; then
- libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
- else
- libgloss_topdir="${srcdir}/${with_multisrctop}../.."
- fi
-else
- libgloss_topdir="${srcdir}/../.."
-fi
-AC_CONFIG_AUX_DIR($libgloss_topdir)
-
-AC_CANONICAL_SYSTEM
-AC_ARG_PROGRAM
-
-AC_PROG_INSTALL
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AS=${AS-as}
-AC_SUBST(AS)
-AR=${AR-ar}
-AC_SUBST(AR)
-LD=${LD-ld}
-AC_SUBST(LD)
-AC_PROG_RANLIB
-
-host_makefile_frag=${srcdir}/../config/default.mh
-
-dnl We have to assign the same value to other variables because autoconf
-dnl doesn't provide a mechanism to substitute a replacement keyword with
-dnl arbitrary data or pathnames.
-dnl
-host_makefile_frag_path=$host_makefile_frag
-AC_SUBST(host_makefile_frag_path)
-AC_SUBST_FILE(host_makefile_frag)
-
-AC_OUTPUT(Makefile,
-. ${libgloss_topdir}/config-ml.in,
-srcdir=${srcdir}
-target=${target}
-ac_configure_args="${ac_configure_args} --enable-multilib"
-CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-libgloss_topdir=${libgloss_topdir}
-)
diff --git a/libgloss/mt/crt0-16-002.S b/libgloss/mt/crt0-16-002.S
deleted file mode 100644
index ac2727e66..000000000
--- a/libgloss/mt/crt0-16-002.S
+++ /dev/null
@@ -1,111 +0,0 @@
-; crt0_2.s - Startup code for the mrisc1. This code initializes the C
-; run-time model.
-;
-; Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-;
-; The authors hereby grant permission to use, copy, modify, distribute,
-; and license this software and its documentation for any purpose, provided
-; that existing copyright notices are retained in all copies and that this
-; notice is included verbatim in any distributions. No written agreement,
-; license, or royalty fee is required for any of the authorized uses.
-; Modifications to this software may be copyrighted by their authors
-; and need not follow the licensing terms described here, provided that
-; the new terms are clearly indicated on the first page of each file where
-; they apply.
-;
-
- ; Create a label for the start of the eh_frame section.
- .section .eh_frame
-__eh_frame_begin:
-
- .text
- .global _start
-_start:
- ;; Initialize the stack pointer
- ldui sp, #%hi16(__stack)
- addui sp, sp, #%lo16(__stack)
- or fp, sp, sp
- ;; Zero the bss space
- ldui r9, #%hi16(__bss_start)
- addui r9, r9, #%lo16(__bss_start)
- ldui r10, #%hi16(__bss_end)
- addui r10, r10, #%lo16(__bss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext1
- or r0, r0, r0
-.Lcpy0:
- stw r0, r9, #0
- addi r9, r9, #4
- or r0, r0, r0 ; nop
- brle r9, r10, .Lcpy0
- or r0, r0, r0 ; nop
-
-.Lnext1:
- ;; Copy data from ROM to Frame Buffer (on-chip memory)
- ldui r9, #%hi16(_fbdata_start)
- ori r9, r9, #%lo16(_fbdata_start)
- ldui r10, #%hi16(_fbdata_end)
- ori r10, r10, #%lo16(_fbdata_end)
- ldui r11, #%hi16(_fbdata_vma)
- brle r10, r9, .Lnext2
- ori r11, r11, #%lo16(_fbdata_vma)
-.Lcpy1:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy1
- addi r11, r11, #$4
-
-.Lnext2:
- ;; Zero the frame buffer bss section
- ldui r9, #%hi16(_fbbss_start)
- ori r9, r9, #%lo16(_fbbss_start)
- ldui r10, #%hi16(_fbbss_end)
- ori r10, r10, #%lo16(_fbbss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext3
- or r0, r0, r0
-.Lcpy2:
- stw r0, r9, #$0
- addi r9, r9, #$4
- or r0, r0, r0
- brle r9, r10, .Lcpy2
- or r0, r0, r0
-
-.Lnext3:
- ;; Call global and static constructors
- ldui r10, #%hi16(_init)
- ori r10, r10, #%lo16(_init)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Call main
- ldui r10, #%hi16(main)
- ori r10, r10, #%lo16(main)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; DJK - Added 12Nov01. Pass main's return value to exit.
- or r1, r11, r0
-
- ;; Jump to exit
- ldui r10, #%hi16(exit)
- ori r10, r10, #%lo16(exit)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Exit does not return, however, this code is to catch an
- ;; error if it does. Set the processor into sleep mode.
- ori r1, r0, #$1
- stw r1, r0, #%lo16(_DEBUG_HALT_REG)
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
-.Lend:
- jmp .Lend
- or r0, r0, r0
diff --git a/libgloss/mt/crt0-16-003.S b/libgloss/mt/crt0-16-003.S
deleted file mode 100644
index bd88bcc54..000000000
--- a/libgloss/mt/crt0-16-003.S
+++ /dev/null
@@ -1,112 +0,0 @@
-; crt0.s - Startup code for the mrisc1. This code initializes the C
-; run-time model.
-;
-;
-; Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
-;
-; The authors hereby grant permission to use, copy, modify, distribute,
-; and license this software and its documentation for any purpose, provided
-; that existing copyright notices are retained in all copies and that this
-; notice is included verbatim in any distributions. No written agreement,
-; license, or royalty fee is required for any of the authorized uses.
-; Modifications to this software may be copyrighted by their authors
-; and need not follow the licensing terms described here, provided that
-; the new terms are clearly indicated on the first page of each file where
-; they apply.
-;
-
- ; Create a label for the start of the eh_frame section.
- .section .eh_frame
-__eh_frame_begin:
-
- .text
- .global _start
-_start:
- ;; Initialize the stack pointer
- ldui sp, #%hi16(__stack)
- addui sp, sp, #%lo16(__stack)
- or fp, sp, sp
- ;; Zero the bss space
- ldui r9, #%hi16(__bss_start)
- addui r9, r9, #%lo16(__bss_start)
- ldui r10, #%hi16(__bss_end)
- addui r10, r10, #%lo16(__bss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext1
- or r0, r0, r0
-.Lcpy0:
- stw r0, r9, #0
- addi r9, r9, #4
- or r0, r0, r0 ; nop
- brle r9, r10, .Lcpy0
- or r0, r0, r0 ; nop
-
-.Lnext1:
- ;; Copy data from ROM to Frame Buffer (on-chip memory)
- ldui r9, #%hi16(_fbdata_start)
- ori r9, r9, #%lo16(_fbdata_start)
- ldui r10, #%hi16(_fbdata_end)
- ori r10, r10, #%lo16(_fbdata_end)
- ldui r11, #%hi16(_fbdata_vma)
- brle r10, r9, .Lnext2
- ori r11, r11, #%lo16(_fbdata_vma)
-.Lcpy1:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy1
- addi r11, r11, #$4
-
-.Lnext2:
- ;; Zero the frame buffer bss section
- ldui r9, #%hi16(_fbbss_start)
- ori r9, r9, #%lo16(_fbbss_start)
- ldui r10, #%hi16(_fbbss_end)
- ori r10, r10, #%lo16(_fbbss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext3
- or r0, r0, r0
-.Lcpy2:
- stw r0, r9, #$0
- addi r9, r9, #$4
- or r0, r0, r0
- brle r9, r10, .Lcpy2
- or r0, r0, r0
-
-.Lnext3:
- ;; Call global and static constructors
- ldui r10, #%hi16(_init)
- ori r10, r10, #%lo16(_init)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Call main
- ldui r10, #%hi16(main)
- ori r10, r10, #%lo16(main)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; DJK - Added 12Nov01. Pass main's return value to exit.
- or r1, r11, r0
-
- ;; Jump to exit
- ldui r10, #%hi16(exit)
- ori r10, r10, #%lo16(exit)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Exit does not return, however, this code is to catch an
- ;; error if it does. Set the processor into sleep mode.
- ori r1, r0, #$1
- stw r1, r0, #%lo16(_DEBUG_HALT_REG)
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
-.Lend:
- jmp .Lend
- or r0, r0, r0
diff --git a/libgloss/mt/crt0-64-001.S b/libgloss/mt/crt0-64-001.S
deleted file mode 100644
index b78e7808e..000000000
--- a/libgloss/mt/crt0-64-001.S
+++ /dev/null
@@ -1,144 +0,0 @@
-; crt0_2.s - Startup code for the mrisc1. This code initializes the C
-; run-time model.
-;
-; 12Nov01 (DJK) - The return code from main was not being passed to exit().
-; Now it is passed as a parameter in R1.
-;
-; 10Sep01 (DJK) - The function exit() does not return. However, in the
-; the case of device error (if the halt bit does not
-; function properly, for instance), then a catch loop
-; has been added.
-;
-;
-; Copyright 2001, 2002, 2003, 2004 Morpho Technologies, Inc.
-;
-
- ; Create a label for the start of the eh_frame section.
- .section .eh_frame
-__eh_frame_begin:
-
- .equ HALT_REG, 0x300
- .section .text
- .global _start
-_start:
- ;; Initialize the stack pointer
- ldui sp, #%hi16(__stack)
- addui sp, sp, #%lo16(__stack)
- or fp, sp, sp
-
- ;; Copy data from ROM to Frame Buffer (on-chip memory)
- ldui r9, #%hi16(_fbdata_start)
- ori r9, r9, #%lo16(_fbdata_start)
- ldui r10, #%hi16(_fbdata_end)
- ori r10, r10, #%lo16(_fbdata_end)
- ldui r11, #%hi16(__FRAME_BUFFER_START)
- brle r10, r9, .Lnext1
- ori r11, r11, #%lo16(__FRAME_BUFFER_START)
-.Lcpy0:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy0
- addi r11, r11, #$4
-
-.Lnext1:
- ;; Copy data from ROM to External Memory (off-chip memory)
- ldui r9, #%hi16(_extdata_start)
- ori r9, r9, #%lo16(_extdata_start)
- ldui r10, #%hi16(_extdata_end)
- ori r10, r10, #%lo16(_extdata_end)
- ldui r11, #%hi16(__EXTERNAL_MEMORY_START)
- brle r10, r9, .Lnext2
- ori r11, r11, #%lo16(__EXTERNAL_MEMORY_START)
-.Lcpy1:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy1
- addi r11, r11, #$4
-
-
-.Lnext2:
- ;; Zero the bss space
- ldui r9, #%hi16(__bss_start)
- addui r9, r9, #%lo16(__bss_start)
- ldui r10, #%hi16(__bss_end)
- addui r10, r10, #%lo16(__bss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext3
- or r0, r0, r0
-.Lcpy2:
- stw r0, r9, #0
- addi r9, r9, #4
- or r0, r0, r0 ; nop
- brle r9, r10, .Lcpy2
- or r0, r0, r0 ; nop
-
-.Lnext3:
- ;; Zero the external memory bss section
- ldui r9, #%hi16(_extbss_start)
- ori r9, r9, #%lo16(_extbss_start)
- ldui r10, #%hi16(_extbss_end)
- ori r10, r10, #%lo16(_extbss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext4
- or r0, r0, r0
-.Lcpy3:
- stw r0, r9, #$0
- addi r9, r9, #$4
- or r0, r0, r0
- brle r9, r10, .Lcpy3
- or r0, r0, r0
-
-.Lnext4:
- ;; Call global and static constructors
- ldui r10, #%hi16(_init)
- ori r10, r10, #%lo16(_init)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Setup destructors to be called from exit.
- ;; (Just in case main never returns....)
- ldui r10, #%hi16(atexit)
- ori r10, r10, #%lo16(atexit)
- ldui r1, #%hi16(_fini)
- ori r1, r1, #%lo16(_fini)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Initialise argc, argv and envp to empty
- addi r1, r0, #0
- addi r2, r0, #0
- addi r3, r0, #0
-
- ;; Call main
- ldui r10, #%hi16(main)
- ori r10, r10, #%lo16(main)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; DJK - Added 12Nov01. Pass main's return value to exit.
- or r1, r11, r0
-
- ;; Jump to exit
- ldui r10, #%hi16(exit)
- ori r10, r10, #%lo16(exit)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Exit does not return, however, this code is to catch an
- ;; error if it does. Set the processor into sleep mode.
- ori r1, r0, #$1
- stw r1, r0, #HALT_REG
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
-.Lend:
- jmp .Lend
- or r0, r0, r0
diff --git a/libgloss/mt/crt0-ms2.S b/libgloss/mt/crt0-ms2.S
deleted file mode 100644
index 2efaebdea..000000000
--- a/libgloss/mt/crt0-ms2.S
+++ /dev/null
@@ -1,121 +0,0 @@
-; crt0.s - Startup code for the ms2. This code initializes the C
-; run-time model.
-;
-;
-; Copyright 2001, 2002, 2003, 2004 Morpho Technologies
-;
-
- ; Create a label for the start of the eh_frame section.
- .section .eh_frame
-__eh_frame_begin:
-
- .text
- .global _start
-_start:
- ;; Initialize the stack pointer
- ldui sp, #%hi16(__stack)
- addui sp, sp, #%lo16(__stack)
- or fp, sp, sp
- ;; Zero the bss space
- ldui r9, #%hi16(__bss_start)
- addui r9, r9, #%lo16(__bss_start)
- ldui r10, #%hi16(__bss_end)
- addui r10, r10, #%lo16(__bss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext1
- or r0, r0, r0
-.Lcpy0:
- stw r0, r9, #0
- addi r9, r9, #4
- or r0, r0, r0 ; nop
- brle r9, r10, .Lcpy0
- or r0, r0, r0 ; nop
-
-.Lnext1:
- ;; Copy data from ROM to Frame Buffer (on-chip memory)
- ldui r9, #%hi16(_fbdata_start)
- ori r9, r9, #%lo16(_fbdata_start)
- ldui r10, #%hi16(_fbdata_end)
- ori r10, r10, #%lo16(_fbdata_end)
- ldui r11, #%hi16(_fbdata_vma)
- brle r10, r9, .Lnext2
- ori r11, r11, #%lo16(_fbdata_vma)
-.Lcpy1:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy1
- addi r11, r11, #$4
-
-.Lnext2:
- ;; Zero the frame buffer bss section
- ldui r9, #%hi16(_fbbss_start)
- ori r9, r9, #%lo16(_fbbss_start)
- ldui r10, #%hi16(_fbbss_end)
- ori r10, r10, #%lo16(_fbbss_end)
- or r0, r0, r0
- brle r10, r9, .Lnext3
- or r0, r0, r0
-.Lcpy2:
- stw r0, r9, #$0
- addi r9, r9, #$4
- or r0, r0, r0
- brle r9, r10, .Lcpy2
- or r0, r0, r0
-
-.Lnext3:
- ;; Copy data from ROM to SRAM (another on-chip memory)
- ldui r9, #%hi16(_sram_data_start)
- ori r9, r9, #%lo16(_sram_data_start)
- ldui r10, #%hi16(_sram_data_end)
- ori r10, r10, #%lo16(_sram_data_end)
- ldui r11, #%hi16(_sram_data_vma)
- brle r10, r9, .Lnext4
- ori r11, r11, #%lo16(_sram_data_vma)
-.Lcpy3:
- ldw r5, r9, #$0
- addi r9, r9, #$4
- stw r5, r11, #$0
- brlt r9, r10, .Lcpy3
- addi r11, r11, #$4
-
-.Lnext4:
- ;; Call global and static constructors
- ldui r10, #%hi16(_init)
- ori r10, r10, #%lo16(_init)
- or r0, r0, r0 ; nop
- or r0, r0, r0 ; nop, added 06Sep05
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Call main
- ldui r10, #%hi16(main)
- ori r10, r10, #%lo16(main)
- or r0, r0, r0 ; nop
- or r0, r0, r0 ; nop, added 06Sep05
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; DJK - Added 12Nov01. Pass main's return value to exit.
- or r1, r11, r0
-
- ;; Jump to exit
- ldui r10, #%hi16(exit)
- ori r10, r10, #%lo16(exit)
- or r0, r0, r0 ; nop
- or r0, r0, r0 ; nop, added 06Sep05
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Exit does not return, however, this code is to catch an
- ;; error if it does. Set the processor into sleep mode.
- ori r1, r0, #$1
- stw r1, r0, #%lo16(_DEBUG_HALT_REG)
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
-.Lend:
- jmp .Lend
- or r0, r0, r0
diff --git a/libgloss/mt/crt0.S b/libgloss/mt/crt0.S
deleted file mode 100644
index ba5249e01..000000000
--- a/libgloss/mt/crt0.S
+++ /dev/null
@@ -1,63 +0,0 @@
-# Startup Code for the Morpho mt
-
-# Create a label for the start of the eh_frame section.
- .section .eh_frame
-__eh_frame_begin:
-
- .section .text
- .global _start
-_start:
-
- ;; Initialise the stack pointer
- ldui sp, #%hi16(__stack)
- addui sp, sp, #%lo16(__stack)
- or fp, sp, sp
-
- ;; Zero the data space
- ldui r9, #%hi16(_edata)
- addui r9, r9, #%lo16(_edata)
- ldui r10, #%hi16(_end)
- addui r10, r10, #%lo16(_end)
- addi r5, r0, #0
-
-.L0:
- stw r5, r9, #0
- addi r9, r9, #4
- or r0, r0, r0 ; nop
- brle r9, r10, .L0
- or r0, r0, r0 ; nop
-
- ;; Call global and static constructors
- ldui r10, #%hi16(_init)
- addui r10, r10, #%lo16(_init)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
- ;; Setup destructors to be called from exit.
- ;; (Just in case main never returns....)
- ldui r10, #%hi16(atexit)
- addui r10, r10, #%lo16(atexit)
- ldui r1, #%hi16(_fini)
- addui r1, r1, #%lo16(_fini)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Initialise argc, argv and envp to empty
- addi r1, r0, #0
- addi r2, r0, #0
- addi r3, r0, #0
-
- ;; Call main
- ldui r10, #%hi16(main)
- addui r10, r10, #%lo16(main)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
-
- ;; Jump to exit
- ldui r10, #%hi16(exit)
- addui r10, r10, #%lo16(exit)
- or r0, r0, r0 ; nop
- jal r14, r10
- or r0, r0, r0 ; nop
diff --git a/libgloss/mt/exit-16-002.c b/libgloss/mt/exit-16-002.c
deleted file mode 100644
index ba048d977..000000000
--- a/libgloss/mt/exit-16-002.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-
-void _exit (n)
-{
- /* Set bit #0 in the _DEBUG_HALT_REG to trigger program exit to
- the simulator. (The simulator will return a SIGQUIT signal.) */
- asm("ori r1, r0, #$1\n");
- asm("stw r1, r0, #$fffff300\n");
-}
diff --git a/libgloss/mt/exit-16-003.c b/libgloss/mt/exit-16-003.c
deleted file mode 100644
index ba048d977..000000000
--- a/libgloss/mt/exit-16-003.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-
-void _exit (n)
-{
- /* Set bit #0 in the _DEBUG_HALT_REG to trigger program exit to
- the simulator. (The simulator will return a SIGQUIT signal.) */
- asm("ori r1, r0, #$1\n");
- asm("stw r1, r0, #$fffff300\n");
-}
diff --git a/libgloss/mt/exit-64-001.c b/libgloss/mt/exit-64-001.c
deleted file mode 100644
index 97c7b8ce7..000000000
--- a/libgloss/mt/exit-64-001.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-
-void _exit (n)
-{
- /* Set bit #0 in the _DEBUG_HALT_REG to trigger program exit to
- the simulator. (The simulator will return a SIGQUIT signal.) */
- asm("ori r1, r0, #$1\n");
- asm("stw r1, r0, #$300\n");
-}
diff --git a/libgloss/mt/exit-ms2.c b/libgloss/mt/exit-ms2.c
deleted file mode 100644
index 93a3f852b..000000000
--- a/libgloss/mt/exit-ms2.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-
-void _exit (n)
-{
- // Set bit #0 in the _DEBUG_HALT_REG to trigger program exit to
- // the simulator. (The simulator will return a SIGQUIT signal.)
- asm("ori r1, r0, #$1\n");
- asm("stw r1, r0, #$fffff300\n");
-} // exit
diff --git a/libgloss/mt/exit.c b/libgloss/mt/exit.c
deleted file mode 100644
index cc7983b3f..000000000
--- a/libgloss/mt/exit.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-void _exit (n)
-{
- TRAP0 (SYS_exit, n, 0, 0);
-}
diff --git a/libgloss/mt/fstat.c b/libgloss/mt/fstat.c
deleted file mode 100644
index 1d7d2dcf5..000000000
--- a/libgloss/mt/fstat.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-fstat (int file,
- struct stat *st)
-{
- st->st_mode = S_IFCHR;
- st->st_blksize = 4096;
- return 0;
-}
diff --git a/libgloss/mt/getpid.c b/libgloss/mt/getpid.c
deleted file mode 100644
index 8d686b86a..000000000
--- a/libgloss/mt/getpid.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-getpid (n)
-{
- return 1;
-}
diff --git a/libgloss/mt/gettime.c b/libgloss/mt/gettime.c
deleted file mode 100644
index 1a0426744..000000000
--- a/libgloss/mt/gettime.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-#include "sys/time.h"
-
-
-int
-_gettimeofday (struct timeval *tp, void *tzp)
-{
- return TRAP0 (SYS_gettimeofday, tp, tzp, 0);
-}
diff --git a/libgloss/mt/isatty.c b/libgloss/mt/isatty.c
deleted file mode 100644
index 0930a531e..000000000
--- a/libgloss/mt/isatty.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-isatty (fd)
- int fd;
-{
- return 1;
-}
diff --git a/libgloss/mt/kill.c b/libgloss/mt/kill.c
deleted file mode 100644
index e8ea43769..000000000
--- a/libgloss/mt/kill.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-kill (n, m)
-{
- return TRAP0 (SYS_exit, 0xdead, 0, 0);
-}
-
diff --git a/libgloss/mt/lseek.c b/libgloss/mt/lseek.c
deleted file mode 100644
index 783909104..000000000
--- a/libgloss/mt/lseek.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/unistd.h>
-#include "trap.h"
-
-
-off_t
-lseek (int file,
- off_t ptr,
- int dir)
-{
- return TRAP0 (SYS_lseek, file, ptr, dir);
-}
diff --git a/libgloss/mt/ms2.ld b/libgloss/mt/ms2.ld
deleted file mode 100644
index 3dac307af..000000000
--- a/libgloss/mt/ms2.ld
+++ /dev/null
@@ -1,271 +0,0 @@
-OUTPUT_FORMAT("elf32-mt", "elf32-mt", "elf32-mt")
-OUTPUT_ARCH(mt)
-ENTRY(__boot_start)
-
-/* Do we need any of these for elf?
- __DYNAMIC = 0; */
-MEMORY
-{
- ram (rwx) : ORIGIN = 0x0, LENGTH = 16M
- sram (wx) : ORIGIN = 0xfef00000, LENGTH = 64K
- frame-buffer (w) : ORIGIN = 0xff000000, LENGTH = 80K
- dma-ram (w) : ORIGIN = 0x1000000, LENGTH = 32M
- ports (w) : ORIGIN = 0xfffff000, LENGTH = 4K
-}
-SECTIONS
-{
- /* Read-only sections, merged into text segment: */
- . = 0x0;
- PROVIDE(__executable_start = 0x0);
- .interp : { *(.interp) }
- .hash : { *(.hash) }
- .dynsym : { *(.dynsym) }
- .dynstr : { *(.dynstr) }
- .gnu.version : { *(.gnu.version) }
- .gnu.version_d : { *(.gnu.version_d) }
- .gnu.version_r : { *(.gnu.version_r) }
- .rel.init : { *(.rel.init) }
- .rela.init : { *(.rela.init) }
- .rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
- .rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
- .rel.fini : { *(.rel.fini) }
- .rela.fini : { *(.rela.fini) }
- .rel.rodata : { *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*) }
- .rela.rodata : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
- .rel.data.rel.ro : { *(.rel.data.rel.ro*) }
- .rela.data.rel.ro : { *(.rela.data.rel.ro*) }
- .rel.data : { *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*) }
- .rela.data : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
- .rel.tdata : { *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*) }
- .rela.tdata : { *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) }
- .rel.tbss : { *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*) }
- .rela.tbss : { *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) }
- .rel.ctors : { *(.rel.ctors) }
- .rela.ctors : { *(.rela.ctors) }
- .rel.dtors : { *(.rel.dtors) }
- .rela.dtors : { *(.rela.dtors) }
- .rel.got : { *(.rel.got) }
- .rela.got : { *(.rela.got) }
- .rel.sdata : { *(.rel.sdata .rel.sdata.* .rel.gnu.linkonce.s.*) }
- .rela.sdata : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
- .rel.sbss : { *(.rel.sbss .rel.sbss.* .rel.gnu.linkonce.sb.*) }
- .rela.sbss : { *(.rela.sbss .rela.sbss.* .rel.gnu.linkonce.sb.*) }
- .rel.sdata2 : { *(.rel.sdata2 .rel.sdata2.* .rel.gnu.linkonce.s2.*) }
- .rela.sdata2 : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
- .rel.sbss2 : { *(.rel.sbss2 .rel.sbss2.* .rel.gnu.linkonce.sb2.*) }
- .rela.sbss2 : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
- .rel.bss : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
- .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
- .rel.plt : { *(.rel.plt) }
- .rela.plt : { *(.rela.plt) }
-
- .startup : { *startup-16-003.o(.startup) } >ram =0
- . = 0x40;
-
- .init : { KEEP (*(.init)) } >ram =0
- .plt : { *(.plt) } >ram
- .text :
- {
- *startup-16-004.o(.text);
- *(.text .stub .text.* .gnu.linkonce.t.*)
- KEEP (*(.text.*personality*))
- /* .gnu.warning sections are handled specially by elf32.em. */
- *(.gnu.warning)
- } >ram =0
- .fini : { KEEP (*(.fini)) } >ram =0
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } >ram
- .rodata1 : { *(.rodata1) } >ram
- .sdata2 : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) } >ram
- .sbss2 : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) } >ram
- .eh_frame_hdr : { *(.eh_frame_hdr) } >ram
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RO { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Adjust the address for the data segment. We want to adjust up to
- the same address within the page on the next page up. */
- . = ALIGN(256) + (. & (256 - 1));
- /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) } >ram
- .gcc_except_table : ONLY_IF_RW { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) } >ram
- /* Thread Local Storage sections */
- .tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) } >ram
- .tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) } >ram
- /* Ensure the __preinit_array_start label is properly aligned. We
- could instead move the label definition inside the section, but
- the linker would then create the section even if it turns out to
- be empty, which isn't pretty. */
- . = ALIGN(32 / 8);
- PROVIDE (__preinit_array_start = .);
- .preinit_array : { *(.preinit_array) } >ram
- PROVIDE (__preinit_array_end = .);
- PROVIDE (__init_array_start = .);
- .init_array : { *(.init_array) } >ram
- PROVIDE (__init_array_end = .);
- PROVIDE (__fini_array_start = .);
- .fini_array : { *(.fini_array) } >ram
- PROVIDE (__fini_array_end = .);
- .ctors :
- {
- /* gcc uses crtbegin.o to find the start of
- the constructors, so we make sure it is
- first. Because this is a wildcard, it
- doesn't matter if the user does not
- actually link against crtbegin.o; the
- linker won't look for a file to match a
- wildcard. The wildcard also means that it
- doesn't matter which directory crtbegin.o
- is in. */
- KEEP (*crtbegin.o(.ctors))
- /* We don't want to include the .ctor section from
- from the crtend.o file until after the sorted ctors.
- The .ctor section from the crtend file contains the
- end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
- KEEP (*(SORT(.ctors.*)))
- KEEP (*(.ctors))
- } >ram
- .dtors :
- {
- KEEP (*crtbegin*.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
- KEEP (*(SORT(.dtors.*)))
- KEEP (*(.dtors))
- } >ram
- .jcr : { KEEP (*(.jcr)) } >ram
- .data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) } >ram
- .dynamic : { *(.dynamic) } >ram
-
- /* DJK - Re-align the data section from the read-only section. */
- . = ALIGN(16) + (. & (16 - 1));
- PROVIDE (_data = .);
- .data :
- {
- *(.data .data.* .gnu.linkonce.d.*)
- KEEP (*(.gnu.linkonce.d.*personality*))
- SORT(CONSTRUCTORS)
- } >ram
- .data1 : { *(.data1) } >ram
- .got : { *(.got.plt) *(.got) } >ram
-
- /* We want the small data sections together, so single-instruction offsets
- can access them all, and initialized data all before uninitialized, so
- we can shorten the on-disk segment size. */
- .sdata : { *(.sdata .sdata.* .gnu.linkonce.s.*) } >ram
- _edata = .;
- PROVIDE ( edata = . );
- .sbss :
- {
- PROVIDE (__sbss_start = .);
- PROVIDE (___sbss_start = .);
- *(.dynsbss)
- *(.sbss .sbss.* .gnu.linkonce.sb.*)
- *(.scommon)
- PROVIDE (__sbss_end = .);
- PROVIDE (___sbss_end = .);
- } >ram
- .bss :
- {
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- /* Align here to ensure that the .bss section occupies space up to
- _end. Align after .bss to ensure correct alignment even if the
- .bss section disappears because there are no input sections. */
- . = ALIGN(32 / 8);
- } >ram
- . = ALIGN(32 / 8);
- __bss_start = ADDR ( .sbss ) ;
- __bss_end = __bss_start + SIZEOF ( .sbss ) + SIZEOF ( .bss ) - 4 ;
- _end = .;
- PROVIDE (end = .);
-
- /* DJK - Initialized frame buffer data is copied from RAM to FB. */
- .auxbss : AT (ADDR(.bss) + SIZEOF(.bss)) { *(.auxbss) } >frame-buffer
- .auxdata : AT (LOADADDR(.auxbss) + SIZEOF(.auxbss))
- {
- *(.auxdata.bank0)
- . = ALIGN(0x4000);
- *(.auxdata.bank1)
- . = ALIGN(0x4000);
- *(.auxdata.bank2)
- . = ALIGN(0x4000);
- *(.auxdata.bank3)
- . = ALIGN(0x4000);
- *(.auxdata.bank4)
- *(.auxdata)
- } >frame-buffer
-
- _fbbss_start = ADDR ( .auxbss );
- _fbbss_end = _fbbss_start + SIZEOF ( .auxbss ) - 4;
- _fbdata_start = LOADADDR ( .auxdata );
- _fbdata_end = _fbdata_start + SIZEOF ( .auxdata ) ;
- _fbdata_vma = ADDR ( .auxdata );
-
- PROVIDE (__FRAME_BUFFER_START = ADDR(.auxbss) );
- PROVIDE (__FRAME_BUFFER_SIZE = 0x14000);
- PROVIDE (__FRAME_BUFFER_END = __FRAME_BUFFER_START + __FRAME_BUFFER_SIZE);
-
- /* For now, locate data ahead of code in onchip sram/memory. */
- .sram : AT (LOADADDR(.auxdata) + SIZEOF(.auxdata))
- {
- *(.sram.data)
- . = ALIGN(4) ; /* Make sure that instructions are aligned... */
- *(.sram.text)
- } >sram
-
- _sram_data_start = LOADADDR ( .sram );
- _sram_data_end = _sram_data_start + SIZEOF ( .sram ) ;
- _sram_data_vma = ADDR ( .sram );
-
- .dma : { _dma_start = .; *(.dma) _dma_end = .; } >dma-ram
- .internal_io (NOLOAD) : { *(.internal_io) } >ports
-
- /* Stabs debugging sections. */
- .stab 0 : { *(.stab) }
- .stabstr 0 : { *(.stabstr) }
- .stab.excl 0 : { *(.stab.excl) }
- .stab.exclstr 0 : { *(.stab.exclstr) }
- .stab.index 0 : { *(.stab.index) }
- .stab.indexstr 0 : { *(.stab.indexstr) }
- .comment 0 : { *(.comment) }
- /* DWARF debug sections.
- Symbols in the DWARF debugging sections are relative to the beginning
- of the section so we begin them at 0. */
- /* DWARF 1 */
- .debug 0 : { *(.debug) }
- .line 0 : { *(.line) }
- /* GNU DWARF 1 extensions */
- .debug_srcinfo 0 : { *(.debug_srcinfo) }
- .debug_sfnames 0 : { *(.debug_sfnames) }
- /* DWARF 1.1 and DWARF 2 */
- .debug_aranges 0 : { *(.debug_aranges) }
- .debug_pubnames 0 : { *(.debug_pubnames) }
- /* DWARF 2 */
- .debug_info 0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
- .debug_abbrev 0 : { *(.debug_abbrev) }
- .debug_line 0 : { *(.debug_line) }
- .debug_frame 0 : { *(.debug_frame) }
- .debug_str 0 : { *(.debug_str) }
- .debug_loc 0 : { *(.debug_loc) }
- .debug_macinfo 0 : { *(.debug_macinfo) }
- /* SGI/MIPS DWARF 2 extensions */
- .debug_weaknames 0 : { *(.debug_weaknames) }
- .debug_funcnames 0 : { *(.debug_funcnames) }
- .debug_typenames 0 : { *(.debug_typenames) }
- .debug_varnames 0 : { *(.debug_varnames) }
-
- /* In a multi-core environment, each core is given its own stack space
- equal to __stack_size, growing downwards. */
- PROVIDE (__stack = 0x97ff0);
- PROVIDE (__stack_size = 0x800);
-
- .stack (DEFINED(__stack) ? __stack : 0x007ffff0) :
- {
- __stack = .;
- *(.stack)
- LONG(0xdeaddead)
- }
- /DISCARD/ : { *(.note.GNU-stack) }
-}
diff --git a/libgloss/mt/open.c b/libgloss/mt/open.c
deleted file mode 100644
index d727bdd9f..000000000
--- a/libgloss/mt/open.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-open (const char *path, int flags, int mode)
-{
- return TRAP0 (SYS_open, path, flags, mode);
-}
diff --git a/libgloss/mt/read.c b/libgloss/mt/read.c
deleted file mode 100644
index e7f37fafa..000000000
--- a/libgloss/mt/read.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-read (int file,
- char *ptr,
- size_t len)
-{
- return TRAP0 (SYS_read, file, ptr, len);
-}
diff --git a/libgloss/mt/sbrk.c b/libgloss/mt/sbrk.c
deleted file mode 100644
index 1f959c084..000000000
--- a/libgloss/mt/sbrk.c
+++ /dev/null
@@ -1,24 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-caddr_t
-sbrk (size_t incr)
-{
- extern char end; /* Defined by the linker */
- static char *heap_end;
- char *prev_heap_end;
-
- char *sp = (char *) &sp;
-
- if (heap_end == 0)
- {
- heap_end = &end;
- }
- prev_heap_end = heap_end;
- heap_end += incr;
-
- return (caddr_t) prev_heap_end;
-}
diff --git a/libgloss/mt/startup-16-002.S b/libgloss/mt/startup-16-002.S
deleted file mode 100644
index 475a120bd..000000000
--- a/libgloss/mt/startup-16-002.S
+++ /dev/null
@@ -1,628 +0,0 @@
-/*
- * interrupt_vectors.s -- the interrupt handler jump table.
- *
- *
- * There are a total of 32 interrupt vector possible, however, only
- * 11 of those are currently used (the others are reserved). The
- * order of vectors is as follows:
- *
- * 1. Boot Vector. Vector for power-on/reset.
- * 2. Software Vector. Vector for handling the SI instruction (an
- * explicit interrupt caused by software).
- * 3. Break Vector. Vector for handling the Break instruction.
- * 4. Device 0 Vector. Service vector for device zero.
- * 5. Device 1 Vector. Service vector for device one.
- * 6. Device 2 Vector. Service vector for device two.
- * 7. Device 3 Vector. Service vector for device three.
- * 8. Device 4 Vector. Service vector for device four.
- * 9. Device 5 Vector. Service vector for device five.
- * 10. Device 6 Vector. Service vector for device six.
- * 11. Device 7 Vector. Service vector for device seven.
- *
- * The rest of the interrupt vectors are reserved for future use.
- *
- *
- * Each jump table entry consists of the following two instructions:
- *
- * jmp Label ; Label as appropriate
- * nop ; implemented as or r0,r0,r0
- *
- * The following labels are reserved for the vectors named above,
- * respectively:
- *
- * _BOOTIVEC, _SOFTIVEC, _BRKIVEC, _DEV0IVEC, _DEV1IVEC, _DEV2IVEC,
- * _DEV3IVEC, _DEV4IVEC, _DEV5IVEC, _DEV6IVEC, _DEV7IVEC
- *
- *
- *
- * Copyright (c) 2001, 2002, 2003, 2004 Morpho Technologies
- *
- */
-
- .section .startup, "a", @progbits
- .global __boot_start
-__boot_start:
-_INTERRUPT_VECTOR_TABLE:
- jmp _BOOTIVEC ; Boot vector
- or r0, r0, r0
- jmp _SOFTIVEC ; Vector for SI instruction
- or r0,r0,r0
- jmp _BRKIVEC ; Vector for Break instruction
- or r0,r0,r0
- ; The illegal instruction trap is not implemented.
-_RESERVED1_IVEC:
- jmp _RESERVED1_IVEC ; Vector for illegal instruction
- or r0,r0,r0
- jmp _OVFIVEC ; Vector for overflow exception
- or r0,r0,r0
-_RESERVED2_IVEC:
- jmp _RESERVED2_IVEC
- or r0,r0,r0
-_RESERVED3_IVEC:
- jmp _RESERVED3_IVEC
- or r0,r0,r0
-_RESERVED4_IVEC:
- jmp _RESERVED4_IVEC
- or r0,r0,r0
-
- .text
-
- .equ SI_IOPORT_ADR, _DEBUG_SW_SYSREQ_REG
- .equ SI_IOPORT_BIT, 0x1
- .equ BRK_IOPORT_ADR, _DEBUG_BREAK_REG
- .equ BRK_IOPORT_BIT, 0x1
-
- .global _BOOTIVEC
-_BOOTIVEC:
- ; Initialize the interrupt controller's interrupt vector registers
- ldui r1, #%hi16(_IVEC_DEFAULT)
- ori r1, r1, #%lo16(_IVEC_DEFAULT)
- stw r1, r0, #%lo16(_DEV0_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV1_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV2_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV3_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV4_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV5_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV6_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV7_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV8_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV9_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV10_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV11_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV12_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV13_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV14_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV15_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV16_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV17_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV18_INTERRUPT_REG)
-
- ; Statically initialized data must be copied from ROM to RAM.
- ; This is done in the C run-time start-up code (crt0.o).
-
- ; Jump to the beginning of the application and enable interrupts.
- jmp _start
- ei
-
-
-
- ; Handler for the SI instruction. To perform a system call, the
- ; C model uses a trapping mechanism which executes an SI instruction.
- ; The Morpho Technologies simulator simply performs a branch to
- ; this vector to simulate the SI instruction (this is as the hardware
- ; behaves). In order to trigger the simulator that a system call
- ; is needed a write into the I/O register at address $40005 to
- ; set bit #2 (0x4) is necessary.
- ;
- ; The above address has been changed to 0x00031C and the bit number
- ; is zero. (The manifest constants have been changed to reflect this.)
- .global _SOFTIVEC
-_SOFTIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(SI_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(SI_IOPORT_ADR)
- ori r10, r0, #SI_IOPORT_BIT
- stw r10, r9, #$0
- or r0, r0, r0 ; SYS_call is handled by simulator here...
- ldw r10, sp, #$0
- or r0, r0, r0
- ldw r9, sp, #$4
- reti r14
- addi sp, sp, #$8
-
-
-
- ; Handler for BREAK instruction. This handler triggers the simulator
- ; to send a SIGTRAP signal to gdb by writing to the I/O register at
- ; address $40005, setting bit #0 (0x1).
- ;
- ; The above address has been changed to 0x000304 and the bit number
- ; is zero. (The manifest constants have been changed to reflect this.)
- .global _BRKIVEC
-_BRKIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(BRK_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(BRK_IOPORT_ADR)
- ori r10, r0, #BRK_IOPORT_BIT
- stw r10, r9, #$0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- ldw r10, sp, #$0
- ldw r9, sp, #$4
- reti r15
- addi sp, sp, #$8
-
-
- ; The documentation is lacking in the specification of the Overflow
- ; Exception generation. The address of the instruction causing the
- ; overflow is placed into R15 and the overflow exception interrupt
- ; is triggered. So, to continue execution, return to the address
- ; of the next instruction (i.e., R15 + one instruction).
-_OVFIVEC:
- addi r15, r15, #$4
- or r0, r0, r0
- reti r15
- or r0, r0, r0
-
-
- .global _IVEC_DEFAULT
-_IVEC_DEFAULT:
- reti r15
- or r0, r0, r0
-
-
- .section .internal_io, "a", @progbits
- .fill 256 ; Fill the first page.
-
- ; This is the memory-mapped I/O region.
-
- ; Hardware Interrupt Registers
- ;.org 0xfff100
- .global _DEV0_INTERRUPT_REG
-_DEV0_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_REG
-_DEV1_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_REG
-_DEV2_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_REG
-_DEV3_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_REG
-_DEV4_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_REG
-_DEV5_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_REG
-_DEV6_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_REG
-_DEV7_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV8_INTERRUPT_REG
-_DEV8_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV9_INTERRUPT_REG
-_DEV9_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV10_INTERRUPT_REG
-_DEV10_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV11_INTERRUPT_REG
-_DEV11_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV12_INTERRUPT_REG
-_DEV12_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV13_INTERRUPT_REG
-_DEV13_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV14_INTERRUPT_REG
-_DEV14_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV15_INTERRUPT_REG
-_DEV15_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV16_INTERRUPT_REG
-_DEV16_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV17_INTERRUPT_REG
-_DEV17_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV18_INTERRUPT_REG
-_DEV18_INTERRUPT_REG:
- .word 0x00000000
-
- ; 128 bytes minus ten registers (four bytes per register)
- .fill (128 - 19 * 4)
-
- .global _INTERRUPT_MASK_REG
-_INTERRUPT_MASK_REG:
- .word 0x00000000
-
- ; 128 bytes minus one register (four bytes per register)
- .fill (128 - 1 * 4)
-
-
- ;.org 0xfff200
- ; MorphoSys Decoder Registers
- .global _MS_DEC_CIRC_BUFF_SEL_REG
-_MS_DEC_CIRC_BUFF_SEL_REG:
- .word 0x00000000
-
- .global _MS_DEC_SKIP_FACTOR_REG
-_MS_DEC_SKIP_FACTOR_REG:
- .word 0x00000000
-
- .global _MS_DEC_CUSTOM_PERM_REG
-_MS_DEC_CUSTOM_PERM_REG:
- .word 0x00000000
-
- .global _MS_DEC_CTXT_BASE_REG
-_MS_DEC_CTXT_BASE_REG:
- .word 0x00000000
-
- .global _MS_DEC_LOOKUP_TBL_REG
-_MS_DEC_LOOKUP_TBL_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF0_END_REG
-_MS_CIRC_BUFF0_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF0_SIZE_REG
-_MS_CIRC_BUFF0_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK0_END_REG
-_MS_DATA_BLK0_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK0_SIZE_REG
-_MS_DATA_BLK0_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF1_END_REG
-_MS_CIRC_BUFF1_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF1_SIZE_REG
-_MS_CIRC_BUFF1_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK1_END_REG
-_MS_DATA_BLK1_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK1_SIZE_REG
-_MS_DATA_BLK1_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF2_END_REG
-_MS_CIRC_BUFF2_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF2_SIZE_REG
-_MS_CIRC_BUFF2_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK2_END_REG
-_MS_DATA_BLK2_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK2_SIZE_REG
-_MS_DATA_BLK2_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF3_END_REG
-_MS_CIRC_BUFF3_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF3_SIZE_REG
-_MS_CIRC_BUFF3_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK3_END_REG
-_MS_DATA_BLK3_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK3_SIZE_REG
-_MS_DATA_BLK3_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF4_END_REG
-_MS_CIRC_BUFF4_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF4_SIZE_REG
-_MS_CIRC_BUFF4_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK4_END_REG
-_MS_DATA_BLK4_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK4_SIZE_REG
-_MS_DATA_BLK4_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF5_END_REG
-_MS_CIRC_BUFF5_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF5_SIZE_REG
-_MS_CIRC_BUFF5_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK5_END_REG
-_MS_DATA_BLK5_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK5_SIZE_REG
-_MS_DATA_BLK5_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF6_END_REG
-_MS_CIRC_BUFF6_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF6_SIZE_REG
-_MS_CIRC_BUFF6_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK6_END_REG
-_MS_DATA_BLK6_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK6_SIZE_REG
-_MS_DATA_BLK6_SIZE_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF7_END_REG
-_MS_CIRC_BUFF7_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF7_SIZE_REG
-_MS_CIRC_BUFF7_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLK7_END_REG
-_MS_DATA_BLK7_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLK7_SIZE_REG
-_MS_DATA_BLK7_SIZE_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC0_REG
-_MS_DEC_AUTO_INC0_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC1_REG
-_MS_DEC_AUTO_INC1_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC2_REG
-_MS_DEC_AUTO_INC2_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC3_REG
-_MS_DEC_AUTO_INC3_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC4_REG
-_MS_DEC_AUTO_INC4_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC5_REG
-_MS_DEC_AUTO_INC5_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC6_REG
-_MS_DEC_AUTO_INC6_REG:
- .word 0x00000000
-
- .global _MS_DEC_AUTO_INC7_REG
-_MS_DEC_AUTO_INC7_REG:
- .word 0x00000000
-
-
- ; 256 bytes minus forty-five registers (four bytes per register)
- .fill (256 - 45 * 4)
-
-
-
- ;.org 0xfff300
- ; Debug Registers
- .global _DEBUG_HALT_REG
-_DEBUG_HALT_REG:
- .word 0x00000000
-
- .global _DEBUG_BREAK_REG
-_DEBUG_BREAK_REG:
- .word 0x00000000
-
- ; There are five reserved registers.
- .fill (5 * 4)
-
- .global _DEBUG_SW_SYSREQ_REG
-_DEBUG_SW_SYSREQ_REG:
- .word 0x00000000
-
- ; 256 bytes minus eight registers (four bytes per register)
- .fill (256 - 8 * 4)
-
-
-
- ;.org 0xfff400
- ; Sequence Generator Registers
- .global _SEQ_GEN_CTRL_REG
-_SEQ_GEN_CTRL_REG:
- .word 0x00000000
-
- .global _SEQ_GEN_MASK_REGS
-_SEQ_GEN_MASK_REGS:
- ; The mask registers consume two pages (less one control register).
- ; 512 bytes minus one register (four bytes per register).
- .fill (256 + 256 - 1 * 4)
-
-
-
- ;.org 0xfff600
- ; Timer Registers
- .global _TIMER0_VAL_REG
-_TIMER0_VAL_REG:
- .word 0x00000000
-
- .global _TIMER1_VAL_REG
-_TIMER1_VAL_REG:
- .word 0x00000000
-
- .global _TIMER2_VAL_REG
-_TIMER2_VAL_REG:
- .word 0x00000000
-
- .global _TIMER3_VAL_REG
-_TIMER3_VAL_REG:
- .word 0x00000000
-
- ; 256 bytes minus four registers (four bytes per register)
- .fill (256 - 4 * 4)
-
-
-
- ;.org 0xfff700
- ; Output Line Control Registers
- .global _OUTPUT0_CTRL
-_OUTPUT0_CTRL:
- .word 0x00000000
-
- .global _OUTPUT1_CTRL
-_OUTPUT1_CTRL:
- .word 0x00000000
-
- .global _OUTPUT2_CTRL
-_OUTPUT2_CTRL:
- .word 0x00000000
-
- .global _OUTPUT3_CTRL
-_OUTPUT3_CTRL:
- .word 0x00000000
-
- .global _OUTPUT4_CTRL
-_OUTPUT4_CTRL:
- .word 0x00000000
-
- .global _OUTPUT5_CTRL
-_OUTPUT5_CTRL:
- .word 0x00000000
-
- .global _OUTPUT6_CTRL
-_OUTPUT6_CTRL:
- .word 0x00000000
-
- .global _OUTPUT7_CTRL
-_OUTPUT7_CTRL:
- .word 0x00000000
-
- .global _OUTPUT8_CTRL
-_OUTPUT8_CTRL:
- .word 0x00000000
-
- .global _OUTPUT9_CTRL
-_OUTPUT9_CTRL:
- .word 0x00000000
-
- .global _OUTPUT10_CTRL
-_OUTPUT10_CTRL:
- .word 0x00000000
-
- ;; 128 bytes minus eleven registers (four bytes per register)
- ;.fill (128 - 11 * 4)
-
- .global _INPUT0_CTRL
-_INPUT0_CTRL:
- .word 0x00000000
-
- ;; 128 bytes minus one register (four bytes per register)
- ;.fill (128 - 1 * 4)
- ; 256 bytes minus twelve registers (four bytes per register)
- .fill (256 - 12 * 4)
-
-
-
- ;.org 0xfff800
- ; IQ Buffer Registers
- .global _IQ_BUFF_CTRL_REG
-_IQ_BUFF_CTRL_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER1_REG
-_IQ_BUFF_PARAMETER1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_DATA_SIZE1_REG
-_IQ_BUFF_DATA_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE1_REG
-_IQ_BUFF_TRANSFER_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_ADDR1_REG
-_IQ_BUFF_FB_ADDR1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER2_REG
-_IQ_BUFF_PARAMETER2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_DATA_SIZE2_REG
-_IQ_BUFF_DATA_SIZE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE2_REG
-_IQ_BUFF_TRANSFER_SIZE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_ADDR2_REG
-_IQ_BUFF_FB_ADDR2_REG:
- .word 0x00000000
-
- ; 256 bytes minus nine registers (four bytes per register)
- .fill (256 - 9 * 4)
-
-
- ;.org 0xfff900
- ; Reserved memory-mapped space.
- .fill (0x1000 - 0x900)
diff --git a/libgloss/mt/startup-16-003.S b/libgloss/mt/startup-16-003.S
deleted file mode 100644
index 9f65f5d4d..000000000
--- a/libgloss/mt/startup-16-003.S
+++ /dev/null
@@ -1,838 +0,0 @@
-/*
- * $Header$
- *
- * interrupt_vectors.s -- the interrupt handler jump table.
- *
- *
- * There are a total of 32 interrupt vector possible, however, only
- * 11 of those are currently used (the others are reserved). The
- * order of vectors is as follows:
- *
- * 1. Boot Vector. Vector for power-on/reset.
- * 2. Software Vector. Vector for handling the SI instruction (an
- * explicit interrupt caused by software).
- * 3. Break Vector. Vector for handling the Break instruction.
- * 4. Device 0 Vector. Service vector for device zero.
- * 5. Device 1 Vector. Service vector for device one.
- * 6. Device 2 Vector. Service vector for device two.
- * 7. Device 3 Vector. Service vector for device three.
- * 8. Device 4 Vector. Service vector for device four.
- * 9. Device 5 Vector. Service vector for device five.
- * 10. Device 6 Vector. Service vector for device six.
- * 11. Device 7 Vector. Service vector for device seven.
- *
- * The rest of the interrupt vectors are reserved for future use.
- *
- *
- * Each jump table entry consists of the following two instructions:
- *
- * jmp Label ; Label as appropriate
- * nop ; implemented as or r0,r0,r0
- *
- * The following labels are reserved for the vectors named above,
- * respectively:
- *
- * _BOOTIVEC, _SOFTIVEC, _BRKIVEC, _DEV0IVEC, _DEV1IVEC, _DEV2IVEC,
- * _DEV3IVEC, _DEV4IVEC, _DEV5IVEC, _DEV6IVEC, _DEV7IVEC
- *
- * 09Jan04 (DJK) Modified internal I/O port definitions for the
- * MS1-16-003.
- *
- * 10Oct01 (DJK) The memory map is finalized and the first 4K of address
- * space is now reserved for memory-mapped I/O devices.
- * (There is over 2K unused, reserved space in this area.)
- *
- * 26Sep01 (DJK) The memory map is changed and the device interrupts are
- * now memory-mapped.
- *
- *
- *
- * Copyright (c) 2001, 2002, 2003, 2004 Morpho Technologies
- *
- */
-
- .section .startup, "a", @progbits
- .global __boot_start
-__boot_start:
-_INTERRUPT_VECTOR_TABLE:
- jmp _BOOTIVEC ; Boot vector
- or r0, r0, r0
- jmp _SOFTIVEC ; Vector for SI instruction
- or r0,r0,r0
- jmp _BRKIVEC ; Vector for Break instruction
- or r0,r0,r0
- ; The illegal instruction trap is not implemented.
- ;jmp _ILLIVEC ; Vector for illegal instruction
- or r0,r0,r0
- or r0,r0,r0
-_RESERVED1_IVEC:
- jmp _RESERVED1_IVEC
- or r0,r0,r0
-_RESERVED2_IVEC:
- jmp _RESERVED2_IVEC
- or r0,r0,r0
-_RESERVED3_IVEC:
- jmp _RESERVED3_IVEC
- or r0,r0,r0
-_RESERVED4_IVEC:
- jmp _RESERVED4_IVEC
- or r0,r0,r0
-
-
- .text
-
- .equ SI_IOPORT_ADR, _DEBUG_SW_SYSREQ_REG
- .equ SI_IOPORT_BIT, 0x1
- .equ BRK_IOPORT_ADR, _DEBUG_BREAK_REG
- .equ BRK_IOPORT_BIT, 0x1
-
- .global _BOOTIVEC
-_BOOTIVEC:
- ; Initialize the interrupt controller's interrupt vector registers
- ldui r1, #%hi16(_IVEC_DEFAULT)
- ori r1, r1, #%lo16(_IVEC_DEFAULT)
- stw r1, r0, #%lo16(_DEV0_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV1_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV2_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV3_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV4_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV5_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV6_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV7_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV8_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV9_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV10_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV11_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV12_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV13_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV14_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV15_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV16_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV17_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV18_INTERRUPT_REG)
-
- ; Statically initialized data must be copied from ROM to RAM.
- ; This is done in the C run-time start-up code (crt0.o).
-
- ; Jump to the beginning of the application and enable interrupts.
- jmp _start
- ei
-
-
- ; Handler for the SI instruction. To perform a system call, the
- ; C model uses a trapping mechanism which executes an SI instruction.
- ; The Morpho Technologies simulator simply performs a branch to
- ; this vector to simulate the SI instruction (this is as the hardware
- ; behaves). In order to trigger the simulator that a system call
- ; is needed a write into the I/O register at address $40005 to
- ; set bit #2 (0x4) is necessary.
- ;
- ; The above address has been changed to 0x00031C and the bit number
- ; is zero. (The manifest constants have been changed to reflect this.)
- .global _SOFTIVEC
-_SOFTIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(SI_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(SI_IOPORT_ADR)
- ori r10, r0, #SI_IOPORT_BIT
- stw r10, r9, #$0
- ; SYS_call is handled by simulator here...
- or r0, r0, r0
- ldw r10, sp, #$0
- or r0, r0, r0
- ldw r9, sp, #$4
- reti r14
- addi sp, sp, #$8
-
-
-
- .global _BRKIVEC
-_BRKIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(BRK_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(BRK_IOPORT_ADR)
- ori r10, r0, #BRK_IOPORT_BIT
- stw r10, r9, #$0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- ldw r10, sp, #$0
- ldw r9, sp, #$4
- reti r15
- addi sp, sp, #$8
-
-
-.if 0
- ; Handler for illegal instruction.
- .global _ILLIVEC
-_ILLIVEC:
- reti r15
- or r0, r0, r0
-.endif
-
-
- .global _IVEC_DEFAULT
-_IVEC_DEFAULT:
- reti r15
- or r0, r0, r0
-
-
- .section .internal_io, "a", @progbits
- .fill 256 ; Fill the first page.
-
- ; This is the memory-mapped I/O region.
-
- ; Hardware Interrupt Registers
- ;.org 0xfffff100
- .global _DEV0_INTERRUPT_REG
-_DEV0_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_REG
-_DEV1_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_REG
-_DEV2_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_REG
-_DEV3_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_REG
-_DEV4_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_REG
-_DEV5_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_REG
-_DEV6_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_REG
-_DEV7_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV8_INTERRUPT_REG
-_DEV8_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV9_INTERRUPT_REG
-_DEV9_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV10_INTERRUPT_REG
-_DEV10_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV11_INTERRUPT_REG
-_DEV11_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV12_INTERRUPT_REG
-_DEV12_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV13_INTERRUPT_REG
-_DEV13_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV14_INTERRUPT_REG
-_DEV14_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV15_INTERRUPT_REG
-_DEV15_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV16_INTERRUPT_REG
-_DEV16_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV17_INTERRUPT_REG
-_DEV17_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV18_INTERRUPT_REG
-_DEV18_INTERRUPT_REG:
- .word 0x00000000
-
- ; 128 bytes minus nineteen registers (four bytes per register)
- .fill (128 - 19 * 4)
-
- .global _INTERRUPT_MASK_REG
-_INTERRUPT_MASK_REG:
- .word 0x00000000
-
- .global _INTERRUPT_PENDING_REG
-_INTERRUPT_PENDING_REG:
- .word 0x00000000
-
- ; 16 bytes minus two registers (four bytes per register)
- .fill (16 - 2 * 4)
-
- .global _DEV0_INTERRUPT_LEVEL_REG
-_DEV0_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_LEVEL_REG
-_DEV1_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_LEVEL_REG
-_DEV2_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_LEVEL_REG
-_DEV3_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_LEVEL_REG
-_DEV4_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_LEVEL_REG
-_DEV5_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_LEVEL_REG
-_DEV6_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_LEVEL_REG
-_DEV7_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV8_INTERRUPT_LEVEL_REG
-_DEV8_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV9_INTERRUPT_LEVEL_REG
-_DEV9_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV10_INTERRUPT_LEVEL_REG
-_DEV10_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV11_INTERRUPT_LEVEL_REG
-_DEV11_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV12_INTERRUPT_LEVEL_REG
-_DEV12_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV13_INTERRUPT_LEVEL_REG
-_DEV13_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV14_INTERRUPT_LEVEL_REG
-_DEV14_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV15_INTERRUPT_LEVEL_REG
-_DEV15_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV16_INTERRUPT_LEVEL_REG
-_DEV16_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV17_INTERRUPT_LEVEL_REG
-_DEV17_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV18_INTERRUPT_LEVEL_REG
-_DEV18_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- ; 128 bytes minus twenty-three registers (four bytes per register)
- .fill (128 - 23 * 4)
-
-
- ;.org 0xfffff200
- ; MorphoSys Decoder Registers
- .global _MS_DEC_CIRC_BUFF_SEL_REG
-_MS_DEC_CIRC_BUFF_SEL_REG:
- .word 0x00000000
-
- .global _MS_DEC_SKIP_FACTOR_REG
-_MS_DEC_SKIP_FACTOR_REG:
- .word 0x00000000
-
- .global _MS_DEC_CUSTOM_PERM_REG
-_MS_DEC_CUSTOM_PERM_REG:
- .word 0x00000000
-
- .global _MS_DEC_CTXT_BASE_REG
-_MS_DEC_CTXT_BASE_REG:
- .word 0x00000000
-
- .global _MS_DEC_LOOKUP_TBL_REG
-_MS_DEC_LOOKUP_TBL_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF0_I_REG
-_MS_CIRC_BUFF0_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF0_P_REG
-_MS_CIRC_BUFF0_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF0_B_REG
-_MS_DATA_BUFF0_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF0_S_REG
-_MS_DATA_BUFF0_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF1_I_REG
-_MS_CIRC_BUFF1_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF1_P_REG
-_MS_CIRC_BUFF1_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF1_B_REG
-_MS_DATA_BUFF1_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF1_S_REG
-_MS_DATA_BUFF1_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF2_I_REG
-_MS_CIRC_BUFF2_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF2_P_REG
-_MS_CIRC_BUFF2_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF2_B_REG
-_MS_DATA_BUFF2_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF2_S_REG
-_MS_DATA_BUFF2_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF3_I_REG
-_MS_CIRC_BUFF3_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF3_P_REG
-_MS_CIRC_BUFF3_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF3_B_REG
-_MS_DATA_BUFF3_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF3_S_REG
-_MS_DATA_BUFF3_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF4_I_REG
-_MS_CIRC_BUFF4_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF4_P_REG
-_MS_CIRC_BUFF4_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF4_B_REG
-_MS_DATA_BUFF4_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF4_S_REG
-_MS_DATA_BUFF4_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF5_I_REG
-_MS_CIRC_BUFF5_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF5_P_REG
-_MS_CIRC_BUFF5_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF5_B_REG
-_MS_DATA_BUFF5_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF5_S_REG
-_MS_DATA_BUFF5_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF6_I_REG
-_MS_CIRC_BUFF6_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF6_P_REG
-_MS_CIRC_BUFF6_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF6_B_REG
-_MS_DATA_BUFF6_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF6_S_REG
-_MS_DATA_BUFF6_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF7_I_REG
-_MS_CIRC_BUFF7_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF7_P_REG
-_MS_CIRC_BUFF7_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF7_B_REG
-_MS_DATA_BUFF7_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF7_S_REG
-_MS_DATA_BUFF7_S_REG:
- .word 0x00000000
-
- .global _MS_OMEGA_PERM1_REG
-_MS_OMEGA_PERM1_REG:
- .word 0x00000000
-
- .global _MS_WRITE_FB_ADDR_REG
-_MS_WRITE_FB_ADDR_REG:
- .word 0x00000000
-
- .global _MS_OMEGA_PERM2_REG
-_MS_OMEGA_PERM2_REG:
- .word 0x00000000
-
-
- ; 256 bytes minus forty registers (four bytes per register)
- .fill (256 - 40 * 4)
-
-
-
- ;.org 0xfffff300
- ; Debug Registers
- .global _DEBUG_HALT_REG
-_DEBUG_HALT_REG:
- .word 0x00000000
-
- .global _DEBUG_BREAK_REG
-_DEBUG_BREAK_REG:
- .word 0x00000000
-
- .global _DEBUG_CRITICAL_REG
-_DEBUG_OWNERSHIP_REG:
- .word 0x00000000
-
- .global _DEBUG_KERNEL_ID_REG
-_DEBUG_KERNEL_ID_REG:
- .word 0x00000000
-
- .global _DEBUG_IRQ_STATUS_REG
-_DEBUG_IRQ_STATUS_REG:
- .word 0x00000000
-
- ; There are two reserved registers.
- .fill (2 * 4)
-
- .global _DEBUG_SW_SYSREQ_REG
-_DEBUG_SW_SYSREQ_REG:
- .word 0x00000000
-
- ; 128 bytes minus eight registers (four bytes per register)
- .fill (128 - 8 * 4)
-
- .global _EXTENDED_GP0_REG
-_EXTENDED_GP0_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP1_REG
-_EXTENDED_GP1_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP2_REG
-_EXTENDED_GP2_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP3_REG
-_EXTENDED_GP3_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP4_REG
-_EXTENDED_GP4_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP5_REG
-_EXTENDED_GP5_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP6_REG
-_EXTENDED_GP6_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP7_REG
-_EXTENDED_GP7_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_EN_NC_MEM_REG
-_MEM_CTRL_EN_NC_MEM_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE0_ADDR_REG
-_MEM_CTRL_BASE0_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK0_ADDR_REG
-_MEM_CTRL_MASK0_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE1_ADDR_REG
-_MEM_CTRL_BASE1_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK1_ADDR_REG
-_MEM_CTRL_MASK1_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE2_ADDR_REG
-_MEM_CTRL_BASE2_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK2_ADDR_REG
-_MEM_CTRL_MASK2_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE3_ADDR_REG
-_MEM_CTRL_BASE3_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK3_ADDR_REG
-_MEM_CTRL_MASK3_ADDR_REG:
- .word 0x00000000
-
- ; 128 bytes minus seventeen registers (four bytes per register)
- .fill (128 - 17 * 4)
-
-
-
- ; Reserved memory-map space
- .fill (256 + 256)
-
-
-
- ;.org 0xfffff600
- ; Timer Registers
- .global _TIMER0_VAL_REG
-_TIMER0_VAL_REG:
- .word 0x00000000
-
- .global _TIMER1_VAL_REG
-_TIMER1_VAL_REG:
- .word 0x00000000
-
- .global _TIMER2_VAL_REG
-_TIMER2_VAL_REG:
- .word 0x00000000
-
- .global _TIMER3_VAL_REG
-_TIMER3_VAL_REG:
- .word 0x00000000
-
- ; 256 bytes minus four registers (four bytes per register)
- .fill (256 - 4 * 4)
-
-
-
- ;.org 0xfffff700
- ; Output Line Control Registers
- .global _OUTPUT0_CTRL
-_OUTPUT0_CTRL:
- .word 0x00000000
-
- .global _OUTPUT1_CTRL
-_OUTPUT1_CTRL:
- .word 0x00000000
-
- .global _OUTPUT2_CTRL
-_OUTPUT2_CTRL:
- .word 0x00000000
-
- .global _OUTPUT3_CTRL
-_OUTPUT3_CTRL:
- .word 0x00000000
-
- .global _OUTPUT4_CTRL
-_OUTPUT4_CTRL:
- .word 0x00000000
-
- .global _OUTPUT5_CTRL
-_OUTPUT5_CTRL:
- .word 0x00000000
-
- .global _OUTPUT6_CTRL
-_OUTPUT6_CTRL:
- .word 0x00000000
-
- ; 128 bytes minus seven registers (four bytes per register)
- .fill (128 - 7 * 4)
-
- .global _INPUT0_CTRL
-_INPUT0_CTRL:
- .word 0x00000000
-
- ; 128 bytes minus one register (four bytes per register)
- .fill (128 - 1 * 4)
-
-
-
- ;.org 0xfffff800
- ; IQ Buffer Registers
- .global _IQ_BUFF_CTRL_REG
-_IQ_BUFF_CTRL_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_STATUS_REG
-_IQ_BUFF_STATUS_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER1_REG
-_IQ_BUFF_PARAMETER1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE1_REG
-_IQ_BUFF_TRANSFER_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_BASE1_REG
-_IQ_BUFF_FB_BASE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_SIZE1_REG
-_IQ_BUFF_FB_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER2_REG
-_IQ_BUFF_PARAMETER2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE2_REG
-_IQ_BUFF_TRANSFER_SIZE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_BASE2_REG
-_IQ_BUFF_FB_BASE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_SIZE2_REG
-_IQ_BUFF_FB_SIZE2_REG:
- .word 0x00000000
-
- ; 256 bytes minus ten registers (four bytes per register)
- .fill (256 - 10 * 4)
-
-
-
- ;.org 0xfffff900
- ; DMA Controller
- .global _DMA_CTRL_REG
-_DMA_CTRL_REG:
- .word 0x00000000
-
- .global _DMA_STATUS_REG
-_DMA_STATUS_REG:
- .word 0x00000000
-
- .global _DMA_CH0_EADDR_REG
-_DMA_CH0_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH0_IADDR_REG
-_DMA_CH0_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH0_SIZE_REG
-_DMA_CH0_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH1_EADDR_REG
-_DMA_CH1_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH1_IADDR_REG
-_DMA_CH1_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH1_SIZE_REG
-_DMA_CH1_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH2_EADDR_REG
-_DMA_CH2_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH2_IADDR_REG
-_DMA_CH2_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH2_SIZE_REG
-_DMA_CH2_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH3_EADDR_REG
-_DMA_CH3_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH3_IADDR_REG
-_DMA_CH3_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH3_SIZE_REG
-_DMA_CH3_SIZE_REG:
- .word 0x00000000
-
- ; 256 bytes minus fourteen registers (four bytes per register)
- .fill (256 - 14 * 4)
-
-
-
- ;.org 0xfffffa00
- ; Sequence Generator
- .global _SEQ_GEN_CTRL_STATUS_REG
-_SEQ_GEN_CTRL_STATUS_REG:
- .word 0x00000000
-
- .global _SEQ_GEN_MASK_REGS
-_SEQ_GEN_MASK_REGS:
- .fill (302 * 4)
-
- .global _SEQ_GEN_SHIFT_REG
-_SEQ_GEN_SHIFT_REG:
- .word 0x00000000
-
- ; 256 bytes minus seven registers (four bytes per register)
- .fill (256 - 48 * 4)
-
-
-
- ; Reserved memory-map space
- .fill (0x1000 - 0xf00)
diff --git a/libgloss/mt/startup-64-001.S b/libgloss/mt/startup-64-001.S
deleted file mode 100644
index 5ceb42b36..000000000
--- a/libgloss/mt/startup-64-001.S
+++ /dev/null
@@ -1,378 +0,0 @@
-/*
- * $Header$
- *
- * interrupt_vectors.s -- the interrupt handler jump table.
- *
- *
- * There are a total of 32 interrupt vector possible, however, only
- * 11 of those are currently used (the others are reserved). The
- * order of vectors is as follows:
- *
- * 1. Boot Vector. Vector for power-on/reset.
- * 2. Software Vector. Vector for handling the SI instruction (an
- * explicit interrupt caused by software).
- * 3. Break Vector. Vector for handling the Break instruction.
- * 4. Device 0 Vector. Service vector for device zero.
- * 5. Device 1 Vector. Service vector for device one.
- * 6. Device 2 Vector. Service vector for device two.
- * 7. Device 3 Vector. Service vector for device three.
- * 8. Device 4 Vector. Service vector for device four.
- * 9. Device 5 Vector. Service vector for device five.
- * 10. Device 6 Vector. Service vector for device six.
- * 11. Device 7 Vector. Service vector for device seven.
- *
- * The rest of the interrupt vectors are reserved for future use.
- *
- *
- * Each jump table entry consists of the following two instructions:
- *
- * jmp Label ; Label as appropriate
- * nop ; implemented as or r0,r0,r0
- *
- * The following labels are reserved for the vectors named above,
- * respectively:
- *
- * _BOOTIVEC, _SOFTIVEC, _BRKIVEC, _DEV0IVEC, _DEV1IVEC, _DEV2IVEC,
- * _DEV3IVEC, _DEV4IVEC, _DEV5IVEC, _DEV6IVEC, _DEV7IVEC
- *
- *
- * 26Sep01 (DJK) The memory map is changed and the device interrupts are
- * now memory-mapped.
- *
- * 10Oct01 (DJK) The memory map is finalized and the first 4K of address
- * space is now reserved for memory-mapped I/O devices.
- * (There is over 2K unused, reserved space in this area.)
- *
- * 27Jul02 (DJK) Fixed the address for the interrupt mask register. Old
- * documentation stated the port address as 0x140, but
- * the implementation uses 0x13c.
- *
- * 30Jul02 (DJK) Added support for printf. This only supports output to
- * stderr and stdout. Using the message box interface,
- * a (newly defined) message or series of messages is
- * passed to the controller to output bytes as text to
- * the debug console. These messages are constructed in
- * the interrupt handler for the SI instruction.
- * With this implementation, the user is unable to
- * utilize the message box interface in applications as
- * specialized interrupt handlers for the external
- * interrupts are necessary.
- *
- *
- *
- * Copyright (c) 2001, 2002, 2003, 2004 Morpho Technologies, Inc.
- *
- */
-
- .section .startup, "a", @progbits
- .global __boot_start
-_INTERRUPT_VECTOR_TABLE:
-__boot_start:
- jmp _BOOTIVEC ; Boot vector
- or r0, r0, r0
- jmp _SOFTIVEC ; Vector for SI instruction
- or r0,r0,r0
- jmp _BRKIVEC ; Vector for Break instruction
- or r0,r0,r0
-
-
- ; This is the memory-mapped I/O region.
-
- ; Hardware Interrupt Registers
- .org 0x100
- .global _DEV0_INTERRUPT_REG
-_DEV0_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_REG
-_DEV1_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_REG
-_DEV2_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_REG
-_DEV3_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_REG
-_DEV4_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_REG
-_DEV5_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_REG
-_DEV6_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_REG
-_DEV7_INTERRUPT_REG:
- .word 0x00000000
-
- ; 60 bytes minus eight registers (four bytes per register)
- .fill (60 - 8 * 4)
-
- .global _INTERRUPT_MASK_REG
-_INTERRUPT_MASK_REG:
- .word 0x00000000
-
- ; 256 bytes minus sixteen registers (four bytes per register)
- .fill (256 - 16 * 4)
-
-
-
- .org 0x200
- ; MorphoSys Decoder Registers
- .global _MS_DEC_AUTO_INCREMENT_REG
-_MS_DEC_AUTO_INCREMENT_REG:
- .word 0x00000000
-
- .global _MS_DEC_SKIP_FACTOR_REG
-_MS_DEC_SKIP_FACTOR_REG:
- .word 0x00000000
-
- .global _MS_DEC_CUSTOM_PERMUTATION_REG
-_MS_DEC_CUSTOM_PERMUTATION_REG:
- .word 0x00000000
-
- .global _MS_DEC_CONTEXT_BASE_REG
-_MS_DEC_CONTEXT_BASE_REG:
- .word 0x00000000
-
- .global _MS_DEC_LOOKUP_TABLE_BASE_REG
-_MS_DEC_LOOKUP_TABLE_BASE_REG:
- .word 0x00000000
-
- .global _MS_CIRCULAR_BUFFER_END_REG
-_MS_CIRCULAR_BUFFER_END_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRCULAR_BUFFER_SIZE_REG
-_MS_CIRCULAR_BUFFER_SIZE_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BLOCK_END_REG
-_MS_DATA_BLOCK_END_REG:
- .word 0x00000000
-
- .global _MS_DATA_BLOCK_SIZE_REG
-_MS_DATA_BLOCK_SIZE_REG:
- .word 0x00000000
-
- ; 256 bytes minus nine registers (four bytes per register)
- .fill (256 - 9 * 4)
-
-
-
- .org 0x300
- ; Debug Registers
- .global _DEBUG_HALT_REG
-_DEBUG_HALT_REG:
- .word 0x00000000
-
- .global _DEBUG_BREAK_REG
-_DEBUG_BREAK_REG:
- .word 0x00000000
-
- .global _DEBUG_HW_RESERVED0_REG
-_DEBUG_HW_RESERVED0_REG:
- .word 0x00000000
-
- .global _DEBUG_HW_RESERVED1_REG
-_DEBUG_HW_RESERVED1_REG:
- .word 0x00000000
-
- .global _DEBUG_HW_RESERVED2_REG
-_DEBUG_HW_RESERVED2_REG:
- .word 0x00000000
-
- .global _DEBUG_HW_RESERVED3_REG
-_DEBUG_HW_RESERVED3_REG:
- .word 0x00000000
-
- .global _DEBUG_HW_RESERVED4_REG
-_DEBUG_HW_RESERVED4_REG:
- .word 0x00000000
-
- .global _DEBUG_SW_SYSREQ_REG
-_DEBUG_SW_SYSREQ_REG:
- .word 0x00000000
-
- ; 256 bytes minus eight registers (four bytes per register)
- .fill (256 - 8 * 4)
-
-
-
- .org 0x400
- ; Sequence Generator Registers
-_SEQ_GEN_REGS:
- .fill 256
-
-
-
- .org 0x500
-_RESERVED_SEQ_GEN_REGS:
- .fill 256
-
-
-
- .org 0x600
- .global _TIMER0_VAL_REG
-_TIMER0_VAL_REG:
- .word 0x00000000
-
- .global _TIMER0_CTRL_REG
-_TIMER0_CTRL_REG:
- .word 0x00000000
-
- .global _TIMER1_VAL_REG
-_TIMER1_VAL_REG:
- .word 0x00000000
-
- .global _TIMER1_CTRL_REG
-_TIMER1_CTRL_REG:
- .word 0x00000000
-
- .global _TIMER2_VAL_REG
-_TIMER2_VAL_REG:
- .word 0x00000000
-
- .global _TIMER2_CTRL_REG
-_TIMER2_CTRL_REG:
- .word 0x00000000
-
- ; 256 bytes minus six registers (four bytes per register)
- .fill (256 - 6 * 4)
-
-
-
- .org 0x700
- .global _OUTPUT0_CONTROL
-_OUTPUT0_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT1_CONTROL
-_OUTPUT1_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT2_CONTROL
-_OUTPUT2_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT3_CONTROL
-_OUTPUT3_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT4_CONTROL
-_OUTPUT4_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT5_CONTROL
-_OUTPUT5_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT6_CONTROL
-_OUTPUT6_CONTROL:
- .word 0x00000000
-
- .global _OUTPUT7_CONTROL
-_OUTPUT7_CONTROL:
- .word 0x00000000
-
- ; 256 bytes minus eight registers (four bytes per register)
- .fill (256 - 8 * 4)
-
-
-
- .org 0x800
- ; Reserved memory-mapped space.
- .fill (0x1000 - 0x800)
-
-
-
- .text
-
- .equ SI_IOPORT_ADR, _DEBUG_SW_SYSREQ_REG
- .equ SI_IOPORT_BIT, 0x1
- .equ BRK_IOPORT_ADR, _DEBUG_BREAK_REG
- .equ BRK_IOPORT_BIT, 0x1
-
- .global _BOOTIVEC
-_BOOTIVEC:
-
- ; Initialize the interrupt controller's interrupt vector registers
- ; for devices zero through seven.
- ldui r1, #%hi16(_IVEC_DEFAULT)
- ori r1, r1, #%lo16(_IVEC_DEFAULT)
- stw r1, r0, #%lo16(_DEV0_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV1_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV2_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV3_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV4_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV5_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV6_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV7_INTERRUPT_REG)
-
- ; Jump to the beginning of the application and enable interrupts.
- jmp _start
- ei
-
-
-
- ; Handler for the SI instruction. To perform a system call, the
- ; C model uses a trapping mechanism which executes an SI instruction.
- ; The Morpho Technologies simulator simply performs a branch to
- ; this vector to simulate the SI instruction (this is as the hardware
- ; behaves). In order to trigger the simulator that a system call
- ; is needed, a write into the I/O register at address $40005 to
- ; set bit #2 (0x4) is necessary.
- ;
- ; The above address has been changed to 0x31C and the bit number
- ; is zero. (The manifest constants have been changed to reflect this.)
- ;
- .global _SOFTIVEC
-_SOFTIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(SI_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(SI_IOPORT_ADR)
- ori r10, r0, #SI_IOPORT_BIT
- stw r10, r9, #$0
- ; SYS_call is handled by simulator here...
- or r0, r0, r0
- ldw r10, sp, #$0
- or r0, r0, r0
- ldw r9, sp, #$4
- reti r14
- addi sp, sp, #$8
-
-
-
- .global _BRKIVEC
-_BRKIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(BRK_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(BRK_IOPORT_ADR)
- ori r10, r0, #BRK_IOPORT_BIT
- stw r10, r9, #$0
- or r0, r0, r0
- ldw r10, sp, #$0
- subi r15, r15, #$4 ; Backup to address of break
- ldw r9, sp, #$4
- reti r15
- addi sp, sp, #$8
-
-
-
- .global _IVEC_DEFAULT
-_IVEC_DEFAULT:
- reti r15
- or r0, r0, r0
diff --git a/libgloss/mt/startup-ms2.S b/libgloss/mt/startup-ms2.S
deleted file mode 100644
index f11e3fa6a..000000000
--- a/libgloss/mt/startup-ms2.S
+++ /dev/null
@@ -1,840 +0,0 @@
-/*
- *
- * interrupt_vectors.s -- the interrupt handler jump table.
- *
- *
- * There are a total of 32 interrupt vector possible, however, only
- * 11 of those are currently used (the others are reserved). The
- * order of vectors is as follows:
- *
- * 1. Boot Vector. Vector for power-on/reset.
- * 2. Software Vector. Vector for handling the SI instruction (an
- * explicit interrupt caused by software).
- * 3. Break Vector. Vector for handling the Break instruction.
- * 4. Device 0 Vector. Service vector for device zero.
- * 5. Device 1 Vector. Service vector for device one.
- * 6. Device 2 Vector. Service vector for device two.
- * 7. Device 3 Vector. Service vector for device three.
- * 8. Device 4 Vector. Service vector for device four.
- * 9. Device 5 Vector. Service vector for device five.
- * 10. Device 6 Vector. Service vector for device six.
- * 11. Device 7 Vector. Service vector for device seven.
- *
- * The rest of the interrupt vectors are reserved for future use.
- *
- *
- * Each jump table entry consists of the following two instructions:
- *
- * jmp Label ; Label as appropriate
- * nop ; implemented as or r0,r0,r0
- *
- * The following labels are reserved for the vectors named above,
- * respectively:
- *
- * _BOOTIVEC, _SOFTIVEC, _BRKIVEC, _DEV0IVEC, _DEV1IVEC, _DEV2IVEC,
- * _DEV3IVEC, _DEV4IVEC, _DEV5IVEC, _DEV6IVEC, _DEV7IVEC
- *
- * 28Apr05 (DJK) Added support for the overflow vector.
- *
- * XXXXXXX (DJK) Modified for the MS2 target
- *
- * 09Jan04 (DJK) Modified internal I/O port definitions for the
- * MS1-16-003.
- *
- * 10Oct01 (DJK) The memory map is finalized and the first 4K of address
- * space is now reserved for memory-mapped I/O devices.
- * (There is over 2K unused, reserved space in this area.)
- *
- * 26Sep01 (DJK) The memory map is changed and the device interrupts are
- * now memory-mapped.
- *
- *
- *
- * Copyright (c) 2001, 2002, 2003, 2004 Morpho Technologies
- *
- */
-
- .section .startup, "a", @progbits
- .global __boot_start
-__boot_start:
-_INTERRUPT_VECTOR_TABLE:
- jmp _BOOTIVEC ; Boot vector
- or r0, r0, r0
- jmp _SOFTIVEC ; Vector for SI instruction
- or r0, r0, r0
- jmp _BRKIVEC ; Vector for Break instruction
- or r0, r0, r0
- ; The illegal instruction trap is not implemented.
-_RESERVED1_IVEC:
- jmp _RESERVED1_IVEC
- or r0, r0, r0
- jmp _OVFIVEC
- or r0, r0, r0
-_RESERVED2_IVEC:
- jmp _RESERVED2_IVEC
- or r0, r0, r0
-_RESERVED3_IVEC:
- jmp _RESERVED3_IVEC
- or r0, r0, r0
-_RESERVED4_IVEC:
- jmp _RESERVED4_IVEC
- or r0, r0, r0
-
-
- .text
-
- .equ SI_IOPORT_ADR, _DEBUG_SW_SYSREQ_REG
- .equ SI_IOPORT_BIT, 0x1
- .equ BRK_IOPORT_ADR, _DEBUG_BREAK_REG
- .equ BRK_IOPORT_BIT, 0x1
-
- .global _BOOTIVEC
-_BOOTIVEC:
- ; Initialize the interrupt controller's interrupt vector registers
- ldui r1, #%hi16(_IVEC_DEFAULT)
- ori r1, r1, #%lo16(_IVEC_DEFAULT)
- stw r1, r0, #%lo16(_DEV0_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV1_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV2_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV3_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV4_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV5_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV6_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV7_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV8_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV9_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV10_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV11_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV12_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV13_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV14_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV15_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV16_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV17_INTERRUPT_REG)
- stw r1, r0, #%lo16(_DEV18_INTERRUPT_REG)
-
- ; Statically initialized data must be copied from ROM to RAM.
- ; This is done in the C run-time start-up code (crt0.o).
-
- ; Jump to the beginning of the application and enable interrupts.
- jmp _start
- ei
-
-
- ; Handler for the SI instruction. To perform a system call, the
- ; C model uses a trapping mechanism which executes an SI instruction.
- ; The Morpho Technologies simulator simply performs a branch to
- ; this vector to simulate the SI instruction (this is as the hardware
- ; behaves). In order to trigger the simulator that a system call
- ; is needed a write into the I/O register at address $40005 to
- ; set bit #2 (0x4) is necessary.
- ;
- ; The above address has been changed to 0x00031C and the bit number
- ; is zero. (The manifest constants have been changed to reflect this.)
- .global _SOFTIVEC
-_SOFTIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(SI_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(SI_IOPORT_ADR)
- ori r10, r0, #SI_IOPORT_BIT
- stw r10, r9, #$0
- ; SYS_call is handled by simulator here...
- or r0, r0, r0
- ldw r10, sp, #$0
- or r0, r0, r0
- ldw r9, sp, #$4
- reti r14
- addi sp, sp, #$8
-
-
-
- .global _BRKIVEC
-_BRKIVEC:
- ; Build a frame to save registers.
- subi sp, sp, #$8
- stw r9, sp, #$4
- ldui r9, #%hi16(BRK_IOPORT_ADR)
- stw r10, sp, #$0
- ori r9, r9, #%lo16(BRK_IOPORT_ADR)
- ori r10, r0, #BRK_IOPORT_BIT
- stw r10, r9, #$0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- or r0, r0, r0
- ldw r10, sp, #$0
- ldw r9, sp, #$4
- reti r15
- addi sp, sp, #$8
-
-
- .global _OVFIVEC
-_OVFIVEC:
- addi r15, r15, #$4
- or r0, r0, r0
- or r0, r0, r0 ; added 06Sep05
- reti r15
- or r0, r0, r0
-
-
- .global _IVEC_DEFAULT
-_IVEC_DEFAULT:
- reti r15
- or r0, r0, r0
-
-
- .section .internal_io, "a", @progbits
- .fill 256 ; Fill the first page.
-
- ; This is the memory-mapped I/O region.
-
- ; Hardware Interrupt Registers
- ;.org 0xfffff100
- .global _DEV0_INTERRUPT_REG
-_DEV0_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_REG
-_DEV1_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_REG
-_DEV2_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_REG
-_DEV3_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_REG
-_DEV4_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_REG
-_DEV5_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_REG
-_DEV6_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_REG
-_DEV7_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV8_INTERRUPT_REG
-_DEV8_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV9_INTERRUPT_REG
-_DEV9_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV10_INTERRUPT_REG
-_DEV10_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV11_INTERRUPT_REG
-_DEV11_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV12_INTERRUPT_REG
-_DEV12_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV13_INTERRUPT_REG
-_DEV13_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV14_INTERRUPT_REG
-_DEV14_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV15_INTERRUPT_REG
-_DEV15_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV16_INTERRUPT_REG
-_DEV16_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV17_INTERRUPT_REG
-_DEV17_INTERRUPT_REG:
- .word 0x00000000
-
- .global _DEV18_INTERRUPT_REG
-_DEV18_INTERRUPT_REG:
- .word 0x00000000
-
- ; 128 bytes minus nineteen registers (four bytes per register)
- .fill (128 - 19 * 4)
-
- .global _INTERRUPT_MASK_REG
-_INTERRUPT_MASK_REG:
- .word 0x00000000
-
- .global _INTERRUPT_PENDING_REG
-_INTERRUPT_PENDING_REG:
- .word 0x00000000
-
- ; 16 bytes minus two registers (four bytes per register)
- .fill (16 - 2 * 4)
-
- .global _DEV0_INTERRUPT_LEVEL_REG
-_DEV0_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV1_INTERRUPT_LEVEL_REG
-_DEV1_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV2_INTERRUPT_LEVEL_REG
-_DEV2_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV3_INTERRUPT_LEVEL_REG
-_DEV3_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV4_INTERRUPT_LEVEL_REG
-_DEV4_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV5_INTERRUPT_LEVEL_REG
-_DEV5_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV6_INTERRUPT_LEVEL_REG
-_DEV6_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV7_INTERRUPT_LEVEL_REG
-_DEV7_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV8_INTERRUPT_LEVEL_REG
-_DEV8_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV9_INTERRUPT_LEVEL_REG
-_DEV9_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV10_INTERRUPT_LEVEL_REG
-_DEV10_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV11_INTERRUPT_LEVEL_REG
-_DEV11_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV12_INTERRUPT_LEVEL_REG
-_DEV12_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV13_INTERRUPT_LEVEL_REG
-_DEV13_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV14_INTERRUPT_LEVEL_REG
-_DEV14_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV15_INTERRUPT_LEVEL_REG
-_DEV15_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV16_INTERRUPT_LEVEL_REG
-_DEV16_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV17_INTERRUPT_LEVEL_REG
-_DEV17_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- .global _DEV18_INTERRUPT_LEVEL_REG
-_DEV18_INTERRUPT_LEVEL_REG:
- .word 0x00000000
-
- ; 128 bytes minus twenty-three registers (four bytes per register)
- .fill (128 - 23 * 4)
-
-
- ;.org 0xfffff200
- ; MorphoSys Decoder Registers
- .global _MS_DEC_CIRC_BUFF_SEL_REG
-_MS_DEC_CIRC_BUFF_SEL_REG:
- .word 0x00000000
-
- .global _MS_DEC_SKIP_FACTOR_REG
-_MS_DEC_SKIP_FACTOR_REG:
- .word 0x00000000
-
- .global _MS_DEC_CUSTOM_PERM_REG
-_MS_DEC_CUSTOM_PERM_REG:
- .word 0x00000000
-
- .global _MS_DEC_CTXT_BASE_REG
-_MS_DEC_CTXT_BASE_REG:
- .word 0x00000000
-
- .global _MS_DEC_LOOKUP_TBL_REG
-_MS_DEC_LOOKUP_TBL_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF0_I_REG
-_MS_CIRC_BUFF0_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF0_P_REG
-_MS_CIRC_BUFF0_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF0_B_REG
-_MS_DATA_BUFF0_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF0_S_REG
-_MS_DATA_BUFF0_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF1_I_REG
-_MS_CIRC_BUFF1_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF1_P_REG
-_MS_CIRC_BUFF1_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF1_B_REG
-_MS_DATA_BUFF1_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF1_S_REG
-_MS_DATA_BUFF1_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF2_I_REG
-_MS_CIRC_BUFF2_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF2_P_REG
-_MS_CIRC_BUFF2_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF2_B_REG
-_MS_DATA_BUFF2_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF2_S_REG
-_MS_DATA_BUFF2_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF3_I_REG
-_MS_CIRC_BUFF3_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF3_P_REG
-_MS_CIRC_BUFF3_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF3_B_REG
-_MS_DATA_BUFF3_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF3_S_REG
-_MS_DATA_BUFF3_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF4_I_REG
-_MS_CIRC_BUFF4_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF4_P_REG
-_MS_CIRC_BUFF4_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF4_B_REG
-_MS_DATA_BUFF4_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF4_S_REG
-_MS_DATA_BUFF4_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF5_I_REG
-_MS_CIRC_BUFF5_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF5_P_REG
-_MS_CIRC_BUFF5_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF5_B_REG
-_MS_DATA_BUFF5_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF5_S_REG
-_MS_DATA_BUFF5_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF6_I_REG
-_MS_CIRC_BUFF6_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF6_P_REG
-_MS_CIRC_BUFF6_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF6_B_REG
-_MS_DATA_BUFF6_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF6_S_REG
-_MS_DATA_BUFF6_S_REG:
- .word 0x00000000
-
- .global _MS_CIRC_BUFF7_I_REG
-_MS_CIRC_BUFF7_I_REG:
- .word (__FRAME_BUFFER_END)
-
- .global _MS_CIRC_BUFF7_P_REG
-_MS_CIRC_BUFF7_P_REG:
- .word __FRAME_BUFFER_SIZE
-
- .global _MS_DATA_BUFF7_B_REG
-_MS_DATA_BUFF7_B_REG:
- .word 0x00000000
-
- .global _MS_DATA_BUFF7_S_REG
-_MS_DATA_BUFF7_S_REG:
- .word 0x00000000
-
- .global _MS_OMEGA_PERM1_REG
-_MS_OMEGA_PERM1_REG:
- .word 0x00000000
-
- .global _MS_WRITE_FB_ADDR_REG
-_MS_WRITE_FB_ADDR_REG:
- .word 0x00000000
-
- .global _MS_OMEGA_PERM2_REG
-_MS_OMEGA_PERM2_REG:
- .word 0x00000000
-
-
- ; 256 bytes minus forty registers (four bytes per register)
- .fill (256 - 40 * 4)
-
-
-
- ;.org 0xfffff300
- ; Debug Registers
- .global _DEBUG_HALT_REG
-_DEBUG_HALT_REG:
- .word 0x00000000
-
- .global _DEBUG_BREAK_REG
-_DEBUG_BREAK_REG:
- .word 0x00000000
-
- .global _DEBUG_CRITICAL_REG
-_DEBUG_OWNERSHIP_REG:
- .word 0x00000000
-
- .global _DEBUG_KERNEL_ID_REG
-_DEBUG_KERNEL_ID_REG:
- .word 0x00000000
-
- .global _DEBUG_IRQ_STATUS_REG
-_DEBUG_IRQ_STATUS_REG:
- .word 0x00000000
-
- ; There are two reserved registers.
- .fill (2 * 4)
-
- .global _DEBUG_SW_SYSREQ_REG
-_DEBUG_SW_SYSREQ_REG:
- .word 0x00000000
-
- ; 128 bytes minus eight registers (four bytes per register)
- .fill (128 - 8 * 4)
-
- .global _EXTENDED_GP0_REG
-_EXTENDED_GP0_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP1_REG
-_EXTENDED_GP1_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP2_REG
-_EXTENDED_GP2_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP3_REG
-_EXTENDED_GP3_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP4_REG
-_EXTENDED_GP4_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP5_REG
-_EXTENDED_GP5_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP6_REG
-_EXTENDED_GP6_REG:
- .word 0x00000000
-
- .global _EXTENDED_GP7_REG
-_EXTENDED_GP7_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_EN_NC_MEM_REG
-_MEM_CTRL_EN_NC_MEM_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE0_ADDR_REG
-_MEM_CTRL_BASE0_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK0_ADDR_REG
-_MEM_CTRL_MASK0_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE1_ADDR_REG
-_MEM_CTRL_BASE1_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK1_ADDR_REG
-_MEM_CTRL_MASK1_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE2_ADDR_REG
-_MEM_CTRL_BASE2_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK2_ADDR_REG
-_MEM_CTRL_MASK2_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_BASE3_ADDR_REG
-_MEM_CTRL_BASE3_ADDR_REG:
- .word 0x00000000
-
- .global _MEM_CTRL_MASK3_ADDR_REG
-_MEM_CTRL_MASK3_ADDR_REG:
- .word 0x00000000
-
- ; 128 bytes minus seventeen registers (four bytes per register)
- .fill (128 - 17 * 4)
-
-
-
- ; Reserved memory-map space
- .fill (256 + 256)
-
-
-
- ;.org 0xfffff600
- ; Timer Registers
- .global _TIMER0_VAL_REG
-_TIMER0_VAL_REG:
- .word 0x00000000
-
- .global _TIMER1_VAL_REG
-_TIMER1_VAL_REG:
- .word 0x00000000
-
- .global _TIMER2_VAL_REG
-_TIMER2_VAL_REG:
- .word 0x00000000
-
- .global _TIMER3_VAL_REG
-_TIMER3_VAL_REG:
- .word 0x00000000
-
- ; 256 bytes minus four registers (four bytes per register)
- .fill (256 - 4 * 4)
-
-
-
- ;.org 0xfffff700
- ; Output Line Control Registers
- .global _OUTPUT0_CTRL
-_OUTPUT0_CTRL:
- .word 0x00000000
-
- .global _OUTPUT1_CTRL
-_OUTPUT1_CTRL:
- .word 0x00000000
-
- .global _OUTPUT2_CTRL
-_OUTPUT2_CTRL:
- .word 0x00000000
-
- .global _OUTPUT3_CTRL
-_OUTPUT3_CTRL:
- .word 0x00000000
-
- .global _OUTPUT4_CTRL
-_OUTPUT4_CTRL:
- .word 0x00000000
-
- .global _OUTPUT5_CTRL
-_OUTPUT5_CTRL:
- .word 0x00000000
-
- .global _OUTPUT6_CTRL
-_OUTPUT6_CTRL:
- .word 0x00000000
-
- ; 128 bytes minus seven registers (four bytes per register)
- .fill (128 - 7 * 4)
-
- .global _INPUT0_CTRL
-_INPUT0_CTRL:
- .word 0x00000000
-
- ; 128 bytes minus one register (four bytes per register)
- .fill (128 - 1 * 4)
-
-
-
- ;.org 0xfffff800
- ; IQ Buffer Registers
- .global _IQ_BUFF_CTRL_REG
-_IQ_BUFF_CTRL_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_STATUS_REG
-_IQ_BUFF_STATUS_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER1_REG
-_IQ_BUFF_PARAMETER1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE1_REG
-_IQ_BUFF_TRANSFER_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_BASE1_REG
-_IQ_BUFF_FB_BASE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_SIZE1_REG
-_IQ_BUFF_FB_SIZE1_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_PARAMETER2_REG
-_IQ_BUFF_PARAMETER2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_TRANSFER_SIZE2_REG
-_IQ_BUFF_TRANSFER_SIZE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_BASE2_REG
-_IQ_BUFF_FB_BASE2_REG:
- .word 0x00000000
-
- .global _IQ_BUFF_FB_SIZE2_REG
-_IQ_BUFF_FB_SIZE2_REG:
- .word 0x00000000
-
- ; 256 bytes minus ten registers (four bytes per register)
- .fill (256 - 10 * 4)
-
-
-
- ;.org 0xfffff900
- ; DMA Controller
- .global _DMA_CTRL_REG
-_DMA_CTRL_REG:
- .word 0x00000000
-
- .global _DMA_STATUS_REG
-_DMA_STATUS_REG:
- .word 0x00000000
-
- .global _DMA_CH0_EADDR_REG
-_DMA_CH0_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH0_IADDR_REG
-_DMA_CH0_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH0_SIZE_REG
-_DMA_CH0_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH1_EADDR_REG
-_DMA_CH1_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH1_IADDR_REG
-_DMA_CH1_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH1_SIZE_REG
-_DMA_CH1_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH2_EADDR_REG
-_DMA_CH2_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH2_IADDR_REG
-_DMA_CH2_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH2_SIZE_REG
-_DMA_CH2_SIZE_REG:
- .word 0x00000000
-
- .global _DMA_CH3_EADDR_REG
-_DMA_CH3_EADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH3_IADDR_REG
-_DMA_CH3_IADDR_REG:
- .word 0x00000000
-
- .global _DMA_CH3_SIZE_REG
-_DMA_CH3_SIZE_REG:
- .word 0x00000000
-
- ; 256 bytes minus fourteen registers (four bytes per register)
- .fill (256 - 14 * 4)
-
-
-
- ;.org 0xfffffa00
- ; Sequence Generator
- .global _SEQ_GEN_CTRL_STATUS_REG
-_SEQ_GEN_CTRL_STATUS_REG:
- .word 0x00000000
-
- .global _SEQ_GEN_MASK_REGS
-_SEQ_GEN_MASK_REGS:
- .fill (302 * 4)
-
- .global _SEQ_GEN_SHIFT_REG
-_SEQ_GEN_SHIFT_REG:
- .word 0x00000000
-
- ; 256 bytes minus seven registers (four bytes per register)
- .fill (256 - 48 * 4)
-
-
-
- ; Reserved memory-map space
- .fill (0x1000 - 0xf00)
diff --git a/libgloss/mt/stat.c b/libgloss/mt/stat.c
deleted file mode 100644
index 9a6ca7ca0..000000000
--- a/libgloss/mt/stat.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-stat (const char *path, struct stat *st)
-
-{
- return TRAP0 (SYS_stat, path, st, 0);
-}
diff --git a/libgloss/mt/time.c b/libgloss/mt/time.c
deleted file mode 100644
index 2df8d48d2..000000000
--- a/libgloss/mt/time.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-time_t
-time (time_t *tloc)
-{
- return TRAP0 (SYS_time, tloc, 0, 0);
-}
diff --git a/libgloss/mt/times.c b/libgloss/mt/times.c
deleted file mode 100644
index b804be4cd..000000000
--- a/libgloss/mt/times.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-#include "sys/times.h"
-
-
-clock_t
-times (struct tms *buffer)
-{
- return TRAP0 (SYS_times, buffer, 0, 0);
-}
diff --git a/libgloss/mt/trap.S b/libgloss/mt/trap.S
deleted file mode 100644
index 9fca7204e..000000000
--- a/libgloss/mt/trap.S
+++ /dev/null
@@ -1,34 +0,0 @@
-;;
-;; The errno will be in r5 if r11 is -1.
-;;
- .text
- .global __trap0
-__trap0:
- ;; non-leaf function so need to create stack frame to
- ;; store ra and fp
- subi sp, sp, #16
- stw ra, sp, #12
- or r0, r0, r0 ;; nop
- stw fp, sp, #8
- or fp, sp, sp
- stw r5, sp, #4
- or r0, r0, r0 ;; nop
- stw r6, sp, #0
- addi r6, r0, #$-1
- si r14
- or r0, r0, r0 ;; nop
- brne r11, r6, .L0
- ldui r6, #%hi16(errno)
- addui r6, r6, #%lo16(errno)
- stw r5, r6, #0
- or r0, r0, r0 ;; nop
-.L0:
- ldw r6, sp, #0
- or r0, r0, r0 ;; nop
- ldw r5, sp, #4
- or r0, r0, r0 ;; nop
- ldw ra, sp, #12
- or r0, r0, r0 ;; nop
- ldw fp, sp, #8
- jal r0, r14
- addi sp, sp, #16
diff --git a/libgloss/mt/trap.h b/libgloss/mt/trap.h
deleted file mode 100644
index 27636c004..000000000
--- a/libgloss/mt/trap.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#include "syscall.h"
-
-int __trap0 ();
-
-#define TRAP0(f, p1, p2, p3) __trap0(f, (p1), (p2), (p3))
diff --git a/libgloss/mt/unlink.c b/libgloss/mt/unlink.c
deleted file mode 100644
index a620e89dd..000000000
--- a/libgloss/mt/unlink.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-unlink ()
-{
- return -1;
-}
diff --git a/libgloss/mt/utime.c b/libgloss/mt/utime.c
deleted file mode 100644
index 3fce7e364..000000000
--- a/libgloss/mt/utime.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-utime (path, times)
- const char *path;
- char *times;
-{
- return TRAP0 (SYS_utime, path, times, 0);
-}
diff --git a/libgloss/mt/write.c b/libgloss/mt/write.c
deleted file mode 100644
index 88b5ff83d..000000000
--- a/libgloss/mt/write.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <_ansi.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include "trap.h"
-
-
-int
-write ( int file,
- char *ptr,
- size_t len)
-{
- return TRAP0 (SYS_write, file, ptr, len);
-}
diff --git a/libgloss/rs6000/Makefile.in b/libgloss/rs6000/Makefile.in
index 3c41ef0b0..65c8c9ec3 100644
--- a/libgloss/rs6000/Makefile.in
+++ b/libgloss/rs6000/Makefile.in
@@ -16,7 +16,7 @@
#
DESTDIR =
-VPATH = @srcdir@:@srcdir@/..
+VPATH = @srcdir@ @srcdir@/..
srcdir = @srcdir@
objdir = .
srcroot = $(srcdir)/../..
@@ -68,7 +68,7 @@ SIM_SCRIPTS =
SIM_LDFLAGS =
SIM_BSP = libsim.a
SIM_CRT0 = sim-crt0.o
-SIM_OBJS = sim-print.o sim-inbyte.o sim-sbrk.o sim-abort.o sim-errno.o simulator.o sim-getrusage.o
+SIM_OBJS = sim-print.o sim-inbyte.o sim-sbrk.o sim-abort.o sim-errno.o simulator.o
SIM_TEST = sim-test
SIM_INSTALL = install-sim
@@ -270,7 +270,6 @@ mbx-test.srec: mbx-test.x
crt0.o: crt0.S
simulator.o: simulator.S
-sim-getrusage.o: sim-getrusage.S
sim-crt0.o: sim-crt0.S
mount.o: mount.S
diff --git a/libgloss/rs6000/ads.ld b/libgloss/rs6000/ads.ld
index ef5038e68..1fe80d870 100644
--- a/libgloss/rs6000/ads.ld
+++ b/libgloss/rs6000/ads.ld
@@ -145,7 +145,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/rs6000/mbx.ld b/libgloss/rs6000/mbx.ld
index cedf4e867..7ba3db9ed 100644
--- a/libgloss/rs6000/mbx.ld
+++ b/libgloss/rs6000/mbx.ld
@@ -125,7 +125,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/rs6000/sim-getrusage.S b/libgloss/rs6000/sim-getrusage.S
deleted file mode 100644
index 20f1c6242..000000000
--- a/libgloss/rs6000/sim-getrusage.S
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * sim-getrusage.S -- PowerPC simulator getrusage call.
- *
- * Copyright (c) 1995, 2000, 2001 Cygnus Support
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#include "ppc-asm.h"
-
-FUNC_START(getrusage)
- li r0,117
- sc
- bns+ 0f
- b FUNC_NAME(_cerror)
-0: blr
-FUNC_END(getrusage)
diff --git a/libgloss/rs6000/simulator.S b/libgloss/rs6000/simulator.S
index 914a761ab..4e8becb28 100644
--- a/libgloss/rs6000/simulator.S
+++ b/libgloss/rs6000/simulator.S
@@ -87,6 +87,14 @@ FUNC_START(gettimeofday)
0: blr
FUNC_END(gettimeofday)
+FUNC_START(getrusage)
+ li r0,117
+ sc
+ bns+ 0f
+ b FUNC_NAME(_cerror)
+0: blr
+FUNC_END(getrusage)
+
FUNC_START(lseek)
li r0,199
sc
diff --git a/libgloss/rs6000/yellowknife.ld b/libgloss/rs6000/yellowknife.ld
index 36c30092d..96c426072 100644
--- a/libgloss/rs6000/yellowknife.ld
+++ b/libgloss/rs6000/yellowknife.ld
@@ -137,7 +137,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sh/sh1lcevb.ld b/libgloss/sh/sh1lcevb.ld
index b2979d75d..efe9ab3c7 100644
--- a/libgloss/sh/sh1lcevb.ld
+++ b/libgloss/sh/sh1lcevb.ld
@@ -105,7 +105,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sh/sh2lcevb.ld b/libgloss/sh/sh2lcevb.ld
index 06a85adc3..8ae7f316a 100644
--- a/libgloss/sh/sh2lcevb.ld
+++ b/libgloss/sh/sh2lcevb.ld
@@ -101,7 +101,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sh/sh3bb.ld b/libgloss/sh/sh3bb.ld
index f2a33191f..c3fc6574e 100644
--- a/libgloss/sh/sh3bb.ld
+++ b/libgloss/sh/sh3bb.ld
@@ -103,7 +103,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sh/sh3lcevb.ld b/libgloss/sh/sh3lcevb.ld
index d41c65faf..0129921b1 100644
--- a/libgloss/sh/sh3lcevb.ld
+++ b/libgloss/sh/sh3lcevb.ld
@@ -101,7 +101,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sparc/elfsim.ld b/libgloss/sparc/elfsim.ld
index a047a050f..ef04d0329 100644
--- a/libgloss/sparc/elfsim.ld
+++ b/libgloss/sparc/elfsim.ld
@@ -193,7 +193,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sparc/ex930.ld b/libgloss/sparc/ex930.ld
index 9822dca91..b501b2eb8 100644
--- a/libgloss/sparc/ex930.ld
+++ b/libgloss/sparc/ex930.ld
@@ -151,7 +151,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sparc/ex931.ld b/libgloss/sparc/ex931.ld
index b3e610730..26ffb4d6d 100644
--- a/libgloss/sparc/ex931.ld
+++ b/libgloss/sparc/ex931.ld
@@ -151,7 +151,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sparc/ex934.ld b/libgloss/sparc/ex934.ld
index ff2f91b20..7d1d5edf8 100644
--- a/libgloss/sparc/ex934.ld
+++ b/libgloss/sparc/ex934.ld
@@ -151,7 +151,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/sparc/sparc86x.ld b/libgloss/sparc/sparc86x.ld
index 585b16cad..f4eaf98ba 100644
--- a/libgloss/sparc/sparc86x.ld
+++ b/libgloss/sparc/sparc86x.ld
@@ -168,7 +168,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/xstormy16/eva_app.ld b/libgloss/xstormy16/eva_app.ld
index 6699b05a1..5afc2b494 100644
--- a/libgloss/xstormy16/eva_app.ld
+++ b/libgloss/xstormy16/eva_app.ld
@@ -123,7 +123,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/xstormy16/eva_stub.ld b/libgloss/xstormy16/eva_stub.ld
index 34f3b91b0..725e623cb 100644
--- a/libgloss/xstormy16/eva_stub.ld
+++ b/libgloss/xstormy16/eva_stub.ld
@@ -132,7 +132,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/xstormy16/sim_high.ld b/libgloss/xstormy16/sim_high.ld
index a7f4aa09f..abeb01f3c 100644
--- a/libgloss/xstormy16/sim_high.ld
+++ b/libgloss/xstormy16/sim_high.ld
@@ -125,7 +125,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libgloss/xstormy16/sim_rom.ld b/libgloss/xstormy16/sim_rom.ld
index e7ef6fb89..c8f5a8d16 100644
--- a/libgloss/xstormy16/sim_rom.ld
+++ b/libgloss/xstormy16/sim_rom.ld
@@ -129,7 +129,6 @@ SECTIONS
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
- .debug_ranges 0 : { *(.debug_ranges) }
/* SGI/MIPS DWARF 2 extensions */
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
diff --git a/libtool.m4 b/libtool.m4
index cbd74d571..7e4a2eec4 100644
--- a/libtool.m4
+++ b/libtool.m4
@@ -15,7 +15,7 @@
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
-## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
##
## As a special exception to the GNU General Public License, if you
## distribute this file as part of a program that contains a
@@ -103,8 +103,6 @@ AC_REQUIRE([AC_OBJEXT])dnl
AC_REQUIRE([AC_EXEEXT])dnl
dnl
-AC_LIBTOOL_SYS_MAX_CMD_LEN
-
# Only perform the check for file, if the check method requires it
case $deplibs_check_method in
file_magic*)
@@ -191,48 +189,6 @@ ia64-*-hpux*)
rm -rf conftest*
;;
-x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case "`/usr/bin/file conftest.o`" in
- *32-bit*)
- case $host in
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
*-*-sco3.2v5*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
SAVE_CFLAGS="$CFLAGS"
@@ -281,65 +237,6 @@ ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
esac
])
-
-# AC_LIBTOOL_SYS_MAX_CMD_LEN
-# --------------------------
-AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
-[# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- cygwin* | mingw*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
- esac
-])
-if test -n "$lt_cv_sys_max_cmd_len" ; then
- AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
- AC_MSG_RESULT(none)
-fi
-])# AC_LIBTOOL_SYS_MAX_CMD_LEN
-
-
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
@@ -668,7 +565,6 @@ cygwin* | mingw* |pw32*)
;;
darwin* | rhapsody*)
- # this will be overwritten by pass_all, but leave it in just in case
lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
lt_cv_file_magic_cmd='/usr/bin/file -L'
case "$host_os" in
@@ -679,7 +575,6 @@ darwin* | rhapsody*)
lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
;;
esac
- lt_cv_deplibs_check_method=pass_all
;;
freebsd* | kfreebsd*-gnu)
@@ -740,7 +635,14 @@ irix5* | irix6*)
# This must be Linux ELF.
linux-gnu*)
- lt_cv_deplibs_check_method=pass_all
+ case $host_cpu in
+ alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
+ lt_cv_deplibs_check_method=pass_all ;;
+ *)
+ # glibc up to 2.1.1 does not perform some relocations on ARM
+ lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;;
+ esac
+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
;;
netbsd* | knetbsd*-gnu)
@@ -836,9 +738,8 @@ AC_DEFUN([AC_CHECK_LIBM],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+*-*-beos* | *-*-cygwin* | *-*-pw32*)
# These system don't have libm
- # on darwin the libm is a symbolic link to libSystem.dylib
;;
*-ncr-sysv4.3*)
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
diff --git a/ltcf-c.sh b/ltcf-c.sh
index 7a91c40a5..e73ff16f7 100644
--- a/ltcf-c.sh
+++ b/ltcf-c.sh
@@ -17,7 +17,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -223,10 +223,6 @@ EOF
hardcode_shlibpath_var=no
;;
- tpf*)
- ld_shlibs=yes
- ;;
-
*)
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh
index fa8dbd08d..465650ff4 100644
--- a/ltcf-cxx.sh
+++ b/ltcf-cxx.sh
@@ -22,7 +22,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -652,9 +652,6 @@ case $host_os in
;;
esac
;;
- tpf*)
- ld_shlibs=yes
- ;;
unixware*)
# FIXME: insert proper C++ library support
ld_shlibs=no
diff --git a/ltcf-gcj.sh b/ltcf-gcj.sh
index 51faf0459..95c6fcd35 100644
--- a/ltcf-gcj.sh
+++ b/ltcf-gcj.sh
@@ -20,7 +20,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
diff --git a/ltconfig b/ltconfig
index 15f986c76..7972327da 100755
--- a/ltconfig
+++ b/ltconfig
@@ -17,7 +17,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -1371,18 +1371,6 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
esac
;;
-tpf*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
uts4*)
version_type=linux
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
@@ -2211,7 +2199,7 @@ case $ltmain in
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -2635,7 +2623,7 @@ EOF
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# */
#
# #include <stdio.h> /* for printf() */
diff --git a/ltmain.sh b/ltmain.sh
index d5173bc46..c3547e5a5 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -17,7 +17,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -3550,7 +3550,7 @@ EOF
# Now hardcode the library paths
rpath=
hardcode_libdirs=
- for libdir in $compile_rpath; do
+ for libdir in $compile_rpath $finalize_rpath; do
if test -n "$hardcode_libdir_flag_spec"; then
if test -n "$hardcode_libdir_separator"; then
if test -z "$hardcode_libdirs"; then
@@ -4234,63 +4234,6 @@ fi\
# fi
# done
- # POSIX demands no paths to be encoded in archives. We have
- # to avoid creating archives with duplicate basenames if we
- # might have to extract them afterwards, e.g., when creating a
- # static archive out of a convenience library, or when linking
- # the entirety of a libtool archive into another (currently
- # not supported by libtool).
- if (for obj in $oldobjs
- do
- $echo "X$obj" | $Xsed -e 's%^.*/%%'
- done | sort | sort -uc >/dev/null 2>&1); then
- :
- else
- $echo "copying selected object files to avoid basename conflicts..."
-
- if test -z "$gentop"; then
- gentop="$output_objdir/${outputname}x"
-
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- $show "$mkdir $gentop"
- $run $mkdir "$gentop"
- status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
- exit $status
- fi
- generated="$generated $gentop"
- fi
-
- save_oldobjs=$oldobjs
- oldobjs=
- counter=1
- for obj in $save_oldobjs
- do
- objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
- case " $oldobjs " in
- " ") oldobjs=$obj ;;
- *[\ /]"$objbase "*)
- while :; do
- # Make sure we don't pick an alternate name that also
- # overlaps.
- newobj=lt$counter-$objbase
- counter=`expr $counter + 1`
- case " $oldobjs " in
- *[\ /]"$newobj "*) ;;
- *) if test ! -f "$gentop/$newobj"; then break; fi ;;
- esac
- done
- $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
- $run ln "$obj" "$gentop/$newobj" ||
- $run cp "$obj" "$gentop/$newobj"
- oldobjs="$oldobjs $gentop/$newobj"
- ;;
- *) oldobjs="$oldobjs $obj" ;;
- esac
- done
- fi
-
eval cmds=\"$old_archive_cmds\"
if len=`expr "X$cmds" : ".*"` &&
@@ -4304,7 +4247,6 @@ fi\
objlist=
concat_cmds=
save_oldobjs=$oldobjs
-
for obj in $save_oldobjs
do
oldobjs="$objlist $obj"
diff --git a/missing b/missing
index 894e786e1..64b5f901d 100755
--- a/missing
+++ b/missing
@@ -1,9 +1,9 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2005-06-08.21
+scriptversion=2004-09-07.08
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
@@ -19,8 +19,8 @@ scriptversion=2005-06-08.21
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -87,12 +87,12 @@ Supported PROGRAM values:
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Send bug reports to <bug-automake@gnu.org>."
- exit $?
+ exit 0
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
- exit $?
+ exit 0
;;
-*)
@@ -288,18 +288,11 @@ WARNING: \`$1' is $msg. You should only need it if
call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+ file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
fi
- # If the file does not exist, the user really needs makeinfo;
- # let's fail without touching anything.
- test -f $file || exit 1
touch $file
;;
diff --git a/mkinstalldirs b/mkinstalldirs
index 259dbfcd3..6fbe5e117 100755
--- a/mkinstalldirs
+++ b/mkinstalldirs
@@ -1,7 +1,7 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
-scriptversion=2005-06-29.22
+scriptversion=2004-02-15.20
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
@@ -12,7 +12,7 @@ scriptversion=2005-06-29.22
# <automake-patches@gnu.org>.
errstatus=0
-dirmode=
+dirmode=""
usage="\
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
@@ -27,7 +27,7 @@ while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage"
- exit $?
+ exit 0
;;
-m) # -m PERM arg
shift
@@ -37,7 +37,7 @@ while test $# -gt 0 ; do
;;
--version)
echo "$0 $scriptversion"
- exit $?
+ exit 0
;;
--) # stop option processing
shift
@@ -103,21 +103,13 @@ esac
for file
do
- case $file in
- /*) pathcomp=/ ;;
- *) pathcomp= ;;
- esac
- oIFS=$IFS
- IFS=/
- set fnord $file
+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
- IFS=$oIFS
+ pathcomp=
for d
do
- test "x$d" = x && continue
-
- pathcomp=$pathcomp$d
+ pathcomp="$pathcomp$d"
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
@@ -132,7 +124,7 @@ do
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
- lasterr=
+ lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
@@ -142,7 +134,7 @@ do
fi
fi
- pathcomp=$pathcomp/
+ pathcomp="$pathcomp/"
done
done
diff --git a/move-if-change b/move-if-change
index ff74a556d..ee1b348be 100755
--- a/move-if-change
+++ b/move-if-change
@@ -1,22 +1,32 @@
#!/bin/sh
-# Like mv $1 $2, but if the files are the same, just delete $1.
-# Status is zero if successful, nonzero otherwise.
-usage="$0: usage: $0 SOURCE DEST"
+# Copyright (C) 1996 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-case $# in
-2) ;;
-*) echo "$usage" >&2; exit 1;;
-esac
-
-for arg in "$1" "$2"; do
- case $arg in
- -*) echo "$usage" >&2; exit 1;;
- esac
-done
-
-if test -r "$2" && cmp -s "$1" "$2"; then
- rm -f "$1"
+if
+test -r $2
+then
+if
+cmp $1 $2 > /dev/null
+then
+echo $2 is unchanged
+rm -f $1
+else
+mv -f $1 $2
+fi
else
- mv -f "$1" "$2"
+mv -f $1 $2
fi
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index fec04f0b7..b4de087e8 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,1374 +1,3 @@
-2006-03-20 Mark Mitchell <mark@codesourcery.com>
-
- * acconfig.h (_ATEXIT_DYNAMIC_ALLOC): Undef.
- * configure.in (--disable-newlib-atexit-dynamic-alloc): New
- option.
- * configure: Regenerated.
- * newlib.hin: Regenerated.
- * libc/stdlib/__atexit.c (__register_exitproc): Don't call malloc
- if _ATEXIT_DYNAMIC_ALLOC is undefined.
- * libc/stdlib/__call_atexit.c (__call_exitprocs): Don't call free
- if _ATEXIT_DYNAMIC_ALLOC is undefined.
-
-2006-03-17 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/linuxthreads/config.h: Remove definition
- of UINT32_C.
-
-2006-03-15 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/wsetup.c (__swsetup): Don't make a buffer
- for a string I/O file that isn't using the asprintf family.
-
-2006-03-07 Eric Blake <ebb9@byu.net>
-
- * libc/stdio/freopen.c (_freopen_r) [HAVE_FCNTL]: For NULL
- filename, allow read-only or write-only FILE atop O_RDWR file
- descriptor.
- * libc/stdio64/freopen64.c (_freopen64_r) [HAVE_FCNTL]: Likewise.
-
-2006-03-07 Jeff Johnston <jjohnstn@redhat.com>
-
- * libm/common/sf_isinf.c[_DOUBLE_IS_32BITS]: Undef isinf.
- * libm/common/sf_isnan.c[_DOUBLE_IS_32BITS]: Undef isnan.
-
-2006-03-02 Jeff Johnston <jjohnstn@redhat.com>
-
- * libm/math/math.tex: Fix reference to sisnan.def which
- is now in common subdirectory.
- * libm/mathfp/mathfp.tex: Ditto.
-
-2006-02-27 Jeff Johnston <jjohnstn@redhat.com>
-
- * Makefile.am (MATHOBJS_IN_LIBC): Add s_isinfd, sf_isinff,
- s_isnand, and sf_isnanf object files.
- * Makefile.in: Regenerated.
- * libc/include/ieeefp.h: Undef isnan and isinf to avoid
- conflict if <math.h> has previously been included.
- * libc/include/math.h
- * libc/include/math.h: Make isnan and isinf macros to
- conform to C99.
- (__isinfd, __isinff, __isnand, __isnanf): New functions.
- * libm/common/Makefile.am: Add new s_isinfd, s_isnand, sf_isinff,
- and sf_isnanf files. Also support s_isnan, sf_isnan, s_isinf, and
- sf_isinf files which have been moved from math/mathfp directories.
- * libm/common/Makefile.in: Regenerated.
- * libm/common/s_isinfd.c: New file.
- * libm/common/s_isnand.c: Ditto.
- * libm/common/sf_isinff.c: Ditto.
- * libm/common/sf_isnanf.c: Ditto.
- * libm/common/s_isinf.c: Moved from libm/math directory.
- * libm/common/s_isnan.c: Ditto.
- * libm/common/sf_isinf.c: Ditto.
- * libm/common/sf_isnan.c: Ditto.
- * libm/math/Makefile.am: Remove isinf and isnan family functions
- which have been moved into common directory.
- * libm/mathfp/Makefile.am: Ditto.
- * libm/math/Makefile.in: Regenerated.
- * libm/mathfp/Makefile.in: Ditto.
- * libm/math/s_isinf.c: Removed.
- * libm/math/s_isnan.c: Ditto.
- * libm/math/sf_isinf.c: Ditto.
- * libm/math/sf_isnan.c: Ditto.
- * libm/mathfp/s_isinf.c: Ditto.
- * libm/mathfp/s_isnan.c: Ditto.
- * libm/mathfp/sf_isinf.c: Ditto.
- * libm/mathfp/sf_isnan.c: Ditto.
-
-2006-02-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/fflush.c (fflush): For an fflush on a read-only
- stream, turn off fseek/rewind optimization as per POSIX/SUSv3.
- * libc/stdio/fseek.c (_fseek_r): After a successful unoptimized
- seek, turn off the __SNPT no-optimization flag.
-
-2006-02-16 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/aio.c: Define _GNU_SOURCE so struct aioinit
- will be defined.
- * libc/sys/linux/sys/types.h: Move <sys/config.h> ahead of
- <features.h> to preset special flags.
-
-2006-02-15 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/time.h (struct timeval): Change member types
- according to SUSv3.
- * libc/include/sys/types.h (useconds_t): Change to unsigned
- according to SUSv3.
- (suseconds_t): Define type.
-
-2006-02-13 Jeff Johnston <jjohnstn@redhat.com>
- David Carne <davidcarne@gmail.com>
-
- * libc/string/strndup_r.c (_strndup_r): Use strnlen logic
- instead of strlen to determine number of bytes to copy.
- * libc/string/strnlen.c (strnlen): Fix so check for max limit occurs
- before looking at storage location.
-
-2006-02-07 Paul Brook <paul@codesourcery.com>
-
- * libc/machine/arm/setjmp.S: Add Thumb-2 support.
- * libc/sys/arm/crt0.S: Add Thumb-2 startup code.
- * libc/sys/arm/libcfunc.c (do_AngelSWI): Use AngelSWIInsn.
- * libc/sys/arm/swi.h (AngelSWIInsn, AngelSWIAsm): Define.
- * libc/sys/arm/trap.S: Disable for Thumb-2.
-
-2006-01-31 Leif Ekblad <leif@rdos.net>
-
- * configure.host: RDOS support added
- * libc/include/sys/config.h: Ditto.
- * libc/sys/rdos/Makefile.am, libc/sys/rdos/Makefile.in: New files.
- * libc/sys/rdos/aclocal.m4, libc/sys/rdos/chown.c: Ditto.
- * libc/sys/rdos/close.c, libc/sys/rdos/config.h: Ditto.
- * libc/sys/rdos/configure, libc/sys/rdos/configure.in: Ditto.
- * libc/sys/rdos/crt0.S, libc/sys/rdos/execve.c: Ditto.
- * libc/sys/rdos/fork.c, libc/sys/rdos/fstat.c: Ditto.
- * libc/sys/rdos/getenv.c, libc/sys/rdos/getpid.c: Ditto.
- * libc/sys/rdos/gettod.c, libc/sys/rdos/isatty.c: Ditto.
- * libc/sys/rdos/kill.c, libc/sys/rdos/link.c: Ditto.
- * libc/sys/rdos/lseek.c, libc/sys/rdos/open.c: Ditto.
- * libc/sys/rdos/rdos.S, libc/sys/rdos/rdos.h: Ditto.
- * libc/sys/rdos/rdoshelp.c, libc/sys/rdos/read.c: Ditto.
- * libc/sys/rdos/readlink.c, libc/sys/rdos/sbrk.c: Ditto.
- * libc/sys/rdos/stat.c, libc/sys/rdos/symlink.c: Ditto.
- * libc/sys/rdos/times.c, libc/sys/rdos/unlink.c: Ditto.
- * libc/sys/rdos/user.def, libc/sys/rdos/wait.c: Ditto.
- * libc/sys/rdos/write.c: Ditto.
-
-2006-01-24 Jeff Johnston <jjohnstn@redhat.com>
-
- * acinclude.m4: Add nodefine to AM_INIT_AUTOMAKE macro invocation
- so as not to define PACKAGE and VERSION in newlib.h.
- * aclocal.m4: Regenerated.
- * configure: Ditto.
- * newlib.hin: Ditto.
-
-2006-01-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * acconfig.h: New file to generate newlib.hin from.
- * newlib.hin: Regenerated.
- * stamp-h.in: Regenerated.
- * Makefile.am: Add ACLOCAL_AMFLAGS so aclocal can be
- called automatically.
- * Makefile.in: Regenerated.
- * acinclude.m4: Add proper comment for hack in previous change.
- * aclocal.m4 */aclocal.m4: Regenerated.
- * configure */configure: Regenerated.
-
-2006-01-11 Jeff Johnston <jjohnstn@redhat.com>
-
- * acinclude.m4: Add hack to prevent INSTALL in subdirs
- from being set to "../".
- * Makefile.am: Pass INSTALL in AM_MAKEFLAGS.
- * aclocal.m4: Regenerated.
- * configure: Ditto.
- * Makefile.in: Ditto.
- * doc/aclocal.m4: Ditto.
- * doc/configure: Ditto.
- * iconvdata/aclocal.m4: Ditto.
- * iconvdata/configure: Ditto.
- * libc/*/aclocal.m4: Ditto.
- * libc/*/configure: Ditto.
- * libc/libc.texinfo: Ditto.
- * libm/*/aclocal.m4: Ditto.
- * libm/*/configure: Ditto.
-
-2006-01-10 Eric Blake <ebb9@byu.net>
-
- * libc/stdio/freopen.c (_freopen_r): Fix use of oflags.
- * libc/stdio64/freopen64.c (_freopen64_r): Likewise.
-
-2006-01-10 Jeff Johnston <jjohnstn@redhat.com>
-
- * libm/mathfp/s_frexp.c: Check for special values on
- the original input, not the manipulated output value.
- * libm/mathfp/sf_frexp.c: Ditto.
- * libm/mathfp/s_atangent.c: Don't use local value branch
- when checking for quadrant.
- * libm/mathfp/sf_atangent.c: Ditto.
-
-2006-01-09 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/freopen.c: Switch to use isatty instead of _isatty.
- * libc/stdio64/freopen64.c: Ditto.
-
-2006-01-09 Eric Blake <ebb9@byu.net>
-
- * libc/stdio/freopen.c (_freopen_r): Accept NULL filename.
- * libc/stdio64/freopen64.c (_freopen64_r): Likewise.
-
-2006-01-06 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/include/getopt.h: Add macros needed by
- new version of getopt.c in libc/stdlib.
-
-2006-01-04 Gregory Pietsch <gpietsch@comcast.net>
-
- * libc/stdlib/getopt.c: Replaced with version
- that adds getopt_long and getopt_long_only support.
- * libc/include/getopt.h: New file.
-
-2005-12-16 Jeff Johnston <jjohnstn@redhat.com>
-
- * NEWS: Update with 1.14.0 info.
- * README: Ditto.
- * acinclude.m4: Change version number to 1.14.0.
- * aclocal.m4: Regenerated.
- * configure: Ditto.
- * doc/aclocal.m4: Ditto.
- * doc/configure: Ditto.
- * libc/*/aclocal.m4: Ditto.
- * libc/*/configure: Ditto.
- * libc/libc.texinfo: Ditto.
- * libm/*/aclocal.m4: Ditto.
- * libm/*/configure: Ditto.
- * libm/libm.texinfo: Ditto.
- * libc/sys/linux/shared.ld: Add VERS_1.14.
-
-2005-12-16 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/sys/stat.h: Change *stat64 prototypes to
- take a pointer to struct stat64 rather than struct stat.
-
-2005-12-16 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h: Prefer long over int for int32_t.
- Use __have_long32 to set up int32_t.
- * libc/include/inttypes.h: Use "#if xxx" instead of "#ifdef xxx"
- (Sync with stdint.h).
-
-2005-12-14 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/fcntl.h: Define O_SYNC unconditionally. Fix
- typo in O_NDELAY comment.
-
-2005-12-13 Nathan Sidwell <nathan@codesourcery.com>
-
- * libc/include/machine/ieeefp.h (__mt__): Renamed from __ms1__.
- * libc/include/machine/setjmp.h (__mt__): Likewise.
- * libc/machine/mt/setjmp.S: Rename ms1 reference to mt.
- * libc/machine/configure.in: Ditto.
-
-2005-12-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.host: Replace ms1 arch with mt arch.
- * libc/machine/mt: Renamed from ms1 dir.
-
-2005-12-08 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/sys/types.h: Remove the ifdef armour around
- standard POSIX types.
-
-2005-12-06 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/sys/rtems/crt0.c: Add rtems_gxx_key_create,
- rtems_gxx_key_delete, rtems_gxx_getspecific,
- rtems_gxx_setspecific, rtems_gxx_mutex_trylock,
- rtems_gxx_recursive_mutex_init, rtems_gxx_recursive_mutex_lock,
- rtems_gxx_recursive_mutex_trylock, rtems_gxx_recursive_mutex_unlock.
-
-2005-12-05 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/stdlib.h: Move cygwin declarations to cygwin-specific
- file. Declare unsetenv and _unsetenv_r when not cygwin.
-
-2005-11-18 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/time/strptime.c (strptime): Don't abort for %c and %Z.
- Treat %c as "%a %b %e %H:%M:%S %Y" and ignore %Z.
-
-2005-11-18 Christopher Faylor <cgf@timesys.com>
-
- * include/sys/time.h: Move more cygwin stuff to cygwin-specific header.
-
-2005-11-18 Christopher Faylor <cgf@timesys.com>
-
- * include/time.h: Remove more cygwin-specific stuff.
-
-2005-11-18 Christopher Faylor <cgf@timesys.com>
-
- * include/time.h: Move cygwin declarations to cygwin-specific header.
- * include/sys/time.h: Rename cygwin include to "sys_time.h".
-
-2005-11-17 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/dl/dl-local.h: New file based on old dlfcn.h
- in libc/sys/linux/include.
- * libc/sys/linux/dl/dlfcn.h: Moved to libc/sys/linux/include.
- * libc/sys/linux/dl/ldsodefs.h: Include dl-local.h instead of dlfcn.h.
- * libc/sys/linux/include/dlfcn.h: Replaced with dlfcn.h formerly
- in libc/sys/linux/dl.
-
-2005-11-11 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/sys/time.h: For cygwin, use general header rather than
- specific "sys/select.h".
-
-2005-11-08 Tom Walsh <tom@openhardware.net>
-
- * libc/time/tzvars.c: New file.
- * libc/time/tzset_r.c: Moved globals into tzvars.c
- so other time functions needn't link in __tzset_r and its
- dependencies.
- * libc/time/Makefile.am: Add the new file.
- * libc/time/Makefile.in: Regenerated.
-
-2005-11-08 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/string.h: Add cygwin-specific function declaration.
-
-2005-11-07 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/ieeefp.h: Add C++ guards.
-
-2005-11-03 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/unix/getcwd.c: Don't use non-reentrant syscall names.
- * libc/unix/getlogin.c: Ditto.
- * libc/unix/getpass.c: Ditto.
- * libc/unix/getut.c: Ditto.
- * libc/unix/ttyname.c: Ditto.
-
-2005-11-03 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/sys/unistd.h (readlink, symlink): Provide these
- prototypes by default.
- * libc/sys/linux/include/unistd.h (readlink): Remove this
- prototype.
- * libc/sys/linux/sys/unistd.h (readlink, symlink): New
- prototypes.
-
-2005-11-01 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h: Cleanup #if vs. #ifdef.
-
-2005-10-31 Darin Johnson <darin@usa.net>
-
- * libm/mathfp/s_mathcnst.c: Fix endian-ness check to be
- correct for constants.
-
-2005-10-28 Bob Wilson <bob.wilson@acm.org>
-
- * libc/stdio/siprintf.c: Wrap long lines in ANSI_SYNOPSIS.
- * libc/stdio/siscanf.c: Likewise.
- * libc/stdio/sprintf.c: Likewise.
- * libc/stdio/sscanf.c: Likewise.
- * libc/stdio/vfprintf.c: Likewise.
- * libc/stdio/vfscanf.c: Likewise.
- * libc/stdio/viprintf.c: Likewise.
- * libc/stdio/viscanf.c: Likewise.
-
-2005-10-28 Bob Wilson <bob.wilson@acm.org>
-
- * libc/sys.tex (Stubs): Format examples consistently. Change sbrk
- example to use "_end" symbol instead of "end". Change write example
- to use "outbyte" instead of "writechar".
-
-2005-10-28 Bob Wilson <bob.wilson@acm.org>
-
- * libc/ctype/ctype.tex: Use hyphens as appropriate, but not otherwise.
- * libc/ctype/islower.c: Likewise.
- * libc/ctype/isupper.c: Likewise.
- * libc/ctype/iswalnum.c: Likewise.
- * libc/ctype/iswalpha.c: Likewise.
- * libc/ctype/iswblank.c: Likewise.
- * libc/ctype/iswcntrl.c: Likewise.
- * libc/ctype/iswdigit.c: Likewise.
- * libc/ctype/iswgraph.c: Likewise.
- * libc/ctype/iswlower.c: Likewise.
- * libc/ctype/iswprint.c: Likewise.
- * libc/ctype/iswpunct.c: Likewise.
- * libc/ctype/iswspace.c: Likewise.
- * libc/ctype/iswupper.c: Likewise.
- * libc/ctype/iswxdigit.c: Likewise.
- * libc/ctype/tolower.c: Likewise.
- * libc/ctype/toupper.c: Likewise.
- * libc/ctype/towctrans.c: Likewise.
- * libc/ctype/towlower.c: Likewise.
- * libc/ctype/towupper.c: Likewise.
- * libc/string/strcasecmp.c: Likewise.
- * libc/string/strcoll.c: Likewise.
- * libc/string/strings.tex: Likewise.
- * libc/string/strlwr.c: Likewise.
- * libc/string/strncasecmp.c: Likewise.
- * libc/string/strupr.c: Likewise.
- * libc/string/wcscoll.c: Likewise.
- * libc/string/wcslcat.c: Likewise.
- * libc/string/wcslcpy.c: Likewise.
- * libc/string/wcsnlen.c: Likewise.
- * libc/string/wcsstr.c: Likewise.
- * libc/string/wcstrings.tex: Likewise.
- * libc/string/wmemchr.c: Likewise.
- * libc/string/wmemcmp.c: Likewise.
- * libc/string/wmemcpy.c: Likewise.
- * libc/string/wmemmove.c: Likewise.
- * libc/string/wmemset.c: Likewise.
-
-2005-10-28 Bob Wilson <bob.wilson@acm.org>
-
- * libc/misc/unctrl.c: Replace FUNCTION description.
- * libc/signal/signal.c: Remove documentation for raise and _raise_r.
- * libc/stdio/getdelim.c: Fix spelling errors.
- * libc/stdio/getw.c: Put RETURNS on a separate line. Fix punctuation.
- * libc/stdio/putw.c: Likewise.
- * libc/stdlib/a64l.c: Fix formatting, spelling and punctuation in
- documentation.
- * libc/stdlib/assert.c: Do not capitalize FUNCTION description.
- * libc/stdlib/efgcvt.c: Add spaces to FUNCTION description.
- * libc/stdlib/envlock.c: Use em-dash in FUNCTION description.
- * libc/stdlib/mlock.c: Likewise.
- * libc/stdlib/mstats.c: Likewise.
- * libc/time/tzlock.c: Likewise.
- * libc/stdlib/rand.c: Use "multi-threaded" and "thread-safe" in NOTES.
- * libc/stdlib/rand48.c: Remove extra space in FUNCTION description
- and hyphenate "pseudo-random".
- * libc/string/bcmp.c: Remove extra blank lines in documentation.
- * libc/string/strncat.c: Likewise.
- * libc/string/memchr.c: Remove extra ">" character in documentation.
- * libc/string/strcspn.c: Use "characters" instead of "chars".
- * libc/string/strpbrk.c: Likewise.
- * libc/string/strerror_r.c: Capitalize "GNU".
- * libc/string/strnlen.c: Likewise.
- * libc/string/strtok.c: Fix formatting, spelling and punctuation in
- documentation. Use "multi-threaded" and "thread-safe" in NOTES.
- * libc/string/wcscat.c: Split PORTABILITY into two paragraphs.
- * libc/string/wcschr.c: Likewise.
- * libc/string/wcscmp.c: Likewise.
- * libc/string/wcscpy.c: Likewise.
- * libc/string/wcscspn.c: Likewise.
- * libc/string/wcslen.c: Likewise.
- * libc/string/wcsncat.c: Likewise.
- * libc/string/wcsncmp.c: Likewise.
- * libc/string/wcsncpy.c: Likewise.
- * libc/string/wcsnlen.c: Likewise.
- * libc/string/wcspbrk.c: Likewise.
- * libc/string/wcsrchr.c: Likewise.
- * libc/string/wcsspn.c: Likewise.
- * libc/string/wmemchr.c: Likewise.
- * libc/string/wmemcmp.c: Likewise.
- * libc/string/wmemcpy.c: Likewise.
- * libc/string/wmemset.c: Likewise.
- * libc/string/wmemmove.c: Likewise. Also fix FUNCTION description.
- * libc/string/wcswidth.c: Formatting and punctuation in documentation.
- * libc/string/wcwidth.c: Likewise.
- * libm/common/s_modf.c: Remove extra period from documentation.
- * libm/math/s_isnan.c: Fix formatting, grammar and punctuation in
- documentation.
- * libm/mathfp/s_isnan.c: Likewise.
- * libm/math/s_ldexp.c: Fix punctuation.
- * libm/mathfp/s_ldexp.c: Likewise.
- * libm/math/w_log.c: Likewise.
- * libm/mathfp/s_logarithm.c: Likewise.
- * libm/math/w_j0.c: Add spaces to FUNCTION description.
- * libm/mathfp/w_jn.c: Likewise.
-
-2005-10-26 Shaun Jackman <sjackman@gmail.com>
-
- * libc/posix/scandir.c (scandir): Update the function
- prototype to match the header.
- * libc/sys/linux/linuxthreads/bits/libc-lock.h: Remove an
- extraneous #endif.
- * libc/sys/linux/sys/lock.h: Do not include
- machine/weakalias.h, since it's not used by this file.
-
-2005-10-26 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/Makefile.am: Reorder SUBLIBS so machine and sys
- directories can override properly.
-
-2005-10-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/math.h (HUGE_VAL, HUGE_VALF, HUGE_VALL): When
- gcc is 3.3 or greater, use special gcc builtins.
-
-2005-10-20 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/time.h: Declare futimes and lutimes for Cygwin.
-
-2005-10-18 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/features.h: Define _POSIX_MEMLOCK_RANGE for Cygwin.
-
-2005-10-14 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/math.h (HUGE_VALF, HUGE_VALL): New.
- * libm/common/Makefile.am: Add s_infconst.c support.
- * libm/common/Makefile.in: Regenerated.
- * libm/common/s_infconst.c: New file with float and
- long double infinity support added.
- * libm/math/Makefile.am: Remove s_infconst.c support.
- * libm/math/Makefile.in: Regenerated.
- * libm/math/s_infconst.c: Moved to common directory.
- * libm/mathfp/Makefile.am: Remove s_infconst.c support.
- * libm/mathfp/Makefile.in: Regenerated.
- * libm/mathfp/s_infconst.c: Moved to common directory.
-
-2005-10-14 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/net/gethostbydns.c (dprintf): Rename to
- dbgprintf to prevent conflict with new dprintf function.
-
-2005-10-14 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/vfprintf.c (_VFPRINTF_R): Fix up "inf" and
- "nan" processing for systems that have long double support.
-
-2005-10-14 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/sys/types.h (int8_t): Add type.
-
-2005-10-14 Bob Wilson <bob.wilson@acm.org>
-
- * libm/common/Makefile.am (doc): Do not append to $(TARGETDOC).
- * libm/common/Makefile.in: Regenerate.
- * libm/common/common.tex: Delete file.
- * libm/math/math.tex: Include .def files from common/.
- * libm/mathfp/mathfp.tex: Likewise.
-
-2005-10-14 Bob Wilson <bob.wilson@acm.org>
-
- * libc/libc.texinfo (Top): Surround this node with @ifnottex
- instead of @ifinfo. Update menu to add Introduction and match
- SUBDIRS order.
- (Introduction): New section.
-
-2005-10-14 Bob Wilson <bob.wilson@acm.org>
-
- * libc/reent/reent.tex (Reentrancy): Replace "Cygnus C Library"
- with "Red Hat newlib C Library".
- * libc/sys.tex (Stubs): Likewise.
- * libm/math/math.tex (Math): Likewise.
- * libm/mathfp/mathfp.tex (Math): Likewise.
-
-2005-10-11 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/stdio.h (dprintf): New declaration.
- (vdprintf): Ditto.
- * libc/stdio/Makefile.am (GENERAL_SOURCES): Add dprintf.c
- and vdprintf.c.
- * libc/stdio/Makefile.in: Regenerate.
- * libc/stdio/dprintf.c: New file.
- * libc/stdio/vdprintf.c: New file.
- * libc/stdio/stdio.tex (dprintf): New entry.
-
-2005-10-11 David Weatherford <weath@tensilica.com>
-
- * libc/stdio/vfprintf.c (_VFPRINTF_R): Recognize 'F' format.
- Print "inf" and "nan" in lowercase for e/f/g formats and in
- uppercase for E/F/G formats.
-
-2005-10-07 Bob Wilson <bob.wilson@acm.org>
-
- * libc/stdlib/mallocr.c (mALLOc, rEALLOCc, mEMALIGn): Set errno
- to ENOMEM on failure.
-
-2005-10-06 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h: Add [u]int_fast<N>_t types.
-
-2005-10-04 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h: Move magic to set __have_long* to the
- beginning. Use #if __have* instead of #if defined(__have*).
- Minor typo fixes.
-
-2005-10-04 James E Wilson <wilson@specifix.com>
-
- * libc/include/sys/dirent.h (_DIRENT_H_): Delete #include_next. Add
- #error.
-
-2005-10-03 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/include/stdint.h: Include <sys/types.h> and
- incorporate Ralf's change below.
-
-2005-10-03 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h:
- Use __INTMAX_TYPE__ to derive intmax_t.
- Use __UINTMAX_TYPE__ to derive uintmax_t.
- Fix minor typo.
-
-2005-09-27 Ralf Corsepius <ralf.corsepius@rtems.org>
-
- * libc/include/stdint.h: Correct __STDINT_EXP macro incorrectly
- handling GCC >= 4.
-
-2005-09-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/include/stdint.h: Update to match functionality
- of generic newlib stdint.h.
-
-2005-09-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/stdint.h (__EXP): Rename to __STDINT_EXP
- and do not #undef the macro after it is used. Fix typos.
- Also change 64-bit constants to use the __have_long64 and
- __have_longlong64 flags to determine if long or long long
- constants should be used.
- * libc/include/inttypes.h: Include stddef.h to get wchar_t
- type defined.
-
-2005-09-20 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/stdint.h: Fix typo in names of
- LEAST macros.
-
-2005-09-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/rtems/include/inttypes.h: Moved to...
- * libc/include/inttypes.h: ...here.
-
-2005-09-19 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/rtems/include/stdint.h: Moved to...
- * libc/include/stdint.h: ...here.
-
-2005-09-08 Jeff Johnston <jjohnstn@redhat.com>
-
- * Makefile.am: Add include files under bits sub-directory.
- * Makefile.in: Regenerated.
- * libc/sys/linux/argp/argp-fs-xinl.c: Set __OPTIMIZE__ to
- actual value of 1 to be compatible with newer glibc headers.
- * libc/sys/linux/sys/cdefs.h: Fix to be compatible with newer
- glibc headers.
- * libc/sys/linux/sys/dirent.h: Ditto.
- * libc/sys/linux/argp/argp-xinl.c: Ditto.
- * libc/sys/linux/dl/dl-runtime.c: Make sure fixup and
- profile_fixup routines are marked used so they won't be
- optimized away.
- * libc/sys/linux/dl/dl-cache.c: Don't use weak_extern macro
- to mark functions as weak.
- * libc/sys/linux/dl/dl-open.c: Ditto.
- * libc/sys/linux/iconv/gconv_open.c: Fix to obey new gcc4
- rules about lvalues.
- * libc/sys/linux/iconv/gconv_simple.c: Ditto.
- * libc/sys/linux/linuxthreads/bits/libc-lock.h: Don't use
- weak_extern macro to mark functions as weak. Instead always
- use #pragma weak.
- * iconvdata/jis0208.h: Fix to work with gcc4.
- * libc/sys/linux/dl/dl-load.c: Ditto.
- * libc/sys/linux/dl/dl-reloc.c: Ditto.
- * libc/sys/linux/dl/do-rel.h: Ditto.
- * libc/sys/linux/dl/dynamic-link.h: Ditto.
- * libc/sys/linux/include/ltdl.h: Ditto.
- * libc/sys/linux/machine/i386/dl-machine.h: Ditto.
- * libc/sys/linux/machine/i386/weakalias.h: Ditto.
- * libc/sys/linux/net/ns_ntoa.c: Ditto.
- * libc/sys/linux/bits/initspin.h: New file.
- * libc/sys/linux/bits/libc-lock.h: Ditto.
- * libc/sys/linux/bits/pthreadtypes.h: Ditto.
- * libc/sys/linux/bits/typesizes.h: Ditto.
-
-2005-09-08 Eric Blake <ebb9@byu.net>
-
- * libc/argz/argz_insert.c (argz_insert): Don't die with EINVAL when
- before is NULL.
-
-2005-09-08 Brian Dessent <brian@dessent.net>
-
- * sf_lrint.c (lrintf): Mask 'i0' correctly when extracting
- mantissa.
- * s_lrint.c: Ditto.
-
-2005-09-02 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/stdio.h: Add prototype for viprintf.
-
-2005-09-01 Jeff Johnston <jjohnstn@redhat.com>
-
- * libm/mathfp/s_pow.c: (pow): Change code so 0 raised to
- any positive power results in 0.
- * libm/mathfp/sf_pow.c (powf): Ditto.
-
-2005-08-31 Paul Brook <paul@codesourcery.com>
-
- * configure.host: Set have_crt0 to no for Arm targts when not
- providing syscalls. Set sys_dir=arm unconditionally.
- Default have_crt0 based on sys_dir.
- * configure.in: Use have_crt0.
- * libc/configure.in: Ditto.
- * libc/sys/configure.in: Ditto.
- * configure: Regenerate.
- * libc/configure: Regenerate.
- * libc/sys/configure: Regenerate.
- * libc/sys/arm/Makefile.am (lib_a_SOURCES): Add aeabi_atexit.c.
- Only build other files when providing syscalls.
- * libc/sys/arm/Makefile.in: Regenerate.
- * libc/sys/arm/aeabi_atexit.c: New file.
-
-2005-08-26 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/string.h: Revert previous change.
-
-2005-08-25 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/string.h: For Cygwin, Define strerror_r as per ISO C.
-
-2005-08-22 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/_syslist.h: If HAVE_OPENDIR is not defined,
- define _opendir as opendir, _readdir as readdir, and
- _closedir as closedir so that the implementations in
- libc/posix will be used.
-
-2005-08-10 DJ Delorie <dj@redhat.com>
-
- * MAINTAINERS (CPU Ports): Add CPU port maintainer section.
-
-2005-08-10 Stephen Huw Clarke <stephen.clarke@st.com>
-
- * libm/common/sf_fmax.c: Fix to properly handle NaNs.
- * libm/common/s_max.c: Ditto.
- * libm/common/sf_fmin.c: Ditto.
- * libm/common/s_min.c: Ditto.
-
-2005-08-10 DJ Delorie <dj@redhat.com>
-
- * configure.host: Add m32c support.
- * libc/include/machine/ieeefp.h: Likewise.
- * libc/include/machine/setjmp.h: Likewise.
- * libc/include/sys/config.h: Likewise.
- * libc/machine/m32c: New directory, Renesas R8C/M16C/M32C support.
- * libc/machine/m32c/aclocal.m4: New file.
- * libc/machine/m32c/configure: Ditto.
- * libc/machine/m32c/configure.in: Ditto.
- * libc/machine/m32c/Makefile.am: Ditto.
- * libc/machine/m32c/Makefile.in: Ditto.
- * libc/machine/m32c/setjmp.S: Ditto.
-
-2005-08-02 Bob Wilson <bob.wilson@acm.org>
-
- * libm/math/ef_hypot.c (__ieee754_hypotf): Add missing exponent bias
- to the value for 2^126.
-
-2005-07-26 Hans-Peter Nilsson <hp@bitrange.com>
-
- * libc/machine/cris/libcdtor.c (defaultors): Mark artificially as
- used.
-
-2005-07-20 Bob Wilson <bob.wilson@acm.org>
- Darin Petkov <darin@tensilica.com>
-
- * libm/math/ef_atan2.c (pi, pi_lo): Use round-to-nearest value of pi.
-
-2005-07-19 Paul Brook <paul@codesourcery.com>
-
- * libc/sys/arm/crt0.S: Ensure doubleword stack alignment.
-
-2005-07-18 Joseph S. Myers <joseph@codesourcery.com>
-
- * testsuite/lib/checkoutput.exp (newlib_check_output): Use test
- names after PASS and FAIL which do not depend on source directory
- name or on whether test passed or failed.
- * testsuite/lib/passfail.exp (newlib_pass_fail): Likewise.
-
-2005-07-08 Ola Hugosson <Ola.Hugosson@anoto.com>
-
- * libc/string/wcsspn.c (wcsspn): Add missing increment of q.
-
-2005-07-07 Shaun Jackman <sjackman@gmail.com>
-
- * libc/unix/ttyname.c (ttyname): Avoid calling _closedir
- twice for the same directory. _closedir calls free, and freeing
- the same pointer twice may cause a crash.
-
-2005-07-06 Aldy Hernandez <aldyh@redhat.com>
-
- * configure.host: Added entry for ms1*.
- * libc/include/machine/ieeefp.h: Handle ms1.
- * libc/include/machine/setjmp.h (_JBLEN): Define for ms1.
- * libc/machine/ms1/aclocal.m4: New.
- * libc/machine/ms1/configure: New.
- * libc/machine/ms1/configure.in: New.
- * libc/machine/ms1/Makefile.am: New.
- * libc/machine/ms1/Makefile.in: New.
- * libc/machine/ms1/setjmp.S: New.
-
-2005-07-04 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.am (site.exp): Set tmpdir.
- * Makefile.in: Regenerated.
- * testsuite/lib/checkoutput.exp (newlib_check_output): Put
- executables in $tmpdir.
- * testsuite/lib/flags.exp (libgloss_link_flags): Use the original
- libgloss version if not running in the build directory.
- * testsuite/lib/newlib.exp (newlib_init): Put testglue.o in
- $tmpdir.
- * testsuite/lib/passfail.exp (newlib_pass_fail): Put executables
- in $tmpdir.
-
-2005-06-28 Dave Korn <dave.korn@artimi.com>
-
- * libm/common/s_lrint.c (lrint): Fix signed-vs-unsigned comparison
- and miscalculation caused by fp representation of zero.
- * libm/common/sf_lrint.c (lrintf): Likewise.
-
-2005-06-16 Christopher Faylor <cgf@timesys.com>
-
- * libc/stdio/vfprintf.c (cvt): Don't rely on pointer aliasing to
- determine characteristics of long double. Use a union instead.
- * ldtoa.c (_ldtoa_r): Ditto.
- (_ldcheck): Ditto.
- (_strtold): Ditto.
- (union uconv): New union.
-
-2005-06-03 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdlib/mallocr.c (MALLOC_COPY): Switch to use memmove
- instead of memcpy.
-
-2005-05-12 Jeff Johnston <jjohnstn@redhat.com>
-
- * configure.host (mn10300-*): Add long long I/O support by default.
-
-2005-05-12 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/getpwuid.c: Removed.
- * libc/sys/linux/getpwnam.c: Removed.
- * libc/sys/linux/getpwent.c: New file containing logic
- from files removed above. This allows overriding of file
- in libc/unix.
- * libc/sys/linux/Makefile.am: Support changes above.
- * libc/sys/linux/Makefile.in: Regenerated.
-
-2005-04-28 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/vfscanf.c (__svfscanf_r): Fix code thinko
- when checking for multiple flags.
-
-2005-04-18 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.host <cris-*-* | crisv32-*-*>: Set
- default_newlib_io_long_long="yes".
-
-2005-04-08 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/libgen.h: New file.
-
-2005-04-08 Shaun Jackman <sjackman@gmail.com>
-
- * libc/unix/Makefile.am: Add support for basename and dirname.
- * libc/unix/Makefile.in: Regenerated.
- * libc/unix/basename.c: New file.
- * libc/unix/dirname.c: New file.
-
-2005-04-07 Shaun Jackman <sjackman@gmail.com>
-
- * libc/sys/linux/inode.c (lchown): New function.
-
-2005-04-07 Shaun Jackman <sjackman@gmail.com>
-
- * libc/unix/Makefile.am (LIB_OBJS): Include all the ELIX objects if no
- ELIX level is defined.
- * libc/unix/Makefile.in: Regenerated.
-
-2005-04-05 Dave Korn <dave.korn@artimi.com>
-
- * libc/stdio/vfscanf.c (__svfscanf_r): If an error occurs processing
- something that looks like a "NaN", put back the characters processed.
-
-2005-04-01 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/stdlib/strtod.c (_strtod_r): Never change s00.
-
-2005-03-23 Christopher Faylor <cgf@timesys.com>
-
- * configure.host: For cygwin, redefine CC with cygwin include directory
- first to mimic the behavior of the top-level configury. Move include
- directory out of newlib_cflags.
-
-2005-03-22 Jeff Johnston <jjohnstn@redhat.com>
-
- * configure.host: For arc, set -DREENTRANT_SYSCALLS_PROVIDED flag on.
- * libc/sys/arc/syscalls.c: Change functions to use __errno_r rather
- than errno.
-
-2005-03-22 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/machine/_types.h: Make trivial change to comment to
- avoid a spurious warning from gcc.
-
-2005-03-21 Nicholas Wourms <nwourms@netscape.net>
-
- * libc/stdio/vfprintf.c: Move newlib.h before _WANT_IO_POS_ARGS test,
- since _WANT_IO_POS_ARGS is now defined in there. Remove duplicate
- reent.h include.
-
-2005-03-18 Hans-Peter Nilsson <hp@axis.com>
- Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/ctype.h: Remove invalid +1 offset from
- ctype macro references to __ctype_ptr.
- (_ctype_): Move declaration outside #ifndef __cplusplus.
-
-2005-03-18 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/machine/setjmp.h (sigsetjmp): Use GCC extension to
- evaluate first parameter only once.
- (siglongjmp): Ditto.
-
-2005-03-17 Jeff Johnston <jjohnstn@redhat.com>
-
- * configure.in: Add new check to see if compiler supports
- aliasing of arrays and define _HAVE_ARRAY_ALIASING if true.
- * configure: Regenerated.
- * Makefile.in: Ditto.
- * newlib.hin: Add _HAVE_ARRAY_ALIASING.
- * libc/ctype/ctype_.c: Check for _HAVE_ARRAY_ALIASING before
- aliasing the _ctype_ array to _ctype_b.
- * libc/include/ctype.h: Change macros to use __ctype_ptr. Mark
- _ctype_ as deprecated.
-
-2005-03-17 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.host (newlib_cflags) <cris-*-*, crisv32-*-*>: Add
- -DCOMPACT_CTYPE.
-
-2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libc/sys/rtems/include/inttypes.h: New file.
- * libc/sys/rtems/include/stdint.h: Ditto.
-
-2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libc/string/memcmp.c: Fix to avoid pointer signedness warning.
-
-2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libc/include/machine/_types.h: New file.
- * libc/include/sys/types.h: Do not check for __rtems__
- when including <machine/_types.h>. Remove some redundant
- declarations now that <machine/_types.h> is included.
- * libc/sys/rtems/machine/_types.h: Removed. Replaced with
- shared header file.
-
-2005-02-25 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libm/common/fdlibm.h (FLT_UWORD_MAX, FLT_UWORD_HALF_MAX): Add
- L qualifier for these long constants.
-
-2005-02-25 Eric Blake <ebb9@byu.net>
-
- * libc/include/time.h (__tzrule_struct): Make offset long, since
- a 16-bit int overflows on a 12-hour offset.
- * libc/sys/linux/include/time.h: Ditto.
- * libc/time/mktime.c (mktime): Use new type of __tzrule.offset.
- * libc/time/mktm_r.c: Ditto.
- * libc/time/gettzinfo.c: Ditto.
- * libc/time/strftime.c (strftime): Fix '%x' to deal with negative
- years. Fix '%z' to use long, not int.
-
-2005-02-24 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libm/common/s_fpclassify.c: Use __uint32_t instead of int to
- manipulate float values in integer form.
- * libm/common/sf_round.c: Ditto.
-
-2005-02-24 Ralf Corsepious <ralf.corsepius@rtems.org>
-
- * libc/include/sys/types.h [__rtems__]: Include new
- header file machine/_types.h.
- * libc/include/machine/types.h: Ditto.
- * libc/sys/rtems/machine/_types.h: New file.
-
-2005-02-23 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/time.h (_timezone): Change to long also for Cygwin.
- (timezone): Drop cast from definition.
-
-2005-02-23 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/time.h [!CYGWIN](_timezone): Change to long.
- (__tzrule_type, __tzinfo_type): New types.
- (__gettzinfo): New function.
- * libc/sys/linux/include/time.h: Ditto.
- * libc/time/Makefile.am: Add gettzinfo.c.
- * libc/time/Makefile.in: Regenerated.
- * libc/time/local.h: Moved __tzrule_type to time.h.
- * libc/time/mktime.c: Call __gettzinfo to reference
- __tznorth, __tzyear, and __tzrule array.
- * libc/time/mktm_r.c: Ditto.
- * libc/time/strftime.c: Ditto.
- * libc/time/tzset_r.c: Ditto. Also remove definition
- of __tzrule which is now in gettzinfo.c. Change _timezone
- references to not cast to time_t.
- * libc/time/gettzinfo.c: New file.
-
-2005-02-23 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/unistd.h: Define getpeereid for Cygwin.
-
-2005-02-22 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/sys/unistd.h: Define fdatasync also for Cygwin.
-
-2005-02-16 Eric Blake <ebb9@byu.net>
-
- * libc/time/time.tex: Improve the documentation.
- * libc/time/strftime.c: Improve the documentation.
- (iso_year_adjust): New helper function.
- (strftime): Simplify '%E' and '%O'. Change '%c' to use
- recursion. Fix '%C', '%y', and '%Y' to deal with years with more
- than 4 characters. Combine '%d' and '%e'. Implement '%D', '%F',
- '%g', '%G', '%n', '%R', '%t', '%T', '%u', '%V', '%X', and '%z'.
- Avoid core dumps on valid inputs (maxsize == 0, or
- tim_p->tm_isdst > 1).
-
-2005-02-08 Corinna Vinschen <corinna@vinschen.de>
-
- * libc/include/pwd.h (struct passwd): Change pw_uid and pw_gid
- members to uid_t and gid_t according to SUSv3.
- * libc/include/sys/time.h (utimes): Change second parameter
- to const according to SUSv3.
-
-2005-02-07 Antony King <antony.king@st.com>
-
- * libc/stdio/clearerr.c (clearerr): Ensure CHECK_INIT() is
- called before _flockfile to prevent lock object use before
- initialisation. _REENT_SMALL_CHECK_INIT() and CHECK_INIT()
- take a struct _reent * instead of a FILE *.
- * libc/stdio/fclose.c (_fclose_r): Ditto.
- * libc/stdio/feof.c (feof): Ditto.
- * libc/stdio/ferror.c (ferror): Ditto.
- * libc/stdio/fflush.c (fflush): Ditto.
- * libc/stdio/fgetc.c (fgetc): Ditto.
- * libc/stdio/fgets.c (fgets): Ditto.
- * libc/stdio/fileno.c (fileno): Ditto.
- * libc/stdio/fputc.c (fputc): Ditto.
- * libc/stdio/fputs.c (fputs): Ditto.
- * libc/stdio/fread.c (fread): Ditto.
- * libc/stdio/freopen.c (_freopen_r): Ditto.
- * libc/stdio/fseek.c (_fseek_r): Ditto.
- * libc/stdio/ftell.c (_ftell_r): Ditto.
- * libc/stdio/fwrite.c (fwrite): Ditto.
- * libc/stdio/getc.c (getc): Ditto.
- * libc/stdio/getdelim.c (__getdelim): Ditto.
- * libc/stdio/putc.c (putc): Ditto.
- * libc/stdio/setvbuf.c (setvbuf): Ditto.
- * libc/stdio/ungetc.c (_ungetc_r): Ditto.
- * libc/stdio/vfprintf.c (_VFPRINTF_R): Ditto.
- * libc/stdio64/freopen64.c (_freopen64_r): Ditto.
- * libc/stdio64/fseeko64.c (_fseeko64_r): Ditto.
- * libc/stdio64/ftello64.c (_ftello64_r): Ditto.
- * libc/stdio/local.h (CHECK_INIT): Argument is now a struct
- _reent * instead of a FILE * and so replace incorrect use of
- _REENT with argument.
- * libc/sys/arm/syscalls.c (CHECK_INIT): Ditto.
- * libc/stdio/getchar.c (getchar): _REENT_SMALL_CHECK_INIT() and
- CHECK_INIT() take a struct _reent * instead of a FILE *.
- * libc/stdio/iprintf.c (iprintf, _iprintf_r): Ditto.
- * libc/stdio/iscanf.c (iscanf, _iscanf_r): Ditto.
- * libc/stdio/perror.c (perror): Ditto.
- * libc/stdio/printf.c (printf, _printf_r): Ditto.
- * libc/stdio/putchar.c (putchar): Ditto.
- * libc/stdio/puts.c (puts): Ditto.
- * libc/stdio/refill.c (__srefill): Ditto.
- * libc/stdio/scanf.c (scanf, _scanf_r): Ditto.
- * libc/stdio/vfscanf.c (VFSCANF, _VFSCANF_R): Ditto.
- * libc/stdio/viprintf.c (viprintf, _viprintf_r): Ditto.
- * libc/stdio/viscanf.c (viscanf, _viscanf_r): Ditto.
- * libc/stdio/vprintf.c (vprintf, _vprintf_r): Ditto.
- * libc/stdio/vscanf.c (vscanf, _vscanf_r): Ditto.
- * libc/stdio/wbuf.c (__swbuf): Ditto.
- * libc/stdio/wsetup.c (__swsetup): Ditto.
- * libc/stdlib/mallocr.c (malloc_stats): Ditto.
- * libc/stdlib/mstats.c (_mstats_r): Ditto.
- * libc/include/sys/reent.h (_REENT_SMALL_CHECK_INIT): Ditto.
- * libc/machine/powerpc/vfscanf.c (vfscanf): Ditto.
- * libc/stdio/fgetpos.c (_fgetpos_r): Removed unnecessary calls
- to _flockfile and _funlockfile; rely on locking in _ftell_r.
- * libc/stdio64/fgetpos64.c (_fgetpos64_r): Ditto (_ftello64_r).
- * libc/machine/powerpc/vfprintf.c (__sbprintf): Removed unnecessary
- initialision of _data field in FILE structure.
- * libc/machine/powerpc/vfprintf.c (VFPRINTF): Added CHECK_INIT() call.
-
-2005-02-07 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/findfp.c (__sinit): Protect with new lock.
- (__sinit_lock): New lock.
- (__sinit_lock_acquire, __sinit_lock_release): New functions.
- * libc/stdio/local.h: Add reference to new __sinit locking
- functions.
-
-2005-02-07 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/math.h (isfinite, isnormal, isunordered): Change
- input variable names to avoid mixups with nesting macros.
-
-2005-01-27 Hans-Peter Nilsson <hp@axis.com>
-
- * configure.host: Add support for cris-*-* and crisv32-*-*.
- * libc/include/machine/ieeefp.h: Ditto.
- * libc/include/machine/setjmp.h: Ditto.
- * libc/machine/cris/configure.in, libc/machine/cris/Makefile.am,
- libc/machine/cris/libcdtor.c, libc/machine/cris/setjmp.c,
- libc/machine/cris/memmove.c, libc/machine/cris/memcpy.c,
- libc/machine/cris/memset.c, libc/machine/cris/include/pthread.h,
- libc/machine/cris/sys/signal.h, libc/machine/cris/sys/fcntl.h,
- libc/machine/cris/sys/errno.h, libc/machine/cris/aclocal.m4,
- libc/machine/cris/configure, libc/machine/cris/Makefile.in: New
- files.
-
-2005-01-27 Hans-Peter Nilsson <hp@axis.com>
-
- * testsuite/newlib.string/memmove1.c: New test.
-
-2005-01-27 Hans-Peter Nilsson <hp@axis.com>
-
- * testsuite/include/check.h: Include stdlib.h.
-
-2005-01-27 Hans-Peter Nilsson <hp@axis.com>
-
- * Makefile.am (stmp-targ-include): Support include header files
- from machine directories.
- (install-data-local): Ditto.
- * Makefile.in: Regenerate.
-
-2005-01-24 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/string.h: Remove Linux-specific declaration of
- strsignal and add #include <sys/string.h>.
- * libc/include/sys/string.h: New file.
- * libc/include/sys/linux/sys/string.h: New file with strsignal
- declaration deleted above.
-
-2005-01-20 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/time/strftime.c (strftime): Change %r and %x to be compliant
- to POSIX standard for "C" locale. Allow %E and %O modifiers
- to be ignored as long as they precede valid specifiers according
- to POSIX.
-
-2005-01-19 Shaun Jackman <sjackman@gmail.com>
-
- * libc/stdlib/setenv_r.c (_setenv_r): Call tzset() if the TZ
- environment variable is set.
-
-2005-01-19 Shaun Jackman <sjackman@gmail.com>
-
- * tzset_r.c (_tzname): Add a comma.
-
-2005-01-18 Aldy Hernandez <aldyh@redhat.com>
-
- * libc/machine/powerpc/vfprintf.c: Use _REENT when calling
- _VFPRINTF_R.
-
-2005-01-07 Paul Brook <paul@codesourcery.com>
-
- * configure.in: Add test for .init_array.
- * configure: Regenerate.
- * newlib.hin: Add HAVE_INITFINI_ARRAY.
- * libc/misc/Makefile.am: Add init.c
- * libc/misc/Makefile.in: Regenerate.
- * libc/misc/init.c: New file.
- * libc/sys/arm/crt0.S: Call __libc_{init,fini}_array instead of
- _init/_fini if they exist.
-
-2005-01-06 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdlib/strtod.c (_strtod_r): Add NaN support.
- * (strtof): Ditto.
- * libc/stdio/vfscanf.c (__svfscanf_r): Ditto.
- * Makefile.am (MATHOBJS_IN_LIBC): Add s_nan and sf_nan
- functions for use by strtod and strtof.
- * Makefile.in: Regenerated.
-
-2005-01-06 Hans-Peter Nilsson <hp@axis.com>
-
- * libc/stdio/ftell.c (ftell_r): Add parenthesis for __SWR
- bit-test in combination with NULL test.
-
-2005-01-06 Hans-Peter Nilsson <hp@axis.com>
-
- * README: Fix typo of LGPL. Change "license" to "copyright".
-
-2004-12-17 Jeff Johnston <jjohnstn@redhat.com>
-
- * NEWS: Update with 1.13.0 info.
- * README: Ditto.
- * acinclude.m4: Change version number to 1.13.0.
- * aclocal.m4: Regenerated.
- * configure: Ditto.
- * doc/aclocal.m4: Ditto.
- * doc/configure: Ditto.
- * libc/*/aclocal.m4: Ditto.
- * libc/*/configure: Ditto.
- * libc/libc.texinfo: Ditto.
- * libm/*/aclocal.m4: Ditto.
- * libm/*/configure: Ditto.
- * libm/libm.texinfo: Ditto.
- * libc/sys/linux/shared.ld: Add VERS_1.13.
-
-2004-12-17 Christian Groessler <chris@groessler.org>
-
- * libc/machine/z8k/memcmp.S: New file.
- * libc/machine/z8k/memcpy.S: Ditto.
- * libc/machine/z8k/memmove.S: Ditto.
- * libc/machine/z8k/memset.S: Ditto.
- * libc/machine/z8k/Makefile.am: Add new files.
- * libc/machine/z8k/Makefile.in: Regenerated.
- * libc/machine/z8k/setjmp.S: Fix indirect register usage in Z8002
- part. Implement Z8002 stdcall version.
-
-2004-12-13 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/fread.c (fread): For unbuffered I/O, attempt
- a low-level read if we don't get the full amount of bytes so
- EOF or error flags will be set.
-
-2004-12-09 Alex Mogilnikov <alx@intellectronika.ru>
-
- * libc/time/tzset_r (_tzset_r): Properly skip over
- '/' when it is detected.
-
-2004-12-08 Alex Mogilnikov <alx@intellectronika.ru>
-
- * libc/time/tzset_r (_tzset_r): Fix loop.
-
-2004-12-08 Alex Mogilnikov <alx@intellectronika.ru>
-
- * libc/time/mktm_r (_mktm_r): Fix overflow calculation for
- m_day.
- (__tzcalc_limits): Fix reference to month array to be zero-based.
-
-2004-12-07 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/sys/linux/sys/unistd.h: Add prototypes for ftruncate, truncate,
- and usleep.
-
-2004-12-03 Jeff Johnston <jjohnstn@redhat.com>
-
- * Makefile.am (libc_la_LDFLAGS): Add -lgcc to handle any
- libgcc dependencies.
- (libm_la_LDFLAGS): Ditto.
- * Makefile.in: Regenerated.
-
-2004-12-03 Shaun Jackman <sjackman@gmail.com>
-
- * libc/sys/linux/linuxthreads/Makefile.am (install-data-local): Fix
- our link to use readlink so as to preserve any relative link created
- by install-toollibLIBRARIES.
- * libc/sys/linux/linuxthreads/Makefile.in: Regenerated.
-
-2004-12-02 Shaun Jackman <sjackman@gmail.com>
-
- * libc/sys/linux/stdlib/glob.c: Include <sys/types.h> which defines
- time_t before including sys/stat.h, which uses it.
- * libc/sys/linux/sys/stat.h: Include <sys/types.h> and
- <linux/time.h> just prior to definition of __KERNEL__ so as to
- allow building on Debian Linux where otherwise, mktime would
- be redefined.
-
-2004-11-26 Paul Brook <paul@codesourcery.com>
-
- * libc/sys/arm/crt0.S (_start): Add .cantunwind annotation.
-
-2004-11-24 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/stdlib.h (putenv, _putenv_r): Change to remove
- const for value string parameter to match Single Unix and glibc.
- * libc/stdlib/putenv.c: Ditto.
- * libc/stdlib/putenv_r.c: Ditto.
-
-2004-11-24 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/Makefile.am: Fix missing vfscanf.
- * libc/stdio/Makefile.in: Regenerated.
-
-2004-11-23 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/stdio.h: Add new iprintf and iscanf variants. Also
- do some reordering.
- * libc/machine/powerpc/vfscanf.c: Remove __sccl function.
- * libc/stdio/Makefile.am: Add support for new iprintf and iscanf
- family functions.
- * libc/stdio/Makefile.in: Regenerated.
- * libc/stdio/fiprintf.c: Remove doc to siprintf.c.
- * libc/stdio/iprintf.c: Ditto.
- * libc/stdio/local.h (__svfiscanf_r): New prototype.
- * libc/stdio/siprintf.c: Add docs for various iprintf family functions.
- * libc/stdio/sniprintf.c: Move docs to siprintf.c.
- * libc/stdio/stdio.tex: Add new functions.
- * libc/stdio/vfscanf.c: Split out __sccl function to separate
- file and add special name defines so this file can be used
- to build vfiscanf.o.
- * libc/stdio/asiprintf.c: New file.
- * libc/stdio/fiscanf.c: Ditto.
- * libc/stdio/iscanf.c: Ditto.
- * libc/stdio/sccl.c: Ditto.
- * libc/stdio/siscanf.c: Ditto.
- * libc/stdio/vasiprintf.c: Ditto.
- * libc/stdio/viprintf.c: Ditto.
- * libc/stdio/viscanf.c: Ditto.
- * libc/stdio/vsiprintf.c: Ditto.
- * libc/stdio/vsiscanf.c: Ditto.
- * libc/stdio/vsniprintf.c: Ditto.
-
-2004-11-19 Shaun Jackman <sjackman@gmail.com>
-
- * libc/include/stdio.h: Add sniprintf.
- * libc/stdio/Makefile.am: Add sniprintf.c.
- * libc/stdio/Makefile.in: Regenerated.
- * libc/stdio/sniprintf.c: New file.
- * libc/stdio/stdio.tex: Add sniprintf.
-
-2004-11-17 Christopher Faylor <cgf@timesys.com>
-
- * libc/stdio/refill.c (__srefill): Try again after EOF on Cygwin. Clear
- EOF flag if successful.
-
-2004-10-28 Christopher Faylor <cgf@timesys.com>
-
- * libc/include/sys/signal.h: Move <signal.h> include to bottom of file
- so that all relevant definitions have been performed for use in the
- include.
-
-2004-10-26 Jason Tishler <jason@tishler.net>
-
- * libc/stdio/fread.c (fread): Fix return value for unbuffered
- fread.
-
-2004-10-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * libc/include/machine/setjmp.h: Add AVR support.
- * libc/sys/rtems/crt0.S [__AVR__]: Add __stack.
-
-2004-10-08 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/include/sys/signal.h: If <signal.h> didn't include
- this header file, include <signal.h> to account for
- applications that take advantage that the two header
- files are the same in glibc.
-
-2004-10-05 Tomer Levi <Tomer.Levi@nsc.com>
-
- * configure.host: Add support for crx.
- * libc/include/machine/ieeefp.h: Ditto.
- * libc/include/machine/setjmp.h: Ditto.
- * libc/machine/crx/Makefile.am: New file.
- * libc/machine/crx/configure.in: Ditto.
- * libc/machine/crx/setjmp.S: Ditto.
- * libc/machine/crx/getenv.c: Ditto.
- * libc/machine/crx/aclocal.m4: Generate.
- * libc/machine/crx/configure: Ditto.
- * libc/machine/crx/Makefile.in: Ditto.
- * libc/machine/crx/sys/asm.h: New file.
- * libc/machine/crx/sys/libh.h: Ditto.
- * libc/machine/crx/sys/syscall.h: Ditto.
-
-2004-10-05 Jeff Johnston <jjohnstn@redhat.com>
-
- * Makefile.am (stmp-targ-include): Support sys header files
- from machine directories.
- * Makefile.in: Regenerated.
-
-2004-10-04 Jeff Johnston <jjohnstn@redhat.com>
-
- * libc/stdio/vfscanf.c (__svfscanf_r): For int conversions,
- count skipped zero characters as part of the nread count for %n.
- * libc/machine/powerpc/vfscanf.c: Ditto.
-
2004-09-24 Jeff Johnston <jjohnstn@redhat.com>
* libc/stdio/local.h: Include <stdlib.h>.
diff --git a/newlib/MAINTAINERS b/newlib/MAINTAINERS
index cca33c390..b2c4e48e1 100644
--- a/newlib/MAINTAINERS
+++ b/newlib/MAINTAINERS
@@ -28,13 +28,6 @@ Cygwin: cgf@redhat.com
Web pages: jjohnstn@redhat.com
- CPU Port Maintainers (CPU alphabetical order)
-
-CPU port maintainers may make changes in cpu-specific directories, as
-well as cpu-specific portions of the build system, without approval.
-
-m32c port DJ Delorie dj@redhat.com
-
Write After Approval
diff --git a/newlib/Makefile.am b/newlib/Makefile.am
index 9da9349cb..f1539fcbe 100644
--- a/newlib/Makefile.am
+++ b/newlib/Makefile.am
@@ -1,7 +1,6 @@
## Process this file with automake to generate Makefile.in
AUTOMAKE_OPTIONS = cygnus dejagnu
-ACLOCAL_AMFLAGS = -I .
# Multilib support variables.
MULTISRCTOP =
@@ -28,7 +27,6 @@ AM_MAKEFLAGS = \
"CFLAGS=$(CFLAGS)" \
"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
- "INSTALL=$(INSTALL)" \
"LDFLAGS=$(LDFLAGS)" \
"LIBCFLAGS=$(LIBCFLAGS)" \
"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
@@ -91,9 +89,6 @@ toollib_DATA = $(CRT0) $(CRT1)
MATHOBJS_IN_LIBC = \
s_isinf.$(oext) sf_isinf.$(oext) \
s_isnan.$(oext) sf_isnan.$(oext) \
- s_isinfd.$(oext) sf_isinff.$(oext) \
- s_isnand.$(oext) sf_isnanf.$(oext) \
- s_nan.$(oext) sf_nan.$(oext) \
s_ldexp.$(oext) sf_ldexp.$(oext) \
s_frexp.$(oext) sf_frexp.$(oext) \
s_modf.$(oext) \
@@ -129,9 +124,9 @@ LIBM_OBJECTLISTS = \
libm/common/objectlist.awk.in \
$(LIBM_MACHINE_OBJECTLIST)
-libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libm-libtool-objectlist
+libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -objectlist libm-libtool-objectlist
-libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libc-libtool-objectlist
+libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -objectlist libc-libtool-objectlist
if USE_LIBTOOL
libm_la_SOURCES =
@@ -193,23 +188,13 @@ all-recursive: stmp-targ-include
# used while building.
stmp-targ-include: config.status
-rm -rf targ-include stmp-targ-include
- mkdir targ-include targ-include/sys targ-include/machine targ-include/bits
+ mkdir targ-include targ-include/sys targ-include/machine
cp newlib.h targ-include/newlib.h
-for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/machine/`basename $$i`; \
else true; fi ; \
done
- -for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/sys/`basename $$i`; \
- else true; fi ; \
- done
- -for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/`basename $$i`; \
- else true; fi ; \
- done
-for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/`basename $$i`; \
@@ -220,11 +205,6 @@ stmp-targ-include: config.status
cp $$i targ-include/sys/`basename $$i`; \
else true; fi ; \
done
- -for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/bits/`basename $$i`; \
- else true; fi ; \
- done
-for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/machine/`basename $$i`; \
@@ -270,27 +250,11 @@ endif
for i in $(srcdir)/libc/include/sys/*.h; do \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
done; \
- for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
- else true; fi ; \
- done ; \
- for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \
- else true; fi ; \
- done ; \
for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \
if [ -f $$i ]; then \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
else true; fi ; \
done ; \
- $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/bits; \
- for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/bits/`basename $$i`; \
- else true; fi ; \
- done ; \
for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
if [ -f $$i ]; then \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \
@@ -357,7 +321,6 @@ site.exp: Makefile
@echo 'set tool_version $(VERSION)' >> $@-t
@echo 'set srcdir $(srcdir)/testsuite' >> $@-t
@echo 'set objdir' `pwd` >> $@-t
- @echo 'set tmpdir' `pwd`/testsuite >> $@-t
@echo 'set multibuildtop ./$(MULTIBUILDTOP)' >> $@-t
@echo 'set host_alias $(build_alias)' >> $@-t
@echo 'set host_triplet $(build_triplet)' >> $@-t
diff --git a/newlib/Makefile.in b/newlib/Makefile.in
index ce3f148b7..8b27ad3f1 100644
--- a/newlib/Makefile.in
+++ b/newlib/Makefile.in
@@ -103,8 +103,6 @@ SYS_OBJECTLIST = @SYS_OBJECTLIST@
UNIX_OBJECTLIST = @UNIX_OBJECTLIST@
VERSION = @VERSION@
aext = @aext@
-libc_cv_array_aliasing = @libc_cv_array_aliasing@
-libc_cv_initfinit_array = @libc_cv_initfinit_array@
libm_machine_dir = @libm_machine_dir@
machine_dir = @machine_dir@
newlib_basedir = @newlib_basedir@
@@ -112,7 +110,6 @@ oext = @oext@
sys_dir = @sys_dir@
AUTOMAKE_OPTIONS = cygnus dejagnu
-ACLOCAL_AMFLAGS = -I .
# Multilib support variables.
MULTISRCTOP =
@@ -129,7 +126,7 @@ LIBTOOL_VERSION_INFO = 0:0:0
# Work around what appears to be a GNU make bug handling MAKEFLAGS
# values defined in terms of make variables, as is the case for CC and
# friends when we are called from the top level Makefile.
-AM_MAKEFLAGS = "AR_FLAGS=$(AR_FLAGS)" "CC_FOR_BUILD=$(CC_FOR_BUILD)" "CFLAGS=$(CFLAGS)" "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" "INSTALL=$(INSTALL)" "LDFLAGS=$(LDFLAGS)" "LIBCFLAGS=$(LIBCFLAGS)" "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" "MAKE=$(MAKE)" "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" "PICFLAG=$(PICFLAG)" "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" "SHELL=$(SHELL)" "EXPECT=$(EXPECT)" "RUNTEST=$(RUNTEST)" "RUNTESTFLAGS=$(RUNTESTFLAGS)" "exec_prefix=$(exec_prefix)" "infodir=$(infodir)" "libdir=$(libdir)" "prefix=$(prefix)" "tooldir=$(tooldir)" "top_toollibdir=$(toollibdir)" "AR=$(AR)" "AS=$(AS)" "CC=$(CC_FOR_NEWLIB)" "LD=$(LD)" "LIBCFLAGS=$(LIBCFLAGS)" "NM=$(NM)" "PICFLAG=$(PICFLAG)" "RANLIB=$(RANLIB)" "DESTDIR=$(DESTDIR)"
+AM_MAKEFLAGS = "AR_FLAGS=$(AR_FLAGS)" "CC_FOR_BUILD=$(CC_FOR_BUILD)" "CFLAGS=$(CFLAGS)" "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" "LDFLAGS=$(LDFLAGS)" "LIBCFLAGS=$(LIBCFLAGS)" "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" "MAKE=$(MAKE)" "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" "PICFLAG=$(PICFLAG)" "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" "SHELL=$(SHELL)" "EXPECT=$(EXPECT)" "RUNTEST=$(RUNTEST)" "RUNTESTFLAGS=$(RUNTESTFLAGS)" "exec_prefix=$(exec_prefix)" "infodir=$(infodir)" "libdir=$(libdir)" "prefix=$(prefix)" "tooldir=$(tooldir)" "top_toollibdir=$(toollibdir)" "AR=$(AR)" "AS=$(AS)" "CC=$(CC_FOR_NEWLIB)" "LD=$(LD)" "LIBCFLAGS=$(LIBCFLAGS)" "NM=$(NM)" "PICFLAG=$(PICFLAG)" "RANLIB=$(RANLIB)" "DESTDIR=$(DESTDIR)"
FLAGS_TO_PASS = $(AM_MAKEFLAGS)
@@ -154,7 +151,7 @@ toollib_DATA = $(CRT0) $(CRT1)
# The functions ldexp, frexp and modf are traditionally supplied in
# both libc.a and libm.a. We build them in libm.a and copy them over,
# along with some required supporting routines.
-MATHOBJS_IN_LIBC = s_isinf.$(oext) sf_isinf.$(oext) s_isnan.$(oext) sf_isnan.$(oext) s_isinfd.$(oext) sf_isinff.$(oext) s_isnand.$(oext) sf_isnanf.$(oext) s_nan.$(oext) sf_nan.$(oext) s_ldexp.$(oext) sf_ldexp.$(oext) s_frexp.$(oext) sf_frexp.$(oext) s_modf.$(oext) sf_modf.$(oext) s_scalbn.$(oext) sf_scalbn.$(oext) s_finite.$(oext) sf_finite.$(oext) s_copysign.$(oext) sf_copysign.$(oext) s_infconst.$(oext)
+MATHOBJS_IN_LIBC = s_isinf.$(oext) sf_isinf.$(oext) s_isnan.$(oext) sf_isnan.$(oext) s_ldexp.$(oext) sf_ldexp.$(oext) s_frexp.$(oext) sf_frexp.$(oext) s_modf.$(oext) sf_modf.$(oext) s_scalbn.$(oext) sf_scalbn.$(oext) s_finite.$(oext) sf_finite.$(oext) s_copysign.$(oext) sf_copysign.$(oext) s_infconst.$(oext)
LIBC_OBJECTLISTS = $(POSIX_OBJECTLIST) $(SIGNAL_OBJECTLIST) $(SYSCALL_OBJECTLIST) $(UNIX_OBJECTLIST) $(STDIO64_OBJECTLIST) libc/argz/objectlist.awk.in libc/stdlib/objectlist.awk.in libc/time/objectlist.awk.in libc/ctype/objectlist.awk.in libc/search/objectlist.awk.in libc/string/objectlist.awk.in libc/locale/objectlist.awk.in libc/misc/objectlist.awk.in libc/reent/objectlist.awk.in libc/errno/objectlist.awk.in libc/stdio/objectlist.awk.in $(MACHINE_OBJECTLIST) $(SYS_OBJECTLIST) $(SYS_MACH_OBJECTLIST)
@@ -163,9 +160,9 @@ LIBC_OBJECTLISTS = $(POSIX_OBJECTLIST) $(SIGNAL_OBJECTLIST) $(SYSCALL_OBJECT
LIBM_OBJECTLISTS = libm/$(MATHDIR)/objectlist.awk.in libm/common/objectlist.awk.in $(LIBM_MACHINE_OBJECTLIST)
-libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libm-libtool-objectlist
+libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -objectlist libm-libtool-objectlist
-libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libc-libtool-objectlist
+libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -objectlist libc-libtool-objectlist
@USE_LIBTOOL_TRUE@libm_la_SOURCES =
@USE_LIBTOOL_TRUE@libm_la_DEPENDENCIES = libm-libtool-objectlist
@@ -212,8 +209,7 @@ LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
DATA = $(noinst_DATA) $(toollib_DATA)
DIST_COMMON = README ./stamp-h.in ChangeLog Makefile.am Makefile.in \
-NEWS acconfig.h acinclude.m4 aclocal.m4 configure configure.in \
-newlib.hin
+NEWS acinclude.m4 aclocal.m4 configure configure.in newlib.hin
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
@@ -236,9 +232,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4 \
- ./acinclude.m4 ./aclocal.m4 ./libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
+ cd $(srcdir) && $(ACLOCAL)
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
@@ -260,7 +255,7 @@ $(srcdir)/newlib.hin: @MAINTAINER_MODE_TRUE@$(srcdir)/stamp-h.in
rm -f $(srcdir)/stamp-h.in; \
$(MAKE) $(srcdir)/stamp-h.in; \
else :; fi
-$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
+$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOHEADER)
@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
@@ -703,23 +698,13 @@ all-recursive: stmp-targ-include
# used while building.
stmp-targ-include: config.status
-rm -rf targ-include stmp-targ-include
- mkdir targ-include targ-include/sys targ-include/machine targ-include/bits
+ mkdir targ-include targ-include/sys targ-include/machine
cp newlib.h targ-include/newlib.h
-for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/machine/`basename $$i`; \
else true; fi ; \
done
- -for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/sys/`basename $$i`; \
- else true; fi ; \
- done
- -for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/`basename $$i`; \
- else true; fi ; \
- done
-for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/`basename $$i`; \
@@ -730,11 +715,6 @@ stmp-targ-include: config.status
cp $$i targ-include/sys/`basename $$i`; \
else true; fi ; \
done
- -for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \
- if [ -f $$i ]; then \
- cp $$i targ-include/bits/`basename $$i`; \
- else true; fi ; \
- done
-for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/machine/`basename $$i`; \
@@ -775,27 +755,11 @@ install-data-local: install-toollibLIBRARIES
for i in $(srcdir)/libc/include/sys/*.h; do \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
done; \
- for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
- else true; fi ; \
- done ; \
- for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \
- else true; fi ; \
- done ; \
for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \
if [ -f $$i ]; then \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
else true; fi ; \
done ; \
- $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/bits; \
- for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \
- if [ -f $$i ]; then \
- $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/bits/`basename $$i`; \
- else true; fi ; \
- done ; \
for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
if [ -f $$i ]; then \
$(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \
@@ -854,7 +818,6 @@ site.exp: Makefile
@echo 'set tool_version $(VERSION)' >> $@-t
@echo 'set srcdir $(srcdir)/testsuite' >> $@-t
@echo 'set objdir' `pwd` >> $@-t
- @echo 'set tmpdir' `pwd`/testsuite >> $@-t
@echo 'set multibuildtop ./$(MULTIBUILDTOP)' >> $@-t
@echo 'set host_alias $(build_alias)' >> $@-t
@echo 'set host_triplet $(build_triplet)' >> $@-t
diff --git a/newlib/NEWS b/newlib/NEWS
index 3b8f9cf0e..5eb56724a 100644
--- a/newlib/NEWS
+++ b/newlib/NEWS
@@ -1,27 +1,3 @@
-*** Major changes in newlib version 1.14.0:
-
-* new platforms added (cris, mt, m32c)
-* more locking protection macros added
-* various C99/POSIX/SUSV3 compliance issue improvements
-* reentrancy cleanup
-* header file improvements (e.g. adding RTEMS stdint.h/inttypes.h)
-* various math fixes
-* changes made to allow use of gcc4 to build newlib
-* general bug fixes and cleanups
-
-*** Major changes in newlib version 1.13.0:
-
-* optimized iconv support
-* new configuration option to disable syscalls in newlib (e.g. sys/arm)
-* new configuration options controlling long long, long double support
-* ability of configuration options to override platform defaults
-* improved locking protection for file I/O functions
-* new reentrant functions
-* various fixes to allow building under FC3 and Debian Linux
-* cxa exit support
-* new platforms (e.g. crx)
-* new iprintf and iscanf family functions
-
*** Major changes in newlib version 1.12.0:
* general iconv support added
diff --git a/newlib/README b/newlib/README
index 7e8cef756..61fda77be 100644
--- a/newlib/README
+++ b/newlib/README
@@ -1,13 +1,13 @@
- README for newlib-1.14.0 release
+ README for newlib-1.12.0 release
(mostly cribbed from the README in the gdb-4.13 release)
This is `newlib', a simple ANSI C library, math library, and collection
of board support packages.
The newlib and libgloss subdirectories are a collection of software from
-several sources, each with their own copyright and license. See the file
-COPYING.NEWLIB for details. The rest of the release tree is under either
-the GNU GPL or LGPL licenses.
+several sources, each with their own copyright. See the file COPYING.NEWLIB
+for details. The rest of the release tree is under either the GNU GPL or
+LPGL copyright.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
@@ -17,8 +17,8 @@ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
Unpacking and Installation -- quick overview
==========================
-When you unpack the newlib-1.14.0.tar.gz file, you'll find a directory
-called `newlib-1.14.0', which contains:
+When you unpack the newlib-1.12.0.tar.gz file, you'll find a directory
+called `newlib-1.12.0', which contains:
COPYING config/ install-sh* mpw-configure
COPYING.LIB config-ml.in libgloss/ mpw-install
@@ -94,13 +94,13 @@ directory. If the path to `configure' would be the same as the
argument to `--srcdir', you can leave out the `--srcdir' option; it
will be assumed.)
- For example, with version 1.14.0, you can build NEWLIB in a separate
+ For example, with version 1.12.0, you can build NEWLIB in a separate
directory for a Sun 4 cross m68k-aout environment like this:
- cd newlib-1.14.0
+ cd newlib-1.12.0
mkdir ../newlib-m68k-aout
cd ../newlib-m68k-aout
- ../newlib-1.14.0/configure --host=sun4 --target=m68k-aout
+ ../newlib-1.12.0/configure --host=sun4 --target=m68k-aout
make
When `configure' builds a configuration using a remote source
@@ -116,8 +116,8 @@ called `configure' (or one of its subdirectories).
The `Makefile' that `configure' generates in each source directory
also runs recursively. If you type `make' in a source directory such
-as `newlib-1.14.0' (or in a separate configured directory configured with
-`--srcdir=PATH/newlib-1.14.0'), you will build all the required libraries.
+as `newlib-1.12.0' (or in a separate configured directory configured with
+`--srcdir=PATH/newlib-1.12.0'), you will build all the required libraries.
When you have multiple hosts or targets configured in separate
directories, you can run `make' on them in parallel (for example, if
@@ -310,7 +310,7 @@ Reporting Bugs
The correct address for reporting bugs found in NEWLIB is
"newlib@sources.redhat.com". Please email all bug reports to that
-address. Please include the NEWLIB version number (e.g., newlib-1.14.0),
+address. Please include the NEWLIB version number (e.g., newlib-1.12.0),
and how you configured it (e.g., "sun4 host and m68k-aout target").
Since NEWLIB supports many different configurations, it is important
that you be precise about this.
diff --git a/newlib/acconfig.h b/newlib/acconfig.h
deleted file mode 100644
index 86f484ec4..000000000
--- a/newlib/acconfig.h
+++ /dev/null
@@ -1,153 +0,0 @@
-#ifndef __NEWLIB_H__
-
-#define __NEWLIB_H__ 1
-@TOP@
-
-/* EL/IX level */
-#undef _ELIX_LEVEL
-
-/* Newlib version */
-#undef _NEWLIB_VERSION
-
-/* long long type support in IO functions like printf/scanf enabled */
-#undef _WANT_IO_LONG_LONG
-
-/* long double type support in IO functions like printf/scanf enabled */
-#undef _WANT_IO_LONG_DOUBLE
-
-/* Positional argument support in printf functions enabled. */
-#undef _WANT_IO_POS_ARGS
-
-/* Multibyte supported */
-#undef _MB_CAPABLE
-
-/* MB_LEN_MAX */
-#undef _MB_LEN_MAX
-
-/* ICONV enabled */
-#undef _ICONV_ENABLED
-
-/* Enable ICONV external CCS files loading capabilities */
-#undef _ICONV_ENABLE_EXTERNAL_CCS
-
-/* Define if the linker supports .preinit_array/.init_array/.fini_array
- * sections. */
-#undef HAVE_INITFINI_ARRAY
-
-/* True if atexit() may dynamically allocate space for cleanup
- functions. */
-#undef _ATEXIT_DYNAMIC_ALLOC
-
-/* Define if the compiler supports aliasing an array to an address. */
-#undef _HAVE_ARRAY_ALIASING
-@BOTTOM@
-/*
- * Iconv encodings enabled ("to" direction)
- */
-#undef _ICONV_TO_ENCODING_BIG5
-#undef _ICONV_TO_ENCODING_CP775
-#undef _ICONV_TO_ENCODING_CP850
-#undef _ICONV_TO_ENCODING_CP852
-#undef _ICONV_TO_ENCODING_CP855
-#undef _ICONV_TO_ENCODING_CP866
-#undef _ICONV_TO_ENCODING_EUC_JP
-#undef _ICONV_TO_ENCODING_EUC_TW
-#undef _ICONV_TO_ENCODING_EUC_KR
-#undef _ICONV_TO_ENCODING_ISO_8859_1
-#undef _ICONV_TO_ENCODING_ISO_8859_10
-#undef _ICONV_TO_ENCODING_ISO_8859_11
-#undef _ICONV_TO_ENCODING_ISO_8859_13
-#undef _ICONV_TO_ENCODING_ISO_8859_14
-#undef _ICONV_TO_ENCODING_ISO_8859_15
-#undef _ICONV_TO_ENCODING_ISO_8859_2
-#undef _ICONV_TO_ENCODING_ISO_8859_3
-#undef _ICONV_TO_ENCODING_ISO_8859_4
-#undef _ICONV_TO_ENCODING_ISO_8859_5
-#undef _ICONV_TO_ENCODING_ISO_8859_6
-#undef _ICONV_TO_ENCODING_ISO_8859_7
-#undef _ICONV_TO_ENCODING_ISO_8859_8
-#undef _ICONV_TO_ENCODING_ISO_8859_9
-#undef _ICONV_TO_ENCODING_ISO_IR_111
-#undef _ICONV_TO_ENCODING_KOI8_R
-#undef _ICONV_TO_ENCODING_KOI8_RU
-#undef _ICONV_TO_ENCODING_KOI8_U
-#undef _ICONV_TO_ENCODING_KOI8_UNI
-#undef _ICONV_TO_ENCODING_UCS_2
-#undef _ICONV_TO_ENCODING_UCS_2_INTERNAL
-#undef _ICONV_TO_ENCODING_UCS_2BE
-#undef _ICONV_TO_ENCODING_UCS_2LE
-#undef _ICONV_TO_ENCODING_UCS_4
-#undef _ICONV_TO_ENCODING_UCS_4_INTERNAL
-#undef _ICONV_TO_ENCODING_UCS_4BE
-#undef _ICONV_TO_ENCODING_UCS_4LE
-#undef _ICONV_TO_ENCODING_US_ASCII
-#undef _ICONV_TO_ENCODING_UTF_16
-#undef _ICONV_TO_ENCODING_UTF_16BE
-#undef _ICONV_TO_ENCODING_UTF_16LE
-#undef _ICONV_TO_ENCODING_UTF_8
-#undef _ICONV_TO_ENCODING_WIN_1250
-#undef _ICONV_TO_ENCODING_WIN_1251
-#undef _ICONV_TO_ENCODING_WIN_1252
-#undef _ICONV_TO_ENCODING_WIN_1253
-#undef _ICONV_TO_ENCODING_WIN_1254
-#undef _ICONV_TO_ENCODING_WIN_1255
-#undef _ICONV_TO_ENCODING_WIN_1256
-#undef _ICONV_TO_ENCODING_WIN_1257
-#undef _ICONV_TO_ENCODING_WIN_1258
-
-/*
- * Iconv encodings enabled ("from" direction)
- */
-#undef _ICONV_FROM_ENCODING_BIG5
-#undef _ICONV_FROM_ENCODING_CP775
-#undef _ICONV_FROM_ENCODING_CP850
-#undef _ICONV_FROM_ENCODING_CP852
-#undef _ICONV_FROM_ENCODING_CP855
-#undef _ICONV_FROM_ENCODING_CP866
-#undef _ICONV_FROM_ENCODING_EUC_JP
-#undef _ICONV_FROM_ENCODING_EUC_TW
-#undef _ICONV_FROM_ENCODING_EUC_KR
-#undef _ICONV_FROM_ENCODING_ISO_8859_1
-#undef _ICONV_FROM_ENCODING_ISO_8859_10
-#undef _ICONV_FROM_ENCODING_ISO_8859_11
-#undef _ICONV_FROM_ENCODING_ISO_8859_13
-#undef _ICONV_FROM_ENCODING_ISO_8859_14
-#undef _ICONV_FROM_ENCODING_ISO_8859_15
-#undef _ICONV_FROM_ENCODING_ISO_8859_2
-#undef _ICONV_FROM_ENCODING_ISO_8859_3
-#undef _ICONV_FROM_ENCODING_ISO_8859_4
-#undef _ICONV_FROM_ENCODING_ISO_8859_5
-#undef _ICONV_FROM_ENCODING_ISO_8859_6
-#undef _ICONV_FROM_ENCODING_ISO_8859_7
-#undef _ICONV_FROM_ENCODING_ISO_8859_8
-#undef _ICONV_FROM_ENCODING_ISO_8859_9
-#undef _ICONV_FROM_ENCODING_ISO_IR_111
-#undef _ICONV_FROM_ENCODING_KOI8_R
-#undef _ICONV_FROM_ENCODING_KOI8_RU
-#undef _ICONV_FROM_ENCODING_KOI8_U
-#undef _ICONV_FROM_ENCODING_KOI8_UNI
-#undef _ICONV_FROM_ENCODING_UCS_2
-#undef _ICONV_FROM_ENCODING_UCS_2_INTERNAL
-#undef _ICONV_FROM_ENCODING_UCS_2BE
-#undef _ICONV_FROM_ENCODING_UCS_2LE
-#undef _ICONV_FROM_ENCODING_UCS_4
-#undef _ICONV_FROM_ENCODING_UCS_4_INTERNAL
-#undef _ICONV_FROM_ENCODING_UCS_4BE
-#undef _ICONV_FROM_ENCODING_UCS_4LE
-#undef _ICONV_FROM_ENCODING_US_ASCII
-#undef _ICONV_FROM_ENCODING_UTF_16
-#undef _ICONV_FROM_ENCODING_UTF_16BE
-#undef _ICONV_FROM_ENCODING_UTF_16LE
-#undef _ICONV_FROM_ENCODING_UTF_8
-#undef _ICONV_FROM_ENCODING_WIN_1250
-#undef _ICONV_FROM_ENCODING_WIN_1251
-#undef _ICONV_FROM_ENCODING_WIN_1252
-#undef _ICONV_FROM_ENCODING_WIN_1253
-#undef _ICONV_FROM_ENCODING_WIN_1254
-#undef _ICONV_FROM_ENCODING_WIN_1255
-#undef _ICONV_FROM_ENCODING_WIN_1256
-#undef _ICONV_FROM_ENCODING_WIN_1257
-#undef _ICONV_FROM_ENCODING_WIN_1258
-
-#endif /* !__NEWLIB_H__ */
-
diff --git a/newlib/acinclude.m4 b/newlib/acinclude.m4
index 0b6b8edbd..36b27621f 100644
--- a/newlib/acinclude.m4
+++ b/newlib/acinclude.m4
@@ -105,7 +105,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0, nodefine)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -153,9 +153,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/aclocal.m4 b/newlib/aclocal.m4
index 5303ae452..6da78f365 100644
--- a/newlib/aclocal.m4
+++ b/newlib/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0, nodefine)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/configure b/newlib/configure
index ce9246a31..2d65f088e 100755
--- a/newlib/configure
+++ b/newlib/configure
@@ -28,8 +28,6 @@ ac_help="$ac_help
ac_help="$ac_help
--enable-newlib-iconv-external-ccs enable capabilities to load external CCS files for iconv"
ac_help="$ac_help
- --disable-newlib-atexit-alloc disable dynamic allocation of atexit entries"
-ac_help="$ac_help
--enable-multilib build many library versions (default)"
ac_help="$ac_help
--enable-target-optspace optimize for space"
@@ -694,20 +692,6 @@ else
newlib_iconv_external_ccs=${newlib_iconv_external_ccs}
fi
-# Check whether --enable-newlib-atexit-dynamic-alloc or --disable-newlib-atexit-dynamic-alloc was given.
-if test "${enable_newlib_atexit_dynamic_alloc+set}" = set; then
- enableval="$enable_newlib_atexit_dynamic_alloc"
- if test "${newlib_atexit_dynamic_alloc+set}" != set; then
- case "${enableval}" in
- yes) newlib_atexit_dynamic_alloc=yes ;;
- no) newlib_atexit_dynamic_alloc=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-atexit-dynamic-alloc option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_atexit_dynamic_alloc=yes
-fi
-
am__api_version="1.4"
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
@@ -721,7 +705,7 @@ am__api_version="1.4"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:725: checking for a BSD compatible install" >&5
+echo "configure:709: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -774,7 +758,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:778: checking whether build environment is sane" >&5
+echo "configure:762: checking whether build environment is sane" >&5
# Just in case
sleep 1
echo timestamp > conftestfile
@@ -831,7 +815,7 @@ test "$program_suffix" != NONE &&
test "$program_transform_name" = "" && program_transform_name="s,x,x,"
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:835: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:819: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -864,12 +848,12 @@ else
fi
echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:868: checking for Cygwin environment" >&5
+echo "configure:852: checking for Cygwin environment" >&5
if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 873 "configure"
+#line 857 "configure"
#include "confdefs.h"
int main() {
@@ -880,7 +864,7 @@ int main() {
return __CYGWIN__;
; return 0; }
EOF
-if { (eval echo configure:884: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:868: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_cygwin=yes
else
@@ -897,19 +881,19 @@ echo "$ac_t""$ac_cv_cygwin" 1>&6
CYGWIN=
test "$ac_cv_cygwin" = yes && CYGWIN=yes
echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:901: checking for mingw32 environment" >&5
+echo "configure:885: checking for mingw32 environment" >&5
if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 906 "configure"
+#line 890 "configure"
#include "confdefs.h"
int main() {
return __MINGW32__;
; return 0; }
EOF
-if { (eval echo configure:913: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:897: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_mingw32=yes
else
@@ -1079,7 +1063,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:1083: checking host system type" >&5
+echo "configure:1067: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -1100,7 +1084,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:1104: checking target system type" >&5
+echo "configure:1088: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -1118,7 +1102,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:1122: checking build system type" >&5
+echo "configure:1106: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -1144,17 +1128,24 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
fi
+cat >> confdefs.h <<EOF
+#define PACKAGE "$PACKAGE"
+EOF
+
+cat >> confdefs.h <<EOF
+#define VERSION "$VERSION"
+EOF
missing_dir=`cd $ac_aux_dir && pwd`
echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1158: checking for working aclocal-${am__api_version}" >&5
+echo "configure:1149: checking for working aclocal-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1167,7 +1158,7 @@ else
fi
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1171: checking for working autoconf" >&5
+echo "configure:1162: checking for working autoconf" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1180,7 +1171,7 @@ else
fi
echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1184: checking for working automake-${am__api_version}" >&5
+echo "configure:1175: checking for working automake-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1193,7 +1184,7 @@ else
fi
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1197: checking for working autoheader" >&5
+echo "configure:1188: checking for working autoheader" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1206,7 +1197,7 @@ else
fi
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1210: checking for working makeinfo" >&5
+echo "configure:1201: checking for working makeinfo" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1231,7 +1222,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1235: checking for $ac_word" >&5
+echo "configure:1226: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1261,7 +1252,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1265: checking for $ac_word" >&5
+echo "configure:1256: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1310,7 +1301,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1314: checking whether we are using GNU C" >&5
+echo "configure:1305: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1319,7 +1310,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1323: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1314: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1334,7 +1325,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1338: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1329: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1365,7 +1356,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1369: checking for $ac_word" >&5
+echo "configure:1360: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1397,7 +1388,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1401: checking for $ac_word" >&5
+echo "configure:1392: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1429,7 +1420,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1433: checking for $ac_word" >&5
+echo "configure:1424: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1461,7 +1452,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1465: checking for $ac_word" >&5
+echo "configure:1456: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1506,7 +1497,7 @@ fi
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1510: checking for a BSD compatible install" >&5
+echo "configure:1501: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1559,11 +1550,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1567: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1555: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1597,7 +1585,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1601: checking for executable suffix" >&5
+echo "configure:1589: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1607,7 +1595,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1611: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1599: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1782,7 +1770,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1786: checking for $ac_word" >&5
+echo "configure:1774: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1812,7 +1800,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1816: checking for $ac_word" >&5
+echo "configure:1804: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1863,7 +1851,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1867: checking for $ac_word" >&5
+echo "configure:1855: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1895,7 +1883,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1899: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1887: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1906,12 +1894,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1910 "configure"
+#line 1898 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1915: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1903: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1937,12 +1925,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1941: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1929: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1946: checking whether we are using GNU C" >&5
+echo "configure:1934: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1951,7 +1939,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1955: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1970,7 +1958,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1974: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1962: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2013,7 +2001,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:2017: checking for ld used by GCC" >&5
+echo "configure:2005: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -2043,10 +2031,10 @@ echo "configure:2017: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:2047: checking for GNU ld" >&5
+echo "configure:2035: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:2050: checking for non-GNU ld" >&5
+echo "configure:2038: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2081,7 +2069,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:2085: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:2073: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2098,7 +2086,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:2102: checking for $LD option to reload object files" >&5
+echo "configure:2090: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2110,7 +2098,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:2114: checking for BSD-compatible nm" >&5
+echo "configure:2102: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2148,7 +2136,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2152: checking whether ln -s works" >&5
+echo "configure:2140: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2169,7 +2157,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2173: checking how to recognise dependant libraries" >&5
+echo "configure:2161: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2342,13 +2330,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2346: checking for object suffix" >&5
+echo "configure:2334: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2352: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2340: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2372,7 +2360,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2376: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2364: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2434,7 +2422,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2438: checking for file" >&5
+echo "configure:2426: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2505,7 +2493,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2509: checking for $ac_word" >&5
+echo "configure:2497: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2537,7 +2525,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2541: checking for $ac_word" >&5
+echo "configure:2529: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2572,7 +2560,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2576: checking for $ac_word" >&5
+echo "configure:2564: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2604,7 +2592,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2608: checking for $ac_word" >&5
+echo "configure:2596: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2671,8 +2659,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2675 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2676: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2663 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2664: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2691,7 +2679,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2695: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2683: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2709,7 +2697,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2713: checking whether the C compiler needs -belf" >&5
+echo "configure:2701: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2722,14 +2710,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2726 "configure"
+#line 2714 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2733: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2721: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2759,7 +2747,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2763: checking for $ac_word" >&5
+echo "configure:2751: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2791,7 +2779,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2795: checking for $ac_word" >&5
+echo "configure:2783: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2826,7 +2814,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2830: checking for $ac_word" >&5
+echo "configure:2818: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2858,7 +2846,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2862: checking for $ac_word" >&5
+echo "configure:2850: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2893,7 +2881,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2897: checking for $ac_word" >&5
+echo "configure:2885: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2925,7 +2913,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2929: checking for $ac_word" >&5
+echo "configure:2917: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2961,12 +2949,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2965: checking if libtool should supply DllMain function" >&5
+echo "configure:2953: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2970 "configure"
+#line 2958 "configure"
#include "confdefs.h"
int main() {
@@ -2974,7 +2962,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2966: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2995,19 +2983,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2999: checking how to link DLLs" >&5
+echo "configure:2987: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3004 "configure"
+#line 2992 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:3011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2999: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -3116,12 +3104,12 @@ exec 5>>./config.log
-for ac_prog in gawk mawk nawk awk
+for ac_prog in mawk gawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3125: checking for $ac_word" >&5
+echo "configure:3113: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -3217,7 +3205,7 @@ subdirs="${configdirs}"
CRT0=
CRT0_DIR=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
CRT0_DIR=libc/
fi
@@ -3334,13 +3322,6 @@ EOF
fi
-if test "${newlib_atexit_dynamic_alloc}" = "yes"; then
-cat >> confdefs.h <<EOF
-#define _ATEXIT_DYNAMIC_ALLOC 1
-EOF
-
-fi
-
cat >> confdefs.h <<EOF
#define _NEWLIB_VERSION "$VERSION"
EOF
@@ -3444,68 +3425,6 @@ EOF
done
fi;
-echo $ac_n "checking for .preinit_array/.init_array/.fini_array support""... $ac_c" 1>&6
-echo "configure:3449: checking for .preinit_array/.init_array/.fini_array support" >&5
-if eval "test \"`echo '$''{'libc_cv_initfinit_array'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-int _start (void) { return 0; }
-int __start (void) { return 0; }
-int foo (void) { return 1; }
-int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
-EOF
-if { ac_try='${CC} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
- -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD'; { (eval echo configure:3460: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }
-then
- if readelf -S conftest | grep -e INIT_ARRAY > /dev/null; then
- libc_cv_initfinit_array=yes
- else
- libc_cv_initfinit_array=no
- fi
-else
- libc_cv_initfinit_array=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$libc_cv_initfinit_array" 1>&6
-
-if test $libc_cv_initfinit_array = yes; then
- cat >> confdefs.h <<EOF
-#define HAVE_INITFINI_ARRAY 1
-EOF
-
-fi
-
-echo $ac_n "checking for array aliasing support""... $ac_c" 1>&6
-echo "configure:3483: checking for array aliasing support" >&5
-if eval "test \"`echo '$''{'libc_cv_array_aliasing'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-char x3 = { 'a', 'b', 'c' };
-extern char y2 __attribute__((alias ("x+1")));
-EOF
-if { ac_try='${CC} $CFLAGS $CPPFLAGS -c conftest.c
- 1>&AS_MESSAGE_LOG_FD'; { (eval echo configure:3492: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }
-then
- libc_cv_array_aliasing=yes
-else
- libc_cv_array_aliasing=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$libc_cv_array_aliasing" 1>&6
-
-if test $libc_cv_array_aliasing = yes; then
- cat >> confdefs.h <<EOF
-#define _HAVE_ARRAY_ALIASING 1
-EOF
-
-fi
-
trap '' 1 2 15
cat > confcache <<\EOF
# This file is a shell script that caches the results of configure
@@ -3722,8 +3641,6 @@ s%@SYSCALL_OBJECTLIST@%$SYSCALL_OBJECTLIST%g
s%@UNIX_OBJECTLIST@%$UNIX_OBJECTLIST%g
s%@STDIO64_OBJECTLIST@%$STDIO64_OBJECTLIST%g
s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
-s%@libc_cv_initfinit_array@%$libc_cv_initfinit_array%g
-s%@libc_cv_array_aliasing@%$libc_cv_array_aliasing%g
CEOF
EOF
diff --git a/newlib/configure.host b/newlib/configure.host
index d85e8ad2c..a4b7506c2 100644
--- a/newlib/configure.host
+++ b/newlib/configure.host
@@ -42,8 +42,6 @@
# oext object file extension - needed for libtool support
# crt1 name of crt1 object if one is provided
# crt1_dir directory where crt1 object is found
-# have_crt0 "yes"/"no" if crt0 is/isn't provided.
-# "" if crt0 is provided when sys_dir is set
newlib_cflags=
libm_machine_dir=
@@ -57,7 +55,6 @@ unix_dir=
mach_add_setjmp=
crt1=
crt1_dir=
-have_crt0=
use_libtool=no
have_sys_mach_dir=no
default_newlib_io_long_long=no
@@ -70,7 +67,7 @@ case "${target_optspace}:${host}" in
yes:*)
newlib_cflags="${newlib_cflags} -Os"
;;
- :m32r-* | :d10v-* | :d30v-* | :avr-* | :m32c-* )
+ :m32r-* | :d10v-* | :d30v-* | :avr-*)
newlib_cflags="${newlib_cflags} -Os"
;;
no:* | :*)
@@ -96,12 +93,6 @@ case "${host_cpu}" in
avr*)
newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -mcall-prologues"
;;
- cris | crisv32)
- machine_dir=cris
- ;;
- crx*)
- machine_dir=crx
- ;;
d10v*)
machine_dir=d10v
;;
@@ -148,11 +139,6 @@ case "${host_cpu}" in
iq2000)
machine_dir=iq2000
;;
- m32c)
- machine_dir=m32c
- newlib_cflags="${newlib_cflags} -DPREFER_SIZE_OVER_SPEED -DABORT_PROVIDED -DSMALL_MEMORY"
- ;;
-
m32r*)
machine_dir=m32r
;;
@@ -186,12 +172,8 @@ case "${host_cpu}" in
machine_dir=mn10200
;;
mn10300)
- default_newlib_io_long_long="yes"
machine_dir=mn10300
;;
- mt*)
- machine_dir=mt
- ;;
or16)
;;
or32)
@@ -321,14 +303,10 @@ case "${host}" in
sys_dir=arc
;;
arm-*-*)
- sys_dir=arm
- if [ "x${newlib_may_supply_syscalls}" = "xno" ] ; then
- have_crt0="no"
+ if [ "x${newlib_may_supply_syscalls}" = "xyes" ] ; then
+ sys_dir=arm
fi
;;
- crx*)
- sys_dir=
- ;;
d10v*)
sys_dir=d10v
;;
@@ -336,9 +314,8 @@ case "${host}" in
sys_dir=
;;
ep9312-*-*)
- sys_dir=arm
- if [ "x${newlib_may_supply_syscalls}" = "xno" ] ; then
- have_crt0="no"
+ if [ "x${newlib_may_supply_syscalls}" = "xyes" ] ; then
+ sys_dir=arm
fi
;;
frv*)
@@ -362,10 +339,6 @@ case "${host}" in
h8500-*-elf*)
sys_dir=h8500hms
;;
- i[34567]86-*-rdos*)
- sys_dir=rdos
- newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES"
- ;;
i[34567]86-*-sco*)
sys_dir=sysvi386
unix_dir=unix
@@ -422,15 +395,13 @@ case "${host}" in
unix_dir=unix
;;
strongarm-*-*)
- sys_dir=arm
- if [ "x${newlib_may_supply_syscalls}" = "xno" ] ; then
- have_crt0="no"
+ if [ "x${newlib_may_supply_syscalls}" = "xyes" ] ; then
+ sys_dir=arm
fi
;;
thumb-*-*)
- sys_dir=arm
- if [ "x${newlib_may_supply_syscalls}" = "xno" ] ; then
- have_crt0="no"
+ if [ "x${newlib_may_supply_syscalls}" = "xyes" ] ; then
+ sys_dir=arm
fi
;;
tic80*)
@@ -455,9 +426,8 @@ case "${host}" in
sys_dir=w65
;;
xscale-*-*)
- sys_dir=arm
- if [ "x${newlib_may_supply_syscalls}" = "xno" ] ; then
- have_crt0="no"
+ if [ "x${newlib_may_supply_syscalls}" = "xyes" ] ; then
+ sys_dir=arm
fi
;;
z8k-*-coff)
@@ -476,8 +446,7 @@ case "${host}" in
default_newlib_io_long_long="yes"
default_newlib_io_long_double="yes"
default_newlib_io_pos_args="yes"
- CC="${CC} -I${cygwin_srcdir}/include"
- newlib_cflags="${newlib_cflags} -DHAVE_OPENDIR -DHAVE_RENAME -DSIGNAL_PROVIDED -D_COMPILING_NEWLIB -DHAVE_FCNTL -DMALLOC_PROVIDED"
+ newlib_cflags="${newlib_cflags} -DHAVE_OPENDIR -DHAVE_RENAME -DSIGNAL_PROVIDED -D_COMPILING_NEWLIB -DHAVE_FCNTL -DMALLOC_PROVIDED -I${cygwin_srcdir}/include"
syscall_dir=syscalls
;;
# RTEMS supplies its own versions of some routines:
@@ -524,21 +493,9 @@ case "${host}" in
newlib_cflags="${newlib_cflags} -DARM_RDI_MONITOR"
fi
;;
- arc*)
- newlib_cflags="${newlib_cflags} -DREENTRANT_SYSCALLS_PROVIDED"
- ;;
avr*)
newlib_cflags="${newlib_cflags} -DNO_EXEC -DSMALL_MEMORY -DMISSING_SYSCALL_NAMES"
;;
- cris-*-* | crisv32-*-*)
- default_newlib_io_long_long="yes"
- newlib_cflags="${newlib_cflags} -DHAVE_RENAME -DHAVE_GETTIMEOFDAY -D_USE_WRITE -DCOMPACT_CTYPE"
- syscall_dir=syscalls
- ;;
- crx-*-*)
- newlib_cflags="${newlib_cflags} -DHAVE_RENAME -DMISSING_SYSCALL_NAMES"
- syscall_dir=
- ;;
d10v*)
newlib_cflags="${newlib_cflags} -DSMALL_MEMORY"
syscall_dir=syscalls
@@ -737,7 +694,3 @@ if [ "x${newlib_io_pos_args}" = "x" ]; then
newlib_io_pos_args="yes";
fi
fi
-
-if test -z "${have_crt0}" && test -n "${sys_dir}"; then
- have_crt0="yes"
-fi
diff --git a/newlib/configure.in b/newlib/configure.in
index c8dc21176..dbc4cb5ef 100644
--- a/newlib/configure.in
+++ b/newlib/configure.in
@@ -85,17 +85,6 @@ AC_ARG_ENABLE(newlib-iconv-external-ccs,
esac
fi], [newlib_iconv_external_ccs=${newlib_iconv_external_ccs}])dnl
-dnl Support --disable-newlib-atexit-dynamic-alloc
-AC_ARG_ENABLE(newlib-atexit-dynamic-alloc,
-[ --disable-newlib-atexit-alloc disable dynamic allocation of atexit entries],
-[if test "${newlib_atexit_dynamic_alloc+set}" != set; then
- case "${enableval}" in
- yes) newlib_atexit_dynamic_alloc=yes ;;
- no) newlib_atexit_dynamic_alloc=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-atexit-dynamic-alloc option) ;;
- esac
- fi], [newlib_atexit_dynamic_alloc=yes])dnl
-
NEWLIB_CONFIGURE(.)
dnl We have to enable libtool after NEWLIB_CONFIGURE because if we try and
@@ -150,7 +139,7 @@ AC_CONFIG_SUBDIRS(${configdirs})
CRT0=
CRT0_DIR=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
CRT0_DIR=libc/
fi
@@ -243,10 +232,6 @@ if test "${newlib_iconv_external_ccs}" = "yes"; then
AC_DEFINE_UNQUOTED(_ICONV_ENABLE_EXTERNAL_CCS)
fi
-if test "${newlib_atexit_dynamic_alloc}" = "yes"; then
-AC_DEFINE_UNQUOTED(_ATEXIT_DYNAMIC_ALLOC)
-fi
-
AC_DEFINE_UNQUOTED(_NEWLIB_VERSION,"$VERSION")
if test "${multilib}" = "yes"; then
@@ -344,50 +329,6 @@ if test "x${iconv_encodings}" != "x" \
done
fi;
-AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
- libc_cv_initfinit_array, [dnl
-cat > conftest.c <<EOF
-int _start (void) { return 0; }
-int __start (void) { return 0; }
-int foo (void) { return 1; }
-int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
-EOF
-if AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
- -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD])
-then
- if readelf -S conftest | grep -e INIT_ARRAY > /dev/null; then
- libc_cv_initfinit_array=yes
- else
- libc_cv_initfinit_array=no
- fi
-else
- libc_cv_initfinit_array=no
-fi
-rm -f conftest*])
-AC_SUBST(libc_cv_initfinit_array)
-if test $libc_cv_initfinit_array = yes; then
- AC_DEFINE_UNQUOTED(HAVE_INITFINI_ARRAY)
-fi
-
-AC_CACHE_CHECK(for array aliasing support,
- libc_cv_array_aliasing, [dnl
-cat > conftest.c <<EOF
-char x[3] = { 'a', 'b', 'c' };
-extern char y[2] __attribute__((alias ("x+1")));
-EOF
-if AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -c conftest.c
- 1>&AS_MESSAGE_LOG_FD])
-then
- libc_cv_array_aliasing=yes
-else
- libc_cv_array_aliasing=no
-fi
-rm -f conftest*])
-AC_SUBST(libc_cv_array_aliasing)
-if test $libc_cv_array_aliasing = yes; then
- AC_DEFINE_UNQUOTED(_HAVE_ARRAY_ALIASING)
-fi
-
AC_OUTPUT(Makefile,
[if test -n "$CONFIG_FILES"; then
unset ac_file
diff --git a/newlib/doc/aclocal.m4 b/newlib/doc/aclocal.m4
index b03b0d2ed..b0314a4ed 100644
--- a/newlib/doc/aclocal.m4
+++ b/newlib/doc/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/doc/configure b/newlib/doc/configure
index 47e58888c..80e7b5c6d 100755
--- a/newlib/doc/configure
+++ b/newlib/doc/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1583,7 +1580,7 @@ if test "x$cross_compiling" = "xno"; then
EXEEXT_FOR_BUILD='$(EXEEXT)'
else
echo $ac_n "checking for build system executable suffix""... $ac_c" 1>&6
-echo "configure:1587: checking for build system executable suffix" >&5
+echo "configure:1584: checking for build system executable suffix" >&5
if eval "test \"`echo '$''{'newlib_cv_build_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/newlib/iconvdata/aclocal.m4 b/newlib/iconvdata/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/iconvdata/aclocal.m4
+++ b/newlib/iconvdata/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/iconvdata/configure b/newlib/iconvdata/configure
index a4f8cf471..a465dc063 100755
--- a/newlib/iconvdata/configure
+++ b/newlib/iconvdata/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/iconvdata/jis0208.h b/newlib/iconvdata/jis0208.h
index 131a5c562..ef6b891eb 100644
--- a/newlib/iconvdata/jis0208.h
+++ b/newlib/iconvdata/jis0208.h
@@ -24,6 +24,15 @@
#include <gconv.h>
#include <stdint.h>
+/* Conversion table. */
+extern const uint16_t __jis0208_to_ucs[];
+
+extern const char __jisx0208_from_ucs4_lat1[256][2];
+extern const char __jisx0208_from_ucs4_greek[0xc1][2];
+extern const struct jisx0208_ucs_idx __jisx0208_from_ucs_idx[];
+extern const char __jisx0208_from_ucs_tab[][2];
+
+
/* Struct for table with indeces in UCS mapping table. */
struct jisx0208_ucs_idx
{
@@ -32,13 +41,6 @@ struct jisx0208_ucs_idx
uint16_t idx;
};
-/* Conversion table. */
-extern const uint16_t __jis0208_to_ucs[];
-
-extern const char __jisx0208_from_ucs4_lat1[256][2];
-extern const char __jisx0208_from_ucs4_greek[0xc1][2];
-extern const struct jisx0208_ucs_idx __jisx0208_from_ucs_idx[];
-extern const char __jisx0208_from_ucs_tab[][2];
static inline uint32_t
jisx0208_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset)
diff --git a/newlib/libc/Makefile.am b/newlib/libc/Makefile.am
index feba1b101..8fd0581bb 100644
--- a/newlib/libc/Makefile.am
+++ b/newlib/libc/Makefile.am
@@ -50,15 +50,15 @@ SUBLIBS = \
$(LIBC_SIGNAL_LIB) \
time/libtime.$(aext) \
locale/liblocale.$(aext) \
+ $(LIBC_SYS_LIB) \
reent/libreent.$(aext) \
$(LIBC_EXTRA_LIB) \
errno/liberrno.$(aext) \
misc/libmisc.$(aext) \
+ $(LIBC_MACHINE_LIB) \
$(LIBC_UNIX_LIB) \
$(LIBC_POSIX_LIB) \
- $(LIBC_SYSCALL_LIB) \
- $(LIBC_MACHINE_LIB) \
- $(LIBC_SYS_LIB)
+ $(LIBC_SYSCALL_LIB)
else
noinst_LIBRARIES = libc.a
SUBLIBS = \
@@ -72,16 +72,16 @@ SUBLIBS = \
$(LIBC_SIGNAL_LIB) \
time/lib.$(aext) \
locale/lib.$(aext) \
+ $(LIBC_SYS_LIB) \
reent/lib.$(aext) \
$(LIBC_EXTRA_LIB) \
errno/lib.$(aext) \
misc/lib.$(aext) \
+ $(LIBC_MACHINE_LIB) \
$(LIBC_UNIX_LIB) \
$(LIBC_POSIX_LIB) \
$(LIBC_SYSCALL_LIB) \
- $(NEWLIB_ICONV_LIBS) \
- $(LIBC_MACHINE_LIB) \
- $(LIBC_SYS_LIB)
+ $(NEWLIB_ICONV_LIBS)
endif
libc_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/Makefile.in b/newlib/libc/Makefile.in
index f94585cd0..b84885821 100644
--- a/newlib/libc/Makefile.in
+++ b/newlib/libc/Makefile.in
@@ -129,8 +129,8 @@ SUBDIRS = argz stdlib ctype search stdio $(STDIO64_SUBDIR) string $(SIGNAL_SUBDI
noinst_DATA = $(CRT0)
@USE_LIBTOOL_TRUE@noinst_LTLIBRARIES = libc.la
-@USE_LIBTOOL_TRUE@SUBLIBS = argz/libargz.$(aext) stdlib/libstdlib.$(aext) ctype/libctype.$(aext) search/libsearch.$(aext) stdio/libstdio.$(aext) $(LIBC_STDIO64_LIB) string/libstring.$(aext) $(LIBC_SIGNAL_LIB) time/libtime.$(aext) locale/liblocale.$(aext) reent/libreent.$(aext) $(LIBC_EXTRA_LIB) errno/liberrno.$(aext) misc/libmisc.$(aext) $(LIBC_UNIX_LIB) $(LIBC_POSIX_LIB) $(LIBC_SYSCALL_LIB) $(LIBC_MACHINE_LIB) $(LIBC_SYS_LIB)
-@USE_LIBTOOL_FALSE@SUBLIBS = argz/lib.$(aext) stdlib/lib.$(aext) ctype/lib.$(aext) search/lib.$(aext) stdio/lib.$(aext) $(LIBC_STDIO64_LIB) string/lib.$(aext) $(LIBC_SIGNAL_LIB) time/lib.$(aext) locale/lib.$(aext) reent/lib.$(aext) $(LIBC_EXTRA_LIB) errno/lib.$(aext) misc/lib.$(aext) $(LIBC_UNIX_LIB) $(LIBC_POSIX_LIB) $(LIBC_SYSCALL_LIB) $(NEWLIB_ICONV_LIBS) $(LIBC_MACHINE_LIB) $(LIBC_SYS_LIB)
+@USE_LIBTOOL_TRUE@SUBLIBS = argz/libargz.$(aext) stdlib/libstdlib.$(aext) ctype/libctype.$(aext) search/libsearch.$(aext) stdio/libstdio.$(aext) $(LIBC_STDIO64_LIB) string/libstring.$(aext) $(LIBC_SIGNAL_LIB) time/libtime.$(aext) locale/liblocale.$(aext) $(LIBC_SYS_LIB) reent/libreent.$(aext) $(LIBC_EXTRA_LIB) errno/liberrno.$(aext) misc/libmisc.$(aext) $(LIBC_MACHINE_LIB) $(LIBC_UNIX_LIB) $(LIBC_POSIX_LIB) $(LIBC_SYSCALL_LIB)
+@USE_LIBTOOL_FALSE@SUBLIBS = argz/lib.$(aext) stdlib/lib.$(aext) ctype/lib.$(aext) search/lib.$(aext) stdio/lib.$(aext) $(LIBC_STDIO64_LIB) string/lib.$(aext) $(LIBC_SIGNAL_LIB) time/lib.$(aext) locale/lib.$(aext) $(LIBC_SYS_LIB) reent/lib.$(aext) $(LIBC_EXTRA_LIB) errno/lib.$(aext) misc/lib.$(aext) $(LIBC_MACHINE_LIB) $(LIBC_UNIX_LIB) $(LIBC_POSIX_LIB) $(LIBC_SYSCALL_LIB) $(NEWLIB_ICONV_LIBS)
@USE_LIBTOOL_FALSE@noinst_LIBRARIES = libc.a
libc_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/aclocal.m4 b/newlib/libc/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/aclocal.m4
+++ b/newlib/libc/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/argz/argz_insert.c b/newlib/libc/argz/argz_insert.c
index 8a9fb19b2..043a10193 100644
--- a/newlib/libc/argz/argz_insert.c
+++ b/newlib/libc/argz/argz_insert.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2005 by Red Hat, Incorporated. All rights reserved.
+/* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved.
*
* Permission to use, copy, modify, and distribute this software
* is freely granted, provided that this notice is preserved.
@@ -20,7 +20,7 @@ _DEFUN (argz_insert, (argz, argz_len, before, entry),
int len = 0;
if (before == NULL)
- return argz_add(argz, argz_len, entry);
+ argz_add(argz, argz_len, entry);
if (before < *argz || before >= *argz + *argz_len)
return EINVAL;
diff --git a/newlib/libc/configure b/newlib/libc/configure
index ac29def3c..5878a6930 100755
--- a/newlib/libc/configure
+++ b/newlib/libc/configure
@@ -1023,7 +1023,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1445,11 +1445,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1453: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1450: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1483,7 +1480,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1487: checking for executable suffix" >&5
+echo "configure:1484: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1493,7 +1490,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1497: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1494: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1669,7 +1666,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1673: checking for $ac_word" >&5
+echo "configure:1670: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1699,7 +1696,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1703: checking for $ac_word" >&5
+echo "configure:1700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1750,7 +1747,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1754: checking for $ac_word" >&5
+echo "configure:1751: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1782,7 +1779,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1786: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1783: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1793,12 +1790,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1797 "configure"
+#line 1794 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1824,12 +1821,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1828: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1825: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1833: checking whether we are using GNU C" >&5
+echo "configure:1830: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1838,7 +1835,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1842: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1839: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1857,7 +1854,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1861: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1858: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1900,7 +1897,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1904: checking for ld used by GCC" >&5
+echo "configure:1901: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1930,10 +1927,10 @@ echo "configure:1904: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1934: checking for GNU ld" >&5
+echo "configure:1931: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1937: checking for non-GNU ld" >&5
+echo "configure:1934: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1968,7 +1965,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1972: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1969: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1985,7 +1982,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1989: checking for $LD option to reload object files" >&5
+echo "configure:1986: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1997,7 +1994,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:2001: checking for BSD-compatible nm" >&5
+echo "configure:1998: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2035,7 +2032,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2039: checking whether ln -s works" >&5
+echo "configure:2036: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2056,7 +2053,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2060: checking how to recognise dependant libraries" >&5
+echo "configure:2057: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2229,13 +2226,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2233: checking for object suffix" >&5
+echo "configure:2230: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2239: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2236: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2259,7 +2256,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2263: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2260: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2321,7 +2318,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2325: checking for file" >&5
+echo "configure:2322: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2392,7 +2389,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2396: checking for $ac_word" >&5
+echo "configure:2393: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2424,7 +2421,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2428: checking for $ac_word" >&5
+echo "configure:2425: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2459,7 +2456,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2463: checking for $ac_word" >&5
+echo "configure:2460: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2491,7 +2488,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2495: checking for $ac_word" >&5
+echo "configure:2492: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2558,8 +2555,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2562 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2563: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2559 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2560: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2578,7 +2575,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2582: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2579: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2596,7 +2593,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2600: checking whether the C compiler needs -belf" >&5
+echo "configure:2597: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2609,14 +2606,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2613 "configure"
+#line 2610 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2620: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2617: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2646,7 +2643,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2650: checking for $ac_word" >&5
+echo "configure:2647: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2678,7 +2675,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2682: checking for $ac_word" >&5
+echo "configure:2679: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2713,7 +2710,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2717: checking for $ac_word" >&5
+echo "configure:2714: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2745,7 +2742,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2749: checking for $ac_word" >&5
+echo "configure:2746: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2780,7 +2777,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2784: checking for $ac_word" >&5
+echo "configure:2781: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2812,7 +2809,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2816: checking for $ac_word" >&5
+echo "configure:2813: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2848,12 +2845,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2852: checking if libtool should supply DllMain function" >&5
+echo "configure:2849: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2857 "configure"
+#line 2854 "configure"
#include "confdefs.h"
int main() {
@@ -2861,7 +2858,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2882,19 +2879,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2886: checking how to link DLLs" >&5
+echo "configure:2883: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2891 "configure"
+#line 2888 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2898: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2895: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -3009,7 +3006,7 @@ subdirs="machine sys"
CRT0=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
fi
diff --git a/newlib/libc/configure.in b/newlib/libc/configure.in
index d114eb5c7..0b6f276c1 100644
--- a/newlib/libc/configure.in
+++ b/newlib/libc/configure.in
@@ -30,7 +30,7 @@ fi
AC_CONFIG_SUBDIRS(machine sys)
CRT0=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
fi
AC_SUBST(CRT0)
diff --git a/newlib/libc/ctype/ctype.tex b/newlib/libc/ctype/ctype.tex
index d15e86b30..bfdc929f7 100644
--- a/newlib/libc/ctype/ctype.tex
+++ b/newlib/libc/ctype/ctype.tex
@@ -12,32 +12,32 @@ The header file @file{ctype.h} defines the macros.
* isascii:: ASCII character predicate
* iscntrl:: Control character predicate
* isdigit:: Decimal digit predicate
-* islower:: Lowercase character predicate
+* islower:: Lower-case character predicate
* isprint:: Printable character predicates (isprint, isgraph)
* ispunct:: Punctuation character predicate
* isspace:: Whitespace character predicate
* isupper:: Uppercase character predicate
* isxdigit:: Hexadecimal digit predicate
* toascii:: Force integers to ASCII range
-* tolower:: Translate characters to lowercase
-* toupper:: Translate characters to uppercase
-* iswalnum:: Alphanumeric wide character predicate
-* iswalpha:: Alphabetic wide character predicate
-* iswblank:: Blank wide character predicate
-* iswcntrl:: Control wide character predicate
-* iswdigit:: Decimal digit wide character predicate
-* iswgraph:: Graphic wide character predicate
-* iswlower:: Lowercase wide character predicate
-* iswprint:: Printable wide character predicate
-* iswpunct:: Punctuation wide character predicate
-* iswspace:: Whitespace wide character predicate
-* iswupper:: Uppercase wide character predicate
-* iswxdigit:: Hexadecimal digit wide character predicate
+* tolower:: Translate characters to lower case
+* toupper:: Translate characters to upper case
+* iswalnum:: Alphanumeric wide-character predicate
+* iswalpha:: Alphabetic wide-character predicate
+* iswblank:: Blank wide-character predicate
+* iswcntrl:: Control wide-character predicate
+* iswdigit:: Decimal digit wide-character predicate
+* iswgraph:: Graphic wide-character predicate
+* iswlower:: Lower-case wide-character predicate
+* iswprint:: Printable wide-character predicate
+* iswpunct:: Punctuation wide-character predicate
+* iswspace:: Whitespace wide-character predicate
+* iswupper:: Uppercase wide-character predicate
+* iswxdigit:: Hexadecimal digit wide-character predicate
* iswctype:: Extensible wide-character test
* wctype:: Compute wide-character test type
-* towlower:: Translate wide characters to lowercase
-* towupper:: Translate wide characters to uppercase
-* towctrans:: Extensible wide-character translation
+* towlower:: Translate wide-characters to lower case
+* towupper:: Translate wide-characters to upper case
+* towctrans:: Extensible wide-character case mapping
* wctrans:: Compute wide-character translation type
@end menu
diff --git a/newlib/libc/ctype/ctype_.c b/newlib/libc/ctype/ctype_.c
index 5551dbdc9..9991dd222 100644
--- a/newlib/libc/ctype/ctype_.c
+++ b/newlib/libc/ctype/ctype_.c
@@ -84,40 +84,21 @@ static _CONST char _ctype_b[128 + 256] = {
_CTYPE_DATA_128_256
};
-# if defined(__CYGWIN__)
-_CONST char __declspec(dllexport) *__ctype_ptr = _ctype_b + 128;
-# else
-_CONST char *__ctype_ptr = _ctype_b + 128;
-# endif
-
-# if defined(_HAVE_ARRAY_ALIASING)
-
-# if defined(__CYGWIN__)
+#if defined(__CYGWIN__)
extern _CONST char __declspec(dllexport) _ctype_[1 + 256] __attribute__ ((alias ("_ctype_b+127")));
-# else
+_CONST char __declspec(dllexport) *__ctype_ptr = _ctype_b + 128;
+#else
extern _CONST char _ctype_[1 + 256] __attribute__ ((alias ("_ctype_b+127")));
-# endif
-
-# else /* !_HAVE_ARRAY_ALIASING */
-
-# if defined(__CYGWIN__)
-_CONST char __declspec(dllexport) _ctype_[1 + 256] = {
-# else
-_CONST char _ctype_[1 + 256] = {
-# endif
- 0,
- _CTYPE_DATA_0_127,
- _CTYPE_DATA_128_256
-};
-# endif /* !_HAVE_ARRAY_ALIASING */
+_CONST char *__ctype_ptr = _ctype_b + 128;
+#endif
#else /* !defined(ALLOW_NEGATIVE_CTYPE_INDEX) */
-# if defined(__CYGWIN__)
+#if defined(__CYGWIN__)
_CONST char __declspec(dllexport) _ctype_[1 + 256] = {
-# else
+#else
_CONST char _ctype_[1 + 256] = {
-# endif
+#endif
0,
_CTYPE_DATA_0_127,
_CTYPE_DATA_128_256
diff --git a/newlib/libc/ctype/islower.c b/newlib/libc/ctype/islower.c
index cda484367..81ad0bb27 100644
--- a/newlib/libc/ctype/islower.c
+++ b/newlib/libc/ctype/islower.c
@@ -1,7 +1,7 @@
/*
FUNCTION
-<<islower>>---lowercase character predicate
+<<islower>>---lower-case character predicate
INDEX
islower
@@ -17,14 +17,14 @@ int islower(<[c]>);
DESCRIPTION
<<islower>> is a macro which classifies ASCII integer values by table
lookup. It is a predicate returning non-zero for minuscules
-(lowercase alphabetic characters), and 0 for other characters.
+(lower-case alphabetic characters), and 0 for other characters.
It is defined only when <<isascii>>(<[c]>) is true or <[c]> is EOF.
You can use a compiled subroutine instead of the macro definition by
undefining the macro using `<<#undef islower>>'.
RETURNS
-<<islower>> returns non-zero if <[c]> is a lowercase letter (<<a>>--<<z>>).
+<<islower>> returns non-zero if <[c]> is a lower case letter (<<a>>--<<z>>).
PORTABILITY
<<islower>> is ANSI C.
diff --git a/newlib/libc/ctype/isupper.c b/newlib/libc/ctype/isupper.c
index 4cf9e9a2d..8127e25da 100644
--- a/newlib/libc/ctype/isupper.c
+++ b/newlib/libc/ctype/isupper.c
@@ -16,7 +16,7 @@ int isupper(<[c]>);
DESCRIPTION
<<isupper>> is a macro which classifies ASCII integer values by table
-lookup. It is a predicate returning non-zero for uppercase letters
+lookup. It is a predicate returning non-zero for upper-case letters
(<<A>>--<<Z>>), and 0 for other characters. It is defined only when
<<isascii>>(<[c]>) is true or <[c]> is EOF.
@@ -24,7 +24,7 @@ You can use a compiled subroutine instead of the macro definition by
undefining the macro using `<<#undef isupper>>'.
RETURNS
-<<isupper>> returns non-zero if <[c]> is a uppercase letter (A-Z).
+<<isupper>> returns non-zero if <[c]> is a upper case letter (A-Z).
PORTABILITY
<<isupper>> is ANSI C.
diff --git a/newlib/libc/ctype/iswalnum.c b/newlib/libc/ctype/iswalnum.c
index c417cb31e..12613c7a1 100644
--- a/newlib/libc/ctype/iswalnum.c
+++ b/newlib/libc/ctype/iswalnum.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<iswalnum>>---alphanumeric wide character test
+ <<iswalnum>>---alpha-numeric wide-character test
INDEX
iswalnum
@@ -16,10 +16,10 @@ TRAD_SYNOPSIS
DESCRIPTION
<<iswalnum>> is a function which classifies wide-character values that
-are alphanumeric.
+are alpha-numeric.
RETURNS
-<<iswalnum>> returns non-zero if <[c]> is a alphanumeric wide character.
+<<iswalnum>> returns non-zero if <[c]> is a alpha-numeric wide-character.
PORTABILITY
<<iswalnum>> is C99.
diff --git a/newlib/libc/ctype/iswalpha.c b/newlib/libc/ctype/iswalpha.c
index 7f8de8e59..0e987a992 100644
--- a/newlib/libc/ctype/iswalpha.c
+++ b/newlib/libc/ctype/iswalpha.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswalpha>>---alphabetic wide character test
+ <<iswalpha>>---alphabetic wide-character test
INDEX
iswalpha
@@ -48,7 +48,7 @@ DESCRIPTION
are alphabetic.
RETURNS
-<<iswalpha>> returns non-zero if <[c]> is an alphabetic wide character.
+<<iswalpha>> returns non-zero if <[c]> is an alphabetic wide-character.
PORTABILITY
<<iswalpha>> is C99.
diff --git a/newlib/libc/ctype/iswblank.c b/newlib/libc/ctype/iswblank.c
index 48205bb17..b10756d5e 100644
--- a/newlib/libc/ctype/iswblank.c
+++ b/newlib/libc/ctype/iswblank.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswblank>>---blank wide character test
+ <<iswblank>>---wide-character blank test
INDEX
iswblank
@@ -48,7 +48,7 @@ DESCRIPTION
are categorized as blank.
RETURNS
-<<iswblank>> returns non-zero if <[c]> is a blank wide character.
+<<iswblank>> returns non-zero if <[c]> is a blank wide-character.
PORTABILITY
<<iswblank>> is C99.
diff --git a/newlib/libc/ctype/iswcntrl.c b/newlib/libc/ctype/iswcntrl.c
index 15ff1fa67..d09295225 100644
--- a/newlib/libc/ctype/iswcntrl.c
+++ b/newlib/libc/ctype/iswcntrl.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswcntrl>>---control wide character test
+ <<iswcntrl>>---wide-character cntrl test
INDEX
iswcntrl
@@ -45,10 +45,10 @@ TRAD_SYNOPSIS
DESCRIPTION
<<iswcntrl>> is a function which classifies wide-character values that
-are categorized as control characters.
+are categorized as a control character.
RETURNS
-<<iswcntrl>> returns non-zero if <[c]> is a control wide character.
+<<iswcntrl>> returns non-zero if <[c]> is a control wide-character.
PORTABILITY
<<iswcntrl>> is C99.
diff --git a/newlib/libc/ctype/iswdigit.c b/newlib/libc/ctype/iswdigit.c
index 8ba5d5f0e..94c74ae9c 100644
--- a/newlib/libc/ctype/iswdigit.c
+++ b/newlib/libc/ctype/iswdigit.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<iswdigit>>---decimal digit wide character test
+ <<iswdigit>>---decimal digit wide-character test
INDEX
iswdigit
@@ -19,7 +19,7 @@ DESCRIPTION
are decimal digits.
RETURNS
-<<iswdigit>> returns non-zero if <[c]> is a decimal digit wide character.
+<<iswdigit>> returns non-zero if <[c]> is a decimal digit wide-character.
PORTABILITY
<<iswdigit>> is C99.
diff --git a/newlib/libc/ctype/iswgraph.c b/newlib/libc/ctype/iswgraph.c
index bb1e519f1..880c66478 100644
--- a/newlib/libc/ctype/iswgraph.c
+++ b/newlib/libc/ctype/iswgraph.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswgraph>>---graphic wide character test
+ <<iswgraph>>---graphic wide-character test
INDEX
iswgraph
@@ -48,7 +48,7 @@ DESCRIPTION
are graphic.
RETURNS
-<<iswgraph>> returns non-zero if <[c]> is a graphic wide character.
+<<iswgraph>> returns non-zero if <[c]> is a graphic wide-character.
PORTABILITY
<<iswgraph>> is C99.
diff --git a/newlib/libc/ctype/iswlower.c b/newlib/libc/ctype/iswlower.c
index 683a9cbb0..d320486a9 100644
--- a/newlib/libc/ctype/iswlower.c
+++ b/newlib/libc/ctype/iswlower.c
@@ -1,7 +1,7 @@
/*
FUNCTION
- <<iswlower>>---lowercase wide character test
+ <<iswlower>>---lower-case wide-character test
INDEX
iswlower
@@ -17,10 +17,10 @@ TRAD_SYNOPSIS
DESCRIPTION
<<iswlower>> is a function which classifies wide-character values that
-have uppercase translations.
+have an upper-case translation.
RETURNS
-<<iswlower>> returns non-zero if <[c]> is a lowercase wide character.
+<<iswlower>> returns non-zero if <[c]> is a lower-case wide-character.
PORTABILITY
<<iswlower>> is C99.
diff --git a/newlib/libc/ctype/iswprint.c b/newlib/libc/ctype/iswprint.c
index 6c0cc553d..f4ec08752 100644
--- a/newlib/libc/ctype/iswprint.c
+++ b/newlib/libc/ctype/iswprint.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswprint>>---printable wide character test
+ <<iswprint>>---printable wide-character test
INDEX
iswprint
@@ -48,7 +48,7 @@ DESCRIPTION
are printable.
RETURNS
-<<iswprint>> returns non-zero if <[c]> is a printable wide character.
+<<iswprint>> returns non-zero if <[c]> is a printable wide-character.
PORTABILITY
<<iswprint>> is C99.
diff --git a/newlib/libc/ctype/iswpunct.c b/newlib/libc/ctype/iswpunct.c
index c6a4eda83..88442b6ca 100644
--- a/newlib/libc/ctype/iswpunct.c
+++ b/newlib/libc/ctype/iswpunct.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswpunct>>---punctuation wide character test
+ <<iswpunct>>---punctuation wide-character test
INDEX
iswpunct
@@ -48,7 +48,7 @@ DESCRIPTION
are punctuation.
RETURNS
-<<iswpunct>> returns non-zero if <[c]> is a punctuation wide character.
+<<iswpunct>> returns non-zero if <[c]> is a punctuation wide-character.
PORTABILITY
<<iswpunct>> is C99.
diff --git a/newlib/libc/ctype/iswspace.c b/newlib/libc/ctype/iswspace.c
index e10a35df6..f4d0a0b91 100644
--- a/newlib/libc/ctype/iswspace.c
+++ b/newlib/libc/ctype/iswspace.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<iswspace>>---whitespace wide character test
+ <<iswspace>>---wide-character space test
INDEX
iswspace
@@ -45,10 +45,10 @@ TRAD_SYNOPSIS
DESCRIPTION
<<iswspace>> is a function which classifies wide-character values that
-are categorized as whitespace.
+are categorized as white-space.
RETURNS
-<<iswspace>> returns non-zero if <[c]> is a whitespace wide character.
+<<iswspace>> returns non-zero if <[c]> is a white-space wide-character.
PORTABILITY
<<iswspace>> is C99.
diff --git a/newlib/libc/ctype/iswupper.c b/newlib/libc/ctype/iswupper.c
index 424d65240..872475da2 100644
--- a/newlib/libc/ctype/iswupper.c
+++ b/newlib/libc/ctype/iswupper.c
@@ -1,7 +1,7 @@
/*
FUNCTION
- <<iswupper>>---uppercase wide character test
+ <<iswupper>>---upper-case wide-character test
INDEX
iswupper
@@ -17,10 +17,10 @@ TRAD_SYNOPSIS
DESCRIPTION
<<iswupper>> is a function which classifies wide-character values that
-have uppercase translations.
+have an upper-case translation.
RETURNS
-<<iswupper>> returns non-zero if <[c]> is a uppercase wide character.
+<<iswupper>> returns non-zero if <[c]> is a upper-case wide-character.
PORTABILITY
<<iswupper>> is C99.
diff --git a/newlib/libc/ctype/iswxdigit.c b/newlib/libc/ctype/iswxdigit.c
index 4cf76fa25..73d8fa445 100644
--- a/newlib/libc/ctype/iswxdigit.c
+++ b/newlib/libc/ctype/iswxdigit.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<iswxdigit>>---hexadecimal digit wide character test
+ <<iswxdigit>>---hexadecimal digit wide-character test
INDEX
iswxdigit
@@ -15,11 +15,11 @@ TRAD_SYNOPSIS
wint_t <[c]>;
DESCRIPTION
-<<iswxdigit>> is a function which classifies wide character values that
+<<iswxdigit>> is a function which classifies wide-character values that
are hexadecimal digits.
RETURNS
-<<iswxdigit>> returns non-zero if <[c]> is a hexadecimal digit wide character.
+<<iswxdigit>> returns non-zero if <[c]> is a hexadecimal digit wide-character.
PORTABILITY
<<iswxdigit>> is C99.
diff --git a/newlib/libc/ctype/tolower.c b/newlib/libc/ctype/tolower.c
index bdd22bfc5..e43fa6c9d 100644
--- a/newlib/libc/ctype/tolower.c
+++ b/newlib/libc/ctype/tolower.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<tolower>>---translate characters to lowercase
+ <<tolower>>---translate characters to lower case
INDEX
tolower
@@ -19,8 +19,8 @@ TRAD_SYNOPSIS
DESCRIPTION
-<<tolower>> is a macro which converts uppercase characters to lowercase,
-leaving all other characters unchanged. It is only defined when
+<<tolower>> is a macro which converts upper-case characters to lower
+case, leaving all other characters unchanged. It is only defined when
<[c]> is an integer in the range <<EOF>> to <<255>>.
You can use a compiled subroutine instead of the macro definition by
@@ -30,10 +30,10 @@ undefining this macro using `<<#undef tolower>>'.
only be used when <[c]> is known to be an uppercase character (<<A>>--<<Z>>).
RETURNS
-<<tolower>> returns the lowercase equivalent of <[c]> when it is a
+<<tolower>> returns the lower-case equivalent of <[c]> when it is a
character between <<A>> and <<Z>>, and <[c]> otherwise.
-<<_tolower>> returns the lowercase equivalent of <[c]> when it is a
+<<_tolower>> returns the lower-case equivalent of <[c]> when it is a
character between <<A>> and <<Z>>. If <[c]> is not one of these
characters, the behaviour of <<_tolower>> is undefined.
diff --git a/newlib/libc/ctype/toupper.c b/newlib/libc/ctype/toupper.c
index 26f64b6dc..7977beb79 100644
--- a/newlib/libc/ctype/toupper.c
+++ b/newlib/libc/ctype/toupper.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<toupper>>---translate characters to uppercase
+ <<toupper>>---translate characters to upper case
INDEX
toupper
@@ -19,8 +19,8 @@ TRAD_SYNOPSIS
DESCRIPTION
-<<toupper>> is a macro which converts lowercase characters to uppercase,
-leaving all other characters unchanged. It is only defined when
+<<toupper>> is a macro which converts lower-case characters to upper
+case, leaving all other characters unchanged. It is only defined when
<[c]> is an integer in the range <<EOF>> to <<255>>.
You can use a compiled subroutine instead of the macro definition by
@@ -30,10 +30,10 @@ undefining this macro using `<<#undef toupper>>'.
only be used when <[c]> is known to be a lowercase character (<<a>>--<<z>>).
RETURNS
-<<toupper>> returns the uppercase equivalent of <[c]> when it is a
+<<toupper>> returns the upper-case equivalent of <[c]> when it is a
character between <<a>> and <<z>>, and <[c]> otherwise.
-<<_toupper>> returns the uppercase equivalent of <[c]> when it is a
+<<_toupper>> returns the upper-case equivalent of <[c]> when it is a
character between <<a>> and <<z>>. If <[c]> is not one of these
characters, the behaviour of <<_toupper>> is undefined.
diff --git a/newlib/libc/ctype/towctrans.c b/newlib/libc/ctype/towctrans.c
index 416a491d3..cf2162670 100644
--- a/newlib/libc/ctype/towctrans.c
+++ b/newlib/libc/ctype/towctrans.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<towctrans>>---extensible wide-character translation
+ <<towctrans>>---extensible wide-character case mapping
INDEX
towctrans
@@ -46,7 +46,7 @@ TRAD_SYNOPSIS
DESCRIPTION
-<<towctrans>> is a function which converts wide characters based on
+<<towctrans>> is a function which converts wide-characters based on
a specified translation type <[w]>. If the translation type is
invalid or cannot be applied to the current character, no change
to the character is made.
diff --git a/newlib/libc/ctype/towlower.c b/newlib/libc/ctype/towlower.c
index 89873c2f1..5c36a31a6 100644
--- a/newlib/libc/ctype/towlower.c
+++ b/newlib/libc/ctype/towlower.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<towlower>>---translate wide characters to lowercase
+ <<towlower>>---translate wide-characters to lower case
INDEX
towlower
@@ -45,12 +45,12 @@ TRAD_SYNOPSIS
DESCRIPTION
-<<towlower>> is a function which converts uppercase wide characters to
-lowercase, leaving all other characters unchanged.
+<<towlower>> is a function which converts upper-case wide-characters to lower
+case, leaving all other characters unchanged.
RETURNS
-<<towlower>> returns the lowercase equivalent of <[c]> when it is a
-uppercase wide character; otherwise, it returns the input character.
+<<towlower>> returns the lower-case equivalent of <[c]> when it is a
+upper-case wide-character, otherwise, it returns the input character.
PORTABILITY
<<towlower>> is C99.
diff --git a/newlib/libc/ctype/towupper.c b/newlib/libc/ctype/towupper.c
index ec6c4ffa4..530aebf3a 100644
--- a/newlib/libc/ctype/towupper.c
+++ b/newlib/libc/ctype/towupper.c
@@ -29,7 +29,7 @@
/*
FUNCTION
- <<towupper>>---translate wide characters to uppercase
+ <<towupper>>---translate wide-characters to upper case
INDEX
towupper
@@ -45,12 +45,12 @@ TRAD_SYNOPSIS
DESCRIPTION
-<<towupper>> is a function which converts lowercase wide characters to
-uppercase, leaving all other characters unchanged.
+<<towupper>> is a function which converts lower-case wide-characters to upper
+case, leaving all other characters unchanged.
RETURNS
-<<towupper>> returns the uppercase equivalent of <[c]> when it is a
-lowercase wide character, otherwise, it returns the input character.
+<<towupper>> returns the upper-case equivalent of <[c]> when it is a
+lower-case wide-character, otherwise, it returns the input character.
PORTABILITY
<<towupper>> is C99.
diff --git a/newlib/libc/include/_syslist.h b/newlib/libc/include/_syslist.h
index 0bf76e108..fa552fb60 100644
--- a/newlib/libc/include/_syslist.h
+++ b/newlib/libc/include/_syslist.h
@@ -2,7 +2,6 @@
and only provide C names, so that we end up in violation of ANSI */
#ifndef __SYSLIST_H
#define __SYSLIST_H
-
#ifdef MISSING_SYSCALL_NAMES
#define _close close
#define _execve execve
@@ -22,17 +21,9 @@
#define _unlink unlink
#define _wait wait
#define _write write
-#endif /* MISSING_SYSCALL_NAMES */
-
-#if defined MISSING_SYSCALL_NAMES || !defined HAVE_OPENDIR
-/* If the system call interface is missing opendir, readdir, and
- closedir, there is an implementation of these functions in
- libc/posix that is implemented using open, getdents, and close.
- Note, these functions are currently not in the libc/syscalls
- directory. */
+/* functions not yet sysfaked */
#define _opendir opendir
#define _readdir readdir
#define _closedir closedir
-#endif /* MISSING_SYSCALL_NAMES || !HAVE_OPENDIR */
-
-#endif /* !__SYSLIST_H_ */
+#endif
+#endif
diff --git a/newlib/libc/include/ctype.h b/newlib/libc/include/ctype.h
index c1ace5077..a3581df1b 100644
--- a/newlib/libc/include/ctype.h
+++ b/newlib/libc/include/ctype.h
@@ -36,23 +36,20 @@ int _EXFUN(_toupper, (int __c));
#define _X 0100
#define _B 0200
-extern __IMPORT _CONST char *__ctype_ptr;
-extern __IMPORT _CONST char _ctype_[]; /* For backward compatibility. */
+extern __IMPORT _CONST char _ctype_[];
#ifndef __cplusplus
-#define isalpha(c) ((__ctype_ptr)[(unsigned)(c)]&(_U|_L))
-#define isupper(c) ((__ctype_ptr)[(unsigned)(c)]&_U)
-#define islower(c) ((__ctype_ptr)[(unsigned)(c)]&_L)
-#define isdigit(c) ((__ctype_ptr)[(unsigned)(c)]&_N)
-#define isxdigit(c) ((__ctype_ptr)[(unsigned)(c)]&(_X|_N))
-#define isspace(c) ((__ctype_ptr)[(unsigned)(c)]&_S)
-#define ispunct(c) ((__ctype_ptr)[(unsigned)(c)]&_P)
-#define isalnum(c) ((__ctype_ptr)[(unsigned)(c)]&(_U|_L|_N))
-#define isprint(c) ((__ctype_ptr)[(unsigned)(c)]&(_P|_U|_L|_N|_B))
-#define isgraph(c) ((__ctype_ptr)[(unsigned)(c)]&(_P|_U|_L|_N))
-#define iscntrl(c) ((__ctype_ptr)[(unsigned)(c)]&_C)
-
-
+#define isalpha(c) ((_ctype_+1)[(unsigned)(c)]&(_U|_L))
+#define isupper(c) ((_ctype_+1)[(unsigned)(c)]&_U)
+#define islower(c) ((_ctype_+1)[(unsigned)(c)]&_L)
+#define isdigit(c) ((_ctype_+1)[(unsigned)(c)]&_N)
+#define isxdigit(c) ((_ctype_+1)[(unsigned)(c)]&(_X|_N))
+#define isspace(c) ((_ctype_+1)[(unsigned)(c)]&_S)
+#define ispunct(c) ((_ctype_+1)[(unsigned)(c)]&_P)
+#define isalnum(c) ((_ctype_+1)[(unsigned)(c)]&(_U|_L|_N))
+#define isprint(c) ((_ctype_+1)[(unsigned)(c)]&(_P|_U|_L|_N|_B))
+#define isgraph(c) ((_ctype_+1)[(unsigned)(c)]&(_P|_U|_L|_N))
+#define iscntrl(c) ((_ctype_+1)[(unsigned)(c)]&_C)
/* Non-gcc versions will get the library versions, and will be
slightly slower */
#ifdef __GNUC__
diff --git a/newlib/libc/include/getopt.h b/newlib/libc/include/getopt.h
deleted file mode 100644
index 7179298ae..000000000
--- a/newlib/libc/include/getopt.h
+++ /dev/null
@@ -1,136 +0,0 @@
-/****************************************************************************
-
-getopt.h - Read command line options
-
-AUTHOR: Gregory Pietsch
-CREATED Thu Jan 09 22:37:00 1997
-
-DESCRIPTION:
-
-The getopt() function parses the command line arguments. Its arguments argc
-and argv are the argument count and array as passed to the main() function
-on program invocation. The argument optstring is a list of available option
-characters. If such a character is followed by a colon (`:'), the option
-takes an argument, which is placed in optarg. If such a character is
-followed by two colons, the option takes an optional argument, which is
-placed in optarg. If the option does not take an argument, optarg is NULL.
-
-The external variable optind is the index of the next array element of argv
-to be processed; it communicates from one call to the next which element to
-process.
-
-The getopt_long() function works like getopt() except that it also accepts
-long options started by two dashes `--'. If these take values, it is either
-in the form
-
---arg=value
-
- or
-
---arg value
-
-It takes the additional arguments longopts which is a pointer to the first
-element of an array of type GETOPT_LONG_OPTION_T, defined below. The last
-element of the array has to be filled with NULL for the name field.
-
-The longind pointer points to the index of the current long option relative
-to longopts if it is non-NULL.
-
-The getopt() function returns the option character if the option was found
-successfully, `:' if there was a missing parameter for one of the options,
-`?' for an unknown option character, and EOF for the end of the option list.
-
-The getopt_long() function's return value is described below.
-
-The function getopt_long_only() is identical to getopt_long(), except that a
-plus sign `+' can introduce long options as well as `--'.
-
-Describe how to deal with options that follow non-option ARGV-elements.
-
-If the caller did not specify anything, the default is REQUIRE_ORDER if the
-environment variable POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
-REQUIRE_ORDER means don't recognize them as options; stop option processing
-when the first non-option is seen. This is what Unix does. This mode of
-operation is selected by either setting the environment variable
-POSIXLY_CORRECT, or using `+' as the first character of the optstring
-parameter.
-
-PERMUTE is the default. We permute the contents of ARGV as we scan, so that
-eventually all the non-options are at the end. This allows options to be
-given in any order, even with programs that were not written to expect this.
-
-RETURN_IN_ORDER is an option available to programs that were written to
-expect options and other ARGV-elements in any order and that care about the
-ordering of the two. We describe each non-option ARGV-element as if it were
-the argument of an option with character code 1. Using `-' as the first
-character of the optstring parameter selects this mode of operation.
-
-The special argument `--' forces an end of option-scanning regardless of the
-value of `ordering'. In the case of RETURN_IN_ORDER, only `--' can cause
-getopt() and friends to return EOF with optind != argc.
-
-COPYRIGHT NOTICE AND DISCLAIMER:
-
-Copyright (C) 1997 Gregory Pietsch
-
-This file and the accompanying getopt.c implementation file are hereby
-placed in the public domain without restrictions. Just give the author
-credit, don't claim you wrote it or prevent anyone else from using it.
-
-Gregory Pietsch's current e-mail address:
-gpietsch@comcast.net
-****************************************************************************/
-
-#ifndef GETOPT_H
-#define GETOPT_H
-
-#include <_ansi.h>
-
-/* include files needed by this include file */
-
-/* macros defined by this include file */
-#define NO_ARG 0
-#define REQUIRED_ARG 1
-#define OPTIONAL_ARG 2
-
-/* types defined by this include file */
-
-struct option
-{
- char *name; /* the name of the long option */
- int has_arg; /* one of the above macros */
- int *flag; /* determines if getopt_long() returns a
- * value for a long option; if it is
- * non-NULL, 0 is returned as a function
- * value and the value of val is stored in
- * the area pointed to by flag. Otherwise,
- * val is returned. */
- int val; /* determines the value to return if flag is
- * NULL. */
-};
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
- /* externally-defined variables */
- extern char *optarg;
- extern int optind;
- extern int opterr;
- extern int optopt;
-
- /* function prototypes */
- int _EXFUN (getopt, (int __argc, char *const __argv[], const char *__optstring));
- int _EXFUN (getopt_long, (int __argc, char *const __argv[], const char *__shortopts, const struct option *__longopts, int *__longind));
- int _EXFUN (getopt_long_only, (int __argc, char *const __argv[], const char *__shortopts, const struct option *__longopts, int *__longind));
-
-#ifdef __cplusplus
-};
-
-#endif
-
-#endif /* GETOPT_H */
-
-/* END OF FILE getopt.h */
diff --git a/newlib/libc/include/ieeefp.h b/newlib/libc/include/ieeefp.h
index e08fd0885..78bb5bf62 100644
--- a/newlib/libc/include/ieeefp.h
+++ b/newlib/libc/include/ieeefp.h
@@ -5,8 +5,6 @@
#include <machine/ieeefp.h>
-_BEGIN_STD_C
-
/* FIXME FIXME FIXME:
Neither of __ieee_{float,double}_shape_tape seem to be used anywhere
except in libm/test. If that is the case, please delete these from here.
@@ -184,9 +182,6 @@ typedef int fp_rdi;
fp_rdi _EXFUN(fpgetroundtoi,(void));
fp_rdi _EXFUN(fpsetroundtoi,(fp_rdi));
-#undef isnan
-#undef isinf
-
int _EXFUN(isnan, (double));
int _EXFUN(isinf, (double));
int _EXFUN(finite, (double));
@@ -243,6 +238,4 @@ int _EXFUN(finitef, (float));
#endif /* _DOUBLE_IS_32BITS */
-_END_STD_C
-
#endif /* _IEEE_FP_H_ */
diff --git a/newlib/libc/include/inttypes.h b/newlib/libc/include/inttypes.h
deleted file mode 100644
index 0bcbd31c0..000000000
--- a/newlib/libc/include/inttypes.h
+++ /dev/null
@@ -1,290 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 by
- * Ralf Corsepius, Ulm/Germany. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-/**
- * @file inttypes.h
- */
-
-#ifndef _INTTYPES_H
-#define _INTTYPES_H
-
-#include <stdint.h>
-#define __need_wchar_t
-#include <stddef.h>
-
-#define __STRINGIFY(a) #a
-
-/* 8-bit types */
-#define __PRI8(x) __STRINGIFY(x)
-#define __SCN8(x) __STRINGIFY(hh##x)
-
-
-#define PRId8 __PRI8(d)
-#define PRIi8 __PRI8(i)
-#define PRIo8 __PRI8(o)
-#define PRIu8 __PRI8(u)
-#define PRIx8 __PRI8(x)
-#define PRIX8 __PRI8(X)
-
-#define SCNd8 __SCN8(d)
-#define SCNi8 __SCN8(i)
-#define SCNo8 __SCN8(o)
-#define SCNu8 __SCN8(u)
-#define SCNx8 __SCN8(x)
-
-
-#define PRIdLEAST8 __PRI8(d)
-#define PRIiLEAST8 __PRI8(i)
-#define PRIoLEAST8 __PRI8(o)
-#define PRIuLEAST8 __PRI8(u)
-#define PRIxLEAST8 __PRI8(x)
-#define PRIXLEAST8 __PRI8(X)
-
-#define SCNdLEAST8 __SCN8(d)
-#define SCNiLEAST8 __SCN8(i)
-#define SCNoLEAST8 __SCN8(o)
-#define SCNuLEAST8 __SCN8(u)
-#define SCNxLEAST8 __SCN8(x)
-
-
-#define PRIdFAST8 __PRI8(d)
-#define PRIiFAST8 __PRI8(i)
-#define PRIoFAST8 __PRI8(o)
-#define PRIuFAST8 __PRI8(u)
-#define PRIxFAST8 __PRI8(x)
-#define PRIXFAST8 __PRI8(X)
-
-#define SCNdFAST8 __SCN8(d)
-#define SCNiFAST8 __SCN8(i)
-#define SCNoFAST8 __SCN8(o)
-#define SCNuFAST8 __SCN8(u)
-#define SCNxFAST8 __SCN8(x)
-
-/* 16-bit types */
-#define __PRI16(x) __STRINGIFY(x)
-#define __SCN16(x) __STRINGIFY(h##x)
-
-
-#define PRId16 __PRI16(d)
-#define PRIi16 __PRI16(i)
-#define PRIo16 __PRI16(o)
-#define PRIu16 __PRI16(u)
-#define PRIx16 __PRI16(x)
-#define PRIX16 __PRI16(X)
-
-#define SCNd16 __SCN16(d)
-#define SCNi16 __SCN16(i)
-#define SCNo16 __SCN16(o)
-#define SCNu16 __SCN16(u)
-#define SCNx16 __SCN16(x)
-
-
-#define PRIdLEAST16 __PRI16(d)
-#define PRIiLEAST16 __PRI16(i)
-#define PRIoLEAST16 __PRI16(o)
-#define PRIuLEAST16 __PRI16(u)
-#define PRIxLEAST16 __PRI16(x)
-#define PRIXLEAST16 __PRI16(X)
-
-#define SCNdLEAST16 __SCN16(d)
-#define SCNiLEAST16 __SCN16(i)
-#define SCNoLEAST16 __SCN16(o)
-#define SCNuLEAST16 __SCN16(u)
-#define SCNxLEAST16 __SCN16(x)
-
-
-#define PRIdFAST16 __PRI16(d)
-#define PRIiFAST16 __PRI16(i)
-#define PRIoFAST16 __PRI16(o)
-#define PRIuFAST16 __PRI16(u)
-#define PRIxFAST16 __PRI16(x)
-#define PRIXFAST16 __PRI16(X)
-
-#define SCNdFAST16 __SCN16(d)
-#define SCNiFAST16 __SCN16(i)
-#define SCNoFAST16 __SCN16(o)
-#define SCNuFAST16 __SCN16(u)
-#define SCNxFAST16 __SCN16(x)
-
-/* 32-bit types */
-#if __have_long32
-#define __PRI32(x) __STRINGIFY(l##x)
-#define __SCN32(x) __STRINGIFY(l##x)
-#else
-#define __PRI32(x) __STRINGIFY(x)
-#define __SCN32(x) __STRINGIFY(x)
-#endif
-
-#define PRId32 __PRI32(d)
-#define PRIi32 __PRI32(i)
-#define PRIo32 __PRI32(o)
-#define PRIu32 __PRI32(u)
-#define PRIx32 __PRI32(x)
-#define PRIX32 __PRI32(X)
-
-#define SCNd32 __SCN32(d)
-#define SCNi32 __SCN32(i)
-#define SCNo32 __SCN32(o)
-#define SCNu32 __SCN32(u)
-#define SCNx32 __SCN32(x)
-
-
-#define PRIdLEAST32 __PRI32(d)
-#define PRIiLEAST32 __PRI32(i)
-#define PRIoLEAST32 __PRI32(o)
-#define PRIuLEAST32 __PRI32(u)
-#define PRIxLEAST32 __PRI32(x)
-#define PRIXLEAST32 __PRI32(X)
-
-#define SCNdLEAST32 __SCN32(d)
-#define SCNiLEAST32 __SCN32(i)
-#define SCNoLEAST32 __SCN32(o)
-#define SCNuLEAST32 __SCN32(u)
-#define SCNxLEAST32 __SCN32(x)
-
-
-#define PRIdFAST32 __PRI32(d)
-#define PRIiFAST32 __PRI32(i)
-#define PRIoFAST32 __PRI32(o)
-#define PRIuFAST32 __PRI32(u)
-#define PRIxFAST32 __PRI32(x)
-#define PRIXFAST32 __PRI32(X)
-
-#define SCNdFAST32 __SCN32(d)
-#define SCNiFAST32 __SCN32(i)
-#define SCNoFAST32 __SCN32(o)
-#define SCNuFAST32 __SCN32(u)
-#define SCNxFAST32 __SCN32(x)
-
-
-/* 64-bit types */
-#if __have_longlong64
-#define __PRI64(x) __STRINGIFY(ll##x)
-#define __SCN64(x) __STRINGIFY(ll##x)
-#elif __have_long64
-#define __PRI64(x) __STRINGIFY(l##x)
-#define __SCN64(x) __STRINGIFY(l##x)
-#else
-#define __PRI64(x) __STRINGIFY(x)
-#define __SCN64(x) __STRINGIFY(x)
-#endif
-
-#define PRId64 __PRI64(d)
-#define PRIi64 __PRI64(i)
-#define PRIo64 __PRI64(o)
-#define PRIu64 __PRI64(u)
-#define PRIx64 __PRI64(x)
-#define PRIX64 __PRI64(X)
-
-#define SCNd64 __SCN64(d)
-#define SCNi64 __SCN64(i)
-#define SCNo64 __SCN64(o)
-#define SCNu64 __SCN64(u)
-#define SCNx64 __SCN64(x)
-
-#if __int64_t_defined
-#define PRIdLEAST64 __PRI64(d)
-#define PRIiLEAST64 __PRI64(i)
-#define PRIoLEAST64 __PRI64(o)
-#define PRIuLEAST64 __PRI64(u)
-#define PRIxLEAST64 __PRI64(x)
-#define PRIXLEAST64 __PRI64(X)
-
-#define SCNdLEAST64 __SCN64(d)
-#define SCNiLEAST64 __SCN64(i)
-#define SCNoLEAST64 __SCN64(o)
-#define SCNuLEAST64 __SCN64(u)
-#define SCNxLEAST64 __SCN64(x)
-
-
-#define PRIdFAST64 __PRI64(d)
-#define PRIiFAST64 __PRI64(i)
-#define PRIoFAST64 __PRI64(o)
-#define PRIuFAST64 __PRI64(u)
-#define PRIxFAST64 __PRI64(x)
-#define PRIXFAST64 __PRI64(X)
-
-#define SCNdFAST64 __SCN64(d)
-#define SCNiFAST64 __SCN64(i)
-#define SCNoFAST64 __SCN64(o)
-#define SCNuFAST64 __SCN64(u)
-#define SCNxFAST64 __SCN64(x)
-#endif
-
-/* max-bit types */
-#if __have_longlong64
-#define __PRIMAX(x) __STRINGIFY(ll##x)
-#define __SCNMAX(x) __STRINGIFY(ll##x)
-#elif __have_long64
-#define __PRIMAX(x) __STRINGIFY(l##x)
-#define __SCNMAX(x) __STRINGIFY(l##x)
-#else
-#define __PRIMAX(x) __STRINGIFY(x)
-#define __SCNMAX(x) __STRINGIFY(x)
-#endif
-
-#define PRIdMAX __PRIMAX(d)
-#define PRIiMAX __PRIMAX(i)
-#define PRIoMAX __PRIMAX(o)
-#define PRIuMAX __PRIMAX(u)
-#define PRIxMAX __PRIMAX(x)
-#define PRIXMAX __PRIMAX(X)
-
-#define SCNdMAX __SCNMAX(d)
-#define SCNiMAX __SCNMAX(i)
-#define SCNoMAX __SCNMAX(o)
-#define SCNuMAX __SCNMAX(u)
-#define SCNxMAX __SCNMAX(x)
-
-/* ptr types */
-#if __have_longlong64
-#define __PRIPTR(x) __STRINGIFY(ll##x)
-#define __SCNPTR(x) __STRINGIFY(ll##x)
-#elif __have_long64
-#define __PRIPTR(x) __STRINGIFY(l##x)
-#define __SCNPTR(x) __STRINGIFY(l##x)
-#else
-#define __PRIPTR(x) __STRINGIFY(x)
-#define __SCNPTR(x) __STRINGIFY(x)
-#endif
-
-#define PRIdPTR __PRIPTR(d)
-#define PRIiPTR __PRIPTR(i)
-#define PRIoPTR __PRIPTR(o)
-#define PRIuPTR __PRIPTR(u)
-#define PRIxPTR __PRIPTR(x)
-#define PRIXPTR __PRIPTR(X)
-
-#define SCNdPTR __SCNPTR(d)
-#define SCNiPTR __SCNPTR(i)
-#define SCNoPTR __SCNPTR(o)
-#define SCNuPTR __SCNPTR(u)
-#define SCNxPTR __SCNPTR(x)
-
-
-typedef struct {
- intmax_t quot;
- intmax_t rem;
-} imaxdiv_t;
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern intmax_t imaxabs(intmax_t j);
-extern imaxdiv_t imaxdiv(intmax_t numer, intmax_t denomer);
-extern intmax_t strtoimax(const char *__restrict, char **__restrict, int);
-extern uintmax_t strtoumax(const char *__restrict, char **__restrict, int);
-extern intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int);
-extern uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/newlib/libc/include/libgen.h b/newlib/libc/include/libgen.h
deleted file mode 100644
index abfab0e5c..000000000
--- a/newlib/libc/include/libgen.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * libgen.h - defined by XPG4
- */
-
-#ifndef _LIBGEN_H_
-#define _LIBGEN_H_
-
-#include "_ansi.h"
-#include <sys/reent.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-char *_EXFUN(basename, (char *));
-char *_EXFUN(dirname, (char *));
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _LIBGEN_H_ */
-
diff --git a/newlib/libc/include/machine/_types.h b/newlib/libc/include/machine/_types.h
deleted file mode 100644
index 450ad4a6b..000000000
--- a/newlib/libc/include/machine/_types.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * $Id$
- */
-
-#ifndef _MACHINE__TYPES_H
-#define _MACHINE__TYPES_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Guess on types by examining *_MIN / *_MAX defines.
- */
-#if defined(__GNUC__) && (__GNUC__ >= 3 ) \
- && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ > 2 )
-/* GCC >= 3.3.0 has __<val>__ implicitly defined. */
-#define __EXP(x) __##x##__
-#else
-/* Fall back to POSIX versions from <limits.h> */
-#define __EXP(x) x
-#include <limits.h>
-#endif
-
-#if __EXP(SCHAR_MAX) == 0x7f
-typedef signed char __int8_t ;
-typedef unsigned char __uint8_t ;
-#define ___int8_t_defined 1
-#endif
-
-#if __EXP(INT_MAX) == 0x7fff
-typedef signed int __int16_t;
-typedef unsigned int __uint16_t;
-#define ___int16_t_defined 1
-#elif __EXP(SHRT_MAX) == 0x7fff
-typedef signed short __int16_t;
-typedef unsigned short __uint16_t;
-#define ___int16_t_defined 1
-#elif __EXP(SCHAR_MAX) == 0x7fff
-typedef signed char __int16_t;
-typedef unsigned char __uint16_t;
-#define ___int16_t_defined 1
-#endif
-
-#if ___int16_t_defined
-typedef __int16_t __int_least16_t;
-typedef __uint16_t __uint_least16_t;
-#define ___int_least16_t_defined 1
-
-#if !___int8_t_defined
-typedef __int16_t __int_least8_t;
-typedef __uint16_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#endif
-#endif
-
-#if __EXP(INT_MAX) == 0x7fffffffL
-typedef signed int __int32_t;
-typedef unsigned int __uint32_t;
-#define ___int32_t_defined 1
-#elif __EXP(LONG_MAX) == 0x7fffffffL
-typedef signed long __int32_t;
-typedef unsigned long __uint32_t;
-#define ___int32_t_defined 1
-#elif __EXP(SHRT_MAX) == 0x7fffffffL
-typedef signed short __int32_t;
-typedef unsigned short __uint32_t;
-#define ___int32_t_defined 1
-#elif __EXP(SCHAR_MAX) == 0x7fffffffL
-typedef signed char __int32_t;
-typedef unsigned char __uint32_t;
-#define ___int32_t_defined 1
-#endif
-
-#if ___int32_t_defined
-typedef __int32_t __int_least32_t;
-typedef __uint32_t __uint_least32_t;
-#define ___int_least32_t_defined 1
-
-#if !___int8_t_defined
-typedef __int32_t __int_least8_t;
-typedef __uint32_t __uint_least8_t;
-#define ___int_least8_t_defined 1
-#endif
-#if !___int16_t_defined
-typedef __int32_t __int_least16_t;
-typedef __uint32_t __uint_least16_t;
-#define ___int_least16_t_defined 1
-#endif
-#endif
-
-#if __EXP(LONG_MAX) > 0x7fffffff
-typedef signed long __int64_t;
-typedef unsigned long __uint64_t;
-#define ___int64_t_defined 1
-
-/* GCC has __LONG_LONG_MAX__ */
-#elif defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff)
-typedef signed long long __int64_t;
-typedef unsigned long long __uint64_t;
-#define ___int64_t_defined 1
-
-/* POSIX mandates LLONG_MAX in <limits.h> */
-#elif defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff)
-typedef signed long long __int64_t;
-typedef unsigned long long __uint64_t;
-#define ___int64_t_defined 1
-
-#elif __EXP(INT_MAX) > 0x7fffffff
-typedef signed int __int64_t;
-typedef unsigned int __uint64_t;
-#define ___int64_t_defined 1
-#endif
-
-#undef __EXP
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _MACHINE__TYPES_H */
diff --git a/newlib/libc/include/machine/ieeefp.h b/newlib/libc/include/machine/ieeefp.h
index dcd6cdf3a..fd54e5000 100644
--- a/newlib/libc/include/machine/ieeefp.h
+++ b/newlib/libc/include/machine/ieeefp.h
@@ -214,10 +214,6 @@
#endif
#endif
-#ifdef __CRX__
-#define __IEEE_LITTLE_ENDIAN
-#endif
-
#ifdef __fr30__
#define __IEEE_BIG_ENDIAN
#endif
@@ -226,10 +222,6 @@
#define __IEEE_BIG_ENDIAN
#endif
-#ifdef __mt__
-#define __IEEE_BIG_ENDIAN
-#endif
-
#ifdef __frv__
#define __IEEE_BIG_ENDIAN
#endif
@@ -269,15 +261,6 @@
#endif /* __ARMEL__ */
#endif /* __MAVERICK__ */
-#ifdef __m32c__
-#define __IEEE_LITTLE_ENDIAN
-#define __SMALL_BITFIELDS
-#endif
-
-#ifdef __CRIS__
-#define __IEEE_LITTLE_ENDIAN
-#endif
-
#ifndef __IEEE_BIG_ENDIAN
#ifndef __IEEE_LITTLE_ENDIAN
#error Endianess not declared!!
diff --git a/newlib/libc/include/machine/setjmp.h b/newlib/libc/include/machine/setjmp.h
index b74808f9c..326b743d0 100644
--- a/newlib/libc/include/machine/setjmp.h
+++ b/newlib/libc/include/machine/setjmp.h
@@ -9,10 +9,6 @@ _BEGIN_STD_C
#define _JBLEN 23
#endif
-#if defined(__AVR__)
-#define _JBLEN 24
-#endif
-
#ifdef __sparc__
/*
* onsstack,sigmask,sp,pc,npc,psr,g1,o0,wbcnt (sigcontext).
@@ -178,10 +174,6 @@ _BEGIN_STD_C
#define _JBTYPE double
#endif
-#ifdef __CRX__
-#define _JBLEN 9
-#endif
-
#ifdef __fr30__
#define _JBLEN 10
#endif
@@ -200,28 +192,11 @@ _BEGIN_STD_C
#define _JBTYPE unsigned long
#endif
-#ifdef __mt__
-#define _JBLEN 16
-#endif
-
#ifdef __xstormy16__
/* 4 GPRs plus SP plus PC. */
#define _JBLEN 8
#endif
-#ifdef __CRIS__
-#define _JBLEN 18
-#endif
-
-#ifdef __m32c__
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
-#define _JBLEN (22/2)
-#else
-#define _JBLEN (34/2)
-#endif
-#define _JBTYPE unsigned short
-#endif /* __m32c__ */
-
#ifdef _JBLEN
#ifdef _JBTYPE
typedef _JBTYPE jmp_buf[_JBLEN];
@@ -249,27 +224,6 @@ typedef int sigjmp_buf[_JBLEN+2];
# define _CYGWIN_WORKING_SIGSETJMP
#endif
-#if defined(__GNUC__)
-
-#define sigsetjmp(env, savemask) \
- ({ \
- sigjmp_buf *_sjbuf = &(env); \
- ((*_sjbuf)[_SAVEMASK] = savemask,\
- sigprocmask (SIG_SETMASK, 0, (sigset_t *)((*_sjbuf) + _SIGMASK)),\
- setjmp (*_sjbuf)); \
- })
-
-#define siglongjmp(env, val) \
- ({ \
- sigjmp_buf *_sjbuf = &(env); \
- ((((*_sjbuf)[_SAVEMASK]) ? \
- sigprocmask (SIG_SETMASK, (sigset_t *)((*_sjbuf) + _SIGMASK), 0)\
- : 0), \
- longjmp (*_sjbuf, val)); \
- })
-
-#else /* !__GNUC__ */
-
#define sigsetjmp(env, savemask) ((env)[_SAVEMASK] = savemask,\
sigprocmask (SIG_SETMASK, 0, (sigset_t *) ((env) + _SIGMASK)),\
setjmp (env))
@@ -278,8 +232,6 @@ typedef int sigjmp_buf[_JBLEN+2];
sigprocmask (SIG_SETMASK, (sigset_t *) ((env) + _SIGMASK), 0):0),\
longjmp (env, val))
-#endif
-
#ifdef __cplusplus
}
#endif
diff --git a/newlib/libc/include/machine/types.h b/newlib/libc/include/machine/types.h
index 40a75faa5..b573336b7 100644
--- a/newlib/libc/include/machine/types.h
+++ b/newlib/libc/include/machine/types.h
@@ -6,8 +6,25 @@
* closely match the types defined in the BSD machine/types.h.
* This is needed to let the RTEMS/BSD TCP/IP stack compile.
*/
+
#if defined(__rtems__)
-#include <machine/_types.h>
+typedef signed long long int64_t;
+#if defined( __h8300__)
+typedef signed long int32_t;
+#else
+typedef signed int int32_t;
+#endif
+typedef signed short int16_t;
+typedef signed char int8_t;
+
+typedef unsigned long long u_int64_t;
+#if defined( __h8300__)
+typedef unsigned long u_int32_t;
+#else
+typedef unsigned int u_int32_t;
+#endif
+typedef unsigned short u_int16_t;
+typedef unsigned char u_int8_t;
#endif
#define _CLOCK_T_ unsigned long /* clock() */
diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h
index 41ce752b3..dbbae0048 100644
--- a/newlib/libc/include/math.h
+++ b/newlib/libc/include/math.h
@@ -1,3 +1,4 @@
+/* math.h -- Definitions for the math floating point package. */
#ifndef _MATH_H_
#define _MATH_H_
@@ -8,65 +9,25 @@
_BEGIN_STD_C
+#ifndef HUGE_VAL
+
+/* Define HUGE_VAL as infinity, unless HUGE_VAL is already defined
+ (which might have been done by something like math-68881.h). */
+
union __dmath
{
__ULong i[2];
double d;
};
-
-union __fmath
-{
- __ULong i[1];
- float f;
-};
-
-union __ldmath
-{
- __ULong i[4];
- _LONG_DOUBLE ld;
-};
-
-#if defined(__GNUC__) && \
- ( (__GNUC__ >= 4) || \
- ( (__GNUC__ >= 3) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ >= 3) ) )
-
- /* gcc >= 3.3 implicitly defines builtins for HUGE_VALx values. */
- #ifndef HUGE_VAL
- #define HUGE_VAL (__builtin_huge_val())
- #endif
+/* Declare this as an array without bounds so that no matter what small data
+ support a port and/or library has, this reference will be via the general
+ method for accessing globals. */
+extern __IMPORT const union __dmath __infinity[];
- #ifndef HUGE_VALF
- #define HUGE_VALF (__builtin_huge_valf())
- #endif
+#define HUGE_VAL (__infinity[0].d)
- #ifndef HUGE_VALL
- #define HUGE_VALL (__builtin_huge_vall())
- #endif
-
-#else /* !gcc >= 3.3 */
-
- /* No builtins. Use floating-point unions instead. Declare as an array
- without bounds so no matter what small data support a port and/or
- library has, the reference will be via the general method for accessing
- globals. */
-
- #ifndef HUGE_VAL
- extern __IMPORT const union __dmath __infinity[];
- #define HUGE_VAL (__infinity[0].d)
- #endif
-
- #ifndef HUGE_VALF
- extern __IMPORT const union __fmath __infinityf[];
- #define HUGE_VALF (__infinityf[0].f)
- #endif
-
- #ifndef HUGE_VALL
- extern __IMPORT const union __ldmath __infinityld[];
- #define HUGE_VALL (__infinityld[0].ld)
- #endif
-
-#endif /* !gcc >= 3.3 */
+#endif /* ! defined (HUGE_VAL) */
/* Reentrant ANSI C functions. */
@@ -118,10 +79,6 @@ typedef double double_t;
#define FP_SUBNORMAL 3
#define FP_NORMAL 4
-extern int __isinff (float x);
-extern int __isinfd (double x);
-extern int __isnanf (float x);
-extern int __isnand (double x);
extern int __fpclassifyf (float x);
extern int __fpclassifyd (double x);
extern int __signbitf (float x);
@@ -131,22 +88,12 @@ extern int __signbitd (double x);
(__extension__ ({__typeof__(x) __x = (x); \
(sizeof (__x) == sizeof (float)) ? __fpclassifyf(__x) : __fpclassifyd(__x);}))
-#define isfinite(y) \
- (__extension__ ({__typeof__(y) __y = (y); \
- fpclassify(__y) != FP_INFINITE && fpclassify(__y) != FP_NAN;}))
-
-/* Note: isinf and isnan were once functions in newlib that took double
- * arguments. C99 specifies that these names are reserved for macros
- * supporting multiple floating point types. Thus, they are
- * now defined as macros. Implementations of the old functions
- * taking double arguments still exist for compatibility purposes. */
-#define isinf(x) \
+#define isfinite(x) \
(__extension__ ({__typeof__(x) __x = (x); \
- (sizeof (__x) == sizeof (float)) ? __isinff(__x) : __isinfd(__x);}))
-#define isnan(x) \
+ fpclassify(__x) != FP_INFINITE && fpclassify(__x) != FP_NAN;}))
+#define isnormal(x) \
(__extension__ ({__typeof__(x) __x = (x); \
- (sizeof (__x) == sizeof (float)) ? __isnanf(__x) : __isnand(__x);}))
-#define isnormal(y) (fpclassify(y) == FP_NORMAL)
+ fpclassify(__x) == FP_NORMAL;}))
#define signbit(x) \
(__extension__ ({__typeof__(x) __x = (x); \
(sizeof(__x) == sizeof(float)) ? __signbitf(__x) : __signbitd(__x);}))
@@ -167,14 +114,16 @@ extern int __signbitd (double x);
(__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \
!isunordered(__x,__y) && (__x < __y || __x > __y);}))
-#define isunordered(a,b) \
- (__extension__ ({__typeof__(a) __a = (a); __typeof__(b) __b = (b); \
- fpclassify(__a) == FP_NAN || fpclassify(__b) == FP_NAN;}))
+#define isunordered(x,y) \
+ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \
+ fpclassify(__x) == FP_NAN || fpclassify(__y) == FP_NAN;}))
/* Non ANSI double precision functions. */
extern double infinity _PARAMS((void));
extern double nan _PARAMS((const char *));
+extern int isnan _PARAMS((double));
+extern int isinf _PARAMS((double));
extern int finite _PARAMS((double));
extern double copysign _PARAMS((double, double));
extern int ilogb _PARAMS((double));
diff --git a/newlib/libc/include/pwd.h b/newlib/libc/include/pwd.h
index 1526abfb6..27b21f877 100644
--- a/newlib/libc/include/pwd.h
+++ b/newlib/libc/include/pwd.h
@@ -50,8 +50,8 @@ extern "C" {
struct passwd {
char *pw_name; /* user name */
char *pw_passwd; /* encrypted password */
- uid_t pw_uid; /* user uid */
- gid_t pw_gid; /* user gid */
+ int pw_uid; /* user uid */
+ int pw_gid; /* user gid */
char *pw_comment; /* comment */
char *pw_gecos; /* Honeywell login info */
char *pw_dir; /* home directory */
diff --git a/newlib/libc/include/stdint.h b/newlib/libc/include/stdint.h
deleted file mode 100644
index 328b094c9..000000000
--- a/newlib/libc/include/stdint.h
+++ /dev/null
@@ -1,401 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 by
- * Ralf Corsepius, Ulm/Germany. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-/*
- * @todo - Add support for wint_t types.
- */
-
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined(__GNUC__) && \
- ( (__GNUC__ >= 4) || \
- ( (__GNUC__ >= 3) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ > 2) ) )
-/* gcc > 3.2 implicitly defines the values we are interested */
-#define __STDINT_EXP(x) __##x##__
-#else
-#define __STDINT_EXP(x) x
-#include <limits.h>
-#endif
-
-/* Check if "long long" is 64bit wide */
-/* Modern GCCs provide __LONG_LONG_MAX__, SUSv3 wants LLONG_MAX */
-#if ( defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff) ) \
- || ( defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff) )
-#define __have_longlong64 1
-#endif
-
-/* Check if "long" is 64bit or 32bit wide */
-#if __STDINT_EXP(LONG_MAX) > 0x7fffffff
-#define __have_long64 1
-#elif __STDINT_EXP(LONG_MAX) == 0x7fffffff
-#define __have_long32 1
-#endif
-
-#if __STDINT_EXP(SCHAR_MAX) == 0x7f
-typedef signed char int8_t ;
-typedef unsigned char uint8_t ;
-#define __int8_t_defined 1
-#endif
-
-#if __int8_t_defined
-typedef signed char int_least8_t;
-typedef unsigned char uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#if __STDINT_EXP(SHRT_MAX) == 0x7fff
-typedef signed short int16_t;
-typedef unsigned short uint16_t;
-#define __int16_t_defined 1
-#elif __STDINT_EXP(INT_MAX) == 0x7fff
-typedef signed int int16_t;
-typedef unsigned int uint16_t;
-#define __int16_t_defined 1
-#elif __STDINT_EXP(SCHAR_MAX) == 0x7fff
-typedef signed char int16_t;
-typedef unsigned char uint16_t;
-#define __int16_t_defined 1
-#endif
-
-#if __int16_t_defined
-typedef int16_t int_least16_t;
-typedef uint16_t uint_least16_t;
-#define __int_least16_t_defined 1
-
-#if !__int_least8_t_defined
-typedef int16_t int_least8_t;
-typedef uint16_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-#endif
-
-#if __have_long32
-typedef signed long int32_t;
-typedef unsigned long uint32_t;
-#define __int32_t_defined 1
-#elif __STDINT_EXP(INT_MAX) == 0x7fffffffL
-typedef signed int int32_t;
-typedef unsigned int uint32_t;
-#define __int32_t_defined 1
-#elif __STDINT_EXP(SHRT_MAX) == 0x7fffffffL
-typedef signed short int32_t;
-typedef unsigned short uint32_t;
-#define __int32_t_defined 1
-#elif __STDINT_EXP(SCHAR_MAX) == 0x7fffffffL
-typedef signed char int32_t;
-typedef unsigned char uint32_t;
-#define __int32_t_defined 1
-#endif
-
-#if __int32_t_defined
-typedef int32_t int_least32_t;
-typedef uint32_t uint_least32_t;
-#define __int_least32_t_defined 1
-
-#if !__int_least8_t_defined
-typedef int32_t int_least8_t;
-typedef uint32_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#if !__int_least16_t_defined
-typedef int32_t int_least16_t;
-typedef uint32_t uint_least16_t;
-#define __int_least16_t_defined 1
-#endif
-#endif
-
-#if __have_long64
-typedef signed long int64_t;
-typedef unsigned long uint64_t;
-#define __int64_t_defined 1
-#elif __have_longlong64
-typedef signed long long int64_t;
-typedef unsigned long long uint64_t;
-#define __int64_t_defined 1
-#elif __STDINT_EXP(INT_MAX) > 0x7fffffff
-typedef signed int int64_t;
-typedef unsigned int uint64_t;
-#define __int64_t_defined 1
-#endif
-
-#if __int64_t_defined
-typedef int64_t int_least64_t;
-typedef uint64_t uint_least64_t;
-#define __int_least64_t_defined 1
-
-#if !__int_least8_t_defined
-typedef int64_t int_least8_t;
-typedef uint64_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#if !__int_least16_t_defined
-typedef int64_t int_least16_t;
-typedef uint64_t uint_least16_t;
-#define __int_least16_t_defined 1
-#endif
-
-#if !__int_least32_t_defined
-typedef int64_t int_least32_t;
-typedef uint64_t uint_least32_t;
-#define __int_least32_t_defined 1
-#endif
-#endif
-
-/*
- * Fastest minimum-width integer types
- *
- * Assume int to be the fastest type for all types with a width
- * less than __INT_MAX__ rsp. INT_MAX
- */
-#if __STDINT_EXP(INT_MAX) >= 0x7f
- typedef signed int int_fast8_t;
- typedef unsigned int uint_fast8_t;
-#define __int_fast8_t_defined 1
-#endif
-
-#if __STDINT_EXP(INT_MAX) >= 0x7fff
- typedef signed int int_fast16_t;
- typedef unsigned int uint_fast16_t;
-#define __int_fast16_t_defined 1
-#endif
-
-#if __STDINT_EXP(INT_MAX) >= 0x7fffffff
- typedef signed int int_fast32_t;
- typedef unsigned int uint_fast32_t;
-#define __int_fast32_t_defined 1
-#endif
-
-#if __STDINT_EXP(INT_MAX) > 0x7fffffff
- typedef signed int int_fast64_t;
- typedef unsigned int uint_fast64_t;
-#define __int_fast64_t_defined 1
-#endif
-
-/*
- * Fall back to [u]int_least<N>_t for [u]int_fast<N>_t types
- * not having been defined, yet.
- * Leave undefined, if [u]int_least<N>_t should not be available.
- */
-#if !__int_fast8_t_defined
-#if __int_least8_t_defined
- typedef int_least8_t int_fast8_t;
- typedef uint_least8_t uint_fast8_t;
-#define __int_fast8_t_defined 1
-#endif
-#endif
-
-#if !__int_fast16_t_defined
-#if __int_least16_t_defined
- typedef int_least16_t int_fast16_t;
- typedef uint_least16_t uint_fast16_t;
-#define __int_fast16_t_defined 1
-#endif
-#endif
-
-#if !__int_fast32_t_defined
-#if __int_least32_t_defined
- typedef int_least32_t int_fast32_t;
- typedef uint_least32_t uint_fast32_t;
-#define __int_fast32_t_defined 1
-#endif
-#endif
-
-#if !__int_fast64_t_defined
-#if __int_least64_t_defined
- typedef int_least64_t int_fast64_t;
- typedef uint_least64_t uint_fast64_t;
-#define __int_fast64_t_defined 1
-#endif
-#endif
-
-/* Greatest-width integer types */
-/* Modern GCCs provide __INTMAX_TYPE__ */
-#if defined(__INTMAX_TYPE__)
- typedef __INTMAX_TYPE__ intmax_t;
-#elif __have_longlong64
- typedef signed long long intmax_t;
-#else
- typedef signed long intmax_t;
-#endif
-
-/* Modern GCCs provide __UINTMAX_TYPE__ */
-#if defined(__UINTMAX_TYPE__)
- typedef __UINTMAX_TYPE__ uintmax_t;
-#elif __have_longlong64
- typedef unsigned long long uintmax_t;
-#else
- typedef unsigned long uintmax_t;
-#endif
-
-/*
- * GCC doesn't provide an appropriate macro for [u]intptr_t
- * For now, use __PTRDIFF_TYPE__
- */
-#if defined(__PTRDIFF_TYPE__)
-typedef signed __PTRDIFF_TYPE__ intptr_t;
-typedef unsigned __PTRDIFF_TYPE__ uintptr_t;
-#else
-/*
- * Fallback to hardcoded values,
- * should be valid on cpu's with 32bit int/32bit void*
- */
-typedef signed long intptr_t;
-typedef unsigned long uintptr_t;
-#endif
-
-/* Limits of Specified-Width Integer Types */
-
-#if __int8_t_defined
-#define INT8_MIN -128
-#define INT8_MAX 127
-#define UINT8_MAX 255
-#endif
-
-#if __int_least8_t_defined
-#define INT_LEAST8_MIN -128
-#define INT_LEAST8_MAX 127
-#define UINT_LEAST8_MAX 255
-#else
-#error required type int_least8_t missing
-#endif
-
-#if __int16_t_defined
-#define INT16_MIN -32768
-#define INT16_MAX 32767
-#define UINT16_MAX 65535
-#endif
-
-#if __int_least16_t_defined
-#define INT_LEAST16_MIN -32768
-#define INT_LEAST16_MAX 32767
-#define UINT_LEAST16_MAX 65535
-#else
-#error required type int_least16_t missing
-#endif
-
-#if __int32_t_defined
-#define INT32_MIN (-2147483647-1)
-#define INT32_MAX 2147483647
-#define UINT32_MAX 4294967295U
-#endif
-
-#if __int_least32_t_defined
-#define INT_LEAST32_MIN (-2147483647-1)
-#define INT_LEAST32_MAX 2147483647
-#define UINT_LEAST32_MAX 4294967295U
-#else
-#error required type int_least32_t missing
-#endif
-
-#if __int64_t_defined
-#if __have_long64
-#define INT64_MIN (-9223372036854775807L-1L)
-#define INT64_MAX 9223372036854775807L
-#define UINT64_MAX 18446744073709551615U
-#elif __have_longlong64
-#define INT64_MIN (-9223372036854775807LL-1LL)
-#define INT64_MAX 9223372036854775807LL
-#define UINT64_MAX 18446744073709551615ULL
-#endif
-#endif
-
-#if __int_least64_t_defined
-#if __have_long64
-#define INT_LEAST64_MIN (-9223372036854775807L-1L)
-#define INT_LEAST64_MAX 9223372036854775807L
-#define UINT_LEAST64_MAX 18446744073709551615U
-#elif __have_longlong64
-#define INT_LEAST64_MIN (-9223372036854775807LL-1LL)
-#define INT_LEAST64_MAX 9223372036854775807LL
-#define UINT_LEAST64_MAX 18446744073709551615ULL
-#endif
-#endif
-
-#if __int_fast8_t_defined
-#define INT_FAST8_MIN INT8_MIN
-#define INT_FAST8_MAX INT8_MAX
-#define UINT_FAST8_MAX UINT8_MAX
-#endif
-
-#if __int_fast16_t_defined
-#define INT_FAST16_MIN INT16_MIN
-#define INT_FAST16_MAX INT16_MAX
-#define UINT_FAST16_MAX UINT16_MAX
-#endif
-
-#if __int_fast32_t_defined
-#define INT_FAST32_MIN INT32_MIN
-#define INT_FAST32_MAX INT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-#endif
-
-#if __int_fast64_t_defined
-#define INT_FAST64_MIN INT64_MIN
-#define INT_FAST64_MAX INT64_MAX
-#define UINT_FAST64_MAX UINT64_MAX
-#endif
-
-/* This must match size_t in stddef.h, currently long unsigned int */
-#define SIZE_MIN (-__STDINT_EXP(LONG_MAX) - 1L)
-#define SIZE_MAX __STDINT_EXP(LONG_MAX)
-
-/* This must match sig_atomic_t in <signal.h> (currently int) */
-#define SIG_ATOMIC_MIN (-__STDINT_EXP(INT_MAX) - 1)
-#define SIG_ATOMIC_MAX __STDINT_EXP(INT_MAX)
-
-/* This must match ptrdiff_t in <stddef.h> (currently long int) */
-#define PTRDIFF_MIN (-__STDINT_EXP(LONG_MAX) - 1L)
-#define PTRDIFF_MAX __STDINT_EXP(LONG_MAX)
-
-/** Macros for minimum-width integer constant expressions */
-#define INT8_C(x) x
-#define UINT8_C(x) x##U
-
-#define INT16_C(x) x
-#define UINT16_C(x) x##U
-
-#if __have_long32
-#define INT32_C(x) x##L
-#define UINT32_C(x) x##UL
-#else
-#define INT32_C(x) x
-#define UINT32_C(x) x##U
-#endif
-
-#if __int64_t_defined
-#if __have_longlong64
-#define INT64_C(x) x##LL
-#define UINT64_C(x) x##ULL
-#else
-#define INT64_C(x) x##L
-#define UINT64_C(x) x##UL
-#endif
-#endif
-
-/** Macros for greatest-width integer constant expression */
-#if __have_longlong64
-#define INTMAX_C(x) x##LL
-#define UINTMAX_C(x) x##ULL
-#else
-#define INTMAX_C(x) x##L
-#define UINTMAX_C(x) x##UL
-#endif
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _STDINT_H */
diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h
index ef8c2db18..86c948f95 100644
--- a/newlib/libc/include/stdio.h
+++ b/newlib/libc/include/stdio.h
@@ -219,6 +219,7 @@ int _EXFUN(remove, (const char *));
int _EXFUN(rename, (const char *, const char *));
#endif
#ifndef __STRICT_ANSI__
+int _EXFUN(asprintf, (char **, const char *, ...));
#ifdef _COMPILING_NEWLIB
int _EXFUN(fseeko, (FILE *, _off_t, int));
_off_t _EXFUN(ftello, ( FILE *));
@@ -226,30 +227,19 @@ _off_t _EXFUN(ftello, ( FILE *));
int _EXFUN(fseeko, (FILE *, off_t, int));
off_t _EXFUN(ftello, ( FILE *));
#endif
-#ifndef _REENT_ONLY
-int _EXFUN(asiprintf, (char **, const char *, ...));
-int _EXFUN(asprintf, (char **, const char *, ...));
-int _EXFUN(dprintf, (int, const char *, ...));
-int _EXFUN(fcloseall, (_VOID));
-int _EXFUN(fiprintf, (FILE *, const char *, ...));
+int _EXFUN(vfiprintf, (FILE *, const char *, __VALIST));
int _EXFUN(iprintf, (const char *, ...));
+int _EXFUN(fiprintf, (FILE *, const char *, ...));
int _EXFUN(siprintf, (char *, const char *, ...));
-int _EXFUN(snprintf, (char *, size_t, const char *, ...));
-int _EXFUN(sniprintf, (char *, size_t, const char *, ...));
char * _EXFUN(tempnam, (const char *, const char *));
-int _EXFUN(vasiprintf, (char **, const char *, __VALIST));
int _EXFUN(vasprintf, (char **, const char *, __VALIST));
-int _EXFUN(vdprintf, (int, const char *, __VALIST));
-int _EXFUN(vsniprintf, (char *, size_t, const char *, __VALIST));
int _EXFUN(vsnprintf, (char *, size_t, const char *, __VALIST));
-int _EXFUN(vfiprintf, (FILE *, const char *, __VALIST));
-int _EXFUN(vfiscanf, (FILE *, const char *, __VALIST));
int _EXFUN(vfscanf, (FILE *, const char *, __VALIST));
-int _EXFUN(viprintf, (const char *, __VALIST));
-int _EXFUN(viscanf, (const char *, __VALIST));
int _EXFUN(vscanf, (const char *, __VALIST));
-int _EXFUN(vsiscanf, (const char *, const char *, __VALIST));
int _EXFUN(vsscanf, (const char *, const char *, __VALIST));
+#ifndef _REENT_ONLY
+int _EXFUN(fcloseall, (_VOID));
+int _EXFUN(snprintf, (char *, size_t, const char *, ...));
#endif
#endif
@@ -281,21 +271,18 @@ int _EXFUN(putchar_unlocked, (int));
* Recursive versions of the above.
*/
-int _EXFUN(_asiprintf_r, (struct _reent *, char **, const char *, ...));
int _EXFUN(_asprintf_r, (struct _reent *, char **, const char *, ...));
-int _EXFUN(_dprintf_r, (struct _reent *, int, const char *, ...));
int _EXFUN(_fcloseall_r, (struct _reent *));
FILE * _EXFUN(_fdopen_r, (struct _reent *, int, const char *));
FILE * _EXFUN(_fopen_r, (struct _reent *, const char *, const char *));
int _EXFUN(_fclose_r, (struct _reent *, FILE *));
-int _EXFUN(_fiscanf_r, (struct _reent *, FILE *, const char *, ...));
int _EXFUN(_fscanf_r, (struct _reent *, FILE *, const char *, ...));
int _EXFUN(_fseek_r, (struct _reent *, FILE *, long, int));
long _EXFUN(_ftell_r, (struct _reent *, FILE *));
int _EXFUN(_getchar_r, (struct _reent *));
char * _EXFUN(_gets_r, (struct _reent *, char *));
int _EXFUN(_iprintf_r, (struct _reent *, const char *, ...));
-int _EXFUN(_iscanf_r, (struct _reent *, const char *, ...));
+int _EXFUN(_siprintf_r, (struct _reent *, char *, const char *, ...));
int _EXFUN(_mkstemp_r, (struct _reent *, char *));
char * _EXFUN(_mktemp_r, (struct _reent *, char *));
void _EXFUN(_perror_r, (struct _reent *, const char *));
@@ -306,33 +293,22 @@ int _EXFUN(_remove_r, (struct _reent *, const char *));
int _EXFUN(_rename_r, (struct _reent *,
const char *_old, const char *_new));
int _EXFUN(_scanf_r, (struct _reent *, const char *, ...));
-int _EXFUN(_siprintf_r, (struct _reent *, char *, const char *, ...));
-int _EXFUN(_siscanf_r, (struct _reent *, const char *, const char *, ...));
-int _EXFUN(_sniprintf_r, (struct _reent *, char *, size_t, const char *, ...));
-int _EXFUN(_snprintf_r, (struct _reent *, char *, size_t, const char *, ...));
int _EXFUN(_sprintf_r, (struct _reent *, char *, const char *, ...));
+int _EXFUN(_snprintf_r, (struct _reent *, char *, size_t, const char *, ...));
int _EXFUN(_sscanf_r, (struct _reent *, const char *, const char *, ...));
char * _EXFUN(_tempnam_r, (struct _reent *, const char *, const char *));
FILE * _EXFUN(_tmpfile_r, (struct _reent *));
char * _EXFUN(_tmpnam_r, (struct _reent *, char *));
int _EXFUN(_ungetc_r, (struct _reent *, int, FILE *));
-int _EXFUN(_vasiprintf_r, (struct _reent *, char **, const char *, __VALIST));
int _EXFUN(_vasprintf_r, (struct _reent *, char **, const char *, __VALIST));
-int _EXFUN(_vdprintf_r, (struct _reent *, int, const char *, __VALIST));
int _EXFUN(_vfiprintf_r, (struct _reent *, FILE *, const char *, __VALIST));
int _EXFUN(_vfprintf_r, (struct _reent *, FILE *, const char *, __VALIST));
-int _EXFUN(_viprintf_r, (struct _reent *, const char *, __VALIST));
int _EXFUN(_vprintf_r, (struct _reent *, const char *, __VALIST));
-int _EXFUN(_vsiprintf_r, (struct _reent *, char *, const char *, __VALIST));
int _EXFUN(_vsprintf_r, (struct _reent *, char *, const char *, __VALIST));
-int _EXFUN(_vsniprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST));
int _EXFUN(_vsnprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST));
-int _EXFUN(_vfiscanf_r, (struct _reent *, FILE *, const char *, __VALIST));
int _EXFUN(_vfscanf_r, (struct _reent *, FILE *, const char *, __VALIST));
-int _EXFUN(_viscanf_r, (struct _reent *, const char *, __VALIST));
int _EXFUN(_vscanf_r, (struct _reent *, const char *, __VALIST));
int _EXFUN(_vsscanf_r, (struct _reent *, const char *, const char *, __VALIST));
-int _EXFUN(_vsiscanf_r, (struct _reent *, const char *, const char *, __VALIST));
ssize_t _EXFUN(__getdelim, (char **, size_t *, int, FILE *));
ssize_t _EXFUN(__getline, (char **, size_t *, FILE *));
diff --git a/newlib/libc/include/stdlib.h b/newlib/libc/include/stdlib.h
index 9bee3b187..9354b1ea2 100644
--- a/newlib/libc/include/stdlib.h
+++ b/newlib/libc/include/stdlib.h
@@ -19,10 +19,6 @@
#include <alloca.h>
#endif
-#ifdef __CYGWIN__
-#include <cygwin/stdlib.h>
-#endif
-
_BEGIN_STD_C
typedef struct
@@ -80,6 +76,9 @@ _VOID _EXFUN(exit,(int __status) _ATTRIBUTE ((noreturn)));
_VOID _EXFUN(free,(_PTR));
char * _EXFUN(getenv,(const char *__string));
char * _EXFUN(_getenv_r,(struct _reent *, const char *__string));
+#ifdef __CYGWIN__
+const char *_EXFUN(getprogname,(void));
+#endif
char * _EXFUN(_findenv,(_CONST char *, int *));
char * _EXFUN(_findenv_r,(struct _reent *, _CONST char *, int *));
long _EXFUN(labs,(long));
@@ -104,6 +103,9 @@ char * _EXFUN(mktemp,(char *));
_VOID _EXFUN(qsort,(_PTR __base, size_t __nmemb, size_t __size, int(*_compar)(const _PTR, const _PTR)));
int _EXFUN(rand,(_VOID));
_PTR _EXFUN(realloc,(_PTR __r, size_t __size));
+#ifdef __CYGWIN__
+void _EXFUN(setprogname,(const char *));
+#endif
_VOID _EXFUN(srand,(unsigned __seed));
double _EXFUN(strtod,(const char *__n, char **__end_PTR));
double _EXFUN(_strtod_r,(struct _reent *,const char *__n, char **__end_PTR));
@@ -127,8 +129,8 @@ char * _EXFUN(l64a,(long __input));
char * _EXFUN(_l64a_r,(struct _reent *,long __input));
int _EXFUN(on_exit,(_VOID (*__func)(int, _PTR),_PTR __arg));
_VOID _EXFUN(_Exit,(int __status) _ATTRIBUTE ((noreturn)));
-int _EXFUN(putenv,(char *__string));
-int _EXFUN(_putenv_r,(struct _reent *, char *__string));
+int _EXFUN(putenv,(const char *__string));
+int _EXFUN(_putenv_r,(struct _reent *, const char *__string));
int _EXFUN(setenv,(const char *__string, const char *__value, int __overwrite));
int _EXFUN(_setenv_r,(struct _reent *, const char *__string, const char *__value, int __overwrite));
@@ -174,8 +176,15 @@ unsigned long long _EXFUN(_strtoull_r,(struct _reent *, const char *__n, char **
#ifndef __CYGWIN__
_VOID _EXFUN(cfree,(_PTR));
+#else
+char * _EXFUN(realpath,(const char *, char *));
void _EXFUN(unsetenv,(const char *__string));
void _EXFUN(_unsetenv_r,(struct _reent *, const char *__string));
+int _EXFUN(random,(_VOID));
+long _EXFUN(srandom,(unsigned __seed));
+char * _EXFUN(ptsname, (int));
+int _EXFUN(grantpt, (int));
+int _EXFUN(unlockpt,(int));
#endif
#endif /* ! __STRICT_ANSI__ */
@@ -192,6 +201,35 @@ int _EXFUN(_system_r,(struct _reent *, const char *));
_VOID _EXFUN(__eprintf,(const char *, const char *, unsigned int, const char *));
+#ifdef __CYGWIN__
+#undef _malloc_r
+#define _malloc_r(r, s) malloc (s)
+#undef _free_r
+#define _free_r(r, p) free (p)
+#undef _realloc_r
+#define _realloc_r(r, p, s) realloc (p, s)
+#undef _calloc_r
+#define _calloc_r(r, s1, s2) calloc (s1, s2);
+#undef _memalign_r
+#define _memalign_r(r, s1, s2) memalign (s1, s2);
+#undef _mallinfo_r
+#define _mallinfo_r(r) mallinfo ()
+#undef _malloc_stats_r
+#define _malloc_stats_r(r) malloc_stats ()
+#undef _mallopt_r
+#define _mallopt_r(i1, i2) mallopt (i1, i2)
+#undef _malloc_usable_size_r
+#define _malloc_usable_size_r(r, p) malloc_usable_size (p)
+#undef _valloc_r
+#define _valloc_r(r, s) valloc (s)
+#undef _pvalloc_r
+#define _pvalloc_r(r, s) pvalloc (s)
+#undef _malloc_trim_r
+#define _malloc_trim_r(r, s) malloc_trim (s)
+#undef _mstats_r
+#define _mstats_r(r, p) mstats (p)
+#endif
+
_END_STD_C
#endif /* _STDLIB_H_ */
diff --git a/newlib/libc/include/string.h b/newlib/libc/include/string.h
index 55a86b374..bbc66d469 100644
--- a/newlib/libc/include/string.h
+++ b/newlib/libc/include/string.h
@@ -56,9 +56,6 @@ int _EXFUN(ffs,(int));
char *_EXFUN(index,(const char *, int));
_PTR _EXFUN(memccpy,(_PTR, const _PTR, int, size_t));
_PTR _EXFUN(mempcpy,(_PTR, const _PTR, size_t));
-#ifdef __CYGWIN__
-extern void *memmem (__const void *, size_t, __const void *, size_t);
-#endif
char *_EXFUN(rindex,(const char *, int));
int _EXFUN(strcasecmp,(const char *, const char *));
char *_EXFUN(strdup,(const char *));
@@ -78,6 +75,8 @@ char *_EXFUN(strupr,(char *));
const char *_EXFUN(strsignal, (int __signo));
#endif
int _EXFUN(strtosigno, (const char *__name));
+#elif defined(__linux__)
+char *_EXFUN(strsignal, (int __signo));
#endif
/* These function names are used on Windows and perhaps other systems. */
@@ -96,8 +95,6 @@ int _EXFUN(strtosigno, (const char *__name));
#endif /* ! __STRICT_ANSI__ */
-#include <sys/string.h>
-
_END_STD_C
#endif /* _STRING_H_ */
diff --git a/newlib/libc/include/sys/config.h b/newlib/libc/include/sys/config.h
index c4e4dba9a..1dd045498 100644
--- a/newlib/libc/include/sys/config.h
+++ b/newlib/libc/include/sys/config.h
@@ -59,7 +59,7 @@
/* in other words, go32 */
#define _FLOAT_RET double
#endif
-#if defined(__linux__) || defined(__RDOS__)
+#ifdef __linux__
/* we want the reentrancy structure to be returned by a function */
#define __DYNAMIC_REENT__
#define HAVE_GETDATE
@@ -105,22 +105,6 @@
#define __BUFSIZ__ 16
#define _REENT_SMALL
#endif
-#ifdef __m32c__
-#define __SMALL_BITFIELDS
-#undef INT_MAX
-#undef UINT_MAX
-#define INT_MAX __INT_MAX__
-#define UINT_MAX (__INT_MAX__ * 2U + 1)
-#define MALLOC_ALIGNMENT 8
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
-#define _POINTER_INT short
-#else
-#define _POINTER_INT long
-#endif
-#define __BUFSIZ__ 16
-#define _REENT_SMALL
-#endif /* __m32c__ */
-
/* This block should be kept in sync with GCC's limits.h. The point
of having these definitions here is to not include limits.h, which
diff --git a/newlib/libc/include/sys/dirent.h b/newlib/libc/include/sys/dirent.h
index a3fb5c02c..f2f2342d5 100644
--- a/newlib/libc/include/sys/dirent.h
+++ b/newlib/libc/include/sys/dirent.h
@@ -1,13 +1,15 @@
/* <dirent.h> includes <sys/dirent.h>, which is this file. On a
system which supports <dirent.h>, this file is overridden by
dirent.h in the libc/sys/.../sys directory. On a system which does
- not support <dirent.h>, we will get this file which uses #error to force
- an error. */
+ not support <dirent.h>, we will get this file which tries to find
+ any other <dirent.h> which may be lurking around. If there isn't
+ one, the user will get an error indicating that there is no
+ <dirent.h>. */
#ifdef __cplusplus
extern "C" {
#endif
-#error "<dirent.h> not supported"
+#include_next <dirent.h>
#ifdef __cplusplus
}
#endif
diff --git a/newlib/libc/include/sys/fcntl.h b/newlib/libc/include/sys/fcntl.h
index fd8917d1e..0a680a1da 100644
--- a/newlib/libc/include/sys/fcntl.h
+++ b/newlib/libc/include/sys/fcntl.h
@@ -37,9 +37,9 @@ extern "C" {
#define O_CREAT _FCREAT
#define O_TRUNC _FTRUNC
#define O_EXCL _FEXCL
-#define O_SYNC _FSYNC
+/* O_SYNC _FSYNC not posix, defined below */
/* O_NDELAY _FNDELAY set in include/fcntl.h */
-/* O_NDELAY _FNBIO set in include/fcntl.h */
+/* O_NDELAY _FNBIO set in 5include/fcntl.h */
#define O_NONBLOCK _FNONBLOCK
#define O_NOCTTY _FNOCTTY
/* For machines which care - */
@@ -68,6 +68,8 @@ extern "C" {
#ifndef _POSIX_SOURCE
+#define O_SYNC _FSYNC
+
/*
* Flags that work for fcntl(fd, F_SETFL, FXXXX)
*/
diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h
index 6754f1e9d..af31ce670 100644
--- a/newlib/libc/include/sys/features.h
+++ b/newlib/libc/include/sys/features.h
@@ -88,7 +88,6 @@ extern "C" {
# define _POSIX_THREAD_ATTR_STACKSIZE 1
# define _POSIX_SEMAPHORES 1
# define _POSIX_TIMERS 1
-# define _POSIX_MEMLOCK_RANGE 1
#endif
#ifdef __cplusplus
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 7911b6cbc..53cc14281 100644
--- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h
@@ -158,9 +158,9 @@ struct __sFILE_fake {
struct _reent *_data;
};
/* CHECK_INIT() comes from stdio/local.h; be sure to include that. */
-# define _REENT_SMALL_CHECK_INIT(ptr) CHECK_INIT(ptr)
+# define _REENT_SMALL_CHECK_INIT(fp) CHECK_INIT(fp)
#else
-# define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */
+# define _REENT_SMALL_CHECK_INIT(fp) /* nothing */
#endif
struct __sFILE {
diff --git a/newlib/libc/include/sys/signal.h b/newlib/libc/include/sys/signal.h
index 78f06951e..2bfbbf0a8 100644
--- a/newlib/libc/include/sys/signal.h
+++ b/newlib/libc/include/sys/signal.h
@@ -2,6 +2,7 @@
#ifndef _SYS_SIGNAL_H
#define _SYS_SIGNAL_H
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -301,10 +302,4 @@ int _EXFUN(sigqueue, (pid_t pid, int signo, const union sigval value));
#ifdef __cplusplus
}
#endif
-
-#ifndef _SIGNAL_H_
-/* Some applications take advantage of the fact that <sys/signal.h>
- * and <signal.h> are equivalent in glibc. Allow for that here. */
-#include <signal.h>
-#endif
#endif /* _SYS_SIGNAL_H */
diff --git a/newlib/libc/include/sys/string.h b/newlib/libc/include/sys/string.h
deleted file mode 100644
index ceedf4be1..000000000
--- a/newlib/libc/include/sys/string.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* This is a dummy <sys/string.h> used as a placeholder for
- systems that need to have a special header file. */
diff --git a/newlib/libc/include/sys/time.h b/newlib/libc/include/sys/time.h
index df3164941..20f2903c3 100644
--- a/newlib/libc/include/sys/time.h
+++ b/newlib/libc/include/sys/time.h
@@ -14,8 +14,8 @@ extern "C" {
#ifndef _WINSOCK_H
struct timeval {
- time_t tv_sec;
- suseconds_t tv_usec;
+ long tv_sec;
+ long tv_usec;
};
struct timezone {
@@ -24,7 +24,7 @@ struct timezone {
};
#ifdef __CYGWIN__
-#include <cygwin/sys_time.h>
+#include <sys/select.h>
#endif /* __CYGWIN__ */
#endif /* _WINSOCK_H */
@@ -72,7 +72,7 @@ struct itimerval {
int _EXFUN(gettimeofday, (struct timeval *__p, struct timezone *__z));
int _EXFUN(settimeofday, (const struct timeval *, const struct timezone *));
-int _EXFUN(utimes, (const char *__path, const struct timeval *__tvp));
+int _EXFUN(utimes, (const char *__path, struct timeval *__tvp));
int _EXFUN(getitimer, (int __which, struct itimerval *__value));
int _EXFUN(setitimer, (int __which, const struct itimerval *__value,
struct itimerval *__ovalue));
diff --git a/newlib/libc/include/sys/types.h b/newlib/libc/include/sys/types.h
index bf08616ab..238af1f50 100644
--- a/newlib/libc/include/sys/types.h
+++ b/newlib/libc/include/sys/types.h
@@ -21,38 +21,24 @@
#ifndef __INTTYPES_DEFINED__
#define __INTTYPES_DEFINED__
+typedef short int __int16_t;
+typedef unsigned short int __uint16_t;
-#include <machine/_types.h>
-
-#if defined(__rtems__)
-/*
- * The following section is RTEMS specific and is needed to more
- * closely match the types defined in the BSD sys/types.h.
- * This is needed to let the RTEMS/BSD TCP/IP stack compile.
- */
-
-/* deprecated */
-#if ___int8_t_defined
-typedef __uint8_t u_int8_t;
-#endif
-#if ___int16_t_defined
-typedef __uint16_t u_int16_t;
-#endif
-#if ___int32_t_defined
-typedef __uint32_t u_int32_t;
-#endif
-
-#if ___int64_t_defined
-typedef __uint64_t u_int64_t;
-
-/* deprecated */
-typedef __uint64_t u_quad_t;
-typedef __int64_t quad_t;
-typedef quad_t * qaddr_t;
+#if __INT_MAX__ == 32767
+typedef long int __int32_t;
+typedef unsigned long int __uint32_t;
+#else
+typedef int __int32_t;
+typedef unsigned int __uint32_t;
#endif
+#if __LONG_MAX__ > 2147483647 || !defined(__GNUC__)
+typedef long int __int64_t;
+typedef unsigned long int __uint64_t;
+#else
+__extension__ typedef long long __int64_t;
+__extension__ typedef unsigned long long __uint64_t;
#endif
-
#endif /* ! __INTTYPES_DEFINED */
#ifndef __need_inttypes
@@ -251,6 +237,11 @@ typedef struct _types_fd_set {
#undef __MS_types__
#undef _ST_INT32
+/* The following are actually standard POSIX 1003.1b-1993 threads, mutexes,
+ condition variables, and keys. But since RTEMS is currently the only
+ newlib user of these, the ifdef is just on RTEMS. */
+
+#if defined(__rtems__) || defined(__CYGWIN__)
#ifndef __clockid_t_defined
typedef _CLOCKID_T_ clockid_t;
@@ -262,8 +253,9 @@ typedef _TIMER_T_ timer_t;
#define __timer_t_defined
#endif
-typedef unsigned long useconds_t;
-typedef long suseconds_t;
+#if defined(__CYGWIN__) || defined(__rtems__)
+typedef long useconds_t;
+#endif
#include <sys/features.h>
@@ -374,6 +366,8 @@ typedef struct {
#endif
#endif /* defined(_POSIX_THREADS) */
+#endif /* defined(__rtems__) */
+
#endif /* !__need_inttypes */
#undef __need_inttypes
diff --git a/newlib/libc/include/sys/unistd.h b/newlib/libc/include/sys/unistd.h
index a670dd735..46db13c27 100644
--- a/newlib/libc/include/sys/unistd.h
+++ b/newlib/libc/include/sys/unistd.h
@@ -53,7 +53,9 @@ int _EXFUN(fchown, (int __fildes, uid_t __owner, gid_t __group ));
pid_t _EXFUN(fork, (void ));
long _EXFUN(fpathconf, (int __fd, int __name ));
int _EXFUN(fsync, (int __fd));
+#ifndef __CYGWIN__
int _EXFUN(fdatasync, (int __fd));
+#endif
char _EXFUN(*getcwd, (char *__buf, size_t __size ));
#if defined(__CYGWIN__)
int _EXFUN(getdomainname ,(char *__name, size_t __len));
@@ -73,9 +75,6 @@ int _EXFUN(getlogin_r, (char *name, size_t namesize) );
#endif
char _EXFUN(*getpass, (const char *__prompt));
size_t _EXFUN(getpagesize, (void));
-#if defined(__CYGWIN__)
-int _EXFUN(getpeereid, (int, uid_t *, gid_t *));
-#endif
pid_t _EXFUN(getpgid, (pid_t));
pid_t _EXFUN(getpgrp, (void ));
pid_t _EXFUN(getpid, (void ));
@@ -211,9 +210,9 @@ void _EXFUN(sync, (void));
#else /* defined(__rtems__) */
int _EXFUN(sync, (void));
#endif
-#endif
int _EXFUN(readlink, (const char *__path, char *__buf, int __buflen));
int _EXFUN(symlink, (const char *__name1, const char *__name2));
+#endif
#define F_OK 0
#define R_OK 4
diff --git a/newlib/libc/include/time.h b/newlib/libc/include/time.h
index 8d3a30c8a..a50bd608f 100644
--- a/newlib/libc/include/time.h
+++ b/newlib/libc/include/time.h
@@ -71,26 +71,6 @@ char *_EXFUN(strptime, (const char *, const char *, struct tm *));
_VOID _EXFUN(tzset, (_VOID));
_VOID _EXFUN(_tzset_r, (struct _reent *));
-typedef struct __tzrule_struct
-{
- char ch;
- int m;
- int n;
- int d;
- int s;
- time_t change;
- long offset; /* Match type of _timezone. */
-} __tzrule_type;
-
-typedef struct __tzinfo_struct
-{
- int __tznorth;
- int __tzyear;
- __tzrule_type __tzrule[2];
-} __tzinfo_type;
-
-__tzinfo_type *_EXFUN (__gettzinfo, (_VOID));
-
/* getdate functions */
#ifdef HAVE_GETDATE
@@ -115,7 +95,7 @@ int _EXFUN(getdate_r, (const char *, struct tm *));
#endif /* HAVE_GETDATE */
/* defines for the opengroup specifications Derived from Issue 1 of the SVID. */
-extern __IMPORT long _timezone;
+extern __IMPORT time_t _timezone;
extern __IMPORT int _daylight;
extern __IMPORT char *_tzname[2];
@@ -123,6 +103,20 @@ extern __IMPORT char *_tzname[2];
#ifndef tzname
#define tzname _tzname
#endif
+
+/* CYGWIN also exposes daylight and timezone in the name space */
+#ifdef __CYGWIN__
+#ifndef daylight
+#define daylight _daylight
+#endif
+#ifdef timezonevar
+#ifndef timezone
+#define timezone ((long int) _timezone)
+#endif
+#else
+char *_EXFUN(timezone, (void));
+#endif
+#endif /* __CYGWIN__ */
#endif /* !__STRICT_ANSI__ */
#ifdef __cplusplus
@@ -131,10 +125,6 @@ extern __IMPORT char *_tzname[2];
#include <sys/features.h>
-#ifdef __CYGWIN__
-#include <cygwin/time.h>
-#endif /*__CYGWIN__*/
-
#if defined(_POSIX_TIMERS)
#include <signal.h>
@@ -173,6 +163,16 @@ int _EXFUN(nanosleep, (const struct timespec *rqtp, struct timespec *rmtp));
#ifdef __cplusplus
}
#endif
+#else
+#ifdef __CYGWIN__
+#ifdef __cplusplus
+extern "C" {
+#endif
+int _EXFUN(nanosleep, (const struct timespec *rqtp, struct timespec *rmtp));
+#ifdef __cplusplus
+}
+#endif
+#endif /* __CYGWIN__ */
#endif /* _POSIX_TIMERS */
#ifdef __cplusplus
@@ -203,6 +203,10 @@ extern "C" {
associated with a time. */
#define TIMER_ABSTIME 4
+#ifdef __CYGWIN__
+# define TIMER_RELTIME 0 /* For compatibility with HP/UX, Solaris,
+ others? */
+#endif
/* Manifest Constants, P1003.4b/D8, p. 55 */
diff --git a/newlib/libc/libc.texinfo b/newlib/libc/libc.texinfo
index b3ce3e9eb..329091e4b 100644
--- a/newlib/libc/libc.texinfo
+++ b/newlib/libc/libc.texinfo
@@ -84,8 +84,8 @@ into another language, under the above conditions for modified versions.
@title The Red Hat newlib C Library
@subtitle Full Configuration
@sp 1
-@subtitle @code{libc} 1.14.0
-@subtitle December 2005
+@subtitle @code{libc} 1.12.0
+@subtitle January 2004
@author {Steve Chamberlain}
@author {Roland Pesch}
@author {Red Hat Support}
@@ -143,7 +143,7 @@ into another language, under the above conditions for modified versions.
@end titlepage
@end iftex
-@ifnottex
+@ifinfo
@node Top
@top The Red Hat newlib C Library
@@ -158,7 +158,6 @@ into another language, under the above conditions for modified versions.
@include iconvset.texi
@menu
-* Introduction::
* Stdlib::
* Ctype::
* Stdio::
@@ -174,36 +173,18 @@ into another language, under the above conditions for modified versions.
* Timefns::
* Locale::
-* Reentrancy::
+* Syscalls::
* Misc::
-* Syscalls::
* Arglists::
+* Reentrancy::
@ifset ICONV
* Iconv::
@end ifset
* Library Index::
@end menu
-@end ifnottex
-
-@node Introduction
-@chapter Introduction
-
-This reference manual describes the functions provided by the Red Hat
-``newlib'' version of the standard ANSI C library. This document is not
-intended as an overview or a tutorial for the C library. Each library
-function is listed with a synopsis of its use, a brief description,
-return values (including error handling), and portability issues.
-
-Some of the library functions depend on support from the underlying
-operating system and may not be available on every platform. For
-embedded systems in particular, many of these underlying operating
-system services may not be available or may not be fully functional.
-The specific operating system subroutines required for a particular
-library function are listed in the ``Portability'' section of the
-function description. @xref{Syscalls}, for a description of the
-relevant operating system calls.
+@end ifinfo
@include targetdep.tex
diff --git a/newlib/libc/machine/a29k/aclocal.m4 b/newlib/libc/machine/a29k/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/a29k/aclocal.m4
+++ b/newlib/libc/machine/a29k/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/a29k/configure b/newlib/libc/machine/a29k/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/a29k/configure
+++ b/newlib/libc/machine/a29k/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/aclocal.m4 b/newlib/libc/machine/aclocal.m4
index 35519acf9..26ca1d516 100644
--- a/newlib/libc/machine/aclocal.m4
+++ b/newlib/libc/machine/aclocal.m4
@@ -56,17 +56,6 @@ AC_ARG_ENABLE(newlib-multithread,
*) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
esac], [newlib_multithread=yes])dnl
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
dnl Support --enable-newlib-elix-level
AC_ARG_ENABLE(newlib-elix-level,
[ --enable-newlib-elix-level supply desired elix library level (1-4)],
@@ -117,7 +106,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +154,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/arm/aclocal.m4 b/newlib/libc/machine/arm/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/arm/aclocal.m4
+++ b/newlib/libc/machine/arm/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/arm/configure b/newlib/libc/machine/arm/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/arm/configure
+++ b/newlib/libc/machine/arm/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/arm/machine/endian.h b/newlib/libc/machine/arm/machine/endian.h
deleted file mode 100644
index 54844278b..000000000
--- a/newlib/libc/machine/arm/machine/endian.h
+++ /dev/null
@@ -1,12 +0,0 @@
-/* ARM configuration file */
-
-#ifndef _MACHINE_ENDIAN_H
-# define _MACHINE_ENDIAN_H
-
-#ifdef __ARMEB__
-#define BYTE_ORDER BIG_ENDIAN
-#else
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
-#endif
diff --git a/newlib/libc/machine/arm/machine/param.h b/newlib/libc/machine/arm/machine/param.h
deleted file mode 100644
index 595294cf3..000000000
--- a/newlib/libc/machine/arm/machine/param.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/* ARM configuration file; HZ is 100 rather than the default 60 */
-
-#ifndef _MACHINE_PARAM_H
-# define _MACHINE_PARAM_H
-
-# define HZ (100)
-
-#ifdef __ARMEB__
-#define BYTE_ORDER BIG_ENDIAN
-#else
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
-#endif
diff --git a/newlib/libc/machine/arm/setjmp.S b/newlib/libc/machine/arm/setjmp.S
index 84e7cd70b..d37486090 100644
--- a/newlib/libc/machine/arm/setjmp.S
+++ b/newlib/libc/machine/arm/setjmp.S
@@ -51,39 +51,17 @@
Function entry is much simpler. If we are compiling for the Thumb we
just switch into ARM mode and then drop through into the rest of the
function. The function exit code will take care of the restore to
- Thumb mode.
-
- For Thumb-2 do everything in Thumb mode. */
+ Thumb mode. */
#ifdef __APCS_26__
#define RET movs pc, lr
-#elif defined(__thumb2__)
-#define RET bx lr
#else
#define RET tst lr, #1; \
moveq pc, lr ; \
.word 0xe12fff1e /* bx lr */
#endif
-#ifdef __thumb2__
-.macro COND where when
- i\where \when
-.endm
-#else
-.macro COND where when
-.endm
-#endif
-
-#if defined(__thumb2__)
-.syntax unified
-.macro MODE
- .thumb
- .thumb_func
-.endm
-.macro PROLOGUE name
-.endm
-
-#elif defined(__thumb__)
+#ifdef __thumb__
#define MODE .thumb_func
.macro PROLOGUE name
.code 16
@@ -92,7 +70,7 @@
.code 32
SYM (.arm_start_of.\name):
.endm
-#else /* Arm */
+#else
#define MODE .code 32
.macro PROLOGUE name
.endm
@@ -153,9 +131,6 @@ SYM (\name):
/* Put the return value into the integer result register.
But if it is zero then return 1 instead. */
movs a1, a2
-#ifdef __thumb2__
- it eq
-#endif
moveq a1, #1
FUNC_END longjmp
diff --git a/newlib/libc/machine/configure b/newlib/libc/machine/configure
index 72835683d..a265a31f7 100755
--- a/newlib/libc/machine/configure
+++ b/newlib/libc/machine/configure
@@ -20,8 +20,6 @@ ac_help="$ac_help
ac_help="$ac_help
--enable-newlib-multithread enable support for multiple threads"
ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
--enable-newlib-elix-level supply desired elix library level (1-4)"
ac_help="$ac_help
--disable-newlib-io-float disable printf/scanf family float support"
@@ -586,7 +584,7 @@ am__api_version="1.4"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:590: checking for a BSD compatible install" >&5
+echo "configure:588: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -639,7 +637,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:643: checking whether build environment is sane" >&5
+echo "configure:641: checking whether build environment is sane" >&5
# Just in case
sleep 1
echo timestamp > conftestfile
@@ -696,7 +694,7 @@ test "$program_suffix" != NONE &&
test "$program_transform_name" = "" && program_transform_name="s,x,x,"
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:700: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:698: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -729,12 +727,12 @@ else
fi
echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:733: checking for Cygwin environment" >&5
+echo "configure:731: checking for Cygwin environment" >&5
if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 738 "configure"
+#line 736 "configure"
#include "confdefs.h"
int main() {
@@ -745,7 +743,7 @@ int main() {
return __CYGWIN__;
; return 0; }
EOF
-if { (eval echo configure:749: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:747: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_cygwin=yes
else
@@ -762,19 +760,19 @@ echo "$ac_t""$ac_cv_cygwin" 1>&6
CYGWIN=
test "$ac_cv_cygwin" = yes && CYGWIN=yes
echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:766: checking for mingw32 environment" >&5
+echo "configure:764: checking for mingw32 environment" >&5
if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 771 "configure"
+#line 769 "configure"
#include "confdefs.h"
int main() {
return __MINGW32__;
; return 0; }
EOF
-if { (eval echo configure:778: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:776: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_mingw32=yes
else
@@ -839,20 +837,6 @@ else
newlib_multithread=yes
fi
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
if test "${enable_newlib_elix_level+set}" = set; then
enableval="$enable_newlib_elix_level"
@@ -944,7 +928,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:948: checking host system type" >&5
+echo "configure:932: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -965,7 +949,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:969: checking target system type" >&5
+echo "configure:953: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -983,7 +967,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:987: checking build system type" >&5
+echo "configure:971: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -1009,7 +993,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1026,7 +1010,7 @@ EOF
missing_dir=`cd $ac_aux_dir && pwd`
echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1030: checking for working aclocal-${am__api_version}" >&5
+echo "configure:1014: checking for working aclocal-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1039,7 +1023,7 @@ else
fi
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1043: checking for working autoconf" >&5
+echo "configure:1027: checking for working autoconf" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1052,7 +1036,7 @@ else
fi
echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1056: checking for working automake-${am__api_version}" >&5
+echo "configure:1040: checking for working automake-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1065,7 +1049,7 @@ else
fi
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1069: checking for working autoheader" >&5
+echo "configure:1053: checking for working autoheader" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1078,7 +1062,7 @@ else
fi
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1082: checking for working makeinfo" >&5
+echo "configure:1066: checking for working makeinfo" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1103,7 +1087,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1107: checking for $ac_word" >&5
+echo "configure:1091: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1133,7 +1117,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1137: checking for $ac_word" >&5
+echo "configure:1121: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1182,7 +1166,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1186: checking whether we are using GNU C" >&5
+echo "configure:1170: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1191,7 +1175,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1195: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1179: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1206,7 +1190,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1210: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1194: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1237,7 +1221,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1241: checking for $ac_word" >&5
+echo "configure:1225: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1269,7 +1253,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1273: checking for $ac_word" >&5
+echo "configure:1257: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1301,7 +1285,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1305: checking for $ac_word" >&5
+echo "configure:1289: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1333,7 +1317,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1337: checking for $ac_word" >&5
+echo "configure:1321: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1378,7 +1362,7 @@ fi
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1382: checking for a BSD compatible install" >&5
+echo "configure:1366: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1431,11 +1415,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1420: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1450,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1454: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1460,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1636,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1640: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1666,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1670: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1717,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1721: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1749,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1753: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1760,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1764 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1769: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1791,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1795: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1800: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1805,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1809: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1824,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1828: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1867,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1871: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1897,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1901: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1904: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1935,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1939: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1952,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1956: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1964,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1968: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2002,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2006: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2023,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2027: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2196,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2200: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2206: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2226,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2230: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2288,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2292: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2359,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2363: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2391,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2395: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2426,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2430: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2458,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2462: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2525,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2529 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2530: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2545,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2563,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2567: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2576,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2580 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2587: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2613,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2617: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2645,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2649: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2680,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2684: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2712,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2716: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2747,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2751: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2779,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2783: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2815,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2819: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2824 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2828,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2849,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2853: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2858 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libc/machine/cris/Makefile.am b/newlib/libc/machine/cris/Makefile.am
deleted file mode 100644
index 2c746fa6c..000000000
--- a/newlib/libc/machine/cris/Makefile.am
+++ /dev/null
@@ -1,21 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-# We also make a library with just the useful
-# machine-but-not-system-specific functions, usable as an add-on
-# by itself together with e.g. uclibc.
-toollib_LIBRARIES = libic.a
-
-lib_a_SOURCES = setjmp.c memcpy.c memset.c memmove.c libcdtor.c
-
-libic_a_SOURCES = setjmp.c memcpy.c memset.c memmove.c libcdtor.c
-tooldir = $(exec_prefix)/$(host_alias)
-toollibdir = $(tooldir)/lib$(MULTISUBDIR)
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/machine/cris/Makefile.in b/newlib/libc/machine/cris/Makefile.in
deleted file mode 100644
index 97d7eced1..000000000
--- a/newlib/libc/machine/cris/Makefile.in
+++ /dev/null
@@ -1,382 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = .
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_alias = @build_alias@
-build_triplet = @build@
-host_alias = @host_alias@
-host_triplet = @host@
-target_alias = @target_alias@
-target_triplet = @target@
-AR = @AR@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-EXEEXT = @EXEEXT@
-LDFLAGS = @LDFLAGS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-RANLIB = @RANLIB@
-VERSION = @VERSION@
-aext = @aext@
-libm_machine_dir = @libm_machine_dir@
-machine_dir = @machine_dir@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-sys_dir = @sys_dir@
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-# We also make a library with just the useful
-# machine-but-not-system-specific functions, usable as an add-on
-# by itself together with e.g. uclibc.
-toollib_LIBRARIES = libic.a
-
-lib_a_SOURCES = setjmp.c memcpy.c memset.c memmove.c libcdtor.c
-
-libic_a_SOURCES = setjmp.c memcpy.c memset.c memmove.c libcdtor.c
-tooldir = $(exec_prefix)/$(host_alias)
-toollibdir = $(tooldir)/lib$(MULTISUBDIR)
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES) $(toollib_LIBRARIES)
-
-
-DEFS = @DEFS@ -I. -I$(srcdir)
-CPPFLAGS = @CPPFLAGS@
-LIBS = @LIBS@
-lib_a_LIBADD =
-lib_a_OBJECTS = setjmp.o memcpy.o memset.o memmove.o libcdtor.o
-libic_a_LIBADD =
-libic_a_OBJECTS = setjmp.o memcpy.o memset.o memmove.o libcdtor.o
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(lib_a_SOURCES) $(libic_a_SOURCES)
-OBJECTS = $(lib_a_OBJECTS) $(libic_a_OBJECTS)
-
-all: all-redirect
-.SUFFIXES:
-.SUFFIXES: .S .c .o .s
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
- ../../../acinclude.m4 ../../../aclocal.m4 \
- ../../../libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
- cd $(srcdir) && $(AUTOCONF)
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-mostlyclean-toollibLIBRARIES:
-
-clean-toollibLIBRARIES:
- -test -z "$(toollib_LIBRARIES)" || rm -f $(toollib_LIBRARIES)
-
-distclean-toollibLIBRARIES:
-
-maintainer-clean-toollibLIBRARIES:
-
-install-toollibLIBRARIES: $(toollib_LIBRARIES)
- @$(NORMAL_INSTALL)
- $(mkinstalldirs) $(DESTDIR)$(toollibdir)
- @list='$(toollib_LIBRARIES)'; for p in $$list; do \
- if test -f $$p; then \
- echo " $(INSTALL_DATA) $$p $(DESTDIR)$(toollibdir)/$$p"; \
- $(INSTALL_DATA) $$p $(DESTDIR)$(toollibdir)/$$p; \
- else :; fi; \
- done
- @$(POST_INSTALL)
- @list='$(toollib_LIBRARIES)'; for p in $$list; do \
- if test -f $$p; then \
- echo " $(RANLIB) $(DESTDIR)$(toollibdir)/$$p"; \
- $(RANLIB) $(DESTDIR)$(toollibdir)/$$p; \
- else :; fi; \
- done
-
-uninstall-toollibLIBRARIES:
- @$(NORMAL_UNINSTALL)
- list='$(toollib_LIBRARIES)'; for p in $$list; do \
- rm -f $(DESTDIR)$(toollibdir)/$$p; \
- done
-
-.c.o:
- $(COMPILE) -c $<
-
-.s.o:
- $(COMPILE) -c $<
-
-.S.o:
- $(COMPILE) -c $<
-
-mostlyclean-compile:
- -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
- -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-libic.a: $(libic_a_OBJECTS) $(libic_a_DEPENDENCIES)
- -rm -f libic.a
- $(AR) cru libic.a $(libic_a_OBJECTS) $(libic_a_LIBADD)
- $(RANLIB) libic.a
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- here=`pwd` && cd $(srcdir) \
- && mkid -f$$here/ID $$unique $(LISP)
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
-
-clean-tags:
-
-distclean-tags:
- -rm -f TAGS ID
-
-maintainer-clean-tags:
-
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- -rm -rf $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
- mkdir $(distdir)/=build
- mkdir $(distdir)/=inst
- dc_install_base=`cd $(distdir)/=inst && pwd`; \
- cd $(distdir)/=build \
- && ../configure --srcdir=.. --prefix=$$dc_install_base \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) dist
- -rm -rf $(distdir)
- @banner="$(distdir).tar.gz is ready for distribution"; \
- dashes=`echo "$$banner" | sed s/./=/g`; \
- echo "$$dashes"; \
- echo "$$banner"; \
- echo "$$dashes"
-dist: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-dist-all: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-distdir: $(DISTFILES)
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
- @for file in $(DISTFILES); do \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am:
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-info-am:
-install-info: install-info-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am: install-toollibLIBRARIES
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am: uninstall-toollibLIBRARIES
-uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES)
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
- $(mkinstalldirs) $(DESTDIR)$(toollibdir)
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-noinstLIBRARIES \
- mostlyclean-toollibLIBRARIES mostlyclean-compile \
- mostlyclean-tags mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-noinstLIBRARIES clean-toollibLIBRARIES clean-compile \
- clean-tags clean-generic mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-noinstLIBRARIES distclean-toollibLIBRARIES \
- distclean-compile distclean-tags distclean-generic \
- clean-am
-
-distclean: distclean-am
- -rm -f config.status
-
-maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
- maintainer-clean-toollibLIBRARIES \
- maintainer-clean-compile maintainer-clean-tags \
- maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
- -rm -f config.status
-
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-toollibLIBRARIES distclean-toollibLIBRARIES \
-clean-toollibLIBRARIES maintainer-clean-toollibLIBRARIES \
-uninstall-toollibLIBRARIES install-toollibLIBRARIES mostlyclean-compile \
-distclean-compile clean-compile maintainer-clean-compile tags \
-mostlyclean-tags distclean-tags clean-tags maintainer-clean-tags \
-distdir info-am info dvi-am dvi check check-am installcheck-am \
-installcheck install-info-am install-info install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/machine/cris/aclocal.m4 b/newlib/libc/machine/cris/aclocal.m4
deleted file mode 100644
index 55d5e67ce..000000000
--- a/newlib/libc/machine/cris/aclocal.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl This provides configure definitions used by all the newlib
-dnl configure.in files.
-
-dnl Basic newlib configury. This calls basic introductory stuff,
-dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
-dnl configure.host. The only argument is the relative path to the top
-dnl newlib directory.
-
-AC_DEFUN(NEWLIB_CONFIGURE,
-[
-dnl Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
-[case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
- esac], [multilib=yes])dnl
-
-dnl Support --enable-target-optspace
-AC_ARG_ENABLE(target-optspace,
-[ --enable-target-optspace optimize for space],
-[case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
- esac], [target_optspace=])dnl
-
-dnl Support --enable-malloc-debugging - currently only supported for Cygwin
-AC_ARG_ENABLE(malloc-debugging,
-[ --enable-malloc-debugging indicate malloc debugging requested],
-[case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
- esac], [malloc_debugging=])dnl
-
-dnl Support --enable-newlib-multithread
-AC_ARG_ENABLE(newlib-multithread,
-[ --enable-newlib-multithread enable support for multiple threads],
-[case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
- esac], [newlib_multithread=yes])dnl
-
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
-dnl Support --enable-newlib-elix-level
-AC_ARG_ENABLE(newlib-elix-level,
-[ --enable-newlib-elix-level supply desired elix library level (1-4)],
-[case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
- esac], [newlib_elix_level=0])dnl
-
-dnl Support --disable-newlib-io-float
-AC_ARG_ENABLE(newlib-io-float,
-[ --disable-newlib-io-float disable printf/scanf family float support],
-[case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
- esac], [newlib_io_float=yes])dnl
-
-dnl Support --disable-newlib-supplied-syscalls
-AC_ARG_ENABLE(newlib-supplied-syscalls,
-[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
-[case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
- esac], [newlib_may_supply_syscalls=yes])dnl
-
-AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
-
-dnl We may get other options which we don't document:
-dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
-
-test -z "[$]{with_target_subdir}" && with_target_subdir=.
-
-if test "[$]{srcdir}" = "."; then
- if test "[$]{with_target_subdir}" != "."; then
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
- else
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
- fi
-else
- newlib_basedir="[$]{srcdir}/$1"
-fi
-AC_SUBST(newlib_basedir)
-
-AC_CANONICAL_SYSTEM
-
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AC_CHECK_TOOL(AS, as)
-AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-
-AC_PROG_INSTALL
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-AM_MAINTAINER_MODE
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
- AC_EXEEXT
-fi
-
-. [$]{newlib_basedir}/configure.host
-
-newlib_cflags="[$]{newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-AC_SUBST(NEWLIB_CFLAGS)
-
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
-AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
-AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
-AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
-AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
-AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
-
-AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-AC_SUBST(OBJEXT)
-AC_SUBST(oext)
-AC_SUBST(aext)
-
-AC_SUBST(libm_machine_dir)
-AC_SUBST(machine_dir)
-AC_SUBST(sys_dir)
-])
-
-# Do all the work for Automake. This macro actually does too much --
-# some checks are only needed if your package does certain things.
-# But this isn't really a big deal.
-
-# serial 1
-
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-fi
-ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
-
-# Copyright 2002 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.4-p6])])
-
-#
-# Check to make sure that the build environment is sane.
-#
-
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "[$]*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "[$]*" != "X $srcdir/configure conftestfile" \
- && test "[$]*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "[$]2" = conftestfile
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-rm -f conftest*
-AC_MSG_RESULT(yes)])
-
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN([AM_MISSING_PROG],
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
- $1=$2
- AC_MSG_RESULT(found)
-else
- $1="$3/missing $2"
- AC_MSG_RESULT(missing)
-fi
-AC_SUBST($1)])
-
-# Define a conditional.
-
-AC_DEFUN([AM_CONDITIONAL],
-[AC_SUBST($1_TRUE)
-AC_SUBST($1_FALSE)
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi])
-
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
-
-# serial 1
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-[ --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- USE_MAINTAINER_MODE=$enableval,
- USE_MAINTAINER_MODE=no)
- AC_MSG_RESULT($USE_MAINTAINER_MODE)
- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST(MAINT)dnl
-]
-)
-
diff --git a/newlib/libc/machine/cris/configure b/newlib/libc/machine/cris/configure
deleted file mode 100755
index 55475a5a9..000000000
--- a/newlib/libc/machine/cris/configure
+++ /dev/null
@@ -1,1883 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
- --enable-multilib build many library versions (default)"
-ac_help="$ac_help
- --enable-target-optspace optimize for space"
-ac_help="$ac_help
- --enable-malloc-debugging indicate malloc debugging requested"
-ac_help="$ac_help
- --enable-newlib-multithread enable support for multiple threads"
-ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
- --enable-newlib-elix-level supply desired elix library level (1-4)"
-ac_help="$ac_help
- --disable-newlib-io-float disable printf/scanf family float support"
-ac_help="$ac_help
- --disable-newlib-supplied-syscalls disable newlib from supplying syscalls"
-ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=setjmp.c
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in ../../../.. $srcdir/../../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-am__api_version="1.4"
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:578: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:631: checking whether build environment is sane" >&5
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "$*" != "X $srcdir/configure conftestfile" \
- && test "$*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
- fi
-
- test "$2" = conftestfile
- )
-then
- # Ok.
- :
-else
- { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftestmake <<\EOF
-all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- SET_MAKE=
-else
- echo "$ac_t""no" 1>&6
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-if test $host != $build; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:721: checking for Cygwin environment" >&5
-if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 726 "configure"
-#include "confdefs.h"
-
-int main() {
-
-#ifndef __CYGWIN__
-#define __CYGWIN__ __CYGWIN32__
-#endif
-return __CYGWIN__;
-; return 0; }
-EOF
-if { (eval echo configure:737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_cygwin=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_cygwin=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_cygwin" 1>&6
-CYGWIN=
-test "$ac_cv_cygwin" = yes && CYGWIN=yes
-echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:754: checking for mingw32 environment" >&5
-if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 759 "configure"
-#include "confdefs.h"
-
-int main() {
-return __MINGW32__;
-; return 0; }
-EOF
-if { (eval echo configure:766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_mingw32=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_mingw32=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_mingw32" 1>&6
-MINGW32=
-test "$ac_cv_mingw32" = yes && MINGW32=yes
-
-# Check whether --enable-multilib or --disable-multilib was given.
-if test "${enable_multilib+set}" = set; then
- enableval="$enable_multilib"
- case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;;
- esac
-else
- multilib=yes
-fi
-
-# Check whether --enable-target-optspace or --disable-target-optspace was given.
-if test "${enable_target_optspace+set}" = set; then
- enableval="$enable_target_optspace"
- case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;;
- esac
-else
- target_optspace=
-fi
-
-# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
-if test "${enable_malloc_debugging+set}" = set; then
- enableval="$enable_malloc_debugging"
- case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;;
- esac
-else
- malloc_debugging=
-fi
-
-# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given.
-if test "${enable_newlib_multithread+set}" = set; then
- enableval="$enable_newlib_multithread"
- case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_multithread=yes
-fi
-
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
-# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
-if test "${enable_newlib_elix_level+set}" = set; then
- enableval="$enable_newlib_elix_level"
- case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_elix_level=0
-fi
-
-# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given.
-if test "${enable_newlib_io_float+set}" = set; then
- enableval="$enable_newlib_io_float"
- case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_io_float=yes
-fi
-
-# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given.
-if test "${enable_newlib_supplied_syscalls+set}" = set; then
- enableval="$enable_newlib_supplied_syscalls"
- case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_may_supply_syscalls=yes
-fi
-
-
-
-if test x${newlib_may_supply_syscalls} = xyes; then
- MAY_SUPPLY_SYSCALLS_TRUE=
- MAY_SUPPLY_SYSCALLS_FALSE='#'
-else
- MAY_SUPPLY_SYSCALLS_TRUE='#'
- MAY_SUPPLY_SYSCALLS_FALSE=
-fi
-
-
-test -z "${with_target_subdir}" && with_target_subdir=.
-
-if test "${srcdir}" = "."; then
- if test "${with_target_subdir}" != "."; then
- newlib_basedir="${srcdir}/${with_multisrctop}../../../.."
- else
- newlib_basedir="${srcdir}/${with_multisrctop}../../.."
- fi
-else
- newlib_basedir="${srcdir}/../../.."
-fi
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:936: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:957: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:975: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-
-
-PACKAGE=newlib
-
-VERSION=1.14.0
-
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
-fi
-cat >> confdefs.h <<EOF
-#define PACKAGE "$PACKAGE"
-EOF
-
-cat >> confdefs.h <<EOF
-#define VERSION "$VERSION"
-EOF
-
-
-
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1018: checking for working aclocal-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1031: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
- AUTOCONF=autoconf
- echo "$ac_t""found" 1>&6
-else
- AUTOCONF="$missing_dir/missing autoconf"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1044: checking for working automake-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1057: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
- AUTOHEADER=autoheader
- echo "$ac_t""found" 1>&6
-else
- AUTOHEADER="$missing_dir/missing autoheader"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1070: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
- MAKEINFO=makeinfo
- echo "$ac_t""found" 1>&6
-else
- MAKEINFO="$missing_dir/missing makeinfo"
- echo "$ac_t""missing" 1>&6
-fi
-
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1095: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1125: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1174: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1183: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1198: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1229: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as"
-fi
-fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1261: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1293: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-if test -z "$ac_cv_prog_RANLIB"; then
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1325: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-else
- RANLIB=":"
-fi
-fi
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1370: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
- USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6
-
-
-if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
-
-
-echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
- ac_cv_exeext=.exe
-else
- rm -f conftest*
- echo 'int main () { return 0; }' > conftest.$ac_ext
- ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
- for file in conftest.*; do
- case $file in
- *.c | *.o | *.obj) ;;
- *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- else
- { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
- fi
- rm -f conftest*
- test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-fi
-fi
-
-EXEEXT=""
-test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-echo "$ac_t""${ac_cv_exeext}" 1>&6
-ac_exeext=$EXEEXT
-
-fi
-
-. ${newlib_basedir}/configure.host
-
-newlib_cflags="${newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-
-
-LDFLAGS=${ldflags}
-
-
-
-
-if test x${newlib_elix_level} = x0; then
- ELIX_LEVEL_0_TRUE=
- ELIX_LEVEL_0_FALSE='#'
-else
- ELIX_LEVEL_0_TRUE='#'
- ELIX_LEVEL_0_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x1; then
- ELIX_LEVEL_1_TRUE=
- ELIX_LEVEL_1_FALSE='#'
-else
- ELIX_LEVEL_1_TRUE='#'
- ELIX_LEVEL_1_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x2; then
- ELIX_LEVEL_2_TRUE=
- ELIX_LEVEL_2_FALSE='#'
-else
- ELIX_LEVEL_2_TRUE='#'
- ELIX_LEVEL_2_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x3; then
- ELIX_LEVEL_3_TRUE=
- ELIX_LEVEL_3_FALSE='#'
-else
- ELIX_LEVEL_3_TRUE='#'
- ELIX_LEVEL_3_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x4; then
- ELIX_LEVEL_4_TRUE=
- ELIX_LEVEL_4_FALSE='#'
-else
- ELIX_LEVEL_4_TRUE='#'
- ELIX_LEVEL_4_FALSE=
-fi
-
-
-
-if test x${use_libtool} = xyes; then
- USE_LIBTOOL_TRUE=
- USE_LIBTOOL_FALSE='#'
-else
- USE_LIBTOOL_TRUE='#'
- USE_LIBTOOL_FALSE=
-fi
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-
-
-
-
-
-
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g
-s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g
-s%@newlib_basedir@%$newlib_basedir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@RANLIB@%$RANLIB%g
-s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
-s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-s%@MAINT@%$MAINT%g
-s%@EXEEXT@%$EXEEXT%g
-s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g
-s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g
-s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g
-s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g
-s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g
-s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g
-s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g
-s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g
-s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g
-s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g
-s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g
-s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g
-s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g
-s%@OBJEXT@%$OBJEXT%g
-s%@oext@%$oext%g
-s%@aext@%$aext%g
-s%@libm_machine_dir@%$libm_machine_dir%g
-s%@machine_dir@%$machine_dir%g
-s%@sys_dir@%$sys_dir%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/newlib/libc/machine/cris/configure.in b/newlib/libc/machine/cris/configure.in
deleted file mode 100644
index 7764a7a7a..000000000
--- a/newlib/libc/machine/cris/configure.in
+++ /dev/null
@@ -1,12 +0,0 @@
-dnl This is the newlib/libc/machine/cris configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.5)
-AC_INIT(setjmp.c)
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
-AC_CONFIG_AUX_DIR(../../../..)
-
-NEWLIB_CONFIGURE(../../..)
-
-AC_OUTPUT(Makefile)
diff --git a/newlib/libc/machine/cris/include/pthread.h b/newlib/libc/machine/cris/include/pthread.h
deleted file mode 100644
index d872d040e..000000000
--- a/newlib/libc/machine/cris/include/pthread.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* pthread.h dummy.
- Copyright (C) 2001, 2004, 2005 Axis Communications AB.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* Simple fallback-include to enable thread-enabled exception support
- for libgcc, but with posix-interface to a default-dummy, so a posix
- library can optionally be linked in, which isn't possible if
- gthr-single.h is used. No other use is supported; *DO NOT* think
- this gives you a valid pthread interface to use in your applications. */
-
-#ifndef _PTHREAD_FAKE
-#define _PTHREAD_FAKE
-
-#ifdef __cplusplus
-extern "C" {
-# ifndef __THROW
-# define __THROW throw ()
-# endif
-#else
-# ifndef __THROW
-# define __THROW
-# endif
-#endif
-
-typedef int pthread_once_t;
-typedef unsigned int pthread_key_t;
-
-/* This must be layout-compatible with the linuxthreads type. */
-typedef struct
-{
- int a, b;
- void *c;
- int d;
- struct { long int e; int f; } g;
-} pthread_mutex_t;
-
-/* This give bits equal to the linuxthreads initializer. */
-#define PTHREAD_MUTEX_INITIALIZER \
- {0, 0, 0, 0, {0, 0}}
-
-#define PTHREAD_ONCE_INIT 0
-
-/* This isn't the right prototype, but it let's us get away with not
- defining a lot of datatypes. */
-extern int pthread_create (void) __THROW;
-
-extern int pthread_once (pthread_once_t *, void (*) (void)) __THROW;
-
-extern int pthread_key_create (pthread_key_t *, void (*) (void *)) __THROW;
-
-extern int pthread_setspecific (pthread_key_t, const void *) __THROW;
-
-extern void *pthread_getspecific (pthread_key_t) __THROW;
-
-extern int pthread_mutex_lock (pthread_mutex_t *) __THROW;
-
-extern int pthread_key_delete (pthread_key_t) __THROW;
-
-extern int pthread_mutex_trylock (pthread_mutex_t *) __THROW;
-
-extern int pthread_mutex_unlock (pthread_mutex_t *) __THROW;
-
-#ifdef __cplusplus
-}
-#endif
-
-#undef __THROW
-
-#endif /* not _PTHREAD_FAKE */
diff --git a/newlib/libc/machine/cris/libcdtor.c b/newlib/libc/machine/cris/libcdtor.c
deleted file mode 100644
index 327347782..000000000
--- a/newlib/libc/machine/cris/libcdtor.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Call ctors and dtors from elinux a.out shared libraries.
- Copyright (C) 1999, 2000, 2003, 2004, 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-typedef void (*vfnp) (void);
-
-/* The guts of the _Libctors and _Libdtors is "optimized" away into
- empty functions when the definition is visible as well. Simplest
- solution is to emit the definitions as asm. We have no .previous
- directive in a.out, so we rely on the fact that everything in this
- file goes into the .text section. */
-__asm__
-(
- ".text\n\t.global .$global.lib.ctors\n.$global.lib.ctors:\n\t.dword 0"
-);
-__asm__
-(
- ".text\n\t.global .$global.lib.dtors\n.$global.lib.dtors:\n\t.dword 0"
-);
-
-extern vfnp * const _Ctors asm(".$global.lib.ctors");
-extern vfnp * const _Dtors asm(".$global.lib.dtors");
-
-/* We better provide weak empty ctor and dtor lists, since they are
- not created if the main program does not have ctor/dtors. Because
- it's otherwise not used, GCC trunk "Mon Jul 25 22:33:14 UTC 2005"
- thinks it can remove defaultors, so we need to artificially mark it
- as used. FIXME: Perhaps a GCC bug. */
-
-static vfnp const defaultors[] __attribute__ ((__used__)) = {0, 0};
-
-extern vfnp * __CTOR_LIST__ __attribute__ ((weak, alias ("defaultors")));
-extern vfnp * __DTOR_LIST__ __attribute__ ((weak, alias ("defaultors")));
-
-void
-_Libctors (void)
-{
- const vfnp *firstor = _Ctors;
- const vfnp *ctors;
-
- /* Have to find the last ctor; they will run in opposite order as in
- the table. */
- if (firstor != 0 && *firstor != 0)
- {
- for (ctors = firstor; *ctors != 0; ctors++)
- ;
-
- while (--ctors != firstor)
- {
- (**ctors)();
- }
-
- (**ctors)();
- }
-}
-
-void
-_Libdtors(void)
-{
- const vfnp *dtors = _Dtors;
-
- if (dtors)
- while (*dtors != 0)
- {
- (**dtors++) ();
- }
-}
diff --git a/newlib/libc/machine/cris/memcpy.c b/newlib/libc/machine/cris/memcpy.c
deleted file mode 100644
index c7bd6ebdc..000000000
--- a/newlib/libc/machine/cris/memcpy.c
+++ /dev/null
@@ -1,236 +0,0 @@
-/* A memcpy for CRIS.
- Copyright (C) 1994-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* FIXME: This file should really only be used for reference, as the
- result is somewhat depending on gcc generating what we expect rather
- than what we describe. An assembly file should be used instead. */
-
-#include <stddef.h>
-
-/* Break even between movem and move16 is really at 38.7 * 2, but
- modulo 44, so up to the next multiple of 44, we use ordinary code. */
-#define MEMCPY_BY_BLOCK_THRESHOLD (44 * 2)
-
-/* No name ambiguities in this file. */
-__asm__ (".syntax no_register_prefix");
-
-void *
-memcpy(void *pdst, const void *psrc, size_t pn)
-{
- /* Now we want the parameters put in special registers.
- Make sure the compiler is able to make something useful of this.
- As it is now: r10 -> r13; r11 -> r11 (nop); r12 -> r12 (nop).
-
- If gcc was allright, it really would need no temporaries, and no
- stack space to save stuff on. */
-
- register void *return_dst __asm__ ("r10") = pdst;
- register unsigned char *dst __asm__ ("r13") = pdst;
- register unsigned const char *src __asm__ ("r11") = psrc;
- register int n __asm__ ("r12") = pn;
-
- /* When src is aligned but not dst, this makes a few extra needless
- cycles. I believe it would take as many to check that the
- re-alignment was unnecessary. */
- if (((unsigned long) dst & 3) != 0
- /* Don't align if we wouldn't copy more than a few bytes; so we
- don't have to check further for overflows. */
- && n >= 3)
- {
- if ((unsigned long) dst & 1)
- {
- n--;
- *dst = *src;
- src++;
- dst++;
- }
-
- if ((unsigned long) dst & 2)
- {
- n -= 2;
- *(short *) dst = *(short *) src;
- src += 2;
- dst += 2;
- }
- }
-
- /* Decide which copying method to use. */
- if (n >= MEMCPY_BY_BLOCK_THRESHOLD)
- {
- /* It is not optimal to tell the compiler about clobbering any
- registers; that will move the saving/restoring of those registers
- to the function prologue/epilogue, and make non-movem sizes
- suboptimal. */
- __asm__ volatile
- ("\
- ;; GCC does promise correct register allocations, but let's \n\
- ;; make sure it keeps its promises. \n\
- .ifnc %0-%1-%2,$r13-$r11-$r12 \n\
- .error \"GCC reg alloc bug: %0-%1-%4 != $r13-$r12-$r11\" \n\
- .endif \n\
- \n\
- ;; Save the registers we'll use in the movem process \n\
- ;; on the stack. \n\
- subq 11*4,sp \n\
- movem r10,[sp] \n\
- \n\
- ;; Now we've got this: \n\
- ;; r11 - src \n\
- ;; r13 - dst \n\
- ;; r12 - n \n\
- \n\
- ;; Update n for the first loop. \n\
- subq 44,r12 \n\
-0: \n\
-"
-#ifdef __arch_common_v10_v32
- /* Cater to branch offset difference between v32 and v10. We
- assume the branch below has an 8-bit offset. */
-" setf\n"
-#endif
-" movem [r11+],r10 \n\
- subq 44,r12 \n\
- bge 0b \n\
- movem r10,[r13+] \n\
- \n\
- ;; Compensate for last loop underflowing n. \n\
- addq 44,r12 \n\
- \n\
- ;; Restore registers from stack. \n\
- movem [sp+],r10"
-
- /* Outputs. */
- : "=r" (dst), "=r" (src), "=r" (n)
-
- /* Inputs. */
- : "0" (dst), "1" (src), "2" (n));
- }
-
- while (n >= 16)
- {
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
-
- n -= 16;
- }
-
- switch (n)
- {
- case 0:
- break;
-
- case 1:
- *dst = *src;
- break;
-
- case 2:
- *(short *) dst = *(short *) src;
- break;
-
- case 3:
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 4:
- *(long *) dst = *(long *) src;
- break;
-
- case 5:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 6:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 7:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 8:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src;
- break;
-
- case 9:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 10:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 11:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 12:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src;
- break;
-
- case 13:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 14:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 15:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
- }
-
- return return_dst;
-}
diff --git a/newlib/libc/machine/cris/memmove.c b/newlib/libc/machine/cris/memmove.c
deleted file mode 100644
index b022eaa92..000000000
--- a/newlib/libc/machine/cris/memmove.c
+++ /dev/null
@@ -1,257 +0,0 @@
-/* A memmove for CRIS.
- Copyright (C) 2000-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* FIXME: This file should really only be used for reference, as the
- result is somewhat depending on gcc generating what we expect rather
- than what we describe. An assembly file should be used instead.
-
- Even worse, we base it on memcpy, on the assumption that overlapping
- moves are rare, and we will do no worse than the generic memmove. */
-
-#include <stddef.h>
-
-/* Break even between movem and move16 is really at 38.7 * 2, but
- modulo 44, so up to the next multiple of 44, we use ordinary code. */
-#define MEMMOVE_BY_BLOCK_THRESHOLD (44 * 2)
-
-/* No name ambiguities in this file. */
-__asm__ (".syntax no_register_prefix");
-
-void *
-memmove(void *pdst, const void *psrc, size_t pn)
-{
- /* Now we want the parameters put in special registers.
- Make sure the compiler is able to make something useful of this.
- As it is now: r10 -> r13; r11 -> r11 (nop); r12 -> r12 (nop).
-
- If gcc was allright, it really would need no temporaries, and no
- stack space to save stuff on. */
-
- register void *return_dst __asm__ ("r10") = pdst;
- register unsigned char *dst __asm__ ("r13") = pdst;
- register unsigned const char *src __asm__ ("r11") = psrc;
- register int n __asm__ ("r12") = pn;
-
- /* Check and handle overlap. */
- if (src < dst && dst < src + n)
- {
- /* Destructive overlap. We could optimize this, but we don't (for
- the moment). */
- src += n;
- dst += n;
- while (n--)
- {
- *--dst = *--src;
- }
-
- return return_dst;
- }
- /* Whew, no overlap. Proceed as with memcpy. We could call it instead
- of having a copy here. That would spoil some of the optimization, so
- we take the trouble with having two copies. */
-
- /* When src is aligned but not dst, this makes a few extra needless
- cycles. I believe it would take as many to check that the
- re-alignment was unnecessary. */
- if (((unsigned long) dst & 3) != 0
- /* Don't align if we wouldn't copy more than a few bytes; so we
- don't have to check further for overflows. */
- && n >= 3)
- {
- if ((unsigned long) dst & 1)
- {
- n--;
- *dst = *src;
- src++;
- dst++;
- }
-
- if ((unsigned long) dst & 2)
- {
- n -= 2;
- *(short *) dst = *(short *) src;
- src += 2;
- dst += 2;
- }
- }
-
- /* Decide which copying method to use. */
- if (n >= MEMMOVE_BY_BLOCK_THRESHOLD)
- {
- /* It is not optimal to tell the compiler about clobbering any
- registers; that will move the saving/restoring of those registers
- to the function prologue/epilogue, and make non-movem sizes
- suboptimal. */
- __asm__ volatile
- ("\
- ;; GCC does promise correct register allocations, but let's \n\
- ;; make sure it keeps its promises. \n\
- .ifnc %0-%1-%2,$r13-$r11-$r12 \n\
- .error \"GCC reg alloc bug: %0-%1-%4 != $r13-$r12-$r11\" \n\
- .endif \n\
- \n\
- ;; Save the registers we'll use in the movem process \n\
- ;; on the stack. \n\
- subq 11*4,sp \n\
- movem r10,[sp] \n\
- \n\
- ;; Now we've got this: \n\
- ;; r11 - src \n\
- ;; r13 - dst \n\
- ;; r12 - n \n\
- \n\
- ;; Update n for the first loop. \n\
- subq 44,r12 \n\
-0: \n\
-"
-#ifdef __arch_common_v10_v32
- /* Cater to branch offset difference between v32 and v10. We
- assume the branch below has an 8-bit offset. */
-" setf\n"
-#endif
-" movem [r11+],r10 \n\
- subq 44,r12 \n\
- bge 0b \n\
- movem r10,[r13+] \n\
- \n\
- ;; Compensate for last loop underflowing n. \n\
- addq 44,r12 \n\
- \n\
- ;; Restore registers from stack. \n\
- movem [sp+],r10"
-
- /* Outputs. */
- : "=r" (dst), "=r" (src), "=r" (n)
-
- /* Inputs. */
- : "0" (dst), "1" (src), "2" (n));
- }
-
- while (n >= 16)
- {
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
-
- n -= 16;
- }
-
- switch (n)
- {
- case 0:
- break;
-
- case 1:
- *dst = *src;
- break;
-
- case 2:
- *(short *) dst = *(short *) src;
- break;
-
- case 3:
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 4:
- *(long *) dst = *(long *) src;
- break;
-
- case 5:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 6:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 7:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 8:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src;
- break;
-
- case 9:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 10:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 11:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
-
- case 12:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src;
- break;
-
- case 13:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *dst = *src;
- break;
-
- case 14:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src;
- break;
-
- case 15:
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(long *) dst = *(long *) src; dst += 4; src += 4;
- *(short *) dst = *(short *) src; dst += 2; src += 2;
- *dst = *src;
- break;
- }
-
- return return_dst;
-}
diff --git a/newlib/libc/machine/cris/memset.c b/newlib/libc/machine/cris/memset.c
deleted file mode 100644
index c94ea9b3e..000000000
--- a/newlib/libc/machine/cris/memset.c
+++ /dev/null
@@ -1,259 +0,0 @@
-/* A memset for CRIS.
- Copyright (C) 1999-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* FIXME: This file should really only be used for reference, as the
- result is somewhat depending on gcc generating what we expect rather
- than what we describe. An assembly file should be used instead. */
-
-/* Note the multiple occurrence of the expression "12*4", including the
- asm. It is hard to get it into the asm in a good way. Thus better to
- expose the problem everywhere: no macro. */
-
-/* Assuming one cycle per dword written or read (ok, not really true; the
- world is not ideal), and one cycle per instruction, then 43+3*(n/48-1)
- <= 24+24*(n/48-1) so n >= 45.7; n >= 0.9; we win on the first full
- 48-byte block to set. */
-
-#define MEMSET_BY_BLOCK_THRESHOLD (1 * 48)
-
-/* No name ambiguities in this file. */
-__asm__ (".syntax no_register_prefix");
-
-void *memset(void *pdst, int c, unsigned int plen)
-{
- /* Now we want the parameters in special registers. Make sure the
- compiler does something usable with this. */
-
- register char *return_dst __asm__ ("r10") = pdst;
- register int n __asm__ ("r12") = plen;
- register int lc __asm__ ("r11") = c;
-
- /* Most apps use memset sanely. Memsetting about 3..4 bytes or less get
- penalized here compared to the generic implementation. */
-
- /* This is fragile performancewise at best. Check with newer GCC
- releases, if they compile cascaded "x |= x << 8" to sane code. */
- __asm__("movu.b %0,r13 \n\
- lslq 8,r13 \n\
- move.b %0,r13 \n\
- move.d r13,%0 \n\
- lslq 16,r13 \n\
- or.d r13,%0"
- : "=r" (lc) /* Inputs. */
- : "0" (lc) /* Outputs. */
- : "r13"); /* Trash. */
-
- {
- register char *dst __asm__ ("r13") = pdst;
-
- if (((unsigned long) pdst & 3) != 0
- /* Oops! n = 0 must be a valid call, regardless of alignment. */
- && n >= 3)
- {
- if ((unsigned long) dst & 1)
- {
- *dst = (char) lc;
- n--;
- dst++;
- }
-
- if ((unsigned long) dst & 2)
- {
- *(short *) dst = lc;
- n -= 2;
- dst += 2;
- }
- }
-
- /* Decide which setting method to use. */
- if (n >= MEMSET_BY_BLOCK_THRESHOLD)
- {
- /* It is not optimal to tell the compiler about clobbering any
- registers; that will move the saving/restoring of those registers
- to the function prologue/epilogue, and make non-block sizes
- suboptimal. */
- __asm__ volatile
- ("\
- ;; GCC does promise correct register allocations, but let's \n\
- ;; make sure it keeps its promises. \n\
- .ifnc %0-%1-%4,$r13-$r12-$r11 \n\
- .error \"GCC reg alloc bug: %0-%1-%4 != $r13-$r12-$r11\" \n\
- .endif \n\
- \n\
- ;; Save the registers we'll clobber in the movem process \n\
- ;; on the stack. Don't mention them to gcc, it will only be \n\
- ;; upset. \n\
- subq 11*4,sp \n\
- movem r10,[sp] \n\
- \n\
- move.d r11,r0 \n\
- move.d r11,r1 \n\
- move.d r11,r2 \n\
- move.d r11,r3 \n\
- move.d r11,r4 \n\
- move.d r11,r5 \n\
- move.d r11,r6 \n\
- move.d r11,r7 \n\
- move.d r11,r8 \n\
- move.d r11,r9 \n\
- move.d r11,r10 \n\
- \n\
- ;; Now we've got this: \n\
- ;; r13 - dst \n\
- ;; r12 - n \n\
- \n\
- ;; Update n for the first loop \n\
- subq 12*4,r12 \n\
-0: \n\
-"
-#ifdef __arch_common_v10_v32
- /* Cater to branch offset difference between v32 and v10. We
- assume the branch below has an 8-bit offset. */
-" setf\n"
-#endif
-" subq 12*4,r12 \n\
- bge 0b \n\
- movem r11,[r13+] \n\
- \n\
- ;; Compensate for last loop underflowing n. \n\
- addq 12*4,r12 \n\
- \n\
- ;; Restore registers from stack. \n\
- movem [sp+],r10"
-
- /* Outputs. */
- : "=r" (dst), "=r" (n)
-
- /* Inputs. */
- : "0" (dst), "1" (n), "r" (lc));
- }
-
- /* An ad-hoc unroll, used for 4*12-1..16 bytes. */
- while (n >= 16)
- {
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- n -= 16;
- }
-
- switch (n)
- {
- case 0:
- break;
-
- case 1:
- *dst = (char) lc;
- break;
-
- case 2:
- *(short *) dst = (short) lc;
- break;
-
- case 3:
- *(short *) dst = (short) lc; dst += 2;
- *dst = (char) lc;
- break;
-
- case 4:
- *(long *) dst = lc;
- break;
-
- case 5:
- *(long *) dst = lc; dst += 4;
- *dst = (char) lc;
- break;
-
- case 6:
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc;
- break;
-
- case 7:
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc; dst += 2;
- *dst = (char) lc;
- break;
-
- case 8:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc;
- break;
-
- case 9:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *dst = (char) lc;
- break;
-
- case 10:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc;
- break;
-
- case 11:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc; dst += 2;
- *dst = (char) lc;
- break;
-
- case 12:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc;
- break;
-
- case 13:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *dst = (char) lc;
- break;
-
- case 14:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc;
- break;
-
- case 15:
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(long *) dst = lc; dst += 4;
- *(short *) dst = (short) lc; dst += 2;
- *dst = (char) lc;
- break;
- }
- }
-
- return return_dst;
-}
diff --git a/newlib/libc/machine/cris/setjmp.c b/newlib/libc/machine/cris/setjmp.c
deleted file mode 100644
index ca544942f..000000000
--- a/newlib/libc/machine/cris/setjmp.c
+++ /dev/null
@@ -1,212 +0,0 @@
-/* A setjmp.c for CRIS
- Copyright (C) 1993-2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* For benefit of CRIS v0..v3, we save and restore CCR to be able to
- correctly handle DI/EI; otherwise there would be no reason to save it.
- Note also that the "move x,ccr" does NOT affect
- the DMA enable bits (E and D) of v0..v3.
-
- We do not save mof; it is call-clobbered. It also does not exist in
- v0..v8; it should be safe to read or write to it there, but better not.
-
- jmp_buf[0] - PC
- jmp_buf[1] - SP (R14)
- jmp_buf[2] - R13
- jmp_buf[3] - R12
- jmp_buf[4] - R11
- jmp_buf[5] - R10
- jmp_buf[6] - R9
- jmp_buf[7] - R8
- jmp_buf[8] - R7
- jmp_buf[9] - R6
- jmp_buf[10] - R5
- jmp_buf[11] - R4
- jmp_buf[12] - R3
- jmp_buf[13] - R2
- jmp_buf[14] - R1
- jmp_buf[15] - R0
- jmp_buf[16] - SRP
- jmp_buf[17] - CCR
- */
-
-#include <setjmp.h>
-
-int
-setjmp (jmp_buf buf)
-{
- int ret;
-#if defined (__arch_common_v10_v32) || defined (__arch_v32)
- /* No offsets in the compatibility mode. Also, movem saves in
- different order on v10 than on v32, so we use single move
- instructions instead, this not being a speed-prioritized operation.
- And we don't save CCR or CCS; since long unuseful. */
- __asm__ __volatile__
- ("move.d %1,$r13 \n\
- move 0f,$mof \n\
- move $mof,[$r13+] \n\
- move.d $sp,[$r13+] \n\
- clear.d [$r13+] \n\
- move.d $r12,[$r13+] \n\
- move.d $r11,[$r13+] \n\
- move.d $r10,[$r13+] \n\
- moveq 1,$r9 \n\
- move.d $r9,[$r13+] \n\
- move.d $r8,[$r13+] \n\
- move.d $r7,[$r13+] \n\
- move.d $r6,[$r13+] \n\
- move.d $r5,[$r13+] \n\
- move.d $r4,[$r13+] \n\
- move.d $r3,[$r13+] \n\
- move.d $r2,[$r13+] \n\
- move.d $r1,[$r13+] \n\
- move.d $r0,[$r13+] \n\
- move $srp,[$r13+] \n\
- clear.d [$r13+] \n\
- clear.d $r9 \n\
-0: \n\
- move.d $r9,%0"
-
- /* Output. */
- : "=&r" (ret)
-
- /* Input. */
- : "r" (buf)
-
- /* Clobber. */
- : "r9", "r13", "memory");
-#else /* not __arch_common_v10_v32 or __arch_v32 */
-#ifdef __PIC__
- __asm__ __volatile__
- ("moveq 1,$r9 \n\
- movem $sp,[%1+1*4] \n\
- move.d $pc,$r9 \n\
- addq 0f-.,$r9 \n\
- move.d $r9,[%1] \n\
- move $srp,[%1+16*4] \n\
- move $ccr,[%1+17*4] \n\
- clear.d $r9 \n\
-0: \n\
- move.d $r9,%0"
-
- /* Output. */
- : "=&r" (ret)
-
- /* Input. */
- : "r" (buf)
-
- /* Clobber. */
- : "r9", "memory");
-#else /* not PIC */
- __asm__ __volatile__
- ("moveq 1,$r9 \n\
- movem $sp,[%1+1*4] \n\
- move.d 0f,$r9 \n\
- move.d $r9,[%1] \n\
- move $srp,[%1+16*4] \n\
- move $ccr,[%1+17*4] \n\
- clear.d $r9 \n\
-0: \n\
- move.d $r9,%0"
-
- /* Output. */
- : "=&r" (ret)
-
- /* Input. */
- : "r" (buf)
-
- /* Clobber. */
- : "r9");
-#endif /* not PIC */
-#endif /* not __arch_common_v10_v32 or __arch_v32 */
- return ret;
-}
-
-void
-longjmp(jmp_buf buf, int val)
-{
-#if defined (__arch_common_v10_v32) || defined (__arch_v32)
- __asm__ __volatile__
- ("cmpq 0,%1 \n\
- beq 0f \n\
- move.d %0,$r13 ; In delay-slot. \n\
- addq 6*4,$r13 \n\
- move.d %1,[$r13] \n\
- subq 6*4,$r13 \n\
-0:\n"
-#ifdef __arch_common_v10_v32
- /* Cater to branch offset difference between v32 and v10. We
- assume the branch above is 8-bit. */
-" setf\n"
-#endif
-" move [$r13+],$mof \n\
- move.d [$r13+],$sp \n\
- addq 4,$r13 \n\
- move.d [$r13+],$r12 \n\
- move.d [$r13+],$r11 \n\
- move.d [$r13+],$r10 \n\
- move.d [$r13+],$r9 \n\
- move.d [$r13+],$r8 \n\
- move.d [$r13+],$r7 \n\
- move.d [$r13+],$r6 \n\
- move.d [$r13+],$r5 \n\
- move.d [$r13+],$r4 \n\
- move.d [$r13+],$r3 \n\
- move.d [$r13+],$r2 \n\
- move.d [$r13+],$r1 \n\
- move.d [$r13+],$r0 \n\
- move [$r13+],$srp \n\
- move $mof,$r13 \n\
- jump $r13 \n\
- setf"
-
- /* No outputs. */
- :
-
- /* Inputs. */
- : "r" (buf), "r" (val)
- : "r13", "memory");
-
-#else /* not __arch_common_v10_v32 or __arch_v32 */
- __asm__ __volatile__
- ("move [%0+17*4],$ccr \n\
- move [%0+16*4],$srp \n\
- test.d %1 \n\
- beq 0f \n\
- nop \n\
- move.d %1,[%0+6*4] ; Offset for r9. \n\
-0: \n\
- movem [%0],$pc"
-
- /* No outputs. */
- :
-
- /* Inputs. */
- : "r" (buf), "r" (val)
- : "memory");
-#endif /* not __arch_common_v10_v32 or __arch_v32 */
-}
diff --git a/newlib/libc/machine/cris/sys/errno.h b/newlib/libc/machine/cris/sys/errno.h
deleted file mode 100644
index d3529754d..000000000
--- a/newlib/libc/machine/cris/sys/errno.h
+++ /dev/null
@@ -1,166 +0,0 @@
-/* This file is to be kept in sync with newlib/libc/include/sys/errno.h
- on which it is based, except values used or returned by syscalls must
- be those of the Linux/CRIS kernel. */
-
-/* errno is not a global variable, because that would make using it
- non-reentrant. Instead, its address is returned by the function
- __errno. */
-
-#ifndef _SYS_ERRNO_H_
-#ifdef __cplusplus
-extern "C" {
-#endif
-#define _SYS_ERRNO_H_
-
-#include <sys/reent.h>
-
-#ifndef _REENT_ONLY
-#define errno (*__errno())
-extern int *__errno _PARAMS ((void));
-#endif
-
-/* Please don't use these variables directly.
- Use strerror instead. */
-extern _CONST char * _CONST _sys_errlist[];
-extern int _sys_nerr;
-
-#define __errno_r(ptr) ((ptr)->_errno)
-
-/* Adjusted to the linux asm/errno.h */
-#define EPERM 1 /* Operation not permitted */
-#define ENOENT 2 /* No such file or directory */
-#define ESRCH 3 /* No such process */
-#define EINTR 4 /* Interrupted system call */
-#define EIO 5 /* I/O error */
-#define ENXIO 6 /* No such device or address */
-#define E2BIG 7 /* Arg list too long */
-#define ENOEXEC 8 /* Exec format error */
-#define EBADF 9 /* Bad file number */
-#define ECHILD 10 /* No child processes */
-#define EAGAIN 11 /* Try again */
-#define ENOMEM 12 /* Out of memory */
-#define EACCES 13 /* Permission denied */
-#define EFAULT 14 /* Bad address */
-#define ENOTBLK 15 /* Block device required */
-#define EBUSY 16 /* Device or resource busy */
-#define EEXIST 17 /* File exists */
-#define EXDEV 18 /* Cross-device link */
-#define ENODEV 19 /* No such device */
-#define ENOTDIR 20 /* Not a directory */
-#define EISDIR 21 /* Is a directory */
-#define EINVAL 22 /* Invalid argument */
-#define ENFILE 23 /* File table overflow */
-#define EMFILE 24 /* Too many open files */
-#define ENOTTY 25 /* Not a typewriter */
-#define ETXTBSY 26 /* Text file busy */
-#define EFBIG 27 /* File too large */
-#define ENOSPC 28 /* No space left on device */
-#define ESPIPE 29 /* Illegal seek */
-#define EROFS 30 /* Read-only file system */
-#define EMLINK 31 /* Too many links */
-#define EPIPE 32 /* Broken pipe */
-#define EDOM 33 /* Math argument out of domain of func */
-#define ERANGE 34 /* Math result not representable */
-#define EDEADLK 35 /* Resource deadlock would occur */
-#define ENAMETOOLONG 36 /* File name too long */
-#define ENOLCK 37 /* No record locks available */
-#define ENOSYS 38 /* Function not implemented */
-#define ENOTEMPTY 39 /* Directory not empty */
-#define ELOOP 40 /* Too many symbolic links encountered */
-#define EWOULDBLOCK EAGAIN /* Operation would block */
-#define ENOMSG 42 /* No message of desired type */
-#define EIDRM 43 /* Identifier removed */
-#define ECHRNG 44 /* Channel number out of range */
-#define EL2NSYNC 45 /* Level 2 not synchronized */
-#define EL3HLT 46 /* Level 3 halted */
-#define EL3RST 47 /* Level 3 reset */
-#define ELNRNG 48 /* Link number out of range */
-#define EUNATCH 49 /* Protocol driver not attached */
-#define ENOCSI 50 /* No CSI structure available */
-#define EL2HLT 51 /* Level 2 halted */
-#define EBADE 52 /* Invalid exchange */
-#define EBADR 53 /* Invalid request descriptor */
-#define EXFULL 54 /* Exchange full */
-#define ENOANO 55 /* No anode */
-#define EBADRQC 56 /* Invalid request code */
-#define EBADSLT 57 /* Invalid slot */
-
-#define EDEADLOCK EDEADLK
-
-#define EBFONT 59 /* Bad font file format */
-/* This is only used internally in newlib; not returned by the kernel.
- EBFONT seems the closest match for a "bad file format" error. */
-#define EFTYPE EBFONT /* Inappropriate file type or format */
-#define ENOSTR 60 /* Device not a stream */
-#define ENODATA 61 /* No data available */
-#define ETIME 62 /* Timer expired */
-#define ENOSR 63 /* Out of streams resources */
-#define ENONET 64 /* Machine is not on the network */
-#define ENOPKG 65 /* Package not installed */
-#define EREMOTE 66 /* Object is remote */
-#define ENOLINK 67 /* Link has been severed */
-#define EADV 68 /* Advertise error */
-#define ESRMNT 69 /* Srmount error */
-#define ECOMM 70 /* Communication error on send */
-#define EPROTO 71 /* Protocol error */
-#define EMULTIHOP 72 /* Multihop attempted */
-#define EDOTDOT 73 /* RFS specific error */
-#define EBADMSG 74 /* Not a data message */
-#define EOVERFLOW 75 /* Value too large for defined data type */
-#define ENOTUNIQ 76 /* Name not unique on network */
-#define EBADFD 77 /* File descriptor in bad state */
-#define EREMCHG 78 /* Remote address changed */
-#define ELIBACC 79 /* Can not access a needed shared library */
-#define ELIBBAD 80 /* Accessing a corrupted shared library */
-#define ELIBSCN 81 /* .lib section in a.out corrupted */
-#define ELIBMAX 82 /* Attempting to link in too many shared libraries */
-#define ELIBEXEC 83 /* Cannot exec a shared library directly */
-#define EILSEQ 84 /* Illegal byte sequence */
-#define ERESTART 85 /* Interrupted system call should be restarted */
-#define ESTRPIPE 86 /* Streams pipe error */
-#define EUSERS 87 /* Too many users */
-#define ENOTSOCK 88 /* Socket operation on non-socket */
-#define EDESTADDRREQ 89 /* Destination address required */
-#define EMSGSIZE 90 /* Message too long */
-#define EPROTOTYPE 91 /* Protocol wrong type for socket */
-#define ENOPROTOOPT 92 /* Protocol not available */
-#define EPROTONOSUPPORT 93 /* Protocol not supported */
-#define ESOCKTNOSUPPORT 94 /* Socket type not supported */
-#define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */
-#define EPFNOSUPPORT 96 /* Protocol family not supported */
-#define EAFNOSUPPORT 97 /* Address family not supported by protocol */
-#define EADDRINUSE 98 /* Address already in use */
-#define EADDRNOTAVAIL 99 /* Cannot assign requested address */
-#define ENETDOWN 100 /* Network is down */
-#define ENETUNREACH 101 /* Network is unreachable */
-#define ENETRESET 102 /* Network dropped connection because of reset */
-#define ECONNABORTED 103 /* Software caused connection abort */
-#define ECONNRESET 104 /* Connection reset by peer */
-#define ENOBUFS 105 /* No buffer space available */
-#define EISCONN 106 /* Transport endpoint is already connected */
-#define ENOTCONN 107 /* Transport endpoint is not connected */
-#define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */
-#define ETOOMANYREFS 109 /* Too many references: cannot splice */
-#define ETIMEDOUT 110 /* Connection timed out */
-#define ECONNREFUSED 111 /* Connection refused */
-#define EHOSTDOWN 112 /* Host is down */
-#define EHOSTUNREACH 113 /* No route to host */
-#define EALREADY 114 /* Operation already in progress */
-#define EINPROGRESS 115 /* Operation now in progress */
-#define ESTALE 116 /* Stale NFS file handle */
-#define EUCLEAN 117 /* Structure needs cleaning */
-#define ENOTNAM 118 /* Not a XENIX named type file */
-#define ENAVAIL 119 /* No XENIX semaphores available */
-#define EISNAM 120 /* Is a named type file */
-#define EREMOTEIO 121 /* Remote I/O error */
-#define EDQUOT 122 /* Quota exceeded */
-
-#define ENOMEDIUM 123 /* No medium found */
-#define EMEDIUMTYPE 124 /* Wrong medium type */
-
-#define __ELASTERROR 2000 /* Users can add values starting here */
-
-#ifdef __cplusplus
-}
-#endif
-#endif /* _SYS_ERRNO_H */
diff --git a/newlib/libc/machine/cris/sys/fcntl.h b/newlib/libc/machine/cris/sys/fcntl.h
deleted file mode 100644
index 6017a190f..000000000
--- a/newlib/libc/machine/cris/sys/fcntl.h
+++ /dev/null
@@ -1,163 +0,0 @@
-/* This file is to be kept in sync with newlib/libc/include/sys/fcntl.h,
- on which it is based, except values used or returned by syscalls must
- be those of the Linux/CRIS kernel. */
-
-#ifndef _FCNTL_
-#ifdef __cplusplus
-extern "C" {
-#endif
-#define _FCNTL_
-#include <_ansi.h>
-#define _FOPEN (-1) /* from sys/file.h, kernel use only */
-#define _FREAD 0x0001 /* read enabled */
-#define _FWRITE 0x0002 /* write enabled */
-#define _FNDELAY 0x0800 /* non blocking I/O (4.2 style) */
-#define _FAPPEND 0x0400 /* append (writes guaranteed at the end) */
-#define _FMARK 0x0010 /* internal; mark during gc() */
-#define _FDEFER 0x0020 /* internal; defer for next gc pass */
-#define _FASYNC 0x2000 /* signal pgrp when data ready */
-#define _FCREAT 0x0040 /* open with file create */
-#define _FTRUNC 0x0200 /* open with truncation */
-#define _FEXCL 0x0080 /* error on open if file exists */
-#define _FNBIO _FNONBLOCK /* non blocking I/O (sys5 style) */
-#define _FSYNC 0x1000 /* do all writes synchronously */
-#define _FNONBLOCK 0x0800 /* non blocking I/O (POSIX style) */
-#define _FNOCTTY 0x0100 /* don't assign a ctty on this open */
-
-#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
-
-/*
- * Flag values for open(2) and fcntl(2)
- * The kernel adds 1 to the open modes to turn it into some
- * combination of FREAD and FWRITE.
- */
-#define O_RDONLY 0 /* +1 == FREAD */
-#define O_WRONLY 1 /* +1 == FWRITE */
-#define O_RDWR 2 /* +1 == FREAD|FWRITE */
-#define O_APPEND _FAPPEND
-#define O_CREAT _FCREAT
-#define O_TRUNC _FTRUNC
-#define O_EXCL _FEXCL
-/* O_SYNC _FSYNC not posix, defined below */
-/* O_NDELAY _FNDELAY set in include/fcntl.h */
-/* O_NDELAY _FNBIO set in 5include/fcntl.h */
-#define O_NONBLOCK _FNONBLOCK
-#define O_NOCTTY _FNOCTTY
-
-#ifndef _POSIX_SOURCE
-
-#define O_SYNC _FSYNC
-
-/*
- * Flags that work for fcntl(fd, F_SETFL, FXXXX)
- */
-#define FAPPEND _FAPPEND
-#define FSYNC _FSYNC
-#define FASYNC _FASYNC
-#define FNBIO _FNBIO
-#define FNONBIO _FNONBLOCK /* XXX fix to be NONBLOCK everywhere */
-#define FNDELAY _FNDELAY
-
-/*
- * Flags that are disallowed for fcntl's (FCNTLCANT);
- * used for opens, internal state, or locking.
- */
-#define FREAD _FREAD
-#define FWRITE _FWRITE
-#define FMARK _FMARK
-#define FDEFER _FDEFER
-#define FSHLOCK _FSHLOCK
-#define FEXLOCK _FEXLOCK
-
-/*
- * The rest of the flags, used only for opens
- */
-#define FOPEN _FOPEN
-#define FCREAT _FCREAT
-#define FTRUNC _FTRUNC
-#define FEXCL _FEXCL
-#define FNOCTTY _FNOCTTY
-
-#endif /* !_POSIX_SOURCE */
-
-/* XXX close on exec request; must match UF_EXCLOSE in user.h */
-#define FD_CLOEXEC 1 /* posix */
-
-/* fcntl(2) requests */
-#define F_DUPFD 0 /* dup */
-#define F_GETFD 1 /* get f_flags */
-#define F_SETFD 2 /* set f_flags */
-#define F_GETFL 3 /* more flags (cloexec) */
-#define F_SETFL 4
-#define F_GETLK 5
-#define F_SETLK 6
-#define F_SETLKW 7
-
-#define F_SETOWN 8 /* for sockets. */
-#define F_GETOWN 9 /* for sockets. */
-
-/* for F_[GET|SET]FL */
-#define FD_CLOEXEC 1 /* actually anything with low bit set goes */
-
-/* for posix fcntl() and lockf() */
-#define F_RDLCK 0
-#define F_WRLCK 1
-#define F_UNLCK 2
-
-/* for old implementation of bsd flock () */
-#define F_EXLCK 4 /* or 3 */
-#define F_SHLCK 8 /* or 4 */
-
-/* operations for bsd flock(), also used by the kernel implementation */
-#define LOCK_SH 1 /* shared lock */
-#define LOCK_EX 2 /* exclusive lock */
-#define LOCK_NB 4 /* or'd with one of the above to prevent
- blocking */
-#define LOCK_UN 8 /* remove lock */
-
-/* file segment locking set data type - information passed to system by user */
-struct flock {
- short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */
- short l_whence; /* flag to choose starting offset */
- long l_start; /* relative offset, in bytes */
- long l_len; /* length, in bytes; 0 means lock to EOF */
- short l_pid; /* returned with F_GETLK */
- short l_xxx; /* reserved for future use */
-};
-
-#ifndef _POSIX_SOURCE
-/* extended file segment locking set data type */
-struct eflock {
- short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */
- short l_whence; /* flag to choose starting offset */
- long l_start; /* relative offset, in bytes */
- long l_len; /* length, in bytes; 0 means lock to EOF */
- short l_pid; /* returned with F_GETLK */
- short l_xxx; /* reserved for future use */
- long l_rpid; /* Remote process id wanting this lock */
- long l_rsys; /* Remote system id wanting this lock */
-};
-#endif /* !_POSIX_SOURCE */
-
-
-#include <sys/types.h>
-#include <sys/stat.h> /* sigh. for the mode bits for open/creat */
-
-extern int open _PARAMS ((const char *, int, ...));
-extern int creat _PARAMS ((const char *, mode_t));
-extern int fcntl _PARAMS ((int, int, ...));
-
-/* Provide _<systemcall> prototypes for functions provided by some versions
- of newlib. */
-#ifdef _COMPILING_NEWLIB
-extern int _open _PARAMS ((const char *, int, ...));
-extern int _fcntl _PARAMS ((int, int, ...));
-#ifdef __LARGE64_FILES
-extern int _open64 _PARAMS ((const char *, int, ...));
-#endif
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-#endif /* !_FCNTL_ */
diff --git a/newlib/libc/machine/cris/sys/signal.h b/newlib/libc/machine/cris/sys/signal.h
deleted file mode 100644
index 081a75fe9..000000000
--- a/newlib/libc/machine/cris/sys/signal.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/* This file is to be kept in sync (well, reasonably so, it's quite
- different) with newlib/libc/include/sys/signal.h on which it is
- based, except values used or returned by syscalls must be those of
- the Linux/CRIS kernel. */
-
-/* sys/signal.h */
-
-#ifndef _SYS_SIGNAL_H
-#define _SYS_SIGNAL_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "_ansi.h"
-
-typedef unsigned long sigset_t;
-
-/* Adjusted to linux, has unused sa_restorer field and unsigned long
- sa_flags; relatively unimportant though. */
-/* Type of a signal handler. */
-typedef void (*__sighandler_t)(int);
-
-/* The type used in newlib sources. */
-typedef __sighandler_t _sig_func_ptr;
-
-struct sigaction {
- __sighandler_t sa_handler;
- sigset_t sa_mask;
- unsigned long sa_flags;
- void (*sa_restorer)(void);
-};
-
-/* Adjusted to glibc; other values. */
-#define SA_NOCLDSTOP 1 /* only value supported now for sa_flags */
-#define SIG_SETMASK 2 /* set mask with sigprocmask() */
-#define SIG_BLOCK 0 /* set of signals to block */
-#define SIG_UNBLOCK 1 /* set of signals to, well, unblock */
-
-/* These depend upon the type of sigset_t, which right now
- is always a long.. They're in the POSIX namespace, but
- are not ANSI. */
-#define sigaddset(what,sig) (*(what) |= (1<<(sig)))
-#define sigemptyset(what) (*(what) = 0)
-
-int sigprocmask (int __how, const sigset_t *__a, sigset_t *__b);
-
-#define SIGHUP 1
-#define SIGINT 2
-#define SIGQUIT 3
-#define SIGILL 4
-#define SIGTRAP 5
-#define SIGABRT 6
-#define SIGIOT 6
-#define SIGBUS 7
-#define SIGFPE 8
-#define SIGKILL 9
-#define SIGUSR1 10
-#define SIGSEGV 11
-#define SIGUSR2 12
-#define SIGPIPE 13
-#define SIGALRM 14
-#define SIGTERM 15
-#define SIGSTKFLT 16
-#define SIGCHLD 17
-#define SIGCONT 18
-#define SIGSTOP 19
-#define SIGTSTP 20
-#define SIGTTIN 21
-#define SIGTTOU 22
-#define SIGURG 23
-#define SIGXCPU 24
-#define SIGXFSZ 25
-#define SIGVTALRM 26
-#define SIGPROF 27
-#define SIGWINCH 28
-#define SIGIO 29
-#define SIGPOLL SIGIO
-#define SIGPWR 30
-#define NSIG 31
-
-#ifdef __cplusplus
-}
-#endif
-#ifndef _SIGNAL_H_
-/* Some applications take advantage of the fact that <sys/signal.h>
- * and <signal.h> are equivalent in glibc. Allow for that here. */
-#include <signal.h>
-#endif
-#endif /* _SYS_SIGNAL_H */
diff --git a/newlib/libc/machine/crx/Makefile.am b/newlib/libc/machine/crx/Makefile.am
deleted file mode 100644
index 789227192..000000000
--- a/newlib/libc/machine/crx/Makefile.am
+++ /dev/null
@@ -1,12 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S getenv.c
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/machine/crx/Makefile.in b/newlib/libc/machine/crx/Makefile.in
deleted file mode 100644
index 1c319a43e..000000000
--- a/newlib/libc/machine/crx/Makefile.in
+++ /dev/null
@@ -1,327 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = .
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_alias = @build_alias@
-build_triplet = @build@
-host_alias = @host_alias@
-host_triplet = @host@
-target_alias = @target_alias@
-target_triplet = @target@
-AR = @AR@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-EXEEXT = @EXEEXT@
-LDFLAGS = @LDFLAGS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-RANLIB = @RANLIB@
-VERSION = @VERSION@
-aext = @aext@
-libm_machine_dir = @libm_machine_dir@
-machine_dir = @machine_dir@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-sys_dir = @sys_dir@
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S getenv.c
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-
-
-DEFS = @DEFS@ -I. -I$(srcdir)
-CPPFLAGS = @CPPFLAGS@
-LIBS = @LIBS@
-lib_a_LIBADD =
-lib_a_OBJECTS = setjmp.o getenv.o
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(lib_a_SOURCES)
-OBJECTS = $(lib_a_OBJECTS)
-
-all: all-redirect
-.SUFFIXES:
-.SUFFIXES: .S .c .o .s
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
- ../../../acinclude.m4 ../../../aclocal.m4 \
- ../../../libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
- cd $(srcdir) && $(AUTOCONF)
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-.c.o:
- $(COMPILE) -c $<
-
-.s.o:
- $(COMPILE) -c $<
-
-.S.o:
- $(COMPILE) -c $<
-
-mostlyclean-compile:
- -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
- -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- here=`pwd` && cd $(srcdir) \
- && mkid -f$$here/ID $$unique $(LISP)
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
-
-clean-tags:
-
-distclean-tags:
- -rm -f TAGS ID
-
-maintainer-clean-tags:
-
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- -rm -rf $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
- mkdir $(distdir)/=build
- mkdir $(distdir)/=inst
- dc_install_base=`cd $(distdir)/=inst && pwd`; \
- cd $(distdir)/=build \
- && ../configure --srcdir=.. --prefix=$$dc_install_base \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) dist
- -rm -rf $(distdir)
- @banner="$(distdir).tar.gz is ready for distribution"; \
- dashes=`echo "$$banner" | sed s/./=/g`; \
- echo "$$dashes"; \
- echo "$$banner"; \
- echo "$$dashes"
-dist: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-dist-all: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-distdir: $(DISTFILES)
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
- @for file in $(DISTFILES); do \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am:
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-info-am:
-install-info: install-info-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES)
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \
- mostlyclean-tags mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \
- mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-noinstLIBRARIES distclean-compile \
- distclean-tags distclean-generic clean-am
-
-distclean: distclean-am
- -rm -f config.status
-
-maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
- maintainer-clean-compile maintainer-clean-tags \
- maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
- -rm -f config.status
-
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile tags mostlyclean-tags distclean-tags \
-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
-check-am installcheck-am installcheck install-info-am install-info \
-install-exec-am install-exec install-data-am install-data install-am \
-install uninstall-am uninstall all-redirect all-am all installdirs \
-mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/machine/crx/aclocal.m4 b/newlib/libc/machine/crx/aclocal.m4
deleted file mode 100644
index 55d5e67ce..000000000
--- a/newlib/libc/machine/crx/aclocal.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl This provides configure definitions used by all the newlib
-dnl configure.in files.
-
-dnl Basic newlib configury. This calls basic introductory stuff,
-dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
-dnl configure.host. The only argument is the relative path to the top
-dnl newlib directory.
-
-AC_DEFUN(NEWLIB_CONFIGURE,
-[
-dnl Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
-[case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
- esac], [multilib=yes])dnl
-
-dnl Support --enable-target-optspace
-AC_ARG_ENABLE(target-optspace,
-[ --enable-target-optspace optimize for space],
-[case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
- esac], [target_optspace=])dnl
-
-dnl Support --enable-malloc-debugging - currently only supported for Cygwin
-AC_ARG_ENABLE(malloc-debugging,
-[ --enable-malloc-debugging indicate malloc debugging requested],
-[case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
- esac], [malloc_debugging=])dnl
-
-dnl Support --enable-newlib-multithread
-AC_ARG_ENABLE(newlib-multithread,
-[ --enable-newlib-multithread enable support for multiple threads],
-[case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
- esac], [newlib_multithread=yes])dnl
-
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
-dnl Support --enable-newlib-elix-level
-AC_ARG_ENABLE(newlib-elix-level,
-[ --enable-newlib-elix-level supply desired elix library level (1-4)],
-[case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
- esac], [newlib_elix_level=0])dnl
-
-dnl Support --disable-newlib-io-float
-AC_ARG_ENABLE(newlib-io-float,
-[ --disable-newlib-io-float disable printf/scanf family float support],
-[case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
- esac], [newlib_io_float=yes])dnl
-
-dnl Support --disable-newlib-supplied-syscalls
-AC_ARG_ENABLE(newlib-supplied-syscalls,
-[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
-[case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
- esac], [newlib_may_supply_syscalls=yes])dnl
-
-AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
-
-dnl We may get other options which we don't document:
-dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
-
-test -z "[$]{with_target_subdir}" && with_target_subdir=.
-
-if test "[$]{srcdir}" = "."; then
- if test "[$]{with_target_subdir}" != "."; then
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
- else
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
- fi
-else
- newlib_basedir="[$]{srcdir}/$1"
-fi
-AC_SUBST(newlib_basedir)
-
-AC_CANONICAL_SYSTEM
-
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AC_CHECK_TOOL(AS, as)
-AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-
-AC_PROG_INSTALL
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-AM_MAINTAINER_MODE
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
- AC_EXEEXT
-fi
-
-. [$]{newlib_basedir}/configure.host
-
-newlib_cflags="[$]{newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-AC_SUBST(NEWLIB_CFLAGS)
-
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
-AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
-AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
-AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
-AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
-AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
-
-AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-AC_SUBST(OBJEXT)
-AC_SUBST(oext)
-AC_SUBST(aext)
-
-AC_SUBST(libm_machine_dir)
-AC_SUBST(machine_dir)
-AC_SUBST(sys_dir)
-])
-
-# Do all the work for Automake. This macro actually does too much --
-# some checks are only needed if your package does certain things.
-# But this isn't really a big deal.
-
-# serial 1
-
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-fi
-ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
-
-# Copyright 2002 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.4-p6])])
-
-#
-# Check to make sure that the build environment is sane.
-#
-
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "[$]*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "[$]*" != "X $srcdir/configure conftestfile" \
- && test "[$]*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "[$]2" = conftestfile
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-rm -f conftest*
-AC_MSG_RESULT(yes)])
-
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN([AM_MISSING_PROG],
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
- $1=$2
- AC_MSG_RESULT(found)
-else
- $1="$3/missing $2"
- AC_MSG_RESULT(missing)
-fi
-AC_SUBST($1)])
-
-# Define a conditional.
-
-AC_DEFUN([AM_CONDITIONAL],
-[AC_SUBST($1_TRUE)
-AC_SUBST($1_FALSE)
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi])
-
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
-
-# serial 1
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-[ --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- USE_MAINTAINER_MODE=$enableval,
- USE_MAINTAINER_MODE=no)
- AC_MSG_RESULT($USE_MAINTAINER_MODE)
- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST(MAINT)dnl
-]
-)
-
diff --git a/newlib/libc/machine/crx/configure b/newlib/libc/machine/crx/configure
deleted file mode 100755
index 028b7b4fa..000000000
--- a/newlib/libc/machine/crx/configure
+++ /dev/null
@@ -1,1883 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
- --enable-multilib build many library versions (default)"
-ac_help="$ac_help
- --enable-target-optspace optimize for space"
-ac_help="$ac_help
- --enable-malloc-debugging indicate malloc debugging requested"
-ac_help="$ac_help
- --enable-newlib-multithread enable support for multiple threads"
-ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
- --enable-newlib-elix-level supply desired elix library level (1-4)"
-ac_help="$ac_help
- --disable-newlib-io-float disable printf/scanf family float support"
-ac_help="$ac_help
- --disable-newlib-supplied-syscalls disable newlib from supplying syscalls"
-ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=Makefile.am
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in ../../../.. $srcdir/../../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-am__api_version="1.4"
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:578: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:631: checking whether build environment is sane" >&5
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "$*" != "X $srcdir/configure conftestfile" \
- && test "$*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
- fi
-
- test "$2" = conftestfile
- )
-then
- # Ok.
- :
-else
- { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftestmake <<\EOF
-all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- SET_MAKE=
-else
- echo "$ac_t""no" 1>&6
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-if test $host != $build; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:721: checking for Cygwin environment" >&5
-if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 726 "configure"
-#include "confdefs.h"
-
-int main() {
-
-#ifndef __CYGWIN__
-#define __CYGWIN__ __CYGWIN32__
-#endif
-return __CYGWIN__;
-; return 0; }
-EOF
-if { (eval echo configure:737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_cygwin=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_cygwin=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_cygwin" 1>&6
-CYGWIN=
-test "$ac_cv_cygwin" = yes && CYGWIN=yes
-echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:754: checking for mingw32 environment" >&5
-if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 759 "configure"
-#include "confdefs.h"
-
-int main() {
-return __MINGW32__;
-; return 0; }
-EOF
-if { (eval echo configure:766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_mingw32=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_mingw32=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_mingw32" 1>&6
-MINGW32=
-test "$ac_cv_mingw32" = yes && MINGW32=yes
-
-# Check whether --enable-multilib or --disable-multilib was given.
-if test "${enable_multilib+set}" = set; then
- enableval="$enable_multilib"
- case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;;
- esac
-else
- multilib=yes
-fi
-
-# Check whether --enable-target-optspace or --disable-target-optspace was given.
-if test "${enable_target_optspace+set}" = set; then
- enableval="$enable_target_optspace"
- case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;;
- esac
-else
- target_optspace=
-fi
-
-# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
-if test "${enable_malloc_debugging+set}" = set; then
- enableval="$enable_malloc_debugging"
- case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;;
- esac
-else
- malloc_debugging=
-fi
-
-# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given.
-if test "${enable_newlib_multithread+set}" = set; then
- enableval="$enable_newlib_multithread"
- case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_multithread=yes
-fi
-
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
-# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
-if test "${enable_newlib_elix_level+set}" = set; then
- enableval="$enable_newlib_elix_level"
- case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_elix_level=0
-fi
-
-# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given.
-if test "${enable_newlib_io_float+set}" = set; then
- enableval="$enable_newlib_io_float"
- case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_io_float=yes
-fi
-
-# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given.
-if test "${enable_newlib_supplied_syscalls+set}" = set; then
- enableval="$enable_newlib_supplied_syscalls"
- case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_may_supply_syscalls=yes
-fi
-
-
-
-if test x${newlib_may_supply_syscalls} = xyes; then
- MAY_SUPPLY_SYSCALLS_TRUE=
- MAY_SUPPLY_SYSCALLS_FALSE='#'
-else
- MAY_SUPPLY_SYSCALLS_TRUE='#'
- MAY_SUPPLY_SYSCALLS_FALSE=
-fi
-
-
-test -z "${with_target_subdir}" && with_target_subdir=.
-
-if test "${srcdir}" = "."; then
- if test "${with_target_subdir}" != "."; then
- newlib_basedir="${srcdir}/${with_multisrctop}../../../.."
- else
- newlib_basedir="${srcdir}/${with_multisrctop}../../.."
- fi
-else
- newlib_basedir="${srcdir}/../../.."
-fi
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:936: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:957: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:975: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-
-
-PACKAGE=newlib
-
-VERSION=1.14.0
-
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
-fi
-cat >> confdefs.h <<EOF
-#define PACKAGE "$PACKAGE"
-EOF
-
-cat >> confdefs.h <<EOF
-#define VERSION "$VERSION"
-EOF
-
-
-
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1018: checking for working aclocal-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1031: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
- AUTOCONF=autoconf
- echo "$ac_t""found" 1>&6
-else
- AUTOCONF="$missing_dir/missing autoconf"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1044: checking for working automake-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1057: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
- AUTOHEADER=autoheader
- echo "$ac_t""found" 1>&6
-else
- AUTOHEADER="$missing_dir/missing autoheader"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1070: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
- MAKEINFO=makeinfo
- echo "$ac_t""found" 1>&6
-else
- MAKEINFO="$missing_dir/missing makeinfo"
- echo "$ac_t""missing" 1>&6
-fi
-
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1095: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1125: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1174: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1183: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1198: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1229: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as"
-fi
-fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1261: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1293: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-if test -z "$ac_cv_prog_RANLIB"; then
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1325: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-else
- RANLIB=":"
-fi
-fi
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1370: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
- USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6
-
-
-if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
-
-
-echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
- ac_cv_exeext=.exe
-else
- rm -f conftest*
- echo 'int main () { return 0; }' > conftest.$ac_ext
- ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
- for file in conftest.*; do
- case $file in
- *.c | *.o | *.obj) ;;
- *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- else
- { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
- fi
- rm -f conftest*
- test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-fi
-fi
-
-EXEEXT=""
-test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-echo "$ac_t""${ac_cv_exeext}" 1>&6
-ac_exeext=$EXEEXT
-
-fi
-
-. ${newlib_basedir}/configure.host
-
-newlib_cflags="${newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-
-
-LDFLAGS=${ldflags}
-
-
-
-
-if test x${newlib_elix_level} = x0; then
- ELIX_LEVEL_0_TRUE=
- ELIX_LEVEL_0_FALSE='#'
-else
- ELIX_LEVEL_0_TRUE='#'
- ELIX_LEVEL_0_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x1; then
- ELIX_LEVEL_1_TRUE=
- ELIX_LEVEL_1_FALSE='#'
-else
- ELIX_LEVEL_1_TRUE='#'
- ELIX_LEVEL_1_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x2; then
- ELIX_LEVEL_2_TRUE=
- ELIX_LEVEL_2_FALSE='#'
-else
- ELIX_LEVEL_2_TRUE='#'
- ELIX_LEVEL_2_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x3; then
- ELIX_LEVEL_3_TRUE=
- ELIX_LEVEL_3_FALSE='#'
-else
- ELIX_LEVEL_3_TRUE='#'
- ELIX_LEVEL_3_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x4; then
- ELIX_LEVEL_4_TRUE=
- ELIX_LEVEL_4_FALSE='#'
-else
- ELIX_LEVEL_4_TRUE='#'
- ELIX_LEVEL_4_FALSE=
-fi
-
-
-
-if test x${use_libtool} = xyes; then
- USE_LIBTOOL_TRUE=
- USE_LIBTOOL_FALSE='#'
-else
- USE_LIBTOOL_TRUE='#'
- USE_LIBTOOL_FALSE=
-fi
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-
-
-
-
-
-
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g
-s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g
-s%@newlib_basedir@%$newlib_basedir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@RANLIB@%$RANLIB%g
-s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
-s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-s%@MAINT@%$MAINT%g
-s%@EXEEXT@%$EXEEXT%g
-s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g
-s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g
-s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g
-s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g
-s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g
-s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g
-s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g
-s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g
-s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g
-s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g
-s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g
-s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g
-s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g
-s%@OBJEXT@%$OBJEXT%g
-s%@oext@%$oext%g
-s%@aext@%$aext%g
-s%@libm_machine_dir@%$libm_machine_dir%g
-s%@machine_dir@%$machine_dir%g
-s%@sys_dir@%$sys_dir%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/newlib/libc/machine/crx/configure.in b/newlib/libc/machine/crx/configure.in
deleted file mode 100644
index a5384f62a..000000000
--- a/newlib/libc/machine/crx/configure.in
+++ /dev/null
@@ -1,12 +0,0 @@
-dnl This is the newlib/libc/machine/arm configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.5)
-AC_INIT(Makefile.am)
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
-AC_CONFIG_AUX_DIR(../../../..)
-
-NEWLIB_CONFIGURE(../../..)
-
-AC_OUTPUT(Makefile)
diff --git a/newlib/libc/machine/crx/getenv.c b/newlib/libc/machine/crx/getenv.c
deleted file mode 100644
index 75ef1ccd1..000000000
--- a/newlib/libc/machine/crx/getenv.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* getenv.c -- Implementation of the getenv() routine
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-/* getenv() is implemented as a low-level function,
- thus we only invoke here the system call. */
-char * getenv (const char *name)
-{
- char *_getenv(const char *);
-
- return (_getenv (name));
-}
-
diff --git a/newlib/libc/machine/crx/setjmp.S b/newlib/libc/machine/crx/setjmp.S
deleted file mode 100644
index 19b7d6c2a..000000000
--- a/newlib/libc/machine/crx/setjmp.S
+++ /dev/null
@@ -1,51 +0,0 @@
- ##############################################################################
- # setjmp.S -- CRX setjmp routine #
- # #
- # Copyright (c) 2004 National Semiconductor Corporation #
- # #
- # The authors hereby grant permission to use, copy, modify, distribute, #
- # and license this software and its documentation for any purpose, provided #
- # that existing copyright notices are retained in all copies and that this #
- # notice is included verbatim in any distributions. No written agreement, #
- # license, or royalty fee is required for any of the authorized uses. #
- # Modifications to this software may be copyrighted by their authors #
- # and need not follow the licensing terms described here, provided that #
- # the new terms are clearly indicated on the first page of each file where #
- # they apply. #
- # #
- # C library -- setjmp, longjmp #
- # longjmp(a,v) #
- # will generate a "return(v)" #
- # from the last call to #
- # setjmp(a) #
- # by restoring r7-ra, sp, #
- # and pc from 'a' #
- # and doing a return. (Makes sure that longjmp never returns 0). #
- ##############################################################################
-
- .text
- .file "setjmp.s"
- .align 4
-
- .globl _setjmp
- .align 4
-_setjmp:
- #r2: .blkw
- storm r2,{r7,r8,r9,r10,r11,r12,r13,r14}
- stord sp,0(r2)
- movd $0,r0
- jump ra
-
- .globl _longjmp
-_longjmp:
- #r2: .blkw # pointer save area
- #r3: .blkw # ret vlaue
- loadm r2, {r7,r8,r9,r10,r11,r12,r13,ra}
- loadd 0(r2), sp
- movd r3, r0
- cmpd $0, r3
- bne end1
- movd $1, r0
-end1:
- jump ra
- .align 4
diff --git a/newlib/libc/machine/crx/sys/asm.h b/newlib/libc/machine/crx/sys/asm.h
deleted file mode 100644
index a8226d1c1..000000000
--- a/newlib/libc/machine/crx/sys/asm.h
+++ /dev/null
@@ -1,421 +0,0 @@
-/* asm.h -- CRX architecture intrinsic functions
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#ifndef _ASM
-#define _ASM
-
-/* Note that immediate input values are not checked for validity. It is
- the user's responsibility to use the intrinsic functions with appropriate
- immediate values. */
-
-/* Absolute Instructions */
-#define _absb_(src, dest) __asm__("absb %1, %0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _absw_(src, dest) __asm__("absw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _absd_(src, dest) __asm__("absd %1, %0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* Addition Instructions */
-#define _addb_(src, dest) __asm__("addb %1, %0" : "=r" (dest) : \
- "ri" ((unsigned char)src), "0" (dest) : "cc")
-#define _addub_(src, dest) __asm__("addub %1, %0" : "=r" (dest) : \
- "ri" ((unsigned char)src), "0" (dest) : "cc")
-#define _addw_(src, dest) __asm__("addw %1, %0" : "=r" (dest) : \
- "ri" ((unsigned short)src), "0" (dest) : "cc")
-#define _adduw_(src, dest) __asm__("adduw %1, %0" : "=r" (dest) : \
- "ri" ((unsigned short)src), "0" (dest) : "cc")
-#define _addd_(src, dest) __asm__("addd %1, %0" : "=r" (dest) : \
- "ri" ((unsigned int)src), "0" (dest) : "cc")
-#define _addud_(src, dest) __asm__("addud %1, %0" : "=r" (dest) : \
- "ri" ((unsigned int)src), "0" (dest) : "cc")
-/* Add with Carry */
-#define _addcb_(src, dest) __asm__("addcb %1, %0" : "=r" (dest) : \
- "ri" ((unsigned char)src), "0" (dest) : "cc")
-#define _addcw_(src, dest) __asm__("addcw %1, %0" : "=r" (dest) : \
- "ri" ((unsigned short)src), "0" (dest) : "cc")
-#define _addcd_(src, dest) __asm__("addcd %1, %0" : "=r" (dest) : \
- "ri" ((unsigned int)src), "0" (dest) : "cc")
-/* Q-format Add */
-#define _addqb_(src, dest) __asm__("addqb %1, %0" : "=r" (dest) : \
- "r" ((unsigned char)src), "0" (dest) : "cc")
-#define _addqw_(src, dest) __asm__("addqw %1, %0" : "=r" (dest) : \
- "r" ((unsigned short)src), "0" (dest) : "cc")
-#define _addqd_(src, dest) __asm__("addqd %1, %0" : "=r" (dest) : \
- "r" ((unsigned int)src), "0" (dest) : "cc")
-
-/* Bitwise Logical AND */
-
-#define _andb_(src, dest) __asm__("andb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _andw_(src, dest) __asm__("andw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned short)src) , "0" (dest))
-#define _andd_(src, dest) __asm__("andd %1,%0" : "=r" (dest) : \
- "ri" ((unsigned int)src) , "0" (dest))
-
-/* bswap Instruction */
-#define _bswap_(src, dest) __asm__("bswap %1,%0" : "=r" (dest) : \
- "r" ((unsigned int)src) , "0" (dest))
-/* cbit (clear bit) Instructions */
-#define _cbitb_(pos, dest) __asm__("cbitb %1,%0" : "=mr" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-#define _cbitw_(pos, dest) __asm__("cbitw %1,%0" : "=mr" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-#define _cbitd_(pos, dest) __asm__("cbitd %1,%0" : "=r" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-
-/* Compare Instructions */
-#define _cmpb_(src1, src2) __asm__("cmpb %0,%1" : /* no output */ : \
- "ri" ((unsigned char)src1) , "r" (src2) : "cc")
-#define _cmpw_(src1,src2) __asm__("cmpw %0,%1" : /* no output */ \
- : "ri" ((unsigned short)src1) , "r" (src2) : "cc")
-#define _cmpd_(src1,src2) __asm__("cmpd %0,%1" : /* no output */ \
- : "ri" ((unsigned int)src1) , "r" (src2) : "cc")
-
-/* cntl Count Leading Ones Instructions */
-#define _cntl1b_(src, dest) __asm__("cntl1b %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _cntl1w_(src, dest) __asm__("cntl1w %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _cntl1d_(src, dest) __asm__("cntl1d %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* cntl Count Leading Zeros Instructions */
-#define _cntl0b_(src, dest) __asm__("cntl0b %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _cntl0w_(src, dest) __asm__("cntl0w %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _cntl0d_(src, dest) __asm__("cntl0d %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* cntl Count Leading Signs Instructions */
-#define _cntlsb_(src, dest) __asm__("cntlsb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _cntlsw_(src, dest) __asm__("cntlsw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _cntlsd_(src, dest) __asm__("cntlsd %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* Disable Inerrupts instructions */
-#define _di_() __asm__ volatile ("di\n" : : : "cc")
-#define _disable_() __asm__ volatile ("di\n" : : : "cc")
-
-/* Enable Inerrupts instructions */
-#define _ei_() __asm__ volatile ("ei\n" : : : "cc")
-#define _enable_() __asm__ volatile ("ei\n" : : : "cc")
-
-/* Enable Inerrupts instructions and Wait */
-#define _eiwait_() __asm__ volatile ("eiwait" : : : "cc")
-
-/* excp Instructions */
-#define _excp_(vector) __asm__ volatile ("excp " # vector)
-
-/* getpid Instruction */
-#define _getrfid_(dest) __asm__("getrfid %0" : "=r" (dest) : \
- /* No input */ : "cc")
-
-/* Load Instructions */
-#define _loadb_(base,dest) __asm__("loadb %1,%0" : "=r" (dest) : \
- "m" (base) , "0" (dest))
-#define _loadw_(base,dest) __asm__("loadw %1,%0" : "=r" (dest) : \
- "m" (base) , "0" (dest))
-#define _loadd_(base,dest) __asm__("loadd %1,%0" : "=r" (dest) : \
- "m" (base) , "0" (dest))
-
-/* Load Multiple Instructions */
-#define _loadm_(src, mask) __asm__("loadm %0,%1" : /* No output */ : \
- "r" ((unsigned int)src) , "i" (mask))
-#define _loadmp_(src, mask) __asm__("loadmp %0,%1" : /* No output */ : \
- "r" ((unsigned int)src) , "i" (mask))
-
-/* Multiply Accumulate Instrutions */
-#define _macsb_(hi, lo, src1, src2) __asm__("macsb %1,%0" \
- : =l (lo), =h (hi) \
- : "r" ((char)src1) , "r" (src2))
-#define _macsw_(hi, lo, src1, src2) __asm__("macsw %1,%0" \
- : =l (lo), =h (hi) \
- : "r" ((short)src1) , "r" (src2))
-#define _macsd_(hi, lo, src1, src2) __asm__("macsd %1,%0" \
- : =l (lo), =h (hi) \
- : "r" ((int)src1) , "r" (src2))
-#define _macub_(hi, lo, src1, src2) __asm__("macub %1,%0" \
- : =l (lo), =h (hi) \
- :"r" ((unsigned char)src1) , "r" (src2))
-#define _macuw_(hi, lo, src1, src2) __asm__("macuw %1,%0" \
- : =l (lo), =h (hi) \
- : "r" ((unsigned short)src1) , "r" (src2))
-#define _macud_(hi, lo, src1, src2) __asm__("macud %1,%0" \
- : =l (lo), =h (hi) \
- : "r" ((unsigned int)src1) , "r" (src2))
-
-/* Q-Format Multiply Accumulate Instrutions */
-#define _macqb_(src1, src2) __asm__("macqb %1,%0" \
- : =l (lo), =h (hi) \
- :"r" ((char)src1) , "r" (src2))
-#define _macqw_(src1, src2) __asm__("macqw %1,%0" \
- : =l (lo), =h (hi) \
- :"r" ((short)src1) , "r" (src2))
-#define _macqd_(src1, src2) __asm__("macqd %1,%0" \
- : =l (lo), =h (hi) \
- :"r" ((int)src1) , "r" (src2))
-
-/* Maximum Instructions */
-#define _maxsb_(src, dest) __asm__("maxsb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _maxsw_(src, dest) __asm__("maxsw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _maxsd_(src, dest) __asm__("maxsd %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-#define _maxub_(src, dest) __asm__("maxub %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)src) , "0" (dest))
-#define _maxuw_(src, dest) __asm__("maxuw %1,%0" : "=r" (dest) : \
- "r" ((unsigned short)src) , "0" (dest))
-#define _maxud_(src, dest) __asm__("maxud %1,%0" : "=r" (dest) : \
- "r" ((unsigned int)src) , "0" (dest))
-
-/* Minimum Instructions */
-#define _minsb_(src, dest) __asm__("minsb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _minsw_(src, dest) __asm__("minsw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _minsd_(src, dest) __asm__("minsd %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-#define _minub_(src, dest) __asm__("minub %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)src) , "0" (dest))
-#define _minuw_(src, dest) __asm__("minuw %1,%0" : "=r" (dest) : \
- "r" ((unsigned short)src) , "0" (dest))
-#define _minud_(src, dest) __asm__("minud %1,%0" : "=r" (dest) : \
- "r" ((unsigned int)src) , "0" (dest))
-
-/* Move Instructions */
-#define _movb_(src, dest) __asm__("movb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _movw_(src, dest) __asm__("movw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned short)src) , "0" (dest))
-#define _movd_(src, dest) __asm__("movd %1,%0" : "=r" (dest) : \
- "ri" ((unsigned int)src) , "0" (dest))
-
-/* mtpr and mfpr Insturctions */
-#define _mtpr_(procregd, src) __asm__("mtpr\t%0," procregd : /* no output */ : \
- "r" (src) : "cc")
-#define _mfpr_(procregd, dest) __asm__("mfpr\t" procregd ",%0" : "=r" (dest) : \
- /* no input */ "0" (dest) : "cc")
-
-/* Multiplication Instructions */
-#define _mulsbw_(src, dest) __asm__("mulsbw %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _mulubw_(src, dest) __asm__("mulubw %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)src) , "0" (dest))
-#define _mulswd_(src, dest) __asm__("mulswd %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _muluwd_(src, dest) __asm__("muluwd %1,%0" : "=r" (dest) : \
- "r" ((unsigned short)src) , "0" (dest))
-#define _mulb_(src, dest) __asm__("mulb %1,%0" : "=r" (dest) : \
- "ri" ((char)src) , "0" (dest))
-#define _mulw_(src, dest) __asm__("mulw %1,%0" : "=r" (dest) : \
- "ri" ((short)src) , "0" (dest))
-#define _muld_(src, dest) __asm__("muld %1,%0" : "=r" (dest) : \
- "ri" ((int)src) , "0" (dest))
-#define _mullsd_(hi, lo, src1, src2) __asm__("mullsd %2,%3" \
- : =l (lo), =h (hi) \
- : "r" ((unsigned int)src1) , "r" ((unsigned int)src2))
-#define _mullud_(hi, lo, src1, src2) __asm__("mullud %2,%3" \
- : =l (lo), =h (hi) \
- : "r" ((int)src1) , "r" ((int)src2))
-
-/* Q-Format Multiplication Instructions */
-#define _mulqb_(src, dest) __asm__("mulqb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _mulqw_(src, dest) __asm__("mulqw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-
-/* nop Instruction */
-#define _nop_() __asm__("nop")
-
-/* Negate Instructions */
-#define _negb_(src, dest) __asm__("negb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _negw_(src, dest) __asm__("negw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _negd_(src, dest) __asm__("negd %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* or Instructions */
-#define _orb_(src, dest) __asm__("orb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _orw_(src, dest) __asm__("orw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned short)src) , "0" (dest))
-#define _ord_(src, dest) __asm__("ord %1,%0" : "=r" (dest) : \
- "ri" ((unsigned int)src) , "0" (dest))
-
-/* Pop 1's Count Instructions */
-#define _popcntb_(src, dest) __asm__("popcntb %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _popcntw_(src, dest) __asm__("popcntw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _popcntd_(src, dest) __asm__("popcntd %1,%0" : "=r" (dest) : \
- "r" ((int)src) , "0" (dest))
-
-/* Rotate and Mask Instructions */
-#define _ram_(shift, end, begin, dest, src) __asm__("ram %1, %2, %3, %0, %4" : \
- "=r" (dest) : \
- "i" ((unsigned char) shift), \
- "i" (end), "i" (begin), \
- "r" (src), "0" (dest))
-#define _rim_(shift, end, begin, dest, src) __asm__("rim %1, %2, %3, %0, %4" : \
- "=r" (dest) : \
- "i" ((unsigned char) shift), \
- "i" (end), "i" (begin), \
- "r" (src), "0" (dest))
-
-/* retx Instruction */
-#define _retx_() __asm__("retx")
-
-/* Rotate Instructions */
-#define _rotb_(shift, dest) __asm__("rotb %1,%0" : "=r" (dest) : \
- "i" ((unsigned char)shift) , "0" (dest))
-#define _rotw_(shift, dest) __asm__("rotw %1,%0" : "=r" (dest) : \
- "i" ((unsigned char)shift) , "0" (dest))
-#define _rotd_(shift, dest) __asm__("rotd %1,%0" : "=r" (dest) : \
- "i" ((unsigned char)shift) , "0" (dest))
-#define _rotlb_(shift, dest) __asm__("rotlb %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-#define _rotlw_(shift, dest) __asm__("rotlw %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-#define _rotld_(shift, dest) __asm__("rotld %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-#define _rotrb_(shift, dest) __asm__("rotrb %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-#define _rotrw_(shift, dest) __asm__("rotrw %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-#define _rotrd_(shift, dest) __asm__("rotrd %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)shift) , "0" (dest))
-
-/* Set Bit Instructions */
-#define _sbitb_(pos,dest) __asm__("sbitb %1,%0" : "=mr" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-#define _sbitw_(pos,dest) __asm__("sbitw %1,%0" : "=mr" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-#define _sbitd_(pos,dest) __asm__("sbitd %1,%0" : "=mr" (dest) : \
- "i" ((unsigned char)pos) , "0" (dest) : "cc")
-
-/* setrfid Instruction */
-#define _setrfid_(src) __asm__("setrfid %0" : /* No output */ : \
- "r" (src) : "cc")
-
-/* Sign Extend Instructions */
-#define _sextbw_(src, dest) __asm__("sextbw %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest) )
-#define _sextbd_(src, dest) __asm__("sextbd %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest) )
-#define _sextwd_(src, dest) __asm__("sextwd %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest) )
-
-/* Shift Left Logical Instructions */
-#define _sllb_(src, dest) __asm__("sllb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _sllw_(src, dest) __asm__("sllw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _slld_(src, dest) __asm__("slld %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-/* Shift Right Arithmetic Instructions */
-#define _srab_(src, dest) __asm__("srab %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _sraw_(src, dest) __asm__("sraw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _srad_(src, dest) __asm__("srad %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-
-/* Shift Right Logical Instructions */
-#define _srlb_(src, dest) __asm__("srlb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _srlw_(src, dest) __asm__("srlw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _srld_(src, dest) __asm__("srld %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-
-/* Store Instructions */
-#define _storb_(src,address) __asm__("storb %1,%0" : "=m" (address) : \
- "ri" ((unsigned int)src))
-#define _storw_(src,address) __asm__("storw %1,%0" : "=m" (address) : \
- "ri" ((unsigned int)src))
-#define _stord_(src,address) __asm__("stord %1,%0" : "=m" (address) : \
- "ri" ((unsigned int)src))
-
-/* Store Multiple Instructions */
-#define _storm_(mask, src) __asm__("storm %1,%0" : /* No output here */ : \
- "i" (mask) , "r" ((unsigned int)src))
-#define _stormp_(mask, src) __asm__("stormp %1,%0" : /* No output here */ : \
- "i" (mask) , "r" ((unsigned int)src))
-
-/* Substruct Instructions */
-#define _subb_(src, dest) __asm__("subb %1, %0" : "=r" (dest) : \
- "ri" ((unsigned char)src), "0" (dest) : "cc")
-#define _subw_(src, dest) __asm__("subw %1, %0" : "=r" (dest) : \
- "ri" ((unsigned short)src), "0" (dest) : "cc")
-#define _subd_(src, dest) __asm__("subd %1, %0" : "=r" (dest) : \
- "ri" ((unsigned int)src), "0" (dest) : "cc")
-
-/* Substruct with Carry Instructions */
-#define _subcb_(src, dest) __asm__("subcb %1, %0" : "=r" (dest) : \
- "ri" ((unsigned char)src), "0" (dest) : "cc")
-#define _subcw_(src, dest) __asm__("subcw %1, %0" : "=r" (dest) : \
- "ri" ((unsigned short)src), "0" (dest) : "cc")
-#define _subcd_(src, dest) __asm__("subcd %1, %0" : "=r" (dest) : \
- "ri" ((unsigned int)src), "0" (dest) : "cc")
-
-/* Q-Format Substruct Instructions */
-#define _subqb_(src, dest) __asm__("subqw %1,%0" : "=r" (dest) : \
- "r" ((char)src) , "0" (dest))
-#define _subqw_(src, dest) __asm__("subqw %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-#define _subqd_(src, dest) __asm__("subqd %1,%0" : "=r" (dest) : \
- "r" ((short)src) , "0" (dest))
-
-/* Test Bit Instructions */
-#define _tbitb_(pos,dest) __asm__("tbitb %0,%1" : /* No output */ : \
- "i" ((unsigned char)pos) , "rm" (dest) : "cc")
-#define _tbitw_(pos,dest) __asm__("tbitw %0,%1" : /* No output */ : \
- "i" ((unsigned char)pos) , "rm" (dest) : "cc")
-#define _tbitd_(pos,dest) __asm__("tbitd %0,%1" : /* No output */ : \
- "i" ((unsigned char)pos) , "rm" (dest) : "cc")
-
-/* wait Instruction*/
-#define _wait_() __asm__ volatile ("wait" : : : "cc")
-
-/* xor Instructions */
-#define _xorb_(src, dest) __asm__("xorb %1,%0" : "=r" (dest) : \
- "ri" ((unsigned char)src) , "0" (dest))
-#define _xorw_(src, dest) __asm__("xorw %1,%0" : "=r" (dest) : \
- "ri" ((unsigned short)src) , "0" (dest))
-#define _xord_(src, dest) __asm__("xord %1,%0" : "=r" (dest) : \
- "ri" ((unsigned int)src) , "0" (dest))
-
-/* Zero Extend Instructions */
-#define _zextbw_(src, dest) __asm__("zextbw %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)src) , "0" (dest))
-#define _zextbd_(src, dest) __asm__("zextbd %1,%0" : "=r" (dest) : \
- "r" ((unsigned char)src) , "0" (dest))
-#define _zextwd_(src, dest) __asm__("zextwd %1,%0" : "=r" (dest) : \
- "r" ((unsigned short)src) , "0" (dest))
-
-#define _save_asm_(x) \
- __asm__ volatile (x ::: "memory","cc", \
- "r0","r1","r2","r3","r4","r5","r6","r7", \
- "r8","r9","r10","r11","r12","r13")
-
-#endif /* _ASM */
-
-
diff --git a/newlib/libc/machine/crx/sys/libh.h b/newlib/libc/machine/crx/sys/libh.h
deleted file mode 100644
index a7ac54bce..000000000
--- a/newlib/libc/machine/crx/sys/libh.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* libh.h -- CRX default handlers
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#ifndef _LIBH
-#define _LIBH
-
-/* These are the first 16 entries of the default dispatch table as defined
- in the CompactRISC architecture:
-
- Entry Function
- ----- --------
- 0 NULL
- 1 nmi
- 2 NULL
- 3 NULL
- 4 NULL
- 5 svc
- 6 dvz
- 7 flg
- 8 bpt
- 9 trc
- 10 und
- 11 NULL
- 12 iad
- 13 NULL
- 14 dbg
- 15 ise
-*/
-
-extern void (* const _dispatch_table[])(void);
-
-/* Function prototypes */
-void svc_handler(void);
-void dvz_handler(void);
-void flg_handler(void);
-void und_handler(void);
-void iad_handler(void);
-
-#endif /* _LIBH */
diff --git a/newlib/libc/machine/crx/sys/syscall.h b/newlib/libc/machine/crx/sys/syscall.h
deleted file mode 100644
index f775fbb54..000000000
--- a/newlib/libc/machine/crx/sys/syscall.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* syscall.h -- CRX virtual I/O and trap service codes
- *
- * Copyright (c) 2004 National Semiconductor Corporation
- *
- * The authors hereby grant permission to use, copy, modify, distribute,
- * and license this software and its documentation for any purpose, provided
- * that existing copyright notices are retained in all copies and that this
- * notice is included verbatim in any distributions. No written agreement,
- * license, or royalty fee is required for any of the authorized uses.
- * Modifications to this software may be copyrighted by their authors
- * and need not follow the licensing terms described here, provided that
- * the new terms are clearly indicated on the first page of each file where
- * they apply.
- */
-
-#ifndef _SYSCALL_H
-#define _SYSCALL_H
-
-#include <sys/asm.h>
-
-/* SVC codes to pass to the debugger */
-
-/* Virtual I/O services */
-#define SVC_OPEN 0x401
-#define SVC_CLOSE 0x402
-#define SVC_READ 0x403
-#define SVC_WRITE 0x404
-#define SVC_LSEEK 0x405
-#define SVC_RENAME 0x406
-#define SVC_UNLINK 0x407
-#define SVC_GETENV 0x408
-
-/* Time service */
-#define SVC_TIME 0x300
-
-/* Start/end of program services */
-#define SVC_EOP 0x410
-
-/* Trap services */
-#define SVC_SVC 0x505
-#define SVC_DVZ 0x506
-#define SVC_FLG 0x507
-#define SVC_UND 0x50a
-#define SVC_IAD 0x50c
-
-
-/* Places the code of the requested service in R0, then transfers control
- to the debugger using the BPT exception.
- It is called from the start routine, VIO functions and the trap
- handlers. */
-
-#define STRINGIFY(x) #x
-#define HOST_SERVICE(service) \
- do { \
- __asm__("movd\t$" STRINGIFY(service) ",r0"); \
- _excp_(bpt); \
- __asm__(".short\t0xFFFF"); \
- } while (0)
-
-#endif /* _SYSCALL_H */
-
diff --git a/newlib/libc/machine/d10v/aclocal.m4 b/newlib/libc/machine/d10v/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/d10v/aclocal.m4
+++ b/newlib/libc/machine/d10v/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/d10v/configure b/newlib/libc/machine/d10v/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/d10v/configure
+++ b/newlib/libc/machine/d10v/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/d30v/aclocal.m4 b/newlib/libc/machine/d30v/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/d30v/aclocal.m4
+++ b/newlib/libc/machine/d30v/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/d30v/configure b/newlib/libc/machine/d30v/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/d30v/configure
+++ b/newlib/libc/machine/d30v/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/fr30/aclocal.m4 b/newlib/libc/machine/fr30/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/fr30/aclocal.m4
+++ b/newlib/libc/machine/fr30/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/fr30/configure b/newlib/libc/machine/fr30/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/fr30/configure
+++ b/newlib/libc/machine/fr30/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/frv/aclocal.m4 b/newlib/libc/machine/frv/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/frv/aclocal.m4
+++ b/newlib/libc/machine/frv/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/frv/configure b/newlib/libc/machine/frv/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/frv/configure
+++ b/newlib/libc/machine/frv/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/h8300/aclocal.m4 b/newlib/libc/machine/h8300/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/h8300/aclocal.m4
+++ b/newlib/libc/machine/h8300/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/h8300/configure b/newlib/libc/machine/h8300/configure
index 4a3c8cf46..4e2508004 100755
--- a/newlib/libc/machine/h8300/configure
+++ b/newlib/libc/machine/h8300/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/h8500/aclocal.m4 b/newlib/libc/machine/h8500/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/h8500/aclocal.m4
+++ b/newlib/libc/machine/h8500/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/h8500/configure b/newlib/libc/machine/h8500/configure
index ec4e3cf09..64fdcf354 100755
--- a/newlib/libc/machine/h8500/configure
+++ b/newlib/libc/machine/h8500/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/hppa/aclocal.m4 b/newlib/libc/machine/hppa/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/hppa/aclocal.m4
+++ b/newlib/libc/machine/hppa/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/hppa/configure b/newlib/libc/machine/hppa/configure
index ec6b96e33..59f2a2ac5 100755
--- a/newlib/libc/machine/hppa/configure
+++ b/newlib/libc/machine/hppa/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/i386/aclocal.m4 b/newlib/libc/machine/i386/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/machine/i386/aclocal.m4
+++ b/newlib/libc/machine/i386/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/i386/configure b/newlib/libc/machine/i386/configure
index 60bb861a8..e3439179f 100755
--- a/newlib/libc/machine/i386/configure
+++ b/newlib/libc/machine/i386/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libc/machine/i960/aclocal.m4 b/newlib/libc/machine/i960/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/i960/aclocal.m4
+++ b/newlib/libc/machine/i960/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/i960/configure b/newlib/libc/machine/i960/configure
index 554de7e58..7c7e3839c 100755
--- a/newlib/libc/machine/i960/configure
+++ b/newlib/libc/machine/i960/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/iq2000/aclocal.m4 b/newlib/libc/machine/iq2000/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/iq2000/aclocal.m4
+++ b/newlib/libc/machine/iq2000/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/iq2000/configure b/newlib/libc/machine/iq2000/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/iq2000/configure
+++ b/newlib/libc/machine/iq2000/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/m32c/Makefile.am b/newlib/libc/machine/m32c/Makefile.am
deleted file mode 100644
index 1c65b9ffe..000000000
--- a/newlib/libc/machine/m32c/Makefile.am
+++ /dev/null
@@ -1,12 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/machine/m32c/Makefile.in b/newlib/libc/machine/m32c/Makefile.in
deleted file mode 100644
index 9736912dc..000000000
--- a/newlib/libc/machine/m32c/Makefile.in
+++ /dev/null
@@ -1,327 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = .
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_alias = @build_alias@
-build_triplet = @build@
-host_alias = @host_alias@
-host_triplet = @host@
-target_alias = @target_alias@
-target_triplet = @target@
-AR = @AR@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-EXEEXT = @EXEEXT@
-LDFLAGS = @LDFLAGS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-RANLIB = @RANLIB@
-VERSION = @VERSION@
-aext = @aext@
-libm_machine_dir = @libm_machine_dir@
-machine_dir = @machine_dir@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-sys_dir = @sys_dir@
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-
-
-DEFS = @DEFS@ -I. -I$(srcdir)
-CPPFLAGS = @CPPFLAGS@
-LIBS = @LIBS@
-lib_a_LIBADD =
-lib_a_OBJECTS = setjmp.o
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(lib_a_SOURCES)
-OBJECTS = $(lib_a_OBJECTS)
-
-all: all-redirect
-.SUFFIXES:
-.SUFFIXES: .S .c .o .s
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
- ../../../acinclude.m4 ../../../aclocal.m4 \
- ../../../libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
- cd $(srcdir) && $(AUTOCONF)
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-.c.o:
- $(COMPILE) -c $<
-
-.s.o:
- $(COMPILE) -c $<
-
-.S.o:
- $(COMPILE) -c $<
-
-mostlyclean-compile:
- -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
- -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- here=`pwd` && cd $(srcdir) \
- && mkid -f$$here/ID $$unique $(LISP)
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
-
-clean-tags:
-
-distclean-tags:
- -rm -f TAGS ID
-
-maintainer-clean-tags:
-
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- -rm -rf $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
- mkdir $(distdir)/=build
- mkdir $(distdir)/=inst
- dc_install_base=`cd $(distdir)/=inst && pwd`; \
- cd $(distdir)/=build \
- && ../configure --srcdir=.. --prefix=$$dc_install_base \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) dist
- -rm -rf $(distdir)
- @banner="$(distdir).tar.gz is ready for distribution"; \
- dashes=`echo "$$banner" | sed s/./=/g`; \
- echo "$$dashes"; \
- echo "$$banner"; \
- echo "$$dashes"
-dist: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-dist-all: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-distdir: $(DISTFILES)
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
- @for file in $(DISTFILES); do \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am:
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-info-am:
-install-info: install-info-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES)
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \
- mostlyclean-tags mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \
- mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-noinstLIBRARIES distclean-compile \
- distclean-tags distclean-generic clean-am
-
-distclean: distclean-am
- -rm -f config.status
-
-maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
- maintainer-clean-compile maintainer-clean-tags \
- maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
- -rm -f config.status
-
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile tags mostlyclean-tags distclean-tags \
-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
-check-am installcheck-am installcheck install-info-am install-info \
-install-exec-am install-exec install-data-am install-data install-am \
-install uninstall-am uninstall all-redirect all-am all installdirs \
-mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/machine/m32c/aclocal.m4 b/newlib/libc/machine/m32c/aclocal.m4
deleted file mode 100644
index 55d5e67ce..000000000
--- a/newlib/libc/machine/m32c/aclocal.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl This provides configure definitions used by all the newlib
-dnl configure.in files.
-
-dnl Basic newlib configury. This calls basic introductory stuff,
-dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
-dnl configure.host. The only argument is the relative path to the top
-dnl newlib directory.
-
-AC_DEFUN(NEWLIB_CONFIGURE,
-[
-dnl Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
-[case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
- esac], [multilib=yes])dnl
-
-dnl Support --enable-target-optspace
-AC_ARG_ENABLE(target-optspace,
-[ --enable-target-optspace optimize for space],
-[case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
- esac], [target_optspace=])dnl
-
-dnl Support --enable-malloc-debugging - currently only supported for Cygwin
-AC_ARG_ENABLE(malloc-debugging,
-[ --enable-malloc-debugging indicate malloc debugging requested],
-[case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
- esac], [malloc_debugging=])dnl
-
-dnl Support --enable-newlib-multithread
-AC_ARG_ENABLE(newlib-multithread,
-[ --enable-newlib-multithread enable support for multiple threads],
-[case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
- esac], [newlib_multithread=yes])dnl
-
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
-dnl Support --enable-newlib-elix-level
-AC_ARG_ENABLE(newlib-elix-level,
-[ --enable-newlib-elix-level supply desired elix library level (1-4)],
-[case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
- esac], [newlib_elix_level=0])dnl
-
-dnl Support --disable-newlib-io-float
-AC_ARG_ENABLE(newlib-io-float,
-[ --disable-newlib-io-float disable printf/scanf family float support],
-[case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
- esac], [newlib_io_float=yes])dnl
-
-dnl Support --disable-newlib-supplied-syscalls
-AC_ARG_ENABLE(newlib-supplied-syscalls,
-[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
-[case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
- esac], [newlib_may_supply_syscalls=yes])dnl
-
-AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
-
-dnl We may get other options which we don't document:
-dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
-
-test -z "[$]{with_target_subdir}" && with_target_subdir=.
-
-if test "[$]{srcdir}" = "."; then
- if test "[$]{with_target_subdir}" != "."; then
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
- else
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
- fi
-else
- newlib_basedir="[$]{srcdir}/$1"
-fi
-AC_SUBST(newlib_basedir)
-
-AC_CANONICAL_SYSTEM
-
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AC_CHECK_TOOL(AS, as)
-AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-
-AC_PROG_INSTALL
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-AM_MAINTAINER_MODE
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
- AC_EXEEXT
-fi
-
-. [$]{newlib_basedir}/configure.host
-
-newlib_cflags="[$]{newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-AC_SUBST(NEWLIB_CFLAGS)
-
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
-AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
-AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
-AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
-AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
-AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
-
-AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-AC_SUBST(OBJEXT)
-AC_SUBST(oext)
-AC_SUBST(aext)
-
-AC_SUBST(libm_machine_dir)
-AC_SUBST(machine_dir)
-AC_SUBST(sys_dir)
-])
-
-# Do all the work for Automake. This macro actually does too much --
-# some checks are only needed if your package does certain things.
-# But this isn't really a big deal.
-
-# serial 1
-
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-fi
-ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
-
-# Copyright 2002 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.4-p6])])
-
-#
-# Check to make sure that the build environment is sane.
-#
-
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "[$]*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "[$]*" != "X $srcdir/configure conftestfile" \
- && test "[$]*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "[$]2" = conftestfile
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-rm -f conftest*
-AC_MSG_RESULT(yes)])
-
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN([AM_MISSING_PROG],
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
- $1=$2
- AC_MSG_RESULT(found)
-else
- $1="$3/missing $2"
- AC_MSG_RESULT(missing)
-fi
-AC_SUBST($1)])
-
-# Define a conditional.
-
-AC_DEFUN([AM_CONDITIONAL],
-[AC_SUBST($1_TRUE)
-AC_SUBST($1_FALSE)
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi])
-
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
-
-# serial 1
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-[ --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- USE_MAINTAINER_MODE=$enableval,
- USE_MAINTAINER_MODE=no)
- AC_MSG_RESULT($USE_MAINTAINER_MODE)
- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST(MAINT)dnl
-]
-)
-
diff --git a/newlib/libc/machine/m32c/configure b/newlib/libc/machine/m32c/configure
deleted file mode 100755
index 98bab641e..000000000
--- a/newlib/libc/machine/m32c/configure
+++ /dev/null
@@ -1,1883 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
- --enable-multilib build many library versions (default)"
-ac_help="$ac_help
- --enable-target-optspace optimize for space"
-ac_help="$ac_help
- --enable-malloc-debugging indicate malloc debugging requested"
-ac_help="$ac_help
- --enable-newlib-multithread enable support for multiple threads"
-ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
- --enable-newlib-elix-level supply desired elix library level (1-4)"
-ac_help="$ac_help
- --disable-newlib-io-float disable printf/scanf family float support"
-ac_help="$ac_help
- --disable-newlib-supplied-syscalls disable newlib from supplying syscalls"
-ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=setjmp.S
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in ../../../.. $srcdir/../../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-am__api_version="1.4"
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:578: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:631: checking whether build environment is sane" >&5
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "$*" != "X $srcdir/configure conftestfile" \
- && test "$*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
- fi
-
- test "$2" = conftestfile
- )
-then
- # Ok.
- :
-else
- { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftestmake <<\EOF
-all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- SET_MAKE=
-else
- echo "$ac_t""no" 1>&6
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-if test $host != $build; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:721: checking for Cygwin environment" >&5
-if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 726 "configure"
-#include "confdefs.h"
-
-int main() {
-
-#ifndef __CYGWIN__
-#define __CYGWIN__ __CYGWIN32__
-#endif
-return __CYGWIN__;
-; return 0; }
-EOF
-if { (eval echo configure:737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_cygwin=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_cygwin=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_cygwin" 1>&6
-CYGWIN=
-test "$ac_cv_cygwin" = yes && CYGWIN=yes
-echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:754: checking for mingw32 environment" >&5
-if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 759 "configure"
-#include "confdefs.h"
-
-int main() {
-return __MINGW32__;
-; return 0; }
-EOF
-if { (eval echo configure:766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_mingw32=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_mingw32=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_mingw32" 1>&6
-MINGW32=
-test "$ac_cv_mingw32" = yes && MINGW32=yes
-
-# Check whether --enable-multilib or --disable-multilib was given.
-if test "${enable_multilib+set}" = set; then
- enableval="$enable_multilib"
- case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;;
- esac
-else
- multilib=yes
-fi
-
-# Check whether --enable-target-optspace or --disable-target-optspace was given.
-if test "${enable_target_optspace+set}" = set; then
- enableval="$enable_target_optspace"
- case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;;
- esac
-else
- target_optspace=
-fi
-
-# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
-if test "${enable_malloc_debugging+set}" = set; then
- enableval="$enable_malloc_debugging"
- case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;;
- esac
-else
- malloc_debugging=
-fi
-
-# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given.
-if test "${enable_newlib_multithread+set}" = set; then
- enableval="$enable_newlib_multithread"
- case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_multithread=yes
-fi
-
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
-# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
-if test "${enable_newlib_elix_level+set}" = set; then
- enableval="$enable_newlib_elix_level"
- case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_elix_level=0
-fi
-
-# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given.
-if test "${enable_newlib_io_float+set}" = set; then
- enableval="$enable_newlib_io_float"
- case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_io_float=yes
-fi
-
-# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given.
-if test "${enable_newlib_supplied_syscalls+set}" = set; then
- enableval="$enable_newlib_supplied_syscalls"
- case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_may_supply_syscalls=yes
-fi
-
-
-
-if test x${newlib_may_supply_syscalls} = xyes; then
- MAY_SUPPLY_SYSCALLS_TRUE=
- MAY_SUPPLY_SYSCALLS_FALSE='#'
-else
- MAY_SUPPLY_SYSCALLS_TRUE='#'
- MAY_SUPPLY_SYSCALLS_FALSE=
-fi
-
-
-test -z "${with_target_subdir}" && with_target_subdir=.
-
-if test "${srcdir}" = "."; then
- if test "${with_target_subdir}" != "."; then
- newlib_basedir="${srcdir}/${with_multisrctop}../../../.."
- else
- newlib_basedir="${srcdir}/${with_multisrctop}../../.."
- fi
-else
- newlib_basedir="${srcdir}/../../.."
-fi
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:936: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:957: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:975: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-
-
-PACKAGE=newlib
-
-VERSION=1.14.0
-
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
-fi
-cat >> confdefs.h <<EOF
-#define PACKAGE "$PACKAGE"
-EOF
-
-cat >> confdefs.h <<EOF
-#define VERSION "$VERSION"
-EOF
-
-
-
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1018: checking for working aclocal-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1031: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
- AUTOCONF=autoconf
- echo "$ac_t""found" 1>&6
-else
- AUTOCONF="$missing_dir/missing autoconf"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1044: checking for working automake-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1057: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
- AUTOHEADER=autoheader
- echo "$ac_t""found" 1>&6
-else
- AUTOHEADER="$missing_dir/missing autoheader"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1070: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
- MAKEINFO=makeinfo
- echo "$ac_t""found" 1>&6
-else
- MAKEINFO="$missing_dir/missing makeinfo"
- echo "$ac_t""missing" 1>&6
-fi
-
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1095: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1125: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1174: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1183: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1198: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1229: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as"
-fi
-fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1261: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1293: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-if test -z "$ac_cv_prog_RANLIB"; then
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1325: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-else
- RANLIB=":"
-fi
-fi
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1370: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
- USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6
-
-
-if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
-
-
-echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
- ac_cv_exeext=.exe
-else
- rm -f conftest*
- echo 'int main () { return 0; }' > conftest.$ac_ext
- ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
- for file in conftest.*; do
- case $file in
- *.c | *.o | *.obj) ;;
- *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- else
- { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
- fi
- rm -f conftest*
- test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-fi
-fi
-
-EXEEXT=""
-test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-echo "$ac_t""${ac_cv_exeext}" 1>&6
-ac_exeext=$EXEEXT
-
-fi
-
-. ${newlib_basedir}/configure.host
-
-newlib_cflags="${newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-
-
-LDFLAGS=${ldflags}
-
-
-
-
-if test x${newlib_elix_level} = x0; then
- ELIX_LEVEL_0_TRUE=
- ELIX_LEVEL_0_FALSE='#'
-else
- ELIX_LEVEL_0_TRUE='#'
- ELIX_LEVEL_0_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x1; then
- ELIX_LEVEL_1_TRUE=
- ELIX_LEVEL_1_FALSE='#'
-else
- ELIX_LEVEL_1_TRUE='#'
- ELIX_LEVEL_1_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x2; then
- ELIX_LEVEL_2_TRUE=
- ELIX_LEVEL_2_FALSE='#'
-else
- ELIX_LEVEL_2_TRUE='#'
- ELIX_LEVEL_2_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x3; then
- ELIX_LEVEL_3_TRUE=
- ELIX_LEVEL_3_FALSE='#'
-else
- ELIX_LEVEL_3_TRUE='#'
- ELIX_LEVEL_3_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x4; then
- ELIX_LEVEL_4_TRUE=
- ELIX_LEVEL_4_FALSE='#'
-else
- ELIX_LEVEL_4_TRUE='#'
- ELIX_LEVEL_4_FALSE=
-fi
-
-
-
-if test x${use_libtool} = xyes; then
- USE_LIBTOOL_TRUE=
- USE_LIBTOOL_FALSE='#'
-else
- USE_LIBTOOL_TRUE='#'
- USE_LIBTOOL_FALSE=
-fi
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-
-
-
-
-
-
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g
-s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g
-s%@newlib_basedir@%$newlib_basedir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@RANLIB@%$RANLIB%g
-s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
-s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-s%@MAINT@%$MAINT%g
-s%@EXEEXT@%$EXEEXT%g
-s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g
-s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g
-s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g
-s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g
-s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g
-s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g
-s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g
-s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g
-s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g
-s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g
-s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g
-s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g
-s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g
-s%@OBJEXT@%$OBJEXT%g
-s%@oext@%$oext%g
-s%@aext@%$aext%g
-s%@libm_machine_dir@%$libm_machine_dir%g
-s%@machine_dir@%$machine_dir%g
-s%@sys_dir@%$sys_dir%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/newlib/libc/machine/m32c/configure.in b/newlib/libc/machine/m32c/configure.in
deleted file mode 100644
index e53227db5..000000000
--- a/newlib/libc/machine/m32c/configure.in
+++ /dev/null
@@ -1,12 +0,0 @@
-dnl This is the newlib/libc/machine/m32r configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.5)
-AC_INIT(setjmp.S)
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
-AC_CONFIG_AUX_DIR(../../../..)
-
-NEWLIB_CONFIGURE(../../..)
-
-AC_OUTPUT(Makefile)
diff --git a/newlib/libc/machine/m32c/setjmp.S b/newlib/libc/machine/m32c/setjmp.S
deleted file mode 100644
index 96cd0f20d..000000000
--- a/newlib/libc/machine/m32c/setjmp.S
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-
-Copyright (c) 2005 Red Hat Incorporated.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- The name of Red Hat Incorporated may not be used to endorse
- or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL RED HAT INCORPORATED BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-*/
-
-#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
-#define A16 1
-#endif
-
-/* We implement setjmp/longjmp much like the way gcc implements
- exceptions - we create new stack frames, then switch to them and
- return. Thus, the two setjmp's below each push all the relevent
- registers, then copy the whole frame into the buffer (first $sp is
- moved, then smovf copies the frame itself), and the two longjmps
- restore $sp, copy the frame back into place, and issue the same
- return as the setjmp would have used.
-
- Since the sizes of registers differs between the 16 and 24 bit
- models, we provide separate implementations for each rather than
- trying to parameterize them.
-
- Jump buffer sizes: 21 bytes for 16 bit, 34 bytes for 24 bit.
-*/
-
- .text
-
-#ifdef A16 /* 16 bit versions */
-
- .global _setjmp
-_setjmp:
- enter #0
- pushm r1,r2,r3,a0,a1,sb,fb
-
-; At this point, the stack looks like this:
-; ... [pc:3] [oldfb:2] <fb> [r1:2] [r2:2] [r3:2] [a0:2] [a1:2] [sb:2] [fb:2] <sp> */
-
- mov.w r1,a1 ; a1 is the destination of smovf
- mov.b #0,r1h
- stc sp,a0 ; r1h:a0 is the source of smovf
- mov.w a0,[a1]
- add.w #2,a1
- mov.w #19,r3 ; plus two for sp later
- smovf.b
-
- ; Return 0 to caller.
- mov.w #0,r0
- popm r1,r2,r3,a0,a1,sb,fb
- exitd
-
- .global _longjmp
-_longjmp:
- enter #0
- mov.w r1,a0 ; pointer to jump buf
- mov.w r2,r0 ; setjmp's "new" return value
-
- mov.b #0,r1h ; r1h: a0 is the source, now jmpbuf
- mov.w [a0],a1 ; dest is new stack
- ldc a1,sp
- add.w #2,a0
- mov.w #19,r3
- smovf.b
-
- ;; now return to our caller with this newly restored frame
- popm r1,r2,r3,a0,a1,sb,fb
- exitd
-
-#else /* 24 bit versions */
-
- .global _setjmp
-_setjmp:
- enter #0
- pushm r1,r2,r3,a0,a1,sb,fb
-
-; At this point, the stack looks like this:
-; ... [jbuf:4] [pc:4] [oldfb:4] <fb> [r1:2] [r2:2] [r3:2] [a0:4] [a1:4] [sb:4] [fb:4] <sp> */
-
- mov.l 8[fb],a1 ; a1 is the destination of smovf
- stc sp,a0 ; r1h:a0 is the source of smovf
- mov.l a0,[a1]
- add.l #4,a1
- mov.w #30,r3 ; plus two for sp later
- smovf.b
-
- ; Return 0 to caller.
- mov.w #0,r0
- popm r1,r2,r3,a0,a1,sb,fb
- exitd
-
- .global _longjmp
-_longjmp:
- enter #0
-; ... [rv:2] [jbuf:4] [pc:4] [oldfb:4] <fb>
- mov.l 8[fb],a0 ; pointer to jump buf
- mov.w 12[fb],r0 ; setjmp's "new" return value
-
- mov.l [a0],a1 ; dest is new stack
- ldc a1,sp
- add.l #4,a0
- mov.w #30,r3
- smovf.b
-
- ;; now return to our caller with this newly restored frame
- popm r1,r2,r3,a0,a1,sb,fb
- exitd
-#endif
-
diff --git a/newlib/libc/machine/m32r/aclocal.m4 b/newlib/libc/machine/m32r/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/m32r/aclocal.m4
+++ b/newlib/libc/machine/m32r/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/m32r/configure b/newlib/libc/machine/m32r/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/m32r/configure
+++ b/newlib/libc/machine/m32r/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/m68hc11/aclocal.m4 b/newlib/libc/machine/m68hc11/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/m68hc11/aclocal.m4
+++ b/newlib/libc/machine/m68hc11/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/m68hc11/configure b/newlib/libc/machine/m68hc11/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/m68hc11/configure
+++ b/newlib/libc/machine/m68hc11/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/m68k/aclocal.m4 b/newlib/libc/machine/m68k/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/m68k/aclocal.m4
+++ b/newlib/libc/machine/m68k/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/m68k/configure b/newlib/libc/machine/m68k/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/m68k/configure
+++ b/newlib/libc/machine/m68k/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/m88k/aclocal.m4 b/newlib/libc/machine/m88k/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/m88k/aclocal.m4
+++ b/newlib/libc/machine/m88k/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/m88k/configure b/newlib/libc/machine/m88k/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/m88k/configure
+++ b/newlib/libc/machine/m88k/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/mips/aclocal.m4 b/newlib/libc/machine/mips/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/mips/aclocal.m4
+++ b/newlib/libc/machine/mips/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/mips/configure b/newlib/libc/machine/mips/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/mips/configure
+++ b/newlib/libc/machine/mips/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/mn10200/aclocal.m4 b/newlib/libc/machine/mn10200/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/mn10200/aclocal.m4
+++ b/newlib/libc/machine/mn10200/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/mn10200/configure b/newlib/libc/machine/mn10200/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/mn10200/configure
+++ b/newlib/libc/machine/mn10200/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/mn10300/aclocal.m4 b/newlib/libc/machine/mn10300/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/mn10300/aclocal.m4
+++ b/newlib/libc/machine/mn10300/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/mn10300/configure b/newlib/libc/machine/mn10300/configure
index ec6b96e33..59f2a2ac5 100755
--- a/newlib/libc/machine/mn10300/configure
+++ b/newlib/libc/machine/mn10300/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/mt/Makefile.am b/newlib/libc/machine/mt/Makefile.am
deleted file mode 100644
index 1c65b9ffe..000000000
--- a/newlib/libc/machine/mt/Makefile.am
+++ /dev/null
@@ -1,12 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/machine/mt/Makefile.in b/newlib/libc/machine/mt/Makefile.in
deleted file mode 100644
index 9736912dc..000000000
--- a/newlib/libc/machine/mt/Makefile.in
+++ /dev/null
@@ -1,327 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = .
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_alias = @build_alias@
-build_triplet = @build@
-host_alias = @host_alias@
-host_triplet = @host@
-target_alias = @target_alias@
-target_triplet = @target@
-AR = @AR@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-EXEEXT = @EXEEXT@
-LDFLAGS = @LDFLAGS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-RANLIB = @RANLIB@
-VERSION = @VERSION@
-aext = @aext@
-libm_machine_dir = @libm_machine_dir@
-machine_dir = @machine_dir@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-sys_dir = @sys_dir@
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = setjmp.S
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-
-
-DEFS = @DEFS@ -I. -I$(srcdir)
-CPPFLAGS = @CPPFLAGS@
-LIBS = @LIBS@
-lib_a_LIBADD =
-lib_a_OBJECTS = setjmp.o
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(lib_a_SOURCES)
-OBJECTS = $(lib_a_OBJECTS)
-
-all: all-redirect
-.SUFFIXES:
-.SUFFIXES: .S .c .o .s
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
- ../../../acinclude.m4 ../../../aclocal.m4 \
- ../../../libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
- cd $(srcdir) && $(AUTOCONF)
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-.c.o:
- $(COMPILE) -c $<
-
-.s.o:
- $(COMPILE) -c $<
-
-.S.o:
- $(COMPILE) -c $<
-
-mostlyclean-compile:
- -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
- -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- here=`pwd` && cd $(srcdir) \
- && mkid -f$$here/ID $$unique $(LISP)
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
-
-clean-tags:
-
-distclean-tags:
- -rm -f TAGS ID
-
-maintainer-clean-tags:
-
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- -rm -rf $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
- mkdir $(distdir)/=build
- mkdir $(distdir)/=inst
- dc_install_base=`cd $(distdir)/=inst && pwd`; \
- cd $(distdir)/=build \
- && ../configure --srcdir=.. --prefix=$$dc_install_base \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) dist
- -rm -rf $(distdir)
- @banner="$(distdir).tar.gz is ready for distribution"; \
- dashes=`echo "$$banner" | sed s/./=/g`; \
- echo "$$dashes"; \
- echo "$$banner"; \
- echo "$$dashes"
-dist: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-dist-all: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-distdir: $(DISTFILES)
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
- @for file in $(DISTFILES); do \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am:
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-info-am:
-install-info: install-info-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES)
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \
- mostlyclean-tags mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \
- mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-noinstLIBRARIES distclean-compile \
- distclean-tags distclean-generic clean-am
-
-distclean: distclean-am
- -rm -f config.status
-
-maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
- maintainer-clean-compile maintainer-clean-tags \
- maintainer-clean-generic distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
- -rm -f config.status
-
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile tags mostlyclean-tags distclean-tags \
-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
-check-am installcheck-am installcheck install-info-am install-info \
-install-exec-am install-exec install-data-am install-data install-am \
-install uninstall-am uninstall all-redirect all-am all installdirs \
-mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/machine/mt/aclocal.m4 b/newlib/libc/machine/mt/aclocal.m4
deleted file mode 100644
index 55d5e67ce..000000000
--- a/newlib/libc/machine/mt/aclocal.m4
+++ /dev/null
@@ -1,369 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl This provides configure definitions used by all the newlib
-dnl configure.in files.
-
-dnl Basic newlib configury. This calls basic introductory stuff,
-dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
-dnl configure.host. The only argument is the relative path to the top
-dnl newlib directory.
-
-AC_DEFUN(NEWLIB_CONFIGURE,
-[
-dnl Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
-[case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
- esac], [multilib=yes])dnl
-
-dnl Support --enable-target-optspace
-AC_ARG_ENABLE(target-optspace,
-[ --enable-target-optspace optimize for space],
-[case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
- esac], [target_optspace=])dnl
-
-dnl Support --enable-malloc-debugging - currently only supported for Cygwin
-AC_ARG_ENABLE(malloc-debugging,
-[ --enable-malloc-debugging indicate malloc debugging requested],
-[case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
- esac], [malloc_debugging=])dnl
-
-dnl Support --enable-newlib-multithread
-AC_ARG_ENABLE(newlib-multithread,
-[ --enable-newlib-multithread enable support for multiple threads],
-[case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
- esac], [newlib_multithread=yes])dnl
-
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
-dnl Support --enable-newlib-elix-level
-AC_ARG_ENABLE(newlib-elix-level,
-[ --enable-newlib-elix-level supply desired elix library level (1-4)],
-[case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
- esac], [newlib_elix_level=0])dnl
-
-dnl Support --disable-newlib-io-float
-AC_ARG_ENABLE(newlib-io-float,
-[ --disable-newlib-io-float disable printf/scanf family float support],
-[case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
- esac], [newlib_io_float=yes])dnl
-
-dnl Support --disable-newlib-supplied-syscalls
-AC_ARG_ENABLE(newlib-supplied-syscalls,
-[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
-[case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
- esac], [newlib_may_supply_syscalls=yes])dnl
-
-AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
-
-dnl We may get other options which we don't document:
-dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
-
-test -z "[$]{with_target_subdir}" && with_target_subdir=.
-
-if test "[$]{srcdir}" = "."; then
- if test "[$]{with_target_subdir}" != "."; then
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
- else
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
- fi
-else
- newlib_basedir="[$]{srcdir}/$1"
-fi
-AC_SUBST(newlib_basedir)
-
-AC_CANONICAL_SYSTEM
-
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AC_CHECK_TOOL(AS, as)
-AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-
-AC_PROG_INSTALL
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-AM_MAINTAINER_MODE
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
- AC_EXEEXT
-fi
-
-. [$]{newlib_basedir}/configure.host
-
-newlib_cflags="[$]{newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-AC_SUBST(NEWLIB_CFLAGS)
-
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
-AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
-AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
-AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
-AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
-AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
-
-AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-AC_SUBST(OBJEXT)
-AC_SUBST(oext)
-AC_SUBST(aext)
-
-AC_SUBST(libm_machine_dir)
-AC_SUBST(machine_dir)
-AC_SUBST(sys_dir)
-])
-
-# Do all the work for Automake. This macro actually does too much --
-# some checks are only needed if your package does certain things.
-# But this isn't really a big deal.
-
-# serial 1
-
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-fi
-ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
-
-# Copyright 2002 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.4-p6])])
-
-#
-# Check to make sure that the build environment is sane.
-#
-
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "[$]*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "[$]*" != "X $srcdir/configure conftestfile" \
- && test "[$]*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "[$]2" = conftestfile
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-rm -f conftest*
-AC_MSG_RESULT(yes)])
-
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN([AM_MISSING_PROG],
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
- $1=$2
- AC_MSG_RESULT(found)
-else
- $1="$3/missing $2"
- AC_MSG_RESULT(missing)
-fi
-AC_SUBST($1)])
-
-# Define a conditional.
-
-AC_DEFUN([AM_CONDITIONAL],
-[AC_SUBST($1_TRUE)
-AC_SUBST($1_FALSE)
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi])
-
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
-
-# serial 1
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-[ --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- USE_MAINTAINER_MODE=$enableval,
- USE_MAINTAINER_MODE=no)
- AC_MSG_RESULT($USE_MAINTAINER_MODE)
- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST(MAINT)dnl
-]
-)
-
diff --git a/newlib/libc/machine/mt/configure b/newlib/libc/machine/mt/configure
deleted file mode 100755
index 028b7b4fa..000000000
--- a/newlib/libc/machine/mt/configure
+++ /dev/null
@@ -1,1883 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
- --enable-multilib build many library versions (default)"
-ac_help="$ac_help
- --enable-target-optspace optimize for space"
-ac_help="$ac_help
- --enable-malloc-debugging indicate malloc debugging requested"
-ac_help="$ac_help
- --enable-newlib-multithread enable support for multiple threads"
-ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
- --enable-newlib-elix-level supply desired elix library level (1-4)"
-ac_help="$ac_help
- --disable-newlib-io-float disable printf/scanf family float support"
-ac_help="$ac_help
- --disable-newlib-supplied-syscalls disable newlib from supplying syscalls"
-ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=Makefile.am
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in ../../../.. $srcdir/../../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-am__api_version="1.4"
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:578: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:631: checking whether build environment is sane" >&5
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "$*" != "X $srcdir/configure conftestfile" \
- && test "$*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
- fi
-
- test "$2" = conftestfile
- )
-then
- # Ok.
- :
-else
- { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftestmake <<\EOF
-all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- SET_MAKE=
-else
- echo "$ac_t""no" 1>&6
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-if test $host != $build; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:721: checking for Cygwin environment" >&5
-if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 726 "configure"
-#include "confdefs.h"
-
-int main() {
-
-#ifndef __CYGWIN__
-#define __CYGWIN__ __CYGWIN32__
-#endif
-return __CYGWIN__;
-; return 0; }
-EOF
-if { (eval echo configure:737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_cygwin=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_cygwin=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_cygwin" 1>&6
-CYGWIN=
-test "$ac_cv_cygwin" = yes && CYGWIN=yes
-echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:754: checking for mingw32 environment" >&5
-if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 759 "configure"
-#include "confdefs.h"
-
-int main() {
-return __MINGW32__;
-; return 0; }
-EOF
-if { (eval echo configure:766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_mingw32=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_mingw32=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_mingw32" 1>&6
-MINGW32=
-test "$ac_cv_mingw32" = yes && MINGW32=yes
-
-# Check whether --enable-multilib or --disable-multilib was given.
-if test "${enable_multilib+set}" = set; then
- enableval="$enable_multilib"
- case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;;
- esac
-else
- multilib=yes
-fi
-
-# Check whether --enable-target-optspace or --disable-target-optspace was given.
-if test "${enable_target_optspace+set}" = set; then
- enableval="$enable_target_optspace"
- case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;;
- esac
-else
- target_optspace=
-fi
-
-# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
-if test "${enable_malloc_debugging+set}" = set; then
- enableval="$enable_malloc_debugging"
- case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;;
- esac
-else
- malloc_debugging=
-fi
-
-# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given.
-if test "${enable_newlib_multithread+set}" = set; then
- enableval="$enable_newlib_multithread"
- case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_multithread=yes
-fi
-
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
-# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
-if test "${enable_newlib_elix_level+set}" = set; then
- enableval="$enable_newlib_elix_level"
- case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_elix_level=0
-fi
-
-# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given.
-if test "${enable_newlib_io_float+set}" = set; then
- enableval="$enable_newlib_io_float"
- case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_io_float=yes
-fi
-
-# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given.
-if test "${enable_newlib_supplied_syscalls+set}" = set; then
- enableval="$enable_newlib_supplied_syscalls"
- case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_may_supply_syscalls=yes
-fi
-
-
-
-if test x${newlib_may_supply_syscalls} = xyes; then
- MAY_SUPPLY_SYSCALLS_TRUE=
- MAY_SUPPLY_SYSCALLS_FALSE='#'
-else
- MAY_SUPPLY_SYSCALLS_TRUE='#'
- MAY_SUPPLY_SYSCALLS_FALSE=
-fi
-
-
-test -z "${with_target_subdir}" && with_target_subdir=.
-
-if test "${srcdir}" = "."; then
- if test "${with_target_subdir}" != "."; then
- newlib_basedir="${srcdir}/${with_multisrctop}../../../.."
- else
- newlib_basedir="${srcdir}/${with_multisrctop}../../.."
- fi
-else
- newlib_basedir="${srcdir}/../../.."
-fi
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:936: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:957: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:975: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-
-
-PACKAGE=newlib
-
-VERSION=1.14.0
-
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
-fi
-cat >> confdefs.h <<EOF
-#define PACKAGE "$PACKAGE"
-EOF
-
-cat >> confdefs.h <<EOF
-#define VERSION "$VERSION"
-EOF
-
-
-
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1018: checking for working aclocal-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1031: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
- AUTOCONF=autoconf
- echo "$ac_t""found" 1>&6
-else
- AUTOCONF="$missing_dir/missing autoconf"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1044: checking for working automake-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1057: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
- AUTOHEADER=autoheader
- echo "$ac_t""found" 1>&6
-else
- AUTOHEADER="$missing_dir/missing autoheader"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1070: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
- MAKEINFO=makeinfo
- echo "$ac_t""found" 1>&6
-else
- MAKEINFO="$missing_dir/missing makeinfo"
- echo "$ac_t""missing" 1>&6
-fi
-
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1095: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1125: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1174: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1183: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1198: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1229: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as"
-fi
-fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1261: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1293: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-if test -z "$ac_cv_prog_RANLIB"; then
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1325: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-else
- RANLIB=":"
-fi
-fi
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1370: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Hack
-ac_given_INSTALL=$INSTALL
-
-echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
- USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6
-
-
-if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
-
-
-echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
- ac_cv_exeext=.exe
-else
- rm -f conftest*
- echo 'int main () { return 0; }' > conftest.$ac_ext
- ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
- for file in conftest.*; do
- case $file in
- *.c | *.o | *.obj) ;;
- *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- else
- { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
- fi
- rm -f conftest*
- test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-fi
-fi
-
-EXEEXT=""
-test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-echo "$ac_t""${ac_cv_exeext}" 1>&6
-ac_exeext=$EXEEXT
-
-fi
-
-. ${newlib_basedir}/configure.host
-
-newlib_cflags="${newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-
-
-LDFLAGS=${ldflags}
-
-
-
-
-if test x${newlib_elix_level} = x0; then
- ELIX_LEVEL_0_TRUE=
- ELIX_LEVEL_0_FALSE='#'
-else
- ELIX_LEVEL_0_TRUE='#'
- ELIX_LEVEL_0_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x1; then
- ELIX_LEVEL_1_TRUE=
- ELIX_LEVEL_1_FALSE='#'
-else
- ELIX_LEVEL_1_TRUE='#'
- ELIX_LEVEL_1_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x2; then
- ELIX_LEVEL_2_TRUE=
- ELIX_LEVEL_2_FALSE='#'
-else
- ELIX_LEVEL_2_TRUE='#'
- ELIX_LEVEL_2_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x3; then
- ELIX_LEVEL_3_TRUE=
- ELIX_LEVEL_3_FALSE='#'
-else
- ELIX_LEVEL_3_TRUE='#'
- ELIX_LEVEL_3_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x4; then
- ELIX_LEVEL_4_TRUE=
- ELIX_LEVEL_4_FALSE='#'
-else
- ELIX_LEVEL_4_TRUE='#'
- ELIX_LEVEL_4_FALSE=
-fi
-
-
-
-if test x${use_libtool} = xyes; then
- USE_LIBTOOL_TRUE=
- USE_LIBTOOL_FALSE='#'
-else
- USE_LIBTOOL_TRUE='#'
- USE_LIBTOOL_FALSE=
-fi
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-
-
-
-
-
-
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g
-s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g
-s%@newlib_basedir@%$newlib_basedir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@RANLIB@%$RANLIB%g
-s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
-s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-s%@MAINT@%$MAINT%g
-s%@EXEEXT@%$EXEEXT%g
-s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g
-s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g
-s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g
-s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g
-s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g
-s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g
-s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g
-s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g
-s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g
-s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g
-s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g
-s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g
-s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g
-s%@OBJEXT@%$OBJEXT%g
-s%@oext@%$oext%g
-s%@aext@%$aext%g
-s%@libm_machine_dir@%$libm_machine_dir%g
-s%@machine_dir@%$machine_dir%g
-s%@sys_dir@%$sys_dir%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/newlib/libc/machine/mt/configure.in b/newlib/libc/machine/mt/configure.in
deleted file mode 100644
index d6898f515..000000000
--- a/newlib/libc/machine/mt/configure.in
+++ /dev/null
@@ -1,12 +0,0 @@
-dnl This is the newlib/libc/machine/mt configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.5)
-AC_INIT(Makefile.am)
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
-AC_CONFIG_AUX_DIR(../../../..)
-
-NEWLIB_CONFIGURE(../../..)
-
-AC_OUTPUT(Makefile)
diff --git a/newlib/libc/machine/mt/setjmp.S b/newlib/libc/machine/mt/setjmp.S
deleted file mode 100644
index e93bd3313..000000000
--- a/newlib/libc/machine/mt/setjmp.S
+++ /dev/null
@@ -1,99 +0,0 @@
-# setjmp/longjmp for mt.
-#
-# The jmpbuf looks like this:
-#
-# Register jmpbuf offset
-# R0 --- --
-# R1 0x4 4
-# R2 0x8 8
-# R3 0xc 12
-# R4 0x10 16
-# R5 0x14 20
-# R6 0x18 24
-# R7 0x1c 28
-# R8 0x20 32
-# R9 ---- --
-# R10 ---- --
-# R11 0x2c 44
-# R12 0x30 48
-# R13 0x34 52
-# R14 0x38 56
-# R15 0x3c 60
-#
-# R1 contains the pointer to jmpbuf
- .text
- .global setjmp
- .type setjmp ,@function
-setjmp:
-
- stw r1, r1, #4
- or r0, r0, r0
- stw r2, r1, #8
- or r0, r0, r0
- stw r3, r1, #12
- or r0, r0, r0
- stw r4, r1, #16
- or r0, r0, r0
- stw r5, r1, #20
- or r0, r0, r0
- stw r6, r1, #24
- or r0, r0, r0
- stw r7, r1, #28
- or r0, r0, r0
- stw r8, r1, #32
- or r0, r0, r0
- stw r11, r1, #44
- or r0, r0, r0
- stw r12, r1, #48
- or r0, r0, r0
- stw r13, r1, #52
- or r0, r0, r0
- stw r14, r1, #56
- or r0, r0, r0
- stw r15, r1, #60
-
- jal r0, r14
- addi r11, r0, #0
-.Lend1:
- .size setjmp,.Lend1-setjmp
-
- .global longjmp
- .type longjmp,@function
-longjmp:
- or r9, r1, r1
- or r11, r2, r2
- ldw r1, r1, #4
- or r0, r0, r0
- ldw r2, r1, #8
- or r0, r0, r0
- ldw r3, r1, #12
- or r0, r0, r0
- ldw r4, r1, #16
- or r0, r0, r0
- ldw r5, r1, #20
- or r0, r0, r0
- ldw r6, r1, #24
- or r0, r0, r0
- ldw r7, r1, #28
- or r0, r0, r0
- ldw r8, r1, #32
- or r0, r0, r0
-
-
- ldw r12, r1, #48
- or r0, r0, r0
- ldw r13, r1, #52
- or r0, r0, r0
- ldw r14, r1, #56
- or r0, r0, r0
- ldw r15, r1, #60
-
- brne r0, r11, .L01
- or r0, r0, r0
-
- addi r11, r0, #1
-.L01:
- jal r0, r14
- or r0, r0, r0
-.Lend2:
- .size longjmp,.Lend2-longjmp2
diff --git a/newlib/libc/machine/necv70/aclocal.m4 b/newlib/libc/machine/necv70/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/necv70/aclocal.m4
+++ b/newlib/libc/machine/necv70/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/necv70/configure b/newlib/libc/machine/necv70/configure
index 58653d8be..cf99ed392 100755
--- a/newlib/libc/machine/necv70/configure
+++ b/newlib/libc/machine/necv70/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/powerpc/aclocal.m4 b/newlib/libc/machine/powerpc/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/powerpc/aclocal.m4
+++ b/newlib/libc/machine/powerpc/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/powerpc/configure b/newlib/libc/machine/powerpc/configure
index e74aa97b6..8c20e0445 100755
--- a/newlib/libc/machine/powerpc/configure
+++ b/newlib/libc/machine/powerpc/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/powerpc/vfprintf.c b/newlib/libc/machine/powerpc/vfprintf.c
index 8aadb4b15..aac5fb2fb 100644
--- a/newlib/libc/machine/powerpc/vfprintf.c
+++ b/newlib/libc/machine/powerpc/vfprintf.c
@@ -239,6 +239,7 @@ __sbprintf(fp, fmt, ap)
unsigned char buf[BUFSIZ];
/* copy the important variables */
+ fake._data = fp->_data;
fake._flags = fp->_flags & ~__SNBF;
fake._file = fp->_file;
fake._cookie = fp->_cookie;
@@ -321,8 +322,8 @@ _DEFUN (VFPRINTF, (fp, fmt0, ap),
_CONST char *fmt0 _AND
va_list ap)
{
- CHECK_INIT (_REENT);
- return _VFPRINTF_R (_REENT, fp, fmt0, ap);
+ CHECK_INIT (fp);
+ return _VFPRINTF_R (fp->_data, fp, fmt0, ap);
}
int
diff --git a/newlib/libc/machine/powerpc/vfscanf.c b/newlib/libc/machine/powerpc/vfscanf.c
index 47b0d1c61..602fd7735 100644
--- a/newlib/libc/machine/powerpc/vfscanf.c
+++ b/newlib/libc/machine/powerpc/vfscanf.c
@@ -224,8 +224,8 @@ _DEFUN (vfscanf, (fp, fmt, ap),
_CONST char *fmt _AND
va_list ap)
{
- CHECK_INIT(_REENT);
- return __svfscanf_r (_REENT, fp, fmt, ap);
+ CHECK_INIT(fp);
+ return __svfscanf_r (fp->_data, fp, fmt, ap);
}
int
@@ -803,7 +803,6 @@ __svfscanf_r (rptr, fp, fmt0, ap)
case CT_INT:
{
unsigned int_width_left = 0;
- int skips = 0;
int_width = width;
#ifdef hardway
if (int_width == 0 || int_width > sizeof (buf) - 1)
@@ -853,7 +852,6 @@ __svfscanf_r (rptr, fp, fmt0, ap)
int_width_left--;
int_width++;
}
- ++skips;
goto skip;
/* 1 through 7 always legal */
@@ -1011,7 +1009,7 @@ __svfscanf_r (rptr, fp, fmt0, ap)
if (!(flags & VECTOR))
nassigned++;
}
- nread += p - buf + skips;
+ nread += p - buf;
break;
}
@@ -1260,3 +1258,106 @@ match_failure:
return nassigned;
}
+/*
+ * Fill in the given table from the scanset at the given format
+ * (just after `['). Return a pointer to the character past the
+ * closing `]'. The table has a 1 wherever characters should be
+ * considered part of the scanset.
+ */
+
+/*static*/
+u_char *
+__sccl (tab, fmt)
+ register char *tab;
+ register u_char *fmt;
+{
+ register int c, n, v;
+
+ /* first `clear' the whole table */
+ c = *fmt++; /* first char hat => negated scanset */
+ if (c == '^')
+ {
+ v = 1; /* default => accept */
+ c = *fmt++; /* get new first char */
+ }
+ else
+ v = 0; /* default => reject */
+ /* should probably use memset here */
+ for (n = 0; n < 256; n++)
+ tab[n] = v;
+ if (c == 0)
+ return fmt - 1; /* format ended before closing ] */
+
+ /*
+ * Now set the entries corresponding to the actual scanset to the
+ * opposite of the above.
+ *
+ * The first character may be ']' (or '-') without being special; the
+ * last character may be '-'.
+ */
+
+ v = 1 - v;
+ for (;;)
+ {
+ tab[c] = v; /* take character c */
+ doswitch:
+ n = *fmt++; /* and examine the next */
+ switch (n)
+ {
+
+ case 0: /* format ended too soon */
+ return fmt - 1;
+
+ case '-':
+ /*
+ * A scanset of the form [01+-] is defined as `the digit 0, the
+ * digit 1, the character +, the character -', but the effect of a
+ * scanset such as [a-zA-Z0-9] is implementation defined. The V7
+ * Unix scanf treats `a-z' as `the letters a through z', but treats
+ * `a-a' as `the letter a, the character -, and the letter a'.
+ *
+ * For compatibility, the `-' is not considerd to define a range if
+ * the character following it is either a close bracket (required by
+ * ANSI) or is not numerically greater than the character we just
+ * stored in the table (c).
+ */
+ n = *fmt;
+ if (n == ']' || n < c)
+ {
+ c = '-';
+ break; /* resume the for(;;) */
+ }
+ fmt++;
+ do
+ { /* fill in the range */
+ tab[++c] = v;
+ }
+ while (c < n);
+#if 1 /* XXX another disgusting compatibility hack */
+ /*
+ * Alas, the V7 Unix scanf also treats formats such
+ * as [a-c-e] as `the letters a through e'. This too
+ * is permitted by the standard....
+ */
+ goto doswitch;
+#else
+ c = *fmt++;
+ if (c == 0)
+ return fmt - 1;
+ if (c == ']')
+ return fmt;
+#endif
+
+ break;
+
+
+ case ']': /* end of scanset */
+ return fmt;
+
+ default: /* just another character */
+ c = n;
+ break;
+ }
+ }
+ /* NOTREACHED */
+}
diff --git a/newlib/libc/machine/sh/Makefile.in b/newlib/libc/machine/sh/Makefile.in
index 619a9059a..5e8a42b98 100644
--- a/newlib/libc/machine/sh/Makefile.in
+++ b/newlib/libc/machine/sh/Makefile.in
@@ -103,10 +103,10 @@ DEFS = @DEFS@ -I. -I$(srcdir)
CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
lib_a_LIBADD =
-@SH64_FALSE@lib_a_OBJECTS = memcpy.o memset.o setjmp.o strcpy.o \
-@SH64_FALSE@strlen.o strcmp.o
@SH64_TRUE@lib_a_OBJECTS = memcpy.o memset.o setjmp.o strcpy.o strlen.o \
@SH64_TRUE@strcmp.o strncpy.o
+@SH64_FALSE@lib_a_OBJECTS = memcpy.o memset.o setjmp.o strcpy.o \
+@SH64_FALSE@strlen.o strcmp.o
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
diff --git a/newlib/libc/machine/sh/aclocal.m4 b/newlib/libc/machine/sh/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/sh/aclocal.m4
+++ b/newlib/libc/machine/sh/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/sh/configure b/newlib/libc/machine/sh/configure
index 1eb7514bc..3c600020a 100755
--- a/newlib/libc/machine/sh/configure
+++ b/newlib/libc/machine/sh/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1569,7 +1566,7 @@ OBJEXT=${oext}
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1573: checking how to run the C preprocessor" >&5
+echo "configure:1570: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -1584,13 +1581,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
-#line 1588 "configure"
+#line 1585 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1594: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1591: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1601,13 +1598,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
-#line 1605 "configure"
+#line 1602 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1611: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1608: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1618,13 +1615,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -nologo -E"
cat > conftest.$ac_ext <<EOF
-#line 1622 "configure"
+#line 1619 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1628: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1625: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1649,7 +1646,7 @@ fi
echo "$ac_t""$CPP" 1>&6
cat > conftest.$ac_ext <<EOF
-#line 1653 "configure"
+#line 1650 "configure"
#include "confdefs.h"
#if __SH5__
diff --git a/newlib/libc/machine/sparc/aclocal.m4 b/newlib/libc/machine/sparc/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/sparc/aclocal.m4
+++ b/newlib/libc/machine/sparc/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/sparc/configure b/newlib/libc/machine/sparc/configure
index 934fdab95..425bcea11 100755
--- a/newlib/libc/machine/sparc/configure
+++ b/newlib/libc/machine/sparc/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/tic4x/aclocal.m4 b/newlib/libc/machine/tic4x/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/tic4x/aclocal.m4
+++ b/newlib/libc/machine/tic4x/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/tic4x/configure b/newlib/libc/machine/tic4x/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/tic4x/configure
+++ b/newlib/libc/machine/tic4x/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/tic80/aclocal.m4 b/newlib/libc/machine/tic80/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/tic80/aclocal.m4
+++ b/newlib/libc/machine/tic80/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/tic80/configure b/newlib/libc/machine/tic80/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/tic80/configure
+++ b/newlib/libc/machine/tic80/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/v850/aclocal.m4 b/newlib/libc/machine/v850/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/v850/aclocal.m4
+++ b/newlib/libc/machine/v850/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/v850/configure b/newlib/libc/machine/v850/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/v850/configure
+++ b/newlib/libc/machine/v850/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/w65/aclocal.m4 b/newlib/libc/machine/w65/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/w65/aclocal.m4
+++ b/newlib/libc/machine/w65/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/w65/configure b/newlib/libc/machine/w65/configure
index ec4e3cf09..64fdcf354 100755
--- a/newlib/libc/machine/w65/configure
+++ b/newlib/libc/machine/w65/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/xscale/Makefile.in b/newlib/libc/machine/xscale/Makefile.in
index 5f3c31b7d..1f5171268 100644
--- a/newlib/libc/machine/xscale/Makefile.in
+++ b/newlib/libc/machine/xscale/Makefile.in
@@ -89,7 +89,9 @@ INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
noinst_LIBRARIES = lib.a
-lib_a_SOURCES = memchr.c memcmp.c memcpy.c memmove.c memset.c strchr.c strcmp.c strcpy.c strlen.c setjmp.S
+lib_a_SOURCES = \
+ memchr.c memcmp.c memcpy.c memmove.c memset.c \
+ strchr.c strcmp.c strcpy.c strlen.c setjmp.S
ACLOCAL_AMFLAGS = -I ../../..
diff --git a/newlib/libc/machine/xscale/aclocal.m4 b/newlib/libc/machine/xscale/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/xscale/aclocal.m4
+++ b/newlib/libc/machine/xscale/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/xscale/configure b/newlib/libc/machine/xscale/configure
index 028b7b4fa..cdc3b07e9 100755
--- a/newlib/libc/machine/xscale/configure
+++ b/newlib/libc/machine/xscale/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/xstormy16/aclocal.m4 b/newlib/libc/machine/xstormy16/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/xstormy16/aclocal.m4
+++ b/newlib/libc/machine/xstormy16/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/xstormy16/configure b/newlib/libc/machine/xstormy16/configure
index 98bab641e..2f2a27bcc 100755
--- a/newlib/libc/machine/xstormy16/configure
+++ b/newlib/libc/machine/xstormy16/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/z8k/Makefile.am b/newlib/libc/machine/z8k/Makefile.am
index eac616a8c..1c65b9ffe 100644
--- a/newlib/libc/machine/z8k/Makefile.am
+++ b/newlib/libc/machine/z8k/Makefile.am
@@ -6,7 +6,7 @@ INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
noinst_LIBRARIES = lib.a
-lib_a_SOURCES = setjmp.S memset.S memcpy.S memmove.S memcmp.S
+lib_a_SOURCES = setjmp.S
ACLOCAL_AMFLAGS = -I ../../..
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/machine/z8k/Makefile.in b/newlib/libc/machine/z8k/Makefile.in
index 2dced6476..9736912dc 100644
--- a/newlib/libc/machine/z8k/Makefile.in
+++ b/newlib/libc/machine/z8k/Makefile.in
@@ -89,7 +89,7 @@ INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
noinst_LIBRARIES = lib.a
-lib_a_SOURCES = setjmp.S memset.S memcpy.S memmove.S memcmp.S
+lib_a_SOURCES = setjmp.S
ACLOCAL_AMFLAGS = -I ../../..
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
@@ -103,7 +103,7 @@ DEFS = @DEFS@ -I. -I$(srcdir)
CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
lib_a_LIBADD =
-lib_a_OBJECTS = setjmp.o memset.o memcpy.o memmove.o memcmp.o
+lib_a_OBJECTS = setjmp.o
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
diff --git a/newlib/libc/machine/z8k/aclocal.m4 b/newlib/libc/machine/z8k/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/machine/z8k/aclocal.m4
+++ b/newlib/libc/machine/z8k/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/machine/z8k/configure b/newlib/libc/machine/z8k/configure
index 8b9a4a1df..a1d85e5a9 100755
--- a/newlib/libc/machine/z8k/configure
+++ b/newlib/libc/machine/z8k/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/machine/z8k/memcmp.S b/newlib/libc/machine/z8k/memcmp.S
deleted file mode 100644
index ae41e63be..000000000
--- a/newlib/libc/machine/z8k/memcmp.S
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * memcmp routine for Z8000
- * Copyright (C) 2004 Christian Groessler <chris@groessler.org>
- *
- * Permission to use, copy, modify, and distribute this file
- * for any purpose is hereby granted without fee, provided that
- * the above copyright notice and this notice appears in all
- * copies.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* int memcmp(const void *b1, const void *b2, size_t length);
- */
-
- name "memcmp.S"
-
- .text
- even
-global _memcmp
-
-_memcmp:
-
-#ifdef __Z8001__
- segm
-
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
- ldl rr4,rr14(#8)
- ldl rr2,rr14(#12)
-#endif
-
-/* rr2 - length (high word ignored)
- * rr4 - b2
- * rr6 - b1
- */
-
- clr r1 /* initialize return value */
- testl rr2
- jr z,finish
-
- bitb rl7,#0 /* odd b1? */
- jr nz,testb2
- bitb rl5,#0 /* odd b2? */
- jr nz,odd_cmp /* b1 even, b2 odd */
- jr t,even_cmp
-
-testb2:
- bitb rl5,#0
- jr z,odd_cmp /* b2 even, b1 odd */
-
- cpsib @rr6,@rr4,r3,eq
- jr z,beq /* bytes are the same */
- jr t,byte_diff
-
-beq: jr ov,finish /* jump if r3 is zero now */
-
-/* compare words */
-even_cmp:
- ld r2,r3 /* remember length */
- srl r3,#1
- jr z,no_words
-
- cpsir @rr6,@rr4,r3,ne
- jr nz,no_words
-
- dec r7,#2
- dec r5,#2 /* point to different bytes */
- ldk r3,#2
- jr t,odd_cmp
-
-no_words:
- bitb rl2,#0 /* odd length? */
- jr z,finish
-
- cpsib @rr6,@rr4,r3,eq
- jr z,finish /* last bytes are the same */
- jr t,byte_diff
-
-/* compare bytes */
-odd_cmp:
- cpsirb @rr6,@rr4,r3,ne
- jr nz,finish
-
-byte_diff:
- dec r7,#1
- dec r5,#1 /* point to different bytes */
-
- ldb rl1,@rr6
- clr r0
- ldb rl0,@rr4
- sub r1,r0
-
-finish: /* set return value */
-#ifdef __STD_CALL__
- ld r7,r1
-#else
- ld r2,r1
-#endif
-
-
-#else /* above Z8001, below Z8002 */
-
-
- unsegm
-
-#ifdef __STD_CALL__
- ld r7,r15(#2)
- ld r6,r15(#4)
- ld r5,r15(#6)
-#endif
-
-/* r5 - length
- * r6 - b2
- * r7 - b1
- */
-
- clr r1 /* initialize return value */
- test r5
- jr z,finish
-
- bitb rl7,#0 /* odd destination address? */
- jr nz,testb2
- bitb rl6,#0 /* odd source address? */
- jr nz,odd_cmp /* b1 even, b2 odd */
- jr t,even_cmp
-
-testb2:
- bitb rl6,#0
- jr z,odd_cmp /* b2 even, b1 odd */
-
- cpsib @r7,@r6,r5,eq
- jr z,beq /* bytes are the same */
- jr t,byte_diff
-
-beq: jr ov,finish /* jump if r3 is zero now */
-
-/* compare words */
-even_cmp:
- ld r4,r5 /* remember length */
- srl r5,#1
- jr z,no_words
-
- cpsir @r7,@r6,r5,ne
- jr nz,no_words
-
- dec r7,#2
- dec r6,#2 /* point to different bytes */
- ldk r5,#2
- jr t,odd_cmp
-
-no_words:
- bitb rl4,#0 /* odd length? */
- jr z,finish
-
- cpsib @r7,@r6,r4,eq
- jr z,finish /* last bytes are the same */
- jr t,byte_diff
-
-/* compare bytes */
-odd_cmp:
- cpsirb @r7,@r6,r5,ne
- jr nz,finish
-
-byte_diff:
- dec r7,#1
- dec r6,#1 /* point to different bytes */
-
- ldb rl1,@r7
- clr r0
- ldb rl0,@r6
- sub r1,r0
-
-finish:
-#ifdef __STD_CALL__
- ld r7,r1
-#else
- ld r2,r1
-#endif
-
-#endif /* Z8002 */
-
- ret
- .end
diff --git a/newlib/libc/machine/z8k/memcpy.S b/newlib/libc/machine/z8k/memcpy.S
deleted file mode 100644
index ede603787..000000000
--- a/newlib/libc/machine/z8k/memcpy.S
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * memcpy routine for Z8000
- * Copyright (C) 2004 Christian Groessler <chris@groessler.org>
- *
- * Permission to use, copy, modify, and distribute this file
- * for any purpose is hereby granted without fee, provided that
- * the above copyright notice and this notice appears in all
- * copies.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* void *memcpy(void *dest, const void *src, size_t length);
- */
-
- name "memcpy.S"
-
- .text
- even
-global _memcpy
-global memmove_entry
-
-_memcpy:
-
-#ifdef __Z8001__
- segm
-
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
- ldl rr4,rr14(#8)
- ldl rr2,rr14(#12)
-#else
- pushl @rr14,rr6
-#endif
-
-/* rr2 - length (high word ignored)
- * rr4 - src
- * rr6 - dest
- */
-
- testl rr2
- jr z,finish
-
-memmove_entry: /* external entry point from memmove */
-
- bitb rl7,#0 /* odd destination address? */
- jr nz,testsrc
- bitb rl5,#0 /* odd source address? */
- jr nz,odd_copy
- jr t,even_copy /* dest even, src odd */
-
-testsrc:
- bitb rl5,#0
- jr z,odd_copy /* src even, dest odd */
- ldib @rr6,@rr4,r3
- jr ov,finish /* jump if r3 is zero now */
-
-/* copy words */
-even_copy:
- ld r2,r3 /* remember length */
- srl r3,#1
- jr z,no_words
-
- ldir @rr6,@rr4,r3
-
-no_words:
- bitb rl2,#0 /* odd length? */
- jr z,finish
- ldib @rr6,@rr4,r2 /* yes, copy last byte */
- jr finish
-
-/* copy bytes */
-odd_copy:
- ldirb @rr6,@rr4,r3
-
-finish:
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
-#else
- popl rr2,@rr14
-#endif
-
-
-#else /* above Z8001, below Z8002 */
-
-
- unsegm
-
-#ifdef __STD_CALL__
- ld r7,r15(#2)
- ld r6,r15(#4)
- ld r5,r15(#6)
-#else
- ld r2,r7 /* buffer pointer return value */
-#endif
-
-/* r5 - length
- * r6 - src
- * r7 - dest
- */
- test r5
- jr z,finish
-
-memmove_entry: /* external entry point from memmove */
-
- bitb rl7,#0 /* odd destination address? */
- jr nz,testsrc
- bitb rl6,#0 /* odd source address? */
- jr nz,odd_copy
- jr t,even_copy /* dest even, src odd */
-
-testsrc:
- bitb rl6,#0
- jr z,odd_copy /* src even, dest odd */
- ldib @r7,@r6,r5
- jr ov,finish /* jump if r5 is zero now */
-
-/* copy words */
-even_copy:
- ld r4,r5 /* remember length */
- srl r5,#1
- jr z,no_words
-
- ldir @r7,@r6,r5
-
-no_words:
- bitb rl4,#0 /* odd length? */
- jr z,finish
- ldib @r7,@r6,r4 /* yes, copy last byte */
- jr finish
-
-/* copy bytes */
-odd_copy:
- ldirb @r7,@r6,r5
-
-finish:
-#ifdef __STD_CALL__
- ld r7,r15(#2)
-#endif
-
-#endif /* Z8002 */
-
- ret
- .end
diff --git a/newlib/libc/machine/z8k/memmove.S b/newlib/libc/machine/z8k/memmove.S
deleted file mode 100644
index c4d0c73f8..000000000
--- a/newlib/libc/machine/z8k/memmove.S
+++ /dev/null
@@ -1,180 +0,0 @@
-/*
- * memmove routine for Z8000
- * Copyright (C) 2004 Christian Groessler <chris@groessler.org>
- *
- * Permission to use, copy, modify, and distribute this file
- * for any purpose is hereby granted without fee, provided that
- * the above copyright notice and this notice appears in all
- * copies.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* void *memmove(void *dest, const void *src, size_t length);
- */
-
- name "memmove.S"
-
- .text
- even
-global _memmove
-
-_memmove:
-
-#ifdef __Z8001__
- segm
-
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
- ldl rr4,rr14(#8)
- ldl rr2,rr14(#12)
-#else
- pushl @rr14,rr6
-#endif
-
-/* rr2 - length (high word ignored)
- * rr4 - src
- * rr6 - dest
- */
-
- testl rr2
- jr z,finish
-
-/* check for destructive overlap (src < dest && dest < src + length) */
-
- cpl rr6,rr4
- jp ule,memmove_entry /* non-destructive, let memcpy do the work */
- ldl rr0,rr2
- addl rr0,rr4 /* rr0 = src + length */
- cpl rr0,rr6
- jp ult,memmove_entry /* non-destructive, let memcpy do the work */
-
-/* set-up pointers to copy backwards, add (length - 1) */
- addl rr4,rr2 /* src + length */
- addl rr6,rr2 /* dest + length */
- subl rr4,#1
- subl rr6,#1
-
-/* check alignment */
- bitb rl7,#0 /* odd destination address? */
- jr z,testsrc
- bitb rl5,#0 /* odd source address? */
- jr z,odd_copy
- jr even_copy
-
-testsrc:
- bitb rl5,#0
- jr nz,odd_copy /* src even, dest odd */
- lddb @rr6,@rr4,r3
- jr ov,finish /* jump if r5 is zero now */
-
-/* copy words */
-even_copy:
- ld r2,r3 /* remember length */
- srl r3,#1
-/* jr z,no_words it cannot be zero here */
-
- dec r5,#1
- dec r7,#1
- lddr @rr6,@rr4,r3
-
-no_words:
- bitb rl2,#0 /* odd length? */
- jr z,finish
- inc r5,#1
- inc r7,#1
- lddb @rr6,@rr4,r2 /* yes, copy last byte */
- jr finish
-
-/* copy bytes */
-odd_copy:
- lddrb @rr6,@rr4,r3
-
-finish:
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
-#else
- popl rr2,@rr14
-#endif
-
-
-#else /* above Z8001, below Z8002 */
-
-
- unsegm
-
-#ifdef __STD_CALL__
- ld r7,r15(#2)
- ld r6,r15(#4)
- ld r5,r15(#6)
-#else
- ld r2,r7 /* buffer pointer return value */
-#endif
-
-/* r5 - length
- * r6 - src
- * r7 - dest
- */
- test r5
- jr z,finish
-
-/* check for destructive overlap (src < dest && dest < src + length) */
-
- cp r7,r6
- jp ule,memmove_entry /* non-destructive, let memcpy do the work */
- ld r0,r5
- add r0,r6 /* r0 = src + length */
- cp r0,r7
- jp ult,memmove_entry /* non-destructive, let memcpy do the work */
-
-/* set-up pointers to copy backwards, add (length - 1) */
- add r6,r5 /* src + length */
- add r7,r5 /* dest + length */
- dec r6,#1
- dec r7,#1
-
-/* check alignment */
- bitb rl7,#0 /* odd destination address? */
- jr z,testsrc
- bitb rl6,#0 /* odd source address? */
- jr z,odd_copy
- jr even_copy
-
-testsrc:
- bitb rl6,#0
- jr nz,odd_copy /* src even, dest odd */
- lddb @r7,@r6,r5
- jr ov,finish /* jump if r5 is zero now */
-
-/* copy words */
-even_copy:
- ld r4,r5 /* remember length */
- srl r5,#1
-/* jr z,no_words it cannot be zero here */
-
- dec r6,#1
- dec r7,#1
- lddr @r7,@r6,r5
-
-no_words:
- bitb rl4,#0 /* odd length? */
- jr z,finish
- inc r6,#1
- inc r7,#1
- lddb @r7,@r6,r4 /* yes, copy last byte */
- jr finish
-
-/* copy bytes */
-odd_copy:
- lddrb @r7,@r6,r5
-
-finish:
-#ifdef __STD_CALL__
- ld r7,r15(#2)
-#endif
-
-#endif /* Z8002 */
-
- ret
- .end
diff --git a/newlib/libc/machine/z8k/memset.S b/newlib/libc/machine/z8k/memset.S
deleted file mode 100644
index 43184c709..000000000
--- a/newlib/libc/machine/z8k/memset.S
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * memset routine for Z8000
- * Copyright (C) 2004 Christian Groessler <chris@groessler.org>
- *
- * Permission to use, copy, modify, and distribute this file
- * for any purpose is hereby granted without fee, provided that
- * the above copyright notice and this notice appears in all
- * copies.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* void *memset(void *buffer, int value, size_t length);
- */
-
- name "memset.S"
-
- .text
- even
-global _memset
-
-_memset:
-
-#ifdef __Z8001__
- segm
-
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
- ld r5,rr14(#8)
- ldl rr2,rr14(#10)
-#else
- pushl @rr14,rr6
-#endif
-
-/* rr2 - length
- * rl5 - value
- * rr6 - buffer
- */
- testl rr2
- jr z,finish
-
- ldb rh5,rl5
- ld r1,r5 /* r1 contains value */
- bit r7,#0
- jr z,not_odd
-
- ldb @rr6,rl1
- inc r7,#1
- subl rr2,#1
- jr z,finish
-
-not_odd:ld r0,r3 /* remember length */
- srl r3,#1
- jr z,no_words
-
- ldl rr4,rr6
- ld @rr6,r1
- inc r7,#2
- dec r3,#1
- jr z,no_words
-
- ldir @rr6,@rr4,r3 /* fill words */
-
-no_words:
- bit r0,#0 /* one byte remaining? */
- jr z,finish
-
- ldb @rr6,rl1
-
-finish:
-#ifdef __STD_CALL__
- ldl rr6,rr14(#4)
-#else
- popl rr2,@rr14
-#endif
-
-
-#else /* above Z8001, below Z8002 */
-
-
- unsegm
-
-#ifdef __STD_CALL__
- ld r7,r15(#2)
- ld r6,r15(#4)
- ld r5,r15(#6)
-#else
- ld r2,r7 /* buffer pointer return value */
-#endif
-
-/* r5 - length
- * r6 - value
- * r7 - buffer
- */
- test r5
- jr z,finish
-
- ldb rh6,rl6
- ld r1,r6 /* r1 contains value */
- bit r7,#0
- jr z,not_odd
-
- ldb @r7,rl1
- inc r7,#1
- dec r5,#1
- jr z,finish
-
-not_odd:ld r0,r5 /* remember length */
- srl r5,#1
- jr z,no_words
-
- ld r4,r7
- ld @r7,r1
- inc r7,#2
- dec r5,#1
- jr z,no_words
-
- ldir @r7,@r4,r5 /* fill words */
-
-no_words:
- bit r0,#0 /* one byte remaining? */
- jr z,finish
-
- ldb @r7,rl1
-
-finish:
-#ifdef __STD_CALL__
- ld r7,r15(#2)
-#endif
-
-#endif /* Z8002 */
-
- ret
- .end
diff --git a/newlib/libc/machine/z8k/setjmp.S b/newlib/libc/machine/z8k/setjmp.S
index 30240e1e8..e58d0d1f4 100644
--- a/newlib/libc/machine/z8k/setjmp.S
+++ b/newlib/libc/machine/z8k/setjmp.S
@@ -1,9 +1,10 @@
- .global _setjmp
- .global _longjmp
#ifdef __Z8001__
segm
+ .global _setjmp
+ .globl _longjmp
+
#ifdef __STD_CALL__
_setjmp:
@@ -55,31 +56,10 @@ _longjmp:
unseg
#ifdef __STD_CALL__
+#warning Z8002 std call not implemented!
+#endif
-_setjmp:
- ld r7,r15(#2) ! get argument
- ld r2,@r15 ! fetch pc
- ld @r7,r2 ! save it
- ldl r7(#14),rr8
- ldl r7(#2),rr10
- ldl r7(#6),rr12 ! remember frame pointer
- ldl r7(#10),rr14 ! remember stack pointer
- ldk r7,#0
- ret t
-
-_longjmp:
- ld r4,r15(#2) ! get first argument (jmp_buf)
- ld r7,r15(#4) ! get return value
- ldl rr8,r4(#14)
- ldl rr10,r4(#2)
- ldl rr12,r4(#6) ! restore old frame pointer
- ldl rr14,r4(#10) ! restore old stack pointer
- ld r4,@r4 ! return address
- inc r15,#2
- jp @r4
-
-#else /* above __STD_CALL_, below not */
-
+ .global _setjmp
_setjmp:
ld r2,@r15 ! fetch pc
ld @r7,r2 ! save it
@@ -89,14 +69,14 @@ _setjmp:
ldk r2,#0
ret t
+ .globl _longjmp
+
_longjmp:
ld r2,r6 ! get return value
ld r4,@r7
- ldl rr10,r7(4)
- ldl rr12,r7(8)
- ldl rr14,r7(12)
- inc r15,#2
- jp @r4
+ ldl rr10,rr7(4)
+ ldl rr12,rr7(8)
+ ldl rr14,rr7(12)
+ jp @rr4
-#endif /* not __STD_CALL__ */
#endif /* Z8002 version */
diff --git a/newlib/libc/misc/Makefile.am b/newlib/libc/misc/Makefile.am
index fa3a8ce6d..e5ed00b17 100644
--- a/newlib/libc/misc/Makefile.am
+++ b/newlib/libc/misc/Makefile.am
@@ -4,7 +4,7 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-LIB_SOURCES = dprintf.c unctrl.c ffs.c init.c
+LIB_SOURCES = dprintf.c unctrl.c ffs.c
libmisc_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/misc/Makefile.in b/newlib/libc/misc/Makefile.in
index 22301b80c..72376f7a9 100644
--- a/newlib/libc/misc/Makefile.in
+++ b/newlib/libc/misc/Makefile.in
@@ -110,7 +110,7 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-LIB_SOURCES = dprintf.c unctrl.c ffs.c init.c
+LIB_SOURCES = dprintf.c unctrl.c ffs.c
libmisc_la_LDFLAGS = -Xcompiler -nostdlib
@@ -140,12 +140,11 @@ CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
lib_a_LIBADD =
@USE_LIBTOOL_FALSE@lib_a_OBJECTS = dprintf.$(OBJEXT) unctrl.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@ffs.$(OBJEXT) init.$(OBJEXT)
+@USE_LIBTOOL_FALSE@ffs.$(OBJEXT)
LTLIBRARIES = $(noinst_LTLIBRARIES)
libmisc_la_LIBADD =
-@USE_LIBTOOL_TRUE@libmisc_la_OBJECTS = dprintf.lo unctrl.lo ffs.lo \
-@USE_LIBTOOL_TRUE@init.lo
+@USE_LIBTOOL_TRUE@libmisc_la_OBJECTS = dprintf.lo unctrl.lo ffs.lo
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
diff --git a/newlib/libc/misc/init.c b/newlib/libc/misc/init.c
deleted file mode 100644
index 539fbefed..000000000
--- a/newlib/libc/misc/init.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2004 CodeSourcery, LLC
- *
- * Permission to use, copy, modify, and distribute this file
- * for any purpose is hereby granted without fee, provided that
- * the above copyright notice and this notice appears in all
- * copies.
- *
- * This file is distributed WITHOUT ANY WARRANTY; without even the implied
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* Handle ELF .{pre_init,init,fini}_array sections. */
-#include <sys/types.h>
-
-#ifdef HAVE_INITFINI_ARRAY
-
-/* These magic symbols are provided by the linker. */
-extern void (*__preinit_array_start []) (void) __attribute__((weak));
-extern void (*__preinit_array_end []) (void) __attribute__((weak));
-extern void (*__init_array_start []) (void) __attribute__((weak));
-extern void (*__init_array_end []) (void) __attribute__((weak));
-extern void (*__fini_array_start []) (void) __attribute__((weak));
-extern void (*__fini_array_end []) (void) __attribute__((weak));
-
-extern void _init (void);
-extern void _fini (void);
-
-/* Iterate over all the init routines. */
-void
-__libc_init_array (void)
-{
- size_t count;
- size_t i;
-
- count = __preinit_array_end - __preinit_array_start;
- for (i = 0; i < count; i++)
- __preinit_array_start[i] ();
-
- _init ();
-
- count = __init_array_end - __init_array_start;
- for (i = 0; i < count; i++)
- __init_array_start[i] ();
-}
-
-/* Run all the cleanup routines. */
-void
-__libc_fini_array (void)
-{
- size_t count;
- size_t i;
-
- count = __fini_array_end - __fini_array_start;
- for (i = 0; i < count; i++)
- __fini_array_start[i] ();
-
- _fini ();
-}
-#endif
diff --git a/newlib/libc/misc/unctrl.c b/newlib/libc/misc/unctrl.c
index fa0b90ff1..710bf16bd 100644
--- a/newlib/libc/misc/unctrl.c
+++ b/newlib/libc/misc/unctrl.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<unctrl>>---get printable representation of a character
+ <<unctrl>>---translate characters to upper case
INDEX
unctrl
diff --git a/newlib/libc/posix/scandir.c b/newlib/libc/posix/scandir.c
index 2cd586050..97094a676 100644
--- a/newlib/libc/posix/scandir.c
+++ b/newlib/libc/posix/scandir.c
@@ -74,8 +74,8 @@ int
_DEFUN(scandir, (dirname, namelist, select, dcomp),
const char *dirname _AND
struct dirent ***namelist _AND
- int (*select) __P((const struct dirent *)) _AND
- int (*dcomp) __P((const struct dirent **, const struct dirent **)))
+ int (*select) __P((struct dirent *)) _AND
+ int (*dcomp) __P((const void *, const void *)))
{
register struct dirent *d, *p, **names;
register size_t nitems;
@@ -155,7 +155,7 @@ _DEFUN(scandir, (dirname, namelist, select, dcomp),
}
closedir(dirp);
if (nitems && dcomp != NULL)
- qsort(names, nitems, sizeof(struct dirent *), (void *)dcomp);
+ qsort(names, nitems, sizeof(struct dirent *), dcomp);
*namelist = names;
#ifdef HAVE_DD_LOCK
__lock_release_recursive(dirp->dd_lock);
diff --git a/newlib/libc/reent/reent.tex b/newlib/libc/reent/reent.tex
index 881c572c6..e76330b32 100644
--- a/newlib/libc/reent/reent.tex
+++ b/newlib/libc/reent/reent.tex
@@ -4,8 +4,8 @@
@cindex reentrancy
Reentrancy is a characteristic of library functions which allows multiple
processes to use the same address space with assurance that the values stored
-in those spaces will remain constant between calls. The Red Hat
-newlib implementation of the library functions ensures that
+in those spaces will remain constant between calls. Cygnus's implementation
+of the library functions ensures that
whenever possible, these library functions are reentrant. However,
there are some functions that can not be trivially made reentrant.
Hooks have been provided to allow you to use these functions in a fully
diff --git a/newlib/libc/signal/signal.c b/newlib/libc/signal/signal.c
index bfb85e66a..20e919e74 100644
--- a/newlib/libc/signal/signal.c
+++ b/newlib/libc/signal/signal.c
@@ -6,12 +6,21 @@ INDEX
signal
INDEX
_signal_r
+INDEX
+ raise
+INDEX
+ _raise_r
ANSI_SYNOPSIS
#include <signal.h>
- void (*signal(int <[sig]>, void(*<[func]>)(int))) (int);
+ void ( * signal(int <[sig]>, void(*<[func]>)(int)) )(int);
+
+ void ( * _signal_r(void *<[reent]>,
+ int <[sig]>, void(*<[func]>)(int)) )(int);
- void (*_signal_r(void *<[reent]>, int <[sig]>, void(*<[func]>)(int))) (int);
+ int raise (int <[sig]>);
+
+ int _raise_r (void *<[reent]>, int <[sig]>);
TRAD_SYNOPSIS
#include <signal.h>
@@ -24,8 +33,15 @@ TRAD_SYNOPSIS
int <[sig]>;
char ( * <[func]> )();
+ int raise (<[sig]>)()
+ int <[sig]>;
+
+ int _raise_r (<[reent]>, <[sig]>)()
+ char *<[reent]>;
+ int <[sig]>;
+
DESCRIPTION
-<<signal>> provides a simple signal-handling implementation for embedded
+<<signal, raise>> provide a simple signal/raise implementation for embedded
targets.
<<signal>> allows you to request changed treatment for a particular
@@ -36,7 +52,7 @@ that identifies a subroutine in your program as the handler for this signal.
Some of the execution environment for signal handlers is
unpredictable; notably, the only library function required to work
-correctly from within a signal handler is <<signal>> itself, and
+correctly from within a signal handler is @code{signal} itself, and
only when used to redefine the handler for the current signal value.
Static storage is likewise unreliable for signal handlers, with one
@@ -50,9 +66,13 @@ where it was when the signal was raised (whether by your program
itself, or by an external event). Signal handlers can also
use functions such as <<exit>> and <<abort>> to avoid returning.
-The alternate function <<_signal_r>> is the reentrant version.
+<<raise>> sends the signal sig to the executing program. It returns zero if
+successful, non-zero if unsuccessful.
+
+The alternate functions <<_signal_r, _raise_r>> are the reentrant versions.
The extra argument <[reent]> is a pointer to a reentrancy structure.
+
@c FIXME: do we have setjmp.h and assoc fns?
RETURNS
@@ -63,7 +83,7 @@ Otherwise, the result is the previous handler (a function pointer or
one of the predefined macros).
PORTABILITY
-ANSI C requires <<signal>>.
+ANSI C requires <<raise>>, <<signal>>.
No supporting OS subroutines are required to link with <<signal>>, but
it will not have any useful effects, except for software generated signals,
diff --git a/newlib/libc/stdio/Makefile.am b/newlib/libc/stdio/Makefile.am
index 1ae643f4d..37911efb9 100644
--- a/newlib/libc/stdio/Makefile.am
+++ b/newlib/libc/stdio/Makefile.am
@@ -6,7 +6,6 @@ INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
GENERAL_SOURCES = \
clearerr.c \
- dprintf.c \
fclose.c \
fdopen.c \
feof.c \
@@ -26,7 +25,6 @@ GENERAL_SOURCES = \
fread.c \
freopen.c \
fscanf.c \
- fiscanf.c \
fseek.c \
fsetpos.c \
ftell.c \
@@ -41,7 +39,6 @@ GENERAL_SOURCES = \
getline.c \
gets.c \
iprintf.c \
- iscanf.c \
makebuf.c \
perror.c \
printf.c \
@@ -56,14 +53,11 @@ GENERAL_SOURCES = \
rewind.c \
rget.c \
scanf.c \
- sccl.c \
setbuf.c \
setbuffer.c \
setlinebuf.c \
setvbuf.c \
siprintf.c \
- siscanf.c \
- sniprintf.c \
snprintf.c \
sprintf.c \
sscanf.c \
@@ -71,15 +65,10 @@ GENERAL_SOURCES = \
tmpfile.c \
tmpnam.c \
ungetc.c \
- vdprintf.c \
- viprintf.c \
- viscanf.c \
+ vfscanf.c \
vprintf.c \
vscanf.c \
- vsiprintf.c \
- vsiscanf.c \
vsnprintf.c \
- vsniprintf.c \
vsprintf.c \
vsscanf.c \
wbuf.c \
@@ -90,7 +79,6 @@ if ELIX_LEVEL_1
LIB_OBJS =
else
LIB_OBJS = \
- asiprintf.$(oext) \
asprintf.$(oext) \
fcloseall.$(oext) \
fseeko.$(oext) \
@@ -98,11 +86,10 @@ LIB_OBJS = \
getw.$(oext) \
mktemp.$(oext) \
putw.$(oext) \
- vasiprintf.$(oext) \
vasprintf.$(oext)
endif
-LIBADD_OBJS = vfiprintf.$(oext) vfprintf.$(oext) vfscanf.$(oext) vfiscanf.$(oext)
+LIBADD_OBJS = vfiprintf.$(oext) vfprintf.$(oext)
libstdio_la_LDFLAGS = -Xcompiler -nostdlib
@@ -133,15 +120,8 @@ vfprintf.$(oext): vfprintf.c
vfiprintf.$(oext): vfprintf.c
$(LIB_COMPILE) -fshort-enums -DINTEGER_ONLY -c $(srcdir)/vfprintf.c -o $@
-vfscanf.$(oext): vfscanf.c
- $(LIB_COMPILE) -c $(srcdir)/vfscanf.c
-
-vfiscanf.$(oext): vfscanf.c
- $(LIB_COMPILE) -DINTEGER_ONLY -c $(srcdir)/vfscanf.c -o $@
-
CHEWOUT_FILES = \
clearerr.def \
- dprintf.def \
fclose.def \
fcloseall.def \
fdopen.def \
@@ -170,6 +150,7 @@ CHEWOUT_FILES = \
getline.def \
gets.def \
getw.def \
+ iprintf.def \
mktemp.def \
perror.def \
putc.def \
@@ -186,15 +167,12 @@ CHEWOUT_FILES = \
setlinebuf.def \
setvbuf.def \
siprintf.def \
- siscanf.def \
sprintf.def \
sscanf.def \
tmpfile.def \
tmpnam.def \
vfprintf.def \
- vfscanf.def \
- viprintf.def \
- viscanf.def
+ vfscanf.def
SUFFIXES = .def
@@ -224,7 +202,6 @@ ftell.$(oext): local.h
fvwrite.$(oext): local.h fvwrite.h
fwalk.$(oext): local.h
fwrite.$(oext): local.h fvwrite.h
-iscanf.$(oext): local.h
makebuf.$(oext): local.h
puts.$(oext): fvwrite.h
refill.$(oext): local.h
@@ -232,20 +209,14 @@ scanf.$(oext): local.h
setbuf.$(oext): local.h
setvbuf.$(oext): local.h
siprintf.$(oext): local.h
-sniprintf.$(oext): local.h
sprintf.$(oext): local.h
-siscanf.$(oext): local.h
sscanf.$(oext): local.h
stdio.$(oext): local.h
ungetc.$(oext): local.h
vfiprintf.$(oext): local.h
vfprintf.$(oext): local.h
-vfiscanf.$(oext): local.h floatio.h
vfscanf.$(oext): local.h floatio.h
-viscanf.$(oext): local.h
vscanf.$(oext): local.h
-vsniprintf.$(oext): local.h
-vsiscanf.$(oext): local.h
vsscanf.$(oext): local.h
wbuf.$(oext): local.h fvwrite.h
wsetup.$(oext): local.h
diff --git a/newlib/libc/stdio/Makefile.in b/newlib/libc/stdio/Makefile.in
index 49827e332..c876b93a9 100644
--- a/newlib/libc/stdio/Makefile.in
+++ b/newlib/libc/stdio/Makefile.in
@@ -110,12 +110,12 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-GENERAL_SOURCES = clearerr.c dprintf.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 fiscanf.c fseek.c fsetpos.c ftell.c fvwrite.c fwalk.c fwrite.c getc.c getchar.c getc_u.c getchar_u.c getdelim.c getline.c gets.c iprintf.c iscanf.c makebuf.c perror.c printf.c putc.c putchar.c putc_u.c putchar_u.c puts.c refill.c remove.c rename.c rewind.c rget.c scanf.c sccl.c setbuf.c setbuffer.c setlinebuf.c setvbuf.c siprintf.c siscanf.c sniprintf.c snprintf.c sprintf.c sscanf.c stdio.c tmpfile.c tmpnam.c ungetc.c vdprintf.c viprintf.c viscanf.c vprintf.c vscanf.c vsiprintf.c vsiscanf.c vsnprintf.c vsniprintf.c vsprintf.c vsscanf.c wbuf.c wsetup.c
+GENERAL_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 getc_u.c getchar_u.c getdelim.c getline.c gets.c iprintf.c makebuf.c perror.c printf.c putc.c putchar.c putc_u.c putchar_u.c puts.c refill.c remove.c rename.c rewind.c rget.c scanf.c setbuf.c setbuffer.c setlinebuf.c setvbuf.c siprintf.c snprintf.c sprintf.c sscanf.c stdio.c tmpfile.c tmpnam.c ungetc.c vfscanf.c vprintf.c vscanf.c vsnprintf.c vsprintf.c vsscanf.c wbuf.c wsetup.c
@ELIX_LEVEL_1_TRUE@LIB_OBJS =
-@ELIX_LEVEL_1_FALSE@LIB_OBJS = asiprintf.$(oext) asprintf.$(oext) fcloseall.$(oext) fseeko.$(oext) ftello.$(oext) getw.$(oext) mktemp.$(oext) putw.$(oext) vasiprintf.$(oext) vasprintf.$(oext)
+@ELIX_LEVEL_1_FALSE@LIB_OBJS = asprintf.$(oext) fcloseall.$(oext) fseeko.$(oext) ftello.$(oext) getw.$(oext) mktemp.$(oext) putw.$(oext) vasprintf.$(oext)
-LIBADD_OBJS = vfiprintf.$(oext) vfprintf.$(oext) vfscanf.$(oext) vfiscanf.$(oext)
+LIBADD_OBJS = vfiprintf.$(oext) vfprintf.$(oext)
libstdio_la_LDFLAGS = -Xcompiler -nostdlib
@@ -132,7 +132,7 @@ libstdio_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_FALSE@lib_a_LIBADD = $(LIBADD_OBJS) $(LIB_OBJS)
@USE_LIBTOOL_FALSE@lib_a_DEPENDENCIES = $(LIBADD_OBJS) $(LIB_OBJS)
-CHEWOUT_FILES = clearerr.def dprintf.def fclose.def fcloseall.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 getc_u.def getchar_u.def getdelim.def getline.def gets.def getw.def mktemp.def perror.def putc.def putchar.def putc_u.def putchar_u.def puts.def putw.def remove.def rename.def rewind.def setbuf.def setbuffer.def setlinebuf.def setvbuf.def siprintf.def siscanf.def sprintf.def sscanf.def tmpfile.def tmpnam.def vfprintf.def vfscanf.def viprintf.def viscanf.def
+CHEWOUT_FILES = clearerr.def fclose.def fcloseall.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 getc_u.def getchar_u.def getdelim.def getline.def gets.def getw.def iprintf.def mktemp.def perror.def putc.def putchar.def putc_u.def putchar_u.def puts.def putw.def remove.def rename.def rewind.def setbuf.def setbuffer.def setlinebuf.def setvbuf.def siprintf.def sprintf.def sscanf.def tmpfile.def tmpnam.def vfprintf.def vfscanf.def
SUFFIXES = .def
@@ -150,56 +150,48 @@ LIBRARIES = $(noinst_LIBRARIES)
DEFS = @DEFS@ -I. -I$(srcdir)
CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
-@USE_LIBTOOL_FALSE@lib_a_OBJECTS = clearerr.$(OBJEXT) dprintf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fclose.$(OBJEXT) fdopen.$(OBJEXT) feof.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@ferror.$(OBJEXT) fflush.$(OBJEXT) fgetc.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fgetpos.$(OBJEXT) fgets.$(OBJEXT) fileno.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@findfp.$(OBJEXT) fiprintf.$(OBJEXT) flags.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fopen.$(OBJEXT) fprintf.$(OBJEXT) fputc.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fputs.$(OBJEXT) fread.$(OBJEXT) freopen.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fscanf.$(OBJEXT) fiscanf.$(OBJEXT) fseek.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fsetpos.$(OBJEXT) ftell.$(OBJEXT) fvwrite.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@fwalk.$(OBJEXT) fwrite.$(OBJEXT) getc.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@getchar.$(OBJEXT) getc_u.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@lib_a_OBJECTS = clearerr.$(OBJEXT) fclose.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fdopen.$(OBJEXT) feof.$(OBJEXT) ferror.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fflush.$(OBJEXT) fgetc.$(OBJEXT) fgetpos.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fgets.$(OBJEXT) fileno.$(OBJEXT) findfp.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fiprintf.$(OBJEXT) flags.$(OBJEXT) fopen.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fprintf.$(OBJEXT) fputc.$(OBJEXT) fputs.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fread.$(OBJEXT) freopen.$(OBJEXT) fscanf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fseek.$(OBJEXT) fsetpos.$(OBJEXT) ftell.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@fvwrite.$(OBJEXT) fwalk.$(OBJEXT) fwrite.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@getc.$(OBJEXT) getchar.$(OBJEXT) getc_u.$(OBJEXT) \
@USE_LIBTOOL_FALSE@getchar_u.$(OBJEXT) getdelim.$(OBJEXT) \
@USE_LIBTOOL_FALSE@getline.$(OBJEXT) gets.$(OBJEXT) iprintf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@iscanf.$(OBJEXT) makebuf.$(OBJEXT) perror.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@printf.$(OBJEXT) putc.$(OBJEXT) putchar.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@putc_u.$(OBJEXT) putchar_u.$(OBJEXT) puts.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@refill.$(OBJEXT) remove.$(OBJEXT) rename.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@rewind.$(OBJEXT) rget.$(OBJEXT) scanf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sccl.$(OBJEXT) setbuf.$(OBJEXT) setbuffer.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@setlinebuf.$(OBJEXT) setvbuf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@siprintf.$(OBJEXT) siscanf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sniprintf.$(OBJEXT) snprintf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sprintf.$(OBJEXT) sscanf.$(OBJEXT) stdio.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@tmpfile.$(OBJEXT) tmpnam.$(OBJEXT) ungetc.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@vdprintf.$(OBJEXT) viprintf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@viscanf.$(OBJEXT) vprintf.$(OBJEXT) vscanf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@vsiprintf.$(OBJEXT) vsiscanf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@vsnprintf.$(OBJEXT) vsniprintf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@vsprintf.$(OBJEXT) vsscanf.$(OBJEXT) wbuf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@wsetup.$(OBJEXT)
+@USE_LIBTOOL_FALSE@makebuf.$(OBJEXT) perror.$(OBJEXT) printf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@putc.$(OBJEXT) putchar.$(OBJEXT) putc_u.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@putchar_u.$(OBJEXT) puts.$(OBJEXT) refill.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@remove.$(OBJEXT) rename.$(OBJEXT) rewind.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@rget.$(OBJEXT) scanf.$(OBJEXT) setbuf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@setbuffer.$(OBJEXT) setlinebuf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@setvbuf.$(OBJEXT) siprintf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@snprintf.$(OBJEXT) sprintf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sscanf.$(OBJEXT) stdio.$(OBJEXT) tmpfile.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@tmpnam.$(OBJEXT) ungetc.$(OBJEXT) vfscanf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@vprintf.$(OBJEXT) vscanf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@vsnprintf.$(OBJEXT) vsprintf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@vsscanf.$(OBJEXT) wbuf.$(OBJEXT) wsetup.$(OBJEXT)
LTLIBRARIES = $(noinst_LTLIBRARIES)
-@USE_LIBTOOL_TRUE@libstdio_la_OBJECTS = clearerr.lo dprintf.lo \
-@USE_LIBTOOL_TRUE@fclose.lo fdopen.lo feof.lo ferror.lo fflush.lo \
-@USE_LIBTOOL_TRUE@fgetc.lo fgetpos.lo fgets.lo fileno.lo findfp.lo \
-@USE_LIBTOOL_TRUE@fiprintf.lo flags.lo fopen.lo fprintf.lo fputc.lo \
-@USE_LIBTOOL_TRUE@fputs.lo fread.lo freopen.lo fscanf.lo fiscanf.lo \
-@USE_LIBTOOL_TRUE@fseek.lo fsetpos.lo ftell.lo fvwrite.lo fwalk.lo \
-@USE_LIBTOOL_TRUE@fwrite.lo getc.lo getchar.lo getc_u.lo getchar_u.lo \
-@USE_LIBTOOL_TRUE@getdelim.lo getline.lo gets.lo iprintf.lo iscanf.lo \
-@USE_LIBTOOL_TRUE@makebuf.lo perror.lo printf.lo putc.lo putchar.lo \
-@USE_LIBTOOL_TRUE@putc_u.lo putchar_u.lo puts.lo refill.lo remove.lo \
-@USE_LIBTOOL_TRUE@rename.lo rewind.lo rget.lo scanf.lo sccl.lo \
+@USE_LIBTOOL_TRUE@libstdio_la_OBJECTS = clearerr.lo fclose.lo fdopen.lo \
+@USE_LIBTOOL_TRUE@feof.lo ferror.lo fflush.lo fgetc.lo fgetpos.lo \
+@USE_LIBTOOL_TRUE@fgets.lo fileno.lo findfp.lo fiprintf.lo flags.lo \
+@USE_LIBTOOL_TRUE@fopen.lo fprintf.lo fputc.lo fputs.lo fread.lo \
+@USE_LIBTOOL_TRUE@freopen.lo fscanf.lo fseek.lo fsetpos.lo ftell.lo \
+@USE_LIBTOOL_TRUE@fvwrite.lo fwalk.lo fwrite.lo getc.lo getchar.lo \
+@USE_LIBTOOL_TRUE@getc_u.lo getchar_u.lo getdelim.lo getline.lo gets.lo \
+@USE_LIBTOOL_TRUE@iprintf.lo makebuf.lo perror.lo printf.lo putc.lo \
+@USE_LIBTOOL_TRUE@putchar.lo putc_u.lo putchar_u.lo puts.lo refill.lo \
+@USE_LIBTOOL_TRUE@remove.lo rename.lo rewind.lo rget.lo scanf.lo \
@USE_LIBTOOL_TRUE@setbuf.lo setbuffer.lo setlinebuf.lo setvbuf.lo \
-@USE_LIBTOOL_TRUE@siprintf.lo siscanf.lo sniprintf.lo snprintf.lo \
-@USE_LIBTOOL_TRUE@sprintf.lo sscanf.lo stdio.lo tmpfile.lo tmpnam.lo \
-@USE_LIBTOOL_TRUE@ungetc.lo vdprintf.lo viprintf.lo viscanf.lo \
-@USE_LIBTOOL_TRUE@vprintf.lo vscanf.lo vsiprintf.lo vsiscanf.lo \
-@USE_LIBTOOL_TRUE@vsnprintf.lo vsniprintf.lo vsprintf.lo vsscanf.lo \
-@USE_LIBTOOL_TRUE@wbuf.lo wsetup.lo
+@USE_LIBTOOL_TRUE@siprintf.lo snprintf.lo sprintf.lo sscanf.lo stdio.lo \
+@USE_LIBTOOL_TRUE@tmpfile.lo tmpnam.lo ungetc.lo vfscanf.lo vprintf.lo \
+@USE_LIBTOOL_TRUE@vscanf.lo vsnprintf.lo vsprintf.lo vsscanf.lo wbuf.lo \
+@USE_LIBTOOL_TRUE@wsetup.lo
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -440,12 +432,6 @@ vfprintf.$(oext): vfprintf.c
vfiprintf.$(oext): vfprintf.c
$(LIB_COMPILE) -fshort-enums -DINTEGER_ONLY -c $(srcdir)/vfprintf.c -o $@
-vfscanf.$(oext): vfscanf.c
- $(LIB_COMPILE) -c $(srcdir)/vfscanf.c
-
-vfiscanf.$(oext): vfscanf.c
- $(LIB_COMPILE) -DINTEGER_ONLY -c $(srcdir)/vfscanf.c -o $@
-
.c.def:
$(CHEW) < $< > $*.def 2> $*.ref
touch stmp-def
@@ -466,7 +452,6 @@ ftell.$(oext): local.h
fvwrite.$(oext): local.h fvwrite.h
fwalk.$(oext): local.h
fwrite.$(oext): local.h fvwrite.h
-iscanf.$(oext): local.h
makebuf.$(oext): local.h
puts.$(oext): fvwrite.h
refill.$(oext): local.h
@@ -474,20 +459,14 @@ scanf.$(oext): local.h
setbuf.$(oext): local.h
setvbuf.$(oext): local.h
siprintf.$(oext): local.h
-sniprintf.$(oext): local.h
sprintf.$(oext): local.h
-siscanf.$(oext): local.h
sscanf.$(oext): local.h
stdio.$(oext): local.h
ungetc.$(oext): local.h
vfiprintf.$(oext): local.h
vfprintf.$(oext): local.h
-vfiscanf.$(oext): local.h floatio.h
vfscanf.$(oext): local.h floatio.h
-viscanf.$(oext): local.h
vscanf.$(oext): local.h
-vsniprintf.$(oext): local.h
-vsiscanf.$(oext): local.h
vsscanf.$(oext): local.h
wbuf.$(oext): local.h fvwrite.h
wsetup.$(oext): local.h
diff --git a/newlib/libc/stdio/asiprintf.c b/newlib/libc/stdio/asiprintf.c
deleted file mode 100644
index e8e10bf38..000000000
--- a/newlib/libc/stdio/asiprintf.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-/* This code was copied from asprintf.c */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <limits.h>
-#include "local.h"
-
-int
-#ifdef _HAVE_STDC
-_DEFUN(_asiprintf_r, (ptr, strp, fmt),
- struct _reent *ptr _AND
- char **strp _AND
- _CONST char *fmt _DOTS)
-#else
-_asiprintf_r(ptr, strp, fmt, va_alist)
- struct _reent *ptr;
- char **strp;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- /* mark a zero-length reallocatable buffer */
- f._flags = __SWR | __SSTR | __SMBF;
- f._bf._base = f._p = NULL;
- f._bf._size = f._w = 0;
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = vfiprintf (&f, fmt, ap);
- va_end (ap);
- *f._p = 0;
- *strp = f._bf._base;
- return (ret);
-}
-
-#ifndef _REENT_ONLY
-
-int
-#ifdef _HAVE_STDC
-_DEFUN(asiprintf, (strp, fmt),
- char **strp _AND
- _CONST char *fmt _DOTS)
-#else
-asiprintf(strp, fmt, va_alist)
- char **strp;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- /* mark a zero-length reallocatable buffer */
- f._flags = __SWR | __SSTR | __SMBF;
- f._bf._base = f._p = NULL;
- f._bf._size = f._w = 0;
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = vfiprintf (&f, fmt, ap);
- va_end (ap);
- *f._p = 0;
- *strp = f._bf._base;
- return (ret);
-}
-
-#endif
diff --git a/newlib/libc/stdio/clearerr.c b/newlib/libc/stdio/clearerr.c
index 0923ff84d..e242ff5e1 100644
--- a/newlib/libc/stdio/clearerr.c
+++ b/newlib/libc/stdio/clearerr.c
@@ -54,17 +54,12 @@ No supporting OS subroutines are required.
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
-
-/* A subroutine version of the macro clearerr. */
-
#undef clearerr
_VOID
_DEFUN(clearerr, (fp),
FILE * fp)
{
- CHECK_INIT(_REENT);
_flockfile (fp);
__sclearerr (fp);
_funlockfile (fp);
diff --git a/newlib/libc/stdio/dprintf.c b/newlib/libc/stdio/dprintf.c
deleted file mode 100644
index 6ebf12e8d..000000000
--- a/newlib/libc/stdio/dprintf.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* Copyright 2005 Shaun Jackman
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-/*
-FUNCTION
-<<dprintf>>, <<vdprintf>>---print to a file descriptor
-
-INDEX
- dprintf
-INDEX
- vdprintf
-
-ANSI_SYNOPSIS
- #include <stdio.h>
- #include <stdarg.h>
- int dprintf(int <[fd]>, const char *<[format]>, ...);
- int vdprintf(int <[fd]>, const char *<[format]>, va_list <[ap]>);
- int _dprintf_r(struct _reent *<[ptr]>, int <[fd]>,
- const char *<[format]>, ...);
- int _vdprintf_r(struct _reent *<[ptr]>, int <[fd]>,
- const char *<[format]>, va_list <[ap]>);
-
-TRAD_SYNOPSIS
- #include <stdio.h>
- #include <varargs.h>
-
- int dprintf(<[fd]>, <[format]> [, <[arg]>, ...])
- int <[fd]>;
- char *<[format]>;
-
- int vdprintf(<[fd]>, <[fmt]>, <[list]>)
- int <[fd]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _dprintf_r(<[ptr]>, <[fd]>, <[format]> [, <[arg]>, ...])
- struct _reent *<[ptr]>;
- int <[fd]>;
- char *<[format]>;
-
- int _vdprintf_r(<[ptr]>, <[fd]>, <[fmt]>, <[list]>)
- struct _reent *<[ptr]>;
- int <[fd]>;
- char *<[fmt]>;
- va_list <[list]>;
-
-DESCRIPTION
-<<dprintf>> and <<vdprintf>> allow printing a format, similarly to
-<<printf>>, but write to a file descriptor instead of to a <<FILE>>
-stream.
-
-The functions <<_dprintf_r>> and <<_vdprintf_r>> are simply
-reentrant versions of the functions above.
-
-RETURNS
-The return value and errors are exactly as for <<write>>, except that
-<<errno>> may also be set to <<ENOMEM>> if the heap is exhausted.
-
-PORTABILITY
-This function is originally a GNU extension in glibc and is not portable.
-
-Supporting OS subroutines required: <<sbrk>>, <<write>>.
-*/
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <unistd.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-
-#ifdef _HAVE_STDC
-int
-_dprintf_r(struct _reent *ptr, int fd, _CONST char *format, ...)
-#else
-int
-_dprintf_r(ptr, fd, format, va_alist)
- struct _reent *ptr;
- int fd;
- char *format;
- va_dcl
-#endif
-{
- va_list ap;
- int n;
- _REENT_SMALL_CHECK_INIT (ptr);
-#ifdef _HAVE_STDC
- va_start (ap, format);
-#else
- va_start (ap);
-#endif
- n = _vdprintf_r (ptr, fd, format, ap);
- va_end (ap);
- return n;
-}
-
-#ifndef _REENT_ONLY
-
-#ifdef _HAVE_STDC
-int
-dprintf(int fd, _CONST char *format, ...)
-#else
-int
-dprintf(fd, format, va_alist)
- struct _reent *ptr;
- int fd;
- char *format;
- va_dcl
-#endif
-{
- va_list ap;
- int n;
- _REENT_SMALL_CHECK_INIT (_REENT);
-#ifdef _HAVE_STDC
- va_start (ap, format);
-#else
- va_start (ap);
-#endif
- n = _vdprintf_r (_REENT, fd, format, ap);
- va_end (ap);
- return n;
-}
-
-#endif /* ! _REENT_ONLY */
diff --git a/newlib/libc/stdio/fclose.c b/newlib/libc/stdio/fclose.c
index 66d71c2d4..f9fd17cb0 100644
--- a/newlib/libc/stdio/fclose.c
+++ b/newlib/libc/stdio/fclose.c
@@ -76,10 +76,10 @@ _DEFUN(_fclose_r, (rptr, fp),
__sfp_lock_acquire ();
- CHECK_INIT (rptr);
-
_flockfile (fp);
+ CHECK_INIT (fp);
+
if (fp->_flags == 0) /* not open! */
{
_funlockfile (fp);
diff --git a/newlib/libc/stdio/feof.c b/newlib/libc/stdio/feof.c
index aff4e84c8..5372f2f37 100644
--- a/newlib/libc/stdio/feof.c
+++ b/newlib/libc/stdio/feof.c
@@ -46,9 +46,6 @@ No supporting OS subroutines are required.
*/
#include <stdio.h>
-#include "local.h"
-
-/* A subroutine version of the macro feof. */
#undef feof
@@ -57,7 +54,6 @@ _DEFUN(feof, (fp),
FILE * fp)
{
int result;
- CHECK_INIT(_REENT);
_flockfile (fp);
result = __sfeof (fp);
_funlockfile (fp);
diff --git a/newlib/libc/stdio/ferror.c b/newlib/libc/stdio/ferror.c
index ea701bec7..6f665d4c8 100644
--- a/newlib/libc/stdio/ferror.c
+++ b/newlib/libc/stdio/ferror.c
@@ -55,7 +55,6 @@ static char sccsid[] = "%W% (Berkeley) %G%";
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
/* A subroutine version of the macro ferror. */
@@ -66,7 +65,6 @@ _DEFUN(ferror, (fp),
FILE * fp)
{
int result;
- CHECK_INIT(_REENT);
_flockfile (fp);
result = __sferror (fp);
_funlockfile (fp);
diff --git a/newlib/libc/stdio/fflush.c b/newlib/libc/stdio/fflush.c
index 05084dde0..0b157d0ce 100644
--- a/newlib/libc/stdio/fflush.c
+++ b/newlib/libc/stdio/fflush.c
@@ -67,23 +67,13 @@ _DEFUN(fflush, (fp),
if (fp == NULL)
return _fwalk (_GLOBAL_REENT, fflush);
- CHECK_INIT (_REENT);
-
_flockfile (fp);
+ CHECK_INIT (fp);
+
t = fp->_flags;
- if ((t & __SWR) == 0)
- {
- /* For a read stream, an fflush causes the next seek to be
- unoptimized (i.e. forces a system-level seek). This conforms
- to the POSIX and SUSv3 standards. */
- fp->_flags |= __SNPT;
- _funlockfile (fp);
- return 0;
- }
- if ((p = fp->_bf._base) == NULL)
+ if ((t & __SWR) == 0 || (p = fp->_bf._base) == NULL)
{
- /* Nothing to flush. */
_funlockfile (fp);
return 0;
}
diff --git a/newlib/libc/stdio/fgetc.c b/newlib/libc/stdio/fgetc.c
index 020b2da3a..5d5ad9a00 100644
--- a/newlib/libc/stdio/fgetc.c
+++ b/newlib/libc/stdio/fgetc.c
@@ -55,14 +55,12 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
int
_DEFUN(fgetc, (fp),
FILE * fp)
{
int result;
- CHECK_INIT(_REENT);
_flockfile (fp);
result = __sgetc (fp);
_funlockfile (fp);
diff --git a/newlib/libc/stdio/fgetpos.c b/newlib/libc/stdio/fgetpos.c
index 21a63789d..a89d88f03 100644
--- a/newlib/libc/stdio/fgetpos.c
+++ b/newlib/libc/stdio/fgetpos.c
@@ -81,12 +81,15 @@ _DEFUN(_fgetpos_r, (ptr, fp, pos),
FILE * fp _AND
_fpos_t * pos)
{
+ _flockfile (fp);
*pos = _ftell_r (ptr, fp);
if (*pos != -1)
{
+ _funlockfile (fp);
return 0;
}
+ _funlockfile (fp);
return 1;
}
diff --git a/newlib/libc/stdio/fgets.c b/newlib/libc/stdio/fgets.c
index f5dde4903..8c5147ac9 100644
--- a/newlib/libc/stdio/fgets.c
+++ b/newlib/libc/stdio/fgets.c
@@ -80,8 +80,6 @@ _DEFUN(fgets, (buf, n, fp),
s = buf;
- CHECK_INIT(_REENT);
-
_flockfile (fp);
#ifdef __SCLE
if (fp->_flags & __SCLE)
diff --git a/newlib/libc/stdio/fileno.c b/newlib/libc/stdio/fileno.c
index b202cc5e3..57d091274 100644
--- a/newlib/libc/stdio/fileno.c
+++ b/newlib/libc/stdio/fileno.c
@@ -54,8 +54,8 @@ _DEFUN(fileno, (f),
FILE * f)
{
int result;
- CHECK_INIT (_REENT);
_flockfile (f);
+ CHECK_INIT (f);
result = __sfileno (f);
_funlockfile (f);
return result;
diff --git a/newlib/libc/stdio/findfp.c b/newlib/libc/stdio/findfp.c
index e3270af38..a9695ffff 100644
--- a/newlib/libc/stdio/findfp.c
+++ b/newlib/libc/stdio/findfp.c
@@ -163,14 +163,6 @@ _VOID
_DEFUN(__sinit, (s),
struct _reent *s)
{
- __sinit_lock_acquire ();
-
- if (s->__sdidinit)
- {
- __sinit_lock_release ();
- return;
- }
-
/* make sure we clean up on exit */
s->__cleanup = _cleanup_r; /* conservative */
s->__sdidinit = 1;
@@ -200,13 +192,11 @@ _DEFUN(__sinit, (s),
std (s->_stderr, __SWR | __SNBF, 2, s);
- __sinit_lock_release ();
}
#ifndef __SINGLE_THREAD__
__LOCK_INIT_RECURSIVE(static, __sfp_lock);
-__LOCK_INIT_RECURSIVE(static, __sinit_lock);
_VOID
_DEFUN_VOID(__sfp_lock_acquire)
@@ -220,18 +210,6 @@ _DEFUN_VOID(__sfp_lock_release)
__lock_release_recursive (__sfp_lock);
}
-_VOID
-_DEFUN_VOID(__sinit_lock_acquire)
-{
- __lock_acquire_recursive (__sinit_lock);
-}
-
-_VOID
-_DEFUN_VOID(__sinit_lock_release)
-{
- __lock_release_recursive (__sinit_lock);
-}
-
/* Walkable file locking routine. */
static int
_DEFUN(__fp_lock, (ptr),
diff --git a/newlib/libc/stdio/fiprintf.c b/newlib/libc/stdio/fiprintf.c
index 3529e7f19..4bf60948b 100644
--- a/newlib/libc/stdio/fiprintf.c
+++ b/newlib/libc/stdio/fiprintf.c
@@ -15,6 +15,45 @@
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/
+/*
+FUNCTION
+<<fiprintf>>---format output to file (integer only)
+
+INDEX
+ fiprintf
+
+ANSI_SYNOPSIS
+ #include <stdio.h>
+
+ int fiprintf(FILE *<[fd]>, const char *<[format]>, ...);
+
+TRAD_SYNOPSIS
+ #include <stdio.h>
+
+ int fiprintf(<[fd]>, <[format]> [, <[arg]>, ...]);
+ FILE *<[fd]>;
+ char *<[format]>;
+
+DESCRIPTION
+<<fiprintf>> is a restricted version of <<fprintf>>: it has the same
+arguments and behavior, save that it cannot perform any floating-point
+formatting---the <<f>>, <<g>>, <<G>>, <<e>>, and <<F>> type specifiers
+are not recognized.
+
+RETURNS
+ <<fiprintf>> returns the number of bytes in the output string,
+ save that the concluding <<NULL>> is not counted.
+ <<fiprintf>> returns when the end of the format string is
+ encountered. If an error occurs, <<fiprintf>>
+ returns <<EOF>>.
+
+PORTABILITY
+<<fiprintf>> is not required by ANSI C.
+
+Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
+<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
+*/
+
#include <_ansi.h>
#include <stdio.h>
#ifdef _HAVE_STDC
diff --git a/newlib/libc/stdio/fiscanf.c b/newlib/libc/stdio/fiscanf.c
deleted file mode 100644
index 53fee8454..000000000
--- a/newlib/libc/stdio/fiscanf.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-#ifndef _REENT_ONLY
-
-int
-#ifdef _HAVE_STDC
-fiscanf(FILE *fp, _CONST char *fmt, ...)
-#else
-fiscanf(FILE *fp, fmt, va_alist)
- FILE *fp;
- char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
-
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (_REENT, fp, fmt, ap);
- va_end (ap);
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-#ifdef _HAVE_STDC
-_fiscanf_r(struct _reent *ptr, FILE *fp, _CONST char *fmt, ...)
-#else
-_fiscanf_r(ptr, FILE *fp, fmt, va_alist)
- struct _reent *ptr;
- FILE *fp;
- char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
-
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (ptr, fp, fmt, ap);
- va_end (ap);
- return (ret);
-}
-
diff --git a/newlib/libc/stdio/fputc.c b/newlib/libc/stdio/fputc.c
index 422f6753a..026ccfb83 100644
--- a/newlib/libc/stdio/fputc.c
+++ b/newlib/libc/stdio/fputc.c
@@ -59,7 +59,6 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
int
_DEFUN(fputc, (ch, file),
@@ -67,7 +66,6 @@ _DEFUN(fputc, (ch, file),
FILE * file)
{
int result;
- CHECK_INIT(_REENT);
_flockfile (file);
result = putc (ch, file);
_funlockfile (file);
diff --git a/newlib/libc/stdio/fputs.c b/newlib/libc/stdio/fputs.c
index 8d02107df..8d605c0df 100644
--- a/newlib/libc/stdio/fputs.c
+++ b/newlib/libc/stdio/fputs.c
@@ -51,7 +51,6 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <stdio.h>
#include <string.h>
#include "fvwrite.h"
-#include "local.h"
/*
* Write the given string to the given file.
@@ -70,9 +69,6 @@ _DEFUN(fputs, (s, fp),
iov.iov_len = uio.uio_resid = strlen (s);
uio.uio_iov = &iov;
uio.uio_iovcnt = 1;
-
- CHECK_INIT(_REENT);
-
_flockfile (fp);
result = __sfvwrite (fp, &uio);
_funlockfile (fp);
diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c
index 1354c04ba..fa3873075 100644
--- a/newlib/libc/stdio/fread.c
+++ b/newlib/libc/stdio/fread.c
@@ -125,8 +125,6 @@ _DEFUN(fread, (buf, size, count, fp),
if ((resid = count * size) == 0)
return 0;
- CHECK_INIT(_REENT);
-
_flockfile (fp);
if (fp->_r < 0)
fp->_r = 0;
@@ -151,7 +149,7 @@ _DEFUN(fread, (buf, size, count, fp),
FREEUB (fp);
/* Finally read directly into user's buffer if needed. */
- while (resid > 0)
+ if (resid > 0)
{
int rc = 0;
/* save fp buffering state */
@@ -164,20 +162,20 @@ _DEFUN(fread, (buf, size, count, fp),
fp->_p = p;
rc = __srefill (fp);
/* restore fp buffering back to original state */
+ resid -= fp->_r;
+ fp->_r = 0;
fp->_bf._base = old_base;
fp->_bf._size = old_size;
fp->_p = old_p;
- resid -= fp->_r;
- p += fp->_r;
- fp->_r = 0;
if (rc)
{
+ /* no more input: return partial result */
#ifdef __SCLE
- if (fp->_flags & __SCLE)
- {
- _funlockfile (fp);
- return crlf (fp, buf, total-resid, 1) / size;
- }
+ if (fp->_flags & __SCLE)
+ {
+ _funlockfile (fp);
+ return crlf (fp, buf, total-resid, 1) / size;
+ }
#endif
_funlockfile (fp);
return (total - resid) / size;
diff --git a/newlib/libc/stdio/freopen.c b/newlib/libc/stdio/freopen.c
index ae3444b1b..d4a65e77b 100644
--- a/newlib/libc/stdio/freopen.c
+++ b/newlib/libc/stdio/freopen.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1990, 2006 The Regents of the University of California.
+ * Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* Redistribution and use in source and binary forms are permitted
@@ -55,12 +55,6 @@ it).
<[file]> and <[mode]> are used just as in <<fopen>>.
-If <[file]> is <<NULL>>, the underlying stream is modified rather than
-closed. The file cannot be given a more permissive access mode (for
-example, a <[mode]> of "w" will fail on a read-only file descriptor),
-but can change status such as append or binary mode. If modification
-is not possible, failure occurs.
-
RETURNS
If successful, the result is the same as the argument <[fp]>. If the
file cannot be opened as specified, the result is <<NULL>>.
@@ -76,7 +70,6 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <reent.h>
#include <time.h>
#include <stdio.h>
-#include <errno.h>
#include <fcntl.h>
#include <stdlib.h>
#include <sys/lock.h>
@@ -94,15 +87,14 @@ _DEFUN(_freopen_r, (ptr, file, mode, fp),
register FILE *fp)
{
register int f;
- int flags, oflags;
- int e = 0;
+ int flags, oflags, e;
__sfp_lock_acquire ();
- CHECK_INIT (ptr);
-
_flockfile (fp);
+ CHECK_INIT (fp);
+
if ((flags = __sflags (ptr, mode, &oflags)) == 0)
{
_funlockfile (fp);
@@ -125,60 +117,17 @@ _DEFUN(_freopen_r, (ptr, file, mode, fp),
{
if (fp->_flags & __SWR)
_CAST_VOID fflush (fp);
- /*
- * If close is NULL, closing is a no-op, hence pointless.
- * If file is NULL, the file should not be closed.
- */
- if (fp->_close != NULL && file != NULL)
+ /* if close is NULL, closing is a no-op, hence pointless */
+ if (fp->_close != NULL)
_CAST_VOID (*fp->_close) (fp->_cookie);
}
/*
- * Now get a new descriptor to refer to the new file, or reuse the
- * existing file descriptor if file is NULL.
+ * Now get a new descriptor to refer to the new file.
*/
- if (file != NULL)
- {
- f = _open_r (ptr, (char *) file, oflags, 0666);
- e = ptr->_errno;
- }
- else
- {
-#ifdef HAVE_FCNTL
- int oldflags;
- /*
- * Reuse the file descriptor, but only if the new access mode is
- * equal or less permissive than the old. F_SETFL correctly
- * ignores creation flags.
- */
- f = fp->_file;
- if ((oldflags = _fcntl_r (ptr, f, F_GETFL, 0)) == -1
- || ! ((oldflags & O_ACCMODE) == O_RDWR
- || ((oldflags ^ oflags) & O_ACCMODE) == 0)
- || _fcntl_r (ptr, f, F_SETFL, oflags) == -1)
- f = -1;
-#else
- /* We cannot modify without fcntl support. */
- f = -1;
-#endif
-
-#ifdef __SCLE
- /*
- * F_SETFL doesn't change textmode. Don't mess with modes of ttys.
- */
- if (0 <= f && ! isatty (f)
- && setmode (f, flags & (O_BINARY | O_TEXT)) == -1)
- f = -1;
-#endif
-
- if (f < 0)
- {
- e = EBADF;
- if (fp->_close != NULL)
- _CAST_VOID (*fp->_close) (fp->_cookie);
- }
- }
+ f = _open_r (ptr, (char *) file, oflags, 0666);
+ e = ptr->_errno;
/*
* Finish closing fp. Even if the open succeeded above,
diff --git a/newlib/libc/stdio/fseek.c b/newlib/libc/stdio/fseek.c
index 8b189ba17..b3df7f04e 100644
--- a/newlib/libc/stdio/fseek.c
+++ b/newlib/libc/stdio/fseek.c
@@ -129,11 +129,11 @@ _DEFUN(_fseek_r, (ptr, fp, offset, whence),
struct stat st;
int havepos;
- /* Make sure stdio is set up. */
+ _flockfile (fp);
- CHECK_INIT (ptr);
+ /* Make sure stdio is set up. */
- _flockfile (fp);
+ CHECK_INIT (fp);
/* If we've been doing some writing, and we're in append mode
then we don't really know where the filepos is. */
@@ -359,13 +359,6 @@ dumb:
fp->_r = 0;
/* fp->_w = 0; *//* unnecessary (I think...) */
fp->_flags &= ~__SEOF;
- /* Reset no-optimization flag after successful seek. The
- no-optimization flag may be set in the case of a read
- stream that is flushed which by POSIX/SUSv3 standards,
- means that a corresponding seek must not optimize. The
- optimization is then allowed if no subsequent flush
- is performed. */
- fp->_flags &= ~__SNPT;
_funlockfile (fp);
return 0;
}
diff --git a/newlib/libc/stdio/ftell.c b/newlib/libc/stdio/ftell.c
index 74d6d906c..952574159 100644
--- a/newlib/libc/stdio/ftell.c
+++ b/newlib/libc/stdio/ftell.c
@@ -105,11 +105,11 @@ _DEFUN(_ftell_r, (ptr, fp),
{
_fpos_t pos;
- /* Ensure stdio is set up. */
+ _flockfile (fp);
- CHECK_INIT (ptr);
+ /* Ensure stdio is set up. */
- _flockfile (fp);
+ CHECK_INIT (fp);
if (fp->_seek == NULL)
{
@@ -143,7 +143,7 @@ _DEFUN(_ftell_r, (ptr, fp),
if (HASUB (fp))
pos -= fp->_ur;
}
- else if ((fp->_flags & __SWR) && fp->_p != NULL)
+ else if (fp->_flags & __SWR && fp->_p != NULL)
{
/*
* Writing. Any buffered characters cause the
diff --git a/newlib/libc/stdio/fwrite.c b/newlib/libc/stdio/fwrite.c
index 663fff62c..18514ec2e 100644
--- a/newlib/libc/stdio/fwrite.c
+++ b/newlib/libc/stdio/fwrite.c
@@ -99,8 +99,6 @@ _DEFUN(fwrite, (buf, size, count, fp),
* generally slow and since this occurs whenever size==0.
*/
- CHECK_INIT(_REENT);
-
_flockfile (fp);
if (__sfvwrite (fp, &uio) == 0)
{
diff --git a/newlib/libc/stdio/getc.c b/newlib/libc/stdio/getc.c
index 9628a8740..0aa5ce313 100644
--- a/newlib/libc/stdio/getc.c
+++ b/newlib/libc/stdio/getc.c
@@ -64,7 +64,6 @@ static char sccsid[] = "%W% (Berkeley) %G%";
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
/*
* A subroutine version of the macro getc.
@@ -77,8 +76,8 @@ _DEFUN(getc, (fp),
register FILE *fp)
{
int result;
- CHECK_INIT (_REENT);
_flockfile (fp);
+ /* CHECK_INIT is called (eventually) by __srefill. */
result = __sgetc (fp);
_funlockfile (fp);
return result;
diff --git a/newlib/libc/stdio/getchar.c b/newlib/libc/stdio/getchar.c
index 19301c113..8bb46ef57 100644
--- a/newlib/libc/stdio/getchar.c
+++ b/newlib/libc/stdio/getchar.c
@@ -82,7 +82,7 @@ int
_DEFUN(_getchar_r, (f),
struct _reent *f)
{
- _REENT_SMALL_CHECK_INIT (f);
+ _REENT_SMALL_CHECK_INIT (_stdin_r (f));
return getc (_stdin_r (f));
}
diff --git a/newlib/libc/stdio/getdelim.c b/newlib/libc/stdio/getdelim.c
index 0fdfb3add..6c3e298d8 100644
--- a/newlib/libc/stdio/getdelim.c
+++ b/newlib/libc/stdio/getdelim.c
@@ -1,7 +1,7 @@
/* Copyright 2002, Red Hat Inc. - all rights reserved */
/*
FUNCTION
-<<getdelim>>---read a line up to a specified line delimiter
+<<getdelim>>---read a line up to a specified line delimeter
INDEX
getdelim
@@ -21,16 +21,16 @@ TRAD_SYNOPSIS
DESCRIPTION
<<getdelim>> reads a file <[fp]> up to and possibly including a specified
-delimiter <[delim]>. The line is read into a buffer pointed to
+delimeter <[delim]>. The line is read into a buffer pointed to
by <[bufptr]> and designated with size *<[n]>. If the buffer is
not large enough, it will be dynamically grown by <<getdelim>>.
As the buffer is grown, the pointer to the size <[n]> will be
updated.
RETURNS
-<<getdelim>> returns <<-1>> if no characters were successfully read;
+<<getdelim>> returns <<-1>> if no characters were successfully read,
otherwise, it returns the number of bytes successfully read.
-At end of file, the result is nonzero.
+at end of file, the result is nonzero.
PORTABILITY
<<getdelim>> is a glibc extension.
@@ -79,10 +79,10 @@ _DEFUN(__getdelim, (bufptr, n, delim, fp),
*n = DEFAULT_LINE_SIZE;
}
- CHECK_INIT (_REENT);
-
_flockfile (fp);
+ CHECK_INIT (fp);
+
numbytes = *n;
ptr = buf;
diff --git a/newlib/libc/stdio/getw.c b/newlib/libc/stdio/getw.c
index 210c5939a..b5065bd53 100644
--- a/newlib/libc/stdio/getw.c
+++ b/newlib/libc/stdio/getw.c
@@ -37,15 +37,14 @@ to get the next word from the file or stream identified by <[fp]>. As
a side effect, <<getw>> advances the file's current position
indicator.
-RETURNS
-The next word (read as an <<int>>), unless there is no more
-data or the host system reports a read error; in either of these
+RETURNS The next word (read as an <<int>>), unless there is no more
+data, or the host system reports a read error; in either of these
situations, <<getw>> returns <<EOF>>. Since <<EOF>> is a valid
<<int>>, you must use <<ferror>> or <<feof>> to distinguish these
situations.
PORTABILITY
-<<getw>> is a remnant of K&R C; it is not part of any ISO C Standard.
+<<getw>> is a remnant of K&R C, it is not part of any ISO C Standard.
<<fread>> should be used instead. In fact, this implementation of
<<getw>> is based upon <<fread>>.
diff --git a/newlib/libc/stdio/iprintf.c b/newlib/libc/stdio/iprintf.c
index c9a026424..4b698ad7f 100644
--- a/newlib/libc/stdio/iprintf.c
+++ b/newlib/libc/stdio/iprintf.c
@@ -15,6 +15,44 @@
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/
+/*
+FUNCTION
+<<iprintf>>---write formatted output (integer only)
+
+INDEX
+ iprintf
+
+ANSI_SYNOPSIS
+ #include <stdio.h>
+
+ int iprintf(const char *<[format]>, ...);
+
+TRAD_SYNOPSIS
+ #include <stdio.h>
+
+ int iprintf(<[format]> [, <[arg]>, ...])
+ char *<[format]>;
+
+DESCRIPTION
+<<iprintf>> is a restricted version of <<printf>>: it has the same
+arguments and behavior, save that it cannot perform any floating-point
+formatting: the <<f>>, <<g>>, <<G>>, <<e>>, and <<F>> type specifiers
+are not recognized.
+
+RETURNS
+ <<iprintf>> returns the number of bytes in the output string,
+ save that the concluding <<NULL>> is not counted.
+ <<iprintf>> returns when the end of the format string is
+ encountered. If an error occurs, <<iprintf>>
+ returns <<EOF>>.
+
+PORTABILITY
+<<iprintf>> is not required by ANSI C.
+
+Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
+<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
+*/
+
#include <_ansi.h>
#include <reent.h>
#include <stdio.h>
@@ -40,7 +78,7 @@ iprintf(fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (_REENT);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (_REENT));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
@@ -67,7 +105,7 @@ _iprintf_r(ptr, fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (ptr));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
diff --git a/newlib/libc/stdio/iscanf.c b/newlib/libc/stdio/iscanf.c
deleted file mode 100644
index f35acd2ed..000000000
--- a/newlib/libc/stdio/iscanf.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-#ifndef _REENT_ONLY
-
-int
-#ifdef _HAVE_STDC
-iscanf(_CONST char *fmt, ...)
-#else
-iscanf(fmt, va_alist)
- char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
-
- _REENT_SMALL_CHECK_INIT (_REENT);
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (_REENT, _stdin_r (_REENT), fmt, ap);
- va_end (ap);
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-#ifdef _HAVE_STDC
-_iscanf_r(struct _reent *ptr, _CONST char *fmt, ...)
-#else
-_iscanf_r(ptr, fmt, va_alist)
- struct _reent *ptr;
- char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
-
- _REENT_SMALL_CHECK_INIT (ptr);
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (ptr, _stdin_r (ptr), fmt, ap);
- va_end (ap);
- return (ret);
-}
-
diff --git a/newlib/libc/stdio/local.h b/newlib/libc/stdio/local.h
index f7093b697..c4176eb2a 100644
--- a/newlib/libc/stdio/local.h
+++ b/newlib/libc/stdio/local.h
@@ -30,7 +30,6 @@
#include <unistd.h>
extern int _EXFUN(__svfscanf_r,(struct _reent *,FILE *, _CONST char *,va_list));
-extern int _EXFUN(__svfiscanf_r,(struct _reent *,FILE *, _CONST char *,va_list));
extern FILE *_EXFUN(__sfp,(struct _reent *));
extern int _EXFUN(__sflags,(struct _reent *,_CONST char*, int*));
extern int _EXFUN(__srefill,(FILE *));
@@ -49,11 +48,11 @@ extern int _EXFUN(__srefill,(FILE *fp));
/* Called by the main entry point fns to ensure stdio has been initialized. */
-#define CHECK_INIT(ptr) \
+#define CHECK_INIT(fp) \
do \
{ \
- if ((ptr) && !(ptr)->__sdidinit) \
- __sinit (ptr); \
+ if (_REENT && !_REENT->__sdidinit) \
+ __sinit (_REENT); \
} \
while (0)
@@ -95,11 +94,7 @@ char *_EXFUN(_llicvt,(char *, long long, char));
#ifdef __SINGLE_THREAD__
#define __sfp_lock_acquire()
#define __sfp_lock_release()
-#define __sinit_lock_acquire()
-#define __sinit_lock_release()
#else
_VOID _EXFUN(__sfp_lock_acquire,(_VOID));
_VOID _EXFUN(__sfp_lock_release,(_VOID));
-_VOID _EXFUN(__sinit_lock_acquire,(_VOID));
-_VOID _EXFUN(__sinit_lock_release,(_VOID));
#endif
diff --git a/newlib/libc/stdio/perror.c b/newlib/libc/stdio/perror.c
index 5dbf3326c..6ee698705 100644
--- a/newlib/libc/stdio/perror.c
+++ b/newlib/libc/stdio/perror.c
@@ -74,7 +74,7 @@ _DEFUN(_perror_r, (ptr, s),
{
char *error;
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stderr_r (ptr));
if (s != NULL && *s != '\0')
{
fputs (s, _stderr_r (ptr));
diff --git a/newlib/libc/stdio/printf.c b/newlib/libc/stdio/printf.c
index 19f465e34..2512afe04 100644
--- a/newlib/libc/stdio/printf.c
+++ b/newlib/libc/stdio/printf.c
@@ -39,7 +39,7 @@ _printf_r(ptr, fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (ptr));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
@@ -65,7 +65,7 @@ printf(fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (_REENT);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (_REENT));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
diff --git a/newlib/libc/stdio/putc.c b/newlib/libc/stdio/putc.c
index 097323417..509aaf48d 100644
--- a/newlib/libc/stdio/putc.c
+++ b/newlib/libc/stdio/putc.c
@@ -67,7 +67,6 @@ static char sccsid[] = "%W% (Berkeley) %G%";
#include <_ansi.h>
#include <stdio.h>
-#include "local.h"
/*
* A subroutine version of the macro putc.
@@ -81,8 +80,8 @@ _DEFUN(putc, (c, fp),
register FILE *fp)
{
int result;
- CHECK_INIT (_REENT);
_flockfile (fp);
+ /* CHECK_INIT is (eventually) called by __swbuf. */
result = __sputc (c, fp);
_funlockfile (fp);
return result;
diff --git a/newlib/libc/stdio/putchar.c b/newlib/libc/stdio/putchar.c
index e1d748ae2..903de072d 100644
--- a/newlib/libc/stdio/putchar.c
+++ b/newlib/libc/stdio/putchar.c
@@ -80,7 +80,7 @@ _DEFUN(_putchar_r, (ptr, c),
struct _reent *ptr _AND
int c)
{
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (ptr));
return putc (c, _stdout_r (ptr));
}
diff --git a/newlib/libc/stdio/puts.c b/newlib/libc/stdio/puts.c
index bf32d0401..68251ce67 100644
--- a/newlib/libc/stdio/puts.c
+++ b/newlib/libc/stdio/puts.c
@@ -90,7 +90,7 @@ _DEFUN(_puts_r, (ptr, s),
uio.uio_iov = &iov[0];
uio.uio_iovcnt = 2;
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (ptr));
return (__sfvwrite (_stdout_r (ptr), &uio) ? EOF : '\n');
}
diff --git a/newlib/libc/stdio/putw.c b/newlib/libc/stdio/putw.c
index 682015c0a..78406eeb4 100644
--- a/newlib/libc/stdio/putw.c
+++ b/newlib/libc/stdio/putw.c
@@ -37,11 +37,10 @@ DESCRIPTION
to write a word to the file or stream identified by <[fp]>. As a side
effect, <<putw>> advances the file's current position indicator.
-RETURNS
-Zero on success, <<EOF>> on failure.
+RETURNS Zero on success, <<EOF>> on failure.
PORTABILITY
-<<putw>> is a remnant of K&R C; it is not part of any ISO C Standard.
+<<putw>> is a remnant of K&R C, it is not part of any ISO C Standard.
<<fwrite>> should be used instead. In fact, this implementation of
<<putw>> is based upon <<fwrite>>.
diff --git a/newlib/libc/stdio/refill.c b/newlib/libc/stdio/refill.c
index 639ce6e24..74573e8fd 100644
--- a/newlib/libc/stdio/refill.c
+++ b/newlib/libc/stdio/refill.c
@@ -41,15 +41,13 @@ _DEFUN(__srefill, (fp),
{
/* make sure stdio is set up */
- CHECK_INIT (_REENT);
+ CHECK_INIT (fp);
fp->_r = 0; /* largely a convenience for callers */
-#ifndef __CYGWIN__
/* SysV does not make this test; take it out for compatibility */
if (fp->_flags & __SEOF)
return EOF;
-#endif
/* if not already reading, have to be reading and writing */
if ((fp->_flags & __SRD) == 0)
@@ -100,13 +98,7 @@ _DEFUN(__srefill, (fp),
fp->_p = fp->_bf._base;
fp->_r = (*fp->_read) (fp->_cookie, (char *) fp->_p, fp->_bf._size);
fp->_flags &= ~__SMOD; /* buffer contents are again pristine */
-#ifndef __CYGWIN__
if (fp->_r <= 0)
-#else
- if (fp->_r > 0)
- fp->_flags &= ~__SEOF;
- else
-#endif
{
if (fp->_r == 0)
fp->_flags |= __SEOF;
diff --git a/newlib/libc/stdio/scanf.c b/newlib/libc/stdio/scanf.c
index cf1472ba7..733a638e6 100644
--- a/newlib/libc/stdio/scanf.c
+++ b/newlib/libc/stdio/scanf.c
@@ -39,7 +39,7 @@ scanf(fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (_REENT);
+ _REENT_SMALL_CHECK_INIT (_stdin_r (_REENT));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
@@ -65,7 +65,7 @@ _scanf_r(ptr, fmt, va_alist)
int ret;
va_list ap;
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdin_r (ptr));
#ifdef _HAVE_STDC
va_start (ap, fmt);
#else
diff --git a/newlib/libc/stdio/sccl.c b/newlib/libc/stdio/sccl.c
deleted file mode 100644
index b01801145..000000000
--- a/newlib/libc/stdio/sccl.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* Split from vfscanf.c */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <newlib.h>
-#include <stdio.h>
-#include "local.h"
-
-/*
- * Fill in the given table from the scanset at the given format
- * (just after `['). Return a pointer to the character past the
- * closing `]'. The table has a 1 wherever characters should be
- * considered part of the scanset.
- */
-
-u_char *
-_DEFUN(__sccl, (tab, fmt),
- register char *tab _AND
- register u_char *fmt)
-{
- register int c, n, v;
-
- /* first `clear' the whole table */
- c = *fmt++; /* first char hat => negated scanset */
- if (c == '^')
- {
- v = 1; /* default => accept */
- c = *fmt++; /* get new first char */
- }
- else
- v = 0; /* default => reject */
- /* should probably use memset here */
- for (n = 0; n < 256; n++)
- tab[n] = v;
- if (c == 0)
- return fmt - 1; /* format ended before closing ] */
-
- /*
- * Now set the entries corresponding to the actual scanset to the
- * opposite of the above.
- *
- * The first character may be ']' (or '-') without being special; the
- * last character may be '-'.
- */
-
- v = 1 - v;
- for (;;)
- {
- tab[c] = v; /* take character c */
- doswitch:
- n = *fmt++; /* and examine the next */
- switch (n)
- {
-
- case 0: /* format ended too soon */
- return fmt - 1;
-
- case '-':
- /*
- * A scanset of the form [01+-] is defined as `the digit 0, the
- * digit 1, the character +, the character -', but the effect of a
- * scanset such as [a-zA-Z0-9] is implementation defined. The V7
- * Unix scanf treats `a-z' as `the letters a through z', but treats
- * `a-a' as `the letter a, the character -, and the letter a'.
- *
- * For compatibility, the `-' is not considerd to define a range if
- * the character following it is either a close bracket (required by
- * ANSI) or is not numerically greater than the character we just
- * stored in the table (c).
- */
- n = *fmt;
- if (n == ']' || n < c)
- {
- c = '-';
- break; /* resume the for(;;) */
- }
- fmt++;
- do
- { /* fill in the range */
- tab[++c] = v;
- }
- while (c < n);
-#if 1 /* XXX another disgusting compatibility hack */
- /*
- * Alas, the V7 Unix scanf also treats formats such
- * as [a-c-e] as `the letters a through e'. This too
- * is permitted by the standard....
- */
- goto doswitch;
-#else
- c = *fmt++;
- if (c == 0)
- return fmt - 1;
- if (c == ']')
- return fmt;
-#endif
-
- break;
-
-
- case ']': /* end of scanset */
- return fmt;
-
- default: /* just another character */
- c = n;
- break;
- }
- }
- /* NOTREACHED */
-}
diff --git a/newlib/libc/stdio/setvbuf.c b/newlib/libc/stdio/setvbuf.c
index f6871c59d..eddfde8e3 100644
--- a/newlib/libc/stdio/setvbuf.c
+++ b/newlib/libc/stdio/setvbuf.c
@@ -104,10 +104,10 @@ _DEFUN(setvbuf, (fp, buf, mode, size),
{
int ret = 0;
- CHECK_INIT (_REENT);
-
_flockfile (fp);
+ CHECK_INIT (fp);
+
/*
* Verify arguments. The `int' limit on `size' is due to this
* particular implementation.
diff --git a/newlib/libc/stdio/siprintf.c b/newlib/libc/stdio/siprintf.c
index 4e8e95aaa..838200805 100644
--- a/newlib/libc/stdio/siprintf.c
+++ b/newlib/libc/stdio/siprintf.c
@@ -17,69 +17,37 @@
/*
FUNCTION
- <<iprintf>>, <<fiprintf>>, <<asiprintf>>, <<siprintf>>, <<sniprintf>>---format output
+<<siprintf>>---write formatted output (integer only)
INDEX
- fiprintf
-INDEX
- iprintf
-INDEX
- asiprintf
-INDEX
siprintf
-INDEX
- sniprintf
ANSI_SYNOPSIS
#include <stdio.h>
- int iprintf(const char *<[format]> [, <[arg]>, ...]);
- int fiprintf(FILE *<[fd]>, const char *<[format]> [, <[arg]>, ...]);
int siprintf(char *<[str]>, const char *<[format]> [, <[arg]>, ...]);
- int asiprintf(char **<[strp]>, const char *<[format]> [, <[arg]>, ...]);
- int sniprintf(char *<[str]>, size_t <[size]>, const char *<[format]>
- [, <[arg]>, ...]);
TRAD_SYNOPSIS
- #include <stdio.h>
-
- int iprintf(<[format]> [, <[arg]>, ...])
- char *<[format]>;
-
- int fiprintf(<[fd]>, <[format]> [, <[arg]>, ...]);
- FILE *<[fd]>;
- char *<[format]>;
-
- int asiprintf(<[strp]>, <[format]> [, <[arg]>, ...]);
- char **<[strp]>;
- char *<[format]>;
-
- int siprintf(<[str]>, <[format]> [, <[arg]>, ...]);
- char *<[str]>;
- char *<[format]>;
+ #include <stdio.h>
- int sniprintf(<[str]>, size_t <[size]>, <[format]> [, <[arg]>, ...]);
- char *<[str]>;
- size_t <[size]>;
- char *<[format]>;
+ int siprintf(<[str]>, <[format]>, [, <[arg]>, ...])
+ char *<[str]>;
+ const char *<[format]>;
DESCRIPTION
- <<iprintf>>, <<fiprintf>>, <<siprintf>>, <<sniprintf>>,
- <<asiprintf>>, are the same as <<printf>>, <<fprintf>>,
- <<sprintf>>, <<snprintf>>, and <<asprintf>>, respectively,
- only that they restrict usage to non-floating-point format
- specifiers.
+<<siprintf>> is a restricted version of <<sprintf>>: it has the same
+arguments and behavior, save that it cannot perform any floating-point
+formatting: the <<f>>, <<g>>, <<G>>, <<e>>, and <<F>> type specifiers
+are not recognized.
RETURNS
-<<siprintf>> and <<asiprintf>> return the number of bytes in the output string,
-save that the concluding <<NULL>> is not counted.
-<<iprintf>> and <<fiprintf>> return the number of characters transmitted.
-If an error occurs, <<iprintf>> and <<fiprintf>> return <<EOF>> and
-<<asiprintf>> returns -1. No error returns occur for <<siprintf>>.
+ <<siprintf>> returns the number of bytes in the output string,
+ save that the concluding <<NULL>> is not counted.
+ <<siprintf>> returns when the end of the format string is
+ encountered.
PORTABILITY
-<<iprintf>>, <<fiprintf>>, <<siprintf>>, <<sniprintf>>, and <<asprintf>>
-are newlib extensions.
+<<siprintf>> is not required by ANSI C.
Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
@@ -96,18 +64,18 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <limits.h>
#include "local.h"
+#ifndef _REENT_ONLY
+
int
#ifdef _HAVE_STDC
-_DEFUN(_siprintf_r, (ptr, str, fmt),
- struct _reent *ptr _AND
- char *str _AND
+_DEFUN(siprintf, (str, fmt),
+ char *str _AND
_CONST char *fmt _DOTS)
#else
-_siprintf_r(ptr, str, fmt, va_alist)
- struct _reent *ptr;
- char *str;
- _CONST char *fmt;
- va_dcl
+siprintf(str, fmt, va_alist)
+ char *str;
+ _CONST char *fmt;
+ va_dcl
#endif
{
int ret;
@@ -123,24 +91,26 @@ _siprintf_r(ptr, str, fmt, va_alist)
#else
va_start (ap);
#endif
- ret = _vfiprintf_r (ptr, &f, fmt, ap);
+ ret = vfiprintf (&f, fmt, ap);
va_end (ap);
*f._p = 0;
return (ret);
}
-#ifndef _REENT_ONLY
+#endif /* ! _REENT_ONLY */
int
#ifdef _HAVE_STDC
-_DEFUN(siprintf, (str, fmt),
- char *str _AND
+_DEFUN(_siprintf_r, (rptr, str, fmt),
+ struct _reent *rptr _AND
+ char *str _AND
_CONST char *fmt _DOTS)
#else
-siprintf(str, fmt, va_alist)
- char *str;
- _CONST char *fmt;
- va_dcl
+_siprintf_r(rptr, str, fmt, va_alist)
+ struct _reent *rptr;
+ char *str;
+ _CONST char *fmt;
+ va_dcl
#endif
{
int ret;
@@ -156,10 +126,9 @@ siprintf(str, fmt, va_alist)
#else
va_start (ap);
#endif
- ret = _vfiprintf_r (_REENT, &f, fmt, ap);
+ ret = _vfiprintf_r (rptr, &f, fmt, ap);
va_end (ap);
*f._p = 0;
return (ret);
}
-#endif
diff --git a/newlib/libc/stdio/siscanf.c b/newlib/libc/stdio/siscanf.c
deleted file mode 100644
index 694750dae..000000000
--- a/newlib/libc/stdio/siscanf.c
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
-FUNCTION
-<<iscanf>>, <<fiscanf>>, <<siscanf>>---scan and format non-floating input
-
-INDEX
- iscanf
-INDEX
- fiscanf
-INDEX
- siscanf
-
-ANSI_SYNOPSIS
- #include <stdio.h>
-
- int iscanf(const char *<[format]> [, <[arg]>, ...]);
- int fiscanf(FILE *<[fd]>, const char *<[format]> [, <[arg]>, ...]);
- int siscanf(const char *<[str]>, const char *<[format]>
- [, <[arg]>, ...]);
-
- int _iscanf_r(struct _reent *<[ptr]>, const char *<[format]>
- [, <[arg]>, ...]);
- int _fiscanf_r(struct _reent *<[ptr]>, FILE *<[fd]>, const char *<[format]>
- [, <[arg]>, ...]);
- int _siscanf_r(struct _reent *<[ptr]>, const char *<[str]>,
- const char *<[format]> [, <[arg]>, ...]);
-
-
-TRAD_SYNOPSIS
- #include <stdio.h>
-
- int iscanf(<[format]> [, <[arg]>, ...])
- char *<[format]>;
-
- int fiscanf(<[fd]>, <[format]> [, <[arg]>, ...]);
- FILE *<[fd]>;
- char *<[format]>;
-
- int siscanf(<[str]>, <[format]> [, <[arg]>, ...]);
- char *<[str]>;
- char *<[format]>;
-
- int _iscanf_r(<[ptr]>, <[format]> [, <[arg]>, ...])
- struct _reent *<[ptr]>;
- char *<[format]>;
-
- int _fiscanf_r(<[ptr]>, <[fd]>, <[format]> [, <[arg]>, ...]);
- struct _reent *<[ptr]>;
- FILE *<[fd]>;
- char *<[format]>;
-
- int _siscanf_r(<[ptr]>, <[str]>, <[format]> [, <[arg]>, ...]);
- struct _reent *<[ptr]>;
- char *<[str]>;
- char *<[format]>;
-
-
-DESCRIPTION
- <<iscanf>>, <<fiscanf>>, and <<siscanf>> are the same as
- <<scanf>>, <<fscanf>>, and <<sscanf>> respectively, only that
- they restrict the available formats to non-floating-point
- format specifiers.
-
- The routines <<_iscanf_r>>, <<_fiscanf_r>>, and <<_siscanf_r>> are reentrant
- versions of <<iscanf>>, <<fiscanf>>, and <<siscanf>> that take an additional
- first argument pointing to a reentrancy structure.
-
-RETURNS
- <<iscanf>> returns the number of input fields successfully
- scanned, converted and stored; the return value does
- not include scanned fields which were not stored.
-
- If <<iscanf>> attempts to read at end-of-file, the return
- value is <<EOF>>.
-
- If no fields were stored, the return value is <<0>>.
-
-PORTABILITY
-<<iscanf>>, <<fiscanf>>, and <<siscanf>> are newlib extensions.
-
-Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
-<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
-*/
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <string.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-/* | ARGSUSED */
-/*SUPPRESS 590*/
-static _READ_WRITE_RETURN_TYPE
-_DEFUN(eofread, (cookie, buf, len),
- _PTR cookie _AND
- char *buf _AND
- int len)
-{
- return 0;
-}
-
-#ifndef _REENT_ONLY
-
-#ifdef _HAVE_STDC
-int
-_DEFUN(siscanf, (str, fmt),
- _CONST char *str _AND
- _CONST char *fmt _DOTS)
-#else
-int
-siscanf(str, fmt, va_alist)
- _CONST char *str;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- f._flags = __SRD | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._r = strlen (str);
- f._read = eofread;
- f._ub._base = NULL;
- f._lb._base = NULL;
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (_REENT, &f, fmt, ap);
- va_end (ap);
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-#ifdef _HAVE_STDC
-int
-_DEFUN(_siscanf_r, (ptr, str, fmt),
- struct _reent *ptr _AND
- _CONST char *str _AND
- _CONST char *fmt _DOTS)
-#else
-int
-_siscanf_r(ptr, str, fmt, va_alist)
- struct _reent *ptr;
- _CONST char *str;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- f._flags = __SRD | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._r = strlen (str);
- f._read = eofread;
- f._ub._base = NULL;
- f._lb._base = NULL;
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = __svfiscanf_r (ptr, &f, fmt, ap);
- va_end (ap);
- return ret;
-}
diff --git a/newlib/libc/stdio/sniprintf.c b/newlib/libc/stdio/sniprintf.c
deleted file mode 100644
index 7650cd080..000000000
--- a/newlib/libc/stdio/sniprintf.c
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/* This code created by modifying snprintf.c so copyright inherited. */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include <limits.h>
-#include "local.h"
-
-int
-#ifdef _HAVE_STDC
-_DEFUN (_sniprintf_r, (ptr, str, size, fmt),
- struct _reent *ptr _AND
- char *str _AND
- size_t size _AND
- _CONST char *fmt _DOTS)
-#else
-_sniprintf_r (ptr, str, size, fmt, va_alist)
- struct _reent *ptr;
- char *str;
- size_t size;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = (size > 0 ? size - 1 : 0);
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = _vfiprintf_r (ptr, &f, fmt, ap);
- va_end (ap);
- if (size > 0)
- *f._p = 0;
- return (ret);
-}
-
-#ifndef _REENT_ONLY
-
-int
-#ifdef _HAVE_STDC
-_DEFUN (sniprintf, (str, size, fmt),
- char *str _AND
- size_t size _AND
- _CONST char *fmt _DOTS)
-#else
-sniprintf (str, size, fmt, va_alist)
- char *str;
- size_t size;
- _CONST char *fmt;
- va_dcl
-#endif
-{
- int ret;
- va_list ap;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = (size > 0 ? size - 1 : 0);
- f._file = -1; /* No file. */
-#ifdef _HAVE_STDC
- va_start (ap, fmt);
-#else
- va_start (ap);
-#endif
- ret = _vfiprintf_r (_REENT, &f, fmt, ap);
- va_end (ap);
- if (size > 0)
- *f._p = 0;
- return (ret);
-}
-
-#endif
diff --git a/newlib/libc/stdio/sprintf.c b/newlib/libc/stdio/sprintf.c
index 346749a68..8ee530730 100644
--- a/newlib/libc/stdio/sprintf.c
+++ b/newlib/libc/stdio/sprintf.c
@@ -37,8 +37,7 @@ ANSI_SYNOPSIS
int fprintf(FILE *<[fd]>, const char *<[format]> [, <[arg]>, ...]);
int sprintf(char *<[str]>, const char *<[format]> [, <[arg]>, ...]);
int asprintf(char **<[strp]>, const char *<[format]> [, <[arg]>, ...]);
- int snprintf(char *<[str]>, size_t <[size]>, const char *<[format]>
- [, <[arg]>, ...]);
+ int snprintf(char *<[str]>, size_t <[size]>, const char *<[format]> [, <[arg]>, ...]);
TRAD_SYNOPSIS
#include <stdio.h>
diff --git a/newlib/libc/stdio/sscanf.c b/newlib/libc/stdio/sscanf.c
index 5ad39d8b7..687f53edf 100644
--- a/newlib/libc/stdio/sscanf.c
+++ b/newlib/libc/stdio/sscanf.c
@@ -34,12 +34,10 @@ ANSI_SYNOPSIS
int sscanf(const char *<[str]>, const char *<[format]>
[, <[arg]>, ...]);
- int _scanf_r(struct _reent *<[ptr]>, const char *<[format]>
- [, <[arg]>, ...]);
- int _fscanf_r(struct _reent *<[ptr]>, FILE *<[fd]>, const char *<[format]>
- [, <[arg]>, ...]);
- int _sscanf_r(struct _reent *<[ptr]>, const char *<[str]>,
- const char *<[format]> [, <[arg]>, ...]);
+ int _scanf_r(struct _reent *<[ptr]>, const char *<[format]> [, <[arg]>, ...]);
+ int _fscanf_r(struct _reent *<[ptr]>, FILE *<[fd]>, const char *<[format]> [, <[arg]>, ...]);
+ int _sscanf_r(struct _reent *<[ptr]>, const char *<[str]>, const char *<[format]>
+ [, <[arg]>, ...]);
TRAD_SYNOPSIS
diff --git a/newlib/libc/stdio/stdio.tex b/newlib/libc/stdio/stdio.tex
index 9c2ca0f5d..728831cd5 100644
--- a/newlib/libc/stdio/stdio.tex
+++ b/newlib/libc/stdio/stdio.tex
@@ -25,7 +25,6 @@ structure.
@menu
* clearerr:: Clear file or stream error indicator
-* dprintf:: Print to a file descriptor
* fclose:: Close a file
* fcloseall:: Close all files
* feof:: Test for end of file
@@ -35,6 +34,7 @@ structure.
* fgetpos:: Record position in a stream or file
* fgets:: Get character string from a file or stream
* fileno:: Get file descriptor associated with stream
+* fiprintf:: Write formatted output to file (integer only)
* fopen:: Open a file
* fdopen:: Turn an open file into a stream
* fputc:: Write a character on a stream or file
@@ -53,6 +53,7 @@ structure.
* getline:: Get character string from a file or stream
* gets:: Get character string from standard input (obsolete)
* getw:: Get a word (int) from a file or stream
+* iprintf:: Write formatted output (integer only)
* mktemp:: Generate unused file name
* perror:: Print an error message on standard error
* putc:: Write a character on a stream or file (macro)
@@ -68,14 +69,11 @@ structure.
* setbuffer:: Specify full buffering for a file or stream with size
* setlinebuf:: Specify line buffering for a file or stream
* setvbuf:: Specify buffering for a file or stream
+* siprintf:: Write formatted output (integer only)
* printf:: Write formatted output
* scanf:: Scan and format input
-* iprintf:: Write formatted output (integer only)
-* iscanf:: Scan and format input (integer only)
* tmpfile:: Create a temporary file
* tmpnam:: Generate name for a temporary file
-* viprintf:: Format variable argument list for non-floating-point output
-* viscanf:: Scan variable format list for non-floating-point input
* vprintf:: Format variable argument list
* vscanf:: Format variable argument list
@end menu
@@ -84,9 +82,6 @@ structure.
@include stdio/clearerr.def
@page
-@include stdio/dprintf.def
-
-@page
@include stdio/fclose.def
@page
@@ -114,6 +109,9 @@ structure.
@include stdio/fileno.def
@page
+@include stdio/fiprintf.def
+
+@page
@include stdio/fopen.def
@page
@@ -168,6 +166,9 @@ structure.
@include stdio/getw.def
@page
+@include stdio/iprintf.def
+
+@page
@include stdio/mktemp.def
@page
@@ -213,17 +214,14 @@ structure.
@include stdio/setvbuf.def
@page
+@include stdio/siprintf.def
+
+@page
@include stdio/sprintf.def
@page
@include stdio/sscanf.def
-@page
-@include stdio/siprintf.def
-
-@page
-@include stdio/siscanf.def
-
@page
@include stdio/tmpfile.def
@@ -235,10 +233,3 @@ structure.
@page
@include stdio/vfscanf.def
-
-@page
-@include stdio/viprintf.def
-
-@page
-@include stdio/viscanf.def
-
diff --git a/newlib/libc/stdio/ungetc.c b/newlib/libc/stdio/ungetc.c
index fc6fa3160..9ccd02766 100644
--- a/newlib/libc/stdio/ungetc.c
+++ b/newlib/libc/stdio/ungetc.c
@@ -77,14 +77,14 @@ _DEFUN(_ungetc_r, (rptr, c, fp),
if (c == EOF)
return (EOF);
+ _flockfile (fp);
+
/* Ensure stdio has been initialized.
??? Might be able to remove this as some other stdio routine should
have already been called to get the char we are un-getting. */
- CHECK_INIT (rptr);
+ CHECK_INIT (fp);
- _flockfile (fp);
-
/* After ungetc, we won't be at eof anymore */
fp->_flags &= ~__SEOF;
diff --git a/newlib/libc/stdio/vasiprintf.c b/newlib/libc/stdio/vasiprintf.c
deleted file mode 100644
index 721d6fb29..000000000
--- a/newlib/libc/stdio/vasiprintf.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-/* This code was based on vsiprintf.c */
-/* doc in vfprintf.c */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "%W% (Berkeley) %G%";
-#endif /* LIBC_SCCS and not lint */
-
-#include <_ansi.h>
-#include <stdio.h>
-#include <limits.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(vasiprintf, (strp, fmt, ap),
- char **strp _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR | __SMBF;
- f._bf._base = f._p = NULL;
- f._bf._size = f._w = 0;
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (_REENT, &f, fmt, ap);
- *f._p = 0;
- *strp = f._bf._base;
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_vasiprintf_r, (ptr, strp, fmt, ap),
- struct _reent *ptr _AND
- char **strp _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR | __SMBF ;
- f._bf._base = f._p = NULL;
- f._bf._size = f._w = 0;
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (ptr, &f, fmt, ap);
- *f._p = 0;
- *strp = f._bf._base;
- return ret;
-}
-
diff --git a/newlib/libc/stdio/vdprintf.c b/newlib/libc/stdio/vdprintf.c
deleted file mode 100644
index acd193a13..000000000
--- a/newlib/libc/stdio/vdprintf.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2005 Shaun Jackman
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-
-int
-_DEFUN (_vdprintf_r, (ptr, fd, format, ap),
- struct _reent *ptr _AND
- int fd _AND
- _CONST char *format _AND
- va_list ap)
-{
- char *p;
- int n;
- _REENT_SMALL_CHECK_INIT (ptr);
- n = _vasprintf_r (ptr, &p, format, ap);
- if (n == -1) return -1;
- n = _write_r (ptr, fd, p, n);
- _free_r (ptr, p);
- return n;
-}
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN (vdprintf, (fd, format, ap),
- int fd _AND
- _CONST char *format _AND
- va_list ap)
-{
- _REENT_SMALL_CHECK_INIT (_REENT);
- return _vdprintf_r (_REENT, fd, format, ap);
-}
-
-#endif /* ! _REENT_ONLY */
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index a8c1f9bca..9e970cef3 100644
--- a/newlib/libc/stdio/vfprintf.c
+++ b/newlib/libc/stdio/vfprintf.c
@@ -54,19 +54,18 @@ ANSI_SYNOPSIS
int vfprintf(FILE *<[fp]>, const char *<[fmt]>, va_list <[list]>);
int vsprintf(char *<[str]>, const char *<[fmt]>, va_list <[list]>);
int vasprintf(char **<[strp]>, const char *<[fmt]>, va_list <[list]>);
- int vsnprintf(char *<[str]>, size_t <[size]>, const char *<[fmt]>,
- va_list <[list]>);
+ int vsnprintf(char *<[str]>, size_t <[size]>, const char *<[fmt]>, va_list <[list]>);
int _vprintf_r(struct _reent *<[reent]>, const char *<[fmt]>,
va_list <[list]>);
int _vfprintf_r(struct _reent *<[reent]>, FILE *<[fp]>, const char *<[fmt]>,
va_list <[list]>);
- int _vasprintf_r(struct _reent *<[reent]>, char **<[str]>,
- const char *<[fmt]>, va_list <[list]>);
- int _vsprintf_r(struct _reent *<[reent]>, char *<[str]>,
- const char *<[fmt]>, va_list <[list]>);
- int _vsnprintf_r(struct _reent *<[reent]>, char *<[str]>, size_t <[size]>,
- const char *<[fmt]>, va_list <[list]>);
+ int _vasprintf_r(struct _reent *<[reent]>, char **<[str]>, const char *<[fmt]>,
+ va_list <[list]>);
+ int _vsprintf_r(struct _reent *<[reent]>, char *<[str]>, const char *<[fmt]>,
+ va_list <[list]>);
+ int _vsnprintf_r(struct _reent *<[reent]>, char *<[str]>, size_t <[size]>, const char *<[fmt]>,
+ va_list <[list]>);
TRAD_SYNOPSIS
#include <stdio.h>
@@ -158,7 +157,6 @@ static char *rcsid = "$Id$";
*
* This code is large and complicated...
*/
-#include <newlib.h>
#ifdef INTEGER_ONLY
#define VFPRINTF vfiprintf
@@ -178,6 +176,8 @@ static char *rcsid = "$Id$";
#include <_ansi.h>
#include <reent.h>
+#include <newlib.h>
+#include <reent.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -533,8 +533,8 @@ _DEFUN(_VFPRINTF_R, (data, fp, fmt0, ap),
(u_long)GET_ARG (N, ap, u_int))
#endif
- CHECK_INIT (data);
_flockfile (fp);
+ CHECK_INIT (fp);
/* sorry, fprintf(read_only_file, "") returns EOF, not 0 */
if (cantwrite (fp)) {
@@ -801,7 +801,6 @@ reswitch: switch (ch) {
case 'e':
case 'E':
case 'f':
- case 'F':
case 'g':
case 'G':
if (prec == -1) {
@@ -821,18 +820,12 @@ reswitch: switch (ch) {
if (isinf (_fpvalue)) {
if (_fpvalue < 0)
sign = '-';
- if (ch == 'E' || ch == 'F' || ch == 'G')
- cp = "INF";
- else
- cp = "inf";
+ cp = "Inf";
size = 3;
break;
}
if (isnan (_fpvalue)) {
- if (ch == 'E' || ch == 'F' || ch == 'G')
- cp = "NAN";
- else
- cp = "nan";
+ cp = "NaN";
size = 3;
break;
}
@@ -850,18 +843,12 @@ reswitch: switch (ch) {
if (tmp == 2) {
if (_fpvalue < 0)
sign = '-';
- if (ch == 'E' || ch == 'F' || ch == 'G')
- cp = "INF";
- else
- cp = "inf";
+ cp = "Inf";
size = 3;
break;
}
if (tmp == 1) {
- if (ch == 'E' || ch == 'F' || ch == 'G')
- cp = "NAN";
- else
- cp = "nan";
+ cp = "NaN";
size = 3;
break;
}
@@ -1274,11 +1261,7 @@ _DEFUN(cvt, (data, value, ndigits, flags, sign, decpt, ch, length),
#ifdef _NO_LONGDBL
union double_union tmp;
#else
- union
- {
- struct ldieee ieee;
- _LONG_DOUBLE val;
- } ld;
+ struct ldieee *ldptr;
#endif
if (ch == 'f') {
@@ -1305,8 +1288,8 @@ _DEFUN(cvt, (data, value, ndigits, flags, sign, decpt, ch, length),
digits = _dtoa_r (data, value, mode, ndigits, decpt, &dsgn, &rve);
#else /* !_NO_LONGDBL */
- ld.val = value;
- if (ld.ieee.sign) { /* this will check for < 0 and -0.0 */
+ ldptr = (struct ldieee *)&value;
+ if (ldptr->sign) { /* this will check for < 0 and -0.0 */
value = -value;
*sign = '-';
} else
diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index 4788938c9..76561fe4a 100644
--- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c
@@ -37,8 +37,8 @@ ANSI_SYNOPSIS
va_list <[list]>);
int _vfscanf_r(struct _reent *<[reent]>, FILE *<[fp]>, const char *<[fmt]>,
va_list <[list]>);
- int _vsscanf_r(struct _reent *<[reent]>, const char *<[str]>,
- const char *<[fmt]>, va_list <[list]>);
+ int _vsscanf_r(struct _reent *<[reent]>, const char *<[str]>, const char *<[fmt]>,
+ va_list <[list]>);
TRAD_SYNOPSIS
#include <stdio.h>
@@ -119,23 +119,11 @@ Supporting OS subroutines required:
#endif
#include "local.h"
-#ifdef INTEGER_ONLY
-#define VFSCANF vfiscanf
-#define _VFSCANF_R _vfiscanf_r
-#define __SVFSCANF __svfiscanf
-#define __SVFSCANF_R __svfiscanf_r
-#else
-#define VFSCANF vfscanf
-#define _VFSCANF_R _vfscanf_r
-#define __SVFSCANF __svfscanf
-#define __SVFSCANF_R __svfscanf_r
-#ifndef NO_FLOATING_POINT
+#ifndef NO_FLOATING_POINT
#define FLOATING_POINT
#endif
-#endif
#ifdef FLOATING_POINT
-#include <math.h>
#include <float.h>
/* Currently a test is made to see if long double processing is warranted.
@@ -226,40 +214,39 @@ typedef unsigned long long u_long_long;
#ifndef _REENT_ONLY
int
-_DEFUN(VFSCANF, (fp, fmt, ap),
+_DEFUN(vfscanf, (fp, fmt, ap),
register FILE *fp _AND
_CONST char *fmt _AND
va_list ap)
{
- CHECK_INIT(_REENT);
- return __SVFSCANF_R (_REENT, fp, fmt, ap);
+ CHECK_INIT(fp);
+ return __svfscanf_r (_REENT, fp, fmt, ap);
}
int
-_DEFUN(__SVFSCANF, (fp, fmt0, ap),
+_DEFUN(__svfscanf, (fp, fmt0, ap),
register FILE *fp _AND
char _CONST *fmt0 _AND
va_list ap)
{
- return __SVFSCANF_R (_REENT, fp, fmt0, ap);
+ return __svfscanf_r (_REENT, fp, fmt0, ap);
}
#endif /* !_REENT_ONLY */
int
-_DEFUN(_VFSCANF_R, (data, fp, fmt, ap),
+_DEFUN(_vfscanf_r, (data, fp, fmt, ap),
struct _reent *data _AND
register FILE *fp _AND
_CONST char *fmt _AND
va_list ap)
{
- CHECK_INIT(data);
- return __SVFSCANF_R (data, fp, fmt, ap);
+ return __svfscanf_r (data, fp, fmt, ap);
}
int
-_DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
+_DEFUN(__svfscanf_r, (rptr, fp, fmt0, ap),
struct _reent *rptr _AND
register FILE *fp _AND
char _CONST *fmt0 _AND
@@ -778,7 +765,6 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
{
/* scan an integer as if by strtol/strtoul */
unsigned width_left = 0;
- int skips = 0;
#ifdef hardway
if (width == 0 || width > sizeof (buf) - 1)
#else
@@ -827,7 +813,6 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
width_left--;
width++;
}
- ++skips;
goto skip;
/* 1 through 7 always legal */
@@ -972,7 +957,7 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
}
nassigned++;
}
- nread += p - buf + skips;
+ nread += p - buf;
break;
}
#ifdef FLOATING_POINT
@@ -987,7 +972,6 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
long zeroes, exp_adjust;
char *exp_start = NULL;
unsigned width_left = 0;
- int nancount = 0;
#ifdef hardway
if (width == 0 || width > sizeof (buf) - 1)
#else
@@ -1010,6 +994,7 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
*/
switch (c)
{
+
case '0':
if (flags & NDIGITS)
{
@@ -1032,12 +1017,8 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
case '7':
case '8':
case '9':
- if (nancount == 0)
- {
- flags &= ~(SIGNOK | NDIGITS);
- goto fok;
- }
- break;
+ flags &= ~(SIGNOK | NDIGITS);
+ goto fok;
case '+':
case '-':
@@ -1047,30 +1028,6 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
goto fok;
}
break;
- case 'n':
- case 'N':
- if (nancount == 0
- && (flags & (SIGNOK | NDIGITS | DPTOK | EXPOK)) ==
- (SIGNOK | NDIGITS | DPTOK | EXPOK))
- {
- flags &= ~(SIGNOK | DPTOK | EXPOK | NDIGITS);
- nancount = 1;
- goto fok;
- }
- else if (nancount == 2)
- {
- nancount = 3;
- goto fok;
- }
- break;
- case 'a':
- case 'A':
- if (nancount == 1)
- {
- nancount = 2;
- goto fok;
- }
- break;
case '.':
if (flags & DPTOK)
{
@@ -1112,24 +1069,7 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
}
if (zeroes)
flags &= ~NDIGITS;
- /* We may have a 'N' or possibly even a 'Na' as the start of 'NaN',
- only to run out of chars before it was complete (or having
- encountered a non- matching char). So check here if we have an
- outstanding nancount, and if so put back the chars we did
- swallow and treat as a failed match. */
- if (nancount && nancount != 3)
- {
- /* Ok... what are we supposed to do in the event that the
- __srefill call above was triggered in the middle of the partial
- 'NaN' and so we can't put it all back? */
- while (nancount-- && (p > buf))
- {
- ungetc (*(u_char *)--p, fp);
- --nread;
- }
- goto match_failure;
- }
- /*
+ /*
* If no digits, might be missing exponent digits
* (just give back the exponent) or might be missing
* regular digits, but had sign and/or decimal point.
@@ -1141,7 +1081,7 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
/* no digits at all */
while (p > buf)
{
- ungetc (*(u_char *)--p, fp);
+ ungetc (*(u_char *)-- p, fp);
--nread;
}
goto match_failure;
@@ -1210,10 +1150,7 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap),
else
{
flp = va_arg (ap, float *);
- if (isnan (res))
- *flp = nanf (NULL);
- else
- *flp = res;
+ *flp = res;
}
nassigned++;
}
@@ -1230,3 +1167,107 @@ all_done:
_funlockfile (fp);
return nassigned;
}
+
+/*
+ * Fill in the given table from the scanset at the given format
+ * (just after `['). Return a pointer to the character past the
+ * closing `]'. The table has a 1 wherever characters should be
+ * considered part of the scanset.
+ */
+
+/*static*/
+u_char *
+_DEFUN(__sccl, (tab, fmt),
+ register char *tab _AND
+ register u_char *fmt)
+{
+ register int c, n, v;
+
+ /* first `clear' the whole table */
+ c = *fmt++; /* first char hat => negated scanset */
+ if (c == '^')
+ {
+ v = 1; /* default => accept */
+ c = *fmt++; /* get new first char */
+ }
+ else
+ v = 0; /* default => reject */
+ /* should probably use memset here */
+ for (n = 0; n < 256; n++)
+ tab[n] = v;
+ if (c == 0)
+ return fmt - 1; /* format ended before closing ] */
+
+ /*
+ * Now set the entries corresponding to the actual scanset to the
+ * opposite of the above.
+ *
+ * The first character may be ']' (or '-') without being special; the
+ * last character may be '-'.
+ */
+
+ v = 1 - v;
+ for (;;)
+ {
+ tab[c] = v; /* take character c */
+ doswitch:
+ n = *fmt++; /* and examine the next */
+ switch (n)
+ {
+
+ case 0: /* format ended too soon */
+ return fmt - 1;
+
+ case '-':
+ /*
+ * A scanset of the form [01+-] is defined as `the digit 0, the
+ * digit 1, the character +, the character -', but the effect of a
+ * scanset such as [a-zA-Z0-9] is implementation defined. The V7
+ * Unix scanf treats `a-z' as `the letters a through z', but treats
+ * `a-a' as `the letter a, the character -, and the letter a'.
+ *
+ * For compatibility, the `-' is not considerd to define a range if
+ * the character following it is either a close bracket (required by
+ * ANSI) or is not numerically greater than the character we just
+ * stored in the table (c).
+ */
+ n = *fmt;
+ if (n == ']' || n < c)
+ {
+ c = '-';
+ break; /* resume the for(;;) */
+ }
+ fmt++;
+ do
+ { /* fill in the range */
+ tab[++c] = v;
+ }
+ while (c < n);
+#if 1 /* XXX another disgusting compatibility hack */
+ /*
+ * Alas, the V7 Unix scanf also treats formats such
+ * as [a-c-e] as `the letters a through e'. This too
+ * is permitted by the standard....
+ */
+ goto doswitch;
+#else
+ c = *fmt++;
+ if (c == 0)
+ return fmt - 1;
+ if (c == ']')
+ return fmt;
+#endif
+
+ break;
+
+
+ case ']': /* end of scanset */
+ return fmt;
+
+ default: /* just another character */
+ c = n;
+ break;
+ }
+ }
+ /* NOTREACHED */
+}
diff --git a/newlib/libc/stdio/viprintf.c b/newlib/libc/stdio/viprintf.c
deleted file mode 100644
index cea96d3db..000000000
--- a/newlib/libc/stdio/viprintf.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
-FUNCTION
-<<viprintf>>, <<vfiprintf>>, <<vsiprintf>>---format argument list
-
-INDEX
- viprintf
-INDEX
- vfiprintf
-INDEX
- vsiprintf
-INDEX
- vsniprintf
-
-ANSI_SYNOPSIS
- #include <stdio.h>
- #include <stdarg.h>
- int viprintf(const char *<[fmt]>, va_list <[list]>);
- int vfiprintf(FILE *<[fp]>, const char *<[fmt]>, va_list <[list]>);
- int vsiprintf(char *<[str]>, const char *<[fmt]>, va_list <[list]>);
- int vasiprintf(char **<[strp]>, const char *<[fmt]>, va_list <[list]>);
- int vsniprintf(char *<[str]>, size_t <[size]>, const char *<[fmt]>,
- va_list <[list]>);
-
- int _viprintf_r(struct _reent *<[reent]>, const char *<[fmt]>,
- va_list <[list]>);
- int _vfiprintf_r(struct _reent *<[reent]>, FILE *<[fp]>,
- const char *<[fmt]>, va_list <[list]>);
- int _vasiprintf_r(struct _reent *<[reent]>, char **<[str]>,
- const char *<[fmt]>, va_list <[list]>);
- int _vsiprintf_r(struct _reent *<[reent]>, char *<[str]>,
- const char *<[fmt]>, va_list <[list]>);
- int _vsniprintf_r(struct _reent *<[reent]>, char *<[str]>, size_t <[size]>,
- const char *<[fmt]>, va_list <[list]>);
-
-TRAD_SYNOPSIS
- #include <stdio.h>
- #include <varargs.h>
- int viprintf( <[fmt]>, <[list]>)
- char *<[fmt]>;
- va_list <[list]>;
-
- int vfiprintf(<[fp]>, <[fmt]>, <[list]>)
- FILE *<[fp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int vasiprintf(<[strp]>, <[fmt]>, <[list]>)
- char **<[strp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int vsiprintf(<[str]>, <[fmt]>, <[list]>)
- char *<[str]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int vsniprintf(<[str]>, <[size]>, <[fmt]>, <[list]>)
- char *<[str]>;
- size_t <[size]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _viprintf_r(<[reent]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vfiprintf_r(<[reent]>, <[fp]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- FILE *<[fp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vasiprintf_r(<[reent]>, <[strp]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- char **<[strp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vsiprintf_r(<[reent]>, <[str]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- char *<[str]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vsniprintf_r(<[reent]>, <[str]>, <[size]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- char *<[str]>;
- size_t <[size]>;
- char *<[fmt]>;
- va_list <[list]>;
-
-DESCRIPTION
-<<viprintf>>, <<vfiprintf>>, <<vasiprintf>>, <<vsiprintf>> and
-<<vsniprintf>> are (respectively) variants of <<iprintf>>, <<fiprintf>>,
-<<asiprintf>>, <<siprintf>>, and <<sniprintf>>. They differ only in
-restricting the caller to use non-floating-point format specifiers.
-
-RETURNS
-The return values are consistent with the corresponding functions:
-<<vasiprintf>>/<<vsiprintf>> returns the number of bytes in the output string,
-save that the concluding <<NULL>> is not counted.
-<<viprintf>> and <<vfiprintf>> return the number of characters transmitted.
-If an error occurs, <<viprintf>> and <<vfiprintf>> return <<EOF>> and
-<<vasiprintf>> returns -1. No error returns occur for <<vsiprintf>>.
-
-PORTABILITY
-<<viprintf>>, <<vfiprintf>>, <<vasiprintf>>, <<vsiprintf>> and <<vsniprintf>>
-are newlib extensions.
-
-Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
-<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
-*/
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(viprintf, (fmt, ap),
- _CONST char *fmt _AND
- va_list ap)
-{
- _REENT_SMALL_CHECK_INIT (_REENT);
- return _vfiprintf_r (_REENT, _stdout_r (_REENT), fmt, ap);
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_viprintf_r, (ptr, fmt, ap),
- struct _reent *ptr _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- _REENT_SMALL_CHECK_INIT (ptr);
- return _vfiprintf_r (ptr, _stdout_r (ptr), fmt, ap);
-}
diff --git a/newlib/libc/stdio/viscanf.c b/newlib/libc/stdio/viscanf.c
deleted file mode 100644
index f335f69ff..000000000
--- a/newlib/libc/stdio/viscanf.c
+++ /dev/null
@@ -1,139 +0,0 @@
-/*-
- * Code created by modifying iscanf.c which has following copyright.
- *
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
-FUNCTION
-<<viscanf>>, <<vfiscanf>>, <<vsiscanf>>---format argument list
-
-INDEX
- viscanf
-INDEX
- vfiscanf
-INDEX
- vsiscanf
-
-ANSI_SYNOPSIS
- #include <stdio.h>
- #include <stdarg.h>
- int viscanf(const char *<[fmt]>, va_list <[list]>);
- int vfiscanf(FILE *<[fp]>, const char *<[fmt]>, va_list <[list]>);
- int vsiscanf(const char *<[str]>, const char *<[fmt]>, va_list <[list]>);
-
- int _viscanf_r(struct _reent *<[reent]>, const char *<[fmt]>,
- va_list <[list]>);
- int _vfiscanf_r(struct _reent *<[reent]>, FILE *<[fp]>, const char *<[fmt]>,
- va_list <[list]>);
- int _vsiscanf_r(struct _reent *<[reent]>, const char *<[str]>,
- const char *<[fmt]>, va_list <[list]>);
-
-TRAD_SYNOPSIS
- #include <stdio.h>
- #include <varargs.h>
- int viscanf( <[fmt]>, <[ist]>)
- char *<[fmt]>;
- va_list <[list]>;
-
- int vfiscanf( <[fp]>, <[fmt]>, <[list]>)
- FILE *<[fp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int vsiscanf( <[str]>, <[fmt]>, <[list]>)
- char *<[str]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _viscanf_r( <[reent]>, <[fmt]>, <[ist]>)
- struct _reent *<[reent]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vfiscanf_r( <[reent]>, <[fp]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- FILE *<[fp]>;
- char *<[fmt]>;
- va_list <[list]>;
-
- int _vsiscanf_r( <[reent]>, <[str]>, <[fmt]>, <[list]>)
- struct _reent *<[reent]>;
- char *<[str]>;
- char *<[fmt]>;
- va_list <[list]>;
-
-DESCRIPTION
-<<viscanf>>, <<vfiscanf>>, and <<vsiscanf>> are (respectively) variants
-of <<iscanf>>, <<fiscanf>>, and <<siscanf>>. They differ only in
-allowing their caller to pass the variable argument list as a
-<<va_list>> object (initialized by <<va_start>>) rather than
-directly accepting a variable number of arguments.
-
-RETURNS
-The return values are consistent with the corresponding functions:
-<<viscanf>> returns the number of input fields successfully scanned,
-converted, and stored; the return value does not include scanned
-fields which were not stored.
-
-If <<viscanf>> attempts to read at end-of-file, the return value
-is <<EOF>>.
-
-If no fields were stored, the return value is <<0>>.
-
-The routines <<_viscanf_r>>, <<_vfiscanf_f>>, and <<_vsiscanf_r>> are
-reentrant versions which take an additional first parameter which points to the
-reentrancy structure.
-
-PORTABILITY
-These are newlib extensions.
-
-Supporting OS subroutines required:
-*/
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(viscanf, (fmt, ap),
- _CONST char *fmt _AND
- va_list ap)
-{
- _REENT_SMALL_CHECK_INIT (_REENT);
- return __svfiscanf_r (_REENT, _stdin_r (_REENT), fmt, ap);
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_viscanf_r, (ptr, fmt, ap),
- struct _reent *ptr _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- _REENT_SMALL_CHECK_INIT (ptr);
- return __svfiscanf_r (ptr, _stdin_r (ptr), fmt, ap);
-}
-
diff --git a/newlib/libc/stdio/vprintf.c b/newlib/libc/stdio/vprintf.c
index 69edc87ae..8a1faaed1 100644
--- a/newlib/libc/stdio/vprintf.c
+++ b/newlib/libc/stdio/vprintf.c
@@ -33,7 +33,7 @@ _DEFUN(vprintf, (fmt, ap),
_CONST char *fmt _AND
va_list ap)
{
- _REENT_SMALL_CHECK_INIT (_REENT);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (_REENT));
return _vfprintf_r (_REENT, _stdout_r (_REENT), fmt, ap);
}
@@ -45,6 +45,6 @@ _DEFUN(_vprintf_r, (ptr, fmt, ap),
_CONST char *fmt _AND
va_list ap)
{
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdout_r (ptr));
return _vfprintf_r (ptr, _stdout_r (ptr), fmt, ap);
}
diff --git a/newlib/libc/stdio/vscanf.c b/newlib/libc/stdio/vscanf.c
index e559b77a8..a62b0a8c3 100644
--- a/newlib/libc/stdio/vscanf.c
+++ b/newlib/libc/stdio/vscanf.c
@@ -34,7 +34,7 @@ _DEFUN(vscanf, (fmt, ap),
_CONST char *fmt _AND
va_list ap)
{
- _REENT_SMALL_CHECK_INIT (_REENT);
+ _REENT_SMALL_CHECK_INIT (_stdin_r (_REENT));
return __svfscanf_r (_REENT, _stdin_r (_REENT), fmt, ap);
}
@@ -46,7 +46,7 @@ _DEFUN(_vscanf_r, (ptr, fmt, ap),
_CONST char *fmt _AND
va_list ap)
{
- _REENT_SMALL_CHECK_INIT (ptr);
+ _REENT_SMALL_CHECK_INIT (_stdin_r (ptr));
return __svfscanf_r (ptr, _stdin_r (ptr), fmt, ap);
}
diff --git a/newlib/libc/stdio/vsiprintf.c b/newlib/libc/stdio/vsiprintf.c
deleted file mode 100644
index c9d263803..000000000
--- a/newlib/libc/stdio/vsiprintf.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-/* doc in vfiprintf.c */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "%W% (Berkeley) %G%";
-#endif /* LIBC_SCCS and not lint */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <limits.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(vsiprintf, (str, fmt, ap),
- char *str _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = INT_MAX;
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (_REENT, &f, fmt, ap);
- *f._p = 0;
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_vsiprintf_r, (ptr, str, fmt, ap),
- struct _reent *ptr _AND
- char *str _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = INT_MAX;
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (ptr, &f, fmt, ap);
- *f._p = 0;
- return ret;
-}
-
diff --git a/newlib/libc/stdio/vsiscanf.c b/newlib/libc/stdio/vsiscanf.c
deleted file mode 100644
index c6201847a..000000000
--- a/newlib/libc/stdio/vsiscanf.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Code created by modifying iscanf.c which has following copyright.
- *
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <string.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-#include "local.h"
-
-static _READ_WRITE_RETURN_TYPE
-_DEFUN(eofread1, (cookie, buf, len),
- _PTR cookie _AND
- char *buf _AND
- int len)
-{
- return 0;
-}
-
-/*
- * vsiscanf
- */
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(vsiscanf, (str, fmt, ap),
- _CONST char *str _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- return _vsiscanf_r (_REENT, str, fmt, ap);
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_vsiscanf_r, (ptr, str, fmt, ap),
- struct _reent *ptr _AND
- _CONST char *str _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- FILE f;
-
- f._flags = __SRD | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._r = strlen (str);
- f._read = eofread1;
- f._ub._base = NULL;
- f._lb._base = NULL;
- f._file = -1; /* No file. */
- return __svfiscanf_r (ptr, &f, fmt, ap);
-}
diff --git a/newlib/libc/stdio/vsniprintf.c b/newlib/libc/stdio/vsniprintf.c
deleted file mode 100644
index 6a5bd45bb..000000000
--- a/newlib/libc/stdio/vsniprintf.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley. The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
-FUNCTION
-<<vsniprintf>>---write formatted output (integer only)
-
-INDEX
- vsniprintf
-
-ANSI_SYNOPSIS
- #include <stdio.h>
-
- int vsniprintf(char *<[str]>, size_t <[size]>, const char *<[fmt]>, va_list <[list]>);
-
-TRAD_SYNOPSIS
- #include <stdio.h>
-
- int vsnprintf(<[str]>, <[size]>, <[fmt]>, <[list]>)
- char *<[str]>;
- size_t <[size]>;
- char *<[fmt]>;
- va_list <[list]>;
-
-DESCRIPTION
-<<vsniprintf>> is a restricted version of <<vsnprintf>>: it has the same
-arguments and behavior, save that it cannot perform any floating-point
-formatting: the <<f>>, <<g>>, <<G>>, <<e>>, and <<F>> type specifiers
-are not recognized.
-
-RETURNS
- <<vsniprintf>> returns the number of bytes in the output string,
- save that the concluding <<NULL>> is not counted.
- <<vsniprintf>> returns when the end of the format string is
- encountered.
-
-PORTABILITY
-<<vsniprintf>> is not required by ANSI C.
-
-Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
-<<lseek>>, <<read>>, <<sbrk>>, <<write>>.
-*/
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "%W% (Berkeley) %G%";
-#endif /* LIBC_SCCS and not lint */
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdio.h>
-#include <limits.h>
-#ifdef _HAVE_STDC
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
-
-#ifndef _REENT_ONLY
-
-int
-_DEFUN(vsniprintf, (str, size, fmt, ap),
- char *str _AND
- size_t size _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = (size > 0 ? size - 1 : 0);
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (_REENT, &f, fmt, ap);
- if (size > 0)
- *f._p = 0;
- return ret;
-}
-
-#endif /* !_REENT_ONLY */
-
-int
-_DEFUN(_vsniprintf_r, (ptr, str, size, fmt, ap),
- struct _reent *ptr _AND
- char *str _AND
- size_t size _AND
- _CONST char *fmt _AND
- va_list ap)
-{
- int ret;
- FILE f;
-
- f._flags = __SWR | __SSTR;
- f._bf._base = f._p = (unsigned char *) str;
- f._bf._size = f._w = (size > 0 ? size - 1 : 0);
- f._file = -1; /* No file. */
- ret = _vfiprintf_r (ptr, &f, fmt, ap);
- if (size > 0)
- *f._p = 0;
- return ret;
-}
diff --git a/newlib/libc/stdio/wbuf.c b/newlib/libc/stdio/wbuf.c
index e7ddb4913..29dd03e37 100644
--- a/newlib/libc/stdio/wbuf.c
+++ b/newlib/libc/stdio/wbuf.c
@@ -40,7 +40,7 @@ _DEFUN(__swbuf, (c, fp),
/* Ensure stdio has been initialized. */
- CHECK_INIT (_REENT);
+ CHECK_INIT (fp);
/*
* In case we cannot write, or longjmp takes us out early,
diff --git a/newlib/libc/stdio/wsetup.c b/newlib/libc/stdio/wsetup.c
index cf56c2abc..c1641dbe5 100644
--- a/newlib/libc/stdio/wsetup.c
+++ b/newlib/libc/stdio/wsetup.c
@@ -34,7 +34,7 @@ _DEFUN(__swsetup, (fp),
{
/* Make sure stdio is set up. */
- CHECK_INIT (_REENT);
+ CHECK_INIT (fp);
/*
* If we are not writing, we had better be reading and writing.
@@ -58,11 +58,9 @@ _DEFUN(__swsetup, (fp),
/*
* Make a buffer if necessary, then set _w.
- * A string I/O file should not explicitly allocate a buffer
- * unless asprintf is being used.
*/
- if (fp->_bf._base == NULL
- && (!(fp->_flags & __SSTR) || (fp->_flags & __SMBF)))
+ /* NOT NEEDED FOR CYGNUS SPRINTF ONLY jpg */
+ if (fp->_bf._base == NULL)
__smakebuf (fp);
if (fp->_flags & __SLBF)
diff --git a/newlib/libc/stdio64/fgetpos64.c b/newlib/libc/stdio64/fgetpos64.c
index 36f7ec90b..5f8c1c3ab 100644
--- a/newlib/libc/stdio64/fgetpos64.c
+++ b/newlib/libc/stdio64/fgetpos64.c
@@ -60,12 +60,15 @@ _DEFUN (_fgetpos64_r, (ptr, fp, pos),
FILE * fp _AND
_fpos64_t * pos)
{
+ _flockfile(fp);
*pos = (_fpos64_t)_ftello64_r (ptr, fp);
if (*pos != -1)
{
+ _funlockfile(fp);
return 0;
}
+ _funlockfile(fp);
return 1;
}
diff --git a/newlib/libc/stdio64/freopen64.c b/newlib/libc/stdio64/freopen64.c
index 6081e03dc..fc846595e 100644
--- a/newlib/libc/stdio64/freopen64.c
+++ b/newlib/libc/stdio64/freopen64.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1990, 2006 The Regents of the University of California.
+ * Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* Redistribution and use in source and binary forms are permitted
@@ -55,12 +55,6 @@ it).
<[file]> and <[mode]> are used just as in <<fopen>>.
-If <[file]> is <<NULL>>, the underlying stream is modified rather than
-closed. The file cannot be given a more permissive access mode (for
-example, a <[mode]> of "w" will fail on a read-only file descriptor),
-but can change status such as append or binary mode. If modification
-is not possible, failure occurs.
-
RETURNS
If successful, the result is the same as the argument <[fp]>. If the
file cannot be opened as specified, the result is <<NULL>>.
@@ -74,7 +68,6 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
#include <time.h>
#include <stdio.h>
-#include <errno.h>
#include <fcntl.h>
#include <stdlib.h>
#include <sys/lock.h>
@@ -94,15 +87,14 @@ _DEFUN (_freopen64_r, (ptr, file, mode, fp),
register FILE *fp)
{
register int f;
- int flags, oflags;
- int e = 0;
+ int flags, oflags, e;
__sfp_lock_acquire ();
- CHECK_INIT (ptr);
-
_flockfile(fp);
+ CHECK_INIT (fp);
+
if ((flags = __sflags (ptr, mode, &oflags)) == 0)
{
_funlockfile(fp);
@@ -125,60 +117,17 @@ _DEFUN (_freopen64_r, (ptr, file, mode, fp),
{
if (fp->_flags & __SWR)
(void) fflush (fp);
- /*
- * If close is NULL, closing is a no-op, hence pointless.
- * If file is NULL, the file should not be closed.
- */
- if (fp->_close != NULL && file != NULL)
+ /* if close is NULL, closing is a no-op, hence pointless */
+ if (fp->_close != NULL)
(void) (*fp->_close) (fp->_cookie);
}
/*
- * Now get a new descriptor to refer to the new file, or reuse the
- * existing file descriptor if file is NULL.
+ * Now get a new descriptor to refer to the new file.
*/
- if (file != NULL)
- {
- f = _open64_r (ptr, (char *) file, oflags, 0666);
- e = ptr->_errno;
- }
- else
- {
-#ifdef HAVE_FCNTL
- int oldflags;
- /*
- * Reuse the file descriptor, but only if the new access mode is
- * equal or less permissive than the old. F_SETFL correctly
- * ignores creation flags.
- */
- f = fp->_file;
- if ((oldflags = _fcntl_r (ptr, f, F_GETFL, 0)) == -1
- || ! ((oldflags & O_ACCMODE) == O_RDWR
- || ((oldflags ^ oflags) & O_ACCMODE) == 0)
- || _fcntl_r (ptr, f, F_SETFL, oflags) == -1)
- f = -1;
-#else
- /* We cannot modify without fcntl support. */
- f = -1;
-#endif
-
-#ifdef __SCLE
- /*
- * F_SETFL doesn't change textmode. Don't mess with modes of ttys.
- */
- if (0 <= f && ! isatty (f)
- && setmode (f, flags & (O_BINARY | O_TEXT)) == -1)
- f = -1;
-#endif
-
- if (f < 0)
- {
- e = EBADF;
- if (fp->_close != NULL)
- (void) (*fp->_close) (fp->_cookie);
- }
- }
+ f = _open64_r (ptr, (char *) file, oflags, 0666);
+ e = ptr->_errno;
/*
* Finish closing fp. Even if the open succeeded above,
diff --git a/newlib/libc/stdio64/fseeko64.c b/newlib/libc/stdio64/fseeko64.c
index edd764009..312883072 100644
--- a/newlib/libc/stdio64/fseeko64.c
+++ b/newlib/libc/stdio64/fseeko64.c
@@ -111,11 +111,11 @@ _DEFUN (_fseeko64_r, (ptr, fp, offset, whence),
struct stat64 st;
int havepos;
- /* Make sure stdio is set up. */
+ _flockfile(fp);
- CHECK_INIT (ptr);
+ /* Make sure stdio is set up. */
- _flockfile(fp);
+ CHECK_INIT (fp);
curoff = fp->_offset;
diff --git a/newlib/libc/stdio64/ftello64.c b/newlib/libc/stdio64/ftello64.c
index ef3317561..aaf0f023e 100644
--- a/newlib/libc/stdio64/ftello64.c
+++ b/newlib/libc/stdio64/ftello64.c
@@ -91,11 +91,11 @@ _DEFUN (_ftello64_r, (ptr, fp),
{
_fpos64_t pos;
- /* Ensure stdio is set up. */
+ _flockfile(fp);
- CHECK_INIT (ptr);
+ /* Ensure stdio is set up. */
- _flockfile(fp);
+ CHECK_INIT (fp);
if (fp->_seek64 == NULL)
{
diff --git a/newlib/libc/stdlib/__atexit.c b/newlib/libc/stdlib/__atexit.c
index 49eebb37e..04f494738 100644
--- a/newlib/libc/stdlib/__atexit.c
+++ b/newlib/libc/stdlib/__atexit.c
@@ -35,9 +35,6 @@ _DEFUN (__register_exitproc,
_GLOBAL_REENT->_atexit = p = &_GLOBAL_REENT->_atexit0;
if (p->_ind >= _ATEXIT_SIZE)
{
-#ifndef _ATEXIT_DYNAMIC_ALLOC
- return -1;
-#else
p = (struct _atexit *) malloc (sizeof *p);
if (p == NULL)
{
@@ -53,7 +50,6 @@ _DEFUN (__register_exitproc,
p->_on_exit_args._fntypes = 0;
p->_on_exit_args._is_cxa = 0;
#endif
-#endif
}
if (type != __et_atexit)
diff --git a/newlib/libc/stdlib/__call_atexit.c b/newlib/libc/stdlib/__call_atexit.c
index 6fa398ae2..cea569ff4 100644
--- a/newlib/libc/stdlib/__call_atexit.c
+++ b/newlib/libc/stdlib/__call_atexit.c
@@ -61,9 +61,6 @@ _DEFUN (__call_exitprocs, (code, d),
(*((void (*)(_PTR)) fn))(args->_fnargs[n]);
}
-#ifndef _ATEXIT_DYNAMIC_ALLOC
- break;
-#else
/* Move to the next block. Free empty blocks except the last one,
which is part of _GLOBAL_REENT. */
if (p->_ind == 0 && p->_next)
@@ -82,6 +79,5 @@ _DEFUN (__call_exitprocs, (code, d),
lastp = &p->_next;
p = p->_next;
}
-#endif
}
}
diff --git a/newlib/libc/stdlib/a64l.c b/newlib/libc/stdlib/a64l.c
index 42fc2d2fa..93c8e834b 100644
--- a/newlib/libc/stdlib/a64l.c
+++ b/newlib/libc/stdlib/a64l.c
@@ -1,6 +1,6 @@
/*
FUNCTION
-<<a64l>>, <<l64a>>---convert between radix-64 ASCII string and long
+<<a64l>>,<<l64a>>---convert between radix-64 ascii string and long
INDEX
a64l
@@ -21,36 +21,31 @@ TRAD_SYNOPSIS
long <[input]>;
DESCRIPTION
-Conversion is performed between long and radix-64 characters. The
-<<l64a>> routine transforms up to 32 bits of input value starting from
-least significant bits to the most significant bits. The input value
-is split up into a maximum of 5 groups of 6 bits and possibly one
-group of 2 bits (bits 31 and 30).
-
-Each group of 6 bits forms a value from 0--63 which is translated into
-a character as follows:
-
-O+
-o 0 = '.'
-o 1 = '/'
-o 2--11 = '0' to '9'
-o 12--37 = 'A' to 'Z'
-o 38--63 = 'a' to 'z'
-O-
-
-When the remaining bits are zero or all bits have been translated, a
-null terminator is appended to the string. An input value of 0
-results in the empty string.
-
-The <<a64l>> function performs the reverse translation. Each
-character is used to generate a 6-bit value for up to 30 bits and then
-a 2-bit value to complete a 32-bit result. The null terminator means
-that the remaining digits are 0. An empty input string or NULL string
-results in 0L. An invalid string results in undefined behavior. If
-the size of a long is greater than 32 bits, the result is sign-extended.
-
+Conversion is performed between long and radix-64 characters. The <<l64a>> routine
+transforms up to 32-bits of input value starting from least significant bits to
+the most significant bits. The input value is split up into a maximum of 5
+groups of 6-bits and possibly one group of 2 bits (bits 31 and 30).
+
+Each group of 6 bits forms a value from 0-63 which is translated into a character
+as follows:
+
+ 0 = '.'
+ 1 = '/'
+ 2-11 = '0' to '9'
+ 12-37 = 'A' to 'Z'
+ 38-63 = 'a' to 'z'
+
+When remaining bits are zero or all bits have been translated, a nul terminator
+is appended to the string. An input value of 0 results in the empty string.
+
+The <<a64l>> performs the reverse translation. Each character is used to generate
+a 6-bit value for up to 30 bits and then a 2-bit value to complete a 32-bit result.
+The nul terminator means that the remaining digits are 0. An empty input string or
+NULL string results in 0L. An invalid string results in undefined behavior.
+If the size of a long is > 32 bits, the result is sign-extended.
+
RETURNS
-<<l64a>> returns a null-terminated string of 0 to 6 characters.
+<<l64a>> returns a nul-terminated string of 0 to 6 characters.
<<a64l>> returns the 32-bit translated value from the input character string.
PORTABILITY
diff --git a/newlib/libc/stdlib/assert.c b/newlib/libc/stdlib/assert.c
index c9887da5c..5b08bbaf4 100644
--- a/newlib/libc/stdlib/assert.c
+++ b/newlib/libc/stdlib/assert.c
@@ -1,6 +1,6 @@
/*
FUNCTION
-<<assert>>---macro for debugging diagnostics
+<<assert>>---Macro for Debugging Diagnostics
INDEX
assert
diff --git a/newlib/libc/stdlib/efgcvt.c b/newlib/libc/stdlib/efgcvt.c
index 9aa3b2fe7..556d22414 100644
--- a/newlib/libc/stdlib/efgcvt.c
+++ b/newlib/libc/stdlib/efgcvt.c
@@ -1,6 +1,6 @@
/*
FUNCTION
-<<ecvt>>, <<ecvtf>>, <<fcvt>>, <<fcvtf>>---double or float to string
+<<ecvt>>,<<ecvtf>>,<<fcvt>>,<<fcvtf>>---double or float to string
INDEX
ecvt
diff --git a/newlib/libc/stdlib/envlock.c b/newlib/libc/stdlib/envlock.c
index 74c85a8f5..24d0083be 100644
--- a/newlib/libc/stdlib/envlock.c
+++ b/newlib/libc/stdlib/envlock.c
@@ -1,6 +1,6 @@
/*
FUNCTION
-<<__env_lock>>, <<__env_unlock>>---lock environ variable
+<<__env_lock>>, <<__env_unlock>>--lock environ variable
INDEX
__env_lock
diff --git a/newlib/libc/stdlib/getopt.c b/newlib/libc/stdlib/getopt.c
index 10002ed6b..b38938d5f 100644
--- a/newlib/libc/stdlib/getopt.c
+++ b/newlib/libc/stdlib/getopt.c
@@ -1,406 +1,117 @@
-/****************************************************************************
+/*
+ * Copyright (c) 1987, 1993, 1994
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+/* static char sccsid[] = "from: @(#)getopt.c 8.2 (Berkeley) 4/2/94"; */
+static char *rcsid = "$Id$";
+#endif /* LIBC_SCCS and not lint */
-getopt.c - Read command line options
-
-AUTHOR: Gregory Pietsch
-CREATED Fri Jan 10 21:13:05 1997
-
-DESCRIPTION:
-
-The getopt() function parses the command line arguments. Its arguments argc
-and argv are the argument count and array as passed to the main() function
-on program invocation. The argument optstring is a list of available option
-characters. If such a character is followed by a colon (`:'), the option
-takes an argument, which is placed in optarg. If such a character is
-followed by two colons, the option takes an optional argument, which is
-placed in optarg. If the option does not take an argument, optarg is NULL.
-
-The external variable optind is the index of the next array element of argv
-to be processed; it communicates from one call to the next which element to
-process.
-
-The getopt_long() function works like getopt() except that it also accepts
-long options started by two dashes `--'. If these take values, it is either
-in the form
-
---arg=value
-
- or
-
---arg value
-
-It takes the additional arguments longopts which is a pointer to the first
-element of an array of type struct option. The last element of the array
-has to be filled with NULL for the name field.
-
-The longind pointer points to the index of the current long option relative
-to longopts if it is non-NULL.
-
-The getopt() function returns the option character if the option was found
-successfully, `:' if there was a missing parameter for one of the options,
-`?' for an unknown option character, and EOF for the end of the option list.
-
-The getopt_long() function's return value is described in the header file.
-
-The function getopt_long_only() is identical to getopt_long(), except that a
-plus sign `+' can introduce long options as well as `--'.
-
-The following describes how to deal with options that follow non-option
-argv-elements.
-
-If the caller did not specify anything, the default is REQUIRE_ORDER if the
-environment variable POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
-REQUIRE_ORDER means don't recognize them as options; stop option processing
-when the first non-option is seen. This is what Unix does. This mode of
-operation is selected by either setting the environment variable
-POSIXLY_CORRECT, or using `+' as the first character of the optstring
-parameter.
-
-PERMUTE is the default. We permute the contents of ARGV as we scan, so that
-eventually all the non-options are at the end. This allows options to be
-given in any order, even with programs that were not written to expect this.
-
-RETURN_IN_ORDER is an option available to programs that were written to
-expect options and other argv-elements in any order and that care about the
-ordering of the two. We describe each non-option argv-element as if it were
-the argument of an option with character code 1. Using `-' as the first
-character of the optstring parameter selects this mode of operation.
-
-The special argument `--' forces an end of option-scanning regardless of the
-value of ordering. In the case of RETURN_IN_ORDER, only `--' can cause
-getopt() and friends to return EOF with optind != argc.
-
-COPYRIGHT NOTICE AND DISCLAIMER:
-
-Copyright (C) 1997 Gregory Pietsch
-
-This file and the accompanying getopt.h header file are hereby placed in the
-public domain without restrictions. Just give the author credit, don't
-claim you wrote it or prevent anyone else from using it.
-
-Gregory Pietsch's current e-mail address:
-gpietsch@comcast.net
-****************************************************************************/
-
-/* include files */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <getopt.h>
-/* macros */
+int opterr = 1, /* if error message should be printed */
+ optind = 1, /* index into parent argv vector */
+ optopt, /* character checked for validity */
+ optreset; /* reset getopt */
+char *optarg; /* argument associated with option */
-/* types */
-typedef enum GETOPT_ORDERING_T
-{
- PERMUTE,
- RETURN_IN_ORDER,
- REQUIRE_ORDER
-} GETOPT_ORDERING_T;
-
-/* globally-defined variables */
-char *optarg = NULL;
-int optind = 0;
-int opterr = 1;
-int optopt = '?';
-
-/* functions */
-
-/* reverse_argv_elements: reverses num elements starting at argv */
-static void
-reverse_argv_elements (char ** argv, int num)
-{
- int i;
- char *tmp;
-
- for (i = 0; i < (num >> 1); i++)
- {
- tmp = argv[i];
- argv[i] = argv[num - i - 1];
- argv[num - i - 1] = tmp;
- }
-}
-
-/* permute: swap two blocks of argv-elements given their lengths */
-static void
-permute (char *const argv[], int len1, int len2)
-{
- reverse_argv_elements ((char **)argv, len1);
- reverse_argv_elements ((char **)argv, len1 + len2);
- reverse_argv_elements ((char **)argv, len2);
-}
-
-/* is_option: is this argv-element an option or the end of the option list? */
-static int
-is_option (char *argv_element, int only)
-{
- return ((argv_element == NULL)
- || (argv_element[0] == '-') || (only && argv_element[0] == '+'));
-}
-
-/* getopt_internal: the function that does all the dirty work */
-static int
-getopt_internal (int argc, char *const argv[], const char *shortopts,
- const struct option *longopts, int *longind, int only)
-{
- GETOPT_ORDERING_T ordering = PERMUTE;
- static size_t optwhere = 0;
- size_t permute_from = 0;
- int num_nonopts = 0;
- int optindex = 0;
- size_t match_chars = 0;
- char *possible_arg = NULL;
- int longopt_match = -1;
- int has_arg = -1;
- char *cp;
- int arg_next = 0;
-
- /* first, deal with silly parameters and easy stuff */
- if (argc == 0 || argv == NULL || (shortopts == NULL && longopts == NULL))
- return EOF;
- if (optind >= argc || argv[optind] == NULL)
- return EOF;
- if (strcmp (argv[optind], "--") == 0)
- {
- optind++;
- return EOF;
- }
- /* if this is our first time through */
- if (optind == 0)
- optind = optwhere = 1;
-
- /* define ordering */
- if (shortopts != NULL && (*shortopts == '-' || *shortopts == '+'))
- {
- ordering = (*shortopts == '-') ? RETURN_IN_ORDER : REQUIRE_ORDER;
- shortopts++;
- }
- else
- ordering = (getenv ("POSIXLY_CORRECT") != NULL) ? REQUIRE_ORDER : PERMUTE;
-
- /*
- * based on ordering, find our next option, if we're at the beginning of
- * one
- */
- if (optwhere == 1)
- {
- switch (ordering)
- {
- case PERMUTE:
- permute_from = optind;
- num_nonopts = 0;
- while (!is_option (argv[optind], only))
- {
- optind++;
- num_nonopts++;
- }
- if (argv[optind] == NULL)
- {
- /* no more options */
- optind = permute_from;
- return EOF;
- }
- else if (strcmp (argv[optind], "--") == 0)
- {
- /* no more options, but have to get `--' out of the way */
- permute (argv + permute_from, num_nonopts, 1);
- optind = permute_from + 1;
- return EOF;
- }
- break;
- case RETURN_IN_ORDER:
- if (!is_option (argv[optind], only))
- {
- optarg = argv[optind++];
- return (optopt = 1);
- }
- break;
- case REQUIRE_ORDER:
- if (!is_option (argv[optind], only))
- return EOF;
- break;
- }
- }
- /* we've got an option, so parse it */
-
- /* first, is it a long option? */
- if (longopts != NULL
- && (memcmp (argv[optind], "--", 2) == 0
- || (only && argv[optind][0] == '+')) && optwhere == 1)
- {
- /* handle long options */
- if (memcmp (argv[optind], "--", 2) == 0)
- optwhere = 2;
- longopt_match = -1;
- possible_arg = strchr (argv[optind] + optwhere, '=');
- if (possible_arg == NULL)
- {
- /* no =, so next argv might be arg */
- match_chars = strlen (argv[optind]);
- possible_arg = argv[optind] + match_chars;
- match_chars = match_chars - optwhere;
- }
- else
- match_chars = (possible_arg - argv[optind]) - optwhere;
- for (optindex = 0; longopts[optindex].name != NULL; optindex++)
- {
- if (memcmp (argv[optind] + optwhere,
- longopts[optindex].name, match_chars) == 0)
- {
- /* do we have an exact match? */
- if (match_chars == (int) (strlen (longopts[optindex].name)))
- {
- longopt_match = optindex;
- break;
- }
- /* do any characters match? */
- else
- {
- if (longopt_match < 0)
- longopt_match = optindex;
- else
- {
- /* we have ambiguous options */
- if (opterr)
- fprintf (stderr, "%s: option `%s' is ambiguous "
- "(could be `--%s' or `--%s')\n",
- argv[0],
- argv[optind],
- longopts[longopt_match].name,
- longopts[optindex].name);
- return (optopt = '?');
- }
- }
- }
- }
- if (longopt_match >= 0)
- has_arg = longopts[longopt_match].has_arg;
- }
- /* if we didn't find a long option, is it a short option? */
- if (longopt_match < 0 && shortopts != NULL)
- {
- cp = strchr (shortopts, argv[optind][optwhere]);
- if (cp == NULL)
- {
- /* couldn't find option in shortopts */
- if (opterr)
- fprintf (stderr,
- "%s: invalid option -- `-%c'\n",
- argv[0], argv[optind][optwhere]);
- optwhere++;
- if (argv[optind][optwhere] == '\0')
- {
- optind++;
- optwhere = 1;
- }
- return (optopt = '?');
- }
- has_arg = ((cp[1] == ':')
- ? ((cp[2] == ':') ? OPTIONAL_ARG : REQUIRED_ARG) : NO_ARG);
- possible_arg = argv[optind] + optwhere + 1;
- optopt = *cp;
- }
- /* get argument and reset optwhere */
- arg_next = 0;
- switch (has_arg)
- {
- case OPTIONAL_ARG:
- if (*possible_arg == '=')
- possible_arg++;
- if (*possible_arg != '\0')
- {
- optarg = possible_arg;
- optwhere = 1;
- }
- else
- optarg = NULL;
- break;
- case REQUIRED_ARG:
- if (*possible_arg == '=')
- possible_arg++;
- if (*possible_arg != '\0')
- {
- optarg = possible_arg;
- optwhere = 1;
- }
- else if (optind + 1 >= argc)
- {
- if (opterr)
- {
- fprintf (stderr, "%s: argument required for option `", argv[0]);
- if (longopt_match >= 0)
- fprintf (stderr, "--%s'\n", longopts[longopt_match].name);
- else
- fprintf (stderr, "-%c'\n", *cp);
- }
- optind++;
- return (optopt = ':');
- }
- else
- {
- optarg = argv[optind + 1];
- arg_next = 1;
- optwhere = 1;
- }
- break;
- case NO_ARG:
- if (longopt_match < 0)
- {
- optwhere++;
- if (argv[optind][optwhere] == '\0')
- optwhere = 1;
- }
- else
- optwhere = 1;
- optarg = NULL;
- break;
- }
-
- /* do we have to permute or otherwise modify optind? */
- if (ordering == PERMUTE && optwhere == 1 && num_nonopts != 0)
- {
- permute (argv + permute_from, num_nonopts, 1 + arg_next);
- optind = permute_from + 1 + arg_next;
- }
- else if (optwhere == 1)
- optind = optind + 1 + arg_next;
-
- /* finally return */
- if (longopt_match >= 0)
- {
- if (longind != NULL)
- *longind = longopt_match;
- if (longopts[longopt_match].flag != NULL)
- {
- *(longopts[longopt_match].flag) = longopts[longopt_match].val;
- return 0;
- }
- else
- return longopts[longopt_match].val;
- }
- else
- return optopt;
-}
+#define BADCH (int)'?'
+#define BADARG (int)':'
+#define EMSG ""
+/*
+ * getopt --
+ * Parse argc/argv argument vector.
+ */
int
-getopt (int argc, char *const argv[], const char *optstring)
+getopt(nargc, nargv, ostr)
+ int nargc;
+ char * const *nargv;
+ const char *ostr;
{
- return getopt_internal (argc, argv, optstring, NULL, NULL, 0);
+ static char *place = EMSG; /* option letter processing */
+ char *oli; /* option letter list index */
+
+ if (optreset || !*place) { /* update scanning pointer */
+ optreset = 0;
+ if (optind >= nargc || *(place = nargv[optind]) != '-') {
+ place = EMSG;
+ return (-1);
+ }
+ if (place[1] && *++place == '-') { /* found "--" */
+ ++optind;
+ place = EMSG;
+ return (-1);
+ }
+ } /* option letter okay? */
+ if ((optopt = (int)*place++) == (int)':' ||
+ !(oli = strchr(ostr, optopt))) {
+ /*
+ * if the user didn't specify '-' as an option,
+ * assume it means -1.
+ */
+ if (optopt == (int)'-')
+ return (-1);
+ if (!*place)
+ ++optind;
+ if (opterr && *ostr != ':')
+ (void)fprintf(stderr,
+ "%s: illegal option -- %c\n", nargv[0], optopt);
+ return (BADCH);
+ }
+ if (*++oli != ':') { /* don't need argument */
+ optarg = NULL;
+ if (!*place)
+ ++optind;
+ }
+ else { /* need an argument */
+ if (*place) /* no white space */
+ optarg = place;
+ else if (nargc <= ++optind) { /* no arg */
+ place = EMSG;
+ if (*ostr == ':')
+ return (BADARG);
+ if (opterr)
+ (void)fprintf(stderr,
+ "%s: option requires an argument -- %c\n",
+ nargv[0], optopt);
+ return (BADCH);
+ }
+ else /* white space */
+ optarg = nargv[optind];
+ place = EMSG;
+ ++optind;
+ }
+ return (optopt); /* dump back option letter */
}
-
-int
-getopt_long (int argc, char *const argv[], const char *shortopts,
- const struct option *longopts, int *longind)
-{
- return getopt_internal (argc, argv, shortopts, longopts, longind, 0);
-}
-
-int
-getopt_long_only (int argc, char *const argv[], const char *shortopts,
- const struct option *longopts, int *longind)
-{
- return getopt_internal (argc, argv, shortopts, longopts, longind, 1);
-}
-
-/* end of file GETOPT.C */
diff --git a/newlib/libc/stdlib/ldtoa.c b/newlib/libc/stdlib/ldtoa.c
index 6a29dda9b..7af35d5e8 100644
--- a/newlib/libc/stdlib/ldtoa.c
+++ b/newlib/libc/stdlib/ldtoa.c
@@ -80,12 +80,6 @@ static void einfin(register short unsigned int *x, register LDPARMS *ldp);
static void efloor(short unsigned int *x, short unsigned int *y, LDPARMS *ldp);
static void etoasc(short unsigned int *x, char *string, int ndigs, int outformat, LDPARMS *ldp);
-union uconv
-{
- unsigned short pe;
- long double d;
-};
-
#if LDBL_MANT_DIG == 24
static void e24toe(short unsigned int *pe, short unsigned int *y, LDPARMS *ldp);
#elif LDBL_MANT_DIG == 53
@@ -2718,8 +2712,6 @@ LDPARMS rnd;
LDPARMS *ldp = &rnd;
char *outstr;
char outbuf[NDEC + MAX_EXP_DIGITS + 10];
-union uconv du;
-du.d = d;
orig_ndigits = ndigits;
rnd.rlast = -1;
@@ -2737,13 +2729,13 @@ if (_REENT_MP_RESULT(ptr))
}
#if LDBL_MANT_DIG == 24
-e24toe( &du.pe, e, ldp );
+e24toe( (unsigned short *)&d, e, ldp );
#elif LDBL_MANT_DIG == 53
-e53toe( &du.pe, e, ldp );
+e53toe( (unsigned short *)&d, e, ldp );
#elif LDBL_MANT_DIG == 64
-e64toe( &du.pe, e, ldp );
+e64toe( (unsigned short *)&d, e, ldp );
#else
-e113toe( &du.pe, e, ldp );
+e113toe( (unsigned short *)&d, e, ldp );
#endif
if( eisneg(e) )
@@ -2872,16 +2864,14 @@ LDPARMS *ldp = &rnd;
rnd.rlast = -1;
rnd.rndprc = NBITS;
-union uconv du;
-du.d = *d;
#if LDBL_MANT_DIG == 24
-e24toe( &du.pe, e, ldp );
+e24toe( (unsigned short *)d, e, ldp );
#elif LDBL_MANT_DIG == 53
-e53toe( &du.pe, e, ldp );
+e53toe( (unsigned short *)d, e, ldp );
#elif LDBL_MANT_DIG == 64
-e64toe( &du.pe, e, ldp );
+e64toe( (unsigned short *)d, e, ldp );
#else
-e113toe( &du.pe, e, ldp );
+e113toe( (unsigned short *)d, e, ldp );
#endif
if( (e[NE-1] & 0x7fff) == 0x7fff )
@@ -3230,7 +3220,7 @@ ldp->outexpon = expon;
long double _strtold (char *s, char **se)
{
- union uconv x;
+ long double x;
LDPARMS rnd;
LDPARMS *ldp = &rnd;
int lenldstr;
@@ -3238,10 +3228,10 @@ long double _strtold (char *s, char **se)
rnd.rlast = -1;
rnd.rndprc = NBITS;
- lenldstr = asctoeg( s, &x.pe, LDBL_MANT_DIG, ldp );
+ lenldstr = asctoeg( s, (unsigned short *)&x, LDBL_MANT_DIG, ldp );
if (se)
*se = s + lenldstr;
- return x.d;
+ return x;
}
#define REASONABLE_LEN 200
diff --git a/newlib/libc/stdlib/mallocr.c b/newlib/libc/stdlib/mallocr.c
index cfa25545f..08a3b00fd 100644
--- a/newlib/libc/stdlib/mallocr.c
+++ b/newlib/libc/stdlib/mallocr.c
@@ -268,7 +268,6 @@ extern "C" {
#include <stdio.h> /* needed for malloc_stats */
#include <limits.h> /* needed for overflow checks */
-#include <errno.h> /* needed to set errno to ENOMEM */
#ifdef WIN32
#define WIN32_LEAN_AND_MEAN
@@ -336,7 +335,6 @@ extern void __malloc_unlock();
#define RDECL struct _reent *reent_ptr;
#endif
-#define RERRNO reent_ptr->_errno
#define RCALL reent_ptr,
#define RONECALL reent_ptr
@@ -346,7 +344,6 @@ extern void __malloc_unlock();
#define RARG
#define RONEARG
#define RDECL
-#define RERRNO errno
#define RCALL
#define RONECALL
@@ -490,10 +487,6 @@ extern void __malloc_unlock();
#define HAVE_MEMCPY
-/* Although the original macro is called USE_MEMCPY, newlib actually
- uses memmove to handle cases whereby a platform's memcpy implementation
- copies backwards and thus destructive overlap may occur in realloc
- whereby we are reclaiming free memory prior to the old allocation. */
#ifndef USE_MEMCPY
#ifdef HAVE_MEMCPY
#define USE_MEMCPY 1
@@ -507,11 +500,9 @@ extern void __malloc_unlock();
#if __STD_C
void* memset(void*, int, size_t);
void* memcpy(void*, const void*, size_t);
-void* memmove(void*, const void*, size_t);
#else
Void_t* memset();
Void_t* memcpy();
-Void_t* memmove();
#endif
#endif
@@ -553,7 +544,7 @@ do { \
*mcdst++ = *mcsrc++; \
*mcdst++ = *mcsrc++; \
*mcdst = *mcsrc ; \
- } else memmove(dest, src, mcsz); \
+ } else memcpy(dest, src, mcsz); \
} while(0)
#else /* !USE_MEMCPY */
@@ -2344,10 +2335,7 @@ Void_t* mALLOc(RARG bytes) RDECL size_t bytes;
/* Check for overflow and just fail, if so. */
if (nb > INT_MAX || nb < bytes)
- {
- RERRNO = ENOMEM;
return 0;
- }
MALLOC_LOCK;
@@ -2810,10 +2798,7 @@ Void_t* rEALLOc(RARG oldmem, bytes) RDECL Void_t* oldmem; size_t bytes;
/* Check for overflow and just fail, if so. */
if (nb > INT_MAX || nb < bytes)
- {
- RERRNO = ENOMEM;
return 0;
- }
#if HAVE_MMAP
if (chunk_is_mmapped(oldp))
@@ -3046,10 +3031,7 @@ Void_t* mEMALIGn(RARG alignment, bytes) RDECL size_t alignment; size_t bytes;
/* Check for overflow. */
if (nb > INT_MAX || nb < bytes)
- {
- RERRNO = ENOMEM;
return 0;
- }
m = (char*)(mALLOc(RCALL nb + alignment + MINSIZE));
@@ -3502,7 +3484,7 @@ void malloc_stats(RONEARG) RDECL
MALLOC_UNLOCK;
#ifdef INTERNAL_NEWLIB
- _REENT_SMALL_CHECK_INIT(reent_ptr);
+ _REENT_SMALL_CHECK_INIT(_stderr_r (reent_ptr));
fp = _stderr_r(reent_ptr);
#define fprintf fiprintf
#else
diff --git a/newlib/libc/stdlib/mlock.c b/newlib/libc/stdlib/mlock.c
index 888c986a9..378b4e691 100644
--- a/newlib/libc/stdlib/mlock.c
+++ b/newlib/libc/stdlib/mlock.c
@@ -1,7 +1,7 @@
#ifndef MALLOC_PROVIDED
/*
FUNCTION
-<<__malloc_lock>>, <<__malloc_unlock>>---lock malloc pool
+<<__malloc_lock>>, <<__malloc_unlock>>--lock malloc pool
INDEX
__malloc_lock
diff --git a/newlib/libc/stdlib/mstats.c b/newlib/libc/stdlib/mstats.c
index ba89f494d..2b6c6bc19 100644
--- a/newlib/libc/stdlib/mstats.c
+++ b/newlib/libc/stdlib/mstats.c
@@ -10,7 +10,7 @@ int _dummy_mstats = 1;
/*
FUNCTION
-<<mallinfo>>, <<malloc_stats>>, <<mallopt>>---malloc support
+<<mallinfo>>, <<malloc_stats>>, <<mallopt>>--malloc support
INDEX
mallinfo
@@ -140,7 +140,7 @@ _DEFUN (_mstats_r, (ptr, s),
struct _reent *ptr _AND
char *s)
{
- _REENT_SMALL_CHECK_INIT(ptr);
+ _REENT_SMALL_CHECK_INIT(_stderr_r (ptr));
fiprintf (_stderr_r (ptr), "Memory allocation statistics %s\n", s);
_malloc_stats_r (ptr);
}
diff --git a/newlib/libc/stdlib/putenv.c b/newlib/libc/stdlib/putenv.c
index 978f7c5d6..8ee67d7d5 100644
--- a/newlib/libc/stdlib/putenv.c
+++ b/newlib/libc/stdlib/putenv.c
@@ -24,7 +24,7 @@
int
_DEFUN (putenv, (str),
- char *str)
+ _CONST char *str)
{
return _putenv_r (_REENT, str);
}
diff --git a/newlib/libc/stdlib/putenv_r.c b/newlib/libc/stdlib/putenv_r.c
index 9ba626025..a03f3b007 100644
--- a/newlib/libc/stdlib/putenv_r.c
+++ b/newlib/libc/stdlib/putenv_r.c
@@ -33,7 +33,7 @@
int
_DEFUN (_putenv_r, (reent_ptr, str),
struct _reent *reent_ptr _AND
- char *str)
+ _CONST char *str)
{
register char *p, *equal;
int rval;
diff --git a/newlib/libc/stdlib/rand.c b/newlib/libc/stdlib/rand.c
index 6a46aa807..4f5a60796 100644
--- a/newlib/libc/stdlib/rand.c
+++ b/newlib/libc/stdlib/rand.c
@@ -51,8 +51,8 @@ number between <<0>> and <<RAND_MAX>> (inclusive).
<<srand>> does not return a result.
NOTES
-<<rand>> and <<srand>> are unsafe for multi-threaded applications.
-<<rand_r>> is thread-safe and should be used instead.
+<<rand>> and <<srand>> are unsafe for multi-thread applications.
+<<rand_r>> is MT-Safe and should be used instead.
PORTABILITY
diff --git a/newlib/libc/stdlib/rand48.c b/newlib/libc/stdlib/rand48.c
index af2be3c07..17fd04e92 100644
--- a/newlib/libc/stdlib/rand48.c
+++ b/newlib/libc/stdlib/rand48.c
@@ -13,7 +13,7 @@
/*
FUNCTION
- <<rand48>>, <<drand48>>, <<erand48>>, <<lrand48>>, <<nrand48>>, <<mrand48>>, <<jrand48>>, <<srand48>>, <<seed48>>, <<lcong48>>---pseudo-random number generators and initialization routines
+ <<rand48>>, <<drand48>>, <<erand48>>, <<lrand48>>, <<nrand48>>, <<mrand48>>, <<jrand48>>, <<srand48>>, <<seed48>>, <<lcong48>> ---pseudo random number generators and initialization routines
INDEX
rand48
diff --git a/newlib/libc/stdlib/setenv_r.c b/newlib/libc/stdlib/setenv_r.c
index 694bd14a9..f06dc6772 100644
--- a/newlib/libc/stdlib/setenv_r.c
+++ b/newlib/libc/stdlib/setenv_r.c
@@ -122,7 +122,7 @@ _DEFUN (_setenv_r, (reent_ptr, name, value, rewrite),
ENV_UNLOCK;
/* if we are setting the TZ environment variable, update timezone info */
- if (strncmp ((*p_environ)[offset], "TZ=", 3) == 0)
+ if (strcmp (name, "TZ") == 0)
tzset ();
return 0;
diff --git a/newlib/libc/stdlib/strtod.c b/newlib/libc/stdlib/strtod.c
index 9b70dfc3c..19467f495 100644
--- a/newlib/libc/stdlib/strtod.c
+++ b/newlib/libc/stdlib/strtod.c
@@ -111,16 +111,15 @@ _DEFUN (_strtod_r, (ptr, s00, se),
int bb2, bb5, bbe, bd2, bd5, bbbits, bs2, c, dsign, e1, esign, i, j,
k, nd, nd0, nf, nz, nz0, sign;
long e;
- _CONST char *s, *s0, *s1, *s2;
+ _CONST char *s, *s0, *s1;
double aadj, aadj1, adj;
long L;
unsigned long z;
__ULong y;
union double_union rv, rv0;
- int nanflag;
_Bigint *bb, *bb1, *bd, *bd0, *bs, *delta;
- sign = nz0 = nz = nanflag = 0;
+ sign = nz0 = nz = 0;
rv.d = 0.;
for (s = s00;; s++)
switch (*s)
@@ -146,23 +145,7 @@ _DEFUN (_strtod_r, (ptr, s00, se),
goto break2;
}
break2:
- if (*s == 'n' || *s == 'N')
- {
- ++s;
- if (*s == 'a' || *s == 'A')
- {
- ++s;
- if (*s == 'n' || *s == 'N')
- {
- nanflag = 1;
- ++s;
- goto ret;
- }
- }
- s = s00;
- goto ret;
- }
- else if (*s == '0')
+ if (*s == '0')
{
nz0 = 1;
while (*++s == '0');
@@ -222,7 +205,7 @@ dig_done:
s = s00;
goto ret;
}
- s2 = s;
+ s00 = s;
esign = 0;
switch (c = *++s)
{
@@ -253,7 +236,7 @@ dig_done:
e = 0;
}
else
- s = s2;
+ s = s00;
}
if (!nd)
{
@@ -725,10 +708,7 @@ retfree:
ret:
if (se)
*se = (char *) s;
-
- if (nanflag)
- return nan (NULL);
- return (sign && (s != s00)) ? -rv.d : rv.d;
+ return sign ? -rv.d : rv.d;
}
#ifndef NO_REENT
@@ -745,10 +725,7 @@ _DEFUN (strtof, (s00, se),
_CONST char *s00 _AND
char **se)
{
- double retval = _strtod_r (_REENT, s00, se);
- if (isnan (retval))
- return nanf (NULL);
- return (float)retval;
+ return (float)_strtod_r (_REENT, s00, se);
}
#endif
diff --git a/newlib/libc/string/bcmp.c b/newlib/libc/string/bcmp.c
index e8d057352..23e7c26a2 100644
--- a/newlib/libc/string/bcmp.c
+++ b/newlib/libc/string/bcmp.c
@@ -21,6 +21,8 @@ DESCRIPTION
object pointed to by <[s1]> with the object pointed to by <[s2]>.
This function is identical to <<memcmp>>.
+
+
RETURNS
The function returns an integer greater than, equal to or
diff --git a/newlib/libc/string/memchr.c b/newlib/libc/string/memchr.c
index 7c1a584b7..2fd3c861d 100644
--- a/newlib/libc/string/memchr.c
+++ b/newlib/libc/string/memchr.c
@@ -28,9 +28,9 @@ RETURNS
<[c]> is not found, then <<NULL>> is returned.
PORTABILITY
-<<memchr>> is ANSI C.
+<<memchr>>> is ANSI C.
-<<memchr>> requires no supporting OS subroutines.
+<<memchr>> requires no supporting OS subroutines.
QUICKREF
memchr ansi pure
diff --git a/newlib/libc/string/memcmp.c b/newlib/libc/string/memcmp.c
index 4a871fa60..ac7a194a6 100644
--- a/newlib/libc/string/memcmp.c
+++ b/newlib/libc/string/memcmp.c
@@ -95,8 +95,8 @@ _DEFUN (memcmp, (m1, m2, n),
/* check m mod LBLOCKSIZE remaining characters */
- s1 = (unsigned char*)a1;
- s2 = (unsigned char*)a2;
+ s1 = (char*)a1;
+ s2 = (char*)a2;
}
while (n--)
diff --git a/newlib/libc/string/strcasecmp.c b/newlib/libc/string/strcasecmp.c
index f96f7f5c9..4dcfc784a 100644
--- a/newlib/libc/string/strcasecmp.c
+++ b/newlib/libc/string/strcasecmp.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strcasecmp>>---case-insensitive character string compare
+ <<strcasecmp>>---case insensitive character string compare
INDEX
strcasecmp
@@ -22,7 +22,7 @@ DESCRIPTION
RETURNS
If <<*<[a]>>> sorts lexicographically after <<*<[b]>>> (after
- both are converted to uppercase), <<strcasecmp>> returns a
+ both are converted to upper case), <<strcasecmp>> returns a
number greater than zero. If the two strings match,
<<strcasecmp>> returns zero. If <<*<[a]>>> sorts
lexicographically before <<*<[b]>>>, <<strcasecmp>> returns a
diff --git a/newlib/libc/string/strcoll.c b/newlib/libc/string/strcoll.c
index 65dc38037..8760b2217 100644
--- a/newlib/libc/string/strcoll.c
+++ b/newlib/libc/string/strcoll.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strcoll>>---locale-specific character string compare
+ <<strcoll>>---locale specific character string compare
INDEX
strcoll
diff --git a/newlib/libc/string/strcspn.c b/newlib/libc/string/strcspn.c
index 403330c94..fe68b8f51 100644
--- a/newlib/libc/string/strcspn.c
+++ b/newlib/libc/string/strcspn.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strcspn>>---count characters not in string
+ <<strcspn>>---count chars not in string
INDEX
strcspn
diff --git a/newlib/libc/string/strerror_r.c b/newlib/libc/string/strerror_r.c
index be5358f3e..956a1f485 100644
--- a/newlib/libc/string/strerror_r.c
+++ b/newlib/libc/string/strerror_r.c
@@ -30,7 +30,7 @@ This function returns a pointer to a string. Your application must
not modify that string.
PORTABILITY
-<<strerror_r>> is a GNU extension.
+<<strerror_r>> is a gnu extension.
<<strerror_r>> requires no supporting OS subroutines.
diff --git a/newlib/libc/string/strings.tex b/newlib/libc/string/strings.tex
index 3ca732f79..4e1a2cd16 100644
--- a/newlib/libc/string/strings.tex
+++ b/newlib/libc/string/strings.tex
@@ -22,13 +22,13 @@ managing areas of memory. The corresponding declarations are in
* strcat:: Concatenate strings
* strchr:: Search for character in string
* strcmp:: Character string compare
-* strcoll:: Locale-specific character string compare
+* strcoll:: Locale specific character string compare
* strcpy:: Copy string
* strcspn:: Count chars not in string
* strerror:: Convert error number to string
* strerror_r:: Convert error number to string
* strlen:: Character string length
-* strlwr:: Convert string to lowercase
+* strlwr:: Convert string to lower case
* strncasecmp:: Compare strings ignoring case
* strncat:: Concatenate strings
* strncmp:: Character string compare
diff --git a/newlib/libc/string/strlwr.c b/newlib/libc/string/strlwr.c
index 47096d430..cf0d45f71 100644
--- a/newlib/libc/string/strlwr.c
+++ b/newlib/libc/string/strlwr.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strlwr>>---force string to lowercase
+ <<strlwr>>---force string to lower case
INDEX
strlwr
@@ -15,8 +15,8 @@ TRAD_SYNOPSIS
char *<[a]>;
DESCRIPTION
- <<strlwr>> converts each character in the string at <[a]> to
- lowercase.
+ <<strlwr>> converts each characters in the string at <[a]> to
+ lower case.
RETURNS
<<strlwr>> returns its argument, <[a]>.
diff --git a/newlib/libc/string/strncasecmp.c b/newlib/libc/string/strncasecmp.c
index c877ba53c..28c6cc44f 100644
--- a/newlib/libc/string/strncasecmp.c
+++ b/newlib/libc/string/strncasecmp.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strncasecmp>>---case-insensitive character string compare
+ <<strncasecmp>>---case insensitive character string compare
INDEX
strncasecmp
@@ -24,7 +24,7 @@ DESCRIPTION
RETURNS
If <<*<[a]>>> sorts lexicographically after <<*<[b]>>> (after
- both are converted to uppercase), <<strncasecmp>> returns a
+ both are converted to upper case), <<strncasecmp>> returns a
number greater than zero. If the two strings are equivalent,
<<strncasecmp>> returns zero. If <<*<[a]>>> sorts
lexicographically before <<*<[b]>>>, <<strncasecmp>> returns a
diff --git a/newlib/libc/string/strncat.c b/newlib/libc/string/strncat.c
index 0f29247a8..57ca068eb 100644
--- a/newlib/libc/string/strncat.c
+++ b/newlib/libc/string/strncat.c
@@ -28,6 +28,7 @@ WARNINGS
Note that a null is always appended, so that if the copy is
limited by the <[length]> argument, the number of characters
appended to <[dst]> is <<n + 1>>.
+
RETURNS
This function returns the initial value of <[dst]>
diff --git a/newlib/libc/string/strndup_r.c b/newlib/libc/string/strndup_r.c
index 2acf63dec..86d9eec44 100644
--- a/newlib/libc/string/strndup_r.c
+++ b/newlib/libc/string/strndup_r.c
@@ -2,22 +2,16 @@
#include <stdlib.h>
#include <string.h>
+#define MIN(a,b) ((a) < (b) ? (a) : (b))
+
char *
_DEFUN (_strndup_r, (reent_ptr, str, n),
struct _reent *reent_ptr _AND
_CONST char *str _AND
size_t n)
{
- _CONST char *ptr = str;
- size_t len;
- char *copy;
-
- while (n-- > 0 && *ptr)
- ptr++;
-
- len = ptr - str;
-
- copy = _malloc_r (reent_ptr, len + 1);
+ size_t len = MIN(strlen (str), n);
+ char *copy = _malloc_r (reent_ptr, len + 1);
if (copy)
{
memcpy (copy, str, len);
diff --git a/newlib/libc/string/strnlen.c b/newlib/libc/string/strnlen.c
index ed60e9371..b9a3b5e77 100644
--- a/newlib/libc/string/strnlen.c
+++ b/newlib/libc/string/strnlen.c
@@ -25,7 +25,7 @@ RETURNS
<<strnlen>> returns the character count or <[n]>.
PORTABILITY
-<<strnlen>> is a GNU extension.
+<<strnlen>> is a Gnu extension.
<<strnlen>> requires no supporting OS subroutines.
@@ -42,7 +42,7 @@ _DEFUN (strnlen, (str, n),
{
_CONST char *start = str;
- while (n-- > 0 && *str)
+ while (*str && n-- > 0)
str++;
return str - start;
diff --git a/newlib/libc/string/strpbrk.c b/newlib/libc/string/strpbrk.c
index 5668db395..e7f2dd2b6 100644
--- a/newlib/libc/string/strpbrk.c
+++ b/newlib/libc/string/strpbrk.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strpbrk>>---find characters in string
+ <<strpbrk>>---find chars in string
INDEX
strpbrk
diff --git a/newlib/libc/string/strtok.c b/newlib/libc/string/strtok.c
index 7640fb73d..8d53290c7 100644
--- a/newlib/libc/string/strtok.c
+++ b/newlib/libc/string/strtok.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<strtok>>, <<strtok_r>>, <<strsep>>---get next token from a string
+ <<strtok>>,<<strtok_r>>,<<strsep>>---get next token from a string
INDEX
strtok
@@ -40,25 +40,25 @@ DESCRIPTION
The first time that <<strtok>> is called, <<*<[source]>>> should be
specified; subsequent calls, wishing to obtain further tokens from
the same string, should pass a null pointer instead. The separator
- string, <<*<[delimiters]>>>, must be supplied each time and may
+ string, <<*<[delimiters]>>>, must be supplied each time, and may
change between calls.
The <<strtok>> function returns a pointer to the beginning of each
subsequent token in the string, after replacing the separator
- character itself with a null character. When no more tokens remain,
+ character itself with a NUL character. When no more tokens remain,
a null pointer is returned.
The <<strtok_r>> function has the same behavior as <<strtok>>, except
- a pointer to placeholder <<*<[lasts]>>> must be supplied by the caller.
+ a pointer to placeholder <<*[lasts]>> must be supplied by the caller.
The <<strsep>> function is similar in behavior to <<strtok>>, except
- a pointer to the string pointer must be supplied <<<[source_ptr]>>> and
- the function does not skip leading delimiters. When the string starts
- with a delimiter, the delimiter is changed to the null character and
+ a pointer to the string pointer must be supplied <<[source_ptr]>> and
+ the function does not skip leading delimeters. When the string starts
+ with a delimeter, the delimeter is changed to the NUL character and
the empty string is returned. Like <<strtok_r>> and <<strtok>>, the
- <<*<[source_ptr]>>> is updated to the next character following the
- last delimiter found or NULL if the end of string is reached with
- no more delimiters.
+ <<*[source_ptr]>> is updated to the next character following the
+ last delimeter found or NULL if the end of string is reached with
+ no more delimeters.
RETURNS
<<strtok>>, <<strtok_r>>, and <<strsep>> all return a pointer to the
@@ -66,13 +66,13 @@ RETURNS
<<strsep>>, a token may be the empty string.
NOTES
- <<strtok>> is unsafe for multi-threaded applications. <<strtok_r>>
- and <<strsep>> are thread-safe and should be used instead.
+ <<strtok>> is unsafe for multi-thread applications. <<strtok_r>>
+ and <<strsep>> are MT-Safe and should be used instead.
PORTABILITY
<<strtok>> is ANSI C.
<<strtok_r>> is POSIX.
-<<strsep>> is a BSD extension.
+<<strsep>> is a BSD-extension.
<<strtok>>, <<strtok_r>>, and <<strsep>> require no supporting OS subroutines.
diff --git a/newlib/libc/string/strupr.c b/newlib/libc/string/strupr.c
index 3f346b840..d7f7c129d 100644
--- a/newlib/libc/string/strupr.c
+++ b/newlib/libc/string/strupr.c
@@ -15,8 +15,8 @@ TRAD_SYNOPSIS
char *<[a]>;
DESCRIPTION
- <<strupr>> converts each character in the string at <[a]> to
- uppercase.
+ <<strupr>> converts each characters in the string at <[a]> to
+ upper case.
RETURNS
<<strupr>> returns its argument, <[a]>.
diff --git a/newlib/libc/string/wcscat.c b/newlib/libc/string/wcscat.c
index 54c0b503b..b3a3bd987 100644
--- a/newlib/libc/string/wcscat.c
+++ b/newlib/libc/string/wcscat.c
@@ -27,7 +27,6 @@ RETURNS
PORTABILITY
<<wcscat>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcschr.c b/newlib/libc/string/wcschr.c
index fb35d1f42..acc07a521 100644
--- a/newlib/libc/string/wcschr.c
+++ b/newlib/libc/string/wcschr.c
@@ -24,7 +24,6 @@ RETURNS
PORTABILITY
<<wcschr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcscmp.c b/newlib/libc/string/wcscmp.c
index 03089620d..279f3a90c 100644
--- a/newlib/libc/string/wcscmp.c
+++ b/newlib/libc/string/wcscmp.c
@@ -26,7 +26,6 @@ RETURNS
PORTABILITY
<<wcscmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcscoll.c b/newlib/libc/string/wcscoll.c
index 0f0513a58..9287af38c 100644
--- a/newlib/libc/string/wcscoll.c
+++ b/newlib/libc/string/wcscoll.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wcscoll>>---locale-specific wide-character string compare
+ <<wcscoll>>---locale specific wide-character string compare
INDEX
wcscoll
diff --git a/newlib/libc/string/wcscpy.c b/newlib/libc/string/wcscpy.c
index ede693d9c..5a72338ce 100644
--- a/newlib/libc/string/wcscpy.c
+++ b/newlib/libc/string/wcscpy.c
@@ -23,7 +23,6 @@ RETURNS
PORTABILITY
<<wcscpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcscspn.c b/newlib/libc/string/wcscspn.c
index 5ab965690..7e53cc15d 100644
--- a/newlib/libc/string/wcscspn.c
+++ b/newlib/libc/string/wcscspn.c
@@ -23,7 +23,6 @@ RETURNS
PORTABILITY
<<wcscspn>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcslcat.c b/newlib/libc/string/wcslcat.c
index 75c085b5b..adf683ad5 100644
--- a/newlib/libc/string/wcslcat.c
+++ b/newlib/libc/string/wcslcat.c
@@ -14,12 +14,12 @@ TRAD_SYNOPSIS
size_t <[siz]>;
DESCRIPTION
- The <<wcslcat>> function appends wide characters from <[src]> to
+ The <<wcslcat>> function appends wide-characters from <[src]> to
end of the <[dst]> wide-character string so that the resultant
- wide-character string is not more than <[siz]> wide characters
- including the terminating null wide-character code. A terminating
- null wide character is always added unless <[siz]> is 0. Thus,
- the maximum number of wide characters that can be appended from
+ wide-character string is not more than <[siz]> wide-characters
+ including terminating null wide-character code. A terminating
+ null wide-character is always added unless <[siz]> is 0. Thus,
+ the maximum number of wide-characters that can be appended from
<[src]> is <[siz]> - 1. If copying takes place between objects
that overlap, the behaviour is undefined.
@@ -28,7 +28,7 @@ RETURNS
wide-character string length of <[src]> (does not include
terminating null wide-characters). If the return value is
greater than or equal to <[siz]>, then truncation occurred and
- not all wide characters from <[src]> were appended.
+ not all wide-characters from <[src]> were appended.
PORTABILITY
No supporting OS subroutines are required.
diff --git a/newlib/libc/string/wcslcpy.c b/newlib/libc/string/wcslcpy.c
index 21c030b38..ac7d01863 100644
--- a/newlib/libc/string/wcslcpy.c
+++ b/newlib/libc/string/wcslcpy.c
@@ -14,16 +14,16 @@ TRAD_SYNOPSIS
size_t <[siz]>;
DESCRIPTION
- <<wcslcpy>> copies wide characters from <[src]> to <[dst]>
+ <<wcslcpy>> copies wide-characters from <[src]> to <[dst]>
such that up to <[siz]> - 1 characters are copied. A
terminating null is appended to the result, unless <[siz]>
is zero.
RETURNS
- <<wcslcpy>> returns the number of wide characters in <[src]>,
- not including the terminating null wide character. If the
+ <<wcslcpy>> returns the number of wide-characters in <[src]>,
+ not including the terminating null wide-character. If the
return value is greater than or equal to <[siz]>, then
- not all wide characters were copied from <[src]> and truncation
+ not all wide-characters were copied from <[src]> and truncation
occurred.
PORTABILITY
diff --git a/newlib/libc/string/wcslen.c b/newlib/libc/string/wcslen.c
index d671551af..d68f00a72 100644
--- a/newlib/libc/string/wcslen.c
+++ b/newlib/libc/string/wcslen.c
@@ -21,7 +21,6 @@ RETURNS
PORTABILITY
<<wcslen>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsncat.c b/newlib/libc/string/wcsncat.c
index fd77c0cc8..2ba293497 100644
--- a/newlib/libc/string/wcsncat.c
+++ b/newlib/libc/string/wcsncat.c
@@ -29,7 +29,6 @@ RETURNS
PORTABILITY
<<wcsncat>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsncmp.c b/newlib/libc/string/wcsncmp.c
index 1897f5c4e..48cb96c25 100644
--- a/newlib/libc/string/wcsncmp.c
+++ b/newlib/libc/string/wcsncmp.c
@@ -30,7 +30,6 @@ RETURNS
PORTABILITY
<<wcsncmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsncpy.c b/newlib/libc/string/wcsncpy.c
index b53e9c332..afe75a238 100644
--- a/newlib/libc/string/wcsncpy.c
+++ b/newlib/libc/string/wcsncpy.c
@@ -30,7 +30,6 @@ RETURNS
PORTABILITY
<<wcsncpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsnlen.c b/newlib/libc/string/wcsnlen.c
index 9d680d603..e84342d3d 100644
--- a/newlib/libc/string/wcsnlen.c
+++ b/newlib/libc/string/wcsnlen.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wcsnlen>>---get fixed-size wide-character string length
+ <<wcsnlen>>---get fixed-size wide character string length
INDEX
wcsnlen
@@ -16,8 +16,8 @@ TRAD_SYNOPSIS
size_t <[maxlen]>;
DESCRIPTION
- The <<wcsnlen>> function computes the number of wide-character codes
- in the wide-character string pointed to by <[s]> not including the
+ The <<wcsnlen>> function computes the number of wide character codes
+ in the wide character string pointed to by <[s]> not including the
terminating L'\0' wide character but at most <[maxlen]> wide
characters.
@@ -27,8 +27,7 @@ RETURNS
characters.
PORTABILITY
-<<wcsnlen>> is a GNU extension.
-
+<<wcsnlen>> is GNU extension..
<<wcsnlen>> requires no supporting OS subroutines.
*/
diff --git a/newlib/libc/string/wcspbrk.c b/newlib/libc/string/wcspbrk.c
index fbdf9e49c..bfe793b15 100644
--- a/newlib/libc/string/wcspbrk.c
+++ b/newlib/libc/string/wcspbrk.c
@@ -23,7 +23,6 @@ RETURNS
PORTABILITY
<<wcspbrk>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsrchr.c b/newlib/libc/string/wcsrchr.c
index 495d95a15..d3dc7431e 100644
--- a/newlib/libc/string/wcsrchr.c
+++ b/newlib/libc/string/wcsrchr.c
@@ -27,7 +27,6 @@ RETURNS
PORTABILITY
<<wcsrchr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wcsspn.c b/newlib/libc/string/wcsspn.c
index e83f42f4f..f0b2fb99f 100644
--- a/newlib/libc/string/wcsspn.c
+++ b/newlib/libc/string/wcsspn.c
@@ -23,7 +23,6 @@ RETURNS
PORTABILITY
<<wcsspn>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
@@ -76,7 +75,6 @@ _DEFUN (wcsspn, (s, set),
{
if (*p == *q)
break;
- q++;
}
if (!*q)
goto done;
diff --git a/newlib/libc/string/wcsstr.c b/newlib/libc/string/wcsstr.c
index 0b00396ea..30fc4631f 100644
--- a/newlib/libc/string/wcsstr.c
+++ b/newlib/libc/string/wcsstr.c
@@ -14,7 +14,7 @@ TRAD_SYNOPSIS
DESCRIPTION
The <<wcsstr>> function locates the first occurrence in the
wide-character string pointed to by <[big]> of the sequence of
- wide characters (excluding the terminating null wide character) in the
+ wide-characters (excluding the terminating null wide-character) in the
wide-character string pointed to by <[little]>.
RETURNS
diff --git a/newlib/libc/string/wcstrings.tex b/newlib/libc/string/wcstrings.tex
index df6edc47c..ad0a60788 100644
--- a/newlib/libc/string/wcstrings.tex
+++ b/newlib/libc/string/wcstrings.tex
@@ -2,21 +2,21 @@
@chapter Wide Character Strings (@file{wchar.h})
This chapter describes wide-character string-handling functions and
-managing areas of memory containing wide characters. The corresponding
+managing areas of memory containing wide-characters. The corresponding
declarations are in @file{wchar.h}.
@menu
-* wmemchr:: Find wide character in memory
+* wmemchr:: Find wide-character in memory
* wmemcmp:: Compare two wide-character memory areas
* wmemcpy:: Copy wide-character memory regions
* wmemmove:: Move possibly overlapping wide-character memory
-* wmemset:: Set an area of memory to a specified wide character
+* wmemset:: Set an area of memory to a specified wide-character
* wcscat:: Concatenate wide-character strings
-* wcschr:: Search for wide character in string
+* wcschr:: Search for wide-character in string
* wcscmp:: Wide-character string compare
-* wcscoll:: Locale-specific wide-character string compare
+* wcscoll:: Locale specific Wide-character string compare
* wcscpy:: Copy wide-character string
-* wcscspn:: Count wide characters not in string
+* wcscspn:: Count wide-chars not in string
* wcslcat:: Concatenate wide-character strings to specified length
* wcslcpy:: Copy wide-character string to specified length
* wcslen:: Wide-character string length
@@ -24,8 +24,8 @@ declarations are in @file{wchar.h}.
* wcsncmp:: Wide-character string compare
* wcsncpy:: Counted copy wide-character string
* wcsnlen:: Wide-character string length with maximum limit
-* wcspbrk:: Find wide characters in string
-* wcsrchr:: Reverse search for wide character in string
+* wcspbrk:: Find wide-chars in string
+* wcsrchr:: Reverse search for wide-character in string
* wcsspn:: Find initial match in wide-character string
* wcsstr:: Find wide-character string segment
* wcswidth:: Number of column positions of a wide-character string
diff --git a/newlib/libc/string/wcswidth.c b/newlib/libc/string/wcswidth.c
index 8a9670eb1..bd3d9bbad 100644
--- a/newlib/libc/string/wcswidth.c
+++ b/newlib/libc/string/wcswidth.c
@@ -17,22 +17,22 @@ TRAD_SYNOPSIS
DESCRIPTION
The <<wcswidth>> function shall determine the number of column
- positions required for <[n]> wide-character codes (or fewer than <[n]>
+ positions required for n wide-character codes (or fewer than n
wide-character codes if a null wide-character code is encountered
- before <[n]> wide-character codes are exhausted) in the string pointed
- to by <[pwcs]>.
+ before n wide-character codes are exhausted) in the string pointed
+ to by pwcs.
RETURNS
- The <<wcswidth>> function either shall return 0 (if <[pwcs]> points to a
+ The <<wcswidth>> function either shall return 0 (if pwcs points to a
null wide-character code), or return the number of column positions
- to be occupied by the wide-character string pointed to by <[pwcs]>, or
- return -1 (if any of the first <[n]> wide-character codes in the
- wide-character string pointed to by <[pwcs]> is not a printable
+ to be occupied by the wide-character string pointed to by pwcs, or
+ return -1 (if any of the first n wide-character codes in the
+ wide-character string pointed to by pwcs is not a printable
wide-character code).
PORTABILITY
-<<wcswidth>> has been introduced in the Single UNIX Specification Volume 2.
-<<wcswidth>> has been marked as an extension in the Single UNIX Specification Volume 3.
+<<wcswidth>> has been introduced in the Single UNIX Specification Volume 2
+<<wcswidth>> has been marked as extension in Single UNIX Specification Volume 3
*/
#include <_ansi.h>
diff --git a/newlib/libc/string/wcwidth.c b/newlib/libc/string/wcwidth.c
index d886b4aca..2cbd59e18 100644
--- a/newlib/libc/string/wcwidth.c
+++ b/newlib/libc/string/wcwidth.c
@@ -16,15 +16,15 @@ TRAD_SYNOPSIS
DESCRIPTION
The <<wcwidth>> function shall determine the number of column
- positions required for the wide character <[wc]>. The application
- shall ensure that the value of <[wc]> is a character representable
+ positions required for the wide character wc. The application
+ shall ensure that the value of wc is a character representable
as a wchar_t, and is a wide-character code corresponding to a
valid character in the current locale.
RETURNS
- The <<wcwidth>> function shall either return 0 (if <[wc]> is a null
+ The <<wcwidth>> function shall either return 0 (if wc is a null
wide-character code), or return the number of column positions to
- be occupied by the wide-character code <[wc]>, or return -1 (if <[wc]>
+ be occupied by the wide-character code wc, or return -1 (if wc
does not correspond to a printable wide-character code).
The current implementation of <<wcwidth>> simply sets the width
@@ -32,8 +32,8 @@ RETURNS
tables around.
PORTABILITY
-<<wcwidth>> has been introduced in the Single UNIX Specification Volume 2.
-<<wcwidth>> has been marked as an extension in the Single UNIX Specification Volume 3.
+<<wcwidth>> has been introduced in the Single UNIX Specification Volume 2
+<<wcwidth>> has been marked as extension in Single UNIX Specification Volume 3
*/
#include <_ansi.h>
diff --git a/newlib/libc/string/wmemchr.c b/newlib/libc/string/wmemchr.c
index b582b8948..e99991324 100644
--- a/newlib/libc/string/wmemchr.c
+++ b/newlib/libc/string/wmemchr.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wmemchr>>---find a wide character in memory
+ <<wmemchr>>---find a wide-character in memory
ANSI_SYNOPSIS
@@ -15,9 +15,9 @@ TRAD_SYNOPSIS
DESCRIPTION
The <<wmemchr>> function locates the first occurrence of <[c]> in the
- initial <[n]> wide characters of the object pointed to be <[s]>. This
+ initial <[n]> wide-characters of the object pointed to be <[s]>. This
function is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
+ identically. The null wide-character and wchar_t values not
corresponding to valid characters are not treated specially.
If <[n]> is zero, <[s]> must be a valid pointer and the function
@@ -25,12 +25,11 @@ DESCRIPTION
RETURNS
The <<wmemchr>> function returns a pointer to the located
- wide character, or a null pointer if the wide character does not occur
+ wide-character, or a null pointer if the wide-character does not occur
in the object.
PORTABILITY
<<wmemchr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wmemcmp.c b/newlib/libc/string/wmemcmp.c
index af9ee3207..51072942c 100644
--- a/newlib/libc/string/wmemcmp.c
+++ b/newlib/libc/string/wmemcmp.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wmemcmp>>---compare wide characters in memory
+ <<wmemcmp>>---compare wide-characters in memory
ANSI_SYNOPSIS
#include <wchar.h>
@@ -13,10 +13,10 @@ TRAD_SYNOPSIS
size_t <[n]>;
DESCRIPTION
- The <<wmemcmp>> function compares the first <[n]> wide characters of the
- object pointed to by <[s1]> to the first <[n]> wide characters of the
+ The <<wmemcmp>> function compares the first <[n]> wide-characters of the
+ object pointed to by <[s1]> to the first <[n]> wide-characters of the
object pointed to by <[s2]>. This function is not affected by locale
- and all wchar_t values are treated identically. The null wide character
+ and all wchar_t values are treated identically. The null wide-character
and wchar_t values not corresponding to valid characters are not treated
specially.
@@ -30,7 +30,6 @@ RETURNS
PORTABILITY
<<wmemcmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wmemcpy.c b/newlib/libc/string/wmemcpy.c
index 748e8e196..c3a96a32d 100644
--- a/newlib/libc/string/wmemcpy.c
+++ b/newlib/libc/string/wmemcpy.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wmemcpy>>---copy wide characters in memory
+ <<wmemcpy>>---copy wide-characters in memory
ANSI_SYNOPSIS
#include <wchar.h>
@@ -13,21 +13,20 @@ TRAD_SYNOPSIS
size_t <[n]>;
DESCRIPTION
- The <<wmemcpy>> function copies <[n]> wide characters from the object
+ The <<wmemcpy>> function copies <[n]> wide-characters from the object
pointed to by <[s]> to the object pointed to be <[d]>. This function
is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
+ identically. The null wide-character and wchar_t values not
corresponding to valid characters are not treated specially.
If <[n]> is zero, <[d]> and <[s]> must be a valid pointers, and the
- function copies zero wide characters.
+ function copies zero wide-characters.
RETURNS
The <<wmemcpy>> function returns the value of <[d]>.
PORTABILITY
<<wmemcpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wmemmove.c b/newlib/libc/string/wmemmove.c
index e20a26ae9..f49e359f3 100644
--- a/newlib/libc/string/wmemmove.c
+++ b/newlib/libc/string/wmemmove.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wmemmove>>---copy wide characters in memory with overlapping areas
+ <<wmemmove>>---wmemmove - copy wide-characters in memory with overlapping areas
ANSI_SYNOPSIS
#include <wchar.h>
@@ -13,27 +13,26 @@ TRAD_SYNOPSIS
size_t <[n]>;
DESCRIPTION
- The <<wmemmove>> function copies <[n]> wide characters from the object
+ The <<wmemmove>> function copies <[n]> wide-characters from the object
pointed to by <[s]> to the object pointed to by <[d]>. Copying takes
- place as if the <[n]> wide characters from the object pointed to by
- <[s]> are first copied into a temporary array of <[n]> wide characters
+ place as if the <[n]> wide-characters from the object pointed to by
+ <[s]> are first copied into a temporary array of <[n]> wide-characters
that does not overlap the objects pointed to by <[d]> or <[s]>, and then
- the <[n]> wide characters from the temporary array are copied into the
+ the <[n]> wide-characters from the temporary array are copied into the
object pointed to by <[d]>.
This function is not affected by locale and all wchar_t values are
- treated identically. The null wide character and wchar_t values not
+ treated identically. The null wide-character and wchar_t values not
corresponding to valid characters are not treated specially.
If <[n]> is zero, <[d]> and <[s]> must be a valid pointers, and the
- function copies zero wide characters.
+ function copies zero wide-characters.
RETURNS
The <<wmemmove>> function returns the value of <[d]>.
PORTABILITY
<<wmemmove>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/string/wmemset.c b/newlib/libc/string/wmemset.c
index 0af6f91d5..4e05b93b6 100644
--- a/newlib/libc/string/wmemset.c
+++ b/newlib/libc/string/wmemset.c
@@ -1,6 +1,6 @@
/*
FUNCTION
- <<wmemset>>---set wide characters in memory
+ <<wmemset>>---set wide-characters in memory
ANSI_SYNOPSIS
#include <wchar.h>
@@ -14,20 +14,19 @@ TRAD_SYNOPSIS
DESCRIPTION
The <<wmemset>> function copies the value of <[c]> into each of the
- first <[n]> wide characters of the object pointed to by <[s]>. This
+ first <[n]> wide-characters of the object pointed to by <[s]>. This
function is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
+ identically. The null wide-character and wchar_t values not
corresponding to valid characters are not treated specially.
If <[n]> is zero, <[s]> must be a valid pointer and the function
- copies zero wide characters.
+ copies zero wide-characters.
RETURNS
- The <<wmemset>> function returns the value of <[s]>.
+ The <<wmemset>> functions returns the value of <[s]>.
PORTABILITY
<<wmemset>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
No supporting OS subroutines are required.
*/
diff --git a/newlib/libc/sys.tex b/newlib/libc/sys.tex
index 3b04c1500..362732ace 100644
--- a/newlib/libc/sys.tex
+++ b/newlib/libc/sys.tex
@@ -34,7 +34,7 @@ Graceful failure is permitted by returning an error code. A minor
complication arises here: the C library must be compatible with
development environments that supply fully functional versions of these
subroutines. Such environments usually return error codes in a global
-@code{errno}. However, the Red Hat newlib C library provides a @emph{macro}
+@code{errno}. However, the Cygnus C library provides a @emph{macro}
definition for @code{errno} in the header file @file{errno.h}, as part
of its support for reentrant routines (@pxref{Reentrancy,,Reentrancy}).
@@ -68,8 +68,8 @@ it (@code{exit}, @code{system}).
Close a file. Minimal implementation:
@example
-int close(int file) @{
- return -1;
+int close(int file)@{
+ return -1;
@}
@end example
@@ -90,8 +90,8 @@ without processes):
#include <errno.h>
#undef errno
extern int errno;
-int execve(char *name, char **argv, char **env) @{
- errno = ENOMEM;
+int execve(char *name, char **argv, char **env)@{
+ errno=ENOMEM;
return -1;
@}
@end example
@@ -103,8 +103,8 @@ Create a new process. Minimal implementation (for a system without processes):
#include <errno.h>
#undef errno
extern int errno;
-int fork(void) @{
- errno = EAGAIN;
+int fork() @{
+ errno=EAGAIN;
return -1;
@}
@end example
@@ -129,7 +129,7 @@ conflict with other processes. Minimal implementation, for a system
without processes:
@example
-int getpid(void) @{
+int getpid() @{
return 1;
@}
@end example
@@ -140,8 +140,8 @@ other minimal implementations, which only support output to
@code{stdout}, this minimal implementation is suggested:
@example
-int isatty(int file) @{
- return 1;
+int isatty(int file)@{
+ return 1;
@}
@end example
@@ -152,9 +152,9 @@ Send a signal. Minimal implementation:
#include <errno.h>
#undef errno
extern int errno;
-int kill(int pid, int sig) @{
- errno = EINVAL;
- return -1;
+int kill(int pid, int sig)@{
+ errno=EINVAL;
+ return(-1);
@}
@end example
@@ -165,8 +165,8 @@ Establish a new name for an existing file. Minimal implementation:
#include <errno.h>
#undef errno
extern int errno;
-int link(char *old, char *new) @{
- errno = EMLINK;
+int link(char *old, char *new)@{
+ errno=EMLINK;
return -1;
@}
@end example
@@ -175,8 +175,8 @@ int link(char *old, char *new) @{
Set position in a file. Minimal implementation:
@example
-int lseek(int file, int ptr, int dir) @{
- return 0;
+int lseek(int file, int ptr, int dir)@{
+ return 0;
@}
@end example
@@ -184,8 +184,8 @@ int lseek(int file, int ptr, int dir) @{
Open a file. Minimal implementation:
@example
-int open(const char *name, int flags, int mode) @{
- return -1;
+int open(const char *name, int flags, int mode)@{
+ return -1;
@}
@end example
@@ -193,8 +193,8 @@ int open(const char *name, int flags, int mode) @{
Read from a file. Minimal implementation:
@example
-int read(int file, char *ptr, int len) @{
- return 0;
+int read(int file, char *ptr, int len)@{
+ return 0;
@}
@end example
@@ -202,23 +202,24 @@ int read(int file, char *ptr, int len) @{
Increase program data space. As @code{malloc} and related functions
depend on this, it is useful to have a working implementation. The
following suffices for a standalone system; it exploits the symbol
-@code{_end} automatically defined by the GNU linker.
+@code{end} automatically defined by the GNU linker.
@example
@group
-caddr_t sbrk(int incr) @{
- extern char _end; /* @r{Defined by the linker} */
+caddr_t sbrk(int incr)@{
+ extern char end; /* @r{Defined by the linker} */
static char *heap_end;
char *prev_heap_end;
if (heap_end == 0) @{
- heap_end = &_end;
+ heap_end = &end;
@}
prev_heap_end = heap_end;
- if (heap_end + incr > stack_ptr) @{
- write (1, "Heap and stack collision\n", 25);
- abort ();
- @}
+ if (heap_end + incr > stack_ptr)
+ @{
+ _write (1, "Heap and stack collision\n", 25);
+ abort ();
+ @}
heap_end += incr;
return (caddr_t) prev_heap_end;
@@ -240,7 +241,7 @@ int stat(char *file, struct stat *st) @{
Timing information for current process. Minimal implementation:
@example
-int times(struct tms *buf) @{
+int times(struct tms *buf)@{
return -1;
@}
@end example
@@ -252,8 +253,8 @@ Remove a file's directory entry. Minimal implementation:
#include <errno.h>
#undef errno
extern int errno;
-int unlink(char *name) @{
- errno = ENOENT;
+int unlink(char *name)@{
+ errno=ENOENT;
return -1;
@}
@end example
@@ -265,30 +266,30 @@ Wait for a child process. Minimal implementation:
#undef errno
extern int errno;
int wait(int *status) @{
- errno = ECHILD;
+ errno=ECHILD;
return -1;
@}
@end example
@item write
-Write to a file. @file{libc} subroutines will use this
+Write a character to a file. @file{libc} subroutines will use this
system routine for output to all files, @emph{including}
@code{stdout}---so if you need to generate any output, for example to a
serial port for debugging, you should make your minimal @code{write}
capable of doing this. The following minimal implementation is an
-incomplete example; it relies on a @code{outbyte} subroutine (not
+incomplete example; it relies on a @code{writechar} subroutine (not
shown; typically, you must write this in assembler from examples
provided by your hardware manufacturer) to actually perform the output.
@example
@group
-int write(int file, char *ptr, int len) @{
- int todo;
-
- for (todo = 0; todo < len; todo++) @{
- outbyte (*ptr++);
- @}
- return len;
+int write(int file, char *ptr, int len)@{
+ int todo;
+
+ for (todo = 0; todo < len; todo++) @{
+ writechar(*ptr++);
+ @}
+ return len;
@}
@end group
@end example
diff --git a/newlib/libc/sys/a29khif/aclocal.m4 b/newlib/libc/sys/a29khif/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/a29khif/aclocal.m4
+++ b/newlib/libc/sys/a29khif/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/a29khif/configure b/newlib/libc/sys/a29khif/configure
index cd8d26300..d8ce7e157 100755
--- a/newlib/libc/sys/a29khif/configure
+++ b/newlib/libc/sys/a29khif/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/aclocal.m4 b/newlib/libc/sys/aclocal.m4
index 35519acf9..26ca1d516 100644
--- a/newlib/libc/sys/aclocal.m4
+++ b/newlib/libc/sys/aclocal.m4
@@ -56,17 +56,6 @@ AC_ARG_ENABLE(newlib-multithread,
*) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
esac], [newlib_multithread=yes])dnl
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
dnl Support --enable-newlib-elix-level
AC_ARG_ENABLE(newlib-elix-level,
[ --enable-newlib-elix-level supply desired elix library level (1-4)],
@@ -117,7 +106,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +154,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/arc/aclocal.m4 b/newlib/libc/sys/arc/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/arc/aclocal.m4
+++ b/newlib/libc/sys/arc/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/arc/configure b/newlib/libc/sys/arc/configure
index 39982f1bf..2d3b187c7 100755
--- a/newlib/libc/sys/arc/configure
+++ b/newlib/libc/sys/arc/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/arc/syscalls.c b/newlib/libc/sys/arc/syscalls.c
index 9c578451a..107989b00 100644
--- a/newlib/libc/sys/arc/syscalls.c
+++ b/newlib/libc/sys/arc/syscalls.c
@@ -15,7 +15,7 @@ _read_r (struct _reent *r, int fd, void *buf, size_t nbytes)
SYSCALL (SYS_read, rc, err, fd, buf, nbytes);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -27,7 +27,7 @@ _write_r (struct _reent *r, int fd, const void *buf, size_t nbytes)
SYSCALL (SYS_write, rc, err, fd, buf, nbytes);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -48,8 +48,7 @@ _open_r (struct _reent *r, const char *buf, int flags, int mode)
#endif
SYSCALL (SYS_open, rc, err, buf, flags, mode);
- if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -60,7 +59,7 @@ _close_r (struct _reent *r, int fd)
SYSCALL (SYS_close, rc, err, fd, 0, 0);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -72,7 +71,7 @@ _lseek_r (struct _reent *r, int fd, off_t offset, int whence)
SYSCALL (SYS_lseek, rc, err, fd, offset, whence);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -83,7 +82,7 @@ _fstat_r (struct _reent *r, int fd, struct stat *buf)
SYSCALL (SYS_fstat, rc, err, fd, buf, 0);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
@@ -126,6 +125,6 @@ _kill_r (struct _reent *r, int pid, int sig)
SYSCALL (SYS_kill, rc, err, pid, sig, 0);
if (err)
- __errno_r (r) = err;
+ errno = err;
return rc;
}
diff --git a/newlib/libc/sys/arm/Makefile.am b/newlib/libc/sys/arm/Makefile.am
index 7749d4aff..76504f9d9 100644
--- a/newlib/libc/sys/arm/Makefile.am
+++ b/newlib/libc/sys/arm/Makefile.am
@@ -7,18 +7,16 @@ INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
noinst_LIBRARIES = lib.a
if MAY_SUPPLY_SYSCALLS
-extra_objs = libcfunc.o trap.o syscalls.o
+extra_objs = syscalls.o
else
extra_objs =
endif
-lib_a_SOURCES = aeabi_atexit.c
+lib_a_SOURCES = libcfunc.c trap.S
lib_a_LIBADD = $(extra_objs)
lib_a_DEPENDENCIES = $(extra_objs)
-if MAY_SUPPLY_SYSCALLS
all: crt0.o
-endif
ACLOCAL_AMFLAGS = -I ../../..
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/sys/arm/Makefile.in b/newlib/libc/sys/arm/Makefile.in
index 323db9c9b..942f909b2 100644
--- a/newlib/libc/sys/arm/Makefile.in
+++ b/newlib/libc/sys/arm/Makefile.in
@@ -88,10 +88,10 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
noinst_LIBRARIES = lib.a
-@MAY_SUPPLY_SYSCALLS_TRUE@extra_objs = libcfunc.o trap.o syscalls.o
+@MAY_SUPPLY_SYSCALLS_TRUE@extra_objs = syscalls.o
@MAY_SUPPLY_SYSCALLS_FALSE@extra_objs =
-lib_a_SOURCES = aeabi_atexit.c
+lib_a_SOURCES = libcfunc.c trap.S
lib_a_LIBADD = $(extra_objs)
lib_a_DEPENDENCIES = $(extra_objs)
@@ -106,7 +106,7 @@ LIBRARIES = $(noinst_LIBRARIES)
DEFS = @DEFS@ -I. -I$(srcdir)
CPPFLAGS = @CPPFLAGS@
LIBS = @LIBS@
-lib_a_OBJECTS = aeabi_atexit.o
+lib_a_OBJECTS = libcfunc.o trap.o
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
@@ -325,7 +325,7 @@ mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-@MAY_SUPPLY_SYSCALLS_TRUE@all: crt0.o
+all: crt0.o
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/newlib/libc/sys/arm/aclocal.m4 b/newlib/libc/sys/arm/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/arm/aclocal.m4
+++ b/newlib/libc/sys/arm/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/arm/aeabi_atexit.c b/newlib/libc/sys/arm/aeabi_atexit.c
deleted file mode 100644
index 4b600e250..000000000
--- a/newlib/libc/sys/arm/aeabi_atexit.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <stdlib.h>
-
-/* Register a function to be called by exit or when a shared library
- is unloaded. This routine is like __cxa_atexit, but uses the
- calling sequence required by the ARM EABI. */
-int
-__aeabi_atexit (void *arg, void (*func) (void *), void *d)
-{
- return __cxa_atexit (func, arg, d);
-}
diff --git a/newlib/libc/sys/arm/configure b/newlib/libc/sys/arm/configure
index 1f40c98f3..4af7bf7a7 100755
--- a/newlib/libc/sys/arm/configure
+++ b/newlib/libc/sys/arm/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/arm/crt0.S b/newlib/libc/sys/arm/crt0.S
index c750ca819..3ebb5f7fe 100644
--- a/newlib/libc/sys/arm/crt0.S
+++ b/newlib/libc/sys/arm/crt0.S
@@ -1,4 +1,3 @@
-#include "newlib.h"
#include "swi.h"
/* ANSI concatenation macros. */
@@ -11,37 +10,17 @@
#error __USER_LABEL_PREFIX is not defined
#endif
-#ifdef HAVE_INITFINI_ARRAY
-#define _init __libc_init_array
-#define _fini __libc_fini_array
-#endif
-
/* .text is used instead of .section .text so it works with arm-aout too. */
.text
-#if defined(__thumb2__)
- .syntax unified
- .thumb
-.macro FUNC_START name
- .global \name
- .thumb_func
-\name:
-.endm
-#else
.code 32
-.macro FUNC_START name
- .global \name
-\name:
-.endm
-#endif
.align 0
- FUNC_START _mainCRTStartup
- FUNC_START _start
- FUNC_START start
-#if defined(__ELF__) && !defined(__USING_SJLJ_EXCEPTIONS__)
- /* Annotation for EABI unwinding tables. */
- .fnstart
-#endif
+ .global _mainCRTStartup
+ .global _start
+ .global start
+start:
+_start:
+_mainCRTStartup:
/* Start by setting up a stack */
#ifdef ARM_RDP_MONITOR
@@ -56,12 +35,7 @@
/* Issue Angel SWI to read stack info */
mov r0, #AngelSWI_Reason_HeapInfo
adr r1, .LC0 /* point at ptr to 4 words to receive data */
-#if defined(__thumb2__)
- bkpt AngelSWI
-#else
- /* We are always in ARM mode for startup */
- AngelSWIAsm AngelSWI_ARM
-#endif
+ swi AngelSWI_ARM /* We are always in ARM mode for startup */
ldr r0, .LC0 /* point at values read */
ldr sp, [r0, #8]
ldr sl, [r0, #12]
@@ -91,8 +65,8 @@
sub a3, a3, a1 /* Third arg: length of block */
-#if defined(__thumb__) && !defined(__thumb2__)
- /* Enter Thumb mode.... */
+#ifdef __thumb__ /* Enter Thumb mode.... */
+
add a4, pc, #1 /* Get the address of the Thumb block */
bx a4 /* Go there and start Thumb decoding */
@@ -116,7 +90,7 @@ __change_mode:
#else
mov r0, #AngelSWI_Reason_GetCmdLine
adr r1, .LC30 /* Space for command line */
- AngelSWIAsm AngelSWI
+ swi AngelSWI
ldr r1, .LC30
#endif
/* Parse string at r1 */
@@ -202,11 +176,6 @@ __change_mode:
add r3, #4
b .LC15
.LC14:
- /* Ensure doubleword stack alignment. */
- mov r4, sp
- mov r5, #7
- bic r4, r5
- mov sp, r4
#else
add r2, sp, r0, LSL #2 /* End of args */
mov r3, sp /* Start of args */
@@ -216,8 +185,6 @@ __change_mode:
strhi r5, [r2, #-4]!
strhi r4, [r3], #4
bhi .LC13
- /* Ensure doubleword stack alignment. */
- bic sp, sp, #7
#endif
#endif
@@ -238,7 +205,7 @@ __change_mode:
bl FUNCTION (exit) /* Should not return. */
-#if defined(__thumb__) && !defined(__thumb2__)
+#ifdef __thumb__
/* Come out of Thumb mode. This code should be redundant. */
mov a4, pc
@@ -270,11 +237,6 @@ change_back:
#endif
#endif
#endif
-#if defined(__ELF__) && !defined(__USING_SJLJ_EXCEPTIONS__)
- /* Protect against unhandled exceptions. */
- .cantunwind
- .fnend
-#endif
.LC1:
.word __bss_start__
.LC2:
diff --git a/newlib/libc/sys/arm/libcfunc.c b/newlib/libc/sys/arm/libcfunc.c
index 3bf0a56f4..ddc611f34 100644
--- a/newlib/libc/sys/arm/libcfunc.c
+++ b/newlib/libc/sys/arm/libcfunc.c
@@ -13,7 +13,7 @@ static inline int
do_AngelSWI (int reason, void * arg)
{
int value;
- asm volatile ("mov r0, %1; mov r1, %2; " AngelSWIInsn " %a3; mov %0, r0"
+ asm volatile ("mov r0, %1; mov r1, %2; swi %a3; mov %0, r0"
: "=r" (value) /* Outputs */
: "r" (reason), "r" (arg), "i" (AngelSWI) /* Inputs */
: "r0", "r1", "lr"
diff --git a/newlib/libc/sys/arm/swi.h b/newlib/libc/sys/arm/swi.h
index f5c910313..15c3866a1 100644
--- a/newlib/libc/sys/arm/swi.h
+++ b/newlib/libc/sys/arm/swi.h
@@ -33,14 +33,6 @@
#else
#define AngelSWI AngelSWI_ARM
#endif
-/* For Thumb-2 code use the BKPT instruction instead of SWI. */
-#ifdef __thumb2__
-#define AngelSWIInsn "bkpt"
-#define AngelSWIAsm bkpt
-#else
-#define AngelSWIInsn "swi"
-#define AngelSWIAsm swi
-#endif
/* The reason codes: */
#define AngelSWI_Reason_Open 0x01
diff --git a/newlib/libc/sys/arm/sys/param.h b/newlib/libc/sys/arm/sys/param.h
deleted file mode 100644
index adc066e9a..000000000
--- a/newlib/libc/sys/arm/sys/param.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* ARM configuration file; HZ is 100 rather than the default 60 */
-
-#ifndef _SYS_PARAM_H
-# define _SYS_PARAM_H
-
-# define HZ (100)
-# define NOFILE (60)
-# define PATHSIZE (1024)
-
-#define BIG_ENDIAN 4321
-#define LITTLE_ENDIAN 1234
-
-#ifdef __ARMEB__
-#define BYTE_ORDER BIG_ENDIAN
-#else
-#define BYTE_ORDER LITTLE_ENDIAN
-#endif
-
-#endif
diff --git a/newlib/libc/sys/arm/syscalls.c b/newlib/libc/sys/arm/syscalls.c
index 529309930..42e69b7b0 100644
--- a/newlib/libc/sys/arm/syscalls.c
+++ b/newlib/libc/sys/arm/syscalls.c
@@ -55,17 +55,20 @@ register char * stack_ptr asm ("sp");
/* following is copied from libc/stdio/local.h to check std streams */
extern void _EXFUN(__sinit,(struct _reent *));
-#define CHECK_INIT(ptr) \
- do \
- { \
- if ((ptr) && !(ptr)->__sdidinit) \
- __sinit (ptr); \
- } \
+#define CHECK_INIT(fp) \
+ do \
+ { \
+ if ((fp)->_data == 0) \
+ (fp)->_data = _REENT; \
+ if (!(fp)->_data->__sdidinit) \
+ __sinit ((fp)->_data); \
+ } \
while (0)
/* Adjust our internal handles to stay away from std* handles. */
#define FILE_HANDLE_OFFSET (0x20)
+static int std_files_checked;
static int monitor_stdin;
static int monitor_stdout;
static int monitor_stderr;
@@ -98,7 +101,7 @@ static inline int
do_AngelSWI (int reason, void * arg)
{
int value;
- asm volatile ("mov r0, %1; mov r1, %2; " AngelSWIInsn " %a3; mov %0, r0"
+ asm volatile ("mov r0, %1; mov r1, %2; swi %a3; mov %0, r0"
: "=r" (value) /* Outputs */
: "r" (reason), "r" (arg), "i" (AngelSWI) /* Inputs */
: "r0", "r1", "r2", "r3", "ip", "lr", "memory", "cc"
@@ -116,8 +119,13 @@ do_AngelSWI (int reason, void * arg)
static int
remap_handle (int fh)
{
- CHECK_INIT(_REENT);
-
+ if (!std_files_checked)
+ {
+ CHECK_INIT(stdin);
+ CHECK_INIT(stdout);
+ CHECK_INIT(stderr);
+ std_files_checked = 1;
+ }
if (fh == STDIN_FILENO)
return monitor_stdin;
if (fh == STDOUT_FILENO)
diff --git a/newlib/libc/sys/arm/trap.S b/newlib/libc/sys/arm/trap.S
index 21b6937f9..328fabca5 100644
--- a/newlib/libc/sys/arm/trap.S
+++ b/newlib/libc/sys/arm/trap.S
@@ -1,5 +1,4 @@
/* Run-time exception support */
-#if !defined(__thumb2__)
#include "swi.h"
/* .text is used instead of .section .text so it works with arm-aout too. */
@@ -92,4 +91,3 @@ __rt_stkovf_split_big:
@ We now know how much extra stack the function requires.
@ Terminate the program for the moment:
swi SWI_Exit
-#endif
diff --git a/newlib/libc/sys/configure b/newlib/libc/sys/configure
index 04436d960..d24f33b07 100755
--- a/newlib/libc/sys/configure
+++ b/newlib/libc/sys/configure
@@ -20,8 +20,6 @@ ac_help="$ac_help
ac_help="$ac_help
--enable-newlib-multithread enable support for multiple threads"
ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
--enable-newlib-elix-level supply desired elix library level (1-4)"
ac_help="$ac_help
--disable-newlib-io-float disable printf/scanf family float support"
@@ -586,7 +584,7 @@ am__api_version="1.4"
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:590: checking for a BSD compatible install" >&5
+echo "configure:588: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -639,7 +637,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:643: checking whether build environment is sane" >&5
+echo "configure:641: checking whether build environment is sane" >&5
# Just in case
sleep 1
echo timestamp > conftestfile
@@ -696,7 +694,7 @@ test "$program_suffix" != NONE &&
test "$program_transform_name" = "" && program_transform_name="s,x,x,"
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:700: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:698: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -729,12 +727,12 @@ else
fi
echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:733: checking for Cygwin environment" >&5
+echo "configure:731: checking for Cygwin environment" >&5
if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 738 "configure"
+#line 736 "configure"
#include "confdefs.h"
int main() {
@@ -745,7 +743,7 @@ int main() {
return __CYGWIN__;
; return 0; }
EOF
-if { (eval echo configure:749: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:747: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_cygwin=yes
else
@@ -762,19 +760,19 @@ echo "$ac_t""$ac_cv_cygwin" 1>&6
CYGWIN=
test "$ac_cv_cygwin" = yes && CYGWIN=yes
echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:766: checking for mingw32 environment" >&5
+echo "configure:764: checking for mingw32 environment" >&5
if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 771 "configure"
+#line 769 "configure"
#include "confdefs.h"
int main() {
return __MINGW32__;
; return 0; }
EOF
-if { (eval echo configure:778: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:776: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_mingw32=yes
else
@@ -839,20 +837,6 @@ else
newlib_multithread=yes
fi
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
if test "${enable_newlib_elix_level+set}" = set; then
enableval="$enable_newlib_elix_level"
@@ -944,7 +928,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:948: checking host system type" >&5
+echo "configure:932: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -965,7 +949,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:969: checking target system type" >&5
+echo "configure:953: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -983,7 +967,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:987: checking build system type" >&5
+echo "configure:971: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -1009,7 +993,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1026,7 +1010,7 @@ EOF
missing_dir=`cd $ac_aux_dir && pwd`
echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1030: checking for working aclocal-${am__api_version}" >&5
+echo "configure:1014: checking for working aclocal-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1039,7 +1023,7 @@ else
fi
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1043: checking for working autoconf" >&5
+echo "configure:1027: checking for working autoconf" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1052,7 +1036,7 @@ else
fi
echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1056: checking for working automake-${am__api_version}" >&5
+echo "configure:1040: checking for working automake-${am__api_version}" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1065,7 +1049,7 @@ else
fi
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1069: checking for working autoheader" >&5
+echo "configure:1053: checking for working autoheader" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1078,7 +1062,7 @@ else
fi
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1082: checking for working makeinfo" >&5
+echo "configure:1066: checking for working makeinfo" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@@ -1103,7 +1087,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1107: checking for $ac_word" >&5
+echo "configure:1091: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1133,7 +1117,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1137: checking for $ac_word" >&5
+echo "configure:1121: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1182,7 +1166,7 @@ fi
fi
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1186: checking whether we are using GNU C" >&5
+echo "configure:1170: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1191,7 +1175,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1195: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1179: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1206,7 +1190,7 @@ if test $ac_cv_prog_gcc = yes; then
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1210: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1194: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1237,7 +1221,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1241: checking for $ac_word" >&5
+echo "configure:1225: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1269,7 +1253,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
set dummy ${ac_tool_prefix}ar; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1273: checking for $ac_word" >&5
+echo "configure:1257: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1301,7 +1285,7 @@ fi
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1305: checking for $ac_word" >&5
+echo "configure:1289: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1333,7 +1317,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1337: checking for $ac_word" >&5
+echo "configure:1321: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1378,7 +1362,7 @@ fi
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# ./install, which can be erroneously created by make from ./install.sh.
echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1382: checking for a BSD compatible install" >&5
+echo "configure:1366: checking for a BSD compatible install" >&5
if test -z "$INSTALL"; then
if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1431,11 +1415,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1420: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1450,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1454: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1460,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1654,7 +1635,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1658: checking for $ac_word" >&5
+echo "configure:1639: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1684,7 +1665,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1688: checking for $ac_word" >&5
+echo "configure:1669: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1735,7 +1716,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1739: checking for $ac_word" >&5
+echo "configure:1720: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1767,7 +1748,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1771: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1752: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1778,12 +1759,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1782 "configure"
+#line 1763 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1768: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1809,12 +1790,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1813: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1794: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1818: checking whether we are using GNU C" >&5
+echo "configure:1799: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1823,7 +1804,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1827: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1808: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1842,7 +1823,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1846: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1827: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1885,7 +1866,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1889: checking for ld used by GCC" >&5
+echo "configure:1870: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1915,10 +1896,10 @@ echo "configure:1889: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1919: checking for GNU ld" >&5
+echo "configure:1900: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1922: checking for non-GNU ld" >&5
+echo "configure:1903: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1953,7 +1934,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1957: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1938: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1970,7 +1951,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1974: checking for $LD option to reload object files" >&5
+echo "configure:1955: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1982,7 +1963,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1986: checking for BSD-compatible nm" >&5
+echo "configure:1967: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2020,7 +2001,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2024: checking whether ln -s works" >&5
+echo "configure:2005: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2041,7 +2022,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2045: checking how to recognise dependant libraries" >&5
+echo "configure:2026: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2214,13 +2195,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2218: checking for object suffix" >&5
+echo "configure:2199: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2224: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2244,7 +2225,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2248: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2229: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2306,7 +2287,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2310: checking for file" >&5
+echo "configure:2291: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2377,7 +2358,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2381: checking for $ac_word" >&5
+echo "configure:2362: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2409,7 +2390,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2413: checking for $ac_word" >&5
+echo "configure:2394: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2444,7 +2425,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2448: checking for $ac_word" >&5
+echo "configure:2429: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2476,7 +2457,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2480: checking for $ac_word" >&5
+echo "configure:2461: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2543,8 +2524,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2547 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2528 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2529: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2563,7 +2544,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2567: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2581,7 +2562,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2585: checking whether the C compiler needs -belf" >&5
+echo "configure:2566: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2594,14 +2575,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2598 "configure"
+#line 2579 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2631,7 +2612,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2635: checking for $ac_word" >&5
+echo "configure:2616: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2663,7 +2644,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2667: checking for $ac_word" >&5
+echo "configure:2648: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2698,7 +2679,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2702: checking for $ac_word" >&5
+echo "configure:2683: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2730,7 +2711,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2734: checking for $ac_word" >&5
+echo "configure:2715: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2765,7 +2746,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2769: checking for $ac_word" >&5
+echo "configure:2750: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2797,7 +2778,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2801: checking for $ac_word" >&5
+echo "configure:2782: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2833,12 +2814,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2837: checking if libtool should supply DllMain function" >&5
+echo "configure:2818: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2842 "configure"
+#line 2823 "configure"
#include "confdefs.h"
int main() {
@@ -2846,7 +2827,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2850: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2867,19 +2848,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2871: checking how to link DLLs" >&5
+echo "configure:2852: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2876 "configure"
+#line 2857 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2864: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -2996,7 +2977,7 @@ if test -n "${sys_dir}"; then
fi
CRT0=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
fi
diff --git a/newlib/libc/sys/configure.in b/newlib/libc/sys/configure.in
index 895bdb2a2..4a53612e0 100644
--- a/newlib/libc/sys/configure.in
+++ b/newlib/libc/sys/configure.in
@@ -22,7 +22,7 @@ if test -n "${sys_dir}"; then
fi
CRT0=
-if test "x${have_crt0}" = "xyes"; then
+if test -n "${sys_dir}"; then
CRT0=crt0.o
fi
AC_SUBST(CRT0)
diff --git a/newlib/libc/sys/d10v/aclocal.m4 b/newlib/libc/sys/d10v/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/d10v/aclocal.m4
+++ b/newlib/libc/sys/d10v/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/d10v/configure b/newlib/libc/sys/d10v/configure
index 091e11fe7..78fa14c6c 100755
--- a/newlib/libc/sys/d10v/configure
+++ b/newlib/libc/sys/d10v/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/decstation/aclocal.m4 b/newlib/libc/sys/decstation/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/decstation/aclocal.m4
+++ b/newlib/libc/sys/decstation/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/decstation/configure b/newlib/libc/sys/decstation/configure
index 58f3ec9b0..284cdbeef 100755
--- a/newlib/libc/sys/decstation/configure
+++ b/newlib/libc/sys/decstation/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/h8300hms/aclocal.m4 b/newlib/libc/sys/h8300hms/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/h8300hms/aclocal.m4
+++ b/newlib/libc/sys/h8300hms/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/h8300hms/configure b/newlib/libc/sys/h8300hms/configure
index 1efee2bcc..6bf7ae1cb 100755
--- a/newlib/libc/sys/h8300hms/configure
+++ b/newlib/libc/sys/h8300hms/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/h8500hms/aclocal.m4 b/newlib/libc/sys/h8500hms/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/h8500hms/aclocal.m4
+++ b/newlib/libc/sys/h8500hms/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/h8500hms/configure b/newlib/libc/sys/h8500hms/configure
index 639276001..906e15091 100755
--- a/newlib/libc/sys/h8500hms/configure
+++ b/newlib/libc/sys/h8500hms/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/linux/Makefile.am b/newlib/libc/sys/linux/Makefile.am
index de11547a3..56842cebb 100644
--- a/newlib/libc/sys/linux/Makefile.am
+++ b/newlib/libc/sys/linux/Makefile.am
@@ -146,7 +146,8 @@ ELIX_3_OBJS = \
ELIX_4_OBJS = \
getlogin.$(oext) \
- getpwent.$(oext) \
+ getpwnam.$(oext) \
+ getpwuid.$(oext) \
stack.$(oext)
if ELIX_LEVEL_1
diff --git a/newlib/libc/sys/linux/Makefile.in b/newlib/libc/sys/linux/Makefile.in
index ead358265..3f110fab2 100644
--- a/newlib/libc/sys/linux/Makefile.in
+++ b/newlib/libc/sys/linux/Makefile.in
@@ -118,7 +118,7 @@ ELIX_2_OBJS = aio64.$(oext) confstr.$(oext) ctermid.$(oext) fclean.$(oext)
ELIX_3_OBJS = system.$(oext) wait.$(oext)
-ELIX_4_OBJS = getlogin.$(oext) getpwent.$(oext) stack.$(oext)
+ELIX_4_OBJS = getlogin.$(oext) getpwnam.$(oext) getpwuid.$(oext) stack.$(oext)
@ELIX_LEVEL_1_TRUE@LIB_OBJS =
@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_TRUE@LIB_OBJS = $(ELIX_2_OBJS)
diff --git a/newlib/libc/sys/linux/aclocal.m4 b/newlib/libc/sys/linux/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/aclocal.m4
+++ b/newlib/libc/sys/linux/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/aio.c b/newlib/libc/sys/linux/aio.c
index 9a2e4ce57..de988ebfc 100644
--- a/newlib/libc/sys/linux/aio.c
+++ b/newlib/libc/sys/linux/aio.c
@@ -4,8 +4,6 @@
/* Currently asynchronous I/O is not implemented. */
-#define _GNU_SOURCE 1
-
#include <sys/types.h>
#include <aio.h>
#include <errno.h>
diff --git a/newlib/libc/sys/linux/argp/argp-fs-xinl.c b/newlib/libc/sys/linux/argp/argp-fs-xinl.c
index 9b836d138..b61a303e8 100644
--- a/newlib/libc/sys/linux/argp/argp-fs-xinl.c
+++ b/newlib/libc/sys/linux/argp/argp-fs-xinl.c
@@ -24,7 +24,7 @@
#define ARGP_FS_EI
#undef __OPTIMIZE__
-#define __OPTIMIZE__ 1
+#define __OPTIMIZE__
#include "argp-fmtstream.h"
/* Add weak aliases. */
diff --git a/newlib/libc/sys/linux/argp/argp-xinl.c b/newlib/libc/sys/linux/argp/argp-xinl.c
index 644836d30..0d64b1efb 100644
--- a/newlib/libc/sys/linux/argp/argp-xinl.c
+++ b/newlib/libc/sys/linux/argp/argp-xinl.c
@@ -29,7 +29,7 @@
#endif
#define ARGP_EI
#undef __OPTIMIZE__
-#define __OPTIMIZE__ 1
+#define __OPTIMIZE__
#include <argp.h>
/* Add weak aliases. */
diff --git a/newlib/libc/sys/linux/bits/initspin.h b/newlib/libc/sys/linux/bits/initspin.h
deleted file mode 100644
index a19ec077e..000000000
--- a/newlib/libc/sys/linux/bits/initspin.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generic definitions for spinlock initializers.
- Copyright (C) 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-/* Initial value of a spinlock. Most platforms should use zero,
- unless they only implement a "test and clear" operation instead of
- the usual "test and set". */
-#define __LT_SPINLOCK_INIT 0
-
-/* Macros for lock initializers, using the above definition. */
-#define __LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
-#define __ALT_LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
-#define __ATOMIC_INITIALIZER { 0, __LT_SPINLOCK_INIT }
diff --git a/newlib/libc/sys/linux/bits/libc-lock.h b/newlib/libc/sys/linux/bits/libc-lock.h
deleted file mode 100644
index 2b170444b..000000000
--- a/newlib/libc/sys/linux/bits/libc-lock.h
+++ /dev/null
@@ -1,380 +0,0 @@
-/* libc-internal interface for mutex locks. LinuxThreads version.
- Copyright (C) 1996,1997,1998,1999,2000,2001,2002,2003
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-#ifndef _BITS_LIBC_LOCK_H
-#define _BITS_LIBC_LOCK_H 1
-
-#include <pthread.h>
-
-#if defined _LIBC && !defined NOT_IN_libc
-#include <linuxthreads/internals.h>
-#endif
-
-/* Mutex type. */
-#if defined(_LIBC) || defined(_IO_MTSAFE_IO)
-typedef pthread_mutex_t __libc_lock_t;
-typedef struct { pthread_mutex_t mutex; } __libc_lock_recursive_t;
-# ifdef __USE_UNIX98
-typedef pthread_rwlock_t __libc_rwlock_t;
-# else
-typedef struct __libc_rwlock_opaque__ __libc_rwlock_t;
-# endif
-typedef __libc_lock_recursive_t __rtld_lock_recursive_t;
-#else
-typedef struct __libc_lock_opaque__ __libc_lock_t;
-typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
-typedef struct __libc_rwlock_opaque__ __libc_rwlock_t;
-#endif
-
-/* Type for key to thread-specific data. */
-typedef pthread_key_t __libc_key_t;
-
-/* Define a lock variable NAME with storage class CLASS. The lock must be
- initialized with __libc_lock_init before it can be used (or define it
- with __libc_lock_define_initialized, below). Use `extern' for CLASS to
- declare a lock defined in another module. In public structure
- definitions you must use a pointer to the lock structure (i.e., NAME
- begins with a `*'), because its storage size will not be known outside
- of libc. */
-#define __libc_lock_define(CLASS,NAME) \
- CLASS __libc_lock_t NAME;
-#define __libc_rwlock_define(CLASS,NAME) \
- CLASS __libc_rwlock_t NAME;
-#define __libc_lock_define_recursive(CLASS,NAME) \
- CLASS __libc_lock_recursive_t NAME;
-#define __rtld_lock_define_recursive(CLASS,NAME) \
- CLASS __rtld_lock_recursive_t NAME;
-
-/* Define an initialized lock variable NAME with storage class CLASS.
-
- For the C library we take a deeper look at the initializer. For
- this implementation all fields are initialized to zero. Therefore
- we don't initialize the variable which allows putting it into the
- BSS section. (Except on PA-RISC and other odd architectures, where
- initialized locks must be set to one due to the lack of normal
- atomic operations.) */
-
-#if __LT_SPINLOCK_INIT == 0
-# define __libc_lock_define_initialized(CLASS,NAME) \
- CLASS __libc_lock_t NAME;
-#else
-# define __libc_lock_define_initialized(CLASS,NAME) \
- CLASS __libc_lock_t NAME = PTHREAD_MUTEX_INITIALIZER;
-#endif
-
-#define __libc_rwlock_define_initialized(CLASS,NAME) \
- CLASS __libc_rwlock_t NAME = PTHREAD_RWLOCK_INITIALIZER;
-
-/* Define an initialized recursive lock variable NAME with storage
- class CLASS. */
-#define __libc_lock_define_initialized_recursive(CLASS,NAME) \
- CLASS __libc_lock_recursive_t NAME = _LIBC_LOCK_RECURSIVE_INITIALIZER;
-#define _LIBC_LOCK_RECURSIVE_INITIALIZER \
- {PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP}
-
-#define __rtld_lock_define_initialized_recursive(CLASS,NAME) \
- CLASS __rtld_lock_recursive_t NAME = _RTLD_LOCK_RECURSIVE_INITIALIZER;
-#define _RTLD_LOCK_RECURSIVE_INITIALIZER \
- {PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP}
-
-#if defined _LIBC && defined IS_IN_libpthread
-# define __libc_maybe_call(FUNC, ARGS, ELSE) FUNC ARGS
-#else
-# if defined __PIC__ || (defined _LIBC && defined SHARED)
-# define __libc_maybe_call(FUNC, ARGS, ELSE) \
- (__extension__ ({ __typeof (FUNC) *_fn = (FUNC); \
- _fn != NULL ? (*_fn) ARGS : ELSE; }))
-# else
-# define __libc_maybe_call(FUNC, ARGS, ELSE) \
- (FUNC != NULL ? FUNC ARGS : ELSE)
-# endif
-#endif
-#if defined _LIBC && !defined NOT_IN_libc && defined SHARED
-# define __libc_maybe_call2(FUNC, ARGS, ELSE) \
- ({__builtin_expect (__libc_pthread_functions.ptr_##FUNC != NULL, 0) \
- ? __libc_pthread_functions.ptr_##FUNC ARGS : ELSE; })
-#else
-# define __libc_maybe_call2(FUNC, ARGS, ELSE) __libc_maybe_call (__##FUNC, ARGS, ELSE)
-#endif
-
-/* Initialize the named lock variable, leaving it in a consistent, unlocked
- state. */
-#if defined _LIBC && !defined NOT_IN_libc && defined SHARED
-#define __libc_lock_init(NAME) \
- ({ \
- (NAME).__m_count = 0; \
- (NAME).__m_owner = NULL; \
- (NAME).__m_kind = PTHREAD_MUTEX_TIMED_NP; \
- (NAME).__m_lock.__status = 0; \
- (NAME).__m_lock.__spinlock = __LT_SPINLOCK_INIT; \
- 0; })
-#else
-#define __libc_lock_init(NAME) \
- (__libc_maybe_call2 (pthread_mutex_init, (&(NAME), NULL), 0))
-#endif
-#define __libc_rwlock_init(NAME) \
- (__libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0));
-
-/* Same as last but this time we initialize a recursive mutex. */
-#if defined _LIBC && !defined NOT_IN_libc && defined SHARED
-#define __libc_lock_init_recursive(NAME) \
- ({ \
- (NAME).mutex.__m_count = 0; \
- (NAME).mutex.__m_owner = NULL; \
- (NAME).mutex.__m_kind = PTHREAD_MUTEX_RECURSIVE_NP; \
- (NAME).mutex.__m_lock.__status = 0; \
- (NAME).mutex.__m_lock.__spinlock = __LT_SPINLOCK_INIT; \
- 0; })
-#else
-#define __libc_lock_init_recursive(NAME) \
- do { \
- if (__pthread_mutex_init != NULL) \
- { \
- pthread_mutexattr_t __attr; \
- __pthread_mutexattr_init (&__attr); \
- __pthread_mutexattr_settype (&__attr, PTHREAD_MUTEX_RECURSIVE_NP); \
- __pthread_mutex_init (&(NAME).mutex, &__attr); \
- __pthread_mutexattr_destroy (&__attr); \
- } \
- } while (0);
-#endif
-#define __rtld_lock_init_recursive(NAME) \
- __libc_lock_init_recursive (NAME)
-
-/* Finalize the named lock variable, which must be locked. It cannot be
- used again until __libc_lock_init is called again on it. This must be
- called on a lock variable before the containing storage is reused. */
-#define __libc_lock_fini(NAME) \
- (__libc_maybe_call2 (pthread_mutex_destroy, (&(NAME)), 0));
-#define __libc_rwlock_fini(NAME) \
- (__libc_maybe_call (__pthread_rwlock_destroy, (&(NAME)), 0));
-
-/* Finalize recursive named lock. */
-#define __libc_lock_fini_recursive(NAME) __libc_lock_fini ((NAME).mutex)
-#define __rtld_lock_fini_recursive(NAME) __libc_lock_fini_recursive (NAME)
-
-/* Lock the named lock variable. */
-#define __libc_lock_lock(NAME) \
- (__libc_maybe_call2 (pthread_mutex_lock, (&(NAME)), 0));
-#define __libc_rwlock_rdlock(NAME) \
- (__libc_maybe_call (__pthread_rwlock_rdlock, (&(NAME)), 0));
-#define __libc_rwlock_wrlock(NAME) \
- (__libc_maybe_call (__pthread_rwlock_wrlock, (&(NAME)), 0));
-
-/* Lock the recursive named lock variable. */
-#define __libc_lock_lock_recursive(NAME) __libc_lock_lock ((NAME).mutex)
-
-/* Try to lock the named lock variable. */
-#define __libc_lock_trylock(NAME) \
- (__libc_maybe_call2 (pthread_mutex_trylock, (&(NAME)), 0))
-#define __libc_rwlock_tryrdlock(NAME) \
- (__libc_maybe_call (__pthread_rwlock_tryrdlock, (&(NAME)), 0))
-#define __libc_rwlock_trywrlock(NAME) \
- (__libc_maybe_call (__pthread_rwlock_trywrlock, (&(NAME)), 0))
-
-/* Try to lock the recursive named lock variable. */
-#define __libc_lock_trylock_recursive(NAME) __libc_lock_trylock ((NAME).mutex)
-#define __rtld_lock_trylock_recursive(NAME) \
- __libc_lock_trylock_recursive (NAME)
-
-/* Unlock the named lock variable. */
-#define __libc_lock_unlock(NAME) \
- (__libc_maybe_call2 (pthread_mutex_unlock, (&(NAME)), 0));
-#define __libc_rwlock_unlock(NAME) \
- (__libc_maybe_call (__pthread_rwlock_unlock, (&(NAME)), 0));
-
-/* Unlock the recursive named lock variable. */
-#define __libc_lock_unlock_recursive(NAME) __libc_lock_unlock ((NAME).mutex)
-
-#if defined _LIBC && defined SHARED
-# define __rtld_lock_default_lock_recursive(lock) \
- ++((pthread_mutex_t *)(lock))->__m_count;
-
-# define __rtld_lock_default_unlock_recursive(lock) \
- --((pthread_mutex_t *)(lock))->__m_count;
-
-# define __rtld_lock_lock_recursive(NAME) \
- GL(dl_rtld_lock_recursive) (&(NAME).mutex)
-
-# define __rtld_lock_unlock_recursive(NAME) \
- GL(dl_rtld_unlock_recursive) (&(NAME).mutex)
-#else
-#define __rtld_lock_lock_recursive(NAME) __libc_lock_lock_recursive (NAME)
-#define __rtld_lock_unlock_recursive(NAME) __libc_lock_unlock_recursive (NAME)
-#endif
-
-/* Define once control variable. */
-#if PTHREAD_ONCE_INIT == 0
-/* Special case for static variables where we can avoid the initialization
- if it is zero. */
-# define __libc_once_define(CLASS, NAME) \
- CLASS pthread_once_t NAME
-#else
-# define __libc_once_define(CLASS, NAME) \
- CLASS pthread_once_t NAME = PTHREAD_ONCE_INIT
-#endif
-
-/* Call handler iff the first call. */
-#define __libc_once(ONCE_CONTROL, INIT_FUNCTION) \
- do { \
- if (__pthread_once != NULL) \
- __pthread_once (&(ONCE_CONTROL), (INIT_FUNCTION)); \
- else if ((ONCE_CONTROL) == PTHREAD_ONCE_INIT) { \
- INIT_FUNCTION (); \
- (ONCE_CONTROL) = 2; \
- } \
- } while (0)
-
-
-/* Start critical region with cleanup. */
-#define __libc_cleanup_region_start(DOIT, FCT, ARG) \
- { struct _pthread_cleanup_buffer _buffer; \
- int _avail = (DOIT) && _pthread_cleanup_push_defer != NULL; \
- if (_avail) { \
- _pthread_cleanup_push_defer (&_buffer, (FCT), (ARG)); \
- }
-
-/* End critical region with cleanup. */
-#define __libc_cleanup_region_end(DOIT) \
- if (_avail) { \
- _pthread_cleanup_pop_restore (&_buffer, (DOIT)); \
- } \
- }
-
-/* Sometimes we have to exit the block in the middle. */
-#define __libc_cleanup_end(DOIT) \
- if (_avail) { \
- _pthread_cleanup_pop_restore (&_buffer, (DOIT)); \
- }
-
-#define __libc_cleanup_push(fct, arg) \
- { struct _pthread_cleanup_buffer _buffer; \
- __libc_maybe_call (_pthread_cleanup_push, (&_buffer, (fct), (arg)), 0)
-
-#define __libc_cleanup_pop(execute) \
- __libc_maybe_call (_pthread_cleanup_pop, (&_buffer, execute), 0); \
- }
-
-/* Create thread-specific key. */
-#define __libc_key_create(KEY, DESTRUCTOR) \
- (__libc_maybe_call (__pthread_key_create, (KEY, DESTRUCTOR), 1))
-
-/* Get thread-specific data. */
-#define __libc_getspecific(KEY) \
- (__libc_maybe_call (__pthread_getspecific, (KEY), NULL))
-
-/* Set thread-specific data. */
-#define __libc_setspecific(KEY, VALUE) \
- (__libc_maybe_call (__pthread_setspecific, (KEY, VALUE), 0))
-
-
-/* Register handlers to execute before and after `fork'. */
-#define __libc_atfork(PREPARE, PARENT, CHILD) \
- (__libc_maybe_call (__pthread_atfork, (PREPARE, PARENT, CHILD), 0))
-
-/* Functions that are used by this file and are internal to the GNU C
- library. */
-
-extern int __pthread_mutex_init (pthread_mutex_t *__mutex,
- __const pthread_mutexattr_t *__mutex_attr);
-
-extern int __pthread_mutex_destroy (pthread_mutex_t *__mutex);
-
-extern int __pthread_mutex_trylock (pthread_mutex_t *__mutex);
-
-extern int __pthread_mutex_lock (pthread_mutex_t *__mutex);
-
-extern int __pthread_mutex_unlock (pthread_mutex_t *__mutex);
-
-extern int __pthread_mutexattr_init (pthread_mutexattr_t *__attr);
-
-extern int __pthread_mutexattr_destroy (pthread_mutexattr_t *__attr);
-
-extern int __pthread_mutexattr_settype (pthread_mutexattr_t *__attr,
- int __kind);
-
-#ifdef __USE_UNIX98
-extern int __pthread_rwlock_init (pthread_rwlock_t *__rwlock,
- __const pthread_rwlockattr_t *__attr);
-
-extern int __pthread_rwlock_destroy (pthread_rwlock_t *__rwlock);
-
-extern int __pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock);
-
-extern int __pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock);
-
-extern int __pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock);
-
-extern int __pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock);
-
-extern int __pthread_rwlock_unlock (pthread_rwlock_t *__rwlock);
-#endif
-
-extern int __pthread_key_create (pthread_key_t *__key,
- void (*__destr_function) (void *));
-
-extern int __pthread_setspecific (pthread_key_t __key,
- __const void *__pointer);
-
-extern void *__pthread_getspecific (pthread_key_t __key);
-
-extern int __pthread_once (pthread_once_t *__once_control,
- void (*__init_routine) (void));
-
-extern int __pthread_atfork (void (*__prepare) (void),
- void (*__parent) (void),
- void (*__child) (void));
-
-
-
-/* Make the pthread functions weak so that we can elide them from
- single-threaded processes. */
-#ifndef __NO_WEAK_PTHREAD_ALIASES
-# pragma weak __pthread_mutex_init
-# pragma weak __pthread_mutex_destroy
-# pragma weak __pthread_mutex_lock
-# pragma weak __pthread_mutex_trylock
-# pragma weak __pthread_mutex_unlock
-# pragma weak __pthread_mutexattr_init
-# pragma weak __pthread_mutexattr_destroy
-# pragma weak __pthread_mutexattr_settype
-# pragma weak __pthread_rwlock_destroy
-# pragma weak __pthread_rwlock_rdlock
-# pragma weak __pthread_rwlock_tryrdlock
-# pragma weak __pthread_rwlock_wrlock
-# pragma weak __pthread_rwlock_trywrlock
-# pragma weak __pthread_rwlock_unlock
-# pragma weak __pthread_key_create
-# pragma weak __pthread_setspecific
-# pragma weak __pthread_getspecific
-# pragma weak __pthread_once
-# pragma weak __pthread_initialize
-# pragma weak __pthread_atfork
-# pragma weak _pthread_cleanup_push_defer
-# pragma weak _pthread_cleanup_pop_restore
-# pragma weak _pthread_cleanup_push
-# pragma weak _pthread_cleanup_pop
-#endif
-
-/* We need portable names for some functions. E.g., when they are
- used as argument to __libc_cleanup_region_start. */
-#define __libc_mutex_unlock __pthread_mutex_unlock
-
-#endif /* bits/libc-lock.h */
diff --git a/newlib/libc/sys/linux/bits/pthreadtypes.h b/newlib/libc/sys/linux/bits/pthreadtypes.h
deleted file mode 100644
index d1daef07a..000000000
--- a/newlib/libc/sys/linux/bits/pthreadtypes.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Linuxthreads - a simple clone()-based implementation of Posix */
-/* threads for Linux. */
-/* Copyright (C) 1996 Xavier Leroy (Xavier.Leroy@inria.fr) */
-/* */
-/* This program is free software; you can redistribute it and/or */
-/* modify it under the terms of the GNU Library General Public License */
-/* as published by the Free Software Foundation; either version 2 */
-/* of the License, or (at your option) any later version. */
-/* */
-/* This program is distributed in the hope that it will be useful, */
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
-/* GNU Library General Public License for more details. */
-
-#if !defined _BITS_TYPES_H && !defined _PTHREAD_H
-# error "Never include <bits/pthreadtypes.h> directly; use <sys/types.h> instead."
-#endif
-
-#ifndef _BITS_PTHREADTYPES_H
-#define _BITS_PTHREADTYPES_H 1
-
-#define __need_schedparam
-#include <bits/sched.h>
-
-/* Fast locks (not abstract because mutexes and conditions aren't abstract). */
-struct _pthread_fastlock
-{
- long int __status; /* "Free" or "taken" or head of waiting list */
- int __spinlock; /* Used by compare_and_swap emulation. Also,
- adaptive SMP lock stores spin count here. */
-};
-
-#ifndef _PTHREAD_DESCR_DEFINED
-/* Thread descriptors */
-typedef struct _pthread_descr_struct *_pthread_descr;
-# define _PTHREAD_DESCR_DEFINED
-#endif
-
-
-/* Attributes for threads. */
-typedef struct __pthread_attr_s
-{
- int __detachstate;
- int __schedpolicy;
- struct __sched_param __schedparam;
- int __inheritsched;
- int __scope;
- size_t __guardsize;
- int __stackaddr_set;
- void *__stackaddr;
- size_t __stacksize;
-} pthread_attr_t;
-
-
-/* Conditions (not abstract because of PTHREAD_COND_INITIALIZER */
-
-#ifdef __GLIBC_HAVE_LONG_LONG
-__extension__ typedef long long __pthread_cond_align_t;
-#else
-typedef long __pthread_cond_align_t;
-#endif
-
-typedef struct
-{
- struct _pthread_fastlock __c_lock; /* Protect against concurrent access */
- _pthread_descr __c_waiting; /* Threads waiting on this condition */
- char __padding[48 - sizeof (struct _pthread_fastlock)
- - sizeof (_pthread_descr) - sizeof (__pthread_cond_align_t)];
- __pthread_cond_align_t __align;
-} pthread_cond_t;
-
-
-/* Attribute for conditionally variables. */
-typedef struct
-{
- int __dummy;
-} pthread_condattr_t;
-
-/* Keys for thread-specific data */
-typedef unsigned int pthread_key_t;
-
-
-/* Mutexes (not abstract because of PTHREAD_MUTEX_INITIALIZER). */
-/* (The layout is unnatural to maintain binary compatibility
- with earlier releases of LinuxThreads.) */
-typedef struct
-{
- int __m_reserved; /* Reserved for future use */
- int __m_count; /* Depth of recursive locking */
- _pthread_descr __m_owner; /* Owner thread (if recursive or errcheck) */
- int __m_kind; /* Mutex kind: fast, recursive or errcheck */
- struct _pthread_fastlock __m_lock; /* Underlying fast lock */
-} pthread_mutex_t;
-
-
-/* Attribute for mutex. */
-typedef struct
-{
- int __mutexkind;
-} pthread_mutexattr_t;
-
-
-/* Once-only execution */
-typedef int pthread_once_t;
-
-
-#if defined __USE_UNIX98 || defined __USE_XOPEN2K
-/* Read-write locks. */
-typedef struct _pthread_rwlock_t
-{
- struct _pthread_fastlock __rw_lock; /* Lock to guarantee mutual exclusion */
- int __rw_readers; /* Number of readers */
- _pthread_descr __rw_writer; /* Identity of writer, or NULL if none */
- _pthread_descr __rw_read_waiting; /* Threads waiting for reading */
- _pthread_descr __rw_write_waiting; /* Threads waiting for writing */
- int __rw_kind; /* Reader/Writer preference selection */
- int __rw_pshared; /* Shared between processes or not */
-} pthread_rwlock_t;
-
-
-/* Attribute for read-write locks. */
-typedef struct
-{
- int __lockkind;
- int __pshared;
-} pthread_rwlockattr_t;
-#endif
-
-#ifdef __USE_XOPEN2K
-/* POSIX spinlock data type. */
-typedef volatile int pthread_spinlock_t;
-
-/* POSIX barrier. */
-typedef struct {
- struct _pthread_fastlock __ba_lock; /* Lock to guarantee mutual exclusion */
- int __ba_required; /* Threads needed for completion */
- int __ba_present; /* Threads waiting */
- _pthread_descr __ba_waiting; /* Queue of waiting threads */
-} pthread_barrier_t;
-
-/* barrier attribute */
-typedef struct {
- int __pshared;
-} pthread_barrierattr_t;
-
-#endif
-
-
-/* Thread identifiers */
-typedef unsigned long int pthread_t;
-
-#endif /* bits/pthreadtypes.h */
diff --git a/newlib/libc/sys/linux/bits/typesizes.h b/newlib/libc/sys/linux/bits/typesizes.h
deleted file mode 100644
index 45264ac9c..000000000
--- a/newlib/libc/sys/linux/bits/typesizes.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/* bits/typesizes.h -- underlying types for *_t. Generic version.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _BITS_TYPES_H
-# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead."
-#endif
-
-#ifndef _BITS_TYPESIZES_H
-#define _BITS_TYPESIZES_H 1
-
-/* See <bits/types.h> for the meaning of these macros. This file exists so
- that <bits/types.h> need not vary across different GNU platforms. */
-
-#define __DEV_T_TYPE __UQUAD_TYPE
-#define __UID_T_TYPE __U32_TYPE
-#define __GID_T_TYPE __U32_TYPE
-#define __INO_T_TYPE __ULONGWORD_TYPE
-#define __INO64_T_TYPE __UQUAD_TYPE
-#define __MODE_T_TYPE __U32_TYPE
-#define __NLINK_T_TYPE __UWORD_TYPE
-#define __OFF_T_TYPE __SLONGWORD_TYPE
-#define __OFF64_T_TYPE __SQUAD_TYPE
-#define __PID_T_TYPE __S32_TYPE
-#define __RLIM_T_TYPE __ULONGWORD_TYPE
-#define __RLIM64_T_TYPE __UQUAD_TYPE
-#define __BLKCNT_T_TYPE __SLONGWORD_TYPE
-#define __BLKCNT64_T_TYPE __SQUAD_TYPE
-#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE
-#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE
-#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE
-#define __FSFILCNT64_T_TYPE __UQUAD_TYPE
-#define __ID_T_TYPE __U32_TYPE
-#define __CLOCK_T_TYPE __SLONGWORD_TYPE
-#define __TIME_T_TYPE __SLONGWORD_TYPE
-#define __USECONDS_T_TYPE __U32_TYPE
-#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
-#define __DADDR_T_TYPE __S32_TYPE
-#define __SWBLK_T_TYPE __SLONGWORD_TYPE
-#define __KEY_T_TYPE __S32_TYPE
-#define __CLOCKID_T_TYPE __S32_TYPE
-#define __TIMER_T_TYPE __S32_TYPE
-#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE
-#define __FSID_T_TYPE struct { int __val[2]; }
-#define __SSIZE_T_TYPE __SWORD_TYPE
-
-/* Number of descriptors that can fit in an `fd_set'. */
-#define __FD_SETSIZE 1024
-
-
-#endif /* bits/typesizes.h */
diff --git a/newlib/libc/sys/linux/configure b/newlib/libc/sys/linux/configure
index 202a986e1..a845de1ac 100755
--- a/newlib/libc/sys/linux/configure
+++ b/newlib/libc/sys/linux/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -2994,7 +2991,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2998: checking for $ac_word" >&5
+echo "configure:2995: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/newlib/libc/sys/linux/dl/dl-cache.c b/newlib/libc/sys/linux/dl/dl-cache.c
index 9511da13f..a71e5e876 100644
--- a/newlib/libc/sys/linux/dl/dl-cache.c
+++ b/newlib/libc/sys/linux/dl/dl-cache.c
@@ -208,7 +208,7 @@ _dl_load_cache_lookup (const char *name)
/* This file ends in static libraries where we don't have a hwcap. */
unsigned long int *hwcap;
uint64_t platform;
- #pragma weak _dl_hwcap
+ weak_extern (_dl_hwcap);
/* This is where the strings start. */
cache_data = (const char *) cache_new;
diff --git a/newlib/libc/sys/linux/dl/dl-load.c b/newlib/libc/sys/linux/dl/dl-load.c
index 4e32d604b..65b72c729 100644
--- a/newlib/libc/sys/linux/dl/dl-load.c
+++ b/newlib/libc/sys/linux/dl/dl-load.c
@@ -1095,7 +1095,7 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
}
else
/* Adjust the PT_PHDR value by the runtime load address. */
- l->l_phdr = (ElfW(Addr)) l->l_phdr + l->l_addr;
+ (ElfW(Addr)) l->l_phdr += l->l_addr;
}
/* We are done mapping in the file. We no longer need the descriptor. */
@@ -1115,7 +1115,7 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
}
}
else
- l->l_ld = (ElfW(Addr)) l->l_ld + l->l_addr;
+ (ElfW(Addr)) l->l_ld += l->l_addr;
l->l_entry += l->l_addr;
diff --git a/newlib/libc/sys/linux/dl/dl-local.h b/newlib/libc/sys/linux/dl/dl-local.h
deleted file mode 100644
index 3629ab94c..000000000
--- a/newlib/libc/sys/linux/dl/dl-local.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef _LOCAL_H
-#include <dlfcn.h>
-
-#define internal_function
-
-/* Internally used flag. */
-#define __RTLD_DLOPEN 0x80000000
-#define __RTLD_SPROF 0x40000000
-
-/* Now define the internal interfaces. */
-extern void *__dlvsym (void *__handle, __const char *__name,
- __const char *__version);
-
-extern void *__libc_dlopen (__const char *__name);
-extern void *__libc_dlsym (void *__map, __const char *__name);
-extern int __libc_dlclose (void *__map);
-
-/* Locate shared object containing the given address. */
-extern int _dl_addr (const void *address, Dl_info *info)
- internal_function;
-
-/* Open the shared object NAME, relocate it, and run its initializer if it
- hasn't already been run. MODE is as for `dlopen' (see <dlfcn.h>). If
- the object is already opened, returns its existing map. */
-extern void *_dl_open (const char *name, int mode, const void *caller)
- internal_function;
-
-/* Close an object previously opened by _dl_open. */
-extern void _dl_close (void *map)
- internal_function;
-
-/* Look up NAME in shared object HANDLE (which may be RTLD_DEFAULT or
- RTLD_NEXT). WHO is the calling function, for RTLD_NEXT. Returns
- the symbol value, which may be NULL. */
-extern void *_dl_sym (void *handle, const char *name, void *who)
- internal_function;
-
-/* Look up version VERSION of symbol NAME in shared object HANDLE
- (which may be RTLD_DEFAULT or RTLD_NEXT). WHO is the calling
- function, for RTLD_NEXT. Returns the symbol value, which may be
- NULL. */
-extern void *_dl_vsym (void *handle, const char *name, const char *version,
- void *who)
- internal_function;
-
-/* Call OPERATE, catching errors from `dl_signal_error'. If there is no
- error, *ERRSTRING is set to null. If there is an error, *ERRSTRING is
- set to a string constructed from the strings passed to _dl_signal_error,
- and the error code passed is the return value and *OBJNAME is set to
- the object name which experienced the problems. ERRSTRING if nonzero
- points to a malloc'ed string which the caller has to free after use.
- ARGS is passed as argument to OPERATE. */
-extern int _dl_catch_error (const char **objname, const char **errstring,
- void (*operate) (void *),
- void *args)
- internal_function;
-
-/* Helper function for <dlfcn.h> functions. Runs the OPERATE function via
- _dl_catch_error. Returns zero for success, nonzero for failure; and
- arranges for `dlerror' to return the error details.
- ARGS is passed as argument to OPERATE. */
-extern int _dlerror_run (void (*operate) (void *), void *args)
- internal_function;
-
-#endif
diff --git a/newlib/libc/sys/linux/dl/dl-open.c b/newlib/libc/sys/linux/dl/dl-open.c
index 4e068d435..195361427 100644
--- a/newlib/libc/sys/linux/dl/dl-open.c
+++ b/newlib/libc/sys/linux/dl/dl-open.c
@@ -36,8 +36,8 @@
extern ElfW(Addr) _dl_sysdep_start (void **start_argptr,
void (*dl_main) (const ElfW(Phdr) *phdr,
ElfW(Word) phnum,
- ElfW(Addr) *user_entry))
- weak_function;
+ ElfW(Addr) *user_entry));
+weak_extern (BP_SYM (_dl_sysdep_start))
/* This function is used to unload the cache file if necessary. */
extern void _dl_unload_cache (void);
diff --git a/newlib/libc/sys/linux/dl/dl-reloc.c b/newlib/libc/sys/linux/dl/dl-reloc.c
index 0bffa4e76..94163143e 100644
--- a/newlib/libc/sys/linux/dl/dl-reloc.c
+++ b/newlib/libc/sys/linux/dl/dl-reloc.c
@@ -105,47 +105,50 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
{
/* Do the actual relocation of the object's GOT and other data. */
+ /* String table object symbols. */
+ const char *strtab = (const void *) D_PTR (l, l_info[DT_STRTAB]);
+
/* This macro is used as a callback from the ELF_DYNAMIC_RELOCATE code. */
-#define RESOLVE_MAP(ref, version, r_type, scope) \
+#define RESOLVE_MAP(ref, version, r_type) \
(ELFW(ST_BIND) ((*ref)->st_info) != STB_LOCAL \
- ? ((__builtin_expect ((*ref) == map->l_lookup_cache.sym, 0) \
- && elf_machine_type_class (r_type) == map->l_lookup_cache.type_class)\
+ ? ((__builtin_expect ((*ref) == l->l_lookup_cache.sym, 0) \
+ && elf_machine_type_class (r_type) == l->l_lookup_cache.type_class) \
? (++_dl_num_cache_relocations, \
- (*ref) = map->l_lookup_cache.ret, \
- map->l_lookup_cache.value) \
+ (*ref) = l->l_lookup_cache.ret, \
+ l->l_lookup_cache.value) \
: ({ lookup_t _lr; \
int _tc = elf_machine_type_class (r_type); \
- map->l_lookup_cache.type_class = _tc; \
- map->l_lookup_cache.sym = (*ref); \
+ l->l_lookup_cache.type_class = _tc; \
+ l->l_lookup_cache.sym = (*ref); \
_lr = ((version) != NULL && (version)->hash != 0 \
? _dl_lookup_versioned_symbol (strtab + (*ref)->st_name, \
- map, (ref), scope, \
+ l, (ref), scope, \
(version), _tc, 0) \
- : _dl_lookup_symbol (strtab + (*ref)->st_name, map, (ref),\
+ : _dl_lookup_symbol (strtab + (*ref)->st_name, l, (ref), \
scope, _tc, 0)); \
- map->l_lookup_cache.ret = (*ref); \
- map->l_lookup_cache.value = _lr; })) \
- : map)
-#define RESOLVE(ref, version, r_type, scope) \
+ l->l_lookup_cache.ret = (*ref); \
+ l->l_lookup_cache.value = _lr; })) \
+ : l)
+#define RESOLVE(ref, version, r_type) \
(ELFW(ST_BIND) ((*ref)->st_info) != STB_LOCAL \
- ? ((__builtin_expect ((*ref) == map->l_lookup_cache.sym, 0) \
- && elf_machine_type_class (r_type) == map->l_lookup_cache.type_class)\
+ ? ((__builtin_expect ((*ref) == l->l_lookup_cache.sym, 0) \
+ && elf_machine_type_class (r_type) == l->l_lookup_cache.type_class) \
? (++_dl_num_cache_relocations, \
- (*ref) = map->l_lookup_cache.ret, \
- map->l_lookup_cache.value) \
+ (*ref) = l->l_lookup_cache.ret, \
+ l->l_lookup_cache.value) \
: ({ lookup_t _lr; \
int _tc = elf_machine_type_class (r_type); \
- map->l_lookup_cache.type_class = _tc; \
- map->l_lookup_cache.sym = (*ref); \
+ l->l_lookup_cache.type_class = _tc; \
+ l->l_lookup_cache.sym = (*ref); \
_lr = ((version) != NULL && (version)->hash != 0 \
? _dl_lookup_versioned_symbol (strtab + (*ref)->st_name, \
- map, (ref), scope, \
+ l, (ref), scope, \
(version), _tc, 0) \
- : _dl_lookup_symbol (strtab + (*ref)->st_name, map, (ref),\
+ : _dl_lookup_symbol (strtab + (*ref)->st_name, l, (ref), \
scope, _tc, 0)); \
- map->l_lookup_cache.ret = (*ref); \
- map->l_lookup_cache.value = _lr; })) \
- : map->l_addr)
+ l->l_lookup_cache.ret = (*ref); \
+ l->l_lookup_cache.value = _lr; })) \
+ : l->l_addr)
#include "dynamic-link.h"
@@ -194,7 +197,6 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
}
}
-#include <machine/dl-machine.h>
void
internal_function
diff --git a/newlib/libc/sys/linux/dl/dl-runtime.c b/newlib/libc/sys/linux/dl/dl-runtime.c
index 4fb81cfaf..403091d2e 100644
--- a/newlib/libc/sys/linux/dl/dl-runtime.c
+++ b/newlib/libc/sys/linux/dl/dl-runtime.c
@@ -46,7 +46,7 @@
function. */
#ifndef ELF_MACHINE_NO_PLT
-static ElfW(Addr) __attribute__ ((regparm (2), used))
+static ElfW(Addr) __attribute__ ((regparm (2), unused))
fixup (
# ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
ELF_MACHINE_RUNTIME_FIXUP_ARGS,
@@ -130,7 +130,7 @@ fixup (
#if !defined PROF && !defined ELF_MACHINE_NO_PLT && !__BOUNDED_POINTERS__
-static ElfW(Addr) __attribute__ ((regparm (3), used))
+static ElfW(Addr) __attribute__ ((regparm (3), unused))
profile_fixup (
#ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
ELF_MACHINE_RUNTIME_FIXUP_ARGS,
diff --git a/newlib/libc/sys/linux/dl/dlfcn.h b/newlib/libc/sys/linux/dl/dlfcn.h
new file mode 100644
index 000000000..67ba73d5d
--- /dev/null
+++ b/newlib/libc/sys/linux/dl/dlfcn.h
@@ -0,0 +1,84 @@
+/* User functions for run-time dynamic loading.
+ Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+#ifndef _DLFCN_H
+#define _DLFCN_H 1
+
+#include <features.h>
+
+/* Collect various system dependent definitions and declarations. */
+#include <sys/dlfcn.h>
+
+
+/* If the first argument of `dlsym' or `dlvsym' is set to RTLD_NEXT
+ the run-time address of the symbol called NAME in the next shared
+ object is returned. The "next" relation is defined by the order
+ the shared objects were loaded. */
+# define RTLD_NEXT ((void *) -1l)
+
+/* If the first argument to `dlsym' or `dlvsym' is set to RTLD_DEFAULT
+ the run-time address of the symbol called NAME in the global scope
+ is returned. */
+# define RTLD_DEFAULT ((void *) 0)
+
+
+__BEGIN_DECLS
+
+/* Open the shared object FILE and map it in; return a handle that can be
+ passed to `dlsym' to get symbol values from it. */
+extern void *dlopen (__const char *__file, int __mode) __THROW;
+
+/* Unmap and close a shared object opened by `dlopen'.
+ The handle cannot be used again after calling `dlclose'. */
+extern int dlclose (void *__handle) __THROW;
+
+/* Find the run-time address in the shared object HANDLE refers to
+ of the symbol called NAME. */
+extern void *dlsym (void *__restrict __handle,
+ __const char *__restrict __name) __THROW;
+
+/* Find the run-time address in the shared object HANDLE refers to
+ of the symbol called NAME with VERSION. */
+extern void *dlvsym (void *__restrict __handle,
+ __const char *__restrict __name,
+ __const char *__restrict __version) __THROW;
+
+/* When any of the above functions fails, call this function
+ to return a string describing the error. Each call resets
+ the error string so that a following call returns null. */
+extern char *dlerror (void) __THROW;
+
+
+/* Structure containing information about object searched using
+ `dladdr'. */
+typedef struct
+{
+ __const char *dli_fname; /* File name of defining object. */
+ void *dli_fbase; /* Load address of that object. */
+ __const char *dli_sname; /* Name of nearest symbol. */
+ void *dli_saddr; /* Exact value of nearest symbol. */
+} Dl_info;
+
+/* Fill in *INFO with the following information about ADDRESS.
+ Returns 0 iff no shared object's segments contain that address. */
+extern int dladdr (__const void *__address, Dl_info *__info) __THROW;
+
+__END_DECLS
+
+#endif /* dlfcn.h */
diff --git a/newlib/libc/sys/linux/dl/do-rel.h b/newlib/libc/sys/linux/dl/do-rel.h
index 03b9e807b..46202d704 100644
--- a/newlib/libc/sys/linux/dl/do-rel.h
+++ b/newlib/libc/sys/linux/dl/do-rel.h
@@ -44,8 +44,7 @@
static inline void
elf_dynamic_do_rel (struct link_map *map,
ElfW(Addr) reladdr, ElfW(Addr) relsize,
- int lazy,
- struct r_scope_elem *scope[])
+ int lazy)
{
const ElfW(Rel) *r = (const void *) reladdr;
const ElfW(Rel) *end = (const void *) (reladdr + relsize);
@@ -78,7 +77,7 @@ elf_dynamic_do_rel (struct link_map *map,
RTLD_BOOTSTRAP) because rtld.c contains the common defn for
_dl_rtld_map, which is incompatible with a weak decl in the same
file. */
- #pragma weak _dl_rtld_map
+ weak_extern (_dl_rtld_map);
if (map != &_dl_rtld_map) /* Already done in rtld itself. */
# ifndef DO_RELA
/* Rela platforms get the offset from r_addend and this must
@@ -102,14 +101,13 @@ elf_dynamic_do_rel (struct link_map *map,
ElfW(Half) ndx = version[ELFW(R_SYM) (r->r_info)];
elf_machine_rel (map, r, &symtab[ELFW(R_SYM) (r->r_info)],
&map->l_versions[ndx],
- (void *) (l_addr + r->r_offset),
- scope);
+ (void *) (l_addr + r->r_offset));
}
}
else
for (; r < end; ++r)
elf_machine_rel (map, r, &symtab[ELFW(R_SYM) (r->r_info)], NULL,
- (void *) (l_addr + r->r_offset), scope);
+ (void *) (l_addr + r->r_offset));
}
}
diff --git a/newlib/libc/sys/linux/dl/dynamic-link.h b/newlib/libc/sys/linux/dl/dynamic-link.h
index c1709f7c6..a63fded89 100644
--- a/newlib/libc/sys/linux/dl/dynamic-link.h
+++ b/newlib/libc/sys/linux/dl/dynamic-link.h
@@ -17,9 +17,6 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
-#ifndef __DYNAMIC_LINK_H__
-#define __DYNAMIC_LINK_H__
-
#include <elf.h>
#include <machine/dl-machine.h>
#include <assert.h>
@@ -36,7 +33,7 @@ extern int _dl_verbose __attribute__ ((unused));
/* Read the dynamic section at DYN and fill in INFO with indices DT_*. */
-static void __attribute__ ((unused))
+static inline void __attribute__ ((unused))
elf_get_dynamic_info (struct link_map *l)
{
ElfW(Dyn) *dyn = l->l_ld;
@@ -124,17 +121,6 @@ elf_get_dynamic_info (struct link_map *l)
info[DT_RPATH] = NULL;
}
-# if ! ELF_MACHINE_NO_REL
-# include "do-rel.h"
-# endif
-
-# if ! ELF_MACHINE_NO_RELA
-# define DO_RELA
-# include "do-rel.h"
-# endif
-
-#endif /* __DYNAMIC_LINK_H__ */
-
#ifdef RESOLVE
/* Get the definitions of `elf_dynamic_do_rel' and `elf_dynamic_do_rela'.
@@ -178,8 +164,7 @@ elf_get_dynamic_info (struct link_map *l)
elf_dynamic_do_##reloc ((map), \
ranges[ranges_index].start, \
ranges[ranges_index].size, \
- ranges[ranges_index].lazy, \
- scope); \
+ ranges[ranges_index].lazy); \
} while (0)
# else
# define _ELF_DYNAMIC_DO_RELOC(RELOC, reloc, map, do_lazy, test_rel) \
@@ -219,8 +204,7 @@ elf_get_dynamic_info (struct link_map *l)
elf_dynamic_do_##reloc ((map), \
ranges[ranges_index].start, \
ranges[ranges_index].size, \
- ranges[ranges_index].lazy, \
- scope); \
+ ranges[ranges_index].lazy); \
} while (0)
# endif
@@ -231,6 +215,7 @@ elf_get_dynamic_info (struct link_map *l)
# endif
# if ! ELF_MACHINE_NO_REL
+# include "do-rel.h"
# define ELF_DYNAMIC_DO_REL(map, lazy) \
_ELF_DYNAMIC_DO_RELOC (REL, rel, map, lazy, _ELF_CHECK_REL)
# else
@@ -238,6 +223,8 @@ elf_get_dynamic_info (struct link_map *l)
# endif
# if ! ELF_MACHINE_NO_RELA
+# define DO_RELA
+# include "do-rel.h"
# define ELF_DYNAMIC_DO_RELA(map, lazy) \
_ELF_DYNAMIC_DO_RELOC (RELA, rela, map, lazy, _ELF_CHECK_REL)
# else
diff --git a/newlib/libc/sys/linux/dl/ldsodefs.h b/newlib/libc/sys/linux/dl/ldsodefs.h
index e6f57ddcf..f24e1136b 100644
--- a/newlib/libc/sys/linux/dl/ldsodefs.h
+++ b/newlib/libc/sys/linux/dl/ldsodefs.h
@@ -28,12 +28,11 @@
#include <string.h>
#include <elf.h>
+#include <dlfcn.h>
#include <link.h>
#include <dl-lookupcfg.h>
#include <bits/libc-lock.h>
-#include "dl-local.h"
-
__BEGIN_DECLS
/* We use this macro to refer to ELF types independent of the native wordsize.
diff --git a/newlib/libc/sys/linux/getpwent.c b/newlib/libc/sys/linux/getpwent.c
deleted file mode 100644
index 9479021e3..000000000
--- a/newlib/libc/sys/linux/getpwent.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* FIXME: dummy stub for now. */
-#include <errno.h>
-#include <pwd.h>
-
-struct passwd *
-_DEFUN (getpwnam, (name),
- _CONST char *name)
-{
- errno = ENOSYS;
- return NULL;
-}
-
-/* FIXME: dummy stub for now. */
-struct passwd *
-_DEFUN (getpwuid, (uid),
- uid_t uid)
-{
- errno = ENOSYS;
- return NULL;
-}
-
-/* FIXME: dummy stub for now. */
-struct passwd *
-_DEFUN (getpwent, (uid),
- uid_t uid)
-{
- errno = ENOSYS;
- return NULL;
-}
-
diff --git a/newlib/libc/sys/linux/getpwnam.c b/newlib/libc/sys/linux/getpwnam.c
new file mode 100644
index 000000000..c90562c5a
--- /dev/null
+++ b/newlib/libc/sys/linux/getpwnam.c
@@ -0,0 +1,12 @@
+/* FIXME: dummy stub for now. */
+#include <errno.h>
+#include <pwd.h>
+
+struct passwd *
+_DEFUN (getpwnam, (name),
+ _CONST char *name)
+{
+ errno = ENOSYS;
+ return NULL;
+}
+
diff --git a/newlib/libc/sys/linux/getpwuid.c b/newlib/libc/sys/linux/getpwuid.c
new file mode 100644
index 000000000..4e9fcb220
--- /dev/null
+++ b/newlib/libc/sys/linux/getpwuid.c
@@ -0,0 +1,12 @@
+/* FIXME: dummy stub for now. */
+#include <errno.h>
+#include <pwd.h>
+
+struct passwd *
+_DEFUN (getpwuid, (uid),
+ uid_t uid)
+{
+ errno = ENOSYS;
+ return NULL;
+}
+
diff --git a/newlib/libc/sys/linux/iconv/gconv_open.c b/newlib/libc/sys/linux/iconv/gconv_open.c
index 1b2fbb51a..5c10d601e 100644
--- a/newlib/libc/sys/linux/iconv/gconv_open.c
+++ b/newlib/libc/sys/linux/iconv/gconv_open.c
@@ -172,10 +172,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
lastp = runp;
else
/* This means we haven't found the module. Remove it. */
- if (lastp == NULL)
- trans = runp->next;
- else
- lastp->next = runp->next;
+ (lastp == NULL ? trans : lastp->next) = runp->next;
}
/* Allocate room for handle. */
diff --git a/newlib/libc/sys/linux/iconv/gconv_simple.c b/newlib/libc/sys/linux/iconv/gconv_simple.c
index edc091f7c..a4a99ea81 100644
--- a/newlib/libc/sys/linux/iconv/gconv_simple.c
+++ b/newlib/libc/sys/linux/iconv/gconv_simple.c
@@ -75,10 +75,7 @@ internal_ucs4_loop (struct __gconv_step *step,
size_t cnt;
for (cnt = 0; cnt < n_convert; ++cnt, inptr += 4)
- {
- *((uint32_t *) outptr) = bswap_32 (*(const uint32_t *) inptr);
- outptr = (unsigned char *)((uint32_t *) outptr + 1);
- }
+ *((uint32_t *) outptr)++ = bswap_32 (*(const uint32_t *) inptr);
*inptrp = inptr;
*outptrp = outptr;
@@ -183,13 +180,8 @@ internal_ucs4_loop_single (struct __gconv_step *step,
*outptrp += 4;
#elif __BYTE_ORDER == __BIG_ENDIAN
- {
- uint32_t **p = (uint32_t **)outptrp;
- uint32_t *q = *p;
- /* XXX unaligned */
- *q = state->__value.__wch;
- outptrp = (unsigned char *)(p + 1);
- }
+ /* XXX unaligned */
+ *(*((uint32_t **) outptrp)++) = state->__value.__wch;
#else
# error "This endianess is not supported."
#endif
@@ -252,7 +244,7 @@ ucs4_internal_loop (struct __gconv_step *step,
if (flags & __GCONV_IGNORE_ERRORS)
{
/* Just ignore this character. */
- *irreversible = *irreversible + 1;
+ ++*irreversible;
continue;
}
@@ -261,8 +253,7 @@ ucs4_internal_loop (struct __gconv_step *step,
return __GCONV_ILLEGAL_INPUT;
}
- *((uint32_t *) outptr) = inval;
- outptr = (unsigned char *) ((uint32_t *) outptr + 1);
+ *((uint32_t *) outptr)++ = inval;
}
*inptrp = inptr;
@@ -310,7 +301,7 @@ ucs4_internal_loop_unaligned (struct __gconv_step *step,
if (flags & __GCONV_IGNORE_ERRORS)
{
/* Just ignore this character. */
- *irreversible = *irreversible + 1;
+ ++*irreversible;
continue;
}
@@ -545,13 +536,8 @@ internal_ucs4le_loop_single (struct __gconv_step *step,
*outptrp += 4;
#else
- {
/* XXX unaligned */
- uint32_t **p = (uint32_t **)outptrp;
- uint32_t *q = *p;
- *q = state->__value.__wch;
- outptrp = (unsigned char **)(p + 1);
- }
+ *(*((uint32_t **) outptrp)++) = state->__value.__wch;
#endif
/* Clear the state buffer. */
@@ -618,8 +604,7 @@ ucs4le_internal_loop (struct __gconv_step *step,
return __GCONV_ILLEGAL_INPUT;
}
- *((uint32_t *) outptr) = inval;
- outptr = (unsigned char *)((uint32_t *) outptr + 1);
+ *((uint32_t *) outptr)++ = inval;
}
*inptrp = inptr;
@@ -796,16 +781,12 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
break; \
} \
\
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
++inptr; \
} \
else \
- { \
- /* It's an one byte sequence. */ \
- *((uint32_t *) outptr) = *inptr; \
- ++inptr; \
- outptr = (unsigned char *)((uint32_t *) outptr + 1); \
- } \
+ /* It's an one byte sequence. */ \
+ *((uint32_t *) outptr)++ = *inptr++; \
}
#define LOOP_NEED_FLAGS
#include <iconv/loop.c>
@@ -834,11 +815,8 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
STANDARD_ERR_HANDLER (4); \
} \
else \
- { \
- /* It's an one byte sequence. */ \
- *outptr++ = *((const uint32_t *) inptr); \
- inptr = ((const uint32_t *) inptr + 1); \
- } \
+ /* It's an one byte sequence. */ \
+ *outptr++ = *((const uint32_t *) inptr)++; \
}
#define LOOP_NEED_FLAGS
#include <iconv/loop.c>
@@ -1015,7 +993,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
{ \
/* Ignore it. */ \
inptr += i; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
\
@@ -1045,7 +1023,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
if (ignore_errors_p ()) \
{ \
inptr += i; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
\
@@ -1057,8 +1035,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
} \
\
/* Now adjust the pointers and store the result. */ \
- *((uint32_t *) outptr) = ch; \
- outptr = (unsigned char *)((uint32_t *) outptr + 1); \
+ *((uint32_t *) outptr)++ = ch; \
}
#define LOOP_NEED_FLAGS
@@ -1197,12 +1174,11 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
break; \
} \
inptr += 2; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
\
- *((uint32_t *) outptr) = u1; \
- outptr = (unsigned char *)((uint32_t *) outptr + 1); \
+ *((uint32_t *) outptr)++ = u1; \
inptr += 2; \
}
#define LOOP_NEED_FLAGS
@@ -1247,13 +1223,12 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
break; \
} \
inptr += 4; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
else \
{ \
- *((uint16_t *) outptr) = val; \
- outptr = (unsigned char *)((uint16_t *) outptr + 1); \
+ *((uint16_t *) outptr)++ = val; \
inptr += 4; \
} \
}
@@ -1290,12 +1265,11 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
break; \
} \
inptr += 2; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
\
- *((uint32_t *) outptr) = u1; \
- outptr = (unsigned char *)((uint32_t *) outptr + 1); \
+ *((uint32_t *) outptr)++ = u1; \
inptr += 2; \
}
#define LOOP_NEED_FLAGS
@@ -1339,13 +1313,12 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
break; \
} \
inptr += 4; \
- *irreversible = *irreversible + 1; \
+ ++*irreversible; \
continue; \
} \
else \
{ \
- *((uint16_t *) outptr) = bswap_16 (val); \
- outptr = (unsigned char *)((uint16_t *) outptr + 1); \
+ *((uint16_t *) outptr)++ = bswap_16 (val); \
inptr += 4; \
} \
}
diff --git a/newlib/libc/sys/linux/include/dlfcn.h b/newlib/libc/sys/linux/include/dlfcn.h
index 67ba73d5d..75d7526b0 100644
--- a/newlib/libc/sys/linux/include/dlfcn.h
+++ b/newlib/libc/sys/linux/include/dlfcn.h
@@ -1,84 +1,65 @@
-/* User functions for run-time dynamic loading.
- Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _DLFCN_H
-#define _DLFCN_H 1
-
-#include <features.h>
-
-/* Collect various system dependent definitions and declarations. */
-#include <sys/dlfcn.h>
-
-
-/* If the first argument of `dlsym' or `dlvsym' is set to RTLD_NEXT
- the run-time address of the symbol called NAME in the next shared
- object is returned. The "next" relation is defined by the order
- the shared objects were loaded. */
-# define RTLD_NEXT ((void *) -1l)
-
-/* If the first argument to `dlsym' or `dlvsym' is set to RTLD_DEFAULT
- the run-time address of the symbol called NAME in the global scope
- is returned. */
-# define RTLD_DEFAULT ((void *) 0)
-
-
-__BEGIN_DECLS
-
-/* Open the shared object FILE and map it in; return a handle that can be
- passed to `dlsym' to get symbol values from it. */
-extern void *dlopen (__const char *__file, int __mode) __THROW;
-
-/* Unmap and close a shared object opened by `dlopen'.
- The handle cannot be used again after calling `dlclose'. */
-extern int dlclose (void *__handle) __THROW;
-
-/* Find the run-time address in the shared object HANDLE refers to
- of the symbol called NAME. */
-extern void *dlsym (void *__restrict __handle,
- __const char *__restrict __name) __THROW;
-
-/* Find the run-time address in the shared object HANDLE refers to
- of the symbol called NAME with VERSION. */
-extern void *dlvsym (void *__restrict __handle,
- __const char *__restrict __name,
- __const char *__restrict __version) __THROW;
-
-/* When any of the above functions fails, call this function
- to return a string describing the error. Each call resets
- the error string so that a following call returns null. */
-extern char *dlerror (void) __THROW;
-
-
-/* Structure containing information about object searched using
- `dladdr'. */
-typedef struct
-{
- __const char *dli_fname; /* File name of defining object. */
- void *dli_fbase; /* Load address of that object. */
- __const char *dli_sname; /* Name of nearest symbol. */
- void *dli_saddr; /* Exact value of nearest symbol. */
-} Dl_info;
-
-/* Fill in *INFO with the following information about ADDRESS.
- Returns 0 iff no shared object's segments contain that address. */
-extern int dladdr (__const void *__address, Dl_info *__info) __THROW;
-
-__END_DECLS
-
-#endif /* dlfcn.h */
+#ifndef _DLFCN_H
+#include <dl/dlfcn.h>
+
+#define internal_function
+
+/* Internally used flag. */
+#define __RTLD_DLOPEN 0x80000000
+#define __RTLD_SPROF 0x40000000
+
+/* Now define the internal interfaces. */
+extern void *__dlvsym (void *__handle, __const char *__name,
+ __const char *__version);
+
+extern void *__libc_dlopen (__const char *__name);
+extern void *__libc_dlsym (void *__map, __const char *__name);
+extern int __libc_dlclose (void *__map);
+
+/* Locate shared object containing the given address. */
+extern int _dl_addr (const void *address, Dl_info *info)
+ internal_function;
+
+/* Open the shared object NAME, relocate it, and run its initializer if it
+ hasn't already been run. MODE is as for `dlopen' (see <dlfcn.h>). If
+ the object is already opened, returns its existing map. */
+extern void *_dl_open (const char *name, int mode, const void *caller)
+ internal_function;
+
+/* Close an object previously opened by _dl_open. */
+extern void _dl_close (void *map)
+ internal_function;
+
+/* Look up NAME in shared object HANDLE (which may be RTLD_DEFAULT or
+ RTLD_NEXT). WHO is the calling function, for RTLD_NEXT. Returns
+ the symbol value, which may be NULL. */
+extern void *_dl_sym (void *handle, const char *name, void *who)
+ internal_function;
+
+/* Look up version VERSION of symbol NAME in shared object HANDLE
+ (which may be RTLD_DEFAULT or RTLD_NEXT). WHO is the calling
+ function, for RTLD_NEXT. Returns the symbol value, which may be
+ NULL. */
+extern void *_dl_vsym (void *handle, const char *name, const char *version,
+ void *who)
+ internal_function;
+
+/* Call OPERATE, catching errors from `dl_signal_error'. If there is no
+ error, *ERRSTRING is set to null. If there is an error, *ERRSTRING is
+ set to a string constructed from the strings passed to _dl_signal_error,
+ and the error code passed is the return value and *OBJNAME is set to
+ the object name which experienced the problems. ERRSTRING if nonzero
+ points to a malloc'ed string which the caller has to free after use.
+ ARGS is passed as argument to OPERATE. */
+extern int _dl_catch_error (const char **objname, const char **errstring,
+ void (*operate) (void *),
+ void *args)
+ internal_function;
+
+/* Helper function for <dlfcn.h> functions. Runs the OPERATE function via
+ _dl_catch_error. Returns zero for success, nonzero for failure; and
+ arranges for `dlerror' to return the error details.
+ ARGS is passed as argument to OPERATE. */
+extern int _dlerror_run (void (*operate) (void *), void *args)
+ internal_function;
+
+#endif
diff --git a/newlib/libc/sys/linux/include/getopt.h b/newlib/libc/sys/linux/include/getopt.h
index 3fdf4645c..994f86001 100644
--- a/newlib/libc/sys/linux/include/getopt.h
+++ b/newlib/libc/sys/linux/include/getopt.h
@@ -8,11 +8,8 @@
#include <unistd.h>
-enum { NO_ARG, REQUIRED_ARG, OPTIONAL_ARG };
-/* Define glibc names as well for compatibility. */
-#define no_argument NO_ARG
-#define required_argument REQUIRED_ARG
-#define optional_argument OPTIONAL_ARG
+
+enum { no_argument, required_argument, optional_argument };
struct option {
const char *name;
diff --git a/newlib/libc/sys/linux/include/ltdl.h b/newlib/libc/sys/linux/include/ltdl.h
deleted file mode 100644
index 2bbfa302c..000000000
--- a/newlib/libc/sys/linux/include/ltdl.h
+++ /dev/null
@@ -1,361 +0,0 @@
-/* ltdl.h -- generic dlopen functions
- Copyright (C) 1998-2000 Free Software Foundation, Inc.
- Originally by Thomas Tanner <tanner@ffii.org>
- This file is part of GNU Libtool.
-
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Lesser General Public
-License as published by the Free Software Foundation; either
-version 2 of the License, or (at your option) any later version.
-
-As a special exception to the GNU Lesser General Public License,
-if you distribute this file as part of a program or library that
-is built using GNU libtool, you may include it under the same
-distribution terms that you use for the rest of that program.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-Lesser General Public License for more details.
-
-You should have received a copy of the GNU Lesser General Public
-License along with this library; if not, write to the Free
-Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA
-*/
-
-/* Only include this header file once. */
-#ifndef LTDL_H
-#define LTDL_H 1
-
-#include <sys/types.h> /* for size_t declaration */
-
-
-/* --- MACROS FOR PORTABILITY --- */
-
-
-/* Saves on those hard to debug '\0' typos.... */
-#define LT_EOS_CHAR '\0'
-
-/* LTDL_BEGIN_C_DECLS should be used at the beginning of your declarations,
- so that C++ compilers don't mangle their names. Use LTDL_END_C_DECLS at
- the end of C declarations. */
-#ifdef __cplusplus
-# define LT_BEGIN_C_DECLS extern "C" {
-# define LT_END_C_DECLS }
-#else
-# define LT_BEGIN_C_DECLS /* empty */
-# define LT_END_C_DECLS /* empty */
-#endif
-
-LT_BEGIN_C_DECLS
-
-
-/* LT_PARAMS is a macro used to wrap function prototypes, so that compilers
- that don't understand ANSI C prototypes still work, and ANSI C
- compilers can issue warnings about type mismatches. */
-#if defined (__STDC__) || defined (_AIX) || (defined (__mips) && defined (_SYSTYPE_SVR4)) || defined(WIN32) || defined(__cplusplus)
-# define LT_PARAMS(protos) protos
-# define lt_ptr void*
-#else
-# define LT_PARAMS(protos) ()
-# define lt_ptr char*
-#endif
-
-/* LT_STMT_START/END are used to create macros which expand to a
- a single compound statement in a portable way. */
-#if defined (__GNUC__) && !defined (__STRICT_ANSI__) && !defined (__cplusplus)
-# define LT_STMT_START (void)(
-# define LT_STMT_END )
-#else
-# if (defined (sun) || defined (__sun__))
-# define LT_STMT_START if (1)
-# define LT_STMT_END else (void)0
-# else
-# define LT_STMT_START do
-# define LT_STMT_END while (0)
-# endif
-#endif
-
-/* LT_CONC creates a new concatenated symbol for the compiler
- in a portable way. */
-#if defined(__STDC__) || defined(__cplusplus)
-# define LT_CONC(s,t) s##t
-#else
-# define LT_CONC(s,t) s/**/t
-#endif
-
-/* LT_STRLEN can be used safely on NULL pointers. */
-#define LT_STRLEN(s) (((s) && (s)[0]) ? strlen (s) : 0)
-
-
-
-/* --- WINDOWS SUPPORT --- */
-
-
-/* Canonicalise Windows and Cygwin recognition macros. */
-#ifdef __CYGWIN32__
-# ifndef __CYGWIN__
-# define __CYGWIN__ __CYGWIN32__
-# endif
-#endif
-#if defined(_WIN32) || defined(WIN32)
-# ifndef __WINDOWS__
-# ifdef _WIN32
-# define __WINDOWS__ _WIN32
-# else
-# ifdef WIN32
-# define __WINDOWS__ WIN32
-# endif
-# endif
-# endif
-#endif
-
-#ifdef __WINDOWS__
-# ifndef __CYGWIN__
-/* LT_DIRSEP_CHAR is accepted *in addition* to '/' as a directory
- separator when it is set. */
-# define LT_DIRSEP_CHAR '\\'
-# define LT_PATHSEP_CHAR ';'
-# endif
-#endif
-#ifndef LT_PATHSEP_CHAR
-# define LT_PATHSEP_CHAR ':'
-#endif
-
-/* DLL building support on win32 hosts; mostly to workaround their
- ridiculous implementation of data symbol exporting. */
-#ifndef LT_SCOPE
-# ifdef __WINDOWS__
-# ifdef DLL_EXPORT /* defined by libtool (if required) */
-# define LT_SCOPE __declspec(dllexport)
-# endif
-# ifdef LIBLTDL_DLL_IMPORT /* define if linking with this dll */
-# define LT_SCOPE extern __declspec(dllimport)
-# endif
-# endif
-# ifndef LT_SCOPE /* static linking or !__WINDOWS__ */
-# define LT_SCOPE extern
-# endif
-#endif
-
-
-
-
-/* --- DYNAMIC MODULE LOADING API --- */
-
-
-typedef struct lt_dlhandle_struct *lt_dlhandle; /* A loaded module. */
-
-/* Initialisation and finalisation functions for libltdl. */
-extern int lt_dlinit LT_PARAMS((void));
-extern int lt_dlexit LT_PARAMS((void));
-
-/* Module search path manipulation. */
-extern int lt_dladdsearchdir LT_PARAMS((const char *search_dir));
-extern int lt_dlinsertsearchdir LT_PARAMS((const char *before,
- const char *search_dir));
-extern int lt_dlsetsearchpath LT_PARAMS((const char *search_path));
-extern const char *lt_dlgetsearchpath LT_PARAMS((void));
-extern int lt_dlforeachfile LT_PARAMS((
- const char *search_path,
- int (*func) (const char *filename, lt_ptr data),
- lt_ptr data));
-
-/* Portable libltdl versions of the system dlopen() API. */
-extern lt_dlhandle lt_dlopen LT_PARAMS((const char *filename));
-extern lt_dlhandle lt_dlopenext LT_PARAMS((const char *filename));
-extern lt_ptr lt_dlsym LT_PARAMS((lt_dlhandle handle,
- const char *name));
-extern const char *lt_dlerror LT_PARAMS((void));
-extern int lt_dlclose LT_PARAMS((lt_dlhandle handle));
-
-/* Module residency management. */
-extern int lt_dlmakeresident LT_PARAMS((lt_dlhandle handle));
-extern int lt_dlisresident LT_PARAMS((lt_dlhandle handle));
-
-
-
-
-/* --- MUTEX LOCKING --- */
-
-
-typedef void lt_dlmutex_lock LT_PARAMS((void));
-typedef void lt_dlmutex_unlock LT_PARAMS((void));
-typedef void lt_dlmutex_seterror LT_PARAMS((const char *errmsg));
-typedef const char *lt_dlmutex_geterror LT_PARAMS((void));
-
-extern int lt_dlmutex_register LT_PARAMS((lt_dlmutex_lock *lock,
- lt_dlmutex_unlock *unlock,
- lt_dlmutex_seterror *seterror,
- lt_dlmutex_geterror *geterror));
-
-
-
-
-/* --- MEMORY HANDLING --- */
-
-
-/* By default, the realloc function pointer is set to our internal
- realloc implementation which iself uses lt_dlmalloc and lt_dlfree.
- libltdl relies on a featureful realloc, but if you are sure yours
- has the right semantics then you can assign it directly. Generally,
- it is safe to assign just a malloc() and a free() function. */
-LT_SCOPE lt_ptr (*lt_dlmalloc) LT_PARAMS((size_t size));
-LT_SCOPE lt_ptr (*lt_dlrealloc) LT_PARAMS((lt_ptr ptr, size_t size));
-LT_SCOPE void (*lt_dlfree) LT_PARAMS((lt_ptr ptr));
-
-
-
-
-/* --- PRELOADED MODULE SUPPORT --- */
-
-
-/* A preopened symbol. Arrays of this type comprise the exported
- symbols for a dlpreopened module. */
-typedef struct {
- const char *name;
- lt_ptr address;
-} lt_dlsymlist;
-
-extern int lt_dlpreload LT_PARAMS((const lt_dlsymlist *preloaded));
-extern int lt_dlpreload_default
- LT_PARAMS((const lt_dlsymlist *preloaded));
-
-#define LTDL_SET_PRELOADED_SYMBOLS() LT_STMT_START{ \
- extern const lt_dlsymlist lt_preloaded_symbols[]; \
- lt_dlpreload_default(lt_preloaded_symbols); \
- }LT_STMT_END
-
-
-
-
-/* --- MODULE INFORMATION --- */
-
-
-/* Read only information pertaining to a loaded module. */
-typedef struct {
- char *filename; /* file name */
- char *name; /* module name */
- int ref_count; /* number of times lt_dlopened minus
- number of times lt_dlclosed. */
-} lt_dlinfo;
-
-extern const lt_dlinfo *lt_dlgetinfo LT_PARAMS((lt_dlhandle handle));
-extern lt_dlhandle lt_dlhandle_next LT_PARAMS((lt_dlhandle place));
-extern int lt_dlforeach LT_PARAMS((
- int (*func) (lt_dlhandle handle, lt_ptr data),
- lt_ptr data));
-
-/* Associating user data with loaded modules. */
-typedef unsigned lt_dlcaller_id;
-
-extern lt_dlcaller_id lt_dlcaller_register LT_PARAMS((void));
-extern lt_ptr lt_dlcaller_set_data LT_PARAMS((lt_dlcaller_id key,
- lt_dlhandle handle,
- lt_ptr data));
-extern lt_ptr lt_dlcaller_get_data LT_PARAMS((lt_dlcaller_id key,
- lt_dlhandle handle));
-
-
-
-/* --- USER MODULE LOADER API --- */
-
-
-typedef struct lt_dlloader lt_dlloader;
-typedef lt_ptr lt_user_data;
-typedef lt_ptr lt_module;
-
-/* Function pointer types for creating user defined module loaders. */
-typedef lt_module lt_module_open LT_PARAMS((lt_user_data loader_data,
- const char *filename));
-typedef int lt_module_close LT_PARAMS((lt_user_data loader_data,
- lt_module handle));
-typedef lt_ptr lt_find_sym LT_PARAMS((lt_user_data loader_data,
- lt_module handle,
- const char *symbol));
-typedef int lt_dlloader_exit LT_PARAMS((lt_user_data loader_data));
-
-struct lt_user_dlloader {
- const char *sym_prefix;
- lt_module_open *module_open;
- lt_module_close *module_close;
- lt_find_sym *find_sym;
- lt_dlloader_exit *dlloader_exit;
- lt_user_data dlloader_data;
-};
-
-extern lt_dlloader *lt_dlloader_next LT_PARAMS((lt_dlloader *place));
-extern lt_dlloader *lt_dlloader_find LT_PARAMS((
- const char *loader_name));
-extern const char *lt_dlloader_name LT_PARAMS((lt_dlloader *place));
-extern lt_user_data *lt_dlloader_data LT_PARAMS((lt_dlloader *place));
-extern int lt_dlloader_add LT_PARAMS((lt_dlloader *place,
- const struct lt_user_dlloader *dlloader,
- const char *loader_name));
-extern int lt_dlloader_remove LT_PARAMS((
- const char *loader_name));
-
-
-
-/* --- ERROR MESSAGE HANDLING --- */
-
-
-/* Defining error strings alongside their symbolic names in a macro in
- this way allows us to expand the macro in different contexts with
- confidence that the enumeration of symbolic names will map correctly
- onto the table of error strings. */
-#define lt_dlerror_table \
- LT_ERROR(UNKNOWN, "unknown error") \
- LT_ERROR(DLOPEN_NOT_SUPPORTED, "dlopen support not available") \
- LT_ERROR(INVALID_LOADER, "invalid loader") \
- LT_ERROR(INIT_LOADER, "loader initialization failed") \
- LT_ERROR(REMOVE_LOADER, "loader removal failed") \
- LT_ERROR(FILE_NOT_FOUND, "file not found") \
- LT_ERROR(DEPLIB_NOT_FOUND, "dependency library not found") \
- LT_ERROR(NO_SYMBOLS, "no symbols defined") \
- LT_ERROR(CANNOT_OPEN, "can't open the module") \
- LT_ERROR(CANNOT_CLOSE, "can't close the module") \
- LT_ERROR(SYMBOL_NOT_FOUND, "symbol not found") \
- LT_ERROR(NO_MEMORY, "not enough memory") \
- LT_ERROR(INVALID_HANDLE, "invalid module handle") \
- LT_ERROR(BUFFER_OVERFLOW, "internal buffer overflow") \
- LT_ERROR(INVALID_ERRORCODE, "invalid errorcode") \
- LT_ERROR(SHUTDOWN, "library already shutdown") \
- LT_ERROR(CLOSE_RESIDENT_MODULE, "can't close resident module") \
- LT_ERROR(INVALID_MUTEX_ARGS, "invalid mutex handler registration") \
- LT_ERROR(INVALID_POSITION, "invalid search path insert position")
-
-/* Enumerate the symbolic error names. */
-enum {
-#define LT_ERROR(name, diagnostic) LT_CONC(LT_ERROR_, name),
- lt_dlerror_table
-#undef LT_ERROR
-
- LT_ERROR_MAX
-};
-
-/* These functions are only useful from inside custom module loaders. */
-extern int lt_dladderror LT_PARAMS((const char *diagnostic));
-extern int lt_dlseterror LT_PARAMS((int errorcode));
-
-
-
-
-/* --- SOURCE COMPATIBILITY WITH OLD LIBLTDL --- */
-
-
-#ifdef LT_NON_POSIX_NAMESPACE
-# define lt_ptr_t lt_ptr
-# define lt_module_t lt_module
-# define lt_module_open_t lt_module_open
-# define lt_module_close_t lt_module_close
-# define lt_find_sym_t lt_find_sym
-# define lt_dlloader_exit_t lt_dlloader_exit
-# define lt_dlloader_t lt_dlloader
-# define lt_dlloader_data_t lt_user_data
-#endif
-
-LT_END_C_DECLS
-
-#endif /* !LTDL_H */
diff --git a/newlib/libc/sys/linux/include/stdint.h b/newlib/libc/sys/linux/include/stdint.h
index d1197f66c..5c89acd22 100644
--- a/newlib/libc/sys/linux/include/stdint.h
+++ b/newlib/libc/sys/linux/include/stdint.h
@@ -1,265 +1,18 @@
-/*
- * Copyright (c) 2004, 2005 by
- * Ralf Corsepius, Ulm/Germany. All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-/*
- * @todo - Add fast<N>_t types.
- * @todo - Add support for wint_t types.
- */
-
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#include <sys/types.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if defined(__GNUC__) && (__GNUC__ >= 3 ) \
- && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ > 2 )
-#define __STDINT_EXP(x) __##x##__
-#else
-#define __STDINT_EXP(x) x
-#include <limits.h>
-#endif
-
-#if __STDINT_EXP(SCHAR_MAX) == 0x7f
-#define __int8_t_defined 1
-#endif
-
-#if __int8_t_defined
-typedef signed char int_least8_t;
-typedef unsigned char uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#if __STDINT_EXP(SHRT_MAX) == 0x7fff
-#define __int16_t_defined 1
-#elif __STDINT_EXP(INT_MAX) == 0x7fff
-#define __int16_t_defined 1
-#elif __STDINT_EXP(SCHAR_MAX) == 0x7fff
-#define __int16_t_defined 1
-#endif
-
-#if __int16_t_defined
-typedef int16_t int_least16_t;
-typedef uint16_t uint_least16_t;
-#define __int_least16_t_defined 1
-
-#ifndef __int_least8_t_defined
-typedef int16_t int_least8_t;
-typedef uint16_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-#endif
-
-#if __STDINT_EXP(INT_MAX) == 0x7fffffffL
-#define __int32_t_defined 1
-#elif __STDINT_EXP(LONG_MAX) == 0x7fffffffL
-#define __int32_t_defined 1
-#define __have_long32 1
-#elif __STDINT_EXP(SHRT_MAX) == 0x7fffffffL
-#define __int32_t_defined 1
-#elif __STDINT_EXP(SCHAR_MAX) == 0x7fffffffL
-#define __int32_t_defined 1
-#endif
-
-#if __int32_t_defined
-typedef int32_t int_least32_t;
-typedef uint32_t uint_least32_t;
-#define __int_least32_t_defined 1
-
-#ifndef __int_least8_t_defined
-typedef int32_t int_least8_t;
-typedef uint32_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#ifndef __int_least16_t_defined
-typedef int32_t int_least16_t;
-typedef uint32_t uint_least16_t;
-#define __int_least16_t_defined 1
-#endif
-#endif
-
-#if __STDINT_EXP(LONG_MAX) > 0x7fffffff
-#define __int64_t_defined 1
-#define __have_long64 1
-#elif defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff)
-#define __int64_t_defined 1
-#define __have_longlong64 1
-#elif defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff)
-#define __int64_t_defined 1
-#define __have_longlong64 1
-#elif __STDINT_EXP(INT_MAX) > 0x7fffffff
-#define __int64_t_defined 1
-#endif
-
-#if __int64_t_defined
-typedef int64_t int_least64_t;
-typedef uint64_t uint_least64_t;
-#define __int_least64_t_defined 1
-
-#ifndef __int_least8_t_defined
-typedef int64_t int_least8_t;
-typedef uint64_t uint_least8_t;
-#define __int_least8_t_defined 1
-#endif
-
-#ifndef __int_least16_t_defined
-typedef int64_t int_least16_t;
-typedef uint64_t uint_least16_t;
-#define __int_least16_t_defined 1
-#endif
+/* libc/sys/linux/include/stdint.h - Standard integer types */
-#ifndef __int_least32_t_defined
-typedef int64_t int_least32_t;
-typedef uint64_t uint_least32_t;
-#define __int_least32_t_defined 1
-#endif
-#endif
-
-/* Greatest-width integer types */
-/* Modern GCCs provide __INTMAX_TYPE__ */
-#if defined(__INTMAX_TYPE__)
- typedef __INTMAX_TYPE__ intmax_t;
-#elif __have_longlong64
- typedef signed long long intmax_t;
-#else
- typedef signed long intmax_t;
-#endif
-
-/* Modern GCCs provide __UINTMAX_TYPE__ */
-#if defined(__UINTMAX_TYPE__)
- typedef __UINTMAX_TYPE__ uintmax_t;
-#elif __have_longlong64
- typedef unsigned long long uintmax_t;
-#else
- typedef unsigned long uintmax_t;
-#endif
-
-/* Limits of Specified-Width Integer Types */
+/* Written 2000 by Werner Almesberger */
-#if __int8_t_defined
-#define INT8_MIN -128
-#define INT8_MAX 127
-#define UINT8_MAX 255
-#endif
-#if __int_least8_t_defined
-#define INT_LEAST8_MIN -128
-#define INT_LEAST8_MAX 127
-#define UINT_LEAST8_MAX 255
-#else
-#error required type int_least8_t missing
-#endif
-
-#if __int16_t_defined
-#define INT16_MIN -32768
-#define INT16_MAX 32767
-#define UINT16_MAX 65535
-#endif
-
-#if __int_least16_t_defined
-#define INT_LEAST16_MIN -32768
-#define INT_LEAST16_MAX 32767
-#define UINT_LEAST16_MAX 65535
-#else
-#error required type int_least16_t missing
-#endif
-
-#if __int32_t_defined
-#define INT32_MIN (-2147483647-1)
-#define INT32_MAX 2147483647
-#define UINT32_MAX 4294967295U
-#endif
-
-#if __int_least32_t_defined
-#define INT_LEAST32_MIN (-2147483647-1)
-#define INT_LEAST32_MAX 2147483647
-#define UINT_LEAST32_MAX 4294967295U
-#else
-#error required type int_least32_t missing
-#endif
-
-#if __int64_t_defined
-#ifdef __have_long64
-#define INT64_MIN (-9223372036854775807L-1L)
-#define INT64_MAX 9223372036854775807L
-#define UINT64_MAX 18446744073709551615U
-#elif defined(__have_longlong64)
-#define INT64_MIN (-9223372036854775807LL-1LL)
-#define INT64_MAX 9223372036854775807LL
-#define UINT64_MAX 18446744073709551615ULL
-#endif
-#endif
+#ifndef _NEWLIB_STDINT_H
+#define _NEWLIB_STDINT_H
-#if __int_least64_t_defined
-#ifdef __have_long64
-#define INT_LEAST64_MIN (-9223372036854775807L-1L)
-#define INT_LEAST64_MAX 9223372036854775807L
-#define UINT_LEAST64_MAX 18446744073709551615U
-#elif defined(__have_longlong64)
-#define INT_LEAST64_MIN (-9223372036854775807LL-1LL)
-#define INT_LEAST64_MAX 9223372036854775807LL
-#define UINT_LEAST64_MAX 18446744073709551615ULL
-#endif
-#endif
-
-/* This must match size_t in stddef.h, currently long unsigned int */
-#define SIZE_MIN (-__STDINT_EXP(LONG_MAX) - 1L)
-#define SIZE_MAX __STDINT_EXP(LONG_MAX)
-
-/* This must match sig_atomic_t in <signal.h> (currently int) */
-#define SIG_ATOMIC_MIN (-__STDINT_EXP(INT_MAX) - 1)
-#define SIG_ATOMIC_MAX __STDINT_EXP(INT_MAX)
-
-/* This must match ptrdiff_t in <stddef.h> (currently long int) */
-#define PTRDIFF_MIN (-__STDINT_EXP(LONG_MAX) - 1L)
-#define PTRDIFF_MAX __STDINT_EXP(LONG_MAX)
-
-/** Macros for minimum-width integer constant expressions */
-#define INT8_C(x) x
-#define UINT8_C(x) x##U
-
-#define INT16_C(x) x
-#define UINT16_C(x) x##U
-
-#if __have_long32
-#define INT32_C(x) x##L
-#define UINT32_C(x) x##UL
-#else
-#define INT32_C(x) x
-#define UINT32_C(x) x##U
-#endif
-
-#if __int64_t_defined
-#if __have_longlong64
-#define INT64_C(x) x##LL
-#define UINT64_C(x) x##ULL
-#else
-#define INT64_C(x) x##L
-#define UINT64_C(x) x##UL
-#endif
-#endif
-
-/** Macros for greatest-width integer constant expression */
-#if __have_longlong64
-#define INTMAX_C(x) x##LL
-#define UINTMAX_C(x) x##ULL
-#else
-#define INTMAX_C(x) x##L
-#define UINTMAX_C(x) x##UL
-#endif
+/*
+ * FIXME: linux/types.h defines various types that rightfully belong into
+ * stdint.h. So we have no choice but to include linux/types.h directly, even
+ * if this causes name space pollution. Note: we have to go via sys/types.h
+ * in order to resolve some other compatibility issues.
+ */
+#include <sys/types.h>
-#ifdef __cplusplus
-}
#endif
-
-#endif /* _STDINT_H */
diff --git a/newlib/libc/sys/linux/include/time.h b/newlib/libc/sys/linux/include/time.h
index 64ade9463..8b4b28460 100644
--- a/newlib/libc/sys/linux/include/time.h
+++ b/newlib/libc/sys/linux/include/time.h
@@ -84,26 +84,6 @@ char *_EXFUN(strptime, (const char *, const char *, struct tm *));
_VOID _EXFUN(tzset, (_VOID));
_VOID _EXFUN(_tzset_r, (struct _reent *));
-typedef struct __tzrule_struct
-{
- char ch;
- int m;
- int n;
- int d;
- int s;
- time_t change;
- long offset; /* Match type of _timezone. */
-} __tzrule_type;
-
-typedef struct __tzinfo_struct
-{
- int __tznorth;
- int __tzyear;
- __tzrule_type __tzrule[2];
-} __tzinfo_type;
-
-__tzinfo_type *_EXFUN (__gettzinfo, (_VOID));
-
/* getdate functions */
#ifndef _REENT_ONLY
@@ -126,7 +106,7 @@ struct tm * _EXFUN(getdate, (const char *));
int _EXFUN(getdate_r, (const char *, struct tm *));
/* defines for the opengroup specifications Derived from Issue 1 of the SVID. */
-extern __IMPORT long _timezone;
+extern __IMPORT time_t _timezone;
extern __IMPORT int _daylight;
extern __IMPORT char *_tzname[2];
diff --git a/newlib/libc/sys/linux/include/unistd.h b/newlib/libc/sys/linux/include/unistd.h
index 55ecc3a4e..e2f562a3a 100644
--- a/newlib/libc/sys/linux/include/unistd.h
+++ b/newlib/libc/sys/linux/include/unistd.h
@@ -15,4 +15,6 @@ extern char *optarg;
extern int optind, opterr, optopt;
+int readlink(const char *path, char *buf, size_t bufsiz);
+
#endif
diff --git a/newlib/libc/sys/linux/inode.c b/newlib/libc/sys/linux/inode.c
index 837dae396..ed468c19b 100644
--- a/newlib/libc/sys/linux/inode.c
+++ b/newlib/libc/sys/linux/inode.c
@@ -35,7 +35,6 @@ _syscall3(int,getdents,int,fd,struct dirent *,dirp,unsigned int,count)
_syscall2(int,chmod,const char *,path,mode_t,mode)
_syscall3(int,chown,const char *,path,uid_t,owner,gid_t,group)
_syscall2(int,fchmod,int,filedes,mode_t,mode)
-_syscall3(int,lchown,const char *,path,uid_t,owner,gid_t,group)
_syscall2(int,lstat,const char *,file_name,struct stat *,buf)
_syscall3(int,readlink,const char *,path,char *,buf,size_t,bufsiz)
_syscall2(int,symlink,const char *,oldpath,const char *,newpath)
diff --git a/newlib/libc/sys/linux/linuxthreads/Makefile.am b/newlib/libc/sys/linux/linuxthreads/Makefile.am
index 0122d668b..a47cecc17 100644
--- a/newlib/libc/sys/linux/linuxthreads/Makefile.am
+++ b/newlib/libc/sys/linux/linuxthreads/Makefile.am
@@ -53,8 +53,8 @@ SUBDIRS = machine .
tooldir = $(tooldir)
toollibdir = $(top_toollibdir)
-libpthread_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -lgcc -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld `cat extra-libtool-objlist`
-libthread_db_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -lgcc -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld
+libpthread_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld `cat extra-libtool-objlist`
+libthread_db_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld
if USE_LIBTOOL
@@ -91,10 +91,7 @@ doc:
install-data-local: install-toollibLIBRARIES
-rm -f $(DESTDIR)$(toollibdir)/libthread_db.so.1
- ln -s `readlink $(DESTDIR)$(toollibdir)/libthread_db.so` \
- $(DESTDIR)$(toollibdir)/libthread_db.so.1 \
- || cp $(DESTDIR)$(toollibdir)/libthread_db.so \
- $(DESTDIR)$(toollibdir)/libthread_db.so.1
+ ln -s $(DESTDIR)$(toollibdir)/libthread_db.so $(DESTDIR)$(toollibdir)/libthread_db.so.1 || cp $(DESTDIR)$(toollibdir)/libthread_db.so $(DESTDIR)$(toollibdir)/libthread_db.so.1
AM_CFLAGS = -D_XOPEN_SOURCE=600 -D_GNU_SOURCE=1
ACLOCAL_AMFLAGS = -I ../../../..
diff --git a/newlib/libc/sys/linux/linuxthreads/Makefile.in b/newlib/libc/sys/linux/linuxthreads/Makefile.in
index d957b0545..232c001f4 100644
--- a/newlib/libc/sys/linux/linuxthreads/Makefile.in
+++ b/newlib/libc/sys/linux/linuxthreads/Makefile.in
@@ -123,8 +123,8 @@ SUBDIRS = machine .
tooldir = $(tooldir)
toollibdir = $(top_toollibdir)
-libpthread_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -lgcc -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld `cat extra-libtool-objlist`
-libthread_db_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -lgcc -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld
+libpthread_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld `cat extra-libtool-objlist`
+libthread_db_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/../shared.ld
@USE_LIBTOOL_TRUE@toollib_LTLIBRARIES = libpthread.la libthread_db.la
@USE_LIBTOOL_TRUE@libpthread_la_SOURCES = $(LIB_SOURCES)
@@ -642,10 +642,7 @@ doc:
install-data-local: install-toollibLIBRARIES
-rm -f $(DESTDIR)$(toollibdir)/libthread_db.so.1
- ln -s `readlink $(DESTDIR)$(toollibdir)/libthread_db.so` \
- $(DESTDIR)$(toollibdir)/libthread_db.so.1 \
- || cp $(DESTDIR)$(toollibdir)/libthread_db.so \
- $(DESTDIR)$(toollibdir)/libthread_db.so.1
+ ln -s $(DESTDIR)$(toollibdir)/libthread_db.so $(DESTDIR)$(toollibdir)/libthread_db.so.1 || cp $(DESTDIR)$(toollibdir)/libthread_db.so $(DESTDIR)$(toollibdir)/libthread_db.so.1
pt-initfini.s: $(srcdir)/pt-initfini.c
$(CC) -S $(CFLAGS_pt_initfini) -finhibit-size-directive \
diff --git a/newlib/libc/sys/linux/linuxthreads/aclocal.m4 b/newlib/libc/sys/linux/linuxthreads/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/linuxthreads/aclocal.m4
+++ b/newlib/libc/sys/linux/linuxthreads/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h b/newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h
index 84f91d569..2c1d16277 100644
--- a/newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h
+++ b/newlib/libc/sys/linux/linuxthreads/bits/libc-lock.h
@@ -265,6 +265,36 @@ extern int __pthread_atfork (void (*__prepare) (void),
/* Make the pthread functions weak so that we can elide them from
single-threaded processes. */
#ifndef __NO_WEAK_PTHREAD_ALIASES
+# ifdef weak_extern
+# if _LIBC
+# include <bp-sym.h>
+# else
+# define BP_SYM (sym) sym
+# endif
+weak_extern (BP_SYM (__pthread_mutex_init))
+weak_extern (BP_SYM (__pthread_mutex_destroy))
+weak_extern (BP_SYM (__pthread_mutex_lock))
+weak_extern (BP_SYM (__pthread_mutex_trylock))
+weak_extern (BP_SYM (__pthread_mutex_unlock))
+weak_extern (BP_SYM (__pthread_mutexattr_init))
+weak_extern (BP_SYM (__pthread_mutexattr_destroy))
+weak_extern (BP_SYM (__pthread_mutexattr_settype))
+weak_extern (BP_SYM (__pthread_rwlock_init))
+weak_extern (BP_SYM (__pthread_rwlock_destroy))
+weak_extern (BP_SYM (__pthread_rwlock_rdlock))
+weak_extern (BP_SYM (__pthread_rwlock_tryrdlock))
+weak_extern (BP_SYM (__pthread_rwlock_wrlock))
+weak_extern (BP_SYM (__pthread_rwlock_trywrlock))
+weak_extern (BP_SYM (__pthread_rwlock_unlock))
+weak_extern (BP_SYM (__pthread_key_create))
+weak_extern (BP_SYM (__pthread_setspecific))
+weak_extern (BP_SYM (__pthread_getspecific))
+weak_extern (BP_SYM (__pthread_once))
+weak_extern (__pthread_initialize)
+weak_extern (__pthread_atfork)
+weak_extern (BP_SYM (_pthread_cleanup_push_defer))
+weak_extern (BP_SYM (_pthread_cleanup_pop_restore))
+# else
# pragma weak __pthread_mutex_init
# pragma weak __pthread_mutex_destroy
# pragma weak __pthread_mutex_lock
@@ -287,6 +317,7 @@ extern int __pthread_atfork (void (*__prepare) (void),
# pragma weak __pthread_atfork
# pragma weak _pthread_cleanup_push_defer
# pragma weak _pthread_cleanup_pop_restore
+# endif
#endif
/* We need portable names for some functions. E.g., when they are
diff --git a/newlib/libc/sys/linux/linuxthreads/config.h b/newlib/libc/sys/linux/linuxthreads/config.h
index 05fb5ec96..99b0528a6 100644
--- a/newlib/libc/sys/linux/linuxthreads/config.h
+++ b/newlib/libc/sys/linux/linuxthreads/config.h
@@ -11,3 +11,4 @@
while (__result == -1L && errno == EINTR); \
__result; }))
+#define UINT32_C(c) c ## U
diff --git a/newlib/libc/sys/linux/linuxthreads/configure b/newlib/libc/sys/linux/linuxthreads/configure
index 65714818c..16b955049 100755
--- a/newlib/libc/sys/linux/linuxthreads/configure
+++ b/newlib/libc/sys/linux/linuxthreads/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -2994,7 +2991,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2998: checking for $ac_word" >&5
+echo "configure:2995: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/newlib/libc/sys/linux/linuxthreads/machine/aclocal.m4 b/newlib/libc/sys/linux/linuxthreads/machine/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/linuxthreads/machine/aclocal.m4
+++ b/newlib/libc/sys/linux/linuxthreads/machine/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/linuxthreads/machine/configure b/newlib/libc/sys/linux/linuxthreads/machine/configure
index 32cb952b1..f84119721 100755
--- a/newlib/libc/sys/linux/linuxthreads/machine/configure
+++ b/newlib/libc/sys/linux/linuxthreads/machine/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1654,7 +1651,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1658: checking for $ac_word" >&5
+echo "configure:1655: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1684,7 +1681,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1688: checking for $ac_word" >&5
+echo "configure:1685: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1735,7 +1732,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1739: checking for $ac_word" >&5
+echo "configure:1736: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1767,7 +1764,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1771: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1768: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1778,12 +1775,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1782 "configure"
+#line 1779 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1809,12 +1806,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1813: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1810: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1818: checking whether we are using GNU C" >&5
+echo "configure:1815: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1823,7 +1820,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1827: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1824: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1842,7 +1839,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1846: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1843: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1885,7 +1882,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1889: checking for ld used by GCC" >&5
+echo "configure:1886: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1915,10 +1912,10 @@ echo "configure:1889: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1919: checking for GNU ld" >&5
+echo "configure:1916: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1922: checking for non-GNU ld" >&5
+echo "configure:1919: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1953,7 +1950,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1957: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1954: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1970,7 +1967,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1974: checking for $LD option to reload object files" >&5
+echo "configure:1971: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1982,7 +1979,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1986: checking for BSD-compatible nm" >&5
+echo "configure:1983: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2020,7 +2017,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2024: checking whether ln -s works" >&5
+echo "configure:2021: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2041,7 +2038,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2045: checking how to recognise dependant libraries" >&5
+echo "configure:2042: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2214,13 +2211,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2218: checking for object suffix" >&5
+echo "configure:2215: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2224: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2244,7 +2241,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2248: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2245: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2306,7 +2303,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2310: checking for file" >&5
+echo "configure:2307: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2377,7 +2374,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2381: checking for $ac_word" >&5
+echo "configure:2378: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2409,7 +2406,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2413: checking for $ac_word" >&5
+echo "configure:2410: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2444,7 +2441,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2448: checking for $ac_word" >&5
+echo "configure:2445: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2476,7 +2473,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2480: checking for $ac_word" >&5
+echo "configure:2477: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2543,8 +2540,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2547 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2544 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2545: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2563,7 +2560,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2567: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2564: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2581,7 +2578,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2585: checking whether the C compiler needs -belf" >&5
+echo "configure:2582: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2594,14 +2591,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2598 "configure"
+#line 2595 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2631,7 +2628,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2635: checking for $ac_word" >&5
+echo "configure:2632: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2663,7 +2660,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2667: checking for $ac_word" >&5
+echo "configure:2664: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2698,7 +2695,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2702: checking for $ac_word" >&5
+echo "configure:2699: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2730,7 +2727,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2734: checking for $ac_word" >&5
+echo "configure:2731: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2765,7 +2762,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2769: checking for $ac_word" >&5
+echo "configure:2766: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2797,7 +2794,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2801: checking for $ac_word" >&5
+echo "configure:2798: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2833,12 +2830,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2837: checking if libtool should supply DllMain function" >&5
+echo "configure:2834: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2842 "configure"
+#line 2839 "configure"
#include "confdefs.h"
int main() {
@@ -2846,7 +2843,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2850: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2867,19 +2864,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2871: checking how to link DLLs" >&5
+echo "configure:2868: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2876 "configure"
+#line 2873 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m4 b/newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m4
+++ b/newlib/libc/sys/linux/linuxthreads/machine/i386/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/linuxthreads/machine/i386/configure b/newlib/libc/sys/linux/linuxthreads/machine/i386/configure
index dfd1c9e65..ef469027c 100755
--- a/newlib/libc/sys/linux/linuxthreads/machine/i386/configure
+++ b/newlib/libc/sys/linux/linuxthreads/machine/i386/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -2994,7 +2991,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2998: checking for $ac_word" >&5
+echo "configure:2995: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/newlib/libc/sys/linux/machine/aclocal.m4 b/newlib/libc/sys/linux/machine/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/machine/aclocal.m4
+++ b/newlib/libc/sys/linux/machine/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/machine/configure b/newlib/libc/sys/linux/machine/configure
index 3c3167990..54313f63a 100755
--- a/newlib/libc/sys/linux/machine/configure
+++ b/newlib/libc/sys/linux/machine/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1654,7 +1651,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1658: checking for $ac_word" >&5
+echo "configure:1655: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1684,7 +1681,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1688: checking for $ac_word" >&5
+echo "configure:1685: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1735,7 +1732,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1739: checking for $ac_word" >&5
+echo "configure:1736: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1767,7 +1764,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1771: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1768: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1778,12 +1775,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1782 "configure"
+#line 1779 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1809,12 +1806,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1813: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1810: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1818: checking whether we are using GNU C" >&5
+echo "configure:1815: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1823,7 +1820,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1827: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1824: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1842,7 +1839,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1846: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1843: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1885,7 +1882,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1889: checking for ld used by GCC" >&5
+echo "configure:1886: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1915,10 +1912,10 @@ echo "configure:1889: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1919: checking for GNU ld" >&5
+echo "configure:1916: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1922: checking for non-GNU ld" >&5
+echo "configure:1919: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1953,7 +1950,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1957: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1954: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1970,7 +1967,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1974: checking for $LD option to reload object files" >&5
+echo "configure:1971: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1982,7 +1979,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1986: checking for BSD-compatible nm" >&5
+echo "configure:1983: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2020,7 +2017,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2024: checking whether ln -s works" >&5
+echo "configure:2021: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2041,7 +2038,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2045: checking how to recognise dependant libraries" >&5
+echo "configure:2042: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2214,13 +2211,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2218: checking for object suffix" >&5
+echo "configure:2215: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2224: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2244,7 +2241,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2248: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2245: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2306,7 +2303,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2310: checking for file" >&5
+echo "configure:2307: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2377,7 +2374,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2381: checking for $ac_word" >&5
+echo "configure:2378: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2409,7 +2406,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2413: checking for $ac_word" >&5
+echo "configure:2410: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2444,7 +2441,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2448: checking for $ac_word" >&5
+echo "configure:2445: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2476,7 +2473,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2480: checking for $ac_word" >&5
+echo "configure:2477: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2543,8 +2540,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2547 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2544 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2545: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2563,7 +2560,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2567: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2564: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2581,7 +2578,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2585: checking whether the C compiler needs -belf" >&5
+echo "configure:2582: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2594,14 +2591,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2598 "configure"
+#line 2595 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2631,7 +2628,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2635: checking for $ac_word" >&5
+echo "configure:2632: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2663,7 +2660,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2667: checking for $ac_word" >&5
+echo "configure:2664: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2698,7 +2695,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2702: checking for $ac_word" >&5
+echo "configure:2699: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2730,7 +2727,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2734: checking for $ac_word" >&5
+echo "configure:2731: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2765,7 +2762,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2769: checking for $ac_word" >&5
+echo "configure:2766: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2797,7 +2794,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2801: checking for $ac_word" >&5
+echo "configure:2798: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2833,12 +2830,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2837: checking if libtool should supply DllMain function" >&5
+echo "configure:2834: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2842 "configure"
+#line 2839 "configure"
#include "confdefs.h"
int main() {
@@ -2846,7 +2843,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2850: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2867,19 +2864,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2871: checking how to link DLLs" >&5
+echo "configure:2868: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2876 "configure"
+#line 2873 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libc/sys/linux/machine/i386/aclocal.m4 b/newlib/libc/sys/linux/machine/i386/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libc/sys/linux/machine/i386/aclocal.m4
+++ b/newlib/libc/sys/linux/machine/i386/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/linux/machine/i386/configure b/newlib/libc/sys/linux/machine/i386/configure
index f957f6692..54007b7f9 100755
--- a/newlib/libc/sys/linux/machine/i386/configure
+++ b/newlib/libc/sys/linux/machine/i386/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
@@ -2994,7 +2991,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2998: checking for $ac_word" >&5
+echo "configure:2995: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
diff --git a/newlib/libc/sys/linux/machine/i386/dl-machine.h b/newlib/libc/sys/linux/machine/i386/dl-machine.h
index 80757e89a..032713e5b 100644
--- a/newlib/libc/sys/linux/machine/i386/dl-machine.h
+++ b/newlib/libc/sys/linux/machine/i386/dl-machine.h
@@ -292,20 +292,6 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc,
return value;
}
-static inline void __attribute__ ((unused))
-elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
- const Elf32_Sym *sym, const struct r_found_version *version,
- Elf32_Addr *const reloc_addr,
- struct r_scope_elem *scope[]);
-
-static inline void __attribute__ ((unused))
-elf_machine_rel_relative (Elf32_Addr l_addr, const Elf32_Rel *reloc,
- Elf32_Addr *const reloc_addr);
-
-static inline void
-elf_machine_lazy_rel (struct link_map *map,
- Elf32_Addr l_addr, const Elf32_Rel *reloc);
-
#endif /* !dl_machine_h */
#ifdef RESOLVE
@@ -313,11 +299,10 @@ elf_machine_lazy_rel (struct link_map *map,
/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */
-static inline void __attribute__ ((unused))
+static inline void
elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
const Elf32_Sym *sym, const struct r_found_version *version,
- Elf32_Addr *const reloc_addr,
- struct r_scope_elem *scope[])
+ Elf32_Addr *const reloc_addr)
{
const unsigned int r_type = ELF32_R_TYPE (reloc->r_info);
@@ -331,7 +316,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
(i.e. #ifdef RTLD_BOOTSTRAP) because rtld.c contains the
common defn for _dl_rtld_map, which is incompatible with a
weak decl in the same file. */
- #pragma weak _dl_rtld_map
+ weak_extern (_dl_rtld_map);
if (map != &_dl_rtld_map) /* Already done in rtld itself. */
# endif
*reloc_addr += map->l_addr;
@@ -346,9 +331,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
#ifndef RTLD_BOOTSTRAP
const Elf32_Sym *const refsym = sym;
#endif
- /* String table object symbols. */
- const char *strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]);
- Elf32_Addr value = RESOLVE (&sym, version, r_type, scope);
+ Elf32_Addr value = RESOLVE (&sym, version, r_type);
if (sym)
value += sym->st_value;
@@ -396,7 +379,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
}
}
-static inline void __attribute__ ((unused))
+static inline void
elf_machine_rel_relative (Elf32_Addr l_addr, const Elf32_Rel *reloc,
Elf32_Addr *const reloc_addr)
{
diff --git a/newlib/libc/sys/linux/machine/i386/weakalias.h b/newlib/libc/sys/linux/machine/i386/weakalias.h
index 2813bfe26..7b0b18a48 100644
--- a/newlib/libc/sys/linux/machine/i386/weakalias.h
+++ b/newlib/libc/sys/linux/machine/i386/weakalias.h
@@ -1,10 +1,8 @@
#define weak_alias(name, aliasname) \
extern __typeof (name) aliasname __attribute__ ((weak, alias (#name)));
-#if 0
#define weak_extern(symbol) _weak_extern (symbol)
#define _weak_extern(symbol) asm (".weak " #symbol);
-#endif
#define weak_function __attribute__ ((weak))
diff --git a/newlib/libc/sys/linux/net/gethostbydns.c b/newlib/libc/sys/linux/net/gethostbydns.c
index 9c80539f2..9db8bf4ad 100644
--- a/newlib/libc/sys/linux/net/gethostbydns.c
+++ b/newlib/libc/sys/linux/net/gethostbydns.c
@@ -94,7 +94,7 @@ u_int32_t _getlong(const u_char *src);
u_int16_t _getshort(const u_char *src);
#ifdef DEBUG
-static void dbgprintf(char *, int);
+static void dprintf(char *, int);
#endif
#if PACKETSZ > 1024
@@ -118,7 +118,7 @@ int _dns_ttl_;
#ifdef DEBUG
static void
-dbgprintf(msg, num)
+dprintf(msg, num)
char *msg;
int num;
{
@@ -130,7 +130,7 @@ dbgprintf(msg, num)
}
}
#else
-# define dbgprintf(msg, num) /*nada*/
+# define dprintf(msg, num) /*nada*/
#endif
#define BOUNDED_INCR(x) \
@@ -397,13 +397,13 @@ gethostanswer(answer, anslen, qname, qtype, host, hostbuf, hostbuflen, herr)
bp += sizeof(align) - ((u_long)bp % sizeof(align));
if (bp + n >= &hostbuf[hostbuflen]) {
- dbgprintf("size (%d) too big\n", n);
+ dprintf("size (%d) too big\n", n);
had_error++;
continue;
}
if (hap >= &host->__host_addrs[MAXADDRS-1]) {
if (!toobig++)
- dbgprintf("Too many addresses (%d)\n",
+ dprintf("Too many addresses (%d)\n",
MAXADDRS);
cp += n;
continue;
@@ -418,7 +418,7 @@ gethostanswer(answer, anslen, qname, qtype, host, hostbuf, hostbuflen, herr)
}
break;
default:
- dbgprintf("Impossible condition (type=%d)\n", type);
+ dprintf("Impossible condition (type=%d)\n", type);
*herr = NO_RECOVERY;
return (NULL);
/* BIND has abort() here, too risky on bad data */
@@ -606,7 +606,7 @@ _dns_gethostbyname(void *rval, void *cb_data, va_list ap)
}
if ((n = res_search(name, C_IN, type, buf.buf, sizeof(buf))) < 0) {
- dbgprintf("res_search failed (%d)\n", n);
+ dprintf("res_search failed (%d)\n", n);
return NS_UNAVAIL;
}
*(struct hostent **)rval = gethostanswer(&buf, n, name, type, resultbuf, hostbuf, buflen, herr);
@@ -697,11 +697,11 @@ _dns_gethostbyaddr(void *rval, void *cb_data, va_list ap)
}
n = res_query(qbuf, C_IN, T_PTR, (u_char *)buf.buf, sizeof buf.buf);
if (n < 0) {
- dbgprintf("res_query failed (%d)\n", n);
+ dprintf("res_query failed (%d)\n", n);
return NS_UNAVAIL;
}
if (n > sizeof buf.buf) {
- dbgprintf("static buffer is too small (%d)\n", n);
+ dprintf("static buffer is too small (%d)\n", n);
return NS_UNAVAIL;
}
if (!(hp = gethostanswer(&buf, n, qbuf, T_PTR, resultbuf, hostbuf, buflen, herr)))
diff --git a/newlib/libc/sys/linux/net/ns_ntoa.c b/newlib/libc/sys/linux/net/ns_ntoa.c
index b6a6c4c22..018076064 100644
--- a/newlib/libc/sys/linux/net/ns_ntoa.c
+++ b/newlib/libc/sys/linux/net/ns_ntoa.c
@@ -43,8 +43,6 @@ static char sccsid[] = "@(#)ns_ntoa.c 8.1 (Berkeley) 6/4/93";
#include <netns/ns.h>
#include <stdio.h>
-static char *spectHex(char *p0);
-
char *
ns_ntoa(addr)
struct ns_addr addr;
@@ -56,6 +54,7 @@ ns_ntoa(addr)
char *cp2;
u_char *up = addr.x_host.c_host;
u_char *uplim = up + 6;
+ static char *spectHex();
net.net_e = addr.x_net;
sprintf(obuf, "%lx", (u_long)ntohl(net.long_e));
diff --git a/newlib/libc/sys/linux/shared.ld b/newlib/libc/sys/linux/shared.ld
index 33bf4f8fe..1ea6c5256 100644
--- a/newlib/libc/sys/linux/shared.ld
+++ b/newlib/libc/sys/linux/shared.ld
@@ -9,11 +9,3 @@ VERS_1.11 {
VERS_1.12 {
global: *;
};
-
-VERS_1.13 {
- global: *;
-};
-
-VERS_1.14 {
- global: *;
-};
diff --git a/newlib/libc/sys/linux/stdlib/glob.c b/newlib/libc/sys/linux/stdlib/glob.c
index 0e392b32d..e40f12c20 100644
--- a/newlib/libc/sys/linux/stdlib/glob.c
+++ b/newlib/libc/sys/linux/stdlib/glob.c
@@ -66,7 +66,6 @@ __FBSDID("$FreeBSD: src/lib/libc/gen/glob.c,v 1.19 2002/02/01 01:32:19 obrien Ex
*/
#include <sys/param.h>
-#include <sys/types.h>
#include <sys/stat.h>
#include <ctype.h>
diff --git a/newlib/libc/sys/linux/sys/cdefs.h b/newlib/libc/sys/linux/sys/cdefs.h
index f6ea0c73e..459785bcb 100644
--- a/newlib/libc/sys/linux/sys/cdefs.h
+++ b/newlib/libc/sys/linux/sys/cdefs.h
@@ -227,12 +227,4 @@
# endif
#endif
-/* The nonull function attribute allows to mark pointer parameters which
- must not be NULL. */
-#if __GNUC_PREREQ (3,3)
-# define __nonnull(params) __attribute__ ((__nonnull__ params))
-#else
-# define __nonnull(params)
-#endif
-
#endif /* sys/cdefs.h */
diff --git a/newlib/libc/sys/linux/sys/dirent.h b/newlib/libc/sys/linux/sys/dirent.h
index 4bbae4229..083158eb3 100644
--- a/newlib/libc/sys/linux/sys/dirent.h
+++ b/newlib/libc/sys/linux/sys/dirent.h
@@ -41,7 +41,6 @@ int closedir(DIR *);
/* internal prototype */
void _seekdir(DIR *dir,off_t offset);
-DIR *_opendir(const char *);
#ifndef _POSIX_SOURCE
long telldir (DIR *);
diff --git a/newlib/libc/sys/linux/sys/lock.h b/newlib/libc/sys/linux/sys/lock.h
index d934031e2..167392e10 100644
--- a/newlib/libc/sys/linux/sys/lock.h
+++ b/newlib/libc/sys/linux/sys/lock.h
@@ -1,6 +1,7 @@
#ifndef __SYS_LOCK_H__
#define __SYS_LOCK_H__
+#include <machine/weakalias.h>
#include <features.h>
#define _LIBC 1
diff --git a/newlib/libc/sys/linux/sys/stat.h b/newlib/libc/sys/linux/sys/stat.h
index 99da598ba..7bc06f7ae 100644
--- a/newlib/libc/sys/linux/sys/stat.h
+++ b/newlib/libc/sys/linux/sys/stat.h
@@ -7,15 +7,14 @@
#define _SYS_STAT_H
#include <asm/stat.h>
-#include <_ansi.h>
-#include <sys/types.h>
-#include <linux/time.h>
#define __KERNEL__
#include <linux/stat.h>
#undef __KERNEL__
/* --- redundant stuff below --- */
+#include <_ansi.h>
+#include <sys/types.h>
int _EXFUN(fstat,( int __fd, struct stat *__sbuf ));
int _EXFUN(mkdir,( const char *_path, mode_t __mode ));
@@ -24,10 +23,10 @@ int _EXFUN(stat,( const char *__path, struct stat *__sbuf ));
mode_t _EXFUN(umask,( mode_t __mask ));
#ifndef _POSIX_SOURCE
-int _EXFUN(fstat64,( int __fd, struct stat64 *__sbuf ));
-int _EXFUN(lstat,( const char *file_name, struct stat64 *buf));
-int _EXFUN(lstat64,( const char *file_name, struct stat64 *buf));
-int _EXFUN(stat64,( const char *__path, struct stat64 *__sbuf ));
+int _EXFUN(fstat64,( int __fd, struct stat *__sbuf ));
+int _EXFUN(lstat,( const char *file_name, struct stat *buf));
+int _EXFUN(lstat64,( const char *file_name, struct stat *buf));
+int _EXFUN(stat64,( const char *__path, struct stat *__sbuf ));
#endif /* _POSIX_SOURCE */
#endif /* _SYS_STAT_H */
diff --git a/newlib/libc/sys/linux/sys/string.h b/newlib/libc/sys/linux/sys/string.h
deleted file mode 100644
index 25489caea..000000000
--- a/newlib/libc/sys/linux/sys/string.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef _SYS_STRING_H
-#define _SYS_STRING_H
-
-#ifndef __STRICT_ANSI__
-char *_EXFUN(strsignal, (int __signo));
-#endif
-
-#endif /* _SYS_STRING_H */
diff --git a/newlib/libc/sys/linux/sys/types.h b/newlib/libc/sys/linux/sys/types.h
index ba191f072..47f49087a 100644
--- a/newlib/libc/sys/linux/sys/types.h
+++ b/newlib/libc/sys/linux/sys/types.h
@@ -50,8 +50,8 @@
* libc/include/sys/types.h. Repeat those here and
* skip the kernel's definitions. */
-#include <sys/config.h>
#include <features.h>
+#include <sys/config.h>
#include <machine/types.h>
#include <sys/_types.h>
@@ -166,7 +166,6 @@ typedef __uint8_t u_int8_t;
typedef __uint16_t u_int16_t;
typedef __uint32_t u_int32_t;
typedef __uint64_t u_int64_t;
-typedef __int8_t int8_t;
typedef __int16_t int16_t;
typedef __int32_t int32_t;
typedef __int64_t int64_t;
diff --git a/newlib/libc/sys/linux/sys/unistd.h b/newlib/libc/sys/linux/sys/unistd.h
index 502fb473a..dd3f0f7ea 100644
--- a/newlib/libc/sys/linux/sys/unistd.h
+++ b/newlib/libc/sys/linux/sys/unistd.h
@@ -29,6 +29,9 @@ char _EXFUN(*ctermid, (char *__s ));
char _EXFUN(*cuserid, (char *__s ));
int _EXFUN(dup, (int __fildes ));
int _EXFUN(dup2, (int __fildes, int __fildes2 ));
+#if defined(__CYGWIN__)
+void _EXFUN(endusershell, (void));
+#endif
int _EXFUN(execl, (const char *__path, const char *, ... ));
int _EXFUN(execle, (const char *__path, const char *, ... ));
int _EXFUN(execlp, (const char *__file, const char *, ... ));
@@ -41,7 +44,6 @@ int _EXFUN(fchown, (int __fildes, uid_t __owner, gid_t __group ));
pid_t _EXFUN(fork, (void ));
long _EXFUN(fpathconf, (int __fd, int __name ));
int _EXFUN(fsync, (int __fd));
-int _EXFUN(ftruncate, (int __fd, off_t __length));
char _EXFUN(*getcwd, (char *__buf, size_t __size ));
int _EXFUN(getdomainname ,(char *__name, size_t __len));
gid_t _EXFUN(getegid, (void ));
@@ -68,11 +70,13 @@ int _EXFUN(nice, (int __nice_value ));
off_t _EXFUN(lseek, (int __fildes, off_t __offset, int __whence ));
long _EXFUN(pathconf, (const char *__path, int __name ));
int _EXFUN(pause, (void ));
+#ifdef __CYGWIN__
+int _EXFUN(pthread_atfork, (void (*)(void), void (*)(void), void (*)(void)));
+#endif
int _EXFUN(pipe, (int __fildes[2] ));
ssize_t _EXFUN(pread, (int __fd, void *__buf, size_t __nbytes, off_t __offset));
ssize_t _EXFUN(pwrite, (int __fd, const void *__buf, size_t __nbytes, off_t __offset));
_READ_WRITE_RETURN_TYPE _EXFUN(read, (int __fd, void *__buf, size_t __nbyte ));
-int _EXFUN(readlink, (const char *path, char *buf, size_t bufsiz));
int _EXFUN(rmdir, (const char *__path ));
void * _EXFUN(sbrk, (ptrdiff_t __incr));
int _EXFUN(setegid, (gid_t __gid ));
@@ -84,15 +88,12 @@ pid_t _EXFUN(setsid, (void ));
int _EXFUN(setuid, (uid_t __uid ));
unsigned _EXFUN(sleep, (unsigned int __seconds ));
void _EXFUN(swab, (const void *, void *, ssize_t));
-int _EXFUN(symlink, (const char *oldpath, const char *newpath));
long _EXFUN(sysconf, (int __name ));
pid_t _EXFUN(tcgetpgrp, (int __fildes ));
int _EXFUN(tcsetpgrp, (int __fildes, pid_t __pgrp_id ));
-int _EXFUN(truncate, (const char *, off_t __length));
char * _EXFUN(ttyname, (int __fildes ));
int _EXFUN(ttyname_r, (int __fildes, char *__buf, size_t __len));
int _EXFUN(unlink, (const char *__path ));
-int _EXFUN(usleep, (__useconds_t __useconds));
int _EXFUN(vhangup, (void ));
_READ_WRITE_RETURN_TYPE _EXFUN(write, (int __fd, const void *__buf, size_t __nbyte ));
diff --git a/newlib/libc/sys/m88kbug/aclocal.m4 b/newlib/libc/sys/m88kbug/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/m88kbug/aclocal.m4
+++ b/newlib/libc/sys/m88kbug/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/m88kbug/configure b/newlib/libc/sys/m88kbug/configure
index abdfc90ff..7ab457699 100755
--- a/newlib/libc/sys/m88kbug/configure
+++ b/newlib/libc/sys/m88kbug/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/mmixware/aclocal.m4 b/newlib/libc/sys/mmixware/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/mmixware/aclocal.m4
+++ b/newlib/libc/sys/mmixware/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/mmixware/configure b/newlib/libc/sys/mmixware/configure
index c97c3f425..c14d5c152 100755
--- a/newlib/libc/sys/mmixware/configure
+++ b/newlib/libc/sys/mmixware/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/netware/aclocal.m4 b/newlib/libc/sys/netware/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/netware/aclocal.m4
+++ b/newlib/libc/sys/netware/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/netware/configure b/newlib/libc/sys/netware/configure
index 8f0ed4de7..92ca516d3 100755
--- a/newlib/libc/sys/netware/configure
+++ b/newlib/libc/sys/netware/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/rdos/Makefile.am b/newlib/libc/sys/rdos/Makefile.am
deleted file mode 100644
index 825ef56c0..000000000
--- a/newlib/libc/sys/rdos/Makefile.am
+++ /dev/null
@@ -1,17 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = chown.c close.c execve.c fork.c fstat.c getenv.c \
- getpid.c gettod.c isatty.c kill.c link.c lseek.c open.c rdoshelp.c \
- rdos.S read.c readlink.c sbrk.c stat.c symlink.c times.c unlink.c \
- wait.c write.c
-
-all: crt0.o
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
diff --git a/newlib/libc/sys/rdos/Makefile.in b/newlib/libc/sys/rdos/Makefile.in
deleted file mode 100644
index 5fb59e5e2..000000000
--- a/newlib/libc/sys/rdos/Makefile.in
+++ /dev/null
@@ -1,376 +0,0 @@
-# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
-# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-
-SHELL = @SHELL@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-
-bindir = @bindir@
-sbindir = @sbindir@
-libexecdir = @libexecdir@
-datadir = @datadir@
-sysconfdir = @sysconfdir@
-sharedstatedir = @sharedstatedir@
-localstatedir = @localstatedir@
-libdir = @libdir@
-infodir = @infodir@
-mandir = @mandir@
-includedir = @includedir@
-oldincludedir = /usr/include
-
-DESTDIR =
-
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-
-top_builddir = .
-
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
-
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-transform = @program_transform_name@
-
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_alias = @build_alias@
-build_triplet = @build@
-host_alias = @host_alias@
-host_triplet = @host@
-target_alias = @target_alias@
-target_triplet = @target@
-AR = @AR@
-AS = @AS@
-CC = @CC@
-CPP = @CPP@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-DLLTOOL = @DLLTOOL@
-EXEEXT = @EXEEXT@
-GCJ = @GCJ@
-GCJFLAGS = @GCJFLAGS@
-LDFLAGS = @LDFLAGS@
-LIBTOOL = @LIBTOOL@
-LN_S = @LN_S@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-RANLIB = @RANLIB@
-STRIP = @STRIP@
-VERSION = @VERSION@
-aext = @aext@
-libm_machine_dir = @libm_machine_dir@
-machine_dir = @machine_dir@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-sys_dir = @sys_dir@
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-noinst_LIBRARIES = lib.a
-
-lib_a_SOURCES = chown.c close.c execve.c fork.c fstat.c getenv.c getpid.c gettod.c isatty.c kill.c link.c lseek.c open.c rdoshelp.c rdos.S read.c readlink.c sbrk.c stat.c symlink.c times.c unlink.c wait.c write.c
-
-
-ACLOCAL_AMFLAGS = -I ../../..
-CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-
-
-DEFS = @DEFS@ -I. -I$(srcdir)
-CPPFLAGS = @CPPFLAGS@
-LIBS = @LIBS@
-lib_a_LIBADD =
-lib_a_OBJECTS = chown.$(OBJEXT) close.$(OBJEXT) execve.$(OBJEXT) \
-fork.$(OBJEXT) fstat.$(OBJEXT) getenv.$(OBJEXT) getpid.$(OBJEXT) \
-gettod.$(OBJEXT) isatty.$(OBJEXT) kill.$(OBJEXT) link.$(OBJEXT) \
-lseek.$(OBJEXT) open.$(OBJEXT) rdoshelp.$(OBJEXT) rdos.$(OBJEXT) \
-read.$(OBJEXT) readlink.$(OBJEXT) sbrk.$(OBJEXT) stat.$(OBJEXT) \
-symlink.$(OBJEXT) times.$(OBJEXT) unlink.$(OBJEXT) wait.$(OBJEXT) \
-write.$(OBJEXT)
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = tar
-GZIP_ENV = --best
-SOURCES = $(lib_a_SOURCES)
-OBJECTS = $(lib_a_OBJECTS)
-
-all: all-redirect
-.SUFFIXES:
-.SUFFIXES: .S .c .lo .o .obj .s
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
-
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
- ../../../acinclude.m4 ../../../aclocal.m4 \
- ../../../libtool.m4
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
- cd $(srcdir) && $(AUTOCONF)
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-.c.o:
- $(COMPILE) -c $<
-
-# FIXME: We should only use cygpath when building on Windows,
-# and only if it is available.
-.c.obj:
- $(COMPILE) -c `cygpath -w $<`
-
-.s.o:
- $(COMPILE) -c $<
-
-.S.o:
- $(COMPILE) -c $<
-
-mostlyclean-compile:
- -rm -f *.o core *.core
- -rm -f *.$(OBJEXT)
-
-clean-compile:
-
-distclean-compile:
- -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-.c.lo:
- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.s.lo:
- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.S.lo:
- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-distclean-libtool:
-
-maintainer-clean-libtool:
-
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- here=`pwd` && cd $(srcdir) \
- && mkid -f$$here/ID $$unique $(LISP)
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS)'; \
- unique=`for i in $$list; do echo $$i; done | \
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
- || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
-mostlyclean-tags:
-
-clean-tags:
-
-distclean-tags:
- -rm -f TAGS ID
-
-maintainer-clean-tags:
-
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- -rm -rf $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
- mkdir $(distdir)/=build
- mkdir $(distdir)/=inst
- dc_install_base=`cd $(distdir)/=inst && pwd`; \
- cd $(distdir)/=build \
- && ../configure --srcdir=.. --prefix=$$dc_install_base \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) dist
- -rm -rf $(distdir)
- @banner="$(distdir).tar.gz is ready for distribution"; \
- dashes=`echo "$$banner" | sed s/./=/g`; \
- echo "$$dashes"; \
- echo "$$banner"; \
- echo "$$dashes"
-dist: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-dist-all: distdir
- -chmod -R a+r $(distdir)
- GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
- -rm -rf $(distdir)
-distdir: $(DISTFILES)
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
- @for file in $(DISTFILES); do \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- cp -pr $$d/$$file $(distdir)/$$file; \
- else \
- test -f $(distdir)/$$file \
- || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
-check-am:
-check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-info-am:
-install-info: install-info-am
-install-exec-am:
-install-exec: install-exec-am
-
-install-data-am:
-install-data: install-data-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-am
-uninstall-am:
-uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES)
-all-redirect: all-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
-installdirs:
-
-
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f Makefile $(CONFIG_CLEAN_FILES)
- -rm -f config.cache config.log stamp-h stamp-h[0-9]*
-
-maintainer-clean-generic:
-mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \
- mostlyclean-libtool mostlyclean-tags \
- mostlyclean-generic
-
-mostlyclean: mostlyclean-am
-
-clean-am: clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \
- clean-generic mostlyclean-am
-
-clean: clean-am
-
-distclean-am: distclean-noinstLIBRARIES distclean-compile \
- distclean-libtool distclean-tags distclean-generic \
- clean-am
- -rm -f libtool
-
-distclean: distclean-am
- -rm -f config.status
-
-maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
- maintainer-clean-compile maintainer-clean-libtool \
- maintainer-clean-tags maintainer-clean-generic \
- distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-maintainer-clean: maintainer-clean-am
- -rm -f config.status
-
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile mostlyclean-libtool distclean-libtool \
-clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
-dvi-am dvi check check-am installcheck-am installcheck install-info-am \
-install-info install-exec-am install-exec install-data-am install-data \
-install-am install uninstall-am uninstall all-redirect all-am all \
-installdirs mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
-
-all: crt0.o
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/sys/rdos/aclocal.m4 b/newlib/libc/sys/rdos/aclocal.m4
deleted file mode 100644
index e6cbb29c0..000000000
--- a/newlib/libc/sys/rdos/aclocal.m4
+++ /dev/null
@@ -1,1226 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl This provides configure definitions used by all the newlib
-dnl configure.in files.
-
-dnl Basic newlib configury. This calls basic introductory stuff,
-dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
-dnl configure.host. The only argument is the relative path to the top
-dnl newlib directory.
-
-AC_DEFUN(NEWLIB_CONFIGURE,
-[
-dnl Default to --enable-multilib
-AC_ARG_ENABLE(multilib,
-[ --enable-multilib build many library versions (default)],
-[case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
- esac], [multilib=yes])dnl
-
-dnl Support --enable-target-optspace
-AC_ARG_ENABLE(target-optspace,
-[ --enable-target-optspace optimize for space],
-[case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
- esac], [target_optspace=])dnl
-
-dnl Support --enable-malloc-debugging - currently only supported for Cygwin
-AC_ARG_ENABLE(malloc-debugging,
-[ --enable-malloc-debugging indicate malloc debugging requested],
-[case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
- esac], [malloc_debugging=])dnl
-
-dnl Support --enable-newlib-multithread
-AC_ARG_ENABLE(newlib-multithread,
-[ --enable-newlib-multithread enable support for multiple threads],
-[case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
- esac], [newlib_multithread=yes])dnl
-
-dnl Support --enable-newlib-iconv
-AC_ARG_ENABLE(newlib-iconv,
-[ --enable-newlib-iconv enable iconv library support],
-[if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-iconv option) ;;
- esac
- fi], [newlib_iconv=${newlib_iconv}])dnl
-
-dnl Support --enable-newlib-elix-level
-AC_ARG_ENABLE(newlib-elix-level,
-[ --enable-newlib-elix-level supply desired elix library level (1-4)],
-[case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
- esac], [newlib_elix_level=0])dnl
-
-dnl Support --disable-newlib-io-float
-AC_ARG_ENABLE(newlib-io-float,
-[ --disable-newlib-io-float disable printf/scanf family float support],
-[case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
- esac], [newlib_io_float=yes])dnl
-
-dnl Support --disable-newlib-supplied-syscalls
-AC_ARG_ENABLE(newlib-supplied-syscalls,
-[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
-[case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
- esac], [newlib_may_supply_syscalls=yes])dnl
-
-AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
-
-dnl We may get other options which we don't document:
-dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
-
-test -z "[$]{with_target_subdir}" && with_target_subdir=.
-
-if test "[$]{srcdir}" = "."; then
- if test "[$]{with_target_subdir}" != "."; then
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
- else
- newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
- fi
-else
- newlib_basedir="[$]{srcdir}/$1"
-fi
-AC_SUBST(newlib_basedir)
-
-AC_CANONICAL_SYSTEM
-
-AM_INIT_AUTOMAKE(newlib, 1.14.0, nodefine)
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-AC_DEFUN(LIB_AC_PROG_CC,
-[AC_BEFORE([$0], [AC_PROG_CPP])dnl
-AC_CHECK_PROG(CC, gcc, gcc)
-if test -z "$CC"; then
- AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
- test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
-fi
-
-AC_PROG_CC_GNU
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
-dnl Check whether -g works, even if CFLAGS is set, in case the package
-dnl plays around with CFLAGS (such as to build both debugging and
-dnl normal versions of a library), tasteless as that idea is.
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- AC_PROG_CC_G
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-])
-
-LIB_AC_PROG_CC
-
-AC_CHECK_TOOL(AS, as)
-AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-
-AC_PROG_INSTALL
-
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
-AM_MAINTAINER_MODE
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
- AC_EXEEXT
-fi
-
-. [$]{newlib_basedir}/configure.host
-
-newlib_cflags="[$]{newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-AC_SUBST(NEWLIB_CFLAGS)
-
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
-AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
-AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
-AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
-AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
-AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
-
-AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-AC_SUBST(OBJEXT)
-AC_SUBST(oext)
-AC_SUBST(aext)
-
-AC_SUBST(libm_machine_dir)
-AC_SUBST(machine_dir)
-AC_SUBST(sys_dir)
-])
-
-# Do all the work for Automake. This macro actually does too much --
-# some checks are only needed if your package does certain things.
-# But this isn't really a big deal.
-
-# serial 1
-
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-fi
-ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
-
-# Copyright 2002 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.4-p6])])
-
-#
-# Check to make sure that the build environment is sane.
-#
-
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "[$]*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "[$]*" != "X $srcdir/configure conftestfile" \
- && test "[$]*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "[$]2" = conftestfile
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-rm -f conftest*
-AC_MSG_RESULT(yes)])
-
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN([AM_MISSING_PROG],
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
- $1=$2
- AC_MSG_RESULT(found)
-else
- $1="$3/missing $2"
- AC_MSG_RESULT(missing)
-fi
-AC_SUBST($1)])
-
-# Define a conditional.
-
-AC_DEFUN([AM_CONDITIONAL],
-[AC_SUBST($1_TRUE)
-AC_SUBST($1_FALSE)
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi])
-
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
-
-# serial 1
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-[ --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- USE_MAINTAINER_MODE=$enableval,
- USE_MAINTAINER_MODE=no)
- AC_MSG_RESULT($USE_MAINTAINER_MODE)
- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST(MAINT)dnl
-]
-)
-
-
-# serial 46 AC_PROG_LIBTOOL
-AC_DEFUN([AC_PROG_LIBTOOL],
-[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
-dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
-dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
- AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [AC_LIBTOOL_CXX],
- [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
-])])
-
-dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
-dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
-dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
- AC_PROVIDE_IFELSE([AC_PROG_GCJ],
- [AC_LIBTOOL_GCJ],
- [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
- [AC_LIBTOOL_GCJ],
- [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
- [AC_LIBTOOL_GCJ],
- [ifdef([AC_PROG_GCJ],
- [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ
-])])
- ifdef([A][M_PROG_GCJ],
- [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ
-])])
- ifdef([LT_AC_PROG_GCJ],
- [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ
-])])])])])])
-
-AC_DEFUN([_AC_PROG_LIBTOOL],
-[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
-AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
-AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
-
-# Save cache, so that ltconfig can load it
-AC_CACHE_SAVE
-
-# Actually configure libtool. ac_aux_dir is where install-sh is found.
-AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
-MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
-LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
-AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
-objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
-deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \
-${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
-$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \
-|| AC_MSG_ERROR([libtool configure failed])
-
-# Reload cache, that may have been modified by ltconfig
-AC_CACHE_LOAD
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-# Redirect the config.log output again, so that the ltconfig log is not
-# clobbered by the next message.
-exec 5>>./config.log
-])
-
-AC_DEFUN([AC_LIBTOOL_SETUP],
-[AC_PREREQ(2.13)dnl
-AC_REQUIRE([AC_ENABLE_SHARED])dnl
-AC_REQUIRE([AC_ENABLE_STATIC])dnl
-AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_PROG_LD])dnl
-AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
-AC_REQUIRE([AC_PROG_NM])dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
-# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
-AC_REQUIRE([AC_OBJEXT])dnl
-AC_REQUIRE([AC_EXEEXT])dnl
-dnl
-
-# Only perform the check for file, if the check method requires it
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- AC_PATH_MAGIC
- fi
- ;;
-esac
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-AC_CHECK_TOOL(STRIP, strip, :)
-
-# Check for any special flags to pass to ltconfig.
-libtool_flags="--cache-file=$cache_file"
-test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
-test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
-test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
-test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc"
-test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
-ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
-[libtool_flags="$libtool_flags --enable-dlopen"])
-ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-[libtool_flags="$libtool_flags --enable-win32-dll"])
-AC_ARG_ENABLE(libtool-lock,
- [ --disable-libtool-lock avoid locking (might break parallel builds)])
-test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
-test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
-
-AC_ARG_WITH(pic,
- [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
- pic_mode="$withval", pic_mode=default)
-test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic"
-test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case "`/usr/bin/file conftest.o`" in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
- [AC_LANG_SAVE
- AC_LANG_C
- AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
- AC_LANG_RESTORE])
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-
-ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
- AC_CHECK_TOOL(AS, as, false)
- AC_CHECK_TOOL(OBJDUMP, objdump, false)
-
- # recent cygwin and mingw systems supply a stub DllMain which the user
- # can override, but on older systems we have to supply one
- AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
- [AC_TRY_LINK([],
- [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
- DllMain (0, 0, 0);],
- [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
-
- case $host/$CC in
- *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
- # old mingw systems require "-dll" to link a DLL, while more recent ones
- # require "-mdll"
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -mdll"
- AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
- [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
- CFLAGS="$SAVE_CFLAGS" ;;
- *-*-cygwin* | *-*-pw32*)
- # cygwin systems need to pass --dll to the linker, and not link
- # crt.o which will require a WinMain@16 definition.
- lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
- esac
- ;;
- ])
-esac
-])
-
-# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
-AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
-
-# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
-AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
-
-# AC_ENABLE_SHARED - implement the --enable-shared flag
-# Usage: AC_ENABLE_SHARED[(DEFAULT)]
-# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
-# `yes'.
-AC_DEFUN([AC_ENABLE_SHARED],
-[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
-AC_ARG_ENABLE(shared,
-changequote(<<, >>)dnl
-<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
-changequote([, ])dnl
-[p=${PACKAGE-default}
-case $enableval in
-yes) enable_shared=yes ;;
-no) enable_shared=no ;;
-*)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
- for pkg in $enableval; do
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac],
-enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
-])
-
-# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
-AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_SHARED(no)])
-
-# AC_ENABLE_STATIC - implement the --enable-static flag
-# Usage: AC_ENABLE_STATIC[(DEFAULT)]
-# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
-# `yes'.
-AC_DEFUN([AC_ENABLE_STATIC],
-[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
-AC_ARG_ENABLE(static,
-changequote(<<, >>)dnl
-<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
-changequote([, ])dnl
-[p=${PACKAGE-default}
-case $enableval in
-yes) enable_static=yes ;;
-no) enable_static=no ;;
-*)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
- for pkg in $enableval; do
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac],
-enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
-])
-
-# AC_DISABLE_STATIC - set the default static flag to --disable-static
-AC_DEFUN([AC_DISABLE_STATIC],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_STATIC(no)])
-
-
-# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
-# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
-# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
-# `yes'.
-AC_DEFUN([AC_ENABLE_FAST_INSTALL],
-[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
-AC_ARG_ENABLE(fast-install,
-changequote(<<, >>)dnl
-<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
-changequote([, ])dnl
-[p=${PACKAGE-default}
-case $enableval in
-yes) enable_fast_install=yes ;;
-no) enable_fast_install=no ;;
-*)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
- for pkg in $enableval; do
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$ac_save_ifs"
- ;;
-esac],
-enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
-])
-
-# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
-AC_DEFUN([AC_DISABLE_FAST_INSTALL],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_FAST_INSTALL(no)])
-
-# AC_LIBTOOL_PICMODE - implement the --with-pic flag
-# Usage: AC_LIBTOOL_PICMODE[(MODE)]
-# Where MODE is either `yes' or `no'. If omitted, it defaults to
-# `both'.
-AC_DEFUN([AC_LIBTOOL_PICMODE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-pic_mode=ifelse($#,1,$1,default)])
-
-
-# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
-AC_DEFUN([AC_PATH_TOOL_PREFIX],
-[AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
- /*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
- ?:/*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
- ;;
- *)
- ac_save_MAGIC_CMD="$MAGIC_CMD"
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="ifelse([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$1; then
- lt_cv_path_MAGIC_CMD="$ac_dir/$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- egrep "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool@gnu.org
-
-EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$ac_save_ifs"
- MAGIC_CMD="$ac_save_MAGIC_CMD"
- ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-])
-
-
-# AC_PATH_MAGIC - find a file program which can recognise a shared library
-AC_DEFUN([AC_PATH_MAGIC],
-[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
-AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
- else
- MAGIC_CMD=:
- fi
-fi
-])
-
-
-# AC_PROG_LD - find the path to the GNU or non-GNU linker
-AC_DEFUN([AC_PROG_LD],
-[AC_ARG_WITH(gnu-ld,
-[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
-test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by GCC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]* | [A-Za-z]:[\\/]*)]
- re_direlt=['/[^/][^/]*/\.\./']
- # Canonicalize the path of ld
- ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
- while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
- fi
- fi
- done
- IFS="$ac_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-AC_PROG_LD_GNU
-])
-
-AC_DEFUN([AC_PROG_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
- lt_cv_prog_gnu_ld=yes
-else
- lt_cv_prog_gnu_ld=no
-fi])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])
-
-# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
-# -- PORTME Some linkers may need a different reload flag.
-AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
-[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
-[lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-test -n "$reload_flag" && reload_flag=" $reload_flag"
-])
-
-# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
-# -- PORTME fill in with the dynamic library characteristics
-AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
-[AC_CACHE_CHECK([how to recognise dependant libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [regex]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given egrep regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi4*)
- lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)']
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin* | mingw* |pw32*)
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- case "$host_os" in
- rhapsody* | darwin1.[012])
- lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System'
- ;;
- *) # Darwin 1.3 on
- lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
- ;;
- esac
- ;;
-
-freebsd* )
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library']
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20*|hpux11*)
- case $host_cpu in
- hppa*)
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library']
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- ia64*)
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64']
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- esac
- ;;
-
-irix5* | irix6*)
- case $host_os in
- irix5*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
- ;;
- *)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"]
- ;;
- esac
- lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux-gnu*)
- case $host_cpu in
- alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
- lt_cv_deplibs_check_method=pass_all ;;
- *)
- # glibc up to 2.1.1 does not perform some relocations on ARM
- lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;;
- esac
- lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
- ;;
-
-netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
- [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
- else
- [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$']
- fi
- ;;
-
-newsos6)
- [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)']
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-osf3* | osf4* | osf5*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
- lt_cv_file_magic_test_file=/shlib/libc.so
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sco3.2v5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
-
-[sysv5uw[78]* | sysv4*uw2*)]
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- case $host_vendor in
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- motorola)
- lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]']
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- esac
- ;;
-esac
-])
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-])
-
-
-# AC_PROG_NM - find the path to a BSD-compatible name lister
-AC_DEFUN([AC_PROG_NM],
-[AC_MSG_CHECKING([for BSD-compatible nm])
-AC_CACHE_VAL(lt_cv_path_NM,
-[if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- test -z "$ac_dir" && ac_dir=.
- tmp_nm=$ac_dir/${ac_tool_prefix}nm
- if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
- lt_cv_path_NM="$tmp_nm -B"
- break
- elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
- lt_cv_path_NM="$tmp_nm -p"
- break
- else
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
-fi])
-NM="$lt_cv_path_NM"
-AC_MSG_RESULT([$NM])
-])
-
-# AC_CHECK_LIBM - check for math library
-AC_DEFUN([AC_CHECK_LIBM],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32*)
- # These system don't have libm
- ;;
-*-ncr-sysv4.3*)
- AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
- AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
- ;;
-*)
- AC_CHECK_LIB(m, main, LIBM="-lm")
- ;;
-esac
-])
-
-# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
-# the libltdl convenience library and INCLTDL to the include flags for
-# the libltdl header and adds --enable-ltdl-convenience to the
-# configure arguments. Note that LIBLTDL and INCLTDL are not
-# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
-# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
-# with '${top_builddir}/' and INCLTDL will be prefixed with
-# '${top_srcdir}/' (note the single quotes!). If your package is not
-# flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
-AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- case $enable_ltdl_convenience in
- no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
- "") enable_ltdl_convenience=yes
- ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
- esac
- LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
-])
-
-# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
-# the libltdl installable library and INCLTDL to the include flags for
-# the libltdl header and adds --enable-ltdl-install to the configure
-# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
-# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
-# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
-# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
-# with '${top_srcdir}/' (note the single quotes!). If your package is
-# not flat and you're not using automake, define top_builddir and
-# top_srcdir appropriately in the Makefiles.
-# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
-AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
-[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_CHECK_LIB(ltdl, main,
- [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
- [if test x"$enable_ltdl_install" = xno; then
- AC_MSG_WARN([libltdl not installed, but installation disabled])
- else
- enable_ltdl_install=yes
- fi
- ])
- if test x"$enable_ltdl_install" = x"yes"; then
- ac_configure_args="$ac_configure_args --enable-ltdl-install"
- LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
- else
- ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
- LIBLTDL="-lltdl"
- INCLTDL=
- fi
-])
-
-# If this macro is not defined by Autoconf, define it here.
-ifdef([AC_PROVIDE_IFELSE],
- [],
- [define([AC_PROVIDE_IFELSE],
- [ifdef([AC_PROVIDE_$1],
- [$2], [$3])])])
-
-# AC_LIBTOOL_CXX - enable support for C++ libraries
-AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])])
-
-AC_DEFUN([_AC_LIBTOOL_CXX],
-[AC_REQUIRE([AC_PROG_CXX])
-AC_REQUIRE([AC_PROG_CXXCPP])
-LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh"
-lt_save_CC="$CC"
-lt_save_CFLAGS="$CFLAGS"
-dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
-dnl is set to the C++ compiler.
-AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \
-MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
-LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
-AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
-objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
-deplibs_check_method="$deplibs_check_method" \
-file_magic_cmd="$file_magic_cmd" \
-${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
---build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \
-|| AC_MSG_ERROR([libtool tag configuration failed])
-CC="$lt_save_CC"
-CFLAGS="$lt_save_CFLAGS"
-
-# Redirect the config.log output again, so that the ltconfig log is not
-# clobbered by the next message.
-exec 5>>./config.log
-])
-
-# AC_LIBTOOL_GCJ - enable support for GCJ libraries
-AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])])
-
-AC_DEFUN([_AC_LIBTOOL_GCJ],
-[AC_REQUIRE([AC_PROG_LIBTOOL])
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
- [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
- [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
- [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
- [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
- [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
-LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh"
-lt_save_CC="$CC"
-lt_save_CFLAGS="$CFLAGS"
-dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
-dnl is set to the C++ compiler.
-AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \
-MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
-LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
-AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
-objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
-deplibs_check_method="$deplibs_check_method" \
-file_magic_cmd="$file_magic_cmd" \
-${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
---build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \
-|| AC_MSG_ERROR([libtool tag configuration failed])
-CC="$lt_save_CC"
-CFLAGS="$lt_save_CFLAGS"
-
-# Redirect the config.log output again, so that the ltconfig log is not
-# clobbered by the next message.
-exec 5>>./config.log
-])
-
-dnl old names
-AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
-AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
-AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
-
-dnl This is just to silence aclocal about the macro not being used
-ifelse([AC_DISABLE_FAST_INSTALL])dnl
-
-AC_DEFUN([LT_AC_PROG_GCJ],
-[AC_CHECK_TOOL(GCJ, gcj, no)
- test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
- AC_SUBST(GCJFLAGS)
-])
-
diff --git a/newlib/libc/sys/rdos/chown.c b/newlib/libc/sys/rdos/chown.c
deleted file mode 100755
index 48f33f563..000000000
--- a/newlib/libc/sys/rdos/chown.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include <sys/types.h>
-
-int chown(const char *path, uid_t owner, gid_t group)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/close.c b/newlib/libc/sys/rdos/close.c
deleted file mode 100644
index 7f95e24f3..000000000
--- a/newlib/libc/sys/rdos/close.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# close.c
-# close function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include "rdos.h"
-
-int close(int fildes)
-{
- RdosCloseFile(fildes);
- return 0;
-}
diff --git a/newlib/libc/sys/rdos/config.h b/newlib/libc/sys/rdos/config.h
deleted file mode 100644
index 431e26805..000000000
--- a/newlib/libc/sys/rdos/config.h
+++ /dev/null
@@ -1 +0,0 @@
-/* Place holder for future configuration information. */
diff --git a/newlib/libc/sys/rdos/configure b/newlib/libc/sys/rdos/configure
deleted file mode 100755
index e937dd685..000000000
--- a/newlib/libc/sys/rdos/configure
+++ /dev/null
@@ -1,1876 +0,0 @@
-#! /bin/sh
-
-# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-
-# Defaults:
-ac_help=
-ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
- --enable-multilib build many library versions (default)"
-ac_help="$ac_help
- --enable-target-optspace optimize for space"
-ac_help="$ac_help
- --enable-malloc-debugging indicate malloc debugging requested"
-ac_help="$ac_help
- --enable-newlib-multithread enable support for multiple threads"
-ac_help="$ac_help
- --enable-newlib-iconv enable iconv library support"
-ac_help="$ac_help
- --enable-newlib-elix-level supply desired elix library level (1-4)"
-ac_help="$ac_help
- --disable-newlib-io-float disable printf/scanf family float support"
-ac_help="$ac_help
- --disable-newlib-supplied-syscalls disable newlib from supplying syscalls"
-ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
-
-# Initialize some variables set by options.
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
-exec_prefix=NONE
-host=NONE
-no_create=
-nonopt=NONE
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-target=NONE
-verbose=
-x_includes=NONE
-x_libraries=NONE
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
-ac_prev=
-for ac_option
-do
-
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case "$ac_option" in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
-
- -disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
-
- -with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
- # Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
-
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
- ;;
-
- *)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
-
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
-
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=close.c
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
-fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
-else
- echo "creating cache $cache_file"
- > $cache_file
-fi
-
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-
-
-ac_aux_dir=
-for ac_dir in ../../../.. $srcdir/../../../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-
-am__api_version="1.4"
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:578: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:631: checking whether build environment is sane" >&5
-# Just in case
-sleep 1
-echo timestamp > conftestfile
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t $srcdir/configure conftestfile`
- fi
- if test "$*" != "X $srcdir/configure conftestfile" \
- && test "$*" != "X conftestfile $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- { echo "configure: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
- fi
-
- test "$2" = conftestfile
- )
-then
- # Ok.
- :
-else
- { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
- program_transform_name=
-else
- # Double any \ or $. echo might interpret backslashes.
- cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
- program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
- rm -f conftestsed
-fi
-test "$program_prefix" != NONE &&
- program_transform_name="s,^,${program_prefix},; $program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:688: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftestmake <<\EOF
-all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- SET_MAKE=
-else
- echo "$ac_t""no" 1>&6
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-if test $host != $build; then
- ac_tool_prefix=${host_alias}-
-else
- ac_tool_prefix=
-fi
-
-echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:721: checking for Cygwin environment" >&5
-if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 726 "configure"
-#include "confdefs.h"
-
-int main() {
-
-#ifndef __CYGWIN__
-#define __CYGWIN__ __CYGWIN32__
-#endif
-return __CYGWIN__;
-; return 0; }
-EOF
-if { (eval echo configure:737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_cygwin=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_cygwin=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_cygwin" 1>&6
-CYGWIN=
-test "$ac_cv_cygwin" = yes && CYGWIN=yes
-echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:754: checking for mingw32 environment" >&5
-if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 759 "configure"
-#include "confdefs.h"
-
-int main() {
-return __MINGW32__;
-; return 0; }
-EOF
-if { (eval echo configure:766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_mingw32=yes
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_mingw32=no
-fi
-rm -f conftest*
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_mingw32" 1>&6
-MINGW32=
-test "$ac_cv_mingw32" = yes && MINGW32=yes
-
-# Check whether --enable-multilib or --disable-multilib was given.
-if test "${enable_multilib+set}" = set; then
- enableval="$enable_multilib"
- case "${enableval}" in
- yes) multilib=yes ;;
- no) multilib=no ;;
- *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;;
- esac
-else
- multilib=yes
-fi
-
-# Check whether --enable-target-optspace or --disable-target-optspace was given.
-if test "${enable_target_optspace+set}" = set; then
- enableval="$enable_target_optspace"
- case "${enableval}" in
- yes) target_optspace=yes ;;
- no) target_optspace=no ;;
- *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;;
- esac
-else
- target_optspace=
-fi
-
-# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given.
-if test "${enable_malloc_debugging+set}" = set; then
- enableval="$enable_malloc_debugging"
- case "${enableval}" in
- yes) malloc_debugging=yes ;;
- no) malloc_debugging=no ;;
- *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;;
- esac
-else
- malloc_debugging=
-fi
-
-# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given.
-if test "${enable_newlib_multithread+set}" = set; then
- enableval="$enable_newlib_multithread"
- case "${enableval}" in
- yes) newlib_multithread=yes ;;
- no) newlib_multithread=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_multithread=yes
-fi
-
-# Check whether --enable-newlib-iconv or --disable-newlib-iconv was given.
-if test "${enable_newlib_iconv+set}" = set; then
- enableval="$enable_newlib_iconv"
- if test "${newlib_iconv+set}" != set; then
- case "${enableval}" in
- yes) newlib_iconv=yes ;;
- no) newlib_iconv=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-iconv option" 1>&2; exit 1; } ;;
- esac
- fi
-else
- newlib_iconv=${newlib_iconv}
-fi
-
-# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given.
-if test "${enable_newlib_elix_level+set}" = set; then
- enableval="$enable_newlib_elix_level"
- case "${enableval}" in
- 0) newlib_elix_level=0 ;;
- 1) newlib_elix_level=1 ;;
- 2) newlib_elix_level=2 ;;
- 3) newlib_elix_level=3 ;;
- 4) newlib_elix_level=4 ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_elix_level=0
-fi
-
-# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given.
-if test "${enable_newlib_io_float+set}" = set; then
- enableval="$enable_newlib_io_float"
- case "${enableval}" in
- yes) newlib_io_float=yes ;;
- no) newlib_io_float=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_io_float=yes
-fi
-
-# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given.
-if test "${enable_newlib_supplied_syscalls+set}" = set; then
- enableval="$enable_newlib_supplied_syscalls"
- case "${enableval}" in
- yes) newlib_may_supply_syscalls=yes ;;
- no) newlib_may_supply_syscalls=no ;;
- *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;;
- esac
-else
- newlib_may_supply_syscalls=yes
-fi
-
-
-
-if test x${newlib_may_supply_syscalls} = xyes; then
- MAY_SUPPLY_SYSCALLS_TRUE=
- MAY_SUPPLY_SYSCALLS_FALSE='#'
-else
- MAY_SUPPLY_SYSCALLS_TRUE='#'
- MAY_SUPPLY_SYSCALLS_FALSE=
-fi
-
-
-test -z "${with_target_subdir}" && with_target_subdir=.
-
-if test "${srcdir}" = "."; then
- if test "${with_target_subdir}" != "."; then
- newlib_basedir="${srcdir}/${with_multisrctop}../../../.."
- else
- newlib_basedir="${srcdir}/${with_multisrctop}../../.."
- fi
-else
- newlib_basedir="${srcdir}/../../.."
-fi
-
-
-
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-# configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-# same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-# as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:936: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:957: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
- case $nonopt in
- NONE) target_alias=$host_alias ;;
- *) target_alias=$nonopt ;;
- esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:975: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
- case $nonopt in
- NONE) build_alias=$host_alias ;;
- *) build_alias=$nonopt ;;
- esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-
-
-PACKAGE=newlib
-
-VERSION=1.14.0
-
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
- { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
-fi
-
-
-
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1011: checking for working aclocal-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1024: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
- AUTOCONF=autoconf
- echo "$ac_t""found" 1>&6
-else
- AUTOCONF="$missing_dir/missing autoconf"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-echo "configure:1037: checking for working automake-${am__api_version}" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
- AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
-else
- AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1050: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
- AUTOHEADER=autoheader
- echo "$ac_t""found" 1>&6
-else
- AUTOHEADER="$missing_dir/missing autoheader"
- echo "$ac_t""missing" 1>&6
-fi
-
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1063: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf. Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
- MAKEINFO=makeinfo
- echo "$ac_t""found" 1>&6
-else
- MAKEINFO="$missing_dir/missing makeinfo"
- echo "$ac_t""missing" 1>&6
-fi
-
-
-
-# FIXME: We temporarily define our own version of AC_PROG_CC. This is
-# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
-# are probably using a cross compiler, which will not be able to fully
-# link an executable. This should really be fixed in autoconf
-# itself.
-
-
-
-# Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1088: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1118: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
- fi
-fi
-fi
-fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1167: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1176: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
-else
- ac_cv_prog_gcc=no
-fi
-fi
-
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
-
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
- ac_test_CFLAGS="${CFLAGS+set}"
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1191: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
- ac_cv_prog_cc_g=yes
-else
- ac_cv_prog_cc_g=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
- if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
- elif test $ac_cv_prog_cc_g = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-O2"
- fi
-else
- GCC=
- test "${CFLAGS+set}" = set || CFLAGS="-g"
-fi
-
-
-# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1222: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as"
-fi
-fi
-AS="$ac_cv_prog_AS"
-if test -n "$AS"; then
- echo "$ac_t""$AS" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1254: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
-fi
-fi
-AR="$ac_cv_prog_AR"
-if test -n "$AR"; then
- echo "$ac_t""$AR" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-
-# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1286: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-if test -z "$ac_cv_prog_RANLIB"; then
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1318: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_RANLIB="ranlib"
- break
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
- echo "$ac_t""$RANLIB" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-
-else
- RANLIB=":"
-fi
-fi
-
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1363: checking for a BSD compatible install" >&5
-if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
- if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
- fi
- fi
- done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
- fi
-fi
-echo "$ac_t""$INSTALL" 1>&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
-echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1420: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
- USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6
-
-
-if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
-# at least currently, we never actually build a program, so we never
-# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
-# fails, because we are probably configuring with a cross compiler
-# which can't create executables. So we include AC_EXEEXT to keep
-# automake happy, but we don't execute it, since we don't care about
-# the result.
-if false; then
-
-
-echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1454: checking for executable suffix" >&5
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
- ac_cv_exeext=.exe
-else
- rm -f conftest*
- echo 'int main () { return 0; }' > conftest.$ac_ext
- ac_cv_exeext=
- if { (eval echo configure:1464: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
- for file in conftest.*; do
- case $file in
- *.$ac_ext | *.c | *.o | *.obj) ;;
- *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
- esac
- done
- else
- { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
- fi
- rm -f conftest*
- test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-fi
-fi
-
-EXEEXT=""
-test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-echo "$ac_t""${ac_cv_exeext}" 1>&6
-ac_exeext=$EXEEXT
-
-fi
-
-. ${newlib_basedir}/configure.host
-
-newlib_cflags="${newlib_cflags} -fno-builtin"
-
-NEWLIB_CFLAGS=${newlib_cflags}
-
-
-LDFLAGS=${ldflags}
-
-
-
-
-if test x${newlib_elix_level} = x0; then
- ELIX_LEVEL_0_TRUE=
- ELIX_LEVEL_0_FALSE='#'
-else
- ELIX_LEVEL_0_TRUE='#'
- ELIX_LEVEL_0_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x1; then
- ELIX_LEVEL_1_TRUE=
- ELIX_LEVEL_1_FALSE='#'
-else
- ELIX_LEVEL_1_TRUE='#'
- ELIX_LEVEL_1_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x2; then
- ELIX_LEVEL_2_TRUE=
- ELIX_LEVEL_2_FALSE='#'
-else
- ELIX_LEVEL_2_TRUE='#'
- ELIX_LEVEL_2_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x3; then
- ELIX_LEVEL_3_TRUE=
- ELIX_LEVEL_3_FALSE='#'
-else
- ELIX_LEVEL_3_TRUE='#'
- ELIX_LEVEL_3_FALSE=
-fi
-
-
-if test x${newlib_elix_level} = x4; then
- ELIX_LEVEL_4_TRUE=
- ELIX_LEVEL_4_FALSE='#'
-else
- ELIX_LEVEL_4_TRUE='#'
- ELIX_LEVEL_4_FALSE=
-fi
-
-
-
-if test x${use_libtool} = xyes; then
- USE_LIBTOOL_TRUE=
- USE_LIBTOOL_FALSE='#'
-else
- USE_LIBTOOL_TRUE='#'
- USE_LIBTOOL_FALSE=
-fi
-
-# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
-# use oext, which is set in configure.host based on the target platform.
-OBJEXT=${oext}
-
-
-
-
-
-
-
-
-
-
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
-fi
-
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
-
-# Without the "./", some shells look in PATH for config.status.
-: ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
-# Generated automatically by configure.
-# Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
-# Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
-
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
-do
- case "\$ac_option" in
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
- exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
- -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
- echo "$CONFIG_STATUS generated by autoconf version 2.13"
- exit 0 ;;
- -help | --help | --hel | --he | --h)
- echo "\$ac_cs_usage"; exit 0 ;;
- *) echo "\$ac_cs_usage"; exit 1 ;;
- esac
-done
-
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
-
-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@MAY_SUPPLY_SYSCALLS_TRUE@%$MAY_SUPPLY_SYSCALLS_TRUE%g
-s%@MAY_SUPPLY_SYSCALLS_FALSE@%$MAY_SUPPLY_SYSCALLS_FALSE%g
-s%@newlib_basedir@%$newlib_basedir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@AS@%$AS%g
-s%@AR@%$AR%g
-s%@RANLIB@%$RANLIB%g
-s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
-s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-s%@MAINT@%$MAINT%g
-s%@EXEEXT@%$EXEEXT%g
-s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g
-s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g
-s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g
-s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g
-s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g
-s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g
-s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g
-s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g
-s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g
-s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g
-s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g
-s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g
-s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g
-s%@OBJEXT@%$OBJEXT%g
-s%@oext@%$oext%g
-s%@aext@%$aext%g
-s%@libm_machine_dir@%$libm_machine_dir%g
-s%@machine_dir@%$machine_dir%g
-s%@sys_dir@%$sys_dir%g
-
-CEOF
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
- else
- sed "${ac_end}q" conftest.subs > conftest.s$ac_file
- fi
- if test ! -s conftest.s$ac_file; then
- ac_more_lines=false
- rm -f conftest.s$ac_file
- else
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f conftest.s$ac_file"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
- fi
- ac_file=`expr $ac_file + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_cmds`
- fi
-done
-if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
-fi
-EOF
-
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case "$ac_file" in
- *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
- ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
- *) ac_file_in="${ac_file}.in" ;;
- esac
-
- # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
- # Remove last slash and all that follows it. Not all systems have dirname.
- ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
- if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
- # The file is in a subdirectory.
- test ! -d "$ac_dir" && mkdir "$ac_dir"
- ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
- # A "../" for each directory in $ac_dir_suffix.
- ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
- else
- ac_dir_suffix= ac_dots=
- fi
-
- case "$ac_given_srcdir" in
- .) srcdir=.
- if test -z "$ac_dots"; then top_srcdir=.
- else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
- /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
- *) # Relative path.
- srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
- top_srcdir="$ac_dots$ac_given_srcdir" ;;
- esac
-
- case "$ac_given_INSTALL" in
- [/$]*) INSTALL="$ac_given_INSTALL" ;;
- *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
- esac
-
- echo creating "$ac_file"
- rm -f "$ac_file"
- configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
- case "$ac_file" in
- *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
- *) ac_comsub= ;;
- esac
-
- ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
- sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-
-exit 0
-EOF
-chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-
diff --git a/newlib/libc/sys/rdos/configure.in b/newlib/libc/sys/rdos/configure.in
deleted file mode 100644
index 6a78d9997..000000000
--- a/newlib/libc/sys/rdos/configure.in
+++ /dev/null
@@ -1,12 +0,0 @@
-dnl This is the newlib/libc/sys/rdos configure.in file.
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.5)
-AC_INIT(close.c)
-
-dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
-AC_CONFIG_AUX_DIR(../../../..)
-
-NEWLIB_CONFIGURE(../../..)
-
-AC_OUTPUT(Makefile)
diff --git a/newlib/libc/sys/rdos/crt0.S b/newlib/libc/sys/rdos/crt0.S
deleted file mode 100644
index efc3b1633..000000000
--- a/newlib/libc/sys/rdos/crt0.S
+++ /dev/null
@@ -1,406 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# crt0.S
-# GCC startupcode for RDOS
-#
-##########################################################################*/
-
-#include "user.def"
-
- KEY_ENTRIES = 256
-
- .macro UserGate nr
- .byte 0x9A
- .long \nr
- .word 2
- .endm
-
- .data
- .align 8
-
-_key_section:
- .word 0
-
-_key_ref_arr:
- .long 0
-
-_key_dtor_arr:
- .long 0
-
- .text
- .align 4
-
-/*##########################################################################
-#
-# Name : _start
-#
-# Purpose....: GCC startup-code
-#
-##########################################################################*/
-
- .global _start
-
-_start:
- call get_impure_data_size
- movl %eax,%ecx
- UserGate allocate_app_mem_nr
-
- xorl %eax,%eax
- .byte 0x64
- movl %edx,(%eax)
- movl %edx,%edi
- rep
- stosb
- pushl %edx
-
- movl $(4 * KEY_ENTRIES),%eax
- movl %eax,%ecx
- UserGate allocate_app_mem_nr
- movl $4,%eax
- .byte 0x64
- movl %edx,(%eax)
- movl %edx,%edi
- xorl %eax,%eax
- rep
- stosb
-
- movl $(4 * KEY_ENTRIES),%eax
- movl %eax,%ecx
- UserGate allocate_app_mem_nr
- movl %edx,_key_ref_arr
- movl %edx,%edi
- xorl %eax,%eax
- rep
- stosb
-
- movl $(4 * KEY_ENTRIES),%eax
- movl %eax,%ecx
- UserGate allocate_app_mem_nr
- movl %edx,_key_dtor_arr
- movl %edx,%edi
- xorl %eax,%eax
- rep
- stosb
-
- UserGate create_user_section_nr
- movw %bx,_key_section
-
- call __init_rdos
- add $4, %esp
-
- movl $0x1000,%eax
- UserGate allocate_app_mem_nr
-
- pushl %edx
- UserGate get_cmd_line_nr
-
- xorl %ecx,%ecx
- xorb %ah,%ah
-
-arg_loop:
- movl %edi,(%edx)
- addl $4,%edx
- movb (%edi),%al
- orb %al,%al
- je arg_done
-
-arg_scan:
- movb (%edi),%al
- orb %al,%al
- je next_arg
-
- cmpb $0x22,%al
- jne arg_no_quote
-
- xorb $1,%ah
- jmp arg_scan_next
-
-arg_no_quote:
- orb %ah,%ah
- jnz arg_scan_next
-
- cmpb $0x20,%al
- je next_arg
-
- cmpb $0x8,%al
- je next_arg
-
-arg_scan_next:
- incl %edi
- jmp arg_scan
-
-next_arg:
- incl %ecx
-
-to_next_arg:
- orb %al,%al
- je arg_done
-
- xorb %al,%al
- movb %al,(%edi)
- incl %edi
- movb (%edi),%al
- cmpb $0x20,%al
- je to_next_arg
-
- cmpb $0x8,%al
- je to_next_arg
-
- jmp arg_loop
-
-arg_done:
- int $3
- pushl %ecx
- call main
- add $8, %esp
-
- pushl %eax
- call exit
-
-/*##########################################################################
-#
-# Name : _exit
-#
-# Purpose....: GCC exit-code
-#
-##########################################################################*/
-
- .global _exit
-
-_exit:
- pushl %ebp
- movl %esp,%ebp
- movl 8(%ebp),%eax
- UserGate unload_exe_nr
-
-/*##########################################################################
-#
-# Name : __getreent
-#
-# Purpose....: ?
-#
-##########################################################################*/
-
- .global __getreent
-
-__getreent:
- xorl %eax,%eax
- .byte 0x64
- movl (%eax),%eax
- ret
-
-/*##########################################################################
-#
-# Name : __rdos_thread_key_create
-#
-# Purpose....: Emulate GCC pthread_key_create
-#
-# Parameters.: dtor
-#
-# Returns....: Key index
-#
-##########################################################################*/
-
- .global __rdos_thread_key_create
-
-__rdos_thread_key_create:
- int $3
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- mov _key_section,%bx
- UserGate enter_user_section_nr
-
- movl _key_ref_arr,%ebx
- movl KEY_ENTRIES,%ecx
-
-rtkc_scan_loop:
- movl (%ebx), %eax
- orl %eax, %eax
- jz rtkc_entry_found
-
- add $4, %ebx
- loop rtkc_scan_loop
-
- movl $-1, %eax
- jmp rtkc_leave
-
-rtkc_entry_found:
- movb $255,3(%ebx)
- subl _key_ref_arr,%ebx
- addl _key_dtor_arr,%ebx
- movl 8(%ebp),%eax
- movl %eax,(%ebx)
- subl _key_dtor_arr,%ebx
- movl %ebx,%eax
-
-rtkc_leave:
- mov _key_section, %bx
- UserGate leave_user_section_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : __rdos_thread_key_delete
-#
-# Purpose....: Emulate GCC pthread_key_delete
-#
-# Parameters.: index
-#
-# Returns....: result
-#
-##########################################################################*/
-
- .global __rdos_thread_key_delete
-
-__rdos_thread_key_delete:
- int $3
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- mov _key_section,%bx
- UserGate enter_user_section_nr
-
- movl 8(%ebp),%ebx
- testb $3,%bl
- jnz rtkd_fail
-
- cmpl $(4 * KEY_ENTRIES),%ebx
- jae rtkd_fail
-
- addl _key_ref_arr,%ebx
- movb $0,3(%ebx)
- mov (%ebx),%eax
- orl %eax,%eax
- jz rtkd_ok
-
- subl _key_ref_arr,%ebx
- movl $0,(%ebx)
- jmp rtkd_ok
-
-rtkd_fail:
- movl $1,%eax
- jmp rtkd_leave
-
-rtkd_ok:
- xorl %eax,%eax
-
-rtkd_leave:
- mov _key_section, %bx
- UserGate leave_user_section_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : __rdos_thread_getspecific
-#
-# Purpose....: Emulate GCC pthread_getspecific
-#
-# Parameters.: index
-#
-# Returns....: value
-#
-##########################################################################*/
-
- .global __rdos_thread_getspecific
-
-__rdos_thread_getspecific:
- int $3
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- testb $3,%bl
- jnz rtg_fail
-
- cmpl $(4 * KEY_ENTRIES),%ebx
- jae rtg_fail
-
- movl $4,%eax
- .byte 0x64
- movl (%eax),%eax
- addl %eax,%ebx
- movl (%ebx),%eax
- jmp rtg_done
-
-rtg_fail:
- xorl %eax,%eax
-
-rtg_done:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : __rdos_thread_setspecific
-#
-# Purpose....: Emulate GCC pthread_setspecific
-#
-# Parameters.: index
-# value
-#
-##########################################################################*/
-
- .global __rdos_thread_setspecific
-
-__rdos_thread_setspecific:
- int $3
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movl 8(%ebp),%ebx
- testb $3,%bl
- jnz rts_fail
-
- cmpl $(4 * KEY_ENTRIES),%ebx
- jae rts_fail
-
- movl $4,%eax
- .byte 0x64
- movl (%eax),%eax
- addl %eax,%ebx
-
- movl 12(%ebp),%eax
- movl %eax,(%ebx)
- xorl %eax,%eax
- jmp rts_done
-
-rts_fail:
- movl $1,%eax
-
-rts_done:
- popl %ebx
- leave
- ret
diff --git a/newlib/libc/sys/rdos/execve.c b/newlib/libc/sys/rdos/execve.c
deleted file mode 100644
index ac7eeb25c..000000000
--- a/newlib/libc/sys/rdos/execve.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int execve( char *name, char **argv, char **env)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/fork.c b/newlib/libc/sys/rdos/fork.c
deleted file mode 100755
index fc335bb41..000000000
--- a/newlib/libc/sys/rdos/fork.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int fork()
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/fstat.c b/newlib/libc/sys/rdos/fstat.c
deleted file mode 100755
index c18dd78ed..000000000
--- a/newlib/libc/sys/rdos/fstat.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# fstat.c
-# fstat function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-int fstat(int fd, struct stat *st)
-{
- if (fd < 3)
- {
- st->st_mode = S_IFCHR;
- st->st_blksize = 0;
- return 0;
- }
- else
- {
- return -1;
- }
-}
diff --git a/newlib/libc/sys/rdos/getenv.c b/newlib/libc/sys/rdos/getenv.c
deleted file mode 100644
index 933ea4d76..000000000
--- a/newlib/libc/sys/rdos/getenv.c
+++ /dev/null
@@ -1,83 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# getenv.c
-# getenv function implementation
-#
-##########################################################################*/
-
-/*
-FUNCTION
-<<getenv>>---look up environment variable
-
-INDEX
- getenv
-INDEX
- environ
-
-ANSI_SYNOPSIS
- #include <stdlib.h>
- char *getenv(const char *<[name]>);
-
-TRAD_SYNOPSIS
- #include <stdlib.h>
- char *getenv(<[name]>)
- char *<[name]>;
-
-DESCRIPTION
-<<getenv>> searches the list of environment variable names and values
-(using the global pointer ``<<char **environ>>'') for a variable whose
-name matches the string at <[name]>. If a variable name matches,
-<<getenv>> returns a pointer to the associated value.
-
-RETURNS
-A pointer to the (string) value of the environment variable, or
-<<NULL>> if there is no such environment variable.
-
-PORTABILITY
-<<getenv>> is ANSI, but the rules for properly forming names of environment
-variables vary from one system to another.
-
-This function is not thread-safe, but does it need to be??
-There is an reentrant class that should be used if reentrance is required
-
-*/
-
-#include <stdlib.h>
-#include <stddef.h>
-#include <string.h>
-#include <rdos.h>
-
-static char envbuf[256];
-
-char *getenv(const char *name)
-{
- int handle;
- char *ptr = 0;
-
- handle = RdosOpenSysEnv();
- if (handle)
- {
- if (RdosFindEnvVar(handle, name, envbuf))
- ptr = envbuf;
- }
- RdosCloseEnv(handle);
- return ptr;
-}
diff --git a/newlib/libc/sys/rdos/getpid.c b/newlib/libc/sys/rdos/getpid.c
deleted file mode 100644
index d84d673e6..000000000
--- a/newlib/libc/sys/rdos/getpid.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int getpid()
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/gettod.c b/newlib/libc/sys/rdos/gettod.c
deleted file mode 100644
index b1801502d..000000000
--- a/newlib/libc/sys/rdos/gettod.c
+++ /dev/null
@@ -1,15 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <sys/time.h>
-#include <sys/times.h>
-#include <errno.h>
-
-struct timeval;
-struct timezone;
-
-int gettimeofday(struct timeval *ptimeval, struct timezone *ptimezone)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/isatty.c b/newlib/libc/sys/rdos/isatty.c
deleted file mode 100644
index 9862a87f8..000000000
--- a/newlib/libc/sys/rdos/isatty.c
+++ /dev/null
@@ -1,9 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int isatty(int file)
-{
- return 0;
-}
diff --git a/newlib/libc/sys/rdos/kill.c b/newlib/libc/sys/rdos/kill.c
deleted file mode 100644
index 4f77906de..000000000
--- a/newlib/libc/sys/rdos/kill.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int kill(int pid, int sig)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/link.c b/newlib/libc/sys/rdos/link.c
deleted file mode 100644
index 23c0b2bee..000000000
--- a/newlib/libc/sys/rdos/link.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int link(char *existing, char *new)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/lseek.c b/newlib/libc/sys/rdos/lseek.c
deleted file mode 100755
index b1cdb2178..000000000
--- a/newlib/libc/sys/rdos/lseek.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# lseek.c
-# lseek function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <unistd.h>
-#include <errno.h>
-#include <rdos.h>
-
-off_t lseek(int file, off_t pos, int whence)
-{
- off_t temp;
-
- switch (whence)
- {
- case SEEK_CUR:
- temp = RdosGetFilePos(file);
- temp += pos;
- RdosSetFilePos(file, temp);
- return temp;
-
- case SEEK_SET:
- RdosSetFilePos(file, pos);
- return pos;
-
- case SEEK_END:
- temp = RdosGetFilePos(file);
- temp += pos;
- RdosSetFilePos(file, temp);
- return temp;
-
- default:
- errno = EINVAL;
- return - 1;
- }
-}
diff --git a/newlib/libc/sys/rdos/open.c b/newlib/libc/sys/rdos/open.c
deleted file mode 100755
index e98910648..000000000
--- a/newlib/libc/sys/rdos/open.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# open.c
-# open function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <fcntl.h>
-#include <errno.h>
-#include "rdos.h"
-#include <stdarg.h>
-
-int open(const char *file, int flags, ...)
-{
- int handle;
- int pos;
-
- if (flags & O_CREAT)
- handle = RdosCreateFile(file, flags);
- else
- handle = RdosOpenFile(file, flags);
-
- if (handle >= 0)
- {
- if (flags & O_APPEND)
- {
- pos = RdosGetFileSize(handle);
- RdosSetFilePos(handle, pos);
- }
-
- if (flags & O_TRUNC)
- RdosSetFileSize(handle, 0);
-
- return handle;
- }
- else
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/rdos.S b/newlib/libc/sys/rdos/rdos.S
deleted file mode 100644
index d99be7345..000000000
--- a/newlib/libc/sys/rdos/rdos.S
+++ /dev/null
@@ -1,7528 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# rdos.S
-# GCC based interface to RDOS kernel
-#
-##########################################################################*/
-
-#include "user.def"
-
- .macro UserGate nr
- .byte 0x9A
- .long \nr
- .word 2
- .endm
-
-/*##########################################################################
-#
-# Name : RdosSwapShort
-#
-# Purpose....: Byte reverse a short int
-#
-# Returns....: Result
-#
-##########################################################################*/
-
- .global RdosSwapShort
-
-RdosSwapShort:
- pushl %ebp
- movl %esp,%ebp
- movw 8(%ebp),%ax
- xchgb %ah,%al
- leave
- ret
-
-
-/*##########################################################################
-#
-# Name : RdosSwapLong
-#
-# Purpose....: Byte reverse a long int
-#
-# Returns....: Result
-#
-##########################################################################*/
-
- .global RdosSwapLong
-
-RdosSwapLong:
- pushl %ebp
- movl %esp,%ebp
- movl 8(%ebp),%eax
- xchgb %ah,%al
- roll $16,%eax
- xchgb %ah,%al
- leave
- ret
-
-
-/*##########################################################################
-#
-# Name : LocalToNetworkLong
-#
-# Purpose....: Convert a local long to network format
-#
-# Returns....: Network format
-#
-##########################################################################*/
-
- .global LocalToNetworkLong
-
-LocalToNetworkLong:
- pushl %ebp
- movl %esp,%ebp
- movl 8(%ebp),%eax
- xchgb %ah,%al
- roll $16,%eax
- xchgb %ah,%al
- leave
- ret
-
-/*##########################################################################
-#
-# Name : NetworkToLocalLong
-#
-# Purpose....: Convert a network long to local format
-#
-# Returns....: Local format
-#
-##########################################################################*/
-
- .global NetworkToLocalLong
-
-NetworkToLocalLong:
- pushl %ebp
- movl %esp,%ebp
- movl 8(%ebp),%eax
- xchgb %ah,%al
- roll $16,%eax
- xchgb %ah,%al
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetThreadHandle
-#
-# Purpose....: Get current thread handle
-#
-# Returns....: Thread ID
-#
-##########################################################################*/
-
- .global RdosGetThreadHandle
-
-RdosGetThreadHandle:
- pushl %ebp
- movl %esp,%ebp
- UserGate get_thread_nr
- movzx %ax,%eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetThreadState
-#
-# Purpose....: Get thread state
-#
-# Parameters.: Thread #
-# State buffer
-#
-##########################################################################*/
-
- .global RdosGetThreadState
-
-RdosGetThreadState:
- pushl %ebp
- movl %esp,%ebp
- push %edi
-
- movl 8(%ebp),%eax
- movl 12(%ebp),%edx
- UserGate get_thread_state_nr
- jc rgtsFail
-
- movl $1,%eax
- jmp rgtsDone
-
-rgtsFail:
- xorl %eax,%eax
-
-rgtsDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSuspendThread
-#
-# Purpose....: Suspend thread
-#
-# Parameters.: Thread #
-#
-##########################################################################*/
-
- .global RdosSuspendThread
-
-RdosSuspendThread:
- pushl %ebp
- movl %esp,%ebp
-
- movl 8(%ebp),%eax
- UserGate suspend_thread_nr
- jc rsfFail
-
- movl $1,%eax
- jmp rsfDone
-
-rsfFail:
- xorl %eax,%eax
-
-rsfDone:
- leave
- ret
-
-
-/*##########################################################################
-#
-# Name : RdosExec
-#
-# Purpose....: Execute a program
-#
-# Parameters.: Program
-# Commandline
-#
-##########################################################################*/
-
- .global RdosExec
-
-RdosExec:
- pushl %ebp
- movl %esp,%ebp
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%esi
- movl 12(%ebp),%edi
-
- UserGate load_exe_nr
- UserGate get_exit_code_nr
-
- popl %edi
- popl %esi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSpawn
-#
-# Purpose....: Create new process and run a program
-#
-# Parameters.: Program
-# Commandline
-# StartDir
-#
-##########################################################################*/
-
- .global RdosSpawn
-
-RdosSpawn:
- pushl %ebp
- movl %esp,%ebp
- pushl %fs
- pushl %ebx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movw %ds,%dx
- movw %dx,%fs
- xorl %edx,%edx
- movl 8(%ebp),%esi
- movl 12(%ebp),%edi
- movl 16(%ebp),%ebx
- UserGate spawn_exe_nr
- jc rsFail
-
- movzx %dx,%eax
- jmp rsDone
-
-rsFail:
- xorl %eax,%eax
-
-rsDone:
- popl %edi
- popl %esi
- popl %edx
- popl %ebx
- popw %fs
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCpuReset
-#
-# Purpose....: Cpu reset
-#
-##########################################################################*/
-
- .global RdosCpuReset
-
-RdosCpuReset:
- pushl %ebp
- movl %esp,%ebp
- UserGate cpu_reset_nr
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetVersion
-#
-# Purpose....: Get RDOS version
-#
-# Parameters.: &major
-# &minor
-# &release
-#
-##########################################################################*/
-
- .global RdosGetVersion
-
-RdosGetVersion:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ecx
- pushl %edx
- pushl %edi
-
- UserGate get_version_nr
-
- movzx %dx,%edx
- movl 8(%ebp),%edi
- movl %edx,(%edi)
-
- movzx %ax,%eax
- movl 12(%ebp),%edi
- movl %eax,(%edi)
-
- movzx %cx,%eax
- movl 16(%ebp),%edi
- movl %eax,(%edi)
-
- popl %edi
- popl %edx
- popl %ecx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAllocateMem
-#
-# Purpose....: Allocate memory
-#
-# Parameters.: Bytes to allocate
-#
-# Returns....: Memory pointer
-#
-##########################################################################*/
-
- .global RdosAllocateMem
-
-RdosAllocateMem:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movl 8(%ebp),%eax
- UserGate allocate_app_mem_nr
- movl %edx,%eax
-
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFreeMem
-#
-# Purpose....: Free memory
-#
-# Parameters.: Memory pointer
-#
-##########################################################################*/
-
- .global RdosFreeMem
-
-RdosFreeMem:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movl 8(%ebp),%edx
- UserGate free_app_mem_nr
-
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAppDebug
-#
-# Purpose....: App debug
-#
-##########################################################################*/
-
- .global RdosAppDebug
-
-RdosAppDebug:
- pushl %ebp
- movl %esp,%ebp
- UserGate app_debug_nr
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWaitMilli
-#
-# Purpose....: Wait a number of milliseconds
-#
-# Parameters.: Milliseconds to wait
-#
-##########################################################################*/
-
- .global RdosWaitMilli
-
-RdosWaitMilli:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
-
- movl 8(%ebp),%eax
- UserGate wait_milli_nr
-
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateSection
-#
-# Purpose....: Create section
-#
-# Returns....: Section handle
-#
-##########################################################################*/
-
- .global RdosCreateSection
-
-RdosCreateSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate create_user_section_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDeleteSection
-#
-# Purpose....: Delete section
-#
-# Parameters.: Section handle
-#
-##########################################################################*/
-
- .global RdosDeleteSection
-
-RdosDeleteSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate delete_user_section_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosEnterSection
-#
-# Purpose....: Enter section
-#
-# Parameters.: Section handle
-#
-##########################################################################*/
-
- .global RdosEnterSection
-
-RdosEnterSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate enter_user_section_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosLeaveSection
-#
-# Purpose....: Leave section
-#
-# Parameters.: Section handle
-#
-##########################################################################*/
-
- .global RdosLeaveSection
-
-RdosLeaveSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate leave_user_section_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateWait
-#
-# Purpose....: Create wait object
-#
-# Returns....: Wait handle
-#
-##########################################################################*/
-
- .global RdosCreateWait
-
-RdosCreateWait:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate create_wait_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseWait
-#
-# Purpose....: Close wait
-#
-# Parameters.: Wait handle
-#
-##########################################################################*/
-
- .global RdosCloseWait
-
-RdosCloseWait:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_wait_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCheckWait
-#
-# Purpose....: Check wait state
-#
-# Parameters.: Wait handle
-#
-# Returns....: Signalled ID or 0
-#
-##########################################################################*/
-
- .global RdosCheckWait
-
-RdosCheckWait:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- UserGate is_wait_idle_nr
- movl %ecx,%eax
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWaitForever
-#
-# Purpose....: Wait forever
-#
-# Parameters.: Wait handle
-#
-# Returns....: Signalled ID or 0
-#
-##########################################################################*/
-
- .global RdosWaitForever
-
-RdosWaitForever:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- UserGate wait_no_timeout_nr
- jc rwfFail
-
- movl %ecx,%eax
- jmp rwfDone
-
-rwfFail:
- xorl %eax,%eax
-
-rwfDone:
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWaitTimeout
-#
-# Purpose....: Wait with timeout
-#
-# Parameters.: Wait handle
-# Timeout in ms
-#
-# Returns....: Signalled ID or 0
-#
-##########################################################################*/
-
- .global RdosWaitTimeout
-
-RdosWaitTimeout:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movl 12(%ebp),%eax
- movl $1193,%edx
- mull %edx
- pushl %edx
- pushl %eax
- UserGate get_system_time_nr
- popl %ebx
- addl %ebx,%eax
- popl %ebx
- adcl %ebx,%edx
- movw 8(%ebp),%bx
- UserGate wait_timeout_nr
- jc rwtFail
-
- movl %ecx,%eax
- jmp rwtDone
-
-rwtFail:
- xorl %eax,%eax
-
-rwtDone:
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosStopWait
-#
-# Purpose....: Stop wait
-#
-# Parameters.: Wait handle
-#
-##########################################################################*/
-
- .global RdosStopWait
-
-RdosStopWait:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate stop_wait_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosRemoveWait
-#
-# Purpose....: Remove wait object from wait handle
-#
-# Parameters.: Wait handle
-# ID
-#
-##########################################################################*/
-
- .global RdosRemoveWait
-
-RdosRemoveWait:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%ecx
- UserGate remove_wait_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateSignal
-#
-# Purpose....: Create signal object
-#
-# Returns....: Signal handle
-#
-##########################################################################*/
-
- .global RdosCreateSignal
-
-RdosCreateSignal:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate create_signal_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosResetSignal
-#
-# Purpose....: Reset signal
-#
-# Parameters.: Signal handle
-#
-##########################################################################*/
-
- .global RdosResetSignal
-
-RdosResetSignal:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate reset_signal_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosIsSignalled
-#
-# Purpose....: Check if signalled
-#
-# Parameters.: Signal handle
-#
-# Returns....: TRUE if signalled
-#
-##########################################################################*/
-
- .global RdosIsSignalled
-
-RdosIsSignalled:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate is_signalled_nr
- jc risdFree
-
- movl $1,%eax
- jmp risdDone
-
-risdFree:
- xorl %eax,%eax
-
-risdDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetSignal
-#
-# Purpose....: Set signal
-#
-# Parameters.: Signal handle
-#
-##########################################################################*/
-
- .global RdosSetSignal
-
-RdosSetSignal:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate set_signal_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFreeSignal
-#
-# Purpose....: Free signal handle
-#
-# Parameters.: Signal handle
-#
-##########################################################################*/
-
- .global RdosFreeSignal
-
-RdosFreeSignal:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate free_signal_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForSignal
-#
-# Purpose....: Add signal object to wait handle
-#
-# Parameters.: Wait handle
-# Signal handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForSignal
-
-RdosAddWaitForSignal:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate add_wait_for_signal_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForKeyboard
-#
-# Purpose....: Add keyboard to wait handle
-#
-# Parameters.: Wait handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForKeyboard
-
-RdosAddWaitForKeyboard:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%ecx
- UserGate add_wait_for_keyboard_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForMouse
-#
-# Purpose....: Add mouse to wait handle
-#
-# Parameters.: Wait handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForMouse
-
-RdosAddWaitForMouse:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%ecx
- UserGate add_wait_for_mouse_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForCom
-#
-# Purpose....: Add com object to wait handle
-#
-# Parameters.: Wait handle
-# Com handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForCom
-
-RdosAddWaitForCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate add_wait_for_com_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForAdc
-#
-# Purpose....: Add ADC object to wait handle
-#
-# Parameters.: Wait handle
-# Adc handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForAdc
-
-RdosAddWaitForAdc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate add_wait_for_adc_nr
-
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetTextMode
-#
-# Purpose....: Set text mode
-#
-##########################################################################*/
-
- .global RdosSetTextMode
-
-RdosSetTextMode:
- pushl %ebp
- movl %esp,%ebp
-
- movw $3,%ax
- UserGate set_video_mode_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetVideoMode
-#
-# Purpose....: Set video mode
-#
-# Parameters.: &xres
-# &yres
-# &linesize
-# &LFB
-#
-# Returns....: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosSetVideoMode
-
-RdosSetVideoMode:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%edi
- movw (%edi),%ax
-
- movl 12(%ebp),%edi
- movw (%edi),%cx
-
- movl 16(%ebp),%edi
- movw (%edi),%dx
-
- UserGate get_video_mode_nr
- jc set_video_fail
-
- UserGate set_video_mode_nr
- jc set_video_fail
-
- pushl %edi
- movl 8(%ebp),%edi
- movzx %ax,%eax
- movl %eax,(%edi)
-
- movl 12(%ebp),%edi
- movzx %cx,%ecx
- movl %ecx,(%edi)
-
- movl 16(%ebp),%edi
- movzx %dx,%edx
- movl %edx,(%edi)
-
- movl 20(%ebp),%edi
- movzx %si,%esi
- movl %esi,(%edi)
- popl %edi
-
- movl 24(%ebp),%eax
- movl %edi,(%eax)
-
- movzx %bx,%eax
- jmp set_video_done
-
-set_video_fail:
- xorl %eax,%eax
- movl 8(%ebp),%edi
- movl %eax,(%edi)
- movl 12(%ebp),%edi
- movl %eax,(%edi)
- movl 16(%ebp),%edi
- movl %eax,(%edi)
- movl 20(%ebp),%edi
- movl %eax,(%edi)
- movl 24(%ebp),%edi
- movl %eax,(%edi)
-
-set_video_done:
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetClipRect
-#
-# Purpose....: Set clip rectangle
-#
-# Parameters.: Bitmap handle
-# xmin, xmax, ymin, ymax
-#
-##########################################################################*/
-
- .global RdosSetClipRect
-
-RdosSetClipRect:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movw 20(%ebp),%si
- movw 24(%ebp),%di
- UserGate set_clip_rect_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosClearClipRect
-#
-# Purpose....: Clear clip rectangle
-#
-# Parameters.: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosClearClipRect
-
-RdosClearClipRect:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate clear_clip_rect_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetDrawColor
-#
-# Purpose....: Set draw color
-#
-# Parameters.: Bitmap handle
-# Color
-#
-##########################################################################*/
-
- .global RdosSetDrawColor
-
-RdosSetDrawColor:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%eax
- UserGate set_drawcolor_nr
-
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetLGOP
-#
-# Purpose....: Set draw color
-#
-# Parameters.: Bitmap handle
-# LGOP
-#
-##########################################################################*/
-
- .global RdosSetLGOP
-
-RdosSetLGOP:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- UserGate set_lgop_nr
-
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetHollowStyle
-#
-# Purpose....: Set hollow fill style
-#
-# Parameters.: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosSetHollowStyle
-
-RdosSetHollowStyle:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate set_hollow_style_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFilledStyle
-#
-# Purpose....: Set filled fill style
-#
-# Parameters.: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosSetFilledStyle
-
-RdosSetFilledStyle:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate set_filled_style_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenFont
-#
-# Purpose....: Open a font
-#
-# Parameters.: height
-#
-# Returns....: Font handle
-#
-##########################################################################*/
-
- .global RdosOpenFont
-
-RdosOpenFont:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%ax
- UserGate open_font_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseFont
-#
-# Purpose....: Close font handle
-#
-# Parameters.: Font handle
-#
-##########################################################################*/
-
- .global RdosCloseFont
-
-RdosCloseFont:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_font_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetStringMetrics
-#
-# Purpose....: Get string metrics for text using font
-#
-# Parameters.: Font handle
-# String
-# &width
-# &height
-#
-##########################################################################*/
-
- .global RdosGetStringMetrics
-
-RdosGetStringMetrics:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- UserGate get_string_metrics_nr
-
- movl 16(%ebp),%edi
- movzx %cx,%ecx
- movl %ecx,(%edi)
-
- movl 20(%ebp),%edi
- movzx %dx,%edx
- movl %edx,(%edi)
-
- popl %edi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFont
-#
-# Purpose....: Set font
-#
-# Parameters.: Bitmap handle
-# Font handle
-#
-##########################################################################*/
-
- .global RdosSetFont
-
-RdosSetFont:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- UserGate set_font_nr
-
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetPixel
-#
-# Purpose....: Get pixel
-#
-# Parameters.: Bitmap handle
-# x, y
-#
-##########################################################################*/
-
- .global RdosGetPixel
-
-RdosGetPixel:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- UserGate get_pixel_nr
-
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetPixel
-#
-# Purpose....: Set pixel
-#
-# Parameters.: Bitmap handle
-# x, y
-#
-##########################################################################*/
-
- .global RdosSetPixel
-
-RdosSetPixel:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- UserGate set_pixel_nr
-
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosBlit
-#
-# Purpose....: Blit
-#
-# Parameters.: SrcHandle
-# DestHandle
-# width, height
-# SrcX, SrcY
-# DestX, DestY
-#
-##########################################################################*/
-
- .global RdosBlit
-
-RdosBlit:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-;
- movw 8(%ebp),%ax
- movw 12(%ebp),%bx
- movw 16(%ebp),%cx
- movw 20(%ebp),%dx
- movw 28(%ebp),%si
- shll $16,%esi
- movw 24(%ebp),%si
- movw 36(%ebp),%di
- shll $16,%edi
- movw 32(%ebp),%di
- UserGate blit_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDrawMask
-#
-# Purpose....: Draw mask
-#
-# Parameters.: Bitmap handle
-# mask
-# RowSize
-# width, height
-# SrcX, SrcY
-# DestX, DestY
-#
-##########################################################################*/
-
- .global RdosDrawMask
-
-RdosDrawMask:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-;
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- movw 16(%ebp),%ax
- movw 24(%ebp),%si
- shll $16,%esi
- movw 20(%ebp),%si
- movw 32(%ebp),%cx
- shll $16,%ecx
- movw 28(%ebp),%cx
- movw 40(%ebp),%dx
- shll $16,%edx
- movw 36(%ebp),%dx
- UserGate draw_mask_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDrawLine
-#
-# Purpose....: Draw a line
-#
-# Parameters.: Bitmap handle
-# x1, y1
-# x2, y2
-#
-##########################################################################*/
-
- .global RdosDrawLine
-
-RdosDrawLine:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-;
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movw 20(%ebp),%si
- movw 24(%ebp),%di
- UserGate draw_line_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDrawString
-#
-# Purpose....: Draw a string
-#
-# Parameters.: Bitmap handle
-# x, y
-# string
-#
-##########################################################################*/
-
- .global RdosDrawString
-
-RdosDrawString:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %edi
-;
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movl 20(%ebp),%edi
- UserGate draw_string_nr
-
- popl %edi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDrawRect
-#
-# Purpose....: Draw a rect
-#
-# Parameters.: Bitmap handle
-# x, y
-# width, height
-#
-##########################################################################*/
-
- .global RdosDrawRect
-
-RdosDrawRect:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movw 20(%ebp),%si
- movw 24(%ebp),%di
- UserGate draw_rect_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDrawEllipse
-#
-# Purpose....: Draw an ellipse
-#
-# Parameters.: Bitmap handle
-# x, y
-# width, height
-#
-##########################################################################*/
-
- .global RdosDrawEllipse
-
-RdosDrawEllipse:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movw 20(%ebp),%si
- movw 24(%ebp),%di
- UserGate draw_ellipse_nr
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateBitmap
-#
-# Purpose....: Create a bitmap
-#
-# Parameters.: BitsPerPixel
-# width, height
-#
-# Returns....: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosCreateBitmap
-
-RdosCreateBitmap:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%ax
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- UserGate create_bitmap_nr
- movzx %bx,%eax
-;
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDuplicateBitmapHandle
-#
-# Purpose....: Duplicate bitmap handle for use in another thread / object
-#
-# Parameters.: Bitmap handle
-#
-# Returns....: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosDuplicateBitmapHandle
-
-RdosDuplicateBitmapHandle:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate dup_bitmap_handle_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseBitmap
-#
-# Purpose....: Close bitmap handle
-#
-# Parameters.: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosCloseBitmap
-
-RdosCloseBitmap:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_bitmap_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateStringBitmap
-#
-# Purpose....: Create bitmap from string & font
-#
-# Parameters.: Font
-# string
-#
-# Returns....: Bitmap handle
-#
-##########################################################################*/
-
- .global RdosCreateStringBitmap
-
-RdosCreateStringBitmap:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- UserGate create_string_bitmap_nr
- movzx %bx,%eax
-;
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetBitmapInfo
-#
-# Purpose....: Get info about bitmap
-#
-# Parameters.: Bitmap handle
-# &BitsPerPixel
-# &width, &height
-# &linesize
-# &LFB
-#
-##########################################################################*/
-
- .global RdosGetBitmapInfo
-
-RdosGetBitmapInfo:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movw 8(%ebp),%bx
- UserGate get_bitmap_info_nr
- jc gbiFail
-
- pushl %edi
- movl 12(%ebp),%edi
- movzx %al,%eax
- movl %eax,(%edi)
-
- movl 16(%ebp),%edi
- movzx %cx,%ecx
- movl %ecx,(%edi)
-
- movl 20(%ebp),%edi
- movzx %dx,%edx
- movl %edx,(%edi)
-
- movl 24(%ebp),%edi
- movzx %si,%esi
- movl %esi,(%edi)
- popl %edi
-
- movl 28(%ebp),%eax
- movl %edi,(%eax)
- jmp gbiDone
-
-gbiFail:
- xorl %eax,%eax
- movl 12(%ebp),%edi
- movl %eax,(%edi)
-
- movl 16(%ebp),%edi
- movl %eax,(%edi)
-
- movl 20(%ebp),%edi
- movl %eax,(%edi)
-
- movl 24(%ebp),%edi
- movl %eax,(%edi)
-
- movl 28(%ebp),%edi
- movl %eax,(%edi)
-
-gbiDone:
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateSprite
-#
-# Purpose....: Create a sprite
-#
-# Parameters.: dest
-# bitmap
-# mask
-# LGOP
-#
-# Returns....: Sprite handle
-#
-##########################################################################*/
-
- .global RdosCreateSprite
-
-RdosCreateSprite:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- movw 20(%ebp),%ax
- UserGate create_sprite_nr
- movzx %bx,%eax
-
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseSprite
-#
-# Purpose....: Close sprite handle
-#
-# Parameters.: Sprite handle
-#
-##########################################################################*/
-
- .global RdosCloseSprite
-
-RdosCloseSprite:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_sprite_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosShowSprite
-#
-# Purpose....: Show sprite
-#
-# Parameters.: Sprite handle
-#
-##########################################################################*/
-
- .global RdosShowSprite
-
-RdosShowSprite:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate show_sprite_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosHideSprite
-#
-# Purpose....: Hide sprite
-#
-# Parameters.: Sprite handle
-#
-##########################################################################*/
-
- .global RdosHideSprite
-
-RdosHideSprite:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate hide_sprite_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosMoveSprite
-#
-# Purpose....: Move sprite
-#
-# Parameters.: Sprite handle
-# x, y
-#
-##########################################################################*/
-
- .global RdosMoveSprite
-
-RdosMoveSprite:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%cx
- movw 16(%ebp),%dx
- UserGate move_sprite_nr
-
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetForeColor
-#
-# Purpose....: Set text-mode fore color
-#
-# Parameters.: palette index
-#
-##########################################################################*/
-
- .global RdosSetForeColor
-
-RdosSetForeColor:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
-
- movb 8(%ebp),%al
- UserGate set_forecolor_nr
-
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetBackColor
-#
-# Purpose....: Set text-mode back color
-#
-# Parameters.: palette index
-#
-##########################################################################*/
-
- .global RdosSetBackColor
-
-RdosSetBackColor:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
-
- movb 8(%ebp),%al
- UserGate set_backcolor_nr
-
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetSysTime
-#
-# Purpose....: Get system time
-#
-# Parameters.: &year, &month, &day
-# &hour, &min, &sec, &ms
-#
-##########################################################################*/
-
- .global RdosGetSysTime
-
-RdosGetSysTime:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- UserGate get_system_time_nr
- pushl %eax
- UserGate binary_to_time_nr
- pushl %edx
-
- movl 8(%ebp),%esi
- movzx %dx,%edx
- movl %edx,(%esi)
-
- movl 12(%ebp),%esi
- movzx %ch,%edx
- movl %edx,(%esi)
-
- movl 16(%ebp),%esi
- movzx %cl,%edx
- movl %edx,(%esi)
-
- movl 20(%ebp),%esi
- movzx %bh,%edx
- movl %edx,(%esi)
-
- movl 24(%ebp),%esi
- movzx %bl,%edx
- movl %edx,(%esi)
-
- movl 28(%ebp),%esi
- movzx %ah,%edx
- movl %edx,(%esi)
-
- popl %edx
- UserGate time_to_binary_nr
- movl %eax,%ebx
- popl %eax
- subl %ebx,%eax
- xorl %edx,%edx
- movl $1192,%ebx
- divl %ebx
-
- movl 32(%ebp),%esi
- movzx %ax,%eax
- movl %eax,(%esi)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetTime
-#
-# Purpose....: Get time
-#
-# Parameters.: &year, &month, &day
-# &hour, &min, &sec, &ms
-#
-##########################################################################*/
-
- .global RdosGetTime
-
-RdosGetTime:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- UserGate get_time_nr
- pushl %eax
- UserGate binary_to_time_nr
- pushl %edx
-
- movl 8(%ebp),%esi
- movzx %dx,%edx
- movl %edx,(%esi)
-
- movl 12(%ebp),%esi
- movzx %ch,%edx
- movl %edx,(%esi)
-
- movl 16(%ebp),%esi
- movzx %cl,%edx
- movl %edx,(%esi)
-
- movl 20(%ebp),%esi
- movzx %bh,%edx
- movl %edx,(%esi)
-
- movl 24(%ebp),%esi
- movzx %bl,%edx
- movl %edx,(%esi)
-
- movl 28(%ebp),%esi
- movzx %ah,%edx
- movl %edx,(%esi)
-
- popl %edx
- UserGate time_to_binary_nr
- movl %eax,%ebx
- popl %eax
- subl %ebx,%eax
- xorl %edx,%edx
- movl $1192,%ebx
- divl %ebx
-
- movl 32(%ebp),%esi
- movzx %ax,%eax
- movl %eax,(%esi)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetTime
-#
-# Purpose....: Set time
-#
-# Parameters.: year, month, day
-# hour, min, sec, ms
-#
-##########################################################################*/
-
- .global RdosSetTime
-
-RdosSetTime:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movw 8(%ebp),%dx
- movb 12(%ebp),%ch
- movb 16(%ebp),%cl
- movb 20(%ebp),%bh
- movb 24(%ebp),%bl
- movb 28(%ebp),%ah
- UserGate time_to_binary_nr
-
- movl %edx,%edi
- movl %eax,%esi
-
- movl 32(%ebp),%eax
- movl $1192,%edx
- mull %edx
- addl %eax,%esi
- adcl $0,%edi
-
- UserGate get_system_time_nr
- subl %eax,%esi
- sbbl %edx,%edi
- movl %esi,%eax
- movl %edi,%edx
- UserGate update_time_nr
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosTicsToRecord
-#
-# Purpose....: Convert tics to record format
-#
-# Parameters.: MSB, LSB
-# &year, &month, &day
-# &hour, &min, &sec, &ms
-#
-##########################################################################*/
-
- .global RdosTicsToRecord
-
-RdosTicsToRecord:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movl 8(%ebp),%edx
- movl 12(%ebp),%eax
- addl $596,%eax
- adcl $0,%edx
- UserGate binary_to_time_nr
- pushl %edx
-
- movl 16(%ebp),%esi
- movzx %dx,%edx
- movl %edx,(%esi)
-
- movl 20(%ebp),%esi
- movzx %ch,%edx
- movl %edx,(%esi)
-
- movl 24(%ebp),%esi
- movzx %cl,%edx
- movl %edx,(%esi)
-
- movl 28(%ebp),%esi
- movzx %bh,%edx
- movl %edx,(%esi)
-
- movl 32(%ebp),%esi
- movzx %bl,%edx
- movl %edx,(%esi)
-
- movl 36(%ebp),%esi
- movzx %ah,%edx
- movl %edx,(%esi)
-
- popl %edx
- UserGate time_to_binary_nr
- movl %eax,%ebx
- movl 12(%ebp),%eax
- subl %edx,%eax
- xorl %edx,%edx
- movl $1192,%ebx
- divl %ebx
-
- movl 40(%ebp),%esi
- cmpw %ax,1000
- jne rttrSaveMs
-
- decw %ax
-
-rttrSaveMs:
- movzx %ax,%eax
- movl %eax,(%esi)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosRecordToTics
-#
-# Purpose....: Convert from record format to tics
-#
-# Parameters.: &MSB, &LSB
-# year, month, day
-# hour, min, sec, ms
-#
-##########################################################################*/
-
- .global RdosRecordToTics
-
-RdosRecordToTics:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movl 40(%ebp),%eax
- movl $1192,%edx
- mull %edx
- pushl %eax
- movw 16(%ebp),%dx
- movb 20(%ebp),%ch
- movb 24(%ebp),%cl
- movb 28(%ebp),%bh
- movb 32(%ebp),%bl
- movb 36(%ebp),%ah
- UserGate time_to_binary_nr
- popl %ebx
- addl %ebx,%eax
- adcl $0,%edx
-
- movl 8(%ebp),%esi
- movl %edx,(%esi)
-
- movl 12(%ebp),%esi
- movl %eax,(%esi)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDecodeMsbTics
-#
-# Purpose....: Decode MSB tics
-#
-# Parameters.: MSB
-# &day, &hour
-#
-##########################################################################*/
-
- .global RdosDecodeMsbTics
-
-RdosDecodeMsbTics:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movl 8(%ebp),%eax
- xorl %edx,%edx
- movl $24,%ecx
- divl %ecx
-
- movl 12(%ebp),%ebx
- movl %eax,(%ebx)
-
- movl 16(%ebp),%ebx
- movl %edx,(%ebx)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDecodeLsbTics
-#
-# Purpose....: Decode LSB tics
-#
-# Parameters.: LSB
-# &min, &sec, &ms, &us
-#
-##########################################################################*/
-
- .global RdosDecodeLsbTics
-
-RdosDecodeLsbTics:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movl 8(%ebp),%eax
- movl $60,%edx
- mull %edx
- movl 12(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl $60,%edx
- mull %edx
- movl 16(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl $1000,%edx
- mull %edx
- movl 20(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl $1000,%edx
- mull %edx
- movl 24(%ebp),%ebx
- movl %edx,(%ebx)
-
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDayOfWeek
-#
-# Purpose....: Get day of week
-#
-# Parameters.: year, month, day
-#
-# Returns....: day of week
-#
-##########################################################################*/
-
- .global RdosDayOfWeek
-
-RdosDayOfWeek:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movl 8(%ebp),%edx
- movb 12(%ebp),%ch
- movb 16(%ebp),%cl
- xorw %bx,%bx
- xorb %ah,%ah
- UserGate adjust_time_nr
- pushw %dx
- movl $365,%eax
- imulw %dx
- pushw %dx
- pushw %ax
- popl %ebx
- popw %dx
- UserGate passed_days_nr
- decw %dx
- shrw $2,%dx
- incw %dx
- addw %dx,%ax
- addl %ebx,%eax
- xorl %edx,%edx
- addl $5,%eax
- movl $7,%ebx
- divl %ebx
- movzx %dl,%eax
-
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetTics
-#
-# Purpose....: Get system tics
-#
-# Parameters.: &MSB, &LSB
-#
-##########################################################################*/
-
- .global RdosGetTics
-
-RdosGetTics:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
- pushl %esi
-
- UserGate get_time_nr
- movl 8(%ebp),%esi
- movl %edx,(%esi)
- movl 12(%ebp),%esi
- movl %eax,(%esi)
-
- popl %esi
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddTics
-#
-# Purpose....: Add tics to binary time
-#
-# Parameters.: &MSB, &LSB
-# tics
-#
-##########################################################################*/
-
- .global RdosAddTics
-
-RdosAddTics:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl 12(%ebp),%ebx
- addl %eax,(%ebx)
- movl 8(%ebp),%ebx
- adcl $0,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddMilli
-#
-# Purpose....: Add milliseconds to binary time
-#
-# Parameters.: &MSB, &LSB
-# milli
-#
-##########################################################################*/
-
- .global RdosAddMilli
-
-RdosAddMilli:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl $1193,%edx
- mull %edx
- movl 12(%ebp),%ebx
- addl %eax,(%ebx)
- movl 8(%ebp),%ebx
- adcl %edx,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddSec
-#
-# Purpose....: Add milliseconds to binary time
-#
-# Parameters.: &MSB, &LSB
-# sec
-#
-##########################################################################*/
-
- .global RdosAddSec
-
-RdosAddSec:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl $1193000,%edx
- mull %edx
- movl 12(%ebp),%ebx
- addl %eax,(%ebx)
- movl 8(%ebp),%ebx
- adcl %edx,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddMin
-#
-# Purpose....: Add minutes to binary time
-#
-# Parameters.: &MSB, &LSB
-# min
-#
-##########################################################################*/
-
- .global RdosAddMin
-
-RdosAddMin:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl $71582760,%edx
- mull %edx
- movl 12(%ebp),%ebx
- addl %eax,(%ebx)
- movl 8(%ebp),%ebx
- adcl %edx,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddHour
-#
-# Purpose....: Add hour to binary time
-#
-# Parameters.: &MSB, &LSB
-# hour
-#
-##########################################################################*/
-
- .global RdosAddHour
-
-RdosAddHour:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl 8(%ebp),%ebx
- adc %eax,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddDay
-#
-# Purpose....: Add days to binary time
-#
-# Parameters.: &MSB, &LSB
-# days
-#
-##########################################################################*/
-
- .global RdosAddDay
-
-RdosAddDay:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 16(%ebp),%eax
- movl $24,%edx
- mull %edx
- movl 8(%ebp),%ebx
- adc %eax,(%ebx)
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSyncTime
-#
-# Purpose....: Synchronize time with NTP
-#
-# Parameters.: IP
-#
-##########################################################################*/
-
- .global RdosSyncTime
-
-RdosSyncTime:
- pushl %ebp
- movl %esp,%ebp
- pushal
-
- movl 8(%ebp),%edx
- UserGate sync_time_nr
- jc RdosSyncTimeFail
-
- movl $1,%eax
- jmp RdosSyncTimeDone
-
-RdosSyncTimeFail:
- xorl %eax,%eax
-
-RdosSyncTimeDone:
- popal
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenCom
-#
-# Purpose....: Open com-port
-#
-# Parameters.: ID
-# baudrate
-# parity
-# data bits
-# stop bits
-# SendBufferSize
-# RecBufferSize
-#
-# Returns...: Com handle
-#
-##########################################################################*/
-
- .global RdosOpenCom
-
-RdosOpenCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movb 8(%ebp),%al
- movb 20(%ebp),%ah
- movb 24(%ebp),%bl
- movb 16(%ebp),%bh
- movl 12(%ebp),%ecx
- movw 28(%ebp),%si
- movw 32(%ebp),%di
- UserGate open_com_nr
- movzx %bx,%eax
-
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseCom
-#
-# Purpose....: Close com-port
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosCloseCom
-
-RdosCloseCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_com_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFlushCom
-#
-# Purpose....: Flush com-port
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosFlushCom
-
-RdosFlushCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate flush_com_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadCom
-#
-# Purpose....: Read com-port
-#
-# Parameters.: Com handle
-#
-# Returns....: Character
-#
-##########################################################################*/
-
- .global RdosReadCom
-
-RdosReadCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate read_com_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteCom
-#
-# Purpose....: Write com-port
-#
-# Parameters.: Com handle
-# char
-#
-# Returns....: 0 for success
-#
-##########################################################################*/
-
- .global RdosWriteCom
-
-RdosWriteCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- movb 12(%ebp),%al
- UserGate write_com_nr
- movzx %al,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWaitForSendCompletedCom
-#
-# Purpose....: Wait until send buffer is empty
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosWaitForSendCompletedCom
-
-RdosWaitForSendCompletedCom:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate wait_for_send_completed_com_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosEnableCts
-#
-# Purpose....: Enable CTS signal
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosEnableCts
-
-RdosEnableCts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate enable_cts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDisableCts
-#
-# Purpose....: Disable CTS signal
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosDisableCts
-
-RdosDisableCts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate disable_cts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosEnableAutoRts
-#
-# Purpose....: Enable auto RTS signal generation for RS485
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosEnableAutoRts
-
-RdosEnableAutoRts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate enable_auto_rts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDisableAutoRts
-#
-# Purpose....: Disable auto RTS signal generation for RS485
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosDisableAutoRts
-
-RdosDisableAutoRts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate disable_auto_rts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetDtr
-#
-# Purpose....: Set DTR active
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosSetDtr
-
-RdosSetDtr:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate set_dtr_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosResetDtr
-#
-# Purpose....: Set DTR inactive
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosResetDtr
-
-RdosResetDtr:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate reset_dtr_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetRts
-#
-# Purpose....: Set RTS active
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosSetRts
-
-RdosSetRts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate set_rts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosResetRts
-#
-# Purpose....: Set RTS inactive
-#
-# Parameters.: Com handle
-#
-##########################################################################*/
-
- .global RdosResetRts
-
-RdosResetRts:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate reset_rts_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetReceiveBufferSpace
-#
-# Purpose....: Get receive buffer free space
-#
-# Parameters.: Com handle
-#
-# Returns....: Free bytes
-#
-##########################################################################*/
-
- .global RdosGetReceiveBufferSpace
-
-RdosGetReceiveBufferSpace:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_com_receive_space_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetSendBufferSpace
-#
-# Purpose....: Get send buffer free space
-#
-# Parameters.: Com handle
-#
-# Returns....: Free bytes
-#
-##########################################################################*/
-
- .global RdosGetSendBufferSpace
-
-RdosGetSendBufferSpace:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_com_send_space_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenFile
-#
-# Purpose....: Open file
-#
-# Parameters.: Filename
-# Access
-#
-# Returns...: File handle
-#
-##########################################################################*/
-
- .global RdosOpenFile
-
-RdosOpenFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movb 12(%ebp),%cl
- UserGate open_file_nr
- jc OpenFileFailed
-
- movzx %bx,%eax
- jmp OpenFileDone
-
-OpenFileFailed:
- xorl %eax,%eax
-
-OpenFileDone:
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateFile
-#
-# Purpose....: Create file
-#
-# Parameters.: Filename
-# Attribute
-#
-# Returns...: File handle
-#
-##########################################################################*/
-
- .global RdosCreateFile
-
-RdosCreateFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movw 12(%ebp),%cx
- UserGate create_file_nr
- jc CreateFileFailed
-
- movzx %bx,%eax
- jmp CreateFileDone
-
-CreateFileFailed:
- xorl %eax,%eax
-
-CreateFileDone:
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseFile
-#
-# Purpose....: Close file
-#
-# Parameters.: File handle
-#
-##########################################################################*/
-
- .global RdosCloseFile
-
-RdosCloseFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_file_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosIsDevice
-#
-# Purpose....: Check if file is device
-#
-# Parameters.: TRUE if device
-#
-##########################################################################*/
-
- .global RdosIsDevice
-
-RdosIsDevice:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_ioctl_data_nr
- testw $0x8000,%dx
- jz ridFail
-
- movl $1,%eax
- jmp ridDone
-
-ridFail:
- xorl %eax,%eax
-
-ridDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDuplFile
-#
-# Purpose....: Duplicate file handle
-#
-# Parameters.: File handle
-#
-# Returns....: File handle
-#
-##########################################################################*/
-
- .global RdosDuplFile
-
-RdosDuplFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate dupl_file_nr
- jc DuplFileFailed
-
- movzx %bx,%eax
- jmp DuplFileDone
-
-DuplFileFailed:
- xorl %eax,%eax
-
-DuplFileDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFileSize
-#
-# Purpose....: Get file size
-#
-# Parameters.: File handle
-#
-# Returns....: Size
-#
-##########################################################################*/
-
- .global RdosGetFileSize
-
-RdosGetFileSize:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_file_size_nr
- jnc GetFileSizeDone
-
-GetFileSizeFail:
- xorl %eax,%eax
-
-GetFileSizeDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFileSize
-#
-# Purpose....: Set file size
-#
-# Parameters.: File handle
-# Size
-#
-##########################################################################*/
-
- .global RdosSetFileSize
-
-RdosSetFileSize:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%eax
- UserGate set_file_size_nr
-
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFilePos
-#
-# Purpose....: Get file position
-#
-# Parameters.: File handle
-#
-# Returns....: Position
-#
-##########################################################################*/
-
- .global RdosGetFilePos
-
-RdosGetFilePos:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_file_pos_nr
- jnc GetFilePosDone
-
-GetFilePosFail:
- xorl %eax,%eax
-
-GetFilePosDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFilePos
-#
-# Purpose....: Set file position
-#
-# Parameters.: File handle
-# Position
-#
-##########################################################################*/
-
- .global RdosSetFilePos
-
-RdosSetFilePos:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%eax
- UserGate set_file_pos_nr
-
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFileTime
-#
-# Purpose....: Get file time & date
-#
-# Parameters.: File handle
-# &MSB, &LSB
-#
-##########################################################################*/
-
- .global RdosGetFileTime
-
-RdosGetFileTime:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movw 8(%ebp),%bx
- UserGate get_file_time_nr
- jc GetFileTimeDone
-
- movl 12(%ebp),%edi
- movl %edx,(%edi)
-
- movl 16(%ebp),%edi
- movl %eax,(%edi)
-
-GetFileTimeDone:
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFileTime
-#
-# Purpose....: Set file time & date
-#
-# Parameters.: File handle
-# MSB, LSB
-#
-##########################################################################*/
-
- .global RdosSetFileTime
-
-RdosSetFileTime:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
- pushl %edx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edx
- movl 16(%ebp),%eax
- UserGate set_file_time_nr
-
- popl %edx
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadFile
-#
-# Purpose....: Read from file
-#
-# Parameters.: File handle
-# buffer
-# count
-#
-# Returns....: Read count
-#
-##########################################################################*/
-
- .global RdosReadFile
-
-RdosReadFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- movl 16(%ebp),%ecx
- UserGate read_file_nr
-
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteFile
-#
-# Purpose....: Write to file
-#
-# Parameters.: File handle
-# buffer
-# count
-#
-# Returns....: Written count
-#
-##########################################################################*/
-
- .global RdosWriteFile
-
-RdosWriteFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- movl 16(%ebp),%ecx
- UserGate write_file_nr
-
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateMapping
-#
-# Purpose....: Create file mapping
-#
-# Parameters.: Size
-#
-# Returns...: Filemap handle
-#
-##########################################################################*/
-
- .global RdosCreateMapping
-
-RdosCreateMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%eax
- UserGate create_mapping_nr
- movzx %bx,%eax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateNamedMapping
-#
-# Purpose....: Create named file mapping
-#
-# Parameters.: Name
-# Size
-#
-# Returns...: Filemap handle
-#
-##########################################################################*/
-
- .global RdosCreateNamedMapping
-
-RdosCreateNamedMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%eax
- UserGate create_named_mapping_nr
- movzx %bx,%eax
-
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateNamedFileMapping
-#
-# Purpose....: Create file named file mapping
-#
-# Parameters.: Name
-# Size
-# File handle
-#
-# Returns...: Filemap handle
-#
-##########################################################################*/
-
- .global RdosCreateNamedFileMapping
-
-RdosCreateNamedFileMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%eax
- movw 16(%ebp),%bx
- UserGate create_named_file_mapping_nr
- movzx %bx,%eax
-
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenNamedMapping
-#
-# Purpose....: Open named file mapping
-#
-# Parameters.: Name
-#
-# Returns...: Filemap handle
-#
-##########################################################################*/
-
- .global RdosOpenNamedMapping
-
-RdosOpenNamedMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate open_named_mapping_nr
- movzx %bx,%eax
-
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSyncMapping
-#
-# Purpose....: Sync file mapping
-#
-# Parameters.: Filemap handle
-#
-##########################################################################*/
-
- .global RdosSyncMapping
-
-RdosSyncMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate sync_mapping_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseMapping
-#
-# Purpose....: Close file mapping
-#
-# Parameters.: Filemap handle
-#
-##########################################################################*/
-
- .global RdosCloseMapping
-
-RdosCloseMapping:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_mapping_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosMapView
-#
-# Purpose....: Map view of file into memory
-#
-# Parameters.: Filemap handle
-# Offset
-# Address
-# Size
-#
-##########################################################################*/
-
- .global RdosMapView
-
-RdosMapView:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%eax
- movl 16(%ebp),%edi
- movl 20(%ebp),%ecx
- UserGate map_view_nr
-
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosUnmapView
-#
-# Purpose....: Unmap view of file
-#
-# Parameters.: Filemap handle
-#
-##########################################################################*/
-
- .global RdosUnmapView
-
-RdosUnmapView:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate unmap_view_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetCurDrive
-#
-# Purpose....: Set current drive
-#
-# Parameters.: Drive
-#
-##########################################################################*/
-
- .global RdosSetCurDrive
-
-RdosSetCurDrive:
- pushl %ebp
- movl %esp,%ebp
-
- movb 8(%ebp),%al
- UserGate set_cur_drive_nr
- jc rscdrFail
-
- movl $1,%eax
- jmp rscdrDone
-
-rscdrFail:
- xorl %eax,%eax
-
-rscdrDone:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetCurDrive
-#
-# Purpose....: Get current drive
-#
-# Returns....: Drive
-#
-##########################################################################*/
-
- .global RdosGetCurDrive
-
-RdosGetCurDrive:
- pushl %ebp
- movl %esp,%ebp
-
- xorl %eax,%eax
- UserGate get_cur_drive_nr
- movzx %al,%eax
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetCurDir
-#
-# Purpose....: Set current directory
-#
-# Parameters.: Pathname
-#
-##########################################################################*/
-
- .global RdosSetCurDir
-
-RdosSetCurDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate set_cur_dir_nr
- jc rscdFail
-
- movl $1,%eax
- jmp rscdDone
-
-rscdFail:
- xorl %eax,%eax
-
-rscdDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetCurDir
-#
-# Purpose....: Get current directory
-#
-# Parameters.: Drive
-# Pathname
-#
-##########################################################################*/
-
- .global RdosGetCurDir
-
-RdosGetCurDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%edi
- UserGate get_cur_dir_nr
- jc rgcdFail
-
- movl $1,%eax
- jmp rgcdDone
-
-rgcdFail:
- xorl %eax,%eax
-
-rgcdDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosMakeDir
-#
-# Purpose....: Create directory
-#
-# Parameters.: Pathname
-#
-##########################################################################*/
-
- .global RdosMakeDir
-
-RdosMakeDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate make_dir_nr
- jc mdFail
-
- movl $1,%eax
- jmp mdDone
-
-mdFail:
- xorl %eax,%eax
-
-mdDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosRemoveDir
-#
-# Purpose....: Remove directory
-#
-# Parameters.: Pathname
-#
-##########################################################################*/
-
- .global RdosRemoveDir
-
-RdosRemoveDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate remove_dir_nr
- jc rdFail
-
- movl $1,%eax
- jmp rdDone
-
-rdFail:
- xorl %eax,%eax
-
-rdDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosRenameFile
-#
-# Purpose....: Rename file
-#
-# Parameters.: ToName
-# FromName
-#
-##########################################################################*/
-
- .global RdosRenameFile
-
-RdosRenameFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%esi
- UserGate rename_file_nr
- jc rfFail
-
- mov $1,%eax
- jmp rfDone
-
-rfFail:
- xorl %eax,%eax
-
-rfDone:
- popl %edi
- popl %esi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDeleteFile
-#
-# Purpose....: Delete file
-#
-# Parameters.: Pathname
-#
-##########################################################################*/
-
- .global RdosDeleteFile
-
-RdosDeleteFile:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate delete_file_nr
- jc dfFail
-
- mov $1,%eax
- jmp dfDone
-
-dfFail:
- xorl %eax,%eax
-
-dfDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFileAttribute
-#
-# Purpose....: Get file attribute
-#
-# Parameters.: Pathname
-# &Attrib
-#
-##########################################################################*/
-
- .global RdosGetFileAttribute
-
-RdosGetFileAttribute:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate get_file_attribute_nr
- jc gfaFail
-
- movl 12(%ebp),%edi
- movzx %cx,%ecx
- movl %ecx,(%edi)
- movl $1,%eax
- jmp gfaDone
-
-gfaFail:
- xorl %eax,%eax
-
-gfaDone:
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFileAttribute
-#
-# Purpose....: Set file attribute
-#
-# Parameters.: Pathname
-# Attrib
-#
-##########################################################################*/
-
- .global RdosSetFileAttribute
-
-RdosSetFileAttribute:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movw 12(%ebp),%cx
- UserGate set_file_attribute_nr
- jc sfaFail
-
- movl $1,%eax
- jmp sfaDone
-
-sfaFail:
- xorl %eax,%eax
-
-sfaDone:
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenDir
-#
-# Purpose....: Open directory
-#
-# Parameters.: Pathname
-#
-# Returns....: Dir handle
-#
-##########################################################################*/
-
- .global RdosOpenDir
-
-RdosOpenDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate open_dir_nr
- jc odFail
-
- movzx %bx,%eax
- jmp odDone
-
-odFail:
- xorl %eax,%eax
-
-odDone:
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseDir
-#
-# Purpose....: Close directory
-#
-# Parameters.: Dir handle
-#
-##########################################################################*/
-
- .global RdosCloseDir
-
-RdosCloseDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_dir_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadDir
-#
-# Purpose....: Read directory entry
-#
-# Parameters.: Dir handle
-# Entry #
-# MaxNameSize
-# Name buffer
-# &FileSize
-# &Attribute
-# &Msb time
-# &Lsb time
-#
-##########################################################################*/
-
- .global RdosReadDir
-
-RdosReadDir:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%dx
- movw 16(%ebp),%cx
- movl 20(%ebp),%edi
- UserGate read_dir_nr
- jc rdiFail
-
- movl 24(%ebp),%edi
- movl %ecx,(%edi)
-
- movl 28(%ebp),%edi
- movzx %bx,%ebx
- movl %ebx,(%edi)
-
- movl 32(%ebp),%edi
- movl %edx,(%edi)
-
- movl 36(%ebp),%edi
- movl %eax,(%edi)
-
- movl $1,%eax
- jmp rdiDone
-
-rdiFail:
- xorl %eax,%eax
-
-rdiDone:
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetFocus
-#
-# Purpose....: Set input focus
-#
-# Parameters.: Focus handle
-#
-##########################################################################*/
-
- .global RdosSetFocus
-
-RdosSetFocus:
- pushl %ebp
- movl %esp,%ebp
-
- movl 8(%ebp),%eax
- UserGate set_focus_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFocus
-#
-# Purpose....: Get input focus
-#
-# Returns....: Focus handle
-#
-##########################################################################*/
-
- .global RdosGetFocus
-
-RdosGetFocus:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate get_focus_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosClearKeyboard
-#
-# Purpose....: Clear keyboard buffer
-#
-##########################################################################*/
-
- .global RdosClearKeyboard
-
-RdosClearKeyboard:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate flush_keyboard_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPollKeyboard
-#
-# Purpose....: Poll keyboard buffer
-#
-# Returns....: TRUE if non-empty
-#
-##########################################################################*/
-
- .global RdosPollKeyboard
-
-RdosPollKeyboard:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate poll_keyboard_nr
- jc rpkEmpty
-
- mov $1,%eax
- jmp rpkDone
-
-rpkEmpty:
- xorl %eax,%eax
-
-rpkDone:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadKeyboard
-#
-# Purpose....: Read keyboard buffer
-#
-# Returns....: Scan code
-#
-##########################################################################*/
-
- .global RdosReadKeyboard
-
-RdosReadKeyboard:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate read_keyboard_nr
- movzx %ax,%eax
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetKeyboardState
-#
-# Purpose....: Get keyboard buffer
-#
-# Returns....: Keyboard state
-#
-##########################################################################*/
-
- .global RdosGetKeyboardState
-
-RdosGetKeyboardState:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate get_keyboard_state_nr
- movzx %ax,%eax
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPutKeyboard
-#
-# Purpose....: Put scancode in keyboard buffer
-#
-##########################################################################*/
-
- .global RdosPutKeyboard
-
-RdosPutKeyboard:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movw 8(%ebp),%ax
- movb 12(%ebp),%dl
- movb 16(%ebp),%dh
- UserGate put_keyboard_code_nr
-
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPeekKeyEvent
-#
-# Purpose....: Peek keyboard event
-#
-##########################################################################*/
-
- .global RdosPeekKeyEvent
-
-RdosPeekKeyEvent:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-
- UserGate peek_key_event_nr
- jc rpeFail
-
- movl 8(%ebp),%edi
- movzx %ax,%eax
- movl %eax,(%edi)
-
- movl 12(%ebp),%edi
- movzx %cx,%eax
- movl %eax,(%edi)
-
- movl 16(%ebp),%edi
- movzx %dl,%eax
- movl %eax,(%edi)
-
- movl 20(%ebp),%edi
- movzx %dh,%eax
- movl %eax,(%edi)
-
- movl $1,%eax
- jmp rpeDone
-
-rpeFail:
- xorl %eax,%eax
-
-rpeDone:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadKeyEvent
-#
-# Purpose....: Read keyboard event
-#
-##########################################################################*/
-
- .global RdosReadKeyEvent
-
-RdosReadKeyEvent:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-
- UserGate read_key_event_nr
- jc rkeFail
-
- movl 8(%ebp),%edi
- movzx %ax,%eax
- movl %eax,(%edi)
-
- movl 12(%ebp),%edi
- movzx %cx,%eax
- movl %eax,(%edi)
-
- movl 16(%ebp),%edi
- movzx %dl,%eax
- movl %eax,(%edi)
-
- movl 20(%ebp),%edi
- movzx %dh,%eax
- movl %eax,(%edi)
-
- movl $1,%eax
- jmp rkeDone
-
-rkeFail:
- xorl %eax,%eax
-
-rkeDone:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosHideMouse
-#
-# Purpose....: Hide mouse cursor
-#
-##########################################################################*/
-
- .global RdosHideMouse
-
-RdosHideMouse:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate hide_mouse_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosShowMouse
-#
-# Purpose....: Show mouse cursor
-#
-##########################################################################*/
-
- .global RdosShowMouse
-
-RdosShowMouse:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate show_mouse_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetMousePosition
-#
-# Purpose....: Get mouse position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetMousePosition
-
-RdosGetMousePosition:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
-
- UserGate get_mouse_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetMousePosition
-#
-# Purpose....: Set mouse position
-#
-# Parameters.: x, y
-#
-##########################################################################*/
-
- .global RdosSetMousePosition
-
-RdosSetMousePosition:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%cx
- movw 12(%ebp),%dx
- UserGate set_mouse_position_nr
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetMouseWindow
-#
-# Purpose....: Set mouse window
-#
-# Parameters.: start x, start y
-# end x, end y
-#
-##########################################################################*/
-
- .global RdosSetMouseWindow
-
-RdosSetMouseWindow:
- pushl %ebp
- movl %esp,%ebp
- pushl %eax
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%ax
- movw 12(%ebp),%bx
- movw 16(%ebp),%cx
- movw 20(%ebp),%dx
- UserGate set_mouse_window_nr
-
- popl %edx
- popl %ecx
- popl %ebx
- popl %eax
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetMouseMickey
-#
-# Purpose....: Set mouse mickey
-#
-# Parameters.: x, y
-#
-##########################################################################*/
-
- .global RdosSetMouseMickey
-
-RdosSetMouseMickey:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%cx
- movw 12(%ebp),%dx
- UserGate set_mouse_mickey_nr
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetCursorPosition
-#
-# Purpose....: Get cursor position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetCursorPosition
-
-RdosGetCursorPosition:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
-
- UserGate get_cursor_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetCursorPosition
-#
-# Purpose....: Set cursor position
-#
-# Parameters.: x, y
-#
-##########################################################################*/
-
- .global RdosSetCursorPosition
-
-RdosSetCursorPosition:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
-
- movw 8(%ebp),%cx
- movw 12(%ebp),%dx
- UserGate set_cursor_position_nr
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetLeftButton
-#
-# Purpose....: Check if left button is pressed
-#
-# Returns....: TRUE if pressed
-#
-##########################################################################*/
-
- .global RdosGetLeftButton
-
-RdosGetLeftButton:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate get_left_button_nr
- jc get_left_rel
-
- mov $1,%eax
- jmp get_left_done
-
-get_left_rel:
- xorl %eax,%eax
-
-get_left_done:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRightButton
-#
-# Purpose....: Check if right button is pressed
-#
-# Returns....: TRUE if pressed
-#
-##########################################################################*/
-
- .global RdosGetRightButton
-
-RdosGetRightButton:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate get_right_button_nr
- jc get_right_rel
-
- mov $1,%eax
- jmp get_right_done
-
-get_right_rel:
- xorl %eax,%eax
-
-get_right_done:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetLeftButtonPressPosition
-#
-# Purpose....: Get left button press position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetLeftButtonPressPosition
-
-RdosGetLeftButtonPressPosition:
- pushl %ebp
- movl %esp,%ebp
-
- pushl %ecx
- pushl %edx
-
- UserGate get_left_button_press_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRightButtonPressPosition
-#
-# Purpose....: Get right button press position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetRightButtonPressPosition
-
-RdosGetRightButtonPressPosition:
- pushl %ebp
- movl %esp,%ebp
-
- pushl %ecx
- pushl %edx
-
- UserGate get_right_button_press_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetLeftButtonReleasePosition
-#
-# Purpose....: Get left button release position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetLeftButtonReleasePosition
-
-RdosGetLeftButtonReleasePosition:
- pushl %ebp
- movl %esp,%ebp
-
- pushl %ecx
- pushl %edx
-
- UserGate get_left_button_release_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRightButtonReleasePosition
-#
-# Purpose....: Get right button release position
-#
-# Parameters.: &x, &y
-#
-##########################################################################*/
-
- .global RdosGetRightButtonReleasePosition
-
-RdosGetRightButtonReleasePosition:
- pushl %ebp
- movl %esp,%ebp
-
- pushl %ecx
- pushl %edx
-
- UserGate get_right_button_release_position_nr
-
- movl 8(%ebp),%eax
- movzx %cx,%ecx
- movl %ecx,(%eax)
-
- movl 12(%ebp),%eax
- movzx %dx,%edx
- movl %edx,(%eax)
-
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadLine
-#
-# Purpose....: Read a line from keyboard
-#
-# Parameters.: Buffer
-# Size
-#
-# Returns....: Read count
-#
-##########################################################################*/
-
- .global RdosReadLine
-
-RdosReadLine:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%ecx
- UserGate read_con_nr
-
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteChar
-#
-# Purpose....: Write a character to screen
-#
-# Parameters.: Char
-#
-##########################################################################*/
-
- .global RdosWriteChar
-
-RdosWriteChar:
- pushl %ebp
- movl %esp,%ebp
-
- movb 8(%ebp),%al
- UserGate write_char_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteSizeString
-#
-# Purpose....: Write a fixed number of characters to screen
-#
-# Parameters.: String
-# Count
-#
-##########################################################################*/
-
- .global RdosWriteSizeString
-
-RdosWriteSizeString:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%ecx
- UserGate write_size_string_nr
-
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteString
-#
-# Purpose....: Write a string to screen
-#
-# Parameters.: String
-#
-##########################################################################*/
-
- .global RdosWriteString
-
-RdosWriteString:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate write_asciiz_nr
-
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosNameToIp
-#
-# Purpose....: Convert host name to IP address
-#
-# Parameters.: Name
-#
-# Returns....: IP
-#
-##########################################################################*/
-
- .global RdosNameToIp
-
-RdosNameToIp:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate name_to_ip_nr
- jc rntiFail
-
- movl %edx,%eax
- jmp rntiDone
-
-rntiFail:
- xorl %eax,%eax
-
-rntiDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetIp
-#
-# Purpose....: Get my IP
-#
-# Returns....: IP
-#
-##########################################################################*/
-
- .global RdosGetIp
-
-RdosGetIp:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate get_ip_address_nr
- movl %edx,%eax
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosIpToName
-#
-# Purpose....: Convert IP address to host name
-#
-# Parameters.: IP
-# Name
-# Size
-#
-##########################################################################*/
-
- .global RdosIpToName
-
-RdosIpToName:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-;
- movl 8(%ebp),%edx
- movl 12(%ebp),%edi
- movl 16(%ebp),%ecx
- UserGate ip_to_name_nr
- jnc ritnDone
-
-ritnFail:
- xorl %eax,%eax
-
-ritnDone:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPing
-#
-# Purpose....: Ping node
-#
-# Parameters.: IP
-# Timeout
-#
-##########################################################################*/
-
- .global RdosPing
-
-RdosPing:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-;
- movl 8(%ebp),%edx
- movl 12(%ebp),%eax
- UserGate ping_nr
- jc ping_failed
-
- movl $1,%eax
- jmp ping_done
-
-ping_failed:
- xorl %eax,%eax
-
-ping_done:
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenTcpConnection
-#
-# Purpose....: Open an active connection over TCP
-#
-# Parameters.: RemoteIp
-# LocalPort
-# RemotePort
-# Timeout in ms
-# BufferSize
-#
-# Returns....: Conn handle
-#
-##########################################################################*/
-
- .global RdosOpenTcpConnection
-
-RdosOpenTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%edx
- movw 12(%ebp),%si
- movw 16(%ebp),%di
- movl 20(%ebp),%eax
- movl 24(%ebp),%ecx
- UserGate open_tcp_connection_nr
- mov $0,%eax
- jc rotcDone
-
- movl %ebx,%eax
-
-rotcDone:
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateTcpListen
-#
-# Purpose....: Create listen handle
-#
-# Parameters.: Port
-# MaxConnections
-# BufferSize
-#
-# Returns....: Listen handle
-#
-##########################################################################*/
-
- .global RdosCreateTcpListen
-
-RdosCreateTcpListen:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
-
- movw 8(%ebp),%si
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate create_tcp_listen_nr
- movzx %bx,%eax
- jnc ctlDone
-
- xorl %eax,%eax
-
-ctlDone:
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetTcpListen
-#
-# Purpose....: Get connection from listen
-#
-# Parameters.: Listen handle
-#
-# Returns....: Conn handle
-#
-##########################################################################*/
-
- .global RdosGetTcpListen
-
-RdosGetTcpListen:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_tcp_listen_nr
- movzx %ax,%eax
- jnc gtlDone
-
- xorl %eax,%eax
-
-gtlDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseTcpListen
-#
-# Purpose....: Close TCP listen
-#
-# Parameters.: Listen handle
-#
-##########################################################################*/
-
- .global RdosCloseTcpListen
-
-RdosCloseTcpListen:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_tcp_listen_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForTcpListen
-#
-# Purpose....: Add wait object to tcp listen
-#
-# Parameters.: Wait handle
-# Listen handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForTcpListen
-
-RdosAddWaitForTcpListen:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate add_wait_for_tcp_listen_nr
- movl $1,%eax
- jnc awftlDone
-
- xorl %eax,%eax
-
-awftlDone:
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWaitForTcpConnection
-#
-# Purpose....: Wait for Tcp connection to be established
-#
-# Parameters.: Conn handle
-# Timeout ms
-#
-##########################################################################*/
-
- .global RdosWaitForTcpConnection
-
-RdosWaitForTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%eax
- UserGate wait_for_tcp_connection_nr
- movl $1,%eax
- jnc wftcDone
-
- xorl %eax,%eax
-
-wftcDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddWaitForTcpConnection
-#
-# Purpose....: Add wait object to tcp connection
-#
-# Parameters.: Wait handle
-# Conn handle
-# ID
-#
-##########################################################################*/
-
- .global RdosAddWaitForTcpConnection
-
-RdosAddWaitForTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
-
- movw 8(%ebp),%bx
- movw 12(%ebp),%ax
- movl 16(%ebp),%ecx
- UserGate add_wait_for_tcp_connection_nr
- movl $1,%eax
- jnc awftcDone
-
- xorl %eax,%eax
-
-awftcDone:
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseTcpConnection
-#
-# Purpose....: Close Tcp connection
-#
-# Parameters.: Conn handle
-#
-##########################################################################*/
-
- .global RdosCloseTcpConnection
-
-RdosCloseTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate close_tcp_connection_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDeleteTcpConnection
-#
-# Purpose....: Delete Tcp connection
-#
-# Parameters.: Conn handle
-#
-##########################################################################*/
-
- .global RdosDeleteTcpConnection
-
-RdosDeleteTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate delete_tcp_connection_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAbortTcpConnection
-#
-# Purpose....: Abort Tcp connection
-#
-# Parameters.: Conn handle
-#
-##########################################################################*/
-
- .global RdosAbortTcpConnection
-
-RdosAbortTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate abort_tcp_connection_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPushTcpConnection
-#
-# Purpose....: Push Tcp connection
-#
-# Parameters.: Conn handle
-#
-##########################################################################*/
-
- .global RdosPushTcpConnection
-
-RdosPushTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate push_tcp_connection_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosPollTcpConnection
-#
-# Purpose....: Poll Tcp connection
-#
-# Parameters.: Conn handle
-#
-# Returns....: Available bytes in receive buffer
-#
-##########################################################################*/
-
- .global RdosPollTcpConnection
-
-RdosPollTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate poll_tcp_connection_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosIsTcpConnectionClosed
-#
-# Purpose....: Check if connection is closed
-#
-# Parameters.: Conn handle
-#
-# Returns....: TRUE if closed
-#
-##########################################################################*/
-
- .global RdosIsTcpConnectionClosed
-
-RdosIsTcpConnectionClosed:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate is_tcp_connection_closed_nr
- jc rptcClosed
-
- xorl %eax,%eax
- jmp rptcDone
-
-rptcClosed:
- movl $1,%eax
-
-rptcDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRemoteTcpConnectionIp
-#
-# Purpose....: Get remote IP
-#
-# Parameters.: Conn handle
-#
-# Returns....: IP
-#
-##########################################################################*/
-
- .global RdosGetRemoteTcpConnectionIp
-
-RdosGetRemoteTcpConnectionIp:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_remote_tcp_connection_ip_nr
- jnc grtciDone
-
- movl $0xFFFFFFFF,%eax
-
-grtciDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRemoteTcpConnectionPort
-#
-# Purpose....: Get remote port
-#
-# Parameters.: Conn handle
-#
-# Returns....: Port
-#
-##########################################################################*/
-
- .global RdosGetRemoteTcpConnectionPort
-
-RdosGetRemoteTcpConnectionPort:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_remote_tcp_connection_port_nr
- jnc grtcpDone
-
- movl $0,%eax
-
-grtcpDone:
- movzx %ax,%eax
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetLocalTcpConnectionPort
-#
-# Purpose....: Get local port
-#
-# Parameters.: Conn handle
-#
-# Returns....: Port
-#
-##########################################################################*/
-
- .global RdosGetLocalTcpConnectionPort
-
-RdosGetLocalTcpConnectionPort:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movw 8(%ebp),%bx
- UserGate get_local_tcp_connection_port_nr
- jnc gltcpDone
-
- movl $0,%eax
-
-gltcpDone:
- movzx %ax,%eax
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadTcpConnection
-#
-# Purpose....: Read data from connection
-#
-# Parameters.: Conn handle
-# Buffer
-# Size
-#
-# Returns....: Read bytes
-#
-##########################################################################*/
-
- .global RdosReadTcpConnection
-
-RdosReadTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- movl 16(%ebp),%ecx
- UserGate read_tcp_connection_nr
-
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteTcpConnection
-#
-# Purpose....: Write data fto connection
-#
-# Parameters.: Conn handle
-# Buffer
-# Size
-#
-# Returns....: Written bytes
-#
-##########################################################################*/
-
- .global RdosWriteTcpConnection
-
-RdosWriteTcpConnection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%edi
- movl 16(%ebp),%ecx
- UserGate write_tcp_connection_nr
-
- popl %edi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetLocalMailslot
-#
-# Purpose....: Get local mailslot from name
-#
-# Parameters.: Name
-#
-# Returns....: Mailslot handle
-#
-##########################################################################*/
-
- .global RdosGetLocalMailslot
-
-RdosGetLocalMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate get_local_mailslot_nr
- jc rglmFail
-
- movzx %bx,%eax
- jmp rglmDone
-
-rglmFail:
- xorl %eax,%eax
-
-rglmDone:
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRemoteMailslot
-#
-# Purpose....: Get remote mailslot from name
-#
-# Parameters.: IP
-# Name
-#
-# Returns....: Mailslot handle
-#
-##########################################################################*/
-
- .global RdosGetRemoteMailslot
-
-RdosGetRemoteMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edx
- pushl %edi
-
- movl 8(%ebp),%edx
- movl 12(%ebp),%edi
- UserGate get_remote_mailslot_nr
- jc rgrmFail
-
- movzx %bx,%eax
- jmp rgrmDone
-
-rgrmFail:
- xorl %eax,%eax
-
-rgrmDone:
- popl %edi
- popl %edx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFreeMailslot
-#
-# Purpose....: Free mailslot
-#
-# Parameters.: Mailslot handle
-#
-##########################################################################*/
-
- .global RdosFreeMailslot
-
-RdosFreeMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate free_mailslot_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSendMailslot
-#
-# Purpose....: Send mailslot
-#
-# Parameters.: Mailslot handle
-# Msg
-# Size
-# ReplyBuf
-# MaxReplySize
-#
-# Returns....: Size of reply
-#
-##########################################################################*/
-
- .global RdosSendMailslot
-
-RdosSendMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movw 8(%ebp),%bx
- movl 12(%ebp),%esi
- movl 16(%ebp),%ecx
- movl 20(%ebp),%edi
- movl 24(%ebp),%eax
- UserGate send_mailslot_nr
- jc smFail
-
- movl %ecx,%eax
- jmp smDone
-
-smFail:
- movl $0xFFFFFFFF,%eax
-
-smDone:
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDefineMailslot
-#
-# Purpose....: Define mailslot
-#
-# Parameters.: Name
-# Max msg size
-#
-##########################################################################*/
-
- .global RdosDefineMailslot
-
-RdosDefineMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%ecx
- UserGate define_mailslot_nr
-
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReceiveMailslot
-#
-# Purpose....: Receive from mailslot
-#
-# Parameters.: Msg buffer
-#
-# Returns....: Msg size
-#
-##########################################################################*/
-
- .global RdosReceiveMailslot
-
-RdosReceiveMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- UserGate receive_mailslot_nr
- movl %ecx,%eax
-
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReplyMailslot
-#
-# Purpose....: Reply to mailslot
-#
-# Parameters.: Msg buffer
-# Msg size
-#
-##########################################################################*/
-
- .global RdosReplyMailslot
-
-RdosReplyMailslot:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edi
-
- movl 8(%ebp),%edi
- movl 12(%ebp),%ecx
- UserGate reply_mailslot_nr
-
- popl %edi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetIdeDisc
-#
-# Purpose....: Get IDE disc
-#
-# Parameters.: Unit #
-#
-# Returns....: Disc #
-#
-##########################################################################*/
-
- .global RdosGetIdeDisc
-
-RdosGetIdeDisc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movb 8(%ebp),%bl
- UserGate get_ide_disc_nr
- jc get_ide_disc_fail
-
- movzx %al,%eax
- jmp get_ide_disc_done
-
-get_ide_disc_fail:
- movl $0xFFFFFFFF,%eax
-
-get_ide_disc_done:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetFloppyDisc
-#
-# Purpose....: Get floppy disc
-#
-# Parameters.: Unit #
-#
-# Returns....: Disc #
-#
-##########################################################################*/
-
- .global RdosGetFloppyDisc
-
-RdosGetFloppyDisc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movb 8(%ebp),%bl
- UserGate get_floppy_disc_nr
- jc get_floppy_disc_fail
-
- movzx %al,%eax
- jmp get_floppy_disc_done
-
-get_floppy_disc_fail:
- movl $0xFFFFFFFF,%eax
-
-get_floppy_disc_done:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetDiscInfo
-#
-# Purpose....: Get disc info
-#
-# Parameters.: Disc #
-# Bytes / sector
-# Total sectors
-# BIOS sectors / cyl
-# BIOS heads
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosGetDiscInfo
-
-RdosGetDiscInfo:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movb 8(%ebp),%al
- UserGate get_disc_info_nr
- jc get_disc_info_fail
-
- movl 12(%ebp),%ebx
- movzx %cx,%ecx
- movl %ecx,(%ebx)
-
- movl 16(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl 20(%ebp),%ebx
- movzx %si,%esi
- movl %esi,(%ebx)
-
- movl 24(%ebp),%ebx
- movzx %di,%edi
- movl %edi,(%ebx)
-
- movl $1,%eax
- jmp get_disc_info_done
-
-get_disc_info_fail:
- xorl %eax,%eax
-
-get_disc_info_done:
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetDiscInfo
-#
-# Purpose....: Set disc info
-#
-# Parameters.: Disc #
-# Bytes / sector
-# Total sectors
-# BIOS sectors / cyl
-# BIOS heads
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosSetDiscInfo
-
-RdosSetDiscInfo:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
- pushl %esi
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%ecx
- movl 16(%ebp),%edx
- movl 20(%ebp),%esi
- movl 24(%ebp),%edi
- UserGate set_disc_info_nr
- jc set_disc_info_fail
-
- movl $1,%eax
- jmp set_disc_info_done
-
-set_disc_info_fail:
- xorl %eax,%eax
-
-set_disc_info_done:
- popl %edi
- popl %esi
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadDisc
-#
-# Purpose....: Read from disc
-#
-# Parameters.: Disc #
-# Sector #
-# Buffer
-# Size
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosReadDisc
-
-RdosReadDisc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%edx
- movl 16(%ebp),%edi
- movl 20(%ebp),%ecx
- UserGate read_disc_nr
- jc read_disc_fail
-
- movl $1,%eax
- jmp read_disc_done
-
-read_disc_fail:
- xorl %eax,%eax
-
-read_disc_done:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteDisc
-#
-# Purpose....: Write to disc
-#
-# Parameters.: Disc #
-# Sector #
-# Buffer
-# Size
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosWriteDisc
-
-RdosWriteDisc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%edx
- movl 16(%ebp),%edi
- movl 20(%ebp),%ecx
- UserGate write_disc_nr
- jc write_disc_fail
-
- movl $1,%eax
- jmp write_disc_done
-
-write_disc_fail:
- xorl %eax,%eax
-
-write_disc_done:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAllocateFixedDrive
-#
-# Purpose....: Allocate fixed drive
-#
-# Parameters.: Drive #
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosAllocateFixedDrive
-
-RdosAllocateFixedDrive:
- pushl %ebp
- movl %esp,%ebp
-
- movb 8(%ebp),%al
- UserGate allocate_fixed_drive_nr
- jc allocate_fixed_drive_fail
-
- movl $1,%eax
- jmp allocate_fixed_drive_done
-
-allocate_fixed_drive_fail:
- xorl %eax,%eax
-
-allocate_fixed_drive_done:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAllocateStaticDrive
-#
-# Purpose....: Allocate static drive
-#
-# Returns....: Drive #
-#
-##########################################################################*/
-
- .global RdosAllocateStaticDrive
-
-RdosAllocateStaticDrive:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate allocate_static_drive_nr
- jc allocate_static_drive_fail
-
- movzx %al,%eax
- jmp allocate_static_drive_done
-
-allocate_static_drive_fail:
- xorl %eax,%eax
-
-allocate_static_drive_done:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAllocateDynamicDrive
-#
-# Purpose....: Allocate dynamic drive
-#
-# Returns....: Drive #
-#
-##########################################################################*/
-
- .global RdosAllocateDynamicDrive
-
-RdosAllocateDynamicDrive:
- pushl %ebp
- movl %esp,%ebp
-
- UserGate allocate_dynamic_drive_nr
- jc allocate_dynamic_drive_fail
-
- movzx %al,%eax
- jmp allocate_dynamic_drive_done
-
-allocate_dynamic_drive_fail:
- xorl %eax,%eax
-
-allocate_dynamic_drive_done:
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetRdfsInfo
-#
-# Purpose....: Get rdfs info
-#
-# Parameters.: Crypt tab
-# Key tab
-# Extent size tab
-#
-##########################################################################*/
-
- .global RdosGetRdfsInfo
-
-RdosGetRdfsInfo:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%esi
- movl 12(%ebp),%edi
- movl 16(%ebp),%ebx
- UserGate get_rdfs_info_nr
-
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetDriveInfo
-#
-# Purpose....: Get drive info
-#
-# Parameters.: Drive #
-# Free units
-# Bytes per unit
-# Total units
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosGetDriveInfo
-
-RdosGetDriveInfo:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movb 8(%ebp),%al
- UserGate get_drive_info_nr
- jc get_drive_info_fail
-
- movl 12(%ebp),%ebx
- movl %eax,(%ebx)
-
- movl 16(%ebp),%ebx
- movzx %cx,%ecx
- movl %ecx,(%ebx)
-
- movl 20(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl $1,%eax
- jmp get_drive_info_done
-
-get_drive_info_fail:
- xorl %eax,%eax
-
-get_drive_info_done:
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDemandLoadDrive
-#
-# Purpose....: Demand load drive
-#
-# Parameters.: Drive #
-#
-##########################################################################*/
-
- .global RdosDemandLoadDrive
-
-RdosDemandLoadDrive:
- pushl %ebp
- movl %esp,%ebp
-
- movb 8(%ebp),%al
- UserGate demand_load_drive_nr
-
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetDriveDiscParam
-#
-# Purpose....: Get drive disc parameters
-#
-# Parameters.: Drive #
-# Disc #
-# Start sector
-# Total sectors
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosGetDriveDiscParam
-
-RdosGetDriveDiscParam:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %edx
-
- movb 8(%ebp),%al
- UserGate get_drive_disc_param_nr
- jc get_drive_disc_param_fail
-
- movl 12(%ebp),%ebx
- movzx %al,%eax
- movl %eax,(%ebx)
-
- movl 16(%ebp),%ebx
- movl %edx,(%ebx)
-
- movl 20(%ebp),%ebx
- movl %ecx,(%ebx)
-
- movl $1,%eax
- jmp get_drive_disc_param_done
-
-get_drive_disc_param_fail:
- xorl %eax,%eax
-
-get_drive_disc_param_done:
- popl %edx
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFormatDrive
-#
-# Purpose....: Format drive
-#
-# Parameters.: Disc #
-# Start sector
-# Sectors
-# FS name
-#
-# Returns....: Drive #
-#
-##########################################################################*/
-
- .global RdosFormatDrive
-
-RdosFormatDrive:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %edx
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%edx
- movl 16(%ebp),%ecx
- movl 20(%ebp),%edi
- UserGate format_drive_nr
- jc rfdFail
-
- movzx %al,%eax
- jmp rfdDone
-
-rfdFail:
- xorl %eax,%eax
-
-rfdDone:
- popl %edi
- popl %edx
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetExeName
-#
-# Purpose....: Get name of executable file
-#
-# Returns....: Exe pathname
-#
-##########################################################################*/
-
- .global RdosGetExeName
-
-RdosGetExeName:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- UserGate get_exe_name_nr
- jc rgenFail
-
- movl %edi,%eax
- jmp rgenDone
-
-rgenFail:
- xorl %eax,%eax
-
-rgenDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenAdc
-#
-# Purpose....: Open handle to ADC channel
-#
-# Parameters.: Channel #
-#
-# Returns....: Adc handle
-#
-##########################################################################*/
-
- .global RdosOpenAdc
-
-RdosOpenAdc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%eax
- UserGate open_adc_nr
- movw %bx,%ax
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseAdc
-#
-# Purpose....: Close ADC handle
-#
-# Parameters.: Adc handle
-#
-##########################################################################*/
-
- .global RdosCloseAdc
-
-RdosCloseAdc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate close_adc_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDefineAdcTime
-#
-# Purpose....: Define time of next conversion
-#
-# Parameters.: Adc handle
-# MSB time
-# LSB time
-#
-##########################################################################*/
-
- .global RdosDefineAdcTime
-
-RdosDefineAdcTime:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edx
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%edx
- movl 16(%ebp),%eax
- UserGate define_adc_time_nr
-
- popl %edx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadAdc
-#
-# Purpose....: Read ADC
-#
-# Parameters.: Adc handle
-#
-# Returns....: Value
-#
-##########################################################################*/
-
- .global RdosReadAdc
-
-RdosReadAdc:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate read_adc_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadSerialLines
-#
-# Purpose....: Read serial lines
-#
-# Parameters.: Device
-# &Value
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosReadSerialLines
-
-RdosReadSerialLines:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
- pushl %esi
-
- movb 8(%ebp),%dh
- UserGate read_serial_lines_nr
- jc rdsFail
-
- movzx %al,%eax
- movl 12(%ebp),%esi
- movl %eax,(%esi)
- movl $1,%eax
- jmp rdsDone
-
-rdsFail:
- xorl %eax,%eax
-
-rdsDone:
- popl %esi
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosToggleSerialLine
-#
-# Purpose....: Toggle serial line
-#
-# Parameters.: Device
-# Line
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosToggleSerialLine
-
-RdosToggleSerialLine:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movb 8(%ebp),%dh
- movb 12(%ebp),%dl
- UserGate toggle_serial_line_nr
- jc rtsFail
-
- movl $1,%eax
- jmp rtsDone
-
-rtsFail:
- xorl %eax,%eax
-
-rtsDone:
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadSerialVal
-#
-# Purpose....: Read serial value
-#
-# Parameters.: Device
-# Line
-# &Val
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosReadSerialVal
-
-RdosReadSerialVal:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
- pushl %esi
-
- movb 8(%ebp),%dh
- movb 12(%ebp),%dl
- UserGate read_serial_val_nr
-
- pushfw
- shll $8,%eax
- movl 16(%ebp),%esi
- movl %eax,(%esi)
- popfw
- jc rdvFail
-
- movl $1,%eax
- jmp rdvDone
-
-rdvFail:
- xorl %eax,%eax
-
-rdvDone:
- popl %esi
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteSerialVal
-#
-# Purpose....: Write serial value
-#
-# Parameters.: Device
-# Line
-# Val
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosWriteSerialVal
-
-RdosWriteSerialVal:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movb 8(%ebp),%dh
- movb 12(%ebp),%dl
- movl 16(%ebp),%eax
- sarl $8,%eax
- UserGate write_serial_val_nr
- jc rwvFail
-
- movl $1,%eax
- jmp rwvDone
-
-rwvFail:
- xorl %eax,%eax
-
-rwvDone:
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadSerialRaw
-#
-# Purpose....: Read serial raw value
-#
-# Parameters.: Device
-# Line
-# &Val
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosReadSerialRaw
-
-RdosReadSerialRaw:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
- pushl %esi
-
- movb 8(%ebp),%dh
- movb 12(%ebp),%dl
- UserGate read_serial_val_nr
-
- pushfw
- movl 16(%ebp),%esi
- movl %eax,(%esi)
- popfw
- jc rdrFail
-
- movl $1,%eax
- jmp rdrDone
-
-rdrFail:
- xorl %eax,%eax
-
-rdrDone:
- popl %esi
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteSerialRaw
-#
-# Purpose....: Write serial raw value
-#
-# Parameters.: Device
-# Line
-# Val
-#
-# Returns....: TRUE if ok
-#
-##########################################################################*/
-
- .global RdosWriteSerialRaw
-
-RdosWriteSerialRaw:
- pushl %ebp
- movl %esp,%ebp
- pushl %edx
-
- movb 8(%ebp),%dh
- movb 12(%ebp),%dl
- movl 16(%ebp),%eax
- UserGate write_serial_val_nr
- jc rwrFail
-
- movl $1,%eax
- jmp rwrDone
-
-rwrFail:
- xorl %eax,%eax
-
-rwrDone:
- popl %edx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenSysEnv
-#
-# Purpose....: Open system environment
-#
-# Returns....: Env handle
-#
-##########################################################################*/
-
- .global RdosOpenSysEnv
-
-RdosOpenSysEnv:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate open_sys_env_nr
- jc oseFail
-
- movzx %bx,%eax
- jmp oseDone
-
-oseFail:
- xorl %eax,%eax
-
-oseDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenProcessEnv
-#
-# Purpose....: Open process environment
-#
-# Returns....: Env handle
-#
-##########################################################################*/
-
- .global RdosOpenProcessEnv
-
-RdosOpenProcessEnv:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate open_proc_env_nr
- jc opeFail
-
- movzx %bx,%eax
- jmp opeDone
-
-opeFail:
- xorl %eax,%eax
-
-opeDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseEnv
-#
-# Purpose....: Close environment
-#
-# Parameters.: Env handle
-#
-##########################################################################*/
-
- .global RdosCloseEnv
-
-RdosCloseEnv:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate close_env_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosAddEnvVar
-#
-# Purpose....: Add environment variable
-#
-# Parameters.: Env handle
-# var
-# data
-#
-##########################################################################*/
-
- .global RdosAddEnvVar
-
-RdosAddEnvVar:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- movl 16(%ebp),%edi
- UserGate add_env_var_nr
-
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDeleteEnvVar
-#
-# Purpose....: Delete environment variable
-#
-# Parameters.: Env handle
-# var
-#
-##########################################################################*/
-
- .global RdosDeleteEnvVar
-
-RdosDeleteEnvVar:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- UserGate delete_env_var_nr
-
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosFindEnvVar
-#
-# Purpose....: Find environment variable
-#
-# Parameters.: Env handle
-# var
-# data
-#
-##########################################################################*/
-
- .global RdosFindEnvVar
-
-RdosFindEnvVar:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- movl 16(%ebp),%edi
- UserGate find_env_var_nr
- jc fevFail
-
- movl $1,%eax
- jmp fevDone
-
-fevFail:
- xorl %eax,%eax
-
-fevDone:
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGetEnvData
-#
-# Purpose....: Get raw environment data
-#
-# Parameters.: Env handle
-# data
-#
-##########################################################################*/
-
- .global RdosGetEnvData
-
-RdosGetEnvData:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%edi
- UserGate get_env_data_nr
- jnc gedDone
-
- xorw %ax,%ax
- stosw
-
-gedDone:
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosSetEnvData
-#
-# Purpose....: Set raw environment data
-#
-# Parameters.: Env handle
-# data
-#
-##########################################################################*/
-
- .global RdosSetEnvData
-
-RdosSetEnvData:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%edi
- UserGate set_env_data_nr
-
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenSysIni
-#
-# Purpose....: Open system ini-file
-#
-# Returns....: Ini handle
-#
-##########################################################################*/
-
- .global RdosOpenSysIni
-
-RdosOpenSysIni:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- UserGate open_sys_ini_nr
- jc osiFail
-
- movzx %bx,%eax
- jmp osiDone
-
-osiFail:
- xorl %eax,%eax
-
-osiDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCloseIni
-#
-# Purpose....: Close ini-file
-#
-# Parameters.: Ini handle
-#
-##########################################################################*/
-
- .global RdosCloseIni
-
-RdosCloseIni:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate close_ini_nr
-
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosGotoIniSection
-#
-# Purpose....: Goto ini section
-#
-# Parameters.: Ini handle
-# SectionName
-#
-##########################################################################*/
-
- .global RdosGotoIniSection
-
-RdosGotoIniSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%edi
- UserGate goto_ini_section_nr
- jc gisFail
-
- movl $1,%eax
- jmp gisDone
-
-gisFail:
- xorl %eax,%eax
-
-gisDone:
- popl %edi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosRemoveIniSection
-#
-# Purpose....: Remove current ini section
-#
-# Parameters.: Ini handle
-#
-##########################################################################*/
-
- .global RdosRemoveIniSection
-
-RdosRemoveIniSection:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
-
- movl 8(%ebp),%ebx
- UserGate remove_ini_section_nr
- jc risFail
-
- movl $1,%eax
- jmp risDone
-
-risFail:
- xorl %eax,%eax
-
-risDone:
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosReadIni
-#
-# Purpose....: Read ini var in current section
-#
-# Parameters.: Ini handle
-# VarName
-# Data
-# MaxSize
-#
-##########################################################################*/
-
- .global RdosReadIni
-
-RdosReadIni:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %ecx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- movl 16(%ebp),%edi
- movl 20(%ebp),%ecx
- UserGate read_ini_nr
- jc riFail
-
- movl $1,%eax
- jmp riDone
-
-riFail:
- xorl %eax,%eax
-
-riDone:
- popl %edi
- popl %esi
- popl %ecx
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosWriteIni
-#
-# Purpose....: Write ini var in current section
-#
-# Parameters.: Ini handle
-# VarName
-# Data
-#
-##########################################################################*/
-
- .global RdosWriteIni
-
-RdosWriteIni:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
- pushl %edi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- movl 16(%ebp),%edi
- UserGate write_ini_nr
- jc wiFail
-
- movl $1,%eax
- jmp wiDone
-
-wiFail:
- xorl %eax,%eax
-
-wiDone:
- popl %edi
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDeleteIni
-#
-# Purpose....: Delete ini var in current section
-#
-# Parameters.: Ini handle
-# VarName
-#
-##########################################################################*/
-
- .global RdosDeleteIni
-
-RdosDeleteIni:
- pushl %ebp
- movl %esp,%ebp
- pushl %ebx
- pushl %esi
-
- movl 8(%ebp),%ebx
- movl 12(%ebp),%esi
- UserGate delete_ini_nr
- jc diFail
-
- movl $1,%eax
- jmp diDone
-
-diFail:
- xorl %eax,%eax
-
-diDone:
- popl %esi
- popl %ebx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosCreateFileDrive
-#
-# Purpose....: Create a new file-drive
-#
-# Parameters.: Drive
-# Size
-# FS name
-# Filename
-#
-##########################################################################*/
-
- .global RdosCreateFileDrive
-
-RdosCreateFileDrive:
- pushl %ebp
- movl %esp,%ebp
- pushl %ecx
- pushl %esi
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%ecx
- movl 16(%ebp),%esi
- movl 20(%ebp),%edi
- UserGate create_file_drive_nr
- jnc cfdOk
-
- xorl %eax,%eax
- jmp cfdDone
-
-cfdOk:
- movl $1,%eax
-
-cfdDone:
- popl %edi
- popl %esi
- popl %ecx
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosOpenFileDrive
-#
-# Purpose....: Open a new file-drive
-#
-# Parameters.: Drive
-# Filename
-#
-##########################################################################*/
-
- .global RdosOpenFileDrive
-
-RdosOpenFileDrive:
- pushl %ebp
- movl %esp,%ebp
- pushl %edi
-
- movb 8(%ebp),%al
- movl 12(%ebp),%edi
- UserGate open_file_drive_nr
- jnc ofdOk
-
- xorl %eax,%eax
- jmp ofdDone
-
-ofdOk:
- movl $1,%eax
-
-ofdDone:
- popl %edi
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosEnableStatusLed
-#
-# Purpose....: Enable status LED
-#
-##########################################################################*/
-
- .global RdosEnableStatusLed
-
-RdosEnableStatusLed:
- pushl %ebp
- movl %esp,%ebp
- UserGate enable_status_led_nr
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosDisableStatusLed
-#
-# Purpose....: Disable status LED
-#
-##########################################################################*/
-
- .global RdosDisableStatusLed
-
-RdosDisableStatusLed:
- pushl %ebp
- movl %esp,%ebp
- UserGate disable_status_led_nr
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosStartWatchdog
-#
-# Purpose....: Start watchdog
-#
-# Parameters.: Timeout, ms
-#
-##########################################################################*/
-
- .global RdosStartWatchdog
-
-RdosStartWatchdog:
- pushl %ebp
- movl %esp,%ebp
-;
- movl 8(%ebp),%eax
- UserGate start_watchdog_nr
-;
- leave
- ret
-
-/*##########################################################################
-#
-# Name : RdosKickWatchdog
-#
-# Purpose....: Kick watchdog
-#
-##########################################################################*/
-
- .global RdosKickWatchdog
-
-RdosKickWatchdog:
- pushl %ebp
- movl %esp,%ebp
- UserGate kick_watchdog_nr
- leave
- ret
-
diff --git a/newlib/libc/sys/rdos/rdos.h b/newlib/libc/sys/rdos/rdos.h
deleted file mode 100755
index 690500071..000000000
--- a/newlib/libc/sys/rdos/rdos.h
+++ /dev/null
@@ -1,344 +0,0 @@
-
-#ifndef _RDOS_H
-#define _RDOS_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-//#undef WIN32
-
-#define FILE_ATTRIBUTE_READONLY 0x1
-#define FILE_ATTRIBUTE_HIDDEN 0x2
-#define FILE_ATTRIBUTE_SYSTEM 0x4
-#define FILE_ATTRIBUTE_DIRECTORY 0x10
-#define FILE_ATTRIBUTE_ARCHIVE 0x20
-#define FILE_ATTRIBUTE_NORMAL 0x80
-
-#define LGOP_NULL 0
-#define LGOP_NONE 1
-#define LGOP_OR 2
-#define LGOP_AND 3
-#define LGOP_XOR 4
-#define LGOP_INVERT 5
-#define LGOP_INVERT_OR 6
-#define LGOP_INVERT_AND 7
-#define LGOP_INVERT_XOR 8
-#define LGOP_ADD 9
-#define LGOP_SUBTRACT 10
-#define LGOP_MULTIPLY 11
-
-#define getred(pgc) (((pgc)>>16)&0xFF)
-#define getgreen(pgc) (((pgc)>>8)&0xFF)
-#define getblue(pgc) ((pgc)&0xFF)
-#define mkcolor(r,g,b) (((r)<<16)|((g)<<8)|(b))
-
-typedef struct ThreadState
-{
- short int ID;
- char Name[32];
- unsigned long MsbTime;
- unsigned long LsbTime;
- char List[32];
- long Offset;
- short int Sel;
-} ThreadState;
-
-#ifdef __GNUC__
-#define __stdcall
-#else
-#if (sizeof(int) == 2)
-#define __stdcall
-#endif
-#endif
-
-short int __stdcall RdosSwapShort(short int val);
-long __stdcall RdosSwapLong(long val);
-
-void __stdcall RdosSetTextMode();
-int __stdcall RdosSetVideoMode(int *BitsPerPixel, int *xres, int *yres, int *linesize, void **buffer);
-void __stdcall RdosSetClipRect(int handle, int xmin, int ymin, int xmax, int ymax);
-void __stdcall RdosClearClipRect(int handle);
-void __stdcall RdosSetDrawColor(int handle, int color);
-void __stdcall RdosSetLGOP(int handle, int lgop);
-void __stdcall RdosSetHollowStyle(int handle);
-void __stdcall RdosSetFilledStyle(int handle);
-int __stdcall RdosOpenFont(int height);
-void __stdcall RdosCloseFont(int font);
-void __stdcall RdosGetStringMetrics(int font, const char *str, int *width, int *height);
-void __stdcall RdosSetFont(int handle, int font);
-int __stdcall RdosGetPixel(int handle, int x, int y);
-void __stdcall RdosSetPixel(int handle, int x, int y);
-void __stdcall RdosBlit(int SrcHandle, int DestHandle, int width, int height,
- int SrcX, int SrcY, int DestX, int DestY);
-void __stdcall RdosDrawMask(int handle, void *mask, int RowSize, int width, int height,
- int SrcX, int SrcY, int DestX, int DestY);
-void __stdcall RdosDrawLine(int handle, int x1, int y1, int x2, int y2);
-void __stdcall RdosDrawString(int handle, int x, int y, const char *str);
-void __stdcall RdosDrawRect(int handle, int x, int y, int width, int height);
-void __stdcall RdosDrawEllipse(int handle, int x, int y, int width, int height);
-int __stdcall RdosCreateBitmap(int BitsPerPixel, int width, int height);
-int __stdcall RdosDuplicateBitmapHandle(int handle);
-void __stdcall RdosCloseBitmap(int handle);
-int __stdcall RdosCreateStringBitmap(int font, const char *str);
-void __stdcall RdosGetBitmapInfo(int handle, int *BitPerPixel, int *width, int *height,
- int *linesize, void **buffer);
-
-int __stdcall RdosCreateSprite(int DestHandle, int BitmapHandle, int MaskHandle, int lgop);
-void __stdcall RdosCloseSprite(int handle);
-void __stdcall RdosShowSprite(int handle);
-void __stdcall RdosHideSprite(int handle);
-void __stdcall RdosMoveSprite(int handle, int x, int y);
-
-void __stdcall RdosSetForeColor(int color);
-void __stdcall RdosSetBackColor(int color);
-int __stdcall RdosGetMemSize(void *ptr);
-void *__stdcall RdosAllocateMem(int Size);
-void __stdcall RdosFreeMem(void *ptr);
-int __stdcall RdosAppDebug();
-
-int __stdcall RdosOpenCom(int ID, long BaudRate, char Parity, char DataBits, char StopBits, int SendBufSize, int RecBufSize);
-void __stdcall RdosCloseCom(int Handle);
-void __stdcall RdosFlushCom(int Handle);
-char __stdcall RdosReadCom(int Handle);
-int __stdcall RdosWriteCom(int Handle, char Val);
-void __stdcall RdosEnableCts(int Handle);
-void __stdcall RdosDisableCts(int Handle);
-void __stdcall RdosEnableAutoRts(int Handle);
-void __stdcall RdosDisableAutoRts(int Handle);
-void __stdcall RdosSetDtr(int Handle);
-void __stdcall RdosResetDtr(int Handle);
-void __stdcall RdosSetRts(int Handle);
-void __stdcall RdosResetRts(int Handle);
-int __stdcall RdosGetReceiveBufferSpace(int Handle);
-int __stdcall RdosGetSendBufferSpace(int Handle);
-void __stdcall RdosWaitForSendCompletedCom(int Handle);
-
-int __stdcall RdosOpenFile(const char *FileName, char Access);
-int __stdcall RdosCreateFile(const char *FileName, int Attrib);
-void __stdcall RdosCloseFile(int Handle);
-int __stdcall RdosIsDevice(int Handle);
-int __stdcall RdosDuplFile(int Handle);
-long __stdcall RdosGetFileSize(int Handle);
-void __stdcall RdosSetFileSize(int Handle, long Size);
-long __stdcall RdosGetFilePos(int Handle);
-void __stdcall RdosSetFilePos(int Handle, long Pos);
-int __stdcall RdosReadFile(int Handle, void *Buf, int Size);
-int __stdcall RdosWriteFile(int Handle, const void *Buf, int Size);
-void __stdcall RdosGetFileTime(int Handle, unsigned long *MsbTime, unsigned long *LsbTime);
-void __stdcall RdosSetFileTime(int Handle, unsigned long MsbTime, unsigned long LsbTime);
-
-int __stdcall RdosCreateMapping(int Size);
-int __stdcall RdosCreateNamedMapping(const char *Name, int Size);
-int __stdcall RdosCreateNamedFileMapping(const char *Name, int Size, int FileHandle);
-int __stdcall RdosOpenNamedMapping(const char *Name);
-void __stdcall RdosSyncMapping(int Handle);
-void __stdcall RdosCloseMapping(int Handle);
-void __stdcall RdosMapView(int Handle, int Offset, void *Base, int Size);
-void __stdcall RdosUnmapView(int Handle);
-
-int __stdcall RdosSetCurDrive(int Drive);
-int __stdcall RdosGetCurDrive();
-int __stdcall RdosSetCurDir(const char *PathName);
-int __stdcall RdosGetCurDir(int Drive, char *PathName);
-int __stdcall RdosMakeDir(const char *PathName);
-int __stdcall RdosRemoveDir(const char *PathName);
-int __stdcall RdosRenameFile(const char *ToName, const char *FromName);
-int __stdcall RdosDeleteFile(const char *PathName);
-int __stdcall RdosGetFileAttribute(const char *PathName, int *Attribute);
-int __stdcall RdosSetFileAttribute(const char *PathName, int Attribute);
-int __stdcall RdosOpenDir(const char *PathName);
-void __stdcall RdosCloseDir(int Handle);
-int __stdcall RdosReadDir(int Handle, int EntryNr, int MaxNameSize, char *PathName, long *FileSize, int *Attribute, unsigned long *MsbTime, unsigned long *LsbTime);
-
-int __stdcall RdosGetThreadState(int ThreadNr, ThreadState *State);
-int __stdcall RdosSuspendThread(int ThreadNr);
-
-void __stdcall RdosCpuReset();
-void __stdcall RdosGetVersion(int *Major, int *Minor, int *Release);
-void __stdcall RdosCreateThread(void (*Start)(void *Param), const char *Name, void *Param, int StackSize);
-void __stdcall RdosTerminateThread();
-int __stdcall RdosGetThreadHandle();
-int __stdcall RdosExec(const char *prog, const char *param);
-int __stdcall RdosSpawn(const char *prog, const char *param, const char *startdir);
-void __stdcall RdosWaitMilli(int ms);
-void __stdcall RdosGetTics(unsigned long *msb, unsigned long *lsb);
-void __stdcall RdosTicsToRecord(unsigned long msb, unsigned long lsb, int *year, int *month, int *day, int *hour, int *min, int *sec, int *milli);
-void __stdcall RdosRecordToTics(unsigned long *msb, unsigned long *lsb, int year, int month, int day, int hour, int min, int sec, int milli);
-int __stdcall RdosDayOfWeek(int year, int month, int day);
-void __stdcall RdosGetSysTime(int *year, int *month, int *day, int *hour, int *min, int *sec, int *milli);
-void __stdcall RdosGetTime(int *year, int *month, int *day, int *hour, int *min, int *sec, int *milli);
-void __stdcall RdosSetTime(int year, int month, int day, int hour, int min, int sec, int milli);
-void __stdcall RdosAddTics(unsigned long *msb, unsigned long *lsb, long tics);
-void __stdcall RdosAddMilli(unsigned long *msb, unsigned long *lsb, long ms);
-void __stdcall RdosAddSec(unsigned long *msb, unsigned long *lsb, long sec);
-void __stdcall RdosAddMin(unsigned long *msb, unsigned long *lsb, long min);
-void __stdcall RdosAddHour(unsigned long *msb, unsigned long *lsb, long hour);
-void __stdcall RdosAddDay(unsigned long *msb, unsigned long *lsb, long day);
-int __stdcall RdosSyncTime(long IP);
-
-void __stdcall RdosDecodeMsbTics(unsigned long msb, int *days, int *hours);
-void __stdcall RdosDecodeLsbTics(unsigned long lsb, int *min, int *sec, int *milli, int *micro);
-
-int __stdcall RdosCreateSection();
-void __stdcall RdosDeleteSection(int Handle);
-void __stdcall RdosEnterSection(int Handle);
-void __stdcall RdosLeaveSection(int Handle);
-
-int __stdcall RdosCreateWait();
-void __stdcall RdosCloseWait(int Handle);
-void * __stdcall RdosCheckWait(int Handle);
-void * __stdcall RdosWaitForever(int Handle);
-void * __stdcall RdosWaitTimeout(int Handle, int MillSec);
-void __stdcall RdosStopWait(int Handle);
-void __stdcall RdosRemoveWait(int Handle, void *ID);
-void __stdcall RdosAddWaitForKeyboard(int Handle, void *ID);
-void __stdcall RdosAddWaitForMouse(int Handle, void *ID);
-void __stdcall RdosAddWaitForCom(int Handle, int ComHandle, void *ID);
-void __stdcall RdosAddWaitForAdc(int Handle, int AdcHandle, void *ID);
-
-int __stdcall RdosCreateSignal();
-void __stdcall RdosResetSignal(int Handle);
-int __stdcall RdosIsSignalled(int Handle);
-void __stdcall RdosSetSignal(int Handle);
-void __stdcall RdosFreeSignal(int Handle);
-void __stdcall RdosAddWaitForSignal(int Handle, int SignalHandle, void *ID);
-
-long __stdcall RdosGetIp();
-int __stdcall RdosNameToIp(const char *HostName);
-int __stdcall RdosIpToName(int Ip, char *HostName, int MaxSize);
-
-int __stdcall RdosCreateTcpListen(int Port, int MaxConnections, int BufferSize);
-int __stdcall RdosGetTcpListen(int Handle);
-void __stdcall RdosCloseTcpListen(int Handle);
-void __stdcall RdosAddWaitForTcpListen(int Handle, int ConHandle, void *ID);
-
-int __stdcall RdosOpenTcpConnection(int RemoteIp, int LocalPort, int RemotePort, int Timeout, int BufferSize);
-int __stdcall RdosWaitForTcpConnection(int Handle, long Timeout);
-void __stdcall RdosAddWaitForTcpConnection(int Handle, int ConHandle, void *ID);
-void __stdcall RdosCloseTcpConnection(int Handle);
-void __stdcall RdosDeleteTcpConnection(int Handle);
-void __stdcall RdosAbortTcpConnection(int Handle);
-void __stdcall RdosPushTcpConnection(int Handle);
-int __stdcall RdosIsTcpConnectionClosed(int Handle);
-long __stdcall RdosGetRemoteTcpConnectionIP(int Handle);
-int __stdcall RdosGetRemoteTcpConnectionPort(int Handle);
-int __stdcall RdosGetLocalTcpConnectionPort(int Handle);
-int __stdcall RdosReadTcpConnection(int Handle, void *Buf, int Size);
-int __stdcall RdosWriteTcpConnection(int Handle, const void *Buf, int Size);
-int __stdcall RdosPollTcpConnection(int Handle);
-
-int __stdcall RdosGetLocalMailslot(const char *Name);
-int __stdcall RdosGetRemoteMailslot(long Ip, const char *Name);
-void __stdcall RdosFreeMailslot(int Handle);
-int __stdcall RdosSendMailslot(int Handle, const void *Msg, int Size, void *ReplyBuf, int MaxReplySize);
-
-void __stdcall RdosDefineMailslot(const char *Name, int MaxSize);
-int __stdcall RdosReceiveMailslot(void *Msg);
-void __stdcall RdosReplyMailslot(const void *Msg, int Size);
-
-void __stdcall RdosSetFocus(char FocusKey);
-char __stdcall RdosGetFocus();
-
-void __stdcall RdosClearKeyboard();
-int __stdcall RdosPollKeyboard();
-int __stdcall RdosReadKeyboard();
-int __stdcall RdosGetKeyboardState();
-int __stdcall RdosPutKeyboard(int KeyCode, int VirtualKey, int ScanCode);
-int __stdcall RdosPeekKeyEvent(int *ExtKey, int *KeyState, int *VirtualKey, int *ScanCode);
-int __stdcall RdosReadKeyEvent(int *ExtKey, int *KeyState, int *VirtualKey, int *ScanCode);
-
-void __stdcall RdosHideMouse();
-void __stdcall RdosShowMouse();
-void __stdcall RdosGetMousePosition(int *x, int *y);
-void __stdcall RdosSetMousePosition(int x, int y);
-void __stdcall RdosSetMouseWindow(int StartX, int StartY, int EndX, int EndY);
-void __stdcall RdosSetMouseMickey(int x, int y);
-int __stdcall RdosGetLeftButton();
-int __stdcall RdosGetRightButton();
-void __stdcall RdosGetLeftButtonPressPosition(int *x, int *y);
-void __stdcall RdosGetRightButtonPressPosition(int *x, int *y);
-void __stdcall RdosGetLeftButtonReleasePosition(int *x, int *y);
-void __stdcall RdosGetRightButtonReleasePosition(int *x, int *y);
-
-void __stdcall RdosGetCursorPosition(int *Row, int *Col);
-void __stdcall RdosSetCursorPosition(int Row, int Col);
-void __stdcall RdosWriteChar(char ch);
-void __stdcall RdosWriteSizeString(const char *Buf, int Size);
-void __stdcall RdosWriteString(const char *Buf);
-int __stdcall RdosReadLine(char *Buf, int MaxSize);
-
-int __stdcall RdosPing(long Node, long Timeout);
-
-int __stdcall RdosGetIdeDisc(int UnitNr);
-int __stdcall RdosGetFloppyDisc(int UnitNr);
-
-int __stdcall RdosSetDiscInfo(int DiscNr, int SectorSize, long Sectors, int BiosSectorsPerCyl, int BiosHeads);
-int __stdcall RdosGetDiscInfo(int DiscNr, int *SectorSize, long *Sectors, int *BiosSectorsPerCyl, int *BiosHeads);
-int __stdcall RdosReadDisc(int DiscNr, long Sector, char *Buf, int Size);
-int __stdcall RdosWriteDisc(int DiscNr, long Sector, const char *Buf, int Size);
-
-void __stdcall RdosGetRdfsInfo(void *CryptTab, void *KeyTab, void *ExtentSizeTab);
-void __stdcall RdosDemandLoadDrive(int DriveNr);
-int __stdcall RdosFormatDrive(int DiscNr, long StartSector, int Size, const char *FsName);
-
-int __stdcall RdosAllocateFixedDrive(int DriveNr);
-int __stdcall RdosAllocateStaticDrive();
-int __stdcall RdosAllocateDynamicDrive();
-
-int __stdcall RdosGetDriveInfo(int DriveNr, long *FreeUnits, int *BytesPerUnit, long *TotalUnits);
-int __stdcall RdosGetDriveDiscParam(int DriveNr, int *DiscNr, long *StartSector, long *TotalSectors);
-
-int __stdcall RdosCreateFileDrive(int Drive, long Size, const char *FsName, const char *FileName);
-int __stdcall RdosOpenFileDrive(int Drive, const char *FileName);
-
-int __stdcall RdosGetModuleHandle();
-const char * __stdcall RdosGetExeName();
-int __stdcall RdosLoadDll(const char *Name);
-void __stdcall RdosFreeDll(int handle);
-int __stdcall RdosReadResource(int handle, int ID, char *Buf, int Size);
-int __stdcall RdosReadBinaryResource(int handle, int ID, char *Buf, int Size);
-
-int __stdcall RdosOpenAdc(int channel);
-void __stdcall RdosCloseAdc(int handle);
-void __stdcall RdosDefineAdcTime(int handle, unsigned long msg, unsigned long lsb);
-long __stdcall RdosReadAdc(int handle);
-
-int __stdcall RdosReadSerialLines(int device, int *val);
-int __stdcall RdosToggleSerialLine(int device, int line);
-int __stdcall RdosReadSerialVal(int device, int line, int *val);
-int __stdcall RdosWriteSerialVal(int device, int line, int val);
-int __stdcall RdosReadSerialRaw(int device, int line, int *val);
-int __stdcall RdosWriteSerialRaw(int device, int line, int val);
-
-int __stdcall RdosOpenSysEnv();
-int __stdcall RdosOpenProcessEnv();
-void __stdcall RdosCloseEnv(int handle);
-void __stdcall RdosAddEnvVar(int handle, const char *var, const char *value);
-void __stdcall RdosDeleteEnvVar(int handle, const char *var);
-int __stdcall RdosFindEnvVar(int handle, const char *var, char *value);
-void __stdcall RdosGetEnvData(int handle, char *buf);
-void __stdcall RdosSetEnvData(int handle, const char *buf);
-
-int __stdcall RdosOpenSysIni();
-void __stdcall RdosCloseIni(int handle);
-int __stdcall RdosGotoIniSection(int handle, const char *name);
-int __stdcall RdosRemoveIniSection(int handle);
-int __stdcall RdosReadIni(int handle, const char *var, char *str, int maxsize);
-int __stdcall RdosWriteIni(int handle, const char *var, const char *str);
-int __stdcall RdosDeleteIni(int handle, const char *var);
-
-void __stdcall RdosEnableStatusLED();
-void __stdcall RdosDisableStatusLED();
-
-void __stdcall RdosStartWatchdog(int timeout);
-void __stdcall RdosKickWatchdog();
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-
-
diff --git a/newlib/libc/sys/rdos/rdoshelp.c b/newlib/libc/sys/rdos/rdoshelp.c
deleted file mode 100644
index 20d25353d..000000000
--- a/newlib/libc/sys/rdos/rdoshelp.c
+++ /dev/null
@@ -1,162 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# rdoshelp.c
-# implementation of various structures and helpers
-#
-##########################################################################*/
-
-#include <reent.h>
-#include <rdos.h>
-#include <stdio.h>
-
-char *__env[1] = { 0 };
-char **environ = __env;
-
-static int once_section;
-static int key_section;
-
-/*##########################################################################
-#
-# Name : _get_impure_data_size
-#
-# Purpose....: Get size of _reent structure
-#
-# In params..: *
-# Out params.: *
-# Returns....: size
-#
-##########################################################################*/
-int get_impure_data_size()
-{
- return sizeof(struct _reent);
-}
-
-/*##########################################################################
-#
-# Name : __rdos_thread_once
-#
-# Purpose....: Emulate GCC pthread_once
-#
-# In params..: Handle initially 0
-# : function to initially call
-# Out params.: *
-# Returns....: result
-#
-##########################################################################*/
-int __rdos_thread_once (int *handle, void (*func) (void))
-{
- if (handle == 0 || func == 0)
- return 0;
-
- RdosEnterSection(once_section);
- if (*handle == 0)
- (*func)();
- else
- *handle = 1;
- RdosLeaveSection(once_section);
- return 0;
-}
-
-/*##########################################################################
-#
-# Name : __rdos_thread_mutex_init
-#
-# Purpose....: Emulate GCC pthread_thread_mutex_init
-#
-# In params..: *
-# Out params.: *
-# Returns....: handle
-#
-##########################################################################*/
-int __rdos_thread_mutex_init (void)
-{
- return RdosCreateSection();
-}
-
-/*##########################################################################
-#
-# Name : __rdos_thread_mutex_lock
-#
-# Purpose....: Emulate GCC pthread_thread_mutex_lock
-#
-# In params..: handle
-# Out params.: *
-# Returns....: *
-#
-##########################################################################*/
-int __rdos_thread_mutex_lock (int handle)
-{
- RdosEnterSection(handle);
- return 0;
-}
-
-/*##########################################################################
-#
-# Name : __rdos_thread_mutex_trylock
-#
-# Purpose....: Emulate GCC pthread_thread_mutex_trylock
-# Try is not yet implemented, and lock is used.
-#
-# In params..: handle
-# Out params.: *
-# Returns....: *
-#
-##########################################################################*/
-int __rdos_thread_mutex_trylock (int handle)
-{
- RdosEnterSection(handle);
- return 0;
-}
-
-/*##########################################################################
-#
-# Name : __rdos_thread_mutex_unlock
-#
-# Purpose....: Emulate GCC pthread_thread_mutex_unlock
-#
-# In params..: handle
-# Out params.: *
-# Returns....: *
-#
-##########################################################################*/
-int __rdos_thread_mutex_unlock (int handle)
-{
- RdosLeaveSection(handle);
- return 0;
-}
-
-/*##########################################################################
-#
-# Name : __init_rdos
-#
-# Purpose....: Init RDOS specific data
-#
-# In params..: reent structure
-# Out params.: *
-# Returns....: *
-#
-##########################################################################*/
-void __init_rdos(struct _reent *reent)
-{
- once_section = RdosCreateSection();
- _REENT_INIT_PTR(reent);
- __sinit(reent);
-}
diff --git a/newlib/libc/sys/rdos/read.c b/newlib/libc/sys/rdos/read.c
deleted file mode 100644
index e9f3464f3..000000000
--- a/newlib/libc/sys/rdos/read.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# read.c
-# read function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include "rdos.h"
-
-int read(int file, char *ptr, int len)
-{
- return RdosReadFile(file, ptr, len);
-}
diff --git a/newlib/libc/sys/rdos/readlink.c b/newlib/libc/sys/rdos/readlink.c
deleted file mode 100755
index ad4c69d1c..000000000
--- a/newlib/libc/sys/rdos/readlink.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include <sys/types.h>
-
-int readlink(const char *path, char *buf, size_t bufsize)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/sbrk.c b/newlib/libc/sys/rdos/sbrk.c
deleted file mode 100644
index fdcb5fba5..000000000
--- a/newlib/libc/sys/rdos/sbrk.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# sbrk.c
-# sbrk function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_syslist.h>
-#include "rdos.h"
-
-void *sbrk (int incr)
-{
- return RdosAllocateMem(incr);
-}
diff --git a/newlib/libc/sys/rdos/stat.c b/newlib/libc/sys/rdos/stat.c
deleted file mode 100755
index f1683b63a..000000000
--- a/newlib/libc/sys/rdos/stat.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <errno.h>
-
-int stat(const char *file, struct stat *st)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/symlink.c b/newlib/libc/sys/rdos/symlink.c
deleted file mode 100755
index 4d5fa1e6f..000000000
--- a/newlib/libc/sys/rdos/symlink.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int symlink(const char *path1, const char *path2)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/times.c b/newlib/libc/sys/rdos/times.c
deleted file mode 100644
index 47a540b23..000000000
--- a/newlib/libc/sys/rdos/times.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <sys/times.h>
-#include <errno.h>
-
-clock_t times(struct tms *buf)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/unlink.c b/newlib/libc/sys/rdos/unlink.c
deleted file mode 100644
index d6c3736b3..000000000
--- a/newlib/libc/sys/rdos/unlink.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int unlink(char *name)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/user.def b/newlib/libc/sys/rdos/user.def
deleted file mode 100644
index f5af3066e..000000000
--- a/newlib/libc/sys/rdos/user.def
+++ /dev/null
@@ -1,368 +0,0 @@
-
-allocate_dos_mem_nr = 0
-allocate_local_mem_nr = 1
-free_mem_nr = 2
-available_local_linear_nr = 3
-used_local_linear_nr = 4
-available_vm_linear_nr = 5
-used_vm_linear_nr = 6
-
-reserve_pe_mem_nr = 7
-set_flat_linear_valid_nr = 8
-set_flat_linear_invalid_nr = 9
-set_flat_linear_read_nr = 10
-set_flat_linear_readwrite_nr = 11
-
-get_raw_switch_ads_nr = 12
-raw_switch_nr = 13
-get_exception_nr = 14
-set_exception_nr = 15
-get_pm_int_nr = 16
-set_pm_int_nr = 17
-get_vm_int_nr = 18
-set_vm_int_nr = 19
-dpmi_int_nr = 20
-dpmi_call_int_nr = 21
-dpmi_call_nr = 22
-allocate_vm_callback_nr = 23
-free_vm_callback_nr = 24
-
-wait_milli_nr = 25
-wait_micro_nr = 26
-wait_until_nr = 27
-create_thread_nr = 28
-terminate_thread_nr = 29
-get_thread_nr = 30
-swap_nr = 31
-
-create_user_section_nr = 32
-create_blocked_user_section_nr = 33
-delete_user_section_nr = 34
-enter_user_section_nr = 35
-leave_user_section_nr = 36
-
-get_local_mailslot_nr = 37
-get_remote_mailslot_nr = 38
-free_mailslot_nr = 39
-send_mailslot_nr = 40
-define_mailslot_nr = 41
-receive_mailslot_nr = 42
-reply_mailslot_nr = 43
-
-load_exe_nr = 44
-spawn_exe_nr = 45
-unload_exe_nr = 46
-get_exit_code_nr = 47
-get_exe_name_nr = 48
-get_cmd_line_nr = 49
-get_env_nr = 50
-load_dll_nr = 51
-free_dll_nr = 52
-get_dll_proc_nr = 53
-get_dll_resource_nr = 54
-get_dll_name_nr = 55
-get_dll_nr = 56
-allocate_app_mem_nr = 57
-free_app_mem_nr = 58
-get_psp_sel_nr = 59
-
-get_debug_tss_nr = 60
-get_debug_thread_nr = 61
-debug_trace_nr = 62
-debug_pace_nr = 63
-debug_go_nr = 64
-debug_next_nr = 65
-
-wait_for_pe_debug_nr = 68
-continue_pe_debug_nr = 69
-notify_pe_exception_nr = 70
-read_thread_mem_nr = 71
-write_thread_mem_nr = 72
-get_thread_tss_nr = 73
-set_thread_tss_nr = 74
-
-get_cpu_time_nr = 75
-get_system_time_nr = 76
-get_time_nr = 77
-time_to_system_time_nr = 78
-system_time_to_time_nr = 79
-days_in_month_nr = 80
-adjust_time_nr = 81
-passed_days_nr = 82
-time_to_binary_nr = 83
-binary_to_time_nr = 84
-sync_time_nr = 85
-
-set_focus_nr = 86
-enable_focus_nr = 87
-
-get_dns_nr = 88
-get_ppp_dns_nr = 89
-open_tcp_connection_nr = 90
-wait_for_tcp_connection_nr = 92
-close_tcp_connection_nr = 93
-delete_tcp_connection_nr = 94
-is_tcp_connection_closed_nr = 95
-abort_tcp_connection_nr = 96
-read_tcp_connection_nr = 97
-write_tcp_connection_nr = 98
-push_tcp_connection_nr = 99
-get_ip_address_nr = 100
-name_to_ip_nr = 101
-ip_to_name_nr = 102
-ping_nr = 103
-
-get_disc_info_nr = 104
-format_drive_nr = 105
-get_rdfs_info_nr = 106
-read_disc_nr = 107
-write_disc_nr = 108
-get_drive_info_nr = 109
-
-set_cur_drive_nr = 110
-get_cur_drive_nr = 111
-set_cur_dir_nr = 112
-get_cur_dir_nr = 113
-make_dir_nr = 114
-remove_dir_nr = 115
-rename_file_nr = 116
-delete_file_nr = 117
-get_file_attribute_nr = 118
-set_file_attribute_nr = 119
-open_dir_nr = 120
-close_dir_nr = 121
-read_dir_nr = 122
-
-open_file_nr = 123
-create_file_nr = 124
-close_file_nr = 125
-dupl_file_nr = 126
-get_ioctl_data_nr = 127
-get_file_size_nr = 128
-set_file_size_nr = 129
-get_file_pos_nr = 130
-set_file_pos_nr = 131
-get_file_time_nr = 132
-set_file_time_nr = 133
-read_file_nr = 134
-write_file_nr = 135
-read_con_nr = 136
-
-create_mapping_nr = 137
-create_named_mapping_nr = 138
-create_file_mapping_nr = 139
-create_named_file_mapping_nr = 140
-open_named_mapping_nr = 141
-sync_mapping_nr = 142
-close_mapping_nr = 143
-map_view_nr = 144
-unmap_view_nr = 145
-
-read_keyboard_nr = 146
-poll_keyboard_nr = 147
-flush_keyboard_nr = 148
-get_keyboard_state_nr = 151
-
-show_mouse_nr = 152
-hide_mouse_nr = 153
-get_mouse_position_nr = 154
-set_mouse_position_nr = 155
-set_mouse_window_nr = 156
-set_mouse_mickey_nr = 157
-get_left_button_nr = 158
-get_right_button_nr = 159
-get_left_button_press_position_nr = 160
-get_right_button_press_position_nr = 161
-get_left_button_release_position_nr = 162
-get_right_button_release_position_nr = 163
-hook_mouse_nr = 164
-unhook_mouse_nr = 165
-
-lock_cd_nr = 166
-unlock_cd_nr = 167
-eject_cd_nr = 168
-insert_cd_nr = 169
-
-open_com_nr = 170
-close_com_nr = 171
-flush_com_nr = 172
-add_wait_for_com_nr = 174
-read_com_nr = 175
-write_com_nr = 176
-set_dtr_nr = 177
-reset_dtr_nr = 178
-
-init_printer_nr = 179
-check_printer_nr = 180
-write_printer_nr = 181
-
-set_cursor_position_nr = 182
-get_cursor_position_nr = 183
-write_char_nr = 184
-write_asciiz_nr = 185
-write_size_string_nr = 186
-
-set_video_mode_nr = 187
-set_vga_mode_nr = 188
-set_forecolor_nr = 189
-set_backcolor_nr = 190
-get_string_metrics_nr = 193
-set_font_nr = 194
-get_video_mode_nr = 195
-draw_string_nr = 197
-
-xms_handler_nr = 198
-ems_handler_nr = 199
-
-test_nr = 200
-
-resize_flat_linear_nr = 201
-
-set_drawcolor_nr = 202
-set_lgop_nr = 203
-set_hollow_style_nr = 204
-set_filled_style_nr = 205
-get_pixel_nr = 206
-set_pixel_nr = 207
-draw_line_nr = 208
-draw_rect_nr = 209
-draw_ellipse_nr = 210
-create_bitmap_nr = 211
-close_bitmap_nr = 212
-blit_nr = 213
-open_font_nr = 215
-close_font_nr = 216
-create_string_bitmap_nr = 217
-get_bitmap_info_nr = 218
-draw_mask_nr = 219
-
-create_sprite_nr = 220
-close_sprite_nr = 221
-show_sprite_nr = 222
-hide_sprite_nr = 223
-move_sprite_nr = 224
-
-dup_bitmap_handle_nr = 225
-set_clip_rect_nr = 226
-clear_clip_rect_nr = 227
-
-set_rts_nr = 228
-reset_rts_nr = 229
-get_com_receive_space_nr = 230
-get_com_send_space_nr = 231
-
-get_char_attrib_nr = 232
-
-create_wait_nr = 233
-close_wait_nr = 234
-is_wait_idle_nr = 235
-wait_no_timeout_nr = 236
-wait_timeout_nr = 237
-stop_wait_nr = 238
-add_wait_for_keyboard_nr = 239
-
-peek_key_event_nr = 240
-read_key_event_nr = 241
-
-add_wait_for_mouse_nr = 242
-remove_wait_nr = 243
-
-add_wait_for_adc_nr = 244
-open_adc_nr = 245
-close_adc_nr = 246
-define_adc_time_nr = 247
-read_adc_nr = 248
-
-free_v86_nr = 249
-
-read_serial_lines_nr = 250
-toggle_serial_line_nr = 251
-
-read_serial_val_nr = 252
-write_serial_val_nr = 253
-
-create_file_drive_nr = 254
-open_file_drive_nr = 255
-
-dos_ext_exec_nr = 256
-
-open_sys_env_nr = 257
-open_proc_env_nr = 258
-close_env_nr = 259
-add_env_var_nr = 260
-delete_env_var_nr = 261
-find_env_var_nr = 262
-get_env_data_nr = 263
-set_env_data_nr = 264
-
-open_sys_ini_nr = 265
-close_ini_nr = 266
-goto_ini_section_nr = 267
-remove_ini_section_nr = 268
-read_ini_nr = 269
-write_ini_nr = 270
-delete_ini_nr = 271
-
-app_debug_nr = 272
-get_version_nr = 273
-
-enable_status_led_nr = 274
-disable_status_led_nr = 275
-
-start_watchdog_nr = 276
-kick_watchdog_nr = 277
-
-erase_disc_sectors_nr = 278
-
-cpu_reset_nr = 279
-
-enable_cts_nr = 280
-disable_cts_nr = 281
-
-wait_for_send_completed_com_nr = 282
-
-add_wait_for_tcp_connection_nr = 283
-
-get_remote_tcp_connection_ip_nr = 284
-get_remote_tcp_connection_port_nr = 285
-get_local_tcp_connection_port_nr = 286
-
-enable_auto_rts_nr = 287
-disable_auto_rts_nr = 288
-
-put_keyboard_code_nr = 289
-
-poll_tcp_connection_nr = 290
-
-create_signal_nr = 291
-free_signal_nr = 292
-add_wait_for_signal_nr = 293
-set_signal_nr = 294
-reset_signal_nr = 295
-is_signalled_nr = 296
-
-get_drive_disc_param_nr = 297
-
-get_ide_disc_nr = 298
-get_floppy_disc_nr = 299
-demand_load_drive_nr = 300
-set_disc_info_nr = 301
-
-get_thread_state_nr = 302
-suspend_thread_nr = 303
-resume_thread_nr = 304
-
-update_time_nr = 305
-
-allocate_static_drive_nr = 306
-allocate_fixed_drive_nr = 307
-allocate_dynamic_drive_nr = 308
-
-get_focus_nr = 309
-
-add_wait_for_tcp_listen_nr = 310
-create_tcp_listen_nr = 311
-get_tcp_listen_nr = 312
-close_tcp_listen_nr = 313
-
-usergate_entries = 340
diff --git a/newlib/libc/sys/rdos/wait.c b/newlib/libc/sys/rdos/wait.c
deleted file mode 100644
index a7bc8aab5..000000000
--- a/newlib/libc/sys/rdos/wait.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-
-int wait(int *status)
-{
- errno = ENOSYS;
- return -1;
-}
diff --git a/newlib/libc/sys/rdos/write.c b/newlib/libc/sys/rdos/write.c
deleted file mode 100644
index d02faec29..000000000
--- a/newlib/libc/sys/rdos/write.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/*#######################################################################
-# RDOS operating system
-# Copyright (C) 1988-2006, Leif Ekblad
-#
-# This library is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published
-# by the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# The author of this program may be contacted at leif@rdos.net
-#
-# write.c
-# write function implementation
-#
-##########################################################################*/
-
-#include "config.h"
-#include <_ansi.h>
-#include <_syslist.h>
-#include <errno.h>
-#include "rdos.h"
-
-int write(int file, char *ptr, int len)
-{
- return RdosWriteFile(file, ptr, len);
-}
diff --git a/newlib/libc/sys/rtems/aclocal.m4 b/newlib/libc/sys/rtems/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/rtems/aclocal.m4
+++ b/newlib/libc/sys/rtems/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/rtems/configure b/newlib/libc/sys/rtems/configure
index b2d1fbd00..2dbacc76d 100755
--- a/newlib/libc/sys/rtems/configure
+++ b/newlib/libc/sys/rtems/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/rtems/crt0.c b/newlib/libc/sys/rtems/crt0.c
index 47332b752..2e9522134 100644
--- a/newlib/libc/sys/rtems/crt0.c
+++ b/newlib/libc/sys/rtems/crt0.c
@@ -21,27 +21,10 @@ void *realloc() { return 0; }
void free() { ; }
void abort() { ; }
int raise() { return -1; }
-
-#if defined(__GNUC__)
-/*
- * stubs for libstdc++ rtems-threads support functions from gcc/gthr-rtems.h
- */
-int rtems_gxx_once() { return -1; }
-int rtems_gxx_key_create() { return -1; }
-int rtems_gxx_key_delete() { return -1; }
-void *rtems_gxx_getspecific() { return 0; }
-int rtems_gxx_setspecific() { return -1; }
-
void rtems_gxx_mutex_init() { }
int rtems_gxx_mutex_lock() { return -1; }
-int rtems_gxx_mutex_trylock() { return -1; }
int rtems_gxx_mutex_unlock() { return -1; }
-
-void rtems_gxx_recursive_mutex_init() { }
-int rtems_gxx_recursive_mutex_lock() { return -1; }
-int rtems_gxx_recursive_mutex_trylock() { return -1; }
-int rtems_gxx_recursive_mutex_unlock() { return -1; }
-#endif
+int rtems_gxx_once() { return -1; }
/* stubs for functions from reent.h */
int _close_r (struct _reent *r, int fd) { return -1; }
@@ -139,11 +122,3 @@ asm (".equ V_FILL, 65" );
asm (".equ V_BSD_OS, 66" );
asm (".equ V_EPI_OS, 69" );
#endif
-
-#if defined(__AVR__)
-/*
- * Initial stack pointer address "__stack"
- * hard coded into GCC instead of providing it through ldscripts
- */
-const char* __stack ;
-#endif
diff --git a/newlib/libc/sys/sh/aclocal.m4 b/newlib/libc/sys/sh/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sh/aclocal.m4
+++ b/newlib/libc/sys/sh/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sh/configure b/newlib/libc/sys/sh/configure
index 091e11fe7..78fa14c6c 100755
--- a/newlib/libc/sys/sh/configure
+++ b/newlib/libc/sys/sh/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sparc64/aclocal.m4 b/newlib/libc/sys/sparc64/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sparc64/aclocal.m4
+++ b/newlib/libc/sys/sparc64/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sparc64/configure b/newlib/libc/sys/sparc64/configure
index ebf1e5b5f..2bcba4082 100755
--- a/newlib/libc/sys/sparc64/configure
+++ b/newlib/libc/sys/sparc64/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sun4/aclocal.m4 b/newlib/libc/sys/sun4/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sun4/aclocal.m4
+++ b/newlib/libc/sys/sun4/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sun4/configure b/newlib/libc/sys/sun4/configure
index eede7cf12..e21f234d7 100755
--- a/newlib/libc/sys/sun4/configure
+++ b/newlib/libc/sys/sun4/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sysmec/aclocal.m4 b/newlib/libc/sys/sysmec/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sysmec/aclocal.m4
+++ b/newlib/libc/sys/sysmec/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sysmec/configure b/newlib/libc/sys/sysmec/configure
index 1efee2bcc..6bf7ae1cb 100755
--- a/newlib/libc/sys/sysmec/configure
+++ b/newlib/libc/sys/sysmec/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sysnec810/aclocal.m4 b/newlib/libc/sys/sysnec810/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sysnec810/aclocal.m4
+++ b/newlib/libc/sys/sysnec810/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sysnec810/configure b/newlib/libc/sys/sysnec810/configure
index 6c6f10aeb..fba2bec5b 100755
--- a/newlib/libc/sys/sysnec810/configure
+++ b/newlib/libc/sys/sysnec810/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sysnecv850/aclocal.m4 b/newlib/libc/sys/sysnecv850/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sysnecv850/aclocal.m4
+++ b/newlib/libc/sys/sysnecv850/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sysnecv850/configure b/newlib/libc/sys/sysnecv850/configure
index 1efee2bcc..6bf7ae1cb 100755
--- a/newlib/libc/sys/sysnecv850/configure
+++ b/newlib/libc/sys/sysnecv850/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sysvi386/aclocal.m4 b/newlib/libc/sys/sysvi386/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sysvi386/aclocal.m4
+++ b/newlib/libc/sys/sysvi386/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sysvi386/configure b/newlib/libc/sys/sysvi386/configure
index 0ae9cc4d1..7eb934545 100755
--- a/newlib/libc/sys/sysvi386/configure
+++ b/newlib/libc/sys/sysvi386/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/sysvnecv70/aclocal.m4 b/newlib/libc/sys/sysvnecv70/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/sysvnecv70/aclocal.m4
+++ b/newlib/libc/sys/sysvnecv70/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/sysvnecv70/configure b/newlib/libc/sys/sysvnecv70/configure
index 88386a9e3..9b8009e7f 100755
--- a/newlib/libc/sys/sysvnecv70/configure
+++ b/newlib/libc/sys/sysvnecv70/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/tic80/aclocal.m4 b/newlib/libc/sys/tic80/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/tic80/aclocal.m4
+++ b/newlib/libc/sys/tic80/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/tic80/configure b/newlib/libc/sys/tic80/configure
index c97c3f425..c14d5c152 100755
--- a/newlib/libc/sys/tic80/configure
+++ b/newlib/libc/sys/tic80/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/w65/aclocal.m4 b/newlib/libc/sys/w65/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/w65/aclocal.m4
+++ b/newlib/libc/sys/w65/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/w65/configure b/newlib/libc/sys/w65/configure
index 9050c416e..0951bb0e8 100755
--- a/newlib/libc/sys/w65/configure
+++ b/newlib/libc/sys/w65/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/sys/z8ksim/aclocal.m4 b/newlib/libc/sys/z8ksim/aclocal.m4
index 55d5e67ce..b0314a4ed 100644
--- a/newlib/libc/sys/z8ksim/aclocal.m4
+++ b/newlib/libc/sys/z8ksim/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libc/sys/z8ksim/configure b/newlib/libc/sys/z8ksim/configure
index 4330a5fb5..216867b1f 100755
--- a/newlib/libc/sys/z8ksim/configure
+++ b/newlib/libc/sys/z8ksim/configure
@@ -997,7 +997,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1419,11 +1419,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1427: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1424: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1457,7 +1454,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1461: checking for executable suffix" >&5
+echo "configure:1458: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1467,7 +1464,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1468: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
diff --git a/newlib/libc/time/Makefile.am b/newlib/libc/time/Makefile.am
index f5c9a02a7..3735def7c 100644
--- a/newlib/libc/time/Makefile.am
+++ b/newlib/libc/time/Makefile.am
@@ -11,7 +11,6 @@ LIB_SOURCES = \
ctime.c \
ctime_r.c \
difftime.c \
- gettzinfo.c \
gmtime.c \
gmtime_r.c \
lcltime.c \
@@ -23,8 +22,7 @@ LIB_SOURCES = \
time.c \
tzlock.c \
tzset.c \
- tzset_r.c \
- tzvars.c
+ tzset_r.c
libtime_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/time/Makefile.in b/newlib/libc/time/Makefile.in
index abdfc6530..20ad1f0df 100644
--- a/newlib/libc/time/Makefile.in
+++ b/newlib/libc/time/Makefile.in
@@ -110,7 +110,7 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-LIB_SOURCES = asctime.c asctime_r.c clock.c ctime.c ctime_r.c difftime.c gettzinfo.c gmtime.c gmtime_r.c lcltime.c lcltime_r.c mktime.c mktm_r.c strftime.c strptime.c time.c tzlock.c tzset.c tzset_r.c tzvars.c
+LIB_SOURCES = asctime.c asctime_r.c clock.c ctime.c ctime_r.c difftime.c gmtime.c gmtime_r.c lcltime.c lcltime_r.c mktime.c mktm_r.c strftime.c strptime.c time.c tzlock.c tzset.c tzset_r.c
libtime_la_LDFLAGS = -Xcompiler -nostdlib
@@ -144,20 +144,19 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@lib_a_OBJECTS = asctime.$(OBJEXT) \
@USE_LIBTOOL_FALSE@asctime_r.$(OBJEXT) clock.$(OBJEXT) ctime.$(OBJEXT) \
@USE_LIBTOOL_FALSE@ctime_r.$(OBJEXT) difftime.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@gettzinfo.$(OBJEXT) gmtime.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@gmtime_r.$(OBJEXT) lcltime.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@lcltime_r.$(OBJEXT) mktime.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@mktm_r.$(OBJEXT) strftime.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@gmtime.$(OBJEXT) gmtime_r.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@lcltime.$(OBJEXT) lcltime_r.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@mktime.$(OBJEXT) mktm_r.$(OBJEXT) strftime.$(OBJEXT) \
@USE_LIBTOOL_FALSE@strptime.$(OBJEXT) time.$(OBJEXT) tzlock.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@tzset.$(OBJEXT) tzset_r.$(OBJEXT) tzvars.$(OBJEXT)
+@USE_LIBTOOL_FALSE@tzset.$(OBJEXT) tzset_r.$(OBJEXT)
LTLIBRARIES = $(noinst_LTLIBRARIES)
libtime_la_LIBADD =
@USE_LIBTOOL_TRUE@libtime_la_OBJECTS = asctime.lo asctime_r.lo clock.lo \
-@USE_LIBTOOL_TRUE@ctime.lo ctime_r.lo difftime.lo gettzinfo.lo \
-@USE_LIBTOOL_TRUE@gmtime.lo gmtime_r.lo lcltime.lo lcltime_r.lo \
-@USE_LIBTOOL_TRUE@mktime.lo mktm_r.lo strftime.lo strptime.lo time.lo \
-@USE_LIBTOOL_TRUE@tzlock.lo tzset.lo tzset_r.lo tzvars.lo
+@USE_LIBTOOL_TRUE@ctime.lo ctime_r.lo difftime.lo gmtime.lo gmtime_r.lo \
+@USE_LIBTOOL_TRUE@lcltime.lo lcltime_r.lo mktime.lo mktm_r.lo \
+@USE_LIBTOOL_TRUE@strftime.lo strptime.lo time.lo tzlock.lo tzset.lo \
+@USE_LIBTOOL_TRUE@tzset_r.lo
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
diff --git a/newlib/libc/time/gettzinfo.c b/newlib/libc/time/gettzinfo.c
deleted file mode 100644
index 54c9bc2f0..000000000
--- a/newlib/libc/time/gettzinfo.c
+++ /dev/null
@@ -1,15 +0,0 @@
-#include <sys/types.h>
-#include <local.h>
-
-/* Shared timezone information for libc/time functions. */
-static __tzinfo_type tzinfo = {1, 0,
- { {'J', 0, 0, 0, 0, (time_t)0, 0L },
- {'J', 0, 0, 0, 0, (time_t)0, 0L }
- }
-};
-
-__tzinfo_type *
-__gettzinfo (void)
-{
- return &tzinfo;
-}
diff --git a/newlib/libc/time/local.h b/newlib/libc/time/local.h
index 9d9ef87fa..722808715 100644
--- a/newlib/libc/time/local.h
+++ b/newlib/libc/time/local.h
@@ -19,6 +19,24 @@
#define isleap(y) ((((y) % 4) == 0 && ((y) % 100) != 0) || ((y) % 400) == 0)
+extern time_t __tzstart_std;
+extern time_t __tzstart_dst;
+extern int __tznorth;
+extern int __tzyear;
+
+typedef struct __tzrule_struct
+{
+ char ch;
+ int m;
+ int n;
+ int d;
+ int s;
+ time_t change;
+ int offset;
+} __tzrule_type;
+
+extern __tzrule_type __tzrule[2];
+
struct tm * _EXFUN (_mktm_r, (_CONST time_t *, struct tm *, int __is_gmtime));
int _EXFUN (__tzcalc_limits, (int __year));
diff --git a/newlib/libc/time/mktime.c b/newlib/libc/time/mktime.c
index 0ee055cd0..f6f080d84 100644
--- a/newlib/libc/time/mktime.c
+++ b/newlib/libc/time/mktime.c
@@ -158,7 +158,6 @@ mktime (tim_p)
time_t tim = 0;
long days = 0;
int year, isdst;
- __tzinfo_type *tz = __gettzinfo ();
/* validate structure */
validate_structure (tim_p);
@@ -207,34 +206,27 @@ mktime (tim_p)
if (_daylight)
{
int y = tim_p->tm_year + YEAR_BASE;
- if (y == tz->__tzyear || __tzcalc_limits (y))
+ if (y == __tzyear || __tzcalc_limits (y))
{
/* calculate start of dst in dst local time and
start of std in both std local time and dst local time */
- time_t startdst_dst = tz->__tzrule[0].change
- - (time_t) tz->__tzrule[1].offset;
- time_t startstd_dst = tz->__tzrule[1].change
- - (time_t) tz->__tzrule[1].offset;
- time_t startstd_std = tz->__tzrule[1].change
- - (time_t) tz->__tzrule[0].offset;
+ time_t startdst_dst = __tzrule[0].change - __tzrule[1].offset;
+ time_t startstd_dst = __tzrule[1].change - __tzrule[1].offset;
+ time_t startstd_std = __tzrule[1].change - __tzrule[0].offset;
/* if the time is in the overlap between dst and std local times */
if (tim >= startstd_std && tim < startstd_dst)
; /* we let user decide or leave as -1 */
else
{
- isdst = (tz->__tznorth
+ isdst = (__tznorth
? (tim >= startdst_dst && tim < startstd_std)
: (tim >= startdst_dst || tim < startstd_std));
/* if user committed and was wrong, perform correction */
if ((isdst ^ tim_p->tm_isdst) == 1)
{
/* we either subtract or add the difference between
- time zone offsets, depending on which way the user got it
- wrong. The diff is typically one hour, or 3600 seconds,
- and should fit in a 16-bit int, even though offset
- is a long to accomodate 12 hours. */
- int diff = (int) (tz->__tzrule[0].offset
- - tz->__tzrule[1].offset);
+ time zone offsets, depending on which way the user got it wrong */
+ int diff = __tzrule[0].offset - __tzrule[1].offset;
if (!isdst)
diff = -diff;
tim_p->tm_sec += diff;
@@ -247,9 +239,9 @@ mktime (tim_p)
/* add appropriate offset to put time in gmt format */
if (isdst == 1)
- tim += (time_t) tz->__tzrule[1].offset;
+ tim += __tzrule[1].offset;
else /* otherwise assume std time */
- tim += (time_t) tz->__tzrule[0].offset;
+ tim += __tzrule[0].offset;
/* reset isdst flag to what we have calculated */
tim_p->tm_isdst = isdst;
diff --git a/newlib/libc/time/mktm_r.c b/newlib/libc/time/mktm_r.c
index 4d4b4fab0..4fdfb9b7b 100644
--- a/newlib/libc/time/mktm_r.c
+++ b/newlib/libc/time/mktm_r.c
@@ -2,8 +2,6 @@
* mktm_r.c
* Original Author: Adapted from tzcode maintained by Arthur David Olson.
* Modifications: Changed to mktm_r and added __tzcalc_limits - 04/10/02, Jeff Johnston
- * Fixed bug in mday computations - 08/12/04, Alex Mogilnikov <alx@intellectronika.ru>
- * Fixed bug in __tzcalc_limits - 08/12/04, Alex Mogilnikov <alx@intellectronika.ru>
*
* Converts the calendar time pointed to by tim_p into a broken-down time
* expressed as local time. Returns a pointer to a structure containing the
@@ -32,10 +30,10 @@ _DEFUN (_mktm_r, (tim_p, res, is_gmtime),
{
long days, rem;
time_t lcltime;
+ int i;
int y;
int yleap;
_CONST int *ip;
- __tzinfo_type *tz = __gettzinfo ();
/* base decision about std/dst time on current time */
lcltime = *tim_p;
@@ -95,33 +93,29 @@ _DEFUN (_mktm_r, (tim_p, res, is_gmtime),
if (!is_gmtime)
{
- long offset;
+ int offset;
int hours, mins, secs;
TZ_LOCK;
if (_daylight)
{
- if (y == tz->__tzyear || __tzcalc_limits (y))
- res->tm_isdst = (tz->__tznorth
- ? (*tim_p >= tz->__tzrule[0].change
- && *tim_p < tz->__tzrule[1].change)
- : (*tim_p >= tz->__tzrule[0].change
- || *tim_p < tz->__tzrule[1].change));
+ if (y == __tzyear || __tzcalc_limits (y))
+ res->tm_isdst = (__tznorth
+ ? (*tim_p >= __tzrule[0].change && *tim_p < __tzrule[1].change)
+ : (*tim_p >= __tzrule[0].change || *tim_p < __tzrule[1].change));
else
res->tm_isdst = -1;
}
else
res->tm_isdst = 0;
- offset = (res->tm_isdst == 1
- ? tz->__tzrule[1].offset
- : tz->__tzrule[0].offset);
+ offset = (res->tm_isdst == 1 ? __tzrule[1].offset : __tzrule[0].offset);
- hours = (int) (offset / SECSPERHOUR);
+ hours = offset / SECSPERHOUR;
offset = offset % SECSPERHOUR;
- mins = (int) (offset / SECSPERMIN);
- secs = (int) (offset % SECSPERMIN);
+ mins = offset / SECSPERMIN;
+ secs = offset % SECSPERMIN;
res->tm_sec -= secs;
res->tm_min -= mins;
@@ -155,9 +149,9 @@ _DEFUN (_mktm_r, (tim_p, res, is_gmtime),
res->tm_wday = 0;
++res->tm_mday;
res->tm_hour -= HOURSPERDAY;
- if (res->tm_mday > ip[res->tm_mon])
+ if (res->tm_mday >= ip[res->tm_mon])
{
- res->tm_mday -= ip[res->tm_mon];
+ res->tm_mday -= ip[res->tm_mon] - 1;
res->tm_mon += 1;
if (res->tm_mon == 12)
{
@@ -201,12 +195,11 @@ _DEFUN (__tzcalc_limits, (year),
{
int days, year_days, years;
int i, j;
- __tzinfo_type *tz = __gettzinfo ();
if (year < EPOCH_YEAR)
return 0;
- tz->__tzyear = year;
+ __tzyear = year;
years = (year - EPOCH_YEAR);
@@ -216,11 +209,10 @@ _DEFUN (__tzcalc_limits, (year),
for (i = 0; i < 2; ++i)
{
- if (tz->__tzrule[i].ch == 'J')
- days = year_days + tz->__tzrule[i].d +
- (isleap(year) && tz->__tzrule[i].d >= 60);
- else if (tz->__tzrule[i].ch == 'D')
- days = year_days + tz->__tzrule[i].d;
+ if (__tzrule[i].ch == 'J')
+ days = year_days + __tzrule[i].d + (isleap(year) && __tzrule[i].d >= 60);
+ else if (__tzrule[i].ch == 'D')
+ days = year_days + __tzrule[i].d;
else
{
int yleap = isleap(year);
@@ -229,28 +221,27 @@ _DEFUN (__tzcalc_limits, (year),
days = year_days;
- for (j = 1; j < tz->__tzrule[i].m; ++j)
+ for (j = 1; j < __tzrule[i].m; ++j)
days += ip[j-1];
m_wday = (EPOCH_WDAY + days) % DAYSPERWEEK;
- wday_diff = tz->__tzrule[i].d - m_wday;
+ wday_diff = __tzrule[i].d - m_wday;
if (wday_diff < 0)
wday_diff += DAYSPERWEEK;
- m_day = (tz->__tzrule[i].n - 1) * DAYSPERWEEK + wday_diff;
+ m_day = (__tzrule[i].n - 1) * DAYSPERWEEK + wday_diff;
- while (m_day >= ip[j-1])
+ while (m_day >= ip[j])
m_day -= DAYSPERWEEK;
days += m_day;
}
/* store the change-over time in GMT form by adding offset */
- tz->__tzrule[i].change = days * SECSPERDAY +
- tz->__tzrule[i].s + tz->__tzrule[i].offset;
+ __tzrule[i].change = days * SECSPERDAY + __tzrule[i].s + __tzrule[i].offset;
}
- tz->__tznorth = (tz->__tzrule[0].change < tz->__tzrule[1].change);
+ __tznorth = (__tzrule[0].change < __tzrule[1].change);
return 1;
}
diff --git a/newlib/libc/time/strftime.c b/newlib/libc/time/strftime.c
index a3fdb745a..9084d9ffb 100644
--- a/newlib/libc/time/strftime.c
+++ b/newlib/libc/time/strftime.c
@@ -1,7 +1,6 @@
/*
* strftime.c
* Original Author: G. Haley
- * Additions from: Eric Blake
*
* Places characters into the array pointed to by s as controlled by the string
* pointed to by format. If the total number of resulting characters including
@@ -33,195 +32,95 @@ TRAD_SYNOPSIS
DESCRIPTION
<<strftime>> converts a <<struct tm>> representation of the time (at
-<[timp]>) into a null-terminated string, starting at <[s]> and occupying
-no more than <[maxsize]> characters.
+<[timp]>) into a string, starting at <[s]> and occupying no more than
+<[maxsize]> characters.
You control the format of the output using the string at <[format]>.
<<*<[format]>>> can contain two kinds of specifications: text to be
copied literally into the formatted string, and time conversion
-specifications. Time conversion specifications are two- and
-three-character sequences beginning with `<<%>>' (use `<<%%>>' to
-include a percent sign in the output). Each defined conversion
-specification selects only the specified field(s) of calendar time
-data from <<*<[timp]>>>, and converts it to a string in one of the
-following ways:
+specifications. Time conversion specifications are two-character
+sequences beginning with `<<%>>' (use `<<%%>>' to include a percent
+sign in the output). Each defined conversion specification selects a
+field of calendar time data from <<*<[timp]>>>, and converts it to a
+string in one of the following ways:
o+
o %a
-A three-letter abbreviation for the day of the week. [tm_wday]
+An abbreviation for the day of the week.
o %A
-The full name for the day of the week, one of `<<Sunday>>',
-`<<Monday>>', `<<Tuesday>>', `<<Wednesday>>', `<<Thursday>>',
-`<<Friday>>', or `<<Saturday>>'. [tm_wday]
+The full name for the day of the week.
o %b
-A three-letter abbreviation for the month name. [tm_mon]
+An abbreviation for the month name.
o %B
-The full name of the month, one of `<<January>>', `<<February>>',
-`<<March>>', `<<April>>', `<<May>>', `<<June>>', `<<July>>',
-`<<August>>', `<<September>>', `<<October>>', `<<November>>',
-`<<December>>'. [tm_mon]
+The full name of the month.
o %c
A string representing the complete date and time, in the form
-`<<"%a %b %e %H:%M:%S %Y">>' (example "Mon Apr 01 13:13:13
-1992"). [tm_sec, tm_min, tm_hour, tm_mday, tm_mon, tm_year, tm_wday]
-
-o %C
-The century, that is, the year divided by 100 then truncated. For
-4-digit years, the result is zero-padded and exactly two characters;
-but for other years, there may a negative sign or more digits. In
-this way, `<<%C%y>>' is equivalent to `<<%Y>>'. [tm_year]
-
-o %d
-The day of the month, formatted with two digits (from `<<01>>' to
-`<<31>>'). [tm_mday]
+. Mon Apr 01 13:13:13 1992
-o %D
-A string representing the date, in the form `<<"%m/%d/%y">>'.
-[tm_mday, tm_mon, tm_year]
+o %d
+The day of the month, formatted with two digits.
o %e
-The day of the month, formatted with leading space if single digit
-(from `<<1>>' to `<<31>>'). [tm_mday]
-
-o %E<<x>>
-In some locales, the E modifier selects alternative representations of
-certain modifiers <<x>>. But in the "C" locale supported by newlib,
-it is ignored, and treated as %<<x>>.
-
-o %F
-A string representing the ISO 8601:2000 date format, in the form
-`<<"%Y-%m-%d">>'. [tm_mday, tm_mon, tm_year]
-
-o %g
-The last two digits of the week-based year, see specifier %G (from
-`<<00>>' to `<<99>>'). [tm_year, tm_wday, tm_yday]
-
-o %G
-The week-based year. In the ISO 8601:2000 calendar, week 1 of the year
-includes January 4th, and begin on Mondays. Therefore, if January 1st,
-2nd, or 3rd falls on a Sunday, that day and earlier belong to the last
-week of the previous year; and if December 29th, 30th, or 31st falls
-on Monday, that day and later belong to week 1 of the next year. For
-consistency with %Y, it always has at least four characters.
-Example: "%G" for Saturday 2nd January 1999 gives "1998", and for
-Tuesday 30th December 1997 gives "1998". [tm_year, tm_wday, tm_yday]
-
-o %h
-A three-letter abbreviation for the month name (synonym for
-"%b"). [tm_mon]
+The day of the month, formatted with leading space if single digit.
o %H
-The hour (on a 24-hour clock), formatted with two digits (from
-`<<00>>' to `<<23>>'). [tm_hour]
+The hour (on a 24-hour clock), formatted with two digits.
o %I
-The hour (on a 12-hour clock), formatted with two digits (from
-`<<01>>' to `<<12>>'). [tm_hour]
+The hour (on a 12-hour clock), formatted with two digits.
o %j
The count of days in the year, formatted with three digits
-(from `<<001>>' to `<<366>>'). [tm_yday]
-
-o %k
-The hour (on a 24-hour clock), formatted with leading space if single
-digit (from `<<0>>' to `<<23>>'). Non-POSIX extension. [tm_hour]
-
-o %l
-The hour (on a 12-hour clock), formatted with leading space if single
-digit (from `<<1>>' to `<<12>>'). Non-POSIX extension. [tm_hour]
+(from `<<001>>' to `<<366>>').
o %m
-The month number, formatted with two digits (from `<<01>>' to `<<12>>').
-[tm_mon]
+The month number, formatted with two digits.
o %M
-The minute, formatted with two digits (from `<<00>>' to `<<59>>'). [tm_min]
-
-o %n
-A newline character (`<<\n>>').
-
-o %O<<x>>
-In some locales, the O modifier selects alternative digit characters
-for certain modifiers <<x>>. But in the "C" locale supported by newlib, it
-is ignored, and treated as %<<x>>.
+The minute, formatted with two digits.
o %p
-Either `<<AM>>' or `<<PM>>' as appropriate. [tm_hour]
-
-o %r
-The 12-hour time, to the second. Equivalent to "%I:%M:%S %p". [tm_sec,
-tm_min, tm_hour]
-
-o %R
-The 24-hour time, to the minute. Equivalent to "%H:%M". [tm_min, tm_hour]
+Either `<<AM>>' or `<<PM>>' as appropriate.
o %S
-The second, formatted with two digits (from `<<00>>' to `<<60>>'). The
-value 60 accounts for the occasional leap second. [tm_sec]
-
-o %t
-A tab character (`<<\t>>').
-
-o %T
-The 24-hour time, to the second. Equivalent to "%H:%M:%S". [tm_sec,
-tm_min, tm_hour]
-
-o %u
-The weekday as a number, 1-based from Monday (from `<<1>>' to
-`<<7>>'). [tm_wday]
+The second, formatted with two digits.
o %U
-The week number, where weeks start on Sunday, week 1 contains the first
-Sunday in a year, and earlier days are in week 0. Formatted with two
-digits (from `<<00>>' to `<<53>>'). See also <<%W>>. [tm_wday, tm_yday]
-
-o %V
-The week number, where weeks start on Monday, week 1 contains January 4th,
-and earlier days are in the previous year. Formatted with two digits
-(from `<<01>>' to `<<53>>'). See also <<%G>>. [tm_year, tm_wday, tm_yday]
+The week number, formatted with two digits (from `<<00>>' to `<<53>>';
+week number 1 is taken as beginning with the first Sunday in a year).
+See also <<%W>>.
o %w
-The weekday as a number, 0-based from Sunday (from `<<0>>' to `<<6>>').
-[tm_wday]
+A single digit representing the day of the week: Sunday is day <<0>>.
o %W
-The week number, where weeks start on Monday, week 1 contains the first
-Monday in a year, and earlier days are in week 0. Formatted with two
-digits (from `<<00>>' to `<<53>>'). [tm_wday, tm_yday]
+Another version of the week number: like `<<%U>>', but counting week 1
+as beginning with the first Monday in a year.
+o
o %x
-A string representing the complete date, equivalent to "%m/%d/%y".
-[tm_mon, tm_mday, tm_year]
+A string representing the complete date, in a format like
+. Mon Apr 01 1992
o %X
A string representing the full time of day (hours, minutes, and
-seconds), equivalent to "%H:%M:%S". [tm_sec, tm_min, tm_hour]
+seconds), in a format like
+. 13:13:13
o %y
-The last two digits of the year (from `<<00>>' to `<<99>>'). [tm_year]
+The last two digits of the year.
o %Y
-The full year, equivalent to <<%C%y>>. It will always have at least four
-characters, but may have more. The year is accurate even when tm_year
-added to the offset of 1900 overflows an int. [tm_year]
-
-o %z
-The offset from UTC. The format consists of a sign (negative is west of
-Greewich), two characters for hour, then two characters for minutes
-(-hhmm or +hhmm). If tm_isdst is negative, the offset is unknown and no
-output is generated; if it is zero, the offset is the standard offset for
-the current time zone; and if it is positive, the offset is the daylight
-savings offset for the current timezone. The offset is determined from
-the TZ environment variable, as if by calling tzset(). [tm_isdst]
+The full year, formatted with four digits to include the century.
o %Z
-The time zone name. If tm_isdst is negative, no output is generated.
-Otherwise, the time zone name is based on the TZ environment variable,
-as if by calling tzset(). [tm_isdst]
+The time zone name. If tm_isdst is -1, no output is generated.
+Otherwise, the time zone name based on the TZ environment variable
+is used.
o %%
A single character, `<<%>>'.
@@ -238,12 +137,7 @@ parts of <<*<[format]>>> that could be completely filled in within the
PORTABILITY
ANSI C requires <<strftime>>, but does not specify the contents of
<<*<[s]>>> when the formatted string would require more than
-<[maxsize]> characters. Unrecognized specifiers and fields of
-<<timp>> that are out of range cause undefined results. Since some
-formats expand to 0 bytes, it is wise to set <<*<[s]>>> to a nonzero
-value beforehand to distinguish between failure and an empty string.
-This implementation does not support <<s>> being NULL, nor overlapping
-<<s>> and <<format>>.
+<[maxsize]> characters.
<<strftime>> requires no supporting OS subroutines.
*/
@@ -251,8 +145,6 @@ This implementation does not support <<s>> being NULL, nor overlapping
#include <stddef.h>
#include <stdio.h>
#include <time.h>
-#include <string.h>
-#include <stdlib.h>
#include "local.h"
static _CONST int dname_len[7] =
@@ -270,53 +162,6 @@ static _CONST char *_CONST mname[12] =
"May", "June", "July", "August", "September", "October", "November",
"December"};
-/* Using the tm_year, tm_wday, and tm_yday components of TIM_P, return
- -1, 0, or 1 as the adjustment to add to the year for the ISO week
- numbering used in "%g%G%V", avoiding overflow. */
-static int
-_DEFUN (iso_year_adjust, (tim_p),
- _CONST struct tm *tim_p)
-{
- /* Account for fact that tm_year==0 is year 1900. */
- int leap = isleap (tim_p->tm_year + (YEAR_BASE
- - (tim_p->tm_year < 0 ? 0 : 2000)));
-
- /* Pack the yday, wday, and leap year into a single int since there are so
- many disparate cases. */
-#define PACK(yd, wd, lp) (((yd) << 4) + (wd << 1) + (lp))
- switch (PACK (tim_p->tm_yday, tim_p->tm_wday, leap))
- {
- case PACK (0, 5, 0): /* Jan 1 is Fri, not leap. */
- case PACK (0, 6, 0): /* Jan 1 is Sat, not leap. */
- case PACK (0, 0, 0): /* Jan 1 is Sun, not leap. */
- case PACK (0, 5, 1): /* Jan 1 is Fri, leap year. */
- case PACK (0, 6, 1): /* Jan 1 is Sat, leap year. */
- case PACK (0, 0, 1): /* Jan 1 is Sun, leap year. */
- case PACK (1, 6, 0): /* Jan 2 is Sat, not leap. */
- case PACK (1, 0, 0): /* Jan 2 is Sun, not leap. */
- case PACK (1, 6, 1): /* Jan 2 is Sat, leap year. */
- case PACK (1, 0, 1): /* Jan 2 is Sun, leap year. */
- case PACK (2, 0, 0): /* Jan 3 is Sun, not leap. */
- case PACK (2, 0, 1): /* Jan 3 is Sun, leap year. */
- return -1; /* Belongs to last week of previous year. */
- case PACK (362, 1, 0): /* Dec 29 is Mon, not leap. */
- case PACK (363, 1, 1): /* Dec 29 is Mon, leap year. */
- case PACK (363, 1, 0): /* Dec 30 is Mon, not leap. */
- case PACK (363, 2, 0): /* Dec 30 is Tue, not leap. */
- case PACK (364, 1, 1): /* Dec 30 is Mon, leap year. */
- case PACK (364, 2, 1): /* Dec 30 is Tue, leap year. */
- case PACK (364, 1, 0): /* Dec 31 is Mon, not leap. */
- case PACK (364, 2, 0): /* Dec 31 is Tue, not leap. */
- case PACK (364, 3, 0): /* Dec 31 is Wed, not leap. */
- case PACK (365, 1, 1): /* Dec 31 is Mon, leap year. */
- case PACK (365, 2, 1): /* Dec 31 is Tue, leap year. */
- case PACK (365, 3, 1): /* Dec 31 is Wed, leap year. */
- return 1; /* Belongs to first week of next year. */
- }
- return 0; /* Belongs to specified year. */
-#undef PACK
-}
-
size_t
_DEFUN (strftime, (s, maxsize, format, tim_p),
char *s _AND
@@ -341,9 +186,6 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
break;
format++;
- if (*format == 'E' || *format == 'O')
- format++;
-
switch (*format)
{
case 'a':
@@ -388,141 +230,52 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
}
break;
case 'c':
- {
- /* Length is not known because of %C%y, so recurse. */
- size_t adjust = strftime (&s[count], maxsize - count,
- "%a %b %e %H:%M:%S %C%y", tim_p);
- if (adjust > 0)
- count += adjust;
- else
- return 0;
- }
- break;
- case 'C':
- {
- /* Examples of (tm_year + YEAR_BASE) that show how %Y == %C%y
- with 32-bit int.
- %Y %C %y
- 2147485547 21474855 47
- 10000 100 00
- 9999 99 99
- 0999 09 99
- 0099 00 99
- 0001 00 01
- 0000 00 00
- -001 -0 01
- -099 -0 99
- -999 -9 99
- -1000 -10 00
- -10000 -100 00
- -2147481748 -21474817 48
-
- Be careful of both overflow and sign adjustment due to the
- asymmetric range of years.
- */
- int neg = tim_p->tm_year < -YEAR_BASE;
- int century = tim_p->tm_year >= 0
- ? tim_p->tm_year / 100 + YEAR_BASE / 100
- : abs (tim_p->tm_year + YEAR_BASE) / 100;
- count += snprintf (&s[count], maxsize - count, "%s%.*d",
- neg ? "-" : "", 2 - neg, century);
- if (count >= maxsize)
- return 0;
- }
- break;
- case 'd':
- case 'e':
- if (count < maxsize - 2)
+ if (count < maxsize - 24)
{
- sprintf (&s[count], *format == 'd' ? "%.2d" : "%2d",
- tim_p->tm_mday);
- count += 2;
+ for (i = 0; i < 3; i++)
+ s[count++] =
+ dname[tim_p->tm_wday][i];
+ s[count++] = ' ';
+ for (i = 0; i < 3; i++)
+ s[count++] =
+ mname[tim_p->tm_mon][i];
+
+ sprintf (&s[count],
+ " %.2d %2.2d:%2.2d:%2.2d %.4d",
+ tim_p->tm_mday, tim_p->tm_hour,
+ tim_p->tm_min,
+ tim_p->tm_sec, 1900 +
+ tim_p->tm_year);
+ count += 17;
}
else
return 0;
break;
- case 'D':
- case 'x':
- /* %m/%d/%y */
- if (count < maxsize - 8)
+ case 'd':
+ if (count < maxsize - 2)
{
- sprintf (&s[count], "%.2d/%.2d/%.2d",
- tim_p->tm_mon + 1, tim_p->tm_mday,
- tim_p->tm_year >= 0 ? tim_p->tm_year % 100
- : abs (tim_p->tm_year + YEAR_BASE) % 100);
- count += 8;
+ sprintf (&s[count], "%.2d",
+ tim_p->tm_mday);
+ count += 2;
}
else
return 0;
break;
- case 'F':
- {
- /* Length is not known because of %C%y, so recurse. */
- size_t adjust = strftime (&s[count], maxsize - count,
- "%C%y-%m-%d", tim_p);
- if (adjust > 0)
- count += adjust;
- else
- return 0;
- }
- break;
- case 'g':
+ case 'e':
if (count < maxsize - 2)
{
- /* Be careful of both overflow and negative years, thanks to
- the asymmetric range of years. */
- int adjust = iso_year_adjust (tim_p);
- int year = tim_p->tm_year >= 0 ? tim_p->tm_year % 100
- : abs (tim_p->tm_year + YEAR_BASE) % 100;
- if (adjust < 0 && tim_p->tm_year <= -YEAR_BASE)
- adjust = 1;
- else if (adjust > 0 && tim_p->tm_year < -YEAR_BASE)
- adjust = -1;
- sprintf (&s[count], "%.2d",
- ((year + adjust) % 100 + 100) % 100);
+ sprintf (&s[count], "%2d",
+ tim_p->tm_mday);
count += 2;
}
else
return 0;
- break;
- case 'G':
- {
- /* See the comments for 'C' and 'Y'; this is a variable length
- field. Although there is no requirement for a minimum number
- of digits, we use 4 for consistency with 'Y'. */
- int neg = tim_p->tm_year < -YEAR_BASE;
- int adjust = iso_year_adjust (tim_p);
- int century = tim_p->tm_year >= 0
- ? tim_p->tm_year / 100 + YEAR_BASE / 100
- : abs (tim_p->tm_year + YEAR_BASE) / 100;
- int year = tim_p->tm_year >= 0 ? tim_p->tm_year % 100
- : abs (tim_p->tm_year + YEAR_BASE) % 100;
- if (adjust < 0 && tim_p->tm_year <= -YEAR_BASE)
- neg = adjust = 1;
- else if (adjust > 0 && neg)
- adjust = -1;
- year += adjust;
- if (year == -1)
- {
- year = 99;
- --century;
- }
- else if (year == 100)
- {
- year = 0;
- ++century;
- }
- count += snprintf (&s[count], maxsize - count, "%s%.*d%.2d",
- neg ? "-" : "", 2 - neg, century, year);
- if (count >= maxsize)
- return 0;
- }
- break;
+ break;
case 'H':
case 'k':
if (count < maxsize - 2)
{
- sprintf (&s[count], *format == 'k' ? "%2d" : "%.2d",
+ sprintf (&s[count], *format == 'k' ? "%2d" : "%2.2d",
tim_p->tm_hour);
count += 2;
}
@@ -541,7 +294,7 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
}
else
{
- sprintf (&s[count], *format == 'I' ? "%.2d" : "%2d",
+ sprintf (&s[count], (*format == 'I') ? "%.2d" : "%2d",
tim_p->tm_hour % 12);
count += 2;
}
@@ -572,19 +325,13 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
case 'M':
if (count < maxsize - 2)
{
- sprintf (&s[count], "%.2d",
+ sprintf (&s[count], "%2.2d",
tim_p->tm_min);
count += 2;
}
else
return 0;
break;
- case 'n':
- if (count < maxsize - 1)
- s[count++] = '\n';
- else
- return 0;
- break;
case 'p':
if (count < maxsize - 2)
{
@@ -598,133 +345,76 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
else
return 0;
break;
- case 'r':
- if (count < maxsize - 11)
+ case 'S':
+ if (count < maxsize - 2)
{
- if (tim_p->tm_hour == 0 ||
- tim_p->tm_hour == 12)
- {
- s[count++] = '1';
- s[count++] = '2';
- }
- else
- {
- sprintf (&s[count], "%.2d", tim_p->tm_hour % 12);
- count += 2;
- }
- s[count++] = ':';
- sprintf (&s[count], "%.2d",
- tim_p->tm_min);
- count += 2;
- s[count++] = ':';
- sprintf (&s[count], "%.2d",
+ sprintf (&s[count], "%2.2d",
tim_p->tm_sec);
count += 2;
- s[count++] = ' ';
- if (tim_p->tm_hour < 12)
- s[count++] = 'A';
- else
- s[count++] = 'P';
-
- s[count++] = 'M';
}
else
return 0;
break;
- case 'R':
- if (count < maxsize - 5)
- {
- sprintf (&s[count], "%.2d:%.2d", tim_p->tm_hour, tim_p->tm_min);
- count += 5;
- }
- else
- return 0;
- break;
- case 'S':
+ case 'U':
if (count < maxsize - 2)
{
- sprintf (&s[count], "%.2d",
- tim_p->tm_sec);
+ sprintf (&s[count], "%2.2d",
+ (tim_p->tm_yday + 7 -
+ tim_p->tm_wday) / 7);
count += 2;
}
else
return 0;
break;
- case 't':
+ case 'w':
if (count < maxsize - 1)
- s[count++] = '\t';
+ {
+ sprintf (&s[count], "%1.1d",
+ tim_p->tm_wday);
+ count++;
+ }
else
return 0;
break;
- case 'T':
- case 'X':
- if (count < maxsize - 8)
- {
- sprintf (&s[count], "%.2d:%.2d:%.2d", tim_p->tm_hour,
- tim_p->tm_min, tim_p->tm_sec);
- count += 8;
- }
- else
- return 0;
- break;
- case 'u':
- if (count < maxsize - 1)
- {
- if (tim_p->tm_wday == 0)
- s[count++] = '7';
- else
- s[count++] = '0' + tim_p->tm_wday;
- }
- else
- return 0;
- break;
- case 'U':
+ case 'W':
if (count < maxsize - 2)
{
- sprintf (&s[count], "%.2d",
+ int wday = (tim_p->tm_wday) ? tim_p->tm_wday - 1 : 6;
+ sprintf (&s[count], "%2.2d",
(tim_p->tm_yday + 7 -
- tim_p->tm_wday) / 7);
+ wday) / 7);
count += 2;
}
else
return 0;
break;
- case 'V':
- if (count < maxsize - 2)
+ case 'x':
+ if (count < maxsize - 15)
{
- int adjust = iso_year_adjust (tim_p);
- int wday = (tim_p->tm_wday) ? tim_p->tm_wday - 1 : 6;
- int week = (tim_p->tm_yday + 10 - wday) / 7;
- if (adjust > 0)
- week = 1;
- else if (adjust < 0)
- /* Previous year has 53 weeks if current year starts on
- Fri, and also if current year starts on Sat and
- previous year was leap year. */
- week = 52 + (4 >= (wday - tim_p->tm_yday
- - isleap (tim_p->tm_year
- + (YEAR_BASE - 1
- - (tim_p->tm_year < 0
- ? 0 : 2000)))));
- sprintf (&s[count], "%.2d", week);
- count += 2;
+ for (i = 0; i < 3; i++)
+ s[count++] =
+ dname[tim_p->tm_wday][i];
+ s[count++] = ' ';
+ for (i = 0; i < 3; i++)
+ s[count++] =
+ mname[tim_p->tm_mon][i];
+
+ sprintf (&s[count],
+ " %.2d %.4d", tim_p->tm_mday,
+ 1900 + tim_p->tm_year);
+ count += 8;
}
else
return 0;
- break;
- case 'w':
- if (count < maxsize - 1)
- s[count++] = '0' + tim_p->tm_wday;
- else
- return 0;
break;
- case 'W':
- if (count < maxsize - 2)
+ case 'X':
+ if (count < maxsize - 8)
{
- int wday = (tim_p->tm_wday) ? tim_p->tm_wday - 1 : 6;
- sprintf (&s[count], "%.2d",
- (tim_p->tm_yday + 7 - wday) / 7);
- count += 2;
+ sprintf (&s[count],
+ "%2.2d:%2.2d:%2.2d",
+ tim_p->tm_hour, tim_p->tm_min,
+ tim_p->tm_sec);
+ count += 8;
}
else
return 0;
@@ -732,58 +422,36 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
case 'y':
if (count < maxsize - 2)
{
- /* Be careful of both overflow and negative years, thanks to
- the asymmetric range of years. */
- int year = tim_p->tm_year >= 0 ? tim_p->tm_year % 100
- : abs (tim_p->tm_year + YEAR_BASE) % 100;
- sprintf (&s[count], "%.2d", year);
+ /* The year could be greater than 100, so we need the value
+ modulo 100. The year could be negative, so we need to
+ correct for a possible negative remainder. */
+ sprintf (&s[count], "%2.2d",
+ (tim_p->tm_year % 100 + 100) % 100);
count += 2;
}
else
return 0;
break;
case 'Y':
- {
- /* Length is not known because of %C%y, so recurse. */
- size_t adjust = strftime (&s[count], maxsize - count,
- "%C%y", tim_p);
- if (adjust > 0)
- count += adjust;
- else
- return 0;
- }
+ if (count < maxsize - 4)
+ {
+ sprintf (&s[count], "%.4d",
+ 1900 + tim_p->tm_year);
+ count += 4;
+ }
+ else
+ return 0;
break;
- case 'z':
- if (tim_p->tm_isdst >= 0)
- {
- if (count < maxsize - 5)
- {
- long offset;
- __tzinfo_type *tz = __gettzinfo ();
- TZ_LOCK;
- /* The sign of this is exactly opposite the envvar TZ. We
- could directly use the global _timezone for tm_isdst==0,
- but have to use __tzrule for daylight savings. */
- offset = -tz->__tzrule[tim_p->tm_isdst > 0].offset;
- TZ_UNLOCK;
- sprintf (&s[count], "%+03ld%.2ld", offset / SECSPERHOUR,
- labs (offset / SECSPERMIN) % 60L);
- count += 5;
- }
- else
- return 0;
- }
- break;
case 'Z':
if (tim_p->tm_isdst >= 0)
{
int size;
TZ_LOCK;
- size = strlen(_tzname[tim_p->tm_isdst > 0]);
+ size = strlen(_tzname[tim_p->tm_isdst]);
for (i = 0; i < size; i++)
{
if (count < maxsize - 1)
- s[count++] = _tzname[tim_p->tm_isdst > 0][i];
+ s[count++] = _tzname[tim_p->tm_isdst][i];
else
{
TZ_UNLOCK;
@@ -805,8 +473,7 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
else
break;
}
- if (maxsize)
- s[count] = '\0';
+ s[count] = '\0';
return count;
}
diff --git a/newlib/libc/time/strptime.c b/newlib/libc/time/strptime.c
index 127772460..1d625d61e 100644
--- a/newlib/libc/time/strptime.c
+++ b/newlib/libc/time/strptime.c
@@ -249,12 +249,8 @@ _DEFUN (strptime, (buf, format, timeptr),
timeptr->tm_year = (ret * 100) - tm_year_base;
buf = s;
break;
- case 'c' : /* %a %b %e %H:%M:%S %Y */
- s = strptime (buf, "%a %b %e %H:%M:%S %Y", timeptr);
- if (s == NULL)
- return NULL;
- buf = s;
- break;
+ case 'c' :
+ abort ();
case 'D' : /* %m/%d/%y */
s = strptime (buf, "%m/%d/%y", timeptr);
if (s == NULL)
@@ -416,8 +412,7 @@ _DEFUN (strptime, (buf, format, timeptr),
buf = s;
break;
case 'Z' :
- /* Unsupported. Just ignore. */
- break;
+ abort ();
case '\0' :
--format;
/* FALLTHROUGH */
diff --git a/newlib/libc/time/time.tex b/newlib/libc/time/time.tex
index 4859404a3..59018575c 100644
--- a/newlib/libc/time/time.tex
+++ b/newlib/libc/time/time.tex
@@ -18,28 +18,28 @@ the following fields:
@table @code
@item tm_sec
-Seconds, between 0 and 60 inclusive (60 allows for leap seconds).
+Seconds.
@item tm_min
-Minutes, between 0 and 59 inclusive.
+Minutes.
@item tm_hour
-Hours, between 0 and 23 inclusive.
+Hours.
@item tm_mday
-Day of the month, between 1 and 31 inclusive.
+Day.
@item tm_mon
-Month, between 0 (January) and 11 (December).
+Month.
@item tm_year
-Year (since 1900), can be negative for earlier years.
+Year (since 1900).
@item tm_wday
-Day of week, between 0 (Sunday) and 6 (Saturday).
+Day of week: the number of days since Sunday.
@item tm_yday
-Number of days elapsed since last January 1, between 0 and 365 inclusive.
+Number of days elapsed since last January 1.
@item tm_isdst
Daylight Savings Time flag: positive means DST in effect, zero means DST
diff --git a/newlib/libc/time/tzlock.c b/newlib/libc/time/tzlock.c
index ccfef7891..f3c289620 100644
--- a/newlib/libc/time/tzlock.c
+++ b/newlib/libc/time/tzlock.c
@@ -1,6 +1,6 @@
/*
FUNCTION
-<<__tz_lock>>, <<__tz_unlock>>---lock time zone global variables
+<<__tz_lock>>, <<__tz_unlock>>--lock time zone global variables
INDEX
__tz_lock
diff --git a/newlib/libc/time/tzset_r.c b/newlib/libc/time/tzset_r.c
index 36b87d7b2..ad8267d1b 100644
--- a/newlib/libc/time/tzset_r.c
+++ b/newlib/libc/time/tzset_r.c
@@ -11,6 +11,18 @@ static char __tzname_std[11];
static char __tzname_dst[11];
static char *prev_tzenv = NULL;
+/* default to GMT */
+char *_tzname[2] = {"GMT" "GMT"};
+int _daylight = 0;
+time_t _timezone = (time_t)0;
+
+int __tzyear = 0;
+
+int __tznorth = 1;
+
+__tzrule_type __tzrule[2] = { {'J', 0, 0, 0, 0, (time_t)0, 0 },
+ {'J', 0, 0, 0, 0, (time_t)0, 0 } };
+
_VOID
_DEFUN (_tzset_r, (reent_ptr),
struct _reent *reent_ptr)
@@ -19,12 +31,11 @@ _DEFUN (_tzset_r, (reent_ptr),
unsigned short hh, mm, ss, m, w, d;
int sign, n;
int i, ch;
- __tzinfo_type *tz = __gettzinfo ();
if ((tzenv = _getenv_r (reent_ptr, "TZ")) == NULL)
{
TZ_LOCK;
- _timezone = 0;
+ _timezone = (time_t)0;
_daylight = 0;
_tzname[0] = "GMT";
_tzname[1] = "GMT";
@@ -75,7 +86,7 @@ _DEFUN (_tzset_r, (reent_ptr),
return;
}
- tz->__tzrule[0].offset = sign * (ss + SECSPERMIN * mm + SECSPERHOUR * hh);
+ __tzrule[0].offset = sign * (ss + SECSPERMIN * mm + SECSPERHOUR * hh);
_tzname[0] = __tzname_std;
tzenv += n;
@@ -105,17 +116,17 @@ _DEFUN (_tzset_r, (reent_ptr),
ss = 0;
if (sscanf (tzenv, "%hu%n:%hu%n:%hu%n", &hh, &n, &mm, &n, &ss, &n) <= 0)
- tz->__tzrule[1].offset = tz->__tzrule[0].offset - 3600;
+ __tzrule[1].offset = __tzrule[0].offset - 3600;
else
- tz->__tzrule[1].offset = sign * (ss + SECSPERMIN * mm + SECSPERHOUR * hh);
+ __tzrule[1].offset = sign * (ss + SECSPERMIN * mm + SECSPERHOUR * hh);
tzenv += n;
+ if (*tzenv == ',')
+ ++tzenv;
+
for (i = 0; i < 2; ++i)
{
- if (*tzenv == ',')
- ++tzenv;
-
if (*tzenv == 'M')
{
if (sscanf (tzenv, "M%hu%n.%hu%n.%hu%n", &m, &n, &w, &n, &d, &n) != 3 ||
@@ -125,10 +136,10 @@ _DEFUN (_tzset_r, (reent_ptr),
return;
}
- tz->__tzrule[i].ch = 'M';
- tz->__tzrule[i].m = m;
- tz->__tzrule[i].n = w;
- tz->__tzrule[i].d = d;
+ __tzrule[i].ch = 'M';
+ __tzrule[i].m = m;
+ __tzrule[i].n = w;
+ __tzrule[i].d = d;
tzenv += n;
}
@@ -150,23 +161,23 @@ _DEFUN (_tzset_r, (reent_ptr),
{
if (i == 0)
{
- tz->__tzrule[0].ch = 'M';
- tz->__tzrule[0].m = 4;
- tz->__tzrule[0].n = 1;
- tz->__tzrule[0].d = 0;
+ __tzrule[0].ch = 'M';
+ __tzrule[0].m = 4;
+ __tzrule[0].n = 1;
+ __tzrule[0].d = 0;
}
else
{
- tz->__tzrule[1].ch = 'M';
- tz->__tzrule[1].m = 10;
- tz->__tzrule[1].n = 5;
- tz->__tzrule[1].d = 0;
+ __tzrule[1].ch = 'M';
+ __tzrule[1].m = 10;
+ __tzrule[1].n = 5;
+ __tzrule[1].d = 0;
}
}
else
{
- tz->__tzrule[i].ch = ch;
- tz->__tzrule[i].d = d;
+ __tzrule[i].ch = ch;
+ __tzrule[i].d = d;
}
tzenv = end;
@@ -176,19 +187,16 @@ _DEFUN (_tzset_r, (reent_ptr),
hh = 2;
mm = 0;
ss = 0;
- n = 0;
if (*tzenv == '/')
- sscanf (tzenv, "/%hu%n:%hu%n:%hu%n", &hh, &n, &mm, &n, &ss, &n);
+ sscanf (tzenv, "%hu%n:%hu%n:%hu%n", &hh, &n, &mm, &n, &ss, &n);
- tz->__tzrule[i].s = ss + SECSPERMIN * mm + SECSPERHOUR * hh;
-
- tzenv += n;
+ __tzrule[i].s = ss + SECSPERMIN * mm + SECSPERHOUR * hh;
}
- __tzcalc_limits (tz->__tzyear);
- _timezone = tz->__tzrule[0].offset;
- _daylight = tz->__tzrule[0].offset != tz->__tzrule[1].offset;
+ __tzcalc_limits (__tzyear);
+ _timezone = (time_t)(__tzrule[0].offset);
+ _daylight = __tzrule[0].offset != __tzrule[1].offset;
TZ_UNLOCK;
}
diff --git a/newlib/libc/time/tzvars.c b/newlib/libc/time/tzvars.c
deleted file mode 100644
index d1f17649b..000000000
--- a/newlib/libc/time/tzvars.c
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <time.h>
-
-/* Global timezone variables. */
-
-/* Default timezone to GMT */
-char *_tzname[2] = {"GMT", "GMT"};
-int _daylight = 0;
-long _timezone = 0;
-
-
diff --git a/newlib/libc/unix/Makefile.am b/newlib/libc/unix/Makefile.am
index 6ecee1397..24d1bfb5c 100644
--- a/newlib/libc/unix/Makefile.am
+++ b/newlib/libc/unix/Makefile.am
@@ -15,8 +15,6 @@ ELIX_2_OBJS = \
ttyname.$(oext)
ELIX_4_OBJS = \
- basename.$(oext) \
- dirname.$(oext) \
getlogin.$(oext) \
getpass.$(oext) \
getpwent.$(oext) \
@@ -31,10 +29,12 @@ else
if ELIX_LEVEL_3
LIB_OBJS = $(ELIX_2_OBJS)
else
+if ELIX_LEVEL_4
LIB_OBJS = $(ELIX_2_OBJS) $(ELIX_4_OBJS)
endif
endif
endif
+endif
libunix_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/unix/Makefile.in b/newlib/libc/unix/Makefile.in
index 7d049ce14..cdc056b90 100644
--- a/newlib/libc/unix/Makefile.in
+++ b/newlib/libc/unix/Makefile.in
@@ -116,12 +116,12 @@ GENERAL_SOURCES = getcwd.c pread.c pwrite.c sigset.c
ELIX_2_OBJS = ttyname.$(oext)
-ELIX_4_OBJS = basename.$(oext) dirname.$(oext) getlogin.$(oext) getpass.$(oext) getpwent.$(oext) getut.$(oext)
+ELIX_4_OBJS = getlogin.$(oext) getpass.$(oext) getpwent.$(oext) getut.$(oext)
@ELIX_LEVEL_1_TRUE@LIB_OBJS =
@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_TRUE@LIB_OBJS = $(ELIX_2_OBJS)
@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_TRUE@LIB_OBJS = $(ELIX_2_OBJS)
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@LIB_OBJS = $(ELIX_2_OBJS) $(ELIX_4_OBJS)
+@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@@ELIX_LEVEL_4_TRUE@LIB_OBJS = $(ELIX_2_OBJS) $(ELIX_4_OBJS)
libunix_la_LDFLAGS = -Xcompiler -nostdlib
diff --git a/newlib/libc/unix/basename.c b/newlib/libc/unix/basename.c
deleted file mode 100644
index 703e532d5..000000000
--- a/newlib/libc/unix/basename.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2005 Shaun Jackman
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-#include <libgen.h>
-#include <string.h>
-
-char*
-_DEFUN (basename, (path),
- char *path)
-{
- char *p;
- if( path == NULL || *path == '\0' )
- return ".";
- p = path + strlen(path) - 1;
- while( *p == '/' ) {
- if( p == path )
- return path;
- *p-- = '\0';
- }
- while( p >= path && *p != '/' )
- p--;
- return p + 1;
-}
diff --git a/newlib/libc/unix/dirname.c b/newlib/libc/unix/dirname.c
deleted file mode 100644
index f026e3056..000000000
--- a/newlib/libc/unix/dirname.c
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2005 Shaun Jackman
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-#include <libgen.h>
-#include <string.h>
-
-char *
-_DEFUN (dirname, (path),
- char *path)
-{
- char *p;
- if( path == NULL || *path == '\0' )
- return ".";
- p = path + strlen(path) - 1;
- while( *p == '/' ) {
- if( p == path )
- return path;
- *p-- = '\0';
- }
- while( p >= path && *p != '/' )
- p--;
- return
- p < path ? "." :
- p == path ? "/" :
- (*p = '\0', path);
-}
diff --git a/newlib/libc/unix/getcwd.c b/newlib/libc/unix/getcwd.c
index f57e14742..826fc789d 100644
--- a/newlib/libc/unix/getcwd.c
+++ b/newlib/libc/unix/getcwd.c
@@ -124,7 +124,7 @@ getcwd (pt, size)
for (first = 1;; first = 0)
{
/* Stat the current level. */
- if (stat (up, &s))
+ if (_stat (up, &s))
goto err;
/* Save current node values. */
@@ -165,7 +165,7 @@ getcwd (pt, size)
*bup = '\0';
/* Open and stat parent directory. */
- if (!(dir = opendir (up)) || fstat (__dirfd (dir), &s))
+ if (!(dir = _opendir (up)) || _fstat (__dirfd (dir), &s))
goto err;
/* Add trailing slash for next directory. */
@@ -182,7 +182,7 @@ getcwd (pt, size)
{
for (;;)
{
- if (!(dp = readdir (dir)))
+ if (!(dp = _readdir (dir)))
goto notfound;
if (dp->d_ino == ino)
break;
@@ -191,7 +191,7 @@ getcwd (pt, size)
else
for (;;)
{
- if (!(dp = readdir (dir)))
+ if (!(dp = _readdir (dir)))
goto notfound;
if (ISDOT (dp))
continue;
@@ -238,7 +238,7 @@ getcwd (pt, size)
*--bpt = '/';
bpt -= strlen (dp->d_name);
bcopy (dp->d_name, bpt, strlen (dp->d_name));
- (void) closedir (dir);
+ (void) _closedir (dir);
/* Truncate any file name. */
*bup = '\0';
diff --git a/newlib/libc/unix/getlogin.c b/newlib/libc/unix/getlogin.c
index ea4ca2983..e043b029f 100644
--- a/newlib/libc/unix/getlogin.c
+++ b/newlib/libc/unix/getlogin.c
@@ -19,24 +19,24 @@ getlogin ()
|| ((tty = ttyname (2)) == 0))
return 0;
- if ((utmp_fd = open (UTMP_FILE, O_RDONLY)) == -1)
+ if ((utmp_fd = _open (UTMP_FILE, O_RDONLY)) == -1)
return 0;
if (!strncmp (tty, "/dev/", 5))
tty += 5;
- while (read (utmp_fd, &utmp_buf, sizeof (utmp_buf)) == sizeof (utmp_buf))
+ while (_read (utmp_fd, &utmp_buf, sizeof (utmp_buf)) == sizeof (utmp_buf))
{
if (!strncmp (tty, utmp_buf.ut_line, sizeof (utmp_buf.ut_line))
&& utmp_buf.ut_type == USER_PROCESS)
{
- close (utmp_fd);
+ _close (utmp_fd);
memset (buf, 0, sizeof (buf));
strncpy (buf, utmp_buf.ut_user, sizeof (utmp_buf.ut_user));
return buf;
}
}
- close (utmp_fd);
+ _close (utmp_fd);
return 0;
}
diff --git a/newlib/libc/unix/getpass.c b/newlib/libc/unix/getpass.c
index 69327ba05..db0e52d61 100644
--- a/newlib/libc/unix/getpass.c
+++ b/newlib/libc/unix/getpass.c
@@ -90,7 +90,7 @@ getpass (prompt)
if (p < buf + _PASSWORD_LEN)
*p++ = ch;
*p = '\0';
- (void) write (fileno (outfp), "\n", 1);
+ (void) _write (fileno (outfp), "\n", 1);
if (echo)
{
term.c_lflag |= ECHO;
diff --git a/newlib/libc/unix/getut.c b/newlib/libc/unix/getut.c
index 554ed3ca1..1e2b75596 100644
--- a/newlib/libc/unix/getut.c
+++ b/newlib/libc/unix/getut.c
@@ -16,15 +16,15 @@ setutent ()
{
if (utmp_fd == -2)
{
- utmp_fd = open (utmp_file, O_RDONLY);
+ utmp_fd = _open (utmp_file, O_RDONLY);
}
- lseek (utmp_fd, 0, SEEK_SET);
+ _lseek (utmp_fd, 0, SEEK_SET);
}
void
endutent ()
{
- close (utmp_fd);
+ _close (utmp_fd);
utmp_fd = -2;
}
@@ -39,7 +39,7 @@ getutent ()
{
if (utmp_fd == -2)
setutent ();
- if (read (utmp_fd, &utmp_data, sizeof (utmp_data)) < sizeof (utmp_data))
+ if (_read (utmp_fd, &utmp_data, sizeof (utmp_data)) < sizeof (utmp_data))
return 0;
return &utmp_data;
}
@@ -47,7 +47,7 @@ getutent ()
struct utmp *
getutid (struct utmp *id)
{
- while (read (utmp_fd, &utmp_data, sizeof (utmp_data)) == sizeof (utmp_data))
+ while (_read (utmp_fd, &utmp_data, sizeof (utmp_data)) == sizeof (utmp_data))
{
switch (id->ut_type)
{
@@ -73,7 +73,7 @@ getutid (struct utmp *id)
struct utmp *
getutline (struct utmp *line)
{
- while (read (utmp_fd, &utmp_data, sizeof (utmp_data)) == sizeof (utmp_data))
+ while (_read (utmp_fd, &utmp_data, sizeof (utmp_data)) == sizeof (utmp_data))
{
if ((utmp_data.ut_type == LOGIN_PROCESS ||
utmp_data.ut_type == USER_PROCESS) &&
diff --git a/newlib/libc/unix/ttyname.c b/newlib/libc/unix/ttyname.c
index 09f12a337..258ba25fe 100644
--- a/newlib/libc/unix/ttyname.c
+++ b/newlib/libc/unix/ttyname.c
@@ -56,19 +56,20 @@ ttyname (fd)
struct dirent *dirp;
DIR *dp;
struct stat dsb;
+ char *rval;
/* Must be a terminal. */
if (tcgetattr (fd, &tty) < 0)
return NULL;
/* Must be a character device. */
- if (fstat (fd, &sb) || !S_ISCHR (sb.st_mode))
+ if (_fstat (fd, &sb) || !S_ISCHR (sb.st_mode))
return NULL;
- if ((dp = opendir (_PATH_DEV)) == NULL)
+ if ((dp = _opendir (_PATH_DEV)) == NULL)
return NULL;
- while ((dirp = readdir (dp)) != NULL)
+ for (rval = NULL; dirp = _readdir (dp);)
{
if (dirp->d_ino != sb.st_ino)
continue;
@@ -76,9 +77,10 @@ ttyname (fd)
if (stat (buf, &dsb) || sb.st_dev != dsb.st_dev ||
sb.st_ino != dsb.st_ino)
continue;
- (void) closedir (dp);
- return buf;
+ (void) _closedir (dp);
+ rval = buf;
+ break;
}
- (void) closedir (dp);
- return NULL;
+ (void) _closedir (dp);
+ return rval;
}
diff --git a/newlib/libm/aclocal.m4 b/newlib/libm/aclocal.m4
index 34da4a63f..451806ce4 100644
--- a/newlib/libm/aclocal.m4
+++ b/newlib/libm/aclocal.m4
@@ -130,7 +130,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -178,9 +178,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libm/common/Makefile.am b/newlib/libm/common/Makefile.am
index d6d7e510d..685219dd0 100644
--- a/newlib/libm/common/Makefile.am
+++ b/newlib/libm/common/Makefile.am
@@ -5,9 +5,8 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
src = s_finite.c s_copysign.c s_modf.c s_scalbn.c \
- s_cbrt.c s_expm1.c s_ilogb.c s_infconst.c \
- s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c \
- s_log1p.c s_nan.c s_nextafter.c \
+ s_cbrt.c s_expm1.c s_ilogb.c \
+ s_infinity.c s_log1p.c s_nan.c s_nextafter.c \
s_rint.c s_logb.c s_matherr.c s_lib_ver.c \
s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c \
s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c \
@@ -15,8 +14,7 @@ src = s_finite.c s_copysign.c s_modf.c s_scalbn.c \
fsrc = sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c \
sf_cbrt.c sf_expm1.c sf_ilogb.c \
- sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c \
- sf_log1p.c sf_nan.c sf_nextafter.c \
+ sf_infinity.c sf_log1p.c sf_nan.c sf_nextafter.c \
sf_rint.c sf_logb.c \
sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_lrint.c \
sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c \
@@ -37,7 +35,7 @@ endif # USE_LIBTOOL
include $(srcdir)/../../Makefile.shared
chobj = scbrt.def scopysign.def sexpm1.def silogb.def \
- sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def \
+ sinfinity.def slog1p.def smatherr.def smodf.def \
snan.def snextafter.def sscalbn.def
SUFFIXES = .def
@@ -51,6 +49,7 @@ CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str
TARGETDOC = ../tmp.texi
doc: $(chobj)
+ cat $(srcdir)/common.tex >> $(TARGETDOC)
CLEANFILES = $(chobj) *.ref
@@ -93,10 +92,6 @@ sinfinity.def: s_infinity.c
$(CHEW) < $(srcdir)/s_infinity.c >$@ 2>/dev/null
touch stmp-def
-sisnan.def: s_isnan.c
- $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
- touch stmp-def
-
slog1p.def: s_log1p.c
$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null
touch stmp-def
diff --git a/newlib/libm/common/Makefile.in b/newlib/libm/common/Makefile.in
index 4e9db8b25..81c78f50a 100644
--- a/newlib/libm/common/Makefile.in
+++ b/newlib/libm/common/Makefile.in
@@ -98,10 +98,10 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-src = s_finite.c s_copysign.c s_modf.c s_scalbn.c s_cbrt.c s_expm1.c s_ilogb.c s_infconst.c s_infinity.c s_isinf.c s_isinfd.c s_isnan.c s_isnand.c s_log1p.c s_nan.c s_nextafter.c s_rint.c s_logb.c s_matherr.c s_lib_ver.c s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c s_signbit.c s_trunc.c
+src = s_finite.c s_copysign.c s_modf.c s_scalbn.c s_cbrt.c s_expm1.c s_ilogb.c s_infinity.c s_log1p.c s_nan.c s_nextafter.c s_rint.c s_logb.c s_matherr.c s_lib_ver.c s_fdim.c s_fma.c s_fmax.c s_fmin.c s_fpclassify.c s_lrint.c s_lround.c s_nearbyint.c s_remquo.c s_round.c s_scalbln.c s_signbit.c s_trunc.c
-fsrc = sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c sf_cbrt.c sf_expm1.c sf_ilogb.c sf_infinity.c sf_isinf.c sf_isinff.c sf_isnan.c sf_isnanf.c sf_log1p.c sf_nan.c sf_nextafter.c sf_rint.c sf_logb.c sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_lrint.c sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c sf_scalbln.c sf_trunc.c
+fsrc = sf_finite.c sf_copysign.c sf_modf.c sf_scalbn.c sf_cbrt.c sf_expm1.c sf_ilogb.c sf_infinity.c sf_log1p.c sf_nan.c sf_nextafter.c sf_rint.c sf_logb.c sf_fdim.c sf_fma.c sf_fmax.c sf_fmin.c sf_lrint.c sf_lround.c sf_nearbyint.c sf_remquo.c sf_round.c sf_scalbln.c sf_trunc.c
libcommon_la_LDFLAGS = -Xcompiler -nostdlib
@@ -113,7 +113,7 @@ libcommon_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a
@USE_LIBTOOL_FALSE@lib_a_SOURCES = $(src) $(fsrc)
-chobj = scbrt.def scopysign.def sexpm1.def silogb.def sinfinity.def sisnan.def slog1p.def smatherr.def smodf.def snan.def snextafter.def sscalbn.def
+chobj = scbrt.def scopysign.def sexpm1.def silogb.def sinfinity.def slog1p.def smatherr.def smodf.def snan.def snextafter.def sscalbn.def
SUFFIXES = .def
@@ -136,47 +136,41 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@s_copysign.$(OBJEXT) s_modf.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_scalbn.$(OBJEXT) s_cbrt.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_expm1.$(OBJEXT) s_ilogb.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_infconst.$(OBJEXT) s_infinity.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_isinf.$(OBJEXT) s_isinfd.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_isnan.$(OBJEXT) s_isnand.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_log1p.$(OBJEXT) s_nan.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_nextafter.$(OBJEXT) s_rint.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_logb.$(OBJEXT) s_matherr.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_lib_ver.$(OBJEXT) s_fdim.$(OBJEXT) s_fma.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_fmax.$(OBJEXT) s_fmin.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_fpclassify.$(OBJEXT) s_lrint.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_lround.$(OBJEXT) s_nearbyint.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_remquo.$(OBJEXT) s_round.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_scalbln.$(OBJEXT) s_signbit.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_trunc.$(OBJEXT) sf_finite.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_copysign.$(OBJEXT) sf_modf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_scalbn.$(OBJEXT) sf_cbrt.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_expm1.$(OBJEXT) sf_ilogb.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_infinity.$(OBJEXT) sf_isinf.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_isinff.$(OBJEXT) sf_isnan.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_isnanf.$(OBJEXT) sf_log1p.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_nan.$(OBJEXT) sf_nextafter.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_rint.$(OBJEXT) sf_logb.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_fdim.$(OBJEXT) sf_fma.$(OBJEXT) sf_fmax.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_fmin.$(OBJEXT) sf_lrint.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_lround.$(OBJEXT) sf_nearbyint.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_remquo.$(OBJEXT) sf_round.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_scalbln.$(OBJEXT) sf_trunc.$(OBJEXT)
+@USE_LIBTOOL_FALSE@s_infinity.$(OBJEXT) s_log1p.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_nan.$(OBJEXT) s_nextafter.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_rint.$(OBJEXT) s_logb.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_matherr.$(OBJEXT) s_lib_ver.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_fdim.$(OBJEXT) s_fma.$(OBJEXT) s_fmax.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_fmin.$(OBJEXT) s_fpclassify.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_lrint.$(OBJEXT) s_lround.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_nearbyint.$(OBJEXT) s_remquo.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_round.$(OBJEXT) s_scalbln.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_signbit.$(OBJEXT) s_trunc.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_finite.$(OBJEXT) sf_copysign.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_modf.$(OBJEXT) sf_scalbn.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_cbrt.$(OBJEXT) sf_expm1.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_ilogb.$(OBJEXT) sf_infinity.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_log1p.$(OBJEXT) sf_nan.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_nextafter.$(OBJEXT) sf_rint.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_logb.$(OBJEXT) sf_fdim.$(OBJEXT) sf_fma.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_fmax.$(OBJEXT) sf_fmin.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_lrint.$(OBJEXT) sf_lround.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_nearbyint.$(OBJEXT) sf_remquo.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_round.$(OBJEXT) sf_scalbln.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_trunc.$(OBJEXT)
LTLIBRARIES = $(noinst_LTLIBRARIES)
libcommon_la_LIBADD =
@USE_LIBTOOL_TRUE@libcommon_la_OBJECTS = s_finite.lo s_copysign.lo \
@USE_LIBTOOL_TRUE@s_modf.lo s_scalbn.lo s_cbrt.lo s_expm1.lo s_ilogb.lo \
-@USE_LIBTOOL_TRUE@s_infconst.lo s_infinity.lo s_isinf.lo s_isinfd.lo \
-@USE_LIBTOOL_TRUE@s_isnan.lo s_isnand.lo s_log1p.lo s_nan.lo \
-@USE_LIBTOOL_TRUE@s_nextafter.lo s_rint.lo s_logb.lo s_matherr.lo \
-@USE_LIBTOOL_TRUE@s_lib_ver.lo s_fdim.lo s_fma.lo s_fmax.lo s_fmin.lo \
+@USE_LIBTOOL_TRUE@s_infinity.lo s_log1p.lo s_nan.lo s_nextafter.lo \
+@USE_LIBTOOL_TRUE@s_rint.lo s_logb.lo s_matherr.lo s_lib_ver.lo \
+@USE_LIBTOOL_TRUE@s_fdim.lo s_fma.lo s_fmax.lo s_fmin.lo \
@USE_LIBTOOL_TRUE@s_fpclassify.lo s_lrint.lo s_lround.lo s_nearbyint.lo \
@USE_LIBTOOL_TRUE@s_remquo.lo s_round.lo s_scalbln.lo s_signbit.lo \
@USE_LIBTOOL_TRUE@s_trunc.lo sf_finite.lo sf_copysign.lo sf_modf.lo \
@USE_LIBTOOL_TRUE@sf_scalbn.lo sf_cbrt.lo sf_expm1.lo sf_ilogb.lo \
-@USE_LIBTOOL_TRUE@sf_infinity.lo sf_isinf.lo sf_isinff.lo sf_isnan.lo \
-@USE_LIBTOOL_TRUE@sf_isnanf.lo sf_log1p.lo sf_nan.lo sf_nextafter.lo \
+@USE_LIBTOOL_TRUE@sf_infinity.lo sf_log1p.lo sf_nan.lo sf_nextafter.lo \
@USE_LIBTOOL_TRUE@sf_rint.lo sf_logb.lo sf_fdim.lo sf_fma.lo sf_fmax.lo \
@USE_LIBTOOL_TRUE@sf_fmin.lo sf_lrint.lo sf_lround.lo sf_nearbyint.lo \
@USE_LIBTOOL_TRUE@sf_remquo.lo sf_round.lo sf_scalbln.lo sf_trunc.lo
@@ -416,6 +410,7 @@ objectlist.awk.in: $(noinst_LTLIBRARIES)
touch stmp-def
doc: $(chobj)
+ cat $(srcdir)/common.tex >> $(TARGETDOC)
# Texinfo does not appear to support underscores in file names, so we
# name the .def files without underscores.
@@ -456,10 +451,6 @@ sinfinity.def: s_infinity.c
$(CHEW) < $(srcdir)/s_infinity.c >$@ 2>/dev/null
touch stmp-def
-sisnan.def: s_isnan.c
- $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
- touch stmp-def
-
slog1p.def: s_log1p.c
$(CHEW) < $(srcdir)/s_log1p.c >$@ 2>/dev/null
touch stmp-def
diff --git a/newlib/libm/common/common.tex b/newlib/libm/common/common.tex
new file mode 100644
index 000000000..0e8a9863f
--- /dev/null
+++ b/newlib/libm/common/common.tex
@@ -0,0 +1,12 @@
+@page
+@include common/scbrt.def
+@include common/scopysign.def
+@include common/sexpm1.def
+@include common/silogb.def
+@include common/sinfinity.def
+@include common/slog1p.def
+@include common/smatherr.def
+@include common/smodf.def
+@include common/snan.def
+@include common/snextafter.def
+@include common/sscalbn.def
diff --git a/newlib/libm/common/fdlibm.h b/newlib/libm/common/fdlibm.h
index 7a0f28db4..2b1bb79c0 100644
--- a/newlib/libm/common/fdlibm.h
+++ b/newlib/libm/common/fdlibm.h
@@ -71,13 +71,13 @@
#define FLT_UWORD_IS_FINITE(x) ((x)<0x7f800000L)
#define FLT_UWORD_IS_NAN(x) ((x)>0x7f800000L)
#define FLT_UWORD_IS_INFINITE(x) ((x)==0x7f800000L)
-#define FLT_UWORD_MAX 0x7f7fffffL
+#define FLT_UWORD_MAX 0x7f7fffff
#define FLT_UWORD_EXP_MAX 0x43000000
#define FLT_UWORD_LOG_MAX 0x42b17217
#define FLT_UWORD_LOG_2MAX 0x42b2d4fc
#define HUGE ((float)3.40282346638528860e+38)
#endif
-#define FLT_UWORD_HALF_MAX (FLT_UWORD_MAX-(1L<<23))
+#define FLT_UWORD_HALF_MAX (FLT_UWORD_MAX-(1<<23))
#define FLT_LARGEST_EXP (FLT_UWORD_MAX>>23)
/* Many routines check for zero and subnormal numbers. Such things depend
diff --git a/newlib/libm/common/s_fmax.c b/newlib/libm/common/s_fmax.c
index 53e1559e3..2de04efab 100644
--- a/newlib/libm/common/s_fmax.c
+++ b/newlib/libm/common/s_fmax.c
@@ -17,9 +17,9 @@
#endif
{
if (__fpclassifyd(x) == FP_NAN)
- return y;
- if (__fpclassifyd(y) == FP_NAN)
return x;
+ if (__fpclassifyd(y) == FP_NAN)
+ return y;
return x > y ? x : y;
}
diff --git a/newlib/libm/common/s_fmin.c b/newlib/libm/common/s_fmin.c
index 65e0b1c6d..f9eb51cdd 100644
--- a/newlib/libm/common/s_fmin.c
+++ b/newlib/libm/common/s_fmin.c
@@ -17,9 +17,9 @@
#endif
{
if (__fpclassifyd(x) == FP_NAN)
- return y;
- if (__fpclassifyd(y) == FP_NAN)
return x;
+ if (__fpclassifyd(y) == FP_NAN)
+ return y;
return x < y ? x : y;
}
diff --git a/newlib/libm/common/s_fpclassify.c b/newlib/libm/common/s_fpclassify.c
index 111d70923..2820f0373 100644
--- a/newlib/libm/common/s_fpclassify.c
+++ b/newlib/libm/common/s_fpclassify.c
@@ -9,7 +9,7 @@
int
__fpclassifyf (float x)
{
- __uint32_t w;
+ unsigned int w;
GET_FLOAT_WORD(w,x);
@@ -30,7 +30,7 @@ __fpclassifyf (float x)
int
__fpclassifyd (double x)
{
- __uint32_t msw, lsw;
+ unsigned int msw, lsw;
EXTRACT_WORDS(msw,lsw,x);
diff --git a/newlib/libm/common/s_infconst.c b/newlib/libm/common/s_infconst.c
deleted file mode 100644
index 9447b97cc..000000000
--- a/newlib/libm/common/s_infconst.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Infinity as a constant value. This is used for HUGE_VAL.
- * Added by Cygnus Support.
- */
-
-#include <float.h>
-#include "fdlibm.h"
-
-/* Float version of infinity. */
-const union __fmath __infinityf[1] = {{{0x7f800000}}};
-
-/* Double version of infinity. */
-#ifndef _DOUBLE_IS_32BITS
- #ifdef __IEEE_BIG_ENDIAN
- const union __dmath __infinity[1] = {{{0x7ff00000, 0}}};
- #else
- const union __dmath __infinity[1] = {{{0, 0x7ff00000}}};
- #endif
-#else /* defined (_DOUBLE_IS_32BITS) */
- const union __dmath __infinity[1] = {{{0x7f800000, 0}}};
-#endif /* defined (_DOUBLE_IS_32BITS) */
-
-/* Long double version of infinity. */
-#ifdef __IEEE_BIG_ENDIAN
- #if LDBL_MANT_DIG == 24
- const union __ldmath __infinityld[1] = {{{0x7f800000, 0, 0, 0}}};
- #elif LDBL_MANT_DIG == 53
- const union __ldmath __infinityld[1] = {{{0x7ff00000, 0, 0, 0}}};
- #else
- const union __ldmath __infinityld[1] = {{{0x7fff0000, 0, 0, 0}}};
- #endif /* LDBL_MANT_DIG size */
-#else /* __IEEE_LITTLE_ENDIAN */
- #if LDBL_MANT_DIG == 24
- const union __ldmath __infinityld[1] = {{{0x7f800000, 0, 0, 0}}};
- #elif LDBL_MANT_DIG == 53
- const union __ldmath __infinityld[1] = {{{0, 0x7ff00000, 0, 0}}};
- #else
- const union __ldmath __infinityld[1] = {{{0, 0x80000000, 0x00007fff, 0}}};
- #endif /* LDBL_MANT_DIG size */
-#endif /* __IEEE_LITTLE_ENDIAN */
-
diff --git a/newlib/libm/common/s_isinf.c b/newlib/libm/common/s_isinf.c
deleted file mode 100644
index db8e8f82b..000000000
--- a/newlib/libm/common/s_isinf.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * isinf(x) returns 1 if x is infinity, else 0;
- * no branching!
- *
- * isinf is a <math.h> macro in the C99 standard. It was previously
- * implemented as a function by newlib and is declared as such in
- * <ieeefp.h>. Newlib supplies it here as a function if the user
- * chooses to use <ieeefp.h> or needs to link older code compiled with the
- * previous <math.h> declaration.
- */
-
-#include "fdlibm.h"
-#include <ieeefp.h>
-
-#ifndef _DOUBLE_IS_32BITS
-
-int
-_DEFUN (isinf, (x),
- double x)
-{
- __int32_t hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- hx &= 0x7fffffff;
- hx |= (__uint32_t)(lx|(-lx))>>31;
- hx = 0x7ff00000 - hx;
- return 1 - (int)((__uint32_t)(hx|(-hx))>>31);
-}
-
-#endif /* _DOUBLE_IS_32BITS */
diff --git a/newlib/libm/common/s_isnan.c b/newlib/libm/common/s_isnan.c
deleted file mode 100644
index b0c40369a..000000000
--- a/newlib/libm/common/s_isnan.c
+++ /dev/null
@@ -1,135 +0,0 @@
-
-/* @(#)s_isnan.c 5.1 93/09/24 */
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/*
-FUNCTION
- <<isnan>>, <<isnanf>>, <<isinf>>, <<isinff>>, <<finite>>, <<finitef>>---test for exceptional numbers
-
-INDEX
- isnan
-INDEX
- isinf
-INDEX
- finite
-
-INDEX
- isnanf
-INDEX
- isinff
-INDEX
- finitef
-
-ANSI_SYNOPSIS
- #include <ieeefp.h>
- int isnan(double <[arg]>);
- int isinf(double <[arg]>);
- int finite(double <[arg]>);
- int isnanf(float <[arg]>);
- int isinff(float <[arg]>);
- int finitef(float <[arg]>);
-
-TRAD_SYNOPSIS
- #include <ieeefp.h>
- int isnan(<[arg]>)
- double <[arg]>;
- int isinf(<[arg]>)
- double <[arg]>;
- int finite(<[arg]>);
- double <[arg]>;
- int isnanf(<[arg]>);
- float <[arg]>;
- int isinff(<[arg]>);
- float <[arg]>;
- int finitef(<[arg]>);
- float <[arg]>;
-
-
-DESCRIPTION
- These functions provide information on the floating-point
- argument supplied.
-
- There are five major number formats:
- o+
- o zero
- A number which contains all zero bits.
- o subnormal
- A number with a zero exponent but a nonzero fraction.
- o normal
- A number with an exponent and a fraction.
- o infinity
- A number with an all 1's exponent and a zero fraction.
- o NAN
- A number with an all 1's exponent and a nonzero fraction.
-
- o-
-
- <<isnan>> returns 1 if the argument is a nan. <<isinf>>
- returns 1 if the argument is infinity. <<finite>> returns 1 if the
- argument is zero, subnormal or normal.
-
- The <<isnanf>>, <<isinff>> and <<finitef>> functions perform the same
- operations as their <<isnan>>, <<isinf>> and <<finite>>
- counterparts, but on single-precision floating-point numbers.
-
- It should be noted that the C99 standard dictates that <<isnan>>
- and <<isinf>> are macros that operate on multiple types of
- floating-point. The SUSv2 standard declares <<isnan>> as
- a function taking double. Newlib has decided to declare
- them both as macros in math.h and as functions in ieeefp.h.
-
-QUICKREF
- isnan - pure
-QUICKREF
- isinf - pure
-QUICKREF
- finite - pure
-QUICKREF
- isnan - pure
-QUICKREF
- isinf - pure
-QUICKREF
- finite - pure
-*/
-
-/*
- * isnan(x) returns 1 is x is nan, else 0;
- * no branching!
- *
- * The C99 standard dictates that isnan is a macro taking
- * multiple floating-point types while the SUSv2 standard
- * notes it is a function taking a double argument. Newlib
- * has chosen to implement it as a macro in <math.h> and
- * declare it as a function in <ieeefp.h>.
- */
-
-#include "fdlibm.h"
-#include <ieeefp.h>
-
-#ifndef _DOUBLE_IS_32BITS
-
-#ifdef __STDC__
- int isnan(double x)
-#else
- int isnan(x)
- double x;
-#endif
-{
- __int32_t hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- hx &= 0x7fffffff;
- hx |= (__uint32_t)(lx|(-lx))>>31;
- hx = 0x7ff00000 - hx;
- return (int)(((__uint32_t)(hx))>>31);
-}
-
-#endif /* _DOUBLE_IS_32BITS */
diff --git a/newlib/libm/common/s_lrint.c b/newlib/libm/common/s_lrint.c
index 7d3b561b1..541bf2c7e 100644
--- a/newlib/libm/common/s_lrint.c
+++ b/newlib/libm/common/s_lrint.c
@@ -54,11 +54,7 @@ TWO52[2]={
long int result;
EXTRACT_WORDS(i0,i1,x);
-
- /* Extract sign bit. */
sx = (i0>>31)&1;
-
- /* Extract exponent field. */
j0 = ((i0 & 0x7ff00000) >> 20) - 1023;
if(j0 < 20)
@@ -70,21 +66,16 @@ TWO52[2]={
w = TWO52[sx] + x;
t = w - TWO52[sx];
GET_HIGH_WORD(i0, t);
- /* Detect the all-zeros representation of plus and
- minus zero, which fails the calculation below. */
- if ((i0 & ~(1 << 31)) == 0)
- return 0;
j0 = ((i0 & 0x7ff00000) >> 20) - 1023;
i0 &= 0x000fffff;
i0 |= 0x00100000;
result = i0 >> (20 - j0);
}
}
- else if (j0 < (int)(8 * sizeof (long int)) - 1)
+ else if (j0 < (8 * sizeof (long int)) - 1)
{
if (j0 >= 52)
- result = ((long int) ((i0 & 0x000fffff) | 0x0010000) << (j0 - 20)) |
- (i1 << (j0 - 52));
+ result = ((long int) i0 << (j0 - 20)) | (i1 << (j0 - 52));
else
{
w = TWO52[sx] + x;
diff --git a/newlib/libm/common/s_modf.c b/newlib/libm/common/s_modf.c
index 2e9bfb125..01151397d 100644
--- a/newlib/libm/common/s_modf.c
+++ b/newlib/libm/common/s_modf.c
@@ -41,7 +41,7 @@ DESCRIPTION
storing the integer part in <<*<[ipart]>>>. No rounding
whatsoever is done; the sum of the integer and fractional
parts is guaranteed to be exactly equal to <[val]>. That
- is, if <[realpart]> = modf(<[val]>, &<[intpart]>); then
+ is, if . <[realpart]> = modf(<[val]>, &<[intpart]>); then
`<<<[realpart]>+<[intpart]>>>' is the same as <[val]>.
<<modff>> is identical, save that it takes and returns
<<float>> rather than <<double>> values.
diff --git a/newlib/libm/common/sf_fmax.c b/newlib/libm/common/sf_fmax.c
index ac1bf46f5..292b99edf 100644
--- a/newlib/libm/common/sf_fmax.c
+++ b/newlib/libm/common/sf_fmax.c
@@ -15,9 +15,9 @@
#endif
{
if (__fpclassifyf(x) == FP_NAN)
- return y;
- if (__fpclassifyf(y) == FP_NAN)
return x;
+ if (__fpclassifyf(y) == FP_NAN)
+ return y;
return x > y ? x : y;
}
diff --git a/newlib/libm/common/sf_fmin.c b/newlib/libm/common/sf_fmin.c
index f0e344455..4ef3510aa 100644
--- a/newlib/libm/common/sf_fmin.c
+++ b/newlib/libm/common/sf_fmin.c
@@ -15,9 +15,9 @@
#endif
{
if (__fpclassifyf(x) == FP_NAN)
- return y;
- if (__fpclassifyf(y) == FP_NAN)
return x;
+ if (__fpclassifyf(y) == FP_NAN)
+ return y;
return x < y ? x : y;
}
diff --git a/newlib/libm/common/sf_isinff.c b/newlib/libm/common/sf_isinff.c
deleted file mode 100644
index 9d0e742e5..000000000
--- a/newlib/libm/common/sf_isinff.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * __isinff(x) returns 1 if x is +-infinity, else 0;
- * Added by Cygnus Support.
- */
-
-#include "fdlibm.h"
-
-int
-_DEFUN (__isinff, (x),
- float x)
-{
- __int32_t ix;
- GET_FLOAT_WORD(ix,x);
- ix &= 0x7fffffff;
- return FLT_UWORD_IS_INFINITE(ix);
-}
-
-#ifdef _DOUBLE_IS_32BITS
-
-int
-_DEFUN (__isinfd, (x),
- double x)
-{
- return __isinff((float) x);
-}
-
-#endif /* defined(_DOUBLE_IS_32BITS) */
diff --git a/newlib/libm/common/sf_isnanf.c b/newlib/libm/common/sf_isnanf.c
deleted file mode 100644
index 0b0d9bbaf..000000000
--- a/newlib/libm/common/sf_isnanf.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/*
- * __isnanf(x) returns 1 is x is nan, else 0;
- */
-
-#include "fdlibm.h"
-
-int
-_DEFUN (__isnanf, (x),
- float x)
-{
- __int32_t ix;
- GET_FLOAT_WORD(ix,x);
- ix &= 0x7fffffff;
- return FLT_UWORD_IS_NAN(ix);
-}
-
-#ifdef _DOUBLE_IS_32BITS
-
-int
-_DEFUN (__isnand, (x),
- double x)
-{
- return __isnanf((float) x);
-}
-
-#endif /* defined(_DOUBLE_IS_32BITS) */
diff --git a/newlib/libm/common/sf_lrint.c b/newlib/libm/common/sf_lrint.c
index 3165705d1..a58508f02 100644
--- a/newlib/libm/common/sf_lrint.c
+++ b/newlib/libm/common/sf_lrint.c
@@ -28,10 +28,6 @@ static const float
#else
static float
#endif
-/* Adding a float, x, to 2^23 will cause the result to be rounded based on
- the fractional part of x, according to the implementation's current rounding
- mode. 2^23 is the smallest float that can be represented using all 23 significant
- digits. */
TWO23[2]={
8.3886080000e+06, /* 0x4b000000 */
-8.3886080000e+06, /* 0xcb000000 */
@@ -58,21 +54,17 @@ TWO23[2]={
/* Extract exponent field. */
j0 = ((i0 & 0x7f800000) >> 23) - 127;
- if (j0 < (int)(sizeof (long int) * 8) - 1)
+ if (j0 < (sizeof (long int) * 8) - 1)
{
if (j0 < -1)
return 0;
else if (j0 >= 23)
- result = (long int) ((i0 & 0x7fffff) | 0x800000) << (j0 - 23);
+ result = (long int) i0 << (j0 - 23);
else
{
w = TWO23[sx] + x;
t = w - TWO23[sx];
GET_FLOAT_WORD (i0, t);
- /* Detect the all-zeros representation of plus and
- minus zero, which fails the calculation below. */
- if ((i0 & ~(1 << 31)) == 0)
- return 0;
j0 = ((i0 >> 23) & 0xff) - 0x7f;
i0 &= 0x7fffff;
i0 |= 0x800000;
diff --git a/newlib/libm/common/sf_round.c b/newlib/libm/common/sf_round.c
index 6c9087db0..75a72fe75 100644
--- a/newlib/libm/common/sf_round.c
+++ b/newlib/libm/common/sf_round.c
@@ -19,7 +19,7 @@
#endif
{
int signbit;
- __uint32_t w;
+ int w;
/* Most significant word, least significant word. */
int exponent_less_127;
@@ -29,7 +29,7 @@
signbit = w & 0x80000000;
/* Extract exponent field. */
- exponent_less_127 = (int)((w & 0x7f800000) >> 23) - 127;
+ exponent_less_127 = ((w & 0x7f800000) >> 23) - 127;
if (exponent_less_127 < 23)
{
diff --git a/newlib/libm/configure b/newlib/libm/configure
index 075165c8d..a7090a84b 100755
--- a/newlib/libm/configure
+++ b/newlib/libm/configure
@@ -1033,7 +1033,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1455,11 +1455,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1463: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1460: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1493,7 +1490,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1497: checking for executable suffix" >&5
+echo "configure:1494: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1503,7 +1500,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1507: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1504: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1679,7 +1676,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1683: checking for $ac_word" >&5
+echo "configure:1680: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1709,7 +1706,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1713: checking for $ac_word" >&5
+echo "configure:1710: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1760,7 +1757,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1764: checking for $ac_word" >&5
+echo "configure:1761: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1792,7 +1789,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1796: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1793: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1803,12 +1800,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1807 "configure"
+#line 1804 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1812: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1809: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1834,12 +1831,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1838: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1835: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1843: checking whether we are using GNU C" >&5
+echo "configure:1840: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1848,7 +1845,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1852: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1849: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1867,7 +1864,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1871: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1868: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1910,7 +1907,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1914: checking for ld used by GCC" >&5
+echo "configure:1911: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1940,10 +1937,10 @@ echo "configure:1914: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1944: checking for GNU ld" >&5
+echo "configure:1941: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1947: checking for non-GNU ld" >&5
+echo "configure:1944: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1978,7 +1975,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1982: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1979: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1995,7 +1992,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1999: checking for $LD option to reload object files" >&5
+echo "configure:1996: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2007,7 +2004,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:2011: checking for BSD-compatible nm" >&5
+echo "configure:2008: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2045,7 +2042,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2049: checking whether ln -s works" >&5
+echo "configure:2046: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2066,7 +2063,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2070: checking how to recognise dependant libraries" >&5
+echo "configure:2067: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2239,13 +2236,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2243: checking for object suffix" >&5
+echo "configure:2240: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2249: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2269,7 +2266,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2273: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2270: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2331,7 +2328,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2335: checking for file" >&5
+echo "configure:2332: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2402,7 +2399,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2406: checking for $ac_word" >&5
+echo "configure:2403: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2434,7 +2431,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2438: checking for $ac_word" >&5
+echo "configure:2435: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2469,7 +2466,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2473: checking for $ac_word" >&5
+echo "configure:2470: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2501,7 +2498,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2505: checking for $ac_word" >&5
+echo "configure:2502: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2568,8 +2565,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2572 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2573: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2569 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2570: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2588,7 +2585,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2592: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2589: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2606,7 +2603,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2610: checking whether the C compiler needs -belf" >&5
+echo "configure:2607: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2619,14 +2616,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2623 "configure"
+#line 2620 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2627: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2656,7 +2653,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2660: checking for $ac_word" >&5
+echo "configure:2657: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2688,7 +2685,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2692: checking for $ac_word" >&5
+echo "configure:2689: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2723,7 +2720,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2727: checking for $ac_word" >&5
+echo "configure:2724: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2755,7 +2752,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2759: checking for $ac_word" >&5
+echo "configure:2756: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2790,7 +2787,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2794: checking for $ac_word" >&5
+echo "configure:2791: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2822,7 +2819,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2826: checking for $ac_word" >&5
+echo "configure:2823: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2858,12 +2855,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2862: checking if libtool should supply DllMain function" >&5
+echo "configure:2859: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2867 "configure"
+#line 2864 "configure"
#include "confdefs.h"
int main() {
@@ -2871,7 +2868,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2875: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2872: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2892,19 +2889,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2896: checking how to link DLLs" >&5
+echo "configure:2893: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2901 "configure"
+#line 2898 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2908: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2905: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libm/libm.texinfo b/newlib/libm/libm.texinfo
index 309f39f30..82b8b8b8e 100644
--- a/newlib/libm/libm.texinfo
+++ b/newlib/libm/libm.texinfo
@@ -61,8 +61,8 @@ into another language, under the above conditions for modified versions.
@titlepage
@title The Red Hat newlib C Math Library
@sp 1
-@subtitle @code{libm} 1.14.0
-@subtitle December 2005
+@subtitle @code{libm} 1.12.0
+@subtitle January 2004
@author {Steve Chamberlain}
@author {Roland Pesch}
@author {Red Hat Support}
diff --git a/newlib/libm/machine/aclocal.m4 b/newlib/libm/machine/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libm/machine/aclocal.m4
+++ b/newlib/libm/machine/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libm/machine/configure b/newlib/libm/machine/configure
index 09ca607a9..aae61be39 100755
--- a/newlib/libm/machine/configure
+++ b/newlib/libm/machine/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libm/machine/i386/aclocal.m4 b/newlib/libm/machine/i386/aclocal.m4
index 35519acf9..97658e2e6 100644
--- a/newlib/libm/machine/i386/aclocal.m4
+++ b/newlib/libm/machine/i386/aclocal.m4
@@ -117,7 +117,7 @@ AC_SUBST(newlib_basedir)
AC_CANONICAL_SYSTEM
-AM_INIT_AUTOMAKE(newlib, 1.14.0)
+AM_INIT_AUTOMAKE(newlib, 1.12.0)
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
@@ -165,9 +165,6 @@ AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_PROG_INSTALL
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
AM_MAINTAINER_MODE
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
diff --git a/newlib/libm/machine/i386/configure b/newlib/libm/machine/i386/configure
index 6a01f4342..f4bc70b9a 100755
--- a/newlib/libm/machine/i386/configure
+++ b/newlib/libm/machine/i386/configure
@@ -1009,7 +1009,7 @@ test "$host_alias" != "$target_alias" &&
PACKAGE=newlib
-VERSION=1.14.0
+VERSION=1.12.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -1431,11 +1431,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Hack to ensure that INSTALL won't be set to "../" with autoconf 2.13. */
-ac_given_INSTALL=$INSTALL
-
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:1439: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:1436: checking whether to enable maintainer-specific portions of Makefiles" >&5
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
if test "${enable_maintainer_mode+set}" = set; then
enableval="$enable_maintainer_mode"
@@ -1469,7 +1466,7 @@ if false; then
echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:1473: checking for executable suffix" >&5
+echo "configure:1470: checking for executable suffix" >&5
if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1479,7 +1476,7 @@ else
rm -f conftest*
echo 'int main () { return 0; }' > conftest.$ac_ext
ac_cv_exeext=
- if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ if { (eval echo configure:1480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
@@ -1655,7 +1652,7 @@ fi
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1659: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1685,7 +1682,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1689: checking for $ac_word" >&5
+echo "configure:1686: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1736,7 +1733,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1740: checking for $ac_word" >&5
+echo "configure:1737: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1768,7 +1765,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1772: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1769: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1779,12 +1776,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 1783 "configure"
+#line 1780 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:1788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -1810,12 +1807,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1814: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1811: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:1819: checking whether we are using GNU C" >&5
+echo "configure:1816: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1824,7 +1821,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -1843,7 +1840,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1847: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1844: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1886,7 +1883,7 @@ ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1890: checking for ld used by GCC" >&5
+echo "configure:1887: checking for ld used by GCC" >&5
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -1916,10 +1913,10 @@ echo "configure:1890: checking for ld used by GCC" >&5
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1920: checking for GNU ld" >&5
+echo "configure:1917: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1923: checking for non-GNU ld" >&5
+echo "configure:1920: checking for non-GNU ld" >&5
fi
if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1954,7 +1951,7 @@ else
fi
test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1958: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:1955: checking if the linker ($LD) is GNU ld" >&5
if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1971,7 +1968,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-echo "configure:1975: checking for $LD option to reload object files" >&5
+echo "configure:1972: checking for $LD option to reload object files" >&5
if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1983,7 +1980,7 @@ reload_flag=$lt_cv_ld_reload_flag
test -n "$reload_flag" && reload_flag=" $reload_flag"
echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1987: checking for BSD-compatible nm" >&5
+echo "configure:1984: checking for BSD-compatible nm" >&5
if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2021,7 +2018,7 @@ NM="$lt_cv_path_NM"
echo "$ac_t""$NM" 1>&6
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:2025: checking whether ln -s works" >&5
+echo "configure:2022: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2042,7 +2039,7 @@ else
fi
echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6
-echo "configure:2046: checking how to recognise dependant libraries" >&5
+echo "configure:2043: checking how to recognise dependant libraries" >&5
if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2215,13 +2212,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:2219: checking for object suffix" >&5
+echo "configure:2216: checking for object suffix" >&5
if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
rm -f conftest*
echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:2225: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2222: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
for ac_file in conftest.*; do
case $ac_file in
*.c) ;;
@@ -2245,7 +2242,7 @@ case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-echo "configure:2249: checking for ${ac_tool_prefix}file" >&5
+echo "configure:2246: checking for ${ac_tool_prefix}file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2307,7 +2304,7 @@ fi
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
echo $ac_n "checking for file""... $ac_c" 1>&6
-echo "configure:2311: checking for file" >&5
+echo "configure:2308: checking for file" >&5
if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2378,7 +2375,7 @@ esac
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2382: checking for $ac_word" >&5
+echo "configure:2379: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2410,7 +2407,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2414: checking for $ac_word" >&5
+echo "configure:2411: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2445,7 +2442,7 @@ fi
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2449: checking for $ac_word" >&5
+echo "configure:2446: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2477,7 +2474,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2481: checking for $ac_word" >&5
+echo "configure:2478: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2544,8 +2541,8 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 2548 "configure"' > conftest.$ac_ext
- if { (eval echo configure:2549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ echo '#line 2545 "configure"' > conftest.$ac_ext
+ if { (eval echo configure:2546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
@@ -2564,7 +2561,7 @@ case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
- if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ if { (eval echo configure:2565: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
case "`/usr/bin/file conftest.o`" in
*ELF-32*)
HPUX_IA64_MODE="32"
@@ -2582,7 +2579,7 @@ ia64-*-hpux*)
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:2586: checking whether the C compiler needs -belf" >&5
+echo "configure:2583: checking whether the C compiler needs -belf" >&5
if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2595,14 +2592,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$a
cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext <<EOF
-#line 2599 "configure"
+#line 2596 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_needs_belf=yes
else
@@ -2632,7 +2629,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
# Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
set dummy ${ac_tool_prefix}dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2636: checking for $ac_word" >&5
+echo "configure:2633: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2664,7 +2661,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "dlltool", so it can be a program name with args.
set dummy dlltool; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2668: checking for $ac_word" >&5
+echo "configure:2665: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2699,7 +2696,7 @@ fi
# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
set dummy ${ac_tool_prefix}as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2703: checking for $ac_word" >&5
+echo "configure:2700: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2731,7 +2728,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "as", so it can be a program name with args.
set dummy as; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2735: checking for $ac_word" >&5
+echo "configure:2732: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2766,7 +2763,7 @@ fi
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
set dummy ${ac_tool_prefix}objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2767: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2798,7 +2795,7 @@ if test -n "$ac_tool_prefix"; then
# Extract the first word of "objdump", so it can be a program name with args.
set dummy objdump; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2802: checking for $ac_word" >&5
+echo "configure:2799: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -2834,12 +2831,12 @@ fi
# recent cygwin and mingw systems supply a stub DllMain which the user
# can override, but on older systems we have to supply one
echo $ac_n "checking if libtool should supply DllMain function""... $ac_c" 1>&6
-echo "configure:2838: checking if libtool should supply DllMain function" >&5
+echo "configure:2835: checking if libtool should supply DllMain function" >&5
if eval "test \"`echo '$''{'lt_cv_need_dllmain'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2843 "configure"
+#line 2840 "configure"
#include "confdefs.h"
int main() {
@@ -2847,7 +2844,7 @@ extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
DllMain (0, 0, 0);
; return 0; }
EOF
-if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_need_dllmain=no
else
@@ -2868,19 +2865,19 @@ echo "$ac_t""$lt_cv_need_dllmain" 1>&6
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mdll"
echo $ac_n "checking how to link DLLs""... $ac_c" 1>&6
-echo "configure:2872: checking how to link DLLs" >&5
+echo "configure:2869: checking how to link DLLs" >&5
if eval "test \"`echo '$''{'lt_cv_cc_dll_switch'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2877 "configure"
+#line 2874 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:2884: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
lt_cv_cc_dll_switch=-mdll
else
diff --git a/newlib/libm/math/Makefile.am b/newlib/libm/math/Makefile.am
index f5971fac9..6f7195a38 100644
--- a/newlib/libm/math/Makefile.am
+++ b/newlib/libm/math/Makefile.am
@@ -22,9 +22,10 @@ src = k_standard.c k_rem_pio2.c \
w_cabs.c w_drem.c \
s_asinh.c s_atan.c s_ceil.c \
s_cos.c s_erf.c s_fabs.c s_floor.c \
- s_frexp.c s_ldexp.c \
+ s_frexp.c s_isnan.c s_ldexp.c \
s_signif.c s_sin.c \
s_tan.c s_tanh.c \
+ s_isinf.c s_infconst.c \
w_exp2.c w_tgamma.c
fsrc = kf_rem_pio2.c \
@@ -45,9 +46,10 @@ fsrc = kf_rem_pio2.c \
wf_cabs.c wf_drem.c \
sf_asinh.c sf_atan.c sf_ceil.c \
sf_cos.c sf_erf.c sf_fabs.c sf_floor.c \
- sf_frexp.c sf_ldexp.c \
+ sf_frexp.c sf_isnan.c sf_ldexp.c \
sf_signif.c sf_sin.c \
sf_tan.c sf_tanh.c \
+ sf_isinf.c \
wf_exp2.c wf_tgamma.c
libmath_la_LDFLAGS = -Xcompiler -nostdlib
@@ -71,7 +73,8 @@ chobj = wacos.def wacosh.def wasin.def sasinh.def \
wgamma.def whypot.def sldexp.def wlog.def \
wlog10.def \
wpow.def wremainder.def ssin.def wsinh.def \
- wsqrt.def stan.def stanh.def
+ wsqrt.def stan.def stanh.def \
+ sisnan.def
SUFFIXES = .def
@@ -175,6 +178,9 @@ stan.def: s_tan.c
stanh.def: s_tanh.c
$(CHEW) < $(srcdir)/s_tanh.c >$@ 2>/dev/null
touch stmp-def
+sisnan.def: s_isnan.c
+ $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
+ touch stmp-def
# A partial dependency list.
diff --git a/newlib/libm/math/Makefile.in b/newlib/libm/math/Makefile.in
index f00e189c7..49a8daf5e 100644
--- a/newlib/libm/math/Makefile.in
+++ b/newlib/libm/math/Makefile.in
@@ -98,10 +98,10 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = -I$(srcdir)/../common $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-src = k_standard.c k_rem_pio2.c k_cos.c k_sin.c k_tan.c e_acos.c e_acosh.c e_asin.c e_atan2.c e_atanh.c e_cosh.c e_exp.c e_fmod.c er_gamma.c e_hypot.c e_j0.c e_j1.c e_jn.c er_lgamma.c e_log.c e_log10.c e_pow.c e_rem_pio2.c e_remainder.c e_scalb.c e_sinh.c e_sqrt.c w_acos.c w_acosh.c w_asin.c w_atan2.c w_atanh.c w_cosh.c w_exp.c w_fmod.c w_gamma.c wr_gamma.c w_hypot.c w_j0.c w_j1.c w_jn.c w_lgamma.c wr_lgamma.c w_log.c w_log10.c w_pow.c w_remainder.c w_scalb.c w_sinh.c w_sqrt.c w_sincos.c w_cabs.c w_drem.c s_asinh.c s_atan.c s_ceil.c s_cos.c s_erf.c s_fabs.c s_floor.c s_frexp.c s_ldexp.c s_signif.c s_sin.c s_tan.c s_tanh.c w_exp2.c w_tgamma.c
+src = k_standard.c k_rem_pio2.c k_cos.c k_sin.c k_tan.c e_acos.c e_acosh.c e_asin.c e_atan2.c e_atanh.c e_cosh.c e_exp.c e_fmod.c er_gamma.c e_hypot.c e_j0.c e_j1.c e_jn.c er_lgamma.c e_log.c e_log10.c e_pow.c e_rem_pio2.c e_remainder.c e_scalb.c e_sinh.c e_sqrt.c w_acos.c w_acosh.c w_asin.c w_atan2.c w_atanh.c w_cosh.c w_exp.c w_fmod.c w_gamma.c wr_gamma.c w_hypot.c w_j0.c w_j1.c w_jn.c w_lgamma.c wr_lgamma.c w_log.c w_log10.c w_pow.c w_remainder.c w_scalb.c w_sinh.c w_sqrt.c w_sincos.c w_cabs.c w_drem.c s_asinh.c s_atan.c s_ceil.c s_cos.c s_erf.c s_fabs.c s_floor.c s_frexp.c s_isnan.c s_ldexp.c s_signif.c s_sin.c s_tan.c s_tanh.c s_isinf.c s_infconst.c w_exp2.c w_tgamma.c
-fsrc = kf_rem_pio2.c kf_cos.c kf_sin.c kf_tan.c ef_acos.c ef_acosh.c ef_asin.c ef_atan2.c ef_atanh.c ef_cosh.c ef_exp.c ef_fmod.c erf_gamma.c ef_hypot.c ef_j0.c ef_j1.c ef_jn.c erf_lgamma.c ef_log.c ef_log10.c ef_pow.c ef_rem_pio2.c ef_remainder.c ef_scalb.c ef_sinh.c ef_sqrt.c wf_acos.c wf_acosh.c wf_asin.c wf_atan2.c wf_atanh.c wf_cosh.c wf_exp.c wf_fmod.c wf_gamma.c wrf_gamma.c wf_hypot.c wf_j0.c wf_j1.c wf_jn.c wf_lgamma.c wrf_lgamma.c wf_log.c wf_log10.c wf_pow.c wf_remainder.c wf_scalb.c wf_sinh.c wf_sqrt.c wf_sincos.c wf_cabs.c wf_drem.c sf_asinh.c sf_atan.c sf_ceil.c sf_cos.c sf_erf.c sf_fabs.c sf_floor.c sf_frexp.c sf_ldexp.c sf_signif.c sf_sin.c sf_tan.c sf_tanh.c wf_exp2.c wf_tgamma.c
+fsrc = kf_rem_pio2.c kf_cos.c kf_sin.c kf_tan.c ef_acos.c ef_acosh.c ef_asin.c ef_atan2.c ef_atanh.c ef_cosh.c ef_exp.c ef_fmod.c erf_gamma.c ef_hypot.c ef_j0.c ef_j1.c ef_jn.c erf_lgamma.c ef_log.c ef_log10.c ef_pow.c ef_rem_pio2.c ef_remainder.c ef_scalb.c ef_sinh.c ef_sqrt.c wf_acos.c wf_acosh.c wf_asin.c wf_atan2.c wf_atanh.c wf_cosh.c wf_exp.c wf_fmod.c wf_gamma.c wrf_gamma.c wf_hypot.c wf_j0.c wf_j1.c wf_jn.c wf_lgamma.c wrf_lgamma.c wf_log.c wf_log10.c wf_pow.c wf_remainder.c wf_scalb.c wf_sinh.c wf_sqrt.c wf_sincos.c wf_cabs.c wf_drem.c sf_asinh.c sf_atan.c sf_ceil.c sf_cos.c sf_erf.c sf_fabs.c sf_floor.c sf_frexp.c sf_isnan.c sf_ldexp.c sf_signif.c sf_sin.c sf_tan.c sf_tanh.c sf_isinf.c wf_exp2.c wf_tgamma.c
libmath_la_LDFLAGS = -Xcompiler -nostdlib
@@ -113,7 +113,7 @@ libmath_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a
@USE_LIBTOOL_FALSE@lib_a_SOURCES = $(src) $(fsrc)
-chobj = wacos.def wacosh.def wasin.def sasinh.def satan.def watan2.def watanh.def wj0.def wcosh.def serf.def wexp.def sfabs.def sfloor.def wfmod.def sfrexp.def wgamma.def whypot.def sldexp.def wlog.def wlog10.def wpow.def wremainder.def ssin.def wsinh.def wsqrt.def stan.def stanh.def
+chobj = wacos.def wacosh.def wasin.def sasinh.def satan.def watan2.def watanh.def wj0.def wcosh.def serf.def wexp.def sfabs.def sfloor.def wfmod.def sfrexp.def wgamma.def whypot.def sldexp.def wlog.def wlog10.def wpow.def wremainder.def ssin.def wsinh.def wsqrt.def stan.def stanh.def sisnan.def
SUFFIXES = .def
@@ -154,14 +154,16 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@w_cabs.$(OBJEXT) w_drem.$(OBJEXT) s_asinh.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_atan.$(OBJEXT) s_ceil.$(OBJEXT) s_cos.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_erf.$(OBJEXT) s_fabs.$(OBJEXT) s_floor.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_frexp.$(OBJEXT) s_ldexp.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_signif.$(OBJEXT) s_sin.$(OBJEXT) s_tan.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_tanh.$(OBJEXT) w_exp2.$(OBJEXT) w_tgamma.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@kf_rem_pio2.$(OBJEXT) kf_cos.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@kf_sin.$(OBJEXT) kf_tan.$(OBJEXT) ef_acos.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@ef_acosh.$(OBJEXT) ef_asin.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@ef_atan2.$(OBJEXT) ef_atanh.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@ef_cosh.$(OBJEXT) ef_exp.$(OBJEXT) ef_fmod.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_frexp.$(OBJEXT) s_isnan.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_ldexp.$(OBJEXT) s_signif.$(OBJEXT) s_sin.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_tan.$(OBJEXT) s_tanh.$(OBJEXT) s_isinf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_infconst.$(OBJEXT) w_exp2.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@w_tgamma.$(OBJEXT) kf_rem_pio2.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@kf_cos.$(OBJEXT) kf_sin.$(OBJEXT) kf_tan.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@ef_acos.$(OBJEXT) ef_acosh.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@ef_asin.$(OBJEXT) ef_atan2.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@ef_atanh.$(OBJEXT) ef_cosh.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@ef_exp.$(OBJEXT) ef_fmod.$(OBJEXT) \
@USE_LIBTOOL_FALSE@erf_gamma.$(OBJEXT) ef_hypot.$(OBJEXT) \
@USE_LIBTOOL_FALSE@ef_j0.$(OBJEXT) ef_j1.$(OBJEXT) ef_jn.$(OBJEXT) \
@USE_LIBTOOL_FALSE@erf_lgamma.$(OBJEXT) ef_log.$(OBJEXT) \
@@ -184,9 +186,11 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@sf_atan.$(OBJEXT) sf_ceil.$(OBJEXT) sf_cos.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_erf.$(OBJEXT) sf_fabs.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_floor.$(OBJEXT) sf_frexp.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_ldexp.$(OBJEXT) sf_signif.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_sin.$(OBJEXT) sf_tan.$(OBJEXT) sf_tanh.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@wf_exp2.$(OBJEXT) wf_tgamma.$(OBJEXT)
+@USE_LIBTOOL_FALSE@sf_isnan.$(OBJEXT) sf_ldexp.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_signif.$(OBJEXT) sf_sin.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_tan.$(OBJEXT) sf_tanh.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_isinf.$(OBJEXT) wf_exp2.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@wf_tgamma.$(OBJEXT)
LTLIBRARIES = $(noinst_LTLIBRARIES)
libmath_la_LIBADD =
@@ -203,24 +207,25 @@ libmath_la_LIBADD =
@USE_LIBTOOL_TRUE@w_remainder.lo w_scalb.lo w_sinh.lo w_sqrt.lo \
@USE_LIBTOOL_TRUE@w_sincos.lo w_cabs.lo w_drem.lo s_asinh.lo s_atan.lo \
@USE_LIBTOOL_TRUE@s_ceil.lo s_cos.lo s_erf.lo s_fabs.lo s_floor.lo \
-@USE_LIBTOOL_TRUE@s_frexp.lo s_ldexp.lo s_signif.lo s_sin.lo s_tan.lo \
-@USE_LIBTOOL_TRUE@s_tanh.lo w_exp2.lo w_tgamma.lo kf_rem_pio2.lo \
-@USE_LIBTOOL_TRUE@kf_cos.lo kf_sin.lo kf_tan.lo ef_acos.lo ef_acosh.lo \
-@USE_LIBTOOL_TRUE@ef_asin.lo ef_atan2.lo ef_atanh.lo ef_cosh.lo \
-@USE_LIBTOOL_TRUE@ef_exp.lo ef_fmod.lo erf_gamma.lo ef_hypot.lo \
-@USE_LIBTOOL_TRUE@ef_j0.lo ef_j1.lo ef_jn.lo erf_lgamma.lo ef_log.lo \
-@USE_LIBTOOL_TRUE@ef_log10.lo ef_pow.lo ef_rem_pio2.lo ef_remainder.lo \
-@USE_LIBTOOL_TRUE@ef_scalb.lo ef_sinh.lo ef_sqrt.lo wf_acos.lo \
-@USE_LIBTOOL_TRUE@wf_acosh.lo wf_asin.lo wf_atan2.lo wf_atanh.lo \
-@USE_LIBTOOL_TRUE@wf_cosh.lo wf_exp.lo wf_fmod.lo wf_gamma.lo \
-@USE_LIBTOOL_TRUE@wrf_gamma.lo wf_hypot.lo wf_j0.lo wf_j1.lo wf_jn.lo \
-@USE_LIBTOOL_TRUE@wf_lgamma.lo wrf_lgamma.lo wf_log.lo wf_log10.lo \
-@USE_LIBTOOL_TRUE@wf_pow.lo wf_remainder.lo wf_scalb.lo wf_sinh.lo \
-@USE_LIBTOOL_TRUE@wf_sqrt.lo wf_sincos.lo wf_cabs.lo wf_drem.lo \
-@USE_LIBTOOL_TRUE@sf_asinh.lo sf_atan.lo sf_ceil.lo sf_cos.lo sf_erf.lo \
-@USE_LIBTOOL_TRUE@sf_fabs.lo sf_floor.lo sf_frexp.lo sf_ldexp.lo \
+@USE_LIBTOOL_TRUE@s_frexp.lo s_isnan.lo s_ldexp.lo s_signif.lo s_sin.lo \
+@USE_LIBTOOL_TRUE@s_tan.lo s_tanh.lo s_isinf.lo s_infconst.lo w_exp2.lo \
+@USE_LIBTOOL_TRUE@w_tgamma.lo kf_rem_pio2.lo kf_cos.lo kf_sin.lo \
+@USE_LIBTOOL_TRUE@kf_tan.lo ef_acos.lo ef_acosh.lo ef_asin.lo \
+@USE_LIBTOOL_TRUE@ef_atan2.lo ef_atanh.lo ef_cosh.lo ef_exp.lo \
+@USE_LIBTOOL_TRUE@ef_fmod.lo erf_gamma.lo ef_hypot.lo ef_j0.lo ef_j1.lo \
+@USE_LIBTOOL_TRUE@ef_jn.lo erf_lgamma.lo ef_log.lo ef_log10.lo \
+@USE_LIBTOOL_TRUE@ef_pow.lo ef_rem_pio2.lo ef_remainder.lo ef_scalb.lo \
+@USE_LIBTOOL_TRUE@ef_sinh.lo ef_sqrt.lo wf_acos.lo wf_acosh.lo \
+@USE_LIBTOOL_TRUE@wf_asin.lo wf_atan2.lo wf_atanh.lo wf_cosh.lo \
+@USE_LIBTOOL_TRUE@wf_exp.lo wf_fmod.lo wf_gamma.lo wrf_gamma.lo \
+@USE_LIBTOOL_TRUE@wf_hypot.lo wf_j0.lo wf_j1.lo wf_jn.lo wf_lgamma.lo \
+@USE_LIBTOOL_TRUE@wrf_lgamma.lo wf_log.lo wf_log10.lo wf_pow.lo \
+@USE_LIBTOOL_TRUE@wf_remainder.lo wf_scalb.lo wf_sinh.lo wf_sqrt.lo \
+@USE_LIBTOOL_TRUE@wf_sincos.lo wf_cabs.lo wf_drem.lo sf_asinh.lo \
+@USE_LIBTOOL_TRUE@sf_atan.lo sf_ceil.lo sf_cos.lo sf_erf.lo sf_fabs.lo \
+@USE_LIBTOOL_TRUE@sf_floor.lo sf_frexp.lo sf_isnan.lo sf_ldexp.lo \
@USE_LIBTOOL_TRUE@sf_signif.lo sf_sin.lo sf_tan.lo sf_tanh.lo \
-@USE_LIBTOOL_TRUE@wf_exp2.lo wf_tgamma.lo
+@USE_LIBTOOL_TRUE@sf_isinf.lo wf_exp2.lo wf_tgamma.lo
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -546,6 +551,9 @@ stan.def: s_tan.c
stanh.def: s_tanh.c
$(CHEW) < $(srcdir)/s_tanh.c >$@ 2>/dev/null
touch stmp-def
+sisnan.def: s_isnan.c
+ $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
+ touch stmp-def
# A partial dependency list.
diff --git a/newlib/libm/math/ef_atan2.c b/newlib/libm/math/ef_atan2.c
index d57480b03..45b5acb0c 100644
--- a/newlib/libm/math/ef_atan2.c
+++ b/newlib/libm/math/ef_atan2.c
@@ -25,8 +25,8 @@ tiny = 1.0e-30,
zero = 0.0,
pi_o_4 = 7.8539818525e-01, /* 0x3f490fdb */
pi_o_2 = 1.5707963705e+00, /* 0x3fc90fdb */
-pi = 3.1415927410e+00, /* 0x40490fdb */
-pi_lo = -8.7422776573e-08; /* 0xb3bbbd2e */
+pi = 3.1415925026e+00, /* 0x40490fda */
+pi_lo = 1.5099578832e-07; /* 0x34222168 */
#ifdef __STDC__
float __ieee754_atan2f(float y, float x)
diff --git a/newlib/libm/math/ef_hypot.c b/newlib/libm/math/ef_hypot.c
index 9368eb41c..b78b968ef 100644
--- a/newlib/libm/math/ef_hypot.c
+++ b/newlib/libm/math/ef_hypot.c
@@ -50,7 +50,7 @@
if(FLT_UWORD_IS_ZERO(hb)) {
return a;
} else if(FLT_UWORD_IS_SUBNORMAL(hb)) {
- SET_FLOAT_WORD(t1,0x7e800000L); /* t1=2^126 */
+ SET_FLOAT_WORD(t1,0x3f000000L); /* t1=2^126 */
b *= t1;
a *= t1;
k -= 126;
diff --git a/newlib/libm/math/math.tex b/newlib/libm/math/math.tex
index 7bc56ce9a..0b1e596fb 100644
--- a/newlib/libm/math/math.tex
+++ b/newlib/libm/math/math.tex
@@ -25,7 +25,7 @@ Since the error handling code calls @code{fputs}, the mathematical
subroutines require stubs or minimal implementations for the same list
of OS subroutines as @code{fputs}: @code{close}, @code{fstat},
@code{isatty}, @code{lseek}, @code{read}, @code{sbrk}, @code{write}.
-@xref{syscalls,,System Calls, libc.info, The Red Hat newlib C Library},
+@xref{syscalls,,System Calls, libc.info, The Cygnus C Support Library},
for a discussion and for sample minimal implementations of these support
subroutines.
@@ -139,12 +139,6 @@ The library is set to X/Open mode by default.
@include math/wj0.def
@page
-@include common/scbrt.def
-
-@page
-@include common/scopysign.def
-
-@page
@include math/wcosh.def
@page
@@ -154,9 +148,6 @@ The library is set to X/Open mode by default.
@include math/wexp.def
@page
-@include common/sexpm1.def
-
-@page
@include math/sfabs.def
@page
@@ -175,13 +166,7 @@ The library is set to X/Open mode by default.
@include math/whypot.def
@page
-@include common/silogb.def
-
-@page
-@include common/sinfinity.def
-
-@page
-@include common/sisnan.def
+@include math/sisnan.def
@page
@include math/sldexp.def
@@ -193,30 +178,12 @@ The library is set to X/Open mode by default.
@include math/wlog10.def
@page
-@include common/slog1p.def
-
-@page
-@include common/smatherr.def
-
-@page
-@include common/smodf.def
-
-@page
-@include common/snan.def
-
-@page
-@include common/snextafter.def
-
-@page
@include math/wpow.def
@page
@include math/wremainder.def
@page
-@include common/sscalbn.def
-
-@page
@include math/wsqrt.def
@page
diff --git a/newlib/libm/math/s_infconst.c b/newlib/libm/math/s_infconst.c
new file mode 100644
index 000000000..6b63afbca
--- /dev/null
+++ b/newlib/libm/math/s_infconst.c
@@ -0,0 +1,15 @@
+/* Infinity as a constant value. This is used for HUGE_VAL.
+ * Added by Cygnus Support.
+ */
+
+#include "fdlibm.h"
+
+#ifndef _DOUBLE_IS_32BITS
+#ifdef __IEEE_BIG_ENDIAN
+const union __dmath __infinity[1] = {{{ 0x7ff00000, 0 }}};
+#else
+const union __dmath __infinity[1] = {{{ 0, 0x7ff00000 }}};
+#endif
+#else /* defined (_DOUBLE_IS_32BITS) */
+const union __dmath __infinity[1] = {{{ 0x7f800000, 0 }}};
+#endif /* defined (_DOUBLE_IS_32BITS) */
diff --git a/newlib/libm/common/s_isinfd.c b/newlib/libm/math/s_isinf.c
index 5a2b04d4e..87f099566 100644
--- a/newlib/libm/common/s_isinfd.c
+++ b/newlib/libm/math/s_isinf.c
@@ -1,5 +1,5 @@
/*
- * __isinfd(x) returns 1 if x is infinity, else 0;
+ * isinf(x) returns 1 if x is infinity, else 0;
* no branching!
* Added by Cygnus Support.
*/
@@ -8,9 +8,12 @@
#ifndef _DOUBLE_IS_32BITS
-int
-_DEFUN (__isinfd, (x),
- double x)
+#ifdef __STDC__
+ int isinf(double x)
+#else
+ int isinf(x)
+ double x;
+#endif
{
__int32_t hx,lx;
EXTRACT_WORDS(hx,lx,x);
diff --git a/newlib/libm/common/s_isnand.c b/newlib/libm/math/s_isnan.c
index 75538d907..0338cfe47 100644
--- a/newlib/libm/common/s_isnand.c
+++ b/newlib/libm/math/s_isnan.c
@@ -1,3 +1,5 @@
+
+/* @(#)s_isnan.c 5.1 93/09/24 */
/*
* ====================================================
* Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
@@ -11,7 +13,7 @@
/*
FUNCTION
- <<isnan>>, <<isnanf>>, <<isinf>>, <<isinff>>, <<finite>>, <<finitef>>---test for exceptional numbers
+ <<isnan>>,<<isnanf>>,<<isinf>>,<<isinff>>,<<finite>>,<<finitef>>---test for exceptional numbers
INDEX
isnan
@@ -56,14 +58,14 @@ DESCRIPTION
These functions provide information on the floating-point
argument supplied.
- There are five major number formats:
+ There are five major number formats -
o+
o zero
- A number which contains all zero bits.
+ a number which contains all zero bits.
o subnormal
- A number with a zero exponent but a nonzero fraction.
- o normal
- A number with an exponent and a fraction.
+ Is used to represent number with a zero exponent, but a nonzero fraction.
+ o normal
+ A number with an exponent, and a fraction
o infinity
A number with an all 1's exponent and a zero fraction.
o NAN
@@ -74,13 +76,8 @@ DESCRIPTION
<<isnan>> returns 1 if the argument is a nan. <<isinf>>
returns 1 if the argument is infinity. <<finite>> returns 1 if the
argument is zero, subnormal or normal.
-
- Note that by the C99 standard, <<isnan>> and <<isinf>> are macros
- taking any type of floating-point and are declared in
- <<math.h>>. Newlib has chosen to declare these as macros in
- <<math.h>> and as functions in <<ieeefp.h>>.
- The <<isnanf>>, <<isinff>> and <<finitef>> functions perform the same
+ The <<isnanf>>, <<isinff>> and <<finitef>> perform the same
operations as their <<isnan>>, <<isinf>> and <<finite>>
counterparts, but on single-precision floating-point numbers.
@@ -99,7 +96,7 @@ QUICKREF
*/
/*
- * __isnand(x) returns 1 is x is nan, else 0;
+ * isnan(x) returns 1 is x is nan, else 0;
* no branching!
*/
@@ -107,9 +104,12 @@ QUICKREF
#ifndef _DOUBLE_IS_32BITS
-int
-_DEFUN (__isnand, (x),
- double x)
+#ifdef __STDC__
+ int isnan(double x)
+#else
+ int isnan(x)
+ double x;
+#endif
{
__int32_t hx,lx;
EXTRACT_WORDS(hx,lx,x);
diff --git a/newlib/libm/math/s_ldexp.c b/newlib/libm/math/s_ldexp.c
index adc7d5d0e..e5d45633d 100644
--- a/newlib/libm/math/s_ldexp.c
+++ b/newlib/libm/math/s_ldexp.c
@@ -56,7 +56,7 @@ On underflow, <<ldexp>> and <<ldexpf>> return 0.0.
On overflow, <<ldexp>> returns plus or minus <<HUGE_VAL>>.
PORTABILITY
-<<ldexp>> is ANSI. <<ldexpf>> is an extension.
+<<ldexp>> is ANSI, <<ldexpf>> is an extension.
*/
diff --git a/newlib/libm/common/sf_isinf.c b/newlib/libm/math/sf_isinf.c
index 74ba4edf7..43a8abdf2 100644
--- a/newlib/libm/common/sf_isinf.c
+++ b/newlib/libm/math/sf_isinf.c
@@ -1,15 +1,16 @@
/*
* isinff(x) returns 1 if x is +-infinity, else 0;
- *
- * isinff is an extension declared in <ieeefp.h> and
- * <math.h>.
+ * Added by Cygnus Support.
*/
#include "fdlibm.h"
-int
-_DEFUN (isinff, (x),
- float x)
+#ifdef __STDC__
+ int isinff(float x)
+#else
+ int isinff(x)
+ float x;
+#endif
{
__int32_t ix;
GET_FLOAT_WORD(ix,x);
@@ -19,11 +20,12 @@ _DEFUN (isinff, (x),
#ifdef _DOUBLE_IS_32BITS
-#undef isinf
-
-int
-_DEFUN (isinf, (x),
- double x)
+#ifdef __STDC__
+ int isinf(double x)
+#else
+ int isinf(x)
+ double x;
+#endif
{
return isinff((float) x);
}
diff --git a/newlib/libm/common/sf_isnan.c b/newlib/libm/math/sf_isnan.c
index befc3b2b2..0b4be3e9c 100644
--- a/newlib/libm/common/sf_isnan.c
+++ b/newlib/libm/math/sf_isnan.c
@@ -1,4 +1,5 @@
-/* sf_c_isnan.c -- float version of s_c_isnan.c.
+/* sf_isnan.c -- float version of s_isnan.c.
+ * Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com.
*/
/*
@@ -14,15 +15,16 @@
/*
* isnanf(x) returns 1 is x is nan, else 0;
- *
- * isnanf is an extension declared in <ieeefp.h> and <math.h>.
*/
#include "fdlibm.h"
-int
-_DEFUN (isnanf, (x),
- float x)
+#ifdef __STDC__
+ int isnanf(float x)
+#else
+ int isnanf(x)
+ float x;
+#endif
{
__int32_t ix;
GET_FLOAT_WORD(ix,x);
@@ -32,11 +34,12 @@ _DEFUN (isnanf, (x),
#ifdef _DOUBLE_IS_32BITS
-#undef isnan
-
-int
-_DEFUN (isnan, (x),
- double x)
+#ifdef __STDC__
+ int isnan(double x)
+#else
+ int isnan(x)
+ double x;
+#endif
{
return isnanf((float) x);
}
diff --git a/newlib/libm/math/w_j0.c b/newlib/libm/math/w_j0.c
index e4dde5ccb..2bf663316 100644
--- a/newlib/libm/math/w_j0.c
+++ b/newlib/libm/math/w_j0.c
@@ -13,7 +13,7 @@
/*
FUNCTION
-<<jN>>, <<jNf>>, <<yN>>, <<yNf>>---Bessel functions
+<<jN>>,<<jNf>>,<<yN>>,<<yNf>>---Bessel functions
INDEX
j0
diff --git a/newlib/libm/math/w_log.c b/newlib/libm/math/w_log.c
index 3e750ad85..dcc8b9762 100644
--- a/newlib/libm/math/w_log.c
+++ b/newlib/libm/math/w_log.c
@@ -49,7 +49,7 @@ When <[x]> is negative, the returned value is <<-HUGE_VAL>> and
<<matherr>>.
PORTABILITY
-<<log>> is ANSI. <<logf>> is an extension.
+<<log>> is ANSI, <<logf>> is an extension.
*/
/*
diff --git a/newlib/libm/mathfp/Makefile.am b/newlib/libm/mathfp/Makefile.am
index e529022a6..92688c43d 100644
--- a/newlib/libm/mathfp/Makefile.am
+++ b/newlib/libm/mathfp/Makefile.am
@@ -16,12 +16,12 @@ src = s_acos.c s_frexp.c s_mathcnst.c \
s_sincos.c \
s_atangent.c s_logarithm.c \
s_sineh.c \
- s_ceil.c \
+ s_ceil.c s_isnan.c s_isinf.c \
e_acosh.c e_atanh.c e_remainder.c \
er_gamma.c er_lgamma.c \
s_erf.c e_j0.c e_j1.c w_jn.c e_hypot.c \
w_cabs.c w_drem.c s_asinh.c s_fmod.c \
- e_scalb.c s_signif.c \
+ e_scalb.c s_infconst.c s_signif.c \
s_exp2.c s_tgamma.c
fsrc = sf_ceil.c \
@@ -36,6 +36,7 @@ fsrc = sf_ceil.c \
sf_sincos.c \
sf_atangent.c sf_logarithm.c sf_sineh.c \
sf_log.c sf_sineh.c \
+ sf_isnan.c sf_isinf.c \
ef_acosh.c ef_atanh.c ef_remainder.c \
erf_gamma.c erf_lgamma.c \
sf_erf.c ef_j0.c ef_j1.c wf_jn.c ef_hypot.c \
@@ -75,6 +76,7 @@ chobj = eacosh.def \
sfloor.def \
sfmod.def \
sfrexp.def \
+ sisnan.def \
sldexp.def \
slog10.def \
slogarithm.def \
@@ -158,6 +160,9 @@ sfmod.def: s_fmod.c
sfrexp.def: s_frexp.c
$(CHEW) < $(srcdir)/s_frexp.c >$@ 2>/dev/null
touch stmp-def
+sisnan.def: s_isnan.c
+ $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
+ touch stmp-def
sldexp.def: s_ldexp.c
$(CHEW) < $(srcdir)/s_ldexp.c >$@ 2>/dev/null
touch stmp-def
diff --git a/newlib/libm/mathfp/Makefile.in b/newlib/libm/mathfp/Makefile.in
index b11e8130f..8157e1273 100644
--- a/newlib/libm/mathfp/Makefile.in
+++ b/newlib/libm/mathfp/Makefile.in
@@ -98,10 +98,10 @@ AUTOMAKE_OPTIONS = cygnus
INCLUDES = -I$(srcdir)/../common $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-src = s_acos.c s_frexp.c s_mathcnst.c s_cos.c s_sinh.c s_asin.c s_asine.c s_cosh.c s_ispos.c s_numtest.c s_sqrt.c s_exp.c s_ldexp.c s_pow.c s_tan.c s_atan.c s_atan2.c s_fabs.c s_log.c s_tanh.c s_log10.c s_sin.c s_floor.c s_sine.c s_sincos.c s_atangent.c s_logarithm.c s_sineh.c s_ceil.c e_acosh.c e_atanh.c e_remainder.c er_gamma.c er_lgamma.c s_erf.c e_j0.c e_j1.c w_jn.c e_hypot.c w_cabs.c w_drem.c s_asinh.c s_fmod.c e_scalb.c s_signif.c s_exp2.c s_tgamma.c
+src = s_acos.c s_frexp.c s_mathcnst.c s_cos.c s_sinh.c s_asin.c s_asine.c s_cosh.c s_ispos.c s_numtest.c s_sqrt.c s_exp.c s_ldexp.c s_pow.c s_tan.c s_atan.c s_atan2.c s_fabs.c s_log.c s_tanh.c s_log10.c s_sin.c s_floor.c s_sine.c s_sincos.c s_atangent.c s_logarithm.c s_sineh.c s_ceil.c s_isnan.c s_isinf.c e_acosh.c e_atanh.c e_remainder.c er_gamma.c er_lgamma.c s_erf.c e_j0.c e_j1.c w_jn.c e_hypot.c w_cabs.c w_drem.c s_asinh.c s_fmod.c e_scalb.c s_infconst.c s_signif.c s_exp2.c s_tgamma.c
-fsrc = sf_ceil.c sf_acos.c sf_frexp.c sf_cos.c sf_sinh.c sf_asine.c sf_cosh.c sf_ispos.c sf_numtest.c sf_sqrt.c sf_asin.c sf_exp.c sf_ldexp.c sf_pow.c sf_tan.c sf_atan2.c sf_fabs.c sf_tanh.c sf_atan.c sf_log10.c sf_sin.c sf_floor.c sf_sine.c sf_sincos.c sf_atangent.c sf_logarithm.c sf_sineh.c sf_log.c sf_sineh.c ef_acosh.c ef_atanh.c ef_remainder.c erf_gamma.c erf_lgamma.c sf_erf.c ef_j0.c ef_j1.c wf_jn.c ef_hypot.c wf_cabs.c wf_drem.c sf_asinh.c sf_fmod.c ef_scalb.c sf_signif.c sf_exp2.c sf_tgamma.c
+fsrc = sf_ceil.c sf_acos.c sf_frexp.c sf_cos.c sf_sinh.c sf_asine.c sf_cosh.c sf_ispos.c sf_numtest.c sf_sqrt.c sf_asin.c sf_exp.c sf_ldexp.c sf_pow.c sf_tan.c sf_atan2.c sf_fabs.c sf_tanh.c sf_atan.c sf_log10.c sf_sin.c sf_floor.c sf_sine.c sf_sincos.c sf_atangent.c sf_logarithm.c sf_sineh.c sf_log.c sf_sineh.c sf_isnan.c sf_isinf.c ef_acosh.c ef_atanh.c ef_remainder.c erf_gamma.c erf_lgamma.c sf_erf.c ef_j0.c ef_j1.c wf_jn.c ef_hypot.c wf_cabs.c wf_drem.c sf_asinh.c sf_fmod.c ef_scalb.c sf_signif.c sf_exp2.c sf_tgamma.c
libmathfp_la_LDFLAGS = -Xcompiler -nostdlib
@@ -113,7 +113,7 @@ libmathfp_la_LDFLAGS = -Xcompiler -nostdlib
@USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a
@USE_LIBTOOL_FALSE@lib_a_SOURCES = $(src) $(fsrc)
-chobj = eacosh.def eatanh.def ehypot.def eremainder.def erlgamma.def sacos.def sasine.def sasinh.def satan.def satan2.def satangent.def scosh.def serf.def sexp.def sfabs.def sfloor.def sfmod.def sfrexp.def sldexp.def slog10.def slogarithm.def spow.def ssine.def ssineh.def ssqrt.def stan.def stanh.def wjn.def
+chobj = eacosh.def eatanh.def ehypot.def eremainder.def erlgamma.def sacos.def sasine.def sasinh.def satan.def satan2.def satangent.def scosh.def serf.def sexp.def sfabs.def sfloor.def sfmod.def sfrexp.def sisnan.def sldexp.def slog10.def slogarithm.def spow.def ssine.def ssineh.def ssqrt.def stan.def stanh.def wjn.def
SUFFIXES = .def
@@ -143,19 +143,21 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@s_sin.$(OBJEXT) s_floor.$(OBJEXT) s_sine.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_sincos.$(OBJEXT) s_atangent.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_logarithm.$(OBJEXT) s_sineh.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_ceil.$(OBJEXT) e_acosh.$(OBJEXT) e_atanh.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_ceil.$(OBJEXT) s_isnan.$(OBJEXT) s_isinf.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@e_acosh.$(OBJEXT) e_atanh.$(OBJEXT) \
@USE_LIBTOOL_FALSE@e_remainder.$(OBJEXT) er_gamma.$(OBJEXT) \
@USE_LIBTOOL_FALSE@er_lgamma.$(OBJEXT) s_erf.$(OBJEXT) e_j0.$(OBJEXT) \
@USE_LIBTOOL_FALSE@e_j1.$(OBJEXT) w_jn.$(OBJEXT) e_hypot.$(OBJEXT) \
@USE_LIBTOOL_FALSE@w_cabs.$(OBJEXT) w_drem.$(OBJEXT) s_asinh.$(OBJEXT) \
@USE_LIBTOOL_FALSE@s_fmod.$(OBJEXT) e_scalb.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_signif.$(OBJEXT) s_exp2.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@s_tgamma.$(OBJEXT) sf_ceil.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_acos.$(OBJEXT) sf_frexp.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_cos.$(OBJEXT) sf_sinh.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_asine.$(OBJEXT) sf_cosh.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_ispos.$(OBJEXT) sf_numtest.$(OBJEXT) \
-@USE_LIBTOOL_FALSE@sf_sqrt.$(OBJEXT) sf_asin.$(OBJEXT) sf_exp.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_infconst.$(OBJEXT) s_signif.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@s_exp2.$(OBJEXT) s_tgamma.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_ceil.$(OBJEXT) sf_acos.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_frexp.$(OBJEXT) sf_cos.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_sinh.$(OBJEXT) sf_asine.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_cosh.$(OBJEXT) sf_ispos.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_numtest.$(OBJEXT) sf_sqrt.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_asin.$(OBJEXT) sf_exp.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_ldexp.$(OBJEXT) sf_pow.$(OBJEXT) sf_tan.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_atan2.$(OBJEXT) sf_fabs.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_tanh.$(OBJEXT) sf_atan.$(OBJEXT) \
@@ -164,6 +166,7 @@ lib_a_LIBADD =
@USE_LIBTOOL_FALSE@sf_sincos.$(OBJEXT) sf_atangent.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_logarithm.$(OBJEXT) sf_sineh.$(OBJEXT) \
@USE_LIBTOOL_FALSE@sf_log.$(OBJEXT) sf_sineh.$(OBJEXT) \
+@USE_LIBTOOL_FALSE@sf_isnan.$(OBJEXT) sf_isinf.$(OBJEXT) \
@USE_LIBTOOL_FALSE@ef_acosh.$(OBJEXT) ef_atanh.$(OBJEXT) \
@USE_LIBTOOL_FALSE@ef_remainder.$(OBJEXT) erf_gamma.$(OBJEXT) \
@USE_LIBTOOL_FALSE@erf_lgamma.$(OBJEXT) sf_erf.$(OBJEXT) \
@@ -182,10 +185,11 @@ libmathfp_la_LIBADD =
@USE_LIBTOOL_TRUE@s_ldexp.lo s_pow.lo s_tan.lo s_atan.lo s_atan2.lo \
@USE_LIBTOOL_TRUE@s_fabs.lo s_log.lo s_tanh.lo s_log10.lo s_sin.lo \
@USE_LIBTOOL_TRUE@s_floor.lo s_sine.lo s_sincos.lo s_atangent.lo \
-@USE_LIBTOOL_TRUE@s_logarithm.lo s_sineh.lo s_ceil.lo e_acosh.lo \
-@USE_LIBTOOL_TRUE@e_atanh.lo e_remainder.lo er_gamma.lo er_lgamma.lo \
-@USE_LIBTOOL_TRUE@s_erf.lo e_j0.lo e_j1.lo w_jn.lo e_hypot.lo w_cabs.lo \
-@USE_LIBTOOL_TRUE@w_drem.lo s_asinh.lo s_fmod.lo e_scalb.lo s_signif.lo \
+@USE_LIBTOOL_TRUE@s_logarithm.lo s_sineh.lo s_ceil.lo s_isnan.lo \
+@USE_LIBTOOL_TRUE@s_isinf.lo e_acosh.lo e_atanh.lo e_remainder.lo \
+@USE_LIBTOOL_TRUE@er_gamma.lo er_lgamma.lo s_erf.lo e_j0.lo e_j1.lo \
+@USE_LIBTOOL_TRUE@w_jn.lo e_hypot.lo w_cabs.lo w_drem.lo s_asinh.lo \
+@USE_LIBTOOL_TRUE@s_fmod.lo e_scalb.lo s_infconst.lo s_signif.lo \
@USE_LIBTOOL_TRUE@s_exp2.lo s_tgamma.lo sf_ceil.lo sf_acos.lo \
@USE_LIBTOOL_TRUE@sf_frexp.lo sf_cos.lo sf_sinh.lo sf_asine.lo \
@USE_LIBTOOL_TRUE@sf_cosh.lo sf_ispos.lo sf_numtest.lo sf_sqrt.lo \
@@ -193,12 +197,12 @@ libmathfp_la_LIBADD =
@USE_LIBTOOL_TRUE@sf_atan2.lo sf_fabs.lo sf_tanh.lo sf_atan.lo \
@USE_LIBTOOL_TRUE@sf_log10.lo sf_sin.lo sf_floor.lo sf_sine.lo \
@USE_LIBTOOL_TRUE@sf_sincos.lo sf_atangent.lo sf_logarithm.lo \
-@USE_LIBTOOL_TRUE@sf_sineh.lo sf_log.lo sf_sineh.lo ef_acosh.lo \
-@USE_LIBTOOL_TRUE@ef_atanh.lo ef_remainder.lo erf_gamma.lo \
-@USE_LIBTOOL_TRUE@erf_lgamma.lo sf_erf.lo ef_j0.lo ef_j1.lo wf_jn.lo \
-@USE_LIBTOOL_TRUE@ef_hypot.lo wf_cabs.lo wf_drem.lo sf_asinh.lo \
-@USE_LIBTOOL_TRUE@sf_fmod.lo ef_scalb.lo sf_signif.lo sf_exp2.lo \
-@USE_LIBTOOL_TRUE@sf_tgamma.lo
+@USE_LIBTOOL_TRUE@sf_sineh.lo sf_log.lo sf_sineh.lo sf_isnan.lo \
+@USE_LIBTOOL_TRUE@sf_isinf.lo ef_acosh.lo ef_atanh.lo ef_remainder.lo \
+@USE_LIBTOOL_TRUE@erf_gamma.lo erf_lgamma.lo sf_erf.lo ef_j0.lo \
+@USE_LIBTOOL_TRUE@ef_j1.lo wf_jn.lo ef_hypot.lo wf_cabs.lo wf_drem.lo \
+@USE_LIBTOOL_TRUE@sf_asinh.lo sf_fmod.lo ef_scalb.lo sf_signif.lo \
+@USE_LIBTOOL_TRUE@sf_exp2.lo sf_tgamma.lo
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -494,6 +498,9 @@ sfmod.def: s_fmod.c
sfrexp.def: s_frexp.c
$(CHEW) < $(srcdir)/s_frexp.c >$@ 2>/dev/null
touch stmp-def
+sisnan.def: s_isnan.c
+ $(CHEW) < $(srcdir)/s_isnan.c >$@ 2>/dev/null
+ touch stmp-def
sldexp.def: s_ldexp.c
$(CHEW) < $(srcdir)/s_ldexp.c >$@ 2>/dev/null
touch stmp-def
diff --git a/newlib/libm/mathfp/mathfp.tex b/newlib/libm/mathfp/mathfp.tex
index 0b9f08557..6286405a0 100644
--- a/newlib/libm/mathfp/mathfp.tex
+++ b/newlib/libm/mathfp/mathfp.tex
@@ -25,7 +25,7 @@ Since the error handling code calls @code{fputs}, the mathematical
subroutines require stubs or minimal implementations for the same list
of OS subroutines as @code{fputs}: @code{close}, @code{fstat},
@code{isatty}, @code{lseek}, @code{read}, @code{sbrk}, @code{write}.
-@xref{syscalls,,System Calls, libc.info, The Red Hat newlib C Library},
+@xref{syscalls,,System Calls, libc.info, The Cygnus C Support Library},
for a discussion and for sample minimal implementations of these support
subroutines.
@@ -139,12 +139,6 @@ The library is set to X/Open mode by default.
@include mathfp/wjn.def
@page
-@include common/scbrt.def
-
-@page
-@include common/scopysign.def
-
-@page
@include mathfp/scosh.def
@page
@@ -154,9 +148,6 @@ The library is set to X/Open mode by default.
@include mathfp/sexp.def
@page
-@include common/sexpm1.def
-
-@page
@include mathfp/sfabs.def
@page
@@ -175,13 +166,7 @@ The library is set to X/Open mode by default.
@include mathfp/ehypot.def
@page
-@include common/silogb.def
-
-@page
-@include common/sinfinity.def
-
-@page
-@include common/sisnan.def
+@include mathfp/sisnan.def
@page
@include mathfp/sldexp.def
@@ -193,30 +178,12 @@ The library is set to X/Open mode by default.
@include mathfp/slog10.def
@page
-@include common/slog1p.def
-
-@page
-@include common/smatherr.def
-
-@page
-@include common/smodf.def
-
-@page
-@include common/snan.def
-
-@page
-@include common/snextafter.def
-
-@page
@include mathfp/spow.def
@page
@include mathfp/eremainder.def
@page
-@include common/sscalbn.def
-
-@page
@include mathfp/ssqrt.def
@page
diff --git a/newlib/libm/mathfp/s_atangent.c b/newlib/libm/mathfp/s_atangent.c
index 0a7c4d2f8..981e1c822 100644
--- a/newlib/libm/mathfp/s_atangent.c
+++ b/newlib/libm/mathfp/s_atangent.c
@@ -197,9 +197,9 @@ _DEFUN (atangent, (double, double, double, int),
if (arctan2)
{
- if (u < 0.0)
+ if (u < 0.0 || branch == 2)
res = __PI - res;
- if (v < 0.0)
+ if (v < 0.0 || branch == 1)
res = -res;
}
else if (x < 0.0)
diff --git a/newlib/libm/mathfp/s_frexp.c b/newlib/libm/mathfp/s_frexp.c
index 54fa336c8..08611e9a7 100644
--- a/newlib/libm/mathfp/s_frexp.c
+++ b/newlib/libm/mathfp/s_frexp.c
@@ -82,17 +82,6 @@ double frexp (double d, int *exp)
double f;
__uint32_t hd, ld, hf, lf;
- /* Check for special values. */
- switch (numtest (d))
- {
- case NAN:
- case INF:
- errno = EDOM;
- case 0:
- *exp = 0;
- return (d);
- }
-
EXTRACT_WORDS (hd, ld, d);
/* Get the exponent. */
@@ -105,6 +94,16 @@ double frexp (double d, int *exp)
INSERT_WORDS (f, hf, lf);
+ /* Check for special values. */
+ switch (numtest (f))
+ {
+ case NAN:
+ case INF:
+ errno = EDOM;
+ *exp = 0;
+ return (f);
+ }
+
return (f);
}
diff --git a/newlib/libm/mathfp/s_infconst.c b/newlib/libm/mathfp/s_infconst.c
new file mode 100644
index 000000000..e6b86d497
--- /dev/null
+++ b/newlib/libm/mathfp/s_infconst.c
@@ -0,0 +1,15 @@
+/* Infinity as a constant value. This is used for HUGE_VAL.
+ * Added by Cygnus Support.
+ */
+
+#include "fdlibm.h"
+
+#ifndef _DOUBLE_IS_32BITS
+#ifdef __IEEE_BIG_ENDIAN
+const union __dmath __infinity[1] = {{ 0x7ff00000, 0 }};
+#else
+const union __dmath __infinity[1] = {{ 0, 0x7ff00000 }};
+#endif
+#else /* defined (_DOUBLE_IS_32BITS) */
+const union __dmath __infinity[1] = {{ 0x7f800000, 0 }};
+#endif /* defined (_DOUBLE_IS_32BITS) */
diff --git a/newlib/libm/mathfp/s_isinf.c b/newlib/libm/mathfp/s_isinf.c
new file mode 100644
index 000000000..fe9f54799
--- /dev/null
+++ b/newlib/libm/mathfp/s_isinf.c
@@ -0,0 +1,37 @@
+
+/* @(#)z_isinf.c 1.0 98/08/13 */
+/******************************************************************
+ * isinf
+ *
+ * Input:
+ * x - pointer to a floating point value
+ *
+ * Output:
+ * An integer that indicates if the number is infinite.
+ *
+ * Description:
+ * This routine returns an integer that indicates if the number
+ * passed in is infinite (1) or is finite (0).
+ *
+ *****************************************************************/
+
+#include "fdlibm.h"
+#include "zmath.h"
+
+#ifndef _DOUBLE_IS_32BITS
+
+int isinf (double x)
+{
+ __uint32_t lx, hx;
+ int exp;
+
+ EXTRACT_WORDS (hx, lx, x);
+ exp = (hx & 0x7ff00000) >> 20;
+
+ if ((exp == 0x7ff) && ((hx & 0xf0000 || lx) == 0))
+ return (1);
+ else
+ return (0);
+}
+
+#endif /* _DOUBLE_IS_32BITS */
diff --git a/newlib/libm/mathfp/s_isnan.c b/newlib/libm/mathfp/s_isnan.c
new file mode 100644
index 000000000..03cfeee59
--- /dev/null
+++ b/newlib/libm/mathfp/s_isnan.c
@@ -0,0 +1,125 @@
+
+/* @(#)z_isnan.c 1.0 98/08/13 */
+
+/*
+FUNCTION
+ <<isnan>>,<<isnanf>>,<<isinf>>,<<isinff>>,<<finite>>,<<finitef>>---test
+for exceptional numbers
+
+INDEX
+ isnan
+INDEX
+ isinf
+INDEX
+ finite
+
+INDEX
+ isnanf
+INDEX
+ isinff
+INDEX
+ finitef
+
+ANSI_SYNOPSIS
+ #include <ieeefp.h>
+ int isnan(double <[arg]>);
+ int isinf(double <[arg]>);
+ int finite(double <[arg]>);
+ int isnanf(float <[arg]>);
+ int isinff(float <[arg]>);
+ int finitef(float <[arg]>);
+
+TRAD_SYNOPSIS
+ #include <ieeefp.h>
+ int isnan(<[arg]>)
+ double <[arg]>;
+ int isinf(<[arg]>)
+ double <[arg]>;
+ int finite(<[arg]>);
+ double <[arg]>;
+ int isnanf(<[arg]>);
+ float <[arg]>;
+ int isinff(<[arg]>);
+ float <[arg]>;
+ int finitef(<[arg]>);
+ float <[arg]>;
+
+
+DESCRIPTION
+ These functions provide information on the floating-point
+ argument supplied.
+
+ There are five major number formats -
+ o+
+ o zero
+ a number which contains all zero bits.
+ o subnormal
+ Is used to represent number with a zero exponent, but a nonzero fract
+ion.
+ o normal
+ A number with an exponent, and a fraction
+ o infinity
+ A number with an all 1's exponent and a zero fraction.
+ o NAN
+ A number with an all 1's exponent and a nonzero fraction.
+
+ o-
+
+ <<isnan>> returns 1 if the argument is a nan. <<isinf>>
+ returns 1 if the argument is infinity. <<finite>> returns 1 if the
+ argument is zero, subnormal or normal.
+
+ The <<isnanf>>, <<isinff>> and <<finitef>> perform the same
+ operations as their <<isnan>>, <<isinf>> and <<finite>>
+ counterparts, but on single-precision floating-point numbers.
+
+QUICKREF
+ isnan - pure
+QUICKREF
+ isinf - pure
+QUICKREF
+ finite - pure
+QUICKREF
+ isnan - pure
+QUICKREF
+ isinf - pure
+QUICKREF
+ finite - pure
+*/
+
+
+/******************************************************************
+ * isnan
+ *
+ * Input:
+ * x - pointer to a floating-point value
+ *
+ * Output:
+ * An integer that indicates if the number is NaN.
+ *
+ * Description:
+ * This routine returns an integer that indicates if the number
+ * passed in is NaN (1) or is finite (0).
+ *
+ *****************************************************************/
+
+#include "fdlibm.h"
+#include "zmath.h"
+
+#ifndef _DOUBLE_IS_32BITS
+
+int isnan (double x)
+{
+ __uint32_t lx, hx;
+ int exp;
+
+ EXTRACT_WORDS (hx, lx, x);
+ exp = (hx & 0x7ff00000) >> 20;
+
+ if ((exp == 0x7ff) && (hx & 0xf0000 || lx))
+ return (1);
+ else
+ return (0);
+}
+
+#endif /* _DOUBLE_IS_32BITS */
diff --git a/newlib/libm/mathfp/s_ldexp.c b/newlib/libm/mathfp/s_ldexp.c
index 6da41284b..5ce2710ac 100644
--- a/newlib/libm/mathfp/s_ldexp.c
+++ b/newlib/libm/mathfp/s_ldexp.c
@@ -45,7 +45,7 @@ On underflow, <<ldexp>> and <<ldexpf>> return 0.0.
On overflow, <<ldexp>> returns plus or minus <<HUGE_VAL>>.
PORTABILITY
-<<ldexp>> is ANSI. <<ldexpf>> is an extension.
+<<ldexp>> is ANSI, <<ldexpf>> is an extension.
*/
diff --git a/newlib/libm/mathfp/s_logarithm.c b/newlib/libm/mathfp/s_logarithm.c
index 3e07949c8..ee7c7069e 100644
--- a/newlib/libm/mathfp/s_logarithm.c
+++ b/newlib/libm/mathfp/s_logarithm.c
@@ -56,9 +56,8 @@ When <[x]> is negative, the returned value is <<-HUGE_VAL>> and
<<matherr>>.
PORTABILITY
-<<log>> is ANSI. <<logf>> is an extension.
-
-<<log10>> is ANSI. <<log10f>> is an extension.
+<<log>> is ANSI, <<logf>> is an extension.
+<<log10>> is ANSI, <<log10f>> is an extension.
*/
diff --git a/newlib/libm/mathfp/s_mathcnst.c b/newlib/libm/mathfp/s_mathcnst.c
index a847ee430..7865c7f78 100644
--- a/newlib/libm/mathfp/s_mathcnst.c
+++ b/newlib/libm/mathfp/s_mathcnst.c
@@ -12,13 +12,13 @@ ufloat z_hugeval_f = { 0x7f800000 };
ufloat z_infinity_f = { 0x7f800000 };
ufloat z_notanum_f = { 0xffd00000 };
-#ifdef __IEEE_BIG_ENDIAN
+#ifdef ___IEEE_LITTLE_ENDIAN
udouble z_hugeval = { 0x7ff00000, 0 };
udouble z_infinity = { 0x7ff00000, 0 };
udouble z_notanum = { 0xfff80000, 0 };
-#else /* __IEEE_LITTLE_ENDIAN */
+#else
udouble z_hugeval = { 0, 0x7ff00000 };
udouble z_infinity = { 0, 0x7ff00000 };
udouble z_notanum = { 0, 0xfff80000 };
-#endif /* __IEEE_LITTLE_ENDIAN */
+#endif /* ___IEEE_LITTLE_ENDIAN */
diff --git a/newlib/libm/mathfp/s_pow.c b/newlib/libm/mathfp/s_pow.c
index 90d9d0b5f..3514510d0 100644
--- a/newlib/libm/mathfp/s_pow.c
+++ b/newlib/libm/mathfp/s_pow.c
@@ -75,10 +75,9 @@ double pow (double x, double y)
}
}
- if (x == 0.0)
+ if (x == 0.0 && y <= 0.0)
{
- if (y <= 0.0)
- errno = EDOM;
+ errno = EDOM;
}
else if ((t = y * log (fabs (x))) >= BIGX)
{
diff --git a/newlib/libm/mathfp/sf_atangent.c b/newlib/libm/mathfp/sf_atangent.c
index 7a8f0cebe..55a90063c 100644
--- a/newlib/libm/mathfp/sf_atangent.c
+++ b/newlib/libm/mathfp/sf_atangent.c
@@ -126,9 +126,9 @@ _DEFUN (atangentf, (float, float, float, int),
if (arctan2)
{
- if (u < 0.0)
+ if (u < 0.0 || branch == 2)
res = __PI - res;
- if (v < 0.0)
+ if (v < 0.0 || branch == 1)
res = -res;
}
else if (x < 0.0)
diff --git a/newlib/libm/mathfp/sf_frexp.c b/newlib/libm/mathfp/sf_frexp.c
index 7f25195c8..c2751f65c 100644
--- a/newlib/libm/mathfp/sf_frexp.c
+++ b/newlib/libm/mathfp/sf_frexp.c
@@ -24,17 +24,6 @@ float frexpf (float d, int *exp)
float f;
__int32_t wf, wd;
- /* Check for special values. */
- switch (numtestf (d))
- {
- case NAN:
- case INF:
- errno = EDOM;
- case 0:
- *exp = 0;
- return (d);
- }
-
GET_FLOAT_WORD (wd, d);
/* Get the exponent. */
@@ -46,6 +35,16 @@ float frexpf (float d, int *exp)
SET_FLOAT_WORD (f, wf);
+ /* Check for special values. */
+ switch (numtestf (f))
+ {
+ case NAN:
+ case INF:
+ errno = EDOM;
+ *exp = 0;
+ return (f);
+ }
+
return (f);
}
diff --git a/newlib/libm/mathfp/sf_isinf.c b/newlib/libm/mathfp/sf_isinf.c
new file mode 100644
index 000000000..84ab3f71c
--- /dev/null
+++ b/newlib/libm/mathfp/sf_isinf.c
@@ -0,0 +1,48 @@
+
+/* @(#)z_isinff.c 1.0 98/08/13 */
+/******************************************************************
+ * isinff
+ *
+ * Input:
+ * x - pointer to a floating point value
+ *
+ * Output:
+ * An integer that indicates if the number is infinite.
+ *
+ * Description:
+ * This routine returns an integer that indicates if the number
+ * passed in is infinite (1) or is finite (0).
+ *
+ *****************************************************************/
+
+#include "fdlibm.h"
+#include "zmath.h"
+
+int
+_DEFUN (isinff, (float),
+ float x)
+{
+ __uint32_t wx;
+ int exp;
+
+ GET_FLOAT_WORD (wx, x);
+ exp = (wx & 0x7f800000) >> 23;
+
+ if ((exp == 0x7f8) && !(wx & 0xf0000))
+ return (1);
+ else
+ return (0);
+}
+
+#ifdef _DOUBLE_IS_32BITS
+
+int
+_DEFUN (isinf, (double),
+ double x)
+{
+ return isinff ((float) x);
+}
+
+#endif /* defined(_DOUBLE_IS_32BITS) */
+
+
diff --git a/newlib/libm/mathfp/sf_isnan.c b/newlib/libm/mathfp/sf_isnan.c
new file mode 100644
index 000000000..ac557a6b8
--- /dev/null
+++ b/newlib/libm/mathfp/sf_isnan.c
@@ -0,0 +1,48 @@
+
+/* @(#)z_isnanf.c 1.0 98/08/13 */
+/******************************************************************
+ * isnanf
+ *
+ * Input:
+ * x - pointer to a floating point value
+ *
+ * Output:
+ * An integer that indicates if the number is NaN.
+ *
+ * Description:
+ * This routine returns an integer that indicates if the number
+ * passed in is NaN (1) or is finite (0).
+ *
+ *****************************************************************/
+
+#include "fdlibm.h"
+#include "zmath.h"
+
+int
+_DEFUN (isnanf, (float),
+ float x)
+{
+ __int32_t wx;
+ int exp;
+
+ GET_FLOAT_WORD (wx, x);
+ exp = (wx & 0x7f800000) >> 23;
+
+ if ((exp == 0x7f8) && (wx & 0x7fffff))
+ return (1);
+ else
+ return (0);
+}
+
+
+#ifdef _DOUBLE_IS_32BITS
+
+int
+_DEFUN (isnan, (double),
+ double x)
+{
+ return isnanf((float) x);
+}
+
+#endif /* defined(_DOUBLE_IS_32BITS) */
+
diff --git a/newlib/libm/mathfp/sf_pow.c b/newlib/libm/mathfp/sf_pow.c
index 489a71dd0..932e75dbb 100644
--- a/newlib/libm/mathfp/sf_pow.c
+++ b/newlib/libm/mathfp/sf_pow.c
@@ -29,10 +29,9 @@ float powf (float x, float y)
}
}
- if (x == 0.0)
+ if (x == 0.0 && y <= 0.0)
{
- if (y <= 0.0)
- errno = EDOM;
+ errno = EDOM;
}
else if ((t = y * log (fabsf (x))) >= BIGX)
{
diff --git a/newlib/libm/mathfp/w_jn.c b/newlib/libm/mathfp/w_jn.c
index 14c2225f0..bd7878104 100644
--- a/newlib/libm/mathfp/w_jn.c
+++ b/newlib/libm/mathfp/w_jn.c
@@ -13,7 +13,7 @@
/*
FUNCTION
-<<jN>>, <<jNf>>, <<yN>>, <<yNf>>---Bessel functions
+<<jN>>,<<jNf>>,<<yN>>,<<yNf>>---Bessel functions
INDEX
j0
diff --git a/newlib/newlib.hin b/newlib/newlib.hin
index 207192897..cb6f96d58 100644
--- a/newlib/newlib.hin
+++ b/newlib/newlib.hin
@@ -1,4 +1,3 @@
-/* newlib.hin. Generated automatically from configure.in by autoheader. */
#ifndef __NEWLIB_H__
#define __NEWLIB_H__ 1
@@ -30,16 +29,6 @@
/* Enable ICONV external CCS files loading capabilities */
#undef _ICONV_ENABLE_EXTERNAL_CCS
-/* Define if the linker supports .preinit_array/.init_array/.fini_array
- * sections. */
-#undef HAVE_INITFINI_ARRAY
-
-/* True if atexit() may dynamically allocate space for cleanup
- functions. */
-#undef _ATEXIT_DYNAMIC_ALLOC
-
-/* Define if the compiler supports aliasing an array to an address. */
-#undef _HAVE_ARRAY_ALIASING
/*
* Iconv encodings enabled ("to" direction)
*/
diff --git a/newlib/stamp-h.in b/newlib/stamp-h.in
index 9788f7023..e69de29bb 100644
--- a/newlib/stamp-h.in
+++ b/newlib/stamp-h.in
@@ -1 +0,0 @@
-timestamp
diff --git a/newlib/testsuite/include/check.h b/newlib/testsuite/include/check.h
index 70a71a1b9..8c95441af 100644
--- a/newlib/testsuite/include/check.h
+++ b/newlib/testsuite/include/check.h
@@ -1,5 +1,4 @@
#include <stdio.h>
-#include <stdlib.h>
#define CHECK(a) { \
if (!(a)) \
diff --git a/newlib/testsuite/lib/checkoutput.exp b/newlib/testsuite/lib/checkoutput.exp
index 146f87b00..8cb46925f 100644
--- a/newlib/testsuite/lib/checkoutput.exp
+++ b/newlib/testsuite/lib/checkoutput.exp
@@ -9,19 +9,17 @@
# It assumes one line of output per test.
proc newlib_check_output { srcfile expectlist } {
- global subdir srcdir tmpdir
+ global objdir subdir srcdir
set srcfullname "$srcdir/$subdir/$srcfile"
- set test_driver "$tmpdir/[file tail [file rootname $srcfullname].x]"
+ set test_driver "$objdir/testsuite/[file tail [file rootname $srcfullname].x]"
set comp_output [newlib_target_compile "$srcfullname" "$test_driver" "executable" ""]
if { $comp_output != "" } {
- fail "$subdir/$srcfile compilation"
- unresolved "$subdir/$srcfile output"
+ fail "Failed to compile $srcfile.\n"
return
}
- pass "$subdir/$srcfile compilation"
set result [newlib_load $test_driver ""]
set status [lindex $result 0]
@@ -32,12 +30,11 @@ proc newlib_check_output { srcfile expectlist } {
foreach { expectedval } $expectlist {
set gotval [string trim [lindex $output_lines 0] "\r"]
if { ! [string match $expectedval $gotval] } {
- verbose -log "$subdir/$srcfile: Expected: $expectedval Got: $gotval "
- fail "$subdir/$srcfile output"
+ fail "$srcfile: Expected: $expectedval Got: $gotval "
return
}
set output_lines [lrange $output_lines 1 end]
}
- pass "$subdir/$srcfile output"
+ pass $srcfile
}
diff --git a/newlib/testsuite/lib/flags.exp b/newlib/testsuite/lib/flags.exp
index ebc69286f..f6bffde1f 100644
--- a/newlib/testsuite/lib/flags.exp
+++ b/newlib/testsuite/lib/flags.exp
@@ -12,20 +12,12 @@
# directories, rather than in the build and source paths of the
# compiler being used.
-if {![llength [info procs saved_libgloss_link_flags]]} {
- rename libgloss_link_flags saved_libgloss_link_flags
-}
-
proc libgloss_link_flags { args } {
global target_cpu
# These values come from the local site.exp.
global srcdir objdir
global multibuildtop
- if {![info exists multibuildtop]} {
- return [saved_libgloss_link_flags $args]
- }
-
verbose "In newlib version of libgloss_link_flags...\n"
if [isnative] {
diff --git a/newlib/testsuite/lib/newlib.exp b/newlib/testsuite/lib/newlib.exp
index f1df40e52..c53a8a819 100644
--- a/newlib/testsuite/lib/newlib.exp
+++ b/newlib/testsuite/lib/newlib.exp
@@ -23,7 +23,7 @@ proc newlib_init { args } {
global newlib_initialized
global target_info
# These values are initialized in the local site.exp file.
- global srcdir objdir tmpdir
+ global srcdir objdir
global host_triplet target_triplet
global old_ld_library_path
@@ -34,7 +34,7 @@ proc newlib_init { args } {
if {[target_info needs_status_wrapper] != "" && \
[target_info needs_status_wrapper] != "0" && \
![info exists gluefile]} {
- set gluefile ${tmpdir}/testglue.o;
+ set gluefile ${objdir}/testsuite/testglue.o;
set result [build_wrapper $gluefile];
if { $result != "" } {
set gluefile [lindex $result 0];
diff --git a/newlib/testsuite/lib/passfail.exp b/newlib/testsuite/lib/passfail.exp
index 5e7eb21e7..82dc0093c 100644
--- a/newlib/testsuite/lib/passfail.exp
+++ b/newlib/testsuite/lib/passfail.exp
@@ -32,21 +32,19 @@ proc newlib_pass_fail_all { flag exclude_list } {
# compiles and runs.
proc newlib_pass_fail { srcfile } {
- global srcdir tmpdir subdir
+ global srcdir objdir subdir
set fullsrcfile "$srcdir/$subdir/$srcfile"
- set test_driver "$tmpdir/[file rootname $srcfile].x"
+ set test_driver "$objdir/testsuite/[file rootname $srcfile].x"
set comp_output [newlib_target_compile "$fullsrcfile" "$test_driver" "executable" ""]
if { $comp_output != "" } {
- fail "$subdir/$srcfile compilation"
- unresolved "$subdir/$srcfile execution"
+ fail "Failed to compile $fullsrcfile.\n"
} else {
- pass "$subdir/$srcfile compilation"
set result [newlib_load $test_driver ""]
set status [lindex $result 0]
- $status "$subdir/$srcfile execution"
+ $status "$fullsrcfile"
}
}
diff --git a/newlib/testsuite/newlib.string/memmove1.c b/newlib/testsuite/newlib.string/memmove1.c
deleted file mode 100644
index d3f1d6692..000000000
--- a/newlib/testsuite/newlib.string/memmove1.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/* A minor test-program for memmove.
- Copyright (C) 2005 Axis Communications.
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Neither the name of Axis Communications nor the names of its
- contributors may be used to endorse or promote products derived
- from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY AXIS COMMUNICATIONS AND ITS CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AXIS
- COMMUNICATIONS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
- IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE. */
-
-/* Test moves of 0..MAX bytes; overlapping-src-higher,
- overlapping-src-lower and non-overlapping. The overlap varies with
- 1..N where N is the size moved. This means an order of MAX**2
- iterations. The size of an octet may seem appropriate for MAX and
- makes an upper limit for simple testing. For the CRIS simulator,
- making this 256 added 90s to the test-run (2GHz P4) while 64 (4s) was
- enough to spot the bugs that had crept in, hence the number chosen. */
-#define MAX 64
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#define TOO_MANY_ERRORS 11
-int errors = 0;
-
-#define DEBUGP \
- if (errors == TOO_MANY_ERRORS) \
- printf ("Further errors omitted\n"); \
- else if (errors < TOO_MANY_ERRORS) \
- printf
-
-/* A safe target-independent memmove. */
-
-void
-mymemmove (unsigned char *dest, unsigned char *src, size_t n)
-{
- size_t i;
-
- if ((src <= dest && src + n <= dest)
- || src >= dest)
- while (n-- > 0)
- *dest++ = *src++;
- else
- {
- dest += n;
- src += n;
- while (n-- > 0)
- *--dest = *--src;
- }
-}
-
-/* It's either the noinline attribute or forcing the test framework to
- pass -fno-builtin-memmove. */
-void
-xmemmove (unsigned char *dest, unsigned char *src, size_t n)
- __attribute__ ((__noinline__));
-
-void
-xmemmove (unsigned char *dest, unsigned char *src, size_t n)
-{
- void *retp;
- retp = memmove (dest, src, n);
-
- if (retp != dest)
- {
- errors++;
- DEBUGP ("memmove of n bytes returned %p instead of dest=%p\n",
- retp, dest);
- }
-}
-
-
-/* Fill the array with something we can associate with a position, but
- not exactly the same as the position index. */
-
-void
-fill (unsigned char dest[MAX*3])
-{
- size_t i;
- for (i = 0; i < MAX*3; i++)
- dest[i] = (10 + i) % MAX;
-}
-
-int
-main (void)
-{
- size_t i;
- int errors = 0;
-
- /* Leave some room before and after the area tested, so we can detect
- overwrites of up to N bytes, N being the amount tested. If you
- want to test using valgrind, make these malloced instead. */
- unsigned char from_test[MAX*3];
- unsigned char to_test[MAX*3];
- unsigned char from_known[MAX*3];
- unsigned char to_known[MAX*3];
-
- /* Non-overlap. */
- for (i = 0; i < MAX; i++)
- {
- /* Do the memmove first before setting the known array, so we know
- it didn't change any of the known array. */
- fill (from_test);
- fill (to_test);
- xmemmove (to_test + MAX, 1 + from_test + MAX, i);
-
- fill (from_known);
- fill (to_known);
- mymemmove (to_known + MAX, 1 + from_known + MAX, i);
-
- if (memcmp (to_known, to_test, sizeof (to_known)) != 0)
- {
- errors++;
- DEBUGP ("memmove failed non-overlap test for %d bytes\n", i);
- }
- }
-
- /* Overlap-from-before. */
- for (i = 0; i < MAX; i++)
- {
- size_t j;
- for (j = 0; j < i; j++)
- {
- fill (to_test);
- xmemmove (to_test + MAX * 2 - i, to_test + MAX * 2 - i - j, i);
-
- fill (to_known);
- mymemmove (to_known + MAX * 2 - i, to_known + MAX * 2 - i - j, i);
-
- if (memcmp (to_known, to_test, sizeof (to_known)) != 0)
- {
- errors++;
- DEBUGP ("memmove failed for %d bytes,"
- " with src %d bytes before dest\n",
- i, j);
- }
- }
- }
-
- /* Overlap-from-after. */
- for (i = 0; i < MAX; i++)
- {
- size_t j;
- for (j = 0; j < i; j++)
- {
- fill (to_test);
- xmemmove (to_test + MAX, to_test + MAX + j, i);
-
- fill (to_known);
- mymemmove (to_known + MAX, to_known + MAX + j, i);
-
- if (memcmp (to_known, to_test, sizeof (to_known)) != 0)
- {
- errors++;
- DEBUGP ("memmove failed when moving %d bytes,"
- " with src %d bytes after dest\n",
- i, j);
- }
- }
- }
-
- if (errors != 0)
- abort ();
- exit (0);
-}
diff --git a/setup.com b/setup.com
index 6083dda32..553afd55a 100644
--- a/setup.com
+++ b/setup.com
@@ -3,5 +3,6 @@ $!
$ define aout [-.INCLUDE.AOUT]
$ define coff [-.INCLUDE.COFF]
$ define elf [-.INCLUDE.ELF]
+$ define mpw [-.INCLUDE.MPW]
$ define nlm [-.INCLUDE.NLM]
$ define opcode [-.INCLUDE.OPCODE]
diff --git a/src-release b/src-release
index 40a34d877..f012d9df8 100644
--- a/src-release
+++ b/src-release
@@ -13,7 +13,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# This Makefile contains release scripts for gdb, binutils, and other
@@ -44,7 +44,7 @@ PWD = $${PWDCMD-pwd}
# ChangeLog omitted because it may refer to files which are not in this
# distribution (perhaps it would be better to include it anyway).
DEVO_SUPPORT= README Makefile.in configure configure.in \
- config.guess config.sub config move-if-change \
+ config.guess config.if config.sub config move-if-change \
COPYING COPYING.LIB install-sh config-ml.in symlink-tree \
mkinstalldirs ltconfig ltmain.sh missing ylwrap \
libtool.m4 gettext.m4 ltcf-c.sh ltcf-cxx.sh ltcf-gcj.sh \
@@ -159,6 +159,14 @@ do-proto-toplev: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex
done
cd etc && $(MAKE) info
$(MAKE) distclean
+ # Kludge for pr gdb/708. 'configure' configures in
+ # dejagnu/example/calc, but 'make distclean' does not clean in
+ # dejagnu/example. Someday somebody might fix this in dejagnu,
+ # and then import a new dejagnu into sourceware. Right now, a
+ # couple of 'rm' commands will get the gdb snapshots working
+ # again. -- chastain 2003-08-15
+ rm -f dejagnu/example/calc/config.status
+ rm -f dejagnu/example/calc/config.log
# Kludge for pr gdb/857. intl/Makefile.in lacks a couple
# of files in the distclean rule. Zack W is planning to make
# the gcc version of intl/ the master version and then push
@@ -220,9 +228,8 @@ do-md5sum:
echo "==> Adding md5 checksum to top-level directory"
cd proto-toplev && find * -follow $(CVS_NAMES) -prune \
-o -type f -print \
- | xargs $(MD5PROG) > ../md5.new
- -rm -f proto-toplev/md5.sum
- mv md5.new proto-toplev/md5.sum
+ | xargs $(MD5PROG) > ../md5.sum
+ mv md5.sum proto-toplev
.PHONY: do-djunpack
do-djunpack:
@@ -230,8 +237,9 @@ do-djunpack:
echo - 's /gdb-[0-9\.]*/$(PACKAGE)-'"$(VER)"'/'
sed < djunpack.bat > djunpack.new \
-e 's/gdb-[0-9][0-9\.]*/$(PACKAGE)-'"$(VER)"'/'
+ mv djunpack.new djunpack.bat
-rm -f proto-toplev/djunpack.bat
- mv djunpack.new proto-toplev/djunpack.bat
+ ln -s ../djunpack.bat proto-toplev/djunpack.bat
TEXINFO_SUPPORT= texinfo/texinfo.tex
DIST_SUPPORT= $(DEVO_SUPPORT) $(TEXINFO_SUPPORT)
@@ -265,7 +273,7 @@ gnats.tar.bz2: $(DIST_SUPPORT) $(GNATS_SUPPORT_DIRS) gnats
SUPPORT_FILES="$(GNATS_SUPPORT_DIRS)"
.PHONY: gdb.tar.bz2
-GDB_SUPPORT_DIRS= bfd include libiberty opcodes readline sim
+GDB_SUPPORT_DIRS= bfd include libiberty opcodes readline sim utils intl
gdb.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb
$(MAKE) -f $(SELF) gdb-taz TOOL=gdb \
MD5PROG="$(MD5PROG)" \
@@ -276,6 +284,30 @@ gdb.tar: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb
MD5PROG="$(MD5PROG)" \
SUPPORT_FILES="$(GDB_SUPPORT_DIRS)"
+DEJAGNU_SUPPORT_DIRS= tcl expect libiberty
+.PHONY: dejagnu.tar.bz2
+dejagnu.tar.bz2: $(DIST_SUPPORT) $(DEJAGNU_SUPPORT_DIRS) dejagnu
+ $(MAKE) -f $(SELF) gdb-taz TOOL=dejagnu \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(DEJAGNU_SUPPORT_DIRS)"
+.PHONY: dejagnu.tar
+dejagnu.tar: $(DIST_SUPPORT) $(DEJAGNU_SUPPORT_DIRS) dejagnu
+ $(MAKE) -f $(SELF) gdb-tar TOOL=dejagnu \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(DEJAGNU_SUPPORT_DIRS)"
+
+.PHONY: gdb+dejagnu.tar.bz2
+GDBD_SUPPORT_DIRS= $(GDB_SUPPORT_DIRS) tcl expect dejagnu
+gdb+dejagnu.tar.bz2: $(DIST_SUPPORT) $(GDBD_SUPPORT_DIRS) gdb
+ $(MAKE) -f $(SELF) gdb-taz TOOL=gdb PACKAGE=gdb+dejagnu \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(GDBD_SUPPORT_DIRS)"
+.PHONY: gdb+dejagnu.tar
+gdb+dejagnu.tar: $(DIST_SUPPORT) $(GDBD_SUPPORT_DIRS) gdb
+ $(MAKE) -f $(SELF) gdb-tar TOOL=gdb PACKAGE=gdb+dejagnu \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(GDBD_SUPPORT_DIRS)"
+
.PHONY: insight.tar.bz2
INSIGHT_SUPPORT_DIRS= $(GDB_SUPPORT_DIRS) tcl tk itcl libgui
insight.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb
@@ -288,5 +320,17 @@ insight.tar: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb
MD5PROG="$(MD5PROG)" \
SUPPORT_FILES="$(INSIGHT_SUPPORT_DIRS)"
+.PHONY: insight+dejagnu.tar.bz2
+INSIGHTD_SUPPORT_DIRS= $(INSIGHT_SUPPORT_DIRS) expect dejagnu
+insight+dejagnu.tar.bz2: $(DIST_SUPPORT) $(INSIGHTD_SUPPORT_DIRS) gdb
+ $(MAKE) -f $(SELF) gdb-taz TOOL=gdb PACKAGE="insight+dejagnu" \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(INSIGHTD_SUPPORT_DIRS)"
+.PHONY: insight+dejagnu.tar
+insight+dejagnu.tar: $(DIST_SUPPORT) $(INSIGHTD_SUPPORT_DIRS) gdb
+ $(MAKE) -f $(SELF) gdb-tar TOOL=gdb PACKAGE="insight+dejagnu" \
+ MD5PROG="$(MD5PROG)" \
+ SUPPORT_FILES="$(INSIGHTD_SUPPORT_DIRS)"
+
.NOEXPORT:
MAKEOVERRIDES=
diff --git a/symlink-tree b/symlink-tree
index a9d50831b..22132c76a 100755
--- a/symlink-tree
+++ b/symlink-tree
@@ -15,8 +15,8 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor,
-# Boston, MA 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
diff --git a/ylwrap b/ylwrap
index 102bd893f..2288ccde3 100755
--- a/ylwrap
+++ b/ylwrap
@@ -1,11 +1,6 @@
#! /bin/sh
# ylwrap - wrapper for lex/yacc invocations.
-
-scriptversion=2005-05-14.22
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005
-# Free Software Foundation, Inc.
-#
+# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@@ -20,84 +15,58 @@ scriptversion=2005-05-14.22
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# Usage:
+# ylwrap PROGRAM INPUT [OUTPUT DESIRED]... -- [ARGS]...
+# * PROGRAM is program to run.
+# * INPUT is the input file
+# * OUTPUT is file PROG generates
+# * DESIRED is file we actually want
+# * ARGS are passed to PROG
+# Any number of OUTPUT,DESIRED pairs may be used.
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-case "$1" in
- '')
- echo "$0: No files given. Try \`$0 --help' for more information." 1>&2
- exit 1
- ;;
- --basedir)
- basedir=$2
- shift 2
- ;;
- -h|--h*)
- cat <<\EOF
-Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]...
-
-Wrapper for lex/yacc invocations, renaming files as desired.
-
- INPUT is the input file
- OUTPUT is one file PROG generates
- DESIRED is the file we actually want instead of OUTPUT
- PROGRAM is program to run
- ARGS are passed to PROG
-
-Any number of OUTPUT,DESIRED pairs may be used.
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
- exit $?
- ;;
- -v|--v*)
- echo "ylwrap $scriptversion"
- exit $?
- ;;
+# The program to run.
+prog="$1"
+shift
+# Make any relative path in $prog absolute.
+case "$prog" in
+ /* | [A-Za-z]:\\*) ;;
+ */*) prog="`pwd`/$prog" ;;
esac
-
# The input.
input="$1"
shift
case "$input" in
- [\\/]* | ?:[\\/]*)
+ /* | [A-Za-z]:\\*)
# Absolute path; do nothing.
;;
- *)
- # Relative path. Make it absolute.
+ *)
+ # Relative path. Make it absolute. Why? Because otherwise any
+ # debugging info in the generated file will point to the wrong
+ # place. This is really gross.
input="`pwd`/$input"
;;
esac
+# We don't want to use the absolute path if the input in the current
+# directory like when making a tar ball.
+input_base=`echo $input | sed -e 's|.*/||'`
+if test -f $input_base && cmp $input_base $input >/dev/null 2>&1; then
+ input=$input_base
+fi
+
pairlist=
while test "$#" -ne 0; do
- if test "$1" = "--"; then
- shift
- break
- fi
- pairlist="$pairlist $1"
- shift
+ if test "$1" = "--"; then
+ shift
+ break
+ fi
+ pairlist="$pairlist $1"
+ shift
done
-# The program to run.
-prog="$1"
-shift
-# Make any relative path in $prog absolute.
-case "$prog" in
- [\\/]* | ?:[\\/]*) ;;
- *[\\/]*) prog="`pwd`/$prog" ;;
-esac
-
# FIXME: add hostname here for parallel makes that run commands on
# other machines. But that might take us over the 14-char limit.
dirname=ylwrap$$
@@ -105,119 +74,50 @@ trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15
mkdir $dirname || exit 1
cd $dirname
-
-case $# in
- 0) $prog "$input" ;;
- *) $prog "$@" "$input" ;;
+case "$input" in
+ /* | [A-Za-z]:\\*)
+ # Absolute path; do nothing.
+ ;;
+ *)
+ # Make a symbolic link, hard link or hardcopy.
+ ln -s ../"$input" . > /dev/null 2>&1 || ln ../"$input" . > /dev/null 2>&1 || cp ../"$input" .
+ ;;
esac
-ret=$?
-
-if test $ret -eq 0; then
- set X $pairlist
- shift
- first=yes
- # Since DOS filename conventions don't allow two dots,
- # the DOS version of Bison writes out y_tab.c instead of y.tab.c
- # and y_tab.h instead of y.tab.h. Test to see if this is the case.
- y_tab_nodot="no"
- if test -f y_tab.c || test -f y_tab.h; then
- y_tab_nodot="yes"
- fi
-
- # The directory holding the input.
- input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'`
- # Quote $INPUT_DIR so we can use it in a regexp.
- # FIXME: really we should care about more than `.' and `\'.
- input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'`
-
- while test "$#" -ne 0; do
- from="$1"
- # Handle y_tab.c and y_tab.h output by DOS
- if test $y_tab_nodot = "yes"; then
- if test $from = "y.tab.c"; then
- from="y_tab.c"
+$prog ${1+"$@"} "$input"
+status=$?
+
+if test $status -eq 0; then
+ set X $pairlist
+ shift
+ first=yes
+ while test "$#" -ne 0; do
+ if test -f "$1"; then
+ # If $2 is an absolute path name, then just use that,
+ # otherwise prepend `../'.
+ case "$2" in
+ /* | [A-Za-z]:\\*) target="$2";;
+ *) target="../$2";;
+ esac
+ mv "$1" "$target" || status=$?
else
- if test $from = "y.tab.h"; then
- from="y_tab.h"
- fi
- fi
- fi
- if test -f "$from"; then
- # If $2 is an absolute path name, then just use that,
- # otherwise prepend `../'.
- case "$2" in
- [\\/]* | ?:[\\/]*) target="$2";;
- *) target="../$2";;
- esac
-
- # We do not want to overwrite a header file if it hasn't
- # changed. This avoid useless recompilations. However the
- # parser itself (the first file) should always be updated,
- # because it is the destination of the .y.c rule in the
- # Makefile. Divert the output of all other files to a temporary
- # file so we can compare them to existing versions.
- if test $first = no; then
- realtarget="$target"
- target="tmp-`echo $target | sed s/.*[\\/]//g`"
+ # A missing file is only an error for the first file. This
+ # is a blatant hack to let us support using "yacc -d". If -d
+ # is not specified, we don't want an error when the header
+ # file is "missing".
+ if test $first = yes; then
+ status=1
+ fi
fi
- # Edit out `#line' or `#' directives.
- #
- # We don't want the resulting debug information to point at
- # an absolute srcdir; it is better for it to just mention the
- # .y file with no path.
- #
- # We want to use the real output file name, not yy.lex.c for
- # instance.
- #
- # We want the include guards to be adjusted too.
- FROM=`echo "$from" | sed \
- -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
- -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
- TARGET=`echo "$2" | sed \
- -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
- -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
-
- sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \
- -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$?
-
- # Check whether header files must be updated.
- if test $first = no; then
- if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
- echo "$2" is unchanged
- rm -f "$target"
- else
- echo updating "$2"
- mv -f "$target" "$realtarget"
- fi
- fi
- else
- # A missing file is only an error for the first file. This
- # is a blatant hack to let us support using "yacc -d". If -d
- # is not specified, we don't want an error when the header
- # file is "missing".
- if test $first = yes; then
- ret=1
- fi
- fi
- shift
- shift
- first=no
- done
+ shift
+ shift
+ first=no
+ done
else
- ret=$?
+ status=$?
fi
# Remove the directory.
cd ..
rm -rf $dirname
-exit $ret
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
+exit $status