All these headers were initially copied from an earlier version of musl
as-is and have not been changed since on OSv side. Though
they have changed on musl side between that early version
and the one corresponding to musl/ folder (0.9.12). Because
those changes are minimal and do not affect compilation of OSv
we replaces those headers with their symlinked copies
in musl/ folder.

Please note that one header signal.h has changed in a way
that may require updating include/api/$ARCH/bits/alltypes.h.sh file -
more specifically the siginfo_t is struct defined musl signal.h
whereas OSv defines "TYPEDEF struct __siginfo siginfo_t;" in alltypes.h.sh.
Strangely the change does not cause any conflict but possibly that
typedef will need to be removed from alltypes.h.sh.

The side-to-side diff of the affected headers:
```
-----------------------------------------
DIFF: [dlfcn.h]
                                                              > #define 
RTLD_DI_LINKMAP 2
                                                              >
                                                              > int dlinfo(void 
*, int, void *);
-----------------------------------------
DIFF: [float.h]
                                                              > #define 
FLT_TRUE_MIN 1.40129846e-45F
                                                              > #define 
DBL_TRUE_MIN 4.9406564584124654e-324
-----------------------------------------
DIFF: [langinfo.h]
#define __NEED_nl_item                                        | #include 
<nl_types.h>
                                                              >
-----------------------------------------
DIFF: [netdb.h]
                                                              > #include 
<netinet/in.h>
#endif                                                        <
                                                              <
#define __NEED_socklen_t                                      <
#define __NEED_uint32_t                                       <
                                                              <
                                                              > #endif
-----------------------------------------
DIFF: [netinet/if_ether.h]
                                                              > #define 
ETH_P_BATMAN    0x4305
                                                              >
                                                              > #define 
ETH_P_802_3_MIN 0x0600
-----------------------------------------
DIFF: [netinet/tcp.h]
#define TCP_COOKIE_TRANSACTIONS 15                            <
-----------------------------------------
DIFF: [nl_types.h]
#define __NEED_nl_item                                        | typedef int 
nl_item;
#include <bits/alltypes.h>                                    | typedef void 
*nl_catd;
                                                              <
typedef long nl_catd;                                         <
-----------------------------------------
DIFF: [signal.h]
#define __siginfo siginfo                                     <
#define __NEED_siginfo_t                                      <
                                                              > #define 
BUS_MCEERR_AR 4
                                                              > #define 
BUS_MCEERR_AO 5
struct sigaction {                                            | typedef struct 
sigaltstack {
        union {                                               <
                void (*sa_handler)(int);                      <
                void (*sa_sigaction)(int, siginfo_t *, void * <
        } __sa_handler;                                       <
        sigset_t sa_mask;                                     <
        int sa_flags;                                         <
        void (*sa_restorer)(void);                            <
};                                                            <
#define sa_handler   __sa_handler.sa_handler                  <
#define sa_sigaction __sa_handler.sa_sigaction                <
                                                              <
typedef struct {                                              <
struct __siginfo {                                            | typedef struct {
                                                              >                 
        short si_addr_lsb;
                                                              >                 
struct {
                                                              >                 
        void *si_call_addr;
                                                              >                 
        int si_syscall;
                                                              >                 
        unsigned si_arch;
                                                              >                 
} __sigsys;
};                                                            | } siginfo_t;
                                                              > #define 
si_addr_lsb __si_fields.__sigfault.si_addr_lsb
                                                              > #define 
si_call_addr __si_fields.__sigsys.si_call_addr
                                                              > #define 
si_syscall __si_fields.__sigsys.si_syscall
                                                              > #define si_arch 
   __si_fields.__sigsys.si_arch
                                                              >
                                                              > struct 
sigaction {
                                                              >         union {
                                                              >                 
void (*sa_handler)(int);
                                                              >                 
void (*sa_sigaction)(int, siginfo_t *, void *
                                                              >         } 
__sa_handler;
                                                              >         
sigset_t sa_mask;
                                                              >         int 
sa_flags;
                                                              >         void 
(*sa_restorer)(void);
                                                              > };
                                                              > #define 
sa_handler   __sa_handler.sa_handler
                                                              > #define 
sa_sigaction __sa_handler.sa_sigaction
-----------------------------------------
DIFF: [sys/ptrace.h]
                                                              > #include 
<stdint.h>
                                                              >
                                                              > #define 
PTRACE_PEEKSIGINFO 0x4209
                                                              >
                                                              > #define 
PTRACE_PEEKSIGINFO_SHARED 1
                                                              >
                                                              > struct 
ptrace_peeksiginfo_args {
                                                              >         
uint64_t off;
                                                              >         
uint32_t flags;
                                                              >         int32_t 
nr;
                                                              > };
-----------------------------------------
DIFF: [sys/select.h]
                                                              > #if 
defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
                                                              > #define NFDBITS 
(8*(int)sizeof(long))
                                                              > #endif
-----------------------------------------
DIFF: [sys/wait.h]
#define __NEED_siginfo_t                                      <
typedef int idtype_t;                                         | typedef enum {
                                                              >         P_ALL = 
0,
                                                              >         P_PID = 
1,
                                                              >         P_PGID 
= 2
                                                              > } idtype_t;
                                                              <
#define P_ALL  0                                              <
#define P_PID  1                                              <
#define P_PGID 2                                              <
-----------------------------------------
DIFF: [utmp.h]
                                                              > #define ut_addr 
ut_addr_v6[0]
#define _PATH_UTMP "/dev/null"                                | #define 
_PATH_UTMP "/dev/null/utmp"
#define _PATH_WTMP "/dev/null"                                | #define 
_PATH_WTMP "/dev/null/wtmp"
                                                              >
                                                              > #define 
UTMP_FILE _PATH_UTMP
                                                              > #define 
WTMP_FILE _PATH_WTMP
                                                              > #define 
UTMP_FILENAME _PATH_UTMP
                                                              > #define 
WTMP_FILENAME _PATH_WTMP
-----------------------------------------
DIFF: [wctype.h]
#define __NEED_wctrans_t                                      <
                                                              > typedef const 
int * wctrans_t;
                                                              >
#define WEOF (-1)                                             | #define WEOF 
0xffffffffU
```

