preparing build system to handle ports - step 1
authorRich Felker <dalias@aerifal.cx>
Tue, 15 Feb 2011 05:33:23 +0000 (00:33 -0500)
committerRich Felker <dalias@aerifal.cx>
Tue, 15 Feb 2011 05:33:23 +0000 (00:33 -0500)
57 files changed:
Makefile
arch/i386/bits/alltypes.h.sh [new file with mode: 0755]
arch/i386/bits/endian.h [new file with mode: 0644]
arch/i386/bits/errno.h [new file with mode: 0644]
arch/i386/bits/fcntl.h [new file with mode: 0644]
arch/i386/bits/fenv.h [new file with mode: 0644]
arch/i386/bits/float.h [new file with mode: 0644]
arch/i386/bits/in.h [new file with mode: 0644]
arch/i386/bits/ioctl.h [new file with mode: 0644]
arch/i386/bits/ipc.h [new file with mode: 0644]
arch/i386/bits/limits.h [new file with mode: 0644]
arch/i386/bits/mman.h [new file with mode: 0644]
arch/i386/bits/posix.h [new file with mode: 0644]
arch/i386/bits/pthread.h [new file with mode: 0644]
arch/i386/bits/reg.h [new file with mode: 0644]
arch/i386/bits/setjmp.h [new file with mode: 0644]
arch/i386/bits/shm.h [new file with mode: 0644]
arch/i386/bits/signal.h [new file with mode: 0644]
arch/i386/bits/socket.h [new file with mode: 0644]
arch/i386/bits/stat.h [new file with mode: 0644]
arch/i386/bits/statfs.h [new file with mode: 0644]
arch/i386/bits/stdint.h [new file with mode: 0644]
arch/i386/bits/stdio.h [new file with mode: 0644]
arch/i386/bits/sysmacros.h [new file with mode: 0644]
arch/i386/bits/tcp.h [new file with mode: 0644]
arch/i386/bits/termios.h [new file with mode: 0644]
arch/i386/bits/user.h [new file with mode: 0644]
arch/i386/bits/wait.h [new file with mode: 0644]
arch/i386/bits/wexitstatus.h [new file with mode: 0644]
include/bits/alltypes.h.sh [deleted file]
include/bits/endian.h [deleted file]
include/bits/errno.h [deleted file]
include/bits/fcntl.h [deleted file]
include/bits/fenv.h [deleted file]
include/bits/float.h [deleted file]
include/bits/in.h [deleted file]
include/bits/ioctl.h [deleted file]
include/bits/ipc.h [deleted file]
include/bits/limits.h [deleted file]
include/bits/mman.h [deleted file]
include/bits/posix.h [deleted file]
include/bits/pthread.h [deleted file]
include/bits/reg.h [deleted file]
include/bits/setjmp.h [deleted file]
include/bits/shm.h [deleted file]
include/bits/signal.h [deleted file]
include/bits/socket.h [deleted file]
include/bits/stat.h [deleted file]
include/bits/statfs.h [deleted file]
include/bits/stdint.h [deleted file]
include/bits/stdio.h [deleted file]
include/bits/sysmacros.h [deleted file]
include/bits/tcp.h [deleted file]
include/bits/termios.h [deleted file]
include/bits/user.h [deleted file]
include/bits/wait.h [deleted file]
include/bits/wexitstatus.h [deleted file]

