summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-03-19 08:54:59 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2014-03-19 08:54:59 +0100
commit97089cda799d75fc8515f4e9d78c92cb32432e0e (patch)
tree5139205e4baa1b98ab2aab9134fb1b08bccdfba9 /toolchain
parente9908f5a7a00fc48f7c9dddf7c234ba689b6d759 (diff)
parent95813e9c0009a0fff2e5e30a39e1ea45b061cbc0 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/Makefile8
-rw-r--r--toolchain/binutils/Makefile2
-rw-r--r--toolchain/gcc/Makefile41
-rw-r--r--toolchain/glibc/Makefile2
-rw-r--r--toolchain/gmp/Makefile5
-rw-r--r--toolchain/libelf/Makefile2
-rw-r--r--toolchain/mpc/Makefile4
-rw-r--r--toolchain/mpfr/Makefile2
-rw-r--r--toolchain/musl/patches/musl-git-20140318.patch (renamed from toolchain/musl/patches/musl-git-20140310.patch)812
-rw-r--r--toolchain/musl/patches/musl-x32.patch12
10 files changed, 578 insertions, 312 deletions
diff --git a/toolchain/Makefile b/toolchain/Makefile
index db5f65fd5..c70ea9820 100644
--- a/toolchain/Makefile
+++ b/toolchain/Makefile
@@ -53,17 +53,11 @@ else
$(LIBC)-fixup: gcc-install
endif
-$(STAGING_HOST_DIR):
- @mkdir -p $(STAGING_HOST_DIR)/lib
- @mkdir -p $(STAGING_HOST_DIR)/include
- @mkdir -p $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)
- @ln -sf ../lib $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib
-
%-download:
$(TRACE) toolchain/$(patsubst %-download,%,$@)/download
$(MAKE) -C $(patsubst %-download,%,$@) fetch
-%-prepare: $(STAGING_HOST_DIR)
+%-prepare:
$(TRACE) toolchain/$(patsubst %-prepare,%,$@)/prepare
@if test x"$(patsubst %-prepare,%,$@)" = x"$(LIBC)"; then \
$(MAKE) -C $(patsubst %-prepare,%,$@) prepare \
diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile
index fc256c578..6a01f1c9a 100644
--- a/toolchain/binutils/Makefile
+++ b/toolchain/binutils/Makefile
@@ -34,7 +34,7 @@ $(WRKBUILD)/.headers:
$(WRKBUILD)/.configured:
(cd $(WRKBUILD); \
$(WRKBUILD)/configure \
- --prefix=$(STAGING_HOST_DIR) \
+ --prefix=$(TOOLCHAIN_DIR)/usr \
--target=$(GNU_TARGET_NAME) \
--with-sysroot=$(STAGING_TARGET_DIR) \
--disable-dependency-tracking \
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 475c90662..98e150f7a 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -8,14 +8,14 @@ TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS))
include Makefile.inc
-GCC_CONFOPTS:= --prefix=$(STAGING_HOST_DIR) \
+GCC_CONFOPTS:= --prefix=$(TOOLCHAIN_DIR)/usr \
--with-bugurl="http://www.openadk.org/" \
--build=$(GNU_HOST_NAME) \
--host=$(GNU_HOST_NAME) \
--target=$(GNU_TARGET_NAME) \
- --with-gmp=$(STAGING_HOST_DIR) \
- --with-mpfr=$(STAGING_HOST_DIR) \
- --with-libelf=$(STAGING_HOST_DIR) \
+ --with-gmp=$(STAGING_HOST_DIR)/usr \
+ --with-mpfr=$(STAGING_HOST_DIR)/usr \
+ --with-libelf=$(STAGING_HOST_DIR)/usr \
--disable-__cxa_atexit \
--with-gnu-ld \
--with-gnu-as \
@@ -120,15 +120,17 @@ GCC_BUILD_DIR_FINAL:= $(WRKBUILD)-final
$(GCC_BUILD_DIR_MINIMAL)/.configured:
mkdir -p $(GCC_BUILD_DIR_MINIMAL)
# these symlinks are very important, do not remove
- rm -rf $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/sys-include
- ln -sf ${STAGING_TARGET_DIR}/usr/include $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/sys-include
- rm -rf ${STAGING_HOST_DIR}/$(GNU_TARGET_NAME)/lib
- ln -sf ${STAGING_TARGET_DIR}/lib $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib
+ rm -rf $(TOOLCHAIN_DIR)/$(GNU_TARGET_NAME)/sys-include
+ ln -sf ${STAGING_TARGET_DIR}/usr/include \
+ $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/sys-include
+ rm -rf ${TOOLCHAIN_DIR}/usr/$(GNU_TARGET_NAME)/lib
+ ln -sf ${STAGING_TARGET_DIR}/lib $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/lib
ifeq ($(ADK_LINUX_SH),y)
(cd ${STAGING_TARGET_DIR}/ && ln -sf . m4 && ln -sf . m4-nofpu)
endif
- sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure
- cd $(GCC_BUILD_DIR_MINIMAL); PATH='$(TARGET_PATH)' \
+ $(SED) '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure
+ cd $(GCC_BUILD_DIR_MINIMAL); \
+ PATH='$(TARGET_PATH)' \
CFLAGS="-O0 -g0" \
CXXFLAGS="-O0 -g0" \
$(WRKBUILD)/configure \
@@ -151,7 +153,8 @@ $(WRKBUILD)/.headers: $(GCC_BUILD_DIR_MINIMAL)/.compiled
$(GCC_BUILD_DIR_INITIAL)/.configured:
mkdir -p $(GCC_BUILD_DIR_INITIAL)
- cd $(GCC_BUILD_DIR_INITIAL); PATH='$(TARGET_PATH)' \
+ cd $(GCC_BUILD_DIR_INITIAL); \
+ PATH='$(TARGET_PATH)' \
CFLAGS="-O0 -g0" \
CXXFLAGS="-O0 -g0" \
$(WRKBUILD)/configure \
@@ -174,7 +177,8 @@ $(WRKBUILD)/.configured: $(GCC_BUILD_DIR_INITIAL)/.compiled
$(GCC_BUILD_DIR_FINAL)/.configured:
mkdir -p $(GCC_BUILD_DIR_FINAL)
- cd $(GCC_BUILD_DIR_FINAL); PATH='$(TARGET_PATH)' \
+ cd $(GCC_BUILD_DIR_FINAL); \
+ PATH='$(TARGET_PATH)' \
$(WRKBUILD)/configure \
${GCC_CONFOPTS} \
${GCC_FINAL_CONFOPTS} \
@@ -192,19 +196,12 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
PATH='$(TARGET_PATH)' $(MAKE) -C $(GCC_BUILD_DIR_FINAL) install
# remove duplicate tools, convert hardlinks to symlinks
set -e; \
- cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/bin; \
+ cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/bin; \
for app in ar as c++ g++ gcc ld ld.bfd nm objcopy objdump ranlib strip; do \
ln -sf ../../bin/$(GNU_TARGET_NAME)-$${app} $${app}; \
done;
- (cd $(STAGING_HOST_DIR)/bin && \
+ (cd $(TOOLCHAIN_DIR)/usr/bin && \
ln -sf $(GNU_TARGET_NAME)-gcc $(GNU_TARGET_NAME)-gcc-${PKG_VERSION})
- # setup symlink, so that gcc/g++ find cc1plus
- (cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/ && \
- ln -sf ../libexec .)
- # setup symlink, so that gcc/g++ find stddef.h
- (cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib/ && \
- ln -sf ../../host_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_SUFFIX}/lib/gcc .)
- # fix linking g++ apps with libtool
@-test -d $(STAGING_TARGET_DIR)/lib32 && \
cd $(STAGING_TARGET_DIR)/lib32 && \
ln -sf libstdc++.so.6.0.18 libstdc++.so && \
@@ -218,7 +215,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
ln -sf libstdc++.so.6.0.18 libstdc++.so && \
ln -sf libstdc++.so.6.0.18 libstdc++.so.6
# cleanup unneeded docs
- rm -rf $(STAGING_HOST_DIR)/share
+ rm -rf $(TOOLCHAIN_DIR)/usr/share
touch $@
include ${TOPDIR}/mk/toolchain.mk
diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile
index 4af17c3d7..996f9dd87 100644
--- a/toolchain/glibc/Makefile
+++ b/toolchain/glibc/Makefile
@@ -76,7 +76,7 @@ $(WRKBUILD)/.fixup:
ifeq ($(ADK_TOOLCHAIN),y)
# strip target libs and host tools for toolchain builds
PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_TARGET_DIR)
- debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_HOST_DIR)/bin $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/
+ debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(TOOLCHAIN_DIR)/usr
endif
touch $@
diff --git a/toolchain/gmp/Makefile b/toolchain/gmp/Makefile
index 692216b97..3e6e6c626 100644
--- a/toolchain/gmp/Makefile
+++ b/toolchain/gmp/Makefile
@@ -15,9 +15,10 @@ $(WRKBUILD)/.configured:
ifneq ($(OStype),Darwin)
(cd $(WRKBUILD); cp configfsf.guess config.guess)
endif
- (cd $(WRKBUILD); PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" \
+ (cd $(WRKBUILD); \
+ PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" \
./configure \
- --prefix=$(STAGING_HOST_DIR) \
+ --prefix=$(STAGING_HOST_DIR)/usr \
--with-pic \
--disable-shared \
--enable-static \
diff --git a/toolchain/libelf/Makefile b/toolchain/libelf/Makefile
index c243cdd00..90bf4cb8d 100644
--- a/toolchain/libelf/Makefile
+++ b/toolchain/libelf/Makefile
@@ -14,7 +14,7 @@ $(WRKBUILD)/.headers:
$(WRKBUILD)/.configured:
(cd $(WRKBUILD); \
$(WRKBUILD)/configure \
- --prefix=$(STAGING_HOST_DIR) \
+ --prefix=$(STAGING_HOST_DIR)/usr \
--disable-nls \
--disable-shared \
--enable-static \
diff --git a/toolchain/mpc/Makefile b/toolchain/mpc/Makefile
index 81f5b151d..40e7f615e 100644
--- a/toolchain/mpc/Makefile
+++ b/toolchain/mpc/Makefile
@@ -14,8 +14,8 @@ $(WRKBUILD)/.headers:
$(WRKBUILD)/.configured:
(cd $(WRKBUILD); \
$(WRKBUILD)/configure \
- --prefix=$(STAGING_HOST_DIR) \
- --with-gmp=$(STAGING_HOST_DIR) \
+ --prefix=$(STAGING_HOST_DIR)/usr \
+ --with-gmp=$(STAGING_HOST_DIR)/usr \
--disable-shared \
--enable-static \
);
diff --git a/toolchain/mpfr/Makefile b/toolchain/mpfr/Makefile
index 019d14d77..954040b85 100644
--- a/toolchain/mpfr/Makefile
+++ b/toolchain/mpfr/Makefile
@@ -15,7 +15,7 @@ $(WRKBUILD)/.headers:
$(WRKBUILD)/.configured:
(cd $(WRKBUILD); \
$(WRKBUILD)/configure \
- --prefix=$(STAGING_HOST_DIR) \
+ --prefix=$(STAGING_HOST_DIR)/usr \
--with-gmp-build=$(GMP_BUILD_DIR) \
--disable-shared \
--enable-static \
diff --git a/toolchain/musl/patches/musl-git-20140310.patch b/toolchain/musl/patches/musl-git-20140318.patch
index 29b58b843..6b4a797f2 100644
--- a/toolchain/musl/patches/musl-git-20140310.patch
+++ b/toolchain/musl/patches/musl-git-20140318.patch
@@ -1,6 +1,26 @@
+diff -Nur musl-0.9.15/arch/arm/bits/sem.h musl-git/arch/arm/bits/sem.h
+--- musl-0.9.15/arch/arm/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/arm/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,16 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ time_t sem_otime;
++ time_t __unused1;
++ time_t sem_ctime;
++ time_t __unused2;
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++ unsigned short sem_nsems;
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++#else
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++ unsigned short sem_nsems;
++#endif
++ time_t __unused3;
++ time_t __unused4;
++};
diff -Nur musl-0.9.15/arch/arm/bits/shm.h musl-git/arch/arm/bits/shm.h
--- musl-0.9.15/arch/arm/bits/shm.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/arm/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/arm/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
@@ -16,3 +16,14 @@
unsigned long __pad1;
unsigned long __pad2;
@@ -18,7 +38,7 @@ diff -Nur musl-0.9.15/arch/arm/bits/shm.h musl-git/arch/arm/bits/shm.h
+
diff -Nur musl-0.9.15/arch/arm/bits/termios.h musl-git/arch/arm/bits/termios.h
--- musl-0.9.15/arch/arm/bits/termios.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/arm/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/arm/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -42,6 +42,7 @@
#define IXANY 0004000
#define IXOFF 0010000
@@ -74,7 +94,7 @@ diff -Nur musl-0.9.15/arch/arm/bits/termios.h musl-git/arch/arm/bits/termios.h
+#endif
diff -Nur musl-0.9.15/arch/arm/syscall_arch.h musl-git/arch/arm/syscall_arch.h
--- musl-0.9.15/arch/arm/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/arm/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/arm/syscall_arch.h 2014-03-17 16:49:44.000000000 +0100
@@ -3,6 +3,8 @@
((union { long long ll; long l[2]; }){ .ll = x }).l[1]
#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
@@ -84,9 +104,29 @@ diff -Nur musl-0.9.15/arch/arm/syscall_arch.h musl-git/arch/arm/syscall_arch.h
#ifndef __clang__
#define __asm_syscall(...) do { \
+diff -Nur musl-0.9.15/arch/i386/bits/sem.h musl-git/arch/i386/bits/sem.h
+--- musl-0.9.15/arch/i386/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/i386/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,16 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ time_t sem_otime;
++ time_t __unused1;
++ time_t sem_ctime;
++ time_t __unused2;
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++ unsigned short sem_nsems;
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++#else
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++ unsigned short sem_nsems;
++#endif
++ time_t __unused3;
++ time_t __unused4;
++};
diff -Nur musl-0.9.15/arch/i386/bits/shm.h musl-git/arch/i386/bits/shm.h
--- musl-0.9.15/arch/i386/bits/shm.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/i386/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/i386/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
@@ -16,3 +16,14 @@
unsigned long __pad1;
unsigned long __pad2;
@@ -104,7 +144,7 @@ diff -Nur musl-0.9.15/arch/i386/bits/shm.h musl-git/arch/i386/bits/shm.h
+
diff -Nur musl-0.9.15/arch/i386/bits/termios.h musl-git/arch/i386/bits/termios.h
--- musl-0.9.15/arch/i386/bits/termios.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/i386/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/i386/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -42,6 +42,7 @@
#define IXANY 0004000
#define IXOFF 0010000
@@ -158,9 +198,29 @@ diff -Nur musl-0.9.15/arch/i386/bits/termios.h musl-git/arch/i386/bits/termios.h
+#define EXTPROC 0200000
+#define XTABS 0014000
+#endif
+diff -Nur musl-0.9.15/arch/microblaze/bits/sem.h musl-git/arch/microblaze/bits/sem.h
+--- musl-0.9.15/arch/microblaze/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/microblaze/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,16 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ time_t sem_otime;
++ time_t __unused1;
++ time_t sem_ctime;
++ time_t __unused2;
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++ unsigned short sem_nsems;
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++#else
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++ unsigned short sem_nsems;
++#endif
++ time_t __unused3;
++ time_t __unused4;
++};
diff -Nur musl-0.9.15/arch/microblaze/bits/shm.h musl-git/arch/microblaze/bits/shm.h
--- musl-0.9.15/arch/microblaze/bits/shm.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/microblaze/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/microblaze/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
@@ -16,3 +16,14 @@
unsigned long __pad1;
unsigned long __pad2;
@@ -178,7 +238,7 @@ diff -Nur musl-0.9.15/arch/microblaze/bits/shm.h musl-git/arch/microblaze/bits/s
+
diff -Nur musl-0.9.15/arch/microblaze/bits/termios.h musl-git/arch/microblaze/bits/termios.h
--- musl-0.9.15/arch/microblaze/bits/termios.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/microblaze/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/microblaze/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -42,6 +42,7 @@
#define IXANY 0004000
#define IXOFF 0010000
@@ -234,7 +294,7 @@ diff -Nur musl-0.9.15/arch/microblaze/bits/termios.h musl-git/arch/microblaze/bi
+#endif
diff -Nur musl-0.9.15/arch/microblaze/syscall_arch.h musl-git/arch/microblaze/syscall_arch.h
--- musl-0.9.15/arch/microblaze/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/microblaze/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/microblaze/syscall_arch.h 2014-03-17 16:49:44.000000000 +0100
@@ -3,6 +3,8 @@
((union { long long ll; long l[2]; }){ .ll = x }).l[1]
#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
@@ -246,7 +306,7 @@ diff -Nur musl-0.9.15/arch/microblaze/syscall_arch.h musl-git/arch/microblaze/sy
static __inline long __syscall0(long n)
diff -Nur musl-0.9.15/arch/mips/bits/fenv.h musl-git/arch/mips/bits/fenv.h
--- musl-0.9.15/arch/mips/bits/fenv.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/mips/bits/fenv.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/mips/bits/fenv.h 2014-03-17 16:49:44.000000000 +0100
@@ -1,3 +1,7 @@
+#ifdef __mips_soft_float
+#define FE_ALL_EXCEPT 0
@@ -263,9 +323,27 @@ diff -Nur musl-0.9.15/arch/mips/bits/fenv.h musl-git/arch/mips/bits/fenv.h
typedef unsigned short fexcept_t;
+diff -Nur musl-0.9.15/arch/mips/bits/sem.h musl-git/arch/mips/bits/sem.h
+--- musl-0.9.15/arch/mips/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/mips/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,14 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ time_t sem_otime;
++ time_t sem_ctime;
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++ unsigned short sem_nsems;
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++#else
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++ unsigned short sem_nsems;
++#endif
++ time_t __unused3;
++ time_t __unused4;
++};
diff -Nur musl-0.9.15/arch/mips/bits/shm.h musl-git/arch/mips/bits/shm.h
--- musl-0.9.15/arch/mips/bits/shm.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/mips/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/mips/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
@@ -13,3 +13,14 @@
unsigned long __pad1;
unsigned long __pad2;
@@ -281,9 +359,24 @@ diff -Nur musl-0.9.15/arch/mips/bits/shm.h musl-git/arch/mips/bits/shm.h
+ unsigned long __swap_attempts, __swap_successes;
+};
+
+diff -Nur musl-0.9.15/arch/mips/bits/statfs.h musl-git/arch/mips/bits/statfs.h
+--- musl-0.9.15/arch/mips/bits/statfs.h 2014-01-03 21:12:17.000000000 +0100
++++ musl-git/arch/mips/bits/statfs.h 2014-03-17 16:49:44.000000000 +0100
+@@ -1,7 +1,8 @@
+ struct statfs {
+- unsigned long f_type, f_bsize;
+- fsblkcnt_t f_blocks, f_bfree, f_bavail;
++ unsigned long f_type, f_bsize, f_frsize;
++ fsblkcnt_t f_blocks, f_bfree;
+ fsfilcnt_t f_files, f_ffree;
++ fsblkcnt_t f_bavail;
+ fsid_t f_fsid;
+- unsigned long f_namelen, f_frsize, f_flags, f_spare[4];
++ unsigned long f_namelen, f_flags, f_spare[5];
+ };
diff -Nur musl-0.9.15/arch/mips/bits/termios.h musl-git/arch/mips/bits/termios.h
--- musl-0.9.15/arch/mips/bits/termios.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/mips/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/mips/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -77,9 +77,6 @@
#define VT0 0000000
#define VT1 0040000
@@ -334,7 +427,7 @@ diff -Nur musl-0.9.15/arch/mips/bits/termios.h musl-git/arch/mips/bits/termios.h
+#endif
diff -Nur musl-0.9.15/arch/mips/reloc.h musl-git/arch/mips/reloc.h
--- musl-0.9.15/arch/mips/reloc.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/mips/reloc.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/mips/reloc.h 2014-03-17 16:49:44.000000000 +0100
@@ -8,7 +8,13 @@
#define ENDIAN_SUFFIX ""
#endif
@@ -352,7 +445,7 @@ diff -Nur musl-0.9.15/arch/mips/reloc.h musl-git/arch/mips/reloc.h
#define IS_PLT(x) 1
diff -Nur musl-0.9.15/arch/mips/syscall_arch.h musl-git/arch/mips/syscall_arch.h
--- musl-0.9.15/arch/mips/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/mips/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/mips/syscall_arch.h 2014-03-17 16:49:44.000000000 +0100
@@ -3,6 +3,8 @@
((union { long long ll; long l[2]; }){ .ll = x }).l[1]
#define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x))
@@ -362,10 +455,76 @@ diff -Nur musl-0.9.15/arch/mips/syscall_arch.h musl-git/arch/mips/syscall_arch.h
#ifndef __clang__
#define __asm_syscall(...) do { \
+diff -Nur musl-0.9.15/arch/powerpc/bits/ipc.h musl-git/arch/powerpc/bits/ipc.h
+--- musl-0.9.15/arch/powerpc/bits/ipc.h 2014-01-03 21:12:17.000000000 +0100
++++ musl-git/arch/powerpc/bits/ipc.h 2014-03-17 16:49:44.000000000 +0100
+@@ -7,8 +7,9 @@
+ gid_t cgid;
+ mode_t mode;
+ int __ipc_perm_seq;
+- long __pad1;
+- long __pad2;
++ int __pad1;
++ long long __pad2;
++ long long __pad3;
+ };
+
+ #define IPC_64 0x100
+diff -Nur musl-0.9.15/arch/powerpc/bits/msg.h musl-git/arch/powerpc/bits/msg.h
+--- musl-0.9.15/arch/powerpc/bits/msg.h 2014-01-03 21:12:17.000000000 +0100
++++ musl-git/arch/powerpc/bits/msg.h 2014-03-17 16:49:44.000000000 +0100
+@@ -1,12 +1,12 @@
+ struct msqid_ds
+ {
+ struct ipc_perm msg_perm;
+- time_t msg_stime;
+ int __unused1;
+- time_t msg_rtime;
++ time_t msg_stime;
+ int __unused2;
+- time_t msg_ctime;
++ time_t msg_rtime;
+ int __unused3;
++ time_t msg_ctime;
+ unsigned long msg_cbytes;
+ msgqnum_t msg_qnum;
+ msglen_t msg_qbytes;
+diff -Nur musl-0.9.15/arch/powerpc/bits/sem.h musl-git/arch/powerpc/bits/sem.h
+--- musl-0.9.15/arch/powerpc/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/powerpc/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,10 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ int __unused1;
++ time_t sem_otime;
++ int __unused2;
++ time_t sem_ctime;
++ unsigned short __sem_nsems_pad, sem_nsems;
++ long __unused3;
++ long __unused4;
++};
diff -Nur musl-0.9.15/arch/powerpc/bits/shm.h musl-git/arch/powerpc/bits/shm.h
--- musl-0.9.15/arch/powerpc/bits/shm.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/powerpc/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
-@@ -16,3 +16,14 @@
++++ musl-git/arch/powerpc/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
+@@ -3,16 +3,28 @@
+ struct shmid_ds
+ {
+ struct ipc_perm shm_perm;
+- size_t shm_segsz;
+- time_t shm_atime;
+ int __unused1;
+- time_t shm_dtime;
++ time_t shm_atime;
+ int __unused2;
+- time_t shm_ctime;
++ time_t shm_dtime;
+ int __unused3;
++ time_t shm_ctime;
++ int __unused4;
++ size_t shm_segsz;
+ pid_t shm_cpid;
+ pid_t shm_lpid;
+ unsigned long shm_nattch;
unsigned long __pad1;
unsigned long __pad2;
};
@@ -380,9 +539,29 @@ diff -Nur musl-0.9.15/arch/powerpc/bits/shm.h musl-git/arch/powerpc/bits/shm.h
+ unsigned long __swap_attempts, __swap_successes;
+};
+
+diff -Nur musl-0.9.15/arch/powerpc/bits/socket.h musl-git/arch/powerpc/bits/socket.h
+--- musl-0.9.15/arch/powerpc/bits/socket.h 2014-01-03 21:12:17.000000000 +0100
++++ musl-git/arch/powerpc/bits/socket.h 2014-03-17 16:49:44.000000000 +0100
+@@ -1,12 +1,12 @@
+ struct msghdr
+ {
+ void *msg_name;
+- int msg_namelen;
++ socklen_t msg_namelen;
+ struct iovec *msg_iov;
+- unsigned long msg_iovlen;
++ int msg_iovlen;
+ void *msg_control;
+- unsigned long msg_controllen;
+- unsigned msg_flags;
++ socklen_t msg_controllen;
++ int msg_flags;
+ };
+
+ struct cmsghdr
diff -Nur musl-0.9.15/arch/powerpc/bits/termios.h musl-git/arch/powerpc/bits/termios.h
--- musl-0.9.15/arch/powerpc/bits/termios.h 2014-01-03 21:12:17.000000000 +0100
-+++ musl-git/arch/powerpc/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/powerpc/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -66,7 +66,6 @@
#define TAB1 00002000
#define TAB2 00004000
@@ -442,7 +621,7 @@ diff -Nur musl-0.9.15/arch/powerpc/bits/termios.h musl-git/arch/powerpc/bits/ter
+#endif
diff -Nur musl-0.9.15/arch/sh/atomic.h musl-git/arch/sh/atomic.h
--- musl-0.9.15/arch/sh/atomic.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/atomic.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/atomic.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,87 @@
+#ifndef _INTERNAL_ATOMIC_H
+#define _INTERNAL_ATOMIC_H
@@ -533,7 +712,7 @@ diff -Nur musl-0.9.15/arch/sh/atomic.h musl-git/arch/sh/atomic.h
+#endif
diff -Nur musl-0.9.15/arch/sh/bits/alltypes.h.in musl-git/arch/sh/bits/alltypes.h.in
--- musl-0.9.15/arch/sh/bits/alltypes.h.in 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/alltypes.h.in 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/alltypes.h.in 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,23 @@
+#define _Addr int
+#define _Int64 long long
@@ -560,7 +739,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/alltypes.h.in musl-git/arch/sh/bits/alltypes.
+TYPEDEF struct { union { int __i[5]; void *__p[5]; } __u; } pthread_barrier_t;
diff -Nur musl-0.9.15/arch/sh/bits/endian.h musl-git/arch/sh/bits/endian.h
--- musl-0.9.15/arch/sh/bits/endian.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/endian.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/endian.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,5 @@
+#if __BIG_ENDIAN__
+#define __BYTE_ORDER __BIG_ENDIAN
@@ -569,7 +748,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/endian.h musl-git/arch/sh/bits/endian.h
+#endif
diff -Nur musl-0.9.15/arch/sh/bits/errno.h musl-git/arch/sh/bits/errno.h
--- musl-0.9.15/arch/sh/bits/errno.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/errno.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/errno.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,134 @@
+#define EPERM 1
+#define ENOENT 2
@@ -707,7 +886,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/errno.h musl-git/arch/sh/bits/errno.h
+#define EHWPOISON 133
diff -Nur musl-0.9.15/arch/sh/bits/fcntl.h musl-git/arch/sh/bits/fcntl.h
--- musl-0.9.15/arch/sh/bits/fcntl.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/fcntl.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/fcntl.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,39 @@
+#define O_CREAT 0100
+#define O_EXCL 0200
@@ -750,7 +929,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/fcntl.h musl-git/arch/sh/bits/fcntl.h
+#define F_GETOWNER_UIDS 17
diff -Nur musl-0.9.15/arch/sh/bits/fenv.h musl-git/arch/sh/bits/fenv.h
--- musl-0.9.15/arch/sh/bits/fenv.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/fenv.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/fenv.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,26 @@
+#ifndef __SH_FPU_ANY__
+
@@ -780,7 +959,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/fenv.h musl-git/arch/sh/bits/fenv.h
+#define FE_DFL_ENV ((const fenv_t *) -1)
diff -Nur musl-0.9.15/arch/sh/bits/float.h musl-git/arch/sh/bits/float.h
--- musl-0.9.15/arch/sh/bits/float.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/float.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/float.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,17 @@
+#define FLT_ROUNDS 1
+#define FLT_EVAL_METHOD 0
@@ -801,7 +980,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/float.h musl-git/arch/sh/bits/float.h
+#define DECIMAL_DIG 17
diff -Nur musl-0.9.15/arch/sh/bits/ioctl.h musl-git/arch/sh/bits/ioctl.h
--- musl-0.9.15/arch/sh/bits/ioctl.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/ioctl.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/ioctl.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,205 @@
+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )
+#define _IOC_NONE 0U
@@ -1010,7 +1189,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/ioctl.h musl-git/arch/sh/bits/ioctl.h
+#define SIOCPROTOPRIVATE 0x89E0
diff -Nur musl-0.9.15/arch/sh/bits/ipc.h musl-git/arch/sh/bits/ipc.h
--- musl-0.9.15/arch/sh/bits/ipc.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/ipc.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/ipc.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,14 @@
+struct ipc_perm
+{
@@ -1028,7 +1207,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/ipc.h musl-git/arch/sh/bits/ipc.h
+#define IPC_64 0x100
diff -Nur musl-0.9.15/arch/sh/bits/limits.h musl-git/arch/sh/bits/limits.h
--- musl-0.9.15/arch/sh/bits/limits.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/limits.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/limits.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,8 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
@@ -1040,7 +1219,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/limits.h musl-git/arch/sh/bits/limits.h
+#define LLONG_MAX 0x7fffffffffffffffLL
diff -Nur musl-0.9.15/arch/sh/bits/mman.h musl-git/arch/sh/bits/mman.h
--- musl-0.9.15/arch/sh/bits/mman.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/mman.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/mman.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,62 @@
+#define MAP_FAILED ((void *) -1)
+
@@ -1106,7 +1285,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/mman.h musl-git/arch/sh/bits/mman.h
+#endif
diff -Nur musl-0.9.15/arch/sh/bits/msg.h musl-git/arch/sh/bits/msg.h
--- musl-0.9.15/arch/sh/bits/msg.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/msg.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/msg.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,16 @@
+struct msqid_ds
+{
@@ -1126,18 +1305,38 @@ diff -Nur musl-0.9.15/arch/sh/bits/msg.h musl-git/arch/sh/bits/msg.h
+};
diff -Nur musl-0.9.15/arch/sh/bits/posix.h musl-git/arch/sh/bits/posix.h
--- musl-0.9.15/arch/sh/bits/posix.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/posix.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/posix.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,2 @@
+#define _POSIX_V6_ILP32_OFFBIG 1
+#define _POSIX_V7_ILP32_OFFBIG 1
+diff -Nur musl-0.9.15/arch/sh/bits/sem.h musl-git/arch/sh/bits/sem.h
+--- musl-0.9.15/arch/sh/bits/sem.h 1970-01-01 01:00:00.000000000 +0100
++++ musl-git/arch/sh/bits/sem.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,16 @@
++struct semid_ds {
++ struct ipc_perm sem_perm;
++ time_t sem_otime;
++ time_t __unused1;
++ time_t sem_ctime;
++ time_t __unused2;
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++ unsigned short sem_nsems;
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++#else
++ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)];
++ unsigned short sem_nsems;
++#endif
++ time_t __unused3;
++ time_t __unused4;
++};
diff -Nur musl-0.9.15/arch/sh/bits/setjmp.h musl-git/arch/sh/bits/setjmp.h
--- musl-0.9.15/arch/sh/bits/setjmp.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/setjmp.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/setjmp.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1 @@
+typedef unsigned long __jmp_buf[13];
diff -Nur musl-0.9.15/arch/sh/bits/shm.h musl-git/arch/sh/bits/shm.h
--- musl-0.9.15/arch/sh/bits/shm.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/shm.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/shm.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,28 @@
+#define SHMLBA 16384
+
@@ -1169,7 +1368,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/shm.h musl-git/arch/sh/bits/shm.h
+};
diff -Nur musl-0.9.15/arch/sh/bits/signal.h musl-git/arch/sh/bits/signal.h
--- musl-0.9.15/arch/sh/bits/signal.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/signal.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/signal.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,76 @@
+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
@@ -1249,7 +1448,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/signal.h musl-git/arch/sh/bits/signal.h
+#define _NSIG 65
diff -Nur musl-0.9.15/arch/sh/bits/socket.h musl-git/arch/sh/bits/socket.h
--- musl-0.9.15/arch/sh/bits/socket.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/socket.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/socket.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,17 @@
+struct msghdr
+{
@@ -1270,7 +1469,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/socket.h musl-git/arch/sh/bits/socket.h
+};
diff -Nur musl-0.9.15/arch/sh/bits/statfs.h musl-git/arch/sh/bits/statfs.h
--- musl-0.9.15/arch/sh/bits/statfs.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/statfs.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/statfs.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,7 @@
+struct statfs {
+ unsigned long f_type, f_bsize;
@@ -1281,7 +1480,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/statfs.h musl-git/arch/sh/bits/statfs.h
+};
diff -Nur musl-0.9.15/arch/sh/bits/stat.h musl-git/arch/sh/bits/stat.h
--- musl-0.9.15/arch/sh/bits/stat.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/stat.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/stat.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,22 @@
+/* copied from kernel definition, but with padding replaced
+ * by the corresponding correctly-sized userspace types. */
@@ -1307,7 +1506,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/stat.h musl-git/arch/sh/bits/stat.h
+};
diff -Nur musl-0.9.15/arch/sh/bits/stdarg.h musl-git/arch/sh/bits/stdarg.h
--- musl-0.9.15/arch/sh/bits/stdarg.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/stdarg.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/stdarg.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,4 @@
+#define va_start(v,l) __builtin_va_start(v,l)
+#define va_end(v) __builtin_va_end(v)
@@ -1315,7 +1514,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/stdarg.h musl-git/arch/sh/bits/stdarg.h
+#define va_copy(d,s) __builtin_va_copy(d,s)
diff -Nur musl-0.9.15/arch/sh/bits/stdint.h musl-git/arch/sh/bits/stdint.h
--- musl-0.9.15/arch/sh/bits/stdint.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/stdint.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/stdint.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,20 @@
+typedef int32_t int_fast16_t;
+typedef int32_t int_fast32_t;
@@ -1339,7 +1538,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/stdint.h musl-git/arch/sh/bits/stdint.h
+#define SIZE_MAX UINT32_MAX
diff -Nur musl-0.9.15/arch/sh/bits/syscall.h musl-git/arch/sh/bits/syscall.h
--- musl-0.9.15/arch/sh/bits/syscall.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/syscall.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/syscall.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,684 @@
+#define __NR_restart_syscall 0
+#define __NR_exit 1
@@ -2027,7 +2226,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/syscall.h musl-git/arch/sh/bits/syscall.h
+#define SYS_finit_module 368
diff -Nur musl-0.9.15/arch/sh/bits/termios.h musl-git/arch/sh/bits/termios.h
--- musl-0.9.15/arch/sh/bits/termios.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/termios.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/termios.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,160 @@
+struct termios
+{
@@ -2191,7 +2390,7 @@ diff -Nur musl-0.9.15/arch/sh/bits/termios.h musl-git/arch/sh/bits/termios.h
+#endif
diff -Nur musl-0.9.15/arch/sh/bits/user.h musl-git/arch/sh/bits/user.h
--- musl-0.9.15/arch/sh/bits/user.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/bits/user.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/bits/user.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,75 @@
+#undef __WORDSIZE
+#define __WORDSIZE 32
@@ -2270,8 +2469,8 @@ diff -Nur musl-0.9.15/arch/sh/bits/user.h musl-git/arch/sh/bits/user.h
+};
diff -Nur musl-0.9.15/arch/sh/crt_arch.h musl-git/arch/sh/crt_arch.h
--- musl-0.9.15/arch/sh/crt_arch.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/crt_arch.h 2014-03-10 16:52:06.000000000 +0100
-@@ -0,0 +1,9 @@
++++ musl-git/arch/sh/crt_arch.h 2014-03-17 16:49:44.000000000 +0100
+@@ -0,0 +1,12 @@
+__asm__("\
+.global _start \n\
+_start: \n\
@@ -2281,9 +2480,12 @@ diff -Nur musl-0.9.15/arch/sh/crt_arch.h musl-git/arch/sh/crt_arch.h
+ bsr __cstart \n\
+ nop \n\
+");
++
++/* used by gcc for switching the FPU between single and double precision */
++const unsigned long __fpscr_values[2] = { 0, 0x80000 };
diff -Nur musl-0.9.15/arch/sh/pthread_arch.h musl-git/arch/sh/pthread_arch.h
--- musl-0.9.15/arch/sh/pthread_arch.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/pthread_arch.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/pthread_arch.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,11 @@
+static inline struct pthread *__pthread_self()
+{
@@ -2298,7 +2500,7 @@ diff -Nur musl-0.9.15/arch/sh/pthread_arch.h musl-git/arch/sh/pthread_arch.h
+#define CANCEL_REG_IP 17
diff -Nur musl-0.9.15/arch/sh/reloc.h musl-git/arch/sh/reloc.h
--- musl-0.9.15/arch/sh/reloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/reloc.h 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/reloc.h 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,47 @@
+#if __BYTE_ORDER == __BIG_ENDIAN
+#define ENDIAN_SUFFIX "eb"
@@ -2349,7 +2551,7 @@ diff -Nur musl-0.9.15/arch/sh/reloc.h musl-git/arch/sh/reloc.h
+}
diff -Nur musl-0.9.15/arch/sh/src/atomic.c musl-git/arch/sh/src/atomic.c
--- musl-0.9.15/arch/sh/src/atomic.c 1970-01-01 01:00:00.000000000 +0100
-+++ musl-git/arch/sh/src/atomic.c 2014-03-10 16:52:06.000000000 +0100
++++ musl-git/arch/sh/src/atomic.c 2014-03-17 16:49:44.000000000 +0100
@@ -0,0 +1,146 @@
+#include "libc.h"
+
@@ -2499,13 +2701,16 @@ diff -Nur musl-0.9.15/arch/sh/src/atomic.c musl-git/arch/sh/src/atomic.c
+}
diff -Nur musl-0.9.15/arch/sh/src/__fpsrc_values.c musl-git/arch/sh/src/__fpsrc_values.c
--- musl-0.9.15/arch/sh/src/__fpsrc_values.c 1970-01-01 01:00:00.000000000 +0100