From 00b5a145677ac890f694898a8d095ad10574abdb Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Thu, 4 Jul 2013 21:26:01 +0000 Subject: [PATCH] toolchain/musl: add version 0.9.11 Signed-off-by: Luka Perkov SVN-Revision: 37173 --- toolchain/musl/Config.in | 4 ++ toolchain/musl/Config.version | 10 +++- toolchain/musl/common.mk | 4 +- .../000-install_portability.patch | 27 +++++++++ .../patches-0.9.11/100-wchar_include.patch | 60 +++++++++++++++++++ .../120-in_h_are_4_equal_parenthesis.patch | 11 ++++ .../130-syslog_log_upto_parenthesis.patch | 11 ++++ 7 files changed, 122 insertions(+), 5 deletions(-) create mode 100644 toolchain/musl/patches-0.9.11/000-install_portability.patch create mode 100644 toolchain/musl/patches-0.9.11/100-wchar_include.patch create mode 100644 toolchain/musl/patches-0.9.11/120-in_h_are_4_equal_parenthesis.patch create mode 100644 toolchain/musl/patches-0.9.11/130-syslog_log_upto_parenthesis.patch diff --git a/toolchain/musl/Config.in b/toolchain/musl/Config.in index 36edf54e48..9853a4da4f 100644 --- a/toolchain/musl/Config.in +++ b/toolchain/musl/Config.in @@ -19,6 +19,10 @@ choice select MUSL_VERSION_0_9_10 bool "musl 0.9.10" + config MUSL_USE_VERSION_0_9_11 + select MUSL_VERSION_0_9_11 + bool "musl 0.9.11" + endchoice diff --git a/toolchain/musl/Config.version b/toolchain/musl/Config.version index 172111dc24..b936cb2804 100644 --- a/toolchain/musl/Config.version +++ b/toolchain/musl/Config.version @@ -3,9 +3,10 @@ if USE_MUSL config MUSL_VERSION string depends on USE_MUSL - default "0.9.8" if MUSL_VERSION_0_9_8 - default "0.9.9" if MUSL_VERSION_0_9_9 - default "0.9.10" if MUSL_VERSION_0_9_10 + default "0.9.8" if MUSL_VERSION_0_9_8 + default "0.9.9" if MUSL_VERSION_0_9_9 + default "0.9.10" if MUSL_VERSION_0_9_10 + default "0.9.11" if MUSL_VERSION_0_9_11 config MUSL_VERSION_0_9_8 default y if !TOOLCHAINOPTS @@ -17,4 +18,7 @@ config MUSL_VERSION_0_9_9 config MUSL_VERSION_0_9_10 bool +config MUSL_VERSION_0_9_11 + bool + endif diff --git a/toolchain/musl/common.mk b/toolchain/musl/common.mk index 75c050787f..4f8baec513 100644 --- a/toolchain/musl/common.mk +++ b/toolchain/musl/common.mk @@ -1,5 +1,5 @@ # -# Copyright (C) 2012 OpenWrt.org +# Copyright (C) 2012-2013 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -14,6 +14,7 @@ PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_VERSION_0.9.8:=e6dcebd5efa2d390f0a24dc11444024e9fd1990c PKG_SOURCE_VERSION_0.9.9:=a57ac9bf64ba202bd94d1b81bddd93b850c7b9d6 PKG_SOURCE_VERSION_0.9.10:=7bec92e793d4b8a349796848cf43c7329b0f2ed0 +PKG_SOURCE_VERSION_0.9.11:=6688a778b0419eab32e715f269319248edee9da5 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://git.musl-libc.org/musl @@ -60,7 +61,6 @@ define Host/Configure ); endef - define Host/Clean rm -rf \ $(HOST_BUILD_DIR) \ diff --git a/toolchain/musl/patches-0.9.11/000-install_portability.patch b/toolchain/musl/patches-0.9.11/000-install_portability.patch new file mode 100644 index 0000000000..43c43519d9 --- /dev/null +++ b/toolchain/musl/patches-0.9.11/000-install_portability.patch @@ -0,0 +1,27 @@ +--- a/Makefile ++++ b/Makefile +@@ -116,16 +116,20 @@ + chmod +x $@ + + $(DESTDIR)$(bindir)/%: tools/% +- install -D $< $@ ++ mkdir -p $(dir $@) ++ install $< $@ + + $(DESTDIR)$(libdir)/%.so: lib/%.so +- install -D -m 755 $< $@ ++ mkdir -p $(dir $@) ++ install -m 755 $< $@ + + $(DESTDIR)$(libdir)/%: lib/% +- install -D -m 644 $< $@ ++ mkdir -p $(dir $@) ++ install -m 644 $< $@ + + $(DESTDIR)$(includedir)/%: include/% +- install -D -m 644 $< $@ ++ mkdir -p $(dir $@) ++ install -m 644 $< $@ + + $(DESTDIR)$(LDSO_PATHNAME): $(DESTDIR)$(syslibdir) + ln -sf $(libdir)/libc.so $@ || true diff --git a/toolchain/musl/patches-0.9.11/100-wchar_include.patch b/toolchain/musl/patches-0.9.11/100-wchar_include.patch new file mode 100644 index 0000000000..5d78ced6a9 --- /dev/null +++ b/toolchain/musl/patches-0.9.11/100-wchar_include.patch @@ -0,0 +1,60 @@ +--- a/arch/arm/bits/alltypes.h.sh ++++ b/arch/arm/bits/alltypes.h.sh +@@ -22,6 +22,7 @@ + + TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + TYPEDEF unsigned wchar_t; +--- a/arch/i386/bits/alltypes.h.sh ++++ b/arch/i386/bits/alltypes.h.sh +@@ -27,6 +27,7 @@ + TYPEDEF struct __va_list * va_list; + TYPEDEF struct __va_list * __isoc_va_list; + #endif ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + #ifdef __WCHAR_TYPE__ +--- a/arch/microblaze/bits/alltypes.h.sh ++++ b/arch/microblaze/bits/alltypes.h.sh +@@ -22,6 +22,7 @@ + + TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + TYPEDEF int wchar_t; +--- a/arch/mips/bits/alltypes.h.sh ++++ b/arch/mips/bits/alltypes.h.sh +@@ -22,6 +22,7 @@ + + TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + TYPEDEF int wchar_t; +--- a/arch/powerpc/bits/alltypes.h.sh ++++ b/arch/powerpc/bits/alltypes.h.sh +@@ -22,6 +22,7 @@ + + TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + TYPEDEF long wchar_t; +--- a/arch/x86_64/bits/alltypes.h.sh ++++ b/arch/x86_64/bits/alltypes.h.sh +@@ -21,6 +21,7 @@ + TYPEDEF long ptrdiff_t; + TYPEDEF __builtin_va_list va_list; + TYPEDEF __builtin_va_list __isoc_va_list; ++#define __gnuc_va_list va_list + + #ifndef __cplusplus + TYPEDEF int wchar_t; diff --git a/toolchain/musl/patches-0.9.11/120-in_h_are_4_equal_parenthesis.patch b/toolchain/musl/patches-0.9.11/120-in_h_are_4_equal_parenthesis.patch new file mode 100644 index 0000000000..8b5dbd4426 --- /dev/null +++ b/toolchain/musl/patches-0.9.11/120-in_h_are_4_equal_parenthesis.patch @@ -0,0 +1,11 @@ +--- a/include/netinet/in.h ++++ b/include/netinet/in.h +@@ -146,7 +146,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)) + diff --git a/toolchain/musl/patches-0.9.11/130-syslog_log_upto_parenthesis.patch b/toolchain/musl/patches-0.9.11/130-syslog_log_upto_parenthesis.patch new file mode 100644 index 0000000000..840dd40132 --- /dev/null +++ b/toolchain/musl/patches-0.9.11/130-syslog_log_upto_parenthesis.patch @@ -0,0 +1,11 @@ +--- 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)