From 608f969e4d96cb1b2a361c2a3b6a32233a644e3b Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Fri, 14 Mar 2014 15:30:53 +0100 Subject: fix m68k support disable systems without thread local storage, not supported by OpenADK anymore. Remove m68k uclibc. fix kernel bootup in aranym. --- toolchain/gcc/Makefile | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'toolchain') diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index d7527442f..f93f9d7cf 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -19,6 +19,7 @@ GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \ --disable-__cxa_atexit \ --with-gnu-ld \ --with-gnu-as \ + --enable-tls \ --disable-libsanitizer \ --disable-libitm \ --disable-libmudflap \ @@ -64,16 +65,6 @@ else GCC_CONFOPTS+= --disable-lto endif -ifeq ($(ARCH),m68k) -ifeq ($(ADK_TARGET_LIBC),uclibc) -GCC_CONFOPTS+= --disable-tls -else -GCC_CONFOPTS+= --enable-tls -endif -else -GCC_CONFOPTS+= --enable-tls -endif - ifeq ($(ADK_LINUX_PPC),y) ifeq ($(ADK_TARGET_LIBC),uclibc) GCC_CONFOPTS+= --disable-target-optspace --with-long-double-128 --enable-secureplt -- cgit v1.2.3 From a1cb74821a3d4ccb708280ad1ed8297c67c4a54b Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sat, 15 Mar 2014 22:16:11 +0100 Subject: fix kernel build on Darwin for x86 targets relocs tool uses some kind of regular expression, which does not work with the provided one. Use pcre in this case. Rework KERNEL_MAKE_OPTS while here. Use it in kernel-header, too. --- toolchain/kernel-headers/Makefile | 6 ++--- .../kernel-headers/patches/3.13.6/relocs.patch | 30 +++++++++++++++++----- 2 files changed, 26 insertions(+), 10 deletions(-) (limited to 'toolchain') diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile index 4303accdc..89ebf340f 100644 --- a/toolchain/kernel-headers/Makefile +++ b/toolchain/kernel-headers/Makefile @@ -4,12 +4,12 @@ include $(TOPDIR)/rules.mk include ../rules.mk include $(TOPDIR)/mk/linux.mk +include ${TOPDIR}/mk/kernel-vars.mk include ${TOPDIR}/mk/buildhlp.mk $(WRKBUILD)/.headers: - $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ - headers_check - $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ + $(MAKE) -C $(WRKBUILD) ${KERNEL_MAKE_OPTS} headers_check + $(MAKE) -C $(WRKBUILD) ${KERNEL_MAKE_OPTS} \ INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)/usr \ headers_install @-find $(STAGING_TARGET_DIR)/usr/include -name .install -delete diff --git a/toolchain/kernel-headers/patches/3.13.6/relocs.patch b/toolchain/kernel-headers/patches/3.13.6/relocs.patch index 649b9e73e..69a7c88a9 100644 --- a/toolchain/kernel-headers/patches/3.13.6/relocs.patch +++ b/toolchain/kernel-headers/patches/3.13.6/relocs.patch @@ -1,7 +1,18 @@ -diff -Nur linux-3.11.5.orig/arch/x86/tools/relocs.h linux-3.11.5/arch/x86/tools/relocs.h ---- linux-3.11.5.orig/arch/x86/tools/relocs.h 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/arch/x86/tools/relocs.h 2013-10-20 17:41:16.000000000 +0200 -@@ -9,10 +9,14 @@ +diff -Nur linux-3.13.6.orig/arch/x86/tools/relocs.c linux-3.13.6/arch/x86/tools/relocs.c +--- linux-3.13.6.orig/arch/x86/tools/relocs.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/arch/x86/tools/relocs.c 2014-03-15 19:39:45.000000000 +0100 +@@ -126,6 +126,7 @@ + + if (err) { + regerror(err, &sym_regex_c[i], errbuf, sizeof errbuf); ++ printf("foo: %s\n", sym_regex[i]); + die("%s", errbuf); + } + } +diff -Nur linux-3.13.6.orig/arch/x86/tools/relocs.h linux-3.13.6/arch/x86/tools/relocs.h +--- linux-3.13.6.orig/arch/x86/tools/relocs.h 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/arch/x86/tools/relocs.h 2014-03-15 18:48:40.000000000 +0100 +@@ -9,11 +9,19 @@ #include #include #include @@ -13,12 +24,17 @@ diff -Nur linux-3.11.5.orig/arch/x86/tools/relocs.h linux-3.11.5/arch/x86/tools/ +#else +#include "elf.h" +#endif ++#ifdef __APPLE__ ++#include ++#else #include ++#endif #include -diff -Nur linux-3.11.5.orig/tools/include/elf.h linux-3.11.5/tools/include/elf.h ---- linux-3.11.5.orig/tools/include/elf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.11.5/tools/include/elf.h 2013-10-20 17:42:10.000000000 +0200 + void die(char *fmt, ...); +diff -Nur linux-3.13.6.orig/tools/include/elf.h linux-3.13.6/tools/include/elf.h +--- linux-3.13.6.orig/tools/include/elf.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.6/tools/include/elf.h 2014-03-15 18:47:36.000000000 +0100 @@ -0,0 +1,2671 @@ +#ifndef _ELF_H +#define _ELF_H -- cgit v1.2.3 From 186c1bd82b6a6a1b0fcd64456088ca50e37784d5 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 17 Mar 2014 08:21:53 +0100 Subject: fixups for x86_64 x32 toolchain, x86_64 32 still problematic - add a musl patch to recognize x86_64-foo-muslx32 - rework multilib configuration - remove explicit sjlj gcc configure, as suggested by the gcc docs - fix strace for x32 --- toolchain/Config.in | 8 ++----- toolchain/binutils/Makefile | 7 +++++- toolchain/gcc/Makefile | 41 ++++++++++++++++++++--------------- toolchain/glibc/Makefile | 6 ++--- toolchain/glibc/Makefile.inc | 20 ++++++++++------- toolchain/musl/patches/musl-x32.patch | 12 ++++++++++ 6 files changed, 59 insertions(+), 35 deletions(-) create mode 100644 toolchain/musl/patches/musl-x32.patch (limited to 'toolchain') diff --git a/toolchain/Config.in b/toolchain/Config.in index d6a578233..54016212a 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -1,7 +1,3 @@ -config ADK_TOOLCHAIN_GCC_SJLJ - boolean - default n - menu "Toolchain settings" config ADK_TOOLCHAIN_GDB @@ -17,7 +13,7 @@ config ADK_TOOLCHAIN_GCC_CXX config ADK_TOOLCHAIN_GCC_SSP prompt "Enable Stack Smashing Protection in GCC" boolean - default n + default y config ADK_TOOLCHAIN_GCC_USE_SSP prompt "Use SSP for all packages" @@ -28,7 +24,7 @@ config ADK_TOOLCHAIN_GCC_USE_SSP config ADK_TOOLCHAIN_GCC_LTO prompt "Enable Link Time Optimization in GCC" boolean - default n + default y config ADK_TOOLCHAIN_GCC_USE_LTO prompt "Use Link Time Optimization for all packages" diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile index 8ebbea53c..fc256c578 100644 --- a/toolchain/binutils/Makefile +++ b/toolchain/binutils/Makefile @@ -20,6 +20,12 @@ ifneq ($(strip $(ADK_LINUX_64)$(ADK_TARGET_KERNEL64)),) CONFOPTS+= --enable-64-bit-bfd endif +ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),) +CONFOPTS+= --disable-multilib +else +CONFOPTS+= --enable-multilib +endif + ifeq (${ADK_MAKE_PARALLEL},y) BINUTILS_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif @@ -31,7 +37,6 @@ $(WRKBUILD)/.configured: --prefix=$(STAGING_HOST_DIR) \ --target=$(GNU_TARGET_NAME) \ --with-sysroot=$(STAGING_TARGET_DIR) \ - --disable-multilib \ --disable-dependency-tracking \ --disable-libtool-lock \ --disable-nls \ diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index f93f9d7cf..475c90662 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -4,11 +4,11 @@ include $(TOPDIR)/rules.mk include ../rules.mk -TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) +TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) include Makefile.inc -GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \ +GCC_CONFOPTS:= --prefix=$(STAGING_HOST_DIR) \ --with-bugurl="http://www.openadk.org/" \ --build=$(GNU_HOST_NAME) \ --host=$(GNU_HOST_NAME) \ @@ -28,41 +28,43 @@ GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \ --disable-libstdcxx-pch \ --disable-ppl-version-check \ --disable-cloog-version-check \ + --without-system-zlib \ --without-ppl \ --without-cloog \ --without-isl \ --disable-nls -ifeq ($(ADK_TOOLCHAIN_GCC_SJLJ),y) -GCC_CONFOPTS+= --enable-sjlj-exceptions -else -GCC_CONFOPTS+= --disable-sjlj-exceptions -endif - +GCC_FINAL_CONFOPTS:= ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),) -GCC_CONFOPTS+= --disable-biarch --disable-multilib +GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib endif + ifeq ($(ADK_LINUX_SH),y) -GCC_CONFOPTS+= --with-multilib-list=m4,m4-nofpu +GCC_FINAL_CONFOPTS+= --enable-multilib --with-multilib-list=m4,m4-nofpu endif + ifeq ($(ADK_LINUX_X86_64),y) ifeq ($(ADK_x32),y) -GCC_CONFOPTS+= --with-multilib-list=mx32 -else -GCC_CONFOPTS+= --disable-biarch --disable-multilib +GCC_FINAL_CONFOPTS+= --enable-multilib --with-multilib-list=mx32 +endif +ifeq ($(ADK_32),y) +GCC_FINAL_CONFOPTS+= --enable-multilib --with-multilib-list=m32 +endif +ifeq ($(ADK_64),y) +GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib endif endif ifeq ($(ADK_TOOLCHAIN_GCC_SSP),y) -GCC_CONFOPTS+= --enable-libssp +GCC_FINAL_CONFOPTS+= --enable-libssp else -GCC_CONFOPTS+= --disable-libssp +GCC_FINAL_CONFOPTS+= --disable-libssp endif ifeq ($(ADK_TOOLCHAIN_GCC_LTO),y) -GCC_CONFOPTS+= --enable-lto +GCC_FINAL_CONFOPTS+= --enable-lto else -GCC_CONFOPTS+= --disable-lto +GCC_FINAL_CONFOPTS+= --disable-lto endif ifeq ($(ADK_LINUX_PPC),y) @@ -132,6 +134,9 @@ endif $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ --enable-languages=c \ + --disable-multilib \ + --disable-lto \ + --disable-libssp \ --disable-shared \ --without-headers touch $@ @@ -151,6 +156,7 @@ $(GCC_BUILD_DIR_INITIAL)/.configured: CXXFLAGS="-O0 -g0" \ $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ + ${GCC_FINAL_CONFOPTS} \ --enable-languages=c \ --disable-shared \ --disable-threads \ @@ -171,6 +177,7 @@ $(GCC_BUILD_DIR_FINAL)/.configured: cd $(GCC_BUILD_DIR_FINAL); PATH='$(TARGET_PATH)' \ $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ + ${GCC_FINAL_CONFOPTS} \ --enable-languages=$(LANGUAGES) \ --with-build-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \ --with-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \ diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile index 41987bada..4af17c3d7 100644 --- a/toolchain/glibc/Makefile +++ b/toolchain/glibc/Makefile @@ -5,13 +5,13 @@ include $(TOPDIR)/rules.mk include ../rules.mk # glibc does not compile with Os -TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS_LIBC)) +TARGET_CFLAGS:= $(subst Os,O2,$(TARGET_CFLAGS)) ifneq ($(ADK_DEBUG),) -TARGET_CFLAGS_LIBC+= -O2 +TARGET_CFLAGS+= -O2 endif # ssp partially supported -TARGET_CFLAGS_LIBC:= $(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC)) +TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk diff --git a/toolchain/glibc/Makefile.inc b/toolchain/glibc/Makefile.inc index 3c1a3167d..6671f1e2d 100644 --- a/toolchain/glibc/Makefile.inc +++ b/toolchain/glibc/Makefile.inc @@ -6,8 +6,13 @@ PKG_VERSION:= 2.19 PKG_RELEASE:= 1 PKG_MD5SUM:= 5374d29864b583622b62bfc6b8429418 PKG_SITES:= ${MASTER_SITE_GNU:=glibc/} +ifeq ($(ADK_TARGET_ABI_32),y) +GLIBC_TARGET_NAME:= i686-openadk-linux-gnu +else +GLIBC_TARGET_NAME:= $(GNU_TARGET_NAME) +endif GLIBC_CONFOPTS:= --build=$(GNU_HOST_NAME) \ - --host=$(GNU_TARGET_NAME) \ + --host=$(GLIBC_TARGET_NAME) \ --with-headers=$(STAGING_TARGET_DIR)/usr/include \ --disable-sanity-checks \ --disable-nls \ @@ -21,16 +26,15 @@ GLIBC_CONFOPTS:= --build=$(GNU_HOST_NAME) \ --enable-kernel="2.6.32" \ --enable-add-ons GLIBC_ENV:= PATH='${TARGET_PATH}' \ + SHELL='${SHELL}' \ BUILD_CC=${CC_FOR_BUILD} \ - CFLAGS="$(TARGET_CFLAGS_LIBC)" \ - CC=${GNU_TARGET_NAME}-gcc \ - CXX=${GNU_TARGET_NAME}-g++ \ - AR=${GNU_TARGET_NAME}-ar \ - RANLIB=${GNU_TARGET_NAME}-ranlib \ + CFLAGS="$(TARGET_CFLAGS)" \ + CC="${TARGET_CC}" \ + CXX="${TARGET_CXX}" \ + AR="${TARGET_AR}" \ + RANLIB="${TARGET_RANLIB}" \ libc_cv_forced_unwind=yes \ libc_cv_cc_with_libunwind=yes \ libc_cv_c_cleanup=yes \ libc_cv_gnu99_inline=yes \ - libc_cv_sparc64_tls=yes \ - libc_cv_slibdir="/lib" \ libc_cv_initfini_array=yes \ diff --git a/toolchain/musl/patches/musl-x32.patch b/toolchain/musl/patches/musl-x32.patch new file mode 100644 index 000000000..c391e4c85 --- /dev/null +++ b/toolchain/musl/patches/musl-x32.patch @@ -0,0 +1,12 @@ +diff -Nur musl-0.9.15.orig/configure musl-0.9.15/configure +--- musl-0.9.15.orig/configure 2014-03-16 21:17:29.000000000 +0100 ++++ musl-0.9.15/configure 2014-03-16 22:46:46.000000000 +0100 +@@ -226,7 +226,7 @@ + mips64*|powerpc64*) fail "$0: unsupported target \"$target\"" ;; + arm*) ARCH=arm ;; + i?86*) ARCH=i386 ;; +-x86_64-x32*|x32*) ARCH=x32 ;; ++x86_64*x32) ARCH=x32 ;; + x86_64*) ARCH=x86_64 ;; + mips*) ARCH=mips ;; + microblaze*) ARCH=microblaze ;; -- cgit v1.2.3 From 6c26b8016dda0c391a3a513c46998e16ce09cc4d Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 17 Mar 2014 09:55:20 +0100 Subject: use gcc 4.7.3 for sparc, 4.8.2 breaks kernel bootup, minor cleanup --- toolchain/gcc/Makefile.inc | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'toolchain') diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc index 86a0a5992..25e51178a 100644 --- a/toolchain/gcc/Makefile.inc +++ b/toolchain/gcc/Makefile.inc @@ -2,8 +2,13 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= gcc +ifeq ($(ADK_LINUX_SPARC),y) +PKG_VERSION:= 4.7.3 +PKG_MD5SUM:= 86f428a30379bdee0224e353ee2f999e +else PKG_VERSION:= 4.8.2 PKG_MD5SUM:= a3d7d63b9cb6b6ea049469a0c4a43c9d +endif PKG_RELEASE:= 1 PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/} DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 -- cgit v1.2.3 From ce0418c732e0d950d3a3c0b2b6726a691b8a0eca Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 17 Mar 2014 19:16:45 +0100 Subject: add TOOLCHAIN_DIR support establish an extra dir for toolchain. Better for preparing toolchain for other projetcs without host tools only used by openadk. Use /usr prefix. No symlink workarounds needed anymore. --- toolchain/Makefile | 8 +------- toolchain/binutils/Makefile | 2 +- toolchain/gcc/Makefile | 41 +++++++++++++++++++---------------------- toolchain/glibc/Makefile | 2 +- toolchain/gmp/Makefile | 5 +++-- toolchain/libelf/Makefile | 2 +- toolchain/mpc/Makefile | 4 ++-- toolchain/mpfr/Makefile | 2 +- 8 files changed, 29 insertions(+), 37 deletions(-) (limited to 'toolchain') 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 \ -- cgit v1.2.3 From db3364765c35f686cca8d575c619bb379198842a Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 18 Mar 2014 22:30:07 +0100 Subject: fix udhcpc for x32, from musl-git --- toolchain/musl/patches/musl-git-20140310.patch | 8432 ----------------------- toolchain/musl/patches/musl-git-20140318.patch | 8718 ++++++++++++++++++++++++ toolchain/musl/patches/musl-x32.patch | 12 - 3 files changed, 8718 insertions(+), 8444 deletions(-) delete mode 100644 toolchain/musl/patches/musl-git-20140310.patch create mode 100644 toolchain/musl/patches/musl-git-20140318.patch delete mode 100644 toolchain/musl/patches/musl-x32.patch (limited to 'toolchain') diff --git a/toolchain/musl/patches/musl-git-20140310.patch b/toolchain/musl/patches/musl-git-20140310.patch deleted file mode 100644 index 29b58b843..000000000 --- a/toolchain/musl/patches/musl-git-20140310.patch +++ /dev/null @@ -1,8432 +0,0 @@ -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 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -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 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #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 @@ - #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 -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 -@@ -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)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - #define __asm_syscall(...) do { \ -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 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -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 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #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 @@ - #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 -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 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -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 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #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 @@ - #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 -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 -@@ -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)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - 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 -@@ -1,3 +1,7 @@ -+#ifdef __mips_soft_float -+#define FE_ALL_EXCEPT 0 -+#define FE_TONEAREST 0 -+#else - #define FE_INEXACT 4 - #define FE_UNDERFLOW 8 - #define FE_OVERFLOW 16 -@@ -10,6 +14,7 @@ - #define FE_TOWARDZERO 1 - #define FE_UPWARD 2 - #define FE_DOWNWARD 3 -+#endif - - typedef unsigned short fexcept_t; - -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 -@@ -13,3 +13,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -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 -@@ -77,9 +77,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -129,12 +126,6 @@ - #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 @@ - #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 @@ - #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 -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 -@@ -8,7 +8,13 @@ - #define ENDIAN_SUFFIX "" - #endif - --#define LDSO_ARCH "mips" ENDIAN_SUFFIX -+#ifdef __mips_soft_float -+#define FP_SUFFIX "-sf" -+#else -+#define FP_SUFFIX "" -+#endif -+ -+#define LDSO_ARCH "mips" ENDIAN_SUFFIX FP_SUFFIX - - #define IS_COPY(x) ((x)==R_MIPS_COPY) - #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 -@@ -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)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - #define __asm_syscall(...) do { \ -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 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -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 -@@ -66,7 +66,6 @@ - #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 @@ - #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 @@ - #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 @@ - #define HUPCL 00040000 - - #define CLOCAL 00100000 --#define CMSPAR 010000000000 --#define CRTSCTS 020000000000 - - #define ISIG 0x00000080 - #define ICANON 0x00000100 -@@ -154,7 +147,6 @@ - #define FLUSHO 0x00800000 - #define PENDIN 0x20000000 - #define IEXTEN 0x00000400 --#define EXTPROC 0x10000000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -168,3 +160,13 @@ - #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 -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 -@@ -0,0 +1,87 @@ -+#ifndef _INTERNAL_ATOMIC_H -+#define _INTERNAL_ATOMIC_H -+ -+#include -+ -+static inline int a_ctz_l(unsigned long x) -+{ -+ static const char debruijn32[32] = { -+ 0, 1, 23, 2, 29, 24, 19, 3, 30, 27, 25, 11, 20, 8, 4, 13, -+ 31, 22, 28, 18, 26, 10, 7, 12, 21, 17, 9, 6, 16, 5, 15, 14 -+ }; -+ return debruijn32[(x&-x)*0x076be629 >> 27]; -+} -+ -+static inline int a_ctz_64(uint64_t x) -+{ -+ uint32_t y = x; -+ if (!y) { -+ y = x>>32; -+ return 32 + a_ctz_l(y); -+ } -+ return a_ctz_l(y); -+} -+ -+int __sh_cas(volatile int *, int, int); -+int __sh_swap(volatile int *, int); -+int __sh_fetch_add(volatile int *, int); -+void __sh_store(volatile int *, int); -+void __sh_and(volatile int *, int); -+void __sh_or(volatile int *, int); -+ -+#define a_cas(p,t,s) __sh_cas(p,t,s) -+#define a_swap(x,v) __sh_swap(x,v) -+#define a_fetch_add(x,v) __sh_fetch_add(x, v) -+#define a_store(x,v) __sh_store(x, v) -+#define a_and(x,v) __sh_and(x, v) -+#define a_or(x,v) __sh_or(x, v) -+ -+static inline void *a_cas_p(volatile void *p, void *t, void *s) -+{ -+ return (void *)a_cas(p, (int)t, (int)s); -+} -+ -+static inline long a_cas_l(volatile void *p, long t, long s) -+{ -+ return a_cas(p, t, s); -+} -+ -+static inline void a_inc(volatile int *x) -+{ -+ a_fetch_add(x, 1); -+} -+ -+static inline void a_dec(volatile int *x) -+{ -+ a_fetch_add(x, -1); -+} -+ -+static inline void a_spin() -+{ -+} -+ -+static inline void a_crash() -+{ -+ *(volatile char *)0=0; -+} -+ -+static inline void a_or_l(volatile void *p, long v) -+{ -+ a_or(p, v); -+} -+ -+static inline void a_and_64(volatile uint64_t *p, uint64_t v) -+{ -+ union { uint64_t v; uint32_t r[2]; } u = { v }; -+ a_and((int *)p, u.r[0]); -+ a_and((int *)p+1, u.r[1]); -+} -+ -+static inline void a_or_64(volatile uint64_t *p, uint64_t v) -+{ -+ union { uint64_t v; uint32_t r[2]; } u = { v }; -+ a_or((int *)p, u.r[0]); -+ a_or((int *)p+1, u.r[1]); -+} -+ -+#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 -@@ -0,0 +1,23 @@ -+#define _Addr int -+#define _Int64 long long -+#define _Reg int -+ -+TYPEDEF __builtin_va_list va_list; -+TYPEDEF __builtin_va_list __isoc_va_list; -+ -+#ifndef __cplusplus -+TYPEDEF long wchar_t; -+#endif -+TYPEDEF unsigned wint_t; -+ -+TYPEDEF float float_t; -+TYPEDEF double double_t; -+ -+TYPEDEF long time_t; -+TYPEDEF long suseconds_t; -+ -+TYPEDEF struct { union { int __i[9]; unsigned __s[9]; } __u; } pthread_attr_t; -+TYPEDEF struct { union { int __i[6]; void *__p[6]; } __u; } pthread_mutex_t; -+TYPEDEF struct { union { int __i[12]; void *__p[12]; } __u; } pthread_cond_t; -+TYPEDEF struct { union { int __i[8]; void *__p[8]; } __u; } pthread_rwlock_t; -+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 -@@ -0,0 +1,5 @@ -+#if __BIG_ENDIAN__ -+#define __BYTE_ORDER __BIG_ENDIAN -+#else -+#define __BYTE_ORDER __LITTLE_ENDIAN -+#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 -@@ -0,0 +1,134 @@ -+#define EPERM 1 -+#define ENOENT 2 -+#define ESRCH 3 -+#define EINTR 4 -+#define EIO 5 -+#define ENXIO 6 -+#define E2BIG 7 -+#define ENOEXEC 8 -+#define EBADF 9 -+#define ECHILD 10 -+#define EAGAIN 11 -+#define ENOMEM 12 -+#define EACCES 13 -+#define EFAULT 14 -+#define ENOTBLK 15 -+#define EBUSY 16 -+#define EEXIST 17 -+#define EXDEV 18 -+#define ENODEV 19 -+#define ENOTDIR 20 -+#define EISDIR 21 -+#define EINVAL 22 -+#define ENFILE 23 -+#define EMFILE 24 -+#define ENOTTY 25 -+#define ETXTBSY 26 -+#define EFBIG 27 -+#define ENOSPC 28 -+#define ESPIPE 29 -+#define EROFS 30 -+#define EMLINK 31 -+#define EPIPE 32 -+#define EDOM 33 -+#define ERANGE 34 -+#define EDEADLK 35 -+#define ENAMETOOLONG 36 -+#define ENOLCK 37 -+#define ENOSYS 38 -+#define ENOTEMPTY 39 -+#define ELOOP 40 -+#define EWOULDBLOCK EAGAIN -+#define ENOMSG 42 -+#define EIDRM 43 -+#define ECHRNG 44 -+#define EL2NSYNC 45 -+#define EL3HLT 46 -+#define EL3RST 47 -+#define ELNRNG 48 -+#define EUNATCH 49 -+#define ENOCSI 50 -+#define EL2HLT 51 -+#define EBADE 52 -+#define EBADR 53 -+#define EXFULL 54 -+#define ENOANO 55 -+#define EBADRQC 56 -+#define EBADSLT 57 -+#define EDEADLOCK EDEADLK -+#define EBFONT 59 -+#define ENOSTR 60 -+#define ENODATA 61 -+#define ETIME 62 -+#define ENOSR 63 -+#define ENONET 64 -+#define ENOPKG 65 -+#define EREMOTE 66 -+#define ENOLINK 67 -+#define EADV 68 -+#define ESRMNT 69 -+#define ECOMM 70 -+#define EPROTO 71 -+#define EMULTIHOP 72 -+#define EDOTDOT 73 -+#define EBADMSG 74 -+#define EOVERFLOW 75 -+#define ENOTUNIQ 76 -+#define EBADFD 77 -+#define EREMCHG 78 -+#define ELIBACC 79 -+#define ELIBBAD 80 -+#define ELIBSCN 81 -+#define ELIBMAX 82 -+#define ELIBEXEC 83 -+#define EILSEQ 84 -+#define ERESTART 85 -+#define ESTRPIPE 86 -+#define EUSERS 87 -+#define ENOTSOCK 88 -+#define EDESTADDRREQ 89 -+#define EMSGSIZE 90 -+#define EPROTOTYPE 91 -+#define ENOPROTOOPT 92 -+#define EPROTONOSUPPORT 93 -+#define ESOCKTNOSUPPORT 94 -+#define EOPNOTSUPP 95 -+#define ENOTSUP EOPNOTSUPP -+#define EPFNOSUPPORT 96 -+#define EAFNOSUPPORT 97 -+#define EADDRINUSE 98 -+#define EADDRNOTAVAIL 99 -+#define ENETDOWN 100 -+#define ENETUNREACH 101 -+#define ENETRESET 102 -+#define ECONNABORTED 103 -+#define ECONNRESET 104 -+#define ENOBUFS 105 -+#define EISCONN 106 -+#define ENOTCONN 107 -+#define ESHUTDOWN 108 -+#define ETOOMANYREFS 109 -+#define ETIMEDOUT 110 -+#define ECONNREFUSED 111 -+#define EHOSTDOWN 112 -+#define EHOSTUNREACH 113 -+#define EALREADY 114 -+#define EINPROGRESS 115 -+#define ESTALE 116 -+#define EUCLEAN 117 -+#define ENOTNAM 118 -+#define ENAVAIL 119 -+#define EISNAM 120 -+#define EREMOTEIO 121 -+#define EDQUOT 122 -+#define ENOMEDIUM 123 -+#define EMEDIUMTYPE 124 -+#define ECANCELED 125 -+#define ENOKEY 126 -+#define EKEYEXPIRED 127 -+#define EKEYREVOKED 128 -+#define EKEYREJECTED 129 -+#define EOWNERDEAD 130 -+#define ENOTRECOVERABLE 131 -+#define ERFKILL 132 -+#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 -@@ -0,0 +1,39 @@ -+#define O_CREAT 0100 -+#define O_EXCL 0200 -+#define O_NOCTTY 0400 -+#define O_TRUNC 01000 -+#define O_APPEND 02000 -+#define O_NONBLOCK 04000 -+#define O_DSYNC 010000 -+#define O_SYNC 04010000 -+#define O_RSYNC 04010000 -+#define O_DIRECTORY 0200000 -+#define O_NOFOLLOW 0400000 -+#define O_CLOEXEC 02000000 -+ -+#define O_ASYNC 020000 -+#define O_DIRECT 040000 -+#define O_LARGEFILE 0100000 -+#define O_NOATIME 01000000 -+#define O_TMPFILE 020200000 -+#define O_NDELAY O_NONBLOCK -+ -+#define F_DUPFD 0 -+#define F_GETFD 1 -+#define F_SETFD 2 -+#define F_GETFL 3 -+#define F_SETFL 4 -+ -+#define F_SETOWN 8 -+#define F_GETOWN 9 -+#define F_SETSIG 10 -+#define F_GETSIG 11 -+ -+#define F_GETLK 12 -+#define F_SETLK 13 -+#define F_SETLKW 14 -+ -+#define F_SETOWN_EX 15 -+#define F_GETOWN_EX 16 -+ -+#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 -@@ -0,0 +1,26 @@ -+#ifndef __SH_FPU_ANY__ -+ -+#define FE_ALL_EXCEPT 0 -+#define FE_TONEAREST 0 -+ -+#else -+ -+#define FE_TONEAREST 0 -+#define FE_TOWARDZERO 1 -+ -+#define FE_INEXACT 0x04 -+#define FE_UNDERFLOW 0x08 -+#define FE_OVERFLOW 0x10 -+#define FE_DIVBYZERO 0x20 -+#define FE_INVALID 0x40 -+#define FE_ALL_EXCEPT 0x7c -+ -+#endif -+ -+typedef unsigned long fexcept_t; -+ -+typedef struct { -+ unsigned long __cw; -+} fenv_t; -+ -+#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 -@@ -0,0 +1,17 @@ -+#define FLT_ROUNDS 1 -+#define FLT_EVAL_METHOD 0 -+ -+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L -+#define LDBL_MIN 2.22507385850720138309e-308L -+#define LDBL_MAX 1.79769313486231570815e+308L -+#define LDBL_EPSILON 2.22044604925031308085e-16L -+ -+#define LDBL_MANT_DIG 53 -+#define LDBL_MIN_EXP (-1021) -+#define LDBL_MAX_EXP 1024 -+ -+#define LDBL_DIG 15 -+#define LDBL_MIN_10_EXP (-307) -+#define LDBL_MAX_10_EXP 308 -+ -+#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 -@@ -0,0 +1,205 @@ -+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) ) -+#define _IOC_NONE 0U -+#define _IOC_WRITE 1U -+#define _IOC_READ 2U -+ -+#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) -+#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) -+#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) -+#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) -+ -+#define FIOCLEX _IO('f', 1) -+#define FIONCLEX _IO('f', 2) -+#define FIOASYNC _IOW('f', 125, int) -+#define FIONBIO _IOW('f', 126, int) -+#define FIONREAD _IOR('f', 127, int) -+#define TIOCINQ FIONREAD -+#define FIOQSIZE _IOR('f', 128, char[8]) -+ -+#define TCGETA _IOR('t', 23, char[18]) -+#define TCSETA _IOW('t', 24, char[18]) -+#define TCSETAW _IOW('t', 25, char[18]) -+#define TCSETAF _IOW('t', 28, char[18]) -+ -+#define TCSBRK _IO('t', 29) -+#define TCXONC _IO('t', 30) -+#define TCFLSH _IO('t', 31) -+ -+#define TIOCSWINSZ _IOW('t', 103, char[8]) -+#define TIOCGWINSZ _IOR('t', 104, char[8]) -+#define TIOCSTART _IO('t', 110) -+#define TIOCSTOP _IO('t', 111) -+#define TIOCOUTQ _IOR('t', 115, int) -+ -+#define TIOCSPGRP _IOW('t', 118, int) -+#define TIOCGPGRP _IOR('t', 119, int) -+ -+#define TIOCEXCL _IO('T', 12) -+#define TIOCNXCL _IO('T', 13) -+#define TIOCSCTTY _IO('T', 14) -+ -+#define TIOCSTI _IOW('T', 18, char) -+#define TIOCMGET _IOR('T', 21, unsigned int) -+#define TIOCMBIS _IOW('T', 22, unsigned int) -+#define TIOCMBIC _IOW('T', 23, unsigned int) -+#define TIOCMSET _IOW('T', 24, unsigned int) -+#define TIOCM_LE 0x001 -+#define TIOCM_DTR 0x002 -+#define TIOCM_RTS 0x004 -+#define TIOCM_ST 0x008 -+#define TIOCM_SR 0x010 -+#define TIOCM_CTS 0x020 -+#define TIOCM_CAR 0x040 -+#define TIOCM_RNG 0x080 -+#define TIOCM_DSR 0x100 -+#define TIOCM_CD TIOCM_CAR -+#define TIOCM_RI TIOCM_RNG -+#define TIOCM_OUT1 0x2000 -+#define TIOCM_OUT2 0x4000 -+#define TIOCM_LOOP 0x8000 -+ -+#define TIOCGSOFTCAR _IOR('T', 25, unsigned int) -+#define TIOCSSOFTCAR _IOW('T', 26, unsigned int) -+#define TIOCLINUX _IOW('T', 28, char) -+#define TIOCCONS _IO('T', 29) -+#define TIOCGSERIAL _IOR('T', 30, char[60]) -+#define TIOCSSERIAL _IOW('T', 31, char[60]) -+#define TIOCPKT _IOW('T', 32, int) -+#define TIOCPKT_DATA 0 -+#define TIOCPKT_FLUSHREAD 1 -+#define TIOCPKT_FLUSHWRITE 2 -+#define TIOCPKT_STOP 4 -+#define TIOCPKT_START 8 -+#define TIOCPKT_NOSTOP 16 -+#define TIOCPKT_DOSTOP 32 -+#define TIOCPKT_IOCTL 64 -+ -+#define TIOCNOTTY _IO('T', 34) -+#define TIOCSETD _IOW('T', 35, int) -+#define TIOCGETD _IOR('T', 36, int) -+#define TCSBRKP _IOW('T', 37, int) -+#define TIOCSBRK _IO('T', 39) -+#define TIOCCBRK _IO('T', 40) -+#define TIOCGSID _IOR('T', 41, int) -+#define TCGETS _IOR('T', 42, char[44]) -+#define TCSETS _IOW('T', 43, char[44]) -+#define TCSETSW _IOW('T', 44, char[44]) -+#define TCSETSF _IOW('T', 45, char[44]) -+#define TIOCGPTN _IOR('T', 48, unsigned int) -+#define TIOCSPTLCK _IOW('T', 49, int) -+#define TIOCGDEV _IOR('T', 50, unsigned int) -+#define TIOCSIG _IOW('T', 54, int) -+#define TIOCVHANGUP _IO('T', 55) -+#define TIOCGPKT _IOR('T', 56, int) -+#define TIOCGPTLCK _IOR('T', 57, int) -+#define TIOCGEXCL _IOR('T', 64, int) -+ -+#define TIOCSERCONFIG _IO('T', 83) -+#define TIOCSERGWILD _IOR('T', 84, int) -+#define TIOCSERSWILD _IOW('T', 85, int) -+#define TIOCGLCKTRMIOS _IO('T', 86) -+#define TIOCSLCKTRMIOS _IO('T', 87) -+#define TIOCSERGSTRUCT _IOR('T', 88, char[216]) -+#define TIOCSERGETLSR _IOR('T', 89, unsigned int) -+#define TIOCSER_TEMT 0x01 -+#define TIOCSERGETMULTI _IOR('T', 90, char[168]) -+#define TIOCSERSETMULTI _IOW('T', 91, char[168]) -+ -+#define TIOCMIWAIT _IO('T', 92) -+#define TIOCGICOUNT _IO('T', 93) -+ -+struct winsize { -+ unsigned short ws_row; -+ unsigned short ws_col; -+ unsigned short ws_xpixel; -+ unsigned short ws_ypixel; -+}; -+ -+#define TIOCM_MODEM_BITS TIOCM_OUT2 -+ -+#define N_TTY 0 -+#define N_SLIP 1 -+#define N_MOUSE 2 -+#define N_PPP 3 -+#define N_STRIP 4 -+#define N_AX25 5 -+#define N_X25 6 -+#define N_6PACK 7 -+#define N_MASC 8 -+#define N_R3964 9 -+#define N_PROFIBUS_FDL 10 -+#define N_IRDA 11 -+#define N_SMSBLOCK 12 -+#define N_HDLC 13 -+#define N_SYNC_PPP 14 -+#define N_HCI 15 -+ -+#define FIOGETOWN _IOR('f', 123, int) -+#define FIOSETOWN _IOW('f', 124, int) -+ -+#define SIOCATMARK _IOR('s', 7, int) -+#define SIOCSPGRP _IOW('s', 8, int) -+#define SIOCGPGRP _IOW('s', 9, int) -+#define SIOCGSTAMP _IOR('s', 100, char[8]) -+ -+#define SIOCADDRT 0x890B -+#define SIOCDELRT 0x890C -+#define SIOCRTMSG 0x890D -+ -+#define SIOCGIFNAME 0x8910 -+#define SIOCSIFLINK 0x8911 -+#define SIOCGIFCONF 0x8912 -+#define SIOCGIFFLAGS 0x8913 -+#define SIOCSIFFLAGS 0x8914 -+#define SIOCGIFADDR 0x8915 -+#define SIOCSIFADDR 0x8916 -+#define SIOCGIFDSTADDR 0x8917 -+#define SIOCSIFDSTADDR 0x8918 -+#define SIOCGIFBRDADDR 0x8919 -+#define SIOCSIFBRDADDR 0x891a -+#define SIOCGIFNETMASK 0x891b -+#define SIOCSIFNETMASK 0x891c -+#define SIOCGIFMETRIC 0x891d -+#define SIOCSIFMETRIC 0x891e -+#define SIOCGIFMEM 0x891f -+#define SIOCSIFMEM 0x8920 -+#define SIOCGIFMTU 0x8921 -+#define SIOCSIFMTU 0x8922 -+#define SIOCSIFHWADDR 0x8924 -+#define SIOCGIFENCAP 0x8925 -+#define SIOCSIFENCAP 0x8926 -+#define SIOCGIFHWADDR 0x8927 -+#define SIOCGIFSLAVE 0x8929 -+#define SIOCSIFSLAVE 0x8930 -+#define SIOCADDMULTI 0x8931 -+#define SIOCDELMULTI 0x8932 -+#define SIOCGIFINDEX 0x8933 -+#define SIOGIFINDEX SIOCGIFINDEX -+#define SIOCSIFPFLAGS 0x8934 -+#define SIOCGIFPFLAGS 0x8935 -+#define SIOCDIFADDR 0x8936 -+#define SIOCSIFHWBROADCAST 0x8937 -+#define SIOCGIFCOUNT 0x8938 -+ -+#define SIOCGIFBR 0x8940 -+#define SIOCSIFBR 0x8941 -+ -+#define SIOCGIFTXQLEN 0x8942 -+#define SIOCSIFTXQLEN 0x8943 -+ -+#define SIOCDARP 0x8953 -+#define SIOCGARP 0x8954 -+#define SIOCSARP 0x8955 -+ -+#define SIOCDRARP 0x8960 -+#define SIOCGRARP 0x8961 -+#define SIOCSRARP 0x8962 -+ -+#define SIOCGIFMAP 0x8970 -+#define SIOCSIFMAP 0x8971 -+ -+#define SIOCADDDLCI 0x8980 -+#define SIOCDELDLCI 0x8981 -+ -+#define SIOCDEVPRIVATE 0x89F0 -+#define SIOCPROTOPRIVATE 0x89E0 -diff -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 -@@ -0,0 +1,14 @@ -+struct ipc_perm -+{ -+ key_t __ipc_perm_key; -+ uid_t uid; -+ gid_t gid; -+ uid_t cuid; -+ gid_t cgid; -+ mode_t mode; -+ int __ipc_perm_seq; -+ long __pad1; -+ long __pad2; -+}; -+ -+#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 -@@ -0,0 +1,8 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define PAGE_SIZE 4096 -+#define LONG_BIT 32 -+#endif -+ -+#define LONG_MAX 0x7fffffffL -+#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 -@@ -0,0 +1,62 @@ -+#define MAP_FAILED ((void *) -1) -+ -+#define PROT_NONE 0 -+#define PROT_READ 1 -+#define PROT_WRITE 2 -+#define PROT_EXEC 4 -+#define PROT_GROWSDOWN 0x01000000 -+#define PROT_GROWSUP 0x02000000 -+ -+#define MAP_SHARED 0x01 -+#define MAP_PRIVATE 0x02 -+#define MAP_FIXED 0x10 -+ -+#define MAP_TYPE 0x0f -+#define MAP_FILE 0x00 -+#define MAP_ANON 0x20 -+#define MAP_ANONYMOUS MAP_ANON -+#define MAP_32BIT 0x40 -+#define MAP_NORESERVE 0x4000 -+#define MAP_GROWSDOWN 0x0100 -+#define MAP_DENYWRITE 0x0800 -+#define MAP_EXECUTABLE 0x1000 -+#define MAP_LOCKED 0x2000 -+#define MAP_POPULATE 0x8000 -+#define MAP_NONBLOCK 0x10000 -+#define MAP_STACK 0x20000 -+#define MAP_HUGETLB 0x40000 -+ -+#define POSIX_MADV_NORMAL 0 -+#define POSIX_MADV_RANDOM 1 -+#define POSIX_MADV_SEQUENTIAL 2 -+#define POSIX_MADV_WILLNEED 3 -+#define POSIX_MADV_DONTNEED 4 -+ -+#define MS_ASYNC 1 -+#define MS_INVALIDATE 2 -+#define MS_SYNC 4 -+ -+#define MCL_CURRENT 1 -+#define MCL_FUTURE 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define MADV_NORMAL 0 -+#define MADV_RANDOM 1 -+#define MADV_SEQUENTIAL 2 -+#define MADV_WILLNEED 3 -+#define MADV_DONTNEED 4 -+#define MADV_REMOVE 9 -+#define MADV_DONTFORK 10 -+#define MADV_DOFORK 11 -+#define MADV_MERGEABLE 12 -+#define MADV_UNMERGEABLE 13 -+#define MADV_HUGEPAGE 14 -+#define MADV_NOHUGEPAGE 15 -+#define MADV_DONTDUMP 16 -+#define MADV_DODUMP 17 -+#define MADV_HWPOISON 100 -+#define MADV_SOFT_OFFLINE 101 -+ -+#define MREMAP_MAYMOVE 1 -+#define MREMAP_FIXED 2 -+#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 -@@ -0,0 +1,16 @@ -+struct msqid_ds -+{ -+ struct ipc_perm msg_perm; -+ time_t msg_stime; -+ int __unused1; -+ time_t msg_rtime; -+ int __unused2; -+ time_t msg_ctime; -+ int __unused3; -+ unsigned long msg_cbytes; -+ msgqnum_t msg_qnum; -+ msglen_t msg_qbytes; -+ pid_t msg_lspid; -+ pid_t msg_lrpid; -+ unsigned long __unused[2]; -+}; -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 -@@ -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/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 -@@ -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 -@@ -0,0 +1,28 @@ -+#define SHMLBA 16384 -+ -+struct shmid_ds -+{ -+ struct ipc_perm shm_perm; -+ size_t shm_segsz; -+ time_t shm_atime; -+ int __unused1; -+ time_t shm_dtime; -+ int __unused2; -+ time_t shm_ctime; -+ int __unused3; -+ pid_t shm_cpid; -+ pid_t shm_lpid; -+ unsigned long shm_nattch; -+ unsigned long __pad1; -+ unsigned long __pad2; -+}; -+ -+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; -+ unsigned long __swap_attempts, __swap_successes; -+}; -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 -@@ -0,0 +1,76 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+typedef int greg_t, gregset_t[16]; -+typedef int freg_t, fpregset_t[16]; -+typedef struct sigcontext { -+ unsigned long oldmask; -+ unsigned long sc_regs[16]; -+ unsigned long sc_pc, sc_pr, sc_sr; -+ unsigned long sc_gbr, sc_mach, sc_macl; -+ unsigned long sc_fpregs[16]; -+ unsigned long sc_xfpregs[16]; -+ unsigned int sc_fpscr, sc_fpul, sc_ownedfp; -+} mcontext_t; -+#else -+typedef struct { -+ unsigned long __regs[58]; -+} mcontext_t; -+#endif -+ -+typedef struct __ucontext { -+ unsigned long uc_flags; -+ struct __ucontext *uc_link; -+ stack_t uc_stack; -+ mcontext_t uc_mcontext; -+ sigset_t uc_sigmask; -+} ucontext_t; -+ -+#define SA_NOCLDSTOP 1 -+#define SA_NOCLDWAIT 2 -+#define SA_SIGINFO 4 -+#define SA_ONSTACK 0x08000000 -+#define SA_RESTART 0x10000000 -+#define SA_NODEFER 0x40000000 -+#define SA_RESETHAND 0x80000000 -+#define SA_RESTORER 0x04000000 -+ -+#endif -+ -+#define SIGHUP 1 -+#define SIGINT 2 -+#define SIGQUIT 3 -+#define SIGILL 4 -+#define SIGTRAP 5 -+#define SIGABRT 6 -+#define SIGIOT SIGABRT -+#define SIGBUS 7 -+#define SIGFPE 8 -+#define SIGKILL 9 -+#define SIGUSR1 10 -+#define SIGSEGV 11 -+#define SIGUSR2 12 -+#define SIGPIPE 13 -+#define SIGALRM 14 -+#define SIGTERM 15 -+#define SIGSTKFLT 16 -+#define SIGCHLD 17 -+#define SIGCONT 18 -+#define SIGSTOP 19 -+#define SIGTSTP 20 -+#define SIGTTIN 21 -+#define SIGTTOU 22 -+#define SIGURG 23 -+#define SIGXCPU 24 -+#define SIGXFSZ 25 -+#define SIGVTALRM 26 -+#define SIGPROF 27 -+#define SIGWINCH 28 -+#define SIGIO 29 -+#define SIGPOLL 29 -+#define SIGPWR 30 -+#define SIGSYS 31 -+#define SIGUNUSED SIGSYS -+ -+#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 -@@ -0,0 +1,17 @@ -+struct msghdr -+{ -+ void *msg_name; -+ socklen_t msg_namelen; -+ struct iovec *msg_iov; -+ int msg_iovlen; -+ void *msg_control; -+ socklen_t msg_controllen; -+ int msg_flags; -+}; -+ -+struct cmsghdr -+{ -+ socklen_t cmsg_len; -+ int cmsg_level; -+ int cmsg_type; -+}; -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 -@@ -0,0 +1,7 @@ -+struct statfs { -+ unsigned long f_type, f_bsize; -+ fsblkcnt_t f_blocks, f_bfree, f_bavail; -+ fsfilcnt_t f_files, f_ffree; -+ fsid_t f_fsid; -+ unsigned long f_namelen, f_frsize, f_flags, f_spare[4]; -+}; -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 -@@ -0,0 +1,22 @@ -+/* copied from kernel definition, but with padding replaced -+ * by the corresponding correctly-sized userspace types. */ -+ -+struct stat -+{ -+ dev_t st_dev; -+ int __st_dev_padding; -+ long __st_ino_truncated; -+ mode_t st_mode; -+ nlink_t st_nlink; -+ uid_t st_uid; -+ gid_t st_gid; -+ dev_t st_rdev; -+ int __st_rdev_padding; -+ off_t st_size; -+ blksize_t st_blksize; -+ blkcnt_t st_blocks; -+ struct timespec st_atim; -+ struct timespec st_mtim; -+ struct timespec st_ctim; -+ ino_t st_ino; -+}; -diff -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 -@@ -0,0 +1,4 @@ -+#define va_start(v,l) __builtin_va_start(v,l) -+#define va_end(v) __builtin_va_end(v) -+#define va_arg(v,l) __builtin_va_arg(v,l) -+#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 -@@ -0,0 +1,20 @@ -+typedef int32_t int_fast16_t; -+typedef int32_t int_fast32_t; -+typedef uint32_t uint_fast16_t; -+typedef uint32_t uint_fast32_t; -+ -+#define INT_FAST16_MIN INT32_MIN -+#define INT_FAST32_MIN INT32_MIN -+ -+#define INT_FAST16_MAX INT32_MAX -+#define INT_FAST32_MAX INT32_MAX -+ -+#define UINT_FAST16_MAX UINT32_MAX -+#define UINT_FAST32_MAX UINT32_MAX -+ -+#define INTPTR_MIN INT32_MIN -+#define INTPTR_MAX INT32_MAX -+#define UINTPTR_MAX UINT32_MAX -+#define PTRDIFF_MIN INT32_MIN -+#define PTRDIFF_MAX INT32_MAX -+#define 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 -@@ -0,0 +1,684 @@ -+#define __NR_restart_syscall 0 -+#define __NR_exit 1 -+#define __NR_fork 2 -+#define __NR_read 3 -+#define __NR_write 4 -+#define __NR_open 5 -+#define __NR_close 6 -+#define __NR_waitpid 7 -+#define __NR_creat 8 -+#define __NR_link 9 -+#define __NR_unlink 10 -+#define __NR_execve 11 -+#define __NR_chdir 12 -+#define __NR_time 13 -+#define __NR_mknod 14 -+#define __NR_chmod 15 -+#define __NR_lchown 16 -+#define __NR_oldstat 18 -+#define __NR_lseek 19 -+#define __NR_getpid 20 -+#define __NR_mount 21 -+#define __NR_umount 22 -+#define __NR_setuid 23 -+#define __NR_getuid 24 -+#define __NR_stime 25 -+#define __NR_ptrace 26 -+#define __NR_alarm 27 -+#define __NR_oldfstat 28 -+#define __NR_pause 29 -+#define __NR_utime 30 -+#define __NR_access 33 -+#define __NR_nice 34 -+#define __NR_sync 36 -+#define __NR_kill 37 -+#define __NR_rename 38 -+#define __NR_mkdir 39 -+#define __NR_rmdir 40 -+#define __NR_dup 41 -+#define __NR_pipe 42 -+#define __NR_times