From b5858b1ccea9f3c1dcb57ba54bdfe0e1cd2b65a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= Date: Thu, 20 Mar 2014 09:01:52 +0000 Subject: main/musl: upgrade to 1.0.0 --- main/musl/0001-git-0.9.15-to-3e02ce1b411.patch | 1877 -------------------- ...flock64-alias-for-struct-flock-in-fcntl.h.patch | 26 - main/musl/APKBUILD | 18 +- 3 files changed, 5 insertions(+), 1916 deletions(-) delete mode 100644 main/musl/0001-git-0.9.15-to-3e02ce1b411.patch delete mode 100644 main/musl/0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch (limited to 'main') diff --git a/main/musl/0001-git-0.9.15-to-3e02ce1b411.patch b/main/musl/0001-git-0.9.15-to-3e02ce1b411.patch deleted file mode 100644 index 07bd03f77..000000000 --- a/main/musl/0001-git-0.9.15-to-3e02ce1b411.patch +++ /dev/null @@ -1,1877 +0,0 @@ -diff --git a/arch/arm/bits/termios.h b/arch/arm/bits/termios.h -index 61c888f..f0d81b1 100644 ---- a/arch/arm/bits/termios.h -+++ b/arch/arm/bits/termios.h -@@ -42,6 +42,7 @@ struct termios - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ struct termios - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ struct termios - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ struct termios - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff --git a/arch/i386/bits/termios.h b/arch/i386/bits/termios.h -index 61c888f..f0d81b1 100644 ---- a/arch/i386/bits/termios.h -+++ b/arch/i386/bits/termios.h -@@ -42,6 +42,7 @@ struct termios - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ struct termios - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ struct termios - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ struct termios - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff --git a/arch/microblaze/bits/termios.h b/arch/microblaze/bits/termios.h -index 61c888f..f0d81b1 100644 ---- a/arch/microblaze/bits/termios.h -+++ b/arch/microblaze/bits/termios.h -@@ -42,6 +42,7 @@ struct termios - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ struct termios - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ struct termios - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ struct termios - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff --git a/arch/mips/bits/termios.h b/arch/mips/bits/termios.h -index 179af8e..487c1d4 100644 ---- a/arch/mips/bits/termios.h -+++ b/arch/mips/bits/termios.h -@@ -77,9 +77,6 @@ struct termios - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -129,12 +126,6 @@ struct termios - #define PARODD 0001000 - #define HUPCL 0002000 - #define CLOCAL 0004000 --#define CBAUDEX 0010000 -- --#define CIBAUD 002003600000 --#define CMSPAR 010000000000 --#define CRTSCTS 020000000000 --#define IBSHIFT 16 - - #define ISIG 0000001 - #define ICANON 0000002 -@@ -152,9 +143,6 @@ struct termios - #define PENDIN 0040000 - #define TOSTOP 0100000 - #define ITOSTOP 0100000 --#define EXTPROC 0200000 -- --#define TIOCSER_TEMT 1 - - #define TCOOFF 0 - #define TCOON 1 -@@ -168,3 +156,14 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CIBAUD 002003600000 -+#define IBSHIFT 16 -+#define CMSPAR 010000000000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#define TIOCSER_TEMT 1 -+#endif -diff --git a/arch/powerpc/bits/termios.h b/arch/powerpc/bits/termios.h -index 3022759..9f8016c 100644 ---- a/arch/powerpc/bits/termios.h -+++ b/arch/powerpc/bits/termios.h -@@ -66,7 +66,6 @@ struct termios - #define TAB1 00002000 - #define TAB2 00004000 - #define TAB3 00006000 --#define XTABS 00006000 - #define CRDLY 00030000 - #define CR0 00000000 - #define CR1 00010000 -@@ -101,7 +100,6 @@ struct termios - #define B38400 0000017 - #define EXTA B19200 - #define EXTB B38400 --#define CBAUDEX 0000000 - #define B57600 00020 - #define B115200 00021 - #define B230400 00022 -@@ -120,9 +118,6 @@ struct termios - #define B4000000 00036 - #define BOTHER 00037 - --#define CIBAUD 077600000 --#define IBSHIFT 16 -- - #define CSIZE 00001400 - #define CS5 00000000 - #define CS6 00000400 -@@ -136,8 +131,6 @@ struct termios - #define HUPCL 00040000 - - #define CLOCAL 00100000 --#define CMSPAR 010000000000 --#define CRTSCTS 020000000000 - - #define ISIG 0x00000080 - #define ICANON 0x00000100 -@@ -154,7 +147,6 @@ struct termios - #define FLUSHO 0x00800000 - #define PENDIN 0x20000000 - #define IEXTEN 0x00000400 --#define EXTPROC 0x10000000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -168,3 +160,13 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0000000 -+#define CIBAUD 077600000 -+#define IBSHIFT 16 -+#define CMSPAR 010000000000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0x10000000 -+#define XTABS 00006000 -+#endif -diff --git a/arch/x86_64/atomic.h b/arch/x86_64/atomic.h -index 0d3da6f..124b37a 100644 ---- a/arch/x86_64/atomic.h -+++ b/arch/x86_64/atomic.h -@@ -5,38 +5,36 @@ - - static inline int a_ctz_64(uint64_t x) - { -- long r; -- __asm__( "bsf %1,%0" : "=r"(r) : "r"(x) ); -- return r; -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; - } - - static inline int a_ctz_l(unsigned long x) - { -- long r; -- __asm__( "bsf %1,%0" : "=r"(r) : "r"(x) ); -- return r; -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; - } - - static inline void a_and_64(volatile uint64_t *p, uint64_t v) - { -- __asm__( "lock ; andq %1, %0" -- : "=m"(*(long *)p) : "r"(v) : "memory" ); -+ __asm__( "lock ; and %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); - } - - static inline void a_or_64(volatile uint64_t *p, uint64_t v) - { -- __asm__( "lock ; orq %1, %0" -- : "=m"(*(long *)p) : "r"(v) : "memory" ); -+ __asm__( "lock ; or %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); - } - - static inline void a_store_l(volatile void *p, long x) - { -- __asm__( "movq %1, %0" : "=m"(*(long *)p) : "r"(x) : "memory" ); -+ __asm__( "mov %1, %0" : "=m"(*(long *)p) : "r"(x) : "memory" ); - } - - static inline void a_or_l(volatile void *p, long v) - { -- __asm__( "lock ; orq %1, %0" -+ __asm__( "lock ; or %1, %0" - : "=m"(*(long *)p) : "r"(v) : "memory" ); - } - -@@ -56,7 +54,7 @@ static inline long a_cas_l(volatile void *p, long t, long s) - - static inline int a_cas(volatile int *p, int t, int s) - { -- __asm__( "lock ; cmpxchgl %3, %1" -+ __asm__( "lock ; cmpxchg %3, %1" - : "=a"(t), "=m"(*p) : "a"(t), "r"(s) : "memory" ); - return t; - } -@@ -74,13 +72,13 @@ static inline long a_swap_l(volatile void *x, long v) - - static inline void a_or(volatile void *p, int v) - { -- __asm__( "lock ; orl %1, %0" -+ __asm__( "lock ; or %1, %0" - : "=m"(*(int *)p) : "r"(v) : "memory" ); - } - - static inline void a_and(volatile void *p, int v) - { -- __asm__( "lock ; andl %1, %0" -+ __asm__( "lock ; and %1, %0" - : "=m"(*(int *)p) : "r"(v) : "memory" ); - } - -@@ -110,7 +108,7 @@ static inline void a_dec(volatile int *x) - - static inline void a_store(volatile int *p, int x) - { -- __asm__( "movl %1, %0" : "=m"(*p) : "r"(x) : "memory" ); -+ __asm__( "mov %1, %0" : "=m"(*p) : "r"(x) : "memory" ); - } - - static inline void a_spin() -diff --git a/arch/x86_64/bits/stat.h b/arch/x86_64/bits/stat.h -index 2145796..081237c 100644 ---- a/arch/x86_64/bits/stat.h -+++ b/arch/x86_64/bits/stat.h -@@ -2,7 +2,7 @@ - * by the corresponding correctly-sized userspace types. */ - - struct stat { -- unsigned long st_dev; -+ dev_t st_dev; - ino_t st_ino; - nlink_t st_nlink; - -diff --git a/arch/x86_64/bits/termios.h b/arch/x86_64/bits/termios.h -index 61c888f..f0d81b1 100644 ---- a/arch/x86_64/bits/termios.h -+++ b/arch/x86_64/bits/termios.h -@@ -42,6 +42,7 @@ struct termios - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ struct termios - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ struct termios - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ struct termios - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ struct termios - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff --git a/arch/x86_64/pthread_arch.h b/arch/x86_64/pthread_arch.h -index 77c8387..29e4590 100644 ---- a/arch/x86_64/pthread_arch.h -+++ b/arch/x86_64/pthread_arch.h -@@ -1,7 +1,7 @@ - static inline struct pthread *__pthread_self() - { - struct pthread *self; -- __asm__ __volatile__ ("movq %%fs:0,%0" : "=r" (self) ); -+ __asm__ __volatile__ ("mov %%fs:0,%0" : "=r" (self) ); - return self; - } - -diff --git a/include/arpa/inet.h b/include/arpa/inet.h -index 5dcadaa..37f8c11 100644 ---- a/include/arpa/inet.h -+++ b/include/arpa/inet.h -@@ -20,7 +20,7 @@ int inet_pton (int, const char *__restrict, void *__restrict); - const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t); - - int inet_aton (const char *, struct in_addr *); --struct in_addr inet_makeaddr(int, int); -+struct in_addr inet_makeaddr(in_addr_t, in_addr_t); - in_addr_t inet_lnaof(struct in_addr); - in_addr_t inet_netof(struct in_addr); - -diff --git a/include/dlfcn.h b/include/dlfcn.h -index db26194..78fb073 100644 ---- a/include/dlfcn.h -+++ b/include/dlfcn.h -@@ -31,7 +31,7 @@ typedef struct { - const char *dli_sname; - void *dli_saddr; - } Dl_info; --int dladdr(void *, Dl_info *); -+int dladdr(const void *, Dl_info *); - int dlinfo(void *, int, void *); - #endif - -diff --git a/include/fcntl.h b/include/fcntl.h -index 55a89f9..e01a4d1 100644 ---- a/include/fcntl.h -+++ b/include/fcntl.h -@@ -148,6 +148,7 @@ struct f_owner_ex { - #define SPLICE_F_MORE 4 - #define SPLICE_F_GIFT 8 - int fallocate(int, int, off_t, off_t); -+#define fallocate64 fallocate - ssize_t readahead(int, off_t, size_t); - int sync_file_range(int, off_t, off_t, unsigned); - ssize_t vmsplice(int, const struct iovec *, size_t, unsigned); -diff --git a/include/netdb.h b/include/netdb.h -index 2dd799b..dfc70e2 100644 ---- a/include/netdb.h -+++ b/include/netdb.h -@@ -131,6 +131,7 @@ int *__h_errno_location(void); - #define TRY_AGAIN 2 - #define NO_RECOVERY 3 - #define NO_DATA 4 -+#define NO_ADDRESS NO_DATA - #endif - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -diff --git a/include/netinet/in.h b/include/netinet/in.h -index db96144..2e25afe 100644 ---- a/include/netinet/in.h -+++ b/include/netinet/in.h -@@ -149,7 +149,7 @@ uint16_t ntohs(uint16_t); - (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0xe)) - - #define __ARE_4_EQUAL(a,b) \ -- (!( 0[a]-0[b] | 1[a]-1[b] | 2[a]-2[b] | 3[a]-3[b] )) -+ (!( (0[a]-0[b]) | (1[a]-1[b]) | (2[a]-2[b]) | (3[a]-3[b]) )) - #define IN6_ARE_ADDR_EQUAL(a,b) \ - __ARE_4_EQUAL((const uint32_t *)(a), (const uint32_t *)(b)) - -@@ -211,19 +211,6 @@ uint16_t ntohs(uint16_t); - #define IP_MULTICAST_ALL 49 - #define IP_UNICAST_IF 50 - --#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) --#define MCAST_JOIN_GROUP 42 --#define MCAST_BLOCK_SOURCE 43 --#define MCAST_UNBLOCK_SOURCE 44 --#define MCAST_LEAVE_GROUP 45 --#define MCAST_JOIN_SOURCE_GROUP 46 --#define MCAST_LEAVE_SOURCE_GROUP 47 --#define MCAST_MSFILTER 48 -- --#define MCAST_EXCLUDE 0 --#define MCAST_INCLUDE 1 --#endif -- - #define IP_RECVRETOPTS IP_RETOPTS - - #define IP_PMTUDISC_DONT 0 -@@ -231,8 +218,6 @@ uint16_t ntohs(uint16_t); - #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 -@@ -243,6 +228,19 @@ struct ip_opts - char ip_opts[40]; - }; - -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+ -+#define MCAST_JOIN_GROUP 42 -+#define MCAST_BLOCK_SOURCE 43 -+#define MCAST_UNBLOCK_SOURCE 44 -+#define MCAST_LEAVE_GROUP 45 -+#define MCAST_JOIN_SOURCE_GROUP 46 -+#define MCAST_LEAVE_SOURCE_GROUP 47 -+#define MCAST_MSFILTER 48 -+ -+#define MCAST_EXCLUDE 0 -+#define MCAST_INCLUDE 1 -+ - struct ip_mreq - { - struct in_addr imr_multiaddr; -@@ -273,7 +271,6 @@ struct ip_msfilter { - (sizeof(struct ip_msfilter) - sizeof(struct in_addr) \ - + (numsrc) * sizeof(struct in_addr)) - --#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) - struct group_req { - uint32_t gr_interface; - struct sockaddr_storage gr_group; -@@ -295,7 +292,6 @@ struct group_filter { - #define GROUP_FILTER_SIZE(numsrc) \ - (sizeof(struct group_filter) - sizeof(struct sockaddr_storage) \ - + (numsrc) * sizeof(struct sockaddr_storage)) --#endif - - struct in_pktinfo - { -@@ -315,6 +311,7 @@ struct ip6_mtuinfo - struct sockaddr_in6 ip6m_addr; - uint32_t ip6m_mtu; - }; -+#endif - - #define IPV6_ADDRFORM 1 - #define IPV6_2292PKTINFO 2 -@@ -324,7 +321,6 @@ struct ip6_mtuinfo - #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 -@@ -363,15 +359,11 @@ struct ip6_mtuinfo - #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 - -diff --git a/include/netinet/tcp.h b/include/netinet/tcp.h -index 5639b89..d3db042 100644 ---- a/include/netinet/tcp.h -+++ b/include/netinet/tcp.h -@@ -44,42 +44,80 @@ - #define SOL_TCP 6 - #include - #include --#endif -+#include -+#include -+ -+typedef uint32_t tcp_seq; - -+#define TH_FIN 0x01 -+#define TH_SYN 0x02 -+#define TH_RST 0x04 -+#define TH_PUSH 0x08 -+#define TH_ACK 0x10 -+#define TH_URG 0x20 -+ -+struct tcphdr { - #ifdef _GNU_SOURCE --#include --struct tcphdr --{ -- u_int16_t source; -- u_int16_t dest; -- u_int32_t seq; -- u_int32_t ack_seq; -+#ifdef __GNUC__ -+ __extension__ -+#endif -+ union { struct { -+ -+ uint16_t source; -+ uint16_t dest; -+ uint32_t seq; -+ uint32_t ack_seq; - #if __BYTE_ORDER == __LITTLE_ENDIAN -- u_int16_t res1:4; -- u_int16_t doff:4; -- u_int16_t fin:1; -- u_int16_t syn:1; -- u_int16_t rst:1; -- u_int16_t psh:1; -- u_int16_t ack:1; -- u_int16_t urg:1; -- u_int16_t res2:2; -+ uint16_t res1:4; -+ uint16_t doff:4; -+ uint16_t fin:1; -+ uint16_t syn:1; -+ uint16_t rst:1; -+ uint16_t psh:1; -+ uint16_t ack:1; -+ uint16_t urg:1; -+ uint16_t res2:2; - #else -- u_int16_t doff:4; -- u_int16_t res1:4; -- u_int16_t res2:2; -- u_int16_t urg:1; -- u_int16_t ack:1; -- u_int16_t psh:1; -- u_int16_t rst:1; -- u_int16_t syn:1; -- u_int16_t fin:1; -+ uint16_t doff:4; -+ uint16_t res1:4; -+ uint16_t res2:2; -+ uint16_t urg:1; -+ uint16_t ack:1; -+ uint16_t psh:1; -+ uint16_t rst:1; -+ uint16_t syn:1; -+ uint16_t fin:1; -+#endif -+ uint16_t window; -+ uint16_t check; -+ uint16_t urg_ptr; -+ -+ }; struct { -+#endif -+ -+ uint16_t th_sport; -+ uint16_t th_dport; -+ uint32_t th_seq; -+ uint32_t th_ack; -+#if __BYTE_ORDER == __LITTLE_ENDIAN -+ uint8_t th_x2:4; -+ uint8_t th_off:4; -+#else -+ uint8_t th_off:4; -+ uint8_t th_x2:4; -+#endif -+ uint8_t th_flags; -+ uint16_t th_win; -+ uint16_t th_sum; -+ uint16_t th_urp; -+ -+#ifdef _GNU_SOURCE -+ }; }; - #endif -- u_int16_t window; -- u_int16_t check; -- u_int16_t urg_ptr; - }; -+#endif - -+#ifdef _GNU_SOURCE - #define TCPI_OPT_TIMESTAMPS 1 - #define TCPI_OPT_SACK 2 - #define TCPI_OPT_WSCALE 4 -@@ -93,37 +131,37 @@ struct tcphdr - - struct tcp_info - { -- u_int8_t tcpi_state; -- u_int8_t tcpi_ca_state; -- u_int8_t tcpi_retransmits; -- u_int8_t tcpi_probes; -- u_int8_t tcpi_backoff; -- u_int8_t tcpi_options; -- u_int8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4; -- u_int32_t tcpi_rto; -- u_int32_t tcpi_ato; -- u_int32_t tcpi_snd_mss; -- u_int32_t tcpi_rcv_mss; -- u_int32_t tcpi_unacked; -- u_int32_t tcpi_sacked; -- u_int32_t tcpi_lost; -- u_int32_t tcpi_retrans; -- u_int32_t tcpi_fackets; -- u_int32_t tcpi_last_data_sent; -- u_int32_t tcpi_last_ack_sent; -- u_int32_t tcpi_last_data_recv; -- u_int32_t tcpi_last_ack_recv; -- u_int32_t tcpi_pmtu; -- u_int32_t tcpi_rcv_ssthresh; -- u_int32_t tcpi_rtt; -- u_int32_t tcpi_rttvar; -- u_int32_t tcpi_snd_ssthresh; -- u_int32_t tcpi_snd_cwnd; -- u_int32_t tcpi_advmss; -- u_int32_t tcpi_reordering; -- u_int32_t tcpi_rcv_rtt; -- u_int32_t tcpi_rcv_space; -- u_int32_t tcpi_total_retrans; -+ uint8_t tcpi_state; -+ uint8_t tcpi_ca_state; -+ uint8_t tcpi_retransmits; -+ uint8_t tcpi_probes; -+ uint8_t tcpi_backoff; -+ uint8_t tcpi_options; -+ uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4; -+ uint32_t tcpi_rto; -+ uint32_t tcpi_ato; -+ uint32_t tcpi_snd_mss; -+ uint32_t tcpi_rcv_mss; -+ uint32_t tcpi_unacked; -+ uint32_t tcpi_sacked; -+ uint32_t tcpi_lost; -+ uint32_t tcpi_retrans; -+ uint32_t tcpi_fackets; -+ uint32_t tcpi_last_data_sent; -+ uint32_t tcpi_last_ack_sent; -+ uint32_t tcpi_last_data_recv; -+ uint32_t tcpi_last_ack_recv; -+ uint32_t tcpi_pmtu; -+ uint32_t tcpi_rcv_ssthresh; -+ uint32_t tcpi_rtt; -+ uint32_t tcpi_rttvar; -+ uint32_t tcpi_snd_ssthresh; -+ uint32_t tcpi_snd_cwnd; -+ uint32_t tcpi_advmss; -+ uint32_t tcpi_reordering; -+ uint32_t tcpi_rcv_rtt; -+ uint32_t tcpi_rcv_space; -+ uint32_t tcpi_total_retrans; - }; - - #define TCP_MD5SIG_MAXKEYLEN 80 -@@ -131,10 +169,10 @@ struct tcp_info - struct tcp_md5sig - { - struct sockaddr_storage tcpm_addr; -- u_int16_t __tcpm_pad1; -- u_int16_t tcpm_keylen; -- u_int32_t __tcpm_pad2; -- u_int8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; -+ uint16_t __tcpm_pad1; -+ uint16_t tcpm_keylen; -+ uint32_t __tcpm_pad2; -+ uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; - }; - - #endif -diff --git a/include/netinet/udp.h b/include/netinet/udp.h -index 15b9145..b1b0eb8 100644 ---- a/include/netinet/udp.h -+++ b/include/netinet/udp.h -@@ -5,19 +5,22 @@ - extern "C" { - #endif - -+#include - #include - --struct udphdr { -- uint16_t source; -- uint16_t dest; -- uint16_t len; -- uint16_t check; --}; -- -+#ifdef _GNU_SOURCE - #define uh_sport source - #define uh_dport dest - #define uh_ulen len - #define uh_sum check -+#endif -+ -+struct udphdr { -+ uint16_t uh_sport; -+ uint16_t uh_dport; -+ uint16_t uh_ulen; -+ uint16_t uh_sum; -+}; - - #define UDP_CORK 1 - #define UDP_ENCAP 100 -diff --git a/include/sched.h b/include/sched.h -index 6a6b2fc..105dac9 100644 ---- a/include/sched.h -+++ b/include/sched.h -@@ -78,7 +78,7 @@ int __sched_cpucount(size_t, const cpu_set_t *); - int sched_getaffinity(pid_t, size_t, cpu_set_t *); - int sched_setaffinity(pid_t, size_t, const cpu_set_t *); - --#define __CPU_op_S(i, size, set, op) ( (i)/8 >= (size) ? 0 : \ -+#define __CPU_op_S(i, size, set, op) ( (i)/8U >= (size) ? 0 : \ - ((set)->__bits[(i)/8/sizeof(long)] op (1UL<<((i)%(8*sizeof(long))))) ) - - #define CPU_SET_S(i, size, set) __CPU_op_S(i, size, set, |=) -diff --git a/include/signal.h b/include/signal.h -index 6f10a118..8ef5ff1 100644 ---- a/include/signal.h -+++ b/include/signal.h -@@ -227,8 +227,8 @@ typedef void (*sig_t)(int); - 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 *); -+int sigorset (sigset_t *, const sigset_t *, const sigset_t *); -+int sigandset(sigset_t *, const sigset_t *, const sigset_t *); - - #define SA_NOMASK SA_NODEFER - #define SA_ONESHOT SA_RESETHAND -diff --git a/include/stdlib.h b/include/stdlib.h -index 1e67b89..f034c6e 100644 ---- a/include/stdlib.h -+++ b/include/stdlib.h -@@ -93,7 +93,7 @@ size_t wcstombs (char *__restrict, const wchar_t *__restrict, size_t); - #define WSTOPSIG(s) WEXITSTATUS(s) - #define WIFEXITED(s) (!WTERMSIG(s)) - #define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001)>>8) > 0x7f00) --#define WIFSIGNALED(s) (((s)&0xffff)-1 < 0xffu) -+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu) - - int posix_memalign (void **, size_t, size_t); - int setenv (const char *, const char *, int); -diff --git a/include/sys/inotify.h b/include/sys/inotify.h -index a5bf96a..46638ca 100644 ---- a/include/sys/inotify.h -+++ b/include/sys/inotify.h -@@ -48,7 +48,7 @@ struct inotify_event { - int inotify_init(void); - int inotify_init1(int); - int inotify_add_watch(int, const char *, uint32_t); --int inotify_rm_watch(int, uint32_t); -+int inotify_rm_watch(int, int); - - #ifdef __cplusplus - } -diff --git a/include/sys/mman.h b/include/sys/mman.h -index 9a1e60f..a34448a 100644 ---- a/include/sys/mman.h -+++ b/include/sys/mman.h -@@ -33,7 +33,7 @@ int munlockall (void); - - #ifdef _GNU_SOURCE - void *mremap (void *, size_t, size_t, int, ...); --int remap_file_pages (void *, size_t, int, ssize_t, int); -+int remap_file_pages (void *, size_t, int, size_t, int); - #endif - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -diff --git a/include/sys/shm.h b/include/sys/shm.h -index c20f033..d97e582 100644 ---- a/include/sys/shm.h -+++ b/include/sys/shm.h -@@ -37,14 +37,16 @@ struct shminfo { - unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; - }; - --struct shm_info { -- int used_ids; -- unsigned long shm_tot, shm_rss, shm_swp; - #ifdef _GNU_SOURCE -- unsigned long swap_attempts, swap_successes; --#else -- unsigned long __reserved[2]; -+#define __used_ids used_ids -+#define __swap_attempts swap_attempts -+#define __swap_successes swap_successes - #endif -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; - }; - - typedef unsigned long shmatt_t; -diff --git a/include/sys/socket.h b/include/sys/socket.h -index 82edd6f..79a41cc 100644 ---- a/include/sys/socket.h -+++ b/include/sys/socket.h -@@ -207,6 +207,10 @@ struct linger - #define SOL_SOCKET 1 - #endif - -+#define SOL_IP 0 -+#define SOL_IPV6 41 -+#define SOL_ICMPV6 58 -+ - #define SOL_RAW 255 - #define SOL_DECNET 261 - #define SOL_X25 262 -diff --git a/include/sys/sysctl.h b/include/sys/sysctl.h -deleted file mode 100644 -index c358b79..0000000 ---- a/include/sys/sysctl.h -+++ /dev/null -@@ -1,17 +0,0 @@ --#ifndef _SYS_SYSCTL_H --#define _SYS_SYSCTL_H -- --#ifdef __cplusplus --extern "C" { --#endif -- --#define __NEED_size_t --#include -- --int sysctl (int *, int, void *, size_t *, void *, size_t); -- --#ifdef __cplusplus --} --#endif -- --#endif -diff --git a/include/sys/time.h b/include/sys/time.h -index b6787c3..bfe1414 100644 ---- a/include/sys/time.h -+++ b/include/sys/time.h -@@ -51,6 +51,17 @@ int adjtime (const struct timeval *, struct timeval *); - ((a)->tv_usec += 1000000, (a)->tv_sec--) ) - #endif - -+#if defined(_GNU_SOURCE) -+#define TIMEVAL_TO_TIMESPEC(tv, ts) ( \ -+ (ts)->tv_sec = (tv)->tv_sec, \ -+ (ts)->tv_nsec = (tv)->tv_usec * 1000, \ -+ (void)0 ) -+#define TIMESPEC_TO_TIMEVAL(tv, ts) ( \ -+ (tv)->tv_sec = (ts)->tv_sec, \ -+ (tv)->tv_usec = (ts)->tv_nsec / 1000, \ -+ (void)0 ) -+#endif -+ - #ifdef __cplusplus - } - #endif -diff --git a/include/sys/wait.h b/include/sys/wait.h -index c794f5d..50c5c70 100644 ---- a/include/sys/wait.h -+++ b/include/sys/wait.h -@@ -50,7 +50,7 @@ pid_t wait4 (pid_t, int *, int, struct rusage *); - #define WCOREDUMP(s) ((s) & 0x80) - #define WIFEXITED(s) (!WTERMSIG(s)) - #define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001)>>8) > 0x7f00) --#define WIFSIGNALED(s) (((s)&0xffff)-1 < 0xffu) -+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu) - #define WIFCONTINUED(s) ((s) == 0xffff) - - #ifdef __cplusplus -diff --git a/include/syslog.h b/include/syslog.h -index f7f545f..71dbd99 100644 ---- a/include/syslog.h -+++ b/include/syslog.h -@@ -21,7 +21,7 @@ extern "C" { - #define LOG_MAKEPRI(f, p) (((f)<<3)|(p)) - - #define LOG_MASK(p) (1<<(p)) --#define LOG_UPTO(p) ((1<<(p)+1)-1) -+#define LOG_UPTO(p) ((1<<((p)+1))-1) - - #define LOG_KERN (0<<3) - #define LOG_USER (1<<3) -diff --git a/include/time.h b/include/time.h -index 7057409..dc88070 100644 ---- a/include/time.h -+++ b/include/time.h -@@ -125,7 +125,7 @@ struct tm *getdate (const char *); - - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) --int stime(time_t *); -+int stime(const time_t *); - time_t timegm(struct tm *); - #endif - -diff --git a/include/utmp.h b/include/utmp.h -index b357ac8..e9ba23e 100644 ---- a/include/utmp.h -+++ b/include/utmp.h -@@ -10,6 +10,7 @@ extern "C" { - #define ACCOUNTING 9 - #define UT_NAMESIZE 32 - #define UT_HOSTSIZE 256 -+#define UT_LINESIZE 32 - - struct lastlog { - time_t ll_time; -@@ -22,6 +23,8 @@ struct lastlog { - #define ut_addr ut_addr_v6[0] - #define utmp utmpx - #define utmpname(x) (-1) -+#define e_exit __e_exit -+#define e_termination __e_termination - - void endutent(void); - struct utmp *getutent(void); -diff --git a/include/utmpx.h b/include/utmpx.h -index fd5f515..f0c3b01 100644 ---- a/include/utmpx.h -+++ b/include/utmpx.h -@@ -5,6 +5,8 @@ - extern "C" { - #endif - -+#include -+ - #define __NEED_pid_t - #define __NEED_time_t - #define __NEED_suseconds_t -@@ -12,19 +14,17 @@ extern "C" { - - #include - --#define UT_LINESIZE 32 -- - struct utmpx - { - short ut_type; - pid_t ut_pid; -- char ut_line[UT_LINESIZE]; -+ char ut_line[32]; - char ut_id[4]; - char ut_user[32]; - char ut_host[256]; - struct { -- short e_termination; -- short e_exit; -+ short __e_termination; -+ short __e_exit; - } ut_exit; - long ut_session; - struct timeval ut_tv; -@@ -39,7 +39,11 @@ struct utmpx *getutxline(const struct utmpx *); - struct utmpx *pututxline(const struct utmpx *); - void setutxent(void); - -+#if defined(_BSD_SOURCE) | defined(_GNU_SOURCE) -+#define e_exit __e_exit -+#define e_termination __e_termination - void updwtmpx(const char *, const struct utmpx *); -+#endif - - #define EMPTY 0 - #define RUN_LVL 1 -diff --git a/src/crypt/crypt_des.c b/src/crypt/crypt_des.c -index dc95dca..d5766a7 100644 ---- a/src/crypt/crypt_des.c -+++ b/src/crypt/crypt_des.c -@@ -692,7 +692,7 @@ static uint32_t setup_salt(uint32_t salt) - return saltbits; - } - --static void des_setkey(const unsigned char *key, struct expanded_key *ekey) -+void __des_setkey(const unsigned char *key, struct expanded_key *ekey) - { - uint32_t k0, k1, rawkey0, rawkey1; - unsigned int shifts, round, i, ibit; -@@ -753,7 +753,7 @@ static void des_setkey(const unsigned char *key, struct expanded_key *ekey) - /* - * l_in, r_in, l_out, and r_out are in pseudo-"big-endian" format. - */ --static void do_des(uint32_t l_in, uint32_t r_in, -+void __do_des(uint32_t l_in, uint32_t r_in, - uint32_t *l_out, uint32_t *r_out, - uint32_t count, uint32_t saltbits, const struct expanded_key *ekey) - { -@@ -862,7 +862,7 @@ static void des_cipher(const unsigned char *in, unsigned char *out, - ((uint32_t)in[5] << 16) | - ((uint32_t)in[4] << 24); - -- do_des(rawl, rawr, &l_out, &r_out, count, saltbits, ekey); -+ __do_des(rawl, rawr, &l_out, &r_out, count, saltbits, ekey); - - out[0] = l_out >> 24; - out[1] = l_out >> 16; -@@ -894,7 +894,7 @@ static char *_crypt_extended_r_uut(const char *_key, const char *_setting, char - if (*key) - key++; - } -- des_setkey(keybuf, &ekey); -+ __des_setkey(keybuf, &ekey); - - if (*setting == _PASSWORD_EFMT1) { - /* -@@ -929,7 +929,7 @@ static char *_crypt_extended_r_uut(const char *_key, const char *_setting, char - q = keybuf; - while (q <= &keybuf[sizeof(keybuf) - 1] && *key) - *q++ ^= *key++ << 1; -- des_setkey(keybuf, &ekey); -+ __des_setkey(keybuf, &ekey); - } - - memcpy(output, setting, 9); -@@ -957,7 +957,7 @@ static char *_crypt_extended_r_uut(const char *_key, const char *_setting, char - /* - * Do it. - */ -- do_des(0, 0, &r0, &r1, count, setup_salt(salt), &ekey); -+ __do_des(0, 0, &r0, &r1, count, setup_salt(salt), &ekey); - - /* - * Now encode the result... -diff --git a/src/crypt/encrypt.c b/src/crypt/encrypt.c -new file mode 100644 -index 0000000..9332a6d ---- /dev/null -+++ b/src/crypt/encrypt.c -@@ -0,0 +1,60 @@ -+#include -+#include -+#include -+ -+struct expanded_key { -+ uint32_t l[16], r[16]; -+}; -+ -+void __des_setkey(const unsigned char *key, struct expanded_key *ekey); -+void __do_des(uint32_t l_in, uint32_t r_in, -+ uint32_t *l_out, uint32_t *r_out, -+ uint32_t count, uint32_t saltbits, const struct expanded_key *ekey); -+ -+ -+static struct expanded_key __encrypt_key; -+ -+void setkey(const char *key) -+{ -+ unsigned char bkey[8]; -+ int i, j; -+ -+ for (i = 0; i < 8; i++) { -+ bkey[i] = 0; -+ for (j = 7; j >= 0; j--, key++) -+ bkey[i] |= (uint32_t)(*key & 1) << j; -+ } -+ -+ __des_setkey(bkey, &__encrypt_key); -+} -+ -+void encrypt(char *block, int edflag) -+{ -+ struct expanded_key decrypt_key, *key; -+ uint32_t b[2]; -+ int i, j; -+ char *p; -+ -+ p = block; -+ for (i = 0; i < 2; i++) { -+ b[i] = 0; -+ for (j = 31; j >= 0; j--, p++) -+ b[i] |= (uint32_t)(*p & 1) << j; -+ } -+ -+ key = &__encrypt_key; -+ if (edflag) { -+ key = &decrypt_key; -+ for (i = 0; i < 16; i++) { -+ decrypt_key.l[i] = __encrypt_key.l[15-i]; -+ decrypt_key.r[i] = __encrypt_key.r[15-i]; -+ } -+ } -+ -+ __do_des(b[0], b[1], b, b + 1, 1, 0, key); -+ -+ p = block; -+ for (i = 0; i < 2; i++) -+ for (j = 31; j >= 0; j--) -+ *p++ = b[i]>>j & 1; -+} -diff --git a/src/fcntl/fcntl.c b/src/fcntl/fcntl.c -index 4c34ba0..4a713fd 100644 ---- a/src/fcntl/fcntl.c -+++ b/src/fcntl/fcntl.c -@@ -13,11 +13,11 @@ int fcntl(int fd, int cmd, ...) - arg = va_arg(ap, long); - va_end(ap); - if (cmd == F_SETFL) arg |= O_LARGEFILE; -- if (cmd == F_SETLKW) return syscall_cp(SYS_fcntl, fd, cmd, arg); -+ if (cmd == F_SETLKW) return syscall_cp(SYS_fcntl, fd, cmd, (void *)arg); - if (cmd == F_GETOWN) { - struct f_owner_ex ex; - int ret = __syscall(SYS_fcntl, fd, F_GETOWN_EX, &ex); -- if (ret == -EINVAL) return __syscall(SYS_fcntl, fd, cmd, arg); -+ if (ret == -EINVAL) return __syscall(SYS_fcntl, fd, cmd, (void *)arg); - if (ret) return __syscall_ret(ret); - return ex.type == F_OWNER_PGRP ? -ex.pid : ex.pid; - } -@@ -37,5 +37,14 @@ int fcntl(int fd, int cmd, ...) - if (ret >= 0) __syscall(SYS_fcntl, ret, F_SETFD, FD_CLOEXEC); - return __syscall_ret(ret); - } -- return syscall(SYS_fcntl, fd, cmd, arg); -+ switch (cmd) { -+ case F_SETLK: -+ case F_SETLKW: -+ case F_GETLK: -+ case F_GETOWN_EX: -+ case F_SETOWN_EX: -+ return syscall(SYS_fcntl, fd, cmd, (void *)arg); -+ default: -+ return syscall(SYS_fcntl, fd, cmd, arg); -+ } - } -diff --git a/src/fcntl/posix_fadvise.c b/src/fcntl/posix_fadvise.c -index 2170209..d5360e0 100644 ---- a/src/fcntl/posix_fadvise.c -+++ b/src/fcntl/posix_fadvise.c -@@ -1,8 +1,11 @@ - #include - #include "syscall.h" -+#include "libc.h" - - int posix_fadvise(int fd, off_t base, off_t len, int advice) - { - return -(__syscall)(SYS_fadvise, fd, __SYSCALL_LL_O(base), - __SYSCALL_LL_E(len), advice); - } -+ -+LFS64(posix_fadvise); -diff --git a/src/fcntl/posix_fallocate.c b/src/fcntl/posix_fallocate.c -index 80a65cb..91d8063 100644 ---- a/src/fcntl/posix_fallocate.c -+++ b/src/fcntl/posix_fallocate.c -@@ -1,8 +1,11 @@ - #include - #include "syscall.h" -+#include "libc.h" - - int posix_fallocate(int fd, off_t base, off_t len) - { - return -__syscall(SYS_fallocate, fd, 0, __SYSCALL_LL_E(base), - __SYSCALL_LL_E(len)); - } -+ -+LFS64(posix_fallocate); -diff --git a/src/fenv/i386/fenv.s b/src/fenv/i386/fenv.s -index f6036d6..a189ca2 100644 ---- a/src/fenv/i386/fenv.s -+++ b/src/fenv/i386/fenv.s -@@ -126,7 +126,7 @@ fesetenv: - push %eax - push %eax - push %eax -- push %eax -+ pushl $0xffff - push %eax - pushl $0x37f - fldenv (%esp) -diff --git a/src/fenv/x86_64/fenv.s b/src/fenv/x86_64/fenv.s -index 6aaf25e..b5aeaf4 100644 ---- a/src/fenv/x86_64/fenv.s -+++ b/src/fenv/x86_64/fenv.s -@@ -76,7 +76,7 @@ fesetenv: - ret - 1: push %rax - push %rax -- push %rax -+ pushq $0xffff - pushq $0x37f - fldenv (%rsp) - pushq $0x1f80 -diff --git a/src/internal/stdio_impl.h b/src/internal/stdio_impl.h -index 2083b2f..79be9fd 100644 ---- a/src/internal/stdio_impl.h -+++ b/src/internal/stdio_impl.h -@@ -17,6 +17,7 @@ - #define F_EOF 16 - #define F_ERR 32 - #define F_SVB 64 -+#define F_APP 128 - - struct _IO_FILE { - unsigned flags; -diff --git a/src/ipc/semctl.c b/src/ipc/semctl.c -index 274e2cf..3d79f50 100644 ---- a/src/ipc/semctl.c -+++ b/src/ipc/semctl.c -@@ -3,16 +3,22 @@ - #include "syscall.h" - #include "ipc.h" - -+union semun { -+ int val; -+ struct semid_ds *buf; -+ unsigned short *array; -+}; -+ - int semctl(int id, int num, int cmd, ...) - { -- long arg; -+ union semun arg; - va_list ap; - va_start(ap, cmd); -- arg = va_arg(ap, long); -+ arg = va_arg(ap, union semun); - va_end(ap); - #ifdef SYS_semctl -- return syscall(SYS_semctl, id, num, cmd | IPC_64, arg); -+ return syscall(SYS_semctl, id, num, cmd | IPC_64, arg.buf); - #else -- return syscall(SYS_ipc, IPCOP_semctl, id, num, cmd | IPC_64, &arg); -+ return syscall(SYS_ipc, IPCOP_semctl, id, num, cmd | IPC_64, &arg.buf); - #endif - } -diff --git a/src/ldso/dladdr.c b/src/ldso/dladdr.c -index 265bb68..7ca718f 100644 ---- a/src/ldso/dladdr.c -+++ b/src/ldso/dladdr.c -@@ -1,9 +1,9 @@ - #define _GNU_SOURCE - #include - --int __dladdr(void *, Dl_info *); -+int __dladdr(const void *, Dl_info *); - --int dladdr(void *addr, Dl_info *info) -+int dladdr(const void *addr, Dl_info *info) - { - return __dladdr(addr, info); - } -diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c -index 27d92f2..a1bdf0f 100644 ---- a/src/ldso/dynlink.c -+++ b/src/ldso/dynlink.c -@@ -253,7 +253,8 @@ static void do_relocs(struct dso *dso, size_t *rel, size_t rel_size, size_t stri - name = strings + sym->st_name; - ctx = IS_COPY(type) ? head->next : head; - def = find_sym(ctx, name, IS_PLT(type)); -- if (!def.sym && sym->st_info>>4 != STB_WEAK) { -+ if (!def.sym && (sym->st_shndx != SHN_UNDEF -+ || sym->st_info>>4 != STB_WEAK)) { - snprintf(errbuf, sizeof errbuf, - "Error relocating %s: %s: symbol not found", - dso->name, name); -@@ -1331,7 +1332,7 @@ failed: - return 0; - } - --int __dladdr(void *addr, Dl_info *info) -+int __dladdr(const void *addr, Dl_info *info) - { - struct dso *p; - Sym *sym; -@@ -1441,7 +1442,7 @@ void *__dlsym(void *restrict p, const char *restrict s, void *restrict ra) - { - return 0; - } --int __dladdr (void *addr, Dl_info *info) -+int __dladdr (const void *addr, Dl_info *info) - { - return 0; - } -diff --git a/src/linux/clone.c b/src/linux/clone.c -new file mode 100644 -index 0000000..b9e5594 ---- /dev/null -+++ b/src/linux/clone.c -@@ -0,0 +1,19 @@ -+#include -+#include -+#include "pthread_impl.h" -+#include "syscall.h" -+ -+int clone(int (*func)(void *), void *stack, int flags, void *arg, ...) -+{ -+ va_list ap; -+ pid_t *ptid, *ctid; -+ void *tls; -+ -+ va_start(ap, arg); -+ ptid = va_arg(ap, pid_t *); -+ tls = va_arg(ap, void *); -+ ctid = va_arg(ap, pid_t *); -+ va_end(ap); -+ -+ return __syscall_ret(__clone(func, stack, flags, arg, ptid, tls, ctid)); -+} -diff --git a/src/linux/fallocate.c b/src/linux/fallocate.c -index 9146350..ae766d5 100644 ---- a/src/linux/fallocate.c -+++ b/src/linux/fallocate.c -@@ -1,9 +1,13 @@ - #define _GNU_SOURCE - #include - #include "syscall.h" -+#include "libc.h" - - int fallocate(int fd, int mode, off_t base, off_t len) - { - return syscall(SYS_fallocate, fd, mode, __SYSCALL_LL_E(base), - __SYSCALL_LL_E(len)); - } -+ -+#undef fallocate64 -+LFS64(fallocate); -diff --git a/src/linux/inotify.c b/src/linux/inotify.c -index d3b4fa0..a417c89 100644 ---- a/src/linux/inotify.c -+++ b/src/linux/inotify.c -@@ -15,7 +15,7 @@ int inotify_add_watch(int fd, const char *pathname, uint32_t mask) - return syscall(SYS_inotify_add_watch, fd, pathname, mask); - } - --int inotify_rm_watch(int fd, uint32_t wd) -+int inotify_rm_watch(int fd, int wd) - { - return syscall(SYS_inotify_rm_watch, fd, wd); - } -diff --git a/src/linux/remap_file_pages.c b/src/linux/remap_file_pages.c -index f95c4cc..a9699ce 100644 ---- a/src/linux/remap_file_pages.c -+++ b/src/linux/remap_file_pages.c -@@ -2,7 +2,7 @@ - #include - #include "syscall.h" - --int remap_file_pages(void *addr, size_t size, int prot, ssize_t pgoff, int flags) -+int remap_file_pages(void *addr, size_t size, int prot, size_t pgoff, int flags) - { - return syscall(SYS_remap_file_pages, addr, size, prot, pgoff, flags); - } -diff --git a/src/linux/stime.c b/src/linux/stime.c -index 29a1ec6..7d0443b 100644 ---- a/src/linux/stime.c -+++ b/src/linux/stime.c -@@ -2,7 +2,7 @@ - #include - #include - --int stime(time_t *t) -+int stime(const time_t *t) - { - struct timeval tv = { .tv_sec = *t, .tv_usec = 0 }; - return settimeofday(&tv, (void *)0); -diff --git a/src/locale/wcsxfrm.c b/src/locale/wcsxfrm.c -index cb79c97..5d89e7d 100644 ---- a/src/locale/wcsxfrm.c -+++ b/src/locale/wcsxfrm.c -@@ -6,10 +6,12 @@ - size_t __wcsxfrm_l(wchar_t *restrict dest, const wchar_t *restrict src, size_t n, locale_t loc) - { - size_t l = wcslen(src); -- if (l >= n) { -+ if (l < n) { -+ wmemcpy(dest, src, l+1); -+ } else if (n) { - wmemcpy(dest, src, n-1); - dest[n-1] = 0; -- } else wcscpy(dest, src); -+ } - return l; - } - -diff --git a/src/math/i386/remainder.s b/src/math/i386/remainder.s -index 47ee340..7f4be05 100644 ---- a/src/math/i386/remainder.s -+++ b/src/math/i386/remainder.s -@@ -1,6 +1,9 @@ - .global remainder - .type remainder,@function - remainder: -+.weak drem -+.type drem,@function -+drem: - fldl 12(%esp) - fldl 4(%esp) - 1: fprem1 -diff --git a/src/math/i386/remainderf.s b/src/math/i386/remainderf.s -index 5b5fc23..ac6e367 100644 ---- a/src/math/i386/remainderf.s -+++ b/src/math/i386/remainderf.s -@@ -1,6 +1,9 @@ - .global remainderf - .type remainderf,@function - remainderf: -+.weak dremf -+.type dremf,@function -+dremf: - flds 8(%esp) - flds 4(%esp) - 1: fprem1 -diff --git a/src/misc/nftw.c b/src/misc/nftw.c -index b2e84bc..efb2b89 100644 ---- a/src/misc/nftw.c -+++ b/src/misc/nftw.c -@@ -46,8 +46,7 @@ static int do_nftw(char *path, int (*fn)(const char *, const struct stat *, int, - type = FTW_F; - } - -- if ((flags & FTW_MOUNT) && h -- && (st.st_dev != h->dev || st.st_ino != h->ino)) -+ if ((flags & FTW_MOUNT) && h && st.st_dev != h->dev) - return 0; - - new.chain = h; -diff --git a/src/network/inet_legacy.c b/src/network/inet_legacy.c -index 0a0ad6f..de5b75c 100644 ---- a/src/network/inet_legacy.c -+++ b/src/network/inet_legacy.c -@@ -16,9 +16,8 @@ int inet_aton(const char *cp, struct in_addr *inp) - return 1; - } - --struct in_addr inet_makeaddr(int net, int host) -+struct in_addr inet_makeaddr(in_addr_t n, in_addr_t h) - { -- uint32_t n = net, h = host; - if (n < 256) h |= n<<24; - else if (n < 65536) h |= n<<16; - else h |= n<<8; -diff --git a/src/network/proto.c b/src/network/proto.c -index 031003a..3d0f584 100644 ---- a/src/network/proto.c -+++ b/src/network/proto.c -@@ -4,7 +4,7 @@ - /* do we really need all these?? */ - - static int idx; --static const unsigned char protos[][6] = { -+static const unsigned char protos[][8] = { - "\000ip", - "\001icmp", - "\002igmp", -@@ -13,7 +13,9 @@ static const unsigned char protos[][6] = { - "\014pup", - "\021udp", - "\026idp", -- "\377raw" -+ "\051ipv6", -+ "\072icmpv6", -+ "\377raw", - "\0\0" - }; - -diff --git a/src/prng/random.c b/src/prng/random.c -index 4ad6205..e250e28 100644 ---- a/src/prng/random.c -+++ b/src/prng/random.c -@@ -1,10 +1,3 @@ --/* -- * random.c - Copyright © 2011 Szabolcs Nagy -- * Permission to use, copy, modify, and/or distribute this code -- * for any purpose with or without fee is hereby granted. -- * There is no warranty. --*/ -- - #include - #include - #include "libc.h" -@@ -12,11 +5,7 @@ - /* - this code uses the same lagged fibonacci generator as the - original bsd random implementation except for the seeding -- --different seeds produce different sequences with long period --(other libcs seed the state with a park-miller generator --when seed=0 some fail to produce good random sequence --others produce the same sequence as another seed) -+which was broken in the original - */ - - static uint32_t init[] = { -@@ -98,6 +87,7 @@ char *initstate(unsigned seed, char *state, size_t size) { - n = 63; - x = (uint32_t*)state + 1; - __srandom(seed); -+ savestate(); - UNLOCK(lock); - return old; - } -diff --git a/src/process/posix_spawn.c b/src/process/posix_spawn.c -index eb98f9f..f675a13 100644 ---- a/src/process/posix_spawn.c -+++ b/src/process/posix_spawn.c -@@ -166,7 +166,7 @@ int __posix_spawnx(pid_t *restrict res, const char *restrict path, - - close(args.p[0]); - -- if (!ec) *res = pid; -+ if (!ec && res) *res = pid; - - pthread_sigmask(SIG_SETMASK, &args.oldmask, 0); - pthread_setcancelstate(cs, 0); -diff --git a/src/signal/sigandset.c b/src/signal/sigandset.c -index e0c6f48..974186f 100644 ---- a/src/signal/sigandset.c -+++ b/src/signal/sigandset.c -@@ -3,7 +3,7 @@ - - #define SST_SIZE (_NSIG/8/sizeof(long)) - --int sigandset(sigset_t *dest, sigset_t *left, sigset_t *right) -+int sigandset(sigset_t *dest, const sigset_t *left, const sigset_t *right) - { - unsigned long i = 0, *d = (void*) dest, *l = (void*) left, *r = (void*) right; - for(; i < SST_SIZE; i++) d[i] = l[i] & r[i]; -diff --git a/src/signal/sigorset.c b/src/signal/sigorset.c -index df1b1b1..ed48873 100644 ---- a/src/signal/sigorset.c -+++ b/src/signal/sigorset.c -@@ -3,7 +3,7 @@ - - #define SST_SIZE (_NSIG/8/sizeof(long)) - --int sigorset(sigset_t *dest, sigset_t *left, sigset_t *right) -+int sigorset(sigset_t *dest, const sigset_t *left, const sigset_t *right) - { - unsigned long i = 0, *d = (void*) dest, *l = (void*) left, *r = (void*) right; - for(; i < SST_SIZE; i++) d[i] = l[i] | r[i]; -diff --git a/src/stdio/__fdopen.c b/src/stdio/__fdopen.c -index 59690f6..a6ae73a 100644 ---- a/src/stdio/__fdopen.c -+++ b/src/stdio/__fdopen.c -@@ -32,7 +32,9 @@ FILE *__fdopen(int fd, const char *mode) - /* Set append mode on fd if opened for append */ - if (*mode == 'a') { - int flags = __syscall(SYS_fcntl, fd, F_GETFL); -- __syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND); -+ if (!(flags & O_APPEND)) -+ __syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND); -+ f->flags |= F_APP; - } - - f->fd = fd; -diff --git a/src/stdio/ftell.c b/src/stdio/ftell.c -index 82371e3..bb62897 100644 ---- a/src/stdio/ftell.c -+++ b/src/stdio/ftell.c -@@ -4,7 +4,9 @@ - - off_t __ftello_unlocked(FILE *f) - { -- off_t pos = f->seek(f, 0, SEEK_CUR); -+ off_t pos = f->seek(f, 0, -+ (f->flags & F_APP) && f->wpos > f->wbase -+ ? SEEK_END : SEEK_CUR); - if (pos < 0) return pos; - - /* Adjust for data in buffer. */ -diff --git a/src/stdio/vfscanf.c b/src/stdio/vfscanf.c -index 0091a8d..d4d2454 100644 ---- a/src/stdio/vfscanf.c -+++ b/src/stdio/vfscanf.c -@@ -328,3 +328,5 @@ match_fail: - FUNLOCK(f); - return matches; - } -+ -+weak_alias(vfscanf,__isoc99_vfscanf); -diff --git a/src/thread/__wait.c b/src/thread/__wait.c -index 041a066..a1e4780 100644 ---- a/src/thread/__wait.c -+++ b/src/thread/__wait.c -@@ -10,6 +10,6 @@ void __wait(volatile int *addr, volatile int *waiters, int val, int priv) - } - if (waiters) a_inc(waiters); - while (*addr==val) -- __syscall(SYS_futex, (long)addr, FUTEX_WAIT|priv, val, 0); -+ __syscall(SYS_futex, addr, FUTEX_WAIT|priv, val, 0); - if (waiters) a_dec(waiters); - } -diff --git a/src/thread/arm/clone.s b/src/thread/arm/clone.s -index daf8f55..d146999 100644 ---- a/src/thread/arm/clone.s -+++ b/src/thread/arm/clone.s -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,%function --.type clone,%function - __clone: --clone: - stmfd sp!,{r4,r5,r6,r7} - mov r7,#120 - mov r6,r3 -diff --git a/src/thread/clone.c b/src/thread/clone.c -index 339e28a..be80c8e 100644 ---- a/src/thread/clone.c -+++ b/src/thread/clone.c -@@ -1,10 +1,7 @@ - #include --#include "libc.h" -+#include "pthread_impl.h" - - int __clone(int (*func)(void *), void *stack, int flags, void *arg, ...) - { -- errno = ENOSYS; -- return -1; -+ return -ENOSYS; - } -- --weak_alias(__clone, clone); -diff --git a/src/thread/i386/clone.s b/src/thread/i386/clone.s -index bebf01a..52fe7ef 100644 ---- a/src/thread/i386/clone.s -+++ b/src/thread/i386/clone.s -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - __clone: --clone: - push %ebp - mov %esp,%ebp - push %ebx -diff --git a/src/thread/microblaze/clone.s b/src/thread/microblaze/clone.s -index 030a9c3..13448a3 100644 ---- a/src/thread/microblaze/clone.s -+++ b/src/thread/microblaze/clone.s -@@ -1,14 +1,11 @@ - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - - # r5, r6, r7, r8, r9, r10, stack - # fn, st, fl, ar, pt, tl, ct - # fl, st, __, pt, ct, tl - - __clone: --clone: - andi r6, r6, -16 - addi r6, r6, -16 - swi r5, r6, 0 -@@ -23,7 +20,7 @@ clone: - beqi r3, 1f - rtsd r15, 8 - nop -- -+ - 1: lwi r3, r1, 0 - lwi r5, r1, 4 - brald r15, r3 -diff --git a/src/thread/x86_64/clone.s b/src/thread/x86_64/clone.s -index 4db081c..ee59903 100644 ---- a/src/thread/x86_64/clone.s -+++ b/src/thread/x86_64/clone.s -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - __clone: --clone: - xor %eax,%eax - mov $56,%al - mov %rdi,%r11 -diff --git a/src/time/timer_delete.c b/src/time/timer_delete.c -index c81f921..7c97eeb 100644 ---- a/src/time/timer_delete.c -+++ b/src/time/timer_delete.c -@@ -10,5 +10,5 @@ int timer_delete(timer_t t) - __wake(&td->timer_id, 1, 1); - return 0; - } -- return __syscall(SYS_timer_delete, (long)t); -+ return __syscall(SYS_timer_delete, t); - } -diff --git a/src/time/timer_getoverrun.c b/src/time/timer_getoverrun.c -index 5336128..e7f891e 100644 ---- a/src/time/timer_getoverrun.c -+++ b/src/time/timer_getoverrun.c -@@ -8,5 +8,5 @@ int timer_getoverrun(timer_t t) - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_getoverrun, (long)t); -+ return syscall(SYS_timer_getoverrun, t); - } -diff --git a/src/time/timer_gettime.c b/src/time/timer_gettime.c -index 1d90207..ed6d8d6 100644 ---- a/src/time/timer_gettime.c -+++ b/src/time/timer_gettime.c -@@ -8,5 +8,5 @@ int timer_gettime(timer_t t, struct itimerspec *val) - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_gettime, (long)t, val); -+ return syscall(SYS_timer_gettime, t, val); - } -diff --git a/src/time/timer_settime.c b/src/time/timer_settime.c -index f5f36fe..62631aa 100644 ---- a/src/time/timer_settime.c -+++ b/src/time/timer_settime.c -@@ -8,5 +8,5 @@ int timer_settime(timer_t t, int flags, const struct itimerspec *restrict val, s - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_settime, (long)t, flags, val, old); -+ return syscall(SYS_timer_settime, t, flags, val, old); - } -diff --git a/tools/install.sh b/tools/install.sh -index 4e5a8b9..d913b60 100755 ---- a/tools/install.sh -+++ b/tools/install.sh -@@ -51,6 +51,7 @@ if test "$symlink" ; then - ln -s "$1" "$tmp" - else - cat < "$1" > "$tmp" -+chmod "$mode" "$tmp" - fi - - mv -f "$tmp" "$2" -@@ -60,6 +61,4 @@ printf "%s: %s is a directory\n" "$0" "$dst" 1>&2 - exit 1 - } - --test "$symlink" || chmod "$mode" "$2" -- - exit 0 diff --git a/main/musl/0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch b/main/musl/0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch deleted file mode 100644 index c2ec46f1d..000000000 --- a/main/musl/0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch +++ /dev/null @@ -1,26 +0,0 @@ -From fdb3efa5ddfa7120de98f8ae78b5f5dc9e8e2e71 Mon Sep 17 00:00:00 2001 -From: Rich Felker -Date: Tue, 18 Feb 2014 11:04:15 -0500 -Subject: [PATCH] add flock64 alias for (struct) flock in fcntl.h - -this was a missing part of the LFS64 API; it's "needed" for use with -fcntl and the corresponding lock commands. ---- - include/fcntl.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/fcntl.h b/include/fcntl.h -index e01a4d1..2d8fa6e 100644 ---- a/include/fcntl.h -+++ b/include/fcntl.h -@@ -161,6 +161,7 @@ ssize_t tee(int, int, size_t, unsigned); - #define F_GETLK64 F_GETLK - #define F_SETLK64 F_SETLK - #define F_SETLKW64 F_SETLKW -+#define flock64 flock - #define open64 open - #define openat64 openat - #define creat64 creat --- -1.8.5.4 - diff --git a/main/musl/APKBUILD b/main/musl/APKBUILD index 1518990bc..5f072885b 100644 --- a/main/musl/APKBUILD +++ b/main/musl/APKBUILD @@ -1,8 +1,8 @@ # Contributor: William Pitcock # Maintainer: Timo Teräs pkgname=musl -pkgver=0.9.15 -pkgrel=4 +pkgver=1.0.0 +pkgrel=0 pkgdesc="the musl c library (libc) implementation" url="http://www.musl-libc.org/" arch="all" @@ -14,8 +14,6 @@ install="" subpackages="$pkgname-dev $pkgname-utils" [ "${CTARGET#*musl}" = "$CTARGET" ] && subpackages="$subpackages musl-gcc:crosstool" source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz - 0001-git-0.9.15-to-3e02ce1b411.patch - 0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch 1001-add-basic-dns-record-parsing-functions.patch 1002-fix-confstr-return-value.patch 2001-workaround-gcc-pr58245.patch @@ -114,9 +112,7 @@ crosstool() { find "$pkgdir" -type d -delete 2>/dev/null } -md5sums="06f590a38c85722ee9343db2416425f4 musl-0.9.15.tar.gz -06ec0e41d9b426acbd47869038ba0588 0001-git-0.9.15-to-3e02ce1b411.patch -2275f7138a7dc6869122cc68f7f7c710 0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch +md5sums="e54664fdf211d27737e328c4462b545e musl-1.0.0.tar.gz a3810683ef61ac27e2f6ec9801280c81 1001-add-basic-dns-record-parsing-functions.patch 499bced87843940199898d1508ef58df 1002-fix-confstr-return-value.patch 7a09c5cd7b3e9532e6902f54a5e928bb 2001-workaround-gcc-pr58245.patch @@ -125,9 +121,7 @@ a3810683ef61ac27e2f6ec9801280c81 1001-add-basic-dns-record-parsing-functions.pa 7b391300396e58fe9073866b5a80cfe8 getconf.c ef81489a6258501cf45db58dfc6d5211 getent 33e4fd94e2560e008e2c3b431d0e3419 ldconfig" -sha256sums="4a7baab8f295511196dee48d33b8b82a159a81233facb89433707c792033cbe7 musl-0.9.15.tar.gz -8c03e089985384e2fc2765db3b7c09c91bce1144f5ebf2456ce8ca642104e4b0 0001-git-0.9.15-to-3e02ce1b411.patch -d2146fcf11b2bf7b55b02dccadf4539fdf5b300777bfca6dc98a8188e9c6b1e2 0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch +sha256sums="1ad7f45d2972daff19c9e6a92714e6d70f4aad003cd8c3d1e6113432114c1a32 musl-1.0.0.tar.gz 758390768b1bc4159d56908ca332b9640cd0552ed3b4b2b8d4a6d499c54c11a1 1001-add-basic-dns-record-parsing-functions.patch dba7e5155efab40829ec0202f1135942004e8e79cff287cbb455355a0d67705f 1002-fix-confstr-return-value.patch 45d6efda7450809e4e68f6e951431dcadf6cb7f0260930d50a9f1a8667aca49f 2001-workaround-gcc-pr58245.patch @@ -136,9 +130,7 @@ d9b644ec20bc33e81a7c52b9fcf7973d835923a69faf50f03db45534b811bd96 getopt_long.c 530ea449f93d53fafcb377fa0a23a7564f2961e49c07a8fdef6c960110317301 getconf.c d6996273f5aaaed429058257e4646b243d9e3a4d8609522f802762453f5be4cb getent 306c6ca7407560340797866e077e053627ad409277d1b9da58106fce4cf717cb ldconfig" -sha512sums="2c5f3e742cf29fd76db8079b6012b1b359eda635593995ea8add008abc9744f0ca504e915f7828692aeafc3bddc66e0716492182cd5696e2fa24d9a2289601b8 musl-0.9.15.tar.gz -b721a91b5ff520b5406ecf43f033a82dc71686ccf2d025293b6457d6e77f3a6619fefeb3f3af620d8297b79f820d2bb7c94ca5695b0a284e19305bd4e54c8bed 0001-git-0.9.15-to-3e02ce1b411.patch -4167de98c13661c0be2eb83bd36f123f0ab52744dae6bdeb41f793021b0fd8a001280bddba3411093a5c17067261679bb0e9c6c2e9fef8c537c6f0f91627266d 0002-add-flock64-alias-for-struct-flock-in-fcntl.h.patch +sha512sums="c76cbfe60cbe9b1ceb1faedddf2dcce0f11c942c8f74e4f217efe63e8e1d7be70fcb6cf1182eeaee90441152c4493d678682cb247a0dbc7537d24f943a7bbdf8 musl-1.0.0.tar.gz dad965258daf69371b844f76bfe5a914b0eca0ca76f3fc340b8fd7acf598b5f87bbe6d68b1f43ed0293ee0ed3bfd85d5173ccc169aa6265646248d5b8a906708 1001-add-basic-dns-record-parsing-functions.patch d4c5f3c5a8ab3a9f1f63a22933bf4dcc67d6aff630066c9e3bb0edf9f46ab8b6e228ded906e4f82b7849d3b7e84ca25c9322bf5c5787fca10203482a38176700 1002-fix-confstr-return-value.patch 69ad3fc851b44f33dd7c98b83fd0adbd149b37263d17b989f4d7338ee0703dfe8994f4299744e2509492300227d652de6f21b6cdba9b633fcefd3d9f7ca0cf20 2001-workaround-gcc-pr58245.patch -- cgit v1.2.3