Signed-off-by: Waldemar Kozaczuk <[email protected]>
---
 core/select.cc                 |   2 -
 include/api/dlfcn.h            |  40 +-----
 include/api/float.h            |  33 +----
 include/api/langinfo.h         |  88 +-----------
 include/api/netdb.h            | 165 +---------------------
 include/api/netinet/if_ether.h | 124 +----------------
 include/api/netinet/tcp.h      |  38 +----
 include/api/nl_types.h         |  25 +---
 include/api/signal.h           | 246 +--------------------------------
 include/api/sys/ptrace.h       |  86 +-----------
 include/api/sys/select.h       |  40 +-----
 include/api/sys/wait.h         |  57 +-------
 include/api/utmp.h             |  42 +-----
 include/api/wctype.h           |  77 +----------
 14 files changed, 13 insertions(+), 1050 deletions(-)
 mode change 100644 => 120000 include/api/dlfcn.h
 mode change 100644 => 120000 include/api/float.h
 mode change 100644 => 120000 include/api/langinfo.h
 mode change 100644 => 120000 include/api/netdb.h
 mode change 100644 => 120000 include/api/netinet/if_ether.h
 mode change 100644 => 120000 include/api/netinet/tcp.h
 mode change 100644 => 120000 include/api/nl_types.h
 mode change 100644 => 120000 include/api/signal.h
 mode change 100644 => 120000 include/api/sys/ptrace.h
 mode change 100644 => 120000 include/api/sys/select.h
 mode change 100644 => 120000 include/api/sys/wait.h
 mode change 100644 => 120000 include/api/utmp.h
 mode change 100644 => 120000 include/api/wctype.h

diff --git a/core/select.cc b/core/select.cc
index b6e814a1..b40904e2 100644
--- a/core/select.cc
+++ b/core/select.cc
@@ -203,8 +203,6 @@ int pselect(int nfds, fd_set *readfds, fd_set *writefds,
     return ret;
 }
 