index e9dbdf7fcdb2fc5ee67e4eb0c2d1a1cba30cdb7f..d0f16dfcac2096c37a366336a45779cba6ddb5ad 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -51,6 +51,12 @@ clean:
        rm -f $(ALL_LIBS) lib/*
        rm -f $(ALL_TOOLS)
        rm -f $(GENH) 
+       rm -f include/bits
+
+include/bits:
+       ln -sf ../arch/$(ARCH)/bits $@
+
+include/bits/alltypes.h.sh: include/bits
 
 include/bits/alltypes.h: include/bits/alltypes.h.sh
        sh $< > $@
diff --git a/arch/i386/bits/alltypes.h.sh b/arch/i386/bits/alltypes.h.sh
new file mode 100755 (executable)
index 0000000..d68579f
--- /dev/null
@@ -0,0 +1,116 @@
+#!/bin/sh
+sed -e << EOF \
+'/^TYPEDEF/s/TYPEDEF \(.*\) \([^ ]*\);$/#if defined(__NEED_\2) \&\& !defined(__DEFINED_\2)\
+typedef \1 \2;\
+#define __DEFINED_\2\
+#endif\
+/
+/^STRUCT/s/STRUCT * \([^ ]*\) \(.*\);$/#if defined(__NEED_struct_\1) \&\& !defined(__DEFINED_struct_\1)\
+struct \1 \2;\
+#define __DEFINED_struct_\1\
+#endif\
+/
+/^UNION/s/UNION * \([^ ]*\) \(.*\);$/#if defined(__NEED_union_\1) \&\& !defined(__DEFINED_union_\1)\
+union \1 \2;\
+#define __DEFINED_union_\1\
+#endif\
+/'
+
+TYPEDEF unsigned size_t;
+TYPEDEF int ssize_t;
+TYPEDEF long ptrdiff_t;
+TYPEDEF struct __va_list * va_list;
+
+TYPEDEF long wchar_t;
+TYPEDEF long wint_t;
+TYPEDEF long wctrans_t;
+TYPEDEF long wctype_t;
+
+TYPEDEF char      int8_t;
+TYPEDEF short     int16_t;
+TYPEDEF int       int32_t;
+TYPEDEF long long int64_t;
+
+TYPEDEF unsigned char      uint8_t;
+TYPEDEF unsigned short     uint16_t;
+TYPEDEF unsigned int       uint32_t;
+TYPEDEF unsigned long long uint64_t;
+
+TYPEDEF unsigned char      __uint8_t;
+TYPEDEF unsigned short     __uint16_t;
+TYPEDEF unsigned int       __uint32_t;
+TYPEDEF unsigned long long __uint64_t;
+
+TYPEDEF int8_t  int_least8_t;
+TYPEDEF int16_t int_least16_t;
+TYPEDEF int32_t int_least32_t;
+TYPEDEF int64_t int_least64_t;
+
+TYPEDEF uint8_t  uint_least8_t;
+TYPEDEF uint16_t uint_least16_t;
+TYPEDEF uint32_t uint_least32_t;
+TYPEDEF uint64_t uint_least64_t;
+
+TYPEDEF int8_t    int_fast8_t;
+TYPEDEF int       int_fast16_t;
+TYPEDEF int       int_fast32_t;
+TYPEDEF int64_t   int_fast64_t;
+
+TYPEDEF unsigned char      uint_fast8_t;
+TYPEDEF unsigned int       uint_fast16_t;
+TYPEDEF unsigned int       uint_fast32_t;
+TYPEDEF uint64_t           uint_fast64_t;
+
+TYPEDEF long          intptr_t;
+TYPEDEF unsigned long uintptr_t;
+
+TYPEDEF long long          intmax_t;
+TYPEDEF unsigned long long uintmax_t;
+
+TYPEDEF long time_t;
+TYPEDEF unsigned useconds_t;
+TYPEDEF int suseconds_t;
+STRUCT timeval { time_t tv_sec; int tv_usec; };
+STRUCT timespec { time_t tv_sec; long tv_nsec; };
+
+TYPEDEF int pid_t;
+TYPEDEF int id_t;
+TYPEDEF int uid_t;
+TYPEDEF int gid_t;
+TYPEDEF int key_t;
+TYPEDEF struct __pthread * pthread_t;
+
+TYPEDEF long long off_t;
+
+TYPEDEF unsigned int mode_t;
+
+TYPEDEF unsigned int nlink_t;
+TYPEDEF unsigned long long ino_t;
+TYPEDEF long long dev_t;
+TYPEDEF long blksize_t;
+TYPEDEF long long blkcnt_t;
+TYPEDEF unsigned long long fsblkcnt_t;
+TYPEDEF unsigned long long fsfilcnt_t;
+
+TYPEDEF int timer_t;
+TYPEDEF int clockid_t;
+TYPEDEF unsigned long clock_t;
+
+TYPEDEF struct { unsigned long __bits[128/sizeof(long)]; } sigset_t;
+TYPEDEF struct __siginfo siginfo_t;
+
+TYPEDEF unsigned int socklen_t;
+TYPEDEF unsigned short sa_family_t;
+TYPEDEF unsigned short in_port_t;
+TYPEDEF unsigned int in_addr_t;
+STRUCT in_addr { in_addr_t s_addr; };
+
+TYPEDEF struct __FILE_s FILE;
+
+TYPEDEF int nl_item;
+
+TYPEDEF struct __locale * locale_t;
+
+STRUCT iovec { void *iov_base; size_t iov_len; };
+
+EOF
diff --git a/arch/i386/bits/endian.h b/arch/i386/bits/endian.h
new file mode 100644 (file)
index 0000000..172c338
--- /dev/null
@@ -0,0 +1 @@
+#define __BYTE_ORDER __LITTLE_ENDIAN
diff --git a/arch/i386/bits/errno.h b/arch/i386/bits/errno.h
new file mode 100644 (file)
index 0000000..ec3d363
--- /dev/null
@@ -0,0 +1,132 @@
+#define EPERM            1
+#define ENOENT           2
+#define ESRCH            3
+#define EINTR            4
+#define EIO              5
+#define ENXIO            6
+#define E2BIG            7
+#define ENOEXEC          8
+#define EBADF            9
+#define ECHILD          10
+#define EAGAIN          11
+#define ENOMEM          12
+#define EACCES          13
+#define EFAULT          14
+#define ENOTBLK         15
+#define EBUSY           16
+#define EEXIST          17
+#define EXDEV           18
+#define ENODEV          19
+#define ENOTDIR         20
+#define EISDIR          21
+#define EINVAL          22
+#define ENFILE          23
+#define EMFILE          24
+#define ENOTTY          25
+#define ETXTBSY         26
+#define EFBIG           27
+#define ENOSPC          28
+#define ESPIPE          29
+#define EROFS           30
+#define EMLINK          31
+#define EPIPE           32
+#define EDOM            33
+#define ERANGE          34
+#define EDEADLK         35
+#define ENAMETOOLONG    36
+#define ENOLCK          37
+#define ENOSYS          38
+#define ENOTEMPTY       39
+#define ELOOP           40
+#define EWOULDBLOCK     EAGAIN
+#define ENOMSG          42
+#define EIDRM           43
+#define ECHRNG          44
+#define EL2NSYNC        45
+#define EL3HLT          46
+#define EL3RST          47
+#define ELNRNG          48
+#define EUNATCH         49
+#define ENOCSI          50
+#define EL2HLT          51
+#define EBADE           52
+#define EBADR           53
+#define EXFULL          54
+#define ENOANO          55
+#define EBADRQC         56
+#define EBADSLT         57
+#define EDEADLOCK       EDEADLK
+#define EBFONT          59
+#define ENOSTR          60
+#define ENODATA         61
+#define ETIME           62
+#define ENOSR           63
+#define ENONET          64
+#define ENOPKG          65
+#define EREMOTE         66
+#define ENOLINK         67
+#define EADV            68
+#define ESRMNT          69
+#define ECOMM           70
+#define EPROTO          71
+#define EMULTIHOP       72
+#define EDOTDOT         73
+#define EBADMSG         74
+#define EOVERFLOW       75
+#define ENOTUNIQ        76
+#define EBADFD          77
+#define EREMCHG         78
+#define ELIBACC         79
+#define ELIBBAD         80
+#define ELIBSCN         81
+#define ELIBMAX         82
+#define ELIBEXEC        83
+#define EILSEQ          84
+#define ERESTART        85
+#define ESTRPIPE        86
+#define EUSERS          87
+#define ENOTSOCK        88
+#define EDESTADDRREQ    89
+#define EMSGSIZE        90
+#define EPROTOTYPE      91
+#define ENOPROTOOPT     92
+#define EPROTONOSUPPORT 93
+#define ESOCKTNOSUPPORT 94
+#define EOPNOTSUPP      95
+#define EPFNOSUPPORT    96
+#define EAFNOSUPPORT    97
+#define EADDRINUSE      98
+#define EADDRNOTAVAIL   99
+#define ENETDOWN        100
+#define ENETUNREACH     101
+#define ENETRESET       102
+#define ECONNABORTED    103
+#define ECONNRESET      104
+#define ENOBUFS         105
+#define EISCONN         106
+#define ENOTCONN        107
+#define ESHUTDOWN       108
+#define ETOOMANYREFS    109
+#define ETIMEDOUT       110
+#define ECONNREFUSED    111
+#define EHOSTDOWN       112
+#define EHOSTUNREACH    113
+#define EALREADY        114
+#define EINPROGRESS     115
+#define ESTALE          116
+#define EUCLEAN         117
+#define ENOTNAM         118
+#define ENAVAIL         119
+#define EISNAM          120
+#define EREMOTEIO       121
+#define EDQUOT          122
+#define ENOMEDIUM       123
+#define EMEDIUMTYPE     124
+#define ECANCELED       125
+#define ENOKEY          126
+#define EKEYEXPIRED     127
+#define EKEYREVOKED     128
+#define EKEYREJECTED    129
+#define EOWNERDEAD      130
+#define ENOTRECOVERABLE 131
+#define ERFKILL         132
diff --git a/arch/i386/bits/fcntl.h b/arch/i386/bits/fcntl.h
new file mode 100644 (file)
index 0000000..802c3d1
--- /dev/null
@@ -0,0 +1,60 @@
+#define O_ACCMODE 03
+#define O_RDONLY  00
+#define O_WRONLY  01
+#define O_RDWR    02
+
+#define O_CREAT        0100
+#define O_EXCL         0200
+#define O_NOCTTY       0400
+#define O_TRUNC       01000
+#define O_APPEND      02000
+#define O_NONBLOCK    04000
+#define O_SYNC       010000
+#define O_DIRECTORY 0200000
+#define O_NOFOLLOW  0400000
+#define O_CLOEXEC  02000000
+
+#ifdef _GNU_SOURCE
+#define O_NDELAY O_NONBLOCK
+#define O_ASYNC      020000
+#define O_DIRECT     040000
+#define O_NOATIME  01000000
+#define F_DUPFD_CLOEXEC 1030
+#define FAPPENT O_APPEND
+#define FFSYNC O_FSYNC
+#define FASYNC O_ASYNC
+#define FNONBLOCK O_NONBLOCK
+#define FNDELAY O_NDELAY
+#endif
+
+#define F_DUPFD  0
+#define F_GETFD  1
+#define F_SETFD  2
+#define F_GETFL  3
+#define F_SETFL  4
+
+#define F_SETOWN 8
+#define F_GETOWN 9
+
+#define F_GETLK 12
+#define F_SETLK 13
+#define F_SETLKW 14
+
+#define FD_CLOEXEC 1
+
+#define F_RDLCK 0
+#define F_WRLCK 1
+#define F_UNLCK 2
+
+#define AT_FDCWD (-100)
+#define AT_SYMLINK_NOFOLLOW 0x100
+#define AT_REMOVEDIR 0x200
+#define AT_SYMLINK_FOLLOW 0x400
+#define AT_EACCESS 0x200
+
+#define POSIX_FADV_NORMAL     0
+#define POSIX_FADV_RANDOM     1
+#define POSIX_FADV_SEQUENTIAL 2
+#define POSIX_FADV_WILLNEED   3
+#define POSIX_FADV_DONTNEED   4
+#define POSIX_FADV_NOREUSE    5
diff --git a/arch/i386/bits/fenv.h b/arch/i386/bits/fenv.h
new file mode 100644 (file)
index 0000000..24df041
--- /dev/null
@@ -0,0 +1,34 @@
+#define FE_INVALID    1
+#define __FE_DENORM   2
+#define FE_DIVBYZERO  4
+#define FE_OVERFLOW   8
+#define FE_UNDERFLOW  16
+#define FE_INEXACT    32
+
+#define FE_ALL_EXCEPT 63
+
+#define FE_TONEAREST  0
+#define FE_DOWNWARD   0x400
+#define FE_UPWARD     0x800
+#define FE_TOWARDZERO 0xc00
+
+typedef unsigned short fexcept_t;
+
+typedef struct {
+       unsigned short __control_word;
+       unsigned short __unused1;
+       unsigned short __status_word;
+       unsigned short __unused2;
+       unsigned short __tags;
+       unsigned short __unused3;
+       unsigned int __eip;
+       unsigned short __cs_selector;
+       unsigned int __opcode:11;
+       unsigned int __unused4:5;
+       unsigned int __data_offset;
+       unsigned short __data_selector;
+       unsigned short __unused5;
+       unsigned int __mxcsr;
+} fenv_t;
+
+#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/arch/i386/bits/float.h b/arch/i386/bits/float.h
new file mode 100644 (file)
index 0000000..162b3e4
--- /dev/null
@@ -0,0 +1,11 @@
+#define LDBL_MIN     3.3621031431120935063e-4932L
+#define LDBL_MAX     1.1897314953572317650e+4932L
+#define LDBL_EPSILON 1.0842021724855044340e-19L
+
+#define LDBL_MANT_DIG 64
+#define LDBL_MIN_EXP (-16381)
+#define LDBL_MAX_EXP 16384
+
+#define LDBL_DIG 18
+#define LDBL_MIN_10_EXP (-4931)
+#define LDBL_MAX_10_EXP 4932
diff --git a/arch/i386/bits/in.h b/arch/i386/bits/in.h
new file mode 100644 (file)
index 0000000..b233706
--- /dev/null
@@ -0,0 +1,133 @@
+#define IP_TOS             1
+#define IP_TTL             2
+#define IP_HDRINCL         3
+#define IP_OPTIONS         4
+#define IP_ROUTER_ALERT    5
+#define IP_RECVOPTS        6
+#define IP_RETOPTS         7
+//#define IP_PKTINFO         8
+#define IP_PKTOPTIONS      9
+#define IP_PMTUDISC        10
+#define IP_MTU_DISCOVER    10
+#define IP_RECVERR         11
+#define IP_RECVTTL         12
+#define IP_RECVTOS         13
+#define IP_MTU             14
+#define IP_FREEBIND        15
+#define IP_IPSEC_POLICY    16
+#define IP_XFRM_POLICY     17
+#define IP_PASSSEC         18
+#define IP_TRANSPARENT     19
+#define IP_ORIGDSTADDR     20
+#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR
+#define IP_MINTTL          21
+#define IP_MULTICAST_IF    32
+#define IP_MULTICAST_TTL   33
+#define IP_MULTICAST_LOOP  34
+#define IP_ADD_MEMBERSHIP  35
+#define IP_DROP_MEMBERSHIP 36
+#define IP_UNBLOCK_SOURCE  37
+#define IP_BLOCK_SOURCE    38
+#define IP_ADD_SOURCE_MEMBERSHIP  39
+#define IP_DROP_SOURCE_MEMBERSHIP 40
+#define IP_MSFILTER        41
+
+#define IP_RECVRETOPTS IP_RETOPTS
+
+#define IP_PMTUDISC_DONT   0
+#define IP_PMTUDISC_WANT   1
+#define IP_PMTUDISC_DO     2
+#define IP_PMTUDISC_PROBE  3
+
+#define SOL_IP 0
+
+#define IP_DEFAULT_MULTICAST_TTL        1
+#define IP_DEFAULT_MULTICAST_LOOP       1
+#define IP_MAX_MEMBERSHIPS              20
+
+struct ip_opts
+{
+       struct in_addr ip_dst;
+       char ip_opts[40];
+};
+
+struct ip_mreq
+{
+       struct in_addr imr_multiaddr;
+       struct in_addr imr_interface;
+};
+
+struct ip_mreqn
+{
+       struct in_addr imr_multiaddr;
+       struct in_addr imr_address;
+       int imr_ifindex;
+};
+
+struct in_pktinfo
+{
+       int ipi_ifindex;
+       struct in_addr ipi_spec_dst;
+       struct in_addr ipi_addr;
+};
+
+#define IPV6_ADDRFORM           1
+#define IPV6_2292PKTINFO        2
+#define IPV6_2292HOPOPTS        3
+#define IPV6_2292DSTOPTS        4
+#define IPV6_2292RTHDR          5
+#define IPV6_2292PKTOPTIONS     6
+#define IPV6_CHECKSUM           7
+#define IPV6_2292HOPLIMIT       8
+#define SCM_SRCRT               IPV6_RXSRCRT
+#define IPV6_NEXTHOP            9
+#define IPV6_AUTHHDR            10
+#define IPV6_UNICAST_HOPS       16
+#define IPV6_MULTICAST_IF       17
+#define IPV6_MULTICAST_HOPS     18
+#define IPV6_MULTICAST_LOOP     19
+#define IPV6_JOIN_GROUP         20
+#define IPV6_LEAVE_GROUP        21
+#define IPV6_ROUTER_ALERT       22
+#define IPV6_MTU_DISCOVER       23
+#define IPV6_MTU                24
+#define IPV6_RECVERR            25
+#define IPV6_V6ONLY             26
+#define IPV6_JOIN_ANYCAST       27
+#define IPV6_LEAVE_ANYCAST      28
+#define IPV6_IPSEC_POLICY       34
+#define IPV6_XFRM_POLICY        35
+
+#define IPV6_RECVPKTINFO        49
+#define IPV6_PKTINFO            50
+#define IPV6_RECVHOPLIMIT       51
+#define IPV6_HOPLIMIT           52
+#define IPV6_RECVHOPOPTS        53
+#define IPV6_HOPOPTS            54
+#define IPV6_RTHDRDSTOPTS       55
+#define IPV6_RECVRTHDR          56
+#define IPV6_RTHDR              57
+#define IPV6_RECVDSTOPTS        58
+#define IPV6_DSTOPTS            59
+
+#define IPV6_RECVTCLASS         66
+#define IPV6_TCLASS             67
+
+#define IPV6_ADD_MEMBERSHIP     IPV6_JOIN_GROUP
+#define IPV6_DROP_MEMBERSHIP    IPV6_LEAVE_GROUP
+#define IPV6_RXHOPOPTS          IPV6_HOPOPTS
+#define IPV6_RXDSTOPTS          IPV6_DSTOPTS
+
+
+#define IPV6_PMTUDISC_DONT      0
+#define IPV6_PMTUDISC_WANT      1
+#define IPV6_PMTUDISC_DO        2
+#define IPV6_PMTUDISC_PROBE     3
+
+#define SOL_IPV6        41
+#define SOL_ICMPV6      58
+
+#define IPV6_RTHDR_LOOSE        0
+#define IPV6_RTHDR_STRICT       1
+
+#define IPV6_RTHDR_TYPE_0       0
diff --git a/arch/i386/bits/ioctl.h b/arch/i386/bits/ioctl.h
new file mode 100644 (file)
index 0000000..544bbdc
--- /dev/null
@@ -0,0 +1,190 @@
+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )
+#define _IOC_NONE  0U
+#define _IOC_WRITE 1U
+#define _IOC_READ  2U
+
+#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)
+#define _IOW(a,b,c) _IOC(1,(a),(b),sizeof(c))
+#define _IOR(a,b,c) _IOC(2,(a),(b),sizeof(c))
+#define _IOWR(a,b,c) _IOC(3,(a),(b),sizeof(c))
+
+#define TCGETS         0x5401
+#define TCSETS         0x5402
+#define TCSETSW                0x5403
+#define TCSETSF                0x5404
+#define TCGETA         0x5405
+#define TCSETA         0x5406
+#define TCSETAW                0x5407
+#define TCSETAF                0x5408
+#define TCSBRK         0x5409
+#define TCXONC         0x540A
+#define TCFLSH         0x540B
+#define TIOCEXCL       0x540C
+#define TIOCNXCL       0x540D
+#define TIOCSCTTY      0x540E
+#define TIOCGPGRP      0x540F
+#define TIOCSPGRP      0x5410
+#define TIOCOUTQ       0x5411
+#define TIOCSTI                0x5412
+#define TIOCGWINSZ     0x5413
+#define TIOCSWINSZ     0x5414
+#define TIOCMGET       0x5415
+#define TIOCMBIS       0x5416
+#define TIOCMBIC       0x5417
+#define TIOCMSET       0x5418
+#define TIOCGSOFTCAR   0x5419
+#define TIOCSSOFTCAR   0x541A
+#define FIONREAD       0x541B
+#define TIOCINQ                FIONREAD
+#define TIOCLINUX      0x541C
+#define TIOCCONS       0x541D
+#define TIOCGSERIAL    0x541E
+#define TIOCSSERIAL    0x541F
+#define TIOCPKT                0x5420
+#define FIONBIO                0x5421
+#define TIOCNOTTY      0x5422
+#define TIOCSETD       0x5423
+#define TIOCGETD       0x5424
+#define TCSBRKP                0x5425
+#define TIOCTTYGSTRUCT 0x5426
+#define TIOCSBRK       0x5427
+#define TIOCCBRK       0x5428
+#define TIOCGSID       0x5429
+#define TIOCGPTN       0x80045430
+#define TIOCSPTLCK     0x40045431
+#define TCGETX         0x5432
+#define TCSETX         0x5433
+#define TCSETXF                0x5434
+#define TCSETXW                0x5435
+
+#define FIONCLEX       0x5450
+#define FIOCLEX                0x5451
+#define FIOASYNC       0x5452
+#define TIOCSERCONFIG  0x5453
+#define TIOCSERGWILD   0x5454
+#define TIOCSERSWILD   0x5455
+#define TIOCGLCKTRMIOS 0x5456
+#define TIOCSLCKTRMIOS 0x5457
+#define TIOCSERGSTRUCT 0x5458
+#define TIOCSERGETLSR   0x5459
+#define TIOCSERGETMULTI 0x545A
+#define TIOCSERSETMULTI 0x545B
+
+#define TIOCMIWAIT     0x545C
+#define TIOCGICOUNT    0x545D
+#define TIOCGHAYESESP   0x545E
+#define TIOCSHAYESESP   0x545F
+#define FIOQSIZE       0x5460
+
+#define TIOCPKT_DATA            0
+#define TIOCPKT_FLUSHREAD       1
+#define TIOCPKT_FLUSHWRITE      2
+#define TIOCPKT_STOP            4
+#define TIOCPKT_START           8
+#define TIOCPKT_NOSTOP         16
+#define TIOCPKT_DOSTOP         32
+#define TIOCPKT_IOCTL          64
+
+#define TIOCSER_TEMT    0x01
+
+struct winsize {
+       unsigned short ws_row;
+       unsigned short ws_col;
+       unsigned short ws_xpixel;
+       unsigned short ws_ypixel;
+};
+
+#define TIOCM_LE        0x001
+#define TIOCM_DTR       0x002
+#define TIOCM_RTS       0x004
+#define TIOCM_ST        0x008
+#define TIOCM_SR        0x010
+#define TIOCM_CTS       0x020
+#define TIOCM_CAR       0x040
+#define TIOCM_RNG       0x080
+#define TIOCM_DSR       0x100
+#define TIOCM_CD        TIOCM_CAR
+#define TIOCM_RI        TIOCM_RNG
+#define TIOCM_OUT1      0x2000
+#define TIOCM_OUT2      0x4000
+#define TIOCM_LOOP      0x8000
+#define TIOCM_MODEM_BITS TIOCM_OUT2
+
+#define N_TTY           0
+#define N_SLIP          1
+#define N_MOUSE         2
+#define N_PPP           3
+#define N_STRIP         4
+#define N_AX25          5
+#define N_X25           6
+#define N_6PACK         7
+#define N_MASC          8
+#define N_R3964         9
+#define N_PROFIBUS_FDL  10
+#define N_IRDA          11
+#define N_SMSBLOCK      12
+#define N_HDLC          13
+#define N_SYNC_PPP      14
+#define N_HCI           15
+
+#define SIOCADDRT       0x890B
+#define SIOCDELRT       0x890C
+#define SIOCRTMSG       0x890D
+
+#define SIOCGIFNAME     0x8910
+#define SIOCSIFLINK     0x8911
+#define SIOCGIFCONF     0x8912
+#define SIOCGIFFLAGS    0x8913
+#define SIOCSIFFLAGS    0x8914
+#define SIOCGIFADDR     0x8915
+#define SIOCSIFADDR     0x8916
+#define SIOCGIFDSTADDR  0x8917
+#define SIOCSIFDSTADDR  0x8918
+#define SIOCGIFBRDADDR  0x8919
+#define SIOCSIFBRDADDR  0x891a
+#define SIOCGIFNETMASK  0x891b
+#define SIOCSIFNETMASK  0x891c
+#define SIOCGIFMETRIC   0x891d
+#define SIOCSIFMETRIC   0x891e
+#define SIOCGIFMEM      0x891f
+#define SIOCSIFMEM      0x8920
+#define SIOCGIFMTU      0x8921
+#define SIOCSIFMTU      0x8922
+#define SIOCSIFHWADDR   0x8924
+#define SIOCGIFENCAP    0x8925
+#define SIOCSIFENCAP    0x8926
+#define SIOCGIFHWADDR   0x8927
+#define SIOCGIFSLAVE    0x8929
+#define SIOCSIFSLAVE    0x8930
+#define SIOCADDMULTI    0x8931
+#define SIOCDELMULTI    0x8932
+#define SIOCGIFINDEX    0x8933
+#define SIOGIFINDEX     SIOCGIFINDEX
+#define SIOCSIFPFLAGS   0x8934
+#define SIOCGIFPFLAGS   0x8935
+#define SIOCDIFADDR     0x8936
+#define SIOCSIFHWBROADCAST 0x8937
+#define SIOCGIFCOUNT    0x8938
+
+#define SIOCGIFBR       0x8940
+#define SIOCSIFBR       0x8941
+
+#define SIOCGIFTXQLEN   0x8942
+#define SIOCSIFTXQLEN   0x8943
+
+#define SIOCDARP        0x8953
+#define SIOCGARP        0x8954
+#define SIOCSARP        0x8955
+
+#define SIOCDRARP       0x8960
+#define SIOCGRARP       0x8961
+#define SIOCSRARP       0x8962
+
+#define SIOCGIFMAP      0x8970
+#define SIOCSIFMAP      0x8971
+
+#define SIOCADDDLCI     0x8980
+#define SIOCDELDLCI     0x8981
+
+#define SIOCDEVPRIVATE         0x89F0
+#define SIOCPROTOPRIVATE       0x89E0
diff --git a/arch/i386/bits/ipc.h b/arch/i386/bits/ipc.h
new file mode 100644 (file)
index 0000000..08316a3
--- /dev/null
@@ -0,0 +1,25 @@
+#define IPC_CREAT  01000
+#define IPC_EXCL   02000
+#define IPC_NOWAIT 04000
+
+#define IPC_RMID 0
+#define IPC_SET  1
+#define IPC_STAT 2
+#ifdef _GNU_SOURCE
+#define IPC_INFO 3
+#endif
+
+#define IPC_PRIVATE ((key_t) 0)
+
+struct ipc_perm
+{
+       key_t key;
+       uid_t uid;
+       gid_t gid;
+       uid_t cuid;
+       gid_t cgid;
+       mode_t mode;
+       int seq;
+       long __pad1;
+       long __pad2;
+};
diff --git a/arch/i386/bits/limits.h b/arch/i386/bits/limits.h
new file mode 100644 (file)
index 0000000..f577857
--- /dev/null
@@ -0,0 +1,33 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+#define PIPE_BUF 4096
+#define PAGESIZE 4096
+#define PAGE_SIZE PAGESIZE
+#define FILESIZEBITS 64
+#define NAME_MAX 255
+#define SYMLINK_MAX 255
+#define PATH_MAX 4096
+#define NZERO 20
+#define NGROUPS_MAX 32
+#define ARG_MAX 131072
+#define IOV_MAX 1024
+#define SYMLOOP_MAX 40
+#define WORD_BIT 32
+#define LONG_BIT 32
+#endif
+
+#define SHRT_MIN  (-1-0x7fff)
+#define SHRT_MAX  0x7fff
+#define USHRT_MAX 0xffff
+
+#define INT_MIN  (-1-0x7fffffff)
+#define INT_MAX  0x7fffffff
+#define UINT_MAX 0xffffffff
+
+#define LONG_MIN  (-1-0x7fffffffL)
+#define LONG_MAX  0x7fffffffL
+#define ULONG_MAX 0xffffffffL
+
+#define LLONG_MIN  (-1-0x7fffffffffffffffLL)
+#define LLONG_MAX  0x7fffffffffffffffLL
+#define ULLONG_MAX 0xffffffffffffffffULL
diff --git a/arch/i386/bits/mman.h b/arch/i386/bits/mman.h
new file mode 100644 (file)
index 0000000..d133fa2
--- /dev/null
@@ -0,0 +1,50 @@
+#define MAP_FAILED ((void *) -1)
+
+#define        PROT_NONE      0
+#define        PROT_READ      1
+#define        PROT_WRITE     2
+#define        PROT_EXEC      4
+#define        PROT_GROWSDOWN 0x01000000
+#define        PROT_GROWSUP   0x02000000
+
+#define        MAP_SHARED     0x01
+#define        MAP_PRIVATE    0x02
+#define        MAP_FIXED      0x10
+
+/* linux extensions */
+#define MAP_TYPE       0x0f
+#define MAP_FILE       0x00
+#define MAP_ANON       0x20
+#define MAP_ANONYMOUS  MAP_ANON
+#define MAP_32BIT      0x40
+
+#define MADV_NORMAL      0
+#define MADV_RANDOM      1
+#define MADV_SEQUENTIAL  2
+#define MADV_WILLNEED    3
+#define MADV_DONTNEED    4
+#define MADV_REMOVE      9
+#define MADV_DONTFORK    10
+#define MADV_DOFORK      11
+#define MADV_MERGEABLE   12
+#define MADV_UNMERGEABLE 13
+#define MADV_HUGEPAGE    14
+#define MADV_NOHUGEPAGE  15
+#define MADV_HWPOISON    100
+
+#define POSIX_MADV_NORMAL       0
+#define POSIX_MADV_RANDOM       1
+#define POSIX_MADV_SEQUENTIAL   2
+#define POSIX_MADV_WILLNEED     3
+#define POSIX_MADV_DONTNEED     0
+
+#define MS_ASYNC        1
+#define MS_INVALIDATE   2
+#define MS_SYNC         4
+
+#define MCL_CURRENT     1
+#define MCL_FUTURE      2
+
+/* linux extensions */
+#define MREMAP_MAYMOVE  1
+#define MREMAP_FIXED    2
diff --git a/arch/i386/bits/posix.h b/arch/i386/bits/posix.h
new file mode 100644 (file)
index 0000000..30a3871
--- /dev/null
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG  1
+#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/i386/bits/pthread.h b/arch/i386/bits/pthread.h
new file mode 100644 (file)
index 0000000..7d19065
--- /dev/null
@@ -0,0 +1,6 @@
+struct __ptcb {
+       long __jb[7];
+       int __dummy;
+       struct __ptcb *__next;
+       void *__ptrs[3];
+};
diff --git a/arch/i386/bits/reg.h b/arch/i386/bits/reg.h
new file mode 100644 (file)
index 0000000..8bc2582
--- /dev/null
@@ -0,0 +1,19 @@
+#undef __WORDSIZE
+#define __WORDSIZE 32
+#define EBX 0
+#define ECX 1
+#define EDX 2
+#define ESI 3
+#define EDI 4
+#define EBP 5
+#define EAX 6
+#define DS 7
+#define ES 8
+#define FS 9
+#define GS 10
+#define ORIG_EAX 11
+#define EIP 12
+#define CS 13
+#define EFL 14
+#define UESP 15
+#define SS 16
diff --git a/arch/i386/bits/setjmp.h b/arch/i386/bits/setjmp.h
new file mode 100644 (file)
index 0000000..b6595bd
--- /dev/null
@@ -0,0 +1 @@
+typedef unsigned long jmp_buf [7];
diff --git a/arch/i386/bits/shm.h b/arch/i386/bits/shm.h
new file mode 100644 (file)
index 0000000..bc95a1c
--- /dev/null
@@ -0,0 +1,24 @@
+#define SHMLBA 4096
+
+#define SHM_RDONLY 010000
+#define SHM_RND    020000
+#define SHM_REMAP  040000
+#define SHM_EXEC   0100000
+
+/* linux extensions */
+#define SHM_LOCK        11
+#define SHM_UNLOCK      12
+
+struct shmid_ds
+{
+       struct ipc_perm shm_perm;
+       size_t shm_segsz;
+       time_t shm_atime;
+       time_t shm_dtime;
+       time_t shm_ctime;
+       pid_t shm_cpid;
+       pid_t shm_lpid;
+       unsigned long shm_nattch;
+       unsigned long __pad1;
+       unsigned long __pad2;
+};
diff --git a/arch/i386/bits/signal.h b/arch/i386/bits/signal.h
new file mode 100644 (file)
index 0000000..8827efd
--- /dev/null
@@ -0,0 +1,107 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+
+struct __siginfo
+{
+       int si_signo;
+       int si_errno;
+       int si_code;
+       union
+       {
+               char __pad[128 - 3*sizeof(int)];
+               struct {
+                       pid_t si_pid;
+                       uid_t si_uid;
+                       union sigval si_sigval;
+               } __rt;
+               struct {
+                       unsigned int si_timer1;
+                       unsigned int si_timer2;
+               } __timer;
+               struct {
+                       pid_t si_pid;
+                       uid_t si_uid;
+                       int si_status;
+                       clock_t si_utime;
+                       clock_t si_stime;
+               } __sigchld;
+               struct {
+                       void *si_addr;
+               } __sigfault;
+               struct {
+                       long int si_band;
+                       int si_fd;
+               } __sigpoll;
+       } __si_fields;
+};
+
+#define si_pid     __si_fields.__sigchld.si_pid
+#define si_uid     __si_fields.__sigchld.si_uid
+#define si_status  __si_fields.__sigchld.si_status
+#define si_utime   __si_fields.__sigchld.si_utime
+#define si_stime   __si_fields.__sigchld.si_stime
+#define si_value   __si_fields.__rt.si_sigval
+#define si_addr    __si_fields.__sigfault.si_addr
+#define si_band    __si_fields.__sigpoll.si_band
+
+#define SA_NOCLDSTOP  1
+#define SA_NOCLDWAIT  2
+#define SA_SIGINFO    4
+#define SA_ONSTACK    0x08000000
+#define SA_RESTART    0x10000000
+#define SA_NODEFER    0x40000000
+#define SA_RESETHAND  0x80000000
+#define SA_RESTORER   0x04000000
+
+#define SS_ONSTACK    1
+#define SS_DISABLE    2
+
+#define SIG_BLOCK     0
+#define SIG_UNBLOCK   1
+#define SIG_SETMASK   2
+
+#define SIG_HOLD ((void (*)(int)) 2)
+
+#endif
+
+#ifdef _GNU_SOURCE
+#define NSIG      64
+#endif
+
+#define SIG_ERR  ((void (*)(int))-1)
+#define SIG_DFL  ((void (*)(int)) 0)
+#define SIG_IGN  ((void (*)(int)) 1)
+
+#define SIGHUP    1
+#define SIGINT    2
+#define SIGQUIT   3
+#define SIGILL    4
+#define SIGTRAP   5
+#define SIGABRT   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   29
+#define SIGPWR    30
+#define SIGSYS    31
+#define SIGUNUSED SIGSYS
diff --git a/arch/i386/bits/socket.h b/arch/i386/bits/socket.h
new file mode 100644 (file)
index 0000000..b323062
--- /dev/null
@@ -0,0 +1,210 @@
+struct msghdr
+{
+       void *msg_name;
+       socklen_t msg_namelen;
+       struct iovec *msg_iov;
+       int msg_iovlen;
+       void *msg_control;
+       socklen_t msg_controllen;
+       int msg_flags;
+};
+
+struct cmsghdr
+{
+       socklen_t cmsg_len;
+       int cmsg_level;
+       int cmsg_type;
+};
+
+struct ucred
+{
+       pid_t pid;
+       uid_t uid;
+       gid_t gid;
+};
+
+struct linger
+{
+       int l_onoff;
+       int l_linger;
+};
+
+#define SHUT_RD 0
+#define SHUT_WD 1
+#define SHUT_RDWR 2
+
+#define SOCK_STREAM    1
+#define SOCK_DGRAM     2
+#define SOCK_RAW       3
+#define SOCK_RDM       4
+#define SOCK_SEQPACKET 5
+#define SOCK_DCCP      6
+#define SOCK_PACKET    10
+
+/* linux extensions */
+#define SOCK_CLOEXEC   02000000
+#define SOCK_NONBLOCK  04000
+
+#define PF_UNSPEC       0
+#define PF_LOCAL        1
+#define PF_UNIX         PF_LOCAL
+#define PF_FILE         PF_LOCAL
+#define PF_INET         2
+#define PF_AX25         3
+#define PF_IPX          4
+#define PF_APPLETALK    5
+#define PF_NETROM       6
+#define PF_BRIDGE       7
+#define PF_ATMPVC       8
+#define PF_X25          9
+#define PF_INET6        10
+#define PF_ROSE         11
+#define PF_DECnet       12
+#define PF_NETBEUI      13
+#define PF_SECURITY     14
+#define PF_KEY          15
+#define PF_NETLINK      16
+#define PF_ROUTE        PF_NETLINK
+#define PF_PACKET       17
+#define PF_ASH          18
+#define PF_ECONET       19
+#define PF_ATMSVC       20
+#define PF_SNA          22
+#define PF_IRDA         23
+#define PF_PPPOX        24
+#define PF_WANPIPE      25
+#define PF_BLUETOOTH    31
+#define PF_IUCV         32
+#define PF_RXRPC        33
+#define PF_ISDN         34
+#define PF_PHONET       35
+#define PF_IEEE802154   36
+#define PF_CAIF         37
+#define PF_ALG          38
+#define PF_MAX          39
+
+#define AF_UNSPEC       PF_UNSPEC
+#define AF_LOCAL        PF_LOCAL
+#define AF_UNIX         AF_LOCAL
+#define AF_FILE         AF_LOCAL
+#define AF_INET         PF_INET
+#define AF_AX25         PF_AX25
+#define AF_IPX          PF_IPX
+#define AF_APPLETALK    PF_APPLETALK
+#define AF_NETROM       PF_NETROM
+#define AF_BRIDGE       PF_BRIDGE
+#define AF_ATMPVC       PF_ATMPVC
+#define AF_X25          PF_X25
+#define AF_INET6        PF_INET6
+#define AF_ROSE         PF_ROSE
+#define AF_DECnet       PF_DECnet
+#define AF_NETBEUI      PF_NETBEUI
+#define AF_SECURITY     PF_SECURITY
+#define AF_KEY          PF_KEY
+#define AF_NETLINK      PF_NETLINK
+#define AF_ROUTE        AF_NETLINK
+#define AF_PACKET       PF_PACKET
+#define AF_ASH          PF_ASH
+#define AF_ECONET       PF_ECONET
+#define AF_ATMSVC       PF_ATMSVC
+#define AF_SNA          PF_SNA
+#define AF_IRDA         PF_IRDA
+#define AF_PPPOX        PF_PPPOX
+#define AF_WANPIPE      PF_WANPIPE
+#define AF_BLUETOOTH    PF_BLUETOOTH
+#define AF_IUCV         PF_IUCV
+#define AF_RXRPC        PF_RXRPC
+#define AF_ISDN         PF_ISDN
+#define AF_PHONET       PF_PHONET
+#define AF_IEEE802154   PF_IEEE802154
+#define AF_CAIF         PF_CAIF
+#define AF_ALG          PF_ALG
+#define AF_MAX          PF_MAX
+
+#define SO_DEBUG        1
+#define SO_REUSEADDR    2
+#define SO_TYPE         3
+#define SO_ERROR        4
+#define SO_DONTROUTE    5
+#define SO_BROADCAST    6
+#define SO_SNDBUF       7
+#define SO_RCVBUF       8
+#define SO_KEEPALIVE    9
+#define SO_OOBINLINE    10
+#define SO_NO_CHECK     11
+#define SO_PRIORITY     12
+#define SO_LINGER       13
+#define SO_BSDCOMPAT    14
+#define SO_REUSEPORT    15
+#define SO_PASSCRED     16
+#define SO_PEERCRED     17
+#define SO_RCVLOWAT     18
+#define SO_SNDLOWAT     19
+#define SO_RCVTIMEO     20
+#define SO_SNDTIMEO     21
+
+#define SO_SECURITY_AUTHENTICATION              22
+#define SO_SECURITY_ENCRYPTION_TRANSPORT        23
+#define SO_SECURITY_ENCRYPTION_NETWORK          24
+
+#define SO_BINDTODEVICE 25
+
+#define SO_ATTACH_FILTER        26
+#define SO_DETACH_FILTER        27
+
+#define SO_PEERNAME             28
+#define SO_TIMESTAMP            29
+#define SCM_TIMESTAMP           SO_TIMESTAMP
+
+#define SO_ACCEPTCONN           30
+
+#define SOL_SOCKET      1
+
+/* ??? */
+#define SOL_RAW         255
+#define SOL_DECNET      261
+#define SOL_X25         262
+#define SOL_PACKET      263
+#define SOL_ATM         264
+#define SOL_AAL         265
+#define SOL_IRDA        266
+
+#define SOMAXCONN       128
+
+#define MSG_OOB       0x0001
+#define MSG_PEEK      0x0002
+#define MSG_DONTROUTE 0x0004
+#define MSG_CTRUNC    0x0008
+#define MSG_PROXY     0x0010
+#define MSG_TRUNC     0x0020
+#define MSG_DONTWAIT  0x0040
+#define MSG_EOR       0x0080
+#define MSG_WAITALL   0x0100
+#define MSG_FIN       0x0200
+#define MSD_SYN       0x0400
+#define MSG_CONFIRM   0x0800
+#define MSG_RST       0x1000
+#define MSG_ERRQUEUE  0x2000
+#define MSG_NOSIGNAL  0x4000
+#define MSG_MORE      0x8000
+#define MSG_WAITFORONE 0x10000
+#define MSG_CMSG_CLOEXEC 0x40000000
+
+/* Internal use only!! to make CMSG_NXTHDR definition readable by mortals */
+#define __CMSG_LEN(cmsg) (((cmsg)->cmsg_len + sizeof(long) - 1) & ~(long)(sizeof(long) - 1))
+#define __CMSG_NEXT(cmsg) ((unsigned char *)(cmsg) + __CMSG_LEN(cmsg))
+#define __MHDR_END(mhdr) ((unsigned char *)(mhdr)->msg_control + (mhdr)->msg_controllen)
+
+#define CMSG_DATA(cmsg) ((unsigned char *) (((struct cmsghdr *)(cmsg)) + 1))
+#define CMSG_NXTHDR(mhdr, cmsg) ((cmsg)->cmsg_len < sizeof (struct cmsghdr) ? (struct cmsghdr *)0 : \
+        (__CMSG_NEXT(cmsg) + sizeof (struct cmsghdr) >= __MHDR_END(mhdr) ? (struct cmsghdr *)0 : \
+        ((struct cmsghdr *)__CMSG_NEXT(cmsg))))
+#define CMSG_FIRSTHDR(mhdr) ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0)
+
+/* Are these valid? */
+#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))
+#define CMSG_SPACE(len) (CMSG_ALIGN (len) + CMSG_ALIGN (sizeof (struct cmsghdr)))
+#define CMSG_LEN(len)   (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len))
+
+#define SCM_RIGHTS      0x01
+#define SCM_CREDENTIALS 0x02
diff --git a/arch/i386/bits/stat.h b/arch/i386/bits/stat.h
new file mode 100644 (file)
index 0000000..bb9314a
--- /dev/null
@@ -0,0 +1,22 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
+
+struct stat
+{
+       dev_t st_dev;
+       int __st_dev_padding;
+       long __st_ino_truncated;
+       mode_t st_mode;
+       nlink_t st_nlink;
+       uid_t st_uid;
+       gid_t st_gid;
+       dev_t st_rdev;
+       int __st_rdev_padding;
+       off_t st_size;
+       blksize_t st_blksize;
+       blkcnt_t st_blocks;
+       struct timespec st_atim;
+       struct timespec st_mtim;
+       struct timespec st_ctim;
+       ino_t st_ino;
+};
diff --git a/arch/i386/bits/statfs.h b/arch/i386/bits/statfs.h
new file mode 100644 (file)
index 0000000..9dda440
--- /dev/null
@@ -0,0 +1,16 @@
+struct statvfs {
+       unsigned long f_type;
+       unsigned long f_bsize;
+       fsblkcnt_t f_blocks;
+       fsblkcnt_t f_bfree;
+       fsblkcnt_t f_bavail;
+       fsfilcnt_t f_files;
+       fsfilcnt_t f_ffree;
+       unsigned long f_fsid;
+       unsigned long __unused;
+       unsigned long f_namemax;
+       unsigned long f_frsize;
+       fsfilcnt_t f_favail;
+       unsigned long f_flag;
+       unsigned long __reserved[2];
+};
diff --git a/arch/i386/bits/stdint.h b/arch/i386/bits/stdint.h
new file mode 100644 (file)
index 0000000..8e21a8c
--- /dev/null
@@ -0,0 +1,23 @@
+#define INT_FAST8_MIN   INT8_MIN
+#define INT_FAST16_MIN  INT32_MIN
+#define INT_FAST32_MIN  INT32_MIN
+#define INT_FAST64_MIN  INT64_MIN
+
+#define INT_FAST8_MAX   INT8_MAX
+#define INT_FAST16_MAX  INT32_MAX
+#define INT_FAST32_MAX  INT32_MAX
+#define INT_FAST64_MAX  INT64_MAX
+
+#define UINT_FAST8_MAX  UINT8_MAX
+#define UINT_FAST16_MAX UINT32_MAX
+#define UINT_FAST32_MAX UINT32_MAX
+#define UINT_FAST64_MAX UINT64_MAX
+
+#define INTPTR_MIN      INT32_MIN
+#define INTPTR_MAX      INT32_MAX
+#define UINTPTR_MAX     UINT32_MAX
+#define PTRDIFF_MIN     INT32_MIN
+#define PTRDIFF_MAX     INT32_MAX
+#define SIG_ATOMIC_MIN  INT32_MIN
+#define SIG_ATOMIC_MAX  INT32_MAX
+#define SIZE_MAX        UINT32_MAX
diff --git a/arch/i386/bits/stdio.h b/arch/i386/bits/stdio.h
new file mode 100644 (file)
index 0000000..b4611f3
--- /dev/null
@@ -0,0 +1,17 @@
+#define BUFSIZ 1024
+
+#define FILENAME_MAX 4095
+#define FOPEN_MAX 1000
+#define TMP_MAX 10000
+
+#define L_cuserid 20
+#define L_tmpnam 20
+
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+#define L_ctermid 20
+#endif
+
+#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
+#define P_tmpdir "/tmp"
+#endif
diff --git a/arch/i386/bits/sysmacros.h b/arch/i386/bits/sysmacros.h
new file mode 100644 (file)
index 0000000..da29022
--- /dev/null
@@ -0,0 +1,7 @@
+#define major(x) (((x) >> 8) & 0xff)
+#define minor(x) ((x) & 0xff)
+#define makedev(x,y) (((x)<<8)|((y)&0xff))
+
+//#define makedev(x,y) \
+//     ((x)*0x100000001ULL)&(0xfffffffffff0)
+//     ((y)*0x1001 & 0xffff0ff)
diff --git a/arch/i386/bits/tcp.h b/arch/i386/bits/tcp.h
new file mode 100644 (file)
index 0000000..923231b
--- /dev/null
@@ -0,0 +1 @@
+#define TCP_NODELAY 1
diff --git a/arch/i386/bits/termios.h b/arch/i386/bits/termios.h
new file mode 100644 (file)
index 0000000..316baeb
--- /dev/null
@@ -0,0 +1,158 @@
+struct termios
+{
+       tcflag_t c_iflag;
+       tcflag_t c_oflag;
+       tcflag_t c_cflag;
+       tcflag_t c_lflag;
+       cc_t c_line;
+       cc_t c_cc[NCCS];
+       speed_t __c_ispeed;
+       speed_t __c_ospeed;
+};
+
+#define VINTR     0
+#define VQUIT     1
+#define VERASE    2
+#define VKILL     3
+#define VEOF      4
+#define VTIME     5
+#define VMIN      6
+#define VSWTC     7
+#define VSTART    8
+#define VSTOP     9
+#define VSUSP    10
+#define VEOL     11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE  14
+#define VLNEXT   15
+#define VEOL2    16
+
+#define IGNBRK  0000001
+#define BRKINT  0000002
+#define IGNPAR  0000004
+#define PARMRK  0000010
+#define INPCK   0000020
+#define ISTRIP  0000040
+#define INLCR   0000100
+#define IGNCR   0000200
+#define ICRNL   0000400
+#define IUCLC   0001000
+#define IXON    0002000
+#define IXANY   0004000
+#define IXOFF   0010000
+#define IMAXBEL 0020000
+
+#define OPOST  0000001
+#define OLCUC  0000002
+#define ONLCR  0000004
+#define OCRNL  0000010
+#define ONOCR  0000020
+#define ONLRET 0000040
+#define OFILL  0000100
+#define OFDEL  0000200
+#define NLDLY  0000400
+#define NL0    0000000
+#define NL1    0000400
+#define CRDLY  0003000
+#define CR0    0000000
+#define CR1    0001000
+#define CR2    0002000
+#define CR3    0003000
+#define TABDLY 0014000
+#define TAB0   0000000
+#define TAB1   0004000
+#define TAB2   0010000
+#define TAB3   0014000
+#define BSDLY  0020000
+#define BS0    0000000
+#define BS1    0020000
+#define FFDLY  0100000
+#define FF0    0000000
+#define FF1    0100000
+
+#define VTDLY  0040000
+#define VT0    0000000
+#define VT1    0040000
+
+/* ?? */
+#define XTABS  0014000
+
+#define B0       0000000
+#define B50      0000001
+#define B75      0000002
+#define B110     0000003
+#define B134     0000004
+#define B150     0000005
+#define B200     0000006
+#define B300     0000007
+#define B600     0000010
+#define B1200    0000011
+#define B1800    0000012
+#define B2400    0000013
+#define B4800    0000014
+#define B9600    0000015
+#define B19200   0000016
+#define B38400   0000017
+
+#define B57600   0010001
+#define B115200  0010002
+#define B230400  0010003
+#define B460800  0010004
+#define B500000  0010005
+#define B576000  0010006
+#define B921600  0010007
+#define B1000000 0010010
+#define B1152000 0010011
+#define B1500000 0010012
+#define B2000000 0010013
+#define B2500000 0010014
+#define B3000000 0010015
+#define B3500000 0010016
+#define B4000000 0010017
+
+#define CBAUD    0010017
+
+#define CSIZE  0000060
+#define CS5    0000000
+#define CS6    0000020
+#define CS7    0000040
+#define CS8    0000060
+#define CSTOPB 0000100
+#define CREAD  0000200
+#define PARENB 0000400
+#define PARODD 0001000
+#define HUPCL  0002000
+#define CLOCAL 0004000
+
+#define CRTSCTS  020000000000
+
+#define ISIG   0000001
+#define ICANON 0000002
+#define ECHO   0000010
+#define ECHOE  0000020
+#define ECHOK  0000040
+#define ECHONL 0000100
+#define NOFLSH 0000200
+#define TOSTOP 0000400
+#define IEXTEN 0100000
+
+/* Extensions? */
+#define ECHOCTL 0001000
+#define ECHOPRT 0002000
+#define ECHOKE 0004000
+#define FLUSHO 0010000
+#define PENDIN 0040000
+
+#define TCOOFF 0
+#define TCOON  1
+#define TCIOFF 2
+#define TCION  3
+
+#define TCIFLUSH  0
+#define TCOFLUSH  1
+#define TCIOFLUSH 2
+
+#define TCSANOW   0
+#define TCSADRAIN 1
+#define TCSAFLUSH 2
diff --git a/arch/i386/bits/user.h b/arch/i386/bits/user.h
new file mode 100644 (file)
index 0000000..13ff027
--- /dev/null
@@ -0,0 +1,77 @@
+#undef __WORDSIZE
+#define __WORDSIZE 32
+
+struct user_fpregs_struct
+{
+       long int cwd;
+       long int swd;
+       long int twd;
+       long int fip;
+       long int fcs;
+       long int foo;
+       long int fos;
+       long int st_space[20];
+};
+
+struct user_fpxregs_struct
+{
+       unsigned short int cwd;
+       unsigned short int swd;
+       unsigned short int twd;
+       unsigned short int fop;
+       long int fip;
+       long int fcs;
+       long int foo;
+       long int fos;
+       long int mxcsr;
+       long int reserved;
+       long int st_space[32];
+       long int xmm_space[32];
+       long int padding[56];
+};
+
+struct user_regs_struct
+{
+       long int ebx;
+       long int ecx;
+       long int edx;
+       long int esi;
+       long int edi;
+       long int ebp;
+       long int eax;
+       long int xds;
+       long int xes;
+       long int xfs;
+       long int xgs;
+       long int orig_eax;
+       long int eip;
+       long int xcs;
+       long int eflags;
+       long int esp;
+       long int xss;
+};
+
+struct user
+{
+       struct user_regs_struct         regs;
+       int                             u_fpvalid;
+       struct user_fpregs_struct       i387;
+       unsigned long int               u_tsize;
+       unsigned long int               u_dsize;
+       unsigned long int               u_ssize;
+       unsigned long                   start_code;
+       unsigned long                   start_stack;
+       long int                        signal;
+       int                             reserved;
+       struct user_regs_struct         *u_ar0;
+       struct user_fpregs_struct       *u_fpstate;
+       unsigned long int               magic;
+       char                            u_comm[32];
+       int                             u_debugreg[8];
+};
+
+#define PAGE_MASK              (~(PAGE_SIZE-1))
+#define NBPG                   PAGE_SIZE
+#define UPAGES                 1
+#define HOST_TEXT_START_ADDR   (u.start_code)
+#define HOST_STACK_END_ADDR    (u.start_stack + u.u_ssize * NBPG)
diff --git a/arch/i386/bits/wait.h b/arch/i386/bits/wait.h
new file mode 100644 (file)
index 0000000..ae3f101
--- /dev/null
@@ -0,0 +1,13 @@
+#define WNOHANG    1
+#define WUNTRACED  2
+
+#define WSTOPPED   2
+#define WEXITED    4
+#define WCONTINUED 8
+#define WNOWAIT    0x1000000
+
+#if defined(__XOPEN_SOURCE) || defined(__GNU_SOURCE)
+#define P_ALL  0
+#define P_PID  1
+#define P_PGID 2
+#endif
diff --git a/arch/i386/bits/wexitstatus.h b/arch/i386/bits/wexitstatus.h
new file mode 100644 (file)
index 0000000..34a8023
--- /dev/null
@@ -0,0 +1,9 @@
+#ifndef WEXITSTATUS
+#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)
+#define WTERMSIG(s) ((s) & 0x7f)
+#define WSTOPSIG(s) WEXITSTATUS(s)
+#define WCOREDUMP(s) ((s) & 0x80)
+#define WIFEXITED(s) (!WTERMSIG(s))
+#define WIFSTOPPED(s) (((s) & 0xff) == 0x7f)
+#define WIFSIGNALED(s) (!WIFSTOPPED(s) && !WIFEXITED(s))
+#endif
diff --git a/include/bits/alltypes.h.sh b/include/bits/alltypes.h.sh
deleted file mode 100755 (executable)
index d68579f..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/bin/sh
-sed -e << EOF \
-'/^TYPEDEF/s/TYPEDEF \(.*\) \([^ ]*\);$/#if defined(__NEED_\2) \&\& !defined(__DEFINED_\2)\
-typedef \1 \2;\
-#define __DEFINED_\2\
-#endif\
-/
-/^STRUCT/s/STRUCT * \([^ ]*\) \(.*\);$/#if defined(__NEED_struct_\1) \&\& !defined(__DEFINED_struct_\1)\
-struct \1 \2;\
-#define __DEFINED_struct_\1\
-#endif\
-/
-/^UNION/s/UNION * \([^ ]*\) \(.*\);$/#if defined(__NEED_union_\1) \&\& !defined(__DEFINED_union_\1)\
-union \1 \2;\
-#define __DEFINED_union_\1\
-#endif\
-/'
-
-TYPEDEF unsigned size_t;
-TYPEDEF int ssize_t;
-TYPEDEF long ptrdiff_t;
-TYPEDEF struct __va_list * va_list;
-
-TYPEDEF long wchar_t;
-TYPEDEF long wint_t;
-TYPEDEF long wctrans_t;
-TYPEDEF long wctype_t;
-
-TYPEDEF char      int8_t;
-TYPEDEF short     int16_t;
-TYPEDEF int       int32_t;
-TYPEDEF long long int64_t;
-
-TYPEDEF unsigned char      uint8_t;
-TYPEDEF unsigned short     uint16_t;
-TYPEDEF unsigned int       uint32_t;
-TYPEDEF unsigned long long uint64_t;
-
-TYPEDEF unsigned char      __uint8_t;
-TYPEDEF unsigned short     __uint16_t;
-TYPEDEF unsigned int       __uint32_t;
-TYPEDEF unsigned long long __uint64_t;
-
-TYPEDEF int8_t  int_least8_t;
-TYPEDEF int16_t int_least16_t;
-TYPEDEF int32_t int_least32_t;
-TYPEDEF int64_t int_least64_t;
-
-TYPEDEF uint8_t  uint_least8_t;
-TYPEDEF uint16_t uint_least16_t;
-TYPEDEF uint32_t uint_least32_t;
-TYPEDEF uint64_t uint_least64_t;
-
-TYPEDEF int8_t    int_fast8_t;
-TYPEDEF int       int_fast16_t;
-TYPEDEF int       int_fast32_t;
-TYPEDEF int64_t   int_fast64_t;
-
-TYPEDEF unsigned char      uint_fast8_t;
-TYPEDEF unsigned int       uint_fast16_t;
-TYPEDEF unsigned int       uint_fast32_t;
-TYPEDEF uint64_t           uint_fast64_t;
-
-TYPEDEF long          intptr_t;
-TYPEDEF unsigned long uintptr_t;
-
-TYPEDEF long long          intmax_t;
-TYPEDEF unsigned long long uintmax_t;
-
-TYPEDEF long time_t;
-TYPEDEF unsigned useconds_t;
-TYPEDEF int suseconds_t;
-STRUCT timeval { time_t tv_sec; int tv_usec; };
-STRUCT timespec { time_t tv_sec; long tv_nsec; };
-
-TYPEDEF int pid_t;
-TYPEDEF int id_t;
-TYPEDEF int uid_t;
-TYPEDEF int gid_t;
-TYPEDEF int key_t;
-TYPEDEF struct __pthread * pthread_t;
-
-TYPEDEF long long off_t;
-
-TYPEDEF unsigned int mode_t;
-
-TYPEDEF unsigned int nlink_t;
-TYPEDEF unsigned long long ino_t;
-TYPEDEF long long dev_t;
-TYPEDEF long blksize_t;
-TYPEDEF long long blkcnt_t;
-TYPEDEF unsigned long long fsblkcnt_t;
-TYPEDEF unsigned long long fsfilcnt_t;
-
-TYPEDEF int timer_t;
-TYPEDEF int clockid_t;
-TYPEDEF unsigned long clock_t;
-
-TYPEDEF struct { unsigned long __bits[128/sizeof(long)]; } sigset_t;
-TYPEDEF struct __siginfo siginfo_t;
-
-TYPEDEF unsigned int socklen_t;
-TYPEDEF unsigned short sa_family_t;
-TYPEDEF unsigned short in_port_t;
-TYPEDEF unsigned int in_addr_t;
-STRUCT in_addr { in_addr_t s_addr; };
-
-TYPEDEF struct __FILE_s FILE;
-
-TYPEDEF int nl_item;
-
-TYPEDEF struct __locale * locale_t;
-
-STRUCT iovec { void *iov_base; size_t iov_len; };
-
-EOF
diff --git a/include/bits/endian.h b/include/bits/endian.h
deleted file mode 100644 (file)
index 172c338..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#define __BYTE_ORDER __LITTLE_ENDIAN
diff --git a/include/bits/errno.h b/include/bits/errno.h
deleted file mode 100644 (file)
index ec3d363..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-#define EPERM            1
-#define ENOENT           2
-#define ESRCH            3
-#define EINTR            4
-#define EIO              5
-#define ENXIO            6
-#define E2BIG            7
-#define ENOEXEC          8
-#define EBADF            9
-#define ECHILD          10
-#define EAGAIN          11
-#define ENOMEM          12
-#define EACCES          13
-#define EFAULT          14
-#define ENOTBLK         15
-#define EBUSY           16
-#define EEXIST          17
-#define EXDEV           18
-#define ENODEV          19
-#define ENOTDIR         20
-#define EISDIR          21
-#define EINVAL          22
-#define ENFILE          23
-#define EMFILE          24
-#define ENOTTY          25
-#define ETXTBSY         26
-#define EFBIG           27
-#define ENOSPC          28
-#define ESPIPE          29
-#define EROFS           30
-#define EMLINK          31
-#define EPIPE           32
-#define EDOM            33
-#define ERANGE          34
-#define EDEADLK         35
-#define ENAMETOOLONG    36
-#define ENOLCK          37
-#define ENOSYS          38
-#define ENOTEMPTY       39
-#define ELOOP           40
-#define EWOULDBLOCK     EAGAIN
-#define ENOMSG          42
-#define EIDRM           43
-#define ECHRNG          44
-#define EL2NSYNC        45
-#define EL3HLT          46
-#define EL3RST          47
-#define ELNRNG          48
-#define EUNATCH         49
-#define ENOCSI          50
-#define EL2HLT          51
-#define EBADE           52
-#define EBADR           53
-#define EXFULL          54
-#define ENOANO          55
-#define EBADRQC         56
-#define EBADSLT         57
-#define EDEADLOCK       EDEADLK
-#define EBFONT          59
-#define ENOSTR          60
-#define ENODATA         61
-#define ETIME           62
-#define ENOSR           63
-#define ENONET          64
-#define ENOPKG          65
-#define EREMOTE         66
-#define ENOLINK         67
-#define EADV            68
-#define ESRMNT          69
-#define ECOMM           70
-#define EPROTO          71
-#define EMULTIHOP       72
-#define EDOTDOT         73
-#define EBADMSG         74
-#define EOVERFLOW       75
-#define ENOTUNIQ        76
-#define EBADFD          77
-#define EREMCHG         78
-#define ELIBACC         79
-#define ELIBBAD         80
-#define ELIBSCN         81
-#define ELIBMAX         82
-#define ELIBEXEC        83
-#define EILSEQ          84
-#define ERESTART        85
-#define ESTRPIPE        86
-#define EUSERS          87
-#define ENOTSOCK        88
-#define EDESTADDRREQ    89
-#define EMSGSIZE        90
-#define EPROTOTYPE      91
-#define ENOPROTOOPT     92
-#define EPROTONOSUPPORT 93
-#define ESOCKTNOSUPPORT 94
-#define EOPNOTSUPP      95
-#define EPFNOSUPPORT    96
-#define EAFNOSUPPORT    97
-#define EADDRINUSE      98
-#define EADDRNOTAVAIL   99
-#define ENETDOWN        100
-#define ENETUNREACH     101
-#define ENETRESET       102
-#define ECONNABORTED    103
-#define ECONNRESET      104
-#define ENOBUFS         105
-#define EISCONN         106
-#define ENOTCONN        107
-#define ESHUTDOWN       108
-#define ETOOMANYREFS    109
-#define ETIMEDOUT       110
-#define ECONNREFUSED    111
-#define EHOSTDOWN       112
-#define EHOSTUNREACH    113
-#define EALREADY        114
-#define EINPROGRESS     115
-#define ESTALE          116
-#define EUCLEAN         117
-#define ENOTNAM         118
-#define ENAVAIL         119
-#define EISNAM          120
-#define EREMOTEIO       121
-#define EDQUOT          122
-#define ENOMEDIUM       123
-#define EMEDIUMTYPE     124
-#define ECANCELED       125
-#define ENOKEY          126
-#define EKEYEXPIRED     127
-#define EKEYREVOKED     128
-#define EKEYREJECTED    129
-#define EOWNERDEAD      130
-#define ENOTRECOVERABLE 131
-#define ERFKILL         132
diff --git a/include/bits/fcntl.h b/include/bits/fcntl.h
deleted file mode 100644 (file)
index 802c3d1..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-#define O_ACCMODE 03
-#define O_RDONLY  00
-#define O_WRONLY  01
-#define O_RDWR    02
-
-#define O_CREAT        0100
-#define O_EXCL         0200
-#define O_NOCTTY       0400
-#define O_TRUNC       01000
-#define O_APPEND      02000
-#define O_NONBLOCK    04000
-#define O_SYNC       010000
-#define O_DIRECTORY 0200000
-#define O_NOFOLLOW  0400000
-#define O_CLOEXEC  02000000
-
-#ifdef _GNU_SOURCE
-#define O_NDELAY O_NONBLOCK
-#define O_ASYNC      020000
-#define O_DIRECT     040000
-#define O_NOATIME  01000000
-#define F_DUPFD_CLOEXEC 1030
-#define FAPPENT O_APPEND
-#define FFSYNC O_FSYNC
-#define FASYNC O_ASYNC
-#define FNONBLOCK O_NONBLOCK
-#define FNDELAY O_NDELAY
-#endif
-
-#define F_DUPFD  0
-#define F_GETFD  1
-#define F_SETFD  2
-#define F_GETFL  3
-#define F_SETFL  4
-
-#define F_SETOWN 8
-#define F_GETOWN 9
-
-#define F_GETLK 12
-#define F_SETLK 13
-#define F_SETLKW 14
-
-#define FD_CLOEXEC 1
-
-#define F_RDLCK 0
-#define F_WRLCK 1
-#define F_UNLCK 2
-
-#define AT_FDCWD (-100)
-#define AT_SYMLINK_NOFOLLOW 0x100
-#define AT_REMOVEDIR 0x200
-#define AT_SYMLINK_FOLLOW 0x400
-#define AT_EACCESS 0x200
-
-#define POSIX_FADV_NORMAL     0
-#define POSIX_FADV_RANDOM     1
-#define POSIX_FADV_SEQUENTIAL 2
-#define POSIX_FADV_WILLNEED   3
-#define POSIX_FADV_DONTNEED   4
-#define POSIX_FADV_NOREUSE    5
diff --git a/include/bits/fenv.h b/include/bits/fenv.h
deleted file mode 100644 (file)
index 24df041..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-#define FE_INVALID    1
-#define __FE_DENORM   2
-#define FE_DIVBYZERO  4
-#define FE_OVERFLOW   8
-#define FE_UNDERFLOW  16
-#define FE_INEXACT    32
-
-#define FE_ALL_EXCEPT 63
-
-#define FE_TONEAREST  0
-#define FE_DOWNWARD   0x400
-#define FE_UPWARD     0x800
-#define FE_TOWARDZERO 0xc00
-
-typedef unsigned short fexcept_t;
-
-typedef struct {
-       unsigned short __control_word;
-       unsigned short __unused1;
-       unsigned short __status_word;
-       unsigned short __unused2;
-       unsigned short __tags;
-       unsigned short __unused3;
-       unsigned int __eip;
-       unsigned short __cs_selector;
-       unsigned int __opcode:11;
-       unsigned int __unused4:5;
-       unsigned int __data_offset;
-       unsigned short __data_selector;
-       unsigned short __unused5;
-       unsigned int __mxcsr;
-} fenv_t;
-
-#define FE_DFL_ENV      ((const fenv_t *) -1)
diff --git a/include/bits/float.h b/include/bits/float.h
deleted file mode 100644 (file)
index 162b3e4..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-#define LDBL_MIN     3.3621031431120935063e-4932L
-#define LDBL_MAX     1.1897314953572317650e+4932L
-#define LDBL_EPSILON 1.0842021724855044340e-19L
-
-#define LDBL_MANT_DIG 64
-#define LDBL_MIN_EXP (-16381)
-#define LDBL_MAX_EXP 16384
-
-#define LDBL_DIG 18
-#define LDBL_MIN_10_EXP (-4931)
-#define LDBL_MAX_10_EXP 4932
diff --git a/include/bits/in.h b/include/bits/in.h
deleted file mode 100644 (file)
index b233706..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-#define IP_TOS             1
-#define IP_TTL             2
-#define IP_HDRINCL         3
-#define IP_OPTIONS         4
-#define IP_ROUTER_ALERT    5
-#define IP_RECVOPTS        6
-#define IP_RETOPTS         7
-//#define IP_PKTINFO         8
-#define IP_PKTOPTIONS      9
-#define IP_PMTUDISC        10
-#define IP_MTU_DISCOVER    10
-#define IP_RECVERR         11
-#define IP_RECVTTL         12
-#define IP_RECVTOS         13
-#define IP_MTU             14
-#define IP_FREEBIND        15
-#define IP_IPSEC_POLICY    16
-#define IP_XFRM_POLICY     17
-#define IP_PASSSEC         18
-#define IP_TRANSPARENT     19
-#define IP_ORIGDSTADDR     20
-#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR
-#define IP_MINTTL          21
-#define IP_MULTICAST_IF    32
-#define IP_MULTICAST_TTL   33
-#define IP_MULTICAST_LOOP  34
-#define IP_ADD_MEMBERSHIP  35
-#define IP_DROP_MEMBERSHIP 36
-#define IP_UNBLOCK_SOURCE  37
-#define IP_BLOCK_SOURCE    38
-#define IP_ADD_SOURCE_MEMBERSHIP  39
-#define IP_DROP_SOURCE_MEMBERSHIP 40
-#define IP_MSFILTER        41
-
-#define IP_RECVRETOPTS IP_RETOPTS
-
-#define IP_PMTUDISC_DONT   0
-#define IP_PMTUDISC_WANT   1
-#define IP_PMTUDISC_DO     2
-#define IP_PMTUDISC_PROBE  3
-
-#define SOL_IP 0
-
-#define IP_DEFAULT_MULTICAST_TTL        1
-#define IP_DEFAULT_MULTICAST_LOOP       1
-#define IP_MAX_MEMBERSHIPS              20
-
-struct ip_opts
-{
-       struct in_addr ip_dst;
-       char ip_opts[40];
-};
-
-struct ip_mreq
-{
-       struct in_addr imr_multiaddr;
-       struct in_addr imr_interface;
-};
-
-struct ip_mreqn
-{
-       struct in_addr imr_multiaddr;
-       struct in_addr imr_address;
-       int imr_ifindex;
-};
-
-struct in_pktinfo
-{
-       int ipi_ifindex;
-       struct in_addr ipi_spec_dst;
-       struct in_addr ipi_addr;
-};
-
-#define IPV6_ADDRFORM           1
-#define IPV6_2292PKTINFO        2
-#define IPV6_2292HOPOPTS        3
-#define IPV6_2292DSTOPTS        4
-#define IPV6_2292RTHDR          5
-#define IPV6_2292PKTOPTIONS     6
-#define IPV6_CHECKSUM           7
-#define IPV6_2292HOPLIMIT       8
-#define SCM_SRCRT               IPV6_RXSRCRT
-#define IPV6_NEXTHOP            9
-#define IPV6_AUTHHDR            10
-#define IPV6_UNICAST_HOPS       16
-#define IPV6_MULTICAST_IF       17
-#define IPV6_MULTICAST_HOPS     18
-#define IPV6_MULTICAST_LOOP     19
-#define IPV6_JOIN_GROUP         20
-#define IPV6_LEAVE_GROUP        21
-#define IPV6_ROUTER_ALERT       22
-#define IPV6_MTU_DISCOVER       23
-#define IPV6_MTU                24
-#define IPV6_RECVERR            25
-#define IPV6_V6ONLY             26
-#define IPV6_JOIN_ANYCAST       27
-#define IPV6_LEAVE_ANYCAST      28
-#define IPV6_IPSEC_POLICY       34
-#define IPV6_XFRM_POLICY        35
-
-#define IPV6_RECVPKTINFO        49
-#define IPV6_PKTINFO            50
-#define IPV6_RECVHOPLIMIT       51
-#define IPV6_HOPLIMIT           52
-#define IPV6_RECVHOPOPTS        53
-#define IPV6_HOPOPTS            54
-#define IPV6_RTHDRDSTOPTS       55
-#define IPV6_RECVRTHDR          56
-#define IPV6_RTHDR              57
-#define IPV6_RECVDSTOPTS        58
-#define IPV6_DSTOPTS            59
-
-#define IPV6_RECVTCLASS         66
-#define IPV6_TCLASS             67
-
-#define IPV6_ADD_MEMBERSHIP     IPV6_JOIN_GROUP
-#define IPV6_DROP_MEMBERSHIP    IPV6_LEAVE_GROUP
-#define IPV6_RXHOPOPTS          IPV6_HOPOPTS
-#define IPV6_RXDSTOPTS          IPV6_DSTOPTS
-
-
-#define IPV6_PMTUDISC_DONT      0
-#define IPV6_PMTUDISC_WANT      1
-#define IPV6_PMTUDISC_DO        2
-#define IPV6_PMTUDISC_PROBE     3
-
-#define SOL_IPV6        41
-#define SOL_ICMPV6      58
-
-#define IPV6_RTHDR_LOOSE        0
-#define IPV6_RTHDR_STRICT       1
-
-#define IPV6_RTHDR_TYPE_0       0
diff --git a/include/bits/ioctl.h b/include/bits/ioctl.h
deleted file mode 100644 (file)
index 544bbdc..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )
-#define _IOC_NONE  0U
-#define _IOC_WRITE 1U
-#define _IOC_READ  2U
-
-#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)
-#define _IOW(a,b,c) _IOC(1,(a),(b),sizeof(c))
-#define _IOR(a,b,c) _IOC(2,(a),(b),sizeof(c))
-#define _IOWR(a,b,c) _IOC(3,(a),(b),sizeof(c))
-
-#define TCGETS         0x5401
-#define TCSETS         0x5402
-#define TCSETSW                0x5403
-#define TCSETSF                0x5404
-#define TCGETA         0x5405
-#define TCSETA         0x5406
-#define TCSETAW                0x5407
-#define TCSETAF                0x5408
-#define TCSBRK         0x5409
-#define TCXONC         0x540A
-#define TCFLSH         0x540B
-#define TIOCEXCL       0x540C
-#define TIOCNXCL       0x540D
-#define TIOCSCTTY      0x540E
-#define TIOCGPGRP      0x540F
-#define TIOCSPGRP      0x5410
-#define TIOCOUTQ       0x5411
-#define TIOCSTI                0x5412
-#define TIOCGWINSZ     0x5413
-#define TIOCSWINSZ     0x5414
-#define TIOCMGET       0x5415
-#define TIOCMBIS       0x5416
-#define TIOCMBIC       0x5417
-#define TIOCMSET       0x5418
-#define TIOCGSOFTCAR   0x5419
-#define TIOCSSOFTCAR   0x541A
-#define FIONREAD       0x541B
-#define TIOCINQ                FIONREAD
-#define TIOCLINUX      0x541C
-#define TIOCCONS       0x541D
-#define TIOCGSERIAL    0x541E
-#define TIOCSSERIAL    0x541F
-#define TIOCPKT                0x5420
-#define FIONBIO                0x5421
-#define TIOCNOTTY      0x5422
-#define TIOCSETD       0x5423
-#define TIOCGETD       0x5424
-#define TCSBRKP                0x5425
-#define TIOCTTYGSTRUCT 0x5426
-#define TIOCSBRK       0x5427
-#define TIOCCBRK       0x5428
-#define TIOCGSID       0x5429
-#define TIOCGPTN       0x80045430
-#define TIOCSPTLCK     0x40045431
-#define TCGETX         0x5432
-#define TCSETX         0x5433
-#define TCSETXF                0x5434
-#define TCSETXW                0x5435
-
-#define FIONCLEX       0x5450
-#define FIOCLEX                0x5451
-#define FIOASYNC       0x5452
-#define TIOCSERCONFIG  0x5453
-#define TIOCSERGWILD   0x5454
-#define TIOCSERSWILD   0x5455
-#define TIOCGLCKTRMIOS 0x5456
-#define TIOCSLCKTRMIOS 0x5457
-#define TIOCSERGSTRUCT 0x5458
-#define TIOCSERGETLSR   0x5459
-#define TIOCSERGETMULTI 0x545A
-#define TIOCSERSETMULTI 0x545B
-
-#define TIOCMIWAIT     0x545C
-#define TIOCGICOUNT    0x545D
-#define TIOCGHAYESESP   0x545E
-#define TIOCSHAYESESP   0x545F
-#define FIOQSIZE       0x5460
-
-#define TIOCPKT_DATA            0
-#define TIOCPKT_FLUSHREAD       1
-#define TIOCPKT_FLUSHWRITE      2
-#define TIOCPKT_STOP            4
-#define TIOCPKT_START           8
-#define TIOCPKT_NOSTOP         16
-#define TIOCPKT_DOSTOP         32
-#define TIOCPKT_IOCTL          64
-
-#define TIOCSER_TEMT    0x01
-
-struct winsize {
-       unsigned short ws_row;
-       unsigned short ws_col;
-       unsigned short ws_xpixel;
-       unsigned short ws_ypixel;
-};
-
-#define TIOCM_LE        0x001
-#define TIOCM_DTR       0x002
-#define TIOCM_RTS       0x004
-#define TIOCM_ST        0x008
-#define TIOCM_SR        0x010
-#define TIOCM_CTS       0x020
-#define TIOCM_CAR       0x040
-#define TIOCM_RNG       0x080
-#define TIOCM_DSR       0x100
-#define TIOCM_CD        TIOCM_CAR
-#define TIOCM_RI        TIOCM_RNG
-#define TIOCM_OUT1      0x2000
-#define TIOCM_OUT2      0x4000
-#define TIOCM_LOOP      0x8000
-#define TIOCM_MODEM_BITS TIOCM_OUT2
-
-#define N_TTY           0
-#define N_SLIP          1
-#define N_MOUSE         2
-#define N_PPP           3
-#define N_STRIP         4
-#define N_AX25          5
-#define N_X25           6
-#define N_6PACK         7
-#define N_MASC          8
-#define N_R3964         9
-#define N_PROFIBUS_FDL  10
-#define N_IRDA          11
-#define N_SMSBLOCK      12
-#define N_HDLC          13
-#define N_SYNC_PPP      14
-#define N_HCI           15
-
-#define SIOCADDRT       0x890B
-#define SIOCDELRT       0x890C
-#define SIOCRTMSG       0x890D
-
-#define SIOCGIFNAME     0x8910
-#define SIOCSIFLINK     0x8911
-#define SIOCGIFCONF     0x8912
-#define SIOCGIFFLAGS    0x8913
-#define SIOCSIFFLAGS    0x8914
-#define SIOCGIFADDR     0x8915
-#define SIOCSIFADDR     0x8916
-#define SIOCGIFDSTADDR  0x8917
-#define SIOCSIFDSTADDR  0x8918
-#define SIOCGIFBRDADDR  0x8919
-#define SIOCSIFBRDADDR  0x891a
-#define SIOCGIFNETMASK  0x891b
-#define SIOCSIFNETMASK  0x891c
-#define SIOCGIFMETRIC   0x891d
-#define SIOCSIFMETRIC   0x891e
-#define SIOCGIFMEM      0x891f
-#define SIOCSIFMEM      0x8920
-#define SIOCGIFMTU      0x8921
-#define SIOCSIFMTU      0x8922
-#define SIOCSIFHWADDR   0x8924
-#define SIOCGIFENCAP    0x8925
-#define SIOCSIFENCAP    0x8926
-#define SIOCGIFHWADDR   0x8927
-#define SIOCGIFSLAVE    0x8929
-#define SIOCSIFSLAVE    0x8930
-#define SIOCADDMULTI    0x8931
-#define SIOCDELMULTI    0x8932
-#define SIOCGIFINDEX    0x8933
-#define SIOGIFINDEX     SIOCGIFINDEX
-#define SIOCSIFPFLAGS   0x8934
-#define SIOCGIFPFLAGS   0x8935
-#define SIOCDIFADDR     0x8936
-#define SIOCSIFHWBROADCAST 0x8937
-#define SIOCGIFCOUNT    0x8938
-
-#define SIOCGIFBR       0x8940
-#define SIOCSIFBR       0x8941
-
-#define SIOCGIFTXQLEN   0x8942
-#define SIOCSIFTXQLEN   0x8943
-
-#define SIOCDARP        0x8953
-#define SIOCGARP        0x8954
-#define SIOCSARP        0x8955
-
-#define SIOCDRARP       0x8960
-#define SIOCGRARP       0x8961
-#define SIOCSRARP       0x8962
-
-#define SIOCGIFMAP      0x8970
-#define SIOCSIFMAP      0x8971
-
-#define SIOCADDDLCI     0x8980
-#define SIOCDELDLCI     0x8981
-
-#define SIOCDEVPRIVATE         0x89F0
-#define SIOCPROTOPRIVATE       0x89E0
diff --git a/include/bits/ipc.h b/include/bits/ipc.h
deleted file mode 100644 (file)
index 08316a3..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-#define IPC_CREAT  01000
-#define IPC_EXCL   02000
-#define IPC_NOWAIT 04000
-
-#define IPC_RMID 0
-#define IPC_SET  1
-#define IPC_STAT 2
-#ifdef _GNU_SOURCE
-#define IPC_INFO 3
-#endif
-
-#define IPC_PRIVATE ((key_t) 0)
-
-struct ipc_perm
-{
-       key_t key;
-       uid_t uid;
-       gid_t gid;
-       uid_t cuid;
-       gid_t cgid;
-       mode_t mode;
-       int seq;
-       long __pad1;
-       long __pad2;
-};
diff --git a/include/bits/limits.h b/include/bits/limits.h
deleted file mode 100644 (file)
index f577857..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-#define PIPE_BUF 4096
-#define PAGESIZE 4096
-#define PAGE_SIZE PAGESIZE
-#define FILESIZEBITS 64
-#define NAME_MAX 255
-#define SYMLINK_MAX 255
-#define PATH_MAX 4096
-#define NZERO 20
-#define NGROUPS_MAX 32
-#define ARG_MAX 131072
-#define IOV_MAX 1024
-#define SYMLOOP_MAX 40
-#define WORD_BIT 32
-#define LONG_BIT 32
-#endif
-
-#define SHRT_MIN  (-1-0x7fff)
-#define SHRT_MAX  0x7fff
-#define USHRT_MAX 0xffff
-
-#define INT_MIN  (-1-0x7fffffff)
-#define INT_MAX  0x7fffffff
-#define UINT_MAX 0xffffffff
-
-#define LONG_MIN  (-1-0x7fffffffL)
-#define LONG_MAX  0x7fffffffL
-#define ULONG_MAX 0xffffffffL
-
-#define LLONG_MIN  (-1-0x7fffffffffffffffLL)
-#define LLONG_MAX  0x7fffffffffffffffLL
-#define ULLONG_MAX 0xffffffffffffffffULL
diff --git a/include/bits/mman.h b/include/bits/mman.h
deleted file mode 100644 (file)
index d133fa2..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-#define MAP_FAILED ((void *) -1)
-
-#define        PROT_NONE      0
-#define        PROT_READ      1
-#define        PROT_WRITE     2
-#define        PROT_EXEC      4
-#define        PROT_GROWSDOWN 0x01000000
-#define        PROT_GROWSUP   0x02000000
-
-#define        MAP_SHARED     0x01
-#define        MAP_PRIVATE    0x02
-#define        MAP_FIXED      0x10
-
-/* linux extensions */
-#define MAP_TYPE       0x0f
-#define MAP_FILE       0x00
-#define MAP_ANON       0x20
-#define MAP_ANONYMOUS  MAP_ANON
-#define MAP_32BIT      0x40
-
-#define MADV_NORMAL      0
-#define MADV_RANDOM      1
-#define MADV_SEQUENTIAL  2
-#define MADV_WILLNEED    3
-#define MADV_DONTNEED    4
-#define MADV_REMOVE      9
-#define MADV_DONTFORK    10
-#define MADV_DOFORK      11
-#define MADV_MERGEABLE   12
-#define MADV_UNMERGEABLE 13
-#define MADV_HUGEPAGE    14
-#define MADV_NOHUGEPAGE  15
-#define MADV_HWPOISON    100
-
-#define POSIX_MADV_NORMAL       0
-#define POSIX_MADV_RANDOM       1
-#define POSIX_MADV_SEQUENTIAL   2
-#define POSIX_MADV_WILLNEED     3
-#define POSIX_MADV_DONTNEED     0
-
-#define MS_ASYNC        1
-#define MS_INVALIDATE   2
-#define MS_SYNC         4
-
-#define MCL_CURRENT     1
-#define MCL_FUTURE      2
-
-/* linux extensions */
-#define MREMAP_MAYMOVE  1
-#define MREMAP_FIXED    2
diff --git a/include/bits/posix.h b/include/bits/posix.h
deleted file mode 100644 (file)
index 30a3871..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/include/bits/pthread.h b/include/bits/pthread.h
deleted file mode 100644 (file)
index 7d19065..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-struct __ptcb {
-       long __jb[7];
-       int __dummy;
-       struct __ptcb *__next;
-       void *__ptrs[3];
-};
diff --git a/include/bits/reg.h b/include/bits/reg.h
deleted file mode 100644 (file)
index 8bc2582..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 32
-#define EBX 0
-#define ECX 1
-#define EDX 2
-#define ESI 3
-#define EDI 4
-#define EBP 5
-#define EAX 6
-#define DS 7
-#define ES 8
-#define FS 9
-#define GS 10
-#define ORIG_EAX 11
-#define EIP 12
-#define CS 13
-#define EFL 14
-#define UESP 15
-#define SS 16
diff --git a/include/bits/setjmp.h b/include/bits/setjmp.h
deleted file mode 100644 (file)
index b6595bd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-typedef unsigned long jmp_buf [7];
diff --git a/include/bits/shm.h b/include/bits/shm.h
deleted file mode 100644 (file)
index bc95a1c..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-#define SHMLBA 4096
-
-#define SHM_RDONLY 010000
-#define SHM_RND    020000
-#define SHM_REMAP  040000
-#define SHM_EXEC   0100000
-
-/* linux extensions */
-#define SHM_LOCK        11
-#define SHM_UNLOCK      12
-
-struct shmid_ds
-{
-       struct ipc_perm shm_perm;
-       size_t shm_segsz;
-       time_t shm_atime;
-       time_t shm_dtime;
-       time_t shm_ctime;
-       pid_t shm_cpid;
-       pid_t shm_lpid;
-       unsigned long shm_nattch;
-       unsigned long __pad1;
-       unsigned long __pad2;
-};
diff --git a/include/bits/signal.h b/include/bits/signal.h
deleted file mode 100644 (file)
index 8827efd..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-
-struct __siginfo
-{
-       int si_signo;
-       int si_errno;
-       int si_code;
-       union
-       {
-               char __pad[128 - 3*sizeof(int)];
-               struct {
-                       pid_t si_pid;
-                       uid_t si_uid;
-                       union sigval si_sigval;
-               } __rt;
-               struct {
-                       unsigned int si_timer1;
-                       unsigned int si_timer2;
-               } __timer;
-               struct {
-                       pid_t si_pid;
-                       uid_t si_uid;
-                       int si_status;
-                       clock_t si_utime;
-                       clock_t si_stime;
-               } __sigchld;
-               struct {
-                       void *si_addr;
-               } __sigfault;
-               struct {
-                       long int si_band;
-                       int si_fd;
-               } __sigpoll;
-       } __si_fields;
-};
-
-#define si_pid     __si_fields.__sigchld.si_pid
-#define si_uid     __si_fields.__sigchld.si_uid
-#define si_status  __si_fields.__sigchld.si_status
-#define si_utime   __si_fields.__sigchld.si_utime
-#define si_stime   __si_fields.__sigchld.si_stime
-#define si_value   __si_fields.__rt.si_sigval
-#define si_addr    __si_fields.__sigfault.si_addr
-#define si_band    __si_fields.__sigpoll.si_band
-
-#define SA_NOCLDSTOP  1
-#define SA_NOCLDWAIT  2
-#define SA_SIGINFO    4
-#define SA_ONSTACK    0x08000000
-#define SA_RESTART    0x10000000
-#define SA_NODEFER    0x40000000
-#define SA_RESETHAND  0x80000000
-#define SA_RESTORER   0x04000000
-
-#define SS_ONSTACK    1
-#define SS_DISABLE    2
-
-#define SIG_BLOCK     0
-#define SIG_UNBLOCK   1
-#define SIG_SETMASK   2
-
-#define SIG_HOLD ((void (*)(int)) 2)
-
-#endif
-
-#ifdef _GNU_SOURCE
-#define NSIG      64
-#endif
-
-#define SIG_ERR  ((void (*)(int))-1)
-#define SIG_DFL  ((void (*)(int)) 0)
-#define SIG_IGN  ((void (*)(int)) 1)
-
-#define SIGHUP    1
-#define SIGINT    2
-#define SIGQUIT   3
-#define SIGILL    4
-#define SIGTRAP   5
-#define SIGABRT   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   29
-#define SIGPWR    30
-#define SIGSYS    31
-#define SIGUNUSED SIGSYS
diff --git a/include/bits/socket.h b/include/bits/socket.h
deleted file mode 100644 (file)
index b323062..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-struct msghdr
-{
-       void *msg_name;
-       socklen_t msg_namelen;
-       struct iovec *msg_iov;
-       int msg_iovlen;
-       void *msg_control;
-       socklen_t msg_controllen;
-       int msg_flags;
-};
-
-struct cmsghdr
-{
-       socklen_t cmsg_len;
-       int cmsg_level;
-       int cmsg_type;
-};
-
-struct ucred
-{
-       pid_t pid;
-       uid_t uid;
-       gid_t gid;
-};
-
-struct linger
-{
-       int l_onoff;
-       int l_linger;
-};
-
-#define SHUT_RD 0
-#define SHUT_WD 1
-#define SHUT_RDWR 2
-
-#define SOCK_STREAM    1
-#define SOCK_DGRAM     2
-#define SOCK_RAW       3
-#define SOCK_RDM       4
-#define SOCK_SEQPACKET 5
-#define SOCK_DCCP      6
-#define SOCK_PACKET    10
-
-/* linux extensions */
-#define SOCK_CLOEXEC   02000000
-#define SOCK_NONBLOCK  04000
-
-#define PF_UNSPEC       0
-#define PF_LOCAL        1
-#define PF_UNIX         PF_LOCAL
-#define PF_FILE         PF_LOCAL
-#define PF_INET         2
-#define PF_AX25         3
-#define PF_IPX          4
-#define PF_APPLETALK    5
-#define PF_NETROM       6
-#define PF_BRIDGE       7
-#define PF_ATMPVC       8
-#define PF_X25          9
-#define PF_INET6        10
-#define PF_ROSE         11
-#define PF_DECnet       12
-#define PF_NETBEUI      13
-#define PF_SECURITY     14
-#define PF_KEY          15
-#define PF_NETLINK      16
-#define PF_ROUTE        PF_NETLINK
-#define PF_PACKET       17
-#define PF_ASH          18
-#define PF_ECONET       19
-#define PF_ATMSVC       20
-#define PF_SNA          22
-#define PF_IRDA         23
-#define PF_PPPOX        24
-#define PF_WANPIPE      25
-#define PF_BLUETOOTH    31
-#define PF_IUCV         32
-#define PF_RXRPC        33
-#define PF_ISDN         34
-#define PF_PHONET       35
-#define PF_IEEE802154   36
-#define PF_CAIF         37
-#define PF_ALG          38
-#define PF_MAX          39
-
-#define AF_UNSPEC       PF_UNSPEC
-#define AF_LOCAL        PF_LOCAL
-#define AF_UNIX         AF_LOCAL
-#define AF_FILE         AF_LOCAL
-#define AF_INET         PF_INET
-#define AF_AX25         PF_AX25
-#define AF_IPX          PF_IPX
-#define AF_APPLETALK    PF_APPLETALK
-#define AF_NETROM       PF_NETROM
-#define AF_BRIDGE       PF_BRIDGE
-#define AF_ATMPVC       PF_ATMPVC
-#define AF_X25          PF_X25
-#define AF_INET6        PF_INET6
-#define AF_ROSE         PF_ROSE
-#define AF_DECnet       PF_DECnet
-#define AF_NETBEUI      PF_NETBEUI
-#define AF_SECURITY     PF_SECURITY
-#define AF_KEY          PF_KEY
-#define AF_NETLINK      PF_NETLINK
-#define AF_ROUTE        AF_NETLINK
-#define AF_PACKET       PF_PACKET
-#define AF_ASH          PF_ASH
-#define AF_ECONET       PF_ECONET
-#define AF_ATMSVC       PF_ATMSVC
-#define AF_SNA          PF_SNA
-#define AF_IRDA         PF_IRDA
-#define AF_PPPOX        PF_PPPOX
-#define AF_WANPIPE      PF_WANPIPE
-#define AF_BLUETOOTH    PF_BLUETOOTH
-#define AF_IUCV         PF_IUCV
-#define AF_RXRPC        PF_RXRPC
-#define AF_ISDN         PF_ISDN
-#define AF_PHONET       PF_PHONET
-#define AF_IEEE802154   PF_IEEE802154
-#define AF_CAIF         PF_CAIF
-#define AF_ALG          PF_ALG
-#define AF_MAX          PF_MAX
-
-#define SO_DEBUG        1
-#define SO_REUSEADDR    2
-#define SO_TYPE         3
-#define SO_ERROR        4
-#define SO_DONTROUTE    5
-#define SO_BROADCAST    6
-#define SO_SNDBUF       7
-#define SO_RCVBUF       8
-#define SO_KEEPALIVE    9
-#define SO_OOBINLINE    10
-#define SO_NO_CHECK     11
-#define SO_PRIORITY     12
-#define SO_LINGER       13
-#define SO_BSDCOMPAT    14
-#define SO_REUSEPORT    15
-#define SO_PASSCRED     16
-#define SO_PEERCRED     17
-#define SO_RCVLOWAT     18
-#define SO_SNDLOWAT     19
-#define SO_RCVTIMEO     20
-#define SO_SNDTIMEO     21
-
-#define SO_SECURITY_AUTHENTICATION              22
-#define SO_SECURITY_ENCRYPTION_TRANSPORT        23
-#define SO_SECURITY_ENCRYPTION_NETWORK          24
-
-#define SO_BINDTODEVICE 25
-
-#define SO_ATTACH_FILTER        26
-#define SO_DETACH_FILTER        27
-
-#define SO_PEERNAME             28
-#define SO_TIMESTAMP            29
-#define SCM_TIMESTAMP           SO_TIMESTAMP
-
-#define SO_ACCEPTCONN           30
-
-#define SOL_SOCKET      1
-
-/* ??? */
-#define SOL_RAW         255
-#define SOL_DECNET      261
-#define SOL_X25         262
-#define SOL_PACKET      263
-#define SOL_ATM         264
-#define SOL_AAL         265
-#define SOL_IRDA        266
-
-#define SOMAXCONN       128
-
-#define MSG_OOB       0x0001
-#define MSG_PEEK      0x0002
-#define MSG_DONTROUTE 0x0004
-#define MSG_CTRUNC    0x0008
-#define MSG_PROXY     0x0010
-#define MSG_TRUNC     0x0020
-#define MSG_DONTWAIT  0x0040
-#define MSG_EOR       0x0080
-#define MSG_WAITALL   0x0100
-#define MSG_FIN       0x0200
-#define MSD_SYN       0x0400
-#define MSG_CONFIRM   0x0800
-#define MSG_RST       0x1000
-#define MSG_ERRQUEUE  0x2000
-#define MSG_NOSIGNAL  0x4000
-#define MSG_MORE      0x8000
-#define MSG_WAITFORONE 0x10000
-#define MSG_CMSG_CLOEXEC 0x40000000
-
-/* Internal use only!! to make CMSG_NXTHDR definition readable by mortals */
-#define __CMSG_LEN(cmsg) (((cmsg)->cmsg_len + sizeof(long) - 1) & ~(long)(sizeof(long) - 1))
-#define __CMSG_NEXT(cmsg) ((unsigned char *)(cmsg) + __CMSG_LEN(cmsg))
-#define __MHDR_END(mhdr) ((unsigned char *)(mhdr)->msg_control + (mhdr)->msg_controllen)
-
-#define CMSG_DATA(cmsg) ((unsigned char *) (((struct cmsghdr *)(cmsg)) + 1))
-#define CMSG_NXTHDR(mhdr, cmsg) ((cmsg)->cmsg_len < sizeof (struct cmsghdr) ? (struct cmsghdr *)0 : \
-        (__CMSG_NEXT(cmsg) + sizeof (struct cmsghdr) >= __MHDR_END(mhdr) ? (struct cmsghdr *)0 : \
-        ((struct cmsghdr *)__CMSG_NEXT(cmsg))))
-#define CMSG_FIRSTHDR(mhdr) ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0)
-
-/* Are these valid? */
-#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))
-#define CMSG_SPACE(len) (CMSG_ALIGN (len) + CMSG_ALIGN (sizeof (struct cmsghdr)))
-#define CMSG_LEN(len)   (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len))
-
-#define SCM_RIGHTS      0x01
-#define SCM_CREDENTIALS 0x02
diff --git a/include/bits/stat.h b/include/bits/stat.h
deleted file mode 100644 (file)
index bb9314a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/* copied from kernel definition, but with padding replaced
- * by the corresponding correctly-sized userspace types. */
-
-struct stat
-{
-       dev_t st_dev;
-       int __st_dev_padding;
-       long __st_ino_truncated;
-       mode_t st_mode;
-       nlink_t st_nlink;
-       uid_t st_uid;
-       gid_t st_gid;
-       dev_t st_rdev;
-       int __st_rdev_padding;
-       off_t st_size;
-       blksize_t st_blksize;
-       blkcnt_t st_blocks;
-       struct timespec st_atim;
-       struct timespec st_mtim;
-       struct timespec st_ctim;
-       ino_t st_ino;
-};
diff --git a/include/bits/statfs.h b/include/bits/statfs.h
deleted file mode 100644 (file)
index 9dda440..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-struct statvfs {
-       unsigned long f_type;
-       unsigned long f_bsize;
-       fsblkcnt_t f_blocks;
-       fsblkcnt_t f_bfree;
-       fsblkcnt_t f_bavail;
-       fsfilcnt_t f_files;
-       fsfilcnt_t f_ffree;
-       unsigned long f_fsid;
-       unsigned long __unused;
-       unsigned long f_namemax;
-       unsigned long f_frsize;
-       fsfilcnt_t f_favail;
-       unsigned long f_flag;
-       unsigned long __reserved[2];
-};
diff --git a/include/bits/stdint.h b/include/bits/stdint.h
deleted file mode 100644 (file)
index 8e21a8c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#define INT_FAST8_MIN   INT8_MIN
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-#define INT_FAST64_MIN  INT64_MIN
-
-#define INT_FAST8_MAX   INT8_MAX
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-#define INT_FAST64_MAX  INT64_MAX
-
-#define UINT_FAST8_MAX  UINT8_MAX
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-#define UINT_FAST64_MAX UINT64_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIG_ATOMIC_MIN  INT32_MIN
-#define SIG_ATOMIC_MAX  INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/include/bits/stdio.h b/include/bits/stdio.h
deleted file mode 100644 (file)
index b4611f3..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#define BUFSIZ 1024
-
-#define FILENAME_MAX 4095
-#define FOPEN_MAX 1000
-#define TMP_MAX 10000
-
-#define L_cuserid 20
-#define L_tmpnam 20
-
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-#define L_ctermid 20
-#endif
-
-#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-#define P_tmpdir "/tmp"
-#endif
diff --git a/include/bits/sysmacros.h b/include/bits/sysmacros.h
deleted file mode 100644 (file)
index da29022..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#define major(x) (((x) >> 8) & 0xff)
-#define minor(x) ((x) & 0xff)
-#define makedev(x,y) (((x)<<8)|((y)&0xff))
-
-//#define makedev(x,y) \
-//     ((x)*0x100000001ULL)&(0xfffffffffff0)
-//     ((y)*0x1001 & 0xffff0ff)
diff --git a/include/bits/tcp.h b/include/bits/tcp.h
deleted file mode 100644 (file)
index 923231b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#define TCP_NODELAY 1
diff --git a/include/bits/termios.h b/include/bits/termios.h
deleted file mode 100644 (file)
index 316baeb..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-struct termios
-{
-       tcflag_t c_iflag;
-       tcflag_t c_oflag;
-       tcflag_t c_cflag;
-       tcflag_t c_lflag;
-       cc_t c_line;
-       cc_t c_cc[NCCS];
-       speed_t __c_ispeed;
-       speed_t __c_ospeed;
-};
-
-#define VINTR     0
-#define VQUIT     1
-#define VERASE    2
-#define VKILL     3
-#define VEOF      4
-#define VTIME     5
-#define VMIN      6
-#define VSWTC     7
-#define VSTART    8
-#define VSTOP     9
-#define VSUSP    10
-#define VEOL     11
-#define VREPRINT 12
-#define VDISCARD 13
-#define VWERASE  14
-#define VLNEXT   15
-#define VEOL2    16
-
-#define IGNBRK  0000001
-#define BRKINT  0000002
-#define IGNPAR  0000004
-#define PARMRK  0000010
-#define INPCK   0000020
-#define ISTRIP  0000040
-#define INLCR   0000100
-#define IGNCR   0000200
-#define ICRNL   0000400
-#define IUCLC   0001000
-#define IXON    0002000
-#define IXANY   0004000
-#define IXOFF   0010000
-#define IMAXBEL 0020000
-
-#define OPOST  0000001
-#define OLCUC  0000002
-#define ONLCR  0000004
-#define OCRNL  0000010
-#define ONOCR  0000020
-#define ONLRET 0000040
-#define OFILL  0000100
-#define OFDEL  0000200
-#define NLDLY  0000400
-#define NL0    0000000
-#define NL1    0000400
-#define CRDLY  0003000
-#define CR0    0000000
-#define CR1    0001000
-#define CR2    0002000
-#define CR3    0003000
-#define TABDLY 0014000
-#define TAB0   0000000
-#define TAB1   0004000
-#define TAB2   0010000
-#define TAB3   0014000
-#define BSDLY  0020000
-#define BS0    0000000
-#define BS1    0020000
-#define FFDLY  0100000
-#define FF0    0000000
-#define FF1    0100000
-
-#define VTDLY  0040000
-#define VT0    0000000
-#define VT1    0040000
-
-/* ?? */
-#define XTABS  0014000
-
-#define B0       0000000
-#define B50      0000001
-#define B75      0000002
-#define B110     0000003
-#define B134     0000004
-#define B150     0000005
-#define B200     0000006
-#define B300     0000007
-#define B600     0000010
-#define B1200    0000011
-#define B1800    0000012
-#define B2400    0000013
-#define B4800    0000014
-#define B9600    0000015
-#define B19200   0000016
-#define B38400   0000017
-
-#define B57600   0010001
-#define B115200  0010002
-#define B230400  0010003
-#define B460800  0010004
-#define B500000  0010005
-#define B576000  0010006
-#define B921600  0010007
-#define B1000000 0010010
-#define B1152000 0010011
-#define B1500000 0010012
-#define B2000000 0010013
-#define B2500000 0010014
-#define B3000000 0010015
-#define B3500000 0010016
-#define B4000000 0010017
-
-#define CBAUD    0010017
-
-#define CSIZE  0000060
-#define CS5    0000000
-#define CS6    0000020
-#define CS7    0000040
-#define CS8    0000060
-#define CSTOPB 0000100
-#define CREAD  0000200
-#define PARENB 0000400
-#define PARODD 0001000
-#define HUPCL  0002000
-#define CLOCAL 0004000
-
-#define CRTSCTS  020000000000
-
-#define ISIG   0000001
-#define ICANON 0000002
-#define ECHO   0000010
-#define ECHOE  0000020
-#define ECHOK  0000040
-#define ECHONL 0000100
-#define NOFLSH 0000200
-#define TOSTOP 0000400
-#define IEXTEN 0100000
-
-/* Extensions? */
-#define ECHOCTL 0001000
-#define ECHOPRT 0002000
-#define ECHOKE 0004000
-#define FLUSHO 0010000
-#define PENDIN 0040000
-
-#define TCOOFF 0
-#define TCOON  1
-#define TCIOFF 2
-#define TCION  3
-
-#define TCIFLUSH  0
-#define TCOFLUSH  1
-#define TCIOFLUSH 2
-
-#define TCSANOW   0
-#define TCSADRAIN 1
-#define TCSAFLUSH 2
diff --git a/include/bits/user.h b/include/bits/user.h
deleted file mode 100644 (file)
index 13ff027..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 32
-
-struct user_fpregs_struct
-{
-       long int cwd;
-       long int swd;
-       long int twd;
-       long int fip;
-       long int fcs;
-       long int foo;
-       long int fos;
-       long int st_space[20];
-};
-
-struct user_fpxregs_struct
-{
-       unsigned short int cwd;
-       unsigned short int swd;
-       unsigned short int twd;
-       unsigned short int fop;
-       long int fip;
-       long int fcs;
-       long int foo;
-       long int fos;
-       long int mxcsr;
-       long int reserved;
-       long int st_space[32];
-       long int xmm_space[32];
-       long int padding[56];
-};
-
-struct user_regs_struct
-{
-       long int ebx;
-       long int ecx;
-       long int edx;
-       long int esi;
-       long int edi;
-       long int ebp;
-       long int eax;
-       long int xds;
-       long int xes;
-       long int xfs;
-       long int xgs;
-       long int orig_eax;
-       long int eip;
-       long int xcs;
-       long int eflags;
-       long int esp;
-       long int xss;
-};
-
-struct user
-{
-       struct user_regs_struct         regs;
-       int                             u_fpvalid;
-       struct user_fpregs_struct       i387;
-       unsigned long int               u_tsize;
-       unsigned long int               u_dsize;
-       unsigned long int               u_ssize;
-       unsigned long                   start_code;
-       unsigned long                   start_stack;
-       long int                        signal;
-       int                             reserved;
-       struct user_regs_struct         *u_ar0;
-       struct user_fpregs_struct       *u_fpstate;
-       unsigned long int               magic;
-       char                            u_comm[32];
-       int                             u_debugreg[8];
-};
-
-#define PAGE_MASK              (~(PAGE_SIZE-1))
-#define NBPG                   PAGE_SIZE
-#define UPAGES                 1
-#define HOST_TEXT_START_ADDR   (u.start_code)
-#define HOST_STACK_END_ADDR    (u.start_stack + u.u_ssize * NBPG)
diff --git a/include/bits/wait.h b/include/bits/wait.h
deleted file mode 100644 (file)
index ae3f101..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#define WNOHANG    1
-#define WUNTRACED  2
-
-#define WSTOPPED   2
-#define WEXITED    4
-#define WCONTINUED 8
-#define WNOWAIT    0x1000000
-
-#if defined(__XOPEN_SOURCE) || defined(__GNU_SOURCE)
-#define P_ALL  0
-#define P_PID  1
-#define P_PGID 2
-#endif
diff --git a/include/bits/wexitstatus.h b/include/bits/wexitstatus.h
deleted file mode 100644 (file)
index 34a8023..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#ifndef WEXITSTATUS
-#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)
-#define WTERMSIG(s) ((s) & 0x7f)
-#define WSTOPSIG(s) WEXITSTATUS(s)
-#define WCOREDUMP(s) ((s) & 0x80)
-#define WIFEXITED(s) (!WTERMSIG(s))
-#define WIFSTOPPED(s) (((s) & 0xff) == 0x7f)
-#define WIFSIGNALED(s) (!WIFSTOPPED(s) && !WIFEXITED(s))
-#endif