summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-04-02 07:37:27 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2014-04-02 07:37:27 +0200
commit7236e468162b3af51c0acecad10fbef1838c06ad (patch)
tree9c8027cf769aaa7ef7f0a6330b34d7666238b920 /toolchain
parenta691abc857458de0023f5e532feee866af0218ed (diff)
parent309f13ab6858e1c1639814e210a6c86380ca717b (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/Config.in8
-rw-r--r--toolchain/Makefile8
-rw-r--r--toolchain/binutils/Makefile13
-rw-r--r--toolchain/binutils/Makefile.inc3
-rw-r--r--toolchain/gcc/Makefile111
-rw-r--r--toolchain/gcc/Makefile.inc8
-rw-r--r--toolchain/gcc/patches/4.8.2/abi32.patch54
-rw-r--r--toolchain/gdb/Makefile.inc3
-rw-r--r--toolchain/glibc/Makefile13
-rw-r--r--toolchain/glibc/Makefile.inc20
-rw-r--r--toolchain/gmp/Makefile5
-rw-r--r--toolchain/kernel-headers/Makefile6
-rw-r--r--toolchain/kernel-headers/patches/3.10.34/cleankernel.patch (renamed from toolchain/kernel-headers/patches/3.10.33/cleankernel.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.10.34/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.10.33/mkpiggy.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.10.34/relocs.patch (renamed from toolchain/kernel-headers/patches/3.10.33/relocs.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.10.34/sgidefs.patch (renamed from toolchain/kernel-headers/patches/3.10.33/sgidefs.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.10.34/sortext.patch (renamed from toolchain/kernel-headers/patches/3.10.33/sortext.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.11.10/microperl.patch13
-rw-r--r--toolchain/kernel-headers/patches/3.12.13/microperl.patch13
-rw-r--r--toolchain/kernel-headers/patches/3.12.14/cleankernel.patch (renamed from toolchain/kernel-headers/patches/3.12.13/cleankernel.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.12.14/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.12.13/mkpiggy.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.12.14/relocs.patch (renamed from toolchain/kernel-headers/patches/3.12.13/relocs.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.12.14/sgidefs.patch (renamed from toolchain/kernel-headers/patches/3.12.13/sgidefs.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.12.14/sortext.patch (renamed from toolchain/kernel-headers/patches/3.12.13/sortext.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.13.6/microperl.patch13
-rw-r--r--toolchain/kernel-headers/patches/3.13.7/cleankernel.patch (renamed from toolchain/kernel-headers/patches/3.13.6/cleankernel.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.13.7/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.13.6/mkpiggy.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.13.7/relocs.patch (renamed from toolchain/kernel-headers/patches/3.13.6/relocs.patch)30
-rw-r--r--toolchain/kernel-headers/patches/3.13.7/sgidefs.patch (renamed from toolchain/kernel-headers/patches/3.13.6/sgidefs.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.13.7/sortext.patch (renamed from toolchain/kernel-headers/patches/3.13.6/sortext.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.4.82/microperl.patch24
-rw-r--r--toolchain/kernel-headers/patches/3.4.84/aufs2.patch (renamed from toolchain/kernel-headers/patches/3.4.82/aufs2.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.4.84/linux-gcc-check.patch (renamed from toolchain/kernel-headers/patches/3.4.82/linux-gcc-check.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.4.84/mkpiggy.patch (renamed from toolchain/kernel-headers/patches/3.4.82/mkpiggy.patch)0
-rw-r--r--toolchain/kernel-headers/patches/3.4.84/relocs.patch (renamed from toolchain/kernel-headers/patches/3.4.82/relocs.patch)0
-rw-r--r--toolchain/libelf/Makefile2
-rw-r--r--toolchain/mpc/Makefile4
-rw-r--r--toolchain/mpfr/Makefile2
-rw-r--r--toolchain/musl/Makefile26
-rw-r--r--toolchain/musl/Makefile.inc5
-rw-r--r--toolchain/musl/patches/musl-git-20140310.patch8432
-rw-r--r--toolchain/uClibc/Makefile9
-rw-r--r--toolchain/uClibc/Makefile.inc4
43 files changed, 198 insertions, 8631 deletions
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/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 8ebbea53c..4d34e3566 100644
--- a/toolchain/binutils/Makefile
+++ b/toolchain/binutils/Makefile
@@ -16,10 +16,16 @@ ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
CONFOPTS+= --with-arch=armv6
endif
-ifneq ($(strip $(ADK_LINUX_64)$(ADK_TARGET_KERNEL64)),)
+ifneq ($(ADK_LINUX_64),)
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
@@ -28,10 +34,9 @@ $(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-multilib \
--disable-dependency-tracking \
--disable-libtool-lock \
--disable-nls \
@@ -49,7 +54,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
$(MAKE) -C $(WRKBUILD) install
# needed on hosts without readelf, but strange things happen on Cygwin.
ifeq (${OStype},Darwin)
- $(CP) $(WRKBUILD)/binutils/readelf $(STAGING_HOST_DIR)/bin
+ $(CP) $(WRKBUILD)/binutils/readelf $(TOOLCHAIN_DIR)/usr/bin
endif
touch $@
diff --git a/toolchain/binutils/Makefile.inc b/toolchain/binutils/Makefile.inc
index 16cfc47df..a7a2c3980 100644
--- a/toolchain/binutils/Makefile.inc
+++ b/toolchain/binutils/Makefile.inc
@@ -3,7 +3,6 @@
PKG_NAME:= binutils
PKG_VERSION:= 2.24
-PKG_MD5SUM:= e0f71a7b2ddab0f8612336ac81d9636b
+PKG_MD5SUM:= a5dd5dd2d212a282cc1d4a84633e0d88
PKG_RELEASE:= 1
PKG_SITES:= ${MASTER_SITE_GNU:=binutils/}
-DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index d7527442f..611de97bf 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -4,21 +4,22 @@
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=$(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 \
+ --enable-tls \
--disable-libsanitizer \
--disable-libitm \
--disable-libmudflap \
@@ -27,51 +28,43 @@ GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \
--disable-libstdcxx-pch \
--disable-ppl-version-check \
--disable-cloog-version-check \
+ --with-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+= --with-abi=x32
+endif
+ifeq ($(ADK_32),y)
+GCC_FINAL_CONFOPTS+= --with-abi=32
+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
-endif
-
-ifeq ($(ARCH),m68k)
-ifeq ($(ADK_TARGET_LIBC),uclibc)
-GCC_CONFOPTS+= --disable-tls
-else
-GCC_CONFOPTS+= --enable-tls
-endif
-else
-GCC_CONFOPTS+= --enable-tls
+GCC_FINAL_CONFOPTS+= --disable-lto
endif
ifeq ($(ADK_LINUX_PPC),y)
@@ -87,6 +80,9 @@ endif
ifeq ($(ARCH),arm)
GCC_CONFOPTS+= --with-float=$(ADK_TARGET_FLOAT)
GCC_CONFOPTS+= --with-mode=$(ADK_TARGET_ARM_MODE)
+ifneq ($(ADK_TARGET_FPU),)
+GCC_CONFOPTS+= --with-fpu=$(ADK_TARGET_FPU)
+endif
endif
ifeq ($(ADK_CPU_ARM926EJ_S),y)
@@ -94,11 +90,11 @@ GCC_CONFOPTS+= --with-arch=armv5te --with-tune=arm1176jzf-s
endif
ifeq ($(ADK_CPU_ARM1176JZF_S),y)
-GCC_CONFOPTS+= --with-arch=armv6 --with-tune=arm1176jzf-s --with-fpu=vfp
+GCC_CONFOPTS+= --with-arch=armv6 --with-tune=arm1176jzf-s
endif
ifeq ($(ADK_CPU_CORTEX_A9),y)
-GCC_CONFOPTS+= --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=neon
+GCC_CONFOPTS+= --with-arch=armv7-a --with-tune=cortex-a9
endif
ifeq ($(ADK_CPU_SPARC_V9),y)
@@ -127,20 +123,27 @@ 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)/usr/$(GNU_TARGET_NAME)/sys-include
+ mkdir -p $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)
+ (cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME); \
+ ln -s ../$(STAGING_HOST2TARGET)/usr/include sys-include)
+ rm -rf ${TOOLCHAIN_DIR}/usr/$(GNU_TARGET_NAME)/lib
+ (cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME); \
+ ln -s ../$(STAGING_HOST2TARGET)/lib 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 \
${GCC_CONFOPTS} \
--enable-languages=c \
+ --disable-multilib \
+ --disable-lto \
+ --disable-libssp \
--disable-shared \
--without-headers
touch $@
@@ -155,11 +158,13 @@ $(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 \
${GCC_CONFOPTS} \
+ ${GCC_FINAL_CONFOPTS} \
--enable-languages=c \
--disable-shared \
--disable-threads \
@@ -177,9 +182,11 @@ $(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} \
--enable-languages=$(LANGUAGES) \
--with-build-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \
--with-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \
@@ -194,33 +201,17 @@ $(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 && \
- ln -sf libstdc++.so.6.0.18 libstdc++.so.6
- @-test -d $(STAGING_TARGET_DIR)/libx32 && \
- cd $(STAGING_TARGET_DIR)/libx32 && \
- ln -sf libstdc++.so.6.0.18 libstdc++.so && \
- ln -sf libstdc++.so.6.0.18 libstdc++.so.6
- @-test -d $(STAGING_TARGET_DIR)/lib64 && \
- cd $(STAGING_TARGET_DIR)/lib64 && \
+ cd $(STAGING_TARGET_DIR)/lib && \
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/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc
index 86a0a5992..21720e4aa 100644
--- a/toolchain/gcc/Makefile.inc
+++ b/toolchain/gcc/Makefile.inc
@@ -2,8 +2,12 @@
# 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
+PKG_MD5SUM:= deca88241c1135e2ff9fa5486ab5957b
+endif
PKG_RELEASE:= 1
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
-DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
diff --git a/toolchain/gcc/patches/4.8.2/abi32.patch b/toolchain/gcc/patches/4.8.2/abi32.patch
new file mode 100644
index 000000000..856d608bd
--- /dev/null
+++ b/toolchain/gcc/patches/4.8.2/abi32.patch
@@ -0,0 +1,54 @@
+diff -Nur gcc-4.8.2.orig/gcc/config/i386/biarch32.h gcc-4.8.2/gcc/config/i386/biarch32.h
+--- gcc-4.8.2.orig/gcc/config/i386/biarch32.h 1970-01-01 01:00:00.000000000 +0100
++++ gcc-4.8.2/gcc/config/i386/biarch32.h 2014-03-23 20:33:52.000000000 +0100
+@@ -0,0 +1,27 @@
++/* Make configure files to produce biarch compiler defaulting to 32bit mode.
++ This file must be included very first, while the OS specific file later
++ to overwrite otherwise wrong defaults.
++ Copyright (C) 2001-2014 Free Software Foundation, Inc.
++
++This file is part of GCC.
++
++GCC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 3, or (at your option)
++any later version.
++
++GCC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++<http://www.gnu.org/licenses/>. */
++
++#define TARGET_64BIT_DEFAULT 0
+diff -Nur gcc-4.8.2.orig/gcc/config.gcc gcc-4.8.2/gcc/config.gcc
+--- gcc-4.8.2.orig/gcc/config.gcc 2013-10-03 02:47:24.000000000 +0200
++++ gcc-4.8.2/gcc/config.gcc 2014-03-22 13:15:18.000000000 +0100
+@@ -522,6 +522,9 @@
+ 64 | m64)
+ tm_file="i386/biarch64.h ${tm_file}"
+ ;;
++ 32 | m32)
++ tm_file="i386/biarch32.h ${tm_file}"
++ ;;
+ x32 | mx32)
+ tm_file="i386/biarchx32.h ${tm_file}"
+ ;;
+@@ -1343,6 +1346,9 @@
+ x32 | mx32)
+ x86_multilibs="mx32"
+ ;;
++ 32 | m32)
++ x86_multilibs="m32"
++ ;;
+ *)
+ x86_multilibs="m64,m32"
+ ;;
diff --git a/toolchain/gdb/Makefile.inc b/toolchain/gdb/Makefile.inc
index 23912e1e6..c3807f8fe 100644
--- a/toolchain/gdb/Makefile.inc
+++ b/toolchain/gdb/Makefile.inc
@@ -3,7 +3,6 @@
PKG_NAME:= gdb
PKG_VERSION:= 7.7
-PKG_MD5SUM:= 271a18f41858a7e98b28ae4eb91287c9
+PKG_MD5SUM:= 40051ff95b39bd57b14b1809e2c16152
PKG_RELEASE:= 1
PKG_SITES:= ${MASTER_SITE_GNU:=gdb/}
-DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile
index 41987bada..44f73c1ff 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
@@ -64,19 +64,18 @@ $(WRKBUILD)/.installed:
${GLIBC_ENV} $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL) install_root=$(STAGING_TARGET_DIR) install
mkdir -p ${STAGING_TARGET_DIR}/etc
${INSTALL_DATA} ${WRKBUILD}/posix/gai.conf ${STAGING_TARGET_DIR}/etc
- ${INSTALL_DATA} ${WRKBUILD}/nscd/nscd.conf ${STAGING_TARGET_DIR}/etc
${INSTALL_DATA} ${WRKBUILD}/nss/nsswitch.conf ${STAGING_TARGET_DIR}/etc
touch $@
$(WRKBUILD)/.fixup:
-find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete
- -find $(STAGING_TARGET_DIR) -type f -name \*_pic\* -delete
rm -rf $(STAGING_TARGET_DIR)/usr/share/locale $(STAGING_TARGET_DIR)/usr/share/i18n
rm -rf $(STAGING_TARGET_DIR)/usr/lib/gconv
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)/
+ PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh \
+ $(STAGING_TARGET_DIR) $(TOOLCHAIN_DIR)/usr/lib/gcc/$(GNU_TARGET_NAME)
+ debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(TOOLCHAIN_DIR)/usr/bin
endif
touch $@
diff --git a/toolchain/glibc/Makefile.inc b/toolchain/glibc/Makefile.inc
index 3c1a3167d..3a9f24e33 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_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/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/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.10.33/cleankernel.patch b/toolchain/kernel-headers/patches/3.10.34/cleankernel.patch
index 5f26a6b72..5f26a6b72 100644
--- a/toolchain/kernel-headers/patches/3.10.33/cleankernel.patch
+++ b/toolchain/kernel-headers/patches/3.10.34/cleankernel.patch
diff --git a/toolchain/kernel-headers/patches/3.10.33/mkpiggy.patch b/toolchain/kernel-headers/patches/3.10.34/mkpiggy.patch
index d4e815cd2..d4e815cd2 100644
--- a/toolchain/kernel-headers/patches/3.10.33/mkpiggy.patch
+++ b/toolchain/kernel-headers/patches/3.10.34/mkpiggy.patch
diff --git a/toolchain/kernel-headers/patches/3.10.33/relocs.patch b/toolchain/kernel-headers/patches/3.10.34/relocs.patch
index 649b9e73e..649b9e73e 100644
--- a/toolchain/kernel-headers/patches/3.10.33/relocs.patch
+++ b/toolchain/kernel-headers/patches/3.10.34/relocs.patch
diff --git a/toolchain/kernel-headers/patches/3.10.33/sgidefs.patch b/toolchain/kernel-headers/patches/3.10.34/sgidefs.patch
index f00a284d9..f00a284d9 100644
--- a/toolchain/kernel-headers/patches/3.10.33/sgidefs.patch
+++ b/toolchain/kernel-headers/patches/3.10.34/sgidefs.patch
diff --git a/toolchain/kernel-headers/patches/3.10.33/sortext.patch b/toolchain/kernel-headers/patches/3.10.34/sortext.patch
index 65bbbb64b..65bbbb64b 100644
--- a/toolchain/kernel-headers/patches/3.10.33/sortext.patch
+++ b/toolchain/kernel-headers/patches/3.10.34/sortext.patch
diff --git a/toolchain/kernel-headers/patches/3.11.10/microperl.patch b/toolchain/kernel-headers/patches/3.11.10/microperl.patch
deleted file mode 100644
index 298d96593..000000000
--- a/toolchain/kernel-headers/patches/3.11.10/microperl.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -Nur linux-3.11.5.orig/scripts/headers_check.pl linux-3.11.5/scripts/headers_check.pl
---- linux-3.11.5.orig/scripts/headers_check.pl 2013-10-14 03:14:45.000000000 +0200
-+++ linux-3.11.5/scripts/headers_check.pl 2013-10-16 17:08:59.000000000 +0200
-@@ -18,7 +18,7 @@
- #
- # 3) Check for leaked CONFIG_ symbols
-
--use strict;
-+#use strict;
- use File::Basename;
-
- my ($dir, $arch, @files) = @ARGV;
-
diff --git a/toolchain/kernel-headers/patches/3.12.13/microperl.patch b/toolchain/kernel-headers/patches/3.12.13/microperl.patch
deleted file mode 100644
index 298d96593..000000000
--- a/toolchain/kernel-headers/patches/3.12.13/microperl.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -Nur linux-3.11.5.orig/scripts/headers_check.pl linux-3.11.5/scripts/headers_check.pl
---- linux-3.11.5.orig/scripts/headers_check.pl 2013-10-14 03:14:45.000000000 +0200
-+++ linux-3.11.5/scripts/headers_check.pl 2013-10-16 17:08:59.000000000 +0200
-@@ -18,7 +18,7 @@
- #
- # 3) Check for leaked CONFIG_ symbols
-
--use s