-#define NFDBITS (8 * sizeof(fd_mask))
-
 extern "C" unsigned long int
 __fdelt_chk (unsigned long int d)
 {
diff --git a/include/api/dlfcn.h b/include/api/dlfcn.h
deleted file mode 100644
index e2f57b53..00000000
--- a/include/api/dlfcn.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef        _DLFCN_H
-#define        _DLFCN_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#define RTLD_LAZY   1
-#define RTLD_NOW    2
-#define RTLD_NOLOAD 4
-#define RTLD_NODELETE 4096
-#define RTLD_GLOBAL 256
-#define RTLD_LOCAL  0
-
-#define RTLD_NEXT    ((void *)-1)
-#define RTLD_DEFAULT ((void *)0)
-
-int    dlclose(void *);
-char  *dlerror(void);
-void  *dlopen(const char *, int);
-void  *dlsym(void *__restrict, const char *__restrict);
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-typedef struct {
-       const char *dli_fname;
-       void *dli_fbase;
-       const char *dli_sname;
-       void *dli_saddr;
-} Dl_info;
-int dladdr(void *, Dl_info *);
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/dlfcn.h b/include/api/dlfcn.h
new file mode 120000
index 00000000..4756c857
--- /dev/null
+++ b/include/api/dlfcn.h
@@ -0,0 +1 @@
+../../musl/include/dlfcn.h
\ No newline at end of file
diff --git a/include/api/float.h b/include/api/float.h
deleted file mode 100644
index ea25f270..00000000
--- a/include/api/float.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#ifndef _FLOAT_H
-#define _FLOAT_H
-
-#define FLT_RADIX 2
-
-#define FLT_MIN 1.17549435e-38F
-#define FLT_MAX 3.40282347e+38F
-#define FLT_EPSILON 1.19209290e-07F
-
-#define FLT_MANT_DIG 24
-#define FLT_MIN_EXP (-125)
-#define FLT_MAX_EXP 128
-
-#define FLT_DIG 6
-#define FLT_MIN_10_EXP (-37)
-#define FLT_MAX_10_EXP 38
-
-#define DBL_MIN 2.2250738585072014e-308
-#define DBL_MAX 1.7976931348623157e+308
-#define DBL_EPSILON 2.2204460492503131e-16
-
-#define DBL_MANT_DIG 53
-#define DBL_MIN_EXP (-1021)
-#define DBL_MAX_EXP 1024
-
-#define DBL_DIG 15
-#define DBL_MIN_10_EXP (-307)
-#define DBL_MAX_10_EXP 308
-
-#include <bits/float.h>
-
-#endif
diff --git a/include/api/float.h b/include/api/float.h
new file mode 120000
index 00000000..39499ac0
--- /dev/null
+++ b/include/api/float.h
@@ -0,0 +1 @@
+../../musl/include/float.h
\ No newline at end of file
diff --git a/include/api/langinfo.h b/include/api/langinfo.h
deleted file mode 100644
index b9c55695..00000000
--- a/include/api/langinfo.h
+++ /dev/null
@@ -1,87 +0,0 @@
-#ifndef _LANGINFO_H
-#define _LANGINFO_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define __NEED_nl_item
-#define __NEED_locale_t
-
-#include <bits/alltypes.h>
-
-#define ABDAY_1 0x20000
-#define ABDAY_2 0x20001
-#define ABDAY_3 0x20002
-#define ABDAY_4 0x20003
-#define ABDAY_5 0x20004
-#define ABDAY_6 0x20005
-#define ABDAY_7 0x20006
-
-#define DAY_1 0x20007
-#define DAY_2 0x20008
-#define DAY_3 0x20009
-#define DAY_4 0x2000A
-#define DAY_5 0x2000B
-#define DAY_6 0x2000C
-#define DAY_7 0x2000D
-
-#define ABMON_1 0x2000E
-#define ABMON_2 0x2000F
-#define ABMON_3 0x20010
-#define ABMON_4 0x20011
-#define ABMON_5 0x20012
-#define ABMON_6 0x20013
-#define ABMON_7 0x20014
-#define ABMON_8 0x20015
-#define ABMON_9 0x20016
-#define ABMON_10 0x20017
-#define ABMON_11 0x20018
-#define ABMON_12 0x20019
-
-#define MON_1 0x2001A
-#define MON_2 0x2001B
-#define MON_3 0x2001C
-#define MON_4 0x2001D
-#define MON_5 0x2001E
-#define MON_6 0x2001F
-#define MON_7 0x20020
-#define MON_8 0x20021
-#define MON_9 0x20022
-#define MON_10 0x20023
-#define MON_11 0x20024
-#define MON_12 0x20025
-
-#define AM_STR 0x20026
-#define PM_STR 0x20027
-
-#define D_T_FMT 0x20028
-#define D_FMT 0x20029
-#define T_FMT 0x2002A
-#define T_FMT_AMPM 0x2002B
-
-#define ERA 0x2002C
-#define ERA_D_FMT 0x2002E
-#define ALT_DIGITS 0x2002F
-#define ERA_D_T_FMT 0x20030
-#define ERA_T_FMT 0x20031
-
-#define CODESET 14
-
-#define CRNCYSTR 0x4000F
-
-#define RADIXCHAR 0x10000
-#define THOUSEP 0x10001
-#define YESEXPR 0x50000
-#define NOEXPR 0x50001
-#define YESSTR 0x50002
-#define NOSTR 0x50003
-
-char *nl_langinfo(nl_item);
-char *nl_langinfo_l(nl_item, locale_t);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/langinfo.h b/include/api/langinfo.h
new file mode 120000
index 00000000..acd16fbb
--- /dev/null
+++ b/include/api/langinfo.h
@@ -0,0 +1 @@
+../../musl/include/langinfo.h
\ No newline at end of file
diff --git a/include/api/netdb.h b/include/api/netdb.h
deleted file mode 100644
index 3cda7114..00000000
--- a/include/api/netdb.h
+++ /dev/null
@@ -1,164 +0,0 @@
-#ifndef        _NETDB_H
-#define        _NETDB_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define __NEED_size_t
-#endif
-
-#define __NEED_socklen_t
-#define __NEED_uint32_t
-
-#include <bits/alltypes.h>
-
-struct addrinfo
-{
-       int ai_flags;
-       int ai_family;
-       int ai_socktype;
-       int ai_protocol;
-       socklen_t ai_addrlen;
-       struct sockaddr *ai_addr;
-       char *ai_canonname;
-       struct addrinfo *ai_next;
-};
-
-#define IPPORT_RESERVED 1024
-
-#define AI_PASSIVE      0x01
-#define AI_CANONNAME    0x02
-#define AI_NUMERICHOST  0x04
-#define AI_V4MAPPED     0x08
-#define AI_ALL          0x10
-#define AI_ADDRCONFIG   0x20
-#define AI_NUMERICSERV  0x400
-
-
-#define NI_NUMERICHOST  0x01
-#define NI_NUMERICSERV  0x02
-#define NI_NOFQDN       0x04
-#define NI_NAMEREQD     0x08
-#define NI_DGRAM        0x10
-/*#define NI_NUMERICSCOPE */
-
-#define EAI_BADFLAGS   -1
-#define EAI_NONAME     -2
-#define EAI_AGAIN      -3
-#define EAI_FAIL       -4
-#define EAI_FAMILY     -6
-#define EAI_SOCKTYPE   -7
-#define EAI_SERVICE    -8
-#define EAI_MEMORY     -10
-#define EAI_SYSTEM     -11
-#define EAI_OVERFLOW   -12
-
-int getaddrinfo (const char *__restrict, const char *__restrict, const struct 
addrinfo *__restrict, struct addrinfo **__restrict);
-void freeaddrinfo (struct addrinfo *);
-int getnameinfo (const struct sockaddr *__restrict, socklen_t, char 
*__restrict, socklen_t, char *__restrict, socklen_t, int);
-const char *gai_strerror(int);
-
-
-/* Legacy functions follow (marked OBsolete in SUS) */
-
-struct netent
-{
-       char *n_name;
-       char **n_aliases;
-       int n_addrtype;
-       uint32_t n_net;
-};
-
-struct hostent
-{
-       char *h_name;
-       char **h_aliases;
-       int h_addrtype;
-       int h_length;
-       char **h_addr_list;
-};
-#define h_addr h_addr_list[0]
-
-struct servent
-{
-       char *s_name;
-       char **s_aliases;
-       int s_port;
-       char *s_proto;
-};
-
-struct protoent
-{
-       char *p_name;
-       char **p_aliases;
-       int p_proto;
-};
-
-void sethostent (int);
-void endhostent (void);
-struct hostent *gethostent (void);
-
-void setnetent (int);
-void endnetent (void);
-struct netent *getnetent (void);
-struct netent *getnetbyaddr (uint32_t, int);
-struct netent *getnetbyname (const char *);
-
-void setservent (int);
-void endservent (void);
-struct servent *getservent (void);
-struct servent *getservbyname (const char *, const char *);
-struct servent *getservbyport (int, const char *);
-
-void setprotoent (int);
-void endprotoent (void);
-struct protoent *getprotoent (void);
-struct protoent *getprotobyname (const char *);
-struct protoent *getprotobynumber (int);
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \
- || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \
- || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)
-struct hostent *gethostbyname (const char *);
-struct hostent *gethostbyaddr (const void *, socklen_t, int);
-#ifdef __GNUC__
-__attribute__((const))
-#endif
-int *__h_errno_location(void);
-#define h_errno (*__h_errno_location())
-#define HOST_NOT_FOUND 1
-#define TRY_AGAIN      2
-#define NO_RECOVERY    3
-#define NO_DATA        4
-#endif
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-const char *hstrerror(int);
-int gethostbyname_r(const char *, struct hostent *, char *, size_t, struct 
hostent **, int *);
-int gethostbyname2_r(const char *, int, struct hostent *, char *, size_t, 
struct hostent **, int *);
-struct hostent *gethostbyname2(const char *, int);
-int gethostbyaddr_r(const void *, socklen_t, int, struct hostent *, char *, 
size_t, struct hostent **, int *);
-int getservbyport_r(int, const char *, struct servent *, char *, size_t, 
struct servent **);
-int getservbyname_r(const char *, const char *, struct servent *, char *, 
size_t, struct servent **);
-#define EAI_NODATA     -5
-#define EAI_ADDRFAMILY -9
-#define EAI_INPROGRESS -100
-#define EAI_CANCELED   -101
-#define EAI_NOTCANCELED -102
-#define EAI_ALLDONE    -103
-#define EAI_INTR       -104
-#define EAI_IDN_ENCODE -105
-#define NI_MAXHOST 255
-#define NI_MAXSERV 32
-#endif
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/netdb.h b/include/api/netdb.h
new file mode 120000
index 00000000..72baac55
--- /dev/null
+++ b/include/api/netdb.h
@@ -0,0 +1 @@
+../../musl/include/netdb.h
\ No newline at end of file
diff --git a/include/api/netinet/if_ether.h b/include/api/netinet/if_ether.h
deleted file mode 100644
index 27d53876..00000000
--- a/include/api/netinet/if_ether.h
+++ /dev/null
@@ -1,123 +0,0 @@
-#ifndef _NETINET_IF_ETHER_H
-#define _NETINET_IF_ETHER_H
-
-#include <stdint.h>
-#include <sys/types.h>
-
-#define ETH_ALEN       6
-#define ETH_HLEN       14
-#define ETH_ZLEN       60
-#define ETH_DATA_LEN   1500
-#define ETH_FRAME_LEN  1514
-#define ETH_FCS_LEN    4
-
-#define ETH_P_LOOP     0x0060
-#define ETH_P_PUP      0x0200
-#define ETH_P_PUPAT    0x0201
-#define ETH_P_IP       0x0800
-#define ETH_P_X25      0x0805
-#define ETH_P_ARP      0x0806
-#define        ETH_P_BPQ       0x08FF
-#define ETH_P_IEEEPUP  0x0a00
-#define ETH_P_IEEEPUPAT        0x0a01
-#define ETH_P_DEC       0x6000
-#define ETH_P_DNA_DL    0x6001
-#define ETH_P_DNA_RC    0x6002
-#define ETH_P_DNA_RT    0x6003
-#define ETH_P_LAT       0x6004
-#define ETH_P_DIAG      0x6005
-#define ETH_P_CUST      0x6006
-#define ETH_P_SCA       0x6007
-#define ETH_P_TEB      0x6558
-#define ETH_P_RARP      0x8035
-#define ETH_P_ATALK    0x809B
-#define ETH_P_AARP     0x80F3
-#define ETH_P_8021Q    0x8100
-#define ETH_P_IPX      0x8137
-#define ETH_P_IPV6     0x86DD
-#define ETH_P_PAUSE    0x8808
-#define ETH_P_SLOW     0x8809
-#define ETH_P_WCCP     0x883E
-#define ETH_P_PPP_DISC 0x8863
-#define ETH_P_PPP_SES  0x8864
-#define ETH_P_MPLS_UC  0x8847
-#define ETH_P_MPLS_MC  0x8848
-#define ETH_P_ATMMPOA  0x884c
-#define ETH_P_LINK_CTL 0x886c
-#define ETH_P_ATMFATE  0x8884
-#define ETH_P_PAE      0x888E
-#define ETH_P_AOE      0x88A2
-#define ETH_P_8021AD   0x88A8
-#define ETH_P_802_EX1  0x88B5
-#define ETH_P_TIPC     0x88CA
-#define ETH_P_8021AH   0x88E7
-#define ETH_P_MVRP     0x88F5
-#define ETH_P_1588     0x88F7
-#define ETH_P_FCOE     0x8906
-#define ETH_P_TDLS     0x890D
-#define ETH_P_FIP      0x8914
-#define ETH_P_QINQ1    0x9100
-#define ETH_P_QINQ2    0x9200
-#define ETH_P_QINQ3    0x9300
-#define ETH_P_EDSA     0xDADA
-#define ETH_P_AF_IUCV  0xFBFB
-
-#define ETH_P_802_3    0x0001
-#define ETH_P_AX25     0x0002
-#define ETH_P_ALL      0x0003
-#define ETH_P_802_2    0x0004
-#define ETH_P_SNAP     0x0005
-#define ETH_P_DDCMP     0x0006
-#define ETH_P_WAN_PPP   0x0007
-#define ETH_P_PPP_MP    0x0008
-#define ETH_P_LOCALTALK 0x0009
-#define ETH_P_CAN      0x000C
-#define ETH_P_CANFD    0x000D
-#define ETH_P_PPPTALK  0x0010
-#define ETH_P_TR_802_2 0x0011
-#define ETH_P_MOBITEX  0x0015
-#define ETH_P_CONTROL  0x0016
-#define ETH_P_IRDA     0x0017
-#define ETH_P_ECONET   0x0018
-#define ETH_P_HDLC     0x0019
-#define ETH_P_ARCNET   0x001A
-#define ETH_P_DSA      0x001B
-#define ETH_P_TRAILER  0x001C
-#define ETH_P_PHONET   0x00F5
-#define ETH_P_IEEE802154 0x00F6
-#define ETH_P_CAIF     0x00F7
-
-struct ethhdr {
-       uint8_t h_dest[ETH_ALEN];
-       uint8_t h_source[ETH_ALEN];
-       uint16_t h_proto;
-};
-
-#include <net/ethernet.h>
-#include <net/if_arp.h>
-
-struct ether_arp {
-       struct  arphdr ea_hdr;
-       uint8_t arp_sha[ETH_ALEN];
-       uint8_t arp_spa[4];
-       uint8_t arp_tha[ETH_ALEN];
-       uint8_t arp_tpa[4];
-};
-#define        arp_hrd ea_hdr.ar_hrd
-#define        arp_pro ea_hdr.ar_pro
-#define        arp_hln ea_hdr.ar_hln
-#define        arp_pln ea_hdr.ar_pln
-#define        arp_op  ea_hdr.ar_op
-
-#define ETHER_MAP_IP_MULTICAST(ipaddr, enaddr) \
-do { \
-       (enaddr)[0] = 0x01; \
-       (enaddr)[1] = 0x00; \
-       (enaddr)[2] = 0x5e; \
-       (enaddr)[3] = ((uint8_t *)ipaddr)[1] & 0x7f; \
-       (enaddr)[4] = ((uint8_t *)ipaddr)[2]; \
-       (enaddr)[5] = ((uint8_t *)ipaddr)[3]; \
-} while(0)
-
-
-#endif
diff --git a/include/api/netinet/if_ether.h b/include/api/netinet/if_ether.h
new file mode 120000
index 00000000..79099c6a
--- /dev/null
+++ b/include/api/netinet/if_ether.h
@@ -0,0 +1 @@
+../../../musl/include/netinet/if_ether.h
\ No newline at end of file
diff --git a/include/api/netinet/tcp.h b/include/api/netinet/tcp.h
deleted file mode 100644
index f2f88b58..00000000
--- a/include/api/netinet/tcp.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef _NETINET_TCP_H
-#define _NETINET_TCP_H
-
-#include <features.h>
-
-#define TCP_NODELAY 1
-#define TCP_MAXSEG      2
-#define TCP_CORK        3
-#define TCP_KEEPIDLE    4
-#define TCP_KEEPINTVL   5
-#define TCP_KEEPCNT     6
-#define TCP_SYNCNT      7
-#define TCP_LINGER2     8
-#define TCP_DEFER_ACCEPT 9
-#define TCP_WINDOW_CLAMP 10
-#define TCP_INFO        11
-#define        TCP_QUICKACK     12
-#define TCP_CONGESTION  13
-#define TCP_MD5SIG      14
-#define TCP_COOKIE_TRANSACTIONS 15
-#define TCP_THIN_LINEAR_TIMEOUTS 16
-#define TCP_THIN_DUPACK  17
-#define TCP_USER_TIMEOUT 18
-#define TCP_REPAIR       19
-#define TCP_REPAIR_QUEUE 20
-#define TCP_QUEUE_SEQ    21
-#define TCP_REPAIR_OPTIONS 22
-#define TCP_FASTOPEN     23
-#define TCP_TIMESTAMP    24
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define SOL_TCP 6
-#include <sys/types.h>
-#include <sys/socket.h>
-#endif
-
-#endif
diff --git a/include/api/netinet/tcp.h b/include/api/netinet/tcp.h
new file mode 120000
index 00000000..6547839d
--- /dev/null
+++ b/include/api/netinet/tcp.h
@@ -0,0 +1 @@
+../../../musl/include/netinet/tcp.h
\ No newline at end of file
diff --git a/include/api/nl_types.h b/include/api/nl_types.h
deleted file mode 100644
index ca61efb6..00000000
--- a/include/api/nl_types.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#ifndef _NL_TYPES_H
-#define _NL_TYPES_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define NL_SETD 1
-#define NL_CAT_LOCALE 1
-
-#define __NEED_nl_item
-#include <bits/alltypes.h>
-
-typedef long nl_catd;
-
-nl_catd catopen (const char *, int);
-char *catgets (nl_catd, int, int, const char *);
-int catclose (nl_catd);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/nl_types.h b/include/api/nl_types.h
new file mode 120000
index 00000000..73a0154b
--- /dev/null
+++ b/include/api/nl_types.h
@@ -0,0 +1 @@
+../../musl/include/nl_types.h
\ No newline at end of file
diff --git a/include/api/signal.h b/include/api/signal.h
deleted file mode 100644
index 39190c0f..00000000
--- a/include/api/signal.h
+++ /dev/null
@@ -1,245 +0,0 @@
-#ifndef _SIGNAL_H
-#define _SIGNAL_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
- || defined(_BSD_SOURCE)
-
-#ifdef _GNU_SOURCE
-#define __siginfo siginfo
-#define __ucontext ucontext
-#endif
-
-#define __NEED_size_t
-#define __NEED_pid_t
-#define __NEED_uid_t
-#define __NEED_struct_timespec
-#define __NEED_pthread_t
-#define __NEED_pthread_attr_t
-#define __NEED_time_t
-#define __NEED_clock_t
-#define __NEED_sigset_t
-#define __NEED_siginfo_t
-
-#include <bits/alltypes.h>
-
-#define SIG_HOLD ((void (*)(int)) 2)
-
-#define SIG_BLOCK     0
-#define SIG_UNBLOCK   1
-#define SIG_SETMASK   2
-
-#define SI_ASYNCNL (-60)
-#define SI_TKILL (-6)
-#define SI_SIGIO (-5)
-#define SI_ASYNCIO (-4)
-#define SI_MESGQ (-3)
-#define SI_TIMER (-2)
-#define SI_QUEUE (-1)
-#define SI_USER 0
-#define SI_KERNEL 128
-
-#define FPE_INTDIV 1
-#define FPE_INTOVF 2
-#define FPE_FLTDIV 3
-#define FPE_FLTOVF 4
-#define FPE_FLTUND 5
-#define FPE_FLTRES 6
-#define FPE_FLTINV 7
-#define FPE_FLTSUB 8
-
-#define ILL_ILLOPC 1
-#define ILL_ILLOPN 2
-#define ILL_ILLADR 3
-#define ILL_ILLTRP 4
-#define ILL_PRVOPC 5
-#define ILL_PRVREG 6
-#define ILL_COPROC 7
-#define ILL_BADSTK 8
-
-#define SEGV_MAPERR 1
-#define SEGV_ACCERR 2
-
-#define BUS_ADRALN 1
-#define BUS_ADRERR 2
-#define BUS_OBJERR 3
-
-#define CLD_EXITED 1
-#define CLD_KILLED 2
-#define CLD_DUMPED 3
-#define CLD_TRAPPED 4
-#define CLD_STOPPED 5
-#define CLD_CONTINUED 6
-
-struct sigaction {
-       union {
-               void (*sa_handler)(int);
-               void (*sa_sigaction)(int, siginfo_t *, void *);
-       } __sa_handler;
-       sigset_t sa_mask;
-       int sa_flags;
-       void (*sa_restorer)(void);
-};
-#define sa_handler   __sa_handler.sa_handler
-#define sa_sigaction __sa_handler.sa_sigaction
-
-typedef struct {
-       void *ss_sp;
-       int ss_flags;
-       size_t ss_size;
-} stack_t;
-
-union sigval {
-       int sival_int;
-       void *sival_ptr;
-};
-
-struct __siginfo {
-       int si_signo, si_errno, si_code;
-       union {
-               char __pad[128 - 2*sizeof(int) - sizeof(long)];
-               struct {
-                       pid_t si_pid;
-                       uid_t si_uid;
-                       union sigval si_sigval;
-               } __rt;
-               struct {
-                       unsigned int si_timer1, si_timer2;
-               } __timer;
-               struct {
-                       pid_t si_pid;
-                       uid_t si_uid;
-                       int si_status;
-                       clock_t si_utime, si_stime;
-               } __sigchld;
-               struct {
-                       void *si_addr;
-               } __sigfault;
-               struct {
-                       long 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 si_fd      __si_fields.__sigpoll.si_fd
-#define si_timer1  __si_fields.__timer.si_timer1
-#define si_timer2  __si_fields.__timer.si_timer2
-#define si_ptr     __si_fields.__rt.si_sigval.sival_ptr
-#define si_int     __si_fields.__rt.si_sigval.sival_int
-
-struct sigevent {
-       union sigval sigev_value;
-       int sigev_signo;
-       int sigev_notify;
-       void (*sigev_notify_function)(union sigval);
-       pthread_attr_t *sigev_notify_attributes;
-       char __pad[56-3*sizeof(long)];
-};
-
-#define SIGEV_SIGNAL 0
-#define SIGEV_NONE 1
-#define SIGEV_THREAD 2
-
-int __libc_current_sigrtmin(void);
-int __libc_current_sigrtmax(void);
-
-#define SIGRTMIN  (__libc_current_sigrtmin())
-#define SIGRTMAX  (__libc_current_sigrtmax())
-
-int kill(pid_t, int);
-
-int sigemptyset(sigset_t *);
-int sigfillset(sigset_t *);
-int sigaddset(sigset_t *, int);
-int sigdelset(sigset_t *, int);
-int sigismember(const sigset_t *, int);
-
-int sigprocmask(int, const sigset_t *__restrict, sigset_t *__restrict);
-int sigsuspend(const sigset_t *);
-int sigaction(int, const struct sigaction *__restrict, struct sigaction 
*__restrict);
-int sigpending(sigset_t *);
-int sigwait(const sigset_t *__restrict, int *__restrict);
-int sigwaitinfo(const sigset_t *__restrict, siginfo_t *__restrict);
-int sigtimedwait(const sigset_t *__restrict, siginfo_t *__restrict, const 
struct timespec *__restrict);
-int sigqueue(pid_t, int, const union sigval);
-
-int pthread_sigmask(int, const sigset_t *__restrict, sigset_t *__restrict);
-int pthread_kill(pthread_t, int);
-
-void psiginfo(const siginfo_t *, const char *);
-void psignal(int, const char *);
-
-#endif
-
-#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-int killpg(pid_t, int);
-int sigaltstack(const stack_t *__restrict, stack_t *__restrict);
-int sighold(int);
-int sigignore(int);
-int siginterrupt(int, int);
-int sigpause(int);
-int sigrelse(int);
-void (*sigset(int, void (*)(int)))(int);
-#define TRAP_BRKPT 1
-#define TRAP_TRACE 2
-#define POLL_IN 1
-#define POLL_OUT 2
-#define POLL_MSG 3
-#define POLL_ERR 4
-#define POLL_PRI 5
-#define POLL_HUP 6
-#define SS_ONSTACK    1
-#define SS_DISABLE    2
-#define MINSIGSTKSZ 2048
-#define SIGSTKSZ 8192
-#endif
-
-#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-#define NSIG _NSIG
-#endif
-
-#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)
-typedef void (*sig_t)(int);
-#endif
-
-#ifdef _GNU_SOURCE
-typedef void (*sighandler_t)(int);
-void (*bsd_signal(int, void (*)(int)))(int);
-int sigisemptyset(const sigset_t *);
-int sigorset (sigset_t *, sigset_t *, sigset_t *);
-int sigandset(sigset_t *, sigset_t *, sigset_t *);
-
-#define SA_NOMASK SA_NODEFER
-#define SA_ONESHOT SA_RESETHAND
-#endif
-
-#include <bits/signal.h>
-
-#define SIG_ERR  ((void (*)(int))-1)
-#define SIG_DFL  ((void (*)(int)) 0)
-#define SIG_IGN  ((void (*)(int)) 1)
-
-typedef int sig_atomic_t;
-
-void (*signal(int, void (*)(int)))(int);
-int raise(int);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/signal.h b/include/api/signal.h
new file mode 120000
index 00000000..ffc49fbd
--- /dev/null
+++ b/include/api/signal.h
@@ -0,0 +1 @@
+../../musl/include/signal.h
\ No newline at end of file
diff --git a/include/api/sys/ptrace.h b/include/api/sys/ptrace.h
deleted file mode 100644
index 21d4ca3a..00000000
--- a/include/api/sys/ptrace.h
+++ /dev/null
@@ -1,85 +0,0 @@
-#ifndef _SYS_PTRACE_H
-#define _SYS_PTRACE_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define PTRACE_TRACEME 0
-#define PT_TRACE_ME PTRACE_TRACEME
-
-#define PTRACE_PEEKTEXT 1
-#define PTRACE_PEEKDATA 2
-#define PTRACE_PEEKUSER 3
-#define PTRACE_POKETEXT 4
-#define PTRACE_POKEDATA 5
-#define PTRACE_POKEUSER 6
-#define PTRACE_CONT 7
-#define PTRACE_KILL 8
-#define PTRACE_SINGLESTEP 9
-#define PTRACE_GETREGS 12
-#define PTRACE_SETREGS 13
-#define PTRACE_GETFPREGS 14
-#define PTRACE_SETFPREGS 15
-#define PTRACE_ATTACH 16
-#define PTRACE_DETACH 17
-#define PTRACE_GETFPXREGS 18
-#define PTRACE_SETFPXREGS 19
-#define PTRACE_SYSCALL 24
-#define PTRACE_SETOPTIONS 0x4200
-#define PTRACE_GETEVENTMSG 0x4201
-#define PTRACE_GETSIGINFO 0x4202
-#define PTRACE_SETSIGINFO 0x4203
-#define PTRACE_GETREGSET 0x4204
-#define PTRACE_SETREGSET 0x4205
-#define PTRACE_SEIZE 0x4206
-#define PTRACE_INTERRUPT 0x4207
-#define PTRACE_LISTEN 0x4208
-
-#define PT_READ_I PTRACE_PEEKTEXT
-#define PT_READ_D PTRACE_PEEKDATA
-#define PT_READ_U PTRACE_PEEKUSER
-#define PT_WRITE_I PTRACE_POKETEXT
-#define PT_WRITE_D PTRACE_POKEDATA
-#define PT_WRITE_U PTRACE_POKEUSER
-#define PT_CONTINUE PTRACE_CONT
-#define PT_KILL PTRACE_KILL
-#define PT_STEP PTRACE_SINGLESTEP
-#define PT_GETREGS PTRACE_GETREGS
-#define PT_SETREGS PTRACE_SETREGS
-#define PT_GETFPREGS PTRACE_GETFPREGS
-#define PT_SETFPREGS PTRACE_SETFPREGS
-#define PT_ATTACH PTRACE_ATTACH
-#define PT_DETACH PTRACE_DETACH
-#define PT_GETFPXREGS PTRACE_GETFPXREGS
-#define PT_SETFPXREGS PTRACE_SETFPXREGS
-#define PT_SYSCALL PTRACE_SYSCALL
-#define PT_SETOPTIONS PTRACE_SETOPTIONS
-#define PT_GETEVENTMSG PTRACE_GETEVENTMSG
-#define PT_GETSIGINFO PTRACE_GETSIGINFO
-#define PT_SETSIGINFO PTRACE_SETSIGINFO
-
-#define PTRACE_O_TRACESYSGOOD   0x00000001
-#define PTRACE_O_TRACEFORK      0x00000002
-#define PTRACE_O_TRACEVFORK     0x00000004
-#define PTRACE_O_TRACECLONE     0x00000008
-#define PTRACE_O_TRACEEXEC      0x00000010
-#define PTRACE_O_TRACEVFORKDONE 0x00000020
-#define PTRACE_O_TRACEEXIT      0x00000040
-#define PTRACE_O_TRACESECCOMP   0x00000080
-#define PTRACE_O_EXITKILL       0x00100000
-#define PTRACE_O_MASK           0x001000ff
-
-#define PTRACE_EVENT_FORK 1
-#define PTRACE_EVENT_VFORK 2
-#define PTRACE_EVENT_CLONE 3
-#define PTRACE_EVENT_EXEC 4
-#define PTRACE_EVENT_VFORK_DONE 5
-#define PTRACE_EVENT_EXIT 6
-#define PTRACE_EVENT_SECCOMP 7
-
-long ptrace(int, ...);
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/include/api/sys/ptrace.h b/include/api/sys/ptrace.h
new file mode 120000
index 00000000..c095f0b1
--- /dev/null
+++ b/include/api/sys/ptrace.h
@@ -0,0 +1 @@
+../../../musl/include/sys/ptrace.h
\ No newline at end of file
diff --git a/include/api/sys/select.h b/include/api/sys/select.h
deleted file mode 100644
index c5a2877f..00000000
--- a/include/api/sys/select.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef _SYS_SELECT_H
-#define _SYS_SELECT_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#define __NEED_size_t
-#define __NEED_time_t
-#define __NEED_suseconds_t
-#define __NEED_struct_timeval
-#define __NEED_struct_timespec
-#define __NEED_sigset_t
-
-#include <bits/alltypes.h>
-
-#define FD_SETSIZE 1024
-
-typedef unsigned long fd_mask;
-
-typedef struct
-{
-       unsigned long fds_bits[FD_SETSIZE / 8 / sizeof(long)];
-} fd_set;
-
-#define FD_ZERO(s) do { int __i; unsigned long *__b=(s)->fds_bits; 
for(__i=sizeof (fd_set)/sizeof (long); __i; __i--) *__b++=0; } while(0)
-#define FD_SET(d, s)   ((s)->fds_bits[(d)/(8*sizeof(long))] |= 
(1UL<<((d)%(8*sizeof(long)))))
-#define FD_CLR(d, s)   ((s)->fds_bits[(d)/(8*sizeof(long))] &= 
~(1UL<<((d)%(8*sizeof(long)))))
-#define FD_ISSET(d, s) !!((s)->fds_bits[(d)/(8*sizeof(long))] & 
(1UL<<((d)%(8*sizeof(long)))))
-
-int select (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, 
struct timeval *__restrict);
-int pselect (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, 
const struct timespec *__restrict, const sigset_t *__restrict);
-
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/include/api/sys/select.h b/include/api/sys/select.h
new file mode 120000
index 00000000..3a01cfb7
--- /dev/null
+++ b/include/api/sys/select.h
@@ -0,0 +1 @@
+../../../musl/include/sys/select.h
\ No newline at end of file
diff --git a/include/api/sys/wait.h b/include/api/sys/wait.h
deleted file mode 100644
index b8d6432e..00000000
--- a/include/api/sys/wait.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef        _SYS_WAIT_H
-#define        _SYS_WAIT_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#include <signal.h>
-
-#define __NEED_pid_t
-#define __NEED_id_t
-#define __NEED_siginfo_t
-#include <bits/alltypes.h>
-
-typedef int idtype_t;
-
-pid_t wait (int *);
-int waitid (idtype_t, id_t, siginfo_t *, int);
-pid_t waitpid (pid_t, int *, int );
-
-#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#include <sys/resource.h>
-pid_t wait3 (int *, int, struct rusage *);
-pid_t wait4 (pid_t, int *, int, struct rusage *);
-#endif
-
-#define WNOHANG    1
-#define WUNTRACED  2
-
-#define WSTOPPED   2
-#define WEXITED    4
-#define WCONTINUED 8
-#define WNOWAIT    0x1000000
-
-#define __WNOTHREAD 0x20000000
-#define __WALL      0x40000000
-#define __WCLONE    0x80000000
-
-#define P_ALL  0
-#define P_PID  1
-#define P_PGID 2
-
-#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) (((signed char) (((s) & 0x7f) + 1) >> 1) > 0)
-#define WIFCONTINUED(s) ((s) == 0xffff)
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/include/api/sys/wait.h b/include/api/sys/wait.h
new file mode 120000
index 00000000..f9f93139
--- /dev/null
+++ b/include/api/sys/wait.h
@@ -0,0 +1 @@
+../../../musl/include/sys/wait.h
\ No newline at end of file
diff --git a/include/api/utmp.h b/include/api/utmp.h
deleted file mode 100644
index c24d0a8d..00000000
--- a/include/api/utmp.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#ifndef _UTMP_H
-#define _UTMP_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <utmpx.h>
-
-#define ACCOUNTING 9
-#define UT_NAMESIZE 32
-#define UT_HOSTSIZE 256
-
-struct lastlog {
-       time_t ll_time;
-       char ll_line[UT_LINESIZE];
-       char ll_host[UT_HOSTSIZE];
-};
-
-#define ut_time ut_tv.tv_sec
-#define ut_name ut_user
-#define utmp utmpx
-#define utmpname(x) (-1)
-
-void         endutent(void);
-struct utmp *getutent(void);
-struct utmp *getutid(const struct utmp *);
-struct utmp *getutline(const struct utmp *);
-struct utmp *pututline(const struct utmp *);
-void         setutent(void);
-
-void updwtmp(const char *, const struct utmp *);
-
-#define _PATH_UTMP "/dev/null"
-#define _PATH_WTMP "/dev/null"
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/utmp.h b/include/api/utmp.h
new file mode 120000
index 00000000..9f4705b4
--- /dev/null
+++ b/include/api/utmp.h
@@ -0,0 +1 @@
+../../musl/include/utmp.h
\ No newline at end of file
diff --git a/include/api/wctype.h b/include/api/wctype.h
deleted file mode 100644
index abc7d36f..00000000
--- a/include/api/wctype.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef _WCTYPE_H
-#define _WCTYPE_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <features.h>
-
-#define __NEED_wint_t
-#define __NEED_wctrans_t
-#define __NEED_wctype_t
-
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-#define __NEED_locale_t
-#endif
-
-#include <bits/alltypes.h>
-
-#undef WEOF
-#define WEOF (-1)
-
-#undef iswdigit
-
-int       iswalnum(wint_t);
-int       iswalpha(wint_t);
-int       iswblank(wint_t);
-int       iswcntrl(wint_t);
-int       iswdigit(wint_t);
-int       iswgraph(wint_t);
-int       iswlower(wint_t);
-int       iswprint(wint_t);
-int       iswpunct(wint_t);
-int       iswspace(wint_t);
-int       iswupper(wint_t);
-int       iswxdigit(wint_t);
-int       iswctype(wint_t, wctype_t);
-wint_t    towctrans(wint_t, wctrans_t);
-wint_t    towlower(wint_t);
-wint_t    towupper(wint_t);
-wctrans_t wctrans(const char *);
-wctype_t  wctype(const char *);
-
-#undef iswdigit
-#define iswdigit(a) (((unsigned)(a)-L'0') < 10)
-
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
-
-int iswalnum_l(wint_t, locale_t);
-int iswalpha_l(wint_t, locale_t);
-int iswblank_l(wint_t, locale_t);
-int iswcntrl_l(wint_t, locale_t);
-int iswdigit_l(wint_t, locale_t);
-int iswgraph_l(wint_t, locale_t);
-int iswlower_l(wint_t, locale_t);
-int iswprint_l(wint_t, locale_t);
-int iswpunct_l(wint_t, locale_t);
-int iswspace_l(wint_t, locale_t);
-int iswupper_l(wint_t, locale_t);
-int iswxdigit_l(wint_t, locale_t);
-int iswctype_l(wint_t, wctype_t, locale_t);
-wint_t towlower_l(wint_t, locale_t);
-wint_t towupper_l(wint_t, locale_t);
-wint_t towctrans_l(wint_t, wctrans_t, locale_t);
-wctrans_t wctrans_l(const char *, locale_t);
-wctype_t  wctype_l(const char *, locale_t);
-
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/include/api/wctype.h b/include/api/wctype.h
new file mode 120000
index 00000000..a495c84a
--- /dev/null
+++ b/include/api/wctype.h
@@ -0,0 +1 @@
+../../musl/include/wctype.h
\ No newline at end of file
-- 
2.25.1

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/osv-dev/20200807144153.27505-1-jwkozaczuk%40gmail.com.

Reply via email to