summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-02-14 23:11:05 -0600
committerWaldemar Brodkorb <wbx@uclibc-ng.org>2015-12-05 21:10:30 +0100
commitd2ac3a6b3a2d2369bec4bf9f0555ebbe72e7bdf5 (patch)
treed3a6afebcc602f01e07e3970b4305fba4871f358
parent2fbe1ee66ad2107866d3fddd014c1349d135b424 (diff)
good bye vax
I mailed with Jan-Benedict Glaw, it seems VAX on Linux is really a lot of work todo and uClibc support didn't work ever.
-rw-r--r--extra/Configs/Config.in9
-rw-r--r--extra/Configs/Config.vax15
-rw-r--r--extra/Configs/defconfigs/vax/defconfig1
-rw-r--r--libc/inet/rpc/xdr_float.c172
-rw-r--r--libc/sysdeps/linux/sparc/soft-fp/longlong.h45
-rw-r--r--libc/sysdeps/linux/vax/Makefile15
-rw-r--r--libc/sysdeps/linux/vax/Makefile.arch10
-rw-r--r--libc/sysdeps/linux/vax/__longjmp.S47
-rw-r--r--libc/sysdeps/linux/vax/_setjmp.S53
-rw-r--r--libc/sysdeps/linux/vax/bits/endian.h9
-rw-r--r--libc/sysdeps/linux/vax/bits/fcntl.h215
-rw-r--r--libc/sysdeps/linux/vax/bits/huge_val.h25
-rw-r--r--libc/sysdeps/linux/vax/bits/ipc.h49
-rw-r--r--libc/sysdeps/linux/vax/bits/kernel_stat.h50
-rw-r--r--libc/sysdeps/linux/vax/bits/kernel_types.h45
-rw-r--r--libc/sysdeps/linux/vax/bits/sem.h86
-rw-r--r--libc/sysdeps/linux/vax/bits/setjmp.h30
-rw-r--r--libc/sysdeps/linux/vax/bits/shm.h93
-rw-r--r--libc/sysdeps/linux/vax/bits/sigcontext.h28
-rw-r--r--libc/sysdeps/linux/vax/bits/stackinfo.h7
-rw-r--r--libc/sysdeps/linux/vax/bits/syscalls.h258
-rw-r--r--libc/sysdeps/linux/vax/bits/uClibc_arch_features.h41
-rw-r--r--libc/sysdeps/linux/vax/bits/wordsize.h18
-rw-r--r--libc/sysdeps/linux/vax/brk.c52
-rw-r--r--libc/sysdeps/linux/vax/clone.S84
-rw-r--r--libc/sysdeps/linux/vax/crt1.S73
-rw-r--r--libc/sysdeps/linux/vax/crti.S21
-rw-r--r--libc/sysdeps/linux/vax/crtn.S19
-rw-r--r--libc/sysdeps/linux/vax/jmpbuf-unwind.h11
-rw-r--r--libc/sysdeps/linux/vax/setjmp.S39
-rw-r--r--libc/sysdeps/linux/vax/sys/procfs.h122
-rw-r--r--libc/sysdeps/linux/vax/sys/ucontext.h79
32 files changed, 0 insertions, 1821 deletions
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
index dc7159d0a..df99a5c88 100644
--- a/extra/Configs/Config.in
+++ b/extra/Configs/Config.in
@@ -40,7 +40,6 @@ choice
default TARGET_sh if DESIRED_TARGET_ARCH = "sh"
default TARGET_sparc if DESIRED_TARGET_ARCH = "sparc"
default TARGET_v850 if DESIRED_TARGET_ARCH = "v850"
- default TARGET_vax if DESIRED_TARGET_ARCH = "vax"
default TARGET_x86_64 if DESIRED_TARGET_ARCH = "x86_64"
default TARGET_xtensa if DESIRED_TARGET_ARCH = "xtensa"
help
@@ -126,9 +125,6 @@ config TARGET_sparc
#config TARGET_v850
# bool "v850 (BROKEN)"
-#config TARGET_vax
-# bool "vax"
-
config TARGET_x86_64
bool "x86_64"
@@ -236,10 +232,6 @@ if TARGET_v850
source "extra/Configs/Config.v850"
endif
-if TARGET_vax
-source "extra/Configs/Config.vax"
-endif
-
if TARGET_x86_64
source "extra/Configs/Config.x86_64"
endif
@@ -589,7 +581,6 @@ config UCLIBC_HAS_THREADS_NATIVE
!TARGET_microblaze && \
!TARGET_nios2 && \
!TARGET_or1k && \
- !TARGET_vax && \
ARCH_USE_MMU
help
If you want to compile uClibc with NPTL support, then answer Y.
diff --git a/extra/Configs/Config.vax b/extra/Configs/Config.vax
deleted file mode 100644
index 418e3e71c..000000000
--- a/extra/Configs/Config.vax
+++ /dev/null
@@ -1,15 +0,0 @@
-#
-# For a description of the syntax of this configuration file,
-# see extra/config/Kconfig-language.txt
-#
-
-config TARGET_ARCH
- string
- default "vax"
-
-config FORCE_OPTIONS_FOR_ARCH
- bool
- default y
- select ARCH_LITTLE_ENDIAN
- select ARCH_HAS_NO_LDSO
- select ARCH_HAS_DEPRECATED_SYSCALLS
diff --git a/extra/Configs/defconfigs/vax/defconfig b/extra/Configs/defconfigs/vax/defconfig
deleted file mode 100644
index 77a464e29..000000000
--- a/extra/Configs/defconfigs/vax/defconfig
+++ /dev/null
@@ -1 +0,0 @@
-TARGET_vax=y
diff --git a/libc/inet/rpc/xdr_float.c b/libc/inet/rpc/xdr_float.c
index 5121239ea..f8a2bb399 100644
--- a/libc/inet/rpc/xdr_float.c
+++ b/libc/inet/rpc/xdr_float.c
@@ -54,67 +54,12 @@ static char sccsid[] = "@(#)xdr_float.c 1.12 87/08/11 Copyr 1984 Sun Micro";
#define LSW (__FLOAT_WORD_ORDER == __BIG_ENDIAN)
-#ifdef vax
-
-/* What IEEE single precision floating point looks like on a Vax */
-struct ieee_single {
- unsigned int mantissa: 23;
- unsigned int exp : 8;
- unsigned int sign : 1;
-};
-
-/* Vax single precision floating point */
-struct vax_single {
- unsigned int mantissa1 : 7;
- unsigned int exp : 8;
- unsigned int sign : 1;
- unsigned int mantissa2 : 16;
-};
-
-#define VAX_SNG_BIAS 0x81
-#define IEEE_SNG_BIAS 0x7f
-
-static struct sgl_limits {
- struct vax_single s;
- struct ieee_single ieee;
-} sgl_limits[2] = {
- {{ 0x7f, 0xff, 0x0, 0xffff }, /* Max Vax */
- { 0x0, 0xff, 0x0 }}, /* Max IEEE */
- {{ 0x0, 0x0, 0x0, 0x0 }, /* Min Vax */
- { 0x0, 0x0, 0x0 }} /* Min IEEE */
-};
-#endif /* vax */
-
bool_t
xdr_float(XDR *xdrs, float *fp)
{
-#ifdef vax
- struct ieee_single is;
- struct vax_single vs, *vsp;
- struct sgl_limits *lim;
- int i;
-#endif
switch (xdrs->x_op) {
case XDR_ENCODE:
-#ifdef vax
- vs = *((struct vax_single *)fp);
- for (i = 0, lim = sgl_limits;
- i < sizeof(sgl_limits)/sizeof(struct sgl_limits);
- i++, lim++) {
- if ((vs.mantissa2 == lim->s.mantissa2) &&
- (vs.exp == lim->s.exp) &&
- (vs.mantissa1 == lim->s.mantissa1)) {
- is = lim->ieee;
- goto shipit;
- }
- }
- is.exp = vs.exp - VAX_SNG_BIAS + IEEE_SNG_BIAS;
- is.mantissa = (vs.mantissa1 << 16) | vs.mantissa2;
- shipit:
- is.sign = vs.sign;
- return (XDR_PUTLONG(xdrs, (long *)&is));
-#else
if (sizeof(float) == sizeof(long))
return (XDR_PUTLONG(xdrs, (long *)fp));
else if (sizeof(float) == sizeof(int)) {
@@ -122,29 +67,8 @@ xdr_float(XDR *xdrs, float *fp)
return (XDR_PUTLONG(xdrs, &tmp));
}
break;
-#endif
case XDR_DECODE:
-#ifdef vax
- vsp = (struct vax_single *)fp;
- if (!XDR_GETLONG(xdrs, (long *)&is))
- return (FALSE);
- for (i = 0, lim = sgl_limits;
- i < sizeof(sgl_limits)/sizeof(struct sgl_limits);
- i++, lim++) {
- if ((is.exp == lim->ieee.exp) &&
- (is.mantissa == lim->ieee.mantissa)) {
- *vsp = lim->s;
- goto doneit;
- }
- }
- vsp->exp = is.exp - IEEE_SNG_BIAS + VAX_SNG_BIAS;
- vsp->mantissa2 = is.mantissa;
- vsp->mantissa1 = (is.mantissa >> 16);
- doneit:
- vsp->sign = is.sign;
- return (TRUE);
-#else
if (sizeof(float) == sizeof(long))
return (XDR_GETLONG(xdrs, (long *)fp));
else if (sizeof(float) == sizeof(int)) {
@@ -155,7 +79,6 @@ xdr_float(XDR *xdrs, float *fp)
}
}
break;
-#endif
case XDR_FREE:
return (TRUE);
@@ -163,82 +86,13 @@ xdr_float(XDR *xdrs, float *fp)
return (FALSE);
}
-/*
- * This routine works on Suns (Sky / 68000's) and Vaxen.
- */
-
-#ifdef vax
-/* What IEEE double precision floating point looks like on a Vax */
-struct ieee_double {
- unsigned int mantissa1 : 20;
- unsigned int exp : 11;
- unsigned int sign : 1;
- unsigned int mantissa2 : 32;
-};
-
-/* Vax double precision floating point */
-struct vax_double {
- unsigned int mantissa1 : 7;
- unsigned int exp : 8;
- unsigned int sign : 1;
- unsigned int mantissa2 : 16;
- unsigned int mantissa3 : 16;
- unsigned int mantissa4 : 16;
-};
-
-#define VAX_DBL_BIAS 0x81
-#define IEEE_DBL_BIAS 0x3ff
-#define MASK(nbits) ((1 << nbits) - 1)
-
-static struct dbl_limits {
- struct vax_double d;
- struct ieee_double ieee;
-} dbl_limits[2] = {
- {{ 0x7f, 0xff, 0x0, 0xffff, 0xffff, 0xffff }, /* Max Vax */
- { 0x0, 0x7ff, 0x0, 0x0 }}, /* Max IEEE */
- {{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, /* Min Vax */
- { 0x0, 0x0, 0x0, 0x0 }} /* Min IEEE */
-};
-
-#endif /* vax */
-
-
bool_t
xdr_double(XDR *xdrs, double *dp)
{
-#ifdef vax
- struct ieee_double id;
- struct vax_double vd;
- register struct dbl_limits *lim;
- int i;
-#endif
switch (xdrs->x_op) {
case XDR_ENCODE:
-#ifdef vax
- vd = *((struct vax_double *)dp);
- for (i = 0, lim = dbl_limits;
- i < sizeof(dbl_limits)/sizeof(struct dbl_limits);
- i++, lim++) {
- if ((vd.mantissa4 == lim->d.mantissa4) &&
- (vd.mantissa3 == lim->d.mantissa3) &&
- (vd.mantissa2 == lim->d.mantissa2) &&
- (vd.mantissa1 == lim->d.mantissa1) &&
- (vd.exp == lim->d.exp)) {
- id = lim->ieee;
- goto shipit;
- }
- }
- id.exp = vd.exp - VAX_DBL_BIAS + IEEE_DBL_BIAS;
- id.mantissa1 = (vd.mantissa1 << 13) | (vd.mantissa2 >> 3);
- id.mantissa2 = ((vd.mantissa2 & MASK(3)) << 29) |
- (vd.mantissa3 << 13) |
- ((vd.mantissa4 >> 3) & MASK(13));
- shipit:
- id.sign = vd.sign;
- dp = (double *)&id;
-#endif
if (2*sizeof(long) == sizeof(double)) {
long *lp = (long *)dp;
return (XDR_PUTLONG(xdrs, lp+!LSW) &&
@@ -254,31 +108,6 @@ xdr_double(XDR *xdrs, double *dp)
break;
case XDR_DECODE:
-#ifdef vax
- lp = (long *)&id;
- if (!XDR_GETLONG(xdrs, lp++) || !XDR_GETLONG(xdrs, lp))
- return (FALSE);
- for (i = 0, lim = dbl_limits;
- i < sizeof(dbl_limits)/sizeof(struct dbl_limits);
- i++, lim++) {
- if ((id.mantissa2 == lim->ieee.mantissa2) &&
- (id.mantissa1 == lim->ieee.mantissa1) &&
- (id.exp == lim->ieee.exp)) {
- vd = lim->d;
- goto doneit;
- }
- }
- vd.exp = id.exp - IEEE_DBL_BIAS + VAX_DBL_BIAS;
- vd.mantissa1 = (id.mantissa1 >> 13);
- vd.mantissa2 = ((id.mantissa1 & MASK(13)) << 3) |
- (id.mantissa2 >> 29);
- vd.mantissa3 = (id.mantissa2 >> 13);
- vd.mantissa4 = (id.mantissa2 << 3);
- doneit:
- vd.sign = id.sign;
- *dp = *((double *)&vd);
- return (TRUE);
-#else
if (2*sizeof(long) == sizeof(double)) {
long *lp = (long *)dp;
return (XDR_GETLONG(xdrs, lp+!LSW) &&
@@ -294,7 +123,6 @@ xdr_double(XDR *xdrs, double *dp)
}
}
break;
-#endif
case XDR_FREE:
return (TRUE);
diff --git a/libc/sysdeps/linux/sparc/soft-fp/longlong.h b/libc/sysdeps/linux/sparc/soft-fp/longlong.h
index ccff2d889..9eebae393 100644
--- a/libc/sysdeps/linux/sparc/soft-fp/longlong.h
+++ b/libc/sysdeps/linux/sparc/soft-fp/longlong.h
@@ -1197,51 +1197,6 @@ UDItype __umulsidi3 (USItype, USItype);
#define UDIV_TIME 230
#endif /* sparc64 */
-#if defined (__vax__) && W_TYPE_SIZE == 32
-#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
- __asm__ ("addl2 %5,%1\n\tadwc %3,%0" \
- : "=g" ((USItype) (sh)), \
- "=&g" ((USItype) (sl)) \
- : "%0" ((USItype) (ah)), \
- "g" ((USItype) (bh)), \
- "%1" ((USItype) (al)), \
- "g" ((USItype) (bl)))
-#define sub_ddmmss(sh, sl, ah, al, bh, bl) \
- __asm__ ("subl2 %5,%1\n\tsbwc %3,%0" \
- : "=g" ((USItype) (sh)), \
- "=&g" ((USItype) (sl)) \
- : "0" ((USItype) (ah)), \
- "g" ((USItype) (bh)), \
- "1" ((USItype) (al)), \
- "g" ((USItype) (bl)))
-#define umul_ppmm(xh, xl, m0, m1) \
- do { \
- union { \
- UDItype __ll; \
- struct {USItype __l, __h;} __i; \
- } __xx; \
- USItype __m0 = (m0), __m1 = (m1); \
- __asm__ ("emul %1,%2,$0,%0" \
- : "=r" (__xx.__ll) \
- : "g" (__m0), \
- "g" (__m1)); \
- (xh) = __xx.__i.__h; \
- (xl) = __xx.__i.__l; \
- (xh) += ((((SItype) __m0 >> 31) & __m1) \
- + (((SItype) __m1 >> 31) & __m0)); \
- } while (0)
-#define sdiv_qrnnd(q, r, n1, n0, d) \
- do { \
- union {DItype __ll; \
- struct {SItype __l, __h;} __i; \
- } __xx; \
- __xx.__i.__h = n1; __xx.__i.__l = n0; \
- __asm__ ("ediv %3,%2,%0,%1" \
- : "=g" (q), "=g" (r) \
- : "g" (__xx.__ll), "g" (d)); \
- } while (0)
-#endif /* __vax__ */
-
#if defined (__xtensa__) && W_TYPE_SIZE == 32
/* This code is not Xtensa-configuration-specific, so rely on the compiler
to expand builtin functions depending on what configuration features
diff --git a/libc/sysdeps/linux/vax/Makefile b/libc/sysdeps/linux/vax/Makefile
deleted file mode 100644
index b1bf1ef10..000000000
--- a/libc/sysdeps/linux/vax/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-# Makefile for uClibc
-#
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
-#
-# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-#
-
-TOPDIR=../../../../
-
-top_srcdir=$(TOPDIR)
-top_builddir=../../../../
-all: objs
-include $(top_builddir)Rules.mak
-include Makefile.arch
-include $(top_srcdir)Makerules
diff --git a/libc/sysdeps/linux/vax/Makefile.arch b/libc/sysdeps/linux/vax/Makefile.arch
deleted file mode 100644
index 04ed10174..000000000
--- a/libc/sysdeps/linux/vax/Makefile.arch
+++ /dev/null
@@ -1,10 +0,0 @@
-# Makefile for uClibc
-#
-# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
-# Copyright (C) 2005-2006 Jan-Benedict Glaw <jbglaw@lug-owl.de>
-#
-# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-#
-
-CSRC-y := brk.c
-SSRC-y := __longjmp.S setjmp.S _setjmp.S clone.S
diff --git a/libc/sysdeps/linux/vax/__longjmp.S b/libc/sysdeps/linux/vax/__longjmp.S
deleted file mode 100644
index 61b37a3b9..000000000
--- a/libc/sysdeps/linux/vax/__longjmp.S
+++ /dev/null
@@ -1,47 +0,0 @@
-#include <features.h>
-
-/*
- * longjmp.S atp sept 2001
- * Jan-Benedict Glaw <jbglaw@lug-owl.de> 2006
- *
- * Restore regs and info and jmp back to a previous setjmp
- */
-
-.globl __longjmp
-.align 4
-__longjmp:
- .word 0x0040 /* This matches setjmp and PLT */
- movl 0x4(%ap), %r0 /* Our scratch reg */
-/* movl $0, %r0 */
-/* movl (%r0), %r0 */
- /* We are going to modify our stack frame */
- /* to the same as that of the setjmp we called earlier */
- movl (%r0), (%fp) /* cond handler */
- movl 0x4(%r0), 0x4(%fp) /* psw */
- movl 0x8(%r0), 0x8(%fp) /* ap */
- movl 0xc(%r0), 0xc(%fp) /* fp */
- movl 0x10(%r0), 0x10(%fp) /* pc */
-
- /* Restore the regs */
- movl 0x14(%r0), %r1
- movl 0x18(%r0), %r2
- movl 0x1c(%r0), %r3
- movl 0x20(%r0), %r4
- movl 0x24(%r0), %r5
- movl 0x28(%r0), %r6
- movl 0x2c(%r0), %r7
- movl 0x30(%r0), %r8
- movl 0x34(%r0), %r9
- movl 0x38(%r0), %r10
- movl 0x3c(%r0), %r11
-
- /* Check val and set to 1 if set to zero */
- movl 0x8(%ap), %r0
- tstl %r0
- bneq exit_ok
- movl $0x1, %r0
-exit_ok:
- ret
-.size __longjmp,.-__longjmp
-libc_hidden_def(__longjmp)
-
diff --git a/libc/sysdeps/linux/vax/_setjmp.S b/libc/sysdeps/linux/vax/_setjmp.S
deleted file mode 100644
index 680ddd729..000000000
--- a/libc/sysdeps/linux/vax/_setjmp.S
+++ /dev/null
@@ -1,53 +0,0 @@
-.globl _setjmp
-.align 4
-_setjmp:
- .word 0x0040
-
- /* push an empty word onto the stack */
- pushl $0
-
- /* now copy handler, psw, ap, fp and pc on the stack up one word */
- movl 4(%sp), (%sp) /* copy handler */
- movl 8(%sp), 4(%sp) /* psw */
- movl 12(%sp), 8(%sp) /* ap */
- movl 16(%sp), 12(%sp) /* fp */
- movl 20(%sp), 16(%sp) /* pc */
- movl 24(%sp), 20(%sp) /* r6 from register mask */
-
- movl $2, 24(%sp) /* set the number of arguments to 2 */
- movl 32(%sp), 28(%sp) /* copy the jmp_buf */
- movl $1, 32(%sp) /* put the 1 on the stack */
-
- addl3 $24, %sp, %ap
- movl %sp, %fp
-
- moval __sigsetjmp, %r0
- addl2 $2, %r0
- pushl %r0
- rsb
-
-.globl setjmp
-.align 4
-setjmp:
- .word 0x0040
- pushl $0
-
- /* now copy handler, psw, ap, fp and pc on the stack up one word */
- movl 4(%sp), (%sp)
- movl 8(%sp), 4(%sp)
- movl 12(%sp), 8(%sp)
- movl 16(%sp), 12(%sp)
- movl 20(%sp), 16(%sp)
- movl 24(%sp), 20(%sp) /* r6 from register mask */
-
- movl $2, 24(%sp) /* set the number of arguments to 2 */
- movl 32(%sp), 28(%sp) /* copy the jmp_buf */
- movl $0, 32(%sp) /* put the 0 on the stack */
-
- addl3 $24, %sp, %ap
- movl %sp, %fp
-
- moval __sigsetjmp, %r0
- addl2 $2, %r0
- pushl %r0
- rsb
diff --git a/libc/sysdeps/linux/vax/bits/endian.h b/libc/sysdeps/linux/vax/bits/endian.h
deleted file mode 100644
index 9f0c4e2a9..000000000
--- a/libc/sysdeps/linux/vax/bits/endian.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/* VAX is little endian */
-
-#ifndef _ENDIAN_H
-# error "Never use <bits/endian.h> directly; include <endian.h> instead."
-#endif
-
-#define __BYTE_ORDER __LITTLE_ENDIAN
-
-/*#define __FLOAT_WORD_ORDER __BIG_ENDIAN*/
diff --git a/libc/sysdeps/linux/vax/bits/fcntl.h b/libc/sysdeps/linux/vax/bits/fcntl.h
deleted file mode 100644
index a30d5e102..000000000
--- a/libc/sysdeps/linux/vax/bits/fcntl.h
+++ /dev/null
@@ -1,215 +0,0 @@
-/* O_*, F_*, FD_* bit values for Linux.
- Copyright (C) 1995, 1996, 1997, 1998 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 Library General Public License as
- published by the Free Software Foundation; either version 2 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
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- see <http://www.gnu.org/licenses/>. */
-
-#ifndef _FCNTL_H
-# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
-#endif
-
-
-#include <sys/types.h>
-#ifdef __USE_GNU
-# include <bits/uio.h>
-#endif
-
-/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
- located on an ext2 file system */
-#define O_ACCMODE 0003
-#define O_RDONLY 00
-#define O_WRONLY 01
-#define O_RDWR 02
-#define O_CREAT 0100 /* not fcntl */
-#define O_EXCL 0200 /* not fcntl */
-#define O_NOCTTY 0400 /* not fcntl */
-#define O_TRUNC 01000 /* not fcntl */
-#define O_APPEND 02000
-#define O_NONBLOCK 04000
-#define O_NDELAY O_NONBLOCK
-#define O_SYNC 010000
-#define O_FSYNC O_SYNC
-#define O_ASYNC 020000
-
-#ifdef __USE_GNU
-# define O_DIRECTORY 040000 /* Must be a directory. */
-# define O_NOFOLLOW 0100000 /* Do not follow links. */
-#endif
-
-/* XXX missing */
-#ifdef __USE_LARGEFILE64
-# define O_LARGEFILE 0
-#endif
-
-/* For now Linux has synchronisity options for data and read operations.
- We define the symbols here but let them do the same as O_SYNC since
- this is a superset. */
-#if defined __USE_POSIX199309 || defined __USE_UNIX98
-# define O_DSYNC O_SYNC /* Synchronize data. */
-# define O_RSYNC O_SYNC /* Synchronize read operations. */
-#endif
-
-/* Values for the second argument to `fcntl'. */
-#define F_DUPFD 0 /* Duplicate file descriptor. */
-#define F_GETFD 1 /* Get file descriptor flags. */
-#define F_SETFD 2 /* Set file descriptor flags. */
-#define F_GETFL 3 /* Get file status flags. */
-#define F_SETFL 4 /* Set file status flags. */
-#define F_GETLK 5 /* Get record locking info. */
-#define F_SETLK 6 /* Set record locking info (non-blocking). */
-#define F_SETLKW 7 /* Set record locking info (blocking). */
-
-/* XXX missing */
-#define F_GETLK64 5 /* Get record locking info. */
-#define F_SETLK64 6 /* Set record locking info (non-blocking). */
-#define F_SETLKW64 7 /* Set record locking info (blocking). */
-
-#ifdef __USE_BSD
-# define F_SETOWN 8 /* Get owner of socket (receiver of SIGIO). */
-# define F_GETOWN 9 /* Set owner of socket (receiver of SIGIO). */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETSIG 10 /* Set number of signal to be sent. */
-# define F_GETSIG 11 /* Get number of signal to be sent. */
-#endif
-
-#ifdef __USE_GNU
-# define F_SETLEASE 1024 /* Set a lease. */
-# define F_GETLEASE 1025 /* Enquire what lease is active. */
-# define F_NOTIFY 1026 /* Request notfications on a directory. */
-# define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
- close-on-exit set on new fd. */
-# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
-# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
-#endif
-
-/* For F_[GET|SET]FL. */
-#define FD_CLOEXEC 1 /* actually anything with low bit set goes */
-
-/* For posix fcntl() and `l_type' field of a `struct flock' for lockf(). */
-#define F_RDLCK 0 /* Read lock. */
-#define F_WRLCK 1 /* Write lock. */
-#define F_UNLCK 2 /* Remove lock. */
-
-/* for old implementation of bsd flock () */
-#define F_EXLCK 4 /* or 3 */
-#define F_SHLCK 8 /* or 4 */
-
-#ifdef __USE_BSD
-/* 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 */
-#endif
-
-struct flock
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
-#ifndef __USE_FILE_OFFSET64
- __off_t l_start; /* Offset where the lock begins. */
- __off_t l_len; /* Size of the locked area; zero means until EOF. */
-#else
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
-#endif
- __pid_t l_pid; /* Process holding the lock. */
- };
-
-#ifdef __USE_LARGEFILE64
-struct flock64
- {
- short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */
- short int l_whence; /* Where `l_start' is relative to (like `lseek'). */
- __off64_t l_start; /* Offset where the lock begins. */
- __off64_t l_len; /* Size of the locked area; zero means until EOF. */
- __pid_t l_pid; /* Process holding the lock. */
- };
-#endif
-
-/* Define some more compatibility macros to be backward compatible with
- BSD systems which did not managed to hide these kernel macros. */
-#ifdef __USE_BSD
-# define FAPPEND O_APPEND
-# define FFSYNC O_FSYNC
-# define FASYNC O_ASYNC
-# define FNONBLOCK O_NONBLOCK
-# define FNDELAY O_NDELAY
-#endif /* Use BSD. */
-
-/* Advise to `posix_fadvise'. */
-#ifdef __USE_XOPEN2K
-# define POSIX_FADV_NORMAL 0 /* No further special treatment. */
-# define POSIX_FADV_RANDOM 1 /* Expect random page references. */
-# define POSIX_FADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define POSIX_FADV_WILLNEED 3 /* Will need these pages. */
-# define POSIX_FADV_DONTNEED 4 /* Don't need these pages. */
-# define POSIX_FADV_NOREUSE 5 /* Data will be accessed once. */
-#endif
-
-
-#if defined __USE_GNU && defined __UCLIBC_LINUX_SPECIFIC__
-/* Flags for SYNC_FILE_RANGE. */
-# define SYNC_FILE_RANGE_WAIT_BEFORE 1 /* Wait upon writeout of all pages
- in the range before performing the
- write. */
-# define SYNC_FILE_RANGE_WRITE 2 /* Initiate writeout of all those
- dirty pages in the range which are
- not presently under writeback. */
-# define SYNC_FILE_RANGE_WAIT_AFTER 4 /* Wait upon writeout of all pages in
- the range after performing the
- write. */
-
-/* Flags for SPLICE and VMSPLICE. */
-# define SPLICE_F_MOVE 1 /* Move pages instead of copying. */
-# define SPLICE_F_NONBLOCK 2 /* Don't block on the pipe splicing
- (but we may still block on the fd
- we splice from/to). */
-# define SPLICE_F_MORE 4 /* Expect more data. */
-# define SPLICE_F_GIFT 8 /* Pages passed in are a gift. */
-#endif
-
-__BEGIN_DECLS
-
-#if defined __USE_GNU && defined __UCLIBC_LINUX_SPECIFIC__
-
-/* Provide kernel hint to read ahead. */
-extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
- __THROW;
-
-
-/* Selective file content synch'ing. */
-extern int sync_file_range (int __fd, __off64_t __from, __off64_t __to,
- unsigned int __flags);
-
-/* Splice address range into a pipe. */
-extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
- size_t __count, unsigned int __flags);
-
-/* Splice two files together. */
-extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
- __off64_t *__offout, size_t __len,
- unsigned int __flags);
-
-/* In-kernel implementation of tee for pipe buffers. */
-extern ssize_t tee (int __fdin, int __fdout, size_t __len,
- unsigned int __flags);
-
-#endif
-__END_DECLS
-
diff --git a/libc/sysdeps/linux/vax/bits/huge_val.h b/libc/sysdeps/linux/vax/bits/huge_val.h
deleted file mode 100644
index f479021ad..000000000
--- a/libc/sysdeps/linux/vax/bits/huge_val.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* `HUGE_VAL' constant for Vaxen.
- Used by <stdlib.h> and <math.h> functions for overflow.
- Copyright (C) 1992, 1996, 1997 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, see
- <http://www.gnu.org/licenses/>. */
-
-#ifndef _MATH_H
-# error "Never use <bits/huge_val.h> directly; include <math.h> instead."
-#endif
-
-
-#define HUGE_VAL 1.70141182460469227e38
diff --git a/libc/sysdeps/linux/vax/bits/ipc.h b/libc/sysdeps/linux/vax/bits/ipc.h
deleted file mode 100644
index e4dba68f2..000000000
--- a/libc/sysdeps/linux/vax/bits/ipc.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright (C) 1995, 1996, 1997, 1998 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 Library General Public License as
- published by the Free Software Foundation; either version 2 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
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- see <http://www.gnu.org/licenses/>. */
-
-#ifndef _SYS_IPC_H
-# error "Never use <bits/ipc.h> directly; include <sys/ipc.h> instead."
-#endif
-
-#include <sys/types.h>
-
-/* Mode bits for `msgget', `semget', and `shmget'. */
-#define IPC_CREAT 01000 /* Create key if key does not exist. */
-#define IPC_EXCL 02000 /* Fail if key exists. */
-#define IPC_NOWAIT 04000 /* Return error on wait. */
-
-/* Control commands for `msgctl', `semctl', and `shmctl'. */
-#define IPC_RMID 0 /* Remove identifier. */
-#define IPC_SET 1 /* Set `ipc_perm' options. */
-#define IPC_STAT 2 /* Get `ipc_perm' options. */
-#define IPC_INFO 3 /* See ipcs. */
-
-/* Special key values. */
-#define IPC_PRIVATE ((__key_t) 0) /* Private key. */
-
-
-/* Data structure used to pass permission information to IPC operations. */
-struct ipc_perm
- {
- __key_t __key; /* Key. */
- unsigned short int uid; /* Owner's user ID. */
- unsigned short int gid; /* Owner's group ID. */
- unsigned short int cuid; /* Creator's user ID. */
- unsigned short int cgid; /* Creator's group ID. */
- unsigned short int mode; /* Read/write permission. */
- unsigned short int __seq; /* Sequence number. */
- };
diff --git a/libc/sysdeps/linux/vax/bits/kernel_stat.h b/libc/sysdeps/linux/vax/bits/kernel_stat.h
deleted file mode 100644
index a6da833c4..000000000
--- a/libc/sysdeps/linux/vax/bits/kernel_stat.h
+++ /dev/null
@@ -1,50 +0,0 @@